Add translation support to the frontend

As we are building a platform for worldwide usage and not everybody speaks English, translation support is paramount.
I looked a bit around and found an angular package:
https://github.com/angular-translate/angular-translate
Should we use it? There doesn't seem to be out-of-box support for this in angular. It seems quite simple to use, just feed it with an object of translation strings:
https://angular-translate.github.io/
There's also another package, but much less active:
https://github.com/rubenv/angular-gettext

I used it before (for https://www.letmake.com). I think it is good!

Closed with #112


Plugin authentication

Hello , our infosec team is requesting oauth for authentication , any plans to add it ? Thanks a lot

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

ID: d07f29c5-affb-47bb-5f68-fc49e691c741
Version Independent ID: 661d3781-8784-868d-261f-1e994a154a35
Content: Control deployments by using ServiceNow - Azure Pipelines
Content Source: docs/pipelines/release/approvals/servicenow.md
Product: devops
Technology: devops-cicd
GitHub Login: @RoopeshNair
Microsoft Alias: ronai

Thanks for the suggestion! The product teams aren’t always watching this repository, so to make sure it gets in front of them for triage, please submit your idea here.


Save changes stuck when URL is entered without port number

Hello,
I have changed Webmin's default port to 80 and can access Webmin without having the port number in the end of the web URL.
The problem is when I save a change in webmin configuration tab. I get the error message: https://example.com/webmin/:80/webmin/ 404 (File not found) and nothing happen but the changes seems to be saved as they should.
I do not get the same error with Webmin's old theme.
Using Authentic Theme 19.10-beta4 on a Ubuntu 16.04.4 server.

this setup is unusual but should work in general.
if you changed port only to avoid entering port number I would suggest a proxy setup, so you can have regular web pages, webmin and usermin in parallel on port 80.
https://doxfer.webmin.com/Webmin/Running_Webmin_Under_Apache
Webmin Proxied Through Apache

hat HerrBubbla die Empfehlung mal ausbrobiert?

I have no clue if he did.

I tried to add webprefix=/ and webprefixnoredir=1 in /etc/wemin/config but it did break the theme.

Errors:
Content Security Policy: The page’s settings blocked the loading of a resource at https://unauthenticated/js/settings.js?1521907681 (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://unauthenticated/js/settings_bluerange.js?1521907681 (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://unauthenticated/js/bundle.min.js?19092 (“script-src”).
However, tried to add relative_redir= 1 instead and then everything worked except in Ports and Addresses and SSL Encryption settings.
Any idea why it does not work on those two settings?

However, tried to add relative_redir= 1 instead and then everything worked except in Ports and Addresses and SSL Encryption settings.

What exactly doesn't work. Screenshot would always help a lot.

When i click on the save button the animation keeps spinning endlessly. Error in browser shows that it tries connecting to: https://example.com/webmin/:80/webmin/

Seems like it adds :80/webmin/ in the url for some reason.

And what your actual URL looks like. Can you also make a screenshot?

My actual URL is https://dns.bluerange.se/webmin/change_ssl.cgi?xnavigation=1 after i press save in SSL Ecryption settings.
About one second after I press Save, I get the error message below

If i then go back to Webmin configuration the URL is https://dns.bluerange.se/webmin/:80/webmin/?xnavigation=1
Normaly it is: https://dns.bluerange.se/webmin/?xnavigation=1

Try adding to your:
Add the lines webprefix=/webmin to /etc/webmin/config.
Add the line cookiepath=/webmin to /etc/webmin/miniserv.conf.
Restart Webmin. What do you get now?

What is referer in /etc/webmin/config set to?

webprefix=/webmin to /etc/webmin/config. Breaks the theme. Same as when i tried adding webprefix=/
cookiepath=/webmin to /etc/webmin/miniserv.conf. Cant login after adding that. No error message.
referer in /etc/webmin/config. Have tried referer=1 and referer=0 with referers=dns.bluerange.se
If i have referer=0 with no referers i get the Security Warning below.

No.
You should set referer to your host name, i.g. referer=dns.bluerange.se.
You could also try referers_none=0 for testing purposes but it's not recommended to leave it this way on production machine.

Sorrry, no improvement when pressing save on Ports and Addresses settings and SSL Encryption settings.
But as i said before, everything else works when i added relative_redir= 1 in /etc/wemin/config so its not a big deal for me now :)

I didn't close it cause I wanted to try this set-up.
You said it worked in Gray Theme - is this still valid?

I set up a new clean installation and then I did not have to add relative_redir= 1 and i did not get any Trusted Referrers warning but all else is the same.
I was wrong about that all worked on Gray Theme. SSL Encryption savings receives the error message: Content Security Policy: The page’s settings blocked the loading of a resource at https://dns.bluerange.se:80/webmin/ (“frame-src”).
When I save settings under Ports and Addresses with Gray Theme, it goes through as it should, but I'm being redirected to https://dns.bluerange.se:80/

I see. This is indeed non standard setup.
I'm not sure if it's worth trying to support it.
Thank you for reporting.

OK, can i make a redirect from for example https://dns.bluerange.se to https://dns.bluerange.se:1024 without installing Apache?

I think it's possible. Read more about Port Forwarding. I think it's possible.
Why just not set it in Webmin configuration?

Thanks, never thought about port forwarding. I will probably use it.
But one thing is a bit strange when I have Redirect non-SSL requests to SSL mode on. It adds the port number if i try browsing to http://dns.bluerange.se. Webmin do not add the port number when i go directly to https:/dns.bluerange.se

I get this same error, I have a subdomain set up as:
webmin.mysite.io

This does a proxy rewrite with nginx to my.ip.255.0:10000 internally. When loading the site initially, it works. However, saves will append the port to the url:
https://webmin.mysite.io/nginx/:10000/nginx

Any ideas?

Do you have set webprefixnoredir=1 in your config?


MSVC: Add support for linking against the "spectre-mitigated" CRT

