IOU - Comment in IOU report preview does not update after deleting money request

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

Issue found when executing PR https://github.com/Expensify/App/pull/23043
Action Performed:

Go to staging.new.expensify.com
Request money two times from a user with no conversation history
Click on the IOU report preview
Delete one of the requests
Return to IOU report preview

Expected Result:
The comment in IOU report preview will update
Actual Result:
The comment in IOU report preview updates and reverts to '2 requests'
Workaround:
Unknown
Platforms:

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

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: No
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
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by: @tewodrosGirmaA
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1691168685718989
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01d88723e84c14ed1f
Upwork Job ID:<PHONE_NUMBER>427391488
Last Price Increase: 2023-08-10

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

Not a blocker, this is just a follow-up issue to Manual Requests that we need to implement.

@Julesssss If this is a follow up to manual requests, should it have new feature label, rather than bug?

Hey guys, I reported this issue over on slack here.

I updated the reporter section

Thanks Jules.

Potentially related to https://github.com/Expensify/App/issues/24241

Interesting. @Julesssss / @narefyev91 curious if you think the above bug is related to this one?

@joekaufmanexpensify seems that it's a separate issue - changes for https://github.com/Expensify/App/issues/24241 was deployed on staging in version 🚀 Deployed to staging by https://github.com/srikarparsi in version: 1.3.51-2 🚀 - but issue reported in staging Version Number: <IP_ADDRESS>

Sounds good, thanks for confirming. @Julesssss just for my own understanding, this is one you're intending to work on, right? So we don't need to look for external volunteers?

I updated the reporter, as it was reported 5 days before the listed report.

@joekaufmanexpensify, good question. This might need both a backend and front end fix, so yeah lets keep internal for the moment.

Sounds good!

@Julesssss curious if you have an estimate of when a PR might be up here?

@joekaufmanexpensify this is weeks or months away. As I have so many bugs and more important tasks assigned.

Moving back to weekly, as doesn't sound like @Julesssss can prioritize this atm.

Same

Same.

Pending internal prioritization

Same

Same

@Julesssss do you think you'll be able to raise the fix for this one anytime soon?

Okay, all good. I will make it a monthly for now then!

Hey @joekaufmanexpensify, I just retested this bug and I don't think it is occurring anymore 🎉
I see an updated preview. Would you mind verifying?

Sure, I'll take a look now!

Yep, this is fixed for me as well. Closing as no action needed in this issue!

Hey @Julesssss and @joekaufmanexpensify, am I eligible for payment?

@tewodrosGirmaA My initial thought is I don't think any payment is due here. We did not fix anything in this issue. Generally the way we approach situations like this is you'd need to find the PR that fixed this to show that your report came first in order for this to qualify for payment.
If this was reported before whatever caused us to change this product behavior, LMK and I'll take another look!


Ability to Retain file in constrained cache by adding dup

I have seen this https://github.com/libuv/libuv/issues/3448, and here is the use case which is preventing me from creating disk cache for remote file storage.
All files are hosted on remote storage such as s3, blobs etc. And let's say I am using /cache/ mount somewhere on disk to cache remote files locally. Now files regularly used will be downloaded to cache, cache will be smaller, like few GBs, where else remote storage is in TBs. Purpose of this cache is to retain files on reboot/restart. As files will be larger.
Cache would require regular cleaning. tmpfs isn't ideal as everything is deleted on restart of container or os reboot.
To use file, if file exists in /cache/ folder, file has to copy entire file from /cache/ to /tmp/, because cache cleaning process will delete old files to keep cache to an optimum size.  We cannot create hard link between /cache/ and tmpfs. So there is risk of file being deleted while file handle is not opened. There is no way to lock file on Unix/Linux systems like on Windows.
Every time we want to open file from cache, cache copy has to be copied to tmpfs. This is huge time consuming process. And using single handle is not possible for different operation, for example one is extracting metadata from image, one is resizing it etc and they may run it in parallel. And there is a separate OCR engine that needs file or file handle as well.
Now if there is dup available, what we can do is, we can open a file and keep the handle till lifetime of the usage of file, and every other logic that needs to access the same file, can duplicate the handle and read from it.
So in that case if cache eviction happens, original file will still be available till the last handle is closed.
Renaming and keeping a separate hard link workarounds do not guarantee atomicity. If process/system fails/crashes, the hardlink will survive and writing logic to cleaning up hardlinks will impose similar constraints.
Using last use time is also not feasible as due to async nature of nodejs, it is not possible to guarantee that cache retrieval will win in race against cache eviction in multi process environment.
Currently I am using small database like sqlite to manage cache but I feel lack of dup is posing challenge to write many file level locking logic.

Can you explain in a few words why uv_fs_open() won't work for your use case? Rephrased: how is opening the file twice worse than cloning the file descriptor?

I feel lack of dup is posing challenge to write many file level locking logic

I don't know what you understand "file level locking" to mean but dup() and flock/fcntl/lockf-style file locking is a huge footgun. It's so broken it's near impossible to get it right.
Besides file locking, I'd argue dup() is also worse most of the time because it clones the file descriptor but not the file description (note the emphasis.)
That means both file descriptors share the same file offset - reading from one changes the offset of the other one - and that's rarely what you want.
It's definitely not what most people expect because it's one of those perennial UNIX pitfalls that keep tripping up new programmers.

@bnoordhuis This is interesting, I wasn't aware of offset being the same. Isn't there any way to duplicate file handle?

Process one opens a file handle.
Process two deletes the file.
Process one can read the file.
Process one should be able to duplicate the file handle and give it to process three which can read from beginning?

Is it possible? or not at all possible?

Like I said, one of those perennial pitfalls :-)
You can't do it in a portable manner. Opening /proc/self/fd/<num> works for most (but not all) file types but is Linux-only.
I'm going to close this out but I can convert it to a discussion if you have follow-up questions.


[Bug]: Fix home page header issue

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
The header is replicated, it is showing up two times
Add Screenshots

What browsers are you seeing the problem on?
No response
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC contributor
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

but navbar section like home .. improvement already assigned. you can work on double part


Annotation Strikeout Text

Is there any possibility to get the text content of the strikeout annotaion?

Hi, I am not sure what exactly your question is about, but this is an issue tracker for a command-line tool called "hub" which has nothing to do with strikeouts and annotations. Please find a more appropriate forum to ask your question in.


Column name needs to be quoted in the where query param.

This took a while to figure out but essentially I have the following table structure:
CREATE TABLE public.users_electric (
    project_id uuid NOT NULL,
    user_id uuid NOT NULL,
    first_name text,
    last_name text,
    created_on timestamp without time zone NOT NULL,
    modified_on timestamp without time zone NOT NULL,
    deleted_on timestamp without time zone,
    is_active boolean NOT NULL,
    primary key (user_id, project_id)
);

and attempt to curl the shape api with the where param set to project_id = '00000000-0000-0000-0000-000000000000' it responds with unknown reference.
But if set the where param to "project_id" = '00000000-0000-0000-0000-000000000000' it all works fine.
Unsure if this is intended behaviour (in which case. would be worth mentioning in some docs/openapi) or a bug?

Yeah we should support unquoted column names so I'll make this as a bug to fix. Thanks for reporting!

I can't seem to reproduce this with the same table and filter - could you please paste the exact curl request made that is problematic?
Examples that worked for me:
curl --get http://localhost:3000/v1/shape/users_electric --data-urlencode "offset=-1" --data-urlencode "where=project_id = '00000000-0000-0000-0000-000000000000'"

fetch(`http://localhost:3000/v1/shape/users_electric?offset=-1&where=${encodeURIComponent("\"project_id\"='00000000-0000-0000-0000-000000000000'")}`)

@msfstef
curl -X 'GET' \
  'http://localhost:3000/v1/shape/users_electric?offset=-1&where=%22project_id%20%3D%20%2700000000-0000-0000-0000-000000000000%27%22' \
  -H 'accept: application/json'

response I got:
{"root_table":["At location 0: unknown reference \"project_id = '00000000-0000-0000-0000-000000000000'\""]}

@alco I also had this example that failed as well:
curl -i 'http://localhost:3000/v1/shape/users_electric?offset=-1&where=project_id%3D00000000-0000-0000-0000-000000000000'

response:
{"root_table":["At location 0: unknown reference project_id"]}

Please provide a reproduction repo.  Any updates?

@alco hey sorry for the delay, I've not had time to recreate this issue. I'll close it and if I manage to bump in to again I'll reopen with a repo.


I created new flag and I applied UTF-16 to Twenoji's JS, but it doesn't load the icon.

I created a new flag of Spanish region of Catalonia icon (unavailable in the emoji fonts) and renamed it to 1f1e8-1f1f9, which came from the two letters 🇨and 🇹.
I converted 1f1e8-1f1f9 to \ud83c\udde6\ud83c\uddf9 in UTF-16.
I added it to 're' from twemoji and also to, inside JavaScript script:

twemoji.convert.fromCodePoint('1f1e8-1f1f9');
twemoji.convert.toCodePoint('\ud83c\udde6\ud83c\uddf9');

But it doesn't work and load the icon of new flag.
Any solution?

It isn't even an official ISO 3166-1 alpha-2 code. That may be why the icon didn't load.

Hi, @gusbemacbe
Unfortunately, Catalonia hasn't an own ISO 3166-1 code. In such cases, an Emoji tag sequence for country subdivisions can be used.
Following TR51, properly encoding for flag of Catalonia is: <U+1F3F4, U+E0065, U+E0073, U+E0063, U+E0074, U+E007F>.
With this commit, 3 subdivision flags were added: England, Scotland, and Walles. See files:

1f3f4-e0067-e0062-e0065-e006e-e0067-e007f.png
1f3f4-e0067-e0062-e0073-e0063-e0074-e007f.png
1f3f4-e0067-e0062-e0077-e006c-e0073-e007f.png

See related WIP issue #233 also
Please, I want Catalan flag added in Twemoji. If I can help with anything, ask it. Thanks

Too bad, I wanted to add it to translate my Brazilian project into Catalan.
What @Liggliluff did is very nice.

@jmontane
Herw is molt bones notícies!
In spite of not having Calan flag in the fonts...
I converted 1f3f4-e0065-e0073-e0063-e0074-e007f to UTF-16: \uD83C\uDFF4\uDB40\uDC65\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74\uDB40\uDC7F and added it to 're' from twemoji.js and I added the glyphs  🏴     to HTML. Finally it loaded the Catalan flah. Here's the result:

In the code source editor:
twemoji.js:

HTML:

Converting from HEX to UTF-16:

Splitting two four letters in UTF-16:

Great!
Can you create a PR to Twemoji, please?
I hope that flag from Catalonia will be part of Twemoji, like flag from Scotland.

