Add the missing StrictConcurrency upcoming feature flag

SE-0362 § Proposals define their own feature identifier claims that an upcoming feature flag named StrictConcurrency exists and is equivalent to the -strict-concurrency=complete compiler flag. However, such a feature flag does not currently exist.
This is a problem for package maintainers attempting to add Sendable correctness to their own packages. Enabling full checking currently means either always building from the command line with -Xswiftc -strict-concurrency=complete setting manually specified or adding it to the swiftSettings for the appropriate target(s) in the package manifest. The former is easily forgotten, and the latter makes the package unusable as a dependency due to the use of "unsafe" flags. Allowing the use of .enableUpcomingFeature("StrictConcurrency") instead solves both issues.
As such, this PR adds the missing upcoming feature. As "unknown" upcoming feature names are silently ignored by the compiler, there are no backwards compatibility concerns.

@swift-ci please smoke test

+1 from me on this. I would love to enable this experimental feature on all our Swift on Server libraries to avoid regressing here.

Yeah additional context here is that this was discussed in the SSWG and it seems to be a missing feature. I'm trying to get more clarity on this and see if that's the right fix or something else should be done.
Thank you for the PR @gwynne

The absence of an upcoming feature flag for StrictConcurrency is deliberate at the moment. There are still several holes in the model for strict checking. The intention is to add a StrictConcurrency flag once those holes are filled.

What I'm trying to avoid here is having StrictConcurrency become an upcoming feature and then change behavior, e.g., because make the checking more restrict (e.g., as a bug for or deliberate change). Upcoming features need to be in the form that they would have in Swift 6, and strict concurrency isn't there yet.

Can we make it an experimental feature then? Just making opt-in easier would go a long way even if it is only used in CI builds.

We need something like this to exist in the short term (ideally 5.9!); we need to be able to enforce the strictest available concurrency checking and still have the package consumable by others.
It could simply be allowed at the SPM level — have a SwiftSetting like .strictConcurrency(.complete) for example that maps onto the -strict-concurrency argument to the compiler, and errors if swift version > 5? Effectively just white-listing that flag as "safe" for consumers?
Or just use a different name and an experimental feature here that won't clash with the future, so we can .enableExperimentalFeature("StrictConcurrencyComplete")?

I'll take a whack at this

Superseded by #66991, thanks @DougGregor and @FranzBusch!


Next steps

Next steps are really poorly documented. They are basically GitHub repos of code and not step-by-step docs that i would expect. On top of that the Xamarin one has very little detail at all for context on what to do here.
We're basically missing all the actual details of how this offline solution is architected, what components are part of it, what platforms we support, etc. this is such an exciting piece of technology and i'm just not finding these docs to help me get properly oriented.

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

ID: 916de6f5-ef41-c82b-5918-0c6149326aab
Version Independent ID: c7a4bb67-957d-f0a3-4a9f-e71035923f58
Content: Export your model to mobile
Content Source: articles/cognitive-services/Custom-Vision-Service/export-your-model.md
Service: cognitive-services
GitHub Login: @anrothMSFT
Microsoft Alias: anroth

@LyalinDotCom Thanks for bringing this to our attention. Your feedback has been shared with the content owner for further review.

please reassign to @PatrickFarley

please reassign to @PatrickFarley

@femsulu  please reassign to @PatrickFarley

@femsulu please unassign @anrothMSFT and assign this issue to @PatrickFarley

I've reordered and clarified the next steps so that rich content (docs) come first, followed by rich samples (with good READMEs) and then the plain sample. And the content type of each link is more clear.
https://github.com/MicrosoftDocs/azure-docs-pr/pull/76440
#please close


Might want to recommend a different way to set the voltage

"Connect to an XL330 servo and view the input voltage on Dynamixel Wizard, then adjust the screw on the voltage reducer until the input voltage is 5V"
My voltage reducers came set such that the output was 12V and needed many turns of the pot to start bringing that down, by which time the poor little servo had let the magic smoke out. Might have been user error my side but for my second attempt I used a PC fan instead, which was happy with 12V input until I had time to set the output voltage down to 5V.

Interesting. I haven't been able to destroy a servo this way. Are you sure it's dead? There is a recovery feature in the Dynamixel Wizard.

Burnt beyond recovery 😂 There's a small chance I had wires switched but I'm too chicken to try on another servo to find out. Possibly also caused by connecting the servo after power and USB?


supersid_extended format

Having "supersid_extended" as the log_format in the configuration file doesn't seem to do anything different to having "supersid_format".
When you have  "supersid_extended" set, pressing C shows the config as 'log_format = supersid_format' as well, and the daily log file (not the raw file) does not have a timestamp in the first column as the documentation suggests it should.

In fact setting to "sid_format" doesn't create the individual files either. It just creates the same "supersid_format", however it will create the files at that point in time if you manually tell it to using the onscreen menu. It is running on A Raspberry PI on a fully updated system...


Add statusline support for vim-airline

Could you kindly add statusline support for vim-airline? Thanks!

Yes, I just have to resolve this issue before: jacoborus/estilo#7

I didn't resolve the generator issue but created the airline theme anyway


Codespace laughing space system 4rgxjr9w773qprw

Purpose

...

Does this introduce a breaking change?

[ ] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

Get the code

git clone [repo-address]
cd [repo-name]
git checkout [branch-name]
npm install

Test the code

What to Check
Verify that the following are valid

...

Other Information

I assume this is an accidentally public PR, given the changes, so I'm closing.


[FLINK-6020] Introduce BlobServer#readWriteLock to synchronize file creation and deletion

This PR is based on #3873 and #3864.
This commit introduces a BlobServer#readWriteLock in order to synchronize file creation
and deletion operations in BlobServerConnection and BlobServer. This will prevent
that multiple put, delete and get operations interfere with each other.
The get operations are synchronized using the read lock in order to guarantee some kind of
parallelism.
What this PR does not address is the handling of concurrent writes and reads to the BlobStore. This could be solved via SUCCESS files in order to indicate the completion of a file. However, the first read operation should now happen strictly after the write operation due to the locking.

Thanks for the quick review @StefanRRichter. I will address your comment and also add a test case for the delete path.


New SQLite driver: capacitor-sqlite

This PR adds compatibility with capacitor-community/sqlite via a new adapter and accompanying plumbing and tests.
We could envisage asking capacitor-community/sqlite's maintainer to have a quick look to ensure that there's no flagrant misuse of its APIs. As it stands, all tests pass but using a mock database.
This adapter implementation is built on my understanding of electric and capacitor-community/sqlite documentation and codebase. Much more extensive real-world testing is imo required.

All requested changes implemented, all tests still pass. Thank you for the review! The only change that is more than a stylistic or readability refactor is the mutex implementation. I've left that conversation unresolved.

Hey @gregzo, good news, with the two small changes I've comment on this worked with my demo app (I've tested iOS but not android yet, but I don't think that will change anything) 😁
It looks like you also have an issue with pnpm-lock.yaml not being top to date (see the failed CI tests), I think all you need to do is run pnpm install to update it.

@samwillis pnpm-lock now up to date. FYI ran into this known pnpm issue: https://github.com/pnpm/pnpm/issues/1801
Manually created missing folders and js files to work around it.

@gregzo Could you run yarn format in clients/typescript please?

@kevin-dp yes of course, done in a09245e9914b8117daf0b7c8895872b122ebe2fc
My bad.

The E2E test failures seem to be caused by the fact that your branch is based on an older version of the server. When you rebase it on top of the latest main, the E2E problems should be resolved.

@alco Understood. The easiest would be to reset to 8a301ac51d9b81eb828f77827fda5a2ee67c3e66 and force push. After that I can rebase on main head. I that ok with you?

@gregzo Rebase looks great. Thanks!
I was just about to comment about the pnpm lockfile update. I've pushed a commit for it here.
Did you also get these warnings when you ran pnpm install?
$ pnpm install
Scope: all 6 workspace projects
clients/typescript                       |  WARN  deprecated<EMAIL_ADDRESS>clients/typescript                       |  WARN  deprecated<EMAIL_ADDRESS>e2e/satellite_client                     |  WARN  deprecated<EMAIL_ADDRESS>e2e/satellite_client                     |  WARN  deprecated<EMAIL_ADDRESS>Downloading registry.npmjs.org/typescript/5.1.3: 7.15 MB/7.15 MB, done
Downloading registry.npmjs.org/typescript/4.9.5: 11.62 MB/11.62 MB, done
Downloading registry.npmjs.org/react-native/0.68.0: 21.14 MB/21.14 MB, done
Downloading registry.npmjs.org/hermes-engine/0.11.0: 15.39 MB/15.39 MB, done
Downloading registry.npmjs.org/sql.js/1.8.0: 7.45 MB/7.45 MB, done
Downloading<EMAIL_ADDRESS>8.75 MB/8.75 MB, done
Downloading registry.npmjs.org/jsc-android/250230.2.1: 36.09 MB/36.09 MB, done
Downloading registry.npmjs.org/dprint-node/1.0.7: 10.55 MB/10.55 MB, done
 WARN  14 deprecated subdependencies found<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Packages: +12
++++++++++++
Progress: resolved 1844, reused 0, downloaded 1759, added 12, done
 WARN  Issues with peer dependencies found
clients/typescript
└─┬ react-native 0.68.0
  ├── ✕ unmet peer<EMAIL_ADDRESS>found 18.2.0
  └─┬ react-shallow-renderer 16.14.1
    └── ✕ unmet peer<EMAIL_ADDRESS>|| ^17.0.0": found 18.2.0

Done in 34.6s

I'm wondering if there are any fixes we need to apply to our deps. And it's curious that the lockfile version dropped to 6.0 from 6.1, even though I had just updated my pnpm to the latest version yesterday.
@balegas @kevin-dp

The E2E test failures seem to be caused by the fact that your branch is based on an older version of the server. When you rebase it on top of the latest main, the E2E problems should be resolved.

Rebased on electric/main and added changeset. E2E tests still fail though - happy to follow your lead if there's anything else I can do.

@alco Yes, I encountered the same warnings.


mistral gets error when running model: "Error: invalid file magic"

here is the test:
ollama run mistral

hello
Error: invalid file magic

works for me. had to manually redownload the ollama binary.

mistral requires at least ollama version 0.0.19 as it's in gguf format. if any sees this error, please upgrade to 0.0.19 or later


Reduce number of report share clones

Okay so, new idea. Instead of tacking on a new field I made a ReportState struct that delimits the values that need to be threaded through the entire flow from start to finish. This way it's more obvious what 's the main concern of the EarlyReportState* enums (the cypher text) and what is auxiliary data that must be passed along. Tell me what you think

SGTM 👍


Mobile responsiveness CalVCB case study

CalVCB case study is not responsive on mobile portrait orientation

