[RFC] Should Fulcio put the critical bit on its OIDC extensions?

As discussed in the Sigstore Slack: the certificates currently issued by Fulcio don't include critical bits on any OIDC extensions, even when those extensions are essential to the conceptual policy or identity being verified.
So, the question: should we include the critical bit on these extensions?
Pros:

The critical bit is the intended way in X.509 to signal that an extension must be accounted for during verification, which maps closely to how we expect these OIDC extensions to be used (i.e., clients use at least some subset of these extensions to match a policy.)
Using the critical bit turns client design problems into compliance problems: it provides Sigstore with normative authority ("you're not following the spec!") when clients don't do verification correctly, rather than getting bogged down in design questions.

Cons:

There is a decent amount of impedance mismatch between X.509's notion of "criticality" and how identity verification works/is expected to work in Sigstore: depending on the policy, some OIDC extensions don't need to be checked, despite being marked as "critical" under this change.
Not a con as such, but the critical bit is widely ignored by X.509 clients. There's no formal guarantee that any given client handles it at all (much less correctly), so its inclusion by Fulcio would be purely descriptive and offers no direct security benefits.

In this situation, I believe that the pros (weakly) outweigh the cons -- Sigstore can specify in documentation that the critical bit on its extensions really means that some but the empty subset of extensions must be verified.
Longer term, I wonder if this impedance mismatch might be a good reason to re-think how Fulcio embeds OIDC claims as extensions -- we're already planning to change the current extensions to use ASN.1 types per #900 and #974, so perhaps it makes sense to change from N extensions for N claims to a single (critical) extension that uses an ASN.1 SEQUENCE structure to lay out all claims internally?
cc @znewman01 @haydentherapper @santiagotorres

Longer term, I wonder if this impedance mismatch might be a good reason to re-think how Fulcio embeds OIDC claims as extensions -- we're already planning to change the current extensions to use ASN.1 types per https://github.com/sigstore/fulcio/issues/900 and https://github.com/sigstore/fulcio/issues/974, so perhaps it makes sense to change from N extensions for N claims to a single (critical) extension that uses an ASN.1 SEQUENCE structure to lay out all claims internally?

I like this idea quite a bit, TBH, and would be open to that being the only action we take from this issue, even if it'll take a bit longer.
But I'm not opposed to calling these other extensions critical for now (though I worry this might break clients, even the ones that are parsing these extensions.)

One concern is how ASN1 parsers handle structs with unknown fields. I’m thinking about the case where we add new claims to the certificate. I’d like to avoid having to make a new major release of fulcio to support this.
Changing the critical bit would be a breaking change, so this would be tackled as part of the next major release of fulcio at the earliest.

One concern is how ASN1 parsers handle structs with unknown fields. I’m thinking about the case where we add new claims to the certificate. I’d like to avoid having to make a new major release of fulcio to support this.

Making sure I understand: is the concern here that, with a single extension instead of multiple, we'd be causing problems for some ASN.1 parsers by adding/removing fields that would otherwise be fine as standalone extensions?
If so, I think a reasonable definition would be this (inspired by X.509's own Attributes/Attribute):
Claims ::= SET OF Claim

Claim ::= SEQUENCE {
  id OBJECT IDENTIFIER,
  value ANY DEFINED BY id,
}

where Claims would then be the value of the singular (critical) extension, and each Claim.id would be one of the OIDs already specified by Fulcio. This should then be fully forwards compatible (since the Claims set could have elements added or removed from it without changing the structure).

One concern is how ASN1 parsers handle structs with unknown fields. I’m thinking about the case where we add new claims to the certificate. I’d like to avoid having to make a new major release of fulcio to support this.

I thought that in general parsers should gracefully ignore unknown extensions? And that's the point of the "critical" bit—to mark an extension as not-to-be-ignored. So IIUC adding new extensions is fine even if they have new structs; marking critical is the thing to be careful about.

Changing the critical bit would be a breaking change, so this would be tackled as part of the next major release of fulcio at the earliest.

Agreed it's breaking and we need to do it safely, but I'm a little concerned about "wait for a major version and then breaking changes are okay" as a strategy. While technically it complies with our versioning guarantees, I worry about difficulties in adoption. We don't really control all the clients.
I think something like what @woodruffw is proposing we could achieve something like:

Add new claim format in addition to old one (not critical). Old clients will ignore this.
Teach new clients about the new claim format, tell them to prefer it.
Communicate, wait a long time for old clients to go end-of-life.
Drop old claim format and mark new one critical (at major version bump).

I like that approach! That would give us a very graceful transition period on sigstore-python.

where Claims would then be the value of the singular (critical) extension, and each Claim.id would be one of the OIDs already specified by Fulcio. This should then be fully forwards compatible (since the Claims set could have elements added or removed from it without changing the structure).

I was thinking that you'd unmarshal to a struct with each claim specified, but what you suggested makes sense. It is a little strange to me though that the extension would be marked as critical but a client could ignore some of the OIDs within the extension if they aren't known.
I would prefer we keep the current approach of an extension per value (each extension being critical), rather than encode all in a single extension. These seem pretty similar to me, so unless there's a motivation to switch, I'd prefer to keep what we've been doing.

Add new claim format in addition to old one (not critical). Old clients will ignore this.
Teach new clients about the new claim format, tell them to prefer it.
Communicate, wait a long time for old clients to go end-of-life.
Drop old claim format and mark new one critical (at major version bump).

Yep, that's totally reasonable for doing breaking changes.

It is a little strange to me though that the extension would be marked as critical but a client could ignore some of the OIDs within the extension if they aren't known.

Yeah, that's a good point. It's not clear to me which is more idiomatic:

A single critical extension with internal members that are subject to interpretation, meaning some might be skipped;
N different critical extensions, of which some subset must always be inspected and interpreted (while others may be skipped)

Actually, it might be an issue if every extension is critical if a client doesn’t care about some values, say, the custom OIDs set for CI. If it’s marked as critical, a client should know how to deal with the extension. This might be why most extensions for web PKI certs are marked as non critical, not sure though.

Also if any new extensions are added, then a client wouldn’t yet know of them, so I don’t think you can mark them as critical.

Closing due to the above

Sorry for the necropost here!
FWIW, I think there's still a part of this issue that's worth considering (the part not related to the critical bit): https://github.com/sigstore/fulcio/issues/981#issuecomment-1407468686 would be a refactoring of the claims layout to make it more flexible/extensible in the future, while also giving us the flexibility to add "non-authenticated" extensions (i.e. ones derived from the user's request, rather than from the OIDC identity).
Should I open a separate issue for that, or should we reuse this one?

Yeah, I'd like to see a separate issue for that. But it's a good idea :)

Sounds good! I'll break it out.

Happy to discuss it more in a separate issue, but we won't want to break clients this significantly with a V2 unless there's good motivation to do so.


Close Button

It doesn't go into tabCloseButton method when i click on close button. It says it is EXC_BAD_ACCESS.
Also it doesn't zoom in or out. What is the problem ?

Should be fixed for you doing this, instead of PEARImageSlideViewController *vc...
@property (nonatomic,retain)PEARImageSlideViewController * slideImageViewController;
_slideImageViewController = [PEARImageSlideViewController new];


Fix Typo (ArXiv link)

I'm not sure that you intentionally set the ArXiv link to https://arxiv.org/abs/2111.09881(Restormer) in README.md .
I think it have to be changed as https://arxiv.org/abs/2212.00235(VIDM, paper of this repo.)

Was about to write the same comment :)

@gh-BumsooKim @kartheekmedathati Big thanks to your reminds. (The error link let me lose so many potential citations)

Good! your welcome


Updated metronome version to 0.2.2

High Level Description
Bugfix Release
Related Issues

https://jira.mesosphere.com/browse/DCOS-14228

Checklist for all PR's

[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): https://github.com/dcos/metronome/releases/tag/v0.2.2
[x] Test Results: https://jenkins.mesosphere.com/service/jenkins/view/Metronome/job/Metronome/job/metronome-pr-unit-tests/102/
[ ] Code Coverage (if available): n/a

PLEASE FILL IN THE TEMPLATE ABOVE / DO NOT REMOVE ANY SECTIONS ABOVE THIS LINE
Instructions and Review Process
What is the review process and when will my changes land?
All PRs require 2 approvals using github's pull request reviews.
Reviewers should be:

Developers who understand the code being modified.
Developers responsible for code that interacts with or depends on the code being modified.

It is best to proactively ask for 2 reviews by @mentioning the candidate reviewers in the PR comments area. The responsibility is on the developer submitting the PR to follow-up with reviewers and make sure a PR is reviewed in a timely manner. Once a PR has 2 ship-it's, no red reviews, and all tests are green it will be included in the next train.

