Documentation on usage of AzDevOps Pipeline Cache task with Docker fail

Using the cache configuration for docker as stated in the documentation fail with the error on the Docker Save step :
Error response from daemon: No such image: cache

I believe the cache usage is wrong or something is missing in the documentation.
You can reproduce with an empty pipeline and just the statements in the documentation.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 77c20289-dab2-7a6e-4f63-4b30eaff2c71
Version Independent ID: d75cc196-90c1-8291-9907-ff405bde4edf
Content: Pipeline caching - Azure Pipelines
Content Source: docs/pipelines/release/caching.md
Product: devops
Technology: devops-cicd-release
GitHub Login: @ramiMSFT
Microsoft Alias: rabououn

Thank you for your feedback! Please let us know if you're still facing an issue with the new example.


Feature Request: Configurable Payment Buttons for Adyen Plugin

Dear Adyen Plugin Development Team,
I would like to request the addition of a feature that allows the customization of payment buttons directly within the Shopware Admin for the Adyen plugin in Shopware 6. Specifically, it would be extremely beneficial if merchants could configure the appearance and behavior of individual payment method buttons, such as the PayPal button.
For example, it should be possible to adjust settings like:
•	Button size
•	Button color and styling
•	Custom text or labels on the button

This level of configurability would enable merchants to better align payment buttons with their store’s branding and design, and improve the overall user experience during the checkout process.
Thank you for considering this request. I believe this enhancement would be highly valuable for merchants using Shopware 6 and the Adyen plugin.

Hello @romaneckert,
Thank you for suggesting customizing payment buttons directly within the Shopware Admin for the Adyen plugin. We understand how valuable this feature could be for merchants.
Our team will review the proposal thoroughly and consider its potential future implementation. At this time, there is no specific timeline.
Best regards


required_with will break --form-validation when using commas to specify more than one field

this is because multiple fields are separated by comma, the same as the multiple definitions for the different form fields in the --form-validation definition

possible solutions: use semicolons to separate field definitions, but that would mean that to be in line with the rest of the arguments, all arguments would have to use semicolon as a separator rather than comma

i added a comment to #120 before seeing it was closed:
this was actually an issue in the previous version because in form validation, required_with uses commas to separate fields that are required but commas are already used to separate additional validation rules, so a delimiter other than comma has to be used


Changes AddData method return type

Unlike other methods used to add securities to the algorithm that return a Security or a derived object, AddData was returning void. This commit change it to return Security for consistency.

Thank you @AlexCatarino! @StefanoRaggi !


Data Input Form to crowdsource updates about new facilities opening, expanding capacity in existing facilities

New hospital facilities are being set up or existing ones are expanding their ICU and overall capacity in a very dynamic, rapid way. These are often being reported in the local or national news, including the bed capacity info and a rough location. For example:

https://gothamist.com/news/emergency-field-hospital-going-central-park-coronavirus-cases-surge-nyc:

The tents are being assembled in the East Meadow by international Christian relief organization Samaritan's Purse, to serve overflow from Mount Sinai hospital. The Central Park field hospital will consist of 68 beds specially equipped with respiratory care, powered by generators.

https://gothamist.com/news/inside-one-brooklyn-hospitals-scramble-to-prepare-for-surge-in-coronavirus-patients

Maimonides Medical Center, like all hospitals in our region, is rapidly moving to scale up from around 560 beds to 1400; from 54 intensive care beds for the sickest patients, to around 300.

https://techcrunch.com/2020/03/28/detroit-auto-show-canceled-in-preparation-for-fema-to-turn-venue-into-field-hospital/

The North American International Auto Show,  which was scheduled for June in Detroit, has been canceled as the COVID-19 pandemic continues to spread and the city prepares to repurpose the TCF Center into a temporary field hospital.

More than 100 convention centers and facilities around the country are being considered to potentially serve as temporary hospitals. Alberts said it became clear that TCF Center would be an inevitable option to serve as a care facility.

https://www.nbcnewyork.com/news/local/usns-comfort-arrives-in-nyc-monday-to-help-hospital-with-non-coronavirus-patients/2350317/

The USNS Comfort docked around 10 a.m. and will be ready to take in patients within 24 hours. While the ship won't treat people with COVID-19, its 1,000 beds and 12 operation rooms are ready to bolster the overtaxed health care system.

We should have a convenient way for anyone who sees such news as above to contribute information about reported capacity increases. This entry would include data fields like facility name, its approximate location, # of beds and other equipment of what type, source of information.
This could start off as an airtable form entry with google map integration. We can pre-populate the table with our existing facilities data so it's easy to search facilities and either update info about existing facilities or add a new facility if there's no result shown on search. We can treat the airtable as a new facility-level data source (similar to HCRIS or DH) except that it's not static. We should still validate their sources before incorporating it into the full dataset.
Happy to consider other approaches besides airtable but speed to getting something up and running for data entry, manual validation, and incorporation into our CCM facilities data should be the top priority.

This could be in addition to or replacing the google form to "Update data" made in #65

This is happening across Chicago as well - seems like new information popping up everyday the city or county health departments supposedly have access to this information first as groups are working with them to expand non-acute beds

I like the use of the airtable form entry!

We'll need to consider differentiating between setups creating and adding non-acute beds for COVID, quarantine for COVID no health problems, and acute beds

This could then be compared to predictions made of hospital beds needed


tpm2 startup command

See issue #292 for the details.
send a startup command by default.

Won't Fix


Filling all the fields in the View User List gives wrong result on searching.(Company Panel)

Describe the bug
Filling all the fields (i.e User Account Type ,Order ID , User Display Name, Account Name, and License Expiring After) gives wrong esult on searching in the View User List.
To Reproduce
Steps to reproduce the behavior:
1.Enter in the address bar-pulseptt.com
2.Login With Id and Password.
UserName-tata
Password-12345678
3.Click On 'View User List' and fill all the fields and click on search.
Expected behavior
It must give a correct result.
Desktop (please complete the following information):
OS: Windows 10
Browser: Version 100.0.4896.60 (Official Build) (64-bit)
Version: [0.5.2]

No result is showing.


how to use buffering event when playing hls?

I can't find buffering event at events list.But I find the event at flash source code.

sorry, i find it.


Publish Scala 3 alongside Scala CLI as the scala runner on NIX

https://nixos.org/

Should be done when https://github.com/NixOS/nixpkgs/pull/336735 is merged

Merged! I think from now on we can rely on version bumps being mergeable automatically by maintainers


Use _concat for repartition

Closes https://github.com/dask-contrib/dask-expr/issues/625
I don't really like _concat. Starting with the name of it and it's relatively magical rv. It does fix the problem.
FWIW I encountered this in https://github.com/dask-contrib/dask-expr/pull/294 during division calculation since the optimization is now different and includes a postcompute, i.e. a repartition

I suspect that we'd have to use this in other places as well if this is what we want do to

See my comment in the issue, this solves this particular case, but having integers in partitions is a general issue that is bad

Closing in favor of https://github.com/dask/dask/pull/10739


Modify the JSON ABI schema for function outputs

From https://github.com/FuelLabs/sway/issues/1818

Currently, the JSON ABI schema for Sway uses an array for function outputs. However, functions in Sway can only ever return one value. For example, in the case of a function that returns an array, the "one value" that it returns is the array, which happens to contain multiple nested values. In the case of a struct, the "one value" that it returns is the struct, which again contains multiple nested values.

So, we should change the JSON ABI schema to only return one value for function outputs.

Once this is complete, then we will need to make the corresponding changes to the SDKs:

Rust SDK: https://github.com/FuelLabs/fuels-rs/issues/358
TypeScript SDK: https://github.com/FuelLabs/fuels-ts/issues/314

As part of this, also consider removing the requirement for the name field for the single output since it's redundant. Named outputs are not a thing (and probably won't ever be). cc @Braqzen.


Why MobileBlazorBindings

I thought blazor was for the web
we already have xamarin right
xamarin is planning to support windows too

Hi @Xyncgas , Mobile Blazor Bindings is an experimental project where we're trying new ideas before deciding whether they should become part of .NET. The BlazorWebView component that started in Mobile Blazor Bindings is now part of .NET 6 and enables several new scenarios:

Building new web-based UI that can run locally on Windows, macOS, iOS, and Android, and also in a web browser
Modernizing parts of existing WPF and WinForms apps by adding web-based UI to them, enabling it to be shared in other platforms
Enabling developers who have web skills to use their knowledge to quickly build native desktop and mobile apps without learning a new UI platform

And certainly there are other scenarios. But these are some of the biggest ones that we think create a lot of value in the .NET platform.

I admit it's tempting plus it's beautiful to have an app that can run both the native and on the web.
I think companies cares more about 'can I' than 'you can', people are saying xamarin has been there for a long time and they are more comfortable with it and the way I am seeing they don't want to move to a new technology because they sure can write code the way they are now while being comfortable that they are going to be sure they can do what they want to do (I am sorry this sentence is so long and it doesn't seem like ending) but instead there isn't a strong guarantee that the new technology is going to let people do what they want to do now and in the future because sometimes they can be what's stopping you and it's true for example for people who are learning a new language and they often feel like can't do anything and later when they are more familiar with it they get the feelings like they can only do what the language let them to do which even c++ has this problem and it was supposed to be easy it was supposed to let people get what they want to do done easily given that it's an existing pattern and practice and demand unless you are making something new then you are more than welcome and won't be to difficult to do it too, I am just letting you know.
I like the future where companies starting to hire web people over to do native apps, more job opportunity, it's just that some people are gonna look at them and say "damn the September it's never gonna end" lol

Hey Eilon, I just want to say, I just learned how to spell your name and I like what you are doing and looking forward to use this amazing technology one day


Unexpected behaviour of "mraa_spi_transfer_buf( )" - C

I'm developing a lib to read/write some SPI flash memories like the W25x40/Winbond.
Some unexpected behavior has occurred when using the "mraa_spi_transfer_buf( )" function for transferring certain amount of data sequentially.
For 20 bytes or less the code works well, but for more the code crash randomly, beeing necessary reboot the Edison.
I'm using the last version of MRAA on the Eclipse.
Copy of SPI_-_Flash_mem_large_array.txt

Could you please post the exact crashes you observe?
There were several fixes for SPI for similar symptoms recently, which I think were not yet rolled up to an official image release, see the full list below. If you're up to that, you can build your own image with these added to see if that helps.
https://github.com/01org/edison-linux/commit/3964570409edc05d16d38a61644906747d4ecb5c
https://github.com/01org/edison-linux/commit/c527c66918be70f90255bf85d6435c2615bbd6bb
https://github.com/01org/edison-linux/commit/2d7dacd26d06afec9fd4d7a5df73bc4f77571195

