Update athom-smart-plug-v2.yaml to replace invalid update_interval

Remove "update_interval" from cse7766 section, which prevents code from compiling in 2024.2.0, and replace with a throttle_average filter for each sensor within this group.

Looks like this maybe reverted.
https://github.com/esphome/esphome/pull/6265


Defining queries using structured data

I'm just exploring graphql and see existing way of doing requests from client is using string based queries. I see such approach as kinda error prone and unstructured. What are the advantages of this? Do you see any advantages (or maybe obvious disadvantages) if there would be a way in defining queries using json object instead of string?
Kind of:
user: {
  query: {id: 32423},
  fields: [
     'id', `name`,
     {`profilePicture`: {
        query: {size: '50'},
        fields: ['uri', 'weigh', 'height']
     }}
  ]
}

Also I see thy way of defining schema using string based approach is too kind of error prone.

GraphQL queries are well-defined, and given the (strongly typed) schema they can be checked for syntactic and semantic errors, unlike the JSON objects. GraphQL queries are thus less error prone (at least in theory). Check out eslint-plugin-graphql for an example of what's possible with GraphQL. And that's really just the beginning.

Closing since no activity for 2 weeks. Feel free to reopen to continue the discusssion.


raidboss: Misc FR translations

Thanks for translations. I have no time at the moments.

Sorry I don't get it. Can you tell me why I get this error ?

You should be able to run npm run lintfix and it will format things as needed without you needing to do it manually.  If that doesn't work, I'm happy to help get it working for you.


[Documentation] updated maven version to 3.8.8 to reflect changes done via ORC-1429

What changes were proposed in this pull request?
The PR proposes to update README to reflect the actual maven version to be used for build.
Current documentations says Maven version 3.8.6 or higher. However, the build fails with Maven 3.8.6 with error
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.3.0:enforce (enforce-maven) on project orc:
[ERROR] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion failed with message:
[ERROR] Detected Maven Version: 3.8.6 is not in the allowed range [3.8.8,).

Why are the changes needed?
The changes are need to keep documentation in sync with maven version used for build.
How was this patch tested?
Documentation patch, no tests were done

Public signup for JIRA is disabled, hence cannot create a JIRA account