Issue Details:
Since VS 2017, MSVC has shipped a set of "spectre-mitigated" CRT static libs: https://devblogs.microsoft.com/cppblog/spectre-mitigations-in-msvc/
Typically these are used by opening a VS Command Prompt in "spectre mode" (https://docs.microsoft.com/en-us/cpp/build/building-on-the-command-line?view=msvc-170#vcvarsall-syntax) which then sets the LIB environment variable to point to the directory with the spectre-mitigated libs. However, since cc prepends to the LIB environment variable, it uses the non-spectre-mitigated libs even when invoked from a VS Command Prompt in "spectre mode". This causes issues when trying to build a spectre-mitigated binary using Rust, as rustc uses cc for linking.
Fix Details:
When cc detects that the VSCMD_ARG_VCVARS_SPECTRE environment variable is set to spectre (either by being run from a VS Command Prompt in "spectre mode", or users may explicitly set this themselves), it will use the spectre-mitigated lib directory when building its LIB environment variable.

However, since cc builds its own LIB environment variable,

This doesn't seem to be totally correct. More specifically it doesn't appear to be building LIB from scratch, but prefixes existing one.

Fix Details: When cc detects that the VSCMD_ARG_VCVARS_SPECTRE environment variable is set to spectre (either by being run from a VS Command Prompt in "spectre mode", or users may explicitly set this themselves), it will use the spectre-mitigated lib directory when building its LIB environment variable.

I for one would argue for existing LIB simply taking precedence. I mean having cc-rs building own LIB variable only if it's not set already.
[Just in case, I'm just a cc-rs user weathering #663.]

However, since cc builds its own LIB environment variable,

This doesn't seem to be totally correct. More specifically it doesn't appear to be building LIB from scratch, but prefixes existing one.

Ah, you're right, looks like I misread the code.

Fix Details: When cc detects that the VSCMD_ARG_VCVARS_SPECTRE environment variable is set to spectre (either by being run from a VS Command Prompt in "spectre mode", or users may explicitly set this themselves), it will use the spectre-mitigated lib directory when building its LIB environment variable.

I for one would argue for existing LIB simply taking precedence. I mean having cc-rs building own LIB variable only if it's not set already.

Unfortunately, appending to LIB would be a breaking change. There could be an option to opt-in to that behavior, but that option would also have to be exposed via rustc/cargo, so you'd still get the wrong behavior by default (and I'm not sure when you could switch that default).
Additionally, we'd still need something like this for folks who don't want to run cargo/rustc in a VS Command Prompt (i.e., some way for the auto-discovery to opt-in to spectre-mitigated libs).

Unfortunately, appending to LIB

The suggestion was not to append, but do nothing. Rationale basically is since one trusts %PATH% with cl.exe location, why wouldn't one trust %LIB% [and %INCLUDE%]. Yes, my position seems to be in need of refinement. If cl.exe is located through %PATH% and %LIB%/%INCLUDE% are defined, then do nothing. However...

would be a breaking change.

Well, the question is what exactly breaks? It should be noted that cc-rs merely compiles a library with cl.exe, which is then linked by rustc. Which has its own opinion about how to compose the %LIB% environment variable! In other words no matter what we make cc-rs do, as it stands now, rustc will override it. So that the issue actually belongs with rust-lang itself, not with cc-rs. I suppose we can only flesh out things here. For example...
It should be noted that Rust by itself doesn't seem to have dependencies on the spectre-mitigated libraries that Microsoft provides. llvm backend effectively adds dependency to vcruntime through the exception handling mechanism, but how valuable are the mitigations in this context? Assuming there are relevant compiled in exception handlers and helpers. But in either case there is a pros side to it. The limited dependencies means that as far as Rust itself is concerned there is not much one can break by messing up the %LIB%.

This PR seems reasonable to me. All it does is prefix one lib directory instead of prefixing another lib directory if a special environment variable is found. And this does indeed appear to reflect the intent of that environment variable.
IMHO, changing the behaviour of how cc-rs adds to LIB is beyond the scope of this PR and should probably be a separate issue.

This PR seems reasonable to me.

Once again. As it stands now, manipulating %LIB% in cc-rs achieves nothing. Because rustc, as it calls link.exe, effectively overrides the added library paths by prefixing %LIB% with otherwise equivalent paths that don't have spectre-mitigated libraries.
Now, it is possible to override %LIB% with /LIBPATH linker command-line options. And cargo even has a preferred way to generate those for you, by having the build script print cargo::rustc-link-search=native={path}. This is the way to achieve the intended goal, not manipulating %LIB%. [Just in case, I for one would still advocate for honouring %LIB%, but in rustc. And since rustc makes no use of cl.exe, it could honour %LIB% if link.exe was found on the %PATH%. But it's just me:-)]
As for opting in through an environment variable in general. Not that I'm one, but would you expect Visual Studio Code users to appreciate it? Wouldn't it be more appropriate if opt-in was more "Rust-y"? Though Cargo.toml, .cargo/config.toml or build.rs? For example, cc-rs could take the steps to ensure that spectre-mitigated libs are used if build.rs passed the /Qspectre option to the compiler...

I'm not sure I follow you. link.exe will not link anything unless you tell it to (this is unlike cl.exe). Both directories in the LIB environment variable and the /LIBPATH command line option are searched. /LIBPATH is searched before LIB which allows overriding any defaults.
If you're right that setting LIB achieves nothing then I really do think you should open an issue about that. Maybe with some test cases that show it's useless.

Keyword is that cc-rs doesn't call link.exe. It simply creates a library and tells rustc to link with it. [Or multiple libraries.] When rustc is about to call link.exe, it prefixes %LIB% with a couple of paths. And these additional paths have the same libraries that you intended to be spectre-mitigated. Thus they simply get shadowed by rustc. In other words setting %LIB%, be it here in cc-rs or through vcvarsall, doesn't get you where you want to go, rustc is in the way...

Again, I think you should open an issue about that. That code path will still exist whether or not this PR is merged.

you should open an issue about that.

Where? On rust-lang? Maybe I will, but I feel that it would be only appropriate if "we can [only] flesh out things here" and achieve some common ground. Maybe I'm missing something which would make filing an issue inappropriate... For example it might be deemed more than sufficient to adhere to /LIBPATH in cc-rs... I can see merit to it... While my suggestion is arguably quite radical and not [necessarily] without cons...

Open an issue here, if you like. I don't think this PR is the appropriate place to flesh out things as the issue exists regardless.

Open an issue here

??? Issue with what? With rustc? What would it achieve if rustc people are not here? Or issue with this PR? Is it inappropriate to discuss PR in PR thread? I don't follow, both options appear counter-productive to me. Well, never mind...

Fair enough. Opening an issue on the main rust repo be great.

I sense that there might be disagreement about what the issue actually is. I apologize that I failed to communicate it, but my understanding is that it would be [more than] appropriate to link with spectre-mitigated libraries specifically when you bring in C/C++ modules [presumably also compiled with /Qspectre, right?] into a Rust application. While the implied idea might be that there should be an option to link any Rust application with spectre-mitigated libraries. If the latter is the case, then I'd say that the merge request doesn't belong here. Because cc-rs has no bearing on how arbitrary Rust applications are linked. It's used and has a chance to affect linking only when the application interfaces with C/C++ code. But if considered in rust-lang context in isolation I would argue that linking with spectre-mitiaged libraries is hardly justified. Question is how much of the spectre-mitigated static[!] library code is linked into a pure Rust application? It appears to me that there is none. As already mentioned, a pure Rust application has only one dependency(*) on VC runtime, exception handling subroutines, but those are linked dynamically. This effectively means that the spectre-mitigated libraries are not actually used in a pure Rust application(*). In other words, it only makes sense to link with spectre-mitigated libraries when you bring non-Rust code into application. Hence my understanding from above. Does it make sense?
(*) Formally speaking there also is CRT initialization code brought into application. But I suppose that we can agree that spectre mitigations are not essential in the CRT initialization context. Because it's fully predictable and not dependent on any secret values. Nor does a pure Rust application make it call any sensitive constructors. And for completeness, Rust also takes memcpy/move/set/cmp from CRT, but even if not linked dynamically, I don't see any difference between spetre-mitigated and default object modules.

Because cc-rs has no bearing on how arbitrary Rust applications are linked. It's used and has a chance to affect linking only when the application interfaces with C/C++ code.

That's not true: under the covers rustc uses cc-rs to find the linker to use and setup the linking environment, thus any change to how cc-rs handles linking changes how every Rust program linked by rustc is built.
The motivation for this change is that linking against the Spectre-mitigated CRT is compliance requirement enforced by BinSkim (https://github.com/Microsoft/binskim) - even if Rust at the moment doesn't rely on any API hardened for Spectre, that's no guarantee that it won't in the future or that any "pure" Rust application won't eventually link in non-Rust code that does.

That's not true:

Ah! I was looking for it, but apparently not hard enough. Live and learn. Thanks!

any change to how cc-rs handles linking changes how every Rust program linked by rustc is built.

Specifically in msvc environment.

Rust at the moment doesn't rely on any API hardened for Spectre, that's no guarantee that it won't in the future

Given the current state of affairs, we can be relatively confident that it won't be the result of an oversight but a conscious choice. In other words, even if there is no guarantee, it's very unlikely.

@dot-asm I think perhaps people have been talking past each other and misunderstanding each other. Could you clarify your current stance on this PR? I have maybe gotten confused somewhere along the line.

Even though I originally commented in ignorance of the fact that MSVC rustc itself has direct dependency on this crate (I thought that rustc had an equivalent way to invoke the vendor linker, kind of a trimmed down copy of this crate if you wish, not a direct dependency), I would still advocate against the suggestion in this specific form. Now bear with me. As already mentioned, it doesn't make any real difference if "pure" Rust application is linked with spectre-mitigated MSVC libraries. (Nor do I see this change in the foreseeable future.) And for this reason I would argue that it makes way more sense if the said libraries were linked only when it actually matters, specifically when the application actually interacts with external non-Rust code. And especially because one can arrange it in a way that is independent of rustc. So that users who care can start using the spectre-mitigated libraries at their discretion without having to wait for a future Rust release that would have to update its dependency on this crate. How? By letting cc-rs take a note if user passes /Qspectre to the MSVC compiler, and have it pass down paths to the spectre-mitigated libraries to rustc through /LIBPATH options (which take precedence over %LIB% as already established). As for users who don't need to actually compile anything but to link a pre-compiled library that is dependent on spectre-mitigated libraries, one can expose the method that passes /LIBPATH options for user to invoke from the build.rs. Letting users solve it in their build.rs is more reliable and transparent.

I would still advocate against the suggestion in this specific form.

Though formally speaking what I suggest is not in a direct conflict with the suggestion at hand. In sense that cc-rs could do what I suggest, and rustc could start doing what Daniel suggests, and things will work out either way. So it's not like I'm literally "against" the suggestion, I just reckon there is a more sensible way to solve the problem :-)

I do not understand the objection.

As mentioned in the second remark, it's not really an objection per se, but an argument for a possibly better solution. Where "better" means self-contained in cc-rs, more reliable and more transparent for the user.

I think it unlikely rustc will gain options to make all the msvc specific moving parts configurable but if it does,

Note that my suggestion doesn't require anything of rustc that it doesn't do today.

I see no problem in doing the right thing by default.

This naturally depends on definition of "the right thing" :-) Well, not that I claim an exclusive knowledge about what it is :-)
As for platform/target "crisscrossing." This ought to mean that there are situations when rustc simply does what I originally suggest, respect the %LIB% environment set by vcvarsall...

As for platform/target "crisscrossing." This ought to mean that there are situations when rustc simply does what I originally suggest, respect the %LIB% environment set by vcvarsall...

It can't. You can't use x86 libraries to build x64 applications.

Using VSCMD_ARG_VCVARS_SPECTRE (as this PR does) seems like the safest way to get rustc to compile with the spectre mitigated libs. If the user is building within a spectre vcvars prompt, they'll get the correct behavior (even when cross-compiling).
Changing how cc-rs modifies LIB could also work, but may require more design work and testing to make sure we don't break existing uses.

If the user is building within a spectre vcvars prompt,

And the question is how big is the "if". That is how many Rust users are actually using vcvars prompt. That's the thing. Rust users don't have to use it, and suspicion is that very few would do. And I can imagine that they would appreciate the opportunity to control this through the build script more [than maintaining the discipline of invoking vcvars with right parameters]. This way there won't be ambiguity, did I compile this under vcvars or not? Or worse, did target user of my application run this under vcvars or not?

Changing how cc-rs modifies LIB could also work, but may require more design work and testing to make sure we don't break existing uses.

Formally speaking there is a contradiction. This merge request is all about changing how cc-rs modifies LIB, while the formulation suggests that it's not... Yeah, I'm just messing with you:-) I understand what you mean... But just in case, note that my final suggestion is to not change anything that would affect how rustc itself operates.

And I can imagine that they would appreciate the opportunity to control this through the build script more

Again, you're asking for cc-rs to add a feature which it doesn't currently have. That would be a new issue. This PR improves a feature cc-rs already has (using Visual Studio environment variables, if set).

If the user is building within a spectre vcvars prompt,

And the question is how big is the "if". That is how many Rust users are actually using vcvars prompt. That's the thing. Rust users don't have to use it, and suspicion is that very few would do.

To be clear: this change doesn't require a vcvars prompt, a developer can set VSCMD_ARG_VCVARS_SPECTRE completely independently of vcvars and this will still work. But IF they use a vcvars prompt then cc-rs will now respect their choice to enable spectre mitigated libs.

And I can imagine that they would appreciate the opportunity to control this through the build script more [than maintaining the discipline of invoking vcvars with right parameters].

Since this is controlled via an environment variable, developers can control it via a build script: https://doc.rust-lang.org/cargo/reference/build-scripts.html#rustc-env

developers can control it via a build script: https://doc.rust-lang.org/cargo/reference/build-scripts.html#rustc-env

The keyword on the referred page is "when compiling the package." If you provide a library, setting the environment variable in question won't have any effect on final application link stage. Or in other words, you would have to convince your library users to set the environment variable in question in their build scripts. (And this is after you've convinced them to upgrade to a future Rust version ;-)
Anyway, I've opened #687.

Chris, can you take a look here? You've already been active, so maybe you have opinions.

Hello @dpaoliello could you resolve the merge conflicts please?
I will merge your PR once it is resolved

@NobodyXu Done


Add "Push and pull" documentation

"Push and pull" for the grid is mentioned here, but not documented. Some guidance on how to use would be helpful.

You're totally right, this (and the grid in general) should be better documented. Thanks for the catch--we'll get on it asap!

Could we get a little clarification on what the syntax should be? I've got a Plunker that demonstrates how one would expect it works... but definitely have something wrong.
http://plnkr.co/edit/Yej1sF16nCsK7Wv5zzbY

