Unexpected number of traffic lanes

The last test in A/B Street has the following specification:
            (
                "https://www.openstreetmap.org/way/335668924",
                vec!["lanes=1", "sidewalk=none"],
                DrivingSide::Right,
                "SddS",
                "vv^^",
            ),

Why do we assume two traffic lanes here?

Ah, great question. What does lanes=1 without oneway=yes mean? In practice, I suspect this alleyway is too narrow to allow two vehicles to pass each other. Either there's room for one to pull off to the side temporarily or one of them just has to reverse out of the alley. What's the ideal way to represent this?
A/B Street currently just pretends there's one lane each direction and ignores lanes=1. The lane width guessed is hopefully narrow. Another oddity here is that sidewalk=none translates into the "shoulder" lane for walking on either side. Both of these choices are very questionable. What should this common library / specification do for this case of a narrow alleyway without explicit one-way restrictions?

Yeah, makes sense. So, the general rule is we ignore number of lanes if it's less than two and no oneway=yes is specified?
Good questions about sidewalks and lanes. Maybe we have to make these features optional? So that user can control the result?
And anyway I think we should compute explanation for the assumptions we made about lane number as well as about shoulder lanes and add them into the lane specification.

Now all tests from A/B Street pass.

So, the general rule is we ignore number of lanes if it's less than two and no oneway=yes is specified?

Correct. That's a much simpler summary of the current implementation in Rust: https://github.com/a-b-street/abstreet/blob/81af2625116cb7c710ab52d85c224083c37459a0/map_model/src/make/initial/lane_specs.rs#L92

Maybe we have to make these features optional? So that user can control the result?

I think so. We could omit this type of behavior entirely, but then a caller has to detect these edge case situations anyway.
If the user doesn't enable the feature for this case, what's the correct output for this example? Just a single general-purpose lane in one direction, meaning we assume oneway=yes?

compute explanation for the assumptions we made about lane number as well as about shoulder lanes and add them into the lane specification.

Definitely. I like the source field that @tordans mocked up in the discussion

Now all tests from A/B Street pass.

Nice! It's great to see two new implementations, considerably simpler than the Rust version. I don't know if the existing tests are exhaustive. One idea for generating more cases is

I could port the Kotlin or Python implementation back to Rust
And run it on every single way in an area, comparing the two Rust implementations
When they differ, that means the original set of test cases wasn't exhaustive

I hope to have some time this week to do this. Does that sound like a useful next step for me?

considerably simpler than the Rust version. I don't know if the existing tests are exhaustive.

Yeah, it was just test-driven. So I'll continue by writing new tests from real OSM ways and trying to support them.

I could port the Kotlin or Python implementation back to Rust

Maybe you just extract your Rust implementation here? I'm sure my implementation is less reliable.

Edit: or actually, just generate a JSON test case for every single way in an area using the Rust implementation. Then run the Python/Kotlin implementation against them, look for discrepancies, and boil down to the simplest test case

Yeah! This will do!


[Snyk] Fix for 5 vulnerabilities

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `npm` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

package.json
package-lock.json

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

484/1000  Why? Has a fix available, CVSS 5.4
Open Redirect SNYK-JS-GOT-2932019
Yes
No Known Exploit

646/1000  Why? Proof of Concept exploit, Has a fix available, CVSS 6.5
Validation Bypass SNYK-JS-SANITIZEHTML-1070780
Yes
Proof of Concept

539/1000  Why? Has a fix available, CVSS 6.5
Access Restriction Bypass SNYK-JS-SANITIZEHTML-1070786
Yes
No Known Exploit

479/1000  Why? Has a fix available, CVSS 5.3
Regular Expression Denial of Service (ReDoS) SNYK-JS-SANITIZEHTML-2957526
Yes
No Known Exploit

684/1000  Why? Has a fix available, CVSS 9.4
Arbitrary Code Execution SNYK-JS-SANITIZEHTML-585892
Yes
No Known Exploit

(*) Note that the real score may have changed since the PR was raised.

Commit messages

Package name: gatsby
    The new version differs by 148 commits.

