Reduce duplication between TCP/RTU clients

Sorry, because this is a fork, I can't create an issue here. So this was the only way I knew to start a conversation.
I'm preparing to start updating the TCP client (handling connection disruptions), but wanted to reduce the duplication with some of the logic first, and check whether you prefer 1 big PR that would include the TCP changes, or break it into this, and a separate one to handle TCP connection issues.
Alert 1: This would require a big version bump, because the RtuClient won't work on its own anymore. Everything would just be ExModbus.Client, and it infers your transport (TCP/RTU) based on the parameters you specify.
Alert 2: Because there are no specs for any of this, I can't be sure it's all working!  I'll write specs for the TCP code that I upgrade though.

Hey Jeff,
it's ok to fork and PR, that's the corrcent way. I like the idea of merging the two transports into one interface. Unfortunately I can't test the RTU part with a real server, can you test the RTU part?
You can create PRs as you like, I have no preference.

Thanks Falco. Please don't consider merging what I have so far. I was just reaching out to start the conversation.
No, I don't have a good way to test the serial connection. What I'd really like to do is find a command-line slave simulator that could respond to both, and use it to drive some specs. I don't suppose you know of any simulators that are:
a) a complete modbus implementation
b) will run from the command line on linux (so I and anyone else can have the specs run automatically on circleci/travis/etc)
Modbus is still a little new to me, but so far I've just found gui clients for windows, and half-baked java implementations that are incomplete.
Thanks for any pointers!

In my parallel rust modbus project modbus-rs, I used a binary diagslave for testing the communication. If I remember correctly, It's also working for RTU communication. I got it from here.
You can find the Linux binary in the project history.
Diagslave in combination with a virtual serial terminal  may be a good test setup (at least on linux).
I switched to automatic tests by building a custom testserver based on libmodbus after a while, because the binary blob was not portable and ugly. Using this approach would also work, but the setup is more complicated, as you have to add custom build/test steps to mix.
Here you can see, how I did it in rust.


php-activerecord php 8.0

If tested the latest version an it works fine. By the way, the project works completely good and has many good features.
Almost one [php:notice] is shown...
PHP Notice:  spl_autoload_register(): Argument #2 ($do_throw) has been ignored, spl_autoload_register() will always throw in /vendor/php-activerecord/php-activerecord/ActiveRecord.php on line 28

So no problem with that. Now, is the repo already active?

for PHP 8, phpactiverecord V 1.2.0 works?

Works for me.


map.fitBounds() - use with a bespoke projection - should check map layer's min/max-zoom setting

Checklist

[X] I've looked at the documentation to make sure the behavior isn't documented and expected.
[X] I'm sure this is an issue with Leaflet, not with my app or other dependencies (Angular, Cordova, React, etc.).
[X] I've searched through the current issues to make sure this hasn't been reported yet.
[X] I agree to follow the Code of Conduct that this project adheres to.

Steps to reproduce
An edge case using a bespoke projection (OSGB/osdatahub with zoom-levels 1-9),
which gives a zoom-level offset from web-mercator of ~ -5
I used map.fitBounds (which uses standard webmercator), which returned zoom 16, which is a) wrong, and b) was off the projection's zoom-level scale
=> so i got trying to load infinite tiles error
NB: can workaround with map.fitBounds() maxZoom option
Expected behavior
Using normal projection, map.fitBounds() checks zoom level is within current map-layer's min/max-zoom range
Using bespoke projection, map.fitBounds() also returns correct zoom level for the projection
Possible solutions
A)
map.fitBounds() works with the current projection's layers rather than web-mercator,
then checks the result is within the current layer's max/min zoom
B)
split fitBounds() into 2 steps

map.getBoundsZoom(), to get centre/zoom using web-mercator (the documentation could suggest this)

(then I can fix the zoom-level for my projection, in this case, subtract 5, check 1 <= zoom <= 9 )

map.setView() which already exists

Current behavior
Using bespoke projection, map.fitBounds() returns a zoom-level which is wrong, and outside the current map-layer's min-zoom/max-zoom range
Minimal example reproducing the issue
No response
Environment

Leaflet version: 1.9.3,
PROJ_4_JS: 2.8.0,
PROJ_4_LEAFLET: 1.0.2
Browser (with version): Chrome, latest
OS/Platform (with version): Windows 11 desktop

@aavmurphy can you please setup a demo: www.leafletjs.com/edit.html
@IvanSanchez you have more knowledge about this topic, can you please take a look?

After some more investigation, I found that map.getBoundsZoom() does work with bespoke projections if the bounds are a few km part, but if the bounds are close (say 100m), the zoom level returned is way too high, higher than the maximum zoom level (e.g. 18 vs max of 9, where only zoom levels 1-12 or so are defined)
So my current workaround is
zoom = map.getBoundsZoom(), if (zoom > 9) zoom = 9; (where 9 is max zoom for the level)

I set up a simple example to demonstrate the problem - and it worked perfectly :)
I'll keep at it

Got it down to a call to map.getBoundsZoom() that goes wrong in my application... (but which works in my sample code).
Must be bablejs or terser, right? Wrong, built my application without them, and it still goes wrong :)

Got it.
It was (map options) maxNativeZoom rather than maxZoom that was causing it.
Switched back to setting maxZoom and everything works fine as expected.
(That's why setting the bounds of a city worked, but not of a single building)


ENH: pdfly x2pdf --format

The new --format parameter would allow for values like:

Letter
a4-portrait
A4-landscape
210x297

All the pages in the output PDF would then have this format.
Images provided to pdfly x2pdf would then be fitted to the page.

Hello! I would like to implement this new parameter! Please assign me to this issue!

Hello! I would like to implement this new parameter! Please assign me to this issue!

Great!
Done 🙂


How to revert the mutated IR into source code?

Hi, I have read your OOPSLA paper and I find the work very interesting!
I would like to ask, after doing mutation on IR, how do you revert to the kind of source code in the bug report? I haven't looked at the code in this repo carefully, can you briefly describe the process or tell me where the code is located? Thanks in advance!

Hi, thanks for your interest. https://github.com/ise-uiuc/tzer/blob/main/src/tzer/context.py#L238

Hi, thanks for your interest. https://github.com/ise-uiuc/tzer/blob/main/src/tzer/context.py#L238

Thanks, I guess this is the code related to ${BUG_TYPE}_${BUG_ID}.ctx in output folder? But I'm curious how to generate the corresponding python code (as a test program that can be submit to the compiler developer) based on this context?

In theory you can just print the TIR and rematerialize it with TVM script. I cannot recall the details since it has been a while. I guess the worst case is to manually construct the Python code according to the printed text. Good luck!

Oftentimes we just compile TVM with debug mode and do gdb --args python YOUR_SCRIPT.py and it can show you the point it crashed. But of course if you can get the original TIR then you may simply do mod = tvm.lower(f) and tvm.build(mod) to see if it can be reproduced -- if reproduced you can just file a bug to the TVM community. Also note that Tzer does not guarantee that generated TIR is runtime-valid -- as such if it crashed at execution time it might not be a real bug.


Fix: add icons to features section

What type of PR is this? (check all applicable)

[x] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] ⏩ Revert

Description

Added icons by creating two new folder and a single file
also  changed the color of the h3
Related Tickets & Documents

Fixes: #22
Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[x] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📕 storybook
[x] 🙅 no documentation needed

📸 Credits
This pull request template was created by Open Sauced 🍕

Hey @dev-phantom, is there a reason why you didn't use react icons?

Yes
Didn't know the names of the icons

these issue has been resolved in this pull request #34


Why Ed25519 private key length is 34 bytes?

I parsed https://github.com/openssl/openssl/blob/master/test/certs/server-ed25519-cert.pem
it's public key is 0a410c8fe4912e3652b61dd222b1b4d7773261537d7ebad59df6cd33622a693e, 32 bytes, it is right.
I parsed https://github.com/openssl/openssl/blob/master/test/certs/server-ed25519-key.pem as PKCS#8
it's private key is 0420d6b9fc4d48cee48b835af0a07c65d5557b05d72798c7ae97da6fb2fccaa2b8e6, 34 bytes, but not 64 bytes, why?

Private and public keys in Ed25519 are 32 bytes (not sure why you expect 64 for the private key). RFC8032 defines Ed25519 and says:

An EdDSA private key is a b-bit string k

It then defines the value b as being 256 for Ed25519, i.e. a private key is 256 bits (== 32 bytes).
PKCS#8 is a standard for storing private keys for all sorts of different algorithms. The format is basically an integer version number, an object identifier to identify the algorithm, and an OCTET STRING for the private key data. The format of the private key data could be anything depending on the algorithm. It might be ASN.1 data inside the OCTET STRING or something else.
This document defines what that is for Ed25519 private keys:
https://tools.ietf.org/html/draft-ietf-curdle-pkix-10
What it says is that inside the OCTET STRING is another OCTET STRING for the private key data. The ASN.1 tag for OCTET STRING is 0x04, and the length of that string is 32 bytes (0x20 in hex).

it's private key is 0420d6b9fc4d48cee48b835af0a07c65d5557b05d72798c7ae97da6fb2fccaa2b8e6, 34 bytes, but not 64 bytes, why?