cc @meichstedt @zen-dog
This should also be available in 1.8. I did not find the correct release branch, isn`t it 1.8.9?


#70 report promise errors

Catches and display rejected promises.
As seen in the commits, the first test overwrote setTimeout, which seemed very hacky. Now, it uses window.onerror. I tried using window.addEventListener (since you can't remove an onerror), but the tester was still seeing the error (despite calling event.preventDefault() and event.stopPropagation()).

@christopherjbaker did you check that window.onerror exists in all supported browsers?  (this is why I suggested setTimeout)

I did not (I have not run into that before). According to Setry however, it has been supported in some means since IE8 and Safari 9. Though the details vary, this is only using the first argument (message) which is available in all cases.
I can certainly switch it back to setTimeout if that is more comfortable. Or dig into steeljs and see how they catch it?

If it's supported in all browsers, then that's good enough for me.

I was reviewing a client codebase today because we were getting bitten by this issue a lot (and researching why it was happening eventually led me here).  I have one thought on the matter

Might it make more sense to just reject a new promise in the setTimeout() instead of always throwing it?  Newer browsers have a onunhandledrejection event which users might opt to use rather than onerror for tracking rejections.  It's not always the case that a promise is rejected with an error (but often is).  Maybe just checking whether reason instanceof Error is true and either rejecting a new promise in the timeout or re-throwing the error based on the result would suffice.

It was fairly easy to switch out the logic to use Promise.reject, though I am having trouble catching rejected promises in the test. StealJS seem to be pre-emptively catching them, and neither window.onerror not window.onunhandledrejection or firing.

I tested how various environments handled errors and rejections to see what our options would be here. Behaviours of note: (by captured, I mean with onerror or onunhandledrejection)

IE13/14: uncaught rejected promises are swallowed. Promises with throw are logged but cannot be captured
Safari 9/10: all uncaught promises are swallowed (and cannot be captured)
Firefox: all uncaught promises are logged, but none can be captured

Due to this, the only safe way to make sure our caught promises are logged is to throw them. With some sort of feature detection, we might be able to create a rejected promise for Chrome (or if we assume people who care to see the error are on Chrome). Unfortunately, putting the throw in a setTimeout causes donejs develop to explode, and returns the error to the browser instead of the html page.
It seems that one of the libraries used (tested on the donejs-chat tutorial) is consuming all errors (including uncaught promises), and logging them, but preventing them from being captured, so a throw and a Promise.reject are currently being handled the same (logs to console, but cannot be captured). Perhaps this should be its own issue?
Due to the above issues, I can think of no way to write a test, though I have left my onerror test in place but commented out, in case we can resolve the above handling issue.

Tests pending canjs/can-util#243

Accidentally merged. Reverted and recreated at #80.


Snomed codes validation

Hi, I have a question regarding the validate.py script:
I've seen that some fields like edchiefcomplaint don't get an "isin" validation, referencing the values from nhsdd_snomed, why is this?
Thanks!

Thanks for taking the time to dig into this. The emergency care dataset validation logic has not been completed yet. Quin and I will find some time this week to do this.
Happy to take contributions.  If you are familiar with git workflow, then please fork, clone your work, develop and create a pull request. Alternatively, happy to have code snippets as responses to issues.

When do we get the next release 🥇
:octocat:

@ccarenzoIC , please see https://github.com/LTHTR-DST/hdruk_avoidable_admissions/pull/21#issuecomment-1421571369 and let me know what you think.
@MattStammers, will aim 0.2.0 with ED data pipeline tomorrow after conferring with @ccarenzoIC  and @quindavies. We want to test this against LTH data before tagging it as a release.

A number of challenges remain with SNOMED code validation - see #27 as well.

Closing as multiple PRs have addressed this. Some challenges remain but none that can be readily solved through this libary.


Add new scope mapping - role search UI bug

Description:
Two overlapping resulting dropdowns are displayed when type few letters and try to search for a mapping role (scope) in admin portal when trying add new role alias mapping.

Steps to reproduce:

Login to admin portal
Go to Scope Assignments >  Click "Add scope mapping"
Provide a name > Click "Next"
Under "Select permissions" select "Role Alias"
In "Mapping Role" search box type "internal"

You will see two overlapping resulting dropdowns. (here you have to select the role u prefer). This is confusing. Need to remove one drop down list.

Affected Product Version:

Environment details (with versions):

OS:
Client:
Env (Docker/K8s):

Optional Fields
Related Issues:

Suggested Labels:

Suggested Assignees:

Seems like first overlay is coming from the browser (previously typed values as suggestions)


Filing Type "CT ORDER"

Hello,
Thank you for maintaining this incredible tool! I am wondering why the code doesn't support filing type "CT Order"? (see https://www.sec.gov/edgar/searchedgar/ctorders.htm). My apologies if I miss anything here.
Best,
Jacob

@jiapenghe1996 you are right. We have an open PR that should solve this. I'll merge that into master. Thanks for bringing this to my attention!

@jiapenghe1996 you are right. We have an open PR that should solve this. I'll merge that into master. Thanks for bringing this to my attention!

Thank you!

@jiapenghe1996 you are right. We have an open PR that should solve this. I'll merge that into master. Thanks for bringing this to my attention!

This may or may not related to this Issue: do you know why the downloaded txt file for "CR Order" is garbled? (for example, https://www.sec.gov/Archives/edgar/data/1123979/999999999715000718/9999999997-15-000718.txt).
Thank you for reading my post.

Hey @jiapenghe1996, looks like they are trying to include a PDF which shows up weird.

Closed with #201


Home batteries and cars and and and... ;-)

Hej Olli,
I am looking for a piece of software to automate the electricity side of my household. Soon (2 weeks) I will be in dynamic enery pricing. Soon, (couple of months) I am looking to upgrade my solar panels, add another electrc car, install my electric water heater, consider installing a home battery. In that sense, I was looking for something that can schedule the right actions based on power availability (battery, solar panels, grid), price and required consumption taking into account required vs available power so to not overload anything.
Does Powerguru provide a decent basis for that? Interested to hear what is still missing.
KR,
Herman Eggink
firstname dot lastname at outlook.com

Hello Herman,
Please have a look at current ESP32 based project Arska. Basically, you can do relay controlling rules based on different kinds of input; price based values, measured net import/export, time/date.  Solar weather forecast is currently available in Finland.
BR,
Olli

Hey Olli,
Many thanks. Is the arska.js the central piece and you wrote that?
Currently, I run domoticz as my automation vehicle. In that light, this facility would need to integrate there rather than thru GPIO but that should be fine. That said, I would be quite in favoiur of having a docker type solution instead of an ESP based. I understand the ESP requirement if you need to use GPIO but most systems have some 'external' interface (web, modbus, ..).
Do you think that code is adaptable to achieve that? I have seen systems like BLIQ but these are typically very limited to controlling home batteries in relation to energy rates AND cost (quite some) money. A good open source algorithm would be brilliant.
H

Hi,
Arska.js is a main part of UI (will be updated...) but the logic is in main.cpp (C/C++) .
The idea of Arska is to be a lean box that can control (independently, without home automation) eg. boilers (contactor control), heat pumps (with relay input), etc. It could also control batteries with relay input if charging/discharging info would be enough for the battery. There have been discussions, but I do not know if anybody has used it with batteries yet. In addition to GPIO, it can control also Tasmota and Shelly relays.
Olli
PS. A note to anybody who is reading this possibly later:  I'm talking about Arska repo, not this one.


Config for SparseCtrl

Please add an example config for SparseCtrl. Apparently we can provide reference frames and SparseCtrl will fill in the missing frames in between the provided frames but I can't find any examples showing how.

Hey, was in the same boat but found one on reddit, cheers
https://comfyworkflows.com/workflows/c23b2d27-7e68-4218-ab6f-8a52c28dacc2
https://www.reddit.com/r/comfyui/comments/1acyeqb/animatediff_v3_sparsectrl_scribble_sample/


chore: solomachine mock channel handshake, allow zero-height in channel handshake msgs

Description

Allow zero-height in channel handshake msgs
Adding mock channel handshake to 06-solomachine

closes: #2749
Commit Message / Changelog Entry
type: commit message

see the guidelines for commit messages. (view raw markdown for examples)

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md).
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/).
[ ] Added relevant godoc comments.
[ ] Provide a commit message to be used for the changelog entry in the PR description for review.
[ ] Re-reviewed Files changed in the Github PR explorer.
[ ] Review Codecov Report in the comment section below once CI passes.

Left changelog section empty as this is being upstreamed to @colin-axner's branch at the moment.
We can change things if needs be!

Codecov Report

Merging #2776 (4dea53f) into colin/1874-sm-proof-height (abbaeef) will decrease coverage by 0.03%.
The diff coverage is n/a.

Additional details and impacted files

@@                      Coverage Diff                       @@
##           colin/1874-sm-proof-height    #2776      +/-   ##
==============================================================
- Coverage                       78.73%   78.69%   -0.04%
==============================================================
  Files                             178      178
  Lines                           12295    12283      -12
==============================================================
- Hits                             9680     9666      -14
- Misses                           2188     2190       +2
  Partials                          427      427

Impacted Files
Coverage Δ

modules/core/04-channel/types/msgs.go
76.17% <ø> (-0.93%)
:arrow_down:

...dules/light-clients/06-solomachine/client_state.go
86.61% <0.00%> (-1.58%)
:arrow_down:


Please invite me to the community

Name
Sincerely
Additional Context
I'd like to be part of this community.

Invitation sent to join the GitHub Organization. Welcome to Infraform 🎉Please check your mail to accept the invitation sent by GitHub! 🤖About usInfraform is an open source solution for serverless platforms, it is designed for developing solutions and enhancing creators to create their infrastructure 💻 Great to have you in our community ✨ Looking forward to your valuable contributions! 🤓 You can also check our community ✨ Github ✨ LinkedIn 💜 You can also share our community with other folks who want to learn about development, DevOps, tech, and contribute together and with us 👉💜👈


Add svgo to optimize the SVG Sprite

Thanks for this tool! We just started using it and it's working great! I'm currently doing svgo as a separate process after the fact. Would you be open to adding svgo as part of this tooling? Possibly adding as opt-in through an --optimize flag?

Thank you @alexanderson1993! Greatly appreciated!

Thanks for the suggestion!


Problem with buttoms

Hey hello, my problem is that when I go to delete or make another action, asking me to check with the botton "Select". The problem is that when I press restarts and returns to themehax loads the coldboot and choose Homebrew, I go to svdt and the file is not deleted.
Sorry bad english xD

Are you hitting Start?

nope only select, how tells under


fix: graphql e2e test deployment

Description of changes:
Fix GraplQL e2e tests after policy change
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #2887 into master will increase coverage by 2.13%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #2887      +/-   ##
=========================================
+ Coverage   61.17%   63.3%   +2.13%
=========================================
  Files         221     218       -3
  Lines       11440   11055     -385
  Branches     2211    2147      -64
=========================================
  Hits         6998    6998
+ Misses       4134    3749     -385
  Partials      308     308

Impacted Files
Coverage Δ

...mplify-appsync-simulator/src/mqtt-server/server.ts

...ync-simulator/src/mqtt-server/abstract-listener.ts

...mplify-appsync-simulator/src/mqtt-server/client.ts

...ync-simulator/src/velocity/util/transform/index.ts

...-appsync-simulator/src/data-loader/lambda/index.ts

...psync-simulator/src/resolvers/pipeline-resolver.ts

...mplify-appsync-simulator/src/resolvers/function.ts

...amplify-appsync-simulator/src/mqtt-server/index.ts
0% <0%> (ø)

...-appsync-simulator/src/velocity/util/list-utils.ts
0% <0%> (ø)

...ages/amplify-appsync-simulator/src/server/index.ts
0% <0%> (ø)

... and 1 more

Continue to review full report at Codecov.

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


Everything is super bright probably some bugs with sun

Describe the bug
A clear and concise description of what the bug is.
System Information (please complete the following information):

macOS:  15.0.1
Device:  MacbookPro 14inch 2021
CPU:  Apple M1 Pro]
RAM: 16G

Turn off volumetric fog


CDN missing

Looks like<EMAIL_ADDRESS>no longer exists? It redirects to<EMAIL_ADDRESS>with the error Cannot find "/umd/eventemitter3.min.js" in<EMAIL_ADDRESS>A Shopify theme we're using references the CDN - is there any way you can republish or provide a different link?

See https://github.com/primus/eventemitter3/releases/tag/5.0.0


Feat: Improving rate us functionality by adding the ratings to the DB

Describe the feature
When a user gives a Rating, It should be stored in the DB and the user can only give the rating when he/she is logged in .
User can also edit the rating.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@anuragverma108 plz assign it to me


TS error while using WebComponent in Next (v9.0.3 )

Discussed in https://github.com/nolimits4web/swiper/discussions/6362

Originally posted by drMonro February  7, 2023
Trying transfer to WebComponent i got TS error
How can I fix it?

https://coryrylan.com/blog/how-to-use-web-components-with-typescript-and-react


ECDH/0x18: unknown tag

Using a secret OpenPGP key  containing a curve25519 algo yields this exception:
Caused by: org.bouncycastle.openpgp.PGPException: unknown algorithm tag in signature:18
        at org.bouncycastle.openpgp.operator.jcajce.OperatorHelper.createSignature(Unknown Source)
        at org.bouncycastle.openpgp.operator.jcajce.JcaPGPContentSignerBuilder.build(Unknown Source)
        at org.bouncycastle.openpgp.operator.jcajce.JcaPGPContentSignerBuilder.build(Unknown Source)
        at org.bouncycastle.openpgp.PGPSignatureGenerator.init(Unknown Source)
        at org.jreleaser.engine.sign.Signer.initSignatureGenerator(Signer.java:214)
        ... 19 more

Fix:
The case here:
https://github.com/bcgit/bc-java/blob/4a937ecd3ed3934fecb742063ea2fea6e7b9af8d/pg/src/main/java/org/bouncycastle/openpgp/operator/jcajce/OperatorHelper.java#L271-L277
Must contain this algo, too:
https://github.com/bcgit/bc-java/blob/4a937ecd3ed3934fecb742063ea2fea6e7b9af8d/pg/src/main/java/org/bouncycastle/bcpg/PublicKeyAlgorithmTags.java#L17
Affected projects:
https://github.com/jreleaser/jreleaser/issues/152
Also probably sonatype nexus at some point.

ECDH is not a signature algorithm. If the key is being used for ECDSA it should be tagged as that. Little if any good is believed to come from using key-agreement/encryption-keys for signing and visa-versa.

@dghgit I retraced from your comment in the jreleaser issue the OpenPGP initialization. I do not see where Andres could have done something wrong, he uses pgpSecretKey.getPublicKey().getAlgorithm() which is ed25519:
sec   ed25519/0x31605D40DD2A99F4 2021-05-16 [SC] [expires: 2025-05-15]
      Key fingerprint = 331C 8E5F F20D 3A48 C8E1  81A9 3160 5D40 DD2A 99F4
uid                   [ultimate] bmarwell <------------------>

I think there must be a problem with parsing the key on your side, because it should not have been 18 in the first place, but 22 (https://github.com/bcgit/bc-java/blob/4a937ecd3ed3934fecb742063ea2fea6e7b9af8d/pg/src/main/java/org/bouncycastle/bcpg/PublicKeyAlgorithmTags.java#L21).


Update method to determine node or browser version of less

import node version of less based on process information rather than existence of builder
allows for plugin to be used with testing frameworks without mocking out a full dom environment
I have a React app that imports less files directly into component files. When running my tests, the plugin was choosing to use the browser version of less rather than the node version of less since I'm not using a builder in my tests. This allows me to use the plugin without having to mock out an entire browser environment.

@natergj merged. I hope it works out for you.


add documentation from example to codebase

you added such lovely documentation to the example, but the actual code has no documentation at all. I think maintaining the documentation in many examples, and duplicating it, makes it hard to maintain so I would suggest to shorten the docs in the examples and properly maintain docs in codebase.
My editor also removed trailing whitespace, would be good if yours does the same.

I also added a travis configuration file so the library gets build on a remote server and lets us know when there's something wrong with the build. You need to enable travis for this repository though (i dont have permissions), see https://docs.travis-ci.com/user/tutorial/#to-get-started-with-travis-ci-using-github

@wollewald can you enable travis for this repository? see https://docs.travis-ci.com/user/tutorial/#to-get-started-with-travis-ci-using-github


Fault Rock Page

@nicolasmroberts @ellennelson10
With commit 64b1ba1df9cc95fdac65fa62c6b5117f575e8f2d I've added this page with the form from KoBo Forms titled "Rock Type - Fault and shear zone (11/21)"
Do you have an icon for the new Fault Rock page?
The form is pretty small so I made a basic quick entry modal, like the other rock quick entry modals, but if you want something different let me know.

@jessicagood Here is a new icon package with a Fault Rock icon. Yes, just the basic quick entry modal would be awesome.
30Mar2022.zip

Added icons with commit ef61b5e600e71d951404faac9ed7adc1565250ac


RAM usage of bigger fonts

I'm using this project to get bigger fonts on an ESL8266 with an SSD1306 128x64.
Sadly, while a fontsize of 16, generated with font-to-py works perfectly, any size above that is too big for the ESP. It leads to MemoryError: memory allocation failed, allocating 11713 bytes with font-size 32, on importing the font.py.
 Is this normal or, hopefully, am I doing something wrong? :)
Font generated by python3 font_to_py.py -f OpenSans_Regular.ttf 48 opensans_regular_48_mono.py
Minimal example, crashes at the import:
import ssd1306
from display.writer import Writer
import display.fonts.opensans_regular_48_mono as opensans48

ssd = SSD1306_I2C(128, 64, machine.I2C(etc etc))
wri = Writer(ssd, opensans48)
wri.printstring('Test')

Have you installed the Python font file as frozen bytecode? Its RAM usage in that mode should be very low.

Hah, i wondered if bytearrays were always frozen in python or if I forgot something.
No, I just copied the resulting font.py to the ESP and imported it. That's what I got from the readme...
Could you tell me where that missing part is written? Maybe I failed, or maybe the documentation is a bit vague there, in which case I could try to improve it? :)

See README.md introduction. I thought I'd made it pretty clear, e.g.

Note that the use of frozen bytecode is entirely optional: font files may be imported in the normal way if RAM usage is not an issue.

When you import a normal (non-frozen) Python file, the compiler translates the code into bytecode which is stored in RAM. To create frozen bytecode the Python compiler is run as part of the build process. This produces bytecode which is stored in flash. Even then some attention to detail is required to avoid inadvertent copying to RAM. If you look at the Python code generated by font-to-py you'll see that a memoryview object is used to ensure no copying takes place when a glyph i accessed.

Okay, I see my problem and am now off to building my own firmware ;)
I guess for me personally, dropping "import as frozen bytecode" a couple of time just wasn't enough, as I had no idea what that meant with regard to micropython/firmware.
I could argue that many people start off with an ESP8266 and a display and come to this project in a very early stage of their ESP-development to get bigger fonts. Inserting "build new firmware with the font.py as module, to get it frozen" as a step in the font-to-py, writer, device driver chain would point people in the direction of building custom firmware, which also is a nice way deeper into development and understanding the ESP :)
If you agree, I'd suggest to add something along the following line at the end of the font_to_py.py section in the readme:
The resulting Python source file can then be incorporated into your
ESP-firmware to be accessible as frozen bytecode.
Note that the use of frozen bytecode is entirely optional: font files
may be imported in the normal way if RAM usage is not an issue.```