Could you please post the exact crashes you observe?
There were several fixes for SPI for similar symptoms recently, which I think were not yet rolled up to an official image release, see the full list below. If you're up to that, you can build your own image with these added to see if that helps.
https://github.com/01org/edison-linux/commit/3964570409edc05d16d38a61644906747d4ecb5c
https://github.com/01org/edison-linux/commit/c527c66918be70f90255bf85d6435c2615bbd6bb
https://github.com/01org/edison-linux/commit/2d7dacd26d06afec9fd4d7a5df73bc4f77571195

Thanks for the feedback.
The crash is a little random. I Tried to send/receive one array with 2000 elements. Sometimes the code finish, sometimes it crash during the transfer. After this crash , eclipse shows an error when I try to execute the code ("error during file upload"), being necessary reboot the system.
It's possible to enable a debug log to verify what's happening?
I tried other function, "mraa_spi_write_buf( )", but the same occur.
I think that the first link listed is related with this crash.
One more question, it's possible to use the last version of MRAA without need to build and install a new image?
Thanks.

Thanks for the feedback.
The crash is a little random. I Tried to send/receive one array with 2000 elements. Sometimes the code finish, sometimes it crash during the transfer. After this crash , eclipse shows an error when I try to execute the code ("error during file upload"), being necessary reboot the system.
It's possible to enable a debug log to verify what's happening?
I tried other function, "mraa_spi_write_buf( )", but the same occur.
I think that the first link listed is related with this crash.
One more question, it's possible to use the last version of MRAA without need to build and install a new image?
Thanks.

The library logs errors to the OS' journal, you can check that with journalctl --no-pager -xn40. I don't think it's accessible from the Eclipse, you'll need to log onto the board using SSH.
As far as updating mraa versions - sure, by default on official images you have an opkg repo with all mraa and UPM releases configured. Just run "opkg update && opkg install mraa" to update it.
If that's indeed that kernel problem, then we unfortunately can do nothing on the mraa level - that's a kernel thing we have no influence onto. But as I mentioned, you can build your own image with that patch. And I think sooner or later there might be another official image release hopefully with this fix incorporated.
Let's see OS logs to try to confirm this hypothesis.

@agaelema, so what's in the system logs?

@agaelema is this still actual for you or you'll just wait for the kernel update/update it on your own?

Hi @alext-mkrs,
The problem keeps happening.
This is the log using the command "journalctl --no-pager -xn40".

root@edison:~# journalctl --no-pager -xn40
-- Logs begin at Sat 2000-01-01 00:00:11 UTC, end at Sun 2016-01-17 21:14:56 UTC. --
Jan 17 21:14:56 edison kernel:  [] ? spidev_write+0xb0/0xb0
Jan 17 21:14:56 edison kernel:  [] ? spidev_probe+0x190/0x190
Jan 17 21:14:56 edison kernel:  [] do_vfs_ioctl+0x306/0x550
Jan 17 21:14:56 edison kernel:  [] ? inode_has_perm.isra.32.constprop.65+0x3a/0x50
Jan 17 21:14:56 edison kernel:  [] ? file_has_perm+0x87/0x90
Jan 17 21:14:56 edison kernel:  [] ? selinux_file_ioctl+0x4b/0xe0
Jan 17 21:14:56 edison kernel:  [] SyS_ioctl+0x60/0x90
Jan 17 21:14:56 edison kernel:  [] syscall_call+0x7/0xb
Jan 17 21:14:56 edison kernel: INFO: task SPI_-Flash_mem:457 blocked for more than 120 seconds.
Jan 17 21:14:56 edison kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Jan 17 21:14:56 edison kernel: SPI-_Flash_mem D f54e1b40  6348   457      1 0x00000004
Jan 17 21:14:56 edison kernel:  f518fe40 00000086 00000000 f54e1b40 f5cb525c c1d04000 c18dc63d f73fdc00
Jan 17 21:14:56 edison kernel:  c15c0f2b f6c83d30 f73fdc00 f51bfa60 f518fdfc c1270ddb 00000001 f518fe18
Jan 17 21:14:56 edison kernel:  c18e2c75 f639cdcc f54e1b40 00000002 f639cd80 f73fa894 f518fe24 c1270ddb
Jan 17 21:14:56 edison kernel: Call Trace:
Jan 17 21:14:56 edison kernel:  [] ? mutex_unlock+0xd/0x10
Jan 17 21:14:56 edison kernel:  [] ? spidev_open+0x6b/0x110
Jan 17 21:14:56 edison kernel:  [] ? get_parent_ip+0xb/0x40
Jan 17 21:14:56 edison kernel:  [] ? sub_preempt_count+0x95/0xf0
Jan 17 21:14:56 edison kernel:  [] ? get_parent_ip+0xb/0x40
Jan 17 21:14:56 edison kernel:  [] ? sub_preempt_count+0x95/0xf0
Jan 17 21:14:56 edison kernel:  [] ? add_preempt_count+0x7d/0xf0
Jan 17 21:14:56 edison kernel:  [] schedule_preempt_disabled+0x2d/0x70
Jan 17 21:14:56 edison kernel:  [] __mutex_lock_slowpath+0x11b/0x360
Jan 17 21:14:56 edison kernel:  [] ? do_last+0x153/0xd50
Jan 17 21:14:56 edison kernel:  [] mutex_lock+0x23/0x30
Jan 17 21:14:56 edison kernel:  [] spidev_ioctl+0x7e/0x6f0
Jan 17 21:14:56 edison kernel:  [] ? path_openat+0xa1/0x3f0
Jan 17 21:14:56 edison kernel:  [] ? pca953x_write_single.isra.3+0x56/0x90
Jan 17 21:14:56 edison kernel:  [] ? avc_has_perm_flags+0xd7/0x170
Jan 17 21:14:56 edison kernel:  [] ? do_filp_open+0x2b/0x90
Jan 17 21:14:56 edison kernel:  [] ? spidev_probe+0x190/0x190
Jan 17 21:14:56 edison kernel:  [] do_vfs_ioctl+0x306/0x550
Jan 17 21:14:56 edison kernel:  [] ? inode_has_perm.isra.32.constprop.65+0x3a/0x50
Jan 17 21:14:56 edison kernel:  [] ? file_has_perm+0x87/0x90
Jan 17 21:14:56 edison kernel:  [] ? lookup_fast+0x1d1/0x2a0
Jan 17 21:14:56 edison kernel:  [] ? putname+0x24/0x40
Jan 17 21:14:56 edison kernel:  [] ? selinux_file_ioctl+0x4b/0xe0
Jan 17 21:14:56 edison kernel:  [] SyS_ioctl+0x60/0x90
Jan 17 21:14:56 edison kernel:  [] syscall_call+0x7/0xb

Thanks. Yes, this looks very much like those SPI bugs fixed in the kernel, so unfortunately we can do nothing about them in the library. As I mentioned, you'll need to wait for the official kernel release with those incorporated or build one youself.

@alext-mkrs Thanks for the answer. There is a tutorial of how to build my version, I'm begginer in linux.

There's so called BSP building guide, which has all the build process ste by step. If you have further questions on the process - feel free to start a thread in Intel Edison community on communities.intel.com


An option to delete a workflow run

Is your feature request related to a problem? Please describe.
I think it would be great if we could delete a workflow run, the same way we can delete a variable/secret from the VS Code.
Describe the solution you'd like
A delete button to the right of the run.

Additional context
None

Agree! Like i've said in other issues, we're not doing any active feature development, but i would welcome a PR!


Slicer Tutorial Maker Module: No pdf created

When I click on the 'PDF' icon in the Main Menu of the Annotator tool, nothing happens.
MacOSX 14.6.1 Slicer 5.7-2024-11-20

@spujol Could you give us more information about when or how the error appeared? Please include the messages that appeared in the 3D slicer python console.

@MonseRiosH as Andreas pointed out in the last meeting, we can make use of the built-in qt feature, such as Q Web Engine Page to easily convert from html to pdf.

@MonseRiosH @vmms If we can already print the html to a PDF file and we're just having formatting issues, please make a new branch/pull request/commit on the developer branch so we can help resolve it. @enriquehdez98 can you help them with the github part if needed?


Add test mode setting

It would be very useful if there was a way for exceptions caught internally to be propagated.
When unit-testing our own code we'd like to have any sign of an error fail the test in such a way that we can easily see why.  Or, in certain scenarios, we might want to deliberately throw an exception for a consumer running their own tests.
This would probably involve adding a flag to Sabberworm\CSS\Settings and checking it whenever an exception is caught internally, to rethrow accordingly (like we do here).
For background, see https://github.com/MyIntervals/emogrifier/issues/1129.

IMHO, using \Sabberworm\CSS\Settings::create()->beStrict() shouldn’t swallow any exceptions. Is this what you need?

Is this what you need?

Yes, sorry, I misunderstood how that setting was supposed to work, and believed it would work in somewhat the opposite way to how it does.
I thought lenient would mean allow rules with invalid selectors and provide them in the parsed data.  Whereas in fact it means discard the rules nonetheless but carry trying to parse the remainder.
Happy to close unless you think the documentation could be clarified (I think "choke" is a bit unclear and could be more clearly written as "throw an exception" - I actually thought it implied a Heimlich manoeuvre would be carried out so the parser could carry on, but that it would cough up rather than digest the specific rule that caused the error).

I actually thought it implied a Heimlich manoeuvre would be carried out so the parser could carry on, but that it would cough up rather than digest the specific rule that caused the error).

🤣

Thanks for the hint, I updated the readme as suggested.


[Design kit]: Content block bug

Detailed description
Describe in detail the issue you're having. Please include whether or not this is part of the Figma Libraries or the larger Figma kit file.

What version of the Design kit are you using?

Carbon for IBM.com v2 Beta

Is this issue related to a specific component? If so please give the layer/symbol name.

Content block

What did you expect to happen? What happened instead? What would you like to see changed?

The Content block content is aligned to the 4th column, but should be aligned to the 5th column
The heading, subheading and body copy seem to be limited to 480px wide
The Aside left toggle doesn't seem to do anything? I'm not sure what we expect to happen but I don't see anything going on in the component symbol

Is this issue being filed based on a discrepancy between the website/code and the kit? If so what is the inconsistency?

Discrepancy between how the component aligns to the grid :)

What offering/product do you work on? Any pressing ship or release dates we should be aware of?

Carbon for IBM.com, utilizing the kit to design a page