There's no mockup of mobile but generally, things in columns or side-by-side would be stacked and content/text should not get cut off
A few screenshots from Android/Pixel 7a:

@xjensen  Url is https://innovation.ca.gov/our-work/projects/getting-compensation-to-more-california-crime-victims/

Okay, I'll look into it.

Hey @xjensen I found two minor things to fix on mobile if possible:
CalVCB - Mobile design QA


Upgrade to Babel v6.26.3?

Any plans to upgrade to Babel v6.26.3?

@josh @tricknotes Any news?

@josh @tricknotes It's an important upgrade, guys :+1:

@josh @tricknotes Any news?

@josh @tricknotes @kittens @danielma It's a bad idea to make this gem abandoned. Many Rails applications use this in production, and many gem have it as a dependency. I could help you to update the versions and maintain the gem.


Cannot read property 'tweenQueue' of undefined

Do you have an idea how i'll solve this ?
Thanks

I see the same error

Is it on this?

@yunda @chenglou Can the PR @jnrepo be merged in? I'm upgrading an old package that uses react-tween-state and it has the same issue.


Toast flood

Ionic version:  (check one with "x")
[ ] 2.x
[ ] 3.x
[x ] 4.x
I'm submitting a ...  (check one with "x")
[ ] bug report
[x ] feature request
When i present multiple toasts while the app is paused once it resumes the toasts are shown all at once. Wouldn't it be better if the toasts presented while the app is in background or paused are ignored? Or maybe show only the last one?

Hello! Thank you for the feature request. I'm going to move this issue over to our internal list of feature requests for evaluation. We are continually prioritizing all requests that we receive with outstanding issues. We are extremely grateful for your feedback, but it may not always be our next priority. I'll copy the issue back to this repository when we have begun implementation. Thanks!

This issue was moved to ionic-team/ionic-feature-requests#324


Account type FAQ should be in intro.

The fact that is is only available on some types of storage accounts (FAQ #1), should really be in the lead paragraph. It's kind of important.

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

ID: dcd3f99a-f522-6edb-6d39-eac1bb917956
Version Independent ID: 69e9c1e5-8deb-8092-46f4-6646d076fbe4
Content: Static website hosting in Azure Storage (Preview)
Content Source: articles/storage/blobs/storage-blob-static-website.md
Service: storage
GitHub Login: @MichaelHauss
Microsoft Alias: mihauss

@boomalator Thanks for the feedback! I have assigned the issue to the content author to evaluate and update as appropriate.

GPv2 storage accounts are where you can take advantage of all of the most recent storage features. I will add this information to the beginning of the quick start section.

#please-close

@boomalator We will now proceed to close this thread. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.


Mahsae patch mean imputation

FillMean is changed to FillNA(TimeSeries, method)
Implemented methods: mean, zero, median

Will merge the PR, but please TAL at the unresolved comments for next round.


datapath: Interoperability with netfilter

In the datapath code we heavily rely on the bpf_redirect*() helpers which redirect a packet to another net device bypassing the kernel networking stack (incl. netfilter). This gives us not only performance benefits, but also allows us to simplify the datapath.
Unfortunately, the helpers usage is not always consistent. I.e. in some cases, a request is redirected, while a reply traverses the stack. This introduces inconsistency problems when netfilter is used, e.g.:

https://github.com/cilium/cilium/pull/16136 - bpf_host redirects a request to a pod, while a reply from the pod traverses the stack which makes it unintentionally masqueraded by the MASQUERADE rule (installed by Cilium).
https://github.com/cilium/cilium/issues/11914 - a reply to NodePort BPF request bypasses custom iptables rules (installed by a user).
https://github.com/cilium/cilium/issues/10567 - a reply to a kube-proxy's ClusterIP service when both a client and a server runs on the same host is not rev-DNAT xlated due to bypassing the stack in bpf_lxc.

To fix the inconsistency (and issues it causes), I suggest to introduce the --netfilter-compatibility agent param (the exact name TBD) which would guarantee that no packet redirect is going to happen, which would make a packet to bypass netfilter, at a cost of a worse performance.

NetfilterCompatibleMode flag is used to guarantee that all traffic will pass through netfilter.
This flag is marked as Hidden, once we have all the fixes in we should unhide NetfilterCompatibleMode.
flags.MarkHidden(option.NetfilterCompatibleMode)

@krishgobinath I'm not sure if this is going to be sustainable long-term. Relying on the stack doesn't only impact performance, but, more importantly, also forces us to deal with iptables and conntrack indefinitely going forward. This makes the code harder to maintain and extend, adds more moving parts, and makes issues harder to troubleshoot.
For every spot we would bypass the stack under normal operations, we would have to provide a netfilter-based alternative just to maintain support with this flag. If we don't, certain config combinations will break. We already have a large number of different configurations to test and support. If we make this flag available, that will effectively double our test/support matrix, and I don't think that's something we should commit to.
Would you be willing to explore alternatives? Is this behaviour still necessary today?

So what's the actual stance going forward?

--netfilter-compatibility=false - respect the kernel network stack. I.e., don't do bpf_redirect(), so that a pkt can traverse iptables / IP rules / etc.
...=true - above is not guaranteed. In the long run, completely bypass the stack once we no longer rely on iptables rules.

@brb wait, --netfilter-compatibility=false, ie "don't be compatible with netfilter", is the one proposed to ensure that traffic goes through the network stack so that netfilter (and other kernel stack functions) will run? That seems like the opposite of what I'd expect. :thinking:

Oops, mixed both. Updated the comment.


Az CLI doesn't allow specific special characters

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Describe the bug
When creating Azure Metric Alerts in the UX, a dimension value can contain a ',' or a '|'. But when creating a Metric Alert using CLI and inserting a dimension value that contains either ',' or '|' you get the following error:
usage error: --condition {avg,min,max,total,count} [NAMESPACE. ]METRIC {=,!=,>,>=,<,<=} THRESHOLD
[where DIMENSION {includes,excludes} VALUE [or VALUE ...]
[and DIMENSION {includes,excludes} VALUE [or VALUE ...] ...]]
To Reproduce
Generates error:
az monitor metrics alert az monitor metrics alert create --name "Test" --resource-group "Test1" --scopes /subscriptions/SUBID/resourceGroups/RG/providers/microsoft.insights/components/AI_COMPONENT--condition "count dependencies/count > 10 [where dependency/target includes tcp:myapp-sqldbserver.database.windows.net,1433 | SqlDB22 [and dependency/resultCode includes 200]]" --window-size 5m --evaluation-frequency 5m --severity 3
Expected behavior
Would expect this to succeed as it does when creating alerts in the UX.
Only way I can get this to work is by removing the part of the dimension value that contains a ',' and '|'. So the following will work:
az monitor metrics alert az monitor metrics alert create --name "Test" --resource-group "Test1" --scopes /subscriptions/SUBID/resourceGroups/RG/providers/microsoft.insights/components/AI_COMPONENT --condition "count dependencies/count > 10 [where dependency/target includes tcp:datapptho-squibbledbserver.database.windows.net [and dependency/resultCode includes 200]" --window-size 5m --evaluation-frequency 5m --severity 3 --description ""
Environment summary
Az CLI v2.7.0
Additional context
Alerting PG verified the issue is on the CLI side.

add to S172

@cmneubaum Thanks for raising this issue. Will fix this one as the plan.


ARROW-10643: [Python] Pandas<->pyarrow roundtrip failing to recreate index for empty dataframe

This PR adds a check to the _reconstruct_index in pandas_compat.py  so that the roundtrip is correct for an empty pandas.DataFrame with and index.

@jorisvandenbossche could you give a final look at this PR please?


Downloadable links

I want to request for the new feature that is to exact the downloadable link of the YouTube video for example:
A YouTube video link https://youtu.be/qI-A_larCGE
A downloadable link of it https://rr3---sn-h5576nss.googlevideo.com/videoplayback?expire=1652288957&ei=XZl7YqqmC_2xlu8PuMiEOA&ip=<IP_ADDRESS>&id=o-ADUDO8j8uQSTxVHiZSHBETmCL7GDTVVgu_Sm3Gm2JiSJ&itag=22&source=youtube&requiressl=yes&spc=4ocVC9nutYHsjkCYiBgvDbglzj-E&vprv=1&mime=video%2Fmp4&ns=79TMJKSzq12BhbX_enzNYNoG&cnr=14&ratebypass=yes&dur=725.112&lmt=1650523739703305&fexp=24001373,24007246&c=WEB&txp=5532434&n=R9O0uWogCvtjcQ&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cspc%2Cvprv%2Cmime%2Cns%2Ccnr%2Cratebypass%2Cdur%2Clmt&sig=AOq0QJ8wRAIgL20sGxSUTmD32Tx3S5VK3fSX3PxP-mGPKsLk_ncKZMUCIDJytb1Y95tfHe_wv-DfsBxDHtP-YkczzpZScteExSYk&title=12 TRANSFORMING PARKING GARAGES OF THE NEXT LEVEL&rm=sn-ab5eek76&req_id=8d6f82d224eba3ee&cm2rm=sn-4pcxgfvgaq-3uhe7l,sn-fapo3ox25a-3uh6ee&redirect_counter=3&cms_redirect=yes&cmsv=e&ipbypass=yes&mh=Mg&mip=<IP_ADDRESS>&mm=30&mn=sn-h5576nss&ms=nxu&mt=1652267315&mv=m&mvi=3&pl=24&lsparams=ipbypass,mh,mip,mm,mn,ms,mv,mvi,pl&lsig=AG3C_xAwRQIgLqZoCFNn4hxQ_yFAzZ0uVsboVufMABSNsPmuWm-2sV0CIQDxZMK5d6rYaMo0j3xqN21Bm3bmRemKRjQLmQ7rx1B7Fw%3D%3D

This is downloadable link:)
Youtube provide data as streams. You can download this data.
Example with axios:
axios
  .get(streamUrl, {
    responseType: 'stream',
    headers: { Range: 'bytes=0-' }
  })
  .then(({ data }) => {
    data.pipe(fs.createWriteStream('myfile.mp4'))
  })
  .catch((err) => {
    console.log(err)
  })

I not mean by that

I gave you an exmaple to download links like you gave in your exmaple. That is url to stream. You should download it as stream.

Sry but I don't want to download it I just want to get the link.

Is there any way to get the link of any video?

If you want have a link to a file, you should save stream as file first. And then host it somewhere.