You can apply for a Jira account on this page(https://selfserve.apache.org/jira-account.html).

New Jira user account, mysticlama, has been created -- thanks for the PR @mystic-lama

Thank you, @mystic-lama , @guiyanakuang , @pgaref .


Make Style/CollectionCompact aware of block pass

This PR makes Style/CollectionCompact aware of the following block pass argument.
# bad
array.reject(&:nil?)
array.reject!(&:nil?)

# good
array.compact
array.compact!

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Nice update. Please, update the examples in the cop description as well.

Yup! I've updated it!

Thanks!


adds Single.never()

This PR adds Single.never(), analogous to Flowable.never():
https://github.com/rsocket/rsocket-js/blob/bb11e451d50ef5520580611661627aa14ee1a3f0/packages/rsocket-flowable/src/Flowable.js#L75-L82

I also have a branch ready to turn into a PR for the corresponding change to DefinitelyTyped:
--- a/types/rsocket-flowable/Single.d.ts
+++ b/types/rsocket-flowable/Single.d.ts
@@ -47,6 +47,7 @@ export interface IFutureSubject<T> {
 export default class Single<T> {
     static of<U>(value: U): Single<U>;
     static error(error: Error): Single<never>;
+    static never(): Single<never>;
     constructor(source: Source<T>);
     subscribe(partialSubscriber?: Partial<IFutureSubscriber<T>>): void;
     flatMap<R>(fn: (data: T) => Single<R>): Single<R>;

@hearnden just FYI. sending nullable subscription violates reactive streams spec -> https://github.com/reactive-streams/reactive-streams-js

@hearnden go ahead with the PR to DT

@hearnden go ahead with the PR to DT

Done: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/43603


FR: be able to upload python objects

Background & motivation
Currently upload files is limited to files. https://docs.kurtosis.com/api-reference/starlark-reference/plan/#upload_files
artifact_name = plan.upload_files(
    # The file to upload into a files artifact
    # Must be any GitHub URL without the '/blob/main' part.
    # MANDATORY
    src = "github.com/foo/bar/static/example.txt",

    # The name to give the files artifact that will be produced.
    # If not specified, it will be auto-generated.
    # OPTIONAL
    name = "my-artifact",

    # A human friendly description for the end user of the package
    # OPTIONAL (Default: Uploading file 'PATH' to files artifact 'ARTIFACT_NAME')
    description = "uploading file"
)

It would be great if you had a python object, like a python array, dict, it could be directly referenced and uploaded as a files artifact as well.
Desired behaviour
test = [A,B,C]

artifact_name = plan.upload_files(
    src = test
    name = "my-test-artifact",
    description = "uploading file"
)

How important is this to you?
Painful; the lack of this feature makes using Kurtosis frictionful.
What area of the product does this pertain to?
CLI: the Command Line Interface

Any update on this? I think it would be extremely valuable to be able to do this for the package configuration file that you are using. The service context is very limited in terms of getting complete service information. I'm running into some roadblocks that could be alleviated if I had access to the StarlarkRunConfig file used to start the remote packages.


a UI suggestion ?

Make it with affinity designer

@PowerPCx86 I am not sure that I follow what you are asking for here...
What does Affinity Designer have to do with the current design for Chocolatey GUI?

I am not sure that I follow what you are asking for here...

I'm just (and only just) suggesting a graphical user interface for your program

What does Affinity Designer have to do with the current design for Chocolatey GUI?

Affinity Designer is just (and only just) a vector graphics editor (like adobe illustrator) it has nothing to do with your app or GUI design, Affinity Designer is just a tool I used to "sketch" a GUI (in brief you have nothing to do with Affinity Designer)
u can create the same GUI above using HTML+CSS for example
or in your case using Visual Studio to create/design a similar GUI to the one above


Setting JDBC statement map cleaner thread ccl to null

Fixing the problem reported in https://discuss.elastic.co/t/elastic-apm-agent-jdbchelper-seems-to-use-a-lot-of-memory/195295/8.
According to the WebappClassLoderBase code, setting the Context class loader of the cleaner thread to the system or bootstrap classloader should solve the problem.
Checklist

[x] Implement code
[x] Update documentation (comment in code)
[x] Update CHANGELOG.md

Do we have to do similar things when initializing thread pools? Currently probably not because they are initialized eagerly, right? Because of that, the context class loader will be the Attachment Listener thread's context class loader. But because the JdbcHelper is loaded in the context of a request processing thread, it's context class loader is the WebApplicationClassLoader, which creates a leak.

Merging without waiting for a verification on the fix, as this may cause an application class loader leak regardless.


Odd quick fix ordering for misspelled identifiers

I believe that "misspelled identifier" quick fixes should precede the "remove unused declarations".

If anyone wants to take this on, this should just be a matter of

Making a test case for this, and
Shifting the order of which quick fix is registered first.

@DanielRosenwasser I would love to give this a try as my first PR.
Any pointers to give me direction on this?

The ordering of fixes is currently determined by the load order of files, since they each immediately alter global state the moment they're created. I think we should change these files to export an object instead of calling registerCodeFix, make registerCodeFix private, and have codeFixProvider import from all code fixes and register them in an order it chooses.

I'd like to give this one a shot if no one's working on it.

@jrkong you just have to change the ordering of the codefix files in the various tsconfig.json files under src

@RyanCavanaugh thanks a lot! That really helps, I'll do some digging.

So after spending a bit of time with the code I've discovered some odd inconsistencies with the behavior for this particular bug:
When I attempt to reproduce the bug with the given line in the issue this is what I see:

However if I added the lines:
export {};
function f() {}

the bug is reproduced.

@DanielRosenwasser could you verify if I've reproduced the bug properly?
Here's where things got really odd for me:
Looking at the src/services/tsconfig.json the spelling code fixes are imported on line 54 and the code fixes for removing imports and unused dependencies are imported on line 62.
So in theory Change spelling to 'assertNever' should be loaded before Remove import from './Utilities' and Delete all unused declarations. What's more, the tests seem to corroborate that the source code is loading the spelling codefixes first:
Here's a screenshot of the test I've been working on and how it currently fails.

I deliberately tried testing against the incorrect output to verify the behavior of the bug before I made any further changes but the tests seem to imply that Change spelling to 'assertNever' should already. So does anyone have any idea what's going on?

I looked at the tsserver logs and it looks like the editor is making two separate calls:
Info 83   [17:4:3.734] request:
    {"seq":12,"type":"request","command":"getCodeFixes","arguments":{"file":"/home/andy/sample/ts/src/a.ts","startLine":1,"startOffset":10,"endLine":1,"endOffset":16,"errorCodes":[2724]}}
Perf 84   [17:4:3.793] 12::getCodeFixes: elapsed time (in milliseconds) 58.5188
Info 85   [17:4:3.793] response:
    {"seq":0,"type":"response","command":"getCodeFixes","request_seq":12,"success":true,"body":[{"fixName":"spelling","description":"Change spelling to 'fooBar'","changes":[{"fileName":"/home/andy/sample/ts/src/a.ts","textChanges":[{"start":{"line":1,"offset":10},"end":{"line":1,"offset":16},"newText":"fooBar"}]}],"fixId":"fixSpelling","fixAllDescription":"Fix all detected spelling errors"}]}
Info 86   [17:4:3.794] request:
    {"seq":13,"type":"request","command":"getCodeFixes","arguments":{"file":"/home/andy/sample/ts/src/a.ts","startLine":1,"startOffset":1,"endLine":1,"endOffset":30,"errorCodes":[6133]}}
Perf 87   [17:4:3.795] 13::getCodeFixes: elapsed time (in milliseconds) 1.0016
Info 88   [17:4:3.795] response:
    {"seq":0,"type":"response","command":"getCodeFixes","request_seq":13,"success":true,"body":[{"fixName":"unusedIdentifier","description":"Remove import from './b'","changes":[{"fileName":"/home/andy/sample/ts/src/a.ts","textChanges":[{"start":{"line":1,"offset":1},"end":{"line":2,"offset":1},"newText":""}]}],"fixId":"unusedIdentifier_delete","fixAllDescription":"Delete all unused declarations"}]}

So the ordering of our results is irrelevant because we're only returning one result at a time.
Our API is designed to take a range and a list of error codes, so perhaps it should be the editor's responsibility to make one combined call when ranges overlap, and then we could order the results in tsserver. Another option would to be return fixes with some kind of priority, but that would be irrelevant if they aren't actually overlapping. @mjbvz


Question about the usage of ftl

Hi, I've read the code and the paper about ftl. In my mind, the typical scene of using ftl is when there are not so many overlapped samples. But during the inference or serving, seems we still need to make sure that the sample to be predict appears in both sides. Does it mean we should use ftl in scenes when we have rare overlapped samples during training but have enough overlapped samples for predicting?

I read the paper again and maybe I misunderstood the transfer algorithm. During the inference process, we need features from the host(B side) and caculated phi from guest(A side), so there is no need for overlapping, right?


Fix typo "Github" to "GitHub"

GH's official website says "GitHub".

Good catch. Need to remember this next time I type "GitHub". ;)


Adding explanation of parser Options to readme

Explaining parser options refs #869

It would be good to understand the use cases for parser options, e.g. why would somebody want to use the flatten property?

included and replaced by #1510


Changed value used to check if fetched point of sale are blocked

bloqueado field in PointOfSale model it's a merely informative field, it Indicates whether the point of sale is blocked or not. If this situation occurs, you should enter the ABM of points of sale to regularize the situation, the possible values returned are S that stands for SI meaning that the POS is blocked or N that stands for NO meaning that the POS is available.
So the value used to check the AFIP pos_data.Bloqueado result has been changed from N to S, this will allow us to better identify if the POS if blocked or not.

This PR fixes this issue #141

Thanks!


[-wATCH-] Tiktok Sophie Rain Spiderman Video Original Video Link Imsha Rehman Video ʟᴇᴀᴋᴇᴅ Viral On Social Media X Trending Now

[-wATCH-] Tiktok Sophie Rain Spiderman Video Original Video Link Imsha Rehman Video ʟᴇᴀᴋᴇᴅ Viral On Social Media X Trending Now
.
.
.
.
The recent surge of interest surrounding Ms sethi latest video showcases the massive impact that viral moments can have on a digital creator’s reach. As a rising figure in Original media, her innovative approach and unique content—most notably her recent Spiderman-themed video—are driving vibrant discussions and enthusiasm on platforms like Instagram, X (formerly Twitter), and Discord. This viral wave highlights how quickly content can elevate creators to new levels of visibility, fostering strong connections between them and their audiences. Social media continues to be a powerful tool, propelling creators into the spotlight and keeping fans eagerly anticipating their next moves.
If you’re interested in more updates or details on her upcoming projects, let me know!

dfgdfg

gf gggff


Request body mock and external json references in schemas support

Hi,
i merged but I removed the generation of body's request. I don't get this need because this plugin was done to provide mocked responses to a real system request.
If you can argue and defend the need of this functionality please do not hesitate and either open a new pull request or reopen this one.
Thanks @biggestT !


Abstraction of bevy_dev_tools

What problem does this solve or what need does it fill?
Allow for configuration of dev tools
What solution would you like?
Ideally, we're looking for something that:

Provides an easy way for user to enable/disable tool
Is configurable during runtime

Additional context
see https://github.com/bevyengine/bevy/pull/12354#discussion_r1516637590

Ideally, we would Fix #11083 and follow with some type of API from that.
But while we don't have it, one challenge of doing this now is the fact that we need to use something other than a plugin for it or similar. A problem that I can see is the fact that the major part of the tools need to add systems and so in the App building for working, something that I can't imagine doing without plugins, the only API that I can imagine working somehow is One Shot systems.

I don't think #11083 will be fixed anytime soon though, we could just drop configuration during runtime for now but keep it in mind for the future. We need some abstraction before merging more than few tools.

Yeah, I would like to avoid coupling this too tightly to the current Plugin trait.
The other key requirements I have are:

It's easy to toggle one on and off independently.
It's easy to toggle all of them on and off independently.
There's a simple standard way to add third-party or user-created dev tools to this group, which can then be toggled on and off.

That was what I was thinking. But first, we would probably need a TypeIdMap. I'm thinking in something like the Multiple gizmos config (see #10342).

I was thinking of something similar to diagnostics:
#[derive(Hash, Eq, PartialEq)
pub struct DevToolId(pub Uuid);

pub struct DevTool {
    pub id: DevToolId,
    pub is_enabled: bool,
    // ...
}

#[derive(Resource, Default)]
pub struct DevToolsStore {
    pub dev_tools: HashMap<DevtoolId, DevTool>,
}

This should meet all of our requirements. Though with the configuration during runtime it would require something like:
fn tool_system(dev_tools_store: Res<DevToolsStore>) {
    let Some(tool) = dev_tools_store.dev_tools.get(&uuid);
    if !tool.is_enabled {
        return;
    }
    // rest of the system
}

I wrote an RFC to better explore this space: https://github.com/bevyengine/rfcs/pull/77


Building loop between controller container and link

If we are rcl5 and can place a link near the controller the bot is destroying the container / link in a loop and rebuild it.
I think the problem is that the bot is not sure which building have to be their and always thinks it the "wrong" one at this position.
The behavior coming from the function private placeBase(RCL: number, maxCSites: number) and here the line structure.destroy().

Please check with latest commit (not on MMO) to see if this is fixed


Update index.md

As raised in issue #565, added few more lines which would immensely help total new comers to front end. Also added about changing the delimiter, because I think the first page itself should contain the information to change the delimiter, so the need to do an internet search for it is saved.

Thanks for the PR, but honestly I don't find these additions necessary. (Note the current version is already adjusted based on the feedback in #565).
For the first: you don't really need <html>, <head> or <body> if you are running the example code in a decently up-to-date browser. The brevity is intentional. The snippet simply tells the user how to "install" Vue on the page. They are supposed to then copy the examples below.
For the second: the guide has nothing to do with server side templates, although the tip itself is useful, this doesn't seem to be the right place for it.

The brevity is intentional.

So we are deliberately teaching people not to use valid HTML in the official docs?


Fixes #144 by removing typing dep for py3.5+

For Python 3.5 and above the typing module is integrated in Python so it has no effect. But it seems to break pip in certain cases as shown in #144

typing is built into Python 3.5+. According to setup.py, it only supports Python 3.5+, so we should be able to remove it.
https://github.com/open-homeautomation/miflora/blob/ebda66d1f4ba71bc0b98f8383280e59302b40fc8/setup.py#L26-L29
Besides the reference in requirements.txt, it's also referenced in setup.py.

@open-homeautomation would you be able to take a look at this PR? Any project that uses modern Python versions has to pip3 uninstall typing after installing miflora, but that might not be clear for new users.

@ChristianKuehnel Can you take a look?

Looks good to me!
Note: I also bumped the "btlewrap" dependency to 0.0.10, as it also depended in typing.

Could you also publish a new release?

Sorry, I do not have the premissions for that.
@open-homeautomation can you please create a new release?

@open-homeautomation would really like to see a new release.

Sorry, I can't find the time to maintain this. @ChristianKuehnel interested to take over this repository in the PIP releases?

Thx for the offer, but I'm not using miflora any more. Sorry 😞 . Maybe @ThomDietrich ?
I've moved to an ESPHome based solution. This proved to be much more reliable than Bluetooth on Linux.


[doc] Warning message says "you didn't set num_leaves" even if I explicitly set num_leaves=31

Environment info
Operating System: Ubuntu 18.04.3 LTS
CPU/GPU model: Not sure (running in AWS EC2)
C++/Python/R version: GCC 7.5/Python 3.7.5

LightGBM version or commit hash: 6b6709
Error message
[LightGBM] [Warning] Accuracy may be bad since you didn't set num_leaves and 2^max_depth > num_leaves
Steps to reproduce
Fit any model with num_leaves = 31 and max_depth >= 5
At line 307 of src/io/config.cpp, the check for whether to show the warning can't tell whether num_leaves is 31 because that's the default or because 31 was explicitly passed. The text "you didn't set num_leaves" in the message is confusing if I did explicitly set num_leaves to 31.

Hello @bfrobin446 ,
What would you like to see instead?
"Accuracy may be bad as num_leaves < 2^max_depth, with num_leaves=" ?

Maybe something like "The default num_leaves setting of 31 may be too low for best accuracy when 2^max_depth > num_leaves. Consider increasing num_leaves or reducing max_depth."

I'll leave that to @StrikerRUS, what's your input on this?

I agree that the current warning message is far from perfect. Contribution is more than welcome! Feel free to propose a PR.

Will do, thanks :)
On Fri, 20 Mar 2020, 20:59 Nikita Titov<EMAIL_ADDRESS>wrote:

I agree that the current warning message is far from perfect. Contribution
is more than welcome! Feel free to propose a PR.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/LightGBM/issues/2898#issuecomment-601908378,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6K4MI2NPSXYWA5F4LHYZLRIPKLRANCNFSM4LF6LEIQ
.

Agree with @bfrobin446 . This happens when I'm refering to Chinese documentations, where said we should let
classes< num_leaves< 2^max_depth. I took it and I got this warning, by changing which to num_leaves >2^max_depth it disappeared.
So by saying

[LightGBM] [Warning] Accuracy may be bad since you didn't set num_leaves and 2^max_depth > num_leaves,

what are you really suggesting? Should be 2^max_depth > num_leaves or 2^max_depth < num_leaves?
This is confusing. If you take

[LightGBM] [Warning] Accuracy may be bad since you didn't set num_leaves OR 2^max_depth > num_leaves

Agreements would likely be reached.

I can submit a PR this or next week then ;)

Sorry for revisiting this, but this message is shown when verbosity == -1, isn't that a bug? It's certainly not fatal.

Maybe something like "The default num_leaves setting of 31 may be too low for best accuracy when 2^max_depth > num_leaves. Consider increasing num_leaves or reducing max_depth."

But why in https://lightgbm.readthedocs.io/en/latest/Parameters-Tuning.html, the doc tell us to set num_leaves > 2^(max_depth)?

Maybe something like "The default num_leaves setting of 31 may be too low for best accuracy when 2^max_depth > num_leaves. Consider increasing num_leaves or reducing max_depth."

But why in https://lightgbm.readthedocs.io/en/latest/Parameters-Tuning.html, the doc tell us to set num_leaves < 2^(max_depth)?

@guolinke or @shiyu1994 could you comment on @Wang-Yu-Qing 's question?
I agree that the warning message and documentation seem to be making contradictory recommendations, and I'm not qualified to say which is the correct one.

The warning message is actually saying: you forget to set num_leaves, but you've set max_depth. This usually means that the user wants to use a depth-wise tree structure. But because LightGBM has a default num_leaves=31, the warning message reminds the user to set num_leaves accordingly when setting max_depth.
The document is emphasizing that max_depth can act as a regularization for LightGBM's leaf-wise tree structure. Setting num_leaves == 2^max_depth grows a full complete (depth-wise) tree. But for example, setting num_leaves == 2 ^ max_depth - 1 produces a leaf-wise tree with constrained depth, but keep a certain degree of the flexibility of leaf-wise tree.
My proposal is we may keep the document unchanged. But in config.cpp, we need to detect whether num_leaves is set by user (instead of simply checking whether it is ==31, since user can also set it to 31). And if num_leaves is not set but max_depth is set, we may produce a warning like max_depth is set to xxx but num_leaves is not set, will use the default value 31 for num_leaves.