@jmontane
Yes, I can, but the problem is that the language and regional flags still aren't supported in the current Unicode or in the current emoji fonts, but as I am a typo-designer and programmer, I'll figure how they applied Great Britain countries to former Unicode firstly.

Well, mixing languages and flags is an common use, but discouraged.
Said that, subdivision flags are fully supported by Unicode (see Emojipedia post ). Only 3 subdivision flags are recommended by Unicode for now (England, Scotland, and Walles), but vendors can provide more flags following Unicode schema. So Twemoji can add any subdivision flag

Bon dia, @jmontane,
I read again and it makes sense what Unicode has suggested.
I have just figured how they applied the British countries and understood now. I'll test with BirdFont.

@jmontane, altres molt bones notícies!
Finally the Catalan flag worked on an OTF (Glyphs.app) font, after testing four glyphs together (
🏴
) with Firefox and with Unicode Checker, but not on a TTF font (BirdFont). I tried to export a colour emoji font in BirdFont, but it doesn't work because it doesn't know these glyphs. I'll report to @johanmattssonm.

The secret of these British flags are the ligature.
For any regional flag to work, you must use ligature.
For one colour emoji font to work on Google and as a web font, you need to use BirdFont.
For one colour emoji font to work on Apple, as an alternative to Apple Colour Emoji and on Windows, you need to use Glyphs.
For one colour emoji font to work on Windows, you need to use FontCreator and Fontself.
The example is EmojiOne which compiled its font to four type of color emoji font – Android, Apple, Windows and web font. EmojiOne is able to overwrite the original Apple Color Emoji.

You can try to test. Use Firefox.
It comes with Glyphs and Birdfont files.
CatalanEmoji.zip

Thanks for mentioning Fontself @gusbemacbe!
Just to make it clearer for the formats used,
Fontself for Illustrator is using:

Regular OpenType CFF (outlines) for regular fonts & as a fallback if color fonts are not supported
OpenType-SVG for color fonts

Fontself for Photoshop is using:

Regular OpenType CFF (outlines) for regular fonts
OpenType-SVG & Apple's sbix for color bitmap font.

So you can actually create a color bitmap font with Fontself and it will work on Apple's devices and also where OpenType-SVG is supported 😉

Salut, @Jolg42, how to set correctly the ligatures? And using glyph HEX codes? I tried to do in all forms.

Would this be possible to implement into the Tweomji repo, now that Wales has been supported since Sept. 2018?  Seems like @gusbemacbe  already did some of the work


Version component on 0.97 : Docker display wrong 0.98dev when beta=false

Home Assistant release with the issue:
0.97.2
(downgrade will also "trigger" the issue I think, since the data come from a service and I haven't change HA version when it happens)
Last working Home Assistant release (if known):
0.96.4
Operating environment (Hass.io/Docker/Windows/etc.):

System attribute
Value

arch
x86_64

dev
false

docker
true

hassio
false

os_name
Linux

python_version
3.7.4

timezone
Europe/Paris

version
0.97.2

virtualenv
false

Component/platform:
https://www.home-assistant.io/components/version/
Description of problem:
The version source Docker display the wrong version, dev version even, and beta is false.
No config change since a long time
configuration.yaml
- platform: version
  source: docker

Forgot the screenshot :

Duplicates #26213


Make any ResultSet writable to WhyLabs

Description
With https://github.com/whylabs/whylogs/pull/1248, Segmented, Reference, ResultSets can be written to WhyLabs. However, other ResultSets are not directly writable. We should make all types of ResultSets writable to WhyLabs.

Suggestions

Related
Relates to organization/repo#number

[x] I have reviewed the Guidelines for Contributing and the Code of Conduct.

Richard has changes that support writing results sets pending, so assigning to him.


Issue #230: input format should always default to VG

Rebased on top of master to resolve CI failure


Changes for new API key in main branch

Description
Changes for new API key

Checklist:

[ ] Set target branch to main (current release) or v.next (next release)
[ ] Request a reviewer
[ ] Assign a reviewer
[ ] Tag reviewer in comment

@maryharvey can you re-approve as I made the change.


Collection-Type Dependency Properties

What is the 'correct' way to support collection dependency properties in UWP? In WPF this was a defined case:
https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/collection-type-dependency-properties

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

ID: 07a6b32d-01cb-f866-8e4e-3b444b7d2996
Version Independent ID: fc6a226a-e603-97c4-6c99-a00a0e3d4ea1
Content: Dependency properties overview - Windows UWP applications
Content Source: windows-apps-src/xaml-platform/dependency-properties-overview.md
Product: uwp
Technology: platform
GitHub Login: @jwmsft
Microsoft Alias: jimwalk

Fiddling around it seems the 'correct' way in UWP is to do something like this:
        /// <summary>
        /// Identifies the <see cref="SelectedItems"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty SelectedItemsProperty =
            DependencyProperty.Register(nameof(SelectionBox2.SelectedItems),
                                        typeof(IList<SelectionItem>),
                                        typeof(SelectionBox2),
                                        PropertyMetadata.Create(new CreateDefaultValueCallback(() =>
                                            {
                                                return new List<SelectionItem>();
                                            })));

That avoids sharing the same List reference with all instances. However, it is only safe through the property accessor (which you can make get only). Through binding, it would be possible to set a new list entirely it seems which is why WPF had read-only dependency properties. If you are dealing with an ObservableCollection there are even more complexities this causes because you have to detect the new collection and then hookup event handlers. So, I'm still not sure the 'best' way to do this in UWP. Some clear documentation from Microsoft would be a big help.
Also see: https://stackoverflow.com/questions/45335237/how-to-define-a-dependencyproperty-for-a-collection-type-in-uwp/45345057#45345057

Almost all of our collection properties are get-only for this type of reason. We are looking into opening this up in the future. Generally we have the "default value" be null and then the getter returns a collection.

Yes, I understand collection properties should be get-only and that follows C# and .net conventions. Therefore, for back-end classes I would normally just write an IList field in the class and expose it as a get-only property. Something like what is below.
ObservableCollection<SelectionItem> list = new ObservableCollection<SelectionItem>();

public IList<SelectionItem> SelectedItems
{
    get { return list; }
}

However, I understand to fully support the binding system/convention (at least in WPF) the field should instead be a dependency property. Therefore, right now what I have in UWP is:
public static readonly DependencyProperty SelectedItemsProperty =
            DependencyProperty.Register(nameof(SelectionBox2.SelectedItems),
                   typeof(IList<SelectionItem>),
                   typeof(SelectionBox2),
                   PropertyMetadata.Create(new CreateDefaultValueCallback(() =>
                       {
                            return new List<SelectionItem>();
                       })));

public IList<SelectionItem> SelectedItems
{
    get { return ((IList<SelectionItem>)base.GetValue(SelectedItemsProperty)); }
}

As you can see I expose the property as get-only. The issue is that this entire list can still be set by the binding system itself. In other words, while the get-only SelectedItems is 'safe' and follows conventions there is nothing to stop a call to SetValue() by the binding system which would replace the entire list. This is where WPF would have blocked this because the collection-type dependency property would be read-only.
So, what I'm asking to clarify. Should collection-types on UI classes be just regular old C# fields with a get-only property accessor? Or should they be some special-case DependencyProperty? (If so, what?)
Generally speaking I don't think SelectedItems is bindable in UWP controls anyway so this might be missing in the platform itself?

@jevansaks, @MikeHillberg. This also came up in making SelectedItems bindable in a future DataGrid implementation #1500. Is there any talk of fixing this platform-wide so SelectedItems is fully bindable?

Is there any talk of fixing this platform-wide so SelectedItems is fully bindable?

It's certainly a nice-to-have, but I don't know of a formal proposal to do so.

Created feature-request here: https://github.com/microsoft/microsoft-ui-xaml/issues/3139

I'm closing this issue as there does not appear to be a documentation issue to address and corresponding issues have been opened in the WinUI repo.


Handle base branch different from main

What does this PR do?
Modify the function used to retrieve modified file to account for base branch different from main. Without that the pre-commit hooks are not working properly when triggered on a branch that is based on a release branch

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


⚠ Bofrost.be has degraded performance

In 587aecb, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1851 ms

Resolved: Bofrost.be performance has improved in afd9ec0 after 9 minutes.


Can't use XML logger

I'm finding that either the log path is ignored and the errors are in memory or else the website won't start at all.

Use:
services.AddElmah(options =>
{
options.LogPath = "~/log";
});
XML files with errors will be in the folder ...\wwwroot\log


HUM-183 Add simple all in one doc and configs

Working on getting the configs created and simplified first.
Do not merge yet.

Going to clean up my merge history and resubmit.


Add TCPIP and QUIC to Rundown Event Collection

What performance or run time impact, if any, does this change have?

What performance or run time impact, if any, does this change have?

This is just collecting ETW rundown events. There should be no noticeable impact.

This is just collecting ETW rundown events. There should be no noticeable impact.


Can stringtie add UTR to guided transcripts?

I input an unpublished reference assembly to stringtie with the -G option . The reference gtf has no UTR data; the transcript boundaries in every case are coterminous with the 5' and 3' coordinates of the initial and terminal CDS, respectively.  I was hoping stringtie could 'reveal' leading and trailing UTR candidate regions based on RNAseq read coverage, but this did not happen; in every case where stringtie assembled a transcript guided by a reference, the transcript boundary never extended beyond the reference boundaries -- even when there was plentiful RNASeq read coverage there (visible with a genome browser).
Is there a way to allow guided stringtie predictions to extend beyond the gtf boundaries?

Hi @krabapple!
I am interested in the same problem. Did you solve it?

I am running into a similar issue, where areas with plenty of RNAseq coverage in IGV are not being properly included in the assembly, even when I make the command parameters hyper-sensitive (realistically, far too sensitive to be useful).
Here's an example where an exon that likely should be in the 5' UTR of the SERPING1 gene isn't being included:

This is obtained using the following command:
stringtie -o ${OUT_DIR}/${FILENAME%_coordSorted.bam}_stringtie.gtf -G ${REF_GTF_DIR}/hg38_genes.gtf -v -m 30 -a 5 -t -j 0.01 -c 0.01 -s 1 -M 1 -f 0 -g 0 -u -p $ncores ${FILENAME}
This is with stringtie version 2.2.1
The reads were mapped to hg38 with Hisat2 version 2.2.1, and specifically the reads mapping across the junction that is aberrantly not included in the stringtie output include a XS tag ("+" in this case).
Unfortunately, unguided predictions using stringtie have the same problem:

Were you able to solve this problem?

I follow up on this topic. I know is a couple of years late, but has anyone actually solved this?


Events

Math magicians: events
Learning objectives

Handle events in a React app.
Use React life cycle methods.
Understand the mechanism of lifting state up.

Add the logic needed to make the Calculator component you developed in the previous project actually work.

Thanks for your time

thanks for your time


Labels on Pie Chart

Hi there,
Is it possible to add labels to the pie chart?
Gav

+1

+1

Closing as duplicate of #52


How to use DHT22, MQ2,BMP180 and ublox-NEO-6M on AWS FreeRTOS ESP32

Hello there. How could I possibly use those sensors (DHT22, MQ2,BMP180) and ublox-NEO-6M GPS on your latest AWS FreeRTOS  ESP32 version(202012.00 LTS). I successfully ran those on Arduino IDE using their respective ESP32 libraries. Is there any way I could import those ESP32 Arduino Libraries on the AWS FreeRTOS ESP32 code?
Would those libraries work exactly the same on AWS FreeRTOS the same way they do on Arduino ESP32?
Is there any sort of tutorial or documentation I could get that information from?. Looking forward to hearing from you soon. Thanks in advance.

Hi @Yoimer,
I am investigating this and will provide some more details for you shortly.
Thanks,
Carl

@lundinc2 Thanks a lot for your cooperation.

Hello @lundinc2. Double checking here with my crew, instead of DTH22, we are using DHT11. Thanks in advance

I think you just need to find the equivalent esp idf (v3.3) libraries of your component. AWS Freertos for ESP32 is using esp-idf v3.3.
For example,  BMP180 esp idf

@elieDaan Thanks a lot for commenting. Yes, you're right AWS FreeRTOS for ESP32 esp-idf v3.3. However, I was able to adapt the ESP-IDF 4.2 to compile, and even flash code to AWS FreeRTOS ESP32 V202012.00(latest one). I am attaching snapshots of the configuration.
Do you think that using the ESP-IDF 4.2 would cause any issues with the components section on FreeRTOS?
Thanks in advance.

Sorry, I'm wrong. I am outdated about the last updates on AWS AFR.. It seems that AFR is now supporting esp-idf v4.2

@Yoimer, the libraries that @elieDaan linked to look like a good place to start.
When porting new drivers to a system using FreeRTOS, you will need to place calls to drivers that are not thread safe or are timing critical in a critical section to prevent the scheduler from interrupting them.
The DHT11 is particularly affected by this because the interface bit-banged via a gpio pin. This driver uses critical sections when necessary.
Regarding GPS / GNSS, Here's a link to an esp-idf example for parsing NMEA sentences produced by modules like the NEO-6M.

@paulbartell Thanks a lot for replying. At this stage I was able to run DHT11 and BMP180 sensor on IDF 4.2 from UncleRus. I haven't tried that on AWS FreeRTOS ESP32 (but that's my goal). Is this the right path then?
I will be checking the NEO-6M link you passed me. Thanks a lot for your help and guidance.