Thanks for clarifying that step for me and getting me into knowing how to build my own firmware :)


[DO NOT MERGE] Evidence support transaction by group

Summary

Concisely describe the issue and your solution:
Link to existing issue (type "#" to check):
Specify the tests done so far:

Solutions (Optional)
Please describe the details of your solution if it might be too complicated for reviewers.

Codecov Report

Merging #209 into develop will decrease coverage by 2.56%.
The diff coverage is 21.01%.

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


ILI9488: Fix low DMA crash - retry on allocation failure

In case of high DMA usage, the driver may not be able to allocate enough DMA capable memory resulting in a crash. Retry loop till enough memory becomes available.
Example of high DMA usage: High rate of HTTP requests & responses (>2048 bytes) via WiFi while updating big portions of the screen.

Looks good to me, I think this is the only driver that allocates memory hehe.


Expose html KeyboardEvent's keyCode field in RawKeyEventDataWeb class

Use case

Some applications use keyboard events that do not have a specified key or code field and must interpret the keyboard event's keyCode field.
Proposal

Expose html KeyboardEvent's keyCode field in RawKeyEventDataWeb class

This has been discussed with and approved by @dkwingsmt.
For more context (Google internal doc): https://docs.google.com/document/d/1inEHNhqglzlqQKCkRWYiC9wWn0tus-U3BXiuENqTfv8/edit?usp=sharing&resourcekey=0-WmlMQRjj1YLFE0BgGGDoZA


update feature config pattern matching

Related issue
Closes: #100
Description

Update test feature configs to use more precise matching
The updated file name patterns now only match file paths that end with the specified character string
The test files will match what is used in production

Supplemental testing
Describe any testing done in addition to existing unit tests
Additional context
Please provide any additional information related to this PR

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I'm not sure I understand this change.. Is there a code update somewhere to go along with this, or will the code now automatically work with this?

The code will automatically work with this (XmlFileQuery has always matched FileNamePattern via regex). These changes will just allow us to match test files with what is currently in S3 (S3 file had to be updated to prevent inadvertent files matches, e.g. ~/some/path/app/config.cs would match when targeting app.confg)


Allow players to set their spawns in beds during the daytime

I'm going to go ahead and merge. The comments Max left about respawn location and Title packing should go back on the TODO list as future improvements.


Navio: add SPI GPS continued

continuation of #5440
Tested on Navio2, gps driver works (I did not get a gps signal though, because I tested indoors)

