Chasing these missing phy-XXX-i errors.

Network node setup is always done via a queue message, even if local.
DHCP is no longer recreated for every instance on a freshly started
hypervisor. Instead, we do that when the network node restarts.

It doesn't get to the destination, but its getting us closer and is getting a bit big. How do you feel about merging this one? Note that the biggest change here is that all network node work is now done via queues, there is no fast path for if you're on the network node already.


[UI] Weird location of the slow mode button in portrait mode

Not sure if it is wanted or not. Is it normal that in portait mode, the "slow-mo" button is on the right?

Reproduce:

Go to https://makecode.microbit.org/
Set the web browser's window in portait.

We did this intentionally but it is confusing. There just isn't any room over by the simulator; might be worth revisiting.

I see. As a new user of MakeCode, it looks confusing, I agree. If a consumer consider it as a bug it could give him a bad opinion of the product. Is not possible to make the footer a bit taller and having a small white space at the bottom of the microbit board?

Making the footer taller might be problematic on mobile. I guess they can always just collapse it but it already takes up a lot of real estate.

This is intentional. We will revisit this later if we hear back from more users. Closing this for now.


Values supported in WalletConfig 's wallet_key_derivation field are not obvious. Should be enum, or documented.

Indy Wallet's create_indy_wallet function takes a WalletConfig structure as input for wallet creation.
One of its fields wallet_key_derivation is typed as String, but the implementation supports only a limited set of values.
Users wishing to create a wallet should not have to search through the codebase to find valid values to populate the string field with.
Consider changing its type to enum, or documenting supported values in the WalletConfig structure (and other places the field is exposed to library users).

IMO it might be appropriate to redefine the enum for KeyDerivationMethod alongside WalletConfig (here). i think it's appropriate to redefine/duplicate that enum bcus the KeyDerivationMethod is owned by the misc/legacy/libvdrtools/indy-api-types crate, but it's preferred IMO if aries_vcx_core (where WalletConfig lives) exports it's own enum, rather than exporting an enum from a dependency crate. Then you'd create a function which converts the aries_vcx_core KeyDerivationMethod into the indy-api-types KeyDerivationMethod. One of the reason it'd be good for aries_vcx_core to own it's own type, is bcus KeyDerivationMethod might be applicable for other non-indy wallets in the future (e.g. "aries-askar" wallets might have a config using this enum too eventually). Open for discussion on this tho

default of argon2i should be appropriate. we also might be able to now remove some of the strings from https://github.com/hyperledger/aries-vcx/blob/8a17c6b9ebf396a0488e3267bf07e238f8d921fc/aries/aries_vcx_core/src/global/settings.rs#L8 which are dedicated to providing string constants for this wallet conf key deriviation field


List of Organization Centres

https://github.com/orgs/MentorsWithoutBorders/projects/1/views/1?pane=issue&itemId=32816288)

api/v1/organizations/d0b45a28-3640-4867-ad68-faf1c09b3983/centres for testing


Plugin:[saltcorn-gantt] New plugin, first release

https://github.com/AleksandrSokolov/saltcorn-gantt

Thank you, this is great! A real milestone has been achieved in getting contributions.
I have added this to the store.


Support smart life light bar (RGB and front light)

Hi
I just received a really nice product - a light bar for the computer that also has RGB light for background effects
https://www.amazon.com/dp/B099Z9V3KM
Is your feature request related to a problem? Please describe.
This product resolves me an issue of lights on the keyboard.
and for some reason the plugin can't turn on or off the actual light part (it only works on the RGB background lights.
Describe the solution you'd like
Basically integrate 2 light controllers in one (or as a grouped icon)
so you can control either the front light bar with warm\cold on\off & the backlight RGB.
Describe alternatives you've considered
didn't consider anything
Additional context
I ran into the whole:
Characteristics errors with this light bar. changing it to Dimmer (as suggested) made me lost the ability to control the RGB lights.
[3/9/2022, 7:06:11 PM] [TuyaWebPlatform] [Light bar] Characteristic.Brightness - Characteristic 'Brightness' will receive value higher than allowed (110) since provided Tuya value (110) exceeds configured maximum Tuya value (100). Please update your configuration!
[3/9/2022, 7:06:11 PM] [@milo526/homebridge-tuya-web] This plugin generated a warning from the characteristic 'Brightness': characteristic was supplied illegal value: number 110 exceeded maximum of 100. See https://git.io/JtMGR for more info.
[3/9/2022, 7:06:11 PM] [TuyaWebPlatform] [Light bar] Characteristic.ColorTemperature - Characteristic 'ColorTemperature' will receive value lower than allowed mired (-902) since provided Tuya kelvin value (25035) exceeds configured maximum Tuya kelvin value (2700). Please update your configuration!
[3/9/2022, 7:06:11 PM] [@milo526/homebridge-tuya-web] This plugin generated a warning from the characteristic 'Color Temperature': characteristic was supplied illegal value: number -902 exceeded minimum of<PHONE_NUMBER>4615384. See https://git.io/JtMGR for more info.

Hi,
This is definitely not a stale - I'm really intrested to know if it's possible to allow the light bar be exposed to the HomeKit\Homebridge part.
Thank you!

Not stale

@milo526  - Hi mate, any chance to get your thoughts on this one please?
Thank you!

Could you try using the manufacturers app to switch the light bar into white mode, from there you might be able to adjust colortemperature and brightness.

Thanks for replying!
The thing is, there are 2 light bars on it, a frontal white\warm\cold light and a backlight rgb that supposed to shine on the wall as environmental feat.
for some reason only the backlight is available (called Dimmer\Mode)
Adding a picture of the device menu (look at the bottom for all the options available)

Please post the result of the steps under "How to check whether the api this library uses can control your device".
Without this it is hard for me to help you with regards to this specific issue.

got it, I'll look it up (probably can only do it in a few hours as I'm out of home now)

@milo526
sorry for the very late reply (got swamped at work)
finally sat down to run that script.
Here are the results, it appeared there:
{   'data': {   'brightness': '400',                                                   'color_mode': 'white',                                                   'color_temp': 18647,                                                   'online': True,                                                   'state': 'false'},                                       'dev_type': 'light',                                       'ha_type': 'light',                                       'icon': 'https://images.tuyaeu.com/smart/icon/ay1498203399759ASLsi/1625291059108c27215ab.jpg',                                       'id': 'bf612889cd547a47b6rcwj',                                       'name': 'Light bar'}
let me know what else you need.
Basically as mentioned this light bar has rgb backlight (which is exposed in the Homekit) and the front light (cold\warm\daylight) which isn't. I would really love the fron one to be exposed (much more needed than the RGB part) if both can be, that's even better
Thanks again!

Could you switch it through the Tuya app (or whatever first party app you are using) to color mode and run the same thing again?
It seems like switching the color-mode switches the exposed device as we can clearly only see the color temperature (white tones) right now.

If you look at the screenshot I added above.
when opening the device via smart life you see “White” which is the front light and “Dimmer” which is the RGB backlight.
only the RGB is exposed.
not sure what you meant by switching it through
and yes only color mode is available. Can we expose the other light?

Okay, that also solves it. There is only one devices exposed via the API thus this plugin will sadly not be able to help you, please take a look at Tuya's official homebridge plugin, that one supports more features since it uses a different API.

Yeah I know, I wish it'd be different but Tuya has made their stance very clear, they will not expand the API that this plugin is using :/ so sadly there is nothing else I can do for you.

No worries.  Thanks for helping this far. Really appreciate it mate, keep up the plug-in it’s awesome!


Shim messes up with other Python softwares

Steps to Reproduce
Was going to backup my machine this morning, and found this. On ubuntu 20.04, install backintime, then rye. Run backintime from the cli:
user@laptop:~ $
backintime

Expected Result
Backintime runs normally:
user@laptop:~ $
backintime

Back In Time
Version: 1.2.1

Back In Time comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; type `backintime --license' for details.

Actual Result
Backintime can't find Python, despite it being installed:
user@laptop:~ $
backintime
error: Requested Python version<EMAIL_ADDRESS>is not installed. Install with `rye fetch`
user@laptop:~ $
python3.11 --version
Python 3.11.7

Uninstalling rye solves the problem:
user@laptop:~ $
rye self uninstall --yes
Done!

Don't forget to remove the sourcing of $HOME/.rye/env from your shell config.
user@laptop:~ $
backintime

Back In Time
Version: 1.2.1

Back In Time comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; type `backintime --license' for details.

Looking at the backintime main script, it's basically bash calling python3 -Es $APP_PATH/backintime.py "$@".
Running python3 by itself produces the same result:
python3 --version
error: Requested Python version<EMAIL_ADDRESS>is not installed. Install with `rye fetch`

I'm only using backintime as an example because this is real software doing this, and the cause of the problem would be opaque to the user.
Version Info
0.23.0
Installing the latest version of rye does not solves the issue, event if it default to 3.12:
user@laptop:~ $
curl -sSf https://rye-up.com/get | bash
This script will automatically download and install rye (latest) for you.
######################################################################## 100,0%
Welcome to Rye!

This installer will install rye to /home/user/.rye
This path can be changed by exporting the RYE_HOME environment variable.

Details:
  Rye Version: 0.23.0
  Platform: linux (x86_64)

✔ Continue? · yes
Installed binary to /home/user/.rye/shims/rye
Bootstrapping rye internals
Downloading<EMAIL_ADDRESS>
Checking checksum
success: Downloaded<EMAIL_ADDRESS>Upgrading pip
Installing internal dependencies
Updated self-python installation at /home/user/.rye/self

All done!
user@laptop:~ $
user@laptop:~ $
backintime
error: Requested Python version<EMAIL_ADDRESS>is not installed. Install with `rye fetch`

There are two ways to see this bug.
1 - Fixing this particular instance of it and close it.
2 - Use it to put in perspective the consequence of using shims.
We discussed before why I tend to distrust shims, and this is a good example of it. NVM has the same problem: it's very hard to figure all the combinations of things that can go wrong. It works for cargo because cargo is not a system script runner. A dev and it's tooling are the only one messing with it. But Python is different: it's used by scripts, apps, shells, and who knows what.
Since one appeal of of rye is to reduce the number of possible failure modes, I renew my proposal to extract the python installation part:
https://github.com/mitsuhiko/rye/issues/583
Path problems are already plaguing Python, so having the possibility to explore more basic ways of bootstrapping the language would be nice. I'd love to see a push-button robust solution just to provide Python. No shim, nothing. It just provides a standardized Python with as little magic as possible.
Stacktrace
No response

Did you enable global shims? If they are not enabled, then rye on the path should transparently pass through and not interfere with your existing python. Can you paste the contents of ~/.rye/config.toml?

Apparently I did:
user@laptop:~ $
cat ~/.rye/config.toml
[behavior]
global-python = true

[default]
toolchain = "3.11"

Although I was not aware I did so.

The installer currently prints the following question that flips this. How can can this be made clearer?
? Determine Rye's python Shim behavior outside of Rye managed projects ›
❯ Make Rye's own Python distribution available
  Transparently pass through to non Rye (system, pyenv, etc.) Python

My (very personal) opinion is there no good way of to ask this because making it available outside cannot be guaranteed to be safe in any way, but not making it available outside will weird, surprising and even frustrating.
I would rather have not the question at all, it be very difficult to explain the consequences of this anyway without making a wall of text nobody would read.
But since no good default can be offered, I would rather have an alternative. It could be:

provide a version suffixed executable for global use.
provide the py launcher and make the python available with it. There is a rust version available for unix now.
print the absolute path to the installed python so that people can use them explicitly outside.

I know, I'm being kinda insistent on this.
But remember what made the success of Flask: you created the simplest hello world possible, and people instantly got it. No ambiguity.
That was a brilliant move that also worked for requests, and if you can pull it of for rye, it could change everything.

I do not like that suggestion because it presumes that the future of this is the mess we are in. I want us to move past that mess. :)

I guess given the uv announcement this ticket doesn't matter much.
Let's close it and see how astral handles this.


Mouse Pointer Presentation Mode

Description of the new feature / enhancement
Allow constant highlighting of the mouse pointer until deactivation to enable easier following of mouse pointer for viewers of shared screens.
All existing utilities in PT - "Find My Mouse", "Mouse Highlighter", and "Mouse Pointer Crosshair" - seem very similar. The differences:

Find My Mouse: Darkening the rest of the screen and/or changing color for an area around the mouse pointer is not really ideal for a presentation. The new feature should rather feel like a real-life laser pointer when highlighting an analog chart.
Mouse Highlighter: Only active when mouse is getting clicked. "Presentation Mode" should be always active, basically changing the mouse pointer to a more prominent one.
Mouse Pointer Crosshair: The crosshair character is sub-optimal for a presentation, especially with the large, screen filling crosshair bars.

Scenario when this would be used?
Any shared screen scenarios, where remote viewers need to follow the mouse pointer of the presenter.
Supporting information
I think MS Teams has such a "Laser Pointer" mouse pointer feature already included, not sure. There are already stand-alone tools that can do similar things, but I am a big fan of PowerToys and would love to see such a feature included in the "Mouse utilities" section.
An alternative to a separate feature would be more adaptation options for the existing utilities.

This sounds like a great idea!  I would love this for presenting over zoom or slack

It's almost possible to do this already: if you invert colors for "Find My Mouse" (setting white background and colour spotlight) then whole screen isn't darkened, leaving only circle around cursor.
Only thing missing would be an option to toggle "Find My Mouse", instead of disabling after click (which is the feature I was looking for when I found this issue).

Thanks for that hint, but I tried that and when setting the background
color to "white", the rest of the screen still gets changed in color for
me. Or am I doing it wrong?
The feature "Mouse Highlighter" does basically a highlighting circle around
the regular mouse pointer, if the mouse button is pressed constantly.
I think a dedicated feature would be worth it. There are also different
options that could be enabled, like changing the mouse pointer itself ("Red
Dot") or changing the form of the highlighting area. That "Red Dot" feature
was what I was looking for, actually.
I now also found what the other person used, that did something like this.
It's a PowerPoint Feature:
https://www.youtube.com/watch?v=c61qABLP-C8
https://support.microsoft.com/en-us/office/turn-your-mouse-into-a-laser-pointer-77367b36-d25b-4ed2-8c87-358bc216a1e0
What I am suggesting is something like seen in the links above. But
independent of PowerPoint and permanently active when turned on via
shortcut until disabled again via the same shortcut.
Thanks for the feedback again.
I would love to work on something like this myself, but have never done so
in an open source project, except for my computer science studies... So I
am not sure if my help would even be seen as positive.
On Thu, 23 Jun 2022 at 12:49, Bartek Iwaniuk @.***>
wrote:

It's almost possible to do this already: if you invert colors for "Find My
Mouse" (setting white background and colour spotlight) then whole screen
isn't darkened, leaving only circle around cursor.
Only thing missing would be an option to toggle "Find My Mouse", instead
of disabling after click (which is the feature I was looking for when I
found this issue).
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/18086#issuecomment-1164260010,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AT7VSXYRENDUIFNPBFSINGLVQQ6MHANCNFSM5VEPNRNA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Thanks for your message. This is a Duplicate of an other issue. Additional comments may be added there. /dup #14137


Expand Education/Academic

This article could benefit from more information about Office 365 for Education besides "Non-Profit, Government and Academic pricing is available in respective program channels."
There are many scenarios where college administrators would like to build Power Apps to process input from students, but if it requires licensing a thousand students at $40/mo, that's half a million dollars and a non-starter.
Who exactly requires a license?

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

ID: a2cad5bd-4ffa-3671-0364-95e5b6f65256
Version Independent ID: 6d0cc055-b7be-02d7-3ba8-55e400ccd21b
Content: Power Apps and Power Automate licensing FAQs - Power Platform Admin center
Content Source: power-platform/admin/powerapps-flow-licensing-faq.md
Service: power-platform
GitHub Login: @dileepsinghmicrosoft
Microsoft Alias: dileeps

@WyattBest
Thanks for the suggestion. I'm researching a contact for this.

@WyattBest
Probably best to contact sales and get in the loop with an advisor.
https://info.microsoft.com/ww-landing-Contact-Microsoft-Education-website.html?lcid=en-us


(fix #50725, #50710) add file extensions in import statements

Fixes #50725
Fixes #50710

Well, by reading the patch I learned that "*.preferences.importModuleSpecifierEnding" doesn't work with "moduleResolution": "classic" (and that the default "moduleResolution" is difficult to predict; I think the documentation for that didn't get updated when some values were added for "module" ...?) ... well, anyway, adding an explicit "moduleResolution" that wasn't "classic" made (symbol) completion stop trying to import my .js files without the .js, so I'm happy.


Completed CIFAR-10 Demo seed. Fixes #77

I noticed that the options operation sets a value called dataDir. It doesn't look like it uses it... Is that so? If so, we should probably remove it so people don't get confused when it gets printed out in the training operation


Better Handling of Large Thin Volumes

Mirroring https://github.com/hms-dbmi/viv/pull/495 here

Does this PR depend on the Viv PR?

@keller-mark this does not depend on the Viv PR.


Refactor all the gem building logic into a custom rake task.

I plan on pulling this into chef-dk and any other gem we release similarly later.  If you'd rather I create a separate gem/repo for this, I can do that too.

/cc @mcquin @danielsdeleo @thommay @lamont-granquist
Can one of you cc chef-client-core.  I'm not on it.

Sadly it won't work as written, I like the general idea though. :+1: once you work around the problem I pointed out.

And cc: @chef/client-core

Fiddlesticks!  Travis failure is because https://github.com/jaym/chef-appbundle-updater/blob/master/recipes/default.rb invokes rake outside bundler which is fine if there was no dependency between the Rakefile and chef-config.

:+1:

Thanks for putting this together, @ksubrama !  :+1:

Waiting on https://github.com/jaym/chef-appbundle-updater/pull/6 and a new release to fix travis.

And it's alive!


Something looks for python instead of python3 when trying to run a build and causes the build process to fail out

Attempted the following command
volare build --pdk-root /home/rfriesen/pdks/ --pdk sky130 --build-magic -j 6 -l all 0059588eebfc704681dc2368bd1d33d96281d10f
Build failed and the last section of the log shows something failing to not find python. I created a symlink where /usr/bin/python points to /usr/bin/python3 and the second time I executed the above command it was successful.
installation finished.
touch "/home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/bin/python"
source /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/bin/activate && conda config --system --add pkgs_dirs /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/downloads/conda-pkgs
source /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/bin/activate && conda config --system --add envs_dirs /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/envs
echo "include-system-site-packages=false" >> /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/pyvenv.cfg
/usr/bin/env: ‘python’: No such file or directory
/usr/bin/env: ‘python’: No such file or directory
make[2]: *** [/home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/third_party/make-env/conda.mk:117: /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/downloads/conda-pkgs/urls.txt] Error 127
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [/home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/third_party/make-env/conda.mk:141: /home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk/env/conda/envs] Error 127
make[2]: Leaving directory '/home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sources/sky130-pdk'
make[1]: *** [Makefile:606: pdk-repo] Error 2
make[1]: Leaving directory '/home/rfriesen/pdks/volare/sky130/build/0059588eebfc704681dc2368bd1d33d96281d10f/open_pdks/sky130'
make: *** [Makefile:130: tech-sky130] Error 2

The script or script(s) in question are part of Open PDKs, not Volare. They have all already been fixed in later versions of Open PDKs, as 0059588eebfc704681dc2368bd1d33d96281d10f is from last October.


#[handle_result] - consider supporting errors that are Display, not AsRef<str>

Motivation
#852 #854
https://near.zulipchat.com/#narrow/stream/300659-Rust-.F0.9F.A6.80/topic/anyhow.3F/near/287320608
This would make the SDK more ergonomic, especially for prototyping, allowing most conventionally used error types. In particular, it would allow using something like anyhow::Error.
Benefits

Convenient API with better support for dynamic error messages.

Drawbacks

This looks like it will make unhappy paths more costly. The current API nudges users toward hardcoded error messages. The new one would lead to error messages that are built dynamically implicitly. Might be worthwhile to investigate if we can have contract devs opt-in to the new system, or something of the sort.

@uint Why Display and not std::error::Error trait?

@uint Why Display and not std::error::Error trait?

Good question.
Well, we only need it to be Display so that an error message can be produced. Requiring Error narrows the pool of types that can be used. Is there a benefit?

Is there a benefit?

Good question. I think there is none besides just communicating the intent better.
One thing to consider is no-std mode if we ever want near-sdk-rs to support it.


bugfix: remove duplicated line

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


netlify/gocommerce

@flumonion Came across these two repos recently, might be relevant:
https://github.com/netlify/gocommerce-js
https://github.com/netlify/gocommerce
Looks quite similar to what we were discussing in this repo actually...
The metadata URL is kind of what I was suggesting in https://github.com/stock2shop/cart/pull/5#issuecomment-783162696.

kind of what I was suggesting

On second thought having a unique URL for each SKU as per above repos makes more sense.

https://github.com/netlify/gocommerce-js

This repo has been archived.

https://github.com/netlify/gocommerce
Looks like this project is dead, last updated 2 years ago?


Implement Joohoi's ACME-DNS provider

Related issue: #63
ACME-DNS is quite unusual in its goals - it is very limited, and so is this libdns provider. More information on that is in the issue description and in README.md of this PR. My goal is to use this for a Caddy DNS plugin. Let me know if you think it would be better to not put this code into a separate libdns repo and just include it in Caddy DNS plugin module (which I would like to host under caddy-dns organization eventually).
Any comments and suggestions for improvement is appreciated, I'm fairly new to Go.

I made some significant changes in the last commit. Instead of using just one ACME-DNS account, the configuration now matches one-to-one with configuration used by acme-dns-client, which means that there's a domain -> domain config mapping. AppendRecords() uses zone and record name information to select which config/account to use.

Thank you for quick response! :)

@mholt
What is the process for accepting caddy-dns/acmedns? I've pushed the implementation, could you also have a look at it to check if it seems reasonable?

@vbsd Looks good to me! (There's no process for that repo.)

Great, thanks you!


Updates the sign procedure

This PR updates the sign procedure to account for the case when (SK + e) = 0 mod q which is invalid and therefore requires us to re-compute a new e value if it were to occur.
Note @BasileiosKal and I also discussed whether we need to check for A != Identity_G1 however we believe it is impossible for this case to exist based on how the procedure is documented therefore the additional check is not required.

While this is incredibly unlikely to happen, it also doesn't seem like a good solution to just abort the program if it does occur. However I worry a little about the possibility of a side-channel attack in comparing e to the SK.

@andrewwhitehead is right. We shouldn’t abort or return to step 10 we should do something else like e - 1 as a conditional move to avoid leaking sk via timing attacks.

To tease this out further I think we agree the following

The risk of (SK + e) = 0 mod q condition being meet is very low
The risk however does exist therefore we do need to account for it by providing some guidance in the procedure to implementers on what to do if the case occurred
the risk of a timing attack is not in the computation of (SK + e) = 0 mod q it self instead its due to the branch condition existing on the outcome of this computation e.g going back to step 10.

If we see risk in the computation of the (SK + e) = 0 mod q check itself (which I dont think we do?), we could instead just check A != Identity_G1 after step 13 however the branch of going back and re-computing e would still exist therefore the remote possibility of some timing information leaking from a sign operation could still exist?

Another option to remove the branching logic is to pre-compute an alternative value for e and use that if the condition is met, removing the possibility of the timing attack @mikelodder7 I believe this was your suggestion in our conversation?

if we do e - 1 or e + 1 shouldn't we then re-check if the new e is 0 again?? unless we specify SK > 1 it seems that we may end up with a similar problem.
Just to through another (maybe naive) idea, what if we calculate a random, non-zero scalar u (the same way we calculate e now) with 0 < u < q  and then we calculate e as e = (q + u - SK) mod q?? This way e + SK = u mod q that we know it's non zero and the whole operation will be constant time??

Note also just aborting or not performing this check at all (current case), also risks leaking information about the SK so we need to address it regardless, I think @mikelodder7 @BasileiosKal suggestion of pre-computing an alternative value for e we can use when this condition is meet, is the most appropriate solution

Note also just aborting or not performing this check at all (current state of spec), also risks leaking information about the SK so we need to address it regardless, I think @mikelodder7 @BasileiosKal suggestion of pre-computing an alternative value for e we can use when this condition is meet, is the most appropriate solution

That being said, current libraries for ECDSA do NOT check their nonce for secret key incompatibility because the likelihood is so low. The ECDSA spec as written in NIST doesn't even discuss it either. So perhaps we are over engineering this.

I'm happy to have a small note in the security considerations instead of producing a valid signature in this one unlikely case. I don't think we can just return (A=1, e, s) though because then SK can be easily calculated from e.

Agreed. Isn't the possibility of the attack even being effective the same as an attacker trying random secret keys and finding the correct one?? So even if the attack is feasible i don't thing that the overall security level of the scheme actually declines.

That being said, current libraries for ECDSA do NOT check their nonce for secret key incompatibility because the likelihood is so low. The ECDSA spec as written in NIST doesn't even discuss it either. So perhaps we are over engineering this.

Interesting does that mean in deterministic variations of ECDSA there is at least one combination of SK + payload that you could just never sign as it would always fail because the nonce is derived from the input deterministically?

Yes the standard is RFC6979 which makes ECDSA deterministic.

Discussed on WG call today, we have multiple options here I think we need to firm up more
In general we need to decide whether we want the strategy with sign to be:

In all cases even when say (SK + e) = 0 mod r that the procedure should still produce a valid signature (e.g therefore compute an alternative value for e)
OR abort the sign procedure

We also need to decide, what checks we need

Is (SK + e) = 0 mod r all we need to check?
OR is A != Identity_G1 a substitute?
OR do we need to perform both e.g A != Identity_G1 AND (SK + e) = 0 mod r
OR are either of these checks just over complicating the procedure because the likely-hood of this occuring is so statistically improbable and therefore we should just adopt what ECDSA has done and not mention it?
OR should we discuss this case in the considerations and or text around the procedure instead of making it an explicit step in the procedure?

For the (SK+e) = 0 mod r vs A = 1_G1 argument i think @andrewwhitehead's point (and please correct me if I'm wrong) was that
A = B*(1/(SK+e)) = inverse(B * (SK + e))

As a result, SK + e = 0 mod r => A = 1_G1.
I don't think it holds though?? (i.e., i think that P * (1 / x) != inverse(P * x)).
What do you think @mikelodder7??? ^

It does hold though. B^-0 or T=inverse(sk+e) then B^T all produce zero. Especially in practice. All implementations I know if you call invert on 0 either abort or return 0. My preference is to call out the possibility (ever so small) that this could happen but the odds are so far out we don’t implement it when signing

Ok i see. Thanks! So it is an implementation issue and not something that holds in general. So if we are to add the check i would still prefer to just check for (SK+e) = 0.
That said, i agree with @mikelodder7 in not having the check and just adding a sort security consideration. In any operation taking a signature as input we can specify that the signature must be valid then. IMO this is the most readable and at the same time "correct" approach.

In verify we should perform checks that the signature values are not zero and the public key is not zero either. Anywhere these are used we should be checking them. Always validate inputs. We can assume values generated during the function from hash methods or PRFs are valid

I have revert the changes to sign procedure and added a note, ready for re-review.

Multiple reviews and approvals, discussed on multiple WG calls, merging.

Multiple reviews and approvals, discussed on multiple WG calls, merging.


[WIP] [Do not merge] Cython bindings for Gandiva

This currently imports files from https://github.com/dremio/gandiva which were released by Dremio (therefore this cannot be merged before a good integration story is figured out). This is to avoid having to set up the Cython integration in the Gandiva repository.
This is a prototype and shows how Gandiva can be used from Python in combination with PyArrow.

This is replaced by https://github.com/apache/arrow/pull/2822, which ports this PR onto the in-tree version of Gandiva.


Add support for ESLint 9 and according plugins

Please add support for ESLint 9 and also the underlying plugins @typescript-eslint/eslint-plugin or @typescript-eslint/parser in version 8.1.0

You can try 1.0.0-rc2 for typescript, Vue and Angular right now. Not everything has been migrated yet, but the most important ones are. Node and React plugins will be migrated soon.

1.0.0 is released with eslint v9 support.


Update listener on KeyUp

Description
Update esc key press check on key up.
Update popup information.
Issues Resolved
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #364 (579c352) into main (c5ee47a) will decrease coverage by 0.62%.
The diff coverage is n/a.

:exclamation: Current head 579c352 differs from pull request most recent head 51f166b. Consider uploading reports for the commit 51f166b to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #364      +/-   ##
==========================================
- Coverage   84.26%   83.64%   -0.62%
==========================================
  Files          18       19       +1
  Lines         464      477      +13
  Branches       73       72       -1
==========================================
+ Hits          391      399       +8
- Misses         51       56       +5
  Partials       22       22

see 5 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Random crashes due to network

Describe the bug
Was at work in a network, or came to work, it seems very probable to be a network issue, i have already created an issue a long time ago that was already fixed, but there still seems to be an issue. Often crashes just silently by telling me the OrbStack Volume is not reachable anymore.
To Reproduce
No response
Expected behavior
Not crash
Diagnostic report (REQUIRED)
OrbStack info:
Version: 1.6.0
Commit: 73817253cc0680b865fe411b21e187325a28d758 (v1.6.0)
System info:
macOS: 14.5 (23F79)
CPU: amd64, 16 cores
CPU model: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Model: MacBookPro16,1
Memory: 64 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2024-05-28T10-22-27.035462Z.zip

Screenshots and additional context (optional)

Because it hat already crashed 3 times right before i even got the option to create this diagnosis file. The previous crashes just crashed and then it restarted when I opened OrbStack again. I rarely get the option to create the diagnosis file
This is the other issue i was referring to: https://github.com/orbstack/orbstack/issues/913
I can try again to get a network log with orb start && tcpdump -i bridge100 -w ~/Downloads/orb.pcap and send it to<EMAIL_ADDRESS>

You can always get a report by running orb report.

so this is the report, right after i got the volume not available popup and executing orb report instead of opening orbstack. i hope this has more information.
OrbStack info:
Version: 1.6.1
Commit: bfaddc6839de8b00b7aff767dbd673ac6ad4259e (v1.6.1)
System info:
macOS: 14.5 (23F79)
CPU: amd64, 16 cores
CPU model: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Model: MacBookPro16,1
Memory: 64 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2024-05-31T07-30-00.549842Z.zip

I haven't been getting a crash since 1.6.1 anymore (except for the one), so I guess I'll close this and come back if there ever is something again :)


List of functions could be improved with "const std::string&" or "std::string&" instead "std::string"

After a quick scan in the latest tensorflow "master" branch, here is the list of functions which could improve passing parameter by "std::string":
After a quick scan in the latest tensorflow "master" branch, here is the list of functions which could improve passing parameter by "std::string":

c/c_api_function.cc:  static string Normalize(string name);
Suggestion: string& name;
c/c_api_function.cc:string NodeNameMapping::Normalize(string name) {
Suggestion: string& name

compiler/jit/graph_to_functiondef.cc:  string NormalizeHelper(string name) const;
Suggestion: string& name
compiler/jit/graph_to_functiondef.cc:  string UniquifyHelper(string name);
Suggestion: const string&
compiler/jit/graph_to_functiondef.cc:string NodeNameMapping::NormalizeHelper(string name) const {
Suggestion: string& name
compiler/jit/graph_to_functiondef.cc:string NodeNameMapping::UniquifyHelper(string name) {
Suggestion: const string&
compiler/tf2xla/dump_graph.cc:string MakeUniquePath(string name) {
Suggestion: string& name
compiler/xla/service/llvm_ir/llvm_util.cc:string IrName(string a) {
Suggestion: string& a
compiler/xla/service/llvm_ir/llvm_util.cc:string SanitizeFunctionName(string function_name) {
Suggestion: string& function_name
compiler/xla/service/llvm_ir/llvm_util.h:string IrName(string a);
Suggestion: string& a
compiler/xla/service/llvm_ir/llvm_util.h:string SanitizeFunctionName(string function_name);
Suggestion: string& function_name
compiler/xla/util.cc:string SanitizeFileName(string file_name) {
Suggestion: string& file_name
compiler/xla/util.h:string SanitizeFileName(string file_name);
Suggestion: string& file_name

contrib/verbs/rdma.cc:RdmaBuffer::RdmaBuffer(RdmaChannel* channel, string name)
Suggestion: const string& name
contrib/verbs/rdma.cc:RdmaAckBuffer::RdmaAckBuffer(RdmaChannel* channel, string name)
Suggestion: const string& name
contrib/verbs/rdma.cc:RdmaMessageBuffer::RdmaMessageBuffer(RdmaChannel* channel, string name)
Suggestion: const string& name
contrib/verbs/rdma.cc:RdmaTensorBuffer::RdmaTensorBuffer(RdmaChannel* channel, string name)
Suggestion: const string& name
contrib/verbs/rdma.h:  explicit RdmaBuffer(RdmaChannel* channel, string name);
Suggestion: const string& name
contrib/verbs/rdma.h:  explicit RdmaAckBuffer(RdmaChannel* channel, string name);
Suggestion: const string& name
contrib/verbs/rdma.h:  explicit RdmaMessageBuffer(RdmaChannel* channel, string name);
Suggestion: const string& name
contrib/verbs/rdma.h:  explicit RdmaTensorBuffer(RdmaChannel* channel, string name);
Suggestion: const string& name

core/common_runtime/step_stats_collector.cc:static int ExtractGpuWithStreamAll(string device_name) {
Suggestion: string& device_name
core/common_runtime/step_stats_collector.cc:static int ExtractGpuWithoutStream(string device_name) {
Suggestion: string& device_name
core/kernels/ops_util.cc:string SanitizeThreadSuffix(string suffix) {
Suggestion: const string& suffix
core/kernels/ops_util.h:string SanitizeThreadSuffix(string suffix);
Suggestion: const string& suffix
core/kernels/xsmm_conv2d.cc:static void chk_libxsmm_err(libxsmm_dnn_err_t status, string msg) {
Suggestion: const string& msg

stream_executor/platform.cc:PlatformKind PlatformKindFromString(string kind) {
Suggestion: const string& kind
stream_executor/platform.h:PlatformKind PlatformKindFromString(string platform_string);
Suggestion: const string& platform_string

@orpillar I'm a big fan of cleanup work. A lot of the stuff on this list checks out, like for (string name : events) { tracing.cc. I support refactoring those unidiomatic usages of the C++ language. However this list needs more curation. I looked at (1) which points to NodeNameMapping::Normalize and this function passes by value because it mutates the value. Could you help us narrow things down?

@jart You are right. The first function NodeNameMapping::Normalize needs to have "&" added, there is no need to add "const". I updated the issue description, will list with more details soon.

Updated the list

@orpillar Passing a non-const reference would change the API and isn't allowed by the Google C++ Style Guide.

Thanks for providing the Google C++ Style Guide. The guide does mention the rule. Please feel free to close the issue if not applicable.

Well the issue is applicable, it's simply a question of curation. We appreciate that you took the time to suggest an improvement strategy. If you decide later that you want to take on this cleanup work, please send us a pull request, which I'd be happy to review.


Feature/port to hephlog

Description
Port absl logging to heph::log
Type of change

New feature (non-breaking change which adds functionality)

Checklist before requesting a review

[x] I have performed a self-review of my code.

Issue 1
utils is used everywhere, so using heph::log in there will not work -> circular dependency.
Luckily the logs used there are mostly warn logs in functions that give either  bool or an optional back, I would suggest either

add a Error class here that would carry an error message
or better
use std::expected
or better
use https://github.com/johannes-graeter/anywho

Issue 2
we need to add log_if

Issue 3
Do we want DLOG like functionality? I would at them as trace or debug logs, and set the logging level accordingly (on prod only info and more severe are activated). Can absl::log do that?

Issue 4
I had to add // NOLINTNEXTLINE(bugprone-exception-escape) to liveliness.cpp and raw_subscriber.cpp to make it build with clang-tidy, this should be unrelated to my changes, can you have a look @filippobrizzi

Issue 3
Do we want DLOG like functionality? I would at them as trace or debug logs, and set the logging level accordingly (on prod only info and more severe are activated). Probably we can set that through ABSL_FLAG?
Removed them after discussion with Filippo


Unable to add host: uncapable to identify cause/missing ERROR logs

ISSUE TYPE

Bug Report
Improvement Request

COMPONENT NAME

Advanced Networking Zone installation

CLOUDSTACK VERSION

Latest: 4.13.1

CONFIGURATION

Advanced Networking new zone,pod, cluster and host.
OS / ENVIRONMENT

Centos 7.
SUMMARY

I am creating an KVM, network advanced zone. The UI reports that the host could not be added, however, by looking at the logs everything seems to be just fine.
The main issue here is that it is NOT possible to identify what is failing.
STEPS TO REPRODUCE

Attempt to Create a new Advanced zone, pod, cluster and host.
Provide a parameter that is invalid or wrong.

EXPECTED RESULTS

Logs should include ERROR messages that help identify the cause.

ACTUAL RESULTS

UI Reports unable to add host
Logs include no relevant ERROR mensage (other that the host could not be added)
Logs include several SUCCESS messages that signal that everything is OK.

The relevant logs that I see are:
Confirmation the agent was created OK, manager logs:
2020-05-03 16:22:27,115 DEBUG [c.c.u.s.SSHCmdHelper] (qtp540585569-13:ctx-a9e3d331 ctx-07912f60) (logid:361428b2) SSH command: sudo cloudstack-setup-agent  -m <IP_ADDRESS> -z 1 -p 1 -c 1 -g ef861baa-8f7c-38fe-9b6a-981df48ac7ac -a -s  --pubNic=host_netbr --prvNic=host_netbr --guestNic=guest_netbr --hypervisor=kvm
SSH command output:Starting to configure your system:
Configure SElinux ...         [OK]
Configure Network ...         [OK]
Configure Libvirt ...         [OK]
Configure Firewall ...        [OK]
Configure Nfs ...             [OK]
Configure cloudAgent ...      [OK]
CloudStack Agent setup is done!

Confirmation the agents connects back with the manager, that logs:
2020-05-03 16:22:30,330 DEBUG [o.a.c.c.p.RootCACustomTrustManager] (pool-9-thread-1:null) (logid:) A client/agent attempting connection from address=<IP_ADDRESS> has presented these certificate(s):
Certificate [1] :
 Serial: 18f633061a199417
  Not Before:Sun May 03 04:21:51 UTC 2020
  Not After:Mon May 03 16:21:51 UTC 2021
  Signature Algorithm:SHA256withRSA
  Version:3
  Subject DN:C=cloudstack, O=cloudstack, OU=cloudstack, CN=compute1.host_net
  Issuer DN:CN=ca.cloudstack.apache.org

Similar success logs can be found on the agent, that reports connection to the manager:
2020-05-03 16:22:29,478 INFO  [utils.nio.NioClient] (main:null) (logid:) Connecting to <IP_ADDRESS>:8250
2020-05-03 16:22:29,484 INFO  [utils.nio.Link] (main:null) (logid:) Conf file found: /etc/cloudstack/agent/agent.properties
2020-05-03 16:22:30,733 INFO  [utils.nio.NioClient] (main:null) (logid:) SSL: Handshake done
2020-05-03 16:22:30,733 INFO  [utils.nio.NioClient] (main:null) (logid:) Connected to <IP_ADDRESS>:8250

Confirmation the agent can talk to libvirt, agent logs manipulation of libvirt objects:
2020-05-03 16:31:31,963 INFO  [kvm.storage.LibvirtStorageAdaptor] (Agent-Handler-1:null) (logid:) Found existing defined storage pool c3ae71d6-74a8-4252-bd7c-f886a821dac7, using it.

A further check on virsh finds that object:
virsh # pool-list
 Name                 State      Autostart
-------------------------------------------
 c3ae71d6-74a8-4252-bd7c-f886a821dac7 active     no

At this point I assume that all the bits and pieces are working. However, after a long wait, the manager reports:
2020-05-03 16:51:11,793 WARN  [c.c.r.ResourceManagerImpl] (qtp540585569-14:ctx-098be29b ctx-c1b8d4c3) (logid:d82ea0e4) Unable to find the server resources at http://<IP_ADDRESS>
2020-05-03 16:51:11,797 INFO  [c.c.u.e.CSExceptionErrorCode] (qtp540585569-14:ctx-098be29b ctx-c1b8d4c3) (logid:d82ea0e4) Could not find exception: com.cloud.exception.DiscoveryException in error code list for exceptions
2020-05-03 16:51:11,797 WARN  [o.a.c.a.c.a.h.AddHostCmd] (qtp540585569-14:ctx-098be29b ctx-c1b8d4c3) (logid:d82ea0e4) Exception:
com.cloud.exception.DiscoveryException: Unable to add the host
	at com.cloud.resource.ResourceManagerImpl.discoverHostsFull(ResourceManagerImpl.java:825)
	at com.cloud.resource.ResourceManagerImpl.discoverHosts(ResourceManagerImpl.java:611)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)

I suspect a networking issue, due to the long wait, however, without exception or ERROR message I have been already 3 days trying to find out what is wrong.
I attach complete logs files.
management-server.log.2020-05-03.gz
agent.log.2020-05-03.gz

that does not sound nice @rvalle . The automated tests we run internally install advanced zone mostly (blueorangutan outputs you see all around), So yes it is probably environmental, but that doesn't mean we shouldn't improve the diagnostics you are getting.
according to your agent log it is connected to your server: 2020-05-03 16:37:31,616 INFO  [utils.nio.NioClient] (Agent Timer:null) (logid:) Connected to <IP_ADDRESS>:8250, however in the agent itself 2020-05-03 16:22:30,832 ERROR [kvm.resource.LibvirtConnection] (Agent-Handler-1:null) (logid:) Connection with libvirtd is broken: invalid connection pointer in virConnectGetVersion. Can you check if your host is a fully functional hypervisor?

@DaanHoogland I researched that message and found  issue #3509 here where the team implied that the exception could be ignored.
I quote @andrijapanicsb :

that message you shared "invalid connection pointer in virConnectGetVersion" I've seen as well, but my agents were working fine (can't advise why it's there)

I still think that the message (or its persistent occurrence) might be somehow related.

ok @rvalle reading that ticket my next try, after validating the network setup, would be to look at the qemu version.

@DaanHoogland  I did not install any particular version, just the default en Centos 7.
Is the distribution tested against a particular Qemu version?
Is there a spec of which qemu version is required?
The QuickInstall guide does not warn about it.
Thanks for the tip, I will review.

@DaanHoogland I just reviewed the integration testing infrastructure,
Could we say that systemvm is the "reference" OS setup for both Manager and Hosts?
This VM seems to be base on debian 9, while the quickinstall guide refers to Centos...

@DaanHoogland  I can see the following strange connections:
tcp6       0      0 <IP_ADDRESS>:8080     <IP_ADDRESS>:58612     TIME_WAIT
tcp6       0      0 <IP_ADDRESS>:8080     <IP_ADDRESS>:58622     TIME_WAIT
tcp6       0      0 <IP_ADDRESS>:8080     <IP_ADDRESS>:58620     TIME_WAIT

here the .48 is the manager and .1 is the DNS server. I wonder what is trying to access. Aren't those ports meant to be NFS?

I can now create host. One of the following 3 things unlocked the problem:

/secondary was nfs-mounted on the host before adding them
The hosts did not meet the minimum RAM requirement (according to google) of 4GB
I have disabled the firewall until I get this back working.

It is probably the middle - or last bullet point @rvalle. The secondary storage should not have to be mounted in one go, but instead the specific store share and this will be done by the system. Maybe I misinterpreted your first bullet?

@DaanHoogland you are right.
The exception was all alone there, but fairly cryptic:
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value for column 'ram' at row 1
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4185)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)
	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2570)
	... 47 more

The agent seems to calculate its RAM by subtracting a given amount form the physical RAM , as it is common practice when sizing an hypervisor. In my case the reported RAM would become negative.
A good improvement would be that the setup script checked for minimum requirements here:
SSH command output:Starting to configure your system:
Configure SElinux ...         [OK]
Configure Network ...         [OK]
Configure Libvirt ...         [OK]
Configure Firewall ...        [OK]
Configure Nfs ...             [OK]
Configure cloudAgent ...      [OK]
CloudStack Agent setup is done!

I love to hear about a "good improvement", but don't see a relation between minimum requirements and that output. Can you create an issue stating the exact 'requirement'?
tnx @rvalle

@DaanHoogland I have created the issue. No everything is working very nicely, and my perception of ACS has greatly improved since.
I am going to re-run my scripts with the NFS secondary volume mounted, to see up to which point that was an issue too or not.

Hello
Any news on this ?
I still have the same issue and the agent doesn't want to start .... :(
I saw many issue like this one not resolve, does anybody got a clear answer of what could be the issue with :
"Connection with libvirtd is broken: invalid connection pointer in virConnectGetVersion"

I double check all of this
And we have 128Go of memory so no issue on that
We have as well no firewall, so no issue with that !

@bragonznx As @rvalle closed the issue yours is probably not the same. Can you open a new ticket and describe the issue in detail, please? (I.E. versions of OSses and ACS components, logs from MS and agent, etc)

I already open a new issue : thanks for the reminder

Hi Team,
I am unable to add the host to the management server. I have tried all above suggestion but no luck


Syntax highlighting for Sublime+TextMate

There are too many conflicting syntaxes in GSS (VGL/VFL/CCSS/CSS).  As a result, it's easy for novice authors to make mistakes conflating multiple forms.  For instance:
#id {
    height: == #other[height]; /* height is a CSS property, so the colon is neccessary
    ::[height] == #other[height]; /* using GSS attribute syntax, placing a colon before the equality would be invalid */

    @horizontal <"variable_name"[right]> #id <"other_variable_name"[left]>; /* uses <>s around the points */
    "variable_name"[right] == "other_variable_name"[left] - 500; /* no <>s or :s in this CCSS statement */

}

It would be awesome if the languages could be simplified and standardized to follow a consistent mental model (so authors would never fall into this pattern of mistakes).  Barring that, there needs to be a GSS bundle for TextMate/Sublime that will highlight common syntactical errors so authors can find them before they cause confusion at runtime.

+1

+1

+1
I just started learning how to use GSS, and it seems that any form of invalid/conflicting VFL code will freeze my browser process - which, when combined with no syntax highlighting (or linting) of any kind for Atom/Sublime Text makes for extremely painful process to learn how to use the tool.
It should be easy to spot, correct and learn from errors.


Omit update check by default

Hey,
what is your opinion on omitting the flutter update check on startup?
Id argue that since the container is disposed after each call, manual upgrading doesnt make any sense and the update check takes quite a while on each run.
This would also contribute towards #5 for faster container startup times.
The appropriate flag is --no-version-check (see here).
After all, the flutter upgrade call works nevertheless if people need it (e.g. for persistent containers).

Sounds like a good idea ☺

Sounds like a good idea ☺

Ill send in the PR soon then, thanks for your feedback!

Ill send in the PR soon then, thanks for your feedback!


"DetachedInstanceError: Parent instance ..." SQLAlchemy error after apsw connection close.

Environment:
export AMBRY_TEST_DB=sqlite

Error:
DetachedInstanceError: Parent instance <DataSource at 0xb4ee5d4c> is not bound to a Session; lazy load operation of attribute '_dest_table' cannot proceed

Test:
py.test test/functional/test_files.py::BundleSQLTest --verbose --capture=no

Done.


Map[string]interface Update in CamelCase

Hi,
I've a Gorm Model and i want to use map[string]interface key in CamelCase instead of snake_case in the Updates.
Is possible?

no stale

If you are using GORM v2, we will use map's key as column name, unless pass a struct to Model, then GORM will convert map's key following the struct's definition

mybatis.configuration.map-underscore-to-camel-case=true
There's a configuration in MyBatics that you can look at


Updated Version Jira 9.1.0 and Confluence 7.20.0

Updated Version Jira 9.1.0 and Confluence 7.20.0

Learn Build status updates of commit bc23c68:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

articles/active-directory/saas-apps/ms-confluence-jira-plugin-adminguide.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@dhivyagana

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Implement Asynchronous Stack Traces for Task

Fixes #1015
Latest snapshot version: 3.2.2+55-9adf112c-SNAPSHOT
This is a direct port of cats.effect.IO solution, released in 2.2.0.
Tracing docs
See the following PR's for more context:

https://github.com/typelevel/cats-effect/pull/854
https://github.com/typelevel/cats-effect/pull/981
https://github.com/typelevel/cats-effect/pull/1077

So pretty much all credit goes to @RaasAhsan and @djspiewak 👏
TODO:

[x] Proper attributions
[ ] Documentation
[x] Double check if all internals are private
[x] Consider reusing classes with Cats-Effect after upgrade to 2.2.0
[x] Benchmarks
[x] Consider tracing more operators (e.g. race, parTraverse) created issue #1288

The feature works exactly the same as in Cats-Effect and is enabled by default.
It can be configured the same way as Cats version, which is documented here
The prefix is monix.eval instead of cats.effect e.g.:
-Dmonix.eval.stackTracingMode=full -Dmonix.eval.traceBufferLogSize=5
Example of the current state:
package test.app

import monix.eval.Task
import monix.execution.Scheduler
import cats.implicits._
import scala.concurrent.duration._

object TestTracingApp extends App {
  implicit val s = Scheduler.global

  def customMethod: Task[Unit] =
    Task.now(()).guarantee(Task.sleep(10.millis))

  val tracingTestApp: Task[Unit] = for {
    _ <- Task.shift
    _ <- Task.unit.attempt
    _ <- (Task(println("Started the program")), Task.unit).parTupled
    _ <- customMethod
    _ <- if (true) Task.raiseError(new Exception("boom")) else Task.unit
  } yield ()

  tracingTestApp.onErrorHandleWith(ex => Task(ex.printStackTrace())).runSyncUnsafe
}

Old stack trace:
java.lang.Exception: boom
        at test.app.TestTracingApp$.$anonfun$tracingTestApp$5(TestTracingApp.scala:36)
        at monix.eval.internal.TaskRunLoop$.startFull(TaskRunLoop.scala:188)
        at monix.eval.internal.TaskRestartCallback.syncOnSuccess(TaskRestartCallback.scala:101)
        at monix.eval.internal.TaskRestartCallback$$anon$1.run(TaskRestartCallback.scala:118)
        at monix.execution.internal.Trampoline.monix$execution$internal$Trampoline$$immediateLoop(Trampoline.scala:66)
        at monix.execution.internal.Trampoline.startLoop(Trampoline.scala:32)
        at monix.execution.schedulers.TrampolineExecutionContext$JVMNormalTrampoline.super$startLoop(TrampolineExecutionContext.scala:142)
        at monix.execution.schedulers.TrampolineExecutionContext$JVMNormalTrampoline.$anonfun$startLoop$1(TrampolineExecutionContext.scala:142)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        at scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:94)
        at monix.execution.schedulers.TrampolineExecutionContext$JVMNormalTrampoline.startLoop(TrampolineExecutionContext.scala:142)
        at monix.execution.internal.Trampoline.execute(Trampoline.scala:40)
        at monix.execution.schedulers.TrampolineExecutionContext.execute(TrampolineExecutionContext.scala:57)
        at monix.execution.schedulers.BatchingScheduler.execute(BatchingScheduler.scala:50)
        at monix.execution.schedulers.BatchingScheduler.execute$(BatchingScheduler.scala:47)
        at monix.execution.schedulers.AsyncScheduler.execute(AsyncScheduler.scala:31)
        at monix.eval.internal.TaskRestartCallback.onSuccess(TaskRestartCallback.scala:72)
        at monix.eval.internal.TaskRunLoop$.startFull(TaskRunLoop.scala:183)
        at monix.eval.internal.TaskRestartCallback.syncOnSuccess(TaskRestartCallback.scala:101)
        at monix.eval.internal.TaskRestartCallback.onSuccess(TaskRestartCallback.scala:74)
        at monix.eval.internal.TaskSleep$SleepRunnable.run(TaskSleep.scala:71)
        at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)

Cached Mode:
java.lang.Exception: boom
        at test.app.TestTracingApp$.$anonfun$tracingTestApp$5(TestTracingApp.scala:36)
        at guarantee @ test.app.TestTracingApp$.customMethod(TestTracingApp.scala:29)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$4(TestTracingApp.scala:35)
        at parTupled @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at parTupled @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$1(TestTracingApp.scala:33)
        at flatMap @ test.app.TestTracingApp$.delayedEndpoint$test$app$TestTracingApp$1(TestTracingApp.scala:32)

Full Tracing Mode:
java.lang.Exception: boom
        at test.app.TestTracingApp$.$anonfun$tracingTestApp$5(TestTracingApp.scala:36)
        at raiseError @ test.app.TestTracingApp$.$anonfun$tracingTestApp$5(TestTracingApp.scala:36)
        at now @ test.app.TestTracingApp$.customMethod(TestTracingApp.scala:29)
        at guarantee @ test.app.TestTracingApp$.customMethod(TestTracingApp.scala:29)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$4(TestTracingApp.scala:35)
        at <clinit> @ test.app.TestTracingApp$.delayedEndpoint$test$app$TestTracingApp$1(TestTracingApp.scala:32)
        at apply @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at parTupled @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at parTupled @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$2(TestTracingApp.scala:34)
        at <clinit> @ test.app.TestTracingApp$.delayedEndpoint$test$app$TestTracingApp$1(TestTracingApp.scala:32)
        at flatMap @ test.app.TestTracingApp$.$anonfun$tracingTestApp$1(TestTracingApp.scala:33)
        at flatMap @ test.app.TestTracingApp$.delayedEndpoint$test$app$TestTracingApp$1(TestTracingApp.scala:32)

BTW @jvican - do you have any performance tests in bloop?
If so, could you run them with 3.2.2+55-9adf112c-SNAPSHOT ?
I imagine that bloop will probably turn off stack traces anyway but it would be great to see what's the impact on real applications.
In microbenchmarks, I experience 10-30% slow-down for cached tracing

Hey @Avasil, I have performance tests in bloop but bloop hasn't yet migrated to 3.x, it's something I'm planning to get around to soon, so unfortunately we won't be able to use our performance checks for a real-world performance evaluation.

In microbenchmarks, I experience 10-30% slow-down for cached tracing

What do you mean by cached tracing? Will this be the baseline when tracing is enabled by default?

What do you mean by cached tracing? Will this be the baseline when tracing is enabled by default?

There are multiple configurations of tracing: https://typelevel.org/cats-effect/tracing/#configuration
It is going to be default but it can be disabled if someone notices any performance degradation

This would be a very helpful feature. If a small release can be done that includes this feature, that would be great

This would be a very helpful feature. If a small release can be done that includes this feature, that would be great

@9rb I plan to finish this PR and do an official release within two weeks but there is a snapshot that you could try: 3.2.2+55-9adf112c-SNAPSHOT - feedback would be greatly appreciated :)

This would be a very helpful feature. If a small release can be done that includes this feature, that would be great

@9rb I plan to finish this PR and do an official release within two weeks but there is a snapshot that you could try: 3.2.2+55-9adf112c-SNAPSHOT - feedback would be greatly appreciated :)
Thanks. Will do.. @nzpr @tgrospic


Add files via upload

Uploaded new-queryset.png to replace existing file

I renamed the file for you already no worries.


openopps: Add spider

See API documentation and credentials here: https://crm.open-contracting.org/issues/4572#note-9
Please keep the credentials secret, using environment variables.

Done in #326


Crash connecting to server

Updated to v2.73 and when I try to log into the server it times out, then i get this error. (The timing out part may be unrelated, but not sure.)
http://pastebin.com/UqDwyb5H
I did find out what was causing the timing out, but the error still should be looked at. Thanks :)

Thanks for reporting. I'll check it out.

What exactly caused the timeout? I'm having the exact same issue, can't connect to a server.

Time out were caused by mismatched config on server and client.
If an item is disabled in one and not the other, it'll time out.

Thanks for the quick reply! Let's see if this works.

Can this be closed?

Yup. Not a problem for me anymore. :D Thanks


Config Diff showing multiple empty lines as mismatched

NetBox version
v4.0.6
Describe the bug
On many devices I am showing large blocks of empty lines that are marked as diffed:
To Reproduce
Steps to reproduce the behavior:

Go to ConfigDiffScript
Click on 'Run script'
Then go to 'Config Compliances'
See results in diff

Expected behavior
Diff only for lines containing config
Screenshots

Additional context
Filters are applied on the Platform settings

that is expected behaviour in my book.
if you want to filter them from the diff, did you try to filter them with the exclude regex in the platform settings?

that is expected behaviour in my book. if you want to filter them from the diff, did you try to filter them with the exclude regex in the platform settings?

Yes that is exactly what I did.  I have filtered these lines in the platform settings.  I would expect at that point they are ignored by the diff, not marked.

Hi @Dz3015 thanks for opening the issue,
I added tweak before diff, that replaces long sequences of new lines with only one line, is his fine solution for you?
>>> a = "a\n\n\n\n\n\n\n\n\n\nb\na\n\n\n\n\n\n\n\n\n\nb"
>>> re.sub("\n{3,}", "\n", a)
'a\nb\na\nb'
>>>

@Dz3015 so lets try how it will work in your tasks, please update the plugin to the latest version 2.8.0
and feel free to open a new issue or reopen this, if you still have a problem with a lot of empty newlines


chore(main): release matterbridge-home-assistant 0.2.4

:robot: I have created a release beep boop
0.2.4 (2024-06-10)
Bug Fixes

docker: added docker entrypoint (#33) (90d10da)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/t0bst4r/matterbridge-home-assistant/releases/tag/matterbridge-home-assistant-v0.2.4 :sunflower:


Floyd warshall algorithm with path generator

This is  modification of floyd warshall algorithm which generates shortest path and path weight. code is having proper comments.

I'd need some time to review this. Honestly I have forgotten this algorithm 😂

Yeah sure😀. Lemme know if any other help is required. 😁


Added c++14 standard support and POSIX API compile time linker flags and ISO c++14 atomic and thread library support…

…for avoiding annoying errors and warnings..!

I think I'll go with this. Could you update the help file to document the same default string?

vimrc
-let g:syntastic_c_compiler = 'clang'
 -let g:syntastic_c_compiler_options = ' -std=c11 -latomic -Werror -pedantic-errors -Wno-error=unused-parameter -Wno-error=unused-command-line-argument'
 -
 -" Syntastic Plugin C++14 support for Clang Compiler
 -" Make sure clang have system path
 -let g:syntastic_cpp_compiler = 'clang++'
 -" flags more specific to clang
 -let g:syntastic_cpp_compiler_options = ' -std=c++14 -stdlib=libc++ -lc++abi -ldl -latomic -Werror -Wself-assign -Wno-error=unused-command-line-argument -Wno-error=unused-parameter -pedantic-errors -Wextra-tokens -Wambiguous-member-template -Wbind-to-temporary-copy '

Make it interface-able through .vimrc
In Syntastic Plugin, I can change it according to my choice...
Then people can meet their compilation requirements, Because some people like more strict check whereas some people don't

I have updated the docs default string and Now it is more minimalist !

Looks good to me. Cheers! :beers:


The server sends data to the client and loses the packet

I have a question. I have a scenario where after the client and the server establish a long connection through quic, the server automatically creates N QuicStreamChannels with the client and simulates sending 10,000 messages to the client through QuicStreamChannel. However, the data volume of the package received by the client is incomplete. Sometimes it receives more than 2,000 messages, and sometimes it receives more than 7,000 messages. Packet loss occurs. Can you help me analyze what caused the problem?

The server error message is as follows
Connection closed:QuicheQuicConnectionStats[recv=9948, sent=10404, lost=0, retrans=0, sentBytes=819127, recvBytes=458139, lostBytes=0, streamRetransBytes=0, pathsCount=1, peerMaxIdleTimeout=300000, peerMaxUdpPayloadSize=67108864, peerInitialMaxData=268435456, peerInitialMaxStreamDataBidiLocal=1000000, peerInitialMaxStreamDataBidiRemote=1000000, peerInitialMaxStreamDataUni=67108864, peerInitialMaxStreamsBidi=67108864, peerInitialMaxStreamsUni=67108864, peerAckDelayExponent=3, peerMaxAckDelay=25, peerDisableActiveMigration=false, peerActiveConnIdLimit=10000, peerMaxDatagramFrameSize=-1]


fix: add lineWidth to Shared_DeckGL.jsx

CATEGORY
Choose one

[x] Bug Fix
[ ] Enhancement (new features, refinement)
[ ] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY
#9455 caused a regression by dropping lineWidth from the shared DeckGL controls.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN
Local testing
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

REVIEWERS
@rusackas

Codecov Report

Merging #9496 into master will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master    #9496      +/-   ##
==========================================
- Coverage   58.77%   58.76%   -0.01%
==========================================
  Files         385      385
  Lines       12239    12240       +1
  Branches     3022     3022
==========================================
  Hits         7193     7193
- Misses       4862     4863       +1
  Partials      184      184

Impacted Files
Coverage Δ

...ontend/src/explore/controlPanels/Shared_DeckGL.jsx
0.00% <0.00%> (ø)

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 b39e78f...649202c. Read the comment docs.


panda css className concatenation does not result into generating specified style in layer.css

Description
export default defineConfig({
  preflight: true,
  emitPackage: true,
  presets: ["@shadow-panda/preset"],
  include: [
    "./src/components/**/*.{ts,tsx,js,jsx}",
    "./src/app/**/*.{ts,tsx,js,jsx}",
  ],
  exclude: [],
  jsxFramework: "react",
  outdir: "@shadow-panda/styled-system",
  theme: {
    extend: {
      textStyles,
      breakpoints: {
        sm: "1339px",
        md: "1440px",
        lg: "1920px",
        xl: "2560px",
      },
      tokens: {
        colors: {
          magenta: {
            "100": { value: "#FFF0F2" },
            "200": { value: "#FFE2E7" },
            "300": { value: "#FF9FB2" },
            "400": { value: "#FF4370" },
            "500": { value: "#ED1150" },
            "600": { value: "#A80940" },
            "700": { value: "#50011C" },
          },
          green: {
            "100": { value: "#EBFEF4" },
            "200": { value: "#CDFEE4" },
            "300": { value: "#26E197" },
            "400": { value: "#01B574" },
            "500": { value: "#00A369" },
            "600": { value: "#00543C" },
            "700": { value: "#003023" },
          },
          blue: {
            "100": { value: "#EFF4FB" },
            "200": { value: "#DAE9FF" },
            "300": { value: "#9AC1FA" },
            "400": { value: "#2B75FC" },
            "500": { value: "#3A61F2" },
            "600": { value: "#213489" },
            "700": { value: "#182253" },
          },
          gray: {
            "100": { value: "#FFFFFF" },
            "200": { value: "#F7F7F7" },
            "300": { value: "#F1F1F1" },
            "400": { value: "#E6E6E6" },
            "500": { value: "#BFBFBF" },
            "600": { value: "#76767A" },
            "700": { value: "#3A3A3F" },
            "800": { value: "#131317" },
          },
        },
      },
    },
  },
});

Im using @shadow-panda for UI styling. Using the presets I created my own tokens and atomic recipe using cva
export const pandaBadge = cva({
  base: {
    borderRadius: "4px",
  },
  variants: {
    visual: {
      outline: {
        borderRadius: "16px",
      },
      increase: {
        bg: "magenta.100",
        color: "magenta.400",
      },
      decrease: {
        bg: "blue.100",
        color: "blue.500",
      },
      same: {
        bg: "mint.100",
        color: "mint.300",
      },
      na: {
        bg: "gray.200",
        color: "gray.500",
      },
    },
  },
});

<Badge className={pandaBadge({ visual: 'increase' })} ml={"8px"}>
            text
 </Badge>

I was able to find the tokens that i defined in a system-styled/tokens/index.mjs which means i successfully codegen my configuration.
but the style does not seem to apply.
*update
: I was able to use atomic recipe until I removed node_modules and panda codegen. After clearing node_modules and re-generating codegen suddenly atomic recipe does not work
Link to Reproduction
link
this is a working directory and it shows that the same recipe is working as expected

Steps to reproduce

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

JS Framework
nextjs
Panda CSS Version
^0.19.0
Browser
No response
Operating System

[X] macOS
[ ] Windows
[ ] Linux

Additional Information
No response

*update
The layout.css that has been built seems to be not containing any class that is related to the pandaBadge recipe.
<Badge className={css({bgColor: 'magenta.100'})} ml={"8px"}>
text
</Badge>

on the other side, if i manually input bg color magenta.100
layout.css successfully has
 .bg_magenta\.100 {
    background-color: var(--colors-magenta-100)
    }

Update as mentioned above, i was able to generate recipe stylings in layer.css
But there is a remaining issue, which className concatenation styling is not working is expected.
example below

//dropdownButton recipe

export const dropdownButton = cva({
  base: {
    px: "4px",
    py: "2px",
    borderWidth: "1px",
    boxShadow: { base: "none", _focus: "none" },
    outline: { base: "none", _focus: "none" },
    textStyle: "bodyM",
    "&[data-state=open]": {
      color: "blue.400",
      outline: "2px solid",
      outlineColor: "blue.400",
    },
  },
});

<SelectTrigger
        className={cx(dropdownButton(), css(//props from parent//))}
      >

adding style object (per say, {w: 'max-content'} )directly into css function result to successfully create a '.max_content' class and style in layer.css. But when its style is set passed via props leads to add the class in the DOM element but style does not apply because '.max_content' styling does not exist in layer.css file


Idea: --update-confirm that shows a diff

Nice job on the updates!  I have to say, this is my favorite script.  I have an idea.  As much as I trust your script, would it be useful to have --update-confirm show a diff and ask y / n?  After all, the update command does require root access.  Imagine the case where someone visually audits the x11docker script along with the original --update feature once and trusts it at that point then wants to update again.  Then they could trust their local copy and that --update-confirm would show a complete diff.  It seams like that would encourage and make it easier to keep up the audit and catch any changes even from tampering at the site hosting the x11docker update.  It might be worth it if this is very short and simple to implement.  Not sure about anyone else, but security is my primary use case for x11docker.

That sounds like an interesting idea, thank you for the suggestion! I am already trying it.
Currently I thing of an optional argument --update[-master]=diff that only shows the difference without installing anything.
I really appreciate that you are looking at the code. It is always possible that I introduce some stupid or even dangerous issue, and it helps a lot if others look at it, too.
I once also thought of an optional argument --update[-master]=VERSION to specify a version number to install. But I am not sure if that makes sense and would be needed by anyone. The choice between stable release and latest master seems to be sufficient.

I have introduced argument diff as described above.
If you run --update-master once to get the new code, and then --update=diff, you'll see the new code.
The changelog excerpt is printed, too.
With argument diff no root privileges are needed.


prisma init creates config file even if it already exists

If I have created a .graphqlconfig.yaml using graphql init, and later run prisma init, it will create a .graphqlconfig.yml, even though it already exists.
Both cli's have a different default extension for the yml config, and should be unified.
Also, if I create a JSON config file using graphql init, prisma init still creates a Yaml file.

prisma init does not create .graphqlconfig.yml files anymore.


Make containerId single value.

There are some containers that use the same name (which determines the identifier) but get restarted often.   As the tag is set to multi value, we'll keep accumulating the containerId tag.
Relevant information
Describe what you have done and any details that you think are relevant or that you might want to discuss with us.
Checklist

[x] I've read the guidelines and understand the acceptance criteria.
[x] The value of the attribute marked as identifier will be unique and valid.
[x] I've confirmed that my entity type wasn't already defined. If it is I'm providing an
explanation above.

Got confirmation from @douglascamata that the multi value is not known to be used.


move streams implementation to Stdout instead of using conmonrs streams

plus a couple of other fixes attempting to fix the issues found in https://github.com/containers/conmon-rs/pull/311
note: we still don't pass the test found in https://github.com/containers/conmon-rs/pull/311, but I believe this is a step in the right direction
carrying https://github.com/containers/conmon-rs/pull/313

Codecov Report

Merging #314 (74cafe4) into main (c1ba1ab) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##            main    #314   +/-   ##
=====================================
  Coverage   6.89%   6.89%
=====================================
  Files          2       2
  Lines         29      29
  Branches      17      17
=====================================
  Hits           2       2
  Misses        27      27

ok this is ready (though doesn't yet fix the test) and is carrying https://github.com/containers/conmon-rs/pull/320 so we probably could merge that too @rphillips @saschagrunert


Allow signing with Uknown Signer

Unknown signer does not allow signing before its type is set, but it could just allow signing like an external signer until its type is set.

Verified this issue on keeper app v 1.3.2(439)


Swop the position of markets and trade history

I really think it would be a much better layout if markets box was on top of trade history box. Basically just swapping them round.
This would be much more familiar to many traders and this is where poloniex and other exchanges often position their markets. ie the top right.

I'm trying out a different layout, adding a mini depth chart visible at all times and moving the market history to the bottom center. While this is how Poloniex does it I personally prefered to have the history visible, what do you think?

I think moving trade history to bottom is a great idea.
I like the market pairs in this new position.
I like the current set up where you can swop between depth charts /price charts.
I think being able to veiw both at the same time is too much and depth chart is to small with this layout.
The space below market pairs is ideal for a trollbox and would match polos UX.

OK thanks for the input!
I was gonna leave the swapping between depth and price charts too, and yea I guess a trollbox would fit there. The one I have designed already works like this one https://conversejs.org/ so you can hide it though.

I do like this as well - however I would suggest to put the full width depth to the bottom of the 'orders' screen .. polo has it like that too. The position of the mini depth would be the perfect place for a trollbox (add little more height)

Will keep it like in the screenshot until the trollbox is ready, at which point I might replace the small depth chart.


Posts Feed Optimisations - Experimental

What does this PR do?
based on my initial findings, the major stall app face is when ImageSize package us used by PostCardView and animated empty view holders.

I have removed the useEffect function from PostCardView and moved rest of simple calculation to main body. as ImageSize we'll have discuss either replacement or repositions of these calls.

Vote calculations are being done asynchronously now, also change the component type of UpvoteContainer to functional.

The animated empty view were taking too much toll on Android, I have commented them for now

Suggestions/Questions?

We should return the image ratios with post payload, pulling them using thumbnail uri during runtime is too many calls. Is there any way to do that from BE?

list of active_votes is retuned as a long list in home feed that is essentially never needed, imo, a better approach would be to only return the total number of votes, and status vote related to user (from Backend). App will perform worst for most liked posts.

similarly complete body of post is returned in feed response, which again can be avoid and made a part of post details as an attempt to reduce payload size of feed call... what do you think.?

@noumantahir Sent invite, could you create branch inside repo and PR from there? It would help me to test changes quicker.

We should return the image ratios with post payload, pulling them using thumbnail uri during runtime is too many calls. Is there any way to do that from BE?

As images are user submitted getting ratio of each thumbnail is only possible after image is downloaded, that's why we added very small thumbnail download to determine ratio/size. Not perfect solution I know, but that's what we have for now. One solution is to use same image after its downloaded and then show or get ratio and adjust.

list of active_votes is retuned as a long list in home feed that is essentially never needed, imo, a better approach would be to only return the total number of votes, and status vote related to user (from Backend). App will perform worst for most liked posts.

There is .stats.total_votes for numbers as for status of vote related to observer is being worked on

similarly complete body of post is returned in feed response, which again can be avoid and made a part of post details as an attempt to reduce payload size of feed call... what do you think.?

We used to have truncate_body parameter but because we show summary of post, we were not fully utilizing that. I will ask backend team to consider adding it back.

As images are user submitted getting ratio of each thumbnail is only possible after image is downloaded, that's why we added very small thumbnail download to determine ratio/size. Not perfect solution I know, but that's what we have for now. One solution is to use same image after its downloaded and then show or get ratio and adjust.

One solution I implemented in one of app, I would get image ratio before uploading images and save it's ratio along side the saved object... another better solution could be pure backend, a service that reads newly created post and process it's images to update post data.
We can let the image component to auto adjust height as it's loaded, but it will add a glitch for users. caching ratios after fetching feed should work for now yet with added load times.


IOTCOMM -  HIP19 third party manufacturer application manufacturer

IOTCOMM,Application to become an approved third party manufacturer.
Ed – rendered view: https://github.com/huangxian33/HIP/blob/master/0019-third-party-manufacturers/iotcomm.md

Thanks for your submission. Someone from the manufacturing review committee will be in touch

Hello! The contact email address you shared came back, can you please provide another one?

你好！您分享的联系电子邮件地址回来了，您能否提供另一个？

I'm very sorry, email error. Revised.
xian<EMAIL_ADDRESS>

Hello. This is my email. I'm very sorry.
Thanks and best regards,
黄贤 / HUANG XIAN
Product Manager
XIAMEN IOTCOMM TECHNOLOGY CO.,LTD.
Tel:<PHONE_NUMBER>1
Mail: @.***
Wechat:huangxian33
Website: www.iotcomm.com.cn
Address: No. 2002, Tongjizhong Road, Tong'an District, Xiamen, China.
From: Sophi Kravitz
Date: 2021-06-11 05:42
To: helium/HIP
CC: huangxian33; Author
Subject: Re: [helium/HIP] IOTCOMM - HIP19 third party manufacturer application manufacturer (#203)
Hello! The contact email address you shared came back, can you please provide another one?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

No worries at all! Thanks for the update!


kfserving 0.6.0 introduces CVE-2017-18640 in image

/kind bug
Installing python package kfserving 0.6.0 introduces CVE-2017-18640 in image
What did you expect to happen:
0 critical CVEs
Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]
Environment:

Istio Version: NA
Knative Version: NA
KFServing Version: NA
Kubeflow version: NA
Kfdef:[k8s_istio/istio_dex/gcp_basic_auth/gcp_iap/aws/aws_cognito/ibm]
Minikube version: NA
Kubernetes version: (use kubectl version): NA
OS (e.g. from /etc/os-release): NA

@jtfogarty Any instruction how to fix it? Thanks

@yuzisun update snakeyaml to version 1.26
https://snyk.io/blog/java-yaml-parser-with-snakeyaml/

@jtfogarty kfserving sdk does not depend on snakeyaml, where did you find this dependency?

closing I do not think kfserving or kserve SDK has java dependency..


The exported date is 43 seconds longer

Test code:
var sheetData = {
    '!ref': 'A1:A2',
    'A1': { v: '2021-08-12 00:00:00', t: 'd', z: 'yyyy-mm-dd hh:mm:ss' },
    'A2': { v: '2021-08-12 00:27:02', t: 'd', z: 'yyyy-mm-dd hh:mm:ss' },
};

var sheetName = 'Sheet1';
var filename = "test.xlsx";

var workbook = {
    SheetNames: [sheetName],
    Sheets: {}
};

workbook.Sheets[sheetName] = sheetData;

XLSX.writeFile(workbook, filename, { compression: true });

But the Excel view result is:

2021-08-12 00:00:43
2021-08-12 00:27:45

My PC timezone is UTC+8.
Maybe this code can help you find the bug:
var basedate = new Date(1899, 11, 30, 0, 0, 0);
console.log(basedate.getTimezoneOffset()); // -485
console.log(basedate.toISOString()); // "1899-12-29T15:54:17.000Z"

For the date 1899-12-30 00:00:00, method getTimezoneOffset returns 43 seconds less.

The date bug is well known, https://github.com/SheetJS/sheetjs/issues/1918#issuecomment-625714551 was a comment from last year.  Closing as dupe of #1565


KDUMP-CRASH-16-CORES SLES 15:  Failed to start kdump service and does not collect logs

Seen with repro rate is about 15% (once in 7 runs)
LISAv2 only shows the following log error:
06/19/2019 13:36:14 : [ERROR] Running KDUMP-Execute.sh script failed on VM!
Other logs are not collected from the vm even though they exist:
lisa@LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0:~> cat TestExecution.log
Wed Jun 19 13:35:22 2019 : Testscript running on suse_15
Wed Jun 19 13:35:22 2019 : Successfully initialized testscript!
Wed Jun 19 13:35:22 2019 : Success: enabling kernel to call panic when it receives a NMI.
Wed Jun 19 13:35:22 2019 : Checking if kdump is loaded after reboot...
Wed Jun 19 13:35:22 2019 : Success: Kdump is loaded after reboot.
Wed Jun 19 13:35:22 2019 : Waiting 50 seconds for kdump to become active.
Wed Jun 19 13:36:12 2019 : ERROR: kdump service is not active after reboot!

Kdump service status:
lisa@LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0:~> sudo rckdump status
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 load.sh[1314]: Please reserve memory by passing"crashkernel=X@Y" parameter to kernel
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 load.sh[1314]: Then try to loading kdump kernel
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 load.sh[1314]: Memory for crashkernel is not reserved
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 load.sh[1314]: Please reserve memory by passing"crashkernel=X@Y" parameter to kernel
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 load.sh[1314]: Then try to loading kdump kernel
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 kdump[6338]: FAILED to load kdump kernel: /sbin/kexec -p /boot/vmlinuz-4.12.14-5.30-azure --append="USE_BY_UUID_DEVICE_NAMES=1 earlyprintk=ttyS0 rootdelay=300 net.ifnames=0 dis_ucode_ldr scsi_mod.use_blk_mq=1 rw elevator=deadline sysrq=yes reset_devices acpi_no_memhotplug cgroup_disable=memory nokaslr irqpoll nr_cpus=1 root=kdump rootflags=bind rd.udev.children-max=8 disable_cpu_apicid=0   panic=1" --initrd=/boot/initrd-4.12.14-5.30-azure-kdump , Result: Memory for crashkernel is not reserved
                                                                              Please reserve memory by passing"crashkernel=X@Y" parameter to kernel
                                                                              Then try to loading kdump kernel
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 systemd[1]: kdump.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 systemd[1]: Failed to start Load kdump kernel and initrd.
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 systemd[1]: kdump.service: Unit entered failed state.
Jun 19 13:35:28 LISAv2-OneVM-v-stlups-UH66-20190619062940-role-0 systemd[1]: kdump.service: Failed with result 'exit-code'.

Got only a 1 in 20 failure for this test (and even so the failure does not contain any relevant logs).
Test image: SUSE SLES 15 latest
Iteration job: [URL]/job/Azure/job/job-azure-cloudtest-manual/2357/console
Closing this bug until we get a higher repro rate.


Uncaught (in promise) TypeError: createParser is not a function

Is this sort of missing API or how do I solve this error?
var midiFile = new MIDIFile(anyBuffer);
var trackEventsChunk = midiFile.getTrackEvents(0); //I did translate midi song to arraybuffer and print Object in the console
var events = new MIDIFile.createParser(trackEventsChunk);

Googling found
var parser = new MIDIEvents.createParser(new DataView(anyBuffer), 0, false);
var event = parser.next();

How do you convert to DataView API?


Match state as well on the /members/mapsearch/ endpoint.

On the above-mentioned endpoint, currently we only match the city (we get the 'search' query as city, state, country). This leads to discrepancies in the profiles shown on the result page because two cities at different places can have the same name.
So, along with 'city', we should filter on the basis of the 'state' as well.

Can i take up this issue ??

Sure, go ahead!

I am facing a issue that when I create an Alumni profile, it does not show up on at /members/ endpoint and by  default there are 0 registered alumni .
So as to check the search functionality i need to create some alumni profiles ,am I missing anything as I am new to django .
Could you please help !!

Also, if you're creating the users using the Registration Form on the /newregister/ endpoint, please report any issues you come across there, as that is a new Registration Form that was just merged 2 days back.

@Ritish134 You would need to first verify the profiles you've created by logging in as Admin, then only they'll appear on the /members/ page. Just login with your superuser credentials (you can create them by running python3 manage.py createsuperuser command if not done so already), go to Admin dashboard (by clicking on the "Admin" button on the top-right corner of home page) and verify those profiles.

Yes ,did that but after verifying the profile it gives an error NoReverseMatch at /members/

@Ritish134 It's giving error because you've saved incorrect values in the Batch table. The Batch table stores the passing year of alumni and must be 4 digits long (ex. 2022), whereas you've set the batch for the alumni in the above screenshot as '1'.
If you look closely at the error above, there's a regex there: [0-9]{4} which mean that the batch should be numeric and 4 digit long, which the argument being passed is (1,), i.e., '1'.

Ooh yes got it thanks 😅

How is it ?

@Ritish134 This isn't what I was talking about (and I should have been more clear on the steps to reproduce the issue).
This issue is related to the /mapsearch/ endpoint. To reproduce the issue:

Create two alumni profiles with same city names but different states (ex. Hamirpur is in both HP and UP, Aurangabad is in both Bihar and Maharashtra).
Go to localhost:8000/geolocation page, zoom in to the city you just created the profile with at any one of the states, and click on it to go to the /members/mapseach page.
You'll see that the list contains profiles from other states as well (but with same city name).

As for the changes you've done till now, while it looks good, we don't really need a 'state' input on the page to search for alumni. But while you're at it, maybe you can fix another issue on that page related to responsiveness.
This is how the page looks on mobile screens:

On small screens, each input should be in separate rows and wide enough for users to interact with them.
Maybe you can fix this in the current PR (as you are already working on that page) and the other issue in a separate PR?

Let me know if you face any further issues here. I've filed a separate issue for the responsiveness thing: #133.


DataTables warning: table id=tickets-table - Ajax error. For more information about this error, please see http://datatables.net/tn/7

I installed this into a new Laravel installation and followed the command-line method and populated it with the sample data/seeded info. The dashboard loads and the queries execute successfully. (I have the Laravel Debugbar enabled)
However whenever I attempt to navigate to a page that is attempting to I assume list tickets into a DataTable -- they are failing to load with:
DataTables warning: table id=tickets-table - Ajax error. For more information about this error, please see http://datatables.net/tn/7
I had to go into TicketsController.php previous to this error as originally it wasn't even finding Yajra's DataTables class. I modified a line in TicketControllers.php (254) to read as camel-cased as opposed to lowercase:
$datatables = app(\Yajra\DataTables\DataTables::class);
Doing that got me passed the "Target class [Yajra\Datatables\Datatables] does not exist." error/stack trace but now I'm stuck with:
ErrorException
Invalid argument supplied for foreach()
Any help is greatly appreciated!
The dashboard loads with the sample data, so I know the SQL interaction is working as expected.

Note: I also tried replacing the src vendor files with the latest revisions found in the bottom of this post:
https://github.com/panichelpdesk/panichd/issues/11
I overwrote the files and the same issue persists.

@btraill Have you tried to delete the demo tickets and test it creating one of your own? I'm not sure if It could be a problem with the actual demo data.
The PR #12 you mentioned is included in current version, v0.18.0 released last 17th November
If you still have trouble with this, please share your software versions:

Laravel version
PanicHD version
Local Installation Operating System (Which distro and version)

any update on this having the same issue

Hi @vasilejianu,
Do you still have this issue? If you do, please share these parameters from your installation:

Laravel version
PanicHD version
Local Installation Operating System (Which distro and version)


Resolves [SR-9941] [SR-1805] remove python implicit import as it is deprecated

Removes usage of deprecated python sytax in update-checkout

I ran into this issue when building.  Looks like if you update the implicit relative imports to explicit, it will run fine on python2 & 3.

Resolves SR-9941 and SR-1805 which appears to be a duplicate.

Same fix as in #23038 and #23256. I still cannot start the CI, but I think this can be merged as is.