@Yoimer  If you are only targeting espressif platforms, the esp-aws-iot repository from espressif or the Core2-for-AWS-IoT-EduKit repository from m5stack could be better places to start.
This repository is a set of reference integrations / demos  for connecting a variety of microcontroller evaluation boards to AWS and other cloud services. It's meant to give you examples of how to integrate parts of the aws iot device sdk into a cmake style project that targets platforms from multiple vendors.
I'm going to close this Issue since it's more of a general inquiry. Feel free to make a thread on the FreeRTOS forums and we can address any followup questions over there.


perf: optimize the performance of XA transactions

What this PR does:
取消了每次执行XA事务时查询数据库版本的操作，把版本查询放在了getOpenConnectorProxy过程中，只需要查一次即可。
Which issue(s) this PR fixes:
Fixes #553

Codecov Report

Merging #554 (61c25b4) into master (d62b776) will increase coverage by 0.07%.
The diff coverage is 60.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##           master     #554      +/-   ##
==========================================
+ Coverage   36.64%   36.71%   +0.07%
==========================================
  Files         160      160
  Lines       11138    11140       +2
==========================================
+ Hits         4081     4090       +9
+ Misses       6710     6705       -5
+ Partials      347      345       -2

Impacted Files
Coverage Δ

pkg/datasource/sql/connector.go
85.71% <ø> (+21.00%)
:arrow_up:

pkg/rm/tcc/fence/fence_driver_tx.go
0.00% <ø> (ø)

pkg/datasource/sql/driver.go
61.24% <46.66%> (-5.10%)
:arrow_down:

pkg/datasource/sql/db.go
48.78% <100.00%> (+4.53%)
:arrow_up:

使用QueryContext在sample中测试select for update，加上def rows.Close()就没有busy buffer，去掉defer rows.Close就必现busy buffer异常。使用ExecContext测试没有这个问题。
我目前还没有定位到根本原因，可以继续看看，如果确实存在未解决的bug，可以考虑在新的PR中解决。当前PR仅优化数据库版本查询导致的XA事务耗时增加。


Support html forms

Added name prop to Listbox
Added name prop to RadioGroup
Added name and value prop to Switch
New <Hidden> component to match Headless UI
A hidden input element will be rendered and kept in sync with the state. Added tests from HeadlessUI
Updated docs for Listbox,Switch and RadioGroup for using the components with forms
Fixes #111

@rgossiaux could you please merge this?


[Refactor] Modularize main.py

⤲ Refactor
Description:
Refactor the existing main.py to adopt a more modular structure by dividing its functionalities into separate modules under different directories. This ensures clearer code organization and ease of maintainability.
Problem Statement:
The current structure of main.py is dense and combines multiple functionalities. This dense structure can hinder navigation, make debugging challenging, and complicate future extensions. Combining numerous responsibilities in one file can lead to decreased developer productivity and a heightened potential for errors.
Proposed Solution:

Retain a stub for process_events() in main.py but move its core logic into the following directory and file structure:chat2gpt/
│
├── main.py (contains a stub for process_event())
│
├── handlers/
│   ├── process_event.py (contains the actual logic for process_event())
│   ├── chat_response.py
│   ├── image_response.py
│   ├── tts_response.py
│   └── slash_commands.py
│
├── settings/
│   ├── env_loader.py
│   └── sessions.py
│
└── utils/
    ├── moderation.py
    ├── voices.py
    ├── tokenizer.py
    ├── text_to_speech.py
    ├── google_cloud.py
    └── ...

Segregate functionalities and transfer them into their respective files:

Move event processing logic to handlers/process_event.py.
Shift message handling to handlers/chat_response.py.
Transfer image response code to handlers/image_response.py.
Relocate TTS and voice list response functionality to handlers/tts_response.py.
Move any Google Cloud related functions to utils/google_cloud.py.
Move any slash command handling logic to handlers/slash_commands.py.
Transfer environment variable and session management to the settings/ directory, adopting a streamlined method using a loop or function to load environment variables.
Migrate any other auxiliary utility functions to the utils/ directory, including creating a function to centralize API call headers for the Eleven Labs API.

Ensure all module imports remain absolute to prevent potential path issues and maintain clarity.
Ensure that existing user input and output moderation rules are applied.

Benefits:

Enhanced code readability and maintainability.
Simplified project structure navigation.
Clearer separation of concerns, ensuring each module has a distinct responsibility.
Easier collaboration for developers, allowing them to work on separate modules with reduced risk of merge conflicts.

Additional Context:
This architectural change is pivotal for the sustainable evolution of the project. As we incorporate more features, having a well-defined and modular structure will be indispensable. Furthermore, breaking down functions like handle_message into more specific sub-functions will aid in readability and error management.

Utility Functions First:

Break Down handle_message():

Start by segregating the slash command logic (/image, /voices, /tts) into their respective handler functions.
After breaking these out, focus on the core chat logic, ensuring the modularization retains the existing flow and behavior.


GuzzleTracingMiddleware should conform with expected features for HTTP client implementations

Expected Result
GuzzleTracingMiddleware should conform with the recently documented "expected features" for HTTP client implementations: https://develop.sentry.dev/sdk/features/#http-client-integrations
Actual Result
The span.op is http.guzzle rather than http.client, sentry-trace HTTP header is not added, span status is not set.

Closing because this has been solved in the referenced PR. Since it’s not a bug because I think that at the time the middleware was created there wasn’t yet a common standard, we will release the enhancement with the next minor version


Properties with dash defined with Flow aren't detected

type Props = {
  'data-action': string,
};

function Button({ 'data-action': dataAction }: Props) {
  return <div data-action={dataAction} />;
}

error  'data-action' is missing in props validation  react/prop-types

I noticed I can use a computed property name to avoid the error.
function Button({ ['data-action']: dataAction }: Props) {

I made a test case with the code from the issue and it passed.

Let’s merge that into master to close this issue :-)


Bitmaptext Placement Bug in HDPI displays when resolution > 1

This Issue is about (delete as applicable)