I guess you didn't understand what I mean
Basically, YouTube store a video to Google video.com and whenever someone watch video the YouTube get the video through that Google video.com domain URL and the video is kinda public so, I want to get that like like
A YouTube video link:  https://youtu.be/qI-A_larCGE
that video is stored by YouTube to here :
https://rr3---sn-h5576nss.googlevideo.com/videoplayback?expire=1652288957&ei=XZl7YqqmC_2xlu8PuMiEOA&ip=<IP_ADDRESS>&id=o-ADUDO8j8uQSTxVHiZSHBETmCL7GDTVVgu_Sm3Gm2JiSJ&itag=22&source=youtube&requiressl=yes&spc=4ocVC9nutYHsjkCYiBgvDbglzj-E&vprv=1&mime=video%2Fmp4&ns=79TMJKSzq12BhbX_enzNYNoG&cnr=14&ratebypass=yes&dur=725.112&lmt=1650523739703305&fexp=24001373,24007246&c=WEB&txp=5532434&n=R9O0uWogCvtjcQ&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cspc%2Cvprv%2Cmime%2Cns%2Ccnr%2Cratebypass%2Cdur%2Clmt&sig=AOq0QJ8wRAIgL20sGxSUTmD32Tx3S5VK3fSX3PxP-mGPKsLk_ncKZMUCIDJytb1Y95tfHe_wv-DfsBxDHtP-YkczzpZScteExSYk&title=12 TRANSFORMING PARKING GARAGES OF THE NEXT LEVEL&rm=sn-ab5eek76&req_id=8d6f82d224eba3ee&cm2rm=sn-4pcxgfvgaq-3uhe7l,sn-fapo3ox25a-3uh6ee&redirect_counter=3&cms_redirect=yes&cmsv=e&ipbypass=yes&mh=Mg&mip=<IP_ADDRESS>&mm=30&mn=sn-h5576nss&ms=nxu&mt=1652267315&mv=m&mvi=3&pl=24&lsparams=ipbypass,mh,mip,mm,mn,ms,mv,mvi,pl&lsig=AG3C_xAwRQIgLqZoCFNn4hxQ_yFAzZ0uVsboVufMABSNsPmuWm-2sV0CIQDxZMK5d6rYaMo0j3xqN21Bm3bmRemKRjQLmQ7rx1B7Fw%3D%3D

Oh, i got it. You just want short url to video? Sorry, my bad:)
At least yYou could use full link pattern and id of the video
https://www.youtube.com/watch?v={$id}

still you didn't understand :/

By the way it returns error,
const youtube = require('youtubei.js')
(async() => {
const video = await youtube.getDetails('C5obeRhGOX0')
console.log(video)
})();


Error with stocks data

First and foremost, I wanted to let you know how much I adore your work and how big of a fan I am of your Empyrial library on Python! I use it quite often for my analyses.
I'm reaching out today because I've been facing an issue when running the code, regardless of the date I choose: it indicates there's a data problem. The specific issue is as follows:
ValueError                                Traceback (most recent call last)
 in <cell line: 27>()
25     )
26 benchmark=["SPY"]
---> 27 empyrial(portfolio)
28
29
1 frames
/usr/local/lib/python3.10/dist-packages/empyrial/main.py in get_returns(stocks, wts, start_date, end_date)
148         initial_alloc = wts/assets.iloc[0]
149         if initial_alloc.isna().any():
--> 150             raise ValueError("Some stock is not available at initial state!")
151         portfolio_value = (assets * initial_alloc).sum(axis=1)
152         returns = portfolio_value.pct_change()[1:]
ValueError: Some stock is not available at initial state!
I've tried to resolve it by using more recent dates to download titles, but it still doesn't work.

Make sure the tickers are NYSE and not international. Was getting the same error


How to encoder the time (frame id) information?

How do you set the time information to construct the point cloud (Nx4) in the final temporal dimension as you said in your paper?
There may be several choices:
(1) The true frame id like 400 for the 400-th frame;
(2) Normalized frame id like 0-1 for all frame ids, then 0.5 will indidate the half frames (200-th frame for a 400-frame video)
(3) just use 0 for all the templates and 1 for all search frames.

Interesting question!
Due to the limited space, we omit the detail about the temporal encoding in our main paper.
Here are some key points that guide our design:

Since we focus on online tracking, where the total amount of frames is not known, normalized frame id (the choice 2) is not applicable for the task.
MM-Track only considers the relative target motion between two consecutive frames, and thus we do not need to use the true frame id to encode the time. Instead, using a relative time encoding is more suitable for MM-Track ( choice 3 ).
In our implementation, we use 0.0/0.1 instead of 0/1 to encode the relative timestamps.

Interesting question! Due to the limited space, we omit the detail about the temporal encoding in our main paper. Here are some key points that guide our design:

Since we focus on online tracking, where the total amount of frames is not known, normalized frame id (the choice 2) is not applicable for the task.
MM-Track only considers the relative target motion between two consecutive frames, and thus we do not need to use the true frame id to encode the time. Instead, using a relative time encoding is more suitable for MM-Track ( choice 3 ).
In our implementation, we use 0.0/0.1 instead of 0/1 to encode the relative timestamps.

Thanks for your reply. "we use 0.0/0.1 instead of 0/1 to encode the relative timestamps." But if the first template is used, then the temporal value for the template is still all set to 0?

Interesting question! Due to the limited space, we omit the detail about the temporal encoding in our main paper. Here are some key points that guide our design:

Since we focus on online tracking, where the total amount of frames is not known, normalized frame id (the choice 2) is not applicable for the task.
MM-Track only considers the relative target motion between two consecutive frames, and thus we do not need to use the true frame id to encode the time. Instead, using a relative time encoding is more suitable for MM-Track ( choice 3 ).
In our implementation, we use 0.0/0.1 instead of 0/1 to encode the relative timestamps.

Thanks for your reply. "we use 0.0/0.1 instead of 0/1 to encode the relative timestamps." But if the first template is used, then the temporal value for the template is still all set to 0?

Hi, I am not sure what you mean when you say "template".
MM-Track is a motion-centric method. During the whole pipeline, we don't have "templates" or "search areas". We only have previous frames and the current frames.

Interesting question! Due to the limited space, we omit the detail about the temporal encoding in our main paper. Here are some key points that guide our design:

Since we focus on online tracking, where the total amount of frames is not known, normalized frame id (the choice 2) is not applicable for the task.
MM-Track only considers the relative target motion between two consecutive frames, and thus we do not need to use the true frame id to encode the time. Instead, using a relative time encoding is more suitable for MM-Track ( choice 3 ).
In our implementation, we use 0.0/0.1 instead of 0/1 to encode the relative timestamps.

Thanks for your reply. "we use 0.0/0.1 instead of 0/1 to encode the relative timestamps." But if the first template is used, then the temporal value for the template is still all set to 0?

Hi, I am not sure what you mean when you say "template". MM-Track is a motion-centric method. During the whole pipeline, we don't have "templates" or "search areas". We only have previous frames and the current frames.

So you don't use the first frame in MM-Track？

Interesting question! Due to the limited space, we omit the detail about the temporal encoding in our main paper. Here are some key points that guide our design:

Since we focus on online tracking, where the total amount of frames is not known, normalized frame id (the choice 2) is not applicable for the task.
MM-Track only considers the relative target motion between two consecutive frames, and thus we do not need to use the true frame id to encode the time. Instead, using a relative time encoding is more suitable for MM-Track ( choice 3 ).
In our implementation, we use 0.0/0.1 instead of 0/1 to encode the relative timestamps.

Thanks for your reply. "we use 0.0/0.1 instead of 0/1 to encode the relative timestamps." But if the first template is used, then the temporal value for the template is still all set to 0?

Hi, I am not sure what you mean when you say "template". MM-Track is a motion-centric method. During the whole pipeline, we don't have "templates" or "search areas". We only have previous frames and the current frames.

So you don't use the first frame in MM-Track？

No. To make it clear, we only use the first frame to start the tracking during the inference (i.e, the first frame is acted as the first "previous frame"). We do not reuse the first frame in the subsequent tracking.


Load the text record for reference to anyone who encounters the same problem

1.Text generation bitmap.
2.Imitate the cube to draw a square for texture
3.At this time, you will encounter the problem of opaque background color, don't worry. Turn on the color mixing channel before drawing the obj, and modify the mixing factor。
GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GLES20.GL_ONE, GLES20.GL_ONE_MINUS_SRC_ALPHA);

obj color transparency set to 0
5.Objects that require a transparent background should be drawn last as far as possible. Otherwise there will be problems with the background mapping.

tip: Personal try, if there is a better way, welcome guidance


[LSP] Support trigger characters in signature helper