Ok thanks for the explanation @shiyu1994 !
Given that, I think we should remove this warning entirely, and rely on documentation to help users choose good values (and, in practice, good ranges to explore during tuning).
Because it seems to me that there are legitimate reasons to want either num_leaves < 2^max_depth or num_leaves == 2^max_depth.


CDK-677: Add translation from Hive DDL to Schema.

Tables created in Hive using STORED AS AVRO do not have a schema URI or
literal in the table properties. Instead, the schema is generated from
the table DDL when writing. This translates from table DDL if no schema
is set. This also fixes tables created with STORED AS PARQUET.

I fixed the docs issue that Joey caught, but I think there is justification for using a DDL to Avro Schema converter in Kite to work with multiple Hive versions (without STORED AS AVRO) and to meet Kite's need for different read and write Schemas.
I've also not bumped the version to 0.14.0. We can do that separately, but this runs as-is and doesn't depend on Hive 0.14.0, so it seems unnecessary. If we want to track upstream versions more closely (and I agree we do) then we should open an issue for it and update more than just Hive.
I think this is ready to go, so please have another look. Thanks!

This looks good to me.


Windows: SMB Signing Disabled

The penetration testing report showed that (page 59):
The Windows VMs were not configured to authenticate SMB requests. An attacker can abuse this misconfiguration in scenarios where they have been able to manipulate the victim’s traffic, enabling them to impersonate the victim. This can lead to an attacker obtaining a foothold on a system under the correct conditions.
Server Message Block (SMB) signing allows a machine to confirm the authenticity of SMB packets and helps to prevent person-in-the-middle attacks. The absence of SMB signing could lead to SMB relay attacks and result in code execution on target systems, though this requires the attacker to successfully relay a credential where the user is local administrator on the system. Irrespective of whether the victim is granted privileges, an attacker can abuse the feature to capture credentials, or perform enumeration of the Active Directory domain.
The following configuration was observed for the SMB server service on the system, which had SMB signing disabled:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\RequireSecuritySignature, Value: 0
This is a medium level risk, but is something we must fix before the next pen-test.

Bioku, can you confirm if this fix is now baked into the custom images?

Hello Tony, Yes, this is now available in the custom images in the development environment.


remove clang-format

i still feel like having it run on merges (with some tweaks) might be beneficial, and probably shouldnt break anything as long as handwritten asm is taken care of correctly. its not super important, but could still be nice for keeping some small things consistent

i still feel like having it run on merges (with some tweaks) might be beneficial, and probably shouldnt break anything as long as handwritten asm is taken care of correctly. its not super important, but could still be nice for keeping some small things consistent

Yea we could have a blacklist.

I thought one of the reasons to remove clang format was because it makes the formatting overall worse, so it shouldn't be run at all.
We could also try to improve the formatting options: https://clang.llvm.org/docs/ClangFormatStyleOptions.html
For example AlignConsecutiveAssignments: true would fix the enum formatting. It might be worth looking into cause in general I'd prefer to not have to worry about formatting myself.
 I think contributors should be able to use it at their discretion (avoiding problematic files?)

we should encourage code that follows the basic conventions

we should encourage any code. the standards are not particularly important, at least not yet.

we should encourage code that follows the basic conventions

we should encourage any code. the standards are not particularly important, at least not yet.


Typo in CLI command name: 'az volumes qouta-rule'

Prerequisites

[X] Write a descriptive title.
[X] Search the existing issues.
[X] I am reporting the documentation problem for the current version of Azure CLI.

Azure CLI version being used
2.44.0
Link to affected document
https://learn.microsoft.com/en-us/cli/azure/release-notes-azure-cli#netappfiles
Description of the documentation error
'qouta' in command names should be 'quota'.
Suggested fix
No response

@netapp-juliec
Thanks for your contribution.
It would be great if you could add a link to the Proper documentation you are following for these steps? This would help us redirect the issue to the appropriate team. Thanks!

@netapp-juliec
Thanks for your feedback! We will investigate and update as appropriate.

@netapp-juliec , This typo, along with the Azure CLI command name, has been fixed in the source file located in Azure/azure-cli.  Please see PR #25618.  Thank you for helping to improve the Azure CLI Release Notes.


IETF BCP 47 language tag explainer as extra feature on the Numerordĭnātĭo playground

https://en.wikipedia.org/wiki/IETF_language_tag
https://tools.ietf.org/rfc/bcp/bcp47
https://github.com/EticaAI/numerordinatio/issues/2