A bug in the API (always say which version you're using!)

Bitmaptext Placement Bug in HDPI displays when resolution > 1
This is a bug that was introduced between 2.6.2 and the current build.
xOffset, yOffset, xAdvance and kerning do not account for double DPI when parsed from either XML or JSON file formats.
(apologies these examples do not run in safari)
2.6.2
current npm 2.7.2
This error can be fixed by dividing all the values by the windows pixel ratio in scr/loader/LoaderParser.* as seen in this example. However, this does not work when one opts to not address hdpi displays when instantiating the game object, otherwise you end up with this mess. I can finish this fix and put in a PR, but I didn't want to go too far away from how the community would like to address the issue. Maybe passing the resolution variable from game instantiation down to the parser?
*Edit - Original fix branch from my fork as been removed

Addressed in PR #2915.

I merged your PR, and fixed it a little where it wasn't passing in the resolution argument in the method call.

awesome, thanks.


Discrepancy between 6B and 627B version

Hi @Olivia-fsm, thank you for sharing your great work.
I am running your provided code on the 6B version of the SlimPajama data set and obtained <= 7. ppl across all domains. I am wondering if this is an unexpected behavior (your reported ppl for C4 and CC are >40).
Besides, could you please share your *bin files for the 627B SlimPajama? The processing time for the dataset is too long is my machine so it would be great if you could also share them with me.
Thank you in advance.

Hi, were you able to run this code as provided or did you have to make few changes/debugging? Also did you run it on a single or multi GPUs?
Thanks!

BTW I think your plots show the log perplexities and not the actual perplexities which would be why you have smaller values.

Yes, I reproduced the exp using the exact config but my obtained Github domain weight is often large (>.5). Did you observe a similar parttern?

I had to make few debugging on the data processings but finally were able to run code. I am just using the provided domain weights at the moment so didn't get to make that observation yet. Were you able to run it on multi GPU? Thanks!

Yes, just run the code as it is and accelerate will take care of that


Initialization

At this step I,
I Created class Person with the following:

Instance vars: @id, @name, and @age.
Constructor with name, age, and parent_permission as parameter. name and parent_permission are optional and have default values of "Unknown" and true.
Getters for @id, @name, and @age.
Setters for @name and @age.
Private method is_of_age? that returns true if @age is greater or equal to 18 and false otherwise.
Public method can_use_services? that returns true if person is of age or if they have permission from parents.

I Created class Student with the following:

Inherits from Person.
Constructor extends parent's constructor by adding @classroom and a parameter for it.
Method play_hooky that returns "¯\(ツ)/¯".

I Created class Teacher with the following:

Inherits from Person.
Constructor extends parent's constructor by adding @specialization and a parameter for it.
Overrides can_use_services? so it always returns true.
Each class is saved in a separate file.

Thank you @omarsalem7 for reviewing this PR


Add Security Policy

Adding a Security Policy is important to provide guidance on how users can report potential vulnerabilities and communicate when vulnerabilities will be confirmed, fixed and disclosed to the public.
This is considered a good-practice and recommended by Github and Scorecard.
If you agree, I can open a PR to suggest a Security Policy! We can then work together to communicate how the repo can best handle vulnerability reports.
Additional Context
Hi! I'm Gabriela and I work on behalf of Google and the OpenSSF suggesting supply-chain security changes :)

Thanks for the suggestion! I think something similar to the x86_64 crate should work for this repo too.
It would be great if you could open a PR. Thanks!


Bug in get_product_counts_for_customer()

Reported in https://github.com/IBM/product-recommendation-with-watson-ml/pull/26.
See PR comment for details

Closed in #28


Extremely slow Post Setup steps for actions/cache@v3

I use actions/cache@v3 in a pre-commit check workflow on self-hosted runners (summerwind/actions-runner image).
Intermittently (e.g. yesterday and today) the Post Setup steps are extremely slow. Each step takes 2 min 12 sec (plusminus 1 sec).
Looking at the logs and a pcap network trace I observe that the packages (several MiB) are transferred in a few seconds max, but then the connection to GitHub hangs until it probably hits a timeout. Remote IP address for each TCP stream is <IP_ADDRESS> (Microsoft).
Maybe related to https://github.com/actions/cache/issues/720?
Excerpt from workflow log:

(The five lines in each step are presented quickly, and then the workflow hangs for the two minutes.)

Seeing the same

This is a known bug in Node 20:
https://github.com/nodejs/node/issues/47228
Please see related issues for possible workarounds:
https://github.com/actions/setup-node/issues/878
https://github.com/ruby/setup-ruby/issues/543

Using actions/checkout@v3 and actions/cache@v4 this issue goes away. Can be closed.


scaleway-cli: 2.8.0 -> 2.9.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/scaleway-cli/versions.
meta.description for scaleway-cli is: Interact with Scaleway API from the command line
meta.homepage for scaleway-cli is: https://github.com/scaleway/scaleway-cli
Updates performed

Golang update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 2.9.0 with grep in /nix/store/6dhizxlwm1lzchaprhfkrqaqwvriz8mx-scaleway-cli-2.9.0
found 2.9.0 in filename of file in /nix/store/6dhizxlwm1lzchaprhfkrqaqwvriz8mx-scaleway-cli-2.9.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
scaleway-cli

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/6dhizxlwm1lzchaprhfkrqaqwvriz8mx-scaleway-cli-2.9.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A scaleway-cli https://github.com/r-ryantm/nixpkgs/archive/967d6520d4b331f063683f9fb103a26eb85116c2.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/6dhizxlwm1lzchaprhfkrqaqwvriz8mx-scaleway-cli-2.9.0
ls -la /nix/store/6dhizxlwm1lzchaprhfkrqaqwvriz8mx-scaleway-cli-2.9.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

scaleway-cli

Maintainer pings
cc @NickHu @techknowlogick for testing.

Result of nixpkgs-review pr 211509 run on aarch64-darwin 1

1 package built:

scaleway-cli


Add tests for TachyonConf for complex address replacement.

Add tests for TachyonConf for complex master address replacement.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/2563/Failed Tests: 1org.tachyonproject:tachyon: 1tachyon.master.MasterClientTest.openCloseTest
Test FAILed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/2564/
Test PASSed.


Release azure-cli-network 2.0.5

Reviewers, please verify the following for this PR:

[ ] The PR title has format Release <component-name> <version>.
[ ] setup.py has been modified with the same version as in the PR title.
[ ] HISTORY.rst has been modified with appropriate release notes.
[ ] If releasing azure-cli or azure-cli-core, __version__ defined in __init__.py should also be modified to match.

Started releasing azure-cli-network 2.0.5...

Release of 'azure-cli-network' with version '2.0.5' successful. View at https://pypi.python.org/pypi/azure-cli-network/2.0.5.

GitHub release created. https://github.com/Azure/azure-cli/releases.

Codecov Report

Merging #3214 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3214   +/-   ##
=======================================
  Coverage   70.35%   70.35%
=======================================
  Files         381      381
  Lines       24777    24777
  Branches     3785     3785
=======================================
  Hits        17431    17431
  Misses       6237     6237
  Partials     1109     1109

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 39a8fcd...afae676. Read the comment docs.


Feature Request: Allow Activities to consume other Activities uses

It would be nice if we could select other activities on an item to be the consumption target of a different activities use on the same item.

I guess the question here is at what point should you set it up as just item uses?

I guess the main one would be allowing something along the lines of adding a 2nd set of "charges" to an item via an enchantment or some other way. Artificers can infuse items and give them charges to perform the actions that the infusion allows them to make, but at RAW, only non-magical items. Tho im not sure if there are any non-magical items that have "charges" in order to have 2 pools of charges; one for the base item and one that the infusion grants.


LEFT/RIGHT OUTER JOIN failed to detect ambiguous column reference (SQLancer-NoREC)

Describe the bug
Table reference in this query is ambiguous, and should be rejected by the planner.
select t1.v1 from t1 left outer join t1 on true;
Now it can be run successfully, see the reproducer:
(It can also be reproduced if 'left outer join' is changed to 'left join' 'right join' 'right outer join')
> create table t1(v1 int);
0 row(s) fetched.
Elapsed 0.068 seconds.

> insert into t1 values (1);
+-------+
| count |
+-------+
| 1     |
+-------+
1 row(s) fetched.
Elapsed 0.054 seconds.

> select t1.v1 from t1 left outer join t1 on true;
+----+
| v1 |
+----+
| 1  |
+----+
1 row(s) fetched.
Elapsed 0.016 seconds.

> select v1 from t1 left outer join t1 on true;
Schema error: Ambiguous reference to unqualified field v1

To Reproduce
No response
Expected behavior
No response
Additional context
found by SQLancer https://github.com/apache/datafusion/issues/11030

Note to myself: maybe duplicate
NoREC oracle violated:
    Q1(result size 0):SELECT COUNT(*) FROM t2 table1 FULL JOIN t2 table1 ON ((table1.v1)<(((((table1.v2)|(-1680394990)))==(RADIANS(NULL))))) WHERE table1.v3;
    Q2(result size 3):SELECT COUNT(CASE WHEN TABLE1.V3 THEN 1 ELSE NULL END) FROM t2 table1 FULL JOIN t2 AS table1 ON ((table1.v1)<(((((table1.v2)|(-1680394990)))==(RADIANS(NULL)))));
=======================================
Reproducer:
/*DML*/CREATE TABLE t0(v0 BIGINT, v1 BOOLEAN, v2 BOOLEAN, v3 DOUBLE);
/*DML*/CREATE TABLE t1(v0 DOUBLE);
/*DML*/CREATE TABLE t2(v0 DOUBLE, v1 BOOLEAN, v2 BIGINT, v3 BOOLEAN);
/*DML*/INSERT INTO t0(v3, v0, v2) VALUES ('NaN'::Double, 462373142, false);
/*DML*/INSERT INTO t0(v0, v2) VALUES (462373142, NULL);
/*DML*/INSERT INTO t1(v0) VALUES (0.23090038573154326);
/*DML*/INSERT INTO t1(v0) VALUES ('+Inf'::Double), ('+Inf'::Double);
/*DML*/INSERT INTO t1(v0) VALUES ('+Inf'::Double);
/*DML*/INSERT INTO t2(v2) VALUES (673041184);
/*DML*/INSERT INTO t2(v2, v3) VALUES (212832748, false);
/*DML*/INSERT INTO t2(v3, v0, v2) VALUES (true, 0.9397291016687526, 462373142);
/*DML*/INSERT INTO t2(v1, v2, v0, v3) VALUES (false, 462373142, 0.6388418793650567, true);
/*DML*/INSERT INTO t2(v3, v0) VALUES (true, 0.6388418793650567);
/*DML*/INSERT INTO t2(v0, v2, v3) VALUES (0.31756635573567127, 104424209, false);

Might be related to #11464

Not sure if this is should be classified as a bug or just as an error message that could be improved.
I tested on Postgres, MySQL, and SQL Server and all fail because you cannot have duplicate table names in the FROM list.


factories reuse member injector. Usefull when factories are recycled …

…themselves

Coverage increased (+0.03%) to 95.048% when pulling 5bde01717f4dfc400cab2758f342373d8e4ab17e on sni/factories-reuse-member-injector into b9cbd3cf42f7f6466f66c992a1f35f2ce8c79262 on master.

👍


Find co-authors for a PEVM paper

Probably some folks at Polygon that would be interested in this.

Hello I am interested! My tg is https://t.me/imcfs

@shouc Awesome! I have contacted you on Telegram :pray:


Adds possibility of outputting dump to the console

This would make it more practical to get this data from another task or program through a shell call.

Closing as I notice this was already supported but not documented.

Closing as I notice this was already supported but not documented.

@brunophilipe Could you consider repurposing this PR to add documentation?

Sure! I'll open another one so not to mess with the git log.


[cheffs] Don't iterate parent object on exist? call

Previously, this code determined if an object existed by doing the
following:
parent.children.any? { |child| child.api_child_name == api_child_name }

For organizations and object types with a small number of total objects,
this wasn't problematic; however, it has very bad worst-case behavior.
For example, if a user was attempting to restore an organization with
30k client records to an empty organization, each client upload would do
the following:

Run GET /clients

Iterate the list returned in (1) normalizing the clients names along
the way.

Upload the client via POST when exist? returned false.

When the clients don't exist, this means step (2) will always iterate
over every member returned in step (1).  By the time you get into the
1000s of clients, this iteration dominates the running time of the
process.  For instance, consider the following ruby profile data:
Measure Mode: wall_time
Thread ID: 16939380
Fiber ID: 22163920
Total: 109.860468
Sort by: self_time

 %self      total      self      wait     child     calls  name
 26.83     29.475    29.475     0.000     0.000      500   <Class::IO>#select
  8.60     38.876     9.446     0.000    29.430   464125   <Class::Chef::ChefFS::PathUtils>#join
  7.02     12.226     7.717     0.000     4.509   928750   Chef::ChefFS::FileSystem::ChefServer::RestListEntry#api_child_name
  6.79      7.459     7.459     0.000     0.000   930250   String#gsub
  5.31      5.834     5.834     0.000     0.000  2320625   <Class::Chef::ChefFS::PathUtils>#regexp_path_separator
  3.33      3.654     3.654     0.000     0.000      500   OpenSSL::X509::Store#set_default_paths
  3.28     42.482     3.606     0.000    38.876   464125   Chef::ChefFS::FileSystem::BaseFSObject#initialize
  2.95      3.244     3.244     0.000     0.000   930250   <Class::File>#extname
  2.29     48.421     2.513     0.000    45.908   483375  *Class#new

38 wall clock seconds spent in PathUtils.join (part of the name
normalization during the list walk)
Note, an alternative might be to skip the exist? check completely,
opting to blindly POST and then rescuing the 409 and retry with a PUT.
Experimentation shows that PathUtils.join can also be improved
substantially; however, I'll leave those for a follow-up PR.
Signed-off-by: Steven Danna<EMAIL_ADDRESS>Check List

[ ] New functionality includes tests
[x] All tests pass
[x] RELEASE_NOTES.md, has been updated if required (not required for bugfixes, required for API changes)
[x] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

now i'm worried, though, that beating on exists? will beat on the API...
there's probably a better way to fix this replacing or augmenting the array with hash lookups, but when i look at the object model here i kinda want to rewrite it all...

now i'm worried, though, that beating on exists? will beat on the API...

It is exchanging 1 API request for another (a list operation or a get of a particular object), but yes, the object fetch is potentially more work than the list in cases where the object exists and is large.

The list operation in the parent is cache, however, if you are creating a bunch of new things it ends up always being uncached since we reset it on post:
https://github.com/chef/chef/blob/c20f0740ce2fce5f3968e9f18a2ac8ac6c9b779f/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb#L153

cc @chef/client-core


GH-35627: [C++][Format][Integration] Add string view to the arrow format

String view (and equivalent non-utf8 binary view) is an alternative representation for
variable length strings which offers greater efficiency for several common operations.
This representation is in use by UmbraDB, DuckDB, and Velox. Where those databases use
a raw pointer to out-of-line strings this PR uses a pair of 32 bit integers as a
buffer index and offset, which

makes explicit the guarantee that lifetime of all character data is equal
to that of the array which views it, which is critical for confident
consumption across an interface boundary
makes the arrays meaningfully serializable and
venue agnostic; directly usable in shared memory without modification
allows easy validation

Changes outside the C++ implementation:

New types added to Schema.fbs
Message.fbs amended to support variable buffer counts between string view chunks
datagen.py extended to produce integration JSON for string view arrays
Columnar.rst amended with a description of the string view format

Changes to the C++ implementation:

The new types are available with new subclasses of DataType, Array, ArrayBuilder, ...
The values of string view arrays can be visited as std::string_view as with StringArray
String view arrays can be round tripped through IPC, parquet, and integration JSON
A variant of the string view type utf8_view(/*has_raw_pointers=*/true) is supported
which uses raw pointer views. This enables zero copy interop with code which uses
raw pointer views.
Conversions are provided between index/offset view arrays, raw pointer view arrays, and
regular string arrays.

Closes: #35627

Added some benchmarks to compare views to other strings: sort, filter and take.


[stable/sonatype-nexus]: added support for service account

What this PR does / why we need it:
Add the possibility to specify an existing Kubernetes service account, or let the system to create one automatically.
This allows to give specific permissions to the Kubernetes service account used by Nexus instead of using the default service account.
In particular, it makes simpler to give the permissions in order to be able to upload the backup to GCP.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] DCO signed
[X] Chart Version bumped
[X] Variables are documented in the README.md
[X] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign

Hello, all commits need signed in order for the pull request to be merged into the repository: https://github.com/helm/charts/pull/20032/checks?check_run_id=383520783


How to reconcile image-heavy pages with text-heavy descriptions to allow text search

Some pages have a heavy amount of images describing the issue.  Some, like this one:
admin-docs/how-to-build-data-visualisation-components.md
Hold almost EVERYTHING in images.  Text made into images in order to color code, create sections, arrows, etc.
While this is very useful for instructional purposes, it impedes the text search to find anything within that page.  How do we reconcile those two scenarios?

Agree, we'll need to find a strategy to write that page using MD tools and not images. Images will also make it more complex to translate it.

Agree completely with everything said. This will be rewritten and redesigned in the next 1-2 months.


[ISSUE #7296] [TASK 2] Add ChannelEventListener for MQClientAPIImpl

add heartbeat when channel connect

Which Issue(s) This PR Fixes

Fixes #7323
Brief Description
Add ChannelEventListener for MQClientAPIImpl

How Did You Test This Change?

Codecov Report

Merging #7324 (2686759) into develop (e11e294) will increase coverage by 0.00%.
The diff coverage is 52.63%.

@@            Coverage Diff             @@
##             develop    #7324   +/-   ##
==========================================
  Coverage      42.69%   42.70%
- Complexity      9474     9475    +1
==========================================
  Files           1152     1152
  Lines          82721    82737   +16
  Branches       10781    10784    +3
==========================================
+ Hits           35315    35330   +15
- Misses         42997    43000    +3
+ Partials        4409     4407    -2

Files Changed
Coverage Δ

...rocketmq/client/impl/factory/MQClientInstance.java
44.07% <35.71%> (-0.25%)
:arrow_down:

...g/apache/rocketmq/client/impl/MQClientAPIImpl.java
23.22% <100.00%> (+0.10%)
:arrow_up:

...e/rocketmq/remoting/netty/NettyRemotingClient.java
43.47% <100.00%> (+0.29%)
:arrow_up:

... and 22 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Image transparency replaced with checkerboard on zoom

A PNG image with transparency is respected on the preview image within the chat stream:

But not in the zoomed view:

Where the transparency is replaced with a checkerboard.
Because of the checkerboard background, I figure there's a chance this was already discussed, and is intentional behavior. If so, this issue can be closed.

Apparently this is only the case when Pan & Zoom is disabled. Turning Pan & Zoom to enabled causes the transparency to be respected.

@zulipbot claim

@shidarin what should be the expected behaviour?
is it to show background color instead of checkerboard?

That was my expected behavior- display the image over the background color while respecting transparency.
I initially thought that the checkerboard was a concious design decision, but it goes away when you click the pan & zoom button. That makes me think it's a bug.

so what change should be done?

I would determine what's causing the checkerboard to appear, then adjust that to be the background color instead.

Discussed this a bit with @timabbott in #issues:
Some pertinent bits:

Tim Abbott: It seems like it's clearly a bug that they are different between the two views. How we want to resolve it is a bit ambiguous. I think we originally did the checkboard thing so that it's clear if you have a transparent image that it is transparent (otherwise, you might think it has a blue background, which could be confusing).

Tim Abbott: So I suspect we'd be happier to flip it to always due the blue background, but I'd be interested in others' thoughts.

So, anyone have any thoughts on checkboard vs the blue background?

@zulipbot abandon

My concern here would be in cases where a transparent png is made up of mainly blue color. The checkerboard design helps in eliminating most of such cases due to its frequent and consistent changes, so worst case, it is like looking at an image through a net, but the image is still visible.

I think the current thinking is we will eventually want to make the background controllable by an option.

@zulipbot claim

Experienced this issue again today on 2.0 on both CZO and a self hosted instance (both running the 1.8.1-rc) it was on both white and dark themes, but reset itself when I changed apps to start a screen capture. FYI, changing apps does seem to reset it frequently. Hard to capture.


rancher/api-ui: migrate from Drone to Github Actions

We need to move off Drone in the coming months and rely on Github Actions for our builds.
We should look at our Drone configuration on rancher/api-ui and see how much work is required to migrate to Github Actions. We may have other things running Drone to factor in, such as E2E tests.

Internal reference: SURE-7926

Linking all issues

https://github.com/rancher/dashboard/issues/10635
https://github.com/rancher/dashboard/issues/10634
https://github.com/rancher/dashboard/issues/10633


iOS10 infinite loop when dismissing list

There is a part where the loop never ends on iOS10, swift 2.2
for index in 0 ... self.constraints.count - 1 {
						let constraint: NSLayoutConstraint = self.constraints[index] as NSLayoutConstraint

						if (constraint.firstItem as! NSObject == self && constraint.firstAttribute == .Height) {
							constraint.constant = height
						}
					}

on KSTokenView
any ideas?

Upon further investigation the problem is here:
if (frame.size.height != tokensMaxY) {
				tokenFieldDelegate?.tokenFieldShouldChangeHeight(tokensMaxY)
			}

because at one point the frame.size.height is 31.0 and tokensMaxY is 31.065463 !!!

This seems to solve the problem:
if (frame.size.height != round(tokensMaxY)) {
   tokenFieldDelegate?.tokenFieldShouldChangeHeight(tokensMaxY)
}

Added PR for this: https://github.com/khawars/KSTokenView/pull/56

@netgfx Please try to use latest commit with stable version of Xcode 8.0. I actually couldn't replicate this issue. If you still face this issue, please reopen.


Adding support for enabling/disabling buttons.

Here's a contribution for enabling/disabling touch bar buttons. The TouchBarViewAction is extended with a method to determine if the action is enabled. By using the SwingTouchBarActionWrapper with your Swing action the TouchBarButton listens to whether the button should be enabled or disabled. The (XCode) JavaTouchBarItem class is modified to determine if the button is enabled or disabled. For SWT a separate similar implementation can be created to achieve the same result.

You also have to the org.mockito dependency to the pom-debug.xml. If you can do that and rename the SwingTouchBarActionWrapper to SwingTouchBarViewAction I can merge the pull request.

Mockito added to pom-debug. Can you live with SwingTouchBarActionDelegate because it is a delegate, not an action. It delegate to the Action passed to it via the constructor.


Lines in sudo_local are duplicated if already present

As per https://linkarzu.com/posts/macos/auth-apple-watch/#installation-with-script:
<EMAIL_ADDRESS>took 4s
[24/11/10] kubernetes ()
❯ cat sudo_local
# sudo_local: local config file which survives system update and is included for sudo
# uncomment following line to enable Touch ID for sudo
auth optional /opt/homebrew/lib/pam/pam_reattach.so
auth sufficient pam_watchid.so
auth       sufficient     pam_tid.so
# sudo_local: local config file which survives system update and is included for sudo
# uncomment following line to enable Touch ID for sudo
auth       sufficient     pam_tid.so
auth sufficient pam_watchid.so

@linkarzu Seen as this was originally prompted by your blog post, thought I'd let you know it's been fixed now.

Appreciate the tag @Logicer16, so quick question then, let's say I'm following my guide, it will not add the extra lines at the bottom of the file, and it also won't touch my pam_reattach.so or other existing config?

When modifying sudo_local, it should preserve all other lines and will no longer add duplicate lines. This means that if pam_watchid.so is already present anywhere in the file, no change will be made.
All it requires is the pam_tid.so line be present anywhere in the file. This is so the pam_watchid.so line can be "anchored" somewhere in the file. If it's not present, no change is made as to not break the rest of your config.
For example, If you start with:
# sudo_local: local config file which survives system update and is included for sudo
auth optional /opt/homebrew/lib/pam/pam_reattach.so
# uncomment following line to enable Touch ID for sudo
# auth       sufficient     pam_tid.so

Your resulting config should be:
# sudo_local: local config file which survives system update and is included for sudo
auth optional /opt/homebrew/lib/pam/pam_reattach.so
# uncomment following line to enable Touch ID for sudo
auth       sufficient     pam_tid.so
auth sufficient pam_watchid.so


Check manifest fields for type errors.

Signed-off-by: dblock<EMAIL_ADDRESS>Description

Add type annotations and type checking to manifest fields, catching ref values that are floats instead of strings.
Bring in dataclass type annotation checker from https://gist.github.com/svermeulen/8a6ad727113a6d07f78332152c1d33b2, this should really be PRed upstream to https://github.com/agronholm/typeguard/issues/161, I might take it up.
Inherit TestManifest from Manifest, enabling from_file and from_path, add tests.

Issues Resolved
Closes https://github.com/opensearch-project/opensearch-build/issues/470.
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

This seems like a large/complex amount of work when all the types in the build manifest are strings. Is there a usecase where we need to support numeric values?
Could we do something simpler where we automatically convert all values to strings?

I see the following options.

We could not merge this and str() the ref on a git repo. This would be a hack to work around the fact that 1.1 is of type float and not a string, and there's no guarantee that a branch name such as 1.01 doesn't suddenly convert to a string 1.099999 or something like that in the future, which will be hard to debug.
We could check explicitly that this one field is an str instead of adding a typechecker. Feels not very future-proof. Plus the check as is also catches issues such as not specifying a dictionary where it should be one - it's an actual validator for manifest schema.

WDYT?

@peternied LMK what you think - this does fix a bug and prevents future bugs.

Codecov Report

Merging #485 (0972e82) into main (3a6dbae) will increase coverage by 1.93%.
The diff coverage is 87.73%.

@@            Coverage Diff             @@
##             main     #485      +/-   ##
==========================================
+ Coverage   69.31%   71.25%   +1.93%
==========================================
  Files          58       59       +1
  Lines        1509     1607      +98
==========================================
+ Hits         1046     1145      +99
+ Misses        463      462       -1

Impacted Files
Coverage Δ

...ow/src/ci_workflow/ci_check_gradle_dependencies.py
100.00% <ø> (ø)

...src/manifests_workflow/component_opensearch_min.py
100.00% <ø> (ø)

...le-workflow/src/manifests/dataclass_typechecked.py
79.03% <79.03%> (ø)

bundle-workflow/src/manifests/build_manifest.py
100.00% <100.00%> (ø)

bundle-workflow/src/manifests/bundle_manifest.py
100.00% <100.00%> (ø)

bundle-workflow/src/manifests/input_manifest.py
100.00% <100.00%> (ø)

bundle-workflow/src/manifests/manifest.py
96.66% <100.00%> (+0.11%)
:arrow_up:

bundle-workflow/src/manifests/test_manifest.py
100.00% <100.00%> (+100.00%)
:arrow_up:

...workflow/src/manifests_workflow/input_manifests.py
95.65% <100.00%> (ø)

bundle-workflow/src/system/properties_file.py
97.36% <100.00%> (ø)

... and 2 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c678193...0972e82. Read the comment docs.

What about defining a schema document and validating?  Implemented something close on my fork Schematize and validate bundle manitests

I like the schema idea better. Do you want to finish that?

@dblock Could you pick it up the schema change and make a new PR?

Closing in favor of https://github.com/opensearch-project/opensearch-build/pull/509.


Improve documentation

This pull request was written several weeks ago, but I finally got around to rebase it onto main.  It consists of two commits:

A commit that improves documentation within the package, including demo.rhm and the Scribble files;
A commit that improves small documentation in the repo, namely the Markdown files.

Thank you very much!


Feature: Support custom or no S3 prefixes on keys for self-hosted caching

When using this action with a self-hosted bucket, runs-on/cache will save to a bucket key along the lines of s3://bucket/cache/${user}/${repo}/....
Would it be possible to add an env var to customise the format of this key, or alternatively an env var to disable the prefix used by the action and to simply use the key given in the key action property, with no prefix?
For example, my cache key has slashes in it which, if placed in the root of the bucket, would put the cache where I want it to be:
      - name: Init Maven repo cache
        env:
          RUNS_ON_S3_BUCKET_CACHE: ${{ steps.resolve.outputs.bucket }}
          RUNS_ON_AWS_REGION: ${{ steps.resolve.outputs.region }}
        uses: runs-on/cache@v4
        with:
          path: ~/.m2/repository
          key: maven-repo-cache/${{ runner.os }}-${{ github.repository }}/${{ hashFiles('**/pom.xml') }}

But with the prefix added by the action, it actually ends up in: s3://${bucket}/cache/${user}/${repo}/${hash}/maven-repo-cache/${os}-${user}/${repo}/${hash}
This makes it a bit more awkward to have a generalised lifecycle rule to manage caches, since the runs-on cache prefix isn't where my other caches are configured to be.
For reference, the creation of the prefix path can be found here:
https://github.com/runs-on/cache/blob/1def6032df3720faed95cd0be475a6536b19790e/src/custom/backend.ts#L95
Cheers!

This functionality could also solve a problem I want to solve: having a cross-repository cache.
I have some databases that use my custom-developed actions that are the same across all repositories. Configuring cache prefixes would allow me to have a central workflow running on a cron to update the databases, cache them, and later use said cache on all other repos inside my organization.

I'm running into this issue to. We have a reusable deployment workflow with cache for helm. I can already control read/read-write access by IAM policies to S3 bucket and paths. I'd love to easily reuse helm cache in different repositories that use single reusable workflow.


Confirm mining has been removed/disabled

There are still some open comment threads in reviews here on the Chrome Web Store, referring to cryptocurrency mining. It appears you have removed mining in commits e58c339bf9162f4ec3d5024bce9b04f5deb7a565 and f041b1472091fdef8b3c3c088c5653b44cdb2bbe.
Can you confirm that mining is now fully disabled, and that you won't be adding it back without a high-visibility notification to new and existing users?
You might want to close the loop on those reviews, as some potential users may get the impression that Clicky is still mining in the background, and decide to look elsewhere for a solution.

Mining has been removed, yes, and I have no plans to add it back in. I am, however, still considering offering a paid tier (for a very small one-off fee) to unlock 'pro' features, such as multiple team support and theming.
I do my best to respond to all comments, questions, and reviews on the Chrome Store. As far as I'm aware there are no comments that have gone unanswered.


TypeError: url_1.URL is not a constructor

Hi! I just try using your stuff, but I got this error:
TypeError: url_1.URL is not a constructor
    at HolidayAPI.push../node_modules/holidayapi/dist/holidayapi.js.HolidayAPI.createUrl (holidayapi.js:71)
    at HolidayAPI.<anonymous> (holidayapi.js:80)
    at step (holidayapi.js:44)
    at Object.next (holidayapi.js:25)
    at holidayapi.js:19
    at new ZoneAwarePromise (zone-evergreen.js:960)
    at push../node_modules/holidayapi/dist/holidayapi.js.__awaiter (holidayapi.js:15)
    at HolidayAPI.push../node_modules/holidayapi/dist/holidayapi.js.HolidayAPI.request (holidayapi.js:76)
    at HolidayAPI.<anonymous> (holidayapi.js:123)
    at step (holidayapi.js:44)
    at resolvePromise (zone-evergreen.js:798)
    at resolvePromise (zone-evergreen.js:750)
    at zone-evergreen.js:860
    at ZoneDelegate.invokeTask (zone-evergreen.js:399)
    at Object.onInvokeTask (core.js:41264)
    at ZoneDelegate.invokeTask (zone-evergreen.js:398)
    at Zone.runTask (zone-evergreen.js:167)
    at drainMicroTaskQueue (zone-evergreen.js:569)
    at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:484)
    at invokeTask (zone-evergreen.js:1621)