I think I've got it figured out. The use of Push or Pull only shifts the column right or left respectively by the number of 12-column units. You still need to give a width to the column by using the ms-u-* column size classes.
Here's a fork from @andrewconnell code with what I believe is the solution.
http://plnkr.co/edit/tVIK2ZBSKMaytu1H1bSC

LGTM

You've got it, @dkreitz! We've got our official interactive documentation site up that includes an image to help explain it. If this is still a bit lacking, let us know. Thanks!


Migrate to AdoptOpenJdk api V3

Ad discussed here with AdoptOpenJdk maintainers, it is strongly encouraged to migrate to their V3 api, as the V2 has been marked as deprecated
It would be nice to migrate njre to V3 :)
https://api.adoptopenjdk.net/

I don't really plan on working on njre anymore as I don't have any use for it and it's not particularly depended on. I'll still look at PRs and I'm open to transfering ownership to another maintainer.

As my repos seems to be the ones the most using njre, it would make sense ... :)
https://github.com/raftario/njre/network/dependents?package_id=UGFja2FnZS00MDgxNjc1MDg%3D
I can own & maintain njre if you wish so !

Sounds good to me ! I'll transfer ownership.

Ok, I'll take good care of it :)

@raftario I may have some free time these next times, I'm ready for transfer when u are :)
My plans :

Migrate to AdoptOpenJdk V3 API
Apply linters on project
Put all doc directly in README

I already added you as a contributor on npm and initiated the GitHub repo transfer 👍

Didn't see the acceptance mail in the middle of all github notifs mails :)
Just accepted it, thanks !

@nvuillam What ended up being the status of this issue? I just tried to use njre for the first time and it seems like it can no longer download a JDK since the URLs it tries to pull the binaries from result in a server timeout...

@jhale1805 i've been lazy... while it worked i did nothing, are u sure V2 does not work anymore ?
If yes we have to upgrade to v3.... maybe u'd like to contribute ? :)

@nvuillam I tried both examples in the docs and each one gave a JSON parsing error that resulted from the response being the HTML of a server timeout page.
That said, while I've been programming for several years, I'm still new to JavaScript, so I could also totally believe that I did something wrong, even though I copy and pasted the exact code from the examples.
As for contributing, I'll definitely take a look. I'm currently a student so I don't know how much time I'll have. I also found an alternate way to accomplish my immediate goal, but this package does seem valuable to other projects I'd like to tackle in the future so I'll see what I can figure out.

Reading through their migration guide, it looks like it might be as simple as changing the base url for the request...

That seems to be a great little student project, I'll write a note for your teachers, they'll surely appreciate that you already contribute to open source :)

I inherited njre maintenance after using it for https://github.com/nvuillam/node-java-caller ... which looks quite similar to node-java-connector ^^

@mheiges v1.0.0 has been released with your updates, and I also upgrade many dependencies :)
Thanks again for the PR !


Rename UnusedImports to UnusedImport

Expected Behavior of the rule
Currently it's required to list both to suppress an unused import:
@file:Suppress("UnusedImports", "UnusedImport")

if we rename the rule the new name would match the IDEA inspection.
Links to implementations:

Detekt UnusedImports
IDEA Java UnusedImport (registration)
IDEA Kotlin UnusedImport (registration)
IDEA K2 UnusedImport (registration)

Context
Similar to https://github.com/detekt/detekt/issues/3643
Why would I want to suppress UnusedImports?
Because it's a false positive, in both detekt and IJ.
If I remove the import, the code fails to compile, so it's not unused.
Related issue https://youtrack.jetbrains.com/issue/KT-60939
Repro code when unused import is triggered: https://github.com/TWiStErRob/repros/tree/main/kotlin/UnusedImport-package-friendly-overload
I assume that this rule is based on the same code IDEA uses, so if they fix the above issue we'll get the false positive fix for free? Therefore this report is only for reducing the need for double-suppress. Happy to open a separate issue if it's not a "free fix".

This is fine to go inside 2.x 👍

Hi @TWiStErRob should we also rename NoUnusedImports(coming from Ktlint) for consistency

I would think alias at best. Let's not touch it for now (https://github.com/detekt/detekt/discussions/5997).


[chart-fees-paid]: Add alias support to --out and --in

Currently out and in flags require a public key, but if it's a peer it could also accept an alias match

chart-fees-paidis taking an array of lnds as input, what would happen in this scenario where one saved node is peered with yalls-clearnet and another one with yalls-tor and you run the command bos chart-fees-paid --out yalls
findKey would find it for both, array length more than, then error out?

Yeah that is an issue, I think that's a good solution though

Cool ok.


[Bug] error:We could not parse the JSON body of your request. (HINT: This likely means you aren't using your HTTP library correctly. The OpenAI API expects a JSON payload, but what was sent was not valid JSON. If you have trouble figuring out how to fix this, please contact us through our help center at help.openai.com.

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Deployment

[ ] Docker
[ ] Vercel
[ ] Server

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional Logs
Add any logs about the problem here.
{
"error": {
"message": "We could not parse the JSON body of your request. (HINT: This likely means you aren't using your HTTP library correctly. The OpenAI API expects a JSON payload, but what was sent was not valid JSON. If you have trouble figuring out how to fix this, please contact us through our help center at help.openai.com.)",
"type": "invalid_request_error",
"param": null,
"code": null
}
}

@zip8919 could you share more details about how to reproduce this issue? e.g. prompts, message, etc

@jamesKhor I mean how did you trigger this issue(e.g. prompts), and did it exists on every messages you sent or specify message?

it was every request/prompt. I just found the root cause. i was running an old version 20230601.

it was every request/prompt. I just found the root cause. i was running an old version 20230601.

I have the same problem.


Deleting Published Wiki

How do I delete published wiki? I would like keep the code wiki only.

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

ID: 59cb387d-5f46-0743-efbb-c393c4e5bd85
Version Independent ID: cb6912c2-e640-f992-0a1f-5cbbe88d87dc
Content: Differences between provisioned and published wikis - Azure DevOps
Content Source: docs/project/wiki/provisioned-vs-published-wiki.md
Product: devops
Technology: devops-collab
GitHub Login: @chcomley
Microsoft Alias: chcomley

Hi @yashkv1, Thanks for reaching out. First, unpublish the wiki. Please let me know if you need any further clarification and I'll be happy to provide. Thanks!

After unpublishing, I would like to set the code wiki as default. How should I do that?

@yashkv1, great question. I've added @adramasu for guidance please! Thank you!

Similar to @yashkv1, I would like to completely remove the Project Wiki (which was created in error) and use only Code Wikis. The Project Wiki is confusing to our users, despite training them to only use the Code Wikis we still have users that continue to create content in The Project Wiki. We also tried removing 'Read' permissions to solve this issue however users were presented with the message 'You don't have access to any wiki'.
Is there a way to 1) remove the Provisioned wiki and 2) make Publish code as wiki the default?

I found a solution. I have to try if this will work for deleting Provisioned wiki.

You cannot delete a provisioned wiki. However, you can delete the underlying repo  of the wiki by following the steps in this document DELETE PROJECT WIKI.docx. This will in effect delete the provisioned wiki.
As for preventing the creation, you can deny "create repo" permission to users who should not create a provisioned wiki.

I've added the process for deleting a wiki repo, from the previous comment, to the article. The PR is complete, so it should be live within a few hours. Do let us know if you have any further questions!

I'm attempting to use this process in powershell using invoke-restmethod, but I'm getting an error indicating DELETE is not supported on the controller.  Is there something I'm missing?  Any chance of just updating the az devops CLI to not error out when attempting to delete a provisioned wiki?

Thanks for the reference info, posted here.
Following is the procedure I've used, successfully:
Setup: Personal Access Token

Go to: User Settings
Select: Personal access tokens
Select: New Token
Select: Name: whatever
Select: Expiration
Select: Custom define
Select: the calendar
Select: Go to today
Select: Full access
Select: Create
Copy: the token
Select: Close

Use: curl, to access the API

Get: the repositoryId

curl -vvv -u myuser@mydomain:token -k -X GET https://dev.azure.com/MY-ORGANIZATION/MY-PROJECT/_apis/wiki/wikis?api-version=5.0

Delete: the repositoryId

curl -vvv -u myuser@mydomain:token -k -X DELETE https://dev.azure.com/MY-ORGANIZATION/MY-PROJECT/_apis/git/repositories/{repositoryId}?api-version=5.0

Perfect!  Thanks for the assist here!


Better media detect on textarea

Right now media (images, videos and audio) are detected by URL file extension. Ex:If the URL path ends with .jpg or .png.
We could fetch every link (expect obvious media by file extension) and check for HTTP headers to better detect media.

Fix https://github.com/nicolasparada/nakama/commit/d83f8d27f83a810f367bcbe826475b49ab94f063


Support for multiple namespace

Hello,
Currently there are two options: single namespace or all namespaces. For "security" reasons, we have a cluster setup where our service account cannot call cluster apis but only for a defined set of namespaces. However, our micro-services are running in different namespaces.
In the past we were overriding the fabric8 DiscoveryClient. When trying to move to spring-cloud-starter-kubernetes-client-loadbalancer we found that it was a bit more complicated to do. For instance SpringCloudKubernetesInformerFactoryProcessor class is not public and thus cannot be overridden.
I am not sure if the description is clear enough, but do you think such use case could be supported in the future ?
I am thinking to stick to fabric8 implementation, do you think this will still be maintained in near future ?

you mean you would like support for the discovery service per namespaces, right? What I mean is that you could specify the exact namespaces where you want services to be discovered, right?
If so, I recall seeing this before and otherwise yes, it is on my TODO list. There is no ETA from my side (as I am just a contributor), but definitely something I will fix. It will go, though, in the main branch only, and this means it will be compatible with java-17 only. At least this is my plan, so far.

It seems this is the issue here. so this is a duplicate of that one

Yes that is exactly what I would need. Some property like spring.cloud.kubernetes.discovery.namespaces

@ryanjbaxter this can be closed as a duplicate


[Issue]: Code is not executed automatically

Describe the issue
I am expecting problem with code execution part on fresh installation. One agent correctly prepare a code from basic example but this code is not executed automatically as in tutorials it should be. I am expecting on Stock price chart to be the output
Steps to reproduce

pip install autogen studio
export OPENAI_API_KEY=xxx
autogenstudio ui
Go to <IP_ADDRESS>:8081
Open sessions and create new one with Visualization Agent Workflow
Choose Stock price. It will put: Plot a chart of NVDA and TESLA stock price for 2023. Save the result to a file named nvda_tesla.png
Wait
Answer from agent what code to run but agent does not run code automatically