While this goes beyond the minimalistic approach of order Numerordĭnātĭo (but not Numerordĭnātĭo Multilingua) we can expose on the playground some way to lexicographers to quickly see what a full IETF BCP-47 language tag means (see #2).
Similar features could be done later with codes related to places (such as UN m49 plus UN P codes). But these cases would already need to have datasets compiled to be loaded on interface, so users could change data.

The feature is not as exposed. Also it could show links, such as what https://iso639-3.sil.org/code/eng do to "Ethnologue, Glottolog, Multitree, Wikipedia" but at least expose the internal parsing
1 button at the end

2 button expanded

2 click to generate

This feature was implemented earlier. Closing for now.


Non-transient error:

Pre-requisites

[X] I have double-checked my configuration
[X] I have tested with the :latest image tag (i.e. quay.io/argoproj/workflow-controller:latest) and can confirm the issue still exists on :latest. If not, I have explained why, in detail, in my description below.
[X] I have searched existing issues and could not find a match for this bug
[X] I'd like to contribute the fix myself (see contributing guide)

What happened? What did you expect to happen?
I encounter a lot of these:
Non-transient error: <nil>

and sadly there's not much context I can give. Actually, I can give close to nil context. ;)
We run workflows with up to 250 nodes and thousands of concurrent pods. The above log is apparenty just a warning but the nil there seems worrisome. Should I worry?
Sadly, I cannot provide proper steps to reproduce. This ain't very helpful but perhaps someone else is seeing the same or has an immediate idea.
Version(s)
v3.5.12
Paste a minimal workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
N/A

Logs from the workflow controller
time="2024-11-08T10:02:19.639Z" level=warning msg="Non-transient error: <nil>"

Logs from in your workflow's wait container
N/A

@black-snow provide the controller logs surrounding that line

This is not really actually an issue,  there is a bug where we call IsTransientError on an nil error.

Thanks for looking into this. Do you still need the surrounding logs?
Can we get rid of them if they are false positives?

@black-snow Do you like to contribute? It is a good first issue

@black-snow the surrounding logs can help to know which line to change

@sarabala1979 absolutely. Sounds like @isubasinghe already has a notion of where to look.

@black-snow No need for the logs. I can reproduce this locally and entered https://github.com/argoproj/argo-workflows/pull/13917 with a fix.


chore(main): release 1.7.1

:robot: I have created a release beep boop
1.7.1 (2024-08-26)
Performance Improvements

remove todos os arquivos de audio separados ao gerar o arquivo final (a7d01da)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.7.1
:sunflower:


feat(select): add icon props to Select and SelectMultiple

General summary

Add icon props to Select and SelectMultiple
Screenshots

Deploying to storybook

Well, the deploy won't work I don't know why. It worked fined today on the other PRs. I'll test locally

Test OK


GAME

Hey i want to add a breaking bricks game based on vannila js and Canvas API should i add??

Hey I would like to add a blackjack casino game made using python. Could you please allow me to make the respective contribution?

@amintai sure! Add it in Games folder.

@mayankparida merged it.

@bhaveshlohana  i have added Game inside Games folder and sended PR.

@amintai  I'll look at it and merge it!


Feat/refactoring cli and new features (interactive ssh session, plugins, tab completion)

PR merge todo checklist

[ ] Support TFA code for Basic Auth login type?
[x] Devcontainer improvements

[x] Remove unnecessary dependencies
[x] Use non-root user
[x] Add shell profiles (for testing tab completion etc.) for bash, zsh and fish
[x] Build c8ylp in postCreateCommand (defined in devcontainer.json) which is run after the workspace has been mounted

[x] Don't reset websocket connection count until the socket has been opened for at least 10 seconds (i.e. when the device proxy side tries to establish a connection to the local ssh daemon but it does not exist, and gets connection refused)
[x] Add license information to all source files (possibly integration this: https://github.com/johann-petrak/licenseheaders)
[x] Replace  versioneer with setuptools_scm to generate package version based on git information
[x] Don't prompt for TFA code when TFA is not enabled for the user
[x] Integration formatting/linting/unit tests in build process
[x] Update README.md
[x] Validate refactored project and extensions with other contributors
[x] Investigate displaying a user message when upgrading to v2.x via pip. Unfortunately this is not supported by pip (unless if the user runs with the "-v" option, however I don't think many people do this). So we will have to rely on the migration section in the README.md

You can try out the new version of c8ylp (from this PR) by installing it via pip:
pip3 install git+https://github.com/SoftwareAG/cumulocity-remote-access-local-proxy.git@feat/refactoring-cli-lib

Breaking changes

Renamed command structure and parameter names. Checkout the migration notes for full details to get the most out of the newer version.

Restructured project and dependencies

Add code formatting and linting
Refactor code to simplify interactions between the local tcp server and the websocket client
Add unit and integration tests (coverage currently around ~80% with unit tests and ~87% with integration tests). Currently only unit tests are run in the GitHub Actions

Enabled calling project using just the module name, i.e. python3 -m c8ylp.main => python3 -m c8ylp

Added repo hosted cli documentation

Features

Load configuration from an environment via the --env-file parameter and support caching the Cumulocity token to it.

Support usage of random port when starting the local proxy via --port 0

Add interactive ssh connection which starts a once-off local proxy on a random port and then starts an SSH client automatically. Once the ssh client disconnects the local proxy is shutdown.

c8ylp plugin command Generic subcommand to execute custom commands to launch ssh yourself (instead of via c8ylp connect ssh). This allows you to customize your ssh options.

Plugin support to allow the user to extend c8ylp functionality by use of external plugins in the form of python or shell scripts. See docs/PLUGINS for information

Support multiple environment variables for setting Cumulocity credentials to improve compatibility with other Cumulocity tooling

Bug fixes

Port timeout error when running on windows

Fixed randomized port race condition by letting the operating system assign a random port when starting the local tcp server

@reubenmiller Found few things so far

dockerfile in devcontainer folder needs to be updated to be working again. Some missing files.
c8ylp login prompts always for TFA-Token even TFA for that user is not enabled. Cannot be skipped with empty values.

Are there any reasons versioneer.py is copied into the project? Could we move it as a dependency in the requirements.txt?

@reubenmiller Found few things so far

dockerfile in devcontainer folder needs to be updated to be working again. Some missing files.
c8ylp login prompts always for TFA-Token even TFA for that user is not enabled. Cannot be skipped with empty values.

A .devcontainer folder was not added the project and I don't think was ever included. Or do you mean we should add one (more than happy to)?
Yeah I actually did wonder about that with the original implementation, but maybe I broke that. If so I can check out how I did it in go-c8y-cli and do something similar here.
Regarding versionier, that is unfortunately how it works. It needs to be committed to the project (as per the README.md, and https://github.com/python-versioneer/python-versioneer/issues/145)

@switschel optional TFA should be done now and I also added support for Basic Auth (only in cases where OAUTH2_INTERNAL has not been activated for some strange reason).
The only corner case which is not handled explicitly is if the tenant is using basic auth and TFA...but I'm not sure if it is worth while as we should encourage usage of OAUTH2_INTERNAL over basic.
Other than that regarding versioneer, I could change to using setuptools-scm instead...I have used it before, though some of the defaults are a bit strange imho.

@reubenmiller

devcontainer my fault.. missed it to add it to the repo.  I will add it with the required changes.
TFA Token: Will test this.
Versioneer: There might be license compatibility issues of CC0-1.0 with Apache v2 https://wiki.creativecommons.org/wiki/CC0_FAQ at least it is not clearly defined. We should check this before merging.

@reubenmiller
Can you add the copyright headers in all files? We have to follow the SAG OS guidelines where this is required.

@switschel

Added a task which can add license (based on a template) to all .py files in the project. Added note to DEVELOPER.md docs.
Removed versioneer in favor or setuptools_scm (which is installed as a dependency only). It might take one build to shake out any CI/CD bugs.

@switschel I've reworked the dev container, and fixed a bug (tasks have been added and updated in PR checklist). The only open topic now is the "Support TFA code for Basic Auth login type"....Though can cancel this task as it will be hard to test (as requires a SMS provider).

@reubenmiller Looks fine now.
One thing with the devcontainer: c8ylp is not installed correctly for me.
/bin/sh: 1: .devcontainer/entrypoint.sh: not found
[9087 ms] [14:25:52] Installing extension: njpwerner.autodocstring
[9147 ms] [14:25:52] Installing extension: ms-python.python
[9191 ms] [14:25:52] Installing extension: streetsidesoftware.code-spell-checker
[9204 ms] Error: Command failed: /bin/sh -c .devcontainer/entrypoint.sh
at Xy (c:\Users\SWIT.vscode\extensions\ms-vscode-remote.remote-containers-0.205.2\dist\extension\extension.js:300:15)
at async Qy (c:\Users\SWIT.vscode\extensions\ms-vscode-remote.remote-containers-0.205.2\dist\extension\extension.js:293:2645)
at async c:\Users\SWIT.vscode\extensions\ms-vscode-remote.remote-containers-0.205.2\dist\extension\extension.js:275:8257


Isolate javascript from html

As of now, the JS code is bundled inside index.html.
We need to take out the js code and save it separately. and ensure that the webpage functions correctly after this.

Can I do it. Do you want it to be 'async'

@the-dagger reply

@the-dagger is anyone working on this? I can help you on this issue.

Hey, sorry for the delayed response, you can go ahead and work on this. @Abhi2424shek @pvtuan10

PR to solve this issue: #866


Execution rights on an object can corrupt local cache

See original issue on GitLab
In GitLab by [Gitlab user @valentindavid] on Feb 12, 2019, 17:55
Summary
Because we use linking of files form cache, when an object require execution rights, the execution rights leak into the local cache. This breaks reproducibility of builds, because a file might have no execution right or have it whether another artifact contains the same object with execution rights is on the local cache or not.
Steps to reproduce

Have element a.bst that creates a file a.
Have element b.bst that build-depends on a.bst.
Build b.bst and see that file a has no execution rights.
Have element c.bst that build-depends on a.bst. It installs a and chmod +x it.
Build b.bst again.

What is the current bug behavior?
a has execution rights on the second build.
What is the expected correct behavior?
a does not have execution rights on the second build.
Relevant logs and/or screenshots
Possible fixes
Other relevant information

BuildStream version affected: /milestone %BuildStream_v1.x

In GitLab by [Gitlab user @valentindavid] on Feb 12, 2019, 17:55
mentioned in merge request !1146

In GitLab by [Gitlab user @tristanvb] on Jul 17, 2019, 10:10
marked this issue as related to #38

In GitLab by [Gitlab user @tristanvb] on Jul 17, 2019, 10:10
marked this issue as related to #324

In GitLab by [Gitlab user @tristanvb] on Jul 17, 2019, 10:11
Noting here that I've marked #38 and #324 as related, as this is all part of CAS not dealing with file attributes properly.

In GitLab by [Gitlab user @juergbi] on Jul 17, 2019, 10:19
They are related to some extent. However, to clarify, unlike other permission bits and hardlinks, CAS does store executable bits (in directory metadata, there is no concept of inodes in CAS). This issue would not appear when using buildbox-fuse instead of hardlinks for staging.

In GitLab by [Gitlab user @tristanvb] on Jul 17, 2019, 11:26
After discussing this at length on IRC, I think we should drop !1146 and instead fix this directly on bst-1 while it's fresh on [Gitlab user @valentindavid]'s mind, and in master we wait for the ongoing casd work to land first and fix it differently in casd.
Some summary points:

[Gitlab user @juergbi] would prefer not to land this fix in master right now, as there is ongoing work to change the local builds to use buildbox and casd, and it will anyway have to be fixed differently at that time
This probably means that the local CAS directory will not be compatible with BuildStream 1 and BuildStream 2

It was pointed out that even now they are not entirely compatible, and that cleanup operations run in BuildStream 1 may have averse effects on BuildStream 2 sharing the same local CAS cache (and/or vice versa).
In any case it is not much of a value add to allow BuildStream 1 and 2 to share the same local cache
When BuildStream 2 comes out, it should anyway just have a separate default config file and use a different cache directory by default, avoiding any accidental cache sharing on hosts where a user needs to work on BuildStream 1 and BuildStream 2 projects

We also observed that the fix in !1146 will render any existing local caches invalid, the user will need to wipe out their local cache to ensure we don't hit any scenarios with missing objects. We should ensure a clean upgrade path, following either of the following strategies:

Automatically copy-on-demand the original objects in the CAS to the new .exec. This has the bonus of not throwing away an existing CAS, and the negative point that if the cache is corrupt already because of this bug, it will not be automatically fixed until the user deletes their local cache.
Automatically wipe the cache when upgrading to a version of BuildStream 1 which has the fix. This could be done by simply revisioning the CAS storage (by having it versioned in code and in the actual CAS, if the loaded CAS version is lower than the version in code, then it needs to be wiped).


Can I deploy a project with just a Dockerfile and *.ctr? Yes. Spread implicitly infers the rest of the app hierarchy.

how can i do this? any example?

Building is on spreads roadmap but has not yet been implemented (see #59) and the docs should definitely be updated to reflect this. I'll make sure this happens.
We are trying to get to this soon. In the meantime would definitely love feedback on the mechanism discussed in #101 to express which Docker context is built.


Allow build & run to reference unreachable targets

This reintroduces PR #1284 that was reverted before the release of Swift 4 because of a bug referenced in SR-5595. The original code was modified to pass the new test that was added in 4b74cec60b6f2211804380fc6a3504058318f8ea to support external test targets on Linux.
This resolves SR-5597.

@swift-ci please smoke test


Does not start

I installed grocy-desktop_1.4.2.msi on Windows 10 Home (Version1809)
But on startup it shows following error two times, then empty grocy screen stys open:

Restart of grocy-desktop_1.4.2.msi  and using "Repair" does not solve problem.
Remove and Re-Install does not solve the problem.

Install via Microsoft Store gives the same error as above. :-(

Sorry, was probably due to the change that the C++ Runtime is now included in the installer (was a requirement for Microsoft Store submission) - I was not aware that not only CefSharp, but also PHP has this dependency...
You can fix it in the meantime by installing the corresponding runtime on your machine, that one: https://download.microsoft.com/download/6/A/A/6AA4EDFF-645B-48C5-81CC-ED5963AEAD48/vc_redist.x86.exe

With pre-installing vc_redist.x86.exe and then installing grocy-desktop_1.4.2.msi solved the problem.
Grocy starts up now as it should.


fix panic in provider server while onboarding

Fix provider server panic while onboarding Consumers when the value of the storageQuota in the onboardingTicket is set to nil
Introduced with: https://github.com/red-hat-storage/ocs-operator/pull/2669

What is the issue with converting the unit to int? We are not expecting very large numbers here.
How does moving the conversion from outside the function into the function solves the problem?

@nb-ohad The issue is with converting the pointer to unit to int. If the storageQuotaInGib is nil it will panic. I moved everything inside a inline function to make it clean and return 0 as storageQuotaInGib if the value is nil (we could have the same check outside the function as well)

@rewantsoni You should not convert a pointer. You should convert the value is not the same thing.
Converting a pointer means that you are trying to reference the same underlying value but at the same time interpreting it as something else. That is wrong in this case.
You should convert the value (outside of the function), and send the converted value into the function.

A good fix for the bug will be
if size := onboardingTicket.StorageQuotaInGiBl size == nil || *size > math.MaxInt {
    // return some error
}
storageConsumerUUID, err := s.consumerManager.Create(ctx, req, int(*size))

/lgtm


AsonSerializer: recursive getDeclaredFields returns empty List when class doesn't have any Fields, even if superclasses have

Respective line.
A workaround is to add a dummy field (optionally even with @AsonIgnore) to the Class.

Fixed in 1.4.15

Thanks for the quick fix! :)


feat!: by default determine version from Git tags

The plugin now is not configurable any more.
However, there is a plugin variant that can be used as before, where the configuration can be adapted and also a version file used if desired.

:tada: This PR is included in version 2.0.0 :tada:
The release is available on:

v2.0.0
GitHub release

Your semantic-release bot :package::rocket:


Allow compilation.

Shift the cypher-based functions to be defined after the cypher class
to break the circular dependency and allow Quicklisp loading.
This is because I need to use authentication with neo4j....

Thanks for the update, @pnathan !


Improve Order of Games Table on Beta

Is your feature request related to a problem?
Yes. It seems odd that the tournament name would be after handicap. This is on the Games table for Beta.
Describe the feature you'd like to see on the AGAGD.
Ordering which places the tournament name before the players information on the Games table for Beta may make more sense.
Screenshots

Resolved with #222.


Add gitpod config

this commit adds support for Gitpod.io, a free automated
dev environment that makes contributing and generally working on GitHub
projects much easier. It allows anyone to start a ready-to-code dev
environment for any branch, issue and pull request with a single click.

Closing this as GitPod would be needed for the playground repo and not this one!


Add Redux + data persistence

Adding Redux for state management

Redux + persistence in AsyncStorage.
Moved the source to live under src as suggested by good practices
Cleaned up some boilerplate examples

Closes ASP-19

It looks like kodiak has an issue and misses branch protection, check here for reference.

Nice, fixed it @Ne0Strix. Kodiak is more for dependabot updates when we set it up :)

Figured that out after checking the ‘.toml‘ 😄👌🏼


[QUESTION] Custom TLS-Certificate not being applied

Rancher Server Setup

Rancher version: 2.8
Installation option: Helm, deployed on a k3s cluster (v1.27.7+k3s2)

Information about the Cluster

Kubernetes version: v1.27.7+k3s2
Cluster Type: local

User Information

What is the role of the user logged in? -> Admin

Question
Hi everyone, I would like to deploy Rancher on my K3S cluster. The actual deployment also works, I can reach rancher via the created ingress route (ingress controller -> traefik) and use rancher correctly.
In the cluster I have deployed cert-manager in a separate namespace next to Rancher. The cert-manager can request TLS certificates from LetsEncrypt via a DNS challenge.
I would now like to secure the Rancher web interface with such a certificate. For this I read in the documentation that it is sufficient to create a secret with the certificate and to reference this secret during installation as follows:
helm upgrade --install rancher rancher-latest/rancher --namespace cattle-system --set hostname=rancher.<hidden> --set ingress.tls.source=tls-rancher-ingress

I have checked that the secret is created correctly by the cert-manager and is also stored in the correct namespace:
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: rancher-<hidden>
  namespace: cattle-system
spec:
  secretName: tls-rancher-ingress
  renewBefore: 240h
  issuerRef:
    name: letsencrypt-production
    kind: ClusterIssuer
  commonName: "rancher.<hidden>"
  dnsNames:
  - "rancher.<hidden>"

Unfortunately, the certificate is not used but a self-signed certificate from rancher is still issued. What am I missing here?
Many thanks for your tips, cheers

@morzan1001 i have the same issue, what did you do to fix it ?

@morzan1001 i have the same issue, what did you do to fix it ?

Hi, i had to set a traefik label that assigns the endpoint. My HTTPS endpoint is called “websecure”.  I have the following values.yaml, it works.
hostname: "<hidden>"
ingress:
  ingressClassName: "traefik"
  tls:
    source: secret
    secretName: tls-rancher-ingress
  extraAnnotations:
    traefik.ingress.kubernetes.io/router.entrypoints: websecure


How can I keep animation status?

Hi , if I can set the odometer into animation status  by javascript before I get the new
update  value form server?      I need the animation work continuously , but not set the Duration prop?
thanks for your help.

Did you found out how to get this done?

I am having the same issue. Any update to this @ringgoyao?


Add Inspire and Momentum Dynamics

Add Inspire and Momentum Dynamics

Hey @PeterArriaza, thank you for your contribution!
Just one thing before I merge this PR, could you change the commit message? I'm trying to keep it in the format Add CompanyName1, CompanyName2, ... and CompanyNameN.
You can do so by running the following commands:
git commit --amend --message "Add Inspire and Momentum Dynamics"
git push --force-with-lease

hey @nglgzz I think I made the changes? Sorry, I'm pretty new to making pull requests.  Let me know if everything looks good!

Yep, looks good now, thank you for the help!


First playble Python 3 Port!

Still a few bugs to work out, but can actually play the game!

Excellent thank you!


Add zfs-import.target for all zfs mounts in fileSystems

Issue description
https://github.com/zfsonlinux/zfs/commit/5c2552c56456191e8038efe25ed66270c3f1501a added a new target to avoid race conditions between "legacy" mounts from /etc/fstab and zfs own mount mechanism.
We should add this option to all entries in fileSystems of fsType equal to zfs. This would also make it possible to mix zfs native mounts and other non-zfs filesystems on top in a limited way, if the users add this target manually.

It is better to use zfs's systemd mount generator: https://github.com/NixOS/nixpkgs/issues/89396


Candidates don't appear

I might be doing something wrong here, but when I try to use any custom input method on Mac, most recently this one, the character candidates don't appear so I can't actually type with it.

Have a look at this and see if it helps.


Add explicit derivative for jax.numpy.linalg.pinv.

Fix type confusion problems in the JVP rule for SVD that meant it produced 64-bit tangents for 32-bit primals.
Fixes #2792

The first term is the regular matrix inverse derivative formula for invertible matrices, and the latter two terms are zero when A^+ = A^{-1}.
The first term is of the form X -> A X A and the latter two terms are of the form X -> B X C' + C X B'. I wonder if there are numerical issues that arise just from how we associate those matrix products. Or whether we expand C = (I - E) and distribute into X -> B X - B X E' + X B' - E X B'.
Anyway just wanted to offer some raw thoughts, maybe those ideas are not useful!

Or maybe it's just fundamentally unstable because of how pseudoinverses work...

It may be that the most numerically stable thing to do would reuse the SVD decomposition of the input matrix, since then we can e.g. treat the numerically nonzero singular values and their corresponding subspaces differently from the others.

Are you happy merging this as is?
(I note this is the same rule as autograd, FWIW.)

Yes, very happy!

Actually I note that TF has the following formulation of the cutoff which I think also fixes the NaN problem:
  s = np.where(s > cutoff, s, np.inf)
  res = np.matmul(_T(v), np.divide(_T(u), s[..., np.newaxis]))

(instead of:
  s = np.where(s > cutoff, np.divide(1, s), 0)
  res = np.matmul(_T(v), np.multiply(s[..., np.newaxis], _T(u)))

)
Maybe that's simpler anyway and we don't need a custom JVP at all?
Interestingly it seems to fail only for some complex cases, which is odd.

Nice find!

Here's another fail case with the current algorithm:
>>> jax.jacobian(jnp.linalg.pinv)(jnp.eye(2))
DeviceArray([[[[nan, nan],
               [nan, nan]],

              [[nan, nan],
               [nan, nan]]],

             [[[nan, nan],
               [nan, nan]],

              [[nan, nan],
               [nan, nan]]]], dtype=float32)

Hm and that matrix looks invertible :)

The first term is the regular matrix inverse derivative formula for invertible matrices, and the latter two terms are zero when A^+ = A^{-1}.
The first term is of the form X -> A X A and the latter two terms are of the form X -> B X C' + C X B'.
Just a few more thoughts:
A^+A  is not the transpose of AA^+, those are orthogonal projectors and thus self-adjoint.

The derivatives of A^+A  or AA^+ will zero out the second or last term  of d A^+, respectively, which may not be the case for a badly conditioned A.

#2744 may be related, in that instead of relying on the SVD derivative rule we might want to have a custom JVP rule that uses the results of the SVD (and in particular works more directly on the numerically identified row space / col space / null space / col space perp).

#2744 may be related, in that instead of relying on the SVD derivative rule we might want to have a custom JVP rule that uses the results of the SVD (and in particular works more directly on the numerically identified row space / col space / null space / col space perp).

Indeed, practically speaking I suspect the right gradient rule to use in both cases is probably lax.custom_linear_solve. Mathematically the implicit function theorem math works the same for either exact solves or psuedo-inverse solves or least-square solves.
The interface would work for lstsq (I think) but unfortunately not for pinv. The problem is that we really need a "solve" interface, i.e.,
def psolve(a, b):
  return jnp.linalg.pinv(a) @ b

and it appears neither numpy nor scipy have a psolve function

Wow -- using custom_linear_solve is 10x faster (and also numerically stable): https://github.com/google/jax/issues/2802
We still need this custom_jvp for pinv, but most users probably shouldn't be differentiating pinv directly unless they're using it for something other than solves.


unitTestFramework is not valid if unitTestRunner is None

I am getting an error when I try to create a new project with the most basic set-up - no test, linters, etc.  Here is the command:
unite configure --packageName=unite-test --profile=AureliaJavaScript --linter=None --unitTestRunner=None --e2eTestRunner=None --cssPre=Css --cssPost=None --cssLinter=None --documenter=None
The error I am getting is "unitTestFramework is not valid if unitTestRunner is None."
Do I need to specify unit tests?
Great idea and excited to try this out!

Note:  similar error for e2e...
ERROR: e2eTestFramework is not valid if e2eTestRunner is None

Thanks for reporting, this is because the profiles have a unitTestFramework and e2eTestFramework set by default and there is no way to turn them off.
You could use the following command line instead to achieve your same setup.
unite configure --packageName=unite-test --appFramework=Aurelia --moduleType=SystemJS --bundler=SystemJSBuilder --sourceLanguage=JavaScript --linter=None --unitTestRunner=None --e2eTestRunner=None --cssPre=Css --cssPost=None --cssLinter=None --documenter=None

I should probably set the unitTestFramework and e2eTestFramework to none internally if a profile specifies the runner and then they are overridden.

Not a big deal.  It is helpful to have all of the modules anyway.  It just seemed like an option because I used the generator to set up my project.

Fixed in 1.7.12


Assign a name to columns with binary expressions in them

The name of the column will be every measurement located inside of the
math expression in the order they are encountered in within the
expression.
Fixes #5730.

What happens to the resulting column names if you have two expressions with the same measurements in them?

@e-dard this PR doesn't tackle that.

OK, well in that case LGTM :+1:

@jwilder @benbjohnson


pkg/trace/config: add 'sqllexer' feature to enable sqllexer obfuscator

What does this PR do?
This commit adds the feature flag 'sqllexer' which will cause the obfuscator to use sqllexer instead of its usual lexer to obfuscate queries.
Motivation
The SQL Obfuscator can be configured to use the go sqllexer to obfuscate SQL queries, but this was not exposed in the Trace Agent config.
Describe how to test/QA your changes
~Run the agent with and without the 'sqllexer' feature while sending SQL queries in traces and validate that they are obfuscated as expected with both configurations.~
~Note, the obfuscation results will differ slightly between the implementations. The important thing is that the queries are obfuscated.~
An integration test was added to test this behavior. No manual QA is required.

/merge


Explicitly install .NET 6.0 and 8.0 in CI

It appears CI is failing because we aren't installing .NET 6.0, adding a line to install the versions we need explicitly

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 58.37%. Comparing base (af54606) to head (9980137).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #568      +/-   ##
==========================================
- Coverage   58.41%   58.37%   -0.04%
==========================================
  Files         250      250
  Lines        7796     7796
  Branches      916      916
==========================================
- Hits         4554     4551       -3
- Misses       2826     2829       +3
  Partials      416      416

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Upstream DSR and connector related metadata from Fides

The fides project has extended the fideslang models to included extra metadata for processing DSRs. Most notably the FidesopsMeta model. All of the changes made to fideslang models in the dataset.py should be upstreamed into the fideslang project. This is to standardize on what DSR metadata should look like.
Acceptance Criteria

Upstreamed all of the DSR fields from fides into fideslang
Update the Taxonomy model to not strip out extra fields that are included in JSON payloads
Update fidesops_meta to fides_meta

@ThomasLaPiana I have a couple spec related questions:

Should fidesctl_meta be deprecated and or removed?

I'm not sure if this is used at all. If not, now would be a great time to delete it.

Does it make sense to rename fidesops_meta to dsr_meta instead of fides_meta?

I was wondering if this might be a little more self documenting. From my undestanding fidesops_meta was used for DSRs so we could just skip straight to that.

hey @TheAndrewJackson my vote would be for this to be as generic as possible and I wonder if dsr_meta is too specific because the information contained there could also be used for data maps too.
In other words, some of the information in fidesops_meta includes how one table is linked to another.  We use that to build a graph when we're running DSR's, to know that we need to visit table A and table B before we visit table C, but those relationships also describe the existing system in a sense.
But I'm pretty new to the -ctl side of things, so @ThomasLaPiana can better weigh in on whether fidesops_meta information can be shared between -ops and -ctl features.

@pattisdr That makes sense! Thanks for the input. I think fides_meta makes more sense if it contains other info in addition what's related to DSRs.

Yep, I think fides_meta is a good catch-all! With the projects merged, it is much easier (neigh, impossible?) for us to accidentally overwrite each other's keys in that field, so I don't think we need to have separate _meta fields
also @SteveDMurphy can confirm whether or not we use fidesctl_meta, I believe we do for some system scanning and maybe classification?

Hey @pattisdr I've re-assigned this from @TheAndrewJackson. It looks like some progress has already been made — when fidesplus is released we should do a quickhandover :).

also @SteveDMurphy can confirm whether or not we use fidesctl_meta, I believe we do for some system scanning and maybe classification?

oof, sorry I missed this! But yes the fidesctl_meta can currently be used by the scan system aws functionality. I believe there is also a generic meta field used that may be general purpose enough for our uses but open to other ideas as well 👍🏽

To simplify matters, we could keep our focus on combining just Dataset concepts here.  scan system aws functionality writes to Systems > fidesctl_meta but not Datasets > fidesctl_meta.  And Fidesops never did anything related to Systems, so we don't necessarily need to touch Systems just yet.
So focusing on Datasets, we could combine fidesctl_meta from fideslang and fidesops_meta from fidesops into one field:

Rename fideslang > Datasets.fidesctl_meta to be Datasets.fides_meta.

Update fideslang > DatasetMetadata class to also have fields from fides > FidesopsDatasetMeta

Downstream in fides, rename ctl_datasets.fidesctl_meta column to fides_meta

I think we should leave the generic meta field alone for customer use, per this docstring:

"An optional object that provides additional information about the Dataset. You can structure the object however you like. It can be a simple set of key: value properties or a deeply nested hierarchy of objects. How you use the object is up to you: Fides ignores it."

To simplify matters, we could keep our focus on combining just Dataset concepts here. scan system aws functionality writes to Systems > fidesctl_meta but not Datasets > fidesctl_meta. And Fidesops never did anything related to Systems, so we don't necessarily need to touch Systems just yet.
So focusing on Datasets, we could combine fidesctl_meta from fideslang and fidesops_meta from fidesops into one field:

Rename fideslang > Datasets.fidesctl_meta to be Datasets.fides_meta.

Update fideslang > DatasetMetadata class to also have fields from fides > FidesopsDatasetMeta

Downstream in fides, rename ctl_datasets.fidesctl_meta column to fides_meta

I think we should leave the generic meta field alone for customer use, per this docstring:

"An optional object that provides additional information about the Dataset. You can structure the object however you like. It can be a simple set of key: value properties or a deeply nested hierarchy of objects. How you use the object is up to you: Fides ignores it."

Huge agree here!

Looking at the code, maybe we can directly add meta and fides_meta to the FidesBase class? That way we don't have to worry about this in the future, and I don't think it hurts for every object to have it? (every top-level object at least)

Quick backwards compat question: is it possible to make this field work if it's called fidesops_meta or fides_meta? I'd like to stay compatible with existing datasets, especially all the SaaS connector ones.

hey @NevilleS that's the very thing I'm mulling over now! What I'm considering is a validator that takes in fidesops_meta if it exists and replaces fides_meta with that value, and perhaps adds a deprecation warning there.
We also could move it over as fidesops_meta too, that is simpler.

Looking at the code, maybe we can directly add meta and fides_meta to the FidesBase class? That way we don't have to worry about this in the future, and I don't think it hurts for every object to have it? (every top-level object at least)

I think scope is starting to creep here, the PR's are getting large, so I'd prefer to keep this specific issue constrained to datasets. Happy to ticket a followup to address this if that's alright.

My current work is renaming fidesctl_meta to be fides_meta on the fideslang Dataset model and also doing a data migration downstream in fides ctl_datasets to match.
Adding this same thing to Systems, Organizations would mean matching migrations downstream, and adding updates to the systems-related code that was writing to the fidesctl_meta field.

@pattisdr I can't argue with keeping a small scope 🙂 thanks for calling out the creep!
Agreed we should focus on datasets here

Great, reticketed here, we could do this last: https://github.com/ethyca/fideslang/issues/96


Remove all or certain routes

We have a need to remove all routes and certain routes (given a path and an optional HTTP method) from our class that derives from SparkBase without having to restart the Web server. To support this, SparkBase should expose the following methods:
+ removeRoute(path: String): boolean
+ removeRoute(path: String, httpMethod: HttpMethod): boolean
+ clearRoutes(): void

These would then forward the request to SimpleRouteMatcher which needs to expose analogous methods.

why would you want this??

For times when routing isn't so static as usual

I got that, I'm really interested in the real world scenario where this would happen. Maybe it can be accomplished in another way.

I poured over the code base and couldn't find a way to do this in a less obtrusive manner. With only 3 methods added to SparkBase and no static helper methods added to Spark, I'm hoping that this low-level API addition will be acceptable for those rare cases (like I have) where more dynamism is needed. If there is a better way, please let me know, and I'd be happy to send a new PR.

wow... I'm not saying this is wrong, I'm just asking you your use case because I'm interested, I never ran into this problem and I would like to learn from it... If it's confidential that's cool

[Ping me offline][1], @amarseillan, and I'll explain the use case in more detail. Too much to type.
[1]: http://travisspencer.com/contact-me.html

Unless you can provide a real world use case I doubt it'll get implemented in the framework... but hey, I'm not @perwendel so what do I know?
FWIW, I'm also having trouble understanding why someone would need this feature (ie: when "routing isn't so static as usual")

I'll soon start to take care of the trailing Spark work, including this. I'm currently on parental leave with two kids so my mind is somewhere else :-).

@travisspencer can you explain the use case to me as well so I can contemplate if this is the best solution for it? Thanks

The use case is that we need to remove routes without having to restart the server in order to avoid unnecessary downtime.
I understand from the PoV of the community that it is important to protect Spark from feature creep. Unfortunately, I can't say more about what we're doing in an open forum. I'd be willing to do so using a more discrete method of communication (e.g., telephone). You've got my number, @perwendel. Call me some time, and I'll explain a bit more. If there's a better way to implement what we need, I'm happy to send a different patch.
Either way, thanks for considering this, and sorry that I can't be more forthcoming at this time.

Yeah I'm confused the use case for this too. Spark takes about 3 seconds to restart. If you really need this, why don't you just make your own repl that can spawn spark with only the routes you want in its own thread, and a command to kill the thread and restart it?
What is this super-secret use case?

Really disappointing that we're getting so much resistance on this. We've been good members of the community promoting Spark to our customers, at the Java user group meeting in Stockholm which we financed and hosted, we've sent other patches that have been committed, and are willing to do more to see Spark grow because we really like it and believe in it.
If we can't get this feature without disclosing IP that we're not comfortable sharing publicly, we'll have to code our own server start up, fork Spark, or do other less desirable alternatives that are all very disappointing.

Another thing you can do, is instead of actually removing the route, just disable it by disallowing all request IP(s). So you could do:
get(....) {
ensureRemovedAndThrowAnException(static REMOVE_A_ROUTE)
}

I'm having trouble believing you'd be willing to code your own server when you refuse to code simpler alternatives like what @tchoulihan is proposing

I said "server startup," @juanformoso, not server. Coding a server is a huge and unnecessary job.
Using @tchoulihan's suggestion makes the logic very convoluted in our context. There is no static call to get in our case. It's all dynamic, so adding that exception really means having a map of enabled routes. If it's not in our map, then we through. Sure, we could do that, but Spark already has such a map of routes. Why must we keep another? Why can't we just remove elements from Spark's map?

The solution I suggested would take about two minutes to code. You're requesting that spark be able to remove specific routes, and here's how to do that.
So with a dynamic get:
Initialize a map with what routes you want removed.
Map<String, Boolean> removeMap = ....
get("..../:dynamicPart ...) {
String dynamicPart = req.param(":dynamicPart");
ensureRemovedAndThrowARuntimeException(static map.get(dynamicPart));
}

I keep a separate fork of spark in my company because we need special things and because we need things that are not yet merged, there's no problem with that, its just how open source works

And if the reason you need this is secret, then there's no point on making a public release IMO

I'm a spark newbie, so I do not know if there are performance implication to what I suggest (thus do not know if it is a viable alternative), but instead of removing the route, maybe you could replace the handler for the route by a handler that would return a 410 Gone, or a 404 Not found.
Hope this help

:point_up_2: Routes cannot be overwritten as far as I know, first match first serve

Hi, I'm writing a dynamic service that needs to add/remove/change routes on demand. Seems like extending the spark.Service class to access the routes element is not an option (because Service is final).
Any other option to manage routes once added?
I don't like the invalidation alternative because the service may end having a huge number of unnecessary routes.
I don't like the server restart option because I'll need to recreate the server several times.
I'm using version 2.6.0.
Thanks in advance!
Marcos

I don't like the invalidation alternative because the service may end having a huge number of unnecessary routes.

You still have to code the routes you would remove regardless.... do you think you're going to be injecting and removing routes live in bytecode?
Just keep a map that you can access in some way to disable and enable certain routes.

I also fork this repo and add a method in spark.Spark: removeRoute(String path, String httpMethod) { getInstance().routes.remove(path, httpMethod); } I work on a piece of software that allows endpoint creation through a web interface, and when the logic for that endpoint changes, it's preferred to remove the route and add the new logic than to restart the server which would disrupt work on other routes.
I've submitted a pull request which adds the method mentioned above, but it would be much easier if we didn't have to fork the repo and add this message each time a new version of spark is released. If this should not be implemented directly in the spark.Spark class, I feel there should at least be some method of doing this in perhaps another class. Just my two cents...
It is a rare use case, but multiple people seem to have asked for it, so it would be a very welcome addition.


Update docs for PublishPipelineArtifact@1

This page should be updated with documentation for the new task PublishPipelineArtifact@1.  Note the primary name of the parameter changed from targetPath to path, though targetPath is still a valid alias:
https://github.com/microsoft/azure-pipelines-tasks/blob/0b39a29c5640aada5534b937fff3416887bbc3ee/Tasks/PublishPipelineArtifactV1/task.json#L21-L24

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

ID: 41baa0b5-175c-a697-4b7d-c150259c6e6b
Version Independent ID: 75085b15-1acc-526a-0495-74a13c42c1d5
Content: Publish Pipeline Artifacts task - Azure Pipelines
Content Source: docs/pipelines/tasks/utility/publish-pipeline-artifact.md
Product: devops
Technology: devops-cicd
GitHub Login: @willsmythe
Microsoft Alias: wismyth

Thanks for reporting. @chasewilson - can you sync this up with the V1 task in microsoft/azure-pipeline-tasks?

@mikeharder Thanks for the feedback! Docs are updated and will be released shortly! Closing the issue, but if you have any more feedback, feel free to create  a new issue :)

Looks like this wasn't fixed, the page at https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/publish-pipeline-artifact?view=azure-devops still mentions targetPath instead of path


Do not expose table related exception if feature is not enabled.

So if the column validation failed before the feature flag check, it won’t return error like TABLE_FEATURE_NOT_ENABLED, instead it will return table related stuff. We should do feature checks before these validations happen.
For example, with Feature-Flag-tables set as False
{
    "createTable": {
        "name": "allcolumns",
        "definition": {
            "columns": {
                "id": {
                    "type": "text"
                },
                "age": {
                    "type": "int"
                },
                "image_data": {
                    "type": "blob"
                }

            },
            "primaryKey": "id"
        }
    }
}

{
    "errors": [
        {
            "message": "Unsupported column types: Invalid column type: blob",
            "errorCode": "TABLE_COLUMN_TYPE_UNSUPPORTED"
        }
    ]
}

I have a PR for fix (#1470) but not 100% sure if we want to pursue that approach; to be discussed.

Closed PR referenced: I don't think that made sense to do. Since this is stop-gap anyway (until GA of API Tables), can consider whether to tackle this problem at all or wait. But no immediate plan to fix at least.


Jupyter Kernel

http://jupyter.org/
Seems to be a rising star for "notebook" style interfaces.
It is open for extension with other languages, but currently (what a shame) does not have a Java kernel yet.
Given the capabilities of this project, it might be a good candidate for a "Java kernel" for Jupyter.

Yes, I'll look into that and see where it fits on the roadmap


Cgls fix

Can i merge?

Closes #327

@epapoutsellis @gfardell I think I made all the changes in @jakobsj 's comments plus the one I wanted.
Let me know if it works for you. Tests pass, tolerance works.

Only we should add back a print message when tolerance is reached.
https://github.com/vais-ral/CCPi-Framework/pull/332/files#diff-3c6f06903d247b62bd55d5253f63df86R111
Or maybe add a comment about the stopping crit, so the user can understand how it stops and maybe change the tolerance value
https://github.com/vais-ral/CCPi-Framework/pull/332/files#diff-3c6f06903d247b62bd55d5253f63df86R37
Actually, print cgls.flag() details is enough


respect env def for Values.pilot.env.INJECTION_WEBHOOK_CONFIG_NAME

A possible fix for https://github.com/istio/istio/issues/27986
with this fix, one thing is you need to make sure you are using
    pilot:
      env:
        INJECTION_WEBHOOK_CONFIG_NAME: " "

instead of
    pilot:
      env:
        INJECTION_WEBHOOK_CONFIG_NAME: ""

@irisdingbj: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
19624ffae6ba66dca47fd32b34b5d5c67f674d5a
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
19624ffae6ba66dca47fd32b34b5d5c67f674d5a
link
/test release-notes_istio

lint_istio
19624ffae6ba66dca47fd32b34b5d5c67f674d5a
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


forms-buttons: missing examples and tuning

📑 Description

Added Radio in dropdown and Checkbox in dropdown
Format adjustments to Search example in Dropdown
Dropdown - floating menu added Radio/Checkbox prefixes to sections.
Some other polishing here and there

Flowbite introduces anomaly of dark colors when forms are put on another component. This is visible when Checkbox or Radio is put on Dropdown for example. That's why I've added tinted property to those.
I needed to add tinted property to SimpleSearch for the same reason.
✅ Checks

[x] My pull request adheres to the code style of this project
[x] My code requires changes to the documentation
[x] I have updated the documentation as required
[x] All the tests have passed
[x] My pull request is based on the latest commit/version

ℹ Additional Information

Thank you for the PR. I will merge it soon.
I noticed you use $$restProps.class.
I use either $$props.class.
If I want to add class to divClass, I use $$props.classDiv.
(for labelClass, $$props.classLabel, etc)
What do you think?


readme.md updated and added docs in the readme file with links

This is a PR regarding the issue 528
What is the change?
I have updated the readme.md file with project docs

Closing this PR as live-site related code is in develop-ember branch not develop and any related documentation should be added to that branch


Should not install click on emscripten

The click package isn't used on Emscripten, but it is still downloaded and installed. We should not install it there, to speed up load times a bit.

Done in #1187.


PackageVariant controller: Use the default exponential back-off in case of errors, instead of a constant 30 sec retry

This improves the response times of recoverable PackageVariant errors, e.g. normal errors related to optimistic locking when updating PackageRevisionResources objects.
This should improve, but not solve https://github.com/nephio-project/nephio/issues/770 and https://github.com/nephio-project/nephio/issues/462 .

/retest

/retest


Add Waveshare RP2040 Zero board definition

Thanks @petejohanson for thorough help with making this.
Works with my handwired keyboard and a test one with each pin connected to a single key directly (works great for breadboard testing). Both are here: https://github.com/zyumbik/zmk-config/tree/6cc52994c382e1e5bc49de7be4680b8394d933d3

Nice work indeed!  I wish I had seen this before I started trying to get my own RP2040-zero based keyboard working with ZMK.
Suggestions:

Add the RGB LED, which is hard-wired to GPIO #16.
Convince Pete to accept this pull request into the mainstream.

Have you been able to get zmk-config Github builds working with this board definition?

Add the RGB LED, which is hard-wired to GPIO 16.

I asked Pete if that's possible. His reply was:

We don't have a bit-bang ws2812 driver that works really, so needs to use the SPI driver to do it. Hopefully that is a pin with COPI/MOSI alternate function.

And it's not on a such pin. So until there is a custom bitbang driver in ZMK, this is not possible.

Have you been able to get zmk-config Github builds working with this board definition?

Of course: https://github.com/glebsexy/zmk-config. This uses my updated fork and branch (see west file).

And it's not on a such pin. So until there is a custom bitbang driver in ZMK, this is not possible.

Upstream Zephyr has an open PR https://github.com/zephyrproject-rtos/zephyr/pull/55226 for WS2812B using PIO.
Also you might want this as a PR on the main ZMK repository.

@glebsexy Can you redo this PR and make it against zmkfirware/zmk instead?

done https://github.com/zmkfirmware/zmk/pull/1871


Cache the query result.

Small performance gain.
In a test on https://github.com/rust-lang/cargo/issues/4810#issuecomment-357553286
Before we got to 1700000 ticks in ~97 sec
After we got to 1700000 ticks in ~92 sec. I just reran and got ~82, so it seems to be unstable.
And query disappears from the flame graph

r? @alexcrichton
(rust_highfive has picked a reviewer for you, use r? to override)

Thanks! Upon seeing this though I wonder if we could perhaps do something like:
struct CachingRegistry<'a> {
    inner: &'a mut Registry + 'a,
    cache: HashMap<...>,
}

impl<'a> CachingRegistry<'a> {
    fn query(&mut self, ...) -> ... {
        // ...
    }
}

and then pass that around instead of &mut Registry?
and then pass t

That would be cleaner. But would CachingRegistry inpl Registry? Becues Registry.query takes a &mut FnMut(Summary) as its second arg so I don't see how to cache that. Also I'd guess that allocating all the vecs is not free. I like that this caches that. (This is a hunch Not backed by a detailed look at the profile results.)
Mabe all the Context can gane a shared attribute registry_cach of type Rc<RefCell<BTreeMap<Dependency, Rc<Vec<Candidate>>>>>?
We will need a cleaner strategy, looks like multiple test are run on the same thread.

Oh for sure yeah it can't implement Registry, but I don't think it needs to b/c it doesn't escape resolution?

Ok I will play with that tomorrow. :-)