Here is my code in my Angular 9 project:
import { Injectable } from '@angular/core';
import { HolidayAPI } from 'holidayapi';

@Injectable({providedIn: 'root'})
export class YearService {
    holidayapiKey = 'my key code';
    holidayApi = new HolidayAPI({
        key: this.holidayapiKey,
    });

    getSpecialDays() {
        const params = { country: 'HU', language: 'hu', year: 2020 };

        this.holidayApi.holidays(params).then((data: any) => {
            console.log('holiday result', data);
        });
    }
}

What is the problem here? How can I use your service from Angular 9?

Hey @daevne, hope you're doing well.
This is a Node.js library and isn't meant for using with front-end JavaScript code.
If nothing else, you wouldn't want your API key available in an insecure fashion. Your best bet would be to proxy your requests through your own back end service.
If you insist on venturing down the insecure path, our API is RESTful so you can just make an AJAX request (using fetch, or whatever your request lib du jour is) and hit the API endpoints directly.


Capture inline action data

I wrote one contract and I want to use inline action to transfer token to another account and get the transfer MEMO after the action is done.
My question is :
How can i get the inline action data ?  I not found the action transfer data inside the block.
Is that possible to get the inline action data inside contract ?

I call the inline transaction code , I can't find the eos transfer action inside the block. while the transfer is really successful.
eosio_assert(total.is_valid(), "invalid quantity");
eosio_assert(total.amount > 0, "must transfer positive quantity");
    log("Start to transfer: \n");

    action(permission_level{player, N(active)}, N(eosio.token),
        N(transfer), std::make_tuple(player, _self, total, msg)).send();

Hi @vingo555,

How can i get the inline action data ? I not found the action transfer data inside the block.

The inline action information is not included inside a block, this is because the information can be inferred by the generating transaction when you do a replay

Is that possible to get the inline action data inside contract ?