Currently, the language server doesn't provide any trigger characters for the signature helper.  Because of this, some clients won't automatically ask for signature help.  I've personally experienced this myself with the https://github.com/tomv564/LSP extension for Sublime Text, and https://github.com/codenvy/codenvy/issues/1183 has noticed the same problem.
If we could get some basic trigger characters like ( and ,, it would help a lot.  An IDE like Visual Studio will automatically open up signature help and I believe that users would expect it.
The main issue I can think of to adding trigger characters is how to support other .NET languages.  I'm not sure if anything other than C# is a goal for OmniSharp, but it could be something to think about in the future.

@LoneBoco what is stopping you from making a pull request?

@LoneBoco what is stopping you from making a pull request?

@rwols Hmm, this bug is quite old.  I think it was before I started to submit my pull requests and I honestly thought I submitted pull requests for all my bug fixes and changes.  I'll download my sources once more and submit a request in a day or two.

@rwols Hmm, this bug is quite old.  I think it was before I started to submit my pull requests and I honestly thought I submitted pull requests for all my bug fixes and changes.  I'll download my sources once more and submit a request in a day or two.

It turns out this server does register trigger chars for sighelp (via client/registerCapability), but its trigger chars are ., ? ,[. I am puzzled as to why this is the case. Adding some debug prints in the ST client:
LSP: OmniSharp: registering capability: signatureHelpProvider
LSP: options: {'workDoneProgress': True, 'triggerCharacters': ['.', '?', '['], 'documentSelector': [{'pattern': '**/*.cake'}]}
LSP: OmniSharp: registering capability: signatureHelpProvider
LSP: options: {'workDoneProgress': True, 'triggerCharacters': ['.', '?', '['], 'documentSelector': [{'pattern': '**/*.cs'}, {'scheme': 'csharp'}, {'pattern': '**/*.csx'}]}

I would have expected the trigger chars for signature help to be ( and , (comma).

It turns out this server does register trigger chars for sighelp (via client/registerCapability), but its trigger chars are ., ? ,[. I am puzzled as to why this is the case. Adding some debug prints in the ST client:
LSP: OmniSharp: registering capability: signatureHelpProvider
LSP: options: {'workDoneProgress': True, 'triggerCharacters': ['.', '?', '['], 'documentSelector': [{'pattern': '**/*.cake'}]}
LSP: OmniSharp: registering capability: signatureHelpProvider
LSP: options: {'workDoneProgress': True, 'triggerCharacters': ['.', '?', '['], 'documentSelector': [{'pattern': '**/*.cs'}, {'scheme': 'csharp'}, {'pattern': '**/*.csx'}]}

I would have expected the trigger chars for signature help to be ( and , (comma).

Upon closer look at the source in https://github.com/OmniSharp/omnisharp-roslyn/blob/db948600c7fef3ff462782fdee3a1f8ffde52a41/src/OmniSharp.LanguageServerProtocol/Handlers/OmniSharpSignatureHelpHandler.cs#L23
it seems the trigger chars are hardcoded. But the document selector is variable. That cannot work correctly for different sorts of document selectors.

Upon closer look at the source in https://github.com/OmniSharp/omnisharp-roslyn/blob/db948600c7fef3ff462782fdee3a1f8ffde52a41/src/OmniSharp.LanguageServerProtocol/Handlers/OmniSharpSignatureHelpHandler.cs#L23
it seems the trigger chars are hardcoded. But the document selector is variable. That cannot work correctly for different sorts of document selectors.


Add Mapbox branding when using Mapbox tiles

Need to look into this, but we should obviously abide by their attribution policy.

https://www.mapbox.com/help/attribution/

This should be fixed on master. I think we had these in at one point but they were removed for some reason. I believe that the new layers use both MB and OSM features, so we should have both notices. I'm also leaving in the Leaflet prefix, which I don't believe is required, so we can remove it if that is preferable.


document class methods in autodiff autosummary

... to better render docs for custom_jvp and custom_vjp.

Looks great!
One suggestion for ease of review / future understandability: split this into two commits: in the first, add a copy of the default class template to JAX. In the second, modify the template.


Update README.md

Why is this PR needed?
What changes were proposed in this PR?
Does this PR introduce any user interface change?

No

Is any new testcase added?

No

Can one of the admins verify this patch?

Add to whitelist

retest this please

@Karan-c980 : please keep in [WIP] and push the changes once done

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1031/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/2744/

@Karan-c980 What is this PR for?

please create JIRA to discuss before raising PR.
close this PR please


Adding deltas to a running supervisor

Description
A supervisor that is running without deltas starts using them.
Steps to reproduce issue
Use the board from TC09, without reprovisioning.
Add an application-wide RESIN_SUPERVISOR_DELTA = 1 config var. (It is important that the value is 1).
Push an update to the application (e.g. changing what is outputted to the console).
Expected result
When setting RESIN_SUPERVISOR_DELTA, the device  should not restart the app.
The device should download the update correctly after pushing and the updated application should start running successfully.
The dashboard logs should display: "Downloading delta for application ..."
Opening a web terminal should allow execution of commands.
Actual result
Downloading delta for application 'registry.resinstaging.io/test124/f83985dc3bf6ffef97bb6ba40061a1f4513e2edc'
Failed to download application 'registry.resinstaging.io/test124/f83985dc3bf6ffef97bb6ba40061a1f4513e2edc' due to 'rsync exited. code: 1 signal: null'

Other information
Reported by: Gergely Imreh
Test configuration: Cybertan Intel Quark
Test case number: TC10
Test run: https://resinio.testlodge.com/projects/16238/runs/240328?tab=2&run_section_id=275690&executed_case_id=11008154#executed_case_11008154

This issue was moved to resin-os/resin-intel-quark#16


Image color change.

Can we prevent the change of color of the image selected after the crop?

I believe you need to change this line: https://github.com/jbttn/SimpleDocumentScanner-Android/blob/master/app/src/main/java/com/joshuabutton/documentscanner/activities/MainActivity.java#L314
I think removing that line might be enough.


Some tests for MH fail for certain random seeds

Ref: https://github.com/TuringLang/Turing.jl/pull/1567#issuecomment-817377941
This is where the failure happens: https://github.com/TuringLang/Turing.jl/blob/master/test/inference/mh.jl#L149-L152
In particular v2 can sometimes be 0 (i.e. all samples are rejected).

Likely fixed by recent bumps to number of MCMC samples.


Table Viewer - Support filters for Viya connections

Is your feature request related to a problem? Please describe.
When viewing the contents of a table, I want to be able to quickly find records of interest using a filter (where-clause).
Describe the solution you'd like
Provide an option in the Table Viewer to specify a filter/where-clause
Environment
SAS version: SAS Viya 4

Hi @i0355695. Do you mind providing more details under the sections above?

Can the option for the Table Viewer to specify a filter/where-clause be provided for SAS 9.4 as well?

Hi, the feature that would be really super useful, is to replicate what is presently available in SAS Studio when you open a table (both on a Viya cluster or on 9.4). Like this screenshot:

Thanks

changed title to make this connection type agnostic.


Add ERC827 Token

Fix #494

Hi all, if I try to use the increaseApproval methods (the one without _data) I receive the following error.
Error: Invalid number of arguments to Solidity function.
It appears both if I compile with truffle or with remix.
Any Idea?
Why the increase approval method in ERC827 test has been changed respect the same test on ERC20?


Remove CSS workarounds for micro journeys in dark theme

Jira
http://vjira2:8080/browse/WWWD-4540
Summary
Remove CSS workarounds for micro journeys in dark theme
Details

Removes all usages of the .t-bolt-dark class in micro journeys CSS.
Updates dark theme behavior slightly.
Previously, active waypoints looked like this:

Now, they look like this:

How to test

Go to /pattern-lab/?p=experiments-micro-journeys-solo and confirm micro journeys look as expected in both themes.
Confirm no regressions

PR was released with v2.18.0


Can we move this module from the catalog, nothing has been done on this for 7 months

Can we move this module from the catalog, nothing has been done on this for 7 months @balasgit

Will work on this

Fixed and verified https://github.com/cloud-native-toolkit/software-everywhere/actions/runs/3068392435


adding new maintainers

Adding maintainers from captum repo.

[x] @NarineK
[x] @aobo-y
[x] @vivekmig

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged) 0 --> 1
[x] Reset the build number to 0 (if the version changed) NA
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender


Huggingface Customization

How can I customize the model used for the Huggingface backend? Is this supported yet?

Fill in the provider_options table in the config.
There are examples (and a specific one to HF) in the README

ah, ok i wasnt sure that the provider options table was applicable to the HF provider. thanks for the info


I can't getDuration() after createInstance() ?

createjs.Sound.registerSound(scope.src, "soundId")
scope.soundInstance = createjs.Sound.createInstance("soundId")
console.log(scope.soundInstance.getDuration()) // log value = 0
How to getDuration()?
Sorry by convention. :bow:

What browser are you using? It is possible you don't have a duration immediately because the audio is not loaded yet.


Optional stable cell IDs

Description
Stable (and per-workspace-unique) cell IDs are absolutely needed for scalable, on-by-default cell results persistent cache, see https://github.com/marimo-team/marimo/issues/3176. Stable cell IDs can even enable "moving the cell" to another notebook while preserving its cache.
Stable cell IDs would also be very helpful at the interaction of Marimo and Git. As a minimum, to better track changes per cell when Git itself fumbles with its regular line tracking feature (e.g., when files are renamed or cell order is changed).
Suggested solution
The only solution that I can think of at the moment is as follows:

Marimo app uses uuids as cell-ids internally instead of what it's using at the moment (four letters whose uniqueness doesn't seem to be enforced even within the App?)
Optional id parameter in cell decorator: @cell(id="uuid"). Marimo tries to make sure they are not duplicated on the code level (if the user copy-pastes cell code and doesn't change the id, for example).
If id is not specified, it's generated by marimo app internally (and thus, will not be stable), and this means the cell will be excluded from the on-by-default caching, and writing an explicit with persistent_cache() block within such a cell will fail.
When editing through Marimo UI, and when cell results cache is on-by-default, Marimo app will generate uuid for the cell itself and will add it to the code (thankfully the user will not see this code most of the time in the app).

Alternative
Two main problems with the solution above:

UUIDs in the code are ugly and clutter. Not as much accidental complexity as requiring users to think about caching themselves, but still not ideal.
When the user manipulates the code of the notebook outside the Marimo UI, and they need to create a new cell, they need to generate UUID themselves and insert it in code, which is a speed/flow bump.

However, I don't see alternatives. Using hashes of cell's code + hashes of all its code dependencies will lead to a lot of trashing of cell_ids and thus will subvert the proposed solution for persistent caching of results at https://github.com/marimo-team/marimo/issues/3176.
Additional context
No response

To explore: how does https://github.com/dbos-inc/dbos-transact-py solve/approach this.

Stable IDs are also required for UI-Elements to be properly re-used
@mscolnick did something towards this here: https://github.com/marimo-team/marimo/pull/3061
which could be made more deterministic, but seems OK for the time.
but aside from that, not sure why changing the IDs system is needed (esp, on a user exposed level)
The ID is an internal mechanism for runtime, but isn't saved anywhere.
The current ID system does have an issue: #1962 but there's trivial fixes for this

In cached execution, the cell is hashed just like it is wrapped in a persistent_cache block.
There's 2 steps to hashing:

Execution path- hashing the relevant executing cells into a given path
Content Addressing- additional hashing content is added to the cell based on certain inputs, helping mitigate state and UI based changes.

This makes it robust to:

Ordering (hashing occurs on a graph level
Accidental state changes producing an inconsistent caching state

If the issue is tracking changes, cells can be given names. This was tangentially suggested as a solution for #3129 (which could have used execution based hashing).
But hashes and IDs aren't super readable. Might be good for detecting downstream notebook changes, but limits marimo notebooks from being written in any editor.

Maybe HTML exports could be tagged with an execution hash on a per cell level?
Thoughts on this?

Without stable cell IDs, there is no way to know if some module_hashes in the cache dir correspond to some stale or entirely deleted cells. And therefore, cache cleaning couldn't be made automatic and relatively fast, as it would require computing the entire module_hash graph for the entire workspace, which can in general require arbitrarily expensive (both in terms of time and $$$, due to LLM calls) computations (for example, if the user removed parts of the cache manually, for whatever reason, or if they off-loaded it with git-annex to another device and didn't re-download no the machine where the hypothetical marimo clean cache command is executed).
Whereas, with .py-level cell ids, this is a very straightforward python code scanning excercise. The same complexity as pytest does when it scans directories for test files and functions, for example.
And, the alternative to "targeted cleanup" would be removing the entire cache only, which again, is problematic because it will potentially force very expensive re-computations.
I really see the DX/UX gap that may grow here between Marimo and Jupyter here (because with all its problems, Jupyter generally doesn't lose your cell results), and a potential deal-breaker for scaling Marimo workspaces beyond "I work alone by myself or within a small team" scenarios.
Cf. also this comment by Leo Meyerov, I think it's a relevant bit of practical insight about notebook DX/UX.

Re: editing notebooks in any editors,

IDs are still optional. The user may write app.cell() def __(): ... by hand. In many cases it will be fine because actually in some cases caching cell results is superfluous (e.g., in unit tests). If the "cache cell results by default" setting is ON, next time marimo runtime "lays its hands" on the cell code (either via UI opening or command-line processing), it may supplant missing UUIDs itself unless the cell is also tagged with "test" or some other tag which excludes the cells from automatic result caching (which could also be configured).
In popular IDEs, confuguring generating UUID with a shortcut is not that hard: VS Code, IntelliJ.

When the user edits the notebook in the most bare bones editor (vi, nano, Notepad, whatever), and they know they really want to cache this cell, opening https://www.uuidgenerator.net/ and copying the UUID over from there is also not that hard.
To increase the legibility of the fact that these IDs are required for caching, probably the optional param should be called cache_id, i.e., @app.cell(cache_id=...). In this way, the users who are used to seeing bare cells code will learn quickly and remember firmly that if they want the cell to be auto-cached, they need to add cache_id.

entire module_hash graph for the entire workspace, which can in general require arbitrarily expensive (both in terms of time and $$$, due to LLM calls) computations

The execution path hashing is done statically and is very cheap.
So this doesn't really follow either:

Without stable cell IDs, there is no way to know if some module_hashes in the cache dir correspond to some stale or entirely deleted cells.

since the diff of what's in the notebook and what's in the cache is easy to find
If it is useful, then maybe #3061 with the execution path hashing might be worth pursuing.
Opt in or opt out cache should be as easy as cache = True | False, with the reference mechanism hidden, but cell name or persistent_cache name should be leveraged where possible

See relevant to this feature request part of this comment:

Note important thing: whereas you probably most think about two scenarios:

Editing cells through Marimo Web UI (and VS Code extension provides the same, or its closer to scenario two?) where the JS side can "remember" the cell_id the user is editing to ensure "short history" continuity
Editing cells as code in simple text editors, by a human, where UUID proposal is ugly and makes somewhat bumpy user experience with need to generate UUIDs by hand or figure out how to do it in IDE,

They main scenario as I see using Marimo is a third one: the majority of cells are created and edited by AIs, e.g. within Co-STORM. The wrapper code can add UUIDs trivially, so the clunkiness of (2) above is not an issue. But also unless that wrapping logic is also knee-deep in Marimo internals (calls to module_code_hash directly before it instructs the AI to re-write the cell, for instance, and then manually tells Marimo somehow to look up potentially duplicate results there), the recent history dedupliication wouldn't work.
The abiliity to provide explicit cell_ids (which my wrapper logic can generate easily) would enable much better separation of concerns between AI workflow wrappers and Marimo layer. And also, those UUIDs needed to "correlate cells across Git branches" and moving cells from one notebook to another without "losing the context" is also directly motivated by those AI-workflow-ish scenarios.


Use StreamListener for coercing messages from JSON Span

Rely on the contentType header of the transported message to
tell Spring Cloud Stream how to coerce the message to Span.

@marcingrzejszczak @dsyer

:+1:

Current coverage is 74.27% (diff: 100%)

Merging #386 into master will decrease coverage by 0.01%

@@             master       #386   diff @@
==========================================
  Files           130        130
  Lines          2793       2791     -2
  Methods           0          0
  Messages          0          0
  Branches        397        397
==========================================
- Hits           2075       2073     -2
  Misses          539        539
  Partials        179        179

Powered by Codecov. Last update 8e21a53...86211f0

LGTM with one comment as it would leave me scratching my head once I forget about this PR :)

Can we merge this @mbogoevici  ?

I'll add the requested comments shortly. I'd love to hear some feedback on my comments about the input/output channel overlap.

The same name for input / output channels were simplification I guess. The thing is that the change of the name would signify breaking backwards compatibility. The stream server would have to support both names, right?

Added a comment as requested by Adrian.

Thx

So actually we can merge it now?


Fix the data mocking in the testing

Currently the data comes from the live server so it would start throwing issues if the server goes down. It also adds load to the server, which is undesired.

Since there is no testing, this issue is moot


How can we use Massively Multilingual Speech (MMS) commercially?

Can MMS be used commercially? How?

MMS is released under CC-BY-NC 4.0 license. It cannot be used for commercial purposes.

MMS is released under CC-BY-NC 4.0 license. It cannot be used for commercial purposes.

Is it possible to create a synthetic dataset with MMS output and allow commercial use for that dataset?


Transparent objects flicker when using scene.pick

When moving the mouse around in an app that uses scene.pick, translucent objects flicker. The gif capture is not best, the flickering is much faster.

Sample code:
http://cesium-dev.s3-website-us-east-1.amazonaws.com/cesium/master/Apps/Sandcastle/?src=Hello World.html&label=Showcases&gist=eaae1407cd39601a2c3ba62b30f00a1f

This brings back bad memories of #2790.  That bug was caused by a stray scissor test preventing the frame from being cleared at the start, causing OIT to blend with the previous animation frame.  It was fixed, and I don't know if this new problem is some way related, but the symptom looks suspiciously similar.

Could someone track down what version/commit this was added?  It could be a fix we want soon.  I'm surprised it hasn't come up on the forum and in other issues.

This does not happen in 1.32, so it was introduces recently.  It's really annoying so I marked this for next release, someone needs to at least triage this.

I'm also running into cases where picking randomly stops working until the canvas is resized, but that could be an unrelated issue.  Unfortunately it's hard to reproduce.

@emackey do you want to help @klingerj track this down?

Git bisect says that the first bad commit is: a9a275f8e6286ae509633d00cc622d195ad4e29b

Thanks for finding the commit @klingerj. I have a fix for this. I'll open a PR soon.


feat(whitelabelling_bar): update GoodData SDK to v9.5.0

Update Dashboard plugin to GoodData SDK v9.5.0. More information about the new SDK version can be found in GoodData docs

Build succeeded (check pipeline).

Build succeeded (check pipeline).


Add smol-v to third_party.

Since we use this for decoding, this adds a dependency to the core
filament renderer which in practice is only used for Vulkan. However
this is a tiny library, so it's simplest just to always include it.
The next PR will add the actual compression / decompression code to
filaflat and filamat. Here are the preliminary results.
   102K =>  29K  aiDefaultMat.filamat
   102K =>  29K  aiDefaultTrans.filamat
    21K => 5.0K  bakedColor.filamat
    22K => 5.2K  bakedTexture.filamat
    21K => 5.0K  depthVisualizer.filamat
    40K =>  10K  groundShadow.filamat
   102K =>  29K  sandboxCloth.filamat
   125K =>  36K  sandboxLit.filamat
   126K =>  36K  sandboxLitFade.filamat
   126K =>  36K  sandboxLitTransparent.filamat
   109K =>  31K  sandboxSubsurface.filamat
    21K => 4.9K  sandboxUnlit.filamat
    21K => 4.9K  transparentColor.filamat

Both the "before" and "after" numbers are excluding non-Vulkan targets,
and I also changed our CMakeLists to build filamat instead of inc.

Well, ok, I'll exclude it from android builds for principle's sake...and to fix the Kokoro failure.  :)


[Improvement][Zeta] jetty port issue

Search before asking

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

Description

When deploying multiple nodes on a single machine, is there a better way to configure this port?
Usage Scenario
No response
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

cc @liugddx

Currently it is fixed. We can change the jetty port to a dynamic range binding

Already fixed by #7903


ecp_nistz256-armv4.S bad arguments to instruction

Error from ARMv4 Assembler:
arm-armv4tl-linux-gcc  -I. -Iinclude -Icrypto -fPIC -pthread -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/home/vagrant/igw-systems/INSTALL/OPENSSL-1.1.1g-issue/usr/lib/engines-1.1\"" -DNDEBUG -D__ARM_ARCH_4__ -march=armv4 -fpic -c -o crypto/ec/ecp_nistz256-armv4.o crypto/ec/ecp_nistz256-armv4.S
crypto/ec/ecp_nistz256-armv4.S: Assembler messages:
crypto/ec/ecp_nistz256-armv4.S:3853: Error: bad arguments to instruction -- `orr r11,r10'
crypto/ec/ecp_nistz256-armv4.S:3854: Error: bad arguments to instruction -- `orr r11,r12'
crypto/ec/ecp_nistz256-armv4.S:3855: Error: bad arguments to instruction -- `orrs r11,r14'
Makefile:3084: recipe for target 'crypto/ec/ecp_nistz256-armv4.o' failed
make[1]: *** [crypto/ec/ecp_nistz256-armv4.o] Error 1
make[1]: Leaving directory '/home/vagrant/igw-systems/build/openssl-1.1.1g'
Makefile:174: recipe for target 'all' failed
make: *** [all] Error 2

Call to build:
MACHINE="armv4tl" ./config shared --cross-compile-prefix="arm-armv4tl-linux-" --prefix=/usr/local "-D__ARM_ARCH_4__ -march=armv4 -fpic"

make MACHINE="armv4tl" SRCDIR=. BLDDIR=.

Version:
OpenSSL 1.1.1g  21 Apr 2020
Used GNU GCC:
arm-armv4tl-linux-gcc (GCC) 3.4.4
perl-config-dump.txt
Suggested patch:
openssl-1.1.1.armv4.patch.txt

This seems to come from 75738b9433185f44103073fd29ec63ae72e24e63
@bernd-edlinger could you please have a look?

Thanks for your report and for the proposed fix @HenryNe!

I don't have access to an armv4 platform to test it out, but can this be the consequence of using a too old version of GCC?

Yes, the GCC is truely old. But need for this device.
The assember is:
$ arm-armv4tl-linux-ar --version
GNU ar 2.16

From here found solution:

Always use 3-operand form instructions, i.e.,
add r1, r1, r2
rather then
add r1, r2

Considering that the rest of ecp_nistz256-armv4.pl uses 3 arguments for orr and orrs, these lines do indeed look like a mistake.
@HenryNe, I suggest you make a PR from that patch.  I would go so far as to say that it's a CLA: trivial PR.

How can  run a single test for this ec on the platform? I have no perl there for the complete test suite.


Plugin doesn't reorganize imports??

When I run the formatter via the plugin it doesn't seem to reorganize imports.
I tried running the standalone https://github.com/google/google-java-format/releases/download/google-java-format-1.6/google-java-format-1.6-all-deps.jar and it does organize imports.
What gives? I can't find anything in the source code that would affect this...

I think it's because this plugin is using just the Formatter class, and processing imports happens in https://github.com/google/google-java-format/blob/google-java-format-1.6/core/src/main/java/com/google/googlejavaformat/java/FormatFileCallable.java which delegates to Formatter


Create account

chrs login should accept optional flags --create (bool) and --email EMAIL which, when used together, creates an account before logging in.

@jennydaman i would like to take my spin on this

The functionality to create a user account is already implemented:
https://github.com/FNNDSC/chrs/blob/8f36480935e7298fb94f9a9bf4357f73d81cfda1/chris/src/auth.rs#L124-L147
To implement the propsoed feature, you would simply need to add the CLI options --create and --email here, and then pass those along to the helper function.
https://github.com/FNNDSC/chrs/blob/8f36480935e7298fb94f9a9bf4357f73d81cfda1/chrs/src/main.rs#L69-L78


Problems cloning MathJax-src repo

I am looking to clone the MathJax source repo and I am running into errors when compiling with TypeScript.
I ran npm install, npm update and tried updating Node and npm, but I still get the following errors when trying to run npm run install:

ts/a11y/sre-node.ts:25:15 - error TS2451: Cannot redeclare block-scoped variable 'require'.
25 declare const require: (name: string) => any;
~~~~~~~
../node_modules/@types/node/globals.d.ts:222:13
222 declare var require: NodeRequire;
~~~~~~~
'require' was also declared here.
ts/a11y/sre-node.ts:29:15 - error TS2451: Cannot redeclare block-scoped variable 'global'.
29 declare const global: any;
~~~~~~
../node_modules/@types/node/globals.d.ts:167:13
167 declare var global: NodeJS.Global;
~~~~~~
'global' was also declared here.
../node_modules/@types/node/globals.d.ts:167:13 - error TS2451: Cannot redeclare block-scoped variable 'global'.
167 declare var global: NodeJS.Global;
~~~~~~
ts/a11y/sre-node.ts:29:15
29 declare const global: any;
~~~~~~
'global' was also declared here.
../node_modules/@types/node/globals.d.ts:222:13 - error TS2451: Cannot redeclare block-scoped variable 'require'.
222 declare var require: NodeRequire;
~~~~~~~
ts/a11y/sre-node.ts:25:15
25 declare const require: (name: string) => any;
~~~~~~~
'require' was also declared here.
Found 4 errors.
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR<EMAIL_ADDRESS>compile: npx tsc
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>compile script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

The log file:
2020-02-26T21_05_03_551Z-debug.log
Since I believe that the current commit should most likely compile, I think I must have something wrong with my versions of TypeScript or whatever, but I already checked it using npx tsc -v and it was the same as listed in the devDependencies.
I would really appreciate some help here, since I am actually really keen on getting into MathJax and extending it for my purpose.

OK, I figured it out.  According to the tsconfig documentation:

By default all visible “@types” packages are included in your compilation. Packages in node_modules/@types of any enclosing folder are considered visible; specifically, that means packages within ./node_modules/@types/, ../node_modules/@types/, ../../node_modules/@types/, and so on.

The solution is to add
"typeRoots" : ["./typings"]

to the compilerOptions list in the tsconfig.json file in the MathJax-src clone.  That will prevent those other files from being included.  I'll make a pull request to change the tsconfig.json file accordingly.

I've made a pull request for the change in the tsconfig.json file.
Note, however, that unless you are planning to make pull requests to fix issues in MathJax, you might be better to use the mathjax-full npm package instead, which already includes the compiled versions of the .ts files.  You should be able to subclass the existing MathJax classes and use those in most cases rather than modifying the core MathJax code itself.

Thanks a lot for the help. But I have a question: Why is it advised to use the npm package instead? And since I don't yet know whether I will have to edit the existing MathJax classes, shouldn't I use the git clone to make sure I am not "limited" in what I can do?

Why is it advised to use the npm package instead?

Mostly because it already includes the compiled files, but also because it makes it easier to include MathJax in your package.json than having to clone the repo by hand.

And since I don't yet know whether I will have to edit the existing MathJax classes, shouldn't I use the git clone to make sure I am not "limited" in what I can do?

As I mention above, the mathjax-full package includes the original typescript files that are in the Git repository, so you are not limited in what you can do, but you are right that if you are planning to modify the MathJax files themselves, you probably do want to use the Git repository so that it is easier to update as new versions come out.
But again, I don't recommend changing the base MathJax code unless you are planning to make pull requests back to the MathJax source repository.  Instead, you should subclass the objects you plan to change, make the changes in your subclass, and use the subclasses instead of the base MathJax classes.  It is possible to substitute your own classes for most of the originals (though there are some places where that is more difficult to do).  For example, if you want to change the FindTeX class that locates the TeX delimiters in the document, you can subclass the original and pass your new class to the TeX input jax in its options list.  Many of the key classes can be specified in that way.


Improve dummy rule documentation

The current documentation explains fairly well how to refactor dummy rules, but doesn't really explain why they are sometimes needed in the first place.
This change addresses this, as it proposes a use case, where we first introduce a problem, which can be solved by using a dummy rule. Afterwards, we refactor our solution using declared types to remove the dummy rule again.

I agree, I just call the section Reference Unions now, as that accurately describes what the section is trying to accomplish.

Do you think to eliminate the term "dummy rules" completely?


[FEATURE] Ability to add Regex rules to Text Questions

We would require a way if possible either in FeedbackDataset with TextQuestion or Text2Text Dataset to have
Regex rules so that annotators can validate their outputs for example
The score of the student is zero point 4.
Text box: 0.4
Here 0.4 should be validated before submission, this can enable annotators to avoid errors and help train LLMs in much more domain specific tasks that are essential.
Underlying question is that can functional rules be also applied for validation before annotators can submit their tasks.
Thanks
### Tasks

@davidberenstein1957 @Amelie-V

#3073

Do we have any updates regarding this feature?

@vmehta-cohere no updates yet but it is scheduled I believe @nataliaElv can you confirm?

@vmehta-cohere I am closing this in favor of this https://github.com/argilla-io/argilla/issues/3073


fix: custom preset cached on target's preset.yml

fix: --preset bootstrap is not the default anymore.
This is a small improvement. The original custom preset (without any private key) is cached in the preset.yml of the target folder. If the user upgrading doesn't provide the --customPreset, that cache is used. Currently, if the user is not providing a custom preset when --upgrading, a custom value (for example maxUnlockedAccounts: 20) could be reset to its bootstrap's default (10).
--preset and --assembly are already derived from the target folder when not provided.

How does it behave when the custom preset contains private keys ?

How does it behave when the custom preset contains private keys?

Private keys are not stored in the ./target/preset.yml file, this files contains the catched custom preset.
You can create your custom preset in your local offline machine, generate the configuration, zip the target folder, and send it to your node without the node having the keys at all.  With this PR, you don't need to send the custom preset either.

Superseded by https://github.com/nemtech/symbol-bootstrap/pull/277

Hi @Wayonb I'm keen to merge this one. Is it ok for you?


This introduces a new garbage collection system which can track the last time files were used in cargo's global cache, and delete old, unused files either automatically or manually.
How should we test and review this PR?
This is broken up into a large number of commits, and each commit should have a short overview of what it does. I am breaking some of these out into separate PRs as well (unfortunately GitHub doesn't really support stacked pull requests). I expect to reduce the size of this PR if those other PRs are accepted.
I would first review unstable.md to give you an idea of what the user side of this looks like. I would then skim over each commit message to give an overview of all the changes. The core change is the introduction of the GlobalCacheTracker which is an interface to a sqlite database which is used for tracking the timestamps.
Additional information
I think the interface for this will almost certainly change over time. This is just a stab to create a starting point where we can start testing and discussing what actual user flags should be exposed. This is also intended to start the process of getting experience using sqlite, and getting some testing in real-world environments to see how things might fail.
I'd like to ask for the review to not focus too much on bikeshedding flag names and options. I expect them to change, so this is by no means a concrete proposal for where it will end up. For example, the options are very granular, and I would like to have fewer options. However, it isn't clear how that might best work. The size-tracking options almost certainly need to change, but I do not know exactly what the use cases for size-tracking are, so that will need some discussion with people who are interested in that.
I decided to place the gc commands in cargo's cargo clean command because I would like to have a single place for users to go for deleting cache artifacts. It may be possible that they get moved to another command, however introducing new subcommands is quite difficult (due to shadowing existing third-party commands). Other options might be cargo gc, cargo maintenance, cargo cache, etc. But there are existing extensions that would interfere with.
There are also more directions to go in the future. For example, we could add a cargo clean info subcommand which could be used for querying cache information (like the sizes and such). There is also the rest of the steps in the original proposal at https://hackmd.io/U_k79wk7SkCQ8_dJgIXwJg for rolling out sqlite support.
See #12633 for the tracking issue

:umbrella: The latest upstream changes (presumably #12637) made this pull request unmergeable. Please resolve the merge conflicts.

I'm sure there are lots of details still to be discussed. In fact Ed found a lot of them while I was looking things over. Overall this looks really good and I'm excited to see this happen! Thank you!

That was a lot of work; thanks for doing it all Eric.  I am fine with deferring CLI conversations and likely other things to get this in.  My review comments were both low level and high level for the sake of not wanting to forget things.

:umbrella: The latest upstream changes (presumably #12648) made this pull request unmergeable. Please resolve the merge conflicts.

CC @matthiaskrgr, creator of https://github.com/matthiaskrgr/cargo-cache for awareness or maybe even some insights

From the hackmd
This information will include timestamps of the last time the following were “used”:

    git/checkouts/<name>/<hash>/
    git/db/<name>
    registry/index/<name>
    registry/cache/<registry>/<name>.crate
    registry/src/<registry>/<name>

name/hash etc, there are what the code refers to as "file", right?
I find this a bit confusing because "delete files that have not been used for ..." sounds a bit like we could delete single of a folder containing .rs files.
Maybe "artifact" would be a better term?
The timestamp is updated whenever something is initially added, or something reads from it.

So can cargo only track changes that are done by itself?
I have seem some programs write into the cargo cache, sometimes even build files end up in there. Will this cause problems or lead to overeagerly deleted source artifacts?
Initial experiments showed about a 35ms performance hit with a HDD with a project with about 200 dependencies, though more investigation will be needed.

I'm curious what this looks like if you have a cache of lets say 10-20 GB :upside_down_face:  (not too unrealistic imo, my current cache is around 10 gb but I clean it from time to time)
Total:                               9.91 GB
  78 installed binaries:             1.17 GB
  Registry:                          6.11 GB
    4 registry indices:              1.39 GB
    23586 crate archives:            4.20 GB
    1075 crate source checkouts:   527.22 MB
  Git db:                            2.63 GB
    272 bare git repos:              2.57 GB
    9 git repo checkouts:           53.73 MB

Let's say I set it to to size limit == 20 gb, but gc=always/every-time, will this slow down common cargo commands significantly?

@matthiaskrgr:

Maybe "artifact" would be a better term?

"Artifact" is already used by cargo to refer to the compilation outputs.
I understand it can maybe be a little confusing to say "files" in the generic sense, when it may not be clear that cargo only tracks individual "src" directories as a unit (not the individual files within). I'm not sure if there is a better way here, though I can try to tweak some of the text.

So can cargo only track changes that are done by itself?

Mostly. It has a synchronization step where it will detect if files are added or removed, such as by an older version of cargo.
(It doesn't track individual files in the "src" directory, just the directory as a whole.)

I have seem some programs write into the cargo cache, sometimes even build files end up in there. Will this cause problems or lead to overeagerly deleted source artifacts?

Unless those programs are using cargo-the-library, then they probably shouldn't be messing with cargo's cache directories. :wink: I realize that cargo-cache is interacting with it, and that's fine, just be aware of the consequences of modifying cargo's internal files. The format and layout was never intended to be something stable that other programs should be interacting with.
Also, because the default automatic deletion is on the timespan of months, cargo shouldn't be too aggressive with deleting anything. Worst case, cargo will just need to re-download something.

I'm curious what this looks like if you have a cache of lets say 10-20 GB

I've been doing most of my testing with a very large cache. I also do tests with dependency trees of various sizes (up to 500 dependencies).
Total:                                  19.09 GB
  46 installed binaries:               389.73 MB
  Registry: github.com                  11.12 GB
    Registry index:                    950.07 MB
    12711 crate archives:                1.66 GB
    12711 crate source checkouts:        8.50 GB
  Registry: github.com                 385.40 MB
    Registry index:                    385.40 MB
  Registry: github.com                  46.54 KB
    Registry index:                     46.54 KB
  Registry: index.crates.io              4.70 GB
    Registry index:                    118.58 MB
    4534 crate archives:               687.69 MB
    4534 crate source checkouts:         3.90 GB
  Git db:                                2.10 GB
    42 bare git repos:                 422.32 MB
    49 git repo checkouts:               1.68 GB

Let's say I set it to to size limit == 20 gb, but gc=always/every-time, will this slow down common cargo commands significantly?

Just to be clear, size limits are only available for manual gc. Automatic currently only supports time-based.

I'm still working on addressing some of the comments, it may be a few more days.
@rustbot author

I think I have addressed most of the comments.
@rustbot ready

Overall, looks good (excepting any discussion on the CLI).
I do have a couple of unreplied-to comments in the Hidden section.

:umbrella: The latest upstream changes (presumably #12625) made this pull request unmergeable. Please resolve the merge conflicts.

What's the progress of this? @epage and @ehuss, do you want an extra pair of eyes helping review this?

We talked over this with a small list of action items.  Once those are taken care of, we were going to merge this.

Thanks!
@bors r+

:pushpin: Commit 0cd970b1c023dd36cd8afa239d6dd278b16fdabb has been approved by epage
It is now in the queue for this repository.

:hourglass: Testing commit 0cd970b1c023dd36cd8afa239d6dd278b16fdabb with merge 9a1b0924c6ea3ac306b663aa73347d3b6a59e7c3...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 9a1b0924c6ea3ac306b663aa73347d3b6a59e7c3 to master...

Thank you @ehuss  and @epage for your efforts for this!

Thanks for working on it! ❤ :shipit:


CDN version should be included in https://github.com/eta-dev/eta/releases

Is your feature request related to a problem? Please describe.
I find absolutely no way to use Eta in Vite, other than
cp -r ./node_modules/eta/dist/browser ./public/vendor/eta
rm -r ./public/vendor/eta/*.dev.*

declare global {
  interface Window {
    Eta: typeof import('eta')
  }
}

const script = document.createElement('script')
script.src = '/vendor/eta/eta.min.js'
document.body.append(script)

const Eta = window.Eta

export default Eta

And vite.config.js
// https://vitejs.dev/config/
export default defineConfig({
  build: {
    rollupOptions: {
      external: /^\/vendor\//,
    },
  },
})

I also notice that eta.min.js does not exist anywhere in Github, only in NPM and various CDN's.
Describe the solution you'd like

Deploy eta.min.js and eta.min.js.map to https://github.com/eta-dev/eta/releases
Solve https://github.com/eta-dev/eta/issues/122

Additional context
https://eta.js.org/docs/learn/install should include Browser (non CDN).

@patarapolw Sorry for the bad question, but why is it necessary for the CDN build to be included in the Github release? I'm a bit wary of adding it there because I'd rather only keep the source code in the Github releases

To facilitate ones who doesn't use NPM at all.
Same reasons as using Github Action to build on Github, and upload to binaries to release page (tags only).

For JavaScript packages, the standard is to host on the NPM registry. Downloads can be downloaded from there, from unpkg, or from jsDelivr.
I think that it's not necessary to distribute the CDN files ourselves, and would just add additional complexity to the build process.


Why is this interface being exported?

I added the zmq NPM module to my project, as well as its typings.  My program is able to access the Socket interface:
import * as zmq from "zmq";
let mySocket: zmq.Socket;

My question is: why does this work?  Looking at the definition file zmq/index.d.ts, this is the definition of Socket:
interface Socket extends EventEmitter {
    ...
}

The interface is not exported, so why does my code get access?

In a d.ts file everything is exported by default.

So normally it would need an export in a ts file but d.ts is a special case?

Sorry, I don't know the ins and outs of declaration files. There are different rules that apply depending on the type of exports - module, ambient, etc. I'll let someone more knowledgeable answer your question.

Based on experimentation, it seems that all types are automatically exported, but you need at least one explicit export to turn the d.ts into a module exporting one.

We actually lint that type definitions should export explicitly but that package is not well linted.


minters and burners

Add mapping of minters and burners that token.owner() can update.
Token is initialized such that mint and burn behavior is the same as previous Token implementation - the auction contract is the only minter and only burner at first.

I added burners too because identical logic. Both default to existing behavior - auction is only the minter and only burner at first. Token.owner() can then add and revoke minters and burners.
Looks like the DeployTokenUpgrade.s.sol is not quite finished so I should do that too as part of this PR, otherwise this is done.

@tbtstl @iainnash check recent changes address all comments except tysons' re: tests

@iainnash @tbtstl this should be good but please give another look.
i went with iain's idea - there is no burner role, but a minter can burn a token that they own currently.
i added fuzzing for tests that tyson requested. in only fuzzed the addresses - but as for whether bool authorized is true or false, i split them into separate tests for adding and removing minters so i hardcoded those values.


Unexpected server response - Amazon

Heya
Getting this error when trying to retrieve from Amazon:
PDF.js v1.0.907 (build: e9072ac)
Message: Unexpected server response (0) while retrieving PDF "https://xxxxx.s3.amazonaws.com/uploads/document/document/3/xxxxx.pdf".

Duplicate of #12. The linked issue also contains required steps to solve the issue.


link ssl3 for latest alpine

Add workaround to fix error below with the latest alpine image, refer to issue: https://github.com/prisma/prisma/issues/25817
https://github.com/enricoros/big-AGI/actions/runs/12429197385/job/34702205785#step:7:384
#23 77.03 prisma:warn Prisma failed to detect the libssl/openssl version to use, and may not work as expected. Defaulting to "openssl-1.1.x".
#23 77.03 Please manually install OpenSSL and try installing Prisma again.
#23 77.03 [Error [PrismaClientInitializationError]: Unable to require(`/app/node_modules/.prisma/client/libquery_engine-linux-musl.so.node`).
#23 77.03 The Prisma engines do not seem to be compatible with your system. Please refer to the documentation about Prisma's system requirements: https://pris.ly/d/system-requirements
#23 77.03
#23 77.03 Details: Error loading shared library libssl.so.1.1: No such file or directory (needed by /app/node_modules/.prisma/client/libquery_engine-linux-musl.so.node)] {
#23 77.03   clientVersion: '5.22.0',
#23 77.03   errorCode: undefined
#23 77.03 }

Thanks @jayrepo for the fix. Merged.


Add security levels (WIP)

Do you think os.unlink, os.rmdir, shutil.rmtree, os.remove,  pathlib.Path.rmdir, pathlib.Path.unlink and os.removedirs should be in level number 1?

Do you think os.unlink, os.rmdir, shutil.rmtree, os.remove,  pathlib.Path.rmdir, pathlib.Path.unlink and os.removedirs should be in level number 1?

I think os.removedirs and maybe shutil.rmtree as both delete more than one dir at a time

About os.fork, os.forkpty, os.plock, I'm not sure whether they should be in level 1 or level 0,
and since we have only two levels it could also be a flag (e.g. extra_protection)

About os.fork, os.forkpty, os.plock, I'm not sure whether they should be in level 1 or level 0,
and since we have only two levels it could also be a flag (e.g. extra_protection)

I think they should be 0, as they are similar to the other 0 funcs.

About os.fork, os.forkpty, os.plock, I'm not sure whether they should be in level 1 or level 0,
and since we have only two levels it could also be a flag (e.g. extra_protection)

I think they should be 0, as they are similar to the other 0 funcs.

OK

About os.fork, os.forkpty, os.plock, I'm not sure whether they should be in level 1 or level 0,
and since we have only two levels it could also be a flag (e.g. extra_protection)

I think they should be 0, as they are similar to the other 0 funcs.

OK

Or have a flag like blockfork

About os.fork, os.forkpty, os.plock, I'm not sure whether they should be in level 1 or level 0,
and since we have only two levels it could also be a flag (e.g. extra_protection)

I think they should be 0, as they are similar to the other 0 funcs.

OK

Or have a flag like blockfork that prevents forking

It will probably be best but then it'll make sense to remove the level completely and use this flag and a filechange flag or something (or extend the restrict edit we already have)

Maybe have a blockdelete flag for removing files and a protectdirs flag for dirs

Maybe have a blockdelete flag for removing files and a protectdirs flag for dirs

So blockdelete, protectdirs and restrictwrite?

Better just have protectdirs and protectfiles I think

Better just have protectdirs and protectfiles I think

Ok. Maybe later we could add a flag to restrict open to an allowlist of user-specified options (so they could allow a and r but nothing else)

We need to update the docs and the docstrings

I will get the README.md
It looks like the action has already updated the other Docs

It looks like the action has already updated the other Docs

Yeah, but in order to update them correctly the docstrings need to be updated to

The last thing left to do before merging is to decide how to treat os.chmod and pathlib.Path.chmod

The last thing left to do before merging is to decide how to treat os.chmod and pathlib.Path.chmod

Maybe add another option like lockperms, or add them when file deletion is denied

Maybe add another option like lockperms

That what I was thinking of

I'll left this chmod as an open issue for now and merge

I looked at the pyip page on this project & it looks good. Maybe we should link to it somewhere...

I'm going to do that when we will release it officially


Implement ReAct

Implement ReAct
Maybe start from here

I gave it a try here #55, getting inspiration from LLaMP ;-)

Oh thank you @fraricci! I wasn't able to look at this these two weeks.. Will look into your PR :)


[stable/kube-state-metrics] Update liveness- and readinessProbes

What this PR does / why we need it:
Adds a livenessProbe and updates the readinessProbe as changed downstream in https://github.com/kubernetes/kube-state-metrics/commit/be1a657608c3ff2d224c371e5265e77a6ddfa6bb
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] 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/chart])

/assign @tariq1890

/ok-to-test


how to add discovery for prometheus

Could you write a discovery config for prometheus in /example/prometheus,like:
- job_name: 'kubernetes-cadvisor'
kubernetes_sd_configs:
- role: node
scheme: https
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
relabel_configs:
- action: labelmap
regex: _meta_kubernetes_node_label(.+)
- target_label: address
replacement: kubernetes.default.svc:443
- source_labels: [__meta_kubernetes_node_name]
regex: (.+)
target_label: metrics_path
replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor

@adoo123 how is this related to elasticsearch_exporter?

@TheMeier Because when I run the deployment of elasticsearch-export,I couldn't search any key of ES on prometheus.

Still this is a general prometheus kubernetes_sd topic and not specific to elasticsearch_exporter

@TheMeier how to fix it or do you hava a doc for install  elasticsearch_exporter with k8s expect use helm


Only deploy the guide when pushing a new tag starting with v

If I understand correctly, this avoids useless re-deploying of the guide. It's a good idea in principle. I just wonder: if we want to do a quick fix to the current guide (without doing a v* tag), then could we redeploy the guide? We would need to work around the changes introduced by this PR, right? Not sure if it's a problem, but something to keep in mind.

The idea is to only deploy the guide when we release a new version (ie. we push a tag), so that, until we have proper versioning, we can update the guide as we go along rather than at the end of a release cycle. It's true that this prevents us from pushing fixes to the current version of the guide, and I haven't found a good way of doing that yet, hence why this PR is just a suggestion.

Won't be needed as we are going to version the guide itself.


[Bug]: jest-config can't import TS file with moduleResolution: node16

Version
29.1.2
Steps to reproduce

git clone https://github.com/Maxim-Mazurok/jest-config-bug-repro
cd jest-config-bug-repro
(optional) nvm i
npm ci
tsc --noEmit - works
npm run test:unit - works
npm run test:integration - doesn't work

Expected behavior
Parse config just fine and exit with No tests found, exiting with code 0
Actual behavior
gives error:
Error: Jest: Failed to parse the TypeScript config file /home/maxim/jest-config-bug-repro/jest.integration.config.ts
  Error: Cannot find module './jest.config.js'
Require stack:
- /home/maxim/jest-config-bug-repro/jest.integration.config.ts
- /home/maxim/jest-config-bug-repro/node_modules/jest-config/build/readConfigFileAndSetRootDir.js
- /home/maxim/jest-config-bug-repro/node_modules/jest-config/build/index.js
- /home/maxim/jest-config-bug-repro/node_modules/jest-cli/build/init/index.js
- /home/maxim/jest-config-bug-repro/node_modules/jest-cli/build/cli/index.js
- /home/maxim/jest-config-bug-repro/node_modules/jest-cli/build/index.js
- /home/maxim/jest-config-bug-repro/node_modules/jest-cli/bin/jest.js
- /home/maxim/jest-config-bug-repro/node_modules/jest/bin/jest.js
    at readConfigFileAndSetRootDir (/home/maxim/jest-config-bug-repro/node_modules/jest-config/build/readConfigFileAndSetRootDir.js:136:13)
    at async readConfig (/home/maxim/jest-config-bug-repro/node_modules/jest-config/build/index.js:208:18)
    at async readConfigs (/home/maxim/jest-config-bug-repro/node_modules/jest-config/build/index.js:404:26)
    at async runCLI (/home/maxim/jest-config-bug-repro/node_modules/@jest/core/build/cli/index.js:182:59)
    at async Object.run (/home/maxim/jest-config-bug-repro/node_modules/jest-cli/build/cli/index.js:155:37)

Additional context
Had to make the switch in https://github.com/Maxim-Mazurok/google-api-typings-generator because https://github.com/sindresorhus/got/issues/2051#issuecomment-1259401339
Environment
System:
    OS: Linux 5.10 Ubuntu 22.04.1 LTS 22.04.1 LTS (Jammy Jellyfish)
    CPU: (20) x64 12th Gen Intel(R) Core(TM) i9-12900H
  Binaries:
    Node: 18.10.0 - ~/.nvm/versions/node/v18.10.0/bin/node
    npm: 8.19.2 - ~/.nvm/versions/node/v18.10.0/bin/npm
  npmPackages:
    jest: ^29.1.2 => 29.1.2

@Maxim-Mazurok Your script in package.json is incorrect
Current
 "test:integration": "npm run jest -- --config jest.integration.config.ts",

Should be
"test:integration": "npm run jest --config jest.integration.config.ts",

@Maxim-Mazurok Your script in package.json is incorrect
Current
 "test:integration": "npm run jest -- --config jest.integration.config.ts",

Should be
"test:integration": "npm run jest --config jest.integration.config.ts",

No, using -- allows to pass cli arguments to npm script as per this answer, I've been using it for years in many projects.
You can even see this from log:
> npm run jest -- --config jest.integration.config.ts

> jest
> node --experimental-vm-modules node_modules/jest/bin/jest.js --passWithNoTests "--config" "jest.integration.config.ts"

Error: Jest: Failed to parse the TypeScript config file /home/maxim/jest-config-bug-repro/jest.integration.config.ts

Notice how it has jest.js --passWithNoTests "--config" "jest.integration.config.ts" part where config argument is getting passed.
And without -- it's not being passed:
> npm run jest --config jest.integration.config.ts

> jest
> node --experimental-vm-modules node_modules/jest/bin/jest.js --passWithNoTests "jest.integration.config.ts"

You see jest.js --passWithNoTests "jest.integration.config.ts" - the --config disappeared.
This is an unrelated matter, perhaps you just didn't notice that I'm not doing jest --config bla but npm run jest --config bla because I have added the jest script. In any case, let's not focus on this as this is not the issue at hand.
One can get the same reproduction by changing jest.config.ts to be:
import { JestConfigWithTsJest } from "ts-jest";
import integrationConfig from "./jest.integration.config.js";

const config: JestConfigWithTsJest = { ...integrationConfig };

export default config;

And then run npm run jest with no arguments and get the same error:
Error: Jest: Failed to parse the TypeScript config file /home/maxim/jest-config-bug-repro/jest.config.ts
  Error: Cannot find module './jest.integration.config.js'

Hope that clears it up, cheers!

Occurring an activity

Same problem for me. tsc and esbuild work fine, jest can't resolve the import.

unstaling

Maybe try switching to vitest, same API, even same plugins usually work, but TS and ESM stuff generally works much better with it.

Excellent tip. I was using vite but didn’t know about vitest! Now “fixed”.   And resolve works like a charm. Problem fixed as well. 😜

No worries! Also, unstaling the issue

Unstale

I've migrated to vitest and also using module resolution "bundle" so this issue is no longer relevant to me.

As I mention it's no relevant to me, so I'll unstale it and unsubscribe, perhaps someone else can take it over, cheers

unstale

still the same

I looked at this issue again and found that this was not the case I was having.
For this issue, I think you probably need to compile TS jest config (jest.config.ts and jest.integration.config.ts) to JS jest config (jest.config.js and jest.integration.config.js) and then pass the js file to --config in the command.
I don't think jest does any transformations on the config files.

This is still an issue. @SimenB Is there a label that can be added so this doesn't get marked as stale? (it's adding unnecessary "bump" comments that's making it hard to follow along for updates)
It looks like compilerOptions.module is hardcoded here: https://github.com/jestjs/jest/blob/f9398b12dfc235695e9a055d27a8f77936d07b01/packages/jest-config/src/readConfigFileAndSetRootDir.ts#L118

Still relevant.

Still relevant.

Just ran into this, wondering how jest is used with modern typescript projects using moduleResolution node16?
Overriding module resolution for tests would mean you get errors from the base tsconfig.json in your editor, or when validating types using for example tsc --noEmit.

For ESM support in Node.js to work without using extra bundlers or compilers module resolution has to be node16. Otherwise the output generated by tsc --build isn't compatible with Node, importing files without extensions just doesn't work without a non standard loader.
If we for example want https://swc.rs/ to generate ESM code we have to use node16 resolution, which basically means swc + jest won't work.

Still an issue, and testing with @noahnu 's solution did not work for me..

I managed to get a consistent fix
change in your package.json "jest": "npm:vitest@latest"

I did not know about this issue and I have submitted a duplicate here half a year ago: #14740
I was able to propose a solution to this issue back then, but the PR is still pending (need help with a test suite or make the decision to ship it without one): https://github.com/jestjs/jest/pull/14739
Some help would be appreciated (with the suite, or even letting me know the fix works for you).

My PR is about the TS config file with modern moduleResolution, but it does not solve the issue with .js imports inside the config.
However, I wanted to suggest a workaround that requires you to add this to the tsconfig.json in your project:
 "ts-node": {
    "experimentalResolver": true
  }

partly addressed in https://github.com/jestjs/jest/releases/tag/v30.0.0-alpha.5 (via #14739)


How we can download and install the maven plugin for Vulnerability Assessment Tool?

How we can download and install the maven plugin for Vulnerability Assessment Tool?
Can you please provide steps how to download( from where we can download this maven plugin) and install the maven plugin for Vulnerability Assessment Tool?

You need to build the plugin yourself (we do not distribute a binary yet). Let's use #147 to continue the build of the project...


Splitting src/iface/interface.rs into multiple files

I was thinking of splitting the implementations of Interface, InterfaceBuilder and InterfaceInner into multiple files, where each file implements for a specific medium. I was working on the IEEE802.15.4 and 6LoWPAN protocol and I found that the src/iface/interface.rs was getting big with things that where sometimes unrelated. What do you think about this change?
But then again, I'm not sure if this is the best way to go as well, since, for example, lookup_hardware_addr is needed for Ethernet and IEEE802.15.4.

I did an attempt at splitting multiple mediums in multiple structs in #336 and it went really badly. Interface is really complex and Ethernet/IP aren't really independent of each other, so you can't simply split them like that. It was an uphill battle against the borrow checker :)
What might work is splitting them in multiple files, but still being impls on the same Interface struct. It's a mostly "cosmetic" improvement though, everything is still a megastruct, but it could still be worth it.

What might work is splitting them in multiple files, but still being impls on the same Interface struct. It's a mostly "cosmetic" improvement though, everything is still a megastruct, but it could still be worth it.

I tried doing that as well and agree that it's very "cosmetic" and even worse than everything in one file. I'll close this issue then.


add a note on Docker for Mac

the DOCKER_HOST value might not be obvious.

@spotify/helios-team

Might it be better to change DefaultDockerClient.defaultEndpoint() so that it will use unix:///var/run/docker.sock for both linux and OS X? Then users with Docker for Mac would not have to set DOCKER_HOST at all.

@johnflavin fair point. I also wanted to document what value to use for people using older docker-client versions as well, prior to any logic that might get added.

👍