[updater] doesn't shutdown app gracefully on Windows

This skips app clean up code, for example kill sidecar / save windows states / save store
https://github.com/tauri-apps/plugins-workspace/blob/99bea2559c2c0648c2519c50a18cd124dacef57b/plugins/updater/src/updater.rs#L589

We probably need to have an API like "on post exit" for it to let the app clean up first and then run the installer/updater

I think we just need to use https://docs.rs/tauri/2.0.0-beta.11/tauri/struct.AppHandle.html#method.cleanup_before_exit

Totally forgot it, that should do the job

Wait, cleanup_before_exit only cleans up tray icon and resources, it doesn't run the functions listening on Exit event, so things like other plugin's on exit cleanup will not get ran

We can't send an exit event, this is only sent by tauri.

you should use the new before_exit callback to run your own cleanup

So how one should run other plugin's clean up functions?

I guess they will need to also expose a cleanup method that users can invoke
or maybe change the spec of a tauri plugin to have a cleanup hook so they run cleanup there instead of on Exit event and so tauri cleanup_befor_exit can run that hook

I feel like the clean up hook shouldn't be on the Exit event listener, when you run cleanup_before_exit, you would expectit runs all  plugin clean up functions

I like the clean up hook idea, if we need to make it, it's better to do it before going stable

devs are expected to call app.restart() on macos and linux, right? If so, then this will trigger Exit and ExitRequest so why don't we just call app.exit() on windows which does the same? Maybe we can set some tauri::State so that users can check in ExitRequested why it restarts instead of another clean up hook.

that will make the updater dependent on an storing an AppHandle which is not something I am quite fan of, maybe we could instead remove before_exit and replace it with exit_function and fallback to std::process::exit if was not provided.

Note that the clean up hook need to be run before we run the installer or the installer will kill the app
Maybe we could try to make installer send a signal to the running app and request it to shutdown instead?

I'm not sure what triggers an Exit event, I think log out / shutdown Windows doesn't even do it (tested on an app with tray icon and hidden window)

Or maybe we do app.exit and wait for it to shutdown itself in the installer?

this is tricky indeed, we can't wait for the installer to send a signal, we should already exit before the installer runs.
I think I am leaning towards keeping the new before_exit hook and recommending users that they should ensure all intermediate work for their app has been saved or cleaned up before calling install or download_and_install, this could include running cleanup methods of plugins (if they provide one).
In addition to that we should look into adding a on_destroy hook for plugins to run their cleanup there and modify app.cleanup_before_exit to run these destroy hooks.

Migrate plugin clean up code (and maybe even app clean up) to a standalone hook would be great
An alternative would be making cleanup_before_exit to send Exit event
Just took a look on how electron handles it, they seem to be sending an before-quit-for-update and followed by closing all windows and that triggers before-quit event

An alternative would be making cleanup_before_exit to send an Exit event

That's not its purpose though

Just took a look on how electron handles it, they seem to be sending a before-quit-for-update event and followed by closing all windows and that triggers a before-quit event

This is similar to the new cleanup_before_exist hook, just as an event

Migrate to clean up hook

More work, and breaking changes
Can't catch run installer errors

Run app.exit(0) and make installer waits

Maybe lesser clean?
I'm not sure how it would work on the msi installer

So what do you think?

Do be honest, I don't know how Chrome and Firefox can apply new updates without closing the app first (they're the most seamless updates I know about), most other programs on Windows can't, even programs like PowerToys, vscode from Microsoft


Ability to book multiple events in same slot on mobile

Apologies if this was asked before and I am not sure if its a feature.
Basically what I am struggling with is the ability to add multiple events on the same slot on mobile.
I understand on desktop there is a small space on the right side of the events so that you can click on the slot. But what about on mobile? is there any other workaround?

I believe there is an event passthrough option that changes the selecting behavior to ignore events, you have to poke through the source tho

@jquense the thing is I want to be able to do both


Cargo install rustfmt-nightly fails on nightly

I'm trying to install rustfmt-nightly and the build fails. This tries to install v1.4.21. One of the dependencies is rustc-ap-rustc_data_structures version v677.0.0 which fails to compile because it uses #![feature(optin_builtin_traits)] which has been removed. I see that the latest version of rustc-ap-rustc_data_structure is v712.0.0 so perhaps just bumping its version would solve the problem?
$ rustc --version
rustc 1.53.0-nightly (07e0e2ec2 2021-03-24)
$ rustup default nightly
$ cargo install rustfmt-nightly
...
  Installing rustfmt-nightly v1.4.21
...
  Compiling rustc-ap-rustc_data_structures v677.0.0
error[E0557]: feature has been removed
  --> /home/obk/.cargo/registry/src/github.com-1ecc6299db9ec823/rustc-ap-rustc_data_structures-677.0.0/src/lib.rs:17:12
   |
17 | #![feature(optin_builtin_traits)]
   |            ^^^^^^^^^^^^^^^^^^^^ feature has been removed
   |
   = note: renamed to `auto_traits`
...