If it is inside the same action which generates the inline action, you should have the information of the payload before you send it. If it is under different action, as far as I know there's now way for you to get the payload of inline action generated by another action.

I wrote one contract and I want to use inline action to transfer token to another account and get the transfer MEMO after the action is done.

If this is the use case that you want, and either the sender/ receiver is your contract, I think one possible way that you can do is by utilising the require_recipient of eosio.token::transfer. The require_recipient will forward the action payload to both the sender & receiver apply handler, and from there you can do whatever you want with the payload.


nftables: drop services prefix in an error message

Motivation for this change
http://nixos.org/nixos/options.html#networking.firewall
Things done

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

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Thanks!


Query GraphQL backend with HTTP GET

We're trying to query Magento's GraphQL endpoint with a GET request: https://develop.pwa-venia.com/graphql
Magento uses it's own caching mechanism via Varnish: https://devdocs.magento.com/guides/v2.3/graphql/caching.html

Magento can cache pages rendered from the results of certain GraphQL queries with full-page caching. Full-page caching improves response time and reduces the load on the server. Without caching, each page might need to run blocks of code and retrieve large amounts of information from the database. Only queries submitted with an HTTP GET operation can be cached. POST queries cannot be cached.

Could you try useGETForQueries option with the canary version of this PR ?
https://github.com/Urigo/graphql-mesh/pull/480

Thanks a lot! Will check it out soon!

Available in 0.1.19!


Cursor position issue for prefix & noImmediatePrefix

I'm facing an issue while using prefix in React. When I add the first character, the cursor jumps one place backward, so the next character goes before the first character.
Also sometimes, when I want to clear the input with backspace, some of the numbers steal remain.
Here is a demo:
JsFiffle fork:
https://jsfiddle.net/zub69ohg/2/
demo:

hmm, seems there is something wrong with noImmediatePrefix option.

Oh sorry, seems I missed tagging this issue when released the fix:
https://github.com/nosir/cleave.js/releases/tag/v1.3.7
It should be fixed a while ago, closing the ticket, please let me know if you have any questions


Add DID support

Sage should have the ability to view a list of DIDs and create a new DID.

Going to hold off on DID transfer for a bit. DIDs have been implemented to feature parity with the reference wallet GUI.


Always failing on bus_ids

I have installed latest release using the script on main git page.
I use Debian with eGPU nVidia GTX1660 with nVidia driver successfully installed.
I tried to use the all-ways-egpu utility.
I run sudo all-ways-egpu setup.
This works well, identifies my PCI devices (internal Intel VGA and external nVidia).
I end up with following files in /usr/share/all-ways-egpu:
Filename: 0
File content: 0

Filename: 1
File content: 1

Filename: max-retry
File content: 2

Filename: egpu-bus-ids
File content 0000:04:00.0 nvidia

Filename: user-bus-ids
File content: 0000:00:02.0

During setup, I've responded YES to following questions:
0000:04:00.0 VGA compatible controller: NVIDIA Corporation TU116 [GeForce GTX 1660] (rev a1)
Is this the eGPU to set as primary? [y/N]
y
Using 0000:04:00.0 as primary

0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01)
Is this the iGPU/dGPU to set as internal? [y/N]
y
Using 0000:00:02.0 as internal

Recommended if using Method 2: Attempt to set boot_vga flag at startup? [y/N]
y

I got message about successful save of configuration.
However, no matter what, when I try to use all-ways-egpu status I get
Bus IDs in existing file not recognized. Please delete /usr/share/all-ways-egpu/user-bus-ids and re-run setup
Needless to say - I've re-run the program multiple times, trying to delete all files in the folder or just the egpu-bus-ids, but it seems not to help at all.
Also the service at the start fails to configure eGPU, of course.
Any idea what's wrong and why my config fails to check?

@sanchosk
Can you post the output of the command: lspci -D -k
It looks like the script is not correctly parsing the iGPU's kernel driver, the user-bus-ids file should have been set up to be something like: 0000:00:02.0 i915 (assuming the iGPU is using the i915 driver)