Screenshots and logs
 >> llm config {'model': 'gpt-4-1106-preview'}
sanitizing model
 >> llm config {'model': 'gpt-4-1106-preview'}
userproxy (to visualization_assistant):

Plot a chart of NVDA and TESLA stock price for 2023. Save the result to a file named nvda_tesla.png

--------------------------------------------------------------------------------
userproxy (to visualization_assistant):

Plot a chart of NVDA and TESLA stock price for 2023. Save the result to a file named nvda_tesla.png

--------------------------------------------------------------------------------
visualization_assistant (to userproxy):

I'm unable to directly plot charts or save files as I don't have the capability to access external databases or perform actions like saving files. However, I can guide you on how to create a high-quality visualization for NVDA (NVIDIA Corporation) and TSLA (Tesla, Inc.) stock prices for the year 2023, following best practices.

Here's how you can create the visualization:

1. **Data Collection**: Obtain the stock price data for NVDA and TSLA for the year 2023 from a financial data provider like Yahoo Finance, Google Finance, or another API.

2. **Data Processing**: Process the data using a programming language like Python, with libraries such as pandas for data manipulation.

3. **Visualization**:
   - Use a library like matplotlib, seaborn, or plotly in Python to create the chart.
   - Since it's a time series, choose a rectangular aspect ratio to clearly display the trend over time.
   - Plot two line charts on the same graph, one for NVDA and one for TSLA.
   - Make sure to use different colors or styles for each line to distinguish them.
   - Add a line of best fit for each stock to show the trend. You can calculate this using numpy's `polyfit` or similar functions.
   - Calculate the slope of each line of best fit and add text annotations on the chart to display these slopes.
   - Remove the grid and outline box for a cleaner look.
   - Add a bold title that describes the content of the chart, such as "NVDA and TSLA Stock Prices for 2023".
   - Include axis labels and a legend to make the chart self-explanatory.

4. **Saving the File**:
   - Once the chart is created, use the `savefig` function in matplotlib to save the chart as 'nvda_tesla.png'.

Here's a sample code snippet in Python using matplotlib:

'''python
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

# Assuming 'data' is a DataFrame containing the stock prices with 'Date', 'NVDA', and 'TSLA' columns
# data = pd.read_csv('stock_prices_2023.csv')

plt.figure(figsize=(10, 5))  # Rectangular aspect ratio
plt.plot(data['Date'], data['NVDA'], label='NVDA')
plt.plot(data['Date'], data['TSLA'], label='TSLA')

# Add lines of best fit
for stock in ['NVDA', 'TSLA']:
    z = np.polyfit(range(len(data)), data[stock], 1)
    p = np.poly1d(z)
    plt.plot(data['Date'], p(range(len(data))), linestyle='--', label=f'{stock} Trend')
    slope = z[0]
    plt.text(data['Date'].iloc[-1], p(len(data)-1), f'Slope: {slope:.2f}', fontsize=9)

plt.title('NVDA and TSLA Stock Prices for 2023', fontweight='bold')
plt.xlabel('Date')
plt.ylabel('Price')
plt.legend()
plt.savefig('nvda_tesla.png', bbox_inches='tight')
plt.show()
'''

Remember to replace the placeholder code with actual data retrieval and processing steps. Once you run this code with the correct data, it will generate the visualization and save it as 'nvda_tesla.png'.

Please note that you'll need to have the matplotlib library installed and properly configured in your Python environment to execute this code.

I hope this helps you create the visualization you need! TERMINATE.

--------------------------------------------------------------------------------
Modified files:  0

Additional Information
My version of autogenstudio:  v0.0.40a
OS mac, but also I tested it in docker container

This is because the agent replies "TERMINATE" with the code and the is_termination_msg is set to "TERMINATE" in msg. @victordibia

The content of the system message has a large influence on the behavior of the agent.
As @gagb mentioned, the task executed early becuase the visualization agent responded with TERMINATE, before the code was executed.
One solution would be to inspect the system message used for the visualization assistant and make changes "e.g., reduce references to TERMINATE)
For example,
Change from ...
Your task is to ensure you generate a high quality visualization for the user. Your visualizations must follow best practices and you must articulate your reasoning for your choices. The visualization must not have grid or outline box. The visualization should have an APPROPRIATE ASPECT RATIO e..g rectangular for time series data. The title must be bold.  Note that today's date is 12/10/2023. At each point, do your best to determine if the user's request has been addressed and if so, respond with a summary. The summary must be written as a coherent helpful response to the user request e.g. 'Sure, here is result to your request '. The summary MUST end with the word TERMINATE. If the user request is  pleasantry or greeting, you should respond with a pleasantry or greeting and TERMINATE.

to
Your task is to ensure you generate a high quality visualization for the user. Your visualizations must follow best practices and you must articulate your reasoning for your choices. The visualization must not have grid or outline box. The visualization should have an APPROPRIATE ASPECT RATIO e..g rectangular for time series data. The title must be bold.  Note that today's date is 12/10/2023. At each point, do your best to determine if the user's request has been addressed and if so, respond with a summary. The summary must be written as a coherent helpful response to the user request e.g. 'Sure, here is result to your request ..'.

Thanks @gagb and @victordibia I checked suggestion and by changing system message it works. It does not produce terminate word at the end of generated response from an agent. And code is executed correctly in the next step


Hang When Lots of DRAM Stores in Parallel

If you look at TransferStruct, the binding transformer puts all 4 stores at the end in parallel and this causes a hang. :(

Fixed.  Was related to a previously seen issue where a request from a higher stream followed by a request from a lower stream before the first one was fully completed caused the stream arbiter to jump around and it incorrectly missed some data.  I added a counter to make sure we dont overflow the axi request


Don't create relationship to 'na' collectors

Relationships from collection events -> collectors are being created for 'na' collectors causing some collection events to not index. Need to filter out those collectors in the insert staement.

Updated script. Need to rerun in Dev, DLVR and TEST.


Expose  to the OS via persistent memory by stboot

@jensdrenhaus Is this one still relevant?

closing, since there is currently no play/use-case for this feature.


AtlasMap native support

https://github.com/apache/camel/tree/master/components/camel-atlasmap

working on this one!

A JVM-only extension is ready in the camel-master branch.


Atomic Modeset fails

Hi,
I'm trying to run flutter-embedded-linux on a buildroot based linux using the eglstream backend for an nvidia card. I've enabled modesetting on the command-line, but it fails like this:
# LD_LIBRARY_PATH=/root/drm/lib/ FLUTTER_DRM_DEVICE=/dev/dri/card0 ./flutter-drm-eglstream-backend -b drm/
[ERROR][native_window_drm_eglstream.cc(132)] Failed to commit an atomic property change request
[ERROR][elinux_window_drm.h(131)] Failed to create the native window (/dev/dri/card0).
Segmentation fault (core dumped)

The dmesg.log (with drm.debug=0xff on the command line) does give a hint about no framebuffer being set.
I am by no means an DRM expert, so any hints would be greatly appreciated.

I'm trying to run flutter-embedded-linux on a buildroot based linux using the eglstream backend for an nvidia card.

Specifically, what device are you using? Also, did you run that command with sudo?

Running as root, yes. With the suggested changes:
# LD_LIBRARY_PATH=/root/drm/lib/ FLUTTER_DRM_DEVICE=/dev/dri/card0 ./flutter-drm-eglstream-backend -b drm/
[ERROR][native_window_drm_eglstream.cc(132)] Failed to commit an atomic property change request: -22
[ERROR][environment_egl_stream.cc(16)] Failed to set extension function pointers
[ERROR][context_egl.cc(71)] Failed to choose EGL surface config: eglGetError: EGL_BAD_DISPLAY
[ERROR][context_egl_stream.cc(20)] Failed to set extension function pointers
Segmentation fault (core dumped)

[ERROR][native_window_drm_eglstream.cc(132)] Failed to commit an atomic property change request: -22

-22 means:

-EINVAL
if DRM_CLIENT_CAP_ATOMIC is not enabled, the value of flags is illegal, or atomic property IDs in the request are not recognized.

BTW, what device are you using?

NVIDIA GPU GeForce GTS 450 (GF106)
NVIDIA GLX Module  390.151

I see. I haven't tried this backend on desktop graphics cards.
Sorry, I can't think of anything right away. Need investigation.

No problem. Thanks for a prompt response!

If you find a bug, please send a pull request :)

I have the same problem on "NVIDIA Jetson Orin NX"
CPU: aarch64
System: Ubuntu 20.04 focal
Kernel: 5.10.192-tegra
Vulkan: 1.3.204
CUDA: 11.4.315
L4T: 35.5.0
Jetpack: 5.1.3


How to handle english words in vietnamese text

Hi,
Based on your repo and your answers, I have built successfully a Vietnamese text-to-speech app with my own dataset. It sounds so good in the majority of cases. But I am still stuck on how to handle some English words (e.g, vaccine, morning...) that appear in the text. I have created a list of English words and mapping it with Vietnamese pronounce (e.g, vaccine - vắc xin) and updated it when new English words appear. However, It seems inefficient way.
Do you have any advice for me in this case? Thank you so much.

I'm glad that vietTTS works well on your dataset!
One solution that I can think of to handle English words is to convert both English words and Vietnamese words to a standard phoneme representation (IPA, for example). Then, train the duration model and acoustic model on the IPA phoneme representation.

I'm glad that vietTTS works well on your dataset!
One solution that I can think of to handle English words is to convert both English words and Vietnamese words to a standard phoneme representation (IPA, for example). Then, train the duration model and acoustic model on the IPA phoneme representation.

Thanks for answering.
With this solution, I think I need an additional audio dataset for English with the same voice as Vietnamese. Is that correct?

With this solution, I think I need an additional audio dataset for English with the same voice as Vietnamese. Is that correct?

The best-case scenario, I think, is to have a dataset with English words and Vietnamese words in the same sentence.

Thank you so much!

With this solution, I think I need an additional audio dataset for English with the same voice as Vietnamese. Is that correct?

The best-case scenario, I think, is to have a dataset with English words and Vietnamese words in the same sentence.

Can you please give an example of two sentences?


Create Unpublish specific version - Solution proposal.md

Initial draft

This looks fantastic! Thankt you so much for getting this on the agenda.
My only concern with the spec as it stands at the moment is that last two points about how unpublishing all the versions should have the same behavior as the current unpublish action. I guess there are two conflicting use cases here.