Dose that look better?

Nice! As one final thing, is the BTreeMap required here or would HashMap work?

I had gotten the impression that impl hash was not possible for dep. Now I don't know why. It is fixed.

@bors: r+

:pushpin: Commit cb0df8e has been approved by alexcrichton

:hourglass: Testing commit cb0df8e399d30c4129d454912ffb3e119061b295 with merge adadfab5dd91917f404af566c6622e65576a2b3d...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing adadfab5dd91917f404af566c6622e65576a2b3d to master...


chore(master): release 0.90.0-alpha

:robot: I have created a release beep boop
0.90.0-alpha (2024-04-22)
Features

new (32aa9dc)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mafqla/yalis-blog/releases/tag/v0.90.0-alpha :sunflower:


revert rust to v1.43

Revert rust to older version - v1.43.0 to fix the following build error observed on x86 in tokenizers recipe.
error: the legacy LLVM-style asm! syntax is no longer supported
  --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/parking_lot-0.10.0/src/elision.rs:77:13
   |
77 |               asm!("xacquire; lock; cmpxchgq $2, $1"
   |               ^---
   |               |
   |  _____________help: replace with: `llvm_asm!`
   | |
78 | |                  : "={rax}" (prev), "+*m" (self)
79 | |                  : "r" (new), "{rax}" (current)
80 | |                  : "memory"
81 | |                  : "volatile");
   | |_______________________________^
   |
   = note: consider migrating to the new asm! syntax specified in RFC 2873
   = note: alternatively, switch to llvm_asm! to keep your code working as it is

