wrong id when testing exists in daemon aufs

Fatal info "id name" should be "id none"

LGTM

LGTM


updates connection handler to respond by calling accept-request for citizen agent when state is request

What issue is this targeting?
Acapy agents are spun up with  --auto-accept-invites and --auto-accept-requests turned off which means agents will never finish the acceptance of a connection invite.
Changes proposed in this pull request
Adding a handler to tell citizen agents to accept an invite once the connection invitation status is at 'request' state.
🚀 Deployment changes 🚀
(list added or removed env, db changes etc)
Other Notes

Looks good, one pending question for Anthony and I can approve.
I can confirm that the unit tests pass for me locally (I had to increase the jest timeout), however if I switch off the --auto-accept-invites && --auto-accept-requests flags in https://github.com/kiva/aries-guardianship-agency/blob/PRO-2066b/src/manager/docker.service.ts#L64 then the ping fails. We don't need to figure that out right now, but at some point it would be nice to switch off the --auto's and rely completely on our governance framework.

ping was failing for me too.  I suspect we need to handle this in webhooks but Im not entirely sure on that.  It doesn't make sense other than I did remove some code concerning ping in the AgentController code (the code that was inaccessible and left for reference)


ESP32 C3 S2 softap fails to start with no error condition (IDFGH-8280)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
Under this odd condition, softap radio is NOT running, no error state, every reports ok..
If I try to turn off STA before startap, this condition is triggered
WiFi.enableSTA(false);
WiFi.softAP("espsoftap","12345678");
Reposting from arduino
No adjustments in arduino can I get to fix this condition, must be issue in IDF
ESP32 C3 S2 softap fails to start with no error condition
https://github.com/espressif/arduino-esp32/issues/7232
I will try to reproduce with IDF
Arduino
// wifi_basic.ino

#include <arduino.h>
#include <WiFi.h>
#include <esp_wifi.h>

void setup(){
	Serial.begin(115200);
	delay(2000);
	Serial.println("Startup....");
	Serial.setDebugOutput(true);

	WiFi.begin("hellowifi","noonehere");

    while (WiFi.status() != WL_CONNECTED && millis()<10000) {
        delay(500);
        Serial.print(".");
    }

	if(WiFi.status() == WL_CONNECTED){
		Serial.println("");
		Serial.println("WiFi connected.");
		Serial.println("IP address: ");
		Serial.println(WiFi.localIP());
	}
	else {
		Serial.println("WiFi NOT CONNECTED, starting ap");
		WiFi.enableSTA(false); // BREAKING <-------------------
		delay(2000);
	    WiFi.softAP("espsoftap","12345678");
	}
}

void loop(){

}