0c6cd61 chore(release): Publish
5e8e621 chore: Update main README (#36954)
7130cd4 test(gatsby): Slices API integration tests (#36747)
6496eed chore(release): Publish next
bc7ac84 chore: preserve previous webpack stats derived values, even if we restart webpack itself (#36980)
2b5af32 fix: drop `__renderedByLocation` prop when calculating slice props hashes and don't expose it to slice component (#36979)
cc1ee9b chore(release): Publish next
6a53861 chore(gatsby-link): Correct type export (#36968)
0ad6314 fix(gatsby-graphiql-explorer): Use upstream exporter package (#36966)
964265c chore(release): Publish next
b624442 chore: Update peerDeps (#36965)
b2ab092 chore(release): Publish next
e2a14bf feat(gatsby): Slices <> partial hydration interop (#36960)
0083e62 fix(deps): update starters and examples gatsby packages to ^4.24.7 (#36957)
68e9cab chore(changelogs): update changelogs (#36958)
b9eb8d2 chore(deps): update dependency autoprefixer to ^10.4.13 for gatsby-plugin-sass (#36934)
58c37ea chore(deps): update dependency @ jridgewell/trace-mapping to ^0.3.17 for gatsby-legacy-polyfills (#36933)
a5e4c47 fix(deps): update dependency body-parser to ^1.20.1 for gatsby-source-drupal (#36940)
c86aa7e chore(docs): Add clarification for Pro Tip on Part 4 of tutorial (#36918)
d5c775a feat(gatsby): handle graphql-import-node bundling (#36951)
59e2976 feat(gatsby-remark-embed-snippet): added csproj to language map so it will be recognized as xml (#36919)
c8a7dda chore(docs): Valhalla Content Hub Reference Guide (#36949)
3044280 fix(gatsby): stitch slices if just page html was regenerating without any of used slices regenerating (#36950)
10abdcb chore(release): Publish next

See the full diff

Package name: gatsby-transformer-remark
    The new version differs by 148 commits.

0c6cd61 chore(release): Publish
5e8e621 chore: Update main README (#36954)
7130cd4 test(gatsby): Slices API integration tests (#36747)
6496eed chore(release): Publish next
bc7ac84 chore: preserve previous webpack stats derived values, even if we restart webpack itself (#36980)
2b5af32 fix: drop `__renderedByLocation` prop when calculating slice props hashes and don't expose it to slice component (#36979)
cc1ee9b chore(release): Publish next
6a53861 chore(gatsby-link): Correct type export (#36968)
0ad6314 fix(gatsby-graphiql-explorer): Use upstream exporter package (#36966)
964265c chore(release): Publish next
b624442 chore: Update peerDeps (#36965)
b2ab092 chore(release): Publish next
e2a14bf feat(gatsby): Slices <> partial hydration interop (#36960)
0083e62 fix(deps): update starters and examples gatsby packages to ^4.24.7 (#36957)
68e9cab chore(changelogs): update changelogs (#36958)
b9eb8d2 chore(deps): update dependency autoprefixer to ^10.4.13 for gatsby-plugin-sass (#36934)
58c37ea chore(deps): update dependency @ jridgewell/trace-mapping to ^0.3.17 for gatsby-legacy-polyfills (#36933)
a5e4c47 fix(deps): update dependency body-parser to ^1.20.1 for gatsby-source-drupal (#36940)
c86aa7e chore(docs): Add clarification for Pro Tip on Part 4 of tutorial (#36918)
d5c775a feat(gatsby): handle graphql-import-node bundling (#36951)
59e2976 feat(gatsby-remark-embed-snippet): added csproj to language map so it will be recognized as xml (#36919)
c8a7dda chore(docs): Valhalla Content Hub Reference Guide (#36949)
3044280 fix(gatsby): stitch slices if just page html was regenerating without any of used slices regenerating (#36950)
10abdcb chore(release): Publish next

See the full diff

Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Open Redirect
🦉 Regular Expression Denial of Service (ReDoS)
🦉 Arbitrary Code Execution

👷 Deploy Preview for relaxed-rolypoly-ea9b8f processing.

Name
Link

🔨 Latest commit
73b4a9ef4c90d774cd0fb959944af2e835650c90

🔍 Latest deploy log
https://app.netlify.com/sites/relaxed-rolypoly-ea9b8f/deploys/636aca46261c310009a689cc


suggestion: tile pathing

It would be nice to see a tile path between the current tile and destination tile

Pathfinder on the plugin hub does this.
https://github.com/Milo-Piazza/pathfinder


Can't build starlight docs

What version of starlight are you using?
^0.28.2
What version of astro are you using?
^4.15.3
What package manager are you using?
pnpm
What operating system are you using?
Mac
What browser are you using?
Chrome
Describe the Bug
When trying to run pnpm build, which runs astro check and asto build the build fails at some point.
When having an existing dist folder the check fail, throwing 14 error and hundreds of warnings all coming from the dist folder.
When deleting the dist folder, the command fails with this error:
The requested module 'nanoid/non-secure' does not provide an export named 'default'
Which I am not even using because I just have some .md files and it happens even in an empty project using pnpm create astro --template starlight.
Link to Minimal Reproducible Example
https://stackblitz.com/github/withastro/starlight/tree/main/examples/markdoc?on=stackblitz
Participation

[ ] I am willing to submit a pull request for this issue.

Thanks for the feedback.
I think there are 2 issues here, the first one being the warnings that are displayed when running pnpm build (which at the moment runs astro check && astro build) with an existing dist folder. This is a known behavior that can be fixed by adding "exclude": ["dist"] to the tsconfig.json file until changed upstream.
Regarding the second error: The requested module 'nanoid/non-secure' does not provide an export named 'default':

When trying locally in a new project (using pnpm create astro --template starlight as you mentioned), I was not able to reproduce the issue.
When running npm run build in the Stackblitz link you provided, I was also not able to reproduce the issue.

Could you confirm you're also seeing this error in the provided Stackblitz link?

I could fix the dist error thank you.
You were correct the stackblitz link does not throw that error I am sorry.
After creating a new astro starlight project in an empty folder which was not in a monorepo and transferring all the code into the monorepo folder it mysteriously run the build command without any issues.
Thank you for your help.

Happy to hear, thanks for following up.


After running "youtube-dl -U", I get "Your copy of avconv is outdated update avconv to version 10-0 or newer if you encounter any errors."

You can try updating avconv (old versions may not support some of the formats used by YouTube). If you want to disable merging DASH formats, you can add -f best to your configuration file.
If youtube-dl doesn't work, we'll need the output you get with the --verbose option for debugging the problem

What is the recommended way to proceed? Update anconv or disable merging dash formats? This ubuntuforum thread (http://ubuntuforums.org/showthread.php?t=2277302) makes me think that choosing well is crucial.

if you want to get resolutions higher that 1280p you'll have to update avconv, if you don't mind which resolution you get you can disable merging.

hi, jamieMF. thanks for your comment. I don't need resolutions higher than 1280p.

so i guess i'm fine with the other method.

How exactly do I update avconv?

What's your operating system? If you're using ubuntu, apt-get is your friend.

yan,
Linux Mint. I already have avconv, so how does apt-get help?

I'm not familiar with Linux MInt, while I think it's similar to Ubuntu. The following commands may help:
sudo apt-get update
sudo apt-get upgrade

How to update avconv is out of the scope of youtube-dl. A Linux Mint forum should give you more information on it.


Update installation.md

Checklist

[x] No CHANGELOG update needed

[x] No new tests needed

[ ] No documentation update needed

Does this skipping library function work while running capa IDA Pro plugin?

Does this skipping library function work while running capa IDA Pro plugin?

Yes, in IDA, capa uses IDA's native support to skip/identify library functions.

Does this skipping library function work while running capa IDA Pro plugin?

Yes, in IDA, capa uses IDA's native support to skip/identify library functions.

Nice. But It seems while running capa using smda extractor, library function doesn't get skipped.

C:\Users\Rony>capa -v -b smda C:\Users\Rony\Desktop\dumps\1c7897a902b35570a9620c64a2926cd5d594d4ff5a033e28a400981d14516600_decrypted
loading : 100%|█████████████████████████████████████████████████████████████████| 579/579 [00:00<00:00, 953.29 rules/s]
matching: 100%|█████████████████████████████████| 704/704 [01:36<00:00,  7.28 functions/s, skipped 0 library functions]
md5                     fa59c8c0ac5c32eaa7cd853615c993f9
sha1                    784882120f71feacfe22cf3e14e461a025f151da
sha256                  ec1c29cb6674ffce989576c51413a6f9cbb4a8a41cbd30ec628182485a937160
path                    C:\Users\Rony\Desktop\dumps\1c7897a902b35570a9620c64a2926cd5d594d4ff5a033e28a400981d14516600_decrypted
timestamp               2021-07-21T20:50:41.835445
capa version            2.0.0
format                  auto
extractor               SmdaFeatureExtractor

Don't know where to report this (possibly related to siglib), so posting it here. The capa rule encrypt data using RC4 PRGA matches on the function offset0x10061294 of the file mentioned above but according to IDA FLIRT, it's a library function. So, maybe there's a way siglib can identify it?

yes, unfortunately SMDA doesn't integrate with FLIRT (yet). only viv and IDA use this information.
we'd hoped that this would simply limit the number of results shown (don't show hits from lib functions) and improve performance. here, it looks like the RC4 rule is a bit too lose and FPs on the lib function.

yes, unfortunately SMDA doesn't integrate with FLIRT (yet). only viv and IDA use this information.

will it someday? :)

we'd hoped that this would simply limit the number of results shown (don't show hits from lib functions) and improve performance. here, it looks like the RC4 rule is a bit too lose and FPs on the lib function.

Should I open a issue then?

will it someday? :)

this isn't currently a priority for us, though if this is something you'd use often, we can consider it. also, it should be a fairly straightforward port for a contributor to make. any chance you could a stab? i can walk you through the process.

Should I open a issue then?

yes, please!

will it someday? :)

this isn't currently a priority for us, though if this is something you'd use often, we can consider it. also, it should be a fairly straightforward port for a contributor to make. any chance you could a stab? i can walk you through the process.

I would love to but atm I have still lot to learn.


Commit 4f8393e2e073cf8125e0788a8936e07fafa1fd8b breaks npm install testem at socket.io#1.3.7-pure

npm ERR! Error: No compatible version found<EMAIL_ADDRESS>npm ERR! Valid install targets:
npm ERR! ["0.3.8","0.4.0","0.4.1","0.5.1","0.5.3","0.6.0","0.6.1","0.6.3","0.6.4","0.6.5","0.6.6","0.6.7","0.6.8","0.6.9","0.6.10","0.6.11","0.6.12","0.6.14","0.6.15","0.6.16","0.6.17","0.6.18","0.7.0","0.7.1","0.7.2","0.7.3","0.7.4","0.7.5","0.7.6","0.7.7","0.7.8","0.7.9","0.7.10","0.7.11","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","0.8.5","0.8.6","0.8.7","0.9.0","0.9.1","0.9.1-1","0.9.2","0.9.3","0.9.4","0.9.5","0.9.6","0.9.7","0.9.8","0.9.9","0.9.10","0.9.11","0.9.12","0.9.13","0.9.14","0.9.15","0.9.16","1.0.0-pre","1.0.0-pre2","1.0.0-pre3","1.0.0-pre4","1.0.0-pre5","0.9.17","1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.1.0","1.2.0","1.2.1","1.3.0","1.3.1","1.3.2","1.3.3","1.3.4","1.3.5","1.3.6","1.3.7"]
npm ERR!     at installTargetsError (/usr/lib/node_modules/npm/lib/cache.js:719:10)
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:638:10
npm ERR!     at saved (/usr/lib/node_modules/npm-registry-client/lib/get.js:148:7)
npm ERR!     at /usr/lib/node_modules/graceful-fs/polyfills.js:133:7
npm ERR!     at Object.oncomplete (fs.js:108:15)
npm ERR! If you need help, you may report this log at:
npm ERR!     http://github.com/isaacs/npm/issues
npm ERR! or email it to:
npm ERR<EMAIL_ADDRESS>npm ERR! System Linux 3.14.20-20.44.amzn1.x86_64
npm ERR! command "node" "/usr/bin/npm" "install" "-g" "testem"
npm ERR! cwd /root
npm ERR! node -v v0.10.36
npm ERR! npm -v 1.3.6
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /root/npm-debug.log
npm ERR! not ok code 0

Thanks,
@patocallaghan could you push your forks to the registry?
Otherwise we run into issue with locked company networks and npm < 2.

sure thing, I won't get to it until later tonight though


Add support for alternative Revoke Endpoint

Current Implementation
The connector is using the DELETE /signerCertificate endpoint to revoke a certificate.
Suggested Enhancement
Optionally use the new alternative endpoint POST /signerCertificate/delete from https://github.com/eu-digital-green-certificates/dgc-gateway/pull/64
The usage of this alternative endpoint should be configurable.
Expected Benefits
Users with clients behind Load Balancers which do not allow DELETE Request with Payload can also send revoke requests to DGCG.

Hi @f11h , when it's planned to add this support?

Hi @gregsons, I will try to do it within this week.
Maybe you are able to provide a PR with a suggestion on how to implement it?

Hello @f11h ,
We managed to implement a workaround in our national backend, so from PL's perspective there's no need to add support in dgc-lib.

Oh thats good to hear - Then I will remove it from my "personal backlog". But I will not delete this task, maybe I will find some time late to implement it :)


Cybersecurity: 2.4 TCP

Description
Explain in detail about TCP (Transmission Control Protocol).
Note:

If interested, mention in which format you want to contribute: Documentation or Video
Please avoid copy/paste, BE YOURSELF
Try to explain with Diagrams
Changes should be made inside the Cyber_Security/ directory & Cyber_Security branch.
Task will be assigned on first come first serve
Check it out Contribution Guidelines

Can this issue be assigned to me ?

Can this issue be assigned to me ?

Wait until your previous work is merged!

Can I work on this topic?

Can I work on this topic for documentation?

Go with it!

Thanks @Anant1711

Yes, it is completed. I will submit it tomorrow.


Call back(s)

This?
https://nodejs.org/api/async_hooks.html
Need a callback that gives me ability to modify saved file name dynamically.

Ended up including a rename method callback via ff2bb8c70729277dc4f8a5c49b649dac1372febc
There may be more elegant ways, but this suffices for now.


updated v2.7.10

Closes #102

Checklist

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

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

@conda-forge-admin, please rerender

Please close any duplicates opened by autotick-bot since they won't contain the setuptools bump.
As far as I can tell, this is unrelated to the recent setuptools issue regarding the removal of distutils.msvccompiler.

I don't understand why this is breaking and I'm out of time at the moment. Hopefully I can have a look tomorrow.

@conda-forge-admin, please rerender

I suspect this was https://github.com/conda-forge/conda-forge-repodata-patches-feedstock/pull/308. The timing lines up.

@conda-forge-admin, please rerender

@brandonwillard, thanks for the PR https://github.com/aesara-devs/aesara/pull/1131 to solve https://github.com/aesara-devs/aesara/issues/1129!
Shall we skip the conda-forge release of rel-2.7.10 and target rel-2.7.11 instead?

Shall we skip the conda-forge release of rel-2.7.10 and target rel-2.7.11 instead?

Yeah, that sounds good.


e2e key export uses strange AES-CTR construction

I've been trying to implement a reader for the exported key format (so I can have a hacky way of getting around vector-im/riot-web#6454 by downloading my entire key backup and then removing the parts which I don't want to share) in Python, but have discovered that the description of the format leads to some confusion -- I had to read the matrix-react-sdk source code to understand what was going on.
In short, currently the spec says:

Serialize the JSON object as a UTF-8 string, and encrypt it using AES-CTR-256 with the key K generated above, and with a 128-bit cryptographically-random initialization vector, IV, that has bit 63 set to zero. (Setting bit 63 to zero in IV is needed to work around differences in implementations of AES-CTR.)

However, IV is a bit of a strange term for AES-CTR -- usually you would refer to a "counter" and "nonce" (which are combined in the construction to produce the IV). I imagine most people would assume that the "IV" is the nonce -- because almost all AES-CTR constructions share nonces and not initial counter values, but in your case you are sharing an initial counter value and have a zero-length nonce.
Two questions:

Is it possible to clarify this in the spec, since the current wording is ambiguous -- and given this is an unusual construction should be probably be pointed out.
Is there a particular reason for this kind of construction? Why not share a nonce like most AES-CTR constructions? Would there be an interest to release v2 of this format to change this?

If you're doing this in python, there already exist an implementation for this here https://github.com/poljar/matrix-nio/blob/master/nio/crypto/key_export.py as well as in the python-sdk E2E branch.

I should've checked whether it existed in matrix-nio. Well it's too late now, I've already written it. :wink:

As a very late (sorry) partial-answer to this, the reason for this construction seems to be simply to allow more randomness to be added.  If you just use a nonce and a counter, then you have 64 bits of randomness, whereas with this construction, you get 127 bits of randomness.
Agreed, however, that there could be more words added to explain the construction.  (Not to mention, that saying "Setting bit 63 to zero" is unclear, as it doesn't specify which direction you're counting bits from, and what number you start counting from.)


Pointshop Index error

[currently running deathrun]
When you press F3 to opn the pointshop, it opens, but you cant move your mouse, and if you press F3 again it will open a new one, so they forever overlay, not being able to close them, i also in the top left see my models.
Console Lua Error:

[ERROR] addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80: attempt to index field 'Entity' (a nil value)

SetData - addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80
Init - addons/pointshop-master/lua/pointshop/vgui/dpointshopmenu.lua:253
Create - lua/includes/extensions/client/panel/scriptedpanels.lua:37
ToggleMenu - addons/pointshop-master/lua/pointshop/cl_init.lua:27
func - addons/pointshop-master/lua/pointshop/cl_init.lua:79
unknown - lua/includes/extensions/net.lua:32

[ERROR] addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80: attempt to index field >'Entity' (a nil value)

SetData - addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80
Init - addons/pointshop-master/lua/pointshop/vgui/dpointshopmenu.lua:253
Create - lua/includes/extensions/client/panel/scriptedpanels.lua:37
ToggleMenu - addons/pointshop-master/lua/pointshop/cl_init.lua:27
func - addons/pointshop-master/lua/pointshop/cl_init.lua:79
unknown - lua/includes/extensions/net.lua:32

[ERROR] addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80: attempt to index field >'Entity' (a nil value)

SetData - addons/pointshop-master/lua/pointshop/vgui/dpointshopitem.lua:80
Init - addons/pointshop-master/lua/pointshop/vgui/dpointshopmenu.lua:253
Create - lua/includes/extensions/client/panel/scriptedpanels.lua:37
4. ToggleMenu - addons/pointshop-master/lua/pointshop/cl_init.lua:27
5. func - addons/pointshop-master/lua/pointshop/cl_init.lua:79
6. unknown - lua/includes/extensions/net.lua:32

Are you running any custom items?

I'm running playermodels and a vape so far, apart from that its all default

I've got quite a few playermodels, could it be one of them?

Are you running the latest version?
Did these issues begin before or after you added these additional items?
Can you try running the server without them?
Does it work on a different gamemode? (Sandbox?)

Running the latest version✔
Still doesn't work on Sanbox ☓
It works when I remove them ✔
(Items were added straight away)

Yeah your items aren't working properly. You're probably missing models or something.

Okay, thanks. 👍 :)


Add class to the div element

Please add option to add CSS classes to the div element

The package is understandably using div that Turnstile can mount to. The annoyance comes using flex with gaps or grid in CSS and having invisible Turnstile implementation. Since it's invisible, I have to manually wrap it whole in display: none element and manage the state myself (show/hide) so it doesn't always break my form design.
This is just a nitpick, but it's one less wrapping element, because I could change the class prop of your component instead of my wrapping element

My only concern with adding a class prop is that it's not something that svelte supports - i.e. you couldn't pass scoped classes
Perhaps there is a better solution, like an invisible option on the component - could you share an example of your show/hide logic?

Is there a reason why a simple export can't be used here? I ran into the same need as @FluffyDiscord. While not the end of the world this seems like a quick convenience fix.
Example of what that might look like:
<script lang="ts">
  export let classes = '';
</script>

{#if loaded && mounted}
    {#key $$props}
        <div use:turnstile  class={classes} />
    {/key}
{/if}

You can also take it a step further and update the $$Props type in your component then the user could simply pass class as they normally would for an element.
types.ts
import type { SvelteHTMLElements } from 'svelte/elements';
export type HTMLTag = keyof SvelteHTMLElements;
export type ElementProps<K extends HTMLTag> = SvelteHTMLElements[K];

Component.svelte
$$Props = { theme: TurnstileTheme; size: TurstileSize; ...} & ElementProps<'div'>;
export let {
   theme,
   size,
} = {
  theme: 'auto',
  size: 'normal',
  ...
} as $$Props;

By exporting your props in this manner you'll be able to pass class in directly:
UserComponent.svelte
<Turnstile siteKey="SITE_KEY" class="flex justify-center" />

Since it's been requested a few times now I've gone ahead and added this in v0.7.0 - I'm not a massive fan but I can definitely understand the value! Hopefully in the future I can refactor this component to be an action instead and give devs full control of the place it's mounted into.
cc: @FluffyDiscord @blujedis

@ghostdevv think this is the right call gracias.


Issue-#151

Description
Transaction storage (indexing) is a fundamental component of any blockchain system. For M1, this is P0
closes #151
Type of change
Please mark the options that are relevant.

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?

[x] Unit tests

_REPLACE_ME: Describe the tests and that you ran to verify your changes. If applicable, provide steps to reproduce. Bonus points for images and videos or gifs.

[x] make test_all
[x] LocalNet

Checklist

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have tested my changes using the available tooling

Follow up created to integrate the indexer into the bus


Style can't change

Hi, i want to change style of dropdown autocomplete. But it's still same like default. Do you know what's wrong?

Can you share an example of what you are trying?
There are quite a few properties available for styling:
https://github.com/maxkordiyak/react-native-dropdown-autocomplete#properties

<Autocomplete
style={styles.inputBox3}
scrollToInput={ev => {}}
handleSelectItem={(item, id) => this.handleSelectItem(item, id)}
onDropdownClose={() => {}}
onDropdownShow={() => {}}
data={projects}
minimumCharactersCount={1}
highlightText
valueExtractor={item => item.title }
rightContent
rightTextExtractor={item => item.author}
placeholder="Pilih proyek"
/>
const styles = StyleSheet.create({
inputBox3:{
width: wp(90),
height: hp(6),
borderRadius:5,
borderWidth: 0.5,
borderColor: '#000000',
backgroundColor: '#F5F5F5',
fontSize:16,
color:'#000000',
marginVertical: 5,
}
});
I'm using responsive screen in my style

I see, instead of style={styles.inputBox3} try some of the other style properties we have like inputStyle={styles.inputBox3}.
Full list:

It's working!! But, I don't want to use renderIcon. When i deleted renderIcon, the place of that icon is not deleted. The text is still next to icon place

.

Try:
inputStyle={{ paddingLeft: 10 }}

placeholder="Whatever"

you know I'm trying to find the right styles for the last 2 hours. They really need clear explanation or examples.


Uploading symlink seems broken in 1.25.0

After updating jfrog-cli to version 1.25.0, symlinks are not uploaded anymore.
$ ls -l
total 8
lrwxr-xr-x  1 user  group   5 May  9 16:15 foo -> hello
-rw-r--r--  1 user  group  12 May  9 16:15 hello
$ ~/Downloads/jfrog rt upload --flat=false "*" repo
[Info] [Thread 0] Uploading artifact: foo
[Info] [Thread 2] Uploading artifact: hello
{
  "status": "success",
  "totals": {
    "success": 2,
    "failure": 0
  }
}

With version 1.25.0, only the file hello is available in repo.
With version 1.20.2, both hello and foo are available as expected.
In both case, the cli returns that 2 files were uploaded. The symlink might be overwriting the destination file?
It seems this has been broken since 1.21.0. Both files should be uploaded.

Hi @beenje ,
In order to preserve the soft links structure in Artifactory (i.e, to upload symlinks) the --symlinks flag should be set to true (as described in the Documentation).
Release 1.21.0 of the JFrog CLI included fixes to the symlinks functionality to work as expected (commits 1, 2).
Expected functionality:
With --symlinks=true, both files are uploaded (the symlink should include corresponding properties).
With --symlinks=false (or unset), only the target file will be uploaded (might be overwritten as the symlink is followed).
Would love to hear everything works as expected when using the appropriate flag.
Thanks

With --symlinks=true indeed the symlink is uploaded, but when we try to download it with curl we just get an empty file.
We always download artifacts from Artifactory using HTTPS. Is there a way to download a symlink via curl? I'd expect artifactory to send a redirect (HTTP 302) when trying to download a symlink so that you get the content of the destination file.

Happy to hear the flag works for you when uploading.
Symlinks are stored in artifactory as empty files with properties that state the destination in the original filesystem. Artifactory does not support symlinks natively.
To download symlinks, one has to use the JFrog CLI, which will identify the symlink and create it accordingly.
Thanks for your feedback

Having to use the JFRog CLI to download symlinks is really quite limiting. We never use it to download files. All other files can be downloaded with a tool like curl.
When downloading a symlink we don't want to get a link, but the destination file content. So using JFRog CLI doesn't help either.

Our use case is the following:

We generate some files:

uImage--4.14-r0-ifc14xx-64b-20190506123633.bin
uImage-ifc14xx-64b.bin -> uImage--4.14-r0-ifc14xx-64b-20190506123633.bin

We upload those files

We want to be able to download uImage-ifc14xx-64b.bin and get the content of uImage--4.14-r0-ifc14xx-64b-20190506123633.bin

Before version 1.21.0, this worked fine. It sounds like this isn't possible anymore.
Symlinks are either ignored, either uploaded as symlinks. But the way they are currently supported is too limiting. It's not possible to download them as files.
I think it should be possible to upload symlinks as normal files as before. That should even be the default. Having JFRog CLI telling you that it uploads 2 files when it really only uploads one is confusing.
Skipping symlinks could be a separate option (--ignore-symlinks?).

As I said, Artifactory does not support symlinks natively.
On older versions, the symlink wasn't actually uploaded, but the target of the symlink with the symlink's name. The uploaded artifact was a hard copy of the symlink's target.
In reality, that equals simply uploading the symlinks target with the symlink name:
jfrog rt u uImage-ifc14xx-64b.bin repo/uImage-ifc14xx-64b.bin.
Thank you for your feedback, we will take it into consideration.

To avoid duplicating content in the repo, it would be good to have support for symlinks. When is this feature likely to become available?

@kmathewmk and all,
One of then items addressed in the JFrog CLI v2 release is fixing the symlink name when it is uploaded to Artifactory. See item 21 in the List of changes in JFrog CLI v2.
We would appreciate everyone's feedback.


Initialize Estimators App

closing in favor of https://github.com/fridiculous/django-estimators/pull/2


Fix ubuntu build file permissions

Copies sources to ubuntu build image (no bind mounting anymore).

I don't think this works either, the docker run --rm ... rake release:build_ubuntu drops the resulting .deb package into the Docker container rootfs, and it goes away when the build container is removed...
This still needs some bind mount to put the resulting .deb file in.

@SpComb @jnummelin ping


L515 Error on second start

Camera Model                       L515
Firmware Version                   <IP_ADDRESS>
Operating System & Version Windows 10
Language                              C++
This generates an error the second time you run it after unplugging the camera from the PC.
rs2::config cfg;
cfg.disable_stream(RS2_STREAM_ANY);
cfg.enable_stream(RS2_STREAM_COLOR, 1920, 1080, RS2_FORMAT_RGB8, 30);
cfg.enable_stream(RS2_STREAM_DEPTH, 1024, 768, RS2_FORMAT_Z16, 30);  // <---Remove this

rs2::pipeline p;
p.start(cfg);

If you remove the depth stream it does not generate an error no matter how many times you run it.
What am I doing wrong?

Hi @bluebass44
Are you still seeing issues with this?

Yes.
On Fri, Mar 26, 2021 at 1:19 PM RealSenseSupport @.***>
wrote:

Hi @bluebass44 https://github.com/bluebass44
Are you still seeing issues with this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IntelRealSense/librealsense/issues/8562#issuecomment-808425427,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATGRLWNW5S44UO4QXAUYVSTTFTFZRANCNFSM4ZC7OGVA
.

Can you provide some more details on the error and exact steps to reproduce so we can attempt to on our end?
Is this code the only thing in your source file?
And what do you mean by second time?
Thanks

Hi,
I discovered there is a setting to turn off the sensors ability to
disregard certain pixels based on their accuracy.  This is what was causing
the dark pixels.  Is there any negative impact on the accuracy of future
frames?
Regards,
Micah
On Mon, Apr 5, 2021 at 12:40 PM RealSenseSupport @.***>
wrote:

Can you provide some more details on the error and exact steps to
reproduce so we can attempt to on our end?
Is this code the only thing in your source file?
And what do you mean by second time?
Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IntelRealSense/librealsense/issues/8562#issuecomment-813528142,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATGRLWO3JFNA5C3DACP4YCDTHHYZDANCNFSM4ZC7OGVA
.

Which specific setting are you referring to? Are the dark pixels what you meant by "error" in your original comment? And what do you mean by negative impact?
Also if you could answer these questions https://github.com/IntelRealSense/librealsense/issues/8562#issuecomment-813528142  that will help us in understanding your issue and provide support.
Thanks

depth_sensor.set_option(RS2_OPTION_CONFIDENCE_THRESHOLD, 0);
Negative impact - Are they less accurate?
On Mon, Apr 12, 2021 at 4:32 PM RealSenseSupport @.***>
wrote:

Which specific setting are you referring to? Are the dark pixels what you
meant by "error" in your original comment? And what do you mean by negative
impact?
Also if you could answer these questions #8562 (comment)
https://github.com/IntelRealSense/librealsense/issues/8562#issuecomment-813528142
that will help us in understanding your issue and provide support.
Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IntelRealSense/librealsense/issues/8562#issuecomment-818257553,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATGRLWIJU6D67S5HVJYUM6LTINRHDANCNFSM4ZC7OGVA
.

Ah. I understand your question now. Yes. By allowing depth values to be calculated under lower confidence the tradeoff is  potentially less accurate values. The key is finding the right balance for your specific usage model.
Thanks

Hi @bluebass44  Do you require further assistance with this case, please?  The case will be closed after 7 days from the time of writing this if we do not hear from you.  Thanks!

Case closed due to no further comments received.


rustfmt putting space between first and second tuple element indexing. is this intended?

I noticed that rustfmt, in some cases when using tuple indexing back to back such as some_tuple.0.0 (some_tuple.0 being another tuple or tuple struct of course), it would reformat it to some_tuple.0 .0. Is this behavior intended? If so, I would like an explanation on why rustfmt decides to format it this way.
Examples
Prior to running cargo fmt:
match self.peek().1.0 {
    ...
}

match self.advance().1.0 {
    ...
}

if self.peek().1.0 == expected {
   ...
}

After running cargo fmt:
match self.peek().1 .0 {
    ...
}

match self.advance().1 .0 {
    ...
}

if self.peek().1 .0 == expected {
   ...
}

Please see - https://github.com/rust-lang/rustfmt/issues/4355#issuecomment-723764276

Please see - #4355 (comment)

Thank you.


Design of task/plugin system

The design of kuai task system
1. Why we need a task system
As a build system, kuai needs to be able to perform tasks such as compiling, testing, starting nodes, etc. To better manage and expand these tasks, kuai needs a task system. In order to manage and expand these tasks, kuai needs a task system.
2. Design target (What)
To achieve the above goals, the task system needs to have the following features

dynamically load tasks to facilitate expansion/new custom tasks
The task runtime needs to be like an onion model to implement pre/post-processing operations when multiple task handlers are used
has a KuaiContext, which may have config/anything, usually the context is a singleton (providing the ability to create multiple contexts manually)
task can be executed directly from the cli via npx kuai TASK_NAME
task can be executed manually in the code to facilitate doing e2e tests
support subtask

3. How it works
Clarifying how many modules there are and what the system architecture looks like first helps us understand how the system works

KuaiContext: Load configurations, plugins, tasks, etc. and initialize other modules.
TaskSystem

RuntimeEnvironment: Execution/management of task status, and task lifecycle.
Task: Specific logic
OverrideTask: extends from Task, for override task

Kuai CLI: Parsing command line arguments, and providing good cli interaction and output.

  C4Component
  title Architecture of kuai project context

  Container(ctx, "Kuai Context", "", "Load configurations, plugins, tasks, etc. and initialize other modules.")
  Container(cli, "CLI", "", "Parsing command line arguments, and providing good cli interaction and output.")

  Container_Boundary(st, "Task system") {
      Component(kre, "Kuai Runtime Environment", "", "Execution/management of task status, and task lifecycle.")
      Component(task, "Task", "", "Specific logic")
      Component(otask, "OverrideTask", "", "Task override")

      Rel(kre, task, "Manage & Run")
      Rel(otask, task, "Override")
  }

  Rel(ctx, kre, "init")
  Rel(cli, ctx, "call")

3.1. KuaiContext, the entry of the kuai
KuaiContext is the entry point for the whole system, responsible for loading config, task, etc... And to prevent multiple KuaiContext at runtime, it should be a singleton pattern, and a new instance can be created by KuaiContext.createKuaiContext().
  classDiagram
  class KuaiContext {
    + RuntimeEnvironment env
    + TaskLoader tasksLoader
    + Extender[] extenders

    + setRuntimeEnvironment(RuntimeEnvironment env)
    createKuaiContext()$
    getKuaiContext()$
    loadConfigAndTasks()$
  }

Possible usage
// entry.ts
import { KuaiContext, RuntimeEnvironment } from 'kuai/core'

const ctx = KuaiContext.createKuaiContext();
const config = loadConfigAndTasks();

const env = new RuntimeEnvironment(
  config,
  ctx.tasksLoader.getTasks(),
  ctx.extenders,
);

ctx.setRuntimeEnvironment(env)

3.2. Task system
classDiagram
  class TaskParam {
    String name
    String type
    String description
    T defaultValue
    Boolean isOptional

    validator(value): Boolean
  }

  class Task {
    String name
    String description
    Record~string, TaskParam~ params
    Boolean isSubTask

    action(args, env, runSuper)
  }

  class OverrideTask {
    Task parentTask
  }

  class RuntimeEnvironment {
    - Extender extenders
    + Record~string, Task~ tasks

    + run(name, args)
  }

  Task --o TaskParam: has
  OverrideTask --|> Task : extends
  RuntimeEnvironment --o Task : has

3.2.1. Task
In the task system, any logic can be a Task, which should have a name as the task identifier, a description , params defined, and a task handler.
In order to implement task override, an OverrideTask is needed, which has an additional property of parentTask compared to Task. When the action of OverrideTask is run, the action of parentTask will be passed as runSuper, so that the override of task can be implemented
3.2.2. RuntimeEnvironment
We now have a simple task definition that allows us to run some logic, but the goal of the task system is to have some simple tasks that combine to accomplish a complex task, so we need a struct that manages all the tasks
RuntimeEnvironment is a module to help us manage the execution of Task and to share the context between Task. When a task is executed, this is passed into the action of task as env so that the context can be shared between tasks
How to load tasks
When KuaiContext calls loadConfigAndTasks to initialize the project, it will run the kuai.config.ts file. you can put the custom task in it, or refer to the custom task's file in kuai.config.ts, so that the task can be injected into KuaiContext. and these injected tasks will be passed as parameters when KuaiContext initializes RuntimeEnvironment.
Some helper functions are also provided in kuai/core to help simplify the code
Possible usage
// kuai/core/helper
function task(name, description) {
  const ctx = KuaiContext.getKuaiContext();
  const loader = ctx.tasksLoader;
  return loader.addTask(name, description)
}

// custom-task.ts

import { task } from 'kuai/core'

task(TASK_NAME)
  .addParam("paramA", "a custom param", 'default value')
  .action(async (args, env, runSuper) => {
  // do something…
  })

// kuai.config.ts

import 'custom-plugin.ts'

When a Task with the same name is registered multiple times, the subsequent Task is loaded as an OverrideTask, and the previous Task is saved as a parentTask
// custom-override.ts

import { task } from 'kuai/core'

task(TASK_NAME)
  .action(async (args, env, runSuper) => {
    // do something before parent task…
    await runSuper()
    // do something after parent task…
  })

How to run task
There is a run method in RuntimeEnvironment, which will find the matched task from tasks, and when running it will check if the Task is an OverrideTask, if it is, it will pass the action of its parentTask as runSuper parameter to the action of the task
How to extends RuntimeEnvironment
Extending RuntimeEnvironment is to add/change some values of RuntimeEnvironment when initializing Kuai.
For example, we add a hi method to RuntimeEnvironment, and then call this hi through the task, so that we can achieve the effect of extending the Kuai.
Possible usage
// kuai/core/helper
extendsRuntimeEnvironment(extender: (env: RuntimeEnvironment) => void) {
  const ctx = KuaiContext.getKuaiContext();
  ctx.extenders.push(extender);
}

// kuai.config.ts / custom-plugin.ts
import { extendsRuntimeEnvironment } from 'kuai/core'

extendsRuntimeEnvironment((env) => {
  env.hi = () => {
    console.log('hi')
  }
})

task("hi", async (args, env) => {
  env.hi()
});

Will yield:
$ npx kuai hi
hi

Using TypeScript
// custom-type.ts
import "kuai/types/runtime";

declare module "kuai/types/runtime" {
  export interface RuntimeEnvironment {
    hi: () => void;
  }
}

3.3. CLI
CLI facilitates users to run some scripts and functions in kuai environment, such as test / start node / deploy contract etc.
The cli is mainly implemented by commander.js, and the way to use cli in kuai is like this
$ npx kuai help
Kuai version 0.0.1

Usage: kuai [GLOBAL OPTIONS] <TASK> [TASK OPTIONS]

GLOBAL OPTIONS:
  -h, --help     Show help
  -v, --version  Show version number

AVAILABLE TASKS:
  help                  Prints this message
  node                  Starts a JSON-RPC ckb server
  test                  Run tests

In this article we focus on how the task system will integrate with cli
Our task itself has a name and we want to be able to run the task by typing kuai TASK_NAME directly, so this requires the cli module to dynamically load commands based on the task
The name of the Task will be used as the name of the command, and the params will be parsed as options
Possible usage
// kuai/core/cli.ts
import { Command } from 'commander';
import { loadCommandFromTasks } from './helper';

const program = new Command();

const ctx = KuaiContext.getKuaiContext();
const commands = loadCommandFromTasks(ctx.tasksLoader.getTasks());

commands.forEach((command) => {
  program.addCommand(command);
});
program.parse();

The linked PR has been closed, please update it to the latest PRs.


NEED for training recipes ?

Hello,
I want to train my models with this toolkit. Is there any training recipe for training on our own data set?
Thanks in advance

Hi, may I ask what kind of models do you wish to train?
Currently we only support several pre-training methods including: Mockinjay, TERA, and Audio ALBERT.
Their pre-training procedures can be found in the Pretraining README, which can also be changed to another dataset other than LibriSpeech (with minor modifications).
I hope this clarifies your question, thanks!
Andy.

Yes, this clarified me.
It is said that in the Mojkingjay paper: we will investigate and deploy Mockingjay representations on more downstream SLP tasks, including ASR, voice conversion, and speech translation. Is it deployed for voice conversion or asr tasks ? I mean how can I use this great model for voice conversion and speech recognition?
Thanks a lot

Hi,
We have deployed upstream models for speech recognition (ASR), please see here: downstream/README/ASR for detailed instructions.
You can choose Mockingjay with the command -u mockingjay,
or TERA (an improved version of Mockingjay) with the command -u tera.
In the downstream/README, you will also find all kinds of downstream tasks that we currently support. Unfortunately, we don't have voice conversion for now. However, you can always extract representations from Mockingjay or TERA, then do VC with your own code.
For a tutorial on upstream representation extraction, please see the upstream/README/use-upstream-models-in-your-own-project.


chore: refactor shotoku device

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

What is the current behavior? (You can also link to an open issue here)

What is the new behavior (if this is a feature change)?

Other information:

Codecov Report
Patch coverage has no change and project coverage change: +63.93% :tada:

Comparison is base (920da05) 36.06% compared to head (a53768d) 100.00%.

Additional details and impacted files
@@               Coverage Diff               @@
##           release51      #273       +/-   ##
===============================================
+ Coverage      36.06%   100.00%   +63.93%
===============================================
  Files             99        42       -57
  Lines          10020       649     -9371
  Branches        2464        76     -2388
===============================================
- Hits            3614       649     -2965
+ Misses          5838         0     -5838
+ Partials         568         0      -568

see 57 files with indirect coverage changes

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


would be willing to take over maintence & support

Please add me to project.

Hi Dan, thanks for the interest!
We're (Cozy) considering this project to be archived and unmaintained. There have been no code changes, issues filed, PRs or support requests in more than two years. We're not using this app internally, and we're not really interested in re-opening the project or being associated with its ongoing use.
However, there are a couple of active forks that are being used and somewhat maintained by others. https://github.com/BlinkerGit/bank_routing seems to be the most active one.
If you want to maintain and use this code, I'd encourage you to either contribute to one of the maintained forks, or fork it yourself and update/maintain your own version of the codebase. This is a perfect use case for GitHub's fork mechanism, IMO.
If you do fork this repo, or join forces with BlinkerGit, and we see that there's some real movement in updating and maintaining the code, I'd eventually be willing to add a note to the README that points people to an "official" maintained fork.
Thanks!

ok thanks


can't evaluate field targetValue in type interface

Hi there! Trying to implement hpa with custom metrics from prometheus adapter, but run into this error

fatal: [localhost]: FAILED! => {"changed": false, "command": "/usr/local/bin/helm upgrade -i --reset-values --wait --timeout 5m --atomic<EMAIL_ADDRESS>--values=../values/all/hpa_values.yaml -f=/tmp/tmpbir4ghm1.yml app ../helm-chart", "msg": "Failure when executing Helm command. Exited 1.\nstdout: \nstderr: coalesce.go:223: warning: destination for common-chart.hpa.enabled is a table. Ignoring non-table value (false)\nError: UPGRADE FAILED: template: common-chart/templates/hpa.yaml:26:25: executing "my-common-chart/templates/hpa.yaml" at <.Values.hpa_metrics.targetValue>: can't evaluate field targetValue in type interface {}\n", "stderr": "coalesce.go:223: warning: destination for my-common-chart.hpa.enabled is a table. Ignoring non-table value (false)\nError: UPGRADE FAILED: template: my-common-chart/templates/hpa.yaml:26:25: executing "my-common-chart/templates/hpa.yaml" at <.Values.hpa_metrics.targetValue>: can't evaluate field targetValue in type interface {}\n", "stderr_lines": ["coalesce.go:223: warning: destination for my-common-chart.hpa.enabled is a table. Ignoring non-table value (false)", "Error: UPGRADE FAILED: template: my-common-chart/templates/hpa.yaml:26:25: executing "my-common-chart/templates/hpa.yaml" at <.Values.hpa_metrics.targetValue>: can't evaluate field targetValue in type interface {}"], "stdout": "", "stdout_lines":

Here's the content of hpa_values.yaml:
hpa:
enabled: true
minReplicas: 2
maxReplicas: 8
hpa_metrics:
targetValue: 2
hpa_metrics:

type: Object
object:
metric:
name: container_cpu_usage
describedObject:
apiVersion: apps/v1
kind: Deployment
name: "{{ app_name }}"
target:
type: Value
value: 2

And this is the HPA template:
{{- $targetValue := .Values.hpa_metrics.targetValue | default 2 -}}
{{- if .Values.hpa }}
{{- if .Values.hpa.enabled }}
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: {{ .Values.fullnameOverride }}-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: {{ .Values.fullname}}
minReplicas: {{ .Values.hpa.minReplicas | default 2 }}
maxReplicas: {{ .Values.hpa.maxReplicas | default 10 }}
metrics:

type: Object
object:
metric:
name: container_cpu_usage
describedObject:
apiVersion: apps/v1
kind: Deployment
name: {{ .Values.fullname }}
target:
type: Value
value: {{ $targetValue }}
{{- end }}
{{- end }}
What can be wrong here? I suspect container_cpu_usage metric might not be available or somehow misconfigured in Prometheus adapter.

Its hard to tell whether this is related to helm not working as should. Do you have a reproducer helm chart and a set of values I can can run? I'm looking for enough information to run helm template <chart> <values.yaml>

nope, I don't have it-( It has a bunch of values files and a corresponding playbook that deploys services

I see. Are you able to provide the exact helm values file that you pasted above? From the error output, it looks like your problem is around Values.hpa_metrics.targetValue. I can not see such a field in https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2/. Check your configuration against this spec.
This is my best guess.

That's the custom metric from Prometheus adapter. I guess I might have misplaced some values in a variety of values files. I'm fuming already, but the issue is on the surface, I just don't see it

Can I reference the entire hpa_metrics section in my values.yaml file with this command - {% for metric in hpa_metrics %}
- {{ metric }}
{% endfor %}?
hpa_metrics section
hpa_metrics:

type: Object
object:
metric:
name: container_cpu_usage
describedObject:
apiVersion: apps/v1
kind: Deployment
name: "{{ application_name }}"
target:
type: Value
value: 2


Public release for LookupTables

to: @ryandeivert @chunyong-lin @blakemotl
cc: @airbnb/streamalert-maintainers
resolves: #882
Background
We originally had a stealth-feature (called LookupTables!).
This product was never publicized as it was primarily used internally and served a very niche purpose.
However, issues began to arise from different angles that galvanized the (re)development of this. So, without further ado...
LookupTables
There is extensive documentation for LookupTables. Go read it!
Testing
On stage

Coverage decreased (-0.5%) to 96.132% when pulling e925658381a8dd62aec8cb081ca16d2dfb7c36b8 on feature-lookuptables into 06542964e9573c7a75d2b57f93c1362df2aeedb8 on release-3-0-0.

:thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu: :thankyouu:


Usage of interval-parameter

Thank you for this cool piece of code!
I'm currently wondering, how the defined interval is affecting the data.
I built a test-setup with two slaves operating in half-duplex at 9600baud and had to set the interval to 2000ms in order to log the packets correctly.
This works perfectly but I'm about to install it in a bigger setup with approx. 14 slaves on a single bus, where the bus-messages might not be in coordinated intervals of 2000ms or 1500ms.
What is the internal function of the interval? Might it cut a message in half, if the interval is set on a too low value?
Thx!

What is the internal function of the interval

As now, the software doesn't really understand the Modbus protocol. That is it doesn't interpret the Modbus messages and thus know when a message will stop by reading its length. Unfortunately the Modbus packet doesn't have a length field, so to know the length of the message you would need to interpret all the function codes, that is outside the scope of this software, that does a capture at the physical layer and doesn't have knowledge of the content of the Modbus packets.
The tool simply waits for a timeout where no communication happens to know that a device has done sending the message. The Modbus RTU physical specification impose that message frames are separated by a silent interval of at least 3.5 character times, and that is what the software uses to know when a new message starts. It also says that between two characters in a frame doesn't pass more than 1.5 character time (you can get more information here at page 14. Note that the character time depends on the particular speed (baud rate) used, and that devices may not follow the standard 100%.
If you have more slave devices on a serial bus and the devices respect the protocol, assuming no two device communicate at the same time, it should work without any issues.
Finally to have more precise timing and thus have more success you may need to activate the low-latency mode (requires root privileges) and give the sniffer process an higher priority (nice level).

Alright that makes sense! Thank you for the details and the explenation!
I've now seen that the unit of the interval in your software is in microseconds and not milliseconds as I first thought.
I'm closing the issue.


Calling bash() on a dead enemy freezes the hero (unlike attack())

Hi,
this problem I'd like to report has been already discussed in here: https://discourse.codecombat.com/t/bypass-but-its-dead-hero-freezing-while-using-bash-in-javascript/16751.
It's basically about this, to quote myself from the forum:

This is an example code where bash() on a dead enemy does cause the freeze, while attack() doesn’t :
...
enemy = self.findNearestEnemy()
...
self.say("Attacking nearest enemy: " + enemy.type)
if self.isReady("bash"):
    self.bash(enemy)
else:
    self.attack(enemy)

The following line is crucial in the example for successful reproduction of the issue. It is just for debugging (and there are no alternatives according to Access console.log in game? so far), yet it is considered as just another hero's action, so enemy's state may change between findNearestEnemy() and the attack:

self.say("Attacking nearest enemy: " + enemy.type)

So what I suggest is to make the behavior of attacks consistent, so that it doesn't confuse (new) players. So either to fail-fast, or to continue after both types of attacks. If doing this would be too complicated, what about to give at least an appropriate warning for example to the in-game documentation of the bash() method?

Thanks for the bug report. It's tricky to get this one working correctly, but I'll put it on the list to see if we can't make it more robust.

Fixed


[backend] Login functionality changes

Currently login functionality works by taking wallet address, which is not really secure. If an attacker can find wallet address of another user, they can pose as the actual user.
potential ways to fix

use privatekey and wallet combination in login form. use privatekey to generate wallet and compare the provided wallet address with the generated one.
use only privatekey to login and on server side generate a wallet with the private key and check if the wallet address exist in database?

I think we completed this by implementing the following:

Create ephemeral wallet in frontend and send only public address to backend
Login using signed messages

The changes are in PR https://github.com/State-Channel-4/Channel4-pocv2/pull/25

Yup, implemented. Can be closed


Added Shields.io badges

Added Shields.io badges to indicate that this is a community maintained extension and that it is in the incubating lifecycle stage.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign salaboy
You can assign the PR to them by writing /assign @salaboy in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@celanthe: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr
98116f1ffad0e3862ce42b0305d8787802f7a4f7
link
/test pr

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


chore: use tsx instead of esbuild-register

This PR trades esbuild-register for tsx three main reasons:

tsx is more performant than esbuild-register
tsx does not display uncontrolled warnings
tsx CLI is simpler to use

(failing test is unrelated)


Cannot connect to MQTT broker with SSL

While trying to connect to a MQTT broker (Mosquitto) with encryption and certificate verification the following error occurs:
INFO:ble2mqtt.__main__:Starting BLE2MQTT version 0.1.0a47
ERROR:ble2mqtt.ble2mqtt:Connection lost. Will retry in 10 seconds.
Traceback (most recent call last):
  File "/root/.local/lib/python3.9/site-packages/aio_mqtt/client.py", line 202, in connect
    self._reader, self._writer = await aio.open_connection(
  File "/usr/local/lib/python3.9/asyncio/streams.py", line 52, in open_connection
    transport, _ = await loop.create_connection(
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1056, in create_connection
    raise exceptions[0]
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 1041, in create_connection
    sock = await self._connect_sock(
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 955, in _connect_sock
    await self.sock_connect(sock, address)
  File "/usr/local/lib/python3.9/asyncio/selector_events.py", line 502, in sock_connect
    return await fut
  File "/usr/local/lib/python3.9/asyncio/selector_events.py", line 537, in _sock_connect_cb
    raise OSError(err, f'Connect call failed {address}')
ConnectionRefusedError: [Errno 111] Connect call failed ('<MQTT_BROKER_IP>', 8883)

My ble2mqtt.json config is as follows:
{
    "mqtt_host": "<MQTT_BROKER_ADDRESS>",
    "mqtt_port": 8883,
    "mqtt_user": "<USER>",
    "mqtt_password": "<PASS>",
    "base_topic": "ble2mqtt",
    "mqtt_prefix": "b2m_",
    "log_level": "INFO",
    "devices": [
        {
            "address": "<MAC>",
            "friendly_name": "Avea",
            "type": "avea_rgbw"
        }
    ]
}

Where should I configure the certificate to be used?

Hi, ssl certificates for connecting are not implemented yet.

Hello @farrad ,
As a workaround you can use "Bridging":

At the device running ble2mqtt install mosquitto
configure a listener limited to localhost
configure ble2mqtt to use this local mosquitto
configure a bridge to your next MQTT-broker with TLS

Here is a minimal config for the local mosquitto:
#This is the local listener, limited to localhost to only accept local connections
allow_anonymous true
listener 1883 <IP_ADDRESS>

#connection to the real broker
connection Broker-remote
address <IP_ADDRESS>:8883
topic ble2mqtt/# both 0
remote_username supername
remote_password supersecretpassword
bridge_cafile /etc/config/broker.crt

Longterm this might be included into ble2mqtt itself. It does not need to be complicated IMHO. I did that in the past for a trivial script myself (https://github.com/Torxgewinde/MQTT-GPIO/blob/main/MQTT_GPIO.py) even though I am not experienced with python.
Cheers,
Tom


feat: integrate openID auth logic and user profile management

this change introduces OpenID authn by using providers such as Github, Gitlab and Google. User sessions are now used for web clients to identify and persist an authenticated users session, thus not requiring every request to use credentials.
UserDB added that contains users security data.
dex service introduced to replace multiple providers implementations

What type of PR is this?
feature

Which issue does this PR fix:
https://github.com/project-zot/zot/issues/978
What does this PR do / Why do we need it:
If an issue # is not available please add repro steps and logs showing the issue:
Testing done on this change:

Automation added to e2e:

Will this break upgrades or downgrades?
Does this PR introduce any user-facing change?:

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Add a logout URL.

@rchincha regarding the removal of secureKey (used in session encryption) from the config, it may be useful in clustering mode, allowing multiple zots to use the same key for decrypting sessions, so that sessions created in one zot can be used in another zot.

Endpoints - drop the /openid and just do /auth/login and /auth/logout?

/openid/auth/callback/github -> /auth/openid-cb/github


Notify of AFM removal

Thanks for the pull request! Before a real human comes by, please make sure your PR has all of the below criteria checked

[ ] Give a description on what the PR is for.
[ ] Make sure your PR is based on the DEVELOP branch
[x] Don't send big changes all at once. Split up big PRs into multiple smaller PRs that are easier to manage and review

Please make sure you also read contribution guide and followed all of the steps.
Thanks!

Im confused. The wiki dont explain the removal of AFM but how to use it.
Also dont explain how to achive AFM feature without it.

You apparently didn't go to the link that is given in the news item.


Fix behaviour  with errors on Distribution

Summary
If you have an error (too many of an item) on saving a new distribution, the number of items in inventory for each item is disappearing, and only one error is showing even if you have multiple overages.  Fix it!
Why?
Speed up process of dealing with errors.  Give enough information for banks to fix all the errors in one go.
Details
To recreate this issue:
sign in as<EMAIL_ADDRESS>Requests
View a request
Click Fulfill
enter a distribution that has two items that have a quantity that is more than is in the inventory for your chosen storage location.
Save.
You should see errors for both items (you'lll only see one)
The number  in brackets after the item (which is the inventory level for that item/storage location) has disappeared -- it should still be there.
Criteria for completion

[ ] errors for all item overages are shown at the same time
[ ] the inventory level is shown for items after save
[ ] tests to confirm the above behaviour

I would like to take it

Please do!

Hey, I would like suggestions from a developer on this.
def handle_inventory_event(payload, inventory, validate: true, previous_event: nil)       payload.items.each do |line_item|         quantity = line_item.quantity         if previous_event           previous_item = previous_event.data.items.find { |i| i.same_item?(line_item) }           quantity -= previous_item.quantity if previous_item         end         inventory.move_item(item_id: line_item.item_id,           quantity: quantity,           from_location: line_item.from_storage_location,           to_location: line_item.to_storage_location,           validate: validate)       end       # remove the quantity from any items that are now missing       previous_event&.data&.items&.each do |previous_item|         new_item = payload.items.find { |i| i.same_item?(previous_item) }         if new_item.nil?           inventory.move_item(item_id: previous_item.item_id,             quantity: previous_item.quantity,             from_location: previous_item.to_storage_location,             to_location: previous_item.from_storage_location,             validate: validate)         end       end
This is the function where we can handle multiple  errors of Inventory Error if raised if something regarding quantity goes wrong
on DonationEvent, DistributionEvent, AdjustmentEvent, PurchaseEvent,     TransferEvent, DistributionDestroyEvent, DonationDestroyEvent,     PurchaseDestroyEvent, TransferDestroyEvent,     UpdateExistingEvent do |event, inventory, validate: false, previous_event: nil|     handle_inventory_event(event.data, inventory, validate: validate, previous_event: previous_event)   rescue InventoryError => e     e.event = event     raise e   end
this is where the raise error is caught.
As per the issues I thought of collecting all the error through a rescue block the combining the messages and throwing standard Error. But doing that so may bring more error as few of the events are utilizing the attributes of Inventory Error to validate and raise the error.
This may take more changes or bring out more issues.
May be I am over thinking can anyone suggest if It can be dont in a more easy way.
Thank You
@cielf @

@dorner or @awwaiid  Can you chime in on this?

I think rescuing those errors per event in handle_inventory_event and collating them together might be fine. Ideally you'd keep track of the first error and just keep appending to its message with any subsequent errors.

I think this might be fixed by a PR that is currently in flight #4797

The item quantities disappearing should be fixed by PR #4797, but not the distribution error behavior.
That part is due to the way we are currently handling inventory events. We attempt to perform the distribution on the inventory aggregate, but if an error is raised we abort and return the error rather than continuing and returning all the errors/problems with the distribution.

Right.


Copy/paste action when using terminal IEX in deployex UI is pasting when copying

Fixed by https://github.com/thiagoesteves/deployex/pull/51


How to change from heat to cooling

Amazing work you have done.
I can turn on and of my aircon and set temperature.
But how do I adjust the fan or change from heating to cooling.
What is the right phrase to say and how would I do that in Node-red

Just use the no/off and percentage actions, you may need to create some new "devices" e.g.

a "heat" and "cooling" device with on/off action
a "fan" device with on/off and percentage

I'm confused. You closed this too soon.
Can I do on a thermostat set heat to 20.
I can't do percentages as it's a thermostat

As I said, create new additional devices for heat/cooling and the fan that you can turn on/off or set the percentage. Amazons device profiles won't let you mix and match all capabilities so you if you want that much control you will need multiple devices with separate names


Fix xlrd requirements

to add in makefile ?
PLUGIN_VERSION=0.1.0
PLUGIN_ID=kml-format

to add in makefile ?
PLUGIN_VERSION=0.1.0
PLUGIN_ID=kml-format

This Makefile takes extracts the plugin id and version from the plugin.json.

This Makefile takes extracts the plugin id and version from the plugin.json.

👍

👍


Fix local base image temp directory cleanup

Fixes #2016. Rather than using a shutdown hook to clean up temporary directories, we keep track of them in a thread-safe set that gets passed into the build steps and iterate through them when the build steps finish. I'm not sure how I feel about passing around a list that gets modified inside the build steps, but I think it's overall simpler than doing something like returning multiple values (the temp directories + whatever the steps were originally returning) and collecting them in StepsRunner.
Also, right now the only two steps that use temporary directories are SaveDockerStep and ExtractTarStep, which happen one after the other, so the thread-safe data structure may be unnecessary at the moment.

I added TempDirectoryProvider, which had a lot in common with TemporaryDirectory, so I ended up just removing the latter completely. I think this is nicer.


add: Upendra

@Upendra2003 Thank you so much for your contribution! Your efforts are greatly appreciated and will go a long way in improving our project. Please feel free to share it with others and help us grow even further!


solution from issue 207

see #207

The augmentor now would copy by default. So that issue was fixed

This is not the copy parts. These changes are about the RepeatedDataPoint.

If no dataflow makes modifications by default, then no dataflow needs to make an explicit copy for potential modification.

Removed the copy-function. But this data-mapping is quite common.


I am looking for a better stack to do unit-tests with Firestore

Please, I enjoy firebase, but I don t enjoy non-modern web developement using Typescript and a more recent Test Runner, I mean at least Jest or Vitest...
I have encountered issues with firebase SDK 9 and unit testing.
I have 2 questions there:
simple one:
https://stackoverflow.com/questions/72580518/do-you-have-a-simple-project-example-that-run-some-unit-tests-with-firestore-sdk
detailed one:
https://stackoverflow.com/questions/72539977/error-on-having-vitest-and-firestore-working-inside-a-sveltekit-project
I have done many tests with your project, and I am not sure about that, but I think Firebase SDK 9 has some errors when doing the same tests you offer in this quickstart (firestore+sdk9+unit-testing), but using 'imports' instead of 'require' makes some issues. TO REPRODUCE THE ERROR, launch tests for this file, but replace REQUIRE with IMPORTS.
https://github.com/firebase/quickstart-testing/blob/master/unit-test-security-rules-v9/test/firestore.spec.js
So then I decide to use mocha instead of Vitest, to not use SecurityRulesTesting (because it does not works with imports), and then I realize than I am using also Typescript, and I have to do more configurations on mocha for that ... etc... it never ends.
I am asking to this community, if they know a project (demo, starter...) with a modern stack to do some UNIT TESTS with FIRESTORE. Please, I am looking for this stack: FIRESTORE SDK 9 + VITEST (or if really it does not work with vitest, maybe Jest is a good alternative) + IMPORTS (aka ES6 module) + TYPESCRIPT. Do you know some sample anywhere to do Firestore Unit Testing with this stack ?

Me too

hello, can you delete this issue please ?


The window pops up and disappears immediately

Bevy version
0.11.2
Relevant system information
Cargo Version
1.72.0
Rendering Platform
`AdapterInfo { name: "AMD Radeon RX Graphics", vendor: 4098, device: 26607, device_type: DiscreteGpu, driver: "AMD open-source driver", driver_info: "2023.Q2.3 (LLPC)", backend: Vulkan }`

What you did
I tried some window application examples but none of them worked on my machine. It just creates a window and breaks.
What went wrong
The window pops up and disappears immediately.
Additional information
The outout of cargo run --example clear_color is here.
2023-08-27T19:51:55.754191Z  INFO bevy_winit::system: Creating new window "App" (0v0)
2023-08-27T19:51:55.754706Z  INFO winit::platform_impl::platform::x11::window: Guessed window scale factor: 1.1666666666666667
ac_compute_device_uuid's output is based on invalid pci bus info.
2023-08-27T19:51:56.381952Z  INFO bevy_render::renderer: AdapterInfo { name: "AMD Radeon RX Graphics", vendor: 4098, device: 26607, device_type: DiscreteGpu, driver: "AMD open-source driver", driver_info: "2023.Q2.3 (LLPC)", backend: Vulkan }
2023-08-27T19:51:56.556052Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Linux rolling Arch Linux", kernel: "6.4.11-arch1-1", cpu: "AMD Ryzen 7 3750H with Radeon Vega Mobile Gfx", core_count: "4", memory: "13.6 GiB" }
thread 'main' panicked at 'Error in Surface::configure: Validation Error

Caused by:
    Parent device is lost
', /home/allesfresser/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-0.16.3/src/backend/direct.rs:734:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Encountered a panic in system `bevy_render::view::window::prepare_windows`!
thread 'Compute Task Pool (2)' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', crates/bevy_render/src/pipelined_rendering.rs:143:45

This issue seems related my problem.

Which OS are you on?

Which OS are you on?

Arch GNU Linux

Can you get the examples in either winit or wgpu working?

Can you get the examples in either winit or wgpu working?

Thanks for assist to find the problem. I tried few winit example without a problem. Then tried cube example on wgpu but no luck. It throws an error like
ac_compute_device_uuid's output is based on invalid pci bus info.
Using AMD Radeon RX Graphics (Vulkan)
thread 'main' panicked at 'Error in Surface::configure: Validation Error

Caused by:
    Parent device is lost
', wgpu/src/backend/direct.rs:771:18

So I searched for the ac_compute_device_uuid's output is based on invalid pci bus info and saw this thread on Arch Forum. I understand it's about the AMD Vulkan drivers. I've read this and this posts on Reddit. So in summary switching AMDVLK to RADV fixed my problem.
Now I know it's not Bevy related problem but I wrote it in detail in case it happens to anyone else. Thanks again. :smiley:


JoinMarket Web UI

The JoinMarket Web UI is work in progress, nevertheless the deployment on the RaspiBlitz works and I'm publishing this as a draft to allow others to give this early stage version a go.

Is this planned to be a CLI intstall only for now (for testing) or shall we put it into the SERVICES menu?
Also an update option might come useful if iterating on it often.

This is just the most basic version I could come up with :)
I'll happily add it to the service menu and add bells and whistles – right now more work needs to be done on the app though.

Thank you for doing this already!
The question is more about how you feel about the maturity of the project, if we should expose it to be a one-click install in the menu or leave it to the more advanced people to test for now?

Tried to install and the joinmarket-api.service is running ok, but the NodeJS UI would need service too, right?

if we should expose it to be a one-click install in the menu or leave it to the more advanced people to test for now?

Definitely the latter. I'm not done refactoring the app and making everything work. The current state is very early and should be considered as a way to get a glimpse in case you are curious and know what you are doing. We shouldn't convey the impression that this is something ready, hence I'd refrain from adding it to the menu just yet.

but the NodeJS UI would need service too, right?

Nope, the build version is served as a static website using nginx, that's also why there is plain http server entyr.
The npm start command is used for local development. For the deployment we need to npm run build, which creates a production version in the build directory.

OK .. seeing this marked as draft so I will push PR to v1.8.0 milestone to give it a bit more time.

The basics in the app are working now and the integration is done, so this is ready for review now :) /cc @openoms

So should I move this PR to be included in v1.7.2?

Yes, that can happen imho. We should communicate that the app is still a very early version, nevertheless it is working and having it available to end users will help us gather valuable feedback.

A quick test (will edit with updates):
# download
wget -O assets/nginx/sites-available/joinmarket_webui.conf https://raw.githubusercontent.com/rootzoll/raspiblitz/002a4513314655db2b6940f65ba01252fc6323cd/home.admin/assets/nginx/sites-available/joinmarket_webui.conf

wget -O assets/nginx/sites-available/joinmarket_webui_ssl.conf https://raw.githubusercontent.com/rootzoll/raspiblitz/002a4513314655db2b6940f65ba01252fc6323cd/home.admin/assets/nginx/sites-available/joinmarket_webui_ssl.conf

wget -O assets/nginx/sites-available/joinmarket_webui_tor.conf https://raw.githubusercontent.com/rootzoll/raspiblitz/002a4513314655db2b6940f65ba01252fc6323cd/home.admin/assets/nginx/sites-available/joinmarket_webui_tor.conf

wget -O assets/nginx/sites-available/joinmarket_webui_tor_ssl.conf https://raw.githubusercontent.com/rootzoll/raspiblitz/002a4513314655db2b6940f65ba01252fc6323cd/home.admin/assets/nginx/sites-available/joinmarket_webui_tor_ssl.conf

wget -O config.scripts/bonus.joinmarket-webui.sh  https://raw.githubusercontent.com/rootzoll/raspiblitz/002a4513314655db2b6940f65ba01252fc6323cd/home.admin/config.scripts/bonus.joinmarket-webui.sh

# make executable
chmod +x  config.scripts/bonus.joinmarket-webui.sh

# install
config.scripts/bonus.joinmarket-webui.sh on

@openoms While we are at it: What is the best/recommended way to test a PR, especially it it involves more files? There ain't a way to check out a specific branch, right? So I assume doing it like you posted is the most praggmatic solution.

@openoms While we are at it: What is the best/recommended way to test a PR, especially it it involves more files? There ain't a way to check out a specific branch, right? So I assume doing it like you posted is the most pragmatic solution.

check the UPDATE menu, there you can use your own forked repo branch or checkout a PR as well.
The dev has changed  a lot, but it does not really affect bitcoin or joinmarket so it is fine to just download these 5 files separately too.

There is one more thing that:
the wallet.dat needs to be loaded in bitcoind before the joinmarketd can start.
As the bitcoin-cli cannot be reliably used during the initial setup and recovery this should be checked in a precheck scripts with the joinmarket-api.service.
I will do this once merged.
@rootzoll this looks good already and be part of v1.7.2 (rc)

Just a raw quick test. I installed the Joinmarket-WebUi and then calling the hidden service I got:

What to check for debugging?

Just a raw quick test. I installed the Joinmarket-WebUi and then calling the hidden service I got:

What to check for debugging?

the reason is exactly what is described in the comment above.
The backend doesn't run until:
bitcoin-cli createwallet wallet.dat

is done.

Ok should be all functional now even on fresh installs>
Test on a v1.7.2RC:
# download
wget -O assets/nginx/sites-available/joinmarket_webui.conf https://raw.githubusercontent.com/dennisreimann/raspiblitz/joinmarket-webui/home.admin/assets/nginx/sites-available/joinmarket_webui.conf

wget -O assets/nginx/sites-available/joinmarket_webui_ssl.conf https://raw.githubusercontent.com/dennisreimann/raspiblitz/joinmarket-webui/home.admin/assets/nginx/sites-available/joinmarket_webui_ssl.conf

wget -O assets/nginx/sites-available/joinmarket_webui_tor.conf https://raw.githubusercontent.com/dennisreimann/raspiblitz/joinmarket-webui/home.admin/assets/nginx/sites-available/joinmarket_webui_tor.conf

wget -O assets/nginx/sites-available/joinmarket_webui_tor_ssl.conf https://raw.githubusercontent.com/dennisreimann/raspiblitz/joinmarket-webui/home.admin/assets/nginx/sites-available/joinmarket_webui_tor_ssl.conf

wget -O config.scripts/bonus.joinmarket-webui.sh  https://raw.githubusercontent.com/dennisreimann/raspiblitz/joinmarket-webui/home.admin/config.scripts/bonus.joinmarket-webui.sh

# make executable
chmod +x  config.scripts/bonus.joinmarket-webui.sh

# install
config.scripts/bonus.joinmarket-webui.sh on

# info
config.scripts/bonus.joinmarket-webui.sh menu

Test looks good - merging :)

@openoms do we also want to add it to the service menu ... how do we combine the option with the JoinInBox?

Good question.
I think at this stage the webgui functions are still very limited so adding to the raspiblitz menu would create more confusion than help and adding it by default is not yet a good idea.
I am planning to add this install script to joininbox as well which has faster iterations so it can be a more obvious menu option there soon.
In my opinion we can aim to make the JM webgui install option available in the RaspiBlitz menu in the v1.8.0 release.
What do you think @dennisreimann ?

@openoms that sounds very reasonable and good. 👍

OK .. created a folllow-up issue for v1.8 #2891
So we can consider this issue ready for release. Good work.


draft.toml's set parameters are not being loaded into the Helm chart.

I specified:
[environments.development]
set = ["foo=bar"]

When I draft up and then helm get values, I do not see foo there.

Duplicate of #223


Fix pylint errors due to version update

Summary
Fixes #1346
Details and comments
Pylint had an update go through which made some new suggestions to the code. implemented those.

Thanks so much for splitting this out!

FYI if you run make copyright locally (from root in your cloned folder) it will fix the copyright dates as needed. Is the same tool as is used here that checks them.

Thanks so much for splitting this out!

No problem. I was just being lazy by repurposing the other PR

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

4 of 4 (100.0%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.005%) to 86.753%

Totals

Change from base Build<PHONE_NUMBER>:
-0.005%

Covered Lines:
8782

Relevant Lines:
10123

💛  - Coveralls


Code Splitting succeeded, but css modular failure。

{
  loader: "css-loader",
  options: {
     modules: true,
     localIdentName: "[name]-[local]_[hash:8]"
  }
}

css failed
import styles from './Home.scss'

The printed styles are not what I want

This has nothing to do with React Router.


SoundManager is always suspended when AudioContext not available, preventing sound playback

Description
When you are running in an environment without html5 web audio — hasAudioContext() is false (https://github.com/playcanvas/engine/blob/main/src/platform/audio/capabilities.js#L8) — the SoundManager always reports that it is suspended (https://github.com/playcanvas/engine/blob/main/src/platform/sound/manager.js#L117) because its _context is always null. A downstream problem this creates is that audio clips will never play.
Furthermore, _unlocked never has an opportunity to be set to true without AudioContext being present, as the only place it's set is the lazy creation of the AudioContext (https://github.com/playcanvas/engine/blob/main/src/platform/sound/manager.js#L139-L142) and this too causes SoundManager to perpetually report it is in a suspended state, preventing sound playback.
One potential fix would be to provide different implementations of suspended getter:
    get suspended() {
        if (hasAudioContext()) {
            return !this._context || !this._unlocked || this._context.state !== CONTEXT_STATE_RUNNING;
        } else {
            return this._selfSuspended;
        }
    }

I think this is somewhat critical as it seems to break all sound playback in our project. We have a polyfill for HTMLAudioElement in order to route audio through our native app hosting the web view. We force PC to use legacy sound mode by
    delete window.AudioContext;
    delete window.webkitAudioContext;

before loading in PC. (It would be cool to have an option to do this, like the OPPOSITE of forceWebAudioApi). Our situation is a bit weird, but this issue should equally affect folks who truly don't support html5 web audio.
I'm building a minimal test case and will edit and attach it when complete.

pc-issue-4757.zip
Attached is a simple repro case. Press the button, get a sound.

webaudio.html works normally, if you view in a browser with HTML5 web audio
legacy.html you will notice no sound, emulating a browser without HTML5 web audio

@roger-o3h is this a regression issue (ie was this working in a previous release of the engine)?

Yes, was working in 1.52.6

Just to update, after applying https://github.com/playcanvas/engine/pull/4788, the issue with legacy html audio is still present. In instance.play() this still runs:
            // suspend immediately if manager is suspended
            if (this._manager.suspended)
                this._onManagerSuspend();

and in the new logic, suspended is still dependent on an AudioContext:
	get running() {
        return this._context && this._context.state === CONTEXT_STATE_RUNNING;
    }

    get suspended() {
        return !this.running;
    }

With legacy html audio, there will never be a _context, running will always be false and suspended will always be true, pausing sound instances.
One way to fix this would now be to change suspended to be dependent on whether AudioContext is available:
    get suspended() {
        if (this.AudioContext) {
            return !this.running;
        } else {
            return this._userSuspended;
        }
    }

Or, something could be changed in instance.js in the play() prototype specific to if (!hasAudioContext()).
Grateful for the related fix! Only trying to be helpful in keeping this bug report up to date 🙏

@roger-o3h Thanks for this info!! I'm sure @slimbuck will get back to you on this tomorrow. But just to confirm, presumably legacy HTML Audio is only used in IE11 these days, right?

@roger-o3h Thanks for this info!! I'm sure @slimbuck will get back to you on this tomorrow. But just to confirm, presumably legacy HTML Audio is only used in IE11 these days, right?

It's true, should be very uncommon now, but I do hope you continue to support it, as we are using a HTMLAudioElement polyfill that allows us to do some very custom things with routing our audio in our native application that uses a web view. 🙏
Just one user, but it's totally fine with me if, for instance, the "suspend" behaviour is dropped for this legacy mode... we just hope it continues to be an option.


Refresh tablesaw on tab container

Hello,
I'm facing an issue. I have a tab container with 3 tabs, inside all of tabs there is a table. I load the table content when the client open the tab.
After the content was load, I call $( "#TAB_CONTENT_ID" ).trigger( "enhance.tablesaw" );
In the first time it works, but when I open another tab and open again the tab with tablesaw, a problem happens. The swipe mode does not work as expected, and the table with large width don't hidden the exceed cols.
Works

Second access

I tried to call destroy and trigger again the tablesaw event. Or use refresh method $('.table').data( "tablesaw" ).refresh();
There are some tip or way to do this?
Thanks!

I have a similar problem. How to solve it?


Fixed class regex to also match hyphens.

Fixes #273

LGTM

@shawnbuso I seems this merge is not available in the npm package, although the npm package version is the same as the one in the repo - 0.5.0


go/types, types2: improved constant handling guarded by go1.21 but other inference imrovements are not

The Go 1.21 compiler implements significantly more powerful and precise type inference than Go 1.20. One of the improvements made is for untyped constants (#58671). That change was implemented based on the language version: -lang must be >= go1.21.
func f[P any](...P) {}

func main() {
	f(1, 2.0)
}

produces an error (default type float64 of 2.0 does not match inferred type int for P) with -lang=go1.20 but runs fine with -lang >= go1.21.
However, there are plenty of other inference improvements that that were made for 1.21 which are accessible even if -lang < go1.21. For instance:
package main

func f[T any](interface{ m(T) }) {}

type S struct{}

func (S) m(int) {}

func main() {
	f(S{})
}

In this case the change and error is not fundamentally different from above: in Go 1.20 we couldn't infer a type argument and now we can. In both these cases one can provide explicit type arguments are make the code compile. All inference improvements are fully backwards-compatible.
I propose that we remove the -lang check for the more lenient constant handling for consistency with the other inference improvements. (Making all improvements -lang dependent is not practical.)

cc: @findleyr @ianlancetaylor for feedback

I am OK with this.

I am fine with this too. If it proves to be a problem, we can always put back the -lang check: making -lang more compatible with the released Go version should always be OK.


enable user to compare multiple hydrographs

After we finish #20 and allow the user to visualize a single hydrograph we want to allow them to compare multiple hydrographs.
Here's my current idea for how we can do this:
Have a button that takes the user to a new view, "Scenario Output Comparison" or something like that. In this view, allow them to interactively select scenarios to add to the visualization. We'll re-use the /api/scenarios list in this view, but we'll have to change the view a bit to allow the user to indicate the desire to visualize the selected scenarios.

fixed with 55f8e53


PageSpeed Optimizations

[ ] Reduce server response time

In our test, your server responded in 6.9 seconds. There are many factors that can slow down your server response time. Please read our recommendations to learn how you can monitor and measure where your server is spending the most time.

[x] Enable gzip or deflate

Compressing https://siamkreative-sts.herokuapp.com/?track=RS645024374NL could save 4.1KiB (73% reduction).

[x] Minify HTML

See more recommendations here: https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fsiamkreative-sts.herokuapp.com%2F%3Ftrack%3DRS645024374NL&tab=desktop

As of today, PageSpeed Insights now indicates:

Reduce server response time
Your server responded quickly. Learn more about server response time optimization.

Fixed by 9570a1583fb32e39d6c35e31c98df1604602c50d