User unpublishes all current published versions, but still intends to publish a new version of the same extension.
User intends to delete the extension altogether.

Right now the unpublish behavior assumes case 2. The problem with case 2 - as I have painfully discovered when I accidentally blew away an extension with thousands of installs - is that even if you republish again with the exact same name and marketplace token, existing users of that extension cannot upgrade, because it's considered an entirely new extension.
On one hand, this behavior is good, because it means if someone unpublishes an extension then a bad actor can't come along and hijack the namespace without the existing users explicitly uninstalling and reinstalling that extension. On the other hand, for the legitimate case as described in scenario 1, above, this leaves a potentially large number of users stuck on broken or out of date versions.
If unpublishing versions and removing extensions were two separate operations, this situation could be avoided.
Thanks again for taking a look at this.

Looks really great! Thank you!
I would add one more important use case: You want to remove really old version to reduce support burden on the publisher.  So, I would avoid putting 1K download limit.

This looks great, apart from the wording restricting it to VS Code extensions. The VS Marketplace also provides extensions for Visual Studio and Azure DevOps, who would also greatly benefit from this. Is there any possibility of including the three types of extensions rather than restricting it? The original issue does not state the purpose was solely for VS Code.

What would happen for users who already installed a version which subsequently gets unpublished? Would VS Code automatically rollback / upgrade (if available)?

This looks great, apart from the wording restricting it to VS Code extensions. The VS Marketplace also provides extensions for Visual Studio and Azure DevOps, who would also greatly benefit from this. Is there any possibility of including the three types of extensions rather than restricting it? The original issue does not state the purpose was solely for VS Code.

@alexangas Good question! Version history is only supported for VS Code extensions. For example, in case of VS only the latest extension version (not referring to VS version) can be installed. That's the thinking behind Unpublishing a specific version being scoped for VS Code.

Related on SO: I've published a wrong version number to VSCode marketplace. Best way to handle/downgrade version number?
What would happen for users who already installed a version which subsequently gets unpublished? Would VS Code automatically rollback / upgrade (if available)? (related)

FYI @isidorn @sandy081 @joaomoreno

This looks fantastic! Thank you so much for getting this on the agenda.
My only concern with the spec as it stands at the moment is the two points about how unpublishing all the versions should have the same behavior as the current unpublish action. I guess there are two conflicting use cases here.

User unpublishes all current published versions, but still intends to publish a new version of the same extension.
User intends to delete the extension altogether.

Right now the unpublish behavior assumes case 2. The problem with case 2 - as I have painfully discovered when I accidentally blew away an extension with thousands of installs - is that even if you republish again with the exact same name and marketplace token, existing users of that extension cannot upgrade, because it's considered an entirely new extension.
On one hand, this behavior is good, because it means if someone unpublishes an extension then a bad actor can't come along and hijack the namespace without the existing users explicitly uninstalling and reinstalling that extension. On the other hand, for the legitimate scenario as described in case 1, above, this leaves a potentially large number of users stuck on broken or out of date versions.
If unpublishing versions and removing extensions were two separate operations, this situation could be avoided.
Thanks again for taking a look at this.

Solution proposal updated as following to reflect #1. Good call out!

@seaniyer Sandeep and me just discussed this and overall this makes good sense from the VS Code point of view, and we are excited about Marketplace picking this one up.
The only open question is the one Sandeep raised - what should VS Code do when the a specific version is unpublished, if that version is being used by the user.

After discussing with Sandeep, we believe that VS Code needs to react and downgrade the user to the highest unpublished version. We can discuss if Marketplace needs to update the current query that returns a list of versions (to specify if a version has been unpublished), or if VS Code should figure this out by making some assumptions (seeing that the latest available version from MP is lower than the current running extension version).
Also what if the last version is unpublished - than your assumption is that the whole extensions gets unpublished. How would client react to that? We propose to do the same thing we do today when the whole extension gets unpublished, and that is a no-op. Leave the extension running, but we might need to notify the user.

@sandy081 let me know if I missed something from our discussion. Thank you

This looks fantastic! Thank you so much for getting this on the agenda.
My only concern with the spec as it stands at the moment is the two points about how unpublishing all the versions should have the same behavior as the current unpublish action. I guess there are two conflicting use cases here.

User unpublishes all current published versions, but still intends to publish a new version of the same extension.
User intends to delete the extension altogether.

Right now the unpublish behavior assumes case 2. The problem with case 2 - as I have painfully discovered when I accidentally blew away an extension with thousands of installs - is that even if you republish again with the exact same name and marketplace token, existing users of that extension cannot upgrade, because it's considered an entirely new extension.
On one hand, this behavior is good, because it means if someone unpublishes an extension then a bad actor can't come along and hijack the namespace without the existing users explicitly uninstalling and reinstalling that extension. On the other hand, for the legitimate scenario as described in case 1, above, this leaves a potentially large number of users stuck on broken or out of date versions.
If unpublishing versions and removing extensions were two separate operations, this situation could be avoided.
Thanks again for taking a look at this.

Solution proposal updated to reflect # 1. Good call out!

@isidorn @sandy081 @starball5 Thanks for your input and great questions. Adding @sbanni who is looking into the tech. design. Let's discuss and circle back here.

@seaniyer Sandeep and me just discussed this and overall this makes good sense from the VS Code point of view, and we are excited about Marketplace picking this one up.
The only open question is the one Sandeep raised - what should VS Code do when the a specific version is unpublished, if that version is being used by the user.

After discussing with Sandeep, we believe that VS Code needs to react and downgrade the user to the highest unpublished version. We can discuss if Marketplace needs to update the current query that returns a list of versions (to specify if a version has been unpublished), or if VS Code should figure this out by making some assumptions (seeing that the latest available version from MP is lower than the current running extension version).
Also what if the last version is unpublished - than your assumption is that the whole extensions gets unpublished. How would client react to that? We propose to do the same thing we do today when the whole extension gets unpublished, and that is a no-op. Leave the extension running, but we might need to notify the user.

@sandy081 let me know if I missed something from our discussion. Thank you

@isidorn @sandy081
After discussing with @sbanni and @lyndaidaii on the Marketplace team, we are in agreement with these two proposed approaches on VS Code side:

VS Code needs to react and downgrade the user to the highest unpublished version
no-op on the client side when all versions have been unpublished (same as the whole extension is unpublished)
We are going to investigate updating the API to return a list of versions with unpublished/published marked sounds.

It would be nice to have this feature, I published my first version "universal" wrongly, I would like to remove it.


Remove WARNING health status for ppc64le VMs

Description
WARNING health status was added in an attempt to speed up ppc64le provisioning by shortcutting the creation process, allowing us to try to communicate with the VM before IBM cloud says it's in a stable condition.
This worked in testing on the original PR, but has been failing on master. This PR undoes the change in order to maintain some CI stability.
Checklist

[ ] Investigated and inspected CI test results
[ ] Updated documentation accordingly

Automated testing

[ ] Added unit tests
[ ] Added integration tests
[ ] Added regression tests

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why you did not do so. (Valid reasons include "CI is sufficient" or "No testable changes")
In addition to reviewing your code, reviewers must also review your testing instructions, and make sure they are sufficient.
For more details, ref the Confluence page about this section.

Can we get a description on why we need this change? It's pretty ambiguous other wise, not sure if it's needed or if it's just a nice to have for instance.

I have updated the description with some explanation about why we're removing it. TL;DR attempts at speeding up VM creation on Power were successful in testing, but are now consistently failing on master


Many example notebooks have errors in code execution checked in

The examples/ directory is a showcase of our functionality.
Several of the notebooks in that directory have code errors checked in, which is bad.
Code note executed:
https://github.com/datactive/bigbang/blob/master/examples/experimental_notebooks/Person-Group Bipartite Graph.ipynb
Code error:
https://github.com/datactive/bigbang/blob/master/examples/experimental_notebooks/Cohort Visualization.ipynb
Code error:
https://github.com/datactive/bigbang/blob/master/examples/word_analysis/CheckWordsTrendsOverTime.ipynb
Assigning to Niels, the Notebook Gardener. Can you make these flowers bloom?

Will go through the the example notebooks, not the experimental ones though, right?
Good moment for me because I started analyzing RIPE mailinglists.

We can make automated tests for the notebooks!
Let's do this before 1.0


while adding Azure Static web app extenstion, getting error

Issue Type: Feature Request
while adding Azure Static web app extenstion, getting error as VScode version is outdated
Getting promt to update, howevere it is not getting installed. Please let me know once lettest virsion is installed by email<EMAIL_ADDRESS>VS Code version: Code 1.43.2 (0ba0ca52957102ca3527cf479571617f0de6ed50, 2020-03-24T07:52:11.516Z)
OS version: Linux x64 4.15.0-1065-aws

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.77.3. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

wanted to open ticket with Coursera as im using their cloud PC.


charts/promscale: update alerts

What this PR does / why we need it
Syncing alerts from promscale
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer
Checklist

[x] Chart Version bumped
[x] CLA signed

Sorry looks like I did the same thing in #500


test: fix flakiness of client-side routing test (fix #2646)

fixes #2646

All green again, thanks a lot @brillout 🙌🏼


chewing-editor: init at 0.1.1 Add package chewing-editor

Motivation for this change
chewing-editor is the user phrase editor
for Chewing input method
(one of the most popular bopomofo Chinese input method)
Chewing IM memorize phrases input by the user automatically
or when the hot keys are pressed.
If applied, the commit will enable Chewing user to correct the phrases in the
database or add new ones, which is a crucial functionality of Chewing IM
that haven't been in NixOS.
The corresponded Packaging Request is #89554.
Things done

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

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[X] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Ensured that relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

(Just a random passer-by.) Awesome, thank you for making NixOS more accessible for users of traditional Chinese! I confirm that the package builds here. :-)

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/203

@ryantm
I have it split now.

@ShamrockLee I redid the history to be just two commits and made it so the commit that adds the chewing-editor derivation can live on its own.


Make sure players can't squeeze held players outside the map or through doors and walls

Players can be stuck inside ladders


When autocompleting a function name, pre-existing parenthesis get deleted

Godot version
4.0.beta2
System information
Kubuntu 22.04
Issue description
This happens when you're using a function as some other function's parameter, the pre-existing parenthesis of the first function get deleted.
Video Example:
https://user-images.githubusercontent.com/52990296/193709149-30c7ff5a-90bf-4577-bcdb-825a6a06b48b.mp4
Steps to reproduce

Call a function as some other function's parameter