Sure.
Here it is:
0000:00:00.0 Host bridge: Intel Corporation 11th Gen Core Processor Host Bridge/DRAM Registers (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel modules: igen6_edac
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel modules: i915
0000:00:04.0 Signal processing controller: Intel Corporation TigerLake-LP Dynamic Tuning Processor Participant (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: proc_thermal
	Kernel modules: processor_thermal_device_pci_legacy
0000:00:06.0 PCI bridge: Intel Corporation 11th Gen Core Processor PCIe Controller (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:07.0 PCI bridge: Intel Corporation Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #0 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:07.1 PCI bridge: Intel Corporation Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #1 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:07.2 PCI bridge: Intel Corporation Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #2 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:07.3 PCI bridge: Intel Corporation Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #3 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:08.0 System peripheral: Intel Corporation GNA Scoring Accelerator module (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
0000:00:0a.0 Signal processing controller: Intel Corporation Tigerlake Telemetry Aggregator Driver (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: intel_vsec
	Kernel modules: intel_vsec
0000:00:0d.0 USB controller: Intel Corporation Tiger Lake-LP Thunderbolt 4 USB Controller (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
0000:00:0d.2 USB controller: Intel Corporation Tiger Lake-LP Thunderbolt 4 NHI #0 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: thunderbolt
	Kernel modules: thunderbolt
0000:00:0d.3 USB controller: Intel Corporation Tiger Lake-LP Thunderbolt 4 NHI #1 (rev 01)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: thunderbolt
	Kernel modules: thunderbolt
0000:00:12.0 Serial controller: Intel Corporation Tiger Lake-LP Integrated Sensor Hub (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: intel_ish_ipc
	Kernel modules: intel_ish_ipc
0000:00:14.0 USB controller: Intel Corporation Tiger Lake-LP USB 3.2 Gen 2x1 xHCI Host Controller (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
0000:00:14.2 RAM memory: Intel Corporation Tiger Lake-LP Shared SRAM (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
0000:00:15.0 Serial bus controller: Intel Corporation Tiger Lake-LP Serial IO I2C Controller #0 (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
0000:00:15.1 Serial bus controller: Intel Corporation Tiger Lake-LP Serial IO I2C Controller #1 (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
0000:00:15.3 Serial bus controller: Intel Corporation Tiger Lake-LP Serial IO I2C Controller #3 (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
0000:00:16.0 Communication controller: Intel Corporation Tiger Lake-LP Management Engine Interface (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: mei_me
	Kernel modules: mei_me
0000:00:1d.0 PCI bridge: Intel Corporation Tiger Lake-LP PCI Express Root Port #10 (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: pcieport
0000:00:1f.0 ISA bridge: Intel Corporation Tiger Lake-LP LPC Controller (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
0000:00:1f.3 Audio device: Intel Corporation Tiger Lake-LP Smart Sound Technology Audio Controller (rev 20)
	Subsystem: Realtek Semiconductor Co., Ltd. Device 3000
	Kernel modules: snd_hda_intel, snd_soc_avs, snd_sof_pci_intel_tgl
0000:00:1f.4 SMBus: Intel Corporation Tiger Lake-LP SMBus Controller (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
	Kernel driver in use: i801_smbus
	Kernel modules: i2c_i801
0000:00:1f.5 Serial bus controller: Intel Corporation Tiger Lake-LP SPI Controller (rev 20)
	Subsystem: Framework Computer Inc. Device 0001
0000:01:00.0 Non-Volatile memory controller: Sandisk Corp SanDisk Extreme Pro / WD Black SN750 / PC SN730 / Red SN700 NVMe SSD
	Subsystem: Sandisk Corp SanDisk Extreme Pro / WD Black SN750 / PC SN730 / Red SN700 NVMe SSD
	Kernel driver in use: nvme
	Kernel modules: nvme
0000:02:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
	Subsystem: Intel Corporation Device 0000
	Kernel driver in use: pcieport
0000:03:01.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
	Subsystem: Intel Corporation Device 0000
	Kernel driver in use: pcieport
0000:03:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
	Subsystem: Intel Corporation Device 0000
	Kernel driver in use: pcieport
0000:03:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
	Subsystem: Intel Corporation Device 0000
	Kernel driver in use: pcieport
0000:04:00.0 VGA compatible controller: NVIDIA Corporation TU116 [GeForce GTX 1660] (rev a1)
	Subsystem: NVIDIA Corporation Device 1324
	Kernel driver in use: nvidia
	Kernel modules: nvidia
0000:04:00.1 Audio device: NVIDIA Corporation TU116 High Definition Audio Controller (rev a1)
	Subsystem: NVIDIA Corporation Device 1324
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
0000:04:00.2 USB controller: NVIDIA Corporation TU116 USB 3.1 Host Controller (rev a1)
	Subsystem: NVIDIA Corporation Device 1324
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
0000:04:00.3 Serial bus controller: NVIDIA Corporation TU116 USB Type-C UCSI Controller (rev a1)
	Subsystem: NVIDIA Corporation Device 1324
0000:17:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge DD 2018] (rev 06)
	Subsystem: Intel Corporation Device 0000
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
0000:aa:00.0 Network controller: Intel Corporation Wi-Fi 6E(802.11ax) AX210/AX1675* 2x2 [Typhoon Peak] (rev 1a)
	Subsystem: Intel Corporation Wi-Fi 6 AX210 160MHz
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi

Seems like adding manually the driver name (i915) helps - now all-ways-egpu -h starts and prints help!

I think I found the issue.
The thing is - there is kernel module, but not kernel driver for my i915.
So the lspci -D -k shows nothing for the card, as the grep command looks for "Kernel driver" - that line is missing.

Closing the issue - seems like during previous "sandbox testing" I have blacklisted the i915 module (!!!) and this caused the issue.

@sanchosk
From the output you posted above it looks like the Intel iGPU is not loading it's driver. In other words, without the eGPU it's probably not using the iGPU and is falling back to software rendering. Is that an intentional choice?

@sanchosk From the output you posted above it looks like the Intel iGPU is not loading it's driver. In other words, without the eGPU it's probably not using the iGPU and is falling back to software rendering. Is that an intentional choice?

I've been having the same issue but the iGPU is loading the i915 driver but it's still not working. I'm a bit stumped
0000:00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] (rev 0c) 	Subsystem: Framework Computer Inc. Device 0002 	Kernel driver in use: i915 	Kernel modules: i915
0000:81:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] (rev c0) 	Subsystem: ASUSTeK Computer Inc. Device 04fa 	Kernel driver in use: amdgpu 	Kernel modules: amdgpu


Changed ping to netcat in Internet connection test

Follow up #10285
cc @thockin @quinton-hoole

PTAL

LGTM.  Lets wait for the Jenkins GCE e2e to complete, and then I'll label ok-to-merge.

@k8s-bot Test this please.

Aargh! Jenkins is broken: jenkinsci/ghprb-plugin#117
Please merge anyway - this is low enough risk.
ok-to-merge

need one more... @davidopp ?

(Also shippable isn't happy...)

LGTM
OK to merge once shippable succeeds.


Validate argument names

The script should be aborted if a regex isn't matched, to avoid arbitrary code execution

Hi, is anyone working on this?

I'm not!
For anyone interested, it's need to add something like abort_if_unsafe_arg "$escaped_arg" right before this line and maybe after this one.

Here escaped_arg is the regex and arg is to be checked, right?

No, escaped_arg is equal to arg but with some dash vs underscore differences.
The regex is this one.


Feature Request - Due Date + calculation results

Hi,
Thanks for the really nice library.
Would be super nice if you can add:

Invoice Due Date attribute
some possibility to returns all calculation results like total etc.

Thanks in advance.

Saw this issue, will it be possible to have due dates in the future?

Thus since I found a solution I like to share..
Add in client object:
"custom1": `

                    Due Date: Date

`,

Result:

Thanks for your reply! This is exactly how we intended the custom fields. We will add due date later as standard field.

Hi, we added the calculation results to the returned object! Please let us know if anything is missing.


Move to jadx-decompiler organization

It is possible to transfer this repository to "jadx-decompiler" organization?

https://help.github.com/articles/about-repository-transfers/

@Neustradamus
Yes, it is possible to move jadx repository to jadx-decompiler organization, but is there is any reason to do that? Are there any advantages to have repository in organization?

@skylot: Better management...
You do not lost datas, there will have redirection, ... and if you do not like you can move here again after.

@Neustradamus
Current management format seems good and enough. If skylot decides to do that, it will be done.

Dear @jadx-decompiler, @skylot,
We are in 2024, 4,5yo after my initial request, can you do it?
Thanks in advance.


Test cases for MST transfer

Raw transaction as well as the ledger parameters to create automated tests

// MST transfer
// 0.1234 DNA
const src = {"version":4,"inputs":[{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","previous_output":{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","hash":"b111cf17bbf82edcaf2e62fa363822c2e8620357413184cc96916004f9b9d8ea","script":"dup hash160 [ d2b0d45dfdba50fbd227f968c79a29ece05144fb ] equalverify checksig","index":2},"script":"","sequence":4294967295},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","previous_output":{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","hash":"bfeafe95b4865b518b4c81a2e6ca6e3fc1bab5ff6f05688796681ffc13cc8e90","script":"dup hash160 [ d2b0d45dfdba50fbd227f968c79a29ece05144fb ] equalverify checksig","index":1},"script":"","sequence":4294967295}],"outputs":[{"address":"MNWVbJuNxq9FQNL1bWXx5sXiFRKjcFuuj9","attachment":{"version":1,"type":2,"symbol":"DNA","quantity":1234,"status":2},"value":0,"script_type":"pubkeyhash"},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","attachment":{"version":1,"type":2,"symbol":"DNA","quantity":6766,"status":2},"value":0,"script_type":"pubkeyhash"},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","attachment":{"version":1,"type":0},"value":40210000,"script_type":"pubkeyhash"}],"lock_time":0}
const des = {"ledger_inputs":[[{"version":{"type":"Buffer","data":[4,0,0,0]},"inputs":[{"prevout":{"type":"Buffer","data":[234,216,185,249,4,96,145,150,204,132,49,65,87,3,98,232,194,34,56,54,250,98,46,175,220,46,248,187,23,207,17,177,2,0,0,0]},"vout":2,"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"sequence":{"type":"Buffer","data":[255,255,255,255]}},{"prevout":{"type":"Buffer","data":[144,142,204,19,252,31,104,150,135,104,5,111,255,181,186,193,63,110,202,230,162,129,76,139,81,91,134,180,149,254,234,191,1,0,0,0]},"vout":1,"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"sequence":{"type":"Buffer","data":[255,255,255,255]}}],"outputs":[{"amount":{"type":"Buffer","data":[0,0,0,0,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,160,64,123,4,164,230,92,38,158,114,84,186,26,184,74,255,189,173,110,236,136,172]},"postfix":"01000000020000000200000003444e41d204000000000000"},{"amount":{"type":"Buffer","data":[0,0,0,0,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"postfix":"01000000020000000200000003444e416e1a000000000000"},{"amount":{"type":"Buffer","data":[80,142,101,2,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"postfix":"0100000000000000"}],"locktime":{"type":"Buffer","data":[0,0,0,0]},"timestamp":{"type":"Buffer","data":[]},"nVersionGroupId":{"type":"Buffer","data":[]},"nExpiryHeight":{"type":"Buffer","data":[]},"extraData":{"type":"Buffer","data":[]}},0,null,4294967295]],"associatedKeysets":["44'/2302'/1'/0/0","44'/2302'/1'/0/0"],"changePath":"44'/2302'/1'/0/0","outputsScript":"0200000000000000001976a914a0407b04a4e65c269e7254ba1ab84affbdad6eec88ac01000000020000000200000003444e41d20400000000000000000000000000001976a914d2b0d45dfdba50fbd227f968c79a29ece05144fb88ac01000000020000000200000003444e416e1a000000000000508e6502000000001976a914d2b0d45dfdba50fbd227f968c79a29ece05144fb88ac0100000000000000","sigHash":1,"segwit":false,"additionals":[],"options":{"version":4,"outputsPrefix":"040400","outputScriptChunks":[{"type":"Buffer","data":[2,0,0,0,0,0,0,0,0,25,118,169,20,160,64,123,4,164,230,92,38,158,114,84,186,26,184,74,255,189,173,110,236,136,172,1,0,0,0,2,0,0,0,2,0,0,0,3,68,78,65,210,4,0,0,0,0,0,0]},{"type":"Buffer","data":[0,0,0,0,0,0,0,0,25,118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172,1,0,0,0,2,0,0,0,2,0,0,0,3,68,78,65,110,26,0,0,0,0,0,0]},{"type":"Buffer","data":[80,142,101,2,0,0,0,0,25,118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172,1,0,0,0,0,0,0,0]}]}}
// 0.1 TST
const src = {"version":4,"inputs":[{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","previous_output":{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","hash":"b111cf17bbf82edcaf2e62fa363822c2e8620357413184cc96916004f9b9d8ea","script":"dup hash160 [ d2b0d45dfdba50fbd227f968c79a29ece05144fb ] equalverify checksig","index":1},"script":"","sequence":4294967295},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","previous_output":{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","hash":"b111cf17bbf82edcaf2e62fa363822c2e8620357413184cc96916004f9b9d8ea","script":"dup hash160 [ d2b0d45dfdba50fbd227f968c79a29ece05144fb ] equalverify checksig","index":2},"script":"","sequence":4294967295}],"outputs":[{"address":"MNWVbJuNxq9FQNL1bWXx5sXiFRKjcFuuj9","attachment":{"version":1,"type":2,"symbol":"TST","quantity":1000,"status":2},"value":0,"script_type":"pubkeyhash"},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","attachment":{"version":1,"type":2,"symbol":"TST","quantity":980,"status":2},"value":0,"script_type":"pubkeyhash"},{"address":"MT7By3irp1nzTvha3zGe7t8h61HtUSzTAn","attachment":{"version":1,"type":0},"value":40210000,"script_type":"pubkeyhash"}],"lock_time":0}
const des = {"ledger_inputs":[[{"version":{"type":"Buffer","data":[4,0,0,0]},"inputs":[{"prevout":{"type":"Buffer","data":[234,216,185,249,4,96,145,150,204,132,49,65,87,3,98,232,194,34,56,54,250,98,46,175,220,46,248,187,23,207,17,177,1,0,0,0]},"vout":1,"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"sequence":{"type":"Buffer","data":[255,255,255,255]}},{"prevout":{"type":"Buffer","data":[234,216,185,249,4,96,145,150,204,132,49,65,87,3,98,232,194,34,56,54,250,98,46,175,220,46,248,187,23,207,17,177,2,0,0,0]},"vout":2,"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"sequence":{"type":"Buffer","data":[255,255,255,255]}}],"outputs":[{"amount":{"type":"Buffer","data":[0,0,0,0,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,160,64,123,4,164,230,92,38,158,114,84,186,26,184,74,255,189,173,110,236,136,172]},"postfix":"01000000020000000200000003545354e803000000000000"},{"amount":{"type":"Buffer","data":[0,0,0,0,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"postfix":"01000000020000000200000003545354d403000000000000"},{"amount":{"type":"Buffer","data":[80,142,101,2,0,0,0,0]},"script":{"type":"Buffer","data":[118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172]},"postfix":"0100000000000000"}],"locktime":{"type":"Buffer","data":[0,0,0,0]},"timestamp":{"type":"Buffer","data":[]},"nVersionGroupId":{"type":"Buffer","data":[]},"nExpiryHeight":{"type":"Buffer","data":[]},"extraData":{"type":"Buffer","data":[]}},0,null,4294967295]],"associatedKeysets":["44'/2302'/1'/0/0","44'/2302'/1'/0/0"],"changePath":"44'/2302'/1'/0/0","outputsScript":"0200000000000000001976a914a0407b04a4e65c269e7254ba1ab84affbdad6eec88ac01000000020000000200000003545354e80300000000000000000000000000001976a914d2b0d45dfdba50fbd227f968c79a29ece05144fb88ac01000000020000000200000003545354d403000000000000508e6502000000001976a914d2b0d45dfdba50fbd227f968c79a29ece05144fb88ac0100000000000000","sigHash":1,"segwit":false,"additionals":[],"options":{"version":4,"outputsPrefix":"040400","outputScriptChunks":[{"type":"Buffer","data":[2,0,0,0,0,0,0,0,0,25,118,169,20,160,64,123,4,164,230,92,38,158,114,84,186,26,184,74,255,189,173,110,236,136,172,1,0,0,0,2,0,0,0,2,0,0,0,3,84,83,84,232,3,0,0,0,0,0,0]},{"type":"Buffer","data":[0,0,0,0,0,0,0,0,25,118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172,1,0,0,0,2,0,0,0,2,0,0,0,3,84,83,84,212,3,0,0,0,0,0,0]},{"type":"Buffer","data":[80,142,101,2,0,0,0,0,25,118,169,20,210,176,212,93,253,186,80,251,210,39,249,104,199,154,41,236,224,81,68,251,136,172,1,0,0,0,0,0,0,0]}]}}


NumPy bug affects MTUQ

A bug in newest version (1.16.0) of NumPy causes failed ObsPy imports.   A workaround is to specify numpy==1.15.4 in MTUQ's setup.py file.

Fixed in recent versions of numpy