@bkueng Good to merge?

yes, this can go in, I tested once more on Pixracer


repeated semidefinite constraint?

When using a (positive) semidefinite constraint, it would appear the translated problem has generate such a constraint twice.  Maybe I do not have the correct understanding of how cvxopt (or scs) arranges the constraints Gx <= h but I have checked both matrices G, h and the top k rows is the same as the bottom k rows.
A minimal example would be:
import cvxpy
import numpy as np
N = 5
magic_square = np.zeros((N,N), dtype=int)

n = 1
i, j = 0, N//2

while n <= N**2:
    magic_square[i, j] = n
    n += 1
    newi, newj = (i-1) % N, (j+1)% N
    if magic_square[newi, newj]:
        i += 1
    else:
        i, j = newi, newj

X = cvxpy.Semidef(N)
obj = cvxpy.Minimize(cvxpy.trace(X*magic_square))
## constraint the diagonal to ensure the problem is bounded
constraints = [X >> 0, cvxpy.diag(X) == 1]
prob = cvxpy.Problem(obj, constraints)
cvxopt_data = prob.get_problem_data(cvxpy.CVXOPT)
print(cvxopt_data['dims'])

Remove the X >> 0 constraint. It's implied by X = cvxpy.Semidef(N).


The Date column is updated when select the same object to another where statement and then flush()

To Reproduce
Steps to reproduce the behavior:

test.entity.ts

import { Entity, PrimaryKey, Property } from '@mikro-orm/core';

@Entity()
export class TestEntity {
  @PrimaryKey()
  id!: number;

  @Property()
  name!: string;

  @Property()
  createdAt = new Date();
}

Logic Execution Part

async test() {
  await this.orm.em.findOne(TestEntity, {
    id: 1,
  });

  await this.orm.em.findOne(TestEntity, {
    name: 'test',
  });

  await this.orm.em.flush();
}

Data in the db

id
name
createdAt

1
test
2022-12-15 15:32:29

DB query

[MikroORM] [query] select `t0`.* from `test_entity` as `t0` where `t0`.`id` = 1 limit 1 [took 2 ms]
[MikroORM] [query] select `t0`.* from `test_entity` as `t0` where `t0`.`name` = 'test' limit 1 [took 3 ms]
[MikroORM] [query] begin
[MikroORM] [query] update `test_entity` set `created_at` = '2022-12-15 15:32:29.000' where `id` = 1 [took 1 ms]
[MikroORM] [query] commit

Versions

Dependency
Version

node
18-alpine

typescript
4.9.3

mikro-orm
^5.6.0

your-driver
mariadb:latest

I told you to provide complete reproduction, so we can reopen your issue, not that you should create new issue, with literally no additional details. I gave you a passing test case, a complete one, exactly as the one I would like to see from you - and you keep providing incomplete information. Nope, this is not reproducible 🤷
import { Entity, PrimaryKey, Property } from '@mikro-orm/core';
import { MikroORM } from '@mikro-orm/mariadb';
import { mockLogger } from '../helpers';

@Entity()
export class Test {

  @PrimaryKey()
  id!: number;

  @Property()
  name!: string;

  @Property()
  born!: Date;

}

let orm: MikroORM;

beforeAll(async () => {
  orm = await MikroORM.init({
    dbName: `mikro_orm_test_3847`,
    port: 3309,
    entities: [Test],
  });
  await orm.schema.refreshDatabase();
});

afterAll(async () => {
  await orm.close(true);
});

test(`3847`, async () => {
  const r = await orm.em.nativeInsert(Test, { name: 'n', born: new Date() });

  await orm.em.findOne(Test, { id: r });
  await orm.em.findOne(Test, { name: 'test' });

  const mock = mockLogger(orm);
  await orm.em.flush();
  expect(mock.mock.calls).toEqual([]);
});

Once again, please provide complete reproduction I can execute myself and see it fail.

First of all, I apologize for being clumsy because it was my first time asking an open source.
There is a problem with the test case you showed me.
await orm.em.findOne(Test, { name: 'test' });

Fixing the above code down causes a bug I'm facing.
await orm.em.findOne(Test, { name: 'n' });

Below is an error in the console.
expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 11

- Array []
+ Array [
+   Array [
+     "[query] begin",
+   ],
+   Array [
+     "[query] update `test` set `born` = '2022-12-15 17:47:34.000' where `id` = 1 [took 0 ms]",
+   ],
+   Array [
+     "[query] commit",
+   ],
+ ]

  56 |   const mock = mockLogger(orm);
  57 |   await orm.em.flush();
> 58 |   expect(mock.mock.calls).toEqual([]);
     |                           ^
  59 | });
  60 |

Once again, I hope you will forgive my mistake, and I would appreciate it if you could solve my problem :)

Oh, my bad, yeah that's indeed a bug!

Oh right, now I remember, I believe the mariadb driver (the underlying library) does not support dateStrings: ['DATE'] option (which we use), and it only interprets this as "use date strings for everything" (e.g. dateStrings: true), while we want to use it only for date columns, not datetime.

I solved this problem by creating a custom type.
date-string.type.ts
import { Type } from '@mikro-orm/core';

export class DateStringType extends Type<Date, string> {
  convertToDatabaseValue(value: Date): string {
    if (value instanceof Date)
      return value.toISOString().slice(0, 19).replace('T', ' ');

    return value;
  }
  convertToJSValue(value: string): Date {
    if (value) return new Date(value);

    return null;
  }
  getColumnType(): string {
    return 'timestamp';
  }
}

Use case
@Property({ type: DateStringType })
createdAt = new Date();


same name on variable and function is not allowed

to reproduce: create a function with name "test" and create a variable with name "test".
Result: it will complain that it cannot run the code. "Cannot redeclare block-scoped variable "test" "
I'm not sure if this is a bug or expected behavior?

Yeah, we handle other reserved names so we should handle this as well.


Add package nmiline

(This package needs NiGui to use)

The current tagged version on your package doesn't have a .nimble file so the installation fails. Please tag a new version (make sure you update the .nimble file with the correct version prior to tagging).

Thank you , and I just added .nimble file on new release.

Fixed.

I fixed (‥ )

Would this be okay?

Sure, that seems fine. Strange that srcDir = "src" isn't enough though.

This project  needs NiGui (other library) to use. Should I make some changes?

just add it to requires list in your nimble file, and dont make a new release for new version :)

OK .　I would like to refer to you .
Thank you!


MQTT - CNAME (user) is the same for all instances

All iot-agent runs are registered with the same "user" (cname) in EJBCA.
Is this a problem for scalability?

initialConf.py
35  certUtils.createEJBCAUser(conf.EJBCA_API_URL, conf.CAName, "mosca", passwd)

We've already discussed this issue with our security team, and concluded that for our use case, its not a problem.


Beyblade Card Catalog

Describe the project
Beyblade Card Catalog web page. The goal of this project is to build an interactive frontend page that displays Beyblade cards fetched from a JSON file and incorporates a filtering mechanism to enhance user experience and facilitate card exploration.
The web page will showcase a visually appealing interface where Beyblade cards will be presented. The project will leverage a JSON file containing data for various Beyblade cards. This data will be dynamically fetched and utilized to populate the card catalog, ensuring easy maintenance and future expansion of the card collection. The frontend page will incorporate a filtering mechanism to allow users to narrow down their card search based on specific criteria. The web page will be developed with a responsive design approach, ensuring optimal display and functionality across different devices and screen sizes.
Technologies:

HTML
CSS
JavaScript

Issue Type:

[ ] Bug Report
[ ] Feature Request
[ ] Documentation
[x] New Project

Additional context
The frontend interface will incorporate a filtering feature, enabling users to narrow down their card search based on specific parameters. The web page will be created with a mobile-responsive design approach, guaranteeing excellent display and usability across diverse devices and screen dimensions.
Screenshots

If applicable, add screenshots to help explain your problem.

please assign me this issue

Please assign me this issue under SSOC 2.0 @TusharKesarwani

@TusharKesarwani  @zugzwang03 Sirs, please review this pr and merge it into the main branch of this repository for a successful contribution under SSoC 2.0 program

@TusharKesarwani  @zugzwang03 Dear Sirs, I kindly request you to review this pull request and consider merging it into the main branch of this repository. By doing so, we will achieve a successful contribution under the SSoC 2.0 program. The pull request includes the addition of a project and the resolution of a bug that was previously preventing projects from rendering on the main page.
Thank you for your attention and consideration.


[Packager] RCTPOPAnimationManager.js - syntax error after conversion with babel

In Libraries/BatchedBridge/BatchedBridgedModules/POPAnimation.js the following  block is invalid after transpiling it with babel:
var RCTPOPAnimationManager = require('NativeModules').POPAnimationManager;
if (!RCTPOPAnimationManager) {
  // POP animation isn't available in the OSS fork - this is a temporary
  // workaround to enable its availability to be determined at runtime.
  // For Flow let's pretend like we always export POPAnimation
  // so all our users don't need to do null checks
  module.exports = ((null: any): typeof POPAnimation);
} else {
  /*...*/
}

It will turns to
'use strict';

var RCTPOPAnimationManager = require('NativeModules').POPAnimationManager;
if (!RCTPOPAnimationManager) {
  // POP animation isn't available in the OSS fork - this is a temporary
  // workaround to enable its availability to be determined at runtime.
  // For Flow let's pretend like we always export POPAnimation
  // so all our users don't need to do null checks
  module.exports = ;
} else {
  /* ... */
}

resulting in a syntax error because of the broken moule.exports assignment.

module.exports = ((null: any): typeof POPAnimation);
is this valid syntax or is the issue with the transformer?

Ran into this myself on facebook/react-native#8b93b9 installing from https://github.com/rnplay/rnplay-ios/tree/c97ebe51860abcc249a9cbbf754b3bc8e0ddaad0

Fixed via babel/babel@64f4209119e5a77cb4bc719cbec0e560a493a8bc. This really should have been reported on the babel/babel repo.

Thanks @sebmck!

@amasad looks like the next step is to upgrade babel

Why is the Babel version fixed :fearful:

I believe it has to do with how fb internally downloads npm packages. It'd be better for the external community for fb to use semver's caret in react-native's package.json, run npm shrinkwrap to generate npm-shrinkwrap.json to pin all dependencies for internal use, and then exclude npm-shrinkwrap.json from the external directory that is synced out to GitHub. cc @vjeux would this work for the team?