FYI @RichKummer 🐛


Fix AckHandlerCallback error type

Currently AckHandlerCallback error parameter is defined with a type Error which isn't the correct type when strictNullChecks setting is enabled (available since TS 2.0, and generally suggested to be enabled as a good practice). All null and undefined values are expected to be explicitly stated when they can be passed as a value.

Coverage remained the same at 94.148% when pulling 45a71d38a51b46d632f1323888c428caf69b5b82 on rafsawicki:fix-callback-error-types into 478940558cc2f280bbab4d9ed18642437af6cfb1 on nats-io:master.


Using transparentpath

Hi Guys,
First of all, Thanks for your work! I wish I could use your package with transparentpath.
In short, transparentpath can contain gscfs paths and local paths.
For more information see this example
I have referred from pandas issue
Thanks,
Michael

I haven't had a look at transparentpath, but others have requested a Pathlib interface before, and there have been some attempts too:

https://github.com/Quansight/universal_pathlib
https://gist.github.com/sretlawd/bf977ee1d049bbfaed0e9d823fad89f5

Obviously, fsspec would like a general solution, not just gcsfs/local. We would be happy to host it in this repo or a sibling one, but equally happy that there be a separate library. I expect that nothing much is required on the fsspec side.
From pandas' point of view, they want to deal with URLs that fssec can handle, or file-like objects. I suppose transparentpath can provide the latter already.


Support for "do not verify" avrdude option?

Hi,
Thanks for the very useful tool that you're developing!
I have a little feature wish that should take only 3 lines of code to implement (I wish I knew more Python to do a pull request directly).
The idea is simply to add an option to "ino upload" (and also in the ino.ini file) so as to support for the "-V" option of "avrdude". This option makes uploading code twice faster.
Thanks!