Startup....
[  2160][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 0 - WIFI_READY
[  2189][V][WiFiGeneric.cpp:338] _arduino_event_cb(): STA Started
[  2190][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 2 - STA_START
[  2192][V][WiFiGeneric.cpp:97] set_esp_interface_ip(): Configuring Station static IP: <IP_ADDRESS>, MASK: <IP_ADDRESS>, GW: <IP_ADDRESS>
[  2194][E][WiFiSTA.cpp:317] begin(): connect failed! 0x300a
................WiFi NOT CONNECTED, starting ap
[ 10195][V][WiFiGeneric.cpp:341] _arduino_event_cb(): STA Stopped
[ 10196][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 3 - STA_STOP
[ 12205][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 0 - WIFI_READY
[ 12215][V][WiFiGeneric.cpp:390] _arduino_event_cb(): AP Started
[ 12216][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 10 - AP_START

NO AP IS RUNNING, no tools can see SSID

WiFi.softAP(ssid, password);

This seems to already be fixed in the IDF according to testing by others and slated for arduino 2.0.5 already
I will close this as this is most likely already fixed in IDF at this point


Revise the language of the sort and filter for "borrowing" so that it includes all activities associated with books

@jkotin Here are all the pages where "borrowing" would be replaced by what I'm proposing, "Circulation" – this change is happening due to the conversations that took place on #230 and #231
The point of this issue is to make sure:

the pages I am showing are all the correct places where "borrowing" would be replaced by another term and/or if there are more places I may be missing.
suggesting "circulation dates" makes sense for the filter on the search page
About the variations with the sort options, please don't comment here, please write about them on issue #565

@gissoo could we change the title of the issue so that it no longer references sorting, since that's now #565? this one is just about the filter, right?

@thatbudakguy sure thanks for catching it!

I apologize for having this discussion in two different places. I think "circulation" looks good here. It makes sense. It also is the word that libraries use.
I take the point that purchases shouldn't technically count in circulation numbers. But I think we'll survive. A library still counts a book in its circulation numbers if it's lost or stolen or constantly renewed.
An alternative work is "transaction," which is more general.
Last question: would it make sense to have circulation date in the sort features as well?

I agree, circulation makes sense to me — it seems closest to what we want and most easily intelligible.
@jkotin you can't sort on a multi-valued field, but we could sort on earliest circulation date; would that be meaningful?
@gissoo I hate to make more work for us, so this is probably a wishlist thing, but it would be nice to display circulation years for the book search results in an analogous fashion to the membership dates on the member search page. It's kind of weird to be able to filter on a value that you can't easily see in the results.

Yes, it would be great to sort by both circulation date and publication date -- the two kind of go together.

@jkotin thanks for writing,

re "circulation" – I agree – you are more specifically touching on the point I was making in my latest comment in #565
I'm not sure about "Transactions" here
@rlskoeser @jkotin Circulation date would be awesome! – I think it would be awesome to add "circulation years" in the results – I would have said the same thing, I agree with you that it will make a lot more sense – would be great to be wishlisted

@jkotin @rlskoeser Here is the design. Since you said you are ok with "Circulation Dates" as the search filter I haven't revised anything here – just adding the revised sort options here along with the filter to conclude these pages are all the places that we are replacing "borrowing" with "circulation.


How to create authentication for the token generator

Hi, i have used the procedure that was mentioned and was able to replicate canary token generator, but since i am gonna use it from outside as i have given it a public IP address, is there some option where we can create some basic authentication for this

I agree, I feel like I'm missing something as it doesn't seem wise to have the same interface for managing/generating tokens on the same public interface that the tokens are detected being used.

Hopefully Canary would address this ASAP

Hi Jordan, have u tested the new version of canary tokens. Seems like i am havin some issues with the DNS tokens. I have set it up on an AWS ubuntu instance. Also made sure tht the requirements like setting up a public IP address, a domain name etc have been set up. For testing purposes i have made sure tht the security groups in AWS is allow all inbound and outbound traffic to this instance. Wondering whats causing the issue. Am i missing something

Hi @Manu-Surendra, what issues are you having with the DNS tokens?

I think i figured out the issue, i should have followed the procedure properly. I just created an A record and pointed it my public Ip and hence it did not work. So now i have created my own pvt name server. Had to create a new domain all together cause godaddy does not support private Nameservers. Am waiting for the propagation of newly registered private name server. Planning to check it on Monday.

hi, the propagation of the my nameserver is completed. Its updated in most of the countries, its just a matter time now, for it to replicate across full. Thanks a lot guys, it works now

Hi @thinkst , would you guys come up some basic authentication in the future. We wanna use it in our company environment, but we are scared that anyone can access the website and generate their own tokens.  Please give us an on update on this

Hey @Manu-Surendra, unfortunately we do not have basic authentication on our current roadmap, however its not all doom and groom. There are a couple ways in which you could potentially add basic auth support.

There should be an nginx configuration that would allow for basic auth. This method would require less code, but a change to the nginx docker image. You could check the nginx documentation on how to do that.
You could add the basic auth wrapper to our site manager. Basic auth is supported by twisted and so with a little bit of digging you could easily get basic auth.

The complexity with adding authentication would be where the list of users are stored, added, managed. We would gladly accept a PR if you come right with adding the basic auth support.
Thanks for the suggestion though!

@thinkst , we found another way of overcoming the issue. we have blocked access to the "http://mydomain.com/generate" page using URL filtering so that no one can access it from outside. And we use the internal IP of the instance to access it and generate tokens. Since only the http://mydomain.com/generate is blocked, the tokens gets triggered without any issues. Yes, i will test the nginx and auth wrapper from twisted and will keep u guys posted

Just for those who will be looking for enabling basic auth.
Just create .htpasswd under nginx directory and amend nginx.conf file (google it). Once done, you need to rebuild container, just run docker build (from canarytokens-docker directory). On next run you will have new changes.

Hey @kuriackovskij,
Thanks for the information and step through. Ill give it a go in the next few days and perhaps add it as something easier to enable.
Thanks again!


Set Vibe.d LogLevel along with our own

The log we get currently from Vibe are still pretty terrible.
See https://github.com/vibe-d/vibe-core/pull/212 for a first step at improving it.

Fiexd tpyos!


Audio doesn't resume when manually changing pages in IE11

When listening to any epub with audio in IE11 if you manually change the page the audio does not resume and the loading spinner does not disappear. The JS consoles show "SCRIPT70: Permission Denied" errors.

Thanks @nbeach, issue moved here: https://github.com/readium/readium-shared-js/issues/162


Using Credo analyze

https://github.com/rrrene/credo

Thanks! I just noticed the PR — I'll check it out.

👍  Thanks!

👍  Thanks!


Documentation: Add Errors to docstrings

Swift docstrings support the throws keyword to document the types of errors that can be thrown from methods. We should document these errors when they are known.

Closing in favor of individual issues: #372, #373, and #374.


feature/associate-manifest-with-metrics

As an analyst, I want to be able to easily understand the inputs and outputs of a run, specifically that I can associate the inputs I specified in a manifest with the outputs written to a metrics file. This is so that I can run analyses and specify the right working directories associated with a metrics file for ease-of-use and analysis.

Poised to address #71

duplicate with #82


New Landing Page Design

i will come up with a fresh landing page

@0silverback0 assign me with hacktobest labels

Go for it! I need it to be responsive on mobile as well.

sure @0silverback0


Refactor and expose convertKeysToStrings

convertKeysToStrings is a really useful function that I use across multiple projects. It's also pretty general, so it makes sense to move this to the utils package.
Signed-off-by: Josh Curl<EMAIL_ADDRESS>

It make sence to expose it and probably move into another package, I'm just not sure if utils is the right one (utils has no real meaning and is a "I don't know where to put this package" — I'm not found of it and tend to do all I can to not have a utils package 👼). Not sure what the name of the package should be though :sweat_smile:

I agree, there's a bit too much going on in utils. If you have any suggestions we can address it now. Or maybe it's better to move this discussion to a separate issue.


Create nb.json

Transtlation for Norwegian

Seems good to me !
I merge it.
Thx for the PR and translation !


Set service start-up order

@ziadsawalha According to the cloud-config documentation, the after: X option does not exist: https://github.com/coreos/coreos-cloudinit/blob/master/Documentation/cloud-config.md. Am I missing something?

Closing due to inactivity.


hlg doesn't work with mpv's tone-mapping hdr-compute-peak

Hi, I use mpv's tone-mapping with hdr-compute-peak with pq and it works normally, but this doesn't work with hlg.
Am I doing something wrong? Can this be fixed?
Thank you :)
tone-mapping=st2094-10
hdr-compute-peak=yes
allow-delayed-peak-detect
target-prim=bt.2020
target-trc=hlg

glsl-shader=~~/shaders/hdr-toys/transfer-function/hlg_inv.glsl
glsl-shader=~~/shaders/hdr-toys/utils/black_point_compensation.glsl
glsl-shader=~~/shaders/hdr-toys/gamut-mapping/jedypod.glsl
glsl-shader=~~/shaders/hdr-toys/transfer-function/bt1886.glsl

What is "doesn't work"? If you meaning 100->100, ask to mpv/libplacebo.

Doesn't work means it is just 1 to 1, there is no compute
I already asked. https://github.com/mpv-player/mpv/discussions/15505


spvTextToBinary to return a mapping of textual ID names to numeric IDs

Use Case:
Unit test in the validation rely on the error codes validate the result of the spvValidate function. Ideally the tests should check both the error code and the diagnostic message to verify that the test case has accurately passed. This is currently not possible because the named ID representation is lost during the Text to Binary conversion.
The spvTextToBinary function should return a map which contains a mapping from ID to ID names used in the textual representation of the SPIR-V.

This would be nice to have, though it's not essential for checking the diagnostic messages even now.  The message text around %IDs can be checked, and OpName instructions (where present) could be used to map %IDs to source names.

Good point. I should be able to create diagnostic messages based on the (OpName) commands and verify the output using this approach.

Keep in mind that OpName instructions are optional.
Also, the validator is checking binaries coming from any front end, which could be much more than the assembler in SPIR-V Tools.
So I see using the OpName values in validator diagnostics as nice-to-have, but not essential.

Similarly, not every front end can furnish spvValidate() with a %ID mapping
proposed in OP.
On Thu, 3 Dec 2015 at 14:43 David Neto<EMAIL_ADDRESS>wrote:

Keep in mind that OpName instructions are optional.
Also, the validator is checking binaries coming from any front end, which
could be much more than the assembler in SPIR-V Tools.
So I see using the OpName values in validator diagnostics as nice-to-have,
but not essential.
—
Reply to this email directly or view it on GitHub
https://github.com/KhronosGroup/SPIRV-Tools/issues/41#issuecomment-161759594
.

--
--
Sent from a mobile device.

I understand. I was plan on formatting the diagnostic message to display the id and only display the name if an OpName command references the ID. For example
No OpName
ID 32 has not been defined

With OpName
ID 32[foo] has not been defined

This should be pretty easy to implement. I can then use regex to parse the message to verify the unit tests.

Yes, that would work.
Alternately, you could use the same strategy the assembler tests use: rely on the fact that the assembler assigns Id indices via a counter, starting at 1.
See, for example, some disassembler diagnostics tests at https://github.com/KhronosGroup/SPIRV-Tools/blob/master/test/BinaryToText.cpp#L181
Those tests first assemble some text, then disassemble text but fail with a message. (They use TextToBinaryTestBase::EncodeSuccessfullyDecodeFailed)

That sounds like it would be dependent on the implementation. I wouldn't feel comfortable writing tests like that. It could also become complicated once we test more complicated cases.

I'm not sure if there is anything to do here,spirv-dis does the name mapping when possible already. Can this be closed?


Async callback function was not called if the lasted callback is not finish

Hi, I'm working on a project which need to subscribe to a channel, then when message come it will do stuffs with that message. But currently I'm facing an issue. In my callback function I have a while(1){} loop. The first time message was published to the channel the callback function was called, but the second time the callback function was not called anymore (Meanwhile the first callback function is not finish).  Here is my code:
`
redisAsyncContext *redis;

// Variable For Event
struct event_base *base = event_base_new();

// Init Redis Client Connect To Redis Server With IP And PORT
redis = redisAsyncConnect(HOST_REDIS_SERVER, PORT_REDIS_SERVER);

// Return When Connect To Redis Error
if (redis->err)
{
    #ifdef DEBUG_MODE
        std::cout << "Create Redis channel error: " << redis->errstr << std::endl;
    #endif

    return false;
}

// Define Channel For Smartcard
redisLibeventAttach(redis, base);

// Define Process Data From Subsribe Channel
redisAsyncCommand(redis, functionHandle, (void*)dataPointer, "SUBSCRIBE %s", cChannel);

event_base_dispatch(base);

return true;

`

How can I call callback function everytime the message come whether the latest callback function is finished or not

You can't, without doing some kind of multi-threading.  Why does your callback function need to loop forever?  What is it doing?

@michael-grunder  Thank you for your response. My company is developing a smart printer. It has 2 programs communicating with each other via Redis channel. The "Main" program will publish command in JSON string format to Redis channel. The "Database" program will listen to that channel to receive command from Main program. Sometime the command could be read a long text file, then the next command may come right after that to tell Database program to do other stuff. I'm ok with multi-threading. But currently I don't know how to implement it in my code.

@michael-grunder in case of the while loop, it is a READ DATA command, The Database program will read through a file until it reach the end of the file, then it will move the FILE* to the beginning of the file and then read it again until it receive a STOP command from Main program.  But the callback of STOP command is never called because the latest callback (READ DATA command) is not finish. It like a circular dependency

The Database program will read through a file until it reach the end of the file, then it will move the FILE* to the beginning of the file and then read it again until it receive a STOP command

Why are you continuously re-reading the same file?  Is something else writing to this file?
In general the only way to continue to process PUBLISH messages is if your callback returns, meaning you will need to either offload the work to a different thread or make everything completely async (e.g. switch to AIO file operations).
If I had more to go on I might be able to provide more specific suggestions.

@michael-grunder The file will not change in the printing process but I have to re-reading it over and over until I got a STOP command. Currently that's the way the system is designed so...I can't change it haha. I create new thread for reading data in callback function and now everything work quite well. Thank you for your support.


Add example how to import SqlStorage in angular 2

Short description of what this resolves:
Changes proposed in this pull request:

Ionic Version: 1.x / 2.x
Fixes: #

Thanks for the PR! Since we've moved storage out of this repo I am going to close this, but we appreciate it! :)


Make all assertions in tests consistent

We currently depend on pyhamcrest for test assertions in most places. This was a hangover from the pre py.test days. All tests should now use python asserts.

@vedarthk not sure if this is relevant. PyHamcrest is a perfectly valid way of writing assertions. It may not be consistent with other codebases in Aplopio. There is no reason I see for keeping it consistent with the internal codebases at Aplopio. Hence closing this issue


Hotfix: deleting boxes not working

Reformat zip code data structure

/cib fix zipcode

Branch 62-fix-zipcode created!


Returning a value(Promise?) from ASYNC event handlers

Hi,
If I understood correctly every event handler that is async needs to return StateMachine.ASYNC and then call fsm.transition().
In my use case I would like the event handler to be async but to also compute some value and to be returned (this value will be used by the caller). As I am forced to return ASYNC, I am not able to return any value from my custom event handler. Is there any easy way to support my use case?
Are promises going to be supported in the future?
Thanks!

Yes, version 3 will replace the current ASYNC behavior with Promises (the E.T.A for v3 is end of 2016)


Why are images blown up to the same scale as the screen?

The backing file becomes four times larger on retina devices.

Yes, that is correct. 4x the pixels = 4x the storage. I hope you aren't aiming to show blurry 1x content on 2x screens, but if that's your goal you can certainly achieve it by using one image format on 1x screens and a 2nd smaller image format on 2x screens.

So if the UIImages I would like to store have the size 200 * 400 and scale 1.0 I should configure FIC on retina devices to store images of size 100 * 200?


List.props.query cached across resources

Here's how the issue is reproduced:
Both ResourceA and ResourceB have reference to Order resource and can be filtered by .orderId.
ResourceA and ResourceB have different default sorts:

ResourceA is sorted by .created
ResourceB is sorted by .timestamp

Links to the filtered items are added to Order's show page:
<Link
  to={{
    pathname: '/resourceA',
    search: stringify({
      filter: JSON.stringify({ orderId: record.id }),
      page: 1,
    }),
  }}
/>

<Link
  to={{
    pathname: '/resourceB',
    search: stringify({
      filter: JSON.stringify({ orderId: record.id }),
      page: 1,
    }),
  }}
/>

Click on the ResourceA's link, back, then click on the ResourceB's link.
AOR will try to fetch ResourceB's data using ResourceA's sort (created).

I added log to <Link>'s mapStateToProps():
function mapStateToProps(state, props) {
    var resourceState = state.admin[props.resource];
    console.log('mapStateToProps()', getQuery(props));
    return {
        query: getQuery(props),
        params: resourceState.list.params,
        ids: resourceState.list.ids,
        total: resourceState.list.total,
        data: resourceState.data,
        isLoading: state.admin.loading > 0,
        filterValues: resourceState.list.params.filter
    };
}

I found that the first log when I enter ResourceB has ResourceA's value in it:
{
  filter: {orderId: "99389ef2-aada-4753-90b5-2c64286558df"},
  order: "ASC",
  page: "1",
  perPage: 25,
  sort: "created"
}

I'm guessing that since the location.search is the same (?filter=%7B%22orderId%22%3A%2299389ef2-aada-4753-90b5-2c64286558df%22%7D&page=1), selector returned the cached result across different resources.
Should we add props.resource to the selector?

Where does this <Link> come from? It's not an aor component.
Besides, I don't understand how that's possible, the Redux store keeps query params in separate subtrees for each resource.

The <Link> use case is similar to Products link in https://marmelab.com/admin-on-rest-demo/#/categories.
Source: https://github.com/marmelab/admin-on-rest-demo/blob/master/src/categories/LinkToRelatedProducts.js
But now I've 2 related resources.
I see <List> fired a CRUD_CHANGE_LIST_PARAMS with the (incorrect) props to change the params in ResourceB.
Maybe it's better for me to reproduce that in the demo app. I'll update this issue.

Any news on this one ?

I'll try to reproduce next week.

Alas, I'm getting https://reactjs.org/warnings/refs-must-have-owner.html on admin-on-rest-demo's master.
Any hint? Should I use a older commit?

Hello @leesei
Did you found anything new about this problem?
Did you install the demo and reproduce the problem?

No news for some time, closing the issue. Feel free to reopen if you can reproduce it and provide a failing scenario.


Settings navigation issue fixed

Task/Issue URL: https://app.asana.com/0/414709148257752/1207555526081832/f
Description:
Unnecessary onAppear handler removed to fix the navigation issue

Steps to test this PR:
@dus7

On iOS 15, make sure the activation of General section works as expected

@afterxleep

Smoke test deep link navigations

OS Testing:

[x] iOS 15
[ ] iOS 16

Internal references:
Software Engineering Expectations
Technical Design Template

Thank you both! 🙏


Ineffective bot message filter

Describe the bug
When a message is sent the bot is supposed to check to make sure it did not send it before performing any action based on it. However the current condition checks two different object types so the bot never thinks it sent a message.
Expected behavior
The bot should know when a message was sent by itself and skip performing any action with that message.
To Reproduce
To reproduce you can add a console.log on line 170 just before commandParser is called, so that the client.on('message', ...) looks like this:
client.on('message', (msg) => {
  if (msg.content.substring(0, 3) === 'cc!' && !(msg.member === client)) {
    console.log("not a bot");
    commandParser(msg);
  }
});

You can then run the bot and call the cc!ping command which has the bot send "pong" in response. In the console you'll see "not a bot" logged twice, once for your message and once for the bot's.
Additional context
There are two ways I know to fix this, you can change !msg.member == client)) to !(msg.member.id === client.user.id) which prevents the bots from working with its own messages, or you can do !msg.author.bot which blocks it from working with any bot's messages. Question is do we want other bots to be able to run commands should we ever need to, or block them completely?

This does not seem to be an issue anymore. I tested it in the upgrade-to-v13 branch. Can someone else also confirm this. If we agree that is the case then perhaps we can close this issue?

@mikejoh12 Yep, looks like it's been resolved here: https://github.com/CodecademyCommunity/codecademy-discord-bot/blob/000c301e75f6698fa083178539fdd6a10b5bd0d9/handlers/messageHandlers.js#L14


Update google-auth-library-credentials to 1.25.0

About this PR
📦 Updates com.google.auth:google-auth-library-credentials from 1.8.1 to 1.25.0
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.google.auth", artifactId = "google-auth-library-credentials" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.google.auth", artifactId = "google-auth-library-credentials" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #387.


Firewall rule parameterization

Refactor to support allowing firewall rules.
Fixes: #146
Changes to suport optional parameters to allow specifying start
and end IP address for firewall rules on MySQL, PostgreSQL and
MSSQL. Previously, this defaulted to allow any connection. This
isn't ecure in practice, so allowing the customer to specify desired
rules. Also changed the default to <IP_ADDRESS> for both, which results in
only Azure internal addresses. Added some parameter validation
for the firewall values as well:

Valid IPV4 addresses
Start <= End

Extracted a method to build the arm template parameter map. Providing
empty strings is invalid for the ARM template, so only including
when non-empty.
Added parameters to the lifecycle tests to allow running them
from local machines (will need ao enhance the charts in helm-charts)
Added some tests.

Registered a few small comments, but overall, this is just what I was hoping for. Love it.

No remaining technical concerns. I made some comments about the wording of error messages. After that, LGTM.

@jeremyrickard all LGTM. Thank you for all the effort that went into this. Just waiting for CI. Note I amended the PR just now with updated example manifests.


Logic for identifying partially completed symmetric LP position based

Overview
TS handles a state where a user is able to see that they have completed part of the 2 needed transactions for a symmetrical LP position, we don't have this consideration in our implementation.
We need the logic to identify this state exists (this ticket) and UI to display this state to a user (seperate ticket).
References and additional details
NA
Acceptance Criteria

Spike into and identify conditions that lead to a user being in the partially completed state

Need By Date
No response
Screenshots/Mockups
No response
Estimated effort
No response

Closed by https://github.com/shapeshift/web/pull/6481
@kaladinlight let me know if you feel this is incorrect.


fix: generate talpa export csv synchronously

Description :sparkles:
The generator code and StreamingHttpResponse made it difficult to update the application batch as sent_to_talpa after response was complete, which resulted in an empty csv file.
Issues :bug:
Testing :alembic:
Add a few applications to a batch and visit (credentials for talpa robot in .env or default ones in settings.py)
https://localhost:8000/v1/applicationbatches/talpa_export/
https://localhost:8000/v1/applicationbatches/talpa_export/?skip_update=0
now respond with a csv tha includes the applications from the batch afterwhich the batch is updated to sent_to_talpa-status
and visiting
https://localhost:8000/v1/applicationbatches/talpa_export/?skip_update=1
returns the csv but does not update the batch.
Screenshots :camera_flash:
Additional notes :spiral_notepad:

API branch is deployed to platta: https://helsinkilisa-pr2608.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr2608.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-pr2608.dev.hel.ninja :laughing::tada::tada::tada:

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr2608.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-handler-pr2608.dev.hel.ninja :laughing::tada::tada::tada:


Enterprise Gradle plugin throwing "Missing license key" first time it executes per version

Which version and edition of Flyway are you using?
7.0.3
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Gradle Plugin
Which database are you using (type & version)?
Reproducible in Mysql 5.7 and PG 10.14
Which operating system are you using?
MacOs 10.15
What did you do?
Trace:
$ ../gradlew flywayInfo

> Configure project :

> Task :1-returnly_prod_v3:flywayInfo FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':XXXXX:flywayInfo'.
> Error occurred while executing flywayInfo
  Missing license key. Ensure flyway.licenseKey is set to a valid Flyway license key ("FL01" followed by 512 hex chars)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
1 actionable task: 1 executed

gradle config:
apply plugin: 'org.flywaydb.enterprise.flyway'

ext {
    flyway_db_user = 'root'
    db_host = project.findProperty('db_host') ?: 'localhost'
    db_port = 3306
    flyway_locations.addAll((project.findProperty('flyway_extra_locations') ?: '').toString().split(',')
            .collect {it == '' || it.contains(':') ? it : "filesystem:$it"})
    logger.lifecycle("flyway: $flyway_db_user@$db_host:$db_port/$db_schema ; looking for migrations in: $flyway_locations")
}

flyway {
    url = "jdbc:mysql://${db_host}:${db_port}?autoReconnect=true&useSSL=false&useUnicode=yes&characterEncoding=UTF-8"
    user = flyway_db_user
    password = ''
    schemas = [ db_schema ]
    locations = flyway_locations
    if (placeholders == null)
        placeholders = new LinkedHashMap()
    placeholders.put('current-schema', db_schema)
    outOfOrder = true
}

tasks.matching { it.name.startsWith('flyway') }.forEach { it.logging.level = LogLevel.INFO }

build.gradle
buildscript {
    apply from: "$sharedScripts/plugin-repos.gradle", to: buildscript

    dependencies {
        classpath "org.flywaydb.enterprise:flyway-gradle-plugin:$flyway_version"
    }
}

What did you expect to see?
I would expect no issues as Info is a non restricted operation, but always failing is also consistent.
What did you see instead?
To work or fail every time.

This is the same issue reported in #2248
I can reproduce it easily just changing the version I want to use and running any flyway task (for example switching back and forward between 7.0.2 and 7.0.3)

How are you supplying the license key?

That's the interesting thing I am not passing the license by any means that I know. We are migrating several projects from 5.1.4 to 7.0.X while also moving to the maven central repo.
Previously it was working without a license (just the one to get the plugin from your old repo) so when I saw the error I added the license and worked, but in another project, I did not add the license and found out that it works after the first error.
Tried with several commands (info, migrate, undo, clean) and after the first error in any command all work without issues.
I have checked env vars and there is nothing there worth noting.
Tested with gradle 6.6.1 and 5.4.1 without any major difference.
From time to time I get the same error again, but doing a gradle clean or deleting project .gradle folder does not trigger the error.
The only consistent way I have found to reproduce the issue is changing flyway version.

Thank you very much for spotting this! This will be fixed for 7.0.4

Just to confirm, in 7.0.4 license key will be required to be configured for flyway to work regardless of the type of operation we are performing, right?

That is correct


added queue.Peek() functionality

I made a stab at implementing Peek.
The Peek operation conforms to the Wikipedia definition:
peek(D) = pop(D)
peek(D), D = D

meaning "peak returns the same value as pop", and "does not change the underlying data" (value of data after peek same as before peek).
Tests are included.

I implemented this since it was what I was chasing regarding #138

+1

great!


[bug] UI does not  fit properly when scale factor is higher than 100%

Describe the bug
First two screenshots are of the app I'm working on with the display set to 125% and 100% on a Linux Mint (Ubuntu derivative) VM on VirtualBox. Notice that the UI is blown up.
125%

100%

Native Linux Mint App (100%)

Native Linux Mint App (125%)

Reproduction
No response
Expected behavior
The UI should not be scaling. I'm not sure if this is CSS issue or if this is a Tauri issue, but writing a ticket here just in case.
Full tauri info output
yarn run v1.22.21
$ tauri info
WARNING: Only one package manager should be used, but found yarn and bun.
         Please remove unused package manager lock files, will use yarn for now!

[✔] Environment
    - OS: Linux Mint 21.2 X64
    ✔ webkit2gtk-4.0: 2.42.3
    ✔ rsvg2: 2.52.5
    ✔ rustc: 1.75.0 (82e1608df 2023-12-21)
    ✔ cargo: 1.75.0 (1d8b05cdd 2023-11-20)
    ✔ rustup: 1.26.0 (5af9b9484 2023-04-05)
    ✔ Rust toolchain: 1.75.0-x86_64-unknown-linux-gnu (overridden by '/home/elijah/Documents/CodeRepos/obscuravpn-app/rust-toolchain.toml')
    - node: 20.9.0
    - pnpm: 8.14.1
    - yarn: 1.22.21
    - npm: 10.1.0

[-] Packages
    - tauri [RUST]: 1.5.2
    - tauri-build [RUST]: 1.5.0
    - wry [RUST]: 0.24.6
    - tao [RUST]: 0.16.5
    - @tauri-apps/api [NPM]: 1.4.0
    - @tauri-apps/cli [NPM]: 1.5.6

[-] App
Done in 18.39s.

Stack trace
No response
Additional context
No response

Fix we are using currently
#[cfg(target_os = "linux")]
fn webkit_hidpi_workaround() {
  // See: https://github.com/spacedriveapp/spacedrive/issues/1512#issuecomment-1758550164
  std::env::set_var("WEBKIT_DISABLE_DMABUF_RENDERER", "1");
}

fn main_prelude() {
  #[cfg(target_os = "linux")]
  webkit_hidpi_workaround();
}

fn main() {
  main_prelude();
// ...
}

wow what is not broken in the new renderer 👀 Glad you found a workaround and i still wonder if we should just hardcode it in tauri itself...


Error - 403 - Forbidden. Your domain is probably not allowed on Codapi.

I installed codeapi on my personal blog. However, when I run the code snippets, I see the below error:
403 - Forbidden. Your domain is probably not allowed on Codapi.

Do I need a subscription to the codeapi platform in order to run the examples?

You are using the cloud version and not self-hosting. So you need to be enrolled in the beta program for the playgrounds to work. It looks like you've already applied, so I've enabled unmesh.dev, and now the examples should work fine.

Thanks, @nalgeon, it worked!


Added a setting to deactivate synchronizers.

The default behavior of Synchronizers is unchanged.
Toggling the enabled boolean on a Synchronizer instance toggles the synchronization, so that one can easily desynchronize viewers without having the need to remove all viewers from its scope.
Related to issue #464

Coverage increased (+1.3%) to 7.284% when pulling d4d06aaeca848e999945e1e46a68704554e0c2a6 on Saucistophe:master into 7832f3397433b53ddf0ce63110928b2a2f932cab on cornerstonejs:master.

Makes sense to me. Thanks!


Local backend not working for darwin-arm64 (macOS) - Command not found

Component
agent
Describe the bug
Not possible to run bash commands with local backend for darwin-arm64
When running a job with simple bash commands on a macOS (with ARM64) with the local backend, bash throws an error about the command not being found.
Though, the log shows a gibberish text (seems to be a base64 text) instead of the actual command.
Example pipeline
Here is a very simple example:
platform: darwin/arm64
skip_clone: true

pipeline:
  test:
    image: bash
    commands:
      - uname -a
      - echo 'running test pipeline'
      - ls -al

Error
The following pipeline throw an error in the very first command with the following output:
bash: mlmIFsgLW4gIiRDSV9ORVRSQ19NQUNISU5FIiBdOyB0aGVuCmNhdCA8PEVPRiA+ICRIT01FLy5uZXRyYwptYWNoaW5lICRDSV9ORVRSQ19NQUNISU5FCmxvZ2luICRDSV9ORVRSQ19VU0VSTkFNRQpwYXNzd29yZCAkQ0lfTkVUUkNfUEFTU1dPUkQKRU9GCmNobW9kIDA2MDAgJEhPTUUvLm5ldHJjCmZpCnVuc2V0IENJX05FVFJDX1VTRVJOQU1FCnVuc2V0IENJX05FVFJDX1BBU1NXT1JECnVuc2V0IENJX1NDUklQVAoKZWNobyArICJlY2hvICdydW5uaW5nIHRlc3QgcGlwZWxpbmUnIgplY2hvICdydW5uaW5nIHRlc3QgcGlwZWxpbmUnCgplY2hvICsgImxzIC1hbCIKbHMgLWFsCgplY2hvICsgInRvdWNoIHRvdWNoX2Zvcl9kdSIKdG91Y2ggdG91Y2hfZm9yX2R1CgplY2hvICsgImR1IC1zaCAqIgpkdSAtc2ggKgoK: command not found

System Info
Woodpecker next version is used and according to the logs at startup, both the server and the  agent are running next-b15ca52a (latest version at the time of writing).
The agent version  is compiled from source directly on the mac machine using the following command:
TARGETOS=darwin TARGETARCH=arm64 make build-agent.
Additional context
Here is the output of the agent running with trace log level, if it can help:
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:101","message":"received execution"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:115","message":"listen for cancel signal"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:73","message":"Executing 3 stages, in order of:"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Stage":"wp_0_7811566641196302698_stage_0","Steps":"wp_0_7811566641196302698_step_0","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Stage":"wp_0_7811566641196302698_stage_1","Steps":"wp_0_7811566641196302698_step_1","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Stage":"wp_0_7811566641196302698_stage_2","Steps":"wp_0_7811566641196302698_step_2","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Step":"wp_0_7811566641196302698_step_0","time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:155","message":"Prepare"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","exit_code":0,"exited":false,"time":"2022-10-31T14:34:18+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:273","message":"update step status"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","exit_code":0,"exited":false,"time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:281","message":"update step status complete"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Step":"wp_0_7811566641196302698_step_0","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:179","message":"Executing"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:172","message":"log stream opened"}
{"level":"trace","name":"download","ID":"1532","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/rpc/line.go:69","message":"grpc write line: bash: mlmIFsgLW4gIiRDSV9ORVRSQ19NQUNISU5FIiBdOyB0aGVuCmNhdCA8PEVPRiA+ICRIT01FLy5uZXRyYwptYWNoaW5lICRDSV9ORVRSQ19NQUNISU5FCmxvZ2luICRDSV9ORVRSQ19VU0VSTkFNRQpwYXNzd29yZCAkQ0lfTkVUUkNfUEFTU1dPUkQKRU9GCmNobW9kIDA2MDAgJEhPTUUvLm5ldHJjCmZpCnVuc2V0IENJX05FVFJDX1VTRVJOQU1FCnVuc2V0IENJX05FVFJDX1BBU1NXT1JECnVuc2V0IENJX1NDUklQVAoKZWNobyArICJ1bmFtZSAtYSIKdW5hbWUgLWEKCmVjaG8gKyAiZWNobyAncnVubmluZyBsb2NhbCBiYWNrZW5kIHRlc3QgcGlwZWxpbmUnIgplY2hvICdydW5uaW5nIGxvY2FsIGJhY2tlbmQgdGVzdCBwaXBlbGluZScKCmVjaG8gKyAibHMgLWFsIgpscyAtYWwKCmVjaG8gKyAidG91Y2ggdG91Y2hfZm9yX2R1Igp0b3VjaCB0b3VjaF9mb3JfZHUKCmVjaG8gKyAiZHUgLXNoICoiCmR1IC1zaCAqCgo=: command not found\n"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:180","message":"log stream copied"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:196","message":"log stream uploading"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:200","message":"log stream upload complete"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:204","message":"log stream closed"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Step":"wp_0_7811566641196302698_step_0","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:185","message":"Complete"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","exit_code":127,"exited":true,"time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:273","message":"update step status"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","image":"bash","stage":"download","exit_code":127,"exited":true,"time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:281","message":"update step status complete"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Step":"wp_0_7811566641196302698_step_1","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:155","message":"Prepare"}
{"level":"debug","ID":"1532","Repo":"aaa/mac_local_test","Pipeline":"42","Step":"wp_0_7811566641196302698_step_1","error":"wp_0_7811566641196302698_step_0 : exit code 127","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:162","message":"Skipped due to OnFailure=false"}
{"level":"debug","Pipeline":"42","ID":"1532","Repo":"aaa/mac_local_test","Step":"wp_0_7811566641196302698_step_2","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:155","message":"Prepare"}
{"level":"debug","Pipeline":"42","ID":"1532","Repo":"aaa/mac_local_test","Step":"wp_0_7811566641196302698_step_2","error":"wp_0_7811566641196302698_step_0 : exit code 127","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/pipeline.go:162","message":"Skipped due to OnFailure=false"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","error":"","exit_code":127,"time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:352","message":"pipeline complete"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:354","message":"uploading logs"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:358","message":"uploading logs complete"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","error":"","exit_code":127,"time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:363","message":"updating pipeline status"}
{"level":"error","error":"rpc error: code = Unknown desc = Step finished with exitcode 127, ","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/pipeline/rpc/client_grpc.go:97","message":"grpc error: wait(): code: Unknown: rpc error: code = Unknown desc = Step finished with exitcode 127, "}
{"level":"warn","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","error":"rpc error: code = Unknown desc = Step finished with exitcode 127, ","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:119","message":"cancel signal received"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:131","message":"pipeline done"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"42","id":"1532","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:369","message":"updating pipeline status complete"}
{"level":"debug","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/cmd/agent/agent.go:172","message":"polling new steps"}
{"level":"debug","time":"2022-10-31T14:34:19+01:00","caller":"/Users/aaa/woodpecker-agent/source/woodpecker/agent/runner.go:65","message":"request next execution"}

Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A join our Discord Chat Server or the Matrix room.

Hello everybody!
I tried to run the exact same pipeline with an older version (I arbitrarily chose commit 62d8276 since it was something like a month ago when I remember I was able to execute jobs with local backend on a mac).
And it worked!
My server is running using the docker image and the agent the darwin-arm64 binary. I build both of these artifacts from the same commit hash.
I verified that when the server and the agent starts up, they correctly log they are started with version next-62d82765.
So I guess there is some regression bug that is introduced since then.
I'm willing to try a bunch of versions (using dichotomy).. But I'd like to receive a few hints about which part of the codebase can be correlated so that I only look at commits that edited those parts..

I just tried with the latest build for the agent (still using the older server).. And the issue came back!
So it seems only related to the agent!

I may have found something interesting @6543
The agent starts throwing the error in that very commit https://github.com/woodpecker-ci/woodpecker/commit/b15ca52a638ecfb533512a453d096b5451d2fe89
After that one it doesn't work..
In the previous commit (e61f97f) it's working.

BTW that was working with an older version of the server as well..
With the latest server, at that commit b15ca52 it's still doing what explained in the issue description.
But with the previous agent (e61f97f) the agent is crashing with the following error:
{"level":"info","time":"2022-11-01T17:47:00+01:00","caller":"/Users/aaa/woodpecker/cmd/agent/agent.go:181","message":"Starting Woodpecker agent with version 'next-e61f97f8' and backend 'local' running up to 1 pipelines in parallel"}
{"level":"debug","time":"2022-11-01T17:47:00+01:00","caller":"/Users/aaa/woodpecker/cmd/agent/agent.go:165","message":"loaded local backend engine"}
{"level":"debug","time":"2022-11-01T17:47:00+01:00","caller":"/Users/aaa/woodpecker/cmd/agent/agent.go:172","message":"polling new steps"}
{"level":"debug","time":"2022-11-01T17:47:00+01:00","caller":"/Users/aaa/woodpecker/agent/runner.go:65","message":"request next execution"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"56","id":"1770","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/agent/runner.go:101","message":"received execution"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"56","id":"1770","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/agent/runner.go:115","message":"listen for cancel signal"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:73","message":"Executing 3 stages, in order of:"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","Stage":"wp_0_7937012288822635375_stage_0","Steps":"wp_0_7937012288822635375_step_0","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","Stage":"wp_0_7937012288822635375_stage_1","Steps":"wp_0_7937012288822635375_step_1","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","Stage":"wp_0_7937012288822635375_stage_2","Steps":"wp_0_7937012288822635375_step_2","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:83","message":"stage"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","Step":"wp_0_7937012288822635375_step_0","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:155","message":"Prepare"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"56","id":"1770","image":"bash","stage":"download","exit_code":0,"exited":false,"time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/agent/runner.go:273","message":"update step status"}
{"level":"debug","repo":"aaa/mac_local_test","pipeline":"56","id":"1770","image":"bash","stage":"download","exit_code":0,"exited":false,"time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/agent/runner.go:281","message":"update step status complete"}
{"level":"debug","ID":"1770","Repo":"aaa/mac_local_test","Pipeline":"56","Step":"wp_0_7937012288822635375_step_0","time":"2022-11-01T17:47:06+01:00","caller":"/Users/aaa/woodpecker/pipeline/pipeline.go:179","message":"Executing"}
panic: runtime error: slice bounds out of range [1:0]

goroutine 53 [running]:
github.com/woodpecker-ci/woodpecker/pipeline/backend/local.(*local).Exec(0x1400030e450, {0x106709f78?, 0x140005d0980}, 0x14000192f00)
	/Users/aaa/woodpecker/pipeline/backend/local/local.go:85 +0x860
github.com/woodpecker-ci/woodpecker/pipeline.(*Runtime).exec(0x140002c4620, 0x14000192f00)
	/Users/aaa/woodpecker/pipeline/pipeline.go:209 +0x44
github.com/woodpecker-ci/woodpecker/pipeline.(*Runtime).execAll.func1()
	/Users/aaa/woodpecker/pipeline/pipeline.go:181 +0x1b8
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/aaa/go/pkg/mod/golang.org/x/sync@v0.1.0/errgroup/errgroup.go:75 +0x5c
created by golang.org/x/sync/errgroup.(*Group).Go
	/Users/aaa/go/pkg/mod/golang.org/x/sync@v0.1.0/errgroup/errgroup.go:72 +0xa4

I guess that this is an expected behavior if there's a mismatched between the server and the agent maybe?

Ok I just tried running same versions for the server and agent..

next-e61f97f => Bash commands work
next-b15ca52 => Bash commands do NOT work (and agent is not crashing)

@sanjibukai #1395 I think it was catched ... can you check?


Cannot Delete in 'Multiple JSON' Source Type or add Sample

When trying to remove a Type or Sample or add a Sample there is an error in the console 'RangeError: Maximum call stack size exceeded.'

Yes, I see it.

This issue is over a month old, any updates?

from what i can see the website itself isn't open-source.
however, firefox is able to show some more info about what might be the cause of the issue.

it seems like /static/js/components/SourcePad/index.tsx is to blame, specifically the function on line 341.

i suspect the while loop is causing infinite recursion.

i'd love to help, but it doesn't seem like the website is open to contributions.

Very strange — line 342 makes no sense, and seems to have been introduced by a refactor. Removing it and fixing a global var wee on line 347 resolves the issue. I am deploying the fix now.

perfect, thank you!

Fixed.

can confirm, you can close #1681 too btw.


dev scripts command is wrong

Bug report
Describe the bug
dev scripts command is wrong
Steps to reproduce the behavior

yarn create tensei-app tensei
cd tensei
yarn dev
got

...
[nodemon] starting `node src/index index.js`
...

Expected behavior
...
[nodemon] starting `node index.js`
...

Screenshots
N/A
Code snippets
N/A
System

Node.js version: v14.15.4
NPM version: 7.6.0
Tensei version: 0.7.20
Database: sqlite
Operating system: Arch Linux

Additional context
this may fix it
{
    "scripts": {
        "dev": "nodemon index.js",
        "start": "node index.js"
    },
}

Thank you for sharing and suggesting a fix. Will work on this soonest 👌

Thank you for sharing and suggesting a fix. Will work on this soonest ok_hand

Your replied soooooo fast! :)

my real issue is coming soon...

Haha yes waiting for it

found bug here -> https://tenseijs.com/docs/getting-started#fields
Many dateTime became datatime ! Hope you can modify them soon ~~~

Yes, will fix. Thanks.

Issue #83 fixed.


BUG: manta apply image and manta apply configuration not asking users for after expanding SAT file template values for confirmation

manta apply cluster asks user to confirm final SAT file values. manta apply image and manta apply configuration should do the same

solved in v1.28.0


Play Again Button

application wont restart when user hit "Play Again" button.

https://github.com/Mr-MikeRoss/Color-Racer/pull/48


Export commands and scripts

Fixes #40
I exported both scripts and commands

Let's add runWithTruffle, agree :)


Minor doc updates for GCE

Thanks for the contribution! Please ensure your commits follow our style guide. This code will be tested once a Deis maintainer reviews it.
Your Pull Request can earn you credit at DigitalOcean! See http://docs.deis.io/en/latest/contributing/hacking/#digitalocean-credit for details.

Could you rebase this PR into one commit please, as per https://github.com/deis/deis/blob/master/CONTRIBUTING.md?

@sgoings Apologies on not going through CONTRIBUTING docs earlier. Fixed it.

@sgoings Also would it be okay if I refactor the python scripts to be compatible with both Python3 and Python2 and send another PR? Currently, its compatible only with Py2.

@sgoings I just realised something about my previous comment. I did not wanted to refactor the controller's or any other part of python code except for the python files in found in contrib folder.

@dhilipsiva thanks for the doc fixes! One more thing needs to change with the commit before we merge, though.  Would you mind amending it to something like docs(installing_deis): fixup command invocations for GCE? That would be very helpful. :)
As for your other comment

would it be okay if I refactor the python scripts to be compatible with both Python3 and Python2 and send another PR?

I don't see why not, so long as py2 is the default. Keep in mind that we've removed most of the code in contrib in deis/workflow (the eventual successor to deis v1) in favour of relying on kubernetes' docs for provisioning the hosts, so I wouldn't put too much effort into it unless you absolutely need to have the provision scripts working with python 3.

@bacongobbler Is the commit Body and Footer Mandatory? Or would a message just suffice?

@bacongobbler Sorry for multiple comments. Not too much of an effort. I changed AWS and Google contribs locally already as I am provisioning servers on both the places. Thanks for the Heads up.

the commit body and footer isn't necessary for such a small fix. For larger features it's strongly recommended, but not required.

@bacongobbler Done! Thanks!

Thanks!

Jenkins, add to whitelist.


Question about sparsity and pruning of the model

    Hello, I met some confusions after reading your paper, hope to get the answers, thank you very much!
   1. The "pruning" operation in the code seems to be just setting the weight parameter to zero without actually deleting the network neurons. So if I save a model with 90% sparse 27K parameters, the actual size of the model should be the same as that of the non sparse model, right? So, there is no way to get a smaller model with only 27K parameters here.
   2. If we just set the weight parameter to zero and do not delete the corresponding neurons, then these neurons will still exist when the next model parameters are updated, and won't it  cause these "zeroed" neurons to regain non-zero values?
   The puzzle is that if the neurons are not deleted during pruning, will the neurons that have been set to zero in the next training get parameters again and take effect? For example, if the weight of some neurons is set to zero, what we hope is that these neurons will lose their function and will not be updated in the next training, right? What puzzles me is that these zeroed neurons have not been deleted, and won't it continue to take effect due to the new weight value obtained by the model updating process?
    I hope you will forgive me if there are any unconscious offenses. I look forward to hearing from you! Thank you very much again.

Hi, Meteor,
I am very glad that you are interested in this paper. Your questions are very representative!
For the first question, yes. There are two ways of pruning, either pruning neurons or weights, where the first choice leads to more structural accelerations and the second one accepts a larger sparsity. setting weights to 0 alone cannot make the model smaller and we have reformulated the model based on the structure. For example, for a sparse matrix, it still has the same size as the dense one, but if you changed it to compressed row storage, then the size is greatly reduced.
Second.  We prune the weights during the pruning, it will be active (non-zero) again, so in the final iteration, we also need to prune it to make sure sparsity.
Third. You didn't ask this question, but I will answer it for extending this work. Pruning based on probability is more appealing and wasn't achieved during the submission of the NeurIPS'19 paper. You can achieve it by forgetting about the inverse gamma prior and beta prior for the updates of \sigma^2 and \delta in Eq.(14-15) in the paper.
Hope these answers are helpful.

Hi, Meteor,
I am very glad that you are interested in this paper. Your questions are very representative!
For the first question, yes. There are two ways of pruning, either pruning neurons or weights, where the first choice leads to more structural accelerations and the second one accepts a larger sparsity. setting weights to 0 alone cannot make the model smaller and we need to reformulate the model based on the structure based on a sparse model. For example, for a sparse matrix, it still has the same size as the dense one, but if you changed it to compressed row storage, then the size is greatly reduced.
Second. We prune the weights during the pruning, it will be active (non-zero) again, so in the final iteration, we also need to prune it to make sure sparsity.
Third. You didn't ask this question, but I will answer it for extending this work. Pruning based on probability is more appealing and wasn't achieved during the submission of the NeurIPS'19 paper. You can achieve it by forgetting about the inverse gamma prior and beta prior for the updates of \sigma^2 and \delta in Eq.(14-15) in the paper.
Hope these answers are helpful.

Hi, thank you very much for your reply, which solved my confusion and gave me great inspiration. The work of this paper is great. If there are other questions about the paper, I will come back. Thank you very much again! Best wishes!


Fixing options to allow overriding filename for .json and .har output files

Wasn't sure if we needed a test for this since it's mostly just a pass through of the option if set, so not much magic going on. :-) Let me know if we want one and I'll try to add it tomorrow.