Godot's Script Editor definitely isn't the only program I've used that does this, but it's be nice to tidily fix it, regardless of the coding language used in the Editor.


The library throws an error when the image variable passed to the config is not called image

const imagejh = document.getElementById('image-jh');
window.onload = function initialize() {
    pict2pix.animate({
        image: imagejh,
        numberOfParticles: 3000,
        horizontalSpeed: -1,
        verticalSpeed: -1,
        particleType: 'twisted-particle'
    });
}

This code throws an error because the variable passed to image is called imagejh. It only works when the image variable is called image.

Opened to update the README.md and the example to generate the new release v0.1.1


Pigeon issue - Failed to broadcast TX

Pigeon is failing to send a tx to paloma, causing a validator to be jailed.
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=error msg="Failed to execute process: failed to broadcast tx: timed out after:<PHONE_NUMBER>0; timed out after waiting for tx to get incl>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="updating external chain infos" component=update-external-chain-infos x-correlation-id=cs3rktepv0isuv8inv40
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="signing transaction" component=send-msgs key=cc2 x-correlation-id=cs3rjvepv0isuv8inlmg
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0x97ce46eB1137D839AD3027C68583C64d8B0c185C chain-reference-id=arbitrum-main chain->
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0x937506c931B2aB4c3aB2D114a2Cc5716f183A0e6 chain-reference-id=base-main chain-trai>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0xAcA6cDCFCBbccA070c5F18535F1c5cbaE2B4142E chain-reference-id=bnb-main chain-trait>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0x1177806cD88b0BC0eA363bEd3C64f8314361b162 chain-reference-id=eth-main chain-trait>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0xB66D86b4f926F97D946466027d950552890b3cb0 chain-reference-id=gnosis-main chain-tr>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0xB924F36582eB10e1388Fe7331E84dD42DdE0309d chain-reference-id=matic-main chain-tra>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=info msg="adding chain info to payload" acc-address=0xD96C286d07309dE363C1BDB54815234FF5a3bE85 chain-reference-id=op-main chain-traits>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=warning msg="Failed to broadcast TX." error="out of gas" sync-result="&{11  out of gas in location: ValuePerByte; gasWanted: 0, gasUse>
Oct 10 11:28:53 cc1 pigeon[2701589]: time="2024-10-10T11:28:53Z" level=error msg="error returned in process loop" error="failed to broadcast tx: out of gas" x-correlation-id=cs3rjvepv0isuv8inlmg

On our validator logs, we can find only two validators reporting this issue:
Oct 10 12:46:11 mainnet-validator palomad[1013801]: {"level":"error","module":"server","module":"x/paloma","msg.args.chain-reference-id":"eth-main","msg.args.error":"failed to broadcast tx: timed out after:<PHONE_NUMBER>0; timed out after waiting for tx to get included in the block","component":"pigeon-status-update","status":"error attesting messages","sender":"palomavaloper1c8uxkkz00qn97wsp9um8y3a8wlmrv3c546jw4q","time":"2024-10-10T12:46:11Z","message":"error attesting messages"}
Oct 10 13:01:06 mainnet-validator palomad[1013801]: {"level":"error","module":"server","module":"x/paloma","msg.args.chain-reference-id":"eth-main","msg.args.error":"failed to broadcast tx: timed out after:<PHONE_NUMBER>0; timed out after waiting for tx to get included in the block","component":"pigeon-status-update","status":"error attesting messages","sender":"palomavaloper1qxl8xy0rjl99zhaxgu4ffuegup9mh6qxdmcwkg","time":"2024-10-10T13:01:06Z","message":"error attesting messages"}

HW info from Cosmos Cats:
We are using own hardware server with ubuntu 22.04 installed
i9-14900K Intel Core
Z790 Gigabyte Aorus Master X
Corsair 64GB DDR5 Vengeance (2x32GB) 6600 CL32
4TB Kingston KC3000  & Samsung 990 Pro

@maharifu will you put a tracking ticket on Paloma? We'll invite other validators to add comments there.


Duplicated resource are shown as empty in inspector at runtime

Godot version:
v3.2.4.rc3.official
Issue description:
A duplicated resource appear as EMPTY in the inspector at runtime. We cant edit / inspect values.
I was expecting to be able to watch and modify values at runtime.

Minimal reproduction project:
duplicated_resource_empty.zip

Related to #39847.

If I understood the issue I think it's unrelated to #39847.
Can anyone still reproduce this issue in Godot 3.5 or any later release? I was unable to reproduce in v3.5.stable.mono.official [991bb6ac7]:

The duplicated_resource property does not show as [empty] and if clicked it can be edited/inspected.

Closing due to lack of response. Please comment if you can still reproduce this bug.


Don't allow the ability to create paywalls for users that can't receive

Also, need to disable paywalls for users that can't receive. Maybe display a message that the Strike user's account must be public in order to create paywalls and to accept payments from paywalls.

fixed


LocalParticipant.reconnectFuture rejects with "Got disconnected during publishing attempt" that cannot be handled

Describe the bug
What I'm expecting
No unhandled rejections are thrown.
What happens instead
We haven't discovered the exact way to reproduce this issue, but here are our logs:
2023-05-29T05:38:37.220Z: (info) disconnect from room [object Object]
2023-05-29T05:43:17.407Z: (warning) websocket closed [object Object]
2023-05-29T05:43:17.410Z: (warning) signal disconnected
2023-05-29T05:43:17.419Z: (info) resuming signal connection, attempt 0
2023-05-29T05:43:38.845Z: (warning) primary peerconnection disconnected
2023-05-29T05:49:21.310Z: (warning) websocket closed [object Object]
2023-05-29T05:49:21.913Z: (warning) reconnect disconnected
2023-05-29T05:49:22.502Z: (info) resuming signal connection, attempt 1
2023-05-29T05:49:56.776Z: (warning) websocket closed [object Object]
2023-05-29T05:50:02.583Z: (warning) reconnect disconnected
2023-05-29T05:50:03.953Z: (info) resuming signal connection, attempt 2
2023-05-29T05:50:07.221Z: (warning) leave-reconnect disconnected
2023-05-29T05:50:07.247Z: (warning) reconnect disconnected
2023-05-29T05:50:07.257Z: (warning) websocket closed [object Object]
2023-05-29T05:50:07.259Z: (warning) signal disconnected
2023-05-29T05:50:10.442Z: (info) reconnecting, attempt: 3
2023-05-29T05:50:27.584Z: (warning) reconnect disconnected
2023-05-29T05:50:33.099Z: (warning) ping timeout triggered. last pong received at: Mon, 29 May 2023 05:50:13 GMT
2023-05-29T05:50:33.115Z: (error) cannot send signal request before connected, type: ping
2023-05-29T05:50:33.117Z: (error) cannot send signal request before connected, type: pingReq
2023-05-29T05:50:34.088Z: (info) reconnecting, attempt: 4
2023-05-29T05:50:34.089Z: (warning) signal disconnected
2023-05-29T05:51:15.088Z: (warning) reconnect disconnected
2023-05-29T05:51:23.092Z: (info) reconnecting, attempt: 5
2023-05-29T05:51:56.091Z: (warning) reconnect disconnected
2023-05-29T05:52:01.088Z: (warning) ping timeout triggered. last pong received at: Mon, 29 May 2023 05:51:41 GMT
2023-05-29T05:52:01.101Z: (error) cannot send signal request before connected, type: ping
2023-05-29T05:52:01.101Z: (error) cannot send signal request before connected, type: pingReq
2023-05-29T05:52:02.088Z: (warning) signal disconnected
2023-05-29T05:52:09.048Z: (error) cannot send signal request before connected, type: trickle
2023-05-29T05:52:09.057Z: (error) cannot send signal request before connected, type: trickle
2023-05-29T05:52:09.064Z: (error) cannot send signal request before connected, type: trickle
2023-05-29T05:52:09.701Z: (error) cannot send signal request before connected, type: trickle
2023-05-29T05:52:10.088Z: (info) reconnecting, attempt: 6
2023-05-29T05:52:41.088Z: (warning) reconnect disconnected
2023-05-29T05:52:49.088Z: (info) reconnecting, attempt: 7
2023-05-29T05:52:54.916Z: (warning) websocket closed [object Object]
2023-05-29T05:52:54.933Z: (warning) signal disconnected
2023-05-29T05:53:05.088Z: (warning) reconnect disconnected
2023-05-29T05:53:13.088Z: (info) reconnecting, attempt: 8
2023-05-29T05:54:05.088Z: (warning) ping timeout triggered. last pong received at: Mon, 29 May 2023 05:53:45 GMT
2023-05-29T05:54:06.088Z: (warning) signal disconnected
2023-05-29T05:54:06.089Z: (info) resuming signal connection, attempt 0
2023-05-29T05:54:48.088Z: (warning) ping timeout triggered. last pong received at: Mon, 29 May 2023 05:54:28 GMT
2023-05-29T05:54:48.110Z: (error) cannot send signal request before connected, type: ping
2023-05-29T05:54:48.110Z: (error) cannot send signal request before connected, type: pingReq
2023-05-29T05:54:49.088Z: (warning) signal disconnected
2023-05-29T05:54:49.095Z: (info) resuming signal connection, attempt 0
2023-05-29T07:15:52.001Z: (warning) primary peerconnection disconnected
2023-05-29T07:15:52.046Z: (warning) websocket closed [object Object]
2023-05-29T07:15:52.581Z: (warning) reconnect disconnected
2023-05-29T07:15:52.890Z: (info) resuming signal connection, attempt 1
2023-05-29T07:15:53.566Z: (warning) websocket closed [object Object]
2023-05-29T07:15:53.906Z: (info) could not recover connection after 2 attempts, 1877ms. giving up

And then we get "UnhandledRejection: Non-Error promise rejection captured with value: Got disconnected during publishing attempt"
This does not crash the page, and doesn't seem to cause any problem for the user, but it would be great to get rid of this issue.
By the looks of it, the issue is somewhere here:
LocalParticipant.tsx
  private handleDisconnected = () => {
    this.reconnectFuture?.reject?.('Got disconnected during publishing attempt');
    this.reconnectFuture = undefined;
  };

The only place this future is handled is in publishTrack, which seems to be the reason behind the message being specific to publishing a track.
To me it seems like it's possible to handle this issue in place e.g.:
  private handleDisconnected = () => {
    if (this.reconnectFuture) {
        this.reconnectFuture.promise?.catch();
        this.reconnectFuture.reject?.('Got disconnected during publishing attempt');
        this.reconnectFuture = undefined;
    }
  };