What @ide said re npm packages. Actually, since we are currently checking in the modules internal, I don't see any harm in unpinning the dependencies. Anyways, we want to update Babel anyways, to get the new perf wins. @DmitrySoshnikov: I believe you were starting to update babel?

@DmitrySoshnikov: I believe you were starting to update babel?

Yep.

Based on the docs Pop animation is no longer supported, deprecated in favor of Animated.
Not sure if we are concerned about the babel upgrade w/ POP no longer supported.
@brentvatne POP no longer supported.

Yeah, also we're not seeing this error anymore, thanks @browniefed


feat: refactor container state to use backend recipes

Description

[x] make containers list in performance containers list to use docker images returned from backend
[x] remake docker container state management to user containerName returned by backend instead of hardcoded FE type
[x] move information about service dependencies to backend as 'recipes'
[x] cleanup services that lose their required parts after service stop

Motivation and Context
#292
How Has This Been Tested?

moved "recipes", i.e. definitions of service dependencies to backend
but even with best intentions I couldn't completely get rid of Container names on the frontend - these recipes need to be identifiable somehow, so there is a few references to specific container names on the frontend


Button click animate not working

when i custom theme
button.css can hover but :active doesn`t work

Sorry, can you provide a code example and some clarification about what you're attempting to do?


Fix: fix readme dingtalk group image link.

What this PR does:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #192 (a48a23c) into master (f28f18f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #192   +/-   ##
=======================================
  Coverage   33.66%   33.66%
=======================================
  Files          79       79
  Lines       12766    12766
=======================================
  Hits         4298     4298
  Misses       7962     7962
  Partials      506      506

Continue to review full report at Codecov.

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


[9.x] Add assertServerError to TestResponse.

This PR adds the assertServerError to the TestResponse class.
This will allow to use:
$response->assertServerError();

instead of:
$response->assertStatus(500);

It also allows for other server errors between 500 to 599, based on here https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#server_error_responses.

how about 503? is it consider as server error?


Not able to provide/Change Obfuscated jar file name

Hello @wvengen
I am able to obfuscate my java application. But I am not able to change the output jar file name. It comming by default "filename-small.jar". I want to change the outjar file name. I tried by providing the name in -outjars but it is not reflected and it is still appended by -small.

HI @RakeshKoplodR can you provide some project for us, to check this?

The "outjar" parameter actually implements what you want to have (https://github.com/wvengen/proguard-maven-plugin/blob/master/src/main/java/com/github/wvengen/maven/proguard/ProGuardMojo.java#L196)
I have myself used that functionality successfully, so I am closing this issue, but please reopen this if you are able to provide an example project that doesn't work.


Editor UI Toggle to Disable Scripts

It would be very useful to have a way to quickly turn off a script in the editor. One simple click and the node that said script is attached to is still active and rendering but the script itself does not execute.
Other engines (i.e. Unity) typically offer this as a way to quickly see if a script is causing an observed behavior or misbehavior.

Closing in favor of https://github.com/godotengine/godot-proposals/issues/370, as feature proposals are now tracked in the Godot proposals repository.


SNM Data Overview - Traffic Tab - number of unique users and what is time period?

number of unique users is just showing a hex. And what is time period? Do we need a selector?
https://beta.sciencenearme.org/my/snm-data-overview

The time period is all time, always, and should remain so.
I've got a fix for the number in place, but it will take time for the correct number to show up here.


Feat: Added a clear feature with a clear icon

PR Description 📜
This PR added a clear feature on a search bar of website.
Fixes #3486

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @theashikagupta ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

@kunjgit I want to know that why this clear icon is not visible currently in repo.


appbench: Detailed per-app performance analysis [WIP]

This is an experimental idea to use the CPU PMU support (#597) to measure the performance impact of introducing a new segment into an app network. This proof-of-concept implementation measures the performance of a reference app network (Source->Sink) and then measures the increase caused by extending the app network (Source->[myapp]->Sink).
The result printed estimates the impact of the app on metrics such as cycles per packet, L1/L2/L3 cache accesses per packet, and branch mispredictions per packet.
The app to introduce is given using a minimal command-line syntax:
snabbmark appbench <module> <app> <config> <in-link> <out-link>

For example here is the full output when measuring the Tee app. Three sets of results are printed: the reference app network (Source->Sink), the production app network (Source->Tee->Sink), and the delta of the two (->Tee->):
$ sudo taskset -c 0 ./snabb snabbmark appbench apps.basic.basic_apps Tee

reference result:
EVENT                                             TOTAL     /packet
cycles                                    4,926,970,014      49.270
ref_cycles                                3,697,570,944      36.976
instructions                             11,313,124,384     113.131
br_misp_retired.all_branches                  1,992,849       0.020
mem_load_uops_retired.l1_hit              3,406,962,877      34.070
mem_load_uops_retired.l2_hit                134,519,317       1.345
mem_load_uops_retired.l3_hit                    589,529       0.006
mem_load_uops_retired.l3_miss                         0       0.000
packet                                      100,000,000       1.000

starting production run...
production result:
EVENT                                             TOTAL     /packet
cycles                                    6,336,783,312      63.368
ref_cycles                                4,754,010,960      47.540
instructions                             15,171,830,862     151.718
br_misp_retired.all_branches                  2,354,542       0.024
mem_load_uops_retired.l1_hit              4,731,467,983      47.315
mem_load_uops_retired.l2_hit                244,058,833       2.441
mem_load_uops_retired.l3_hit                    769,751       0.008
mem_load_uops_retired.l3_miss                         0       0.000
packet                                      100,000,000       1.000

difference from reference to production:
EVENT                                             TOTAL     /packet
cycles                                    1,409,813,298      14.098
ref_cycles                                1,056,440,016      10.564
instructions                              3,858,706,478      38.587
br_misp_retired.all_branches                    361,693       0.004
mem_load_uops_retired.l1_hit              1,324,505,106      13.245
mem_load_uops_retired.l2_hit                109,539,516       1.095
mem_load_uops_retired.l3_hit                    180,222       0.002
mem_load_uops_retired.l3_miss                         0       0.000
packet                                      100,000,000       1.000

Here we see an estimate for the Tee app of 14 cycles per packet, 13 L1 cache accesses per packet, and one L2 cache access per packet.
Here is the abbreviated (delta only) output for a pcap_filter app:
$ sudo taskset -c 0 ./snabb snabbmark appbench apps.packet_filter.pcap_filter PcapFilter '{filter = "not ip6 and not ip and not ether broadcast"}'
...
difference from reference to production:
EVENT                                             TOTAL     /packet
cycles                                    1,701,400,725      17.014
ref_cycles                                1,198,657,392      11.987
instructions                              4,413,841,189      44.138
br_misp_retired.all_branches                    203,686       0.002
mem_load_uops_retired.l1_hit              1,389,742,167      13.897
mem_load_uops_retired.l2_hit                211,134,462       2.111
mem_load_uops_retired.l3_hit                    152,820       0.002
mem_load_uops_retired.l3_miss                         0       0.000
packet                                      100,000,000       1.000

The performance here is similar and we can observe one extra L2 cache access. (I wonder what these L2 cache accesses are?)
And for the keyed_ipv6_tunnel app:
$ sudo taskset -c 0 ./snabb snabbmark appbench apps.keyed_ipv6_tunnel.tunnel SimpleKeyedTunnel '{ local_address = "00::2:1", remote_address = "00::2:1", local_cookie = "12345678", remote_cookie = "12345678", default_gateway_MAC = "a1:b2:c3:d4:e5:f6" }' decapsulated encapsulated
difference from reference to production:
EVENT                                             TOTAL     /packet
cycles                                    4,265,246,460      42.652
ref_cycles                                3,169,706,352      31.697
instructions                             12,000,681,785     120.007
br_misp_retired.all_branches                    675,747       0.007
mem_load_uops_retired.l1_hit              3,773,725,036      37.737
mem_load_uops_retired.l2_hit                230,747,398       2.307
mem_load_uops_retired.l3_hit                    236,410       0.002
mem_load_uops_retired.l3_miss                         0       0.000
packet                                      100,000,000       1.000

which is more expensive and has much more L1 cache access (moving packet payload in place).
Summary
This is really a proof of concept. I see some good things and some bad things.
Good:

Start to see per-app behavior that can be useful for optimization.
Seems like this method should be fairly robust to measurement error because it avoids any instrumentation overhead.

Bad:

Source->Sink is limited and unrealistic because no I/O is happening. Many apps will have quite different performance depending on whether packet data is in L1/L2/L3/DRAM and this needs to be understood.
Command line syntax is clunky.

I would actually quite like to experiment with having the engine automatically sample performance counters for every app on each call to pull() and push(). This proof-of-concept will be useful to support that work because results could be compared to estimate measurement error (which I see as the main risk for counting each app callback separately).
This PR is based on musing in #603.

Closing PR: I am not actively developing this branch.


Add info to security considerations about outdated security practices, and link in new versions

See PR #3584 from @AxelNennker for the background.  We agreed in the TDC meeting 2024-02-22 to add info in security considerations and probably also on the learn site, and link to that and to any new RFCs in 3.0.4/3.1.1/3.2.0.
@lornajane also noted that we should replace any examples using deprecated practices with ones that are current.

Regarding

@lornajane also noted that we should replace any examples using deprecated practices with ones that are current.

I assume that a PR replacing the implicit grant type examples by authoriztionCode grant type examples should start in v3.0.4-dev, right? Examples are non-normative and changing to another flow in an example should not break things.
https://github.com/OAI/OpenAPI-Specification/blob/v3.0.4-dev/versions/3.0.4.md
I would write that PR but I do not want doing it for the wrong version. Please advise.

If I wrote an PR updating https://github.com/OAI/OpenAPI-Specification/blob/main/SECURITY_CONSIDERATIONS.md?plain=1 to which branch would that be?
I would recommend reading to API designers/developers the elven years old OAuth 2.0 Threat Model and Security Considerations and the new draft probably replacing it this year OAuth 2.0 Security Best Current Practice. From there I would argue that implicit flow should be replaced by authorization code flow with PKCE.

Maybe mention FAPI 2.0 Security Profile because what is good for the Financial Industry should be considered for other APIs that e.g. handle health data, personal data, child data etc.

I'm not sure what's going on with the security considerations document, as I think it was a stop-gap for putting such a section in future releases.  @darrelmiller can you advise?


Fix registration of file reader service

Adds missing #initialize and #unload methods to register SVGMorph as a service for opening svg files as a morph. Fixes #74.

Thank you!


fixing the minimum temperature

Hello! This fixes issue #24 and now the minimum temperature will display correctly.
Thanks!

great work


Full page screenshot support + advanced screenshot functions

So, many webdriver users myself included often struggle not be able to take full page screenshots. That should solve it.
Using simple:
open("http://jkorpela.fi/www/testel.html");
takeFullPageScreenshot("jkorpela");

We can get:

Note that this is not magic. This function scrolls each time by the height of viewport and makes sub-screenshots, and then merges them. If you try to make full-page screenshot of for example YouTube or Yahoo pages, the top navigation bar will follow viewport upon scrolling down, thus screenshot will not be valid and look like this:

This is not tested on all browsers though. So far works fine with Chrome and Firefox.
EDIT 1/31/2018
Added three new functions:

scrollToCenter
takeScreenshotOf
takeScreenshotWithHighlight

public static void scrollToCenter(WebElement webElement)

This function tries to center webElement in the viewport. For now it's main use is for takeScreenshotWithHighlight, because classic scrollTo function will scroll just enough for element to appear, often leaving it on the very bottom or the top of the viewport.

public static void takeScreenshotOf(WebElement element, String fileName)

Instead of taking screen of full viewport, this function creates image only of the target webElement. Thus, if webElement is bound by rect of size 50x150, the image will have size of 50x150
Example:
open("http://jkorpela.fi/www/testel.html");
WebElement elem = driver().findElement(By.xpath("/html/body/h1"));
takeScreenshotOf(elem, "elementScreenshot");

Result:

public static void takeScreenshotWithHighlight(WebElement element, int borderWidth, Color highlightColor, int borderOffset, String fileName)

This function (with various overloads) allows to take screenshot of the viewport with the target webElement in the center (if possible - if element is at the very top of the page or the bottom, it will not be in the center of image). The target webElement will be highlighted with default or custom border. By default border is 1 pixel wide and of color red. User can also specify if surrounding rectangle should be bigger or smaller by passing borderOffset value.
Example 1:
open("http://jkorpela.fi/www/testel.html");
WebElement elem = driver().findElement(By.xpath("/html/body/h3[1]"));
takeScreenshotWithHighlight(elem, "highlightScreenshot1");

Result:

Example 2:
open("http://jkorpela.fi/www/testel.html");
WebElement elem = driver().findElement(By.xpath("/html/body/blockquote/p"));
takeScreenshotWithHighlight(elem, 5, Color.MAGENTA, 5, "highlightScreenshot2");

Result:

Great!

Released in 3.10.0!


Bad performance on resizing in Safari

I am using more than 60 carousels on one page.
In most browsers it's fine but somehow Safari needs 200ms for every getBoundingClientRect call on the slickList element (only the first of the 4 getWidth calls in the update method is that slow).
Also in initialize it is fast, although it does the same thing.
So on every resize or if you turn your iPhone around it freezes the page for over 12 sec, which is not acceptable.
First I thought I just need to debounce the resize event, but that doesn't fix it.
I can't reproduce it on jsfiddle because resizing is completely broken there.
Do you have any ideas how to fix this?

I don't have this issue anymore since Safari 11, so it can be closed.


ModuleNotFoundError: No module named 'tableauserverclient'

Describe the bug
I am getting below error when i execute create_group sample script from server-client-python-master samples
Error : ModuleNotFoundError: No module named 'tableauserverclient'
I really appreciate your kind help.
Versions
Details of your environment, including:

Tableau Server version: 2023.1.1
Python version : 3:12
TSC library version : pip 23.2.1

To Reproduce
Steps to reproduce the behavior. Please include a code snippet where possible.
This script demonstrates how to create a group using the Tableau
Server Client.
import argparse
import logging
import os
from datetime import time
from typing import List
import tableauserverclient as TSC
from tableauserverclient import ServerResponseError
def main():
parser = argparse.ArgumentParser(description="Creates a sample user group.")
# Common options; please keep those in sync across all samples
parser.add_argument("--server", "-s", help="server address")
parser.add_argument("--site", "-S", help="site name")
parser.add_argument("--token-name", "-p", help="name of the personal access token used to sign into the server")
parser.add_argument("--token-value", "-v", help="value of the personal access token used to sign into the server")
parser.add_argument(
"--logging-level",
"-l",
choices=["debug", "info", "error"],
default="error",
help="desired logging level (set to error by default)",
)
# Options specific to this sample
# This sample has no additional options, yet. If you add some, please add them here
parser.add_argument("--file", help="csv file containing user info", required=False)
args = parser.parse_args()
# Set logging level based on user input, or error by default
logging_level = getattr(logging, args.logging_level.upper())
logging.basicConfig(level=logging_level)

tableau_auth = TSC.PersonalAccessTokenAuth(args.token_name, args.token_value, site_id=args.site)
server = TSC.Server(args.server, use_server_version=True, http_options={"verify": False})
with server.auth.sign_in(tableau_auth):
    # this code shows 3 different error codes that mean "resource is already in collection"
    # 409009: group already exists on server
    # 409107: user is already on site
    # 409011: user is already in group

    group = TSC.GroupItem("test")
    try:
        group = server.groups.create(group)
    except TSC.server.endpoint.exceptions.ServerResponseError as rError:
        if rError.code == "409009":
            print("Group already exists")
            group = server.groups.filter(name=group.name)[0]
        else:
            raise rError
    server.groups.populate_users(group)
    for user in group.users:
        print(user.name)

    if args.file:
        filepath = os.path.abspath(args.file)
        print("Add users to site from file {}:".format(filepath))
        added: List[TSC.UserItem]
        failed: List[TSC.UserItem, TSC.ServerResponseError]
        added, failed = server.users.create_from_file(filepath)
        for user, error in failed:
            print(user, error.code)
            if error.code == "409017":
                user = server.users.filter(name=user.name)[0]
                added.append(user)
        print("Adding users to group:{}".format(added))
        for user in added:
            print("Adding user {}".format(user))
            try:
                server.groups.add_user(group, user.id)
            except ServerResponseError as serverError:
                if serverError.code == "409011":
                    print("user {} is already a member of group {}".format(user.name, group.name))
                else:
                    raise rError

    for user in group.users:
        print(user.name)

if name == "main":
main()
Results
What are the results or error messages received?
Exception has occurred: ModuleNotFoundError
No module named 'tableauserverclient'
File "C:\Users\snall\Downloads\server-client-python-master\samples\create_group.py", line 16, in
import tableauserverclient as TSC
ModuleNotFoundError: No module named 'tableauserverclient'

Can you verify the package is installed with pip show tableauserverclient?

Yusuf is correct - you'll need to install the TSC library first. I've also put together a PR to make that more clear on the Samples page.


Unable to morph object values with default

Report a bug
It seems it's currently impossible to morph and object value that has a default.
🔎 Search Terms
object default, morph default
🧩 Context

ArkType version: 2.0.0-beta.5
TypeScript version (5.1+):
Other context you think may be relevant (JS flavor, OS, etc.):

🧑💻 Repro
const t = type({
    foo: ["'on' | 'off' = 'on'", "=>", v => v === "on"]
});

The types indicate that this is valid, however at runtime it produces the following error:
Default values must be specified on objects like { isAdmin: 'boolean = false' }

It's not possible to use the syntax off foo: "'on'|'off' = 'on'" since I want to morph the type. The following attempts also raise the same error:
const t1 = type({
    foo: type("'on' | 'off' = 'on'").pipe(v => v === "on")
});

const t2 = type({
    foo: type(["'on' | 'off' = 'on'", "=>", v => v === "on"])
});

Hmm, I think it occurred to me this wouldn't be possible, but I should handle it more clearly when someone tries to do it.
It doesn't really make sense to set a default value then apply a morph. You should just have the default value be whatever the output of your morph called on that default value would be and save yourself the extra computation.

I am considering removing the restriction on shallow default values/optional keys though which would make this stuff more flexible. For now though, I'm not going to address this individual case since it feels like an anti-pattern.


add Guard expandable supported.

Q
A

Branch?
v2.0(master)

Bug fix?
No

New feature?
No

Deprecations?
No

Internal Changed?
Yes

Removed
No

Tests pass?
Yes

Doc pr?
No

This commit allows the Guard class to be extended by developers to extend the Guard by extension functions.

Codecov Report

Merging #233 into master will decrease coverage by 0.1%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master    #233      +/-   ##
=========================================
- Coverage   96.01%   95.9%   -0.11%
=========================================
  Files          31      31
  Lines        2659    2662       +3
=========================================
  Hits         2553    2553
- Misses        106     109       +3

Impacted Files
Coverage Δ

src/CatLib.Core/Support/Guard/Guard.cs
84.21% <0%> (-15.79%)
:arrow_down:

Continue to review full report at Codecov.

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


[Bug]: Performance issue in ImportExport when there are lot of pages

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Import-Export fails or takes a long time to respond when there is a lot of pages in the app. This was introduced in v1.6.22 due to the pageOrder filed that was added to the json file.
Steps To Reproduce
Please use the sample app Json file from here - https://theappsmith.slack.com/archives/C0341RERY4R/p1651071233994629?thread_ts=1651067937.099729&cid=C0341RERY4R

Public Sample App
No response
Version
Cloud v1.6.22

I still feel there is delay when we try to import a bigger app, Need to look at the performance in few other parts of import flow tracking all that in this issue so reopening it

@RakshaKShetty do we have some numbers on this what has been changed. Can you share the app where you are seeing the perf degradation. Today if the application has lot of pages this is a issue that we we are currently looking at but if there is anything we should focus on?

Closing this issue as this covered in the issue - https://github.com/appsmithorg/appsmith/issues/18499


Updates the steps for setting up grafana

Small change to the README.
As sentry has changed over time these instructions need updating to match the latest UI.
These changes match the following:
Developer Settings > Custom Integrations

Create New Integration > Internal Integration

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


How to disable Chromium PDF

According to https://amiunique.org/fp
Puppeteer uses plugins:
Chromium PDF Viewer
Chromium PDF Plugin
I do not need these anyway, is there any way to disable them? So it wont affect browser fingerprint? I was looking for extensions directory in node_modules but couldn't find any.

@dudeperfect95 This is a question worth asking on chromium-dev google group. You might be able to compile without them, or maybe there are some other tricks.


Arrow keys stop working in the Results panel when at edge of viewable result row

Issue Type: Bug
Actual: In the Results panel when scrollbar is display use left or right arrow key to navigate to the end of the viewable result row, the cursor will become stuck on the last viewable result cell.
Expected: To be able to navigate freely through the results using the arrow keys.
SQL Operations Studio version: sqlops 0.31.4 (e026ab85a72c190cc4ccc834503aa9fe36dd6407, 2018-07-18T02:14:21.826Z)
OS version: Windows_NT x64 6.1.7601

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-4310M CPU @ 2.70GHz (4 x 2693)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Memory (System)
7.91GB (2.46GB free)

Process Argv
C:\Program Files\SQL Operations Studio\sqlops.exe

Screen Reader
no

VM
0%

Extensions: none

@MikeMKH I wasn't able to repro this issue.  Are there any errors in the Help->Developer Tools Console?  Or other repro details that could help locate the problem?

@kburtram  I'm experiencing the same problem as the OP.
Repro steps are: Select more columns that can fit on the results pane and when you scroll through the results using the cursor keys, it stops at the edge of the visible columns and doesn't want to move anywhere else. The only way to see the rest of the results is to drag the scrollbars with the mouse.
It seems like the "non-visible" columns are out of scope and cannot contain focus, but I'm guessing here.
I can see this in developer tools->console, don't know if it is related:
TypeError: Cannot read property 'focus' of undefined
    at setFocus (C:\sqlops-windows\resources\app\node_modules\slickgrid\slick.grid.js:3148)
    at HTMLDivElement.handleClick (C:\sqlops-windows\resources\app\node_modules\slickgrid\slick.grid.js:2964)
    at HTMLDivElement.dispatch (C:\sqlops-windows\resources\app\node_modules\jquery\dist\jquery.js:5110)
    at HTMLDivElement.$event.dispatch (jquery.event.drag-2.3.0.js:382)
    at HTMLDivElement.jQuery.event.add.elemData.handle (C:\sqlops-windows\resources\app\node_modules\jquery\dist\jquery.js:4918)_

Version 0.31.4
Commit e026ab85a72c190cc4ccc834503aa9fe36dd6407
Date 2018-07-18T02:14:21.826Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64

I can reproduce, but only when I don't have the vertical scrollbar, e.g. using this query:
select 'this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string','this a long string'

Hit F5, then click inside the left-most cell, and hit Right-arrow slowly until it reaches the right-most column.
If I increase the number of rows in the result (via union all select ...) so that the vertical scrollbar appears, scrolling horizontally via arrow-keys suddenly works. But if I continue fiddling (i.e. scrolling with the mouse / keyboard, clicking inside and outside the Results grid), it eventually breaks.
(same system info as in the previous comment.)

Works for me now in 0.32.7!

This has been fixed in 0.32.8


UI Improvements and Clean Architecture Implementation

Is your feature request related to a problem? Please describe.
This App lacks certain things like:

Navigation Component
Clean Architecture
Sign In/ Sign Up User
dependency Injection

Describe the solution you'd like
Solutions that I will provide:

Implement Firebase Sign In and Sign Up
Use Navigation Components and Fragments
Implement Dependency Injection using Dagger-Hilt
Use of Clean Architecture ( Separation of Data, Domain and Presentation Layer)

Describe alternatives you've considered
No response
Additional context
No response
Code of Conduct

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

Many contributors have already raised this issue, so please check other related issues before creating a duplicate.


Issue #53 (fenced code blocks in lists) is locked

Fenced code blocks in lists still don't work, nine years after this bug was filed:
https://github.com/Python-Markdown/markdown/issues/53
As a result the same bug afflicts mkdocs and other projects using this package.
What is the status of this bug? Why is it locked?
Is there some workaround for mkdocs users?

Honestly, people who want nested fence usually use SuperFences. That is the short answer.
Python Markdown was based on the old spec from: https://daringfireball.net/projects/markdown/. Python Markdown's fenced_code extension was written to allow fences in the top level.
So I wrote SuperFences to work around these issues. In order to get fenced_code to work, it would have to adopt some of the general conventions that are employed in SuperFences. Now, I want to stress, that while SuperFences works great, the approach is not ideal. There have been plans to rework the block processor which is the big hold up for doing it proper, but that has not happened yet, I won't go into details, but there is quite a bit of work to be done there.

Thanks!

The reason for the block is stated in the last comment there. No other developments have happened since then. By locking the discussion, clearly bringing it to another issue is not desired.


Feature Description
目前有2个问题想沟通下，
1.服务后续是否会提供mysql数据库的支持；
2.服务关闭swagger ，是否可以加到配置文件中，达到开关的效果
Why is this feature valuable?
No response
Suggested Implementation
No response
Additional Information
No response
No Duplicate of the Feature

[X] I have verified that there are no existing features requests similar to my request.

To disable swagger you have to set the following in the application.properties: springdoc.swagger-ui.enabled=false


Building of native extensions fails

Nokogiri <IP_ADDRESS> installs with no problem. 1.4.x version fails. Using ubuntu + rvm (all required libraries are installed).
pm@sniegas:~$ gem install nokogiri -v '1.4.3'
Fetching: nokogiri-1.4.3.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing nokogiri:
    ERROR: Failed to build gem native extension.

    /home/pm/.rvm/rubies/ruby-2.2.1/bin/ruby -r ./siteconf20150519-7580-2yzgsg.rb extconf.rb
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/home/pm/.rvm/rubies/ruby-2.2.1/bin/$(RUBY_BASE_NAME)
extconf.rb:10:in `<main>': uninitialized constant Config (NameError)