error: the legacy LLVM-style asm! syntax is no longer supported
   --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/parking_lot-0.10.0/src/elision.rs:108:13
    |
108 |               asm!("xrelease; lock; xaddq $2, $1"
    |               ^---
    |               |
    |  _____________help: replace with: `llvm_asm!`
    | |
109 | |                  : "=r" (prev), "+*m" (self)
110 | |                  : "0" (val.wrapping_neg())
111 | |                  : "memory"
112 | |                  : "volatile");
    | |_______________________________^
    |
    = note: consider migrating to the new asm! syntax specified in RFC 2873
    = note: alternatively, switch to llvm_asm! to keep your code working as it is

updated the open-ce repo in the PR - https://github.com/open-ce/open-ce/pull/5/


WordPress editing training

Create slides for a presentation on how to edit content in WordPress. Give this training to the DCC editors. This training will be the base for a presentation that can be given to other teams as they adopt the design system (such as the drought.ca.gov team).

Slides finished and presented to DCC.


Add a script to check all BASHscripts

@tisnik Your image is available in the registry: docker pull quay.io/openshiftio/rhel-fabric8-analytics-worker-scaler:SNAPSHOT-PR-43


Add to collection from basket is not working

When you click add to collection with the parts in the basket, it does not get added.

Fixed