Thanks for reaching out but going to close this.
The recommended way to add rustfmt to your system is via rustup (https://github.com/rust-lang/rustfmt#on-the-nightly-toolchain), or in some more edge-type cases one could also grab the binaries from our releases.
Compiling rustfmt itself is tricky, as rustfmt utilizes large chunks of the rustc internals, and those internals typically require very specific versions of nightly toolchains for compilation. This means that there's a relatively small range of nightly releases that can be used to compile any given of version of rustfmt, and the range of those supported nightly toolchains can vary from a couple days to a couple months.
We've not been distributing rustfmt through crates.io for a while, which is why the "latest" version was last published 7+ months ago and is very old relative to what's available through the supported channels (v1.4.21 vs. v1.4.36 available via rustup).
If you really wanted to try to get that old version from crates, then you'd need to find and grab a suitable nightly toolchain. I don't know exactly what that range would be from ~7 months ago, but there's likely a few from around that time frame (Sept. 2020) that would technically work.

It isn't that I want to install it directly, but that's what cargo make does, specifically when running on Travis:
[tasks.install-rustfmt]
description = "Installs cargo rustfmt plugin."
category = "Development"
env.CFG_RELEASE = { value = "${CARGO_MAKE_RUST_VERSION}", condition = { env_not_set = ["CFG_RELEASE"] } }
env.CFG_RELEASE_CHANNEL = { value = "${CARGO_MAKE_RUST_CHANNEL}", condition = { env_not_set = ["CFG_RELEASE_CHANNEL"] } }
install_crate = { crate_name = "rustfmt-nightly", rustup_component_name = "rustfmt", binary = "rustfmt", test_arg = "--help" }

Ok, that's a problem with cargo make. I should open an issue there asking it will switch to trying rustup component add instead of cargo install, but that would only be a partial solution. Even if I work around it by pre-installing rustfmt, by executing rustup component add rustfmt before ever running cargo make, I get:
error: component 'rustfmt' for target 'x86_64-unknown-linux-gnu' is unavailable for download for channel nightly

Sometimes not all components are available in any given nightly. If you don't need the component, you can remove it with:

    rustup component remove --toolchain nightly --target x86_64-unknown-linux-gnu rustfmt

Which makes sense since as you said, rustfmt is not available for every nightly version. But wait... my environment is up to date and rustfmt works for me. What gives? Looking at my setup:
$ rustup update
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
info: latest update on 2021-03-30, rust version 1.53.0-nightly (48691ea6e 2021-03-29)
info: skipping nightly which is missing installed component 'rustfmt'
info: syncing channel updates for 'nightly-2021-03-29-x86_64-unknown-linux-gnu'
info: latest update on 2021-03-29, rust version 1.53.0-nightly (4a20eb6a9 2021-03-28)
info: skipping nightly which is missing installed component 'rustfmt'
info: syncing channel updates for 'nightly-2021-03-28-x86_64-unknown-linux-gnu'
info: latest update on 2021-03-28, rust version 1.53.0-nightly (9b0edb7fd 2021-03-27)
info: skipping nightly which is missing installed component 'rustfmt'
info: syncing channel updates for 'nightly-2021-03-27-x86_64-unknown-linux-gnu'
info: latest update on 2021-03-27, rust version 1.53.0-nightly (5e65467ef 2021-03-26)
info: skipping nightly which is missing installed component 'rustfmt'
info: syncing channel updates for 'nightly-2021-03-26-x86_64-unknown-linux-gnu'
info: latest update on 2021-03-26, rust version 1.53.0-nightly (52e3dffa5 2021-03-25)
info: skipping nightly which is missing installed component 'rustfmt'
info: syncing channel updates for 'nightly-2021-03-25-x86_64-unknown-linux-gnu'
info: checking for self-updates

   stable-x86_64-unknown-linux-gnu unchanged - rustc 1.51.0 (2fd73fabe 2021-03-23)
  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.53.0-nightly (07e0e2ec2 2021-03-24)

info: cleaning up downloads & tmp directories
$~/rust/total-space$ rustc --version
rustc 1.53.0-nightly (07e0e2ec2 2021-03-24)
$~/rust/total-space$ cargo --version
cargo 1.52.0-nightly (90691f2bf 2021-03-16)

Ah - "skipping nightly which is missing installed component rustfmt". So rustup is kind enough to only update to the every-once-in-a-while version that has rustfmt (presumably because I have rustfmt installed). Hmmm... on the one hand, good it doesn't break my environment, on the other hand, I'm not getting the latest compiler...
Travis installs Rust by running  curl -sSf https://build.travis-ci.com/files/rustup-init.sh | sh -s -- --default-toolchain=$TRAVIS_RUST_VERSION --profile=minimal -y - in this case, TRAVIS_RUST_VERSION=nightly. This apparently gives it the very latest version even though it doesn't include rustfmt.
So, two related questions:

Any advice on how to get rustfmt working on Travis on nightly builds? Right now my builds succeed/fail intermittently depending on whether rustfmt is available, because I use cargo make and one of the steps is verifying the code is properly formatted (which I do want to keep as a test of the code).

Any way to update my local environment to the latest nightly compiler and still have a working rustfmt? Right now when I develop locally I don't always get the latest compiler just because I happen to have rustfmt installed - and being able to run cargo fmt is extremely useful, not something I want to give up.

On its face, both issues would be resolved if there was a way of installing rustfmt by downloading a statically linked precompiled binary - the latest one, even if compiled with a slightly older rustc version - independently of the version of the currently installed rustc. If that means using curl instead of rustup, so be it. Is there such an alternative?
BTW, for context - my crate needs feature(trait_alias) so I don't do stable builds at all. In fact I don't even have the stable toolchain installed on some of my development machines (and Travis only installs nightly when doing nightly builds, which is reasonable).

TBH I found your last comment a bit hard to follow as it reads a bit like streaming thoughts :smile:
Few things I will note:

Yes, nightly inherently allows for things being broken or missing. There's some broken toolstates at the time of this post (you can always view tool status here: https://rust-lang.github.io/rustup-components-history/)
You should consider whether you simply need a nightly (in order to be able to utilize unstable features), or whether you always explicitly need the latest nightly build
There's various strategies folks employ depending on their respective answer to that question

If you just need a nightly then a common approach is to utilize a toolchain file which is pinned to a known good nightly, and periodically updated
Note that rustup also has an --allow-downgrade flag that can be utilized to help with this too (e.g. rustup toolchain install --allow-downgrade nightly -c rustfmt)
If you genuinely need the latest nightly for compilation then you can consider things like multiple/matrix jobs (separate app compile/test from formatting), grabbing a precompiled binary, etc.

As for your questions:

Any advice on how to get rustfmt working on Travis on nightly builds? Right now my builds succeed/fail intermittently depending on whether rustfmt is available, because I use cargo make and one of the steps is verifying the code is properly formatted (which I do want to keep as a test of the code).

Yes see above

Any way to update my local environment to the latest nightly compiler and still have a working rustfmt? Right now when I develop locally I don't always get the latest compiler just because I happen to have rustfmt installed - and being able to run cargo fmt is extremely useful, not something I want to give up.

Yes see above. The toolchain file approach in particular can be helpful here, since that allows you to ensure your local env will match what happens in CI (both will have same toolchain, component versions, etc.)

On its face, both issues would be resolved if there was a way of installing rustfmt by downloading a statically linked precompiled binary - the latest one, even if compiled with a slightly older rustc version - independently of the version of the currently installed rustc. If that means using curl instead of rustup, so be it. Is there such an alternative?

Yes, and I mentioned this in my previous response. We do provide precompiled versions for (most) of the Tier 1 platforms as artifacts attached to our GitHub Releases

one could also grab the binaries from our releases.

I guess what I'm asking for is a stable URL for a script install-latest-rustfmt.sh and possibly an equivalent uninstall-latest-rustfmt.sh which would revert things to their pristine state. This way a CI build could curl and execute this and then rustfmt would "just work" even if the current (nightly) toolchain can't compile rustfmt. Does that make sense?

Yes I understand what you'd like, but no, we're not going to do that for you. Fundamentally, you have to decide if you want the absolute bleeding edge nightly for both the compiler and formatter, and if so you have to accept that sometimes things will be broken or missing on that bleeding edge. You cannot have it both ways when it comes to stability and bleeding edge nightly.
There are a lot of teams in the position of needing to build on nightly and also run formatting checks in their CI process, and there are a lot of viable, actively utilized approaches to support this, many of which have already been enumerated and discussed in this thread.


Add loading indicator for svg loading

@mbucknell I would put in the -moz and the plan old animation and keyframes declarations to have this animation work on all browsers. Shoulda given you a more robust example over just for chrome from stackoverflow

@mbucknell just to be safe can we also add
@keyframes spin {     from {transform:rotate(0deg);}     to {transform:rotate(360deg);} }
need that for all non chrome users, and the chrome browsers that not longer need that -webkit shiv

Beautiful!!!


Add Elian.codes production website

@delucis thanks! I've opened an issue at: https://github.com/withastro/astro.build/issues/111


feat: Preview data sample is added

Description

This PR adds a feature. Shows up to 5 unique values for a column (see picture below for an example)

Related Issues
Closes #316
Testing

[X] Yes
[ ] No, not needed (give a reason below)
[ ] No, I need help writing them

Reviewer Focus
This PR only needs a quick review.
Checklist
For all PRs that are not general documentation

[X] Tests accompany or reflect changes to the code
[X] Tests ran and passed locally
[X] Ran the linter and formatter
[X] Build has passed locally
[X] Relevant documentation has been updated

@philter87 From the screenshot you shared, I see that HEALTHCARE_EXPENSES shows five unique values and the text says <5 unique values. Should this be <=5 unique values?


Add static analysis

Simply using the trait fires up static analysis 🚀
🔎 https://github.com/luminarix/enum-concern/actions/runs/12516141020/job/34914797809?pr=7

I like the workflow changes, but at this point perhaps we could break it up to separate workflow files? I'm thinking "phpstan.yml" and "dependency-analysis.yml" or something like that. I don't feel like the "phpstan" workflow should do this much stuff. What do you think?
Can you explain the phpstan configuration related change and the added enums, though? This PR would not check tests/FunctionTest.php at all and only yields an error for the two added enums because of the fact that they both only have a single case in them*. I'd also put them in the tests/Enums directory, but I'm really not sure what it's supposed to add to the tests as we already have enum implementations for the tests.
*this is fixed here

I don't feel like the "phpstan" workflow should do this much stuff. What do you think?

My workflows concentrate on a certain target, jobs on a certain type of check
workflow name = back-end thus PHP language
job name = static analysis
https://github.com/szepeviktor/byte-level-care/blob/master/.github/workflows/back-end.yml#L131
It is up to you!

This PR would not check tests/FunctionTest.php at all

Those test file were included because nothing else used the trait.
Now there are 2 classes only to use the trait, so no need for Pest tests.

It is merge time.

My workflows concentrate on a certain target, jobs on a certain type of check workflow name = back-end thus PHP language job name = static analysis<EMAIL_ADDRESS>It is up to you!

We might just leave it as-is for now, I'll do a cleanup on the workflows later.

Those test files were included because nothing else used the trait. Now there are 2 classes only to use the trait, so no need for Pest tests.

Can you check my latest commit? What do you think about this? We already have enums that make use of the trait - they are specifically made for the tests, however, we can also use them to trigger the static analysis on the trait itself as well. Would you prefer creating separate, unused enums instead just to trigger the SA? If so, why?

we can also use them to trigger the static analysis on the trait itself as well.

I agree.


App update prompts

Leonard asked about how users will be prompted about mobile app updates. He went to show Eterna mobile to someone, and the mobile app was limited to tutorial puzzles only, and he wondered if he'd missed an app update.

I have implemented a mechanism for incrementing a version number in the backend, and hardcoding a version in the app where if the version returned by the backend is higher, it refuses to operate until you update. This was primarily intended for backwards-incompatible updates where using an old version of the app could cause issues.
Personally, I think relying on the app store for indicating other available updates should be fine - and this is how almost all apps work. Both the iOS app store and Google Play store also install updates automatically at some point, afaik.


[TASK] Add more sniffs to the CI task

add some sniffs from the TYPO3 sniff pool
always use single quotes for strings when possible
avoid unnecessary concatenation
move the concatenation dot to the end of the line
change if/else/elseif constructs to have only one return
group the sniffs in the ruleset

Fixes #222

@jjriv Do you have time to review and merge this PR during the next few days? Thanks!


Allow only 1 comment reaction per account

Test:  inf
Ticket:  Part of #1705
Concerns
In order to know if we have already reacted from another comment, we need to fetch reactions for all of our channels.  This increases the reaction.List call by N_OWN_CHANNELS per comment page.
If this is fine, then great.  Else, we can try to only fetch-all when a reaction is being done, rather than when a reaction count is normally being fetched.
Note

This PR doesn't cover comments.
Note the need to refresh when switching channels after just liked/disliked (#1410)

Oh wait, I forgot inf have authentication issues ...

There's authentication issues with inf.  This is with magic link:

Fixed the domain for inf

-- DRAFT --
It's been bugging me as the sequence is not efficient.  Thought of some ideas while implementing the comment side, so hold on...

-- READY FOR REVIEW --
Approach

When making a reaction, fetch reactions for all my channels for the particular comment id, and reject the reaction is any was found.
Report the channel name in the toast so that user can at least know which channel to select in order to undo the reaction.

However, when combined with the other PR that clamps the channel-selector if you've commented, there's a possibility that you can't re-select the channel to un-react


Guideline for the devlopers?

Could you please add some guidelines on how to customize explainsX? For example, adding more functionality, changing in styling, etc.

Thank you for this issue.
We are still finalizing and cleaning the code with guidelines for developers.
We hope to get it done in a few weeks.

@rab657, thanks a million.


Retry for WriteFailure and add salt to backoff time.

Modifying the retry policy to consider WriteFailure, in the case of simultaneous writes to a same row.  In addition, adding a salt to the backoff time so that two sessions doesn't retry at the same time again.

 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.:x: babatsai sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


The graph fly out of screen after expanding and collapse nodes over 10 times

I download the offical demo, and only change fit to false. After expanding and collapse nodes over 10 times, the whole graph fly out of screen. I guess there is a bug in coordinate calculation.
var api = this.expandCollapse({ 	layoutBy: { 		name: "cose-bilkent", 		animate: "end", 		randomize: false, 		fit: false 	}, 	fisheye: true, 	animate: false, 	undoable: false });

@ugurdogrusoz I'm so sorry to focus this issue and trouble you again. I find that if data has a little more complicated structure, for example more than three levels, the layout maybe look weird when expanding or collapsing nodes. The new layout may not base on the last positions, but may shift to a quiet far postions as a whole. I'm not sure this is the issue of cytoscape.js-expand-collapse extension or cytoscape.js-cose-bilkent. But I think it's a bug which need to debug. You can fill my data into official demo and set fit to false to see this issue. (it's not a required option to set fit to false. When true, it keeps all nodes into screen, but the layout maybe very different from the last layout)

elements: [{"data":{"id":"G_18019","n":"a"},"group":"nodes"}, {"data":{"id":"G_18065","n":"collapse and expand me twice to look the weird behaviour"},"group":"nodes"}, {"data":{"id":"G_19297","n":"c"},"group":"nodes"}, {"data":{"id":"G_2","n":"d"},"group":"nodes"}, {"data":{"id":"G_20168","n":"e"},"group":"nodes"}, {"data":{"id":"G_18421","n":"f~~"},"group":"nodes"}, {"data":{"id":"n_0","n":"External","t":"2","np":"0"},"group":"nodes"}, {"data":{"id":"G_18069","parent":"G_18068"},"group":"nodes"}, {"data":{"id":"v_1","n":"linux_161","parent":"G_18068"},"group":"nodes"}, {"data":{"id":"G_18066","n":"f","parent":"G_18065"},"group":"nodes"}, {"data":{"id":"G_18068","n":"g","parent":"G_18065"},"group":"nodes"}, {"data":{"id":"v_20","n":"h","parent":"G_19297"},"group":"nodes"}, {"data":{"id":"G_19298","n":"nzliu_333","parent":"G_19297"},"group":"nodes"}, {"data":{"id":"G_19299","n":"haha1","parent":"G_19297"},"group":"nodes"}, {"data":{"id":"v_190","n":"test","parent":"G_2"},"group":"nodes"}, {"data":{"id":"v_175","n":"controller","parent":"G_20168"},"group":"nodes"}, {"data":{"id":"G_19300","n":"haha2","parent":"G_19299"},"group":"nodes"}, {"data":{"id":"G_18067","parent":"G_18066"},"group":"nodes"}, {"data":{"id":"G_18020","parent":"G_18019"},"group":"nodes"}, {"data":{"id":"G_18021","parent":"G_18019"},"group":"nodes"}, {"data":{"id":"v_174","n":"linux_163","parent":"G_18067"},"group":"nodes"}, {"data":{"id":"v_4","n":"cc","parent":"G_18421"},"group":"nodes"}, {"data":{"source":"G_18021","target":"n_0","id":"0ebcb1f9-c2ba-49aa-b776-207c0d3aede9"},"group":"edges"}, {"data":{"source":"n_0","target":"G_19300","id":"cf698215-b8ba-473d-b929-0e47921b3375"},"group":"edges"}, {"data":{"source":"G_19300","target":"v_1","id":"baf47866-f1bc-40d2-ac4e-4b9aa41e175b"},"group":"edges"}, {"data":{"source":"v_4","target":"n_0","id":"0aa3b3f3-aab5-4f83-813a-43823b38d850"},"group":"edges"}, {"data":{"source":"n_0","target":"v_174","id":"83812aa1-9db0-409f-826e-d48b16877596"},"group":"edges"}, {"data":{"source":"v_190","target":"n_0","id":"18940fa1-d277-4aed-a3ee-8db24008953b"},"group":"edges"}, {"data":{"source":"n_0","target":"v_175","id":"2d0865a5-3a2e-4479-bc90-a317621e8024"},"group":"edges"}, {"data":{"source":"n_0","target":"G_18021","id":"8420d19c-6a7a-4eb3-9342-4c69285795e3"},"group":"edges"}, {"data":{"source":"n_0","target":"v_1","id":"fbffb6da-93de-4751-bb4c-0aa61e636bb3"},"group":"edges"}, {"data":{"source":"v_1","target":"G_19300","id":"099b05de-1826-4c96-b30b-795c8cea85dd"},"group":"edges"}, {"data":{"source":"v_175","target":"n_0","id":"cf855a85-9f58-4a4b-b58d-a2e1a69e53c0"},"group":"edges"}, {"data":{"source":"v_1","target":"n_0","id":"231b9bdf-f178-4aa2-aeb8-5688277bbb91"},"group":"edges"}]


Update 00infoBlitz.sh

chain ascii art proposal

Thank you for the PR.
We ended up merging this: https://github.com/rootzoll/raspiblitz/pull/1607/files
but can discuss.
Your proposal is more like a braiding instead of a chain and I have no interlocking pieces.
Figured that we can take another line height too.


BuildPackage - when specifying version explicitly, don't auto bump build number

If specifying the version when building a package, I expect that version to be honoured and don't want it to automatically try to increment the build number. As it is, I get a build number which doesn't match my build version in the release pipeline.

To clarify, you would be okay with BuildPackage bumping the build number in case the version number is passed as an argument does not carry a build number, but if a build number is specified then it should be accepted and not bumped, correct?

Yes, that's correct.
Essentially, in my scenario, I don't commit any changes after building and publishing a package, so the autobump causes an off by one build number.

Changed in 0.91.0


The 1727 line of code is not reasonable

"required": function (str) {
return !(|| str.replace(/\s/g,"") == "" || typeof str != "string"  );
}
Should be changed to
"required": function (str) {
return !(typeof str != "string" || str.replace(/\s/g,"") == "" );
}
Because strings have the replace method but “null” or “undefined”  not have  this method
Therefore, you should first determine whether it is a string

The dist file contains only 1601 lines of code. Can you please link to exact line that contains that code ?


change implementation of List.Min from Seq.Min to List.reduce

Changing the implementation of List.min from Seq.min that use IEnumerable
to List.reduce which is more native way to traverse the list implemented by recursion
that compiles to while loop
benchmarks: https://gist.github.com/AviAvni/0a3576a619ff9bf4acf1958b8ca1c63b

Hi @AviAvni, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, MSBOT;

Avi, thanks for theis PR:
the error is:
[00:21:37] 1) Error : FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Collections.ListProperties.min is opposite of max
[00:21:37] System.Exception : Falsifiable, after 1 test (0 shrinks) (StdGen (3867478,296137611)):
[00:21:37] Original:
[00:21:37] []
[00:21:37]    at <StartupCode$FsCheck>.$Runner.get_throwingRunner@362-1.Invoke(String message) in c:\Users\Kurt\Projects\FsCheck\fsharp\src\FsCheck\Runner.fs:line 362
[00:21:37]    at FsCheck.Runner.check[a](Config config, a p) in c:\Users\Kurt\Projects\FsCheck\fsharp\src\FsCheck\Runner.fs:line 269
[00:21:37]    at FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Collections.ListProperties.min is opposite of max() in C:\projects\visualfsharp-radou\src\fsharp\FSharp.Core.Unittests\FSharp.Core\Microsoft.FSharp.Collections\ListProperties.fs:line 436
[00:21:37]
[00:21:37] 2) Error : FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Collections.ListProperties.minBy id is same as min
[00:21:37] System.Exception : Falsifiable, after 1 test (0 shrinks) (StdGen (5898733,296137611)):
[00:21:37] Original:
[00:21:37] []
[00:21:37]    at <StartupCode$FsCheck>.$Runner.get_throwingRunner@362-1.Invoke(String message) in c:\Users\Kurt\Projects\FsCheck\fsharp\src\FsCheck\Runner.fs:line 362
[00:21:37]    at FsCheck.Runner
[00:21:37] .check[a](Config config, a p) in c:\Users\Kurt\Projects\FsCheck\fsharp\src\FsCheck\Runner.fs:line 269
[00:21:37]    at FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Collections.ListProperties.minBy id is same as min() in C:\projects\visualfsharp-radou\src\fsharp\FSharp.Core.Unittests\FSharp.Core\Microsoft.FSharp.Collections\ListProperties.fs:line 456
[00:21:37]
[

@KevinRansom @otawfik-ms do you know why this doesn't break the jenkins builds?

Because I made seperae PR to min and max the error (as @latkin suggested)
and the error mesage was changed from
Error "The input sequence was empty.
Parameter name: source"
to
Error "The input list was empty.
Parameter name: list"
which is more correct som when the 2 of the PR accepted then this will be ok

No that's not what I meant. My question is why does the appveyor build detect the difference, but the Travis build does not. This is not really related to your change. But this suggests that property based tests are not run on TravisCI (and there might even be a good reason for this)

It does not yet run all of the tests, I pay attention to appveyor right now.
From: Steffen Forkmann<EMAIL_ADDRESS>Sent: Thursday, March 31, 2016 9:55 PM
To: Microsoft/visualfsharp<EMAIL_ADDRESS>Cc: Kevin Ransom<EMAIL_ADDRESS>Subject: Re: [Microsoft/visualfsharp] change implementation of List.Min from Seq.Min to List.reduce (#1028)
@KevinRansomhttps://github.com/KevinRansom @otawfik-mshttps://github.com/otawfik-ms do you know why this doesn't break the jenkins builds?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHubhttps://github.com/Microsoft/visualfsharp/pull/1028#issuecomment-204248519

@AviAvni, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

@AviAvni the fix is fine, but you might want to consider combining the min and max PRs into 1 so that the tests stay happy.


inline assembly presents some (?) instructions incorrectly?

https://godbolt.org/g/rWJdez
Note the the inline asm version shows:
.L2:
        popcnt QWORD PTR [rcx], rax
        popcnt QWORD PTR [rcx+8], rsi
        add rsi, rax
        sub rax, rdx
        popcnt QWORD PTR [rcx+16], rax
        sub rax, rdx
        popcnt QWORD PTR [rcx+24], rax
        sub rax, rdx

While the pure c++ versions shows:
.L2:
        xor     eax, eax
        xor     esi, esi
        popcnt  rax, QWORD PTR [rcx]
        popcnt  rsi, QWORD PTR [rcx+8]
        add     rax, rsi
        sub     rdx, rax
        xor     eax, eax
        popcnt  rax, QWORD PTR [rcx+16]
        sub     rdx, rax
        xor     eax, eax
        popcnt  rax, QWORD PTR [rcx+24]
        sub     rdx, rax
        add     rcx, 32
        cmp     rdx, 255
        ja      .L2

Note the the order of arguments in the inline asm version is reversed (popcnt instructions, for example):
When I turn on compile to binary and disassemble result I get back to normality in the inline asm iversion:
 popcnt rax,QWORD PTR [rcx]
 popcnt rsi,QWORD PTR [rcx+0x8]
 add    rax,rsi
 sub    rdx,rax
 popcnt rax,QWORD PTR [rcx+0x10]
 sub    rdx,rax
 popcnt rax,QWORD PTR [rcx+0x18]
 sub    rdx,rax
 add    rcx,0x20
 cmp    rdx,0xff

Am I right that this is a bug in the explorer?

So! This isn't a bug as such. When yo use inline assembly GCC does a little parsing to substitute the % stuff (which takes into account the intel/at&t settings), but otherwise doesn't do anything with the text. It just outputs it to the assembler: as text! Compiler Explorer just reports whatever came through.
Now, if you have Intel mode set, then Compiler Explorer passes `-masm=intel' to the compiler, to make it output in intel syntax. At the top of the file is a directive to tell the assembler to interpret the file this way.
However, that doesn't (and can't!) affect your inline assembly: when writing inline asm one has to know whether the compiler is using AT&T or Intel syntax: or else one needs to preserve and restore the settings in each asm block.
This is totally GCC default behaviour, see for example: https://wiki.osdev.org/Inline_Assembly
When you turn on binary mode, the assembler is run. This (somehow!) is making sense of the mixture of AT&T and Intel syntax, and then when CE disassembles it, you get some normal-looking output.
Hope this explains a little, do let me know if you think this explanation is unclear, or plain not right!

No this is pretty clear, I just think it might be potentially really confusing if you are not paying attention.
Would there be anyway to maybe "grep" the code for asm and show some warning @ the explorer level that inline assembly might be completely clunky?
I understand this might be an edge case, but as someone using compiler explorer with inline assembly for the first time, comparing hand written asm to intrinsics I was sure I was seeing some horrendous compiler bug (which coincided with the fact I was looking for a bug to begin with)...?
I'm obviously OK with this going forward, simply thinking about other users?

Thanks for the suggestion! It's not a bad idea, though it's C/C++ and somewhat compiler specific. We can generalise it for each language with a set of "if code matches regex, show warning. Thanks; editing this bug to stand for this feature request.


Allow specifying explicit types to bind

As suggested by @jonpryor, allow specifying explicit types to bind with the CLI interface.
Maybe this could be done with either a whitelist or blacklist filter command line option, with wildcard support.

Something like TypeMaps in CppSharp @tritao?

No, just a command line option, say -filter MyNamespace:* which would only allow types from that namespace to be bound.


set and get user choices from Firestore

set and get user choices from Firestore
keypoints

You need to implement a basic functionality, that updates the firebase firestore using the user auth uid as docName, and it must have the following fields, isAdult (boolean), selectedGenres (Array of strings), likedItems (Array of strings).
Also you need to implement a way of fetching the data from firestore and storing them locally, only update it when the user updates something.

Hello i am ready to work on this issue


[SPARK-45526][PYTHON][DOCS] Improve the example of DataFrameReader/Writer.options to take a dictionary

What changes were proposed in this pull request?
This PR proposes to add the example of DataFrameReader/Writer.options to take a dictionary.
Why are the changes needed?
For users to know how to set options in a dictionary ay PySpark.
Does this PR introduce any user-facing change?
Yes, it describes an example for setting the options with a dictionary.
How was this patch tested?
Existing doctests in this PR's CI.
Was this patch authored or co-authored using generative AI tooling?
No.
Closes #43357

Merged to master.


polari: unbreak

Things done

The build was failing due to missing telepathy_logger dependency. I added it.

Since bin/polari file is actually a symbolic link, wrapGAppsHook did not wrap it, making it unable to access GObject introspection definitions required for running the program. I made the wrapping script follow symlinks to fix this corner case.

GNOME expects the executable to have the same base name as the associated desktop file. When I wrapped the executable, I broke this correspondence. That is why I renamed the executable. For convenience, I also created a symlink with the original name. Edit: This was probably just an issuel with dbus needing to be restarted to find the service file for launching from GNOME Shell.

What is missing
The app is now running but it cannot connect to server due to in-memory gsettings (#26131).

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

[x] NixOS
[ ] macOS
[ ] Linux

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

Do I need gnome to run this application?
$ polari
** (org.gnome.Polari:9543): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
$

it exits with just this message from my awesome wm session.

The message is caused by #16327 and it should not affect functionality. I
need to figure out how to debug the app.
On 12 July 2017 at 12:26, Jörg Thalheim<EMAIL_ADDRESS>wrote:

Do I need gnome to run this application?
$ polari
** (org.gnome.Polari:9543): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
$
it exits with just this message from my awesome wm session.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/pull/27320#issuecomment-314721102, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AArCY98YOovtRDDBjuQwrCWZn1EnHCvNks5sNJ9XgaJpZM4OVHXL
.

The Travis build failed due to no space left on device from a rebuild of gapps.
As for the connection problem, journalctl contains the following:
request_connection_cb: RequestConnection failed: The name org.freedesktop.Telepathy.ConnectionManager.idle was not provided by any .service files

Both the problems are caused by a dbus services not recognized, even though they are installed.
$ ls /run/current-system/sw/share/dbus-1/services/ | grep 'Telepathy\|Polari'
org.freedesktop.Telepathy.AccountManager.service
org.freedesktop.Telepathy.Client.Polari.service
org.freedesktop.Telepathy.Client.Vino.service
org.freedesktop.Telepathy.ConnectionManager.idle.service
org.freedesktop.Telepathy.MissionControl5.service
org.gnome.Polari.service

After reloading dbus using systemctl --user reload dbus, Polari can be run using app launcher and idle starts. Unfortunately, it crashes immediately, possibly related to #26113.
Jul 12 16:01:23 kaiser dbus-daemon[1124]: Activating service name='org.freedesktop.Telepathy.ConnectionManager.idle'
Jul 12 16:01:23 kaiser dbus-daemon[1124]: Successfully activated service 'org.freedesktop.Telepathy.ConnectionManager.idle'
Jul 12 16:01:24 kaiser telepathy-idle[10329]: No GSettings schemas are installed on the system
Jul 12 16:01:24 kaiser kernel: traps: pool[10331] trap int3 ip:7f18a46c5941 sp:7f18a27ceed0 error:0
Jul 12 16:01:24 kaiser kernel:  in libglib-2.0.so.0.5200.1[7f18a4676000+111000]

Okay, I tested it with #26113 and it works fine.
cc @lethalman @jgeerds

Gnome pn Nix doesn't seem to be that actively maintained anymore. These changes look fine to me.
Please put the wrap-gapps-hook.sh in a separate commit though. Did you test other Gnome packages with this change?

@FRidh I did test it with other packages, it will not work without extended #26113 though. I will PR my changes on the pull request.

@FRidh This is now good to go.

Thanks. I've pushed it to staging.


Refactor WebSocket client used in tests

The WebSocket client code used in the tests (included in KituraTests.swift and KituraTests+Frames.swift) is unorganised and messy. We must refactor it into a well structured WebSocket client.

Some beginnings on this have been included in #40

Implemented by #48


fix(node/TS): eliminate incompatable types to protected properties

Resolves an issue in Node and TypeScript where if a project had more than one copy of RxJS, even if it was the same version, types would be incompatable between say, Observable and Observable, due to protected fields in the dts files. As all of these fields are really implementation details of the library, and my be removed at any time do to architectural changes, it is prudent to mark them as deprecated. Marking them as public only serves to eliminate the type incompatibilities.

Yep hit this one today:
https://stackoverflow.com/questions/50109847/strange-transpile-error-with-rxjs5-subject-subscription


Migrate to Yarn

get rid of npm packagelock.json

Codecov Report

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

@@          Coverage Diff          @@
##           master     #9   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          20     20
  Lines         343    343
  Branches       29     29
=====================================
  Hits          343    343

Continue to review full report at Codecov.

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


Symlink breaks dsc.exe

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest version
[X] Search the existing issues.

Summary
I am experiencing an issue when DSC is installed, and a symlink is created. Any command doesn't work when the dsc.settings.json file is not found.

Steps to reproduce

Install dsc.exe through winget in an elevated session: winget install --id Microsoft.DSC.Preview --source winget --installer-type zip --location "C:\Program Files\DSC"
Run dsc resource list

No resources are discovered because of the following error message: Could not read 'tracing' setting
WinGet creates a symlink.
Expected behavior
dsc command should work

Actual behavior
dsc command doesn't work

Error details
No response
Environment data
Name                           Value
----                           -----
PSVersion                      7.4.6
PSEdition                      Core
GitCommitId                    7.4.6
OS                             Microsoft Windows 10.0.22621
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Version
dsc 3.0.0-preview.12
Visuals
No response

If the settings file can't be found, we should emit a warning and fallback to defaults


wrong condition in Features ClassLabel encode_example

Describe the bug
The encode_example function in features.py seems to have a wrong condition.
if not -1 <= example_data < self.num_classes:
    raise ValueError(f"Class label {example_data:d} greater than configured num_classes {self.num_classes}")

Expected results
The not - 1 condition change the result of the condition. For instance, if  example_data  equals 4 and  self.num_classes equals 4 too, example_data < self.num_classes will give False as expected  . But if i add the  not - 1  condition, not -1 <= example_data < self.num_classes will give True and raise an exception.
Environment info

datasets version: 1.18.3
Python version: 3.8.10
PyArrow version: 7.00

Hi @Tudyx,
Please note that in Python, the boolean NOT (not) has less precedence than comparison operators (<=, <), thus the expression you mention is equivalent to:
 not (-1 <= example_data < self.num_classes)

Also note that as expected, the exception is raised if:

example_data < -1
or example_data >= self.num_classes

The raise of the exception is expected when example_data equals 4 and self.num_classes equals 4 too.


refactor: dev into smaller files

In preparation for work on refactoring the Miniflare implementation, this PR simply splits of the dev.tsx file a bit.

How does this split help the miniflare implementation?

No functional benefit. It just helps my aging eyes to be able to focus only on the Local stuff in a single file, rather than in the depths of another file that contains a bunch of other unrelated stuff.


Infinite loop in vwarn / vwarnc with netcat

Netcat does write an error when I press [enter] in a unidirectional UDP socket,
but netcat crash when doing the same when atderred is activated.
When stderred is disabled everything works as expected

0)-d1-!1065:~/bin/stderred$ LD_PRELOAD= nc -u -l  1201
[��$]
nc: Write error: Connection refused

I get an uncolored error and nc continue to listen.
When I enable stderred (up to date 11e4a33af), and for the same command:

GNU gdb (GDB) Fedora (7.3.1-46.fc15)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-redhat-linux-gnu".
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...
Reading symbols from /usr/bin/nc...(no debugging symbols found)...done.
Missing separate debuginfos, use: debuginfo-install nc-1.100-3.fc15.i686
(gdb) r
Starting program: /usr/bin/nc -l -u 1201
[��$]
Program received signal SIGSEGV, Segmentation fault.
0x41b03fac in vwarnc () from /usr/lib/libbsd.so.0
(gdb)

Backtrace shows an infinite loop in three functions:

(gdb) bt 5
#0  0x41b03fac in vwarnc () from /usr/lib/libbsd.so.0
#1  0x00112b7b in vwarnc () from //home/actech/bin/libstderred.so
#2  0x00112e2b in vwarn () from //home/actech/bin/libstderred.so
#3  0x41b03fde in vwarnc () from /usr/lib/libbsd.so.0
#4  0x00112b7b in vwarnc () from //home/actech/bin/libstderred.so
(More stack frames follow...)
(gdb) bt -5
#153515 0x00112e2b in vwarn () from //home/actech/bin/libstderred.so
#153516 0x41b03fde in vwarnc () from /usr/lib/libbsd.so.0
#153517 0x00112b7b in vwarnc () from //home/actech/bin/libstderred.so
#153518 0x00112e2b in vwarn () from //home/actech/bin/libstderred.so
#153519 0x41b03fde in vwarnc () from /usr/lib/libbsd.so.0

I added '-g' in CFLAGS (in top-level Makefile) with no luch to get crash details.
Here are some details about my nc binary if it can help:

$ file /usr/bin/nc
/usr/bin/nc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
$ ldd /usr/bin/nc
linux-gate.so.1 =>  (0x00429000)
//home/user/bin/libstderred.so (0x00b4e000)
libbsd.so.0 => /usr/lib/libbsd.so.0 (0x41b02000)
libc.so.6 => /lib/libc.so.6 (0x41974000)
libdl.so.2 => /lib/libdl.so.2 (0x41b1e000)
/lib/ld-linux.so.2 (0x41953000)

stderred works very fine in other cases.
Great work! Thanks!

:+1:


Fix scroll up motion on header

Removed useless swipe listener on header which was eating touch and causing parent motion layout to not scroll up if you swipe up in header area.

I signed it!

I am closing this issue/PR, as it has been migrated to the new repo linked above in the comments. Thank you!


readm not oppening documentation

Hi @HAkhavan71 the link to documentation
Documents
Documentation <https://techs-technological-solutions.github.io/ocpi/_
is not redirecting anywhere ?

I mean in the READM.md main page

fixed, there was a syntax error in readme


Absolutely zero specs for most things

Hi ladies and gents,
Would appreciate if there could be some specs on some of this stuff. Helps the discoverability of your API (is that an atom, a binary or a string argument??).
Any plans for that to come? I'd love to help but without prior knowledge of some of this stuff the only way to see is by extensive examples.

Folsom has moved, please resubmit your issue at https://github.com/folsom-project Thanks!


[FEATURE] The Terraform provider for Harvester should provide a bootstrap feature (similar to rancher2) to setup a password and automatically download the configuration

Is your feature request related to a problem? Please describe.
The Terraform provider for Harvester does not implement a bootstrapping method that can be used after an automatic installation of Harvester. This means, a manual process should happen where a user connects to the UI or a node and gets the KUBECONFIG. This is unfortunate, as the whole process should be more automated.
Suppose someone uses Terraform to provision machines on Equinix (Step 1), they probably want to automatically bootstrap Harvester and continue creating resources inside Harvester (Step 2), without needing to manually connect to a console in between two steps.
Describe the solution you'd like
Similarly to the Terraform Rancher2 provider, it should be possible to have a harvester_bootstrap resource (or even use the rancher2 provider) to bootstrap Harvester and output a KUBECONFIG file that can be used by the actual Harvester Terraform configuration.
Describe alternatives you've considered
I tried the rancher2_bootstrap resource (now, it does fail with 404 Error code).

Will add Harvester support to https://github.com/rancher/terraform-provider-rancher2

@futuretea can you provide some test plan?
I can't find any bootstrap resource from the PR, and I skimmed those documents, it seems we didn't add any resource to bootstrap Harvester?

@guangbochen should we verify these resource in the issue?
as they didn't fit the origin feature request, I thought it better be tracking in other feature issue

@lanfon72 @guangbochen  my bad, I misunderstood the feature request at first.

Created another issue: https://github.com/harvester/harvester/issues/2140

If users use terraform-provider-rancher2 to bootstrap the Harvester cluster
for example, use the config as below:
terraform {
  required_providers {
    rancher2 = {
      source = "rancher/rancher2"
      version = "1.25.0"
    }
  }
}

provider "rancher2" {
  alias = "bootstrap"

  api_url   = "https://<IP_ADDRESS>"
  bootstrap = true
  insecure = true
}

# Create a new rancher2_bootstrap using bootstrap provider config
resource "rancher2_bootstrap" "admin" {
  provider = "rancher2.bootstrap"

  initial_password = "admin"
  password = "blahblah"
  telemetry = true
}

# Provider config for admin
provider "rancher2" {
  alias = "admin"

  api_url = rancher2_bootstrap.admin.url
  token_key = rancher2_bootstrap.admin.token
  insecure = true
}

users will got a http 404 error form /v3 api:
╷
│ Error: [ERROR] Updating token: Bad response statusCode [404]. Status [404 Not Found]. Body: [404 page not found
│ ] from [https://<IP_ADDRESS>/v3]
│
│   with rancher2_bootstrap.admin,
│   on test.tf line 20, in resource "rancher2_bootstrap" "admin":
│   20: resource "rancher2_bootstrap" "admin" {
│
╵

The reason is we close the Harvester embedded Rancher's MCM feature
If we want to support this bootstrap feature in terraform-provider-harvester, we need to introduce rancher RESTful client to terraform-provider-harvester

This appears to be resolved from the Rancher2 provider side with the merge of #861 , please reopen or generate a new issue if more is necessary.


Foundation clash over data-tooltip

apparently foundation initialises tooltips when it sees the data-tooltip attribute. This PR attempts to fix it by using more specific attribute for CMS css tooltips
should fix https://github.com/divio/django-cms/issues/4862

:+1:

LGTM

Coverage remained the same at 89.266% when pulling ea397883eecafcc911d6fe8551418ef016bacb01 on FinalAngel:bugfix/foundation-clash into 5137171d657877bc3052f3cff89534f9b27167c1 on divio:release/3.2.x.


Stachera chat gpt2 branch

@Stach13 Looks like you got this working after all! However, I would have waited to merge this to main...today we'll have you all merge in each others requests. It's okay--I'm just happy to see you got over the hurdle from yesterday !


Thread_demo issue

Hi nrsyed,
i'm trying to use your function and script but here is a weird error I don't understand... btw I'm using a JetsonTX2 from Nvidia.
from: can't read /var/mail/CountsPerSec
from: can't read /var/mail/VideoGet
from: can't read /var/mail/VideoShow
./thread_demo.py: 7: ./thread_demo.py: Syntax error: "(" unexpected

Other question, if i import your function in a python script i suppose i can use it normally right ?
Thanks in advance

Hi @VincentDuf,
That error sounds like it's being caused by the shell trying to execute the file (instead of running it with Python). Are you running it using the command python thread_demo.py or just thread_demo.py?
And yeah, you should be able to use it normally by importing it in a script.
Let me know if it still causes issues.

Hi nrsyed,
I am still waiting for an answer.. Thank you

I don't know for certain if this will help, but I found that calling  cv2.waitKey() from multiple threads caused issues, which is why I ended up removing the call from my threadBoth() function and only relying on the call to cv2.waitKey() in the VideoShow class.
Can you try modifying the VideoShow class by moving your calls to cv2.waitKey() to it instead? Or perhaps remove the call to cv2.waitKey() from VideoShow?
Let me know if this works (or if you've found another solution).

Hi nrsyed,
I tried to remove the cv2.waitKey from the VideoShow class and I call it in my main loop as showed in the code:
`#!/usr/bin/env python
import cv2
import numpy as np
import sys
from AphidFunction import image_treatment
from AphidFunction import find_aphids
from gpio import *
from VideoGet import *
from VideoShow import *
button=255
setup(button,OUT)
source="nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)640, height=(int)360,format=(string)I420, framerate=(fraction)30/1 ! nvvidconv flip-method=0 ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink"
video_getter = VideoGet(source).start()
video_shower = VideoShow(video_getter.frame).start()
while True:
frame = video_getter.frame

hsv=image_treatment(frame)
img=find_aphids(hsv)

video_shower.frame = img

key = cv2.waitKey(10)
if key==ord('i'):
    set(button,1)
if key==ord('o'):
    set(button,0)
if key == 27:
break

cleanup(button)
cap.release()
cv2.destroyAllWindows()
`
but I have this recuuring error:
QObject::startTimer:Timers cannot be started from another thread
I don't see what's the problem with the timer..

I'm not sure exactly what the issue is, but it's probably a thread safety issue. Will have to look into it  a bit more, though I don't have experience with using gpio to run on or interact with a microcontroller (assuming that's what you're doing?).
A quick search yielded the following sources where people had the same error with OpenCV. Have you looked at these and do they seem like they might be helpful in addressing your issue?
https://stackoverflow.com/questions/42357656/pyqt5-timers-cannot-be-started-from-another-thread-error-when-changing-size-of
http://answers.opencv.org/question/160607/imshow-call-never-returns-opencv-320-dev/
https://github.com/tum-vision/lsd_slam/issues/224

try move all files in a folder, and move the folder into /home//.
be sure you have the read and write permissions
then cd to the folder and run
python ./thread_demo.py


Removes alpha validation from last name

What's this PR do?

Changes the last name validation to allow all characters so a user can submit their last name if they have ' or -.

How should this be reviewed?
👀
Checklist

[ ] Documentation added for changed endpoints.
[ ] Tests added for new features/bug fixes.
[ ] Post a message in #api if this includes something that causes a rebuild!

For review: …

Before we merge this, can we either update the existing test or add a new one to prove this is fixed by the change & catch any accidental regressions in the future?

I think @DoSomething/team-bleed was added automatically as a Reviewer - is it ok to remove @DoSomething/team-bleed as an automatic reviewer?

Yes! Let's swap that out to @DoSomething/team-bleed 👍

@DFurnes great idea! Just updated the test :)

YAY Northstar!! This is so exciting!!!


[Scheduler] Fix polymorphic type

Generated from RestAPI PR: https://github.com/Azure/azure-rest-api-specs/pull/2104

Needs to re-fix the "patch.py"

@AutorestCI rebase

@AutorestCI rebase

Rebase done and pushed to the branch

@AutorestCI rebuild https://github.com/Azure/azure-rest-api-specs/blob/master/specification/scheduler/resource-manager/readme.md

Replaced by https://github.com/Azure/azure-sdk-for-python/pull/2615


Ensure README is up-to-date

Is the stuff in the README going to be with getting the code up and running then?
Or are we looking to add more information in it?


[SSRS.ReportingService2010.ReportExecutionService] doesn't contain a method named 'GetItemType'

Its not working for me. Are there some prerequisites?
Deploy-SSRSProject.ps1
[13:47:21][Step 1/1] : Method invocation failed because
[13:47:21][Step 1/1] [SSRS.ReportingService2010.ReportExecutionService] doesn't contain a method
[13:47:21][Step 1/1] named 'GetItemType'.
[13:47:21][Step 1/1] At line:1 char:1
[13:47:21][Step 1/1] + .\ReportingDeployment\Deploy-SSRSProject.ps1 -Verbose -Path
[13:47:21][Step 1/1] '.\Reporting\Reporti ...
[13:47:21][Step 1/1] + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[13:47:21][Step 1/1] ~~~
[13:47:21][Step 1/1]     + CategoryInfo          : InvalidOperation: (:) [Deploy-SSRSProject.ps1],
[13:47:21][Step 1/1]    RuntimeException
[13:47:21][Step 1/1]     + FullyQualifiedErrorId : MethodNotFound,Deploy-SSRSProject.ps1
[13:47:21][Step 1/1]

I was using the wrong endpoint.


Support casting predefined procedures (MIN, MAX, CAST, SYSTEM.VAL) [DRAFT]

This implements casting predefined procedures.
When return type is set to typeType it expects one of the arguments to be of type typeType.
This arguments type is used to infer the return type of the procedure.
The procedures MIN and MAX is implemented.
There seems to be a problem with mutating arguments:

PROCEDURE Test;
VAR
a : LONGINT;
b : INTEGER;
BEGIN
a := MAX(LONGINT);
a := MIN(LONGINT);
b := MAX(INTEGER);
b := MIN(INTEGER)
END Test;

This fails with:

error: more actual than formal parameters.

on the expression b := MAX(INTEGER)
Otherwise this works as expected.

First I was thinking to use a subclass, but opted for bolting this temporary on the PredefinedProcedure class as then amount of changes was to big.
The reason was that probably the machinery here need to change here anyway in order to support use of these procedures in CONST definitions. Then maybe this need to be moved to separate classes?.
If I get this to work properly I was thinking to add unittests.
It is then much easier later to perform refactoring of the code.
Note : still not working properly with example above.

Added SYSTEM.VAL

Note that the following two unit tests fail on my platform.

system_6.mod: prints NaN instead of INF and -INF for REAL values. This looks like a problem of Out.Real(), not like a problem of the new functionality.
system_7.mod: prints FFFFFFFFDEADBEEF instead of 00000000DEADBEEF for the first value. I'm not sure what the problem is here.

Do these unit tests work for you?

Thanks for merging this last piece of the missing functionality needed for bare metal usage.

system_6.mod print correctly when I use printf directly. Probably some small issue with Out procedures.
system_7.mod it also print FFFFFFFFDEADBEEF . This is a issue with the constant is handled first as an INTEGER then sign extended to LONGINT .  Currently we do not support LONGINT hex literals or at least it gives error: invalid integer literal

I will update the unittests here and cover the SET and REAL type.
Also there is a bug in the REAL handling in the SYSTEM.VAL procedure I will fix,
then I think this is complete for now.

Awesome! 👍🏻
I spent the last couple of days on improving the symbol file export and import, which was lagging behind in terms of functionality w.r.t. the rest of the compiler. I believe it now properly handles all types that the compiler supports, i.e., everything with the exception of procedure types and extended records. I've also put some thought into handling (import of) re-exported symbols, but I'm not sure whether it already covers all the possible corner cases.
As part of working on export and import, I've made some changes to how numeric literals are handled, which is hopefully more consistent now. Nevertheless, I still need to look into using int64_t instead of long, int32_t instead of int, etc. to be more compliant to the implementation of the SYSTEM module. I also changed how aliasing of modules work, which means that pseudo modules can now have aliases as well.
As always, I've tested on AArch64 (macOS and Ubuntu Linux) with clang and GCC. As always, I'm interested what will happen on Windows! 😎

Excellent.
Quite some work in this update.
Now that the SYSTEM module is more or less complete I will take a look at the unittests again.
I will also test 32bit platform (ARM32). I was thinking maybe the best solution to support 32bit
would be to alias LONGINT to INTEGER (32bit). The procedure signatures would then be unchanged.
This of course needs to be detected by the code generator, but should be doable.


border bug redacted

Good job @pratham4434
Congrats 🎉, your PR got merged. To be eligible for the swags from ClueLess. Follow this steps.

SignIn / SignUp in ClueLess Website .

Go to profile section from the top right hand corner.

Comment your profile URL under this comment tagging the person who merged your PR.

That’s it. Follow the leaderboard !
And don’t forget to share your achievement with your friends.


Plugins not getting loaded

Ok, this is kind of a weird one. A bit of background first. I'm trying to move all my config files which are spread out in ~/.vim to vim 8's pack folder (~/.vim/pack) such that once everything has been moved, my .vim will have only vimrc, gvimrc and the pack folder. The reason behind doing so is so that I can go to someone else's comp, start vim with gvim -u vimrc and -U gvimrc and have all of my config available to me, including plugins.
vim-plug is one of the last things left to move and in order to do the above, I did a couple of things

Moved the file with all my plugin related settings to pack/bundles/start/bundles/plugin/bundles.vim

Set the path where vim-plug would be installed to pack/bundles/start/bundles/autoload

Set plug#begin to pack/bundles/opt

I was thinking that upon startup, pack/bundles/start/bundles/plugin/bundles.vim would be added to the runtimepath (which it is) and it would invoke all the plug#* calls and load the packages. The startup seems to happen normally without any errors or warnings but I'm not able to use any plugin, it seems like they weren't loaded correctly. :PlugStatus shows that a plugin, say vim-unimpaired, has been loaded (Status = OK). However, none of its mappings [e etc. have been created.
Here's the rundown of the debug:

I verified that bundles.vim can find plug functions with echom exists("*plug#begin") and it returns 1
Both bundles.vim and plug.vim can be seen in :scriptnames
Additionally, I placed a debug statement inside plug#(...) to dump the name of the repo and I can see tpope/vim-unimpaired get printed out upon startup so even that function is getting called.

I'm kind of not sure what's happening. If you have some time, can you please take a look at it?
My repo is located here
Thanks

VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Nov 12 2016 09:59:02)
Included patches: 1-78
Compiled by ks@ubuntu
Huge version with GTK2 GUI.  Features included (+) or not (-):
+acl             +clientserver    +cursorbind      +ex_extra        +gettext         +libcall         +mouse           +mouse_xterm     +persistent_undo +ruby            +tag_old_static  +toolbar         +wildmenu        -xterm_save
+arabic          +clipboard       +cursorshape     +extra_search    -hangul_input    +linebreak       +mouseshape      +multi_byte      +postscript      +scrollbind      -tag_any_white   +user_commands   +windows
+autocmd         +cmdline_compl   +dialog_con_gui  +farsi           +iconv           +lispindent      +mouse_dec       +multi_lang      +printer         +signs           -tcl             +vertsplit       +writebackup
+balloon_eval    +cmdline_hist    +diff            +file_in_path    +insert_expand   +listcmds        +mouse_gpm       -mzscheme        +profile         +smartindent     +termguicolors   +virtualedit     +X11
+browse          +cmdline_info    +digraphs        +find_in_path    +job             +localmap        -mouse_jsbterm   +netbeans_intg   +python/dyn      +startuptime     +terminfo        +visual          -xfontset
++builtin_terms  +comments        +dnd             +float           +jumplist        +lua             +mouse_netterm   +num64           +python3/dyn     +statusline      +termresponse    +visualextra     +xim
+byte_offset     +conceal         -ebcdic          +folding         +keymap          +menu            +mouse_sgr       +packages        +quickfix        -sun_workshop    +textobjects     +viminfo         +xpm
+channel         +cryptv          +emacs_tags      -footer          +lambda          +mksession       -mouse_sysmouse  +path_extra      +reltime         +syntax          +timers          +vreplace        +xsmp_interact
+cindent         +cscope          +eval            +fork()          +langmap         +modify_fname    +mouse_urxvt     +perl            +rightleft       +tag_binary      +title           +wildignore      +xterm_clipboard
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/usr/local/share/vim"
 f-b for $VIMRUNTIME: "/usr/local/share/vim/vim80"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I
/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-lin
ux-gnu/glib-2.0/include -I/usr/include/freetype2   -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc   -L. -Wl,-Bsymbolic-functions -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E   -L/usr/local/lib -Wl,--as-needed -o vim   -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgi
o-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE  -lm -ltinfo -lnsl  -lselinux   -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -
L/usr/local/lib  -L/usr/lib/x86_64-linux-gnu/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt    -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -lm

Type:

[x] Bug
[ ] Enhancement
[ ] Feature Request
[x] Question

OS:

[ ] All/Other
[x] Linux
[ ] OS X
[ ] Windows

Vim:

[ ] Terminal Vim
[x] GVim
[ ] Neovim

https://github.com/kshenoy/dotfiles/blob/5b215a460d6f03ee5be837b5a4afb6ae3dba06ef/vim/pack/bundles/start/bundles/plugin/bundles.vim#L6-L14
Try installing vim-plug before Vim starts.
I tested moving some plugins like vim-unimpaired into pack a/opt/b/plugin/plug.vim and load them via packadd b. It worked and I got vim-unimpaired and my colorscheme working at the start or after PlugInstall. Maybe pack/*/start/*/ does not work with vim-plug unless each plugin is lazy loaded.


ci: allow changing runners through config vars

Description
This PR:

allows changing runners for jobs in integration and cross-compile workflows via configuration variables
changes workflow triggers to: pull requests, pushes to the default branches, pushes to version tags
configures concurrency groups for workflows: cancel in-progress runs in pull requests if the HEAD moves

Testing

[x] ran integration workflow on ['self-hosted', 'linux', 'x64', 'xlarge'] https://github.com/pl-strflt/tf-aws-gh-runner/actions/runs/4687529039
[x] ran cross-compile workflow on ['self-hosted', 'linux', 'x64', '2xlarge'] https://github.com/pl-strflt/tf-aws-gh-runner/actions/runs/4687351779

Closing in favor of #3783.


lowering to FIRRTL for HILDialect

Implement an example of lowering transformation for HILDialect. The transformation should be based on MLIR prmitives.
The target for lowering should be FIRRTL.

HILDialect was removed, so inactual.


A council member can not see what a proposed runtime upgrade is nor validate it

https://github.com/threefoldtech/tfchain/pull/784#issuecomment-1634088699
@robvanmieghem why would we need to add this in 3.11.x? I don't think it's relevant on that short notice. Some trust must also exits between members of the council since these ppl are internals.

Since https://github.com/threefoldtech/tfchain/blob/development/docs/misc/validating_runtime.md was added all what is left here is some script to extract the proposed runtime from a council proposal.

Can you see the hash in the proposal?

and some metadata in the proposal like the version  would be a nice to have

You can't

You can only see the code as bytes

Since there is no easy way to do this I suggest we move this out of 3.11.x


ASE Integration

Is this pull request associated with an issue(s)?
No.
Description
This PR starts ASE integration. ASE has a lot of features and I do not plan to expose them all. This PR will focus on preparing input and computing energy derivatives.
TODOs

[x] Function for converting chemist::ChemicalSystem to ASE's Atoms object
[x] Call to NWChem's energy through ASE
[x] Call to NWChem's gradient through ASE
[x] Merge https://github.com/NWChemEx/Chemist/pull/426

🚀 [bumpr] Bumped! New version:v1.0.8 Changes:v1.0.7...v1.0.8


Documentation request: CodeMirror version support

Hello.  Nice looking plugin.
Is this for CodeMirror 6, 5, or something else, please?
It would help if the readme answered this question
Thanks

hi @StoneCypher
This library is only to use CodeMirror 5.
You can use in es6 style.
refer to https://colorpicker.easylogic.studio/colorpicker/api.html#es6-style

How to contribute?

@zahertalab
I wish I could tell you a little bit more.
Do you need codemirror 6 colorpicker?

+1

+1

Related https://github.com/replit/Codemirror-CSS-color-picker
https://github.com/replit/Codemirror-CSS-color-picker/issues/7


Feature Request : Sliding Scale for Long, Lat Controls

I would love sliders to fine tune control :
drive a bit more to the right or a bit more to the left.  The Sonata stock centering drives just a touch too far to the right for my taste.
Acceleration curves from very aggressive to very conservative - I want my car to accelerate like a golf cart (aka, very VERY slowly)
Braking curves from very aggressive to very conservative (this is there somewhat with following distance in stock "smart cruise" today).  For my purposes in normal traffic, I always want the car in front of me to be moving away from me, not following at a set distance.  This is obviously not possible in stop and go traffic.

We won't be adding sliders for this. As we slowly move to more end-to-end learned longitudinal policies it should start driving more like a human. For comma it's not worth it to spend time on these features if they are going to be replaced anyway.
Feel free to fork openpilot and change the values to your liking in the code. e.g.:
https://github.com/commaai/openpilot/blob/master/selfdrive/controls/lib/planner.py#L32

why close the thread?  I believe there is room for a more nuanced
conversation here.
On Mon, Nov 9, 2020 at 7:34 AM Willem Melching<EMAIL_ADDRESS>wrote:

Closed #2504 https://github.com/commaai/openpilot/issues/2504.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/commaai/openpilot/issues/2504#event-3973771855, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARVXXATKMOM3CJGEFE7QFH3SO7VVFANCNFSM4TOQBAQA
.

--
Jason Williams
cell<PHONE_NUMBER>
sent from Gmail Web


08.07.01

As an approver, I want to return a submitted expense claim that was not approved, denoting the claim status as returned and setting my name as the approver for the expense claim.

Previously done


Deploying to Heroku fails to fetch static assets

I created an instance of this cookiecutter and put it here. When I push to Heroku, the app launches but throws this exception when I try to use the app in a browser:
  File "/app/members/app.py", line 51, in render_error
    return render_template('{0}.html'.format(error_code)), error_code
  File "/app/.heroku/python/lib/python2.7/site-packages/flask/templating.py", line 128, in render_template
    context, ctx.app)
  File "/app/.heroku/python/lib/python2.7/site-packages/flask/templating.py", line 110, in _render
    rv = template.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/jinja2/environment.py", line 989, in render
    return self.environment.handle_exception(exc_info, True)
  File "/app/.heroku/python/lib/python2.7/site-packages/jinja2/environment.py", line 754, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/app/members/templates/500.html", line 2, in top-level template code
    {% extends "layout.html" %}
  File "/app/members/templates/layout.html", line 24, in top-level template code
    {% assets "css_all" %}
  File "/app/.heroku/python/lib/python2.7/site-packages/webassets/ext/jinja2.py", line 186, in _render_assets
    urls = bundle.urls()
  File "/app/.heroku/python/lib/python2.7/site-packages/webassets/bundle.py", line 787, in urls
    urls.extend(bundle._urls(new_ctx, extra_filters, *args, **kwargs))
  File "/app/.heroku/python/lib/python2.7/site-packages/webassets/bundle.py", line 746, in _urls
    *args, **kwargs)
  File "/app/.heroku/python/lib/python2.7/site-packages/webassets/bundle.py", line 600, in _build
    force, disable_cache=disable_cache, extra_filters=extra_filters)
  File "/app/.heroku/python/lib/python2.7/site-packages/webassets/bundle.py", line 546, in _merge_and_apply
    raise BuildError(e)
BuildError: [Errno 2] No such file or directory: '/app/members/static/libs/bootstrap/dist/css/bootstrap.css'

What steps did I miss?

I ended up pulling the dist/ line out of .gitignore and just checking in the assets that were compiled when I did runserver locally. I don't plan on changing those very much, so I'm not worried about it.

You need to bower install after installing pip packages.


avoid unnecessary Into

some function require Into<String> but only reference it.
a: Into<String> then b = a.as_ref();

Indeed, Into is unnecessary.
We will switch to &str in turn.

Removed unnecessary Into.
Basically, it is now used only in setter, add, and new functions.


more control over builds

For a single page application, its necessary to control build size. I'm a Webpack / React-ian and so I can control webpack to dynamically load chunks as needed. Eg. When I move from page A to page B, I load B's assets.
I noticed that this control isn't available on Elm and could be a big barrier against serious adopters who want to build production ready applications.
Would be cool to expose all the functionality that Webpack has on Elm / Elm-make
Good work on the Elm so far anyway, I'm taking it quite seriously :+1:

This is something we want to do long-term, but I don't think we'll be able to "just add it" as things stand.
I expect this will be added as things mature more and the companies using Elm start needing stuff like this more urgently. I'm going to close because I'm tracking this in my own personal plans.


Cannot repeat the ursim and ur_driver example in ROS2 humble

Below is the environment I am running:
OS: Ubuntu 22.04.2
ROS: humble 2 (desktop)
UR driver: source build (57b2541f5effc02534ade441935df4eb28456f54), confirmed in correct humble branch
localhost ip: <IP_ADDRESS>
URSim target robot: ur5e
URSim docker ip: <IP_ADDRESS>
Current situation:
Host can ping the ip <IP_ADDRESS>, however the ur_driver seem cannot reach the sim_ur5e (from the image it cannot get the correct TF).
Starting commands

start the ursim containerdocker run --rm -it -v "${HOME}/Development/universalrobots_ws/urcaps:/urcaps" --net ursim_net --ip <IP_ADDRESS> universalrobots/ursim_e-series

Enter the VNC GUI and load the external control to program and power on the robot.
New terminal and launch the driverros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur5e robot_ip:=<IP_ADDRESS>

As shown in the image, the driver cannot connect to the sim ur5e.

I have followed all the steps in the documents, but no luck to repeat what it has shown.
Anyone could give me a helping hand on this? Great appreciate!

Also from the image, the terminal which started the ur_driver keep saying that there are couple links transform cannot be done due to frame not exist.
I have successfully started this example, and created a guideline for myself.... but now I moved to a new clean install ubuntu22 pc, it cannot repeat as expected.
Need help from the community. Thanks

Closed because of the latest release of humble branch


Added Bitbucket provider

This is a pull request for issue #71. Bitbucket doesn't include a state parameter in the callback request, so I had to use cookies to persist the CSRF values (redirect uri, XsrfId, and correlation id). I'm not thrilled with using cookies, but since Bitbucket doesn't support it anyway, I guess it doesn't really matter (please correct me if I'm wrong).
Here's the Bitbucket documentation for their OAuth2 implementation that I used as a reference.
https://developer.atlassian.com/bitbucket/concepts/oauth2.html

Thanks @jrummell . I'll try and get in merged and do a new build on Friday

@jerriep Thank you!


u32 assembly parser cleanup

This PR cleans up code and comments in u32 operation parsers.

Thanks for cleaning up my typos and unfinished comments :)

No problem! :)


WIP: Update for insertBefore API change as per RFC287

enforces insertBefore=null as only allowed value
Adds implementation for default replace semantics

This is a breaking change!
Closes #5
To Do:

[x] Rebase after #6 is merged
[x] Decide if supporting pre-Glimmer versions using ember-wormhole is still worth the effort
[ ] Prepare to remove the -in-element-replace component from the build for Ember versions with public in-element support

@simonihmig - Have you considered using a helper instead of a component? I think it has the right semantics...
I made a demo Code Sandbox with some basic tests here.
import { helper } from "@ember/component/helper";

export default helper(function clearElement([element] /*, hash*/) {
  while (element.firstChild) {
    element.removeChild(element.firstChild);
  }

  return element;
});

Have you considered using a helper instead of a component? I think it has the right semantics...

Yes, indeed I thought a while about it, but chose to use a component as I was not so sure if a helper would be the right abstraction here. Specifically, as it has no rendering related lifecycle hooks, I was not sure if it was safe to assume when it will run related to -in-element, if there could be some (future) Ember optimizations (caching, timing, lazy evaluation, what the heck) that could render those assumptions void etc.

I made a demo Code Sandbox with some basic tests here.

Ah, that looks really nice! What I specifically like here, being related to what I said above, is that by calling the helper as the target argument for -in-element and returning the element from the helper, we actually do have this guarantee effectively that the helper will have run before -in-element can do anything!
Will refactor my implementation later, thanks a bunch! 🙏

No problem! Was fun to hack on 😃.

Specifically, as it has no rendering related lifecycle hooks, I was not sure if it was safe to assume when it will run related to -in-element, if there could be some (future) Ember optimizations (caching, timing, lazy evaluation, what the heck) that could render those assumptions void etc.

Right, the thing about my implementation in the demo is that the private -in-element helper is passed the element by way of the helper. This ensures that by the time -in-element operates on it, it will have been cleared. It also guarantees that if the bound element value updates, the helper will be re-triggered and clear contents again (essentially with the same timing as if you had used {{-in-element this.someElement}} directly). Since -in-element and in-element are both permanently stable until the bound first argument changes, we have exactly the same stability guarantees with the helper solution that we do with in-element directly.

@rwjblue updated the PR with your helper approach. Ready for another review, if you have the time!


Rule for disallowing chaining

Chaining (in any of its forms) is problematic for users seeking to produce an optimized build of lodash.
This plugin should provide a rule that disallows _.chain(), _(), etc.

Hi, and thanks for taking the time to open the issue!
I agree with the article about chaining being problematic when trying to optimise for build size.
Although chaining itself has its merits (lazy evaluation and shortcut fusion), ESLint rules should not be opinionated, so I think what we'll do is change the rule prefer-chaining to a more generic rule chaining with always and never options.
This, alongside issue #80, would probably help users who prefer optimising for smaller builds (e.g. for using with webpack).
So this rule is accepted, but will take a bit of time since it requires making the rules work with specific imported functions.

[eslint-plugin-lodash-fp]((https://github.com/jfmengels/eslint-plugin-lodash-fp/) is opinionated on this matter, and thus has a no-chain. It's not appropriate if you use vanilla Lodash, but it should be fine until the rule is added here.
I agree with @ganimomer that a prefer-chaining rule would be better for this plugin, though I'm not sure what it should when it is set to something like always. Forbid composition using flow and/or forbid nested Lodash function calls?

Thanks for the quick feedback!
I tend to agree that a general chaining rule could be a good replacement for the existing prefer-chain rule, simply because chaining: always|never is extremely intuitive.
However, the existing prefer-chain rule isn't merely opinionated about the existence of chains -- it's opinionated about avoiding heavily-nested functions, like this abomination: _.map(_.filter(_.sortBy(arr, predicate),exists),toId);
In my case, I would like to be able to forbid nesting and chaining.  If we remove prefer-chain, we will likely need to replace it with separate chaining and no-nesting rules.

I should also apologize for wording this issue rather directly.  When we decide on an approach, I might have some time to take a look at implementing at this in the next few weeks (unless we want to deliberately do #80 first).

Hi,
I think this and #80 are really linked - Part of the point of disallowing chaining is using individual functions, and since the plugin doesn't work on individually used functions yet it would make most of the plugin useless. (it only checks for a _ symbol - or a different symbol by configuration)
This is why I added it to a major version milestone - it would take some work making it work, it would probably require some newer ESLint features, and even then it might be slower.

So following my previous statement - chaining: always|never sounds intuitive, but if it's set to always, a no-nesting rule would make every nested call a doubly reported line, which isn't what we want.
Why would we want a no-nesting rule that's specific to Lodash methods anyway, if not for chaining? _.flow and its counterparts don't discriminate between Lodash and regular functions.


Filter and sorting custom function not implemented and is present in the documentation

Hi
I want to implement a custom function for sorting and filtering
Is present in the documentation but not in the px-data-table
Can you pls help me with this?

There are examples using the filter-function-name and sort-function-name properties of px-data-table-column in this file (see also line 91, 108 and 122). As stated in the API, we recommend namespacing them when attaching them to window.


Create ReverseLinkedList.cs

Runtime: 87 ms, faster than 93.30% of C# online submissions for Reverse Linked List.
Memory Usage: 39.1 MB, less than 7.26% of C# online submissions for Reverse Linked List.

I'm kind of surprised that my solution is faster than the default one (with the pointers).
I had no time this week and it felt like the easiest solution 😩

I'm kind of surprised that my solution is faster than the default one (with the pointers). I had no time this week and it felt like the easiest solution 😩

wow, nice job! looks like using additional memory always gives better performance in leetcode :D


Improve Cell format

To improve the Cell format to meet ParadeDB's requirements:

Bytea => '\xABCD'
Uuid => default format implment  '123e4567-e89b-12d3-a456-426614174000'
Array types => [1, 2, null, 3]

when testing bytea, I meet some problem. It's draft Now.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 5 committers have signed the CLA.:white_check_mark: burmecia:white_check_mark: kysshsy:x: romaingrx:x: imor:x: remilapeyreYou have signed the CLA already but the status is still pending? Let us recheck it.

merge upstream changes
resolve conflict:
Cell::TimestampTz => Cell::Timestamptz, upstream also implement it but with different name.
Use upstream's implementation for the overlapping parts.

merge upstream changes resolve conflict: Cell::TimestampTz => Cell::Timestamptz, upstream also implement it but with different name. Use upstream's implementation for the overlapping parts.

Thank you! I've fixed the CLA issue. @rebasedming will take a look


lets add instructions on how to add missing archetypes to the project

lets add instructions on how to add missing archetypes to the project

[merge]


Add show-only subcommand in CLI + Fish completion file

Hi there,
Thanks for this excellent tool.
I've used this tool to show 2FA codes using the Albert launcher.
https://github.com/bergercookie/awesome-albert-plugins/tree/master/plugins/pass_totp_cli

Thanks for you contribution. I'll release a new version in a few minutes. :)


Dimmer2 Light 0 switch type

Testing on one of my dimmer2's, I noticed that a RGB switch device is created, while the device only supports on/off + brightness, in mqtt_templates.txt:
payload={"name": "%shelly_id% Light 0", "cmd_t": "~light/0/set", "stat_t": "~light/0/status","payload_on": "{\"turn\":\"on\"}","payload_off": "{\"turn\":\"off\"}", "value_template": "{{value_json.ison}}","stat_tpl": "{%if value_json.ison==true%}ON{%else%}OFF{%endif%}","brightness_command_topic":"\~light/0/set","brightness_state_topic":"~light/0/status","brightness": true,"color_mode": true,"supported_color_modes": ["onoff","brightness"], "brightness_scale":100, "bri_val_tpl":"{{value_json.brightness}}", "avty_t": "~online", "pl_avail": "true", "pl_not_avail": "false", "uniq_id": "%shelly_id%-light-0", "qos": 0, "~": "shellies/%shelly_id%/"}
I guess shellyteacher4domo is doing this correctly, but Domoticz MQTT Autodiscovery is creating the RGB dimmer device, while a regular (single color) dimmer would be better.

Latest domoticz image from docker hub:
Version: 2023.1 (build 15182)
Build Hash: 34815c1a9
Compile Date: 2023-04-10 17:22:59
dzVents Version: 3.1.8
Python Version: 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110]
This is the dimmer device it created:

While this is the dimmer created by Shelly_MQTT:

I see. The old plugin creates devices for itself, so it is irrevelant, as Domoticz MQTT AD hardware creates the devices in this case.
It may look otherwise on the GUI, but dimming is working, isn't it?

Yes, it's working. But the old one (Shelly_MQTT) is more convenient, as you can turn on / off the light with one click. The new one requires to go through the color interface to access the on & off buttons, which adds no value.

Maybe if we change "supported_color_modes": ["onoff","brightness"] in the template to "supported_color_modes": ["brightness"] it may be better.

Yes, that fixed it.

Opened: PR#15


use ua-parser?

the flaws of UA sniffing are due to 1) making assumptions about future UAs and 2) reinventing UA parsing and adding flaws.
for 2 you can at least leverage previous and robust work..
https://github.com/tobie/ua-parser uses ua-parser which comes from code Google uses to UA parse. plus it was ported by your colleague! :)
alternatively you could use https://github.com/bestiejs/platform.js/ which is the only other reliable parser in JS, IMO

Sounds good... though the project is 18 months old. So is this a pull request? :-)

it's certainly an opportunity for someone else. :)
/me fixes issue title

(didnt notice it was old. :)