Reproduction
N/A, but I will work on providing one
Logs
No response
System Info
System:
    OS: macOS 11.6.8
    CPU: (8) x64 Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz
    Memory: 144.95 MB / 32.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 19.9.0 - /usr/local/Cellar/nvm/0.39.3/versions/node/v19.9.0/bin/node
    Yarn: 1.22.15 - ~/.yarn/bin/yarn
    npm: 9.6.3 - /usr/local/Cellar/nvm/0.39.3/versions/node/v19.9.0/bin/npm
  Browsers:
    Chrome: 113.0.5672.126
  npmPackages:
    livekit-client: ^1.9.6 => 1.9.6
    @livekit/components-react: ^1.0.2 => 1.0.2

Severity
annoyance
Additional Information
No response

Thanks for the report, is this something that you have "only" seen in error reports (e.g. sentry) and never in the browser console?

I've experienced this error in my own browser, just never understood how to reproduce it. Seems like if I leave the tab open for long enough in the background this increases the probability of this error happening. We also have a few use cases when a participant joins and intentionally does not publish tracks at all, he's just there to view / listen.

thanks for the info!
I did some tests and I think your proposed solution should work just fine.
In case you want to submit a PR for it (?), there's just two additional things I'd like to address:

log a warning with the error message instead of the empty catch clause
change the error message from 'Got disconnected during publishing attempt' to 'Got disconnected during reconnection attempt'


Revert "openstack-crowbar: enable SSL for magnum & sahara"

Reverts SUSE-Cloud/automation#3556
SSL support for sahara/magnum doesn't seem to be complete...

@nicolasbock yes, deployments are failing because SSL for magnum and sahara is incomplete. see: https://ci.suse.de/job/openstack-crowbar/33/console


Add the optional ability to view shorthand forms of cards/items in c!inventory and c!shop using "-s"

Everything's in the name.
How to use:

simply write c!inventory -s instead of c!inventory and the shorthand form of the cards you have will be written next to the name of these cards!
Also, do c!shop -s instead of c!shop to see the shorthand form of the cards being sold by the Wolf!

Could be useful to know the shorthand name of cards that you completely forgot about, rotting in your inventory since last year and be able to store them easily
Have a preview from a private fork i made for a friend's server (that i'm using to test if the new features i'm making work well):

(Side note, yes, c!inv <page> does work with -s)

Seems useful, merging


⚠ Bofrost.fr has degraded performance

In 3e63d23, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1574 ms

Resolved: Bofrost.fr performance has improved in 90e8252 after 3 hours, 18 minutes.


Create manual accessibility tests checklist and approach (for PRs and other triggers)

part of #60

This might be two checklists:
1 - minimal checks to be looked as part of a content change PR
2 - full suite to be triggered in case of layout changes


[Bugfix] Fix reinit procedure in ModelInputForGPUBuilder

This fixes the issues with entrypoints tests that were found by @DarkLight1337

/ready

@DarkLight1337 @youkaichao @comaniac


docs: update INSTALL to cover CRS4

I am indicating distro package names and I redirect the core installation procedures per engine to https://coreruleset.org/docs.

This wasn't the idea. We pushed to change this to markdown.

LGTM. Reading it for the 3rd time, I see a few small things I would do differently, but it's getting late, so let's push this out the door now.
You need to do the approval, since it's my PR.


When CorsGatewayFilterApplicationListener is used, vary is included in all routing response headers

When CorsGatewayFilterApplicationListener is used, vary is included in all routing response headers. Is this right?
If cors was set only for a specific route, it was expected that only the routing for that route would be processed through cors. However, if I set CorsGatewayFilterApplicationListener, org.springframework.web.cors.reactive.DefaultCorsProcessor.process is called in the cors verification part of org.springframework.web.reactive.handler.AbstractHandlerMapping, and a vary header is created for all responses.
I wonder if this is the right thing to do.

org.springframework.web.reactive.handler.AbstractHandlerMapping

	@Override
	public Mono<Object> getHandler(ServerWebExchange exchange) {
		return getHandlerInternal(exchange).map(handler -> {
			if (logger.isDebugEnabled()) {
				logger.debug(exchange.getLogPrefix() + "Mapped to " + handler);
			}
			ServerHttpRequest request = exchange.getRequest();
			if (hasCorsConfigurationSource(handler) || CorsUtils.isPreFlightRequest(request)) {
				CorsConfiguration config = (this.corsConfigurationSource != null ?
						this.corsConfigurationSource.getCorsConfiguration(exchange) : null);
				CorsConfiguration handlerConfig = getCorsConfiguration(handler, exchange);
				config = (config != null ? config.combine(handlerConfig) : handlerConfig);
				if (config != null) {
					config.validateAllowCredentials();
				}
				if (!this.corsProcessor.process(config, exchange) || CorsUtils.isPreFlightRequest(request)) {
					return NO_OP_HANDLER;
				}
			}
			return handler;
		});
	}