So in the above string the leading 0420 is the OCTET STRING tag and length. The remaining 32 bytes are the key itself.

@mattcaswell Got it. Thank you very much.
My old "private key" is signing key, must include public key, so PrivateKeySize is 64. This is used widely，such as:
In Golang: https://github.com/golang/crypto/blob/a3beeb748656e13e54256fd2cde19e058f41f60f/ed25519/ed25519.go#L31
In tweetnacl-js: https://github.com/dchest/tweetnacl-js#naclsignsecretkeylength--64
Almost all ed25519 implementations' keypair() function will return 64 bytes SigningKey
https://blog.mozilla.org/warner/2011/11/29/ed25519-keys/

Yeah, as the chart in that blog post suggests, there's lots of different formulations of Ed25519 private keys. :-) The in-memory representation will likely keep the public key around with the private key to save work for each signature. My impression is that combined representation was also common for the serialized private key.
The IETF formulation diverges from this and treats only the "seed" as the private key. That means you need to do some format-munging depending on which direction you're trying to convert things. On the OpenSSL side, that means APIs to get at the raw representation of the key would be handy, similar to how RSA EVP_PKEYs expose the underlying RSA object via EVP_PKEY_get0_RSA. On the side of existing implementations, an API like BoringSSL's ED25519_keypair_from_seed may be handy. I've been meaning to upstream such an API for the Go stack.

On the OpenSSL side, that means APIs to get at lower-level serializations of the key would be handy

There's already an API for importing raw keys, but nothing for exporting them from OpenSSL, hence #6259.

I've been meaning to upstream such an API for the Go stack.

Here we are: https://go-review.googlesource.com/#/c/115297/


tpm2-tools-2.1.0 and tpm_server (ibmtpm974)

I'm not sure where the problem is (tpm_server, tpm2-tss, tpm2-tools or tpm2-abrmd).
That's why I put link to this issue created by me.
tpm2-tools-2.1.0 and tpm_server (ibmtpm974)
If it's wrong location please close issue. Sorry for that.

Lost track of this one. It was resolved in the TSS some time back. It's also resolved in the tools.


More config/properties auto-completions

First I'd like to say this is a great project. This is saving me an enormous amount of typing being able to easily switch between environments etc. Thanks :+1:
When trying out the config auto-complete I noticed it's not yet supported for all commands.
It does work for kafka-configs:

But when checking this for kafka-[avro]-consoler-consumer, I see that the auto-complete doesn't work yet:

Hi @CasperKoning! I'm glad this project has helped you 😄
Good find, this is definitely not implemented for all commands. I'll take a look and work on pushing out an update!


[Feature] use cmake fetch instead of download with shell script

Search before asking

[X] I had searched in the issues and found no similar issues.

Description
use download-thirdparty.sh to download thirdparty is difficult to understand, and cause the dependency file too large.
Solution
It is recommended to use separate cmake file to manage dependencies, like mysql-server, brpc, e.g..
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

cmake script is obviously harder to understand and modify than shells. could you explain what benifits will the refactor take?

cmake script is obviously harder to understand and modify than shells. could you explain what benifits will the refactor take?

Since the project's be already using CMake, all compilations within the project use CMake consistently. It is not good for C++ projects within a project to use several different management dependencies;
All project libs use CMake and can share compilation parameters, instead of writing compilation parameters separately for each dependency;
CMake can better manage dependencies. For example, A and B refer to C. If C is updated, CMake can sense that A and B are recompiled, but the shell needs to be manually operated;
CMake has better platform consistency, e.g. sed is not compatibility between Linux and Darwin;

cmake script is obviously harder to understand and modify than shells. could you explain what benifits will the refactor take?

Since the project's be already using CMake, all compilations within the project use CMake consistently. It is not good for C++ projects within a project to use several different management dependencies;
All project libs use CMake and can share compilation parameters, instead of writing compilation parameters separately for each dependency;
CMake can better manage dependencies. For example, A and B refer to C. If C is updated, CMake can sense that A and B are recompiled, but the shell needs to be manually operated;
CMake has better platform consistency, e.g. sed is not compatibility between Linux and Darwin;

that looks great. since that's a significant refactor, I think there should be a proposal in dev mailing list first


CORS Preflight OPTIONS request returns "401 Unauthorized"

Hi!
I am currently facing a problem regarding CORS preflight requests in my application. If I want to fetch user data from a protected JSON server route (600), it says the OPTIONS preflight request is missing an authorization header. Therefore, the GET request is not following afterwards and the fetching fails (although I added the correct Authorization header on the initial GET request).
That seems to be an issue with json-server-auth itself because the W3 specs states that a preflight OPTIONS request should never contain any authorization?

You're right, I applied the guards to all HTTP verbs, which is a mistake. Will fix.

Fixed in v2.02 by https://github.com/jeremyben/json-server-auth/commit/7b8d1a0fe9d12b4d527b3a795d4aed9fdcf07961


LSP server get an error after start

Problem description
After I update to nvim 0.10 from 0.9.5 I started to get this error everytime I start lua lsp server.
Error executing vim.schedule lua callback: /usr/share/nvim/runtime/lua/vim/lsp/client.lua:786: Invalid 'data': Cannot convert given Lua table
stack traceback:
	[C]: in function 'nvim_exec_autocmds'
	/usr/share/nvim/runtime/lua/vim/lsp/client.lua:786: in function </usr/share/nvim/runtime/lua/vim/lsp/client.lua:785>

Everything seems to be working, all other lsp servers are fine as well, I don't get any errors.
Why do you think this is an issue with mason-lspconfig.nvim?
This is the only non default plugin related to LSP I use. Here is my config https://github.com/shnaps/dotfiles/blob/main/dot_config/nvim/
Neovim version (>= 0.7)
NVIM v0.10.0
Build type: None
LuaJIT 2.1.0-beta3
Run ":verbose version" for more info
Operating system/version
Linux serenity 6.6.31_1 #1 SMP PREEMPT_DYNAMIC Sat May 18 01:07:55 UTC 2024 x86_64 GNU/Linux
I've manually reviewed the Nvim LPS client log (:LspLog) to find potential errors

[X] Yes

I've recently downloaded the latest plugin version of mason.nvim, mason-lspconfig.nvim, and nvim-lspconfig

[X] Yes

Affected language servers
Lua
Steps to reproduce
Install neovim 0.10.
Load my config
Open any lua config file, wait for LSP server to start
Actual behavior
Everything seems to be fine, LSP server works, I just get the error which doesn't affect anything as far I can tell
Expected behavior
No error
LspInfo
Language client log: /home/shnaps/.local/state/nvim/lsp.log
 Detected filetype:   lua

 1 client(s) attached to this buffer:

 Client: lua_ls (id: 2, bufnr: [23])
 	filetypes:       lua
 	autostart:       true
 	root directory:  /home/shnaps/.config/nvim
 	cmd:             /home/shnaps/.local/share/nvim/mason/bin/lua-language-server

 Configured servers list: html, jdtls, clangd, lua_ls, cssls, ruff_lsp, ltex, typst_lsp

LspLog
Nope, empty

Healthcheck
mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.24.5 built on linux-gnu.`
- OK curl: `curl 8.8.0 (x86_64-unknown-linux-gnu) libcurl/8.8.0 OpenSSL/3.3.0 zlib/1.3.1 zstd/1.5.6 libidn2/2.3.4 libpsl/0.21.5 libssh2/1.11.0 nghttp2/1.62.1`
- OK gzip: `gzip 1.13`
- OK tar: `tar (GNU tar) 1.35`
- OK bash: `GNU bash, version 5.2.21(1)-release (x86_64-unknown-linux-gnu)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- WARNING Go: not available
  - ADVICE:
    - spawn: go failed with exit code - and signal -. go is not executable
- WARNING Composer: not available
  - ADVICE:
    - spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
  - ADVICE:
    - spawn: php failed with exit code - and signal -. php is not executable
- WARNING luarocks: not available
  - ADVICE:
    - spawn: luarocks failed with exit code - and signal -. luarocks is not executable
- WARNING Ruby: not available
  - ADVICE:
    - spawn: ruby failed with exit code - and signal -. ruby is not executable
- WARNING RubyGem: not available
  - ADVICE:
    - spawn: gem failed with exit code - and signal -. gem is not executable
- OK node: `v18.19.1`
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK python: `Python 3.12.3`
- OK cargo: `cargo 1.78.0`
- OK java: `Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true`
- OK JAVA_HOME: `Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true`
- OK javac: `javac 22`
- OK npm: `10.2.4`
- OK pip: `pip 24.0 from /usr/lib/python3.12/site-packages/pip (python 3.12)`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 5000. Limit: 5000. Reset: Fri 31 May 2024 12:49:26 AM.

Screenshots or recordings
No response

Nvm, closing the issue, after some searching I found a reddit post with the same issue and the fix provided there seems to be working as intended. So that was me issue. Link for reference


Use Stylus' newer icon

http://stylus-lang.com/img/stylus-logo.svg
Been around for a few years and it's so much nicer than the old one. Can you easily override it?
I'll open an issue over there too.

Hey Cory, thanks for opening a request on Seti UI. Going to close this out until it is taken care of there.