KAFKA-7938: Fix test flakiness in DeleteConsumerGroupsTest

Address the comments on PR-6307. Sorry for new PR, but one of the comments was to move the PR to another branch.

This attempts to fix KAFKA-7938 and KAFKA-7946.
I removed two tests:

testDeleteWithShortInitialization basically didn't check the result and therefore always passed
testDeleteCmdWithShortInitialization has no way to enforce that initialization is indeed short, and therefore sometimes FAILED because the group would be created before the CMD tried to delete it.

I thought the tests had limited value relative to the effort of figuring out a way to make the timing work.
I also fixed testDeleteCmdNonEmptyGroup and testDeleteNonEmptyGroup so they will validate that the group both exists and is non-empty before starting the test itself. I also added some extra information for future debugging sessions :)
I ran the tests LOTS of times to validate, but with flaky tests, it is hard to tell :)
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

cc @mjsax

Also cherry-picked to 2.2 branch.


median posterior estimates - not matching?

why does table 18 indicate relative spawning biomass in 2019 is 64.1%;  Table 26 says 51.4%; Figure 31 looks to be the 64%.  Need to look into this.

I'll look into this in the morning. I am running the forecasting again with the proper catch of 410000 as fixed in forecast-catch-levels.R as I leave the office...

What?  We missed something last year - unheard of...   ;)