Thanks @beenanner!

Hello,
I just wanted to tell you about a beautiful place I've visited recently, I met a lot of amazing people there. please read more about it here http://thajifraste.samwilk.com/xyqxupwt
Warmest regards<EMAIL_ADDRESS>


Profile: Pop-up request for optional profile information

part of #1398
As a marketing team member, I'd like to collect optional profile information to target marketing messages better.
As an educational researcher, I'd like to know more about our users to improve research and analysis.
As a user, I don't want to share more information unless I know what value I'm getting for it.
description
When the user take an action that demonstrates interest in the platform, like enrolling in a course, we will display a form that requests additional, optional profile information. We'll only show this once, even if the user has chosen not to fill out any of the additional fields.
acceptance criteria

[ ] pop-up form when a user visits a course from their dashboard
[ ] include an introduction: "To help us with our educational research missions, please tell us more about yourself"
[ ] only show the pop-up once (if they user wants to change their data, they can use the profile page)
[ ] basic, optional fields:

[ ] Gender Identity (choose one)

Woman
Man
Transgender
Non-binary / non-conforming
Prefer not to respond

[ ] Highest level of education: choose one, same values as xPRO
[ ] user type:

label: "Are you a: "
values: student, professional, educator, other
multi-select

[ ] if user-type includes "professional" display additional fields