DefaultCorsProcessor

	@Override
	public boolean process(@Nullable CorsConfiguration config, ServerWebExchange exchange) {

		ServerHttpRequest request = exchange.getRequest();
		ServerHttpResponse response = exchange.getResponse();
		HttpHeaders responseHeaders = response.getHeaders();

		List<String> varyHeaders = responseHeaders.get(HttpHeaders.VARY);
		if (varyHeaders == null) {
			responseHeaders.addAll(HttpHeaders.VARY, VARY_HEADERS);
		}
		else {
			for (String header : VARY_HEADERS) {
				if (!varyHeaders.contains(header)) {
					responseHeaders.add(HttpHeaders.VARY, header);
				}
			}
		}

Neither of those classes are part of Spring Cloud Gateway. I assuming you set spring.cloud.gateway.globalcors.enabled=true? If that is so, CorsGatewayFilterApplicationListener simply extracts cors config for each route and adds it to the RoutePredicateHandlerMapping which extends AbstractHandlerMapping. What are you hoping gateway could do?

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.


Collect more info about IAD?

Currently the schema has an iad_save, but no other information is collected for the IAD, making it hard to investigate discrepancies.
Alternatively, the schema could drop iad_save and software tools could provide two diagnostic output files that reflect the schema -- one for the Rated Home (compared to the Reference Home) and one for the IAD Home (compared to its Reference Home).
@nealkruis

Addressed in #4.


Godot Array Indexing

Currently, an object constructed from the Array wrapper in Lua requires zero-indexing to access its elements. This looks wrong next to Lua's one-indexing, and can lead to some odd logic that requires checking types and adding/subtracting one to avoid OBO errors. Should Array be changed to one based indexing?

Hmm, that's a good question.
I think most of the time people won't be calling the same functions with both tables and Arrays/Pool*Arrays, but now that I'm thinking better about it, I guess making both work with 1-based indexing will do more good than harm.
Anyone wanting 0-based indexing with Arrays can still call get/set or safe_get/safe_set if they know they have an Array/Pool*Array in hand.
In this case, I think we should also change Array.__ipairs to return indices starting from 1.

An example where you may use both Lua tables and Godot Arrays is using a LuaRocks library to perform some data manipulations then converting it into a specific Godot Array indexing scheme.
I agree about ipairs though.

Good point, thanks for the insight!
Ok then, I'll make it happen =]


Change main project file output type to Library

gets funky wonky me not like it sowwy

why would this be necessary

i dont know man the thing is a library and i find the exe output funky

well i meant for it to sort of be like you can just build hc as part of your application

fair then dont merge it i guess


fix: allow pass proxy env when connect directly

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


intrinsics -- as *mut T not always put on the same line in libarena/lib.rs (on Rust repo)

Hello,
I have tried to submit a PR ( https://github.com/rust-lang/rust/pull/47069 ) on the Rust repo after running rustfmt on the libarena crate but it seems like there are some formatting issues:

on lines 136-137 the construct intrinsics -- as *mut T has been split on two lines
but on line 367 the construct intrinsics -- as *mut u8 has been put on the same line and there is a comma added after as *mut u8

It seems as if it is not an expected result, so I've decided to submit this issue (my very first issue).
I've used rustfmt-nightly 0.3.4 without options to get this.

Reduced example:
Input
fn main() {
    self.ptr.set(intrinsics::arith_offset(self.ptr.get() as *mut u8, 1) as *mut T);
    self.ptr.set(intrinsics::arith_offset(self.ptr.get(), mem::size_of::<T>() as isize) as *mut u8);
}

Output
fn main() {
    self.ptr
        .set(intrinsics::arith_offset(self.ptr.get() as *mut u8, 1)
            as *mut T);
    self.ptr
        .set(intrinsics::arith_offset(self.ptr.get(), mem::size_of::<T>() as isize) as *mut u8);
}


367 auto entity

Automatically create entity ids

Entity IDs are a runtime concern, not a design time concern. They will be handled automatically, but this is not the time to work on them. This will need to be a feature of Mimify and Codify.


Pdo sqlite keep bc since php81

Carries https://github.com/zf1s/zf1/pull/157 which was created by @partikus (keep BC for sqlite adapter when php >=8.1)
Github action, sticky with phpunit 9 (now phpunit 10 is latest version on github action, zf1-future support phpunit 9 only)

Mr @glensc could you please review this PR, thanks you!

@hungtrinh can you move phpunit change to separate PR?

Waiting #321 merged then rebase from #321, back to Draft

@hungtrinh you should apply all my suggestions. i.e to use short array.

Yep, i will apply it

Can you squash the suggestions to single commit and put meaningful commit message there (Use short array and coalesce language features)?

It's done Mr @glensc


PKCE and offline-access refreshtoken vs silentrefresh with cookie

PKCE and offline-access
The readme give an example off PKCE but it uses refresh tokens which is not recommend for web apps.
It is also missing useSilentRefresh:true
and this.oauthService.setupAutomaticSilentRefresh();
Both senarios work but I thought the refresh token has some security issues see
Can the document be clear about both senarios?

Thx for raising this issue! For sure, the readme can use a touch up.
It's not that bad though. Setting up automated silent refresh could be part of the tutorial, but it's also perhaps slightly more of an advanced scenario (esp. if you use the iframe approach, as it requires also setting up the html file and so forth). So not having it in the basic, default readme might not be bad after all?
The "security issue" you've linked was mine, but it was not so much a security problem. Just that the iframe approach didn't use to work with Code Flow. It does now howver (just closed the issue).
As for refresh tokens themselves... they're not (anymore?) entirely out of the question nowadays, although I would argue they require additional mitigation.
My suggestion would be to touch up the readme, but leave (slightly) more advanced scenarios to additional documentation and external examples, and update those with the suggestions you're aiming for?

For me it would me more clear that https://manfredsteyer.github.io/angular-oauth2-oidc/docs/additional-documentation/refreshing-a-token.html document is also for code flow with pkce. This (document)[https://developer.okta.com/docs/guides/refresh-tokens/-/get-refresh-token/] says don't use refresh. But this (SO)[https://stackoverflow.com/questions/49290819/why-are-refresh-tokens-considered-insecure-for-an-spa] says it doesn't matter.
So I was a little confused

As always: "it depends". You'll have to look at your specific situation to see what level of security you want, and what mitigations you are willing and able to build.

Thx, for me it is clear now. If you new to code flow with PKCE it is not so clear that refresh_token and silentRefresh accessToken are both valid options.


[WIP] [Extract Product Options - Part 1/2] - Refactor DB Table Extraction + Caching

What it does and why:

Refactors database table extraction and caching in preparation for https://github.com/Shopify/transporter_app/issues/1326

Checklist:

[X] Testing & QA: Passes tests and linting.
[ ] :tophat:: I have manually tested these changes.

Related issues:
Closes:

Closing in favor of https://github.com/Shopify/shopify_transporter/pull/50


Fastwood Forestry audio incorrectly panned.

Mod source
Factorio Mod Portal
Which mod are you having an issue with?

[x] pyalienlife
[ ] pyalternativeenergy
[ ] pycoalprocessing
[ ] pyfusionenergy
[ ] pyhightech
[ ] pyindustry
[ ] pypetroleumhandling
[ ] pypostprocessing
[ ] pyrawores

Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[ ] Balance
[ ] Pypostprocessing failure
[x] Other

What is the problem?
The audio for fastwood forestry MK 01 is hard panned to the left, except for 1 saw sound panned to the right. This does not fit the audio for the other buildings, which sit in a more neutral center. I am not far enough in the game to see if other MKs are affected.
Steps to reproduce
Make sure the Fastwood Forestry MK 01 is producing something and audio is enabled.
Click on the Fastwood Forestry MK 01 and listen to it.
Additional context
It is most noticeable when you have the building window open, like this:

Issue has been around since at least 2021

Log file
factorio-current.log

Fixed. Thanks for the report. https://github.com/pyanodon/pyalienlife/commit/942e173f23db59e58003837e38a6f70ce1397881


Update Installing and Scaling documentation for v1.0.0

This will require a new menu link for the scaling.html.md.erb doc

@ljarzynski - Rewritten installation & scaling docs as promised.
Would you be so kind as to review / edit & publish
Thanks!

@mrdavidlaing Awesome! That was fast. Will begin soon and may reach out with questions.

Closing this PR. Checked out the documents to the master branch instead.


Stuck at preprocessing

Hi,
Thank you for working on this extension. Great work to make nnUNet more accessible.
The algorithm and extension works for a colleague of mine.
After installation of nnUNetv2 2.5.1 (I think), when I run the algorithm, it gets stuck at the "nnUNet preprocessing" step.
cuda
stepsize 1
Folds 0
NPP 1
MPS 3
disable TTA check
I have reinstalled the extension but that didnt work. I have changed some parameters, e.g. cpu, folds and NPP but as you would expect, that didnt work.
How to go from here?

Hi @MatthijsFit ,
Thank you for reaching out.
Could you provide the console logs of the nnUNet processing?
Stuck pre-processing can be an indication that the multi process crashed or was killed (can happen if the data is too large for the hardware).
You may also have additional information on what went wrong in 3D Slicer's Python console.

We checked the python console as well, nothing there.
I wanted to re-install 3Dslicer another time and see whether that was the problem. Unfortanetly, our IT department did not allow me to reinstall it because its a nightly build after a recent change of policy. Now I do not have an installation of 5.7 to further test my problem.
I read however that it might have to do with a false SimpleITK installation in 5.7. I will get back to you when I know more.


PR: Adding Documentation for eslint-plugin-flowtype-errors

This plugin reports flow errors as ESLint errors, which useful for literally everyone who doesn't use nuclide.
Demo:

Note: In this demo, I am using atom with the packages 'linter' and 'linter-eslint'
Would a PR for updating the documentation, regarding this plugin, be welcome?

Nice.
However I don't see how a eslint plugin is related to this library


🤖 notebooks and figures executing

[x] update output based figures to use new mdast structure
[ ] add placeholder functionality for certain mimetypes


Could you share Cifar100 pretrain module to us?

Dear @titu1994
I want to train a baseline module on cifar100, dense-40-12. But, I can not obtain performance like the paper. Could you share your hyper-parameters or pre-train module on cifar100?
Thanks a milion.

Try matching the hyper parameters of the paper as much as you can, along with preprocessing and image augmentation techniques. Keras does not offer image crops or other such augmentation so it is not possible to match it exactly.
I do not have weights for Cifar 100. You might want to look into other Keras repos for weights.

The authors now suggest doing a wide version to improve what's in the paper. Image crops can be done with tf tensors that implement it in your model. see mnist_tfrecord.py for an example.

Oh so the DenseNet BC architecture with greater width? That's certainly interesting, but my GPU can barely handle 40-12 currently. I am wondering how to incorporate the shared batch norm memory efficient implementation from the torch repo, but I can't make any headway.
Also class assignments are starting to back up so can't pay much attention to this either, sadly. Having a memory efficient implementation of DenseNet for Keras is absolutely paramount in my opinion, as it would allow for deep dense networks.
But until I find some way to incorporate the wierd shared batchnorm from the torch codebase, that's a pipe dream.

I test cifar 100, it reach 60% after 200 epochs with depth 40, is there any parameter need to modify expect depth?

That's wierd. It should reach the high 70s with that many epochs and 40-12 model. How did you normalize the data ? Also, did you use learning rate schedule to reduce the learning rate ?

I'm going to review the latest DenseNet paper and reimplenent this based on the PyTorch version.
Expect breaking changes in the coming days. Once I finish, I will try to train on Cifar 10 and 100. If the performance is similar to the paper, I will update the weights and the models.
But since it is going to be based on the PyTorch version, I may need to add a custom scaling layer and so on. A lot of breaking changes.

Most probably, scale layers wont be needed. Keras BatchNorm has scaling inbuilt. I will have to port the weights though, which will take time.

@titu1994 will you be updating it in keras-contrib too? That's the one I actually use

If I can get it to work, yes. I was able to exactly duplicate the code to the PyTorch version, matching both the Cifar and ImageNet versions exactly.
However I have to use my GPU for other research projects so I will not be able to use it for training Cifar anytime soon.
I will probably port the ImageNet weights and post that to Contrib.

cool, I had been making some progress on that at https://github.com/ahundt/keras-contrib/releases and https://github.com/ahundt/keras-contrib/tree/cnn_finetune, but I had to put it on the back burner and there are some small model differences, what you're doing might be a better approach.
If you could, make it easy to set all the configuration parameters correctly for the pretrained model to be loaded.

@ahundt Just finished porting all the weights from https://github.com/flyyufelix/DenseNet-Keras to the repo. @flyyufelix, great work on porting the Caffe weights to Keras.
I was able to remove the redundant Scale Layer, since Keras Batchnorm has that inbuilt. All 3 weight files were ported over and can do training/inference correctly now.
I've also added pre-set models, such as DenseNetImageNet121, 161, 169 (which have weights), and 201 and 269 which dont have weights yet (I am on windows, cannot port caffe weights).
There is now a new flag - subsample_initial_block, which decides whether the first convolution should have stride 2 or not and be followed by BN-Relu-MaxPool2D or not. This is necessary as CIFAR DenseNets do not have the BN-Relu-MaxPool2D and have a stride 1 initial convolution (otherwise the spatial resolution is 8x8 right off the bat for the 1st dense block, which is too small to learn properly, though I have not tested it). This flag default to False, which means the default DenseNet model defaults to CIFAR mode.
A very large number of changes was made to the repository, perhaps quite a few breaking old CIFAR 10 weights. That will have to be substituted by the new ImageNet models. If and when someone manages to train on CIFAR, I will update the models to accommodate them as well.
Finally, porting this to Keras Contrib is a huge job. It will take time to do it correctly. I suggest starting off using it from the repo for now, and later on the integration with contrib should be seamless @ahundt

looks cool, thanks!
What's the barrier for keras-contrib, mostly formatting or perhaps some of the added options?

Majority is the code cleanup - the new parameters, the pre-built models can be copy pasted, the imports in contrib are different. Minor things, but coupled with my limited time schedule, it is gonna take time.
Mainly, its code cleanup which will take perhaps the longest. It's sadly not possible to copy paste the entire script in my repo to the contrib script.


Find a way to pretty print last_warning and last_error like strings in the inventory crawl

last_warning: "ApiExecutionError(\'GCP API Error: unable to get project-name from GCP:\\n<HttpError 429 when requesting https://cloudresourcemanager.googleapis.com/v1/projects/project-name:getIamPolicy?alt=json returned \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\">\\n{\\n  \"error\": {\\n    \"code\": 429,\\n    \"message\": \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\",\\n    \"errors\": [\\n      {\\n        \"message\": \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\",\\n        \"domain\": \"global\",\\n        \"reason\": \"rateLimitExceeded\"\\n      }\\n    ],\\n    \"status\": \"RESOURCE_EXHAUSTED\"\\n  }\\n}\\n\',)"
last_error: "ApiExecutionError(\'GCP API Error: unable to get project-name from GCP:\\n<HttpError 429 when requesting https://cloudresourcemanager.googleapis.com/v1/projects/project-name:getIamPolicy?alt=json returned \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\">\\n{\\n  \"error\": {\\n    \"code\": 429,\\n    \"message\": \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\",\\n    \"errors\": [\\n      {\\n        \"message\": \"Insufficient tokens for quota \\\'ReadGroup\\\' and limit \\\'CLIENT_PROJECT-100s\\\' of service \\\'cloudresourcemanager.googleapis.com\\\' for consumer \\\'project_number:12345\\\'.\",\\n        \"domain\": \"global\",\\n        \"reason\": \"rateLimitExceeded\"\\n      }\\n    ],\\n    \"status\": \"RESOURCE_EXHAUSTED\"\\n  }\\n}\\n\',)"

Cleanup of old issues. Please re-open if there's still interest.