There was also a hardwired value for last year's q median which I fixed. It was mentioned elsewhere but I cannot find it.

#451


Observable Arrays only work with primatives... they do not work with ThreadObjects

Try running this unit test
		TEST_METHOD(ThreadObject_Observable_Vector_ThreadObject)
		{
			auto threadManager = std::make_shared<ThreadManager>();
			threadManager->getOrCreateThread(ThreadIds::Service, std::set<unsigned int>({ ThreadIds::App }));
			threadManager->getOrCreateThread(ThreadIds::App, std::set<unsigned int>({ ThreadIds::UI }));
			threadManager->getOrCreateThread(ThreadIds::UI);

			auto threadObjectManager = std::make_shared<ThreadObjectManager<ParentThreadObject>>(threadManager);
			auto childThreadObjectManager = std::make_shared<ThreadObjectManager<ExampleThreadObject>>(threadManager);
			auto threadObject_UI = threadObjectManager->getOrCreateObject(ThreadIds::UI, 0);
			auto threadObject_Service = threadObjectManager->getOrCreateObject(ThreadIds::Service, 0);

			// set up a waiter until we get a notification on the UI thread that something has been completed
			ReadyEvent e;
			auto subscribeHandle = threadObject_UI->exampleObjects->subscribe([&e](std::shared_ptr<ExampleThreadObject> newValue, size_t index, ObservableActionType action)
			{
				e.finished();
			});

			auto sizeBefore = threadObject_UI->exampleObjects->size();

			auto newChildObject = childThreadObjectManager->getOrCreateObject(ThreadIds::Service, 4);
			newChildObject->name->set(L"new name");
			threadObject_Service->exampleObjects->insert(0, newChildObject);
			e.wait();

			Assert::IsTrue(nullptr != threadObject_UI->exampleObjects->at(0), L"Make sure the UI object was set");
			Assert::IsTrue(threadObject_UI->exampleObjects->size() == sizeBefore + 1, L"Expect example objects list to be size of 1");
			Assert::IsTrue(ThreadIds::UI == threadObject_UI->exampleObjects->at(0)->getThreadId(), L"Expected the example object to be running on the UI thread");
			Assert::IsTrue(ThreadIds::Service == threadObject_Service->exampleObjects->at(0)->getThreadId(), L"Expected the example object to be running on the Service thread");
			Assert::AreEqual(threadObject_UI->exampleObjects->at(0)->getId(), threadObject_Service->exampleObjects->at(0)->getId(), L"Make sure they have the same value");
			Assert::IsTrue(threadObject_UI->exampleObjects->at(0).get() != threadObject_Service->exampleObjects->at(0).get(), L"Make sure they are two distinct pointers");
			Assert::AreEqual(threadObject_UI->exampleObjects->at(0)->name->get(), threadObject_Service->exampleObjects->at(0)->name->get(), L"Make sure they have the same name value");
		}

Unit test added into the code base and now passes after modifications...
https://github.com/k2snowman69/Threadily/commit/14447d3ed1a764f9a79df476edeaca31bfee42d1


Update SsdpDevice.cs

ReadElementContentAsString() moves the cursor. Don't do reader.Read() after.

So this is awesome, I really appreciate you taking the time to create and submit a PR.
I'd really like a unit test that proves both the problem and the solution though, if for no other reason than to prevent regressions in the future. I'm pretty sure I added the code removed specifically to handle some documents I found when testing, and all my current tests are passing. That means I can check the merge doesn't break any situations I've already encountered, but I have no idea what problem/situation these changes fix (or if it remains fixed in the future).
Could you either include a test, or send me a copy of a device description document that fails with the existing code so I can write the test myself before merging? Thanks.

And thanks!

I created a test method : SsdpDevice_RootDeviceFromDeviceDescriptionXml (b182ba7afd239f2b0f47f3713521f72b303f9306)

Now merged and published to Nuget as version <IP_ADDRESS>. Thanks for the awesomesauce!


[FEATURE] Not using hardcoded test function names in the test groups

Description
tests/ci/azureml_tests/test_groups.py uses hardcoded test function names which is not scalable, introducing multiple points to maintain when the tests are added or changed.
Can someone help me understand what's the purpose of the test groups and reason for hardcoding the function names
instead of using a custom marker or sub-directories for the grouping?
Expected behavior with the suggested feature
Avoid hard-coded test function names in the codes.

It is a way to distribute the tests. We want to make N groups that last less than 1h, so we can start N VMs and execute the tests in parallel.

@miguelgfierro how much it will be different if we "round-robin" split tests into N, assuming the tests are already grouped into folders by heavy-vs-light workloads,
e.g. tests in "examples/deepdive" should be heavy, while tests in "utils/..." are generally light.
If round-robin load balancing is not very different from manual-grouping,
what we can do is, get all the tests names (ordered by test folders) using the following codes, then round-robin them into N groups and execute into N VMs (I assuming AzureML?).
    # collect pytests test functions
    result = subprocess.run(
        [
            "pytest",
            "--collect-only",
            "--quiet",
            "--disable-warnings",
        ],
        stdout=subprocess.PIPE,
    )

    # split the collected output by lines as each line shows each test function
    lines = result.stdout.decode("utf-8").split("\n")

    tests = []
    for line in lines:
        # some output lines are not the tests, so we only pick the lines starts with "tests"
        # e.g. in the following example, only the first three lines are actual tests
        # """
        # tests/unit/recommenders/models/test_sar_singlenode.py::test_sar_item_similarity[3-lift-lift]
        # tests/unit/recommenders/models/test_sar_singlenode.py::test_sar_item_similarity[3-mutual information-mi]
        # tests/unit/recommenders/models/test_sar_singlenode.py::test_user_affinity
        #
        # 2 tests collected in 1.51s
        # """
        if line.startswith("tests"):
            # test arguments are shown in the suffix "[]" of the test function name.
            tests.append(line.split("[")[0])

    # remove duplicate test function names due to the parametrized tests
    unique_tests = list(set(tests))

    for t in unique_tests:
        print(t)  # this will be like: "tests/unit/recommenders/utils/test_timer.py::test_timer_format"

if we literally spin up N VMs, not AzureML run execution, there's a package called pytest-xdist that we may consider to use for parallel execution. It does have remote submit functionality but I haven't used it, and it also says ssh-based remote submission has been deprecated...

pfff I tried pytest-sdist and it didn't work very well.
What you are proposing seems ok, but it is a huge amount of work that will only changing a manual list to a programmatic solution. In addition, we recently discovered a way to get very cheap AzureML VMs https://github.com/recommenders-team/recommenders/issues/1996
Up to you man if you want to try this and compare with the current solution. However, there are several things that are not working in the repo that might be a better use of your effort: https://github.com/recommenders-team/recommenders/discussions/2011

Agree that we want to prioritize stuffs, and I'm okay w/ deferring this work until we find something easier alternatives.
Then, what's the suggestion if I add new tests? Should I add their names into one of the test group lists?

Yes, just add them to one of the more empty lists

closing this until we have better alternatives


Alternative fix for the segmenting problem

@olliethomas , see latest commit. I replaced chunk with split.

on reflection, I don't really care about this


Rate limited!

I am using Trivy in a client-server configuration and the client is bombing out trying to pull the image:
2024-10-24T02:50:06Z	ERROR	[javadb] Failed to download artifact	repo="ghcr.io/aquasecurity/trivy-java-db:1" err="OCI repository error: 1 error occurred:\n\t* GET https://ghcr.io/v2/aquasecurity/trivy-java-db/manifests/1: TOOMANYREQUESTS: retry-after: 784.814µs, allowed: 44000/minute\n\n"
So this doesn't seem to be a very good way to distribute this, I read in another ticket that there is an public ECR repo someplace but there is no documentation where it is located or how to use it.
Is this something I can pre-load onto either the client or server to avoid the download? I don't think this is something we want to fetch every time trivy is executed. We have many thousands of images, if we are doing a bulk scanning operation then it is probably contributing to your ghcr rate limit decently.
Why not just host the files in releases so we can use Github credentials to download them to someplace usable - or use whatever mechanism distributes the main trivy database?

https://github.com/aquasecurity/trivy/discussions/7668#discussioncomment-11053681