[ ] Company: (free text)
[ ] Job Title: (free text)
[ ] Industry: same values as xPRO
[ ] Function: same values as xPRO
[ ] Company size: same values as xPRO
[ ] Years of experience: same values as xPRO
[ ] Leadership Level: same values as xPRO

[ ] include a note at the end "You can update this information anytime in your User Profile."

Please include a feature flag for these changes. I'd like to be able to show it some more people on RC, and maybe make some tweaks, before we release it to production.


Error: [$injector:modulerr] Failed to instantiate module phonecatApp

I try running the index.html at step number 7. It is just showing blank html page. And when i go to the debugger it says the above error
Error: [$injector:modulerr] Failed to instantiate module phonecatApp due to:
[$injector:modulerr] Failed to instantiate module ngRoute due to:
[$injector:nomod] Module 'ngRoute' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

I had the same problem as mr-sachinkalekar, struggled with it for days, and confounded my code school instructor and teacher assistant with it. Mr petebacondarwin's advice fixed the problem, which was so simple to resolve with proper module installation and configuration.

For me js file got downloaded from thirdparty component was empty :-)
Hope it may give some help to some one

Error: [$injector:modulerr] Failed to instantiate module starter due to:
[$injector:modulerr] Failed to instantiate module starter.routes due to:
[$injector:nomod] Module 'starter.routes' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.3.13/$injector/nomod?p0=starter.routes
minErr/<@file:///C:/Users/Techverve/Downloads/IonicServerSave-master/www/lib/ionic/js/ionic.bundle.js:8762:12
module/<@file:///C:/Users/Techverve/Downloads/IonicServerSave-master/www/lib/ionic/js/ionic.bundle.js:10466:1
ensure@file:///C:/Users/Techverve/Downloads/IonicServerSave-master/www/lib/ionic/js/ionic.bundle.js:10390:38
module@file:///C:/Users/Techverve/Downloads/IonicServerSave-master/www/lib/ionic/js/ionic.bundle.js:10464:1
loadModules/<@file:///C:/Users/Techverve/Downloads/IonicServerSave-master/www/lib/ionic/js/ionic.bundle.js:12796:22
forEach@file:///C:/User

Am getting above error while running can anyone help me?

Are you sure this is the right repo ?
You seem to be using ionic and execute ionic.bundle.js (which has nothing to do with angular-phonecat).

yep, its my angualar ionic framework application

Starter is my application name.. while route it gives like that

This repo is specifically for angular-phonecat.
You should ask for help over at ionic.

Error: [$injector:modulerr] Failed to instantiate module phonecatApp due to:
[$injector:modulerr] Failed to instantiate module phonecatControllers due to:
[$injector:nomod] Module 'phonecatControllers' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

I spent a couple of hours to solve this problem, so when you see a message like this on :
Error: [] Failed to instantiate module phonecatApp due to: [] Failed to instantiate module ngRoute due to: [*** Module 'ngRoute' is not available! You either misspelled the module name or forgot to load it.
check this points:

Include the module in app.js (where yuo define the angular.module)
Include the js module file in the index.hml
include the module also in the controller

I am getting this error.After adding acute.select dependencies.
Uncaught Error: [$injector:modulerr] Failed to instantiate module App due to:
Error: [$injector:modulerr] Failed to instantiate module newgen due to:
Error: [$injector:modulerr] Failed to instantiate module acute.select due to:
Error: [$injector:nomod] Module 'acute.select' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.4.8/$injector/nomod?p0=acute.select
at http://localhost:8080/project/js/angular-1.4.8.js:68:12
at http://localhost:8080/project/js/angular-1.4.8.js:2005:17
Can you please guide me to overcome this issue


Early stopping and getting warnning.

Hi, I am a student who is a novice in the research aspect of NLP, I runned the code as README but got warning like
:
Early stopping!
odict_keys(['start_transitions', 'end_transitions', 'transitions'])
Training (with validation) (356 sec.)
/usr/local/anaconda3/envs/sato_0928_py366_v1/lib/python3.6/site-packages/sklearn/metrics/classification.py:1437: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples.
'precision', 'predicted', average, warn_for)
I have no idea why I get this warning, my python version is 3.6.6 and have installed the requirements.
Has anyone met similar warning before? How can I solve it?
Thank you!

And I found that some files in the 'outputs' have userid as filename extension, like:
'/home/dalab/Desktop/do_not_delete-lpn_code/sato-master/results/CRF_log/type78/CRF+LDA_pathL_multi-col/marco avg-val/f1-score/events.out.tfevents.1632806349.dalab'
This file has filename extension '.delab', which is the userid of my ubuntu. I donot know whow to open this file and get the F1 score.
Does anyone have and ideas? Thanks very much.


Update samples to 3.2-SNAPSHOT

fabric8-maven-sample-eng left behind as there are other issues with
spring-boot-generator-jersey

thanks !
[merge]


Trinity times out peer connections during state sync

What is wrong?
While resuming state sync my node stalled while processing something.
Here are the logs:  https://gist.githubusercontent.com/pipermerriam/f33802d8d8890af3c6c7a128e2745e75/raw/d83f3abefabeb3dcef5e6d12518db1755f66b666/trinity-state-sync-stalled.log
Event occured between timestamps 07-23 21:20:34 and 07-23 21:21:28 (approximately a full minute of dead time.
How can it be fixed
See what blocked the process for so long and figure out how to move it into a process pool executor or something.

It looks like the code location of this may be here:
https://github.com/ethereum/py-evm/blob/master/p2p/state.py#L130
The call out to StateSyncer.process.  I believe that we need to do something like push this out to a process pool of workers.

Good catch! I'd seen this kind of behaviour in the past and wrongly thought it was because some of our requests were timing out (like, in your logs, peer 0x0282 never seem to reply to us[1]), but as you point out the main thread is blocked in the calls to StateSyncer.process() so even when the peers actually reply the event loop will not be able to consume them in time since it is blocked. That can even lead us to drop peers as the connection will be idle for too long.
Notice that StateSyncer cannot be pickled as it holds a reference to a LevelDB instance so we cannot run .process() in our ProcessPoolExecutor. Also, batching won't help because StateSyncer.process processes each item individually.
Given that, I think our best bet for now is to change the loop calling .process() to yield control after every N items
[1]
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x0282@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x9a1c@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x5669@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Got 0 NodeData entries from ETHPeer <Node(0x9a1c@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x9a1c@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Got 384 NodeData entries from ETHPeer <Node(0x5669@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x5669@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Got 384 NodeData entries from ETHPeer <Node(0x5669@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Requesting 384 trie nodes to ETHPeer <Node(0x5669@<IP_ADDRESS>)>
   DEBUG  07-23 21:20:42       state  Got 384 NodeData entries from ETHPeer <Node(0x5669@<IP_ADDRESS>)>
...
   DEBUG  07-23 21:21:28       state  Re-requesting 1152 trie nodes

So, here's some profiling stats (only for the loop that calls scheduler.process()) I gathered by running a state sync on ropsten with a nearly full state DB (by way of doing a complete sync a few days ago).
Here I ran it via trinity (which means the DB runs in a separate process). As we can see, most of the time is spent checking whether or not a given key already exists in the DB. 97538 calls to DBProxy.__contains__ took 136 seconds.
   INFO  07-24 10:40:28       state  ====== State sync progress ========
    INFO  07-24 10:40:28       state  Nodes processed: 18309
    INFO  07-24 10:40:28       state  Nodes processed per second (average): 99
    INFO  07-24 10:40:28       state  Nodes committed to DB: 15697
    INFO  07-24 10:40:28       state  Nodes requested but not received yet: 384
    INFO  07-24 10:40:28       state  Nodes scheduled but not requested yet: 13225
    INFO  07-24 10:40:28       state  Total nodes timed out: 0

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
    18309    0.340    0.000  161.925    0.009 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:162(process)
    99451    1.442    0.000  155.656    0.002 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:124(schedule)
   113235    0.744    0.000  139.826    0.001 /usr/lib/python3.6/multiprocessing/managers.py:744(_callmethod)
    97538    0.243    0.000  136.858    0.001 /home/salgado/src/py-evm/trinity/db/base.py:41(__contains__)
   113235    0.575    0.000  123.697    0.001 /usr/lib/python3.6/multiprocessing/connection.py:246(recv)
   113235    0.624    0.000  122.253    0.001 /usr/lib/python3.6/multiprocessing/connection.py:406(_recv_bytes)
   226470    1.248    0.000  121.348    0.001 /usr/lib/python3.6/multiprocessing/connection.py:374(_recv)
   226470  119.833    0.001  119.833    0.001 {built-in method posix.read}
   113235    0.639    0.000   15.386    0.000 /usr/lib/python3.6/multiprocessing/connection.py:202(send)
    99451    0.377    0.000   14.242    0.000 /usr/lib/python3.6/logging/__init__.py:1284(debug)

For comparison, here's when I ran directly via python -m p2p.state (iow, with an in-process DB). As we can see, 97380 calls to BaseDB.__contains__ took 86 seconds
2018-07-24 10:44:33,836 INFO: ====== State sync progress ========
2018-07-24 10:44:33,837 INFO: Nodes processed: 26748
2018-07-24 10:44:33,837 INFO: Nodes processed per second (average): 175
2018-07-24 10:44:33,837 INFO: Nodes committed to DB: 22402
2018-07-24 10:44:33,837 INFO: Nodes requested but not received yet: 4608
2018-07-24 10:44:33,837 INFO: Nodes scheduled but not requested yet: 23460
2018-07-24 10:44:33,838 INFO: Total nodes timed out: 3841
         6217681 function calls (5871232 primitive calls) in 93.986 seconds

   Ordered by: cumulative time
   List reduced from 108 to 10 due to restriction <10>

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
    26748    0.261    0.000   93.957    0.004 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:162(process)
    98137    1.480    0.000   90.966    0.001 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:124(schedule)
    97380    0.196    0.000   86.317    0.001 /home/salgado/src/py-evm/eth/db/backends/base.py:38(__contains__)
    97380    0.205    0.000   86.063    0.001 /home/salgado/src/py-evm/eth/db/backends/level.py:31(_exists)
    97380   85.858    0.001   85.858    0.001 {method 'get' of 'plyvel._plyvel.DB' objects}
    26583    0.053    0.000    2.052    0.000 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:153(get_children)
    98132    0.327    0.000    1.895    0.000 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/eth_utils/hexadecimal.py:19(encode_hex)
     1571    0.009    0.000    1.204    0.001 /home/salgado/src/py-evm/p2p/state.py:273(leaf_callback)
123717/26583    0.399    0.000    1.067    0.000 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/trie/sync.py:53(_get_children)
    28154    0.047    0.000    1.041    0.000 /home/salgado/virtualenvs/pyevm/lib/python3.6/site-packages/rlp/codec.py:194(decode)

It looks like the overhead incurred by the multiprocessing proxy is hurting us pretty badly during a state sync, given the amount of DB accesses we make. That's something to keep in mind, but as this seems to be the main bottleneck, we could probably solve the issue here by having an async version of StateSync.process() that uses a DBProxy async API, thus not blocking the main thread while doing DB access. That would mean the asyncio event loop would be doing a ton of extra context switches, though, and it will be interesting to see how it handles that

@gsalgado do you want to keep this open?  I think I'd prefer a new issue more specific to what you are working on in #1124

I think this has a good description of the issue itself (i.e. the observed behaviour we want to change), and in the PR we can discuss how we'll fix it


[Awaiting Payment 2024-09-19][$250] [HIGH] Invoicing V1 - Archive B2B invoice room when the receiver workspace is deleted

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.18-7
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Issue reported by: Applause - Internal Team
Action Performed:
Precondition:

User A is an admin of his workspace
User B is an admin of his workspace

Go to staging.new.expensify.com
[User A] Send an invoice to User B
[User B] Go to invoice chat
[User B] Click pay button > Pay the invoice as business > Pay elsewhere
[User B] Delete all the workspaces
[User A] Send another invoice
[User A] Click on the invoice preview

Expected Result:
Send invoice option should be hidden for User A because User B is no longer an admin of his workspace
Actual Result:
User A can still send invoice to User B after User B deletes all the workspaces, which results in error.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/user-attachments/assets/909d1f4c-e62b-487d-ab1d-50421fc3471b
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01903a726126738169
Upwork Job ID:<PHONE_NUMBER>274275153
Last Price Increase: 2024-08-29

Issue OwnerCurrent Issue Owner: @

@lanitochka17 do you have the prod behavior by any chance?

Hmmm did we just add the pay as business to invoices?

We added it here https://github.com/Expensify/App/pull/44970, I think we should do something on the backend, let me check if we are already planning something.

There is a section for it in the doc, but I don't see an issue for it. Anyway I am removing the Web-E deploy blocker label then.

Asked in Slack https://expensify.slack.com/archives/CSL3XBCCR/p1723216392276109

Work in progress

Same, WIP.

^Auth PR up for review

PR still in review

Just resolved the conflicts in the Auth PR.

@VickyStash do you think you could work on this issue and do the App changes needed when the b2b room is archived?

Also, @jjcoffee would you like to be assigned as the C+ for it?

Hi, I am Michael (Mykhailo) from Callstack, an expert agency and I can work on this issue.

@cristipaval Sure, I'd be happy to!

Just to note that I found a similar issue whilst testing another invoice rooms PR even if using the FAB to send an invoice personally to User B, the invoice will get added to User B's archived workspace invoice room.

[User A] Send an invoice to User B (who has no workspaces)
[User B] Pay invoice as business
[User B] Delete created workspace
[User A] Send another invoice to User B
Note there is an API request error: A record already exists with this ID, the request shows the same invoiceRoomReportID for the room created in (2).

Just to note that I found a similar issue whilst testing another invoice rooms PR. If using the FAB to send an invoice personally to User B (so not using the inline + to send to the workspace directly), the invoice will get added to User B's archived workspace invoice room.

[User A] Send an invoice to User B (who has no workspaces)
[User B] Pay invoice as business
[User B] Delete created workspace
[User A] Send another invoice to User B
Note there is an API request error: A record already exists with this ID, the request shows the same invoiceRoomReportID for the room created in (2).

@jjcoffee  This bug is not replicable, because User B cannot pay as a business in the current main or staging. https://github.com/Expensify/App/pull/47862 introduces this feature. cc @VickyStash
Details
https://github.com/user-attachments/assets/a10fbc94-cfbc-4f08-b4c2-e288897f6f1d

I tested the bug and it is not replicable if the users are online and have a stable internet connection. The room was archived immediately once I deleted the workspace.
Details

I could reproduce the "bug" when User A is offline. It is expected because User A does not receive the latest updates until User A goes online.
Details
https://github.com/user-attachments/assets/e9cb6b8d-c135-4163-9f16-6540b0a52746

However, I tried to test the same flow with expense submission and I have the same error message when User A is offline.
Details
https://github.com/user-attachments/assets/098e470f-8813-42cf-b76b-016c5d0d755b

So I would say that this is not a bug and this behavior is correct. WDYT @cristipaval?

Just to note that I found a similar issue whilst testing another invoice rooms PR. If using the FAB to send an invoice personally to User B (so not using the inline + to send to the workspace directly), the invoice will get added to User B's archived workspace invoice room.

[User A] Send an invoice to User B (who has no workspaces)
[User B] Pay invoice as business
[User B] Delete created workspace
[User A] Send another invoice to User B
Note there is an API request error: A record already exists with this ID, the request shows the same invoiceRoomReportID for the room created in (2).

@jjcoffee This bug is not replicable, because User B cannot pay as a business in the current main or staging. #47862 introduces this feature. cc @VickyStash
Details

The bug is replicable in staging, but only if user B already has a workspace to pay as a business. This logic is presented in staging.
Details

@rezkiy37, sorry for the lack of context. I fixed the original bug in the backend.

So you need to:

Send an invoice to a user who is an admin of their primary workspace
Pay as business (so that the invoice room is upgraded to b2b)
Now the receiver deletes the workspace and the invoice room is archived
The sender now opens the invoice room (which is archived).
The App crashes

@cristipaval  The staging does not crash for me, but I can send invoices to the archived invoice room. I will fix this because the app attaches the incorrect reportID.
Details

https://github.com/user-attachments/assets/3bc7d1d1-351b-498a-9196-bd4bed85727a
https://github.com/user-attachments/assets/45831def-a31b-4630-974c-d9d2edec82e2

@jjcoffee Yes, I am fixing it in the scope of the upcoming PR.

Discussing with @cristipaval in Slack.

Hey!
I will be OOO from 04.09 (afternoon) till 09.09. I will continue to work on this one once I am back.

Thanks for the update!

Hey!
I've opened the PR (https://github.com/Expensify/App/pull/48275) for review because the app's side is ready. One small backend improvement left. Discussion in Slack.

@isabelastisser Looks like @cristipaval is on parental leave at the moment, is it possible to get another engineer assigned to review the PR?

@rlinoz, any chance you can review the PR since Cristi is on leave? TIA!

Sure, on it.

This has been deployed to prod https://github.com/Expensify/App/pull/48275#issuecomment-2347262503

Since this is a CRITICAL feature for invoicing, I believe it also qualifies for $500 compensation, as on the other critical invoicing issues I worked on. cc @isabelastisser

Regression Test Proposal

User A: Send an invoice to user B.
User B: Open the invoice and select to Pay as business. The invoice room will be upgraded to a B2B invoice room.
User B: Delete the workspace.
User A and User B: Open the invoice room and verify that the footer message is This chat is no longer active because ${policyName} is no longer an active workspace.
User A: Send another invoice to user B from the same workspace.
User A and user B: Verify that the app creates a new invoice room.

Do we agree 👍 or 👎

Thanks, @jjcoffee! Offer sent in Upwork.

All set!

@isabelastisser Offer accepted, thanks!


Ferdi and --no-xshm

Hi,
Ferdi has some issues with taking up a lot of RAM and CPU and causing the system to slow down to the point I have to kill all Ferdi processes and the obvious solution to this is enabling hibernation of different services.
I have been having the same issue with Brave and Vivaldi browser and while browsing through the forums came across something called starting a browser from the terminal Brave --no-xshm
I tried the same with Ferdi from the terminal starting Ferdi with Ferdi --no-xshm and have been using this for the last two days with literally no slowdown, system freeze and or delay in the individual services loading while switching.
I am a total NOOB and have been trying to understand the reason for the improved performance and can I do the same in the application so I dont have to rely on terminal for starting it ?

What OS/version/platform(x86,x64,ARM) are you running it on?

Kali GNU/Linux Rolling 2021.1
GNOME Shell 3.38.4
x86_64
ferdi current version 5.5.1 -nightly.13
Chromium 89.0.4389.114

Hey @niladrishekhar, great to hear that you were able to fix the RAM and CPU issues.
There is a new stable release: https://github.com/getferdi/ferdi/releases/tag/v5.6.1
Please try if you can still reprpduce these issues.

Closing due to inactivity.


ChefSpec fails when the recipe contains only "include_recipe"

ChefSpec fails when the recipe contains only "include_recipe" and no other resource.
Ex-
demo::default
include_recipe 'demo::_first'

demo::_first
file '/tmp/demo'

Spec- demo_spec.rb
require 'chefspec'

describe 'demo::default' do
  let(:chef_run) do
    ChefSpec::SoloRunner.new(platform: 'centos', version: '6.5')
      .converge(described_recipe)
  end

  it 'it calls _first recipe' do
    expect_any_instance_of(Chef::Recipe).to receive(:include_recipe).with('demo::_first')
  end
end

Error
demo::default it calls _first recipe
     Failure/Error: Unable to find matching line from backtrace
       Exactly one instance should have received the following message(s) but didn't: include_recipe
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-mocks-3.1.3/lib/rspec/mocks/any_instance/recorder.rb:94:in `verify'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-mocks-3.1.3/lib/rspec/mocks/space.rb:69:in `block in verify_all'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-mocks-3.1.3/lib/rspec/mocks/space.rb:69:in `each_value'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-mocks-3.1.3/lib/rspec/mocks/space.rb:69:in `verify_all'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-mocks-3.1.3/lib/rspec/mocks.rb:45:in `verify'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/mocking_adapters/rspec.rb:23:in `verify_mocks_for_rspec'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example.rb:382:in `verify_mocks'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example.rb:373:in `run_after_example'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example.rb:167:in `block in run'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example.rb:329:in `with_around_example_hooks'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example.rb:149:in `run'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example_group.rb:490:in `block in run_examples'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example_group.rb:486:in `map'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example_group.rb:486:in `run_examples'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/example_group.rb:453:in `run'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:111:in `block (2 levels) in run_specs'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:111:in `map'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:111:in `block in run_specs'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/reporter.rb:53:in `report'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:107:in `run_specs'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:85:in `run'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:69:in `run'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:37:in `invoke'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/gems/rspec-core-3.1.7/exe/rspec:4:in `<top (required)>'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/bin/rspec:23:in `load'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/bin/rspec:23:in `<main>'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/bin/ruby_executable_hooks:15:in `eval'
     # /Users/Arjun/.rvm/gems/ruby-2.1.5/bin/ruby_executable_hooks:15:in `<main>'
     #
     #   Showing full backtrace because every line was filtered out.
     #   See docs for RSpec::Configuration#backtrace_exclusion_patterns and
     #   RSpec::Configuration#backtrace_inclusion_patterns for more information.

`````````````````

The above example depicts one of the test scenarios that one would come across while writing chef specs. There should be a method to handle such scenarios.

@ArjunHariharan you aren't actually running Chef anywhere...
require 'chefspec'

describe 'demo::default' do
  let(:chef_run) do
    ChefSpec::SoloRunner.new(platform: 'centos', version: '6.5')
      .converge(described_recipe)
  end

  it 'it calls _first recipe' do
    expect_any_instance_of(Chef::Recipe).to receive(:include_recipe).with('demo::_first')
+   chef_run
  end
end

let is lazy-loaded. For more information on RSpec's let block, please see the documentation.

@sethvargo  - Got it. Thanks a ton!!! :)

I found (possibly due to my own lack of understanding) that I had to place all of the stubbed include recipe checks inside a single it block that ended with chef_run or I would continue to get this error.


kubecost helm-chart add

Test complete.
kubecost helm chart add & dashboard.json add

Thanks @EleSangwon


[Bug] show proc "/cluster_health/tablet_health" returns wrong result

Search before asking

[X] I had searched in the issues and found no similar issues.

Version
1.1.2rc05
What's Wrong?
When i execute show proc "/cluster_health/tablet_health", i found that the Total row is not right, the num of some columns are always 0 when some db's corresponding column is greater than 0. I've found that the implement is not right and i will submit a pr to fix this problem.

What You Expected?
The Total row should return right result.
How to Reproduce?
No response
Anything Else?
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I found that this problem has been fixed in master branch. But in 1.1-lts, this problem is still exists.


Crash in Sketch 3.4

Plugin crashes in Sketch 3.4 (15138) with the following error:
Application Specific Information:
objc[53682]: Cannot form weak reference to instance (0x7fcd1e0c03e0) of class NSFont. It is possible that this object was over-released, or is in the process of deallocation.
Performing @selector(runPlugin:) from sender NSMenuItem 0x7fcd16d86c10

Not an urgent issue, just something to check when 3.4 is out of beta.

I can confirm :+1: the plugin crash when press ⌘ + E on upcoming sketch beta 3.4

The bug was related to the text layer so it's fixed as now constraints are stored in layers data.


lightburn: init at 0.9.15

Motivation for this change
This implements a derivation for LightBurn, a laser control software. It's binary and non-free, so we wrap it appropriately.
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[X] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Do not have hardware on hand right now but it starts correctly and opens my previous files correctly. (I've used a similar derivation in a local overlay for a while).
I haven't upstreamed it because I wasn't sure that less popular closed software like this one had their place on nixpkgs, but I guess I was wrong :).


GC: Restore: Messages: OneDrive Attachment causes error on upload

Restoring a message with a shared OneDrive attachment causes this failure
 Error Trace:    /corso/src/internal/connector/exchange/exchange_service_test.go:407
                Error:          Received unexpected error:
                                1 error occurred:
                                        *<EMAIL_ADDRESS> ErrorInvalidProperty The property '' is required when creating the entity.: error status code received from the API

The id associated with the above shows up as an M365 exchange.Mail object without an attachment. Additional troubleshooting is required.

The M365 use case has changed to place OneDrive attachments within the body and no longer represents them as an attachment. Therefore, this issue is now closed.