extconf failed, exit code 1

Gem files will remain installed in /home/pm/.rvm/gems/ruby-2.2.1/gems/nokogiri-1.4.3 for inspection.
Results logged to /home/pm/.rvm/gems/ruby-2.2.1/extensions/x86_64-linux/2.2.0/nokogiri-1.4.3/gem_make.out

Config was replaced by RbConfig in Ruby 2.2.0 (according to: https://github.com/chef/ohai/issues/453). I manually fixed it.

Having the same problem,
gem install nokogiri
Building native extensions.  This could take a while...
ERROR:  Error installing nokogiri:
ERROR: Failed to build gem native extension.
/usr/bin/ruby22 -r ./siteconf20150520-30341-1u91ypf.rb extconf.rb

checking if the C compiler accepts ... yes
Building nokogiri using packaged libraries.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib64
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/$(RUBY_BASE_NAME)22
--help
--clean
--use-system-libraries
/usr/lib64/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require': cannot load such file -- mini_portile (LoadError) 	from /usr/lib64/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require'
from extconf.rb:395:in `'
extconf failed, exit code 1

Sorry, we no longer support the 1.4.x branch, for what should be obvious reasons. For an idea of how old nokogiri 1.4.3 is, I invite you to visit this page:
https://rubygems.org/gems/nokogiri/versions


Rewrite Docker build process

What are your changes?
Rewrite Docker build process and dockerized scripts

Build in a builder image to minimize the final image
and avoid uploading local ignored workspace files
Build the nginx config in javascript
Prefix dockerized scripts with docker-

This is required to fix link checking so we can put it in CI.
What is the urgency level of this change?

[ ] Blocker
[X] High
[ ] Medium

Instructions to test the modified scripts: https://github.com/dcos/dcos-website/blob/karl/docker/README.md#validate-links


Mumble cannot find CELT codec

I am running NixOS unstable and installed the latest Mumble package into my user environment using nix-env -i mumble.  But when I tried to connect to my employer's Mumble server, I could not receive any audio from other users, and in the status window on the left-hand side of the Mumble window, it complained about not being able to find the CELT codec.  I notice the latest commit was switching to use the external celt library.
I installed Mumble from commit fc7c18a99221385060cdc0a3ba7c1d7a3dc62e55, the commit previous to the latest change, and the issue went away and I am able to hear the other users and no warning shows up about a missing codec.
cc @viric @geerds (both listed as maintainers on Mumble)
cc @abbradar (author of the commit that introduced the change)

Can you please find out what version of Mumble server your employer use? It would help to identify the issue.

Server -> Information tells me "Protocol 1.2.10".  A person that might know from my employer indicated that's what they thought it was.

@travisbhartwell Can you try out Mumble with this patch?

@abbradar I just tried it out and the same warning about the missing CELT codec came up.  I didn't get a chance to try any audio though, but I imagine the warning would indicate things aren't working.

Well, I've run out of ideas and made a revert, please test: https://github.com/abbradar/nixpkgs/commit/2e22f86839f496c95f012d8467bdc9c54a4f8939 . Let's merge if it works for you.

Tested.  Looks good!  Thanks for trying to resolve this.

Pushed to master as https://github.com/NixOS/nixpkgs/commit/5963d94c3c323c7262653be1607b64bb24aee489 and to release-15.09 as https://github.com/NixOS/nixpkgs/commit/b662c2aeef9cae53a07942d6c6295d73cb0e2fd7


Adding Feature Directories will act as link from output or path, clicking on them will change path or paste them

Description of the new feature/enhancement

Proposed technical implementation details (optional)

This sounds like a good idea, but we'd love some clarification. Do you mean something like one of the following?

https://github.com/microsoft/terminal/issues/5916
https://github.com/microsoft/terminal/pull/15700
https://github.com/PowerShell/PowerShell/issues/18098
something like: https://github.com/microsoft/terminal/issues/5001#issuecomment-1229562023

We've had a lot of thoughts about stuff like this recently. Narrowing it down to a specific issue would be good for prioritization.

more like browser i think
clicking on the text of the folder
will cause it change the path or will create new tab with directory changed
but watching this gif, not bad at all and wonder what is better

Cool. Thanks for the clarification. We're going to mark this as a /dup of #5001 since that's tracking a bunch of relevant work items for this effort.


Roc crashes in decision tree and rendering pointer

Two different crashes, similar code. May be related. I have been playing around with this for a while and haven't figured out why it isn't working or what is specifically causing these issues.
% roc test Blah.roc
thread '<unnamed>' panicked at 'explicit panic', crates/compiler/mono/src/decision_tree.rs:273:25
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

% roc test Blah.roc
thread 'main' panicked at 'not yet implemented: TODO add support for rendering pointer to (Alias(`4.IdentId(88)`, AliasVariables { variables_start: 2436, all_variables_len: 0, lambda_set_variables_len: 0, type_variables_len: 0 }, 3233, Structural), Builtin(Decimal)) in the REPL', /Users/luke/Documents/GitHub/roc/crates/repl_eval/src/eval.rs:884:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

I copied two different files in the gist below, should be able to just run with roc test etc
Code Gist

My theories from playing around with this and attempts to minimise;

Using Tuples seems to break things
We don't support pattern matching on constants like 0 e.g. (Start, '0') -> Continue (Zero 1) doesn't work.
The expectation below will blow up when the actual result is an Err but it is trying to compare it to the Ok 0.0dec I think.

expect
    actual = "0.0" |> Str.toUtf8 |> decodeDec
    expected = {result : Ok 0.0dec, rest : []}

    actual == expected

The second issue should be fixed by https://github.com/roc-lang/roc/pull/5171

minimal repro:
interface A exposes [] imports []

go : U8 -> Nat
go = \byte ->
    when byte is
        '.' if Bool.true -> 1
        b if Bool.true -> 2
        _ -> 3

expect
  go '.' == 9


no results

Hi Peng Tang,
After running your training code successfully, I got the trained model with 70000 iterations. However, when I try do the testing by using
./tools/test_net.py --gpu 1 --def models/VGG16/test.prototxt \   --net output/default/voc_2007_trainval/vgg16_oicr_iter_70000.caffemodel \   --imdb voc_2007_trainval
I got the following error:

I also checked the detections.pkl file and found each component of the output is
array([], shape=(0, 5), dtype=float32)
It' seems that the learned model doesn't work with no output. I would appreciate if you can help to check the error. Thanks!

Hi,
I'm not sure what happened. I haven't encountered this problem.
Have you changed the codes in the tools/test_net.py? It seems that you call the test_net function in here.
But when the imdb is voc_2007_trainval, it will call the test_net_train function in here. And the result files will be discovery.pkl and discovery_all.pkl, As in here.

Hi
Thanks for your reply!
I forgot to use the pre-trained model by modifying "--weights data/imagenet_models/$VGG16_model_name " to the corresponding model. Therefore, the model didn't learn anything useful and get no detection results. This may cause the same problem when training Fast-RCNN.


Add a view show, remove favourite button longpress

Summary
When you're on the continue watching section, sometimes it's nice to be able to jump into a show to watch a different episode. So in the longpress put a button that says "view show", above the "remove" button.
Also add a long press to the favourites section, where you can quickly remove items from favourites.
Please confirm the following

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.

Available on Release 1.5.1


feat: support multiple clients and provide helpers ( auth / headers)

Resolves #3, #10
This PR adds the following

Support for multiple GraphQL clients.
clients can be defined in nuxt.config:

export default defineNuxtConfig({
  buildModules: ['nuxt-graphql-client'],

  gql: {
    clients: [
      {
        default: true,
        name: 'spacex',
        host: 'https://api.spacex.land/graphql',
      },
      { name: 'fruits', host: 'https://fruits-api.netlify.app/graphql' },
    ],
  },
})

When using multiple clients, The way that your GraphQL documents are situated need to be changed.
For example: Given the configuration above, GraphQL Operations for the spacex client can be written in either of the following ways:

Append GraphQL Operations with the name of your client
This options overrides all others

query spacex_ships {
    ships {
        id
    }
}

Doing so will automatically link the query above to the predefined spacex client and drop the prefix from the autoImported function. The query will be executable in your app by simply calling GqlShips() 🚀.

Place the queries for each client under a directory with the client name.
./nuxt_app/queries/spacex/launches.graphql
All GraphQL operations within launches.gql (that aren't prefixed with a client name), will automatically be linked to the client matching the name of the GraphQL document's parent directory ie: spacex.

You can save your GraphQL documents in the following format example.[client].graphql
for example: ./nuxt_app/queries/starlink.spacex.gql
All GraphQL operations within this file (that aren't prefixed with a client name), will automatically be linked to the client matching the name of the GraphQL document's parent directory ie: spacex.

Lastly, GraphQL documents which don't match any of the aforementioned conventions will be linked either to the client with default set to true or the first client specified in your config.

Looks great!
What about using the object syntax?
export default defineNuxtConfig({
  buildModules: ['nuxt-graphql-client'],

  gql: {
    clients: {
     default: 'https://api.spacex.land/graphql', // default process.env.GQL_HOST
     fruits: { host: 'https://fruits-api.netlify.app/graphql', token: process.env.GQL_FRUITS_TOKEN }
    }
  },
})

The issue with this approach is that we loose the possibility of giving a name to the default client 🤔

@Atinux Great idea! I prefer this approach
With the suggested implementation, there wouldn't be much reason for having to then name the default client.
GraphQL documents / operations that aren't explicitly linked to a client would resort to using the default, as would helper functions which omit the client name when used.


TRF path error while running a Docker

Dear,
i was trying to install Repeatmodeler2 via docker container. but i am facing a TRF PATH error problem. i am attaching a screenshot of that, please help me to solve this issue.

You can specify a path to TRF manually if it's not in your PATH. I expect that this should work for you:
./dfam-tetools.sh --trf-path=./TRF.linux64

Ran into a similar problem. I did specify the TRF path but still getting the same error even though it is executable

I made a mistake earlier when I referred to --trf-path=. It is --trf_prgm=.

@jageis-fldm I think the issue there is that getopt is very different on macOS, so I will need to work around that somehow. In the meantime, you can run it manually. This command would start the container the same way that dfam-tetools.sh would have; note that you do need to use the Linux version of TRF:
docker run -it --rm --mount type=bind,source="$(pwd)",target=/work --mount type=bind,source="./trf409.linux64",target=/opt/trf,ro --user "$(id -u):$(id -g)" --workdir "/work" --env "HOME=/work" "dfam/tetools:1"
However, I am not sure if it will work as expected on Mac and I do not have Docker for Mac set up to test it with.

Thanks for the prompt response! Appears to be working now...

I have updated dfam-tetools.sh in commit ac133a2 to only use commands that are available on macOS, so I believe the script should work now although I have still not tested the actual container.
You can re-run curl -sSLO https://github.com/Dfam-consortium/TETools/raw/master/dfam-tetools.sh to get the latest version.


chore(): removed assets dir

This was needed by https://github.com/angular/angular-cli/commit/0ac1629bee7c7656df1bb506798ebef411bcbec9 and we forgot to remove it.

LGTM.


feat(TFD-2986): Improve the UI of Aggregate components.

What is the current behavior? (You can also link to an open issue here)
The Aggregate component use basic lists.
What is the new behavior?
Used advanced list to improve the user experience.
Please check if the PR fulfills these requirements

[X] The commit message follows Talend standard
[X] Tests for the changes have been added (for bug fixes / features)
[X] Docs have been added / updated (for bug fixes / features) ?
[X] The code coverage on new code >75%
[X] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[ ] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results

Pull request test result: success :star:
Sonar results


Add early stopping

As used in the original CellBox tensorflow codes

I have tried to spilt the code into several separate files. If you like, you can put this part into the file callback.jl at https://github.com/jiweiqi/CellBox.jl/blob/aa1d808145008655834a152440088861e9873b46/spilt/callback.jl#L56

Thanks @jiweiqi! Now fully implemented at commit 81d3577382cc9e115d23050234ebc335b6fd54c9
the major function is
https://github.com/jiweiqi/CellBox.jl/blob/c99a16d1092bdf0783906c703eaac79b1cd5a213/spilt/callback.jl#L62-L77

Looks like there is some issue with the changing directory at
https://github.com/jiweiqi/CellBox.jl/blob/0c00a66b74e5b6620aa2c9d61d2ef3bf65c09bc3/spilt/header.jl#L15
What (current) directory you will suppose to run the code? I can not include("header.jl")

Fixed the issue in rm folders when it doesn't exist at
https://github.com/jiweiqi/CellBox.jl/blob/4b77faf13bf6ec738fd37f9bf7ddaa3ea61ec9ac/spilt/header.jl#L30


proposal: add enhance mid-tier resource proposal

Ⅰ. Describe what this PR does

Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[ ] I have written necessary docs and comments
[ ] I have added necessary unit tests and integration tests
[ ] All checks passed in make test

I have one more question: How does the scheduler's LoadAware Scheduling plugin support middle tiers?

I need to think about it.

/milestone 1.5

/milestone v1.5


How often are NuGet packages pushed? Request for folder download functionality

I see that Folder Download has been added to the client in master and was wondering what the propagation to nuget time is

Go!
https://www.nuget.org/packages/FluentFTP/30.0.0

New: UploadDirectory and UploadDirectoryAsync methods to recursively upload or mirror a directory
New: DownloadDirectory and DownloadDirectoryAsync methods to recursively download or mirror a directory
New: Rule engine to filter files that should be uploaded/downloaded according to multiple user-defined rules
New: Predefined rules for filtering on folder name, useful for blacklisting certain system folders
New: Predefined rules for filtering on file name or file extensions, useful for transferring a subset of files
New: Predefined rules for filtering on file size, useful for filtering out very large files
New: Ability to determine parent/self/child directories in listing using SubType property of FtpListItem
Fix: Machine listings sometimes cause infinite recursion in GetListing when recursing into self directory
Change: CreateDirectory and CreateDirectoryAsync now return a flag indicating if it was created or skipped
Change: Use public fields instead of public properties for FtpListItem
Change: Improve performance of CreateDirectory by skipping the directory exists check


Change the order branches are simplified in dead branch elim

Dead branch elimination needs to know about the constructs that a block is contained it when determining what to do with its merge instruction.  We currently fold branches in block as we see them, which is parent constructs before their children.  This causes the struct cfg analysis to crash because it tries to get the parent construct for a block after the parent has been folded.
This can be fixed by folding the branch of the children before the parents.
Fixes #2667.

No they are not related.