Note that, to force the -V option by default and obtain faster upload, it suffices to modify the bottom of the file "ino/commands/upload.py" and add "-V" there.
    # call avrdude to upload .hex
    subprocess.call([
        self.e['avrdude'],
        '-C', self.e['avrdude.conf'],
        '-p', board['build']['mcu'],
        '-P', port,
        '-c', protocol,
        '-b', board['upload']['speed'],
        '-D',
        '-V', # <===== added
        '-U', 'flash:w:%s:i' % self.e['hex_path'],


Add a checkboxes to the plugin configuration for sensor selection

air-Q may add overwhelmingly many sensors to Homekit. Users may want to restrict this by deselecting unwanted sensors.

Checkboxes have been added to the plugin configuration menu.


When using a "computed key" in classList, a following class declaration overwrites the classes set by classList

Describe the bug
classList doesn't work when used together with class, even when classList is not reactive, if the object looks like this { ["test"]: true } instead of { test: true }
Your Example Website or App
https://playground.solidjs.com/anonymous/a669dae1-46b2-4366-9df0-91d6527908c6
Steps to Reproduce the Bug or Issue

Go to https://playground.solidjs.com/anonymous/a669dae1-46b2-4366-9df0-91d6527908c6
See class-2 being logged to the console

Expected behavior

class-1 being logged to the console

Screenshots or Videos
No response
Platform

OS: macOS 14
Browser: Latest FirefoxDeveloperEdition

Additional context
No response

Technically as far is it concerned class is reactive here because you are using props.class syntax. It can't know that it isn't. Reactive class means there is always potential for it to overwrite. We can't do inline optimizations on classList with computed keys currently. I suppose the compiler could be more optimized. But this is generally the problem with reactive class + classList and why there is intention to do something about classList in the future.

Hmm, I thought the rules was that one can use classList and class together as long as only one is reactive.

We can't do inline optimizations on classList with computed keys currently.

But I didn't know about this :( Why is it not possible? I need computed keys to get dashes in the class lol.
If I was solid I'd tackle the problem by splitting class by   (space) and then feeding the output into classList, what's wrong with that approach? Is it really so important to accurately reflect double spaces and other imperfections in the class attribute value? (Like class1  class2  instead of class1 class2)

To be fair computed property compilation is probably possible if the computed property itself isn't dynamic (a signal or member expression). Also a literal could be eliminated too. These are all optimization edge cases. I just bailed out the optimization sooner because of sake of time and some complexity I hit.
That being said this behavior due to the way class + classList work in general is sort of by design. Poor design, perhaps but it is the way it works right now. I can't compile this problem away in the general sense and it is something that is known issue. Nothing to fix right now other than hope to change the design in the future.

Nothing to fix right now other than hope to change the design in the future.

That's totally fair. Thanks for the information! But I still wonder about your reasoning regarding why not split class into classList in the JSX transformation output for now to fix all the bugs, at the expense of some performance?


Bump Upjet to commit 2e361ad3b6e6

Description of your changes

Bump Upjet to latest version: https://github.com/crossplane/upjet/commit/2e361ad3b6e6b225bbc560ecf7c92e88a7c3ae3a
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable to ensure this PR is ready for review.
[ ] ~Added backport release-x.y labels to auto-backport this PR if necessary.~

How has this code been tested

/test-examples="examples/applications/v1beta2/application.yaml"

/test-examples="examples/conditionalaccess/v1beta2/location.yaml"

/test-examples="examples/groups/v1beta1/group.yaml"

/test-examples="examples/groups/v1beta2/group.yaml"


allow svelte 3 - 4

close https://github.com/Valexr/Slidy/issues/111

you may check allowed version list at https://semver.npmjs.com/


sigma-cli: 0.7.9 -> 0.7.10

Diff: https://github.com/SigmaHQ/sigma-cli/compare/refs/tags/v0.7.9...v0.7.10
Changelog: https://github.com/SigmaHQ/sigma-cli/releases/tag/v0.7.10
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 267627 run on x86_64-linux 1

2 packages built:

sigma-cli
sigma-cli.dist


Show template name + line number for JS errors from called functions

index.html:
1  Hello world
2  <button ng-click="doSomething()">Do it</button>

an error like:
"Error: undefined is not a function @ index.html:2
    at <anonymous>:2:5
    at Object.InjectedScript._evaluateOn (<anonymous>:730:39)
    at Object.InjectedScript._evaluateAndWrap (<anonymous>:669:52)
    at Object.InjectedScript.evaluate (<anonymous>:581:21)"

This is something that Angular can do, but the cost of doing it in AngularJs is too high compared to the value at this point. Also note that the expression in the OP wouldn't ever throw as the parser doesn't consider undefined an error. If you had a syntax error e.g doSomething(/)`, then parse throws and includes the expression in the error.


Library generates invalid QR code

We built a library (beacon-sdk) that is using this library to generate QR codes. There are many apps using our library and it works without any issues.
However, I recently tried adding our library to a specific react project and for some reason, the QR code that is generated on that site is invalid. It seems to have a weird "pattern" as shown in the example below.
Because it works without any problems in 99% of the cases, I'm pretty sure this is somehow related to the project I'm using it in (which is using a reactjs library that itself also relies on qrcode-generator. But nonetheless, the error seems to happen within this library.
I have no idea how I can go about fixing this issue because everything looks good code wise. Do you have any idea what could be going on? Thanks so much for any help.
This is the code that I'm using to generate the invalid QR code:
Code
const typeNumber = 0;
const errorCorrectionLevel = 'L';
const qr = qrcode(typeNumber, errorCorrectionLevel);

qr.addData('this is a test. this is a test. this is a test. this is a test.');
qr.make();

console.log(qr.createASCII());

return qr.createSvgTag();

Examples

Ascii (in the browser log):
█████████████████████████████████████
██ ▄▄▄▄▄ █ ▀▀▄ ▄▄▄▄▄▄▄▄▄▄▄▄█ ▄▄▄▄▄ ██
██ █   █ ███ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ █   █ ██
██ █▄▄▄█ █ ▄▄ █▄▄▄▄▄▄▄▄▄▄▄▄█ █▄▄▄█ ██
██▄▄▄▄▄▄▄█ █ ▀ █▄█▄█▄█▄█▄█▄█▄▄▄▄▄▄▄██
██▄▄▄█▀ ▄▀   ██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██▄▄██
██▄█▀▀▄ ▄▄ ▀█▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██ ▄███▄▄██ █▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
███▄▀ ██▄ ▄▄▄▀ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██  █▀▄▄▄ ▀▀ ██ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██▀▀ █▀█▄▀▄██▄█▀█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██▄██ █▄▄█   ▄ ▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██▄▄█ █▄▄▄█▀▄▀ ▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██▄▄█▄▄█▄█ █▄██  ▄▄▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄▄██
██ ▄▄▄▄▄ █▀▄█▄█▀█▄▄▄▄▄▄▄▄▄ █▄█ ▄▄  ██
██ █   █ ██▄█▄ ▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀▀██
██ █▄▄▄█ █ ▀ ▀ ▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██
██▄▄▄▄▄▄▄█▄█▄██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█▄██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

This happens when I change the error correction code to "H":

This happens when I change the data to:
qr.addData('this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test. this is a test.');

L:

H:

qr.addData('test');

L:

Hi,
Thanks for your report.
But I could not reproduce it..

Yes, under normal circumstances it works without any issues. It is only when used in this specific project that the resulting QR codes are wrong.
I was hoping you could give me some pointers about how I could go about debugging this. Because the code from this library that I call is very minimal, so somehow the internal state / logic of this module is affected by something in that project that breaks it. The pattern that is generated, could you explain how this could happen?

I found the issue. One of the libraries that was used in that project overwrote the stringToBytes method of this library, which broke the functionality when passing in a regular string.
Sorry for wasting your time and thanks for creating this great library.


Adding 3 loading functions.

@Ronan- please review.
@xavierhd now you should be able to validate a merged config parser, using validator_from_config_parser.

@louib no tests?

:+1:


Incorrect main menu colours for inactive elements

Describe the bug
When attempting to convert the Dracula Pro Van Helsing theme to VS2022 using the converter I noticed that all disabled main and context menu entries are themed incorrectly.
Screenshots
Here is what these entries are supposed to look like based on Visual Studio Code:

Here is what they look like in Visual Studio 2022:

To Reproduce
Simply attempt to convert the theme.
Expected behavior
Context and main menu items should have the correct disabled theming.
Environment (please complete the following information):
Latest ThemeConverter compiled from the master branch.
Visual Studio 2022
Theme is a commercial theme, but it can be reproduced with the normal freely available Dracula theme as well. In fact, the "official" conversion of Dracula that was advertised by a recent Microsoft blog post has exactly the same issue.
Impact
Makes using the converted theme completely impossible as there is no way to differentiate between enabled and disabled context and main menu items unless there is a glyph or icon involved. I actually didn't notice it at first and only noticed it after I was wondering why a certain menu option wasn't working for close to 30 minutes.
Additional context
The same appears to be true for the official Dracula conversions available in the store as well.

I checked out some more themes and this appears to be a universal issue that isn't limited to one theme. In fact, in the official video announcement, you can watch it live in action. Just pay attention to the context menu and the Copy, Cut, and Paste entries in particular.
I am genuinely surprised that seemingly nobody noticed this before.

After doing some digging it turns out that Visual Studio Code uses opacity (0.4) to "grey out" inactive entries within the context and main menus. Therefore, the fix would probably involve calculating a compound colour based on the background as well as the foreground colour for Environment/CommandBarTextInactive.

Hi @fwosar, thank you so much for your feedback! We will look into this issue and let you know once we have a fix for it!


where to put he .env file?

hi! it all seems pretty straightforward but the docs don't say where to put the .env file..?
thanks!

Hey! Oops, I'm updating docs 😬  put .env in the root of your react-native app, together with package.json/etc.


ModuleNotFound Error | I have an Azure function DevOps pipeline which runs file for Azure Function Runtime 2 but fails on Azure Function Runtime3

I have an Azure function DevOps pipeline.
This pipeline I create for Azure function Runtime V2 and it works fine.
I have around 5-6 azure function within same app and all are compatible with Python 3.8
V2 is running on Python3.6 and V3 on Python 3.8
I recently tried to move from Azure function V2 to V3 and I expected the pipeline to build and succeed. But whenever I'm trying to Run the azure function from new app, I receive "ModuleNotFound Error".
The only difference between my Function V2 and V3 runtime is, V2 is hosted on docker and V3 is not.

I do have proper requirements.txt and it is working fine with V2

Update:
I tried to change V3 to use Python 3.6 and it works.

Thanks for reporting this @Deepanshu2017,
Our team has composed a troubleshooting guide in our wiki page for Module Not Found error
https://github.com/Azure/azure-functions-python-worker/wiki/Module-Not-Found-Issues
I think in your case, maybe the azure-keyvault version you're using is too old to support Python 3.8
Try following the steps Update Package To The Latest Version and see if it resolves your issue.

Also, please check in your azure-pipelines.yml UsePythonVersion task. See if you have updated the version value to 3.8


[WIP] feature/mx-1552_regresssion_test

PR Context

Added

Changes

Deprecated

Removed

Fixed

Security

closing this for now, will be continued by MX-1589


Move build related dependencies to dev-dependencies

This moves the following dependencies from dependencies to devDependencies:

gulp-rollup
rollup-plugin-cleanup
rollup-plugin-replace

My understanding is that these are build related packages and are not required for the end-user. I apologise if this is not the case and they were intentionally kept as [prod]dependencies.

@sudo-suhas as usual, thank you for your observations and help!

My pleasure @yowainwright 😃


Decode sources as UTF-8 instead of relying on the system locale

Opening files without specifying an encoding will cause the system
locale to determine the encoding. It is undesired behaviour IMHO that
reading/decoding Kconfig sources is platform-dependent, instead
kconfiglib should behave in the same way on all platforms.
Example:
$ export LANG=C
$ echo "# Author: Sebastian Bøe" >> Kconfig
$ test_kconfig_lib.py
Alternatively, one could decode as ascii, especially if it is
explicitly documented that Kconfig sources (including comments) must
be ascii.
The most important thing is that kconfiglib behaves the same on all
platforms.
Signed-off-by: Sebastian Bøe<EMAIL_ADDRESS>

Seems reasonable. Would need to use io.open() to stay compatible with both Python 2 and 3 though, as Python 2's open() doesn't take an encoding parameter.
See the comment near _UNIVERSAL_NEWLINES_MODE as well. I guess it might not be a huge deal though.
There's codecs.open() too, but that one doesn't support universal newlines mode.

Maybe _UNIVERSAL_NEWLINES_MODE becomes pointless with io.open() too. I suspect it turns into a no-op, as it already defaults to universal newlines mode.
I'm off to bed now (slightly wonky sleep schedule :P), but I'll do some measuring tomorrow.

You are correct, io.open defaults to universal newlines mode io (Py2 and Py3). So it is not necessary to explicitly enable it.

@mgomersbach
Forcing UTF-8 decoding would mean that files parse the same for everyone, regardless of their locale settings, which might be nice. The only downside I can think of is that people might be editing files using an encoding from some other locale and expect Kconfiglib to use the same one.
I live in relatively painless latin-1 land, and I'm not an i18n expert, so please tell me if you can think of cases where this behavior would get painful.

+1 for this change. We recently had this issue that kconfiglib failed on parsing Kconfig files in Zephyr project (https://github.com/zephyrproject-rtos/zephyr). There're number of failures in public CI systems due to this, e.g.:

https://ci.linaro.org/job/lite-aeolus-jerryscript/PLATFORM=frdm_k64f,ZEPHYR_GCC_VARIANT=zephyr,label=docker-xenial-amd64-13/257/console
https://ci.linaro.org/job/lite-aeolus-micropython/PLATFORM=disco_l475_iot1,ZEPHYR_GCC_VARIANT=zephyr,label=docker-xenial-amd64-13/314/display/redirect

That issue was worked around on Zephyr side: https://github.com/zephyrproject-rtos/zephyr/pull/6599 , but as can be seen, the issue happened in author's name (copyright notice). It's unreasonable to expect everyone to change their name (or request them) to ASCII only. UTF-8 is both de jure and de facto universal encoding, so it only makes sense to use it by default.
Thanks!

PEP 538, implemented in the upcoming Python 3.7, is related. It specifically mentions Docker.
So, I think the problem could be fixed by specifying a UTF-8 locale when starting the container. At the same time, it would be nice if things just worked for people.
I guess a more "proper" fix might be to do something similar to what that PEP does, and use encoding="utf_8" if the C locale is detected. Not sure I trust myself with implementing that without more platforms to test it on though. I guess forcing UTF-8 everywhere might be okay for now.

Just noticed some more iffiness for Python 2.
Passing encoding="utf-8" will make readline() return a unicode string. That causes problems for checks like if isinstance(foo, str), as isinstance(u'foo', str) is False. Python 2 also has basestring, which can be used to check for either string type, but it's not available in Python 3.
It could be worked around, but I'm not sure that proper Unicode support is worthwhile for Python 2 if it makes the code more complex. The Python 2 version still supports non-ASCII characters -- they just don't get decoded properly in e.g. help texts.
Just passing encoding="utf-8" for Python 3 would be another option.
@SebastianBoe How painful would it be to pass an UTF-8 locale setting to the Docker container? That's the most proper solution in a way, but I'm not opposed to implementing stuff that makes people's lives easier if the alternative is to have to muck around with stuff like that.
Once Python 3.7 is out, it should make things work automagically.

"@SebastianBoe How painful would it be to pass an UTF-8 locale setting to the Docker container?"
I believe it is easy, this is 2018, if users have ascii as their system locale they should expect their non-ascii applications to break.
This change was intended to make things just-work, even for users have not configured their system properly. Or at the very least make kconfiglib behave consistently independent of the platform.
"Just passing encoding="utf-8" for Python 3 would be another option."
This would satisfy our requirements at least because we only use Python3.
@pfalcon: If I have understood this locale business correctly, neither Zephyr or Kconfiglib is explicitly supporting or not supporting UTF-8, instead they (reasonably?) use the system locale to decode text, so it is the public CI system (Docker image's system locale) that are failing to enable UTF-8. I may have misunderstood this though.

@pfalcon : See this line in the first CI url that was posted:
02:02:24 + LANG=C
https://ci.linaro.org/job/lite-aeolus-jerryscript/PLATFORM=frdm_k64f,ZEPHYR_GCC_VARIANT=zephyr,label=docker-xenial-amd64-13/257/console
I believe this is setting C as the system locale, perhaps changing it to en_US.UTF-8 will resolve the CI issue.

@SebastianBoe
Yup, Python just gets the default encoding from the environment. Looks like setting LANG will work provided none of the LC_* variables are set. LC_CTYPE is the one that determines the encoding.
PEP 538 uses the following with Docker:
LC_CTYPE=C.UTF-8

Not sure why the Docker people decided to default to ASCII. Seems to have caused a lot of pain.

@pfalcon @SebastianBoe
Report back once you've tried the CI locale stuff. That might make other components in the container use UTF-8 too, which is nice.
Maybe a warning related to Docker could be added somewhere. I think I prefer getting the encoding from the environment for now at least, as there's some pain involved for Python 2 (plus it's nice to respect user preferences, though people probably often want UTF-8 even if it's not configured).

@ulfalizer : Please assume that a user can't change "CI locale". Please assume that suddenly something started to break in somebody's builds because somebody else committed something. And the break is in the Kconfiglib project, and that's where fingers are pointed to.
I'd suggest to apply this patch, then watch if it leads to any issues (I'd estimate the probability is much lower than the issue fixed by the patch), then possibly add Kconfiglib option to let people specify non-standard encoding.

@pfalcon
Unfortunately, the patch breaks Python 2.
Since all you need is Python 3 support (I think), an immediate fix would be to apply this patch to the Zephyr Kconfiglib branch. I've provided an extended patch at the end that also handles string symbol values with UTF-8 characters. It doesn't bother with io.open(), as it turns out that more than that would be needed for Python 2 anyway.
Adding the following to the beginning of kconfig.py might fix it as well, and would then also work for Python 2. It'd remove the need to patch kconfiglib.py.
import locale
locale.setlocale(locale.LC_CTYPE, "C.UTF-8")

How difficult would it be in your particular case to change the locale for the Docker containers? That would probably be a good idea in general, as other tools besides Python running inside the container will use it. The root cause of the problem is the locale setting in Docker. This is a symptom of that.
I'm not opposed in general to workarounds that make people's lives easier, even when the problem is "someone else's fault", but in this case it comes with tradeoffs related to code complexity and non-standard behavior. Before adding a workaround, I think we ought to check how hard it would be to fix the root cause of the problem.
If it turns out to be a lot more painful than just setting an environment variable, then I'd be happy to add a workaround. In the meantime, these quickfixes will work.
diff --git a/kconfiglib.py b/kconfiglib.py
index 99bdf80..98293b2 100644
--- a/kconfiglib.py
+++ b/kconfiglib.py
@@ -877,7 +877,7 @@ class Kconfig(object):
           would usually want it enclosed in '/* */' to make it a C comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with open(filename, "w", encoding="utf-8") as f:
             f.write(header)

             # Avoid duplicates -- see write_config()
@@ -938,7 +938,7 @@ class Kconfig(object):
           would usually want each line to start with '#' to make it a comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with open(filename, "w", encoding="utf-8") as f:
             f.write(header)

             # Symbol._written is set to True when a symbol config string is
@@ -1008,7 +1008,7 @@ class Kconfig(object):
           would usually want each line to start with '#' to make it a comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with open(filename, "w", encoding="utf-8") as f:
             f.write(header)

             # Avoid duplicates -- see write_config()
@@ -1170,7 +1170,7 @@ class Kconfig(object):
         # A separate helper function is neater than complicating write_config()
         # by passing a flag to it, plus we only need to look at symbols here.

-        with open("auto.conf", "w") as f:
+        with open("auto.conf", "w", encoding="utf-8") as f:
             for sym in self.defined_syms:
                 sym._written = False

@@ -1196,7 +1196,7 @@ class Kconfig(object):
             # No old values
             return

-        with open("auto.conf", _UNIVERSAL_NEWLINES_MODE) as f:
+        with open("auto.conf", _UNIVERSAL_NEWLINES_MODE, encoding="utf-8") as f:
             for line in f:
                 set_match = self._set_re_match(line)
                 if not set_match:
@@ -1340,12 +1340,12 @@ class Kconfig(object):
         # was set when the configuration was loaded

         try:
-            return open(filename, _UNIVERSAL_NEWLINES_MODE)
+            return open(filename, _UNIVERSAL_NEWLINES_MODE, encoding="utf-8")
         except IOError as e:
             if not os.path.isabs(filename) and self.srctree is not None:
                 filename = os.path.join(self.srctree, filename)
                 try:
-                    return open(filename, _UNIVERSAL_NEWLINES_MODE)
+                    return open(filename, _UNIVERSAL_NEWLINES_MODE, encoding="utf-8")
                 except IOError as e2:
                     # This is needed for Python 3, because e2 is deleted after
                     # the try block:

Are the containers managed centrally by the way? That might affect how easy it would be to fix.

I hacked up a patch that doesn't break Python 2. Python 2 never had an issue with invalid characters for the current encoding, as str isn't decoded in Python 2.
This is pretty ugly stuff. Can probably see why I want to avoid it. See the earlier discussion for why encoding="utf8" turns ugly for Python 2, even if io.open() is used.
diff --git a/kconfiglib.py b/kconfiglib.py
index 99bdf80..8fb8b7a 100644
--- a/kconfiglib.py
+++ b/kconfiglib.py
@@ -877,7 +877,7 @@ class Kconfig(object):
           would usually want it enclosed in '/* */' to make it a C comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with _open_utf8(filename, "w") as f:
             f.write(header)

             # Avoid duplicates -- see write_config()
@@ -938,7 +938,7 @@ class Kconfig(object):
           would usually want each line to start with '#' to make it a comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with _open_utf8(filename, "w") as f:
             f.write(header)

             # Symbol._written is set to True when a symbol config string is
@@ -1008,7 +1008,7 @@ class Kconfig(object):
           would usually want each line to start with '#' to make it a comment,
           and include a final terminating newline.
         """
-        with open(filename, "w") as f:
+        with _open_utf8(filename, "w") as f:
             f.write(header)

             # Avoid duplicates -- see write_config()
@@ -1170,7 +1170,7 @@ class Kconfig(object):
         # A separate helper function is neater than complicating write_config()
         # by passing a flag to it, plus we only need to look at symbols here.

-        with open("auto.conf", "w") as f:
+        with _open_utf8("auto.conf", "w") as f:
             for sym in self.defined_syms:
                 sym._written = False

@@ -1196,7 +1196,7 @@ class Kconfig(object):
             # No old values
             return

-        with open("auto.conf", _UNIVERSAL_NEWLINES_MODE) as f:
+        with _open_utf8("auto.conf", _UNIVERSAL_NEWLINES_MODE) as f:
             for line in f:
                 set_match = self._set_re_match(line)
                 if not set_match:
@@ -1340,12 +1340,12 @@ class Kconfig(object):
         # was set when the configuration was loaded

         try:
-            return open(filename, _UNIVERSAL_NEWLINES_MODE)
+            return _open_utf8(filename, _UNIVERSAL_NEWLINES_MODE)
         except IOError as e:
             if not os.path.isabs(filename) and self.srctree is not None:
                 filename = os.path.join(self.srctree, filename)
                 try:
-                    return open(filename, _UNIVERSAL_NEWLINES_MODE)
+                    return _open_utf8(filename, _UNIVERSAL_NEWLINES_MODE)
                 except IOError as e2:
                     # This is needed for Python 3, because e2 is deleted after
                     # the try block:
@@ -4281,6 +4281,11 @@ def _sym_to_num(sym):
     return sym.tri_value if sym.orig_type in (BOOL, TRISTATE) else \
            int(sym.str_value, _TYPE_TO_BASE[sym.orig_type])

+def _open_utf8_py3(filename, mode):
+    return open(filename, mode, encoding="utf-8")
+
+_open_utf8 = open if sys.version_info[0] < 3 else _open_utf8_py3
+
 def _stderr_msg(msg, filename, linenr):
     if filename is not None:
         msg = "{}:{}: {}".format(filename, linenr, msg)

@pfalcon
I'm a Docker noob, but this seems to the common fix from some googling. Docker and UTF-8 seems to be pretty shitstormy.
ENV LANG C.UTF-8

Almost get the feeling they won't make it the default out of spite at this point...

@pfalcon
Unfortunately, the patch breaks Python 2.

Ah, indeed, I missed that "basestring" issue. Thanks for suggestion how to fix issue I described in https://github.com/ulfalizer/Kconfiglib/pull/41#issuecomment-372801002 on our side. As I mentioned, it was worked around on Zephyr's side so far. As for "LANG=C", it wasn't added by me, so I'm not keen to change it. If nothing else, it does show the problem with all this stuff - that behavior of the system (Zephyr build system in our case) is not stable and depends on external factors. Fairly speaking, that's what CI is for - to detect problems ahead of them hitting human users (which are notoriously bad at reporting issues, it's often "your stuff doesn't build"). Of course, I'll have to make locale changes if the problem reoccurs.

@pfalcon
Maybe you could email whoever is in charge of the containers and ask them if they could change it. You could tell them to google "docker utf-8" as well, as that turns up other problems. Other components are affected too, not just Python.
The problem seems to mostly be constrained to Docker, as all the mainstream distributions already default to UTF-8. This is the first time I've run across it with Kconfiglib.
I can't really speak for the motivations of the Docker people, as I haven't even used it, but to me it looks like a bad default. It breaks Unicode support for tools that set their encoding from the environment (which is probably most of them).

Zephyr only has one script that imports kconfiglib.py, so doing this seems like the simplest solution to me:

Adding the following to the beginning of kconfig.py might fix it as well, and would then also work for Python 2. It'd remove the need to patch kconfiglib.py.
import locale
locale.setlocale(locale.LC_CTYPE, "C.UTF-8")

I'll close this PR, it is replaced by the Zephyr PR: https://github.com/zephyrproject-rtos/zephyr/pull/6716
Thank you for discovering this technique, I did not think of this approach at all.
This means that;

Zephyr doesn't depend on how the system locale is configured
Zephyr doesn't have to maintain a fork
Kconfiglib.py continues to support Py2 well and rely on the system locale


chore: pull out pedersen generator builtin from sync PR

This PR pulls out the changes related to implementing the pedersen generator builtin from the sync PR to reduce the diff.

Benchmark results
Metrics with a significant change:

app_circuit_proving_time_in_ms (AuthRegistry:set_authorized (avm)): 1,652 (+22%)
app_circuit_proving_time_in_ms (FPC:prepare_fee (avm)): 4,843 (-17%)
app_circuit_proving_time_in_ms (FPC:pay_refund (avm)): 8,976 (-20%)
protocol_circuit_witness_generation_time_in_ms (root-rollup): 77.6 (-31%)
protocol_circuit_proving_time_in_ms (private-kernel-tail): 45,345 (-19%)
protocol_circuit_proving_time_in_ms (private-kernel-tail-to-public): 84,218 (-19%)
protocol_circuit_proving_time_in_ms (root-parity): 34,107 (-16%)
protocol_circuit_proving_time_in_ms (public-kernel-teardown): 39,997 (-17%)
protocol_circuit_proving_time_in_ms (root-rollup): 19,388 (-22%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_30_ms
11,395 (-1%)
3,068 (-1%)
1,569 (+13%)
1,629 (-2%)
1,459

proof_construction_time_sha256_100_ms
43,859 (-1%)
11,996 (+1%)
5,426
5,392
5,359

proof_construction_time_poseidon_hash_ms
78.0 (-1%)
34.0
34.0
59.0 (+4%)
89.0 (+2%)

proof_construction_time_poseidon_hash_30_ms
1,515 (-1%)
416 (-1%)
199
234 (+7%)
266

proof_construction_time_poseidon_hash_100_ms
5,738 (-1%)
1,558 (-1%)
722 (+1%)
769 (-2%)
797

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
1,412
1,412
1,412

l1_rollup_calldata_gas
9,464
9,458
9,464

l1_rollup_execution_gas
610,285
610,279
610,285

l2_block_processing_time_in_ms
756 (+1%)
1,407
2,683

l2_block_building_time_in_ms
25,453 (+1%)
50,948 (+1%)
99,951 (+1%)

l2_block_rollup_simulation_time_in_ms
25,452 (+1%)
50,948 (+1%)
99,951 (+1%)

l2_block_public_tx_process_time_in_ms
21,879 (+1%)
47,180 (+1%)
96,235 (+1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
6,986
9,837

node_database_size_in_bytes
12,165,200
16,093,264

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

GasToken:_increase_public_balance
73.7 (+8%)
13,873

GasToken:set_portal
17.1 (+1%)
3,495

Token:constructor
93.9 (+1%)
24,207

FPC:constructor
64.0 (-2%)
13,893

GasToken:mint_public
54.0 (+3%)
10,241

Token:mint_public
80.4 (+28%)
19,216

Token:assert_minter_and_mint
214 (+2%)
13,034

AuthRegistry:set_authorized
32.5 (+1%)
7,869

FPC:prepare_fee
174 (-13%)
15,187

Token:transfer_public
36.9 (+6%)
31,425

FPC:pay_refund
124 (-5%)
20,080

Benchmarking:increment_balance
2,681
15,465

Token:_increase_public_balance
55.9
15,089

FPC:pay_refund_with_shielded_rebate
146 (-1%)
21,167

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.148 (-5%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.4 (+1%)
16.8 (+1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.604 (+1%)
0.516 (+1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
48.7
75.8
131
244
470

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.498
0.466
0.449
0.443
0.439

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
60.4 (+2%)
111 (-1%)
182
352
692

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.511 (+2%)
0.499 (-1%)
0.481
0.477
0.475

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
73.0
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
133
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.520
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
85,672
670,983

Transaction size based on fee payment method
| Metric |  |
| - |  |


If I clicked on plot, the following error message would pop up.

Hi, this is an issue related to metaOmic, not MetaPath. It is because the FRD cutoff value is too stringent. We are looking for some indicator to avoid this.


New Algorithm for calculating shades

#361 Solution
Before:

After

@ChubsB — Incredible. Well done.

FYI: looks like there were some unnecessary package.json changes, so I removed those. Were you running into issues with uuid? Seemed irrelevant to this PR.
Yeah I ran the project with npm and it would run but give me an incomplete install, weird issues. Installed yarn and continued with that, Didn't clean up after myself it seems.


Update html/js libraries via npm

Task/Issue URL: https://app.asana.com/0/414730916066338/1202412970169527/f
Description
Proposal to stop using submodules for html/js libraries.
As a first test, we will migrate autofill to the new approach.
Steps to test this PR
Ensure autofill works

[ ] checkout this branch
[ ] ensure features using autofill js continue to work (e.g: email tooltip)

Manual npm update

[ ] checkout this branch
[ ] Go to package.json and change the version number to a previous release (e.g: 4.5.0)
[ ] run npm update
[ ] ensure files inside node_modules have been updated

Validate your IDE don't show the submodule anymore

[ ] checkout this branch
[ ] open your IDE ensure autofill submodule has been removed
[ ] Ensure IDE doesn't complain about it

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

@cmonfortep I just switched to autofill v4.6.0 and created a merge conflict for you. You'll need to resolve it on your branch even though that's going to be removed


Comma instead of dot?

In the iOS application, when try to send an ether, in the Amount field it appears a keypad with the numbers from 0 to 9, the delete and the comma to separate the decimal numbers.
The comma doesn't work, in the sense that when pressed nothing happen and you are able only to send integer number of ethers.
In reality you can send decimals if you copy-paste from another place, or if you insert the integer, then exit from the Amount field. It will set of you a .0 that you can further edit, but this is not handy.
I suspect that the comma is not accepted by the field because it is really sending a comma while the form expects a dot.

What locale are you using? Could you send a screen shot of your screen like the following to<EMAIL_ADDRESS>Do you have a comma instead of a decimal there? I know locales like French Canadian use a comma instead of a decimal. I will update the App and test with French locales.

Fixed in https://github.com/ethers-io/EthersWallet-ios/commit/f21e5b7c22121362de5ba2296cc92151ed9ab06e.
I will post a message here (and close the issue) once a version including this fix is posted to the App Store.

This is now fixed in v0.2 which has been published to the App Store.


Refactor file extension comparison logic to be case-insensitive

Make File Upload Extension Case Insensitive and Handle Mixed Case
Description
This pull request addresses the issue where file uploads were case-sensitive, causing inconsistencies and errors when users uploaded files with mixed-case extensions. The changes ensure that file extensions are treated in a case-insensitive manner, improving the user experience and reducing potential upload errors.
Changes

File Upload Handling: Updated the file upload logic to normalize file extensions to lowercase before processing.
Validation Logic: Modified the validation logic to compare file extensions in a case-insensitive manner.
Unit Tests: Added unit tests to cover various cases of file extensions, including mixed-case scenarios.

lgtm! 👍


chore: ensure tracing propagation at http layer

Description

References

Review Checklist

[ ] I have clicked on "allow edits by maintainers".
[ ] I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
[ ] The correct base branch is being used, if not main
[ ] I have added tests to validate that the change in functionality is working as expected

Codecov Report
Base: 81.99% // Head: 81.95% // Decreases project coverage by -0.05% :warning:

Coverage data is based on head (b935a83) compared to base (dcee1a7).
Patch coverage: 100.00% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #538      +/-   ##
==========================================
- Coverage   81.99%   81.95%   -0.05%
==========================================
  Files          89       89
  Lines       14436    14437       +1
==========================================
- Hits        11837    11832       -5
- Misses       2188     2192       +4
- Partials      411      413       +2

Impacted Files
Coverage Δ

cmd/run/run.go
62.29% <100.00%> (+0.07%)
:arrow_up:

internal/middleware/logging.go
67.77% <0.00%> (-6.67%)
:arrow_down:

internal/graph/check.go
89.78% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Update queries to use parallel group by

Short PR to swap SampleBy queries to GroupBy queries.
Benchmark speed up is over 2x for some of the example queries.

query
speedup

single-group-by-5-1-12
1.07x

cpu-max-all-1
1.12x

cpu-max-all-8
1.29x

double-groupby-1
2.28x

double-groupby-5
2.02x

double-groupbyall
1.94x

high-cpu-all
1.10x

lastpoint
1.05x

Benchmark speed up is over 2x for some of the example queries.

Would be great to include description of the test stand + scenario (number of hosts/workers)


Match cell with input site?

Since cells are in sorted order we need a way to match up with the original input site. Is delaunay.ids sufficient?

This seems to already be happening, hooray.


flutter doctor timing out on flutter/flutter CI build

For the engine roll PR https://github.com/flutter/flutter/pull/111655
For the Windows windows_home_scroll_perf__timeline_summary pre-submit check https://ci.chromium.org/ui/p/flutter/builders/try/Windows windows_home_scroll_perf__timeline_summary/10543/overview
The flutter doctor step was timed out 3 times after 5 minutes

Because the doctor schedules many asynchronous validators at once and then awaits them each one by one, it is not obvious from the logs what was hanging. In addition, the doctor validators themselves have a 10 minute timeout, after which it will log which validator timed out. We should either extend the LUCI/recipe level 5 minute timeout, or reduce the doctor level one.

2 out of the last 7 engine roll PRs were closed because of this issue

Some failed builds in post-submit CI: https://github.com/flutter/flutter/issues/111566

Are you still working on this? @christopherfujino

Closing this as it seems like hte issue is resolved


TRY401 false-positive detection

TRY401 false-positively triggered if error object passed to function call inside of logger.exception arguments
try:
    pass
except SlackApiError as api_error:
    logger.exception(
        "Got %s error while posting comment to thread %s in channel %s",
        get_error_message(api_error),  # <--- TRY401
        thread_ts,
        channel_name,
    )
    raise

get_error_message returns some string from error

Playground link - https://play.ruff.rs/cad4767c-2a7a-4a77-be41-332d36e42817
ruff 0.1.0.

Thank you for response!
I moved it into variable and error is gone
So if you think current behaviour is fine, let's close it or wait for more feedback from other users :)

Encountered exactly the same. I would guess logger.exception(get_exception_message(e)) is quite a common pattern.


⚠ Secret Website 3 has degraded performance

In dc6b046, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 4463 ms

Resolved: Secret Website 3 performance has improved in 3a13363.


Auto reconnection failed with  "/compression-level:2" arguments.

While auto reconnection works well with  "/compression-level:0" or "/compression-level:1" arguments, it is failed with "/compression-level:2" arguments.
@awakecoding

Closing due to lack of activity.
Reopen/create a new issue if still relevant.


Add Java tutorial

What do these changes do?

Related issue number
Add java tutorials for GRAPE-jdk.
Fix #2292

You may want to check the preview on https://alibaba-graphscope-build-pr-2320.surge.sh/


Issue58 modernize fact.js

This pull request includes a

[ ] Bug fix
[ ] New feature
[ ] New number fact
[ ] Translation
[x] Refactor

The following changes were made
-Refactored fact.js to ES2015
-changed var's to let and const
-changed strings to template literal strings
-destructured objects to reduce duplicates
existing ticket:
https://github.com/rithmschool/numbers_api/issues/58

Nice refactor.


Remove/rename "Default human background"?

It's deprecated?

Renamed to "Miscellaneous uninfected samples"


Adds a Java formatter to the project.

Java formatter usage.

On windows, right click and open git bash in your CodeU2019-Team28 directory (this should be the top level directory of our project). On Mac / Linux, cd into CodeU2019-Team28.

Type java -jar formatter.jar --replace $(git ls-files|grep \.java$)
This will go through all the java files and fix the formatting of them.

So do we do this only when we are ready to push files or we do it right now so it becomes like a default?


Fixes for PR checklist workflow

Description
Explicitly declare permissions of PR checklist workflow and skip this check for PRs from renovate.

Checklist to comply with before moving PR from draft:
PR completeness and readability

[x] I have reviewed my changes thoroughly before submitting this pull request.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have updated the documentation to reflect the changes or created a separate PR with update and provided its number in the description, if necessary.
[x] Git commit message contains an appropriate signed-off-by string (see CONTRIBUTING.md for details).
[x] I have added a respective label(s) to PR if I have a permission for that.
[x] I have resolved any merge conflicts that might occur with the base branch.

Testing

[x] I have run it locally and tested the changes extensively.
[x] All CI jobs are green or I have provided justification why they aren't.
[x] I have extended testing suite if new functionality was introduced in this PR.

Performance

[x] I have measured performance for affected algorithms using scikit-learn_bench and provided at least summary table with measured data, if performance change is expected.
[x] I have provided justification why performance has changed or why changes are not expected.
[x] I have provided justification why quality metrics have changed or why changes are not expected.
[x] I have extended benchmarking suite and provided corresponding scikit-learn_bench PR if new measurable functionality was introduced in this PR.

@icfaust @samir-nasibli, approvals are required for https://github.com/oneapi-src/oneDAL/pull/2935 too.


Added Tiny Python Projects

Hi,
I am Branko and I work for Manning Publications. I thought this title of ours might be a good contribution.
Thanks for considering it!
Cheers

Thanks!


Make sure not to fail in for loop sending to takers

Did you try if this was the source of our problems?

Was able to reproduce the problem locally on master - steps:

start maker
start taker
check that orders arrive on taker
keep maker running, restart taker
check that no orders arrive on taker after the initial one.

On this branch the problem is solved, whenever I restart the taker I do see the trace removing the old connection and receive orders:
yep, looks like that was it, I do also see the log I added:

2021-11-15 13:16:46 TRACE removing outdated connection to taker because unable to send order: Some(Order { id: OrderId(Hyphenated(5a890edf-2719-4250-82de-22d7e3ed8b37)), trading_pair: BtcUsd, position: Short, price: Price(66527.69), min_quantity: Usd(10), max_quantity: Usd(100), leverage: Leverage(2), liquidation_price: Price(44351.793333333333333333333333), creation_timestamp: Timestamp(1636942606), settlement_time_interval_hours: Duration { seconds: 86400, nanoseconds: 0 }, origin: Ours, oracle_event_id: BitMexPriceEventId { timestamp: OffsetDateTime { utc_datetime: PrimitiveDateTime { date: Date { year: 2021, ordinal: 320 }, time: Time { hour: 3, minute: 0, second: 0, nanosecond: 0 } }, offset: UtcOffset { hours: 0, minutes: 0, seconds: 0 } }, digits: 20 } }) taker_id=c0c0ba85-8626-4607-8a97-243f045723a6
2021-11-15 13:16:47 TRACE send to socket message message_name=CurrentOrder

It's still scary that we did never see the error before! @thomaseizinger any idea why the error in handle_broadcast_order was swallowed?

Did you try if this was the source of our problems?

Was able to reproduce the problem locally on master - steps:
1. start maker

2. start taker

3. check that orders arrive on taker

4. keep maker running, restart taker

5. check that no orders arrive on taker after the initial one.

On this branch the problem is solved, whenever I restart the taker I do see the trace removing the old connection and receive orders:
2021-11-15 13:16:46 TRACE removing outdated connection to taker because unable to send order: Some(Order { id: OrderId(Hyphenated(5a890edf-2719-4250-82de-22d7e3ed8b37)), trading_pair: BtcUsd, position: Short, price: Price(66527.69), min_quantity: Usd(10), max_quantity: Usd(100), leverage: Leverage(2), liquidation_price: Price(44351.793333333333333333333333), creation_timestamp: Timestamp(1636942606), settlement_time_interval_hours: Duration { seconds: 86400, nanoseconds: 0 }, origin: Ours, oracle_event_id: BitMexPriceEventId { timestamp: OffsetDateTime { utc_datetime: PrimitiveDateTime { date: Date { year: 2021, ordinal: 320 }, time: Time { hour: 3, minute: 0, second: 0, nanosecond: 0 } }, offset: UtcOffset { hours: 0, minutes: 0, seconds: 0 } }, digits: 20 } }) taker_id=c0c0ba85-8626-4607-8a97-243f045723a6
2021-11-15 13:16:47 TRACE send to socket message message_name=CurrentOrder

shall we try to cover this one with a test? seems like it shouldn't be hard to write one

Did you try if this was the source of our problems?

Was able to reproduce the problem locally on master - steps:
1. start maker

2. start taker

3. check that orders arrive on taker

4. keep maker running, restart taker

5. check that no orders arrive on taker after the initial one.

On this branch the problem is solved, whenever I restart the taker I do see the trace removing the old connection and receive orders:
2021-11-15 13:16:46 TRACE removing outdated connection to taker because unable to send order: Some(Order { id: OrderId(Hyphenated(5a890edf-2719-4250-82de-22d7e3ed8b37)), trading_pair: BtcUsd, position: Short, price: Price(66527.69), min_quantity: Usd(10), max_quantity: Usd(100), leverage: Leverage(2), liquidation_price: Price(44351.793333333333333333333333), creation_timestamp: Timestamp(1636942606), settlement_time_interval_hours: Duration { seconds: 86400, nanoseconds: 0 }, origin: Ours, oracle_event_id: BitMexPriceEventId { timestamp: OffsetDateTime { utc_datetime: PrimitiveDateTime { date: Date { year: 2021, ordinal: 320 }, time: Time { hour: 3, minute: 0, second: 0, nanosecond: 0 } }, offset: UtcOffset { hours: 0, minutes: 0, seconds: 0 } }, digits: 20 } }) taker_id=c0c0ba85-8626-4607-8a97-243f045723a6
2021-11-15 13:16:47 TRACE send to socket message message_name=CurrentOrder

shall we try to cover this one with a test? seems like it shouldn't be hard to write one

we would need restart behaviour in the test. Not sure how easily we can get that in. Would definitely vote for doing it in a follow up. This problem is blocking me atm 😅

bors r+


Refactored ActivationFunction

Refactored the Activation function for a cleaner look and compressing the code into a more class like structure..

In my opinion x and y are not the best names for the functions. I used func for function and dfunc for derivated function.

well that wasn't really the point of the refactoring, i've used x and y only because its shorter and the name only shows what you need to insert..
The point for that pull request was to put the functions into the class so its more namespace-like and not just a random function somewhere in the global namespace


RFC: proc macro include!

Allow include! to be implemented in proc macros, by adding a proc_macro API to read files as Vec<u8>, String, or TokenStream. If the file is read as TokenStream, it is given Spans appropriate for diagnostics to point into the read file. In all cases, the build system knows which file(s) have been read, and can cache results / rerun the macro as desired.
Rendered

we'd likely also want a way to list files in a directory, though that may be more difficult to integrate into build systems

we may want to specify that a non-existent file/directory produce a NotFound error just like File::open, cuz proc macros are likely to want to probe for specific files (e.g. a config override file for a particular directory) and fall back to some default if they don't exist.

It would be useful to somehow allow Spans into include_str files as well, so the proc-macro can report errors (or induce later rustc errors) that reference into non-TokenStream compatible syntaxes.

allow Spans into include_str files as well

I agree that this is desirable. As such, I'm torn on whether include_str should return (logically) (String, Span). However, there's currently no (even unstable) way for a proc macro to split a given Span into smaller parts, so even with a Span, error reporting into a Rust lexer incompatible file wouldn't yet be possible.
This RFC I'd like to keep focused on the "read file via the build system" architecture, so introducing split spans architecture would (imo) overextend the RFC.
Perhaps the best short term approach is to just drop include_str, and have proc macros include_bytes and String::from_utf8 for the time being until include_str can give a useful Span.

Two points:

How should relative paths be handled? relative to the pwd of the rustc process? or how include_string!, which is relative to the file the .rs is contained within. This becomes especially interesting when the proc macro is called with a relative path, it would be weird for users if that worked differently from include_string! (say a include_cpp! proc macro). Maybe one could pass an optional span to the functions and it would resolve the directory relative to the span's location, and if no span is passed, it would resolve relative to the top level span of the crate, or in other words, relative to lib.rs.

I'm wondering about making the return for include_bytes and include_str opaque, or at least using something that supports the backing buffers coming from a mmap call instead of having to use the standard Rust allocator. Think of instances where the included files are, say, 4 GiB large or something. Reading the entire file into memory is very inefficient in that instance and ideally one ceases to read the complete file until the linking step. This optimization does not have to be implemented, but I feel that it should be possible to implement it in the future. Also, maybe the implementation only wants to read parts of a file, in which instance reading the entire file and copying it to RAM is wasteful. Mapping it to memory reads only the needed parts of it.

I'm wondering about making the return for include_bytes and include_str opaque, or at least using something that supports the backing buffers coming from a mmap call instead of having to use the standard Rust allocator.

How about:
trait BytesBuf: AsRef<[u8]> {
    // may be expensive
    fn into_vec(self: Box<Self>) -> Vec<u8>;
}
fn include_bytes<P: AsRef<str>>(path: P) -> Result<Box<dyn BytesBuf>, std::io::Error>;

I would really like for the proc macro version of include_str! (and probably include_bytes! as well, for consistency) to return a Span for the included string. See rust-lang/rust#92565.

This would open tonnes of doors and allow extending the rust language to work with things like single-file components in frontend frameworks written in rust.

I've finally gotten around to updating the RFC text for the comments here. Changelog:

include_str now produces Literal instead of String
Mention questions brought up as well as the alternative of more specialized wrapper types for returns.

I've finally gotten around to updating the RFC text for the comments here. Changelog:
* `include_str` now produces [`Literal`](https://doc.rust-lang.org/nightly/proc_macro/struct.Literal.html#) instead of `String`

* Mention questions brought up as well as the alternative of more specialized wrapper types for returns.

Does this allow you to split the Literal into Spans?

we'd likely also want a way to list files in a directory, though that may be more difficult to integrate into build systems

how is this not already possible with Span::call_site().source_file()?

we'd likely also want a way to list files in a directory, though that may be more difficult to integrate into build systems

how is this not already possible with Span::call_site().source_file()?

listing files is already possible using std::fs, the issue is that since cargo doesn't know about that, it won't rerun if you add new files to that directory, or delete, or modify files, or modify file attributes. therefore I think the proc-macro API (and probably something for build.rs too) should include functions that inform cargo that you depend on certain directories so it'll re-run if you change them.

we'd likely also want a way to list files in a directory, though that may be more difficult to integrate into build systems

how is this not already possible with Span::call_site().source_file()?

Additionally the path part has been nightly only since the dawn of time, so not something we've been able to use yet in stable

(This would also likely be blocked in unstable limbo by the same concerns as the tracked path interface.)
FWIW, the tracked_path API now supports tracking any changes within a directory. The change happened alongside the buildscript rerun-if getting that functionality to replace the older, mostly useless behavior of watching the directory entry itself for (i.e. metadata) changes.
The "perfect" solution (with respect to tracking only) is to use a WASI target or similar in order to instrument all environment access, such that it can be transparently instrumented, sandboxed, and whatever else the compiler sees as reasonable. For what this RFC is directly trying to address — spanned manipulation of newly accessed files — though, this API surface is still required even with perfect instrumentation of environment access.


wttop: Add version 1.1

@rasa, @r15ch13 Maybe candidate for main bucket?

Sure, why not?

Ok, do you want me then to PR on the main bucket?

I've just made a PR on main bucket. I am closing this one. Cheers


Customizable querystring encoder

Hey! I'm wrapping a Bad API™ that needs raw +s in its querystring.
Currently I can't prevent Tesla from doing the sane thing and building a valid URI in Tesla.build_url/2 that follows the URI specification, subbing my plusses out with %2B. Nor are there options to configure this at the stdlib URI.encode_query/1 level that Tesla calls out to. This is a just way to handle the uncertainty and darkness of a world gone mad and I have no objection.

I'm happy to contribute to the implementation of this, just wanted to sound it out first.
(For now I've copy-pasted the hackney adapter wholesale that gsubs the plusses back in.)

I feel you!
Right now it's not possible, since Tesla.build_url is used directly in every adapter..
BUT
We can easily change that.
If we move Tesla.build_url call to Normalize middleware and just use env.url in adapters then we can inject another "post" middleware with dynamic client that would replace %2B back to +.
How does that sound?

That would work for my purposes, but I think that would be a backwards compatible change, no?
Suddenly, all post middlewares are receiving a %Tesla.Env{}with the env.query already applied to the env.url, right? Also any changes they make to the env.query will not be reflected.
One way we could avoid this would be to add a new property to the env, an env.uri_encoder function, that Normalize could set to &Tesla.build_url/2, but override in post middleware.
Then all the clients would need to do is env.uri_encoder(env.url, env.query) instead of Tesla.build_url(env.url, env.query).
On the other hand this does extend the core data-structure of Tesla, which might be overkill for the problem it solves. What do you think?

You're right.
But still, you can achieve it like this:
Default behaviour
defmodule Default do
  use Tesla

  def go do
    get("https://requestb.in/1itig5a1?x=1+2", query: [default: "1+2"])
  end
end

produces

As you can see the "url" part is not encoded, so that's one way to hack it (not the most elegant obviously)
Override adapter
defmodule Hack do
  use Tesla

  def go do
    get(client(), "https://requestb.in/1itig5a1", query: [hack: "1+2"])
  end

  def client do
    # use Tesla.build_adapter to override the default adapter
    # and then use Tesla.run_default_adapter after modifying the env
    Tesla.build_adapter fn env ->
      env = %{env | url: build_url(env), query: []}
      Tesla.run_default_adapter(env)
    end
  end

  defp build_url(env) do
    # use standard Tesla.build_url but replace %2B with + after encoding
    env.url
    |> Tesla.build_url(env.query)
    |> String.replace("%2B", "+")
  end
end

and this will produce:

If you want to use some specific adapter you can use it directly with Tesla.Adapter.Hackney.call(env, [])

Fun fact - I've forgotten about module-local adapters :D
defmodule Hack do
  use Tesla

  adapter :adapter

  def go do
    get("https://requestb.in/1itig5a1", query: [hack: "1+2"])
  end

  def adapter(env) do
    url =
      env.url
      |> Tesla.build_url(env.query)
      |> String.replace("%2B", "+")

    env = %{env | url: url, query: []}
    Tesla.run_default_adapter(env)
  end
end

That module-local bit is pretty slick, I went with that for a while.
Then, I discovered a place in the same API (😱) where I do need normally encoded +s (inside the search endpoint, plusses are a pretty standard part of search terms in this domain), so I had to revert to my copy-paste of the hackney adapter that specifically re-implements Tesla's private querystring encoder methods:

encode_pair now handles normal key/values pairs by joining them with a place-holder ✚ character
encode_query finishes with the extra step of gsubbing the encoded version of the  ✚ place-holder into a normal plus (String.replace("%E2%9C%9A", "+")).

So, this would still be a nice-to-have feature for me and my absurd edge case. I can only pray that I don't find a corner of this API where the ✚ character has special significance. ;~;

I think you can still achieve that with encoding query into url before passing it it run_default_adapter without the need to copy-paste-edit whole adapter.

Closing this one, @christhekeele feel free to reopen if you have anything to add here.


Notation inspect command timestamp signature support

Is your feature request related to a problem?

The timestamp signature field is base64 encoded; however, it is not readable.
What solution do you propose?
For the notation inspect command, we need to provide readable content for humans. Therefore, for the timestamp signature, we may need to show the actual timestamp, issuer, and the content of the timestamping certificate chain.
What alternatives have you considered?
No
Any additional context?
No

A valid issue. Should fix before next release.

the content of the timestamping certificate chain this part is not showable, because we can only get the tsa cert chain during timestamp verification where the user must provide the TSA root cert.


Improve code coverage

Currently: https://app.codecov.io/github/inbo/camtraptor/tree/main/R code coverage is at around 73%, a number of scripts have no coverage at all:

map_dep.R
write_eml.R
get_prefixes.R

With the changes in dplyr, as per #190, we can take this opportunity to make sure we actually cover all the changes in dplyr.
I suspect some code is also not covered because it's never run, for example: in get_scientific_name() which does return an error when a nonsense vernacular name is passed, but not the message in the glue statement: message(glue::glue("`{v}` is not a valid vernacular name."))
I've already added tests for map_dep() but will try to improve coverage for other functions.

Nice, @PietrH . Thanks to check this. Notice that there is an issue already open (more or less a reminder) for writing tests for write_eml: https://github.com/inbo/camtraptor/issues/120
Notice also that I didn't cover very mch map_dep() as this function returns leaflets and it is now based on get_* functions behind the screen. .Also, it will change soon: see https://github.com/inbo/camtraptor/issues/91 to avoid redundancy with the get_* functions. With this I mean that detting 100% coverage is not a priority at the moment 😄

Nice, @PietrH . Thanks to check this. Notice that there is an issue already open (more or less a reminder) for writing tests for write_eml: #120
Notice also that I didn't cover very mch map_dep() as this function returns leaflets and it is now based on get_* functions behind the screen. .Also, it will change soon: see #91 to avoid redundancy with the get_* functions. With this I mean that getting 100% coverage is not a priority at the moment smile

Hi Damiano,
I've mostly covered map_dep() for friday on the last day of the sprint, and will have a look at write_eml somewhere during this week. I'll also attempt to make coverage improvements in other functions.
If you want to have a look at contributing to this PR, we can divide the functions between us.

Ready for review

Agree to add a reminder to change tests/testthat/test-read_camtrap_dp.R back to using the most up to date camtrap-dp/main/example/datapackage.json
I'll create an issue, and add it to Milestone v1.0

Thanks for your changes Damiano, I have no further comments. Are we ok to merge?

Definitely yes.


The exit code for controlling the locust process has a bug

Prerequisites

[X] I am using the latest version of Locust
[X] I am reporting a bug, not asking a question

Description
import logging
from locust import events
@events.quitting.add_listener
def _(environment, **kw):
if environment.stats.total.fail_ratio > 0.01:
logging.error("Test failed due to failure ratio > 1%")
environment.process_exit_code = 1
elif environment.stats.total.avg_response_time > 200:
logging.error("Test failed due to average response time ratio > 200 ms")
environment.process_exit_code = 1
elif environment.stats.total.get_response_time_percentile(0.95) > 800:
logging.error("Test failed due to 95th percentile response time > 800 ms")
environment.process_exit_code = 1
else:
environment.process_exit_code = 0
The above code, placed in my user class file, did not print the corresponding log, and the stress testing interface also reported an error. The code still did not work
Command line
locust -f locustfile.py --users 10 --spawn-rate 10 --host=https://********com --run-time 60s
Locustfile contents
nothing

Python version
3.9.6
Locust version
2.20.0
Operating system
mac os

Please use latest version

I have updated to 2.27.0, but it still hasn't been triggered
locust -f locustfile.py --users 10 --spawn-rate 10 --host=https://www.asdashdkjashd.com --run-time 60s
from locust import HttpUser, task, events, between
import logging
class MyUser(HttpUser):
wait_time = between(1, 5)
@task
def my_task(self):
    with self.client.get("/") as response:
        pass

@events.quitting.add_listener
def _(environment, **kw):
if environment.stats.total.fail_ratio > 0.01:
logging.error("Test failed due to failure ratio > 1%")
environment.process_exit_code = 1
elif environment.stats.total.avg_response_time > 200:
logging.error("Test failed due to average response time ratio > 200 ms")
environment.process_exit_code = 1
elif environment.stats.total.get_response_time_percentile(0.95) > 80:
logging.error("Test failed due to 95th percentile response time > 800 ms")
environment.process_exit_code = 1
else:
environment.process_exit_code = 0
------------------ 原始邮件 ------------------
发件人:                                                                                "locustio/locust"                                                                                @.>;
发送时间: 2024年5月18日(星期六) 晚上10:23
@.>;
<EMAIL_ADDRESS>主题: Re: [locustio/locust] The exit code for controlling the locust process has a bug (Issue #2716)
Please use latest version
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

If you see no logging it seems more likely that your if statement did not evaluate to true, so that code never ran?


Adds support for Xcode 9 < 9.2

Got this to compile on Xcode 9.2:

Continued from #2567.

ace

I'll take it, thanks


Can anyone explain saga_gui?

This gui really confused me.
I clicked the clickmode->segment3d->clicked the bottle of the scene->save as precomputed-mask.

Then

it has been "saving as..." for half an hour. I dont know whether it works or not.
Can anyone give me help?I would really appreciate it!

Hi, the outputted 'saving ...' is only used for debug. In fact the segmentation result have been stored as 'segmentation_res/precomputed_mask.pt'.

How to click the scene? I try to click but no response.

Hi, the outputted 'saving ...' is only used for debug. In fact the segmentation result have been stored as 'segmentation_res/precomputed_mask.pt'.

Thank you! I have found the result


ci: minor refactoring of workflow triggers

Adding workflow_dispatch as trigger where it makes sense, so workflows can be triggered manually when needed, e.g., on forks. Removing values that are already present as default.

First step toward #1168


⚠ Bofrost.lu has degraded performance

In c4f5480, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 955 ms

Resolved: Bofrost.lu performance has improved in db12919 after 22 minutes.


[$500] Thread - Title in thread is not shown when leaving and revisiting thread offline

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: 1.4.9-2
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Issue found when executing PR https://github.com/Expensify/App/pull/32331
Action Performed:

Send a message and create a reply in thread
Go offline
Click three-dot menu and leave the thread
Click on the n replies

Expected Result:
Parent message title shows in the thread header
Actual Result:
Thread header shows skeleton loading
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/Expensify/App/assets/78819774/4e3f30ae-f638-4e67-a9fc-cd9209639cfd
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0106a4cab3b7676301
Upwork Job ID:<PHONE_NUMBER>237701120
Last Price Increase: 2023-12-07

Proposal
Please re-state the problem that we are trying to solve in this issue.
Title in thread is not shown when leaving and revisiting thread offline
What is the root cause of that problem?
The report action (the message we have replied in thread) has no childReportID when we reply in thread.
What changes do you think we should make in order to solve the problem?

We should give childReportID optimistically in Report.navigateToAndOpenChildReport for the report action
What alternative solutions did you explore? (Optional)

@tienifr But there is a related bug as I explained in my proposal 👍

Yeah as this is a dupe of https://github.com/Expensify/App/issues/32519, I'll close it out. If there's another bug, let's get that created as a separate issue!


[BACKLOG-32304] Abstract PVFS url translations

:white_check_mark: Build finished in 14m 9s
Build command:
mvn clean verify -B -e -Daudit -amd -pl core

:ok_hand: All tests passed!
Tests run: 4729, Failures: 0, Skipped: 7    Test Results

:information_source:  This is an automatic message