failure on Ubuntu 18.04, ModuleNotFoundError: No module named 'setuptools'

Hi!  I'm pretty clueless about Python, GitHub Actions, etc.  I've got a project that uses install-qt-action; it has been working nicely for months, using @v2 (but this issue is for @v3, read on), and then that recently stopped working on macos-10.15 with this error (log: https://github.com/MesserLab/SLiM/runs/8253692308?check_suite_focus=true):
python3 -m pip install py7zr==0.16.1
Collecting py7zr==0.16.1
  Downloading py7zr-0.16.1-py3-none-any.whl (65 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.7/65.7 kB 1.5 MB/s eta 0:00:00
Collecting texttable
  Downloading texttable-1.6.4-py2.py3-none-any.whl (10 kB)
Collecting pyzstd<0.15.0,>=0.14.4
  Downloading pyzstd-0.14.4.tar.gz (659 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 659.7/659.7 kB 22.0 MB/s eta 0:00:00
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting bcj-cffi<0.6.0,>=0.5.1
  Downloading bcj-cffi-0.5.1.tar.gz (35 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
  WARNING: Requested bcj-cffi<0.6.0,>=0.5.1 from https://files.pythonhosted.org/packages/97/9c/681442a5b3a5bb3a1210a8ddc6cc6f6a47ea90834b80daa15af767b1c29a/bcj-cffi-0.5.1.tar.gz (from py7zr==0.16.1), but installing version 0.0.0
Discarding https://files.pythonhosted.org/packages/97/9c/681442a5b3a5bb3a1210a8ddc6cc6f6a47ea90834b80daa15af767b1c29a/bcj-cffi-0.5.1.tar.gz (from https://pypi.org/simple/bcj-cffi/): Requested bcj-cffi<0.6.0,>=0.5.1 from https://files.pythonhosted.org/packages/97/9c/681442a5b3a5bb3a1210a8ddc6cc6f6a47ea90834b80daa15af767b1c29a/bcj-cffi-0.5.1.tar.gz (from py7zr==0.16.1) has inconsistent version: filename has '0.5.1', but metadata has '0.0.0'
ERROR: Could not find a version that satisfies the requirement bcj-cffi<0.6.0,>=0.5.1 (from py7zr) (from versions: 0.3.1, 0.4.0, 0.5.0, 0.5.1)
ERROR: No matching distribution found for bcj-cffi<0.6.0,>=0.5.1
Error: The process 'python3' failed with exit code 1

After a bit of head-scratching I realized that @v3 had been released so I updated my tests.yml to that.  Unfortunately, that now gives a different error, now on ubuntu-18.04 (log: https://github.com/MesserLab/SLiM/runs/8254237001?check_suite_focus=true):
/usr/bin/python3 -m pip install setuptools wheel py7zr==0.19.* aqtinstall==2.1.*
Collecting setuptools
  Downloading https://files.pythonhosted.org/packages/b0/3a/88b210db68e56854d0bcf4b38e165e03be377e13907746f825790f3df5bf/setuptools-59.6.0-py3-none-any.whl (952kB)
Collecting wheel
  Downloading https://files.pythonhosted.org/packages/27/d6/003e593296a85fd6ed616ed962795b2f87709c3eee2bca4f6d0fe55c6d00/wheel-0.37.1-py2.py3-none-any.whl
Collecting py7zr==0.19.*
  Downloading https://files.pythonhosted.org/packages/a2/4e/4e09d932374a0a9ced425cf438aabf385ee1dfb1157d0c8cf4de3f35babf/py7zr-0.19.0-py3-none-any.whl (65kB)
Collecting aqtinstall==2.1.*
  Downloading https://files.pythonhosted.org/packages/b8/42/dacb97cbaa19189f9595f056f67de6073b533a47359d4d4bd10ea96be5e0/aqtinstall-2.1.0-py2.py3-none-any.whl (53kB)
Collecting pyzstd>=0.14.4 (from py7zr==0.19.*)
  Downloading https://files.pythonhosted.org/packages/dc/1a/bea7694b0364981e807afe7b21639f47e559ee181b02cee11ceb3fe551b6/pyzstd-0.15.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (377kB)
Collecting pybcj>=0.6.0 (from py7zr==0.19.*)
  Downloading https://files.pythonhosted.org/packages/26/ff/25952179fa892e7d082a34e5917d747d05a227ba3c83dd3adac1c3f0be24/pybcj-1.0.1.tar.gz (2.1MB)
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    ModuleNotFoundError: No module named 'setuptools'

I have no idea what any of this means, but it looks like @v3 is in some way unhappy on ubuntu-18.04.  My next stab in the dark will be to conditionally use either @v2 or @v3 depending upon the platform, if I can figure out the syntax for doing that.  :->  But this seemed like possibly an issue worth reporting; or more likely, you can at least tell me what I'm doing wrong.  Thanks.

Why do you have setup-python set to false? I am thinking that might cause the issue

Why do you have setup-python set to false? I am thinking that might cause the issue

Well, I am not sure – somebody else initially set up the GitHub workflow script for me, and I'm still trying to understand all the details of it.  It's at https://github.com/MesserLab/SLiM/blob/master/.github/workflows/tests.yml by the way.  I think perhaps Python gets set up previously somehow?  It worked fine, with install-qt-action, until it suddenly broke some time between 12 days ago and today.

Upon further head-scratching: there are a couple of "jobs" in the YAML.  The "CLI" job needs python, and installs it, and it does not need Qt so it does not run install-qt-action.  That seems to be fine.  The "GUI" job needs Qt so it runs install-qt-action; it doesn't need python for anything, though, so I guess it passes false for setup-python because it simply doesn't need python.  That used to work with @v2.  I guess it seems like with @v3, install-qt-action is failing with the above python-related error even though setup-python is false (and thus I would expect install-qt-action to simply not try to do anything pythonic at all).  So my guess is that perhaps some part of install-qt-action should be checking for setup-python being false and skipping some pythonic stuff in that case; or maybe setup-python being false should simply no longer be supported, if doing pythonic stuff is now always necessary...?  But I'm still struggling to understand what's going on, so I could be totally wrong about all this.

It looks like with my latest commit to the workflow YAML, I got the CI working by using @v2 for ubuntu-18.04 and @v3 for the other platforms:
      # The jurplel/install-qt-action script @v3 seems to not work on this platform, stick for @v2 for now
      # once https://github.com/jurplel/install-qt-action/issues/163 is fixed this can probably be removed
      - name: Install Qt v2
        if: matrix.qtinstaller_v == 'v2'
        uses: jurplel/install-qt-action@v2
        with:
          version: ${{ matrix.qt }}
          setup-python: false

      - name: Install Qt v3
        if: matrix.qtinstaller_v == 'v3'
        uses: jurplel/install-qt-action@v3
        with:
          version: ${{ matrix.qt }}
          setup-python: false

So it does seem like @v3 is just failing on ubuntu-18.04 for some reason, with the settings I'm using, and reverting to @v2 on that platform fixes the problem.

Okay, so the way it works, setup-python calls the setup-python github action to set up a known working version of python.
The software that actually installs Qt is entirely written in Python and requires a supported version of Python to run.
setup-python is most commonly used for self-hosted runners, where the setup-python github action doesn't work.
It might not be working now because v3 updated the python library's major version--it might be less accepting of old python versions? I would encourage you to just try setting it to true to see if it works.

OK, I'll try that, hold on.

OK, the new build with that fix has gotten past the Qt install on all platforms with @v3, I think, so all seems to be well.  Thanks very much for your advice, flipping this flag would not have occurred to me for a very long time.  :->  Closing.

Glad I could help!


master failing

Master is now failing, probably because of recents additions additon to the camel-main:
error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: org.apache.camel.model.ModelHelper.loadRestsDefinition(org.apache.camel.CamelContext, java.io.InputStream). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Trace:
	at parsing org.apache.camel.main.DefaultRoutesCollector.collectXmlRestsFromDirectory(DefaultRoutesCollector.java:127)
Call path from entry point to org.apache.camel.main.DefaultRoutesCollector.collectXmlRestsFromDirectory(CamelContext, String):
	at org.apache.camel.main.DefaultRoutesCollector.collectXmlRestsFromDirectory(DefaultRoutesCollector.java:119)
	at org.apache.camel.main.RoutesConfigurer.configureRoutes(RoutesConfigurer.java:98)
	at org.apache.camel.main.BaseMainSupport.postProcessCamelContext(BaseMainSupport.java:549)
	at org.apache.camel.quarkus.core.CamelMain.doInit(CamelMain.java:42)
	at org.apache.camel.support.service.ServiceSupport.init(ServiceSupport.java:62)
	at org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2317)
	at org.apache.camel.support.service.ServiceHelper.startService(ServiceHelper.java:71)
	at org.apache.camel.support.LazyStartProducer.process(LazyStartProducer.java:50)
	at org.apache.camel.processor.Resequencer.processExchange(Resequencer.java:302)
	at org.apache.camel.processor.Resequencer$BatchSender.sendExchanges(Resequencer.java:530)
	at org.apache.camel.processor.Resequencer$BatchSender.run(Resequencer.java:455)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:460)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
	at com.oracle.svm.core.code.IsolateEnterStub.PosixJavaThreads_pthreadStartRoutine_e1f4a8c0039f8337338252cd8734f63a79b5e3df(generated:0

@gnodet do you mind having a look ? if not I can have a look on monday

@gnodet found some time, working on a fix


fix: warmup_timestep encoder mis-comm

Currently, the difference between original image and ours is in a rational range. However, there is still a bug that the 2nd image should be exactly same as the 3rd image, but there are still some subtle discrepancy.
query = torch.cat([query, encoder_hidden_states_query_proj], dim=1)
key = torch.cat([key, encoder_hidden_states_key_proj], dim=1)
value = torch.cat([value, encoder_hidden_states_value_proj], dim=1)
...
hidden_states, encoder_hidden_states = (
            hidden_states[:, : residual.shape[1]],
            hidden_states[:, residual.shape[1] :],
)

encoder_hidden_states depends on hidden_states, so the images will be different with different device number.

Has this issue been resolved, or is it still pending for the reasons mentioned above. If not resolved, could you consider doing a scatter to sync the hidden_state after the whole calculation is done. is this necessary?

I think we can merge this PR first, current result is better than before. So far, I have no ideas about how to solve the discrepancy between different device numbers.
query = torch.cat([query, encoder_hidden_states_query_proj], dim=1)
key = torch.cat([key, encoder_hidden_states_key_proj], dim=1)
value = torch.cat([value, encoder_hidden_states_value_proj], dim=1)

inner_dim = key.shape[-1]
head_dim = inner_dim // attn.heads
query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)
key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)
value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)

hidden_states = hidden_states = F.scaled_dot_product_attention(
    query, key, value, dropout_p=0.0, is_causal=False
)
hidden_states = hidden_states.transpose(1, 2).reshape(
    batch_size, -1, attn.heads * head_dim
)
hidden_states = hidden_states.to(query.dtype)

# Split the attention outputs.
hidden_states, encoder_hidden_states = (
    hidden_states[:, : residual.shape[1]],
    hidden_states[:, residual.shape[1] :],
)

We split the hidden_states into different patches, and then concat each patch with encoder_hidden_states before scaled_dot_product_attention. I think it's not easy to get the original next encoder_hidden_states simply from combination of next encoder_hidden_states of different patches. Moreover, the next device needs the encoder_hidden_states from last device at the same time when it receives hidden_states for each patch.


04/09/2018 00:02 : Create Pull Request for branch master -> prTesting1_2018040900

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Cannot import django

Discussed in https://github.com/microsoft/pylance-release/discussions/2308

Originally posted by Rishabh7777 January 29, 2022
I have installed django in my virtual environment and also selected it in VSCode, but still its giving error with Pylance.

This may be related to #1081, and it appears that the current (currently selected) 'python' site-packages is not scanned for the packages.

@msimkins I have not same but related issue. I have created a docker container for my Django app on Windows. When I import anything from django/drf Pylance resolves it and show the import without any error. But the issue is I  have to manually import everything from Django/DRF, Pylance can't hint or auto import any of the Django/DRF class of any module.
here is my .vscode/settings.json for paths:
      "python.defaultInterpreterPath": "/usr/local/bin/python",       "python.analysis.extraPaths": [         "/usr/local/lib/python3.9/site-packages",       ],       "python.autoComplete.extraPaths": [         "/usr/local/lib/python3.9/site-packages",       ],

I answered question on the original discussion (https://github.com/microsoft/pylance-release/discussions/2308). basically, the user selected venv in terminal but didn't pick right venv for vscode. and that's why we don't see django.

@mkhuramj your issue is completely different one. it is happening since we only scan top level symbols for third party lib for auto import.
you can customize the behavior (with perf hit) if you want with our hidden options. see https://github.com/microsoft/pylance-release/issues/2533#issuecomment-1089268739 for more detail.
but in short answer, if you put this in settings.json, viewsets will be picked up
"python.analysis.packageIndexDepths":[["rest_framework",2, true]],


Add helmchart source&condition

This pull request allows to specify helm chart that needs to be automatically updated when a version is available
Solve #28

This is not released yet 😢


[embedded] Skip C++ stdlib for unicode stubs

stdint.h should be picked up from clang/lib/Headers, but is instead being picked up by the system libc++. There's no C++ stdlib being used here, so just exclude it.
Resolves rdar://134584685.

@swift-ci please test toolchain Ubuntu 22.04

@swift-ci please test

Nice, I didn't think of that. If this actually resolves the issue, LGTM!

Nice, I didn't think of that. If this actually resolves the issue, LGTM!

Did locally, but we'll see :)

@swift-ci build toolchain Ubuntu 22.04

@swift-ci build toolchain Ubuntu 22.04

I think we should audit the rest of embedded targets and pass this flag for those targets too.

The only other is concurrency and apparently that's not actually at the point of building right now anyway.


observations

These values hard-coded on biomarker page

2. Scenario names hard-coded instead of getting from dictionary.
3. Threshold hard-coded from SSP2, should be from scenario marked as baseline and should have same color as the SSP line?

4. Maximize button works but card not working in dialog.

5. Maximize button doesn't work.

@bgsandan is there a biomarker endpoint to resolve point 1 on this issue?


Jupyter notebooks and visualizations should be moved to a different package

In the quest for lighting Terra, it seems to me that there is some consensus for moving notebooks [1, 2]
(and the associated visualization tools [3]) to a different repo/package, since they effectively are a layer on top of Terra.
The task associated with this are:

[ ] Confirm the consensus
[ ] Choose a name a create the repo/package
[ ] Move code, tests, and issues for:

[ ] Non-text visualizations associated with notebooks (circuit, city plots, etc)
[ ] Jupyter tools in qiskit/tools/jupyter

This will allow us to move towards a totally network-independent Terra, to reduce the noise associated with issues and PRs on the jupyter layer, and to light dependencies.

I don't think there is a consensus on this, and personally I think it's a really bad idea to remove the visualizations for all the same reasons I outlined in #595. Which is even more reinforced now because we've declared those interfaces as stable since 0.7. It's also a false premise that the mpl and latex visualizations are only used with jupyter, they're often used outside that context with just terra and python. The jupyter helpers in qiskit.tools.jupyter is different though and I'd be fine with spinning off if that's what people want to do. Since that's mostly self contained and not something we've said we were going to provide a stable interface for.
The network utilization in tests is something we can fix independently of removing pieces it is not isolated to jupyter usage. (see qiskit.tools.monitor) People do use those tools outside of jupyter today and that wouldn't be removed if we spun out the jupyter. Although arguably that should live in the ibmq provider not terra now that the IBMQ code lives in it's own module.
The interactive visualizations are different and actually completely untested. I actually don't know if anyone is using them. I'd be all for removing them mostly because of #805 and the being untested, except it's part of the published stable api. So, I'd vote for deprecation in 0.9 and removal in 0.11 (not 0.10 because I think a 2 cycle deprecation for things we've said our stable will give people enough time to migrate).
That all being said I do want to say that while splitting things out into yet another repo can seem like an attractive option, it causes a pain for our users. I don't think a day goes by where I don't have to work with someone who gets confused by the inter-tangled web of dependencies between just qiskit packages (not even considering external packages). Or the fragility of namespace packages going wrong and breaking in a weird way getting someone stuck. It might seem simple to us because we use things everyday, but the more complexity we put in just how we package subsets of functionality causes a lot of pain for end users.

I don't think there is a consensus on this, and personally I think it's a really bad idea to remove the visualizations for all the same reasons I outlined in #595. Which is even more reinforced now because we've declared those interfaces as stable since 0.7. It's also a false premise that the mpl and latex visualizations are only used with jupyter, they're often used outside that context with just terra and python. The jupyter helpers in qiskit.tools.jupyter is different though and I'd be fine with spinning off if that's what people want to do. Since that's mostly self contained and not something we've said we were going to provide a stable interface for.
The network utilization in tests is something we can fix independently of removing pieces it is not isolated to jupyter usage. (see qiskit.tools.monitor) People do use those tools outside of jupyter today and that wouldn't be removed if we spun out the jupyter. Although arguably that should live in the ibmq provider not terra now that the IBMQ code lives in it's own module.
The interactive visualizations are different and actually completely untested. I actually don't know if anyone is using them. I'd be all for removing them mostly because of #805 and the being untested, except it's part of the published stable api. So, I'd vote for deprecation in 0.9 and removal in 0.11 (not 0.10 because I think a 2 cycle deprecation for things we've said our stable will give people enough time to migrate).
That all being said I do want to say that while splitting things out into yet another repo can seem like an attractive option, it causes a pain for our users. I don't think a day goes by where I don't have to work with someone who gets confused by the inter-tangled web of dependencies between just qiskit packages (not even considering external packages). Or the fragility of namespace packages going wrong and breaking in a weird way getting someone stuck. It might seem simple to us because we use things everyday, but the more complexity we put in just how we package subsets of functionality causes a lot of pain for end users.

We are not splitting up anymore than we have -- it is already I bit too much. We can decided on this when we move to 1.0 but for now lets keep it moving forward with features.

Yeah, this splitting is not going to happen anytime soon.  Visualizations are a key part of terra, used in basically every tutorial, presentation etc.  Also, feedback from users indicates that they features are some of the most popular parts of terra.

Since clearly there is not a consensus, I'm closing this issue.
I also think visualizations should stay. Previously I suggested splitting the jupyter tools, but don't have a very strong opinion on it. I think if we end up adding visualization/jupyter tools that deal with let's say aqua, then that might be a reason to have a separate qiskit module for them. Right now they basically deal with terra elements.

For what is worth, I agree with @1ucian0 and believe that moving that layer to another package is a sensible thing and hope it can be reevaluated at some point.
The move would not imply reducing the importance of visualizations, nor incur in changes to the stable interface - as a matter of fact, it would be pretty transparent and straightforward. We already have an example of that transition in the split of the IBMQProvider, which did contain similar implications (popular feature and stable interface) and was rather uneventful.
With the risk of re-hashing older discussions, I think we should also throw into the mix the importance of a lean terra not only for 1.0, but for the present work in other areas. So basically +1 to @1ucian0 !

Curious, what would the "leanness" from splitting do for us? Are any users complaining about the install size?

@diego-plan9 @1ucian0 bump

I dont remember any user complaining about that. It's mostly about testing time and responsibility separation.


fancy zone : rotation of windows in zones

Description of the new feature / enhancement
Have a shortcut that produce a rotation of windows in zone.
Windows in zone i is sent to zone i+1
Window in zone n is sent to zone 1
(and an inverse shortcut with reversed order)
Use case and utility
If user has a setup with a main zone (where most interaction happen), and adjacent zones for extra info, this can be useful. If user needs to work on the window that happens to be adjacent, he/she would like to have that window in the main zone, whithout (a) losing the view on othe windows (b) having to manually interchange the windows.
Scenario when this would be used?
If user has a setup with a main zone (where most interaction happen), and adjacent zones for extra info, this can be useful. If user needs to work on the window that happens to be adjacent, he/she would like to have that window in the main zone, whithout (a) losing the view on othe windows (b) having to manually interchange the windows.
Supporting information
No response

/dup https://github.com/microsoft/PowerToys/issues/1342


Why is it impossible to pass only one argument to createSelector?

Does make it a sense if I pass only one selector to createSelector?
const somePartOfStateSelector = createSelector((state => state.somePart))

Nope, and in that particular case there's no reason to even use Reselect at all.  There's no point to memoizing a selector that only returns a value.  Memoization is only useful when you're deriving data.

thanks


Feature/projects in common

Purpose
Exclude deleted projects from projects_in_common count.

Changes

Side effects

Ticket

https://openscience.atlassian.net/browse/OSF-6893

Looks great. RTM when tests pass. 🎉 🐧 🎉


Support L293DD

Hi I'm working on a ESP32 open hardware bot: https://github.com/rosmo-robot/micro-bot/tree/master/Hardware/V2.11
Would your code support this hardware?

I guess the biggest change would be hall encoders?

Hall encoders need 2x pins each, so I don't think ESPcam has sufficient pins?
https://github.com/rosmo-robot/micro-bot/blob/master/Hardware/V2.11/Minisumo_V2.1.pdf

Maybe with https://www.aliexpress.com/item/1005004360195123.html

Sorry I have not responded, I've been focused on Donkeycar.  I'm back on this project.  Yes I have one of the new Esp32 cams as well and they have more pins.
With the older cam we can still use the hall encoder but we would only use one channel per wheel.  Alternatively we could change the bot so that it could not reverse - that gives use two pins to use which could be used for the second encoder channel on each wheel; however that doesn't really get use much because if we can't go in reverse then we don't need the encoder to be able to detect this and so a single channel encoder is fine.

We can support the L293D with the current code I think because the L9119 and the L293D both use two PWM pins per motor to handle forward and reverse.


DEFAULT.QC_Accessibility_Eservices - Defect # 520

Description:
Examine the outline view to ensure that:
Headings and Page Title are present,
The headings are nested correctly, and
The headings provide an effective overview of the contents of the page.
Expected:
Heading structure is correct.
Remember to close the outline view window.
Actual:
Page has no H1 header.
screenprint attached

Hi @marklunn, is this different from issue #82?

Closed due to duplication


Transformation Matrix throws off interaction

Hello, if there is a transformation matrix on the container div, the waveform loads and displays, but the interact portion gets thrown off.
In this example, you can see for yourself if you add transform: matrix(0.5, 0, 0, 0.5, 0, 0) to the #waveform div
Is there any way to remedy this or should I disable user interaction and manually listen, setting seekTo based on cursor position? If this is the case, how can I set the currentTime with a manual seekTo so when I hit "play" it plays from that point?

@mayorbyrne you probably need to apply the transform on the waveCtx in wavesurfer.drawer.canvases[0].waveCtx (and do it for every canvas in that canvases array).
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/transform


Didn't resolve at build time, it will remain unchanged to be resolved at runtime

Hi @Applelo
While building the project it gives such messages when using in sprite view styles
"didn't resolve at build time, it will remain unchanged to be resolved at runtime"
Is this normal?
I am using my icon mixin:
// Example:
// @include icon("icon", "background or mask")
// Snippet: icon

@mixin icon($name, $mode: 'mask')
	#{$mode}: url('/__spritemap#icon-#{$name}-view') center no-repeat

&::before
			content: ''

			display: block

			width: rem(24)
			height: rem(24)
			margin-bottom: rem(4)

			background-color: var(--color-primary-500)
			mask-position: center
			mask-repeat: no-repeat
			mask-size: contain

			@include icon("blockquote")

vite v5.0.2 building for production...
transforming (3) scripts/plugins/vanilla/index.ts
/__spritemap#icon-blockquote-view referenced in /home/tirozit/projects/frontend-template/src/styles/main.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime
transforming (53) components/utils/form/InputTextarea.vue
/__spritemap#icon-checkmark-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputCheckbox.vue?vue&type=style&index=0&scoped=9105ec58&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-clip-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputFile.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-close-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputFile.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-lens-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSearch.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-close-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSearch.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-arrow-right-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSearch.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime
transforming (93<EMAIL_ADDRESS>/__spritemap#icon-calendar-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputDate.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime
transforming (256) components/utils/templates/ui/IconSVG.vue
/__spritemap#icon-chevron-down-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSelect.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-close-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSelect.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime

/__spritemap#icon-spinner-view referenced in /home/tirozit/projects/frontend-template/src/components/utils/form/InputSelect.vue?vue&type=style&index=0&lang.sass didn't resolve at build time, it will remain unchanged to be resolved at runtime
✓ 280 modules transformed.

If you don't have any bugs related to the message, yes this is normal. Vite is trying to find the __spritemap url but this is doesn't exist on build. Don't worry, the path (__spritemap) is transform by the plugin. I will let this issue open to try to resolve because this is a annoying log warning ^^

Should be fix in the next version


Clicking an entry in Inventory leads to a 404 page to sales rep

Description
When logged in as a sales rep, clicking any entry in the inventory list of vehicles redirects to a 404 page.
Steps to reproduce

Login with sales rep account
Click on Inventory in the sidebar
Click on any entry in the inventory table
A redirect to a 404 page will occur.

Screenshots

Will check this out, seems to be a forbidden access problem being thrown in the backend API

@AbdulSir the problem is that the VehicleDetails page is fetching dealership users and the route is protected for users with role 'Administration' and 'Management'. I've removed the check "hasPermissions" since I think everyone should be able to fetch the dealership users. Let me know what you think.

@AbdulSir the problem is that the VehicleDetails page is fetching dealership users and the route is protected for users with role 'Administration' and 'Management'. I've removed the check "hasPermissions" since I think everyone should be able to fetch the dealership users. Let me know what you think.

@purplesmurf1998 Thanks for looking into it. Yes, indeed that seems to be the issue. It has been fixed now as you have suggested. I don't foresee any security concern if we increase the role access for the getUsers route.
@qandeelarshad Thanks for flagging this issue. it has been addressed now.


feat: Parametrize iana database download_url

Make IANA timezone database download url overridable.
Closes #143
On application config:
config :tzdata, download_url: "https://data.iana.org/time-zones/tzdata2024a.tar.gz"

I think this new config should also be explained in the README so its discoverable in the documentation

thanks


Different hitbox models than normal cs:go.

Is there any pull to get the actual hitboxes and hit head as supposed?

anyone able to help how to fix the hitboxes?


juju: 2.9.35 -> 3.0.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/juju/juju/releases.
meta.description for juju is: "Open source modelling tool for operating software in the cloud"
meta.homepage for juju is: "https://juju.is"
meta.changelog for juju is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.0.0 with grep in /nix/store/5zqk3c54avn0dyxnd9k3y5nv574wwhh2-juju-3.0.0
found 3.0.0 in filename of file in /nix/store/5zqk3c54avn0dyxnd9k3y5nv574wwhh2-juju-3.0.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
juju

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/5zqk3c54avn0dyxnd9k3y5nv574wwhh2-juju-3.0.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A juju https://github.com/r-ryantm/nixpkgs/archive/ff9027479e450bbae62c8111081c4809bc09f241.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/5zqk3c54avn0dyxnd9k3y5nv574wwhh2-juju-3.0.0
ls -la /nix/store/5zqk3c54avn0dyxnd9k3y5nv574wwhh2-juju-3.0.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

juju

Maintainer pings
cc @CitadelCore for testing.

@ofborg eval

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/juju/juju/releases.
meta.description for juju is: "Open source modelling tool for operating software in the cloud"
meta.homepage for juju is: "https://juju.is"
meta.changelog for juju is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.0.2 with grep in /nix/store/0lmvkri5vblmgi5irh3h8mjpbynrii1g-juju-3.0.2
found 3.0.2 in filename of file in /nix/store/0lmvkri5vblmgi5irh3h8mjpbynrii1g-juju-3.0.2

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
juju

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0lmvkri5vblmgi5irh3h8mjpbynrii1g-juju-3.0.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A juju https://github.com/r-ryantm/nixpkgs/archive/aecff9f06122bd64ea016258c1a5832c49cbe7ae.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0lmvkri5vblmgi5irh3h8mjpbynrii1g-juju-3.0.2
ls -la /nix/store/0lmvkri5vblmgi5irh3h8mjpbynrii1g-juju-3.0.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

juju

Maintainer pings
cc @CitadelCore for testing.

Please reopen.


Support a static page for snapshotting

right now the main page loads HTML with some javascript and then fills in all the temperatures and forecasts with AJAX calls.  It would be handy to have an alternate version of this page that didn't use any AJAX.  If some one wanted to render page on a simpler device, like the browser on a kindle, then this static page would work better. As well, if anyone wanted to show an image of the web page, this static version would work better for that.

fixed in #107


Install runtime dependencies

libevent-dev
libapr1-dev
These are required for gpfdist.

We fixed the runtime versions for the two libraries added for this story.
Additionally, we added a chore to review other libraries with this problem at a future time.
Dismissing reviews based on this (fixed) problem.

@larham can we delete the branch?

Done.
On Mon, Apr 16, 2018 at 1:53 PM, Goutam Tadi<EMAIL_ADDRESS>wrote:

@larham https://github.com/larham can we delete the branch?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/greenplum-db/debian-release/pull/3#issuecomment-381710833,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAsLumg62v57zZjcefhktB8sXRfhY72Uks5tpOiugaJpZM4TSLim
.

--
Shin
Pivotal | Sr. Principal Software Eng, Data R&D


fix storage attach host sync status

这个 PR 实现什么功能/修复什么问题:
fix storage attach host sync status
是否需要 backport 到之前的 release 分支:
release/2.9.0

Codecov Report

Merging #1316 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1316      +/-   ##
=========================================
+ Coverage    7.85%   7.85%   +<.01%
=========================================
  Files         372     372
  Lines       58370   58357      -13
=========================================
  Hits         4586    4586
+ Misses      53386   53373      -13
  Partials      398     398

Flag
Coverage Δ

#aFlag
7.85% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

pkg/compute/models/wires.go
2.04% <0%> (-0.01%)
:arrow_down:

pkg/compute/models/vpcs.go
2.18% <0%> (+0.07%)
:arrow_up:

Continue to review full report at Codecov.

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

/approve
/lgtm


gui_input() stops on the scrollbar of a ScrollContainer

Tested versions

v4.3-stable

System information
Godot v4.3.stable - Windows 10.0.19045 - GLES3 (Compatibility) - Intel(R) HD Graphics 620 (Intel Corporation; <IP_ADDRESS>1) - Intel(R) Core(TM) i5-7300U CPU @ 2.60GHz (4 Threads)
Issue description
When using the signal gui_signal() hovering over the scrollbar part of it does not trigger the signal, im unsure if this is a bug but it feels like one as every other part of the container triggers the signal.
extends Node2D

var on_ui : bool = false

func _process(_delta):
	print(on_ui)
	on_ui = false

func on_gui_input(_event):
	on_ui = true

Steps to reproduce

Create Scrollbar with an overflow so the scrollbar appears
Add the code above and link the signal gui_input(event) to the function on_gui_input(_event)
Run the game and run the cursor up and down the scrollbar and it will continue to output false

Im unsure if this is a bug but running my cursor on anything else that i have linked to my function with gui_input(event) always triggers the function.
Minimal reproduction project (MRP)
N/A

This is because the ScrollContainer doesn't want the events from the ScrollBars, so it doesn't have them propagated.
To get the gui events from the scrollbars you can use get_v_scroll_bar() and get_h_scroll_bar() and connect to their gui_input signal.


Progress toward bayes model fixes

Improve capacity to explore prior and posterior distributions, which are giving me trouble in the Bayesian models.
Along the way, and also in response to other data processing needs that have arisen this week, miscellaneous bug fixes and two new data prep functions.

Coverage decreased (-1.6%) to 65.337% when pulling 4b69ef7d7b9ed6fbe80fbb020e74d6762f14ac80 on develop into 433c15b1fa7da171e64152fbbc401d0ee8d023e1 on master.


Feature Request: Tiered option for Menu Component

Bug, feature request, or proposal:
Ability to create tiered menu with Menu component
What is the expected behavior?
When a user hovers over a specified element, a sub men is opened next to it. Similar to Chromes menu
What is the current behavior?
None exist
What is the use-case or motivation for changing an existing behavior?
I would like the ability to created a tiered menu instead of having to create multiple menus side by side.
Which versions of Angular, Material, OS, browsers are affected?
2.0.0-alpha.9

This is planned for md-menu.

Excellent :)

Any ETA?


Make access_cloud_sql explicit in build steps

Previously the Dockerfile generation for the Ruby runtime always prefaced build steps with /build_tools/access_cloud_sql (which starts the cloud_sql_proxy) if there is a CloudSQL instance present in the configuration. This bit of "magic" usually does the right thing, or at least doesn't do any (significant) harm. But it is often unnecessary, and having this extra magic has been making me uncomfortable. It is also inconsistent with how other runtimes that allow configuring of build steps work (e.g. node and elixir).
Changing this so that /build_tools/access_cloud_sql must be explicit in the build step (as configured in app.yaml) if it is desired. We adjust the code that computes the default build step (for Rails apps) so it includes /build_tools/access_cloud_sql in the computed default if there is a CloudSQL instance present. Thus, if the user leaves everything as default, this change will have no effect. However, if the user customizes the build steps in app.yaml and there is a CloudSQL instance, the customized build steps would have to be modified to include /build_tools/access_cloud_sql explicitly. Because we have not documented anywhere that the build steps are customizable, we do not expect anyone to be using this feature yet.

Googlebot I'm already a internal member of the org. What's going on?

I signed it!

I signed it!


support native geth tracer, and configure it by default

Prepare for invocation of native parsing support in l2geth.   Right now this appears to be a no-op as the callTracer string just grabs the same javascript parser that we are currently passing in as an argument.

Thanks @roberto-bayardo ! I didn't know you were working on this. I have an old PR that uses the native tracer - https://github.com/Inphi/optimism-rosetta/pull/28. It needs a bit of tending to for conflicts. It also adds a config option to use the native tracer. Perhaps we can merge that PR into this one?

this was just a quick experiment to see if it would help (until I found out it was effectively a no-op), so not actively working on it beyond that.  Whatever you think is the best path forward is fine by me.

gotcha. I'll close this and finish up the other PR then.


Can't bind-mount read-only if there are outstanding writable FDs.

I noticed this when trying to make flatpak/bubblewrap work with WSL. Flatpak sets up a new filesystem namespace with a tmpfs as root, and then tries to bind-mount readonly a regular directory on top of /usr.
This happens as first a MS_BIND $src /usr, and then MS_BIND|MS_REMOUNT|MS_READONLY /usr. Under WSL, this operation will fail with EBUSY whenever any process has an outstanding writable file-descriptor anywhere on the same filesystem that has the $src directory (ie. typically any file on the root lxfs).
This is a problem in general, as there is no way in general to guarantee that nothing is writing to the filesystem at any point, but it is especially tricky for flatpak as it writes and unlink temporary files that are then passed into the bubblewrap sandbox.
I've worked around this for now in the wip/WSL branch by just disabling the read-only option: https://github.com/projectatomic/bubblewrap/commit/9dc34989c6bb50a71ee9cdd4a2e60457385f8389

This scenario will behave correctly on WSL2 /usr, which is ext4.


entgql: Limit fields selected from db when using CollectFields

todoTestSuite TestPaginationOrder breaks if remove priorityOrder field from the query... So have to fetch any fields that are used in ordering as well. Otherwise cursor will be wrong


refactor: remove unnecessary retry logic from data injection

Description
This change removes the retrying in data injections, as it does not have any effect. The current implementation will only retry at a single condition which is when the pods returned from the wait function is empty.
https://github.com/zarf-dev/zarf/blob/0943d76b25464ab7ad948b4c93957b22d966c02b/src/pkg/cluster/data.go#L88-L90
This event wont actually happen because the wait logic will run until the context cancelled if the pod list is empty. This means that returning an empty list is impossible.
Removing the nested retry implementation increases legibility.
Related Issue
Depends on #2856
Checklist before merging

[ ] Test, docs, adr added or updated as needed
[ ] Contributor Guide Steps followed

The data injection can not be tested in its current state as it is shelling out to both tar and kubectl. What exactly should be tested here maybe other than waitForPodsAndContainers ?

Yeah, upon re-review it will be too burdensome to try and write functional tests for HandleDataInjection without a major refactor of the functionality itself.


Scoping Issue with nested loops

for a in ["A","B"]
    - var b = a
    for c in ["C","D"]
        - b = b + c;
    p=b

Should result in:

ACD

BCD

But the result is:

AB

AB

The first one actually works in jade4j. But this one does not. If I put an if in front of the loop and reassign a variable it doesn't work.
- var value = ""
if true
  - value = "Hallo"
p=value

- var x = "A"
for a in ["B","C"]
  - x = x + a
p=x

Should result in:

Hallo

ABC

But the result is:

Hallo

A

Fixed in 1.3.1


[hotfix] Add MiniClusterExtension to ITCase tests

Purpose of the change

Text for ITCase MiniCluster ArchUnitTest has been changed for Flink 1.18. This PR removes the need for this exception violation in ITCase, by registering a local MiniCluster environment in the Firehose ITCase.
Change in the github workflow is merely to show that this case passes against 1.18-SNAPSHOT. It will be removed before merging.

Verifying this change
This change is to fix breaking ArchUnitTests.
Significant changes
(Please check any boxes [x] if the answer is "yes". You can first publish the PR and check them afterwards, for convenience.)

[ ] Dependencies have been added or upgraded
[ ] Public API has been changed (Public API is any class annotated with @Public(Evolving))
[ ] Serializers have been changed
[ ] New feature has been introduced

If yes, how is this documented? (not applicable / docs / JavaDocs / not documented)

Verified that checks against 1.18-SNAPSHOT pass


Allow React nodes as labels

This is 1/2 feature request and 1/2 curiosity as to how it would be done. Instead of a template, I'd like to pass in a react component, which essentially has the same (data) => DOM API as the template, but renders a node instead of a string.
I'm going to play with using React's render to string method, but I don't think that will work with event handlers.
I think it would be possible, but will have to dig into the code to figure it out. Any guidance or opinions would be helpful.

This would be awesome, I'm really interested if there's been any progress on this issue

We're using another component that tracks the node positions and renders a layer of react elements "on top of" the graph. It seems to work well and I probably won't go about implementing this.
I'm going to close the ticket, but if somebody were to implement it I would definitely be interested.

@smith Would you mind sharing what component that is?

It's not open source, unfortunately. There's a cytoscape components that forceUpdates every time certain events happen (mostly viewport) and then a child-as-function component that takes the cytoscape object and creates react elements from at the node positions, so something like:
<Cytoscape options={...}>{cytoscape => {
   // something with cytoscape.pan(), .zoom(), .height()
   const transformedStyle = { position: 'absolute', transform: `translate(${x}px,${y - height}px) scale(${zoom})` }
   return
{cy.nodes().map(node =>
	  <Node {... style props from the node object to position the node} />
   )}

}}</Cytoscape>

hope that makes sense.

@smith Yeah, figured it would be something like that. Thanks 👍

This works for me:
import { renderToString } from 'react-dom/server';
...
cy.nodeHtmlLabel([
  {
    query: 'node[label]', // cytoscape query selector
    tpl(data) {
      return renderToString(<ItemLabel data={data} />);
    }
  }
]);

@tsi Could you let me know how you sucessfully registered the nodeHtmlLable function to your instance of cytoscape in React?
I am having trouble importing the library and then using the library with my cy instance.
I am converting my plain js project to React but my program errors when I try to register my cy Instace (created with cytoscape-react).  The messages complains that 'cy is not a function'.
Any further details of how you got the library orking in react would be really helpfull!!


Option to get info by "out geom;"

Dear Geoff Boeing,
I was wondering if there any way to get map data using graph_from_point function with output configuration as "out geom;".
Having looked though the code, I haven`t find any way to do it :(

No, that's not built into OSMnx as the purpose of the library is to construct networkx graphs (or geopandas GeoDataFrames) from OSM data. You could always use OSMnx to save its geometry to disk as a shapefile or graphml or somesuch for ingestion elsewhere.


Support Cucumber 3 BeforeStep hooks in the report

Related to https://github.com/trivago/cluecumber-report-plugin/issues/65

Failing before step hooks will be displayed in 1.2.0


Remove previous role on level up

Hi there,
Would it be possible to have an option to remove the previous role given for leveling up? I've got level tags at the minute, aka level 1, level 2 and the bot gives them out perfectly fine, but the user ends up having a bunch of tags, if it could check for example if (level >=2) then remove previous levels tag that would be super handy!

https://feathub.com/Kwoth/NadekoBot
^close issue. Ask here. Ask friends to upvote so your suggestion will be implemented!


🚧 WIP: update semantic conventions in a non-breaking way

This is very WIP, but wanted to get it off my computer and into the light.

[x] 1.10.0 -> 1.20.0
[ ] 1.20.0 -> ??? ... in progress, this involves pulling a different repo for the source of semantic truth

cc: https://github.com/open-telemetry/opentelemetry-ruby/pull/1237

I think I'll close this attempt in favor of #1651. If we go back to producing version-number namespaces, we can reopen this PR.


Downloading a list of videos stops when one of the videos has been removed by the user

I think if one video has been removed, it should continue processing the list and not die.
im  getting

"ERROR: <<ID_HERE>>: YouTube said: This video has been removed by the user.

Use --ignore-errors.

thanks.
Shouldn't  a message explaining this be given when killing the app?


Clarification regarding sampling rate support for SkypeforBusiness Audio Specification Personal_Devices_Custom_Processing

I have a question regarding audio sample rate restriction that is set in SkypeforBusiness_AudioSpecification_Personal_Devices_Custom_Processing_3_0_Final.pdf
The document states:
Skype will enable the offloading only on products verified to provide sufficient quality. The logo specification testing is one and most important input to this decision, but other checks can be included depending on the product group and complexity of the product. The enabling of 3rd party audio processing object processing can be rejected or revoked in some cases listed below:

Custom processing enables only wideband audio (16kHz sampling) whereas Skype processing can enable super wideband audio (24kHz sampling) in the same device.

I wonder what do you mean saying "enable wide band audio"? If actual processing of my app is done on 16k, but it works with any sampling rate by down/upsampling to 16k if needed, can I say that my app enables super wideband?

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

ID: 6da8e2d9-613a-570b-9755-5161bc39acf7
Version Independent ID: 5ef5dc6f-f1af-2e6f-350a-4a65bf9e8a8d
Content: Skype for Business and Teams certification program
Content Source: Skype/SfbPartnerCertification/certification/overview.md
Service: skype-for-business
GitHub Login: @jambirk
Microsoft Alias: jambirk

Hello @a-martirosyan , if you work for one of our active partners in the certification program please forward questions about the specification through the regular communication that we already have. Otherwise if we believe we can make changes to clarify this question we'll do so on the next release of the specification.

@dougand-MSFT I don't have another communication channel. I'm just interested in evaluating my technology to see where it stands in terms of skype test spec. This is one of the questions that was not clear from the doc. I also have another question regarding test vectors that are assumed to be taken as cleen speech examples (page 73). It would be good to have opportunity to clarify these. How can I clarify these questions now?

Hello @a-martirosyan we currently discuss the specs in detail with our active certification partners, but this is not a breadth program so we are not able to answer general spec questions in this forum.

@dougand-MSFT can you pls point me to the right forum/person who can clarify these things for me?


Toggle URL

Hello,
I have some Somfy blinds. Would it be possible you add some parameter to enter a « toggle_url »? Then I could avoid to install an extra plugin to add buttons for toggle url.
Thanks in advance!

Not sure I understand why this would be needed @genfersee ?
Maybe you can describe your use case a bit better. I don't see an issue putting the same URL for both up and down if you only have a toggle option?
Your suggestion gets very complicated though because up and down are not exactly how the blinds work on HomeKit. It just requests a value 0-100 for blind position... so what happens with toggle if the value is 50? Anyway, let me know your thoughts.

Hi! :)
Well in fact, my Somfy blinds has 4 command urls:

1 for up,
1 for down
1 for stop
1 for toggle

The toggle command sends the contrary of the last command send:

If the blind is already down and you push toggle, the blind will go up
If the blind is already up and you push toggle, the blind will go down
If the blind is moving down and you push toggle, it will change direction and move up
If the blind is moving up and you push toggle, it will change direction and move down

My usecase is that I have a programmable homekit stateless button. I want to link the toggle URL to this button to have:
1 press and blind is going up
1 press and blind is going down
1 press and blind is going up
Hope it helps :):)
Tahnks in advance!

Maybe I'm missing something, but doesn't Homekit already do this? Just click on the blinds button.

1 press and blind is going up
1 press and blind is going down
1 press and blind is going up

Thinking about this some more though, if this feature was added, it won't work with your approach unless the plugin creates this stateless button (similar to the stateless 'stop' button that can be optionally exposed).
So, then you are proposing it would just track whatever the last command is and send the opposite, right?

So, then you are proposing it would just track whatever the last command is and send the opposite, right?

Or, would it send the toggle_url you have provided? I guess either way, the button needs to be exposed by this plugin.

Yes, exactly like the secondary stop button: your plugin would create another secondary toggle button, calling the toggle url we would define in config.json.
Then,

Maybe I'm missing something, but doesn't Homekit already do this? Just click on the blinds button.
When setting some action for my stateless programmable button in Homekit interface, I have to set an accessory. Currently, I can only choose "blind up", "blind down" or "blind stop". But I need this "blind toggle" secondary button...

I meant, why is a toggle button even needed? Isn't the "built-in toggle" of up/down with the existing Homekit button sufficient? Or, is there some other use you're proposing?

Let me show you the interface I have to setup my stateless programmable button.
As you can see in picture below, I need to define the accessories to be called when button is pressed.
So what I would need is a toggle button as shown below (currently made via another plugin).
The point is that if I use your plugin, I can only set "blind up", "blind down" or "blind stop", whereas I need "blind toggle".
Hope it helps :)

@genfersee I had some time to think about this idea. I realized there is a fundamental problem with the described concept that conflicts with the nature of the plugin.
If we expose a button for a separate toggle URL, the plugin will completely lose track of the blind position. Because, we have no knowledge whether the toggle URL will be taking the blinds up or down. This will disrupt the position of the blinds within HomeKit. Furthermore, the other standard functionality (sending stop commands, etc.) wouldn't be available.
So, an alternate approach would be to expose a button and let the plugin decide whether to send the up or down command. This could be done by recording which command was sent last (up or down) and sending the opposite command. I'm not sure how popular of an idea this would be though or if it would fit your use case.
I think the functionality you're after might be best implemented within Node-RED. There are several HomeKit plugins for Node-RED that I think would allow you to take advantage of the functionality you're looking for and design the correct logic for your use case. For example, you could create a switch that would either send the "up" or "down" command to the blinds based on their current position, time of day, etc.

Thanks for your answer! I understand the design issue.
The alternate solution you propose would indeed work great for me since I am exclusively using your plugin to control my blinds!

@genfersee OK, I've enabled this feature. Hopefully it will be useful to you!
Please see the instructions. Essentially, you'll need to do the following:

sudo npm -g install<EMAIL_ADDRESS>Add show_toggle_button: true to your config.json for each blinds you want to add a toggle button for.
Restart homebridge

Please give it a try and let me know your feedback.

Hi @dxdc,
I have just installed the 1.3.10, and configured config.json as follow:
I also added defines a toggle url in the config, maybe I did not use the correct syntax?
    {
        "accessory": "BlindsHTTP",
        "name": "Bureau Sud",
        "up_url": "http://192.168.33.xx/control?cmd=up,typ,som,did,yyy,aid,22,acmd,1,seq,3,smk,0,1&id=22",
        "down_url": "http://192.168.33.xx/control?cmd=down,typ,som,did,yyy,aid,22,acmd,0,seq,3,smk,0,0&id=22",
        "stop_url": "http://<IP_ADDRESS>/control?cmd=my,typ,som,did,yyy,aid,22,acmd,3,seq,3&id=22",
        "toggle_url": "http://<IP_ADDRESS>/control?cmd=my,typ,som,did,yyy,aid,22,acmd,3,seq,3&id=22",
        "show_stop_button": true,
        "show_toggle_button": true,
        "motion_time": "36000",
        "http_method": "POST",
        "trigger_stop_at_boundaries": false
    },

I have the following error logs:
[2020-2-10 7:39:40 PM] Error: Cannot add a Service with the same UUID '00000049-0000-1000-8000-0026BB765291' as another Service in this Accessory without also defining a unique 'subtype' property.
at Accessory.addService (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:152:15)
at /usr/lib/node_modules/homebridge/lib/server.js:471:19
at Array.forEach ()
at Server._createAccessory (/usr/lib/node_modules/homebridge/lib/server.js:451:14)
at Server._loadAccessories (/usr/lib/node_modules/homebridge/lib/server.js:309:26)
at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:91:38)
at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:59:10)
at Object. (/usr/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
[2020-2-10 7:39:40 PM] Got SIGTERM, shutting down Homebridge...

Hmm. I didn't test the stop and toggle buttons together. Maybe some minor issue there, will correct it. In the meantime, try disabling the stop button and just testing the toggle functionality:
"show_stop_button": false,

@genfersee Just added the missing subtype (I believe). Try: sudo npm -g install<EMAIL_ADDRESS>as per above.

@dxdc,
Much better! Now it is working! Thanks you so much, I can not get rid of the extra plugin I was using to create the toggle switches ;)

I see now a small issue:
After a few up and down, if for example the blind is set as closed in Home app, and I tap on toggle button to open it, then the state of the blind on the main icon is inconsistent:

it is marked as closed while the blind is going up
After the blind is physically up, the state of the main blind icon shows "closing" instead of "opening" and remains in that state forever

@genfersee I made a number of minor changes to the code that I'm hoping will help with stability within HomeKit and reflecting the correct values. I also changed the way the toggle functionality works that I think is superior.
Please update again and test.

@dxdc this works really great now! I always get a consistent state in main blind icon!
Thanks you very much!
I noticed however a strange behavior:
If blind is up or down, and you set it to go at 59% for example, then you can see that the plugin is generating a huge bunch of lines in the logs, several per seconds:
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:03 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:04 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:05 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:06 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:07 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)
[2020-2-11 8:04:08 AM] [Bureau Sud] End Move down (to 59%)

After a whole reboot of the Pi, I see a strange issue. Before restarting it, when I tested, everything was going ok (except the log I sent just before). Now, when I press either the main blind button, the stop button or the toggle button, they all remains in "ON" state forever until I tap a second time on them. Before, the stop and toggle button were returning to "OFF" state right after tapping, and the blind main icon was waiting for move duration timetout to change state, which was correct. Now this does not work anymore.
For example: case where blind is up, blind main icon is showing "ON" and "up", stop and toggle icons are "OFF".
I tap on stop button, it remains in "ON" position forever. If I leave iOS Home app to main icons screen and then go back in Home app, then we can see that the stop button gets properly reset to "OFF" position.

... and previous issue still present.

@genfersee I saw these issues too and believe I've rectified them. This includes this issue, which I have seen too:

For example: case where blind is up, blind main icon is showing "ON" and "up", stop and toggle icons are "OFF".

I'm still waiting for some additional testing on another issue, but for now, you can download/manually patch your version for now if you like and report back! I'm hoping I can push this as a new release this week. Appreciate your reporting.
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js

@dxdc I won't have access to the Pi today, so I will wait your next official release!

Released. Please open a new issue if you still experience issues.

@dxdc Thnks for this major release, I will test it over the weekend and let you know!

Hi @dxdc! After some testing, everything seems to be fixed and works properly, this is really great, thank you so much for your help!

... and I will be glad to offer you a beer if you have a Paypal account! ;-)

Sure that would be appreciated! :) You could send it here..

@dxdc sent! Thanks again for this custom development!

Thank you!


Rs-h

Just figured it worth letting you know that its impossible to register on Rs-h, Emails don't arrive, no inbox no junk. I have tried to register maybe 6 times in the past.
If you can do something or let someone know - would be brilliant.

Ian.

Noticed them on Slack (https://slack.runetek.io/). Hopefully it'll be fixed.


Apply s3utils.EncodePath to match signature gen

Summary
Don't rely on net.URL to escape, as it correctly applies RFC 3986 and doesn't bother escaping a + in the URL. Instead, apply s3utils.EncodePath to the URL, matching the way the minio signature package builds the canonical URL and avoiding a signature mismatch.
This change should be accompanied by reverting https://github.com/mattermost/mattermost/pull/23849, but we'll still need to keep the code to try the "newer" path until we can migrate the files incorrectly named during the deployment window.
Ticket Link
Fixes: https://mattermost.atlassian.net/browse/MM-51753

Also, I assume you have verified that this works on top of https://github.com/mattermost/mattermost/pull/23849 right?

So if we deploy this, we have to do the reverse migration of migrating the encoded files to the unencoded ones right?

Yes, that's correct. (Effectively, we only have to fix 1-2 weeks worth of files, vs. the last 2 years of uploaded files on S3.)

Also, I assume you have verified that this works on top of mattermost/mattermost#23849 right?

No, we have to revert that change for this to be meaningful. Mattermost is effectively double-escaping, and there's no point in hard-coding a double unescape here. What should still work is our double read from Mattermost.

This is good to merge now.


[Y2K-1554] Integrate SelectionPopup into channel member screen

@jakob223 I previously hadn't integrated this, but now it works. It still doesn't have relevant buttons though. Will add a separate ticket for that.

No, we just didn't have a ticket. I'll make one.


Allow queries with no aggregators.

This is actually reasonable for a groupBy or lexicographic topN that is
being used to do a "COUNT DISTINCT" kind of query. No aggregators are
needed for that query, and including a dummy aggregator wastes 8 bytes
per row.
It's kind of silly for timeseries, but why not.

👍

I was looking at this last week and wondering the same :)

👍, can you also modify query docs to mention that aggregates are optional ?

@nishantmonu51 updated docs

Was just about to open an issue for this, but you fixed it before I had the chance! 👍