Performance settings

Here's what I have so far for the avatar quality stuff.  Ran into some issues with new lines when committing that I need to finish cleaning up still via a rebase, in particular on the app-manager file.  Will update this with more info and questions shortly.
--
As I was learning the system, and using the existing functions to change the quality, my initial approach was to set a load property on the avatar, and to keep it from rendering until the load state was set to true.  I attempted to have the quality settings be applied in the constructor of the Avatar class, but found that the sprite creator made it's own avatar instance, and was causing an infinite loop.  so i moved setting the initial quality settings to just after creating the avatar, and the would enable the load property once the quality was set to start rendering.  Looking at the setQuality function in avatars.js, I saw the current approach was to compress the existing model, attach the new model, and then hide the old one.  But it wasn't keeping track of the sprite models, it just kept adding new ones, so I updated it to track the initial model, crunched model, and sprite, and only create new ones if there wern't any existing already.
I soon saw that the VRM templates had an activate callback which would set up an avatar for the local player.  The app is manually calling setAvatarUrl, I felt it made sense to be able to utilise the activation callback and have the ability for the VRM template to assign itself as an avatar.  And see as the quality settings were to be applied to all VRMs, not just the player's avatar, I decided to shift the initial quality logic into the template.  I still need to add the cruncher into it though.  I then modified the scene template to identify if it was loading a VRM or not, and if the model being loaded was marked as a player by adding an extra property to a model in the scene manifest.  If the scene gets a VRM that's not the player, it make that VRM into an NPC.  I then updated the setAvatarQuality function in game.js to account for the NPC's as well.
I also added watch to the app project to have it auto restart if I modified the templates.  It's not a hot reload but it's less annoying than having to manually restart it.
Some questions:

making the VRM's into avatars discards their initial set position.  I can change that, but wanted to make sure I'm going in the ideal direction before making more changes to to the avatar/NPC logic.
the VRM templates were running the toon shader on the models twice, once in default for unskinned, and one in the setSkinning function, and so it's currently doing that for spriting as well.  I assume it should only need to be run once per VRM and reused?
applying the quality changes to all the avatars takes quite a bit of time, it can surely be sped up, but I didn't want to go too far off task adding a loading screen.  Is the expectation that all the down-scaling will be done on the client side on load?  Any plans to store/reuse models online/locally?

I'm not 100% on the "whys" of everything yet obviously.  Getting more insight into how it currently works vs how you're intending it to work will help a lot.  Looking forward to discussing in more detail.
resolve #2321

moved access of quality settings for readability/ease of access.  also enabled the unimplemented quality settings, and have a reasonable default being used if one has not yet been set.  the crunched avatar seems visually lighter than I expected, but the materials look correct when looking through the object.  would be good to get confirmation that it's correct.

@amnaarshed4224 this is to resolve #2321, it's still a work in progress but you should be able to test changing the quality settings.  the following still needs to be address

turning a vrm into an npc resets it's position
diorama bug fixes
crunched avatar for diorama & post processing
possibly having the crunched avatar set in the vrm template like i did with the sprite mesh, would be good to hear opinions on that
possibly adjusting skinning/unskinning logic to make initial loading faster

also note this has a totum change.  the .gitmodules file is currently updated to point to my forked repo.
https://github.com/0reo/totum/commit/0e74f135ea22ad707c7aa98b7384fd10f58a05b0

the crunched avatar seems visually lighter than I expected, but the materials look correct when looking through the object. would be good to get confirmation that it's correct.

That is correct behavior; almost by definition. The shader is much simpler than the MToon which is used at the highest quality setting. Additionally, the cruncher uses one material for the entire avatar which is usually not the case with the MToon shaded avas.

making the VRM's into avatars discards their initial set position. I can change that, but wanted to make sure I'm going in the ideal direction before making more changes to to the avatar/NPC logic.

I think it should be possible to make it work so that when you go into a VRM you "embody" it, while "disembodying" the previous one. So we could for example keep the head transform mapper correctly during the transition, which is what localPlayer.position is.

the VRM templates were running the toon shader on the models twice, once in default for unskinned, and one in the setSkinning function, and so it's currently doing that for spriting as well. I assume it should only need to be run once per VRM and reused?

Yes, that is correct, there are a lot of inefficiences in the avatars rendering.
Particularly:

There is no real need to have skinned/unskinned avatars at all. This was a stopgap put in place because the bones computation was a killer and not needed for the unskinned (unworn) avatars case, and we wanted to get around it, so we created a mesh that doesn't do it. We would ideally re-use the avatar when we wear it; we just need to perform the proper resets and matrix update skips to keep the updates fast.
We are not using the crunched version of the avatar for depth computations, when we really should. The avatar should not contributed 50 more geometry draw calls just to get its depth, when it could be one.

applying the quality changes to all the avatars takes quite a bit of time, it can surely be sped up, but I didn't want to go too far off task adding a loading screen. Is the expectation that all the down-scaling will be done on the client side on load? Any plans to store/reuse models online/locally?

This should ideally be done in a thread for starters, so it doesn't hitch. It is indeed a heavy optimization process to create a full animated spritesheet/texture atlas for an avatar.

Is the expectation that all the down-scaling will be done on the client side on load?

No, once we get it working in a separate thread, it is straightforward to set this up as part of the backend by importing that code. This could be done in totum, and cached, for example.

Maybe removing the dial skinned/unskinned VRM model format should be part of this PR, since it might be getting in the way of clean initialization code.

sounds good to me

This PR touches on:
https://github.com/webaverse/app/issues/2339
https://github.com/webaverse/app/issues/2341
https://github.com/webaverse/app/issues/2343

I've removed the unskinned meshes from the vrm template and cleaned up some bugs when switching between settings.  There is an option to make other vrm's NPC's, but they are no longer NPC's by default.  I'll push the branch here once I clean up the commit history tomorrow, but i'll link the temporary branch here until that's been done.
I've also started on the diorama updates, would like to confirm that the diorama avatar will ONLY be the crunched avatar, regardless of the user settings, or if it will match the user's settings.
https://github.com/webaverse/app/compare/master...0reo:temp-changes?expand=1

I've removed the unskinned meshes from the vrm template and cleaned up some bugs when switching between settings.

Awesome if true. This has been a problem for a while.

There is an option to make other vrm's NPC's
I don't understand this... NPCs and VRMs are different types of apps. Can they be converted somehow? I'm probably just confused.

I've also started on the diorama updates, would like to confirm that the diorama avatar will ONLY be the crunched avatar, regardless of the user settings, or if it will match the user's settings.

Since some of the crunched avatars have morph target glitches when speaking, which can look bad in the diorama.
I think the ideal is crunched avatar in the diorama (if it looks good), and also the crunched avatar for all depth rendering. The only place we need a different avatar render is 1) the main color pass in the scene, or 2) spritesheet rendering, which is a completely different type of pass which alpha-discards.

There were some recent changes in this area so this PR could use a merge from master.

I don't understand this... NPCs and VRMs are different types of apps. Can they be converted somehow? I'm probably just confused.

When I initially read Make the setting apply to all avatars in the scene (all [totum](https://github.com/webaverse/totum/) [VRM](https://github.com/webaverse/totum/blob/main/type_templates/vrm.js)), and I saw how quality settings were being set using avatars.js, I took that to mean that all app's created from the vrm templates would be attached to a type of Avatar.  I saw the NPC class was a type of Avatar and figured that made the most sense to use.  Since we've now spoken about having vrm's in the scene which aren't necessarily NCPs(for example not needing idle animation), I set it up so that in the scene templates(grid.scn for example) you can add 'is_npc: true' to any vrm's listed, and only if set will the scene template attach the vrm app to a new NPC.

I set it up so that in the scene templates(grid.scn for example) you can add 'is_npc: true' to any vrm's listed, and only if set will the scene template attach the vrm app to a new NPC.

Ok so in the engine there is currently not something like "an npc" -- though there are many utilities included for coding an NPC, the engine itself doesn't track NPCs or implement them. Instead an NPC app uses the APIs to administer itself, providing the actual coded behavior that the NPC is to perform -- how they move, speak, and respond.
But, we can make npcs a first-class concept, and that might be best. For example, the render settings are a first class-concept -- they are a loadable module implemented as a totum type, which lets it be used in any scene. We could do the same for NPCs, making a new e.g. .npc type which is JSON describing the NPC, and then implemented as a totum loader.
However if we go that route, I don't think it should the the scene that is setting up NPCs. The scene should just have NPC typed objects in it.
Here is the current NPC implementation, though it will not work in master (it's not used in any scenes are requires a private repo to run): https://github.com/webaverse/npc

Instead an NPC app loaded through totum uses the APIs to administer itself, providing the actual coded behavior that the NPC is to perform -- how they move, speak, and respond. The app is the brain of the NPC which interfaces over metaversefile to perform functions and respond to inputs.

got it.

However, we can make npcs a first-class concept in totum, and that might be best. For example, the render settings are a first class-concept -- they are a loadable module implemented as a totum type, which lets it be used in any scene. We could do the same for NPCs, making a new e.g. .npc type which is JSON describing the NPC, and then implemented as a totum loader. That would allow for fully declarative NPCs.
However if we go that route, I don't think the scene should be setting up NPCs or aware of them. The scene should just have NPC typed objects in it and the scene loads them blindly like anything in Totum.
I.e. I don't think we should have is_npc at all.

understood and aggreed

Here is the current NPC implementation, though it will not work in master (it's not used in any scenes are requires a private repo to run): https://github.com/webaverse/npc However it could quite naturally become a totum type handler -- it's all just apps against the same metaversefile API.

Diorama and depth rendering are addressed in the most recent push.  Quality settings are set up to be applied to all vrms(rather than avatars/npcs), but ran into a roadblock trying to run the avatar cruncher in a worker, which was needed to apply the quality settings to other vrm's now that they aren't using the NPC class(although that still would have really slogged if there were too many items on screen).  I think I figured it out while writing this though.  I was unable to load the vrm to be cloned into the worker, nor could I send the serialised data and recreate the vrm inside the worker, and I couldn't figure out why.  But I believe it's because of references to window in metaversefile, which seems to get loaded into most if not all the totum templates.  Wasn't getting the error because the reference to window wasn't in the worker until after it loaded. Updating metaversefile(and possibly some other files) to reference self rather than window should get everything playing nicely together.  Will test tomorrow, and that should wrap up the ticket.

quality settings now apply to all vrms.  that said, there seems to be an issue with crunching miku specifically, regardless of the number of vrms in the scene.

if it works fine for other VRMs (I can also provide you a few), will be good to know why its not working with Miku but we can park any specific issue related to Miku as its a stock asset and already is flagged as resource intensive

if it works fine for other VRMs (I can also provide you a few), will be good to know why its not working with Miku but we can park any specific issue related to Miku as its a stock asset and already is flagged as resource intensive

sounds good.  i was able to test with scillia and scillia_drophunter_v15_vian models successfully so far.  one guess is the number of bones the model has, but that's just a guess, haven't dug deeper into it yet

this has not been reviewed and is likely stale.  I'm going to close this, update it with the current master, and make a new pr


[MB-4149] Upgrade xlsx to version 2.x

Description
This PR upgrades the xlsx Go dependency from version 1.x to version 2.x.  The latest version is 3.x, but this is an intermediate step given that 3.x has a lot of breaking changes that affect us and will take a little time to sort out.
We currently only use xlsx in the ghc-pricing-parser and ghc-transit-time-parser utilities.
Reviewer Notes

What's new in 2.x
Code changes between version 1.05 and 2.0.1
Readme notes for 2.x and 3.x.
I removed the reference to xlsx in tools.go as I'm not sure why it's needed.  It's not a CLI like some other items in that file where we don't reference it directly in code; we do have direct references to xlsx so there's no issue of it getting deleted via a go mod tidy or other go tooling.

Setup

make server_test to ensure server tests still pass for parsers.
See this PR for instructions on running ghc-pricing-parser.
See this PR for instructions on running ghc-transit-time-parser.

Code Review Verification Steps

[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Messages

:book:
:link: MB-4149

  Generated by :no_entry_sign: dangerJS against 2c8996401770993370d6320e0007ea69e9fca884


fix(core): resolve playlist reading issue

fix(core): resolve playlist reading issue
Resolves playlist reading issue introduced by Twitch breaking change (1st Sept, 2020)
New playlist format changed to
#EXTINF:2.000,
#EXT-X-BYTERANGE:1612288@0
0.ts

New format also contains up to five duplicates for each .ts segment.
fix(core): resolve incorrect VOD trim offsets
Resolves playlist issue introduced by Twitch breaking change (1st Sept, 2020)
In addition to changing the playlist formatting, the .ts segment length is now exactly 10.02 seconds long (verified in Resolve and Premiere). This change has resulted in trimmed clips having an output at completely the wrong position from the source VOD.
Use a constant known length of clips when inserting playlist parts into the playlist.

Fixes #514

Reverting to draft as issues discovered with time offsets, investigating and will resolve shortly.

I think you should be instead parsing the #EXTINF line as TwitchLeecher has done before.
#EXTINF:2.000,
#EXT-X-BYTERANGE:2108044@0
0.ts
#EXTINF:2.000,
#EXT-X-BYTERANGE:2107480@2108044
0.ts
#EXTINF:2.000,
#EXT-X-BYTERANGE:2108232@4215524
0.ts
#EXTINF:2.000,
#EXT-X-BYTERANGE:2108796@6323756
0.ts
#EXTINF:2.000,
#EXT-X-BYTERANGE:2108984@8432552
0.ts

Should add the 2.000 until it doesn't see 0.ts anymore which would result in 10.000. Assuming 10.02 would break clipping at the end of a stream as well, as the end file is likely not 10.02 seconds. Just my 2¢

This change has resulted in trimmed clips having an output at completely the wrong position from the source VOD.

Pretty sure the wrong trimming of clips in your first commit is because you weren't parsing the #EXTINF, and was instead setting the segment length to be line.Length?
So you were settings "1.ts" to be 4 seconds, because it's 4 characters long if I'm not reading this incorrectly. and "10.ts" to be 5 seconds long. Unless I'm completely misreading this.


Why needs DMB on ARM?

I can't find any evidence shows atomic_signal_fence doesn't work on ARM.
Why not using atomic_thread_fence and conditional compiling instead?

Forgive my ignorance.

ARM allows reordering of stores in the store buffer. http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.den0024a/CHDCACFC.html


Implementation for locking the mouse under linux

Here is my proposition for implementing the lock function on linux target.
The methods :
void Mouse::setPosition(int x, int y);

void Mouse::getPosition(int& x, int& y);

do the same thing as on windows.
But the method :
void Mouse::_lock(bool truth)

is actually just trying to keep the mouse inside the window if it detect it going outside.
We still can exit the window with the mouse and lose the lock control but it's actually difficult to do it.
I tested it on a 800*600 window and using a trackball (so I could roll the ball really quickly), I have to really insist on it to exit the window.
In regard with the current code and some others implementation used by others library like SDL we should register to the mouse movement event and cancel the propagation for the outside world of our window. But this is the risky implementation discuss with @RobDangerous and @wighawag.

Very nice work.


flutter_thingsboard_pe_app-release-1.1.1 problem config

![problema things](https://github.com/user-attachments/assets/548958e1-bcfe-4ca8-b720-6dad7ed826
i have this problem after install flutter_thingsboard

Which one?

this one
https://postimg.cc/XGqqXkZ2

can you help me, and i have other question.
for implement push notification i have to use
flutter_thingsboard_pe_app-release-1.1.1  or i can implemenet push notification in the thingsboard aplication .
https://ibb.co/Dw0bdm9

this one https://postimg.cc/XGqqXkZ2

Seems you have changed the version of flutter_inappwebview. The fix is pretty straightforward. Just change Uri to WebUri.
Push notifications are already implemented in the 1.1.1. There is a link with details https://thingsboard.io/blog/push-notifications-to-thingsboard-mobile-apps/

https://ibb.co/yprTG5X
now i got this bug. how i can  fix that.

It's not a bug, just try to google it.


Add ScrollBarAutomationPeer

What does the pull request do?
This PR adds ScrollBarAutomationPeer which makes ScrollBar available for use in integration tests. ScrollBar's are not discoverable by Narrator because IsContentElementCore set to false as stated in MS documentation.
Note:
GetOrientationCore is not implemented in Avalonia like in WPF and i don't really know why we may need it so i decided to not implement it.
SetValueCore is not implemented also because we dont need to set value in percents, we may just set the value directly.
Fixed issues
Part of https://github.com/AvaloniaUI/Avalonia/issues/10143

You can test this PR using the following package version. 11.0.999-cibuild0031243-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]

You can test this PR using the following package version. 11.0.999-cibuild0031324-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]

You can test this PR using the following package version. 11.0.999-cibuild0031455-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]

You can test this PR using the following package version. 11.0.999-cibuild0031794-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]


tmux shortcut then ctrl z not sure what that does but stalls the screen

fixed when i moved to zsh?


feat: support timeout for page.pdf() call

Context
When use page.pdf API, there are some extreme scenarios that can cause the promise never get fulfilled or rejected. Hence this may cause potential problems. These kind of errors most likely happens in Chromium.
Related Issues

https://github.com/puppeteer/puppeteer/issues/6834
https://github.com/puppeteer/puppeteer/issues/7496
https://github.com/puppeteer/puppeteer/issues/5846

Changes

Added timeout parameter for PDFOption which will be used in page.pdf call

@googlebot I signed it!

@googlebot I signed it!

Do you know if there's a corresponding bug reported for Chromium already? And if not, file one on https://crbug.com/new?
That way, we can make sure that we can also address the problem at its source. Thanks!

Can you move to timeout to createPDFStream as it looks like the Page.printToPDF call there is the original source of the timeout?

Sounds good ! Thanks for the review

Do you know if there's a corresponding bug reported for Chromium already? And if not, file one on https://crbug.com/new?
That way, we can make sure that we can also address the problem at its source. Thanks!

np, will check on that .

☑  Issue created for Chromium

Awesome, thanks!
As we wanna make sure that the timeout still works when the bug is eventually fixed in Chromium, the tests should be updated to just use a timeout of 1 and make sure that the call times out. That's how we test the other time outs too.
As for the test that you already wrote: It's a great reproduction that you can maybe put in a gist and reference it in the Chromium bug. That will help the engineer who'll be resolving the issue there a ton!

Awesome, thanks!
As we wanna make sure that the timeout still works when the bug is eventually fixed in Chromium, the tests should be updated to just use a timeout of 1 and make sure that the call times out. That's how we test the other time outs too.
As for the test that you already wrote: It's a great reproduction that you can maybe put in a gist and reference it in the Chromium bug. That will help the engineer who'll be resolving the issue there a ton!

Yep, the timeout values in tests are 1.
gist has been created and linked to the Chromium issue :D
Let me know if there are other things I could help with and thanks for taking time review my PR 😄

@nikli2009 Thanks for updating the pull request! I left two more comments to reduce the size of the pr a bit - could you address them too?

@nikli2009 Thanks for updating the pull request! I left two more comments to reduce the size of the pr a bit - could you address them too?

Happy to :D

@nikli2009 Thanks for updating the pull request! I left two more comments to reduce the size of the pr a bit - could you address them too?

@jschfflr  thanks for the review :D, got some quick updates :

After some manual test, it seems that the call only hangs when using base64(valid base64 tho) and external url at same time.
Realized maybe I should remove those problematic headerTemplate config in the tests as once Chromium fixes the issue, this test may fail. So in the latest commit, I made the test now more simpler and more about the timeout itself like the rest of timeout tests.


ImportError: cannot import name '_helpers' from 'google.cloud.logging'

Please can someone help me to resolve this issue. Here is the description of the error.  @snickell  @petzeb
I am trying this in a virtual environment using pipenv. Maybe I am doing something wrong, please any help is greatly appreciated.
Error
>>> from google_structlog import getLogger
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/__init__.py", line 1, in <module>
    from .setup import getLogger, setup, setup_stdout_logger, setup_google_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup.py", line 3, in <module>
    from .setup_stdout import setup_stdout_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_stdout.py", line 4, in <module>
    from .setup_google import get_default_logging_namespace
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_google.py", line 2, in <module>
    from google.cloud.logging import _helpers
ImportError: cannot import name '_helpers' from 'google.cloud.logging' (/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google/cloud/logging/__init__.py)

>>> import google_structlog
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/__init__.py", line 1, in <module>
    from .setup import getLogger, setup, setup_stdout_logger, setup_google_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup.py", line 3, in <module>
    from .setup_stdout import setup_stdout_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_stdout.py", line 4, in <module>
    from .setup_google import get_default_logging_namespace
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_google.py", line 2, in <module>
    from google.cloud.logging import _helpers
ImportError: cannot import name '_helpers' from 'google.cloud.logging' (/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google/cloud/logging/__init__.py)

Steps to reproduce
pipenv --three

pipenv shell

(test-google-struct) ➜ pip install google_structlog

(test-google-struct) ➜ pip list
Package                  Version
------------------------ ---------
cachetools               4.2.1
certifi                  2020.12.5
chardet                  4.0.0
google-api-core          1.25.1
google-auth              1.24.0
google-cloud-core        1.5.0
google-cloud-logging     2.2.0
google-structlog         43.11.173
googleapis-common-protos 1.52.0
grpcio                   1.35.0
idna                     2.10
pip                      20.3.3
proto-plus               1.13.0
protobuf                 3.14.0
pyasn1                   0.4.8
pyasn1-modules           0.2.8
python-json-logger       2.0.1
pytz                     2020.5
requests                 2.25.1
rsa                      4.7
setuptools               51.3.3
six                      1.15.0
structlog                20.2.0
urllib3                  1.26.3
wheel                    0.36.2

(test-google-struct) ➜  python
Python 3.8.7 (default, Jan 29 2021, 10:47:44)
[Clang 12.0.0 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from google_structlog import getLogger
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/__init__.py", line 1, in <module>
    from .setup import getLogger, setup, setup_stdout_logger, setup_google_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup.py", line 3, in <module>
    from .setup_stdout import setup_stdout_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_stdout.py", line 4, in <module>
    from .setup_google import get_default_logging_namespace
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_google.py", line 2, in <module>
    from google.cloud.logging import _helpers
ImportError: cannot import name '_helpers' from 'google.cloud.logging' (/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google/cloud/logging/__init__.py)

>>> import google_structlog
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/__init__.py", line 1, in <module>
    from .setup import getLogger, setup, setup_stdout_logger, setup_google_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup.py", line 3, in <module>
    from .setup_stdout import setup_stdout_logger
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_stdout.py", line 4, in <module>
    from .setup_google import get_default_logging_namespace
  File "/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google_structlog/setup_google.py", line 2, in <module>
    from google.cloud.logging import _helpers
ImportError: cannot import name '_helpers' from 'google.cloud.logging' (/Users/user1/.local/share/virtualenvs/test-google-struct-MQ6U8Jne/lib/python3.8/site-packages/google/cloud/logging/__init__.py)

I had the same issue, looks like cloud logger has updated it's APIs. created https://github.com/snickell/google_structlog/pull/6 to fix


UI Glitch when hover with Mouse over it

Hello,
Apparently the UI glitches complete out when move the mouse over it, it makes it very hard but not impossiblem to use TwitchLeecher.
https://i.imgur.com/xlphVGm.gif

Same here

Here's the issue template again that you ignored:
READ THIS FIRST!!!
Help me beeing efficient, please! I am developing Twitch Leecher in my free time for no money. Contribute to the project by posting complete, structured and helpful issues which I can reproduce quickly without asking for missing information.
When creating a new issue please make sure you follow the below checklist:

Take a look at the latest closed issues. Maybe yours has already been solved.
If you have a problem with a download, provide the download log created by Twitch Leecher
Provide the version of Twitch Leecher you are using
Provide information about the video (Url, Channel, ID)
Provide information about your operating system (e.g. Windows 10 64 Bit)
Try to describe the problem as detailed as possible, I cannot read your mind
Windows Insider Builds are NOT supported!

About Audio/Video Desync Issues:
Make sure to check for desync issues with VLC Media Player. A lot of video tools have immense trouble playing back downloaded Twitch streams correctly. Especially the following products introduce A/V desync:

Windows Media Player
Adobe Premiere (no joke, Adobe just does not care)

So if you are about to post a desync issue and you are using one of the above programs, please check the video in VLC first!

I'm sorry, I didn't mean to ignore anything
Take a look at the latest closed issues. Maybe yours has already been solved.
When my Kids asleep i will go trough the 578 closed issues
If you have a problem with a download, provide the download log created by Twitch Leecher
Not part of the problem
Provide the version of Twitch Leecher you are using
1.8.4 probably it was visible in the GIF
Provide information about the video (Url, Channel, ID)
Not part of the problem
Provide information about your operating system (e.g. Windows 10 64 Bit)
Windows 10 Pro 64 Bit
Try to describe the problem as detailed as possible, I cannot read your mind
Apparently the UI glitches complete out when move the mouse over it, it makes it very hard but not impossiblem to use TwitchLeecher.
https://i.imgur.com/xlphVGm.gif
Windows Insider Builds are NOT supported!
Not using it
Sincerely
Missiah

This is obviously a render error. Even the text and icon after the start are completely cut off. It would be interesting to know what kind of graphics card, driver version, resolution, display refresh rate and so on you are using. Perhaps Freesync/G-Sync?
The thing is, I am using plain WPF and I do not do anything special regarding rendering or something, so I suppose it must be some issue on your machine with that exact setup since I cannot reproduce any of this on my 4 different pc's.
Did you update anything and it stopped working or has TL never ever worked on your pc?

Here is your desired information
Graphics Card

NVIDIA GeForce GTX 1080

Driver Version

471.68

Resolution

Full HD 1080p

Display Refresh Rate

60Hz

Freesync/G-Sync

None

I do not use Twitch Leecher on a regular bases but I am pretty sure some versions ago the problem did not exist for me.
A few months ago I upgraded my system (new CPU / RAM / motherboard and freshly installed Windows 10).
I didn't notice this problem anywhere else, programs and games run without issues. Only Twitch Leecher has this strange behavior, even during installation and uninstallation (see here https://i.imgur.com/2ntZBI6.gif).

The fact that even the installer has the problem is an indicator that your system has a problem with .NET applications in general. The Installer of TL has nothing to do with the actual program but also uses a WPF GUI. That's why other installers work because the use a native GUI.

Thanks for letting me know.


Fix Issue 22998 - Update to zlib 1.2.12

Hello --
I've updated the copy of zlib in Phobos.
Here's a reprinting of the big-ticket items from the zlib.net homepage:
Version 1.2.12 has these key improvements over 1.2.11:

Fix a deflate bug when using the Z_FIXED strategy that can result in out-of-bound accesses.
Fix a deflate bug when the window is full in deflate_stored().
Speed up CRC-32 computations by a factor of 1.5 to 3.
Use the hardware CRC-32 instruction on ARMv8 processors.
Speed up crc32_combine() with powers of x tables.
Add crc32_combine_gen() and crc32_combine_op() for fast combines.
Due to the bug fixes, any installations of 1.2.11 should be replaced with 1.2.12.

Also maintains the fix from here:
https://github.com/ibara/phobos/commit/1b6cf80232f19e581f72869a4b339580416dd72d
Everything appears OK on my OpenBSD/amd64 machine. But perhaps more testing from others is in order.

(Force-pushed to quell a buildkit/phobos error complaining about the style of a comment...)
And also to maybe to get the bot to recognize this PR.

Please add "Fix Issue 22998" to the commit title so the bot links it to the bugzilla issue.

Hi. I was just looking at the zlib 1.2.11 to 1.2.12 this very moment and saw your post from these days. Great! This was due to wanting to update zstd to current. I believe that finally there has come a natural replacement of the venerable zlib/[gzip]. Anyway, thanks for this, and wondering @ibara , if this is something you might join in or have plans about etc? I will test the 1.2.12, I suppose I need to grab the git version?
On a side note, why is the sources of zlib-1.2.11 in etc/c/zlib? I noticed it was mainly the !_DMD macro thing which was the only difference. Does dmd compile with those sources implicitly or something? (I ask because I am uncertain if I locally should drop zstd lib sources potentially in there or so).

Since you pinged me, when you say updating zstd, do you mean the dub package here: https://code.dlang.org/packages/zstd ? If so, it's not my package so I can't tell you when it will be updated.
If you're talking about replacing zlib with zstd in Phobos, then I imagine that would be a bigger change in need of serious discussion (and numbers) to demonstrate that it is a net gain. I am not part of the DLF, just a user and I guess de facto OpenBSD OS maintainer for D, so I doubt a proposal from me would carry much weight without lots of hard numbers. I don't have the time to do that right now.

I'm hearing whispers that 1.2.13 is already upcoming due to a CRC regression that's been fixed in the devel branch.  If it isn't happening before the next release, perhaps we should cherry-pick?

@ibara I've just remembered that a changelog entry would be ideal so it gets picked up in the notes for the next release.

I'm hearing whispers that 1.2.13 is already upcoming due to a CRC regression that's been fixed in the devel branch. If it isn't happening before the next release, perhaps we should cherry-pick?

Or I can just update again. It's not too difficult or time-consuming.

Looking at how that bug is worded, cherrypicking might not be uber important (I don't dare say), but had it been literally erronous crc's in current, then yes. Regarding zstd @ibara , yes I mean tthe dub package. I have updated the interface file (using dstep and cleaning up a few bits and bobs there), but I haven't touched the d files the original author had layered on top. It works as before it seems. With that said, in the examples, I get a true vs. false result in 'streaming.d' when doing binary files vs text files. So I assume it's got to do with some string encoding or something although I am not quite getting it why it happens. I'm not tremendous at all with D so. With that said, should someone wish to update it, I can link the dstep file, although it did a fairly good job. Failed to convert two 0ULL to ulong and fixing the version string pretty much as before/zlib.d does.


Text "null" in the TimeSpinner after rotation screen

If you select a time and afterwards you rotate your screen it shows the text "null" instead only the time.
See Screenshot:

You're right, funnily I noticed this issue Yesterday as well so it is already on my to do list ;). Has something to do with the secondary text not being saved appropriately, I'll find out where.

The problem I think is that the secondary text shouldn't be displayed. It is a picked time not from the smart time like afternoon.
So there exists no secondary text.

Oh don't worry I already had this fixed ;). (Working on the FLAG_NUMBERS thing right now, not quite sure if it is ready...)


API Down?

I'm trying to test the new fairing route using stage.spacexdata.com but it's not working. @jakewmeyer did you disable it or is it a temporary down?

Ok nevermind resolved. Eveything works, maybe it was a temporary down.

Still down:(

Apologies for the outages, had some issues with the server, should be fixed now

Thanks, checked some minutes ago and worked!


Err:0xffffffff

At last step, it says remote: unlock failed - err:0xffffff

Check your otg and data cable connection or try to change your host device


Install the agent

[Enter feedback here]
The name in the Azure AD connect, under "Install the agent" says "Manage Cloud Sync", for step 4.

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

ID: 2fe7786b-fe1c-4afd-d26e-059920ae04b6
Version Independent ID: 51b901e8-5075-673d-fa0d-82d90f02b645
Content: Install the Azure AD Connect cloud provisioning agent
Content Source: articles/active-directory/cloud-provisioning/how-to-install.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@srobin2
Thank you for pointing this out! I've created a PR to update the documentation and it's currently waiting for the author to review and sign off.

I will now close out this issue. Please allow some time for the author to review and the changes to reflect.
Thank you for your time and patience!


[mgmt] cosmosdb preview release

https://github.com/Azure/sdk-release-request/issues/5210

API change check
APIView has identified API level changes in this PR and created following API reviews.
@azure/arm-cosmosdb


Hide path?

Is there a way to hide the file path and only show the basename of the file?

The option filename_modifier can be used to customize the buffer names. To only show the filename without path use the option:
let g:lightline#bufferline#filename_modifier = ':t'

You can see the available options using :help filename-modifiers in vim.
By default this plugin uses the setting :. which makes the filename relative to the current directory if possible.
(Relates to #17)


Fix Non max suppression float16 kernel

cc @mingxingtan

I tested it for efficientdet and it worked, but looks like this PR changes existing API for v3 and v4, it might be difficult to check in this PR (due to the backward compatibility).

I tested it for efficientdet and it worked, but looks like this PR changes existing API for v3 and v4, it might be difficult to check in this PR (due to the backward compatibility).

Yes, T_threshold leads to a bug when I test the test case that I added. I want to know is there a better way to keep iou_threshold and boxes the same type.

I tested it for efficientdet and it worked, but looks like this PR changes existing API for v3 and v4, it might be difficult to check in this PR (due to the backward compatibility).

I revert v2,v3 and v4 apis, since they break backward compatibility. Maybe they should be discussed in another PR.

Thanks @fsx950223
The code looks good to me. Running some internal tests now. Will try to get it in asap.


Why a class BaselineOutput ?

There is no method associated with this class so I think we should directly return an object.
Classes can yield to some problems (when using immer for example) and for those 'core' calculation packages it is better to avoid them.

i wanted to be more consistent and make jsdoc easier but i can revert this.

For jsdoc it make sense indeed. But in order to keep this feature in jsdoc you can use typedef like in
https://github.com/mljs/spectra-processing/blob/master/src/index.js#L1-L16


Add availability data to feature overview and a filter for it

For each browser, there should be a way to display the availability date on the overview page to filter based on availability date in one browser, eg. I'd like to see features that have shipped in Chrome in the last 3 month (regardless of whether they have been shipped in other browsers)

I'm thinking of modifying the syntax to allow for browser specific queries browser:filter:value. So for this, it would look like: chrome:available_on:2023-01-01..2023-12-31
This structure would be helpful for wpt too. chrome:wpt:stable:<99
Let me know if you have thoughts

Yes, that would be great!


Not Working when configured with multi level HOME

Which HotChilli.Umbraco.PageNotFound version are you using?
2.2.1
Which Umbraco version are you using? For example: 10.4.0 - don't just write v10
v13.4.1
Bug summary
Not Working when configured with multi level HOME,
Here For Home configured 404 Home 1 as 404 page and for Home 2 configured 404 Home 2 as 404, but for all 404 its shows up "404 Home 1" only as 404 page. Not picking the second Home 2 configurations.

Is my Expectation is wrong ? does this not work as what I have described above ?
Steps to reproduce

Installed fresh Umbraco v13.4.1
Configured Umbraco SQL lite Db
Created Home and Page not found doc types with templates
Created Content
Installed HotChilli.Umbraco.PageNotFound from Nuget
Configured, 404 Page Manger

Expected result / actual result
Different 404 to be displayed for each 404 config manager.

Hi @gurumurthyjv sorry for the delay in coming back to you, I've been able to replicate this issue and I think I know why it's happening and have a fix for it.
Once I've merged it in I'll release an updated version for you :-) Thanks for reporting it :-)


#135 - Added removeAttribute method

Added ability to remove attributes
Closes #135

Thanks for this PR @johnathanmdell, the changes LGTM! :+1:
Issue #135 and this PR description only mentions removing attributes, but the changeset also includes a hasAttribute() method.
I'm :+1: on getting the removeAttribute() method in, but I'm undecided about the current state of the hasAttribute(). In particular, how should we take null values into account? See also #103 for some background.
We can look into working this out now, but I'm also okay with postponing this for a future PR.
What's your take on this?

The hasAttribute was purely habit, good point on the on the null value, I'm happy with removing it for the current PR.

@clue PR updated

Thanks @johnathanmdell, merged via #138!


How to add fields to a mock module

I use react-native preset, I want to add some fields to the NativeModules mock module. I don't know how to modify it.

Please note this issue tracker is not a help forum. You also didn't fill our carefully crafted issue template :(. We recommend using StackOverflow or our discord channel for questions. You'll find more on Jest docs help page. Thank you :)
Also, don't be afraid to look in the source: https://github.com/facebook/react-native/blob/3360999431b4ed931068ac2f96c8234cdd1f6662/Libraries/WebSocket/tests/WebSocket-test.js


Add IEnumerable<double> Samples to ISampleMonitor

The field IEnumerable<double> Samples is already present on
SampleMonitor, but it's missing from ISampleMonitor, which requires
a (potentially dangerous) cast.
To make the cast unnecessary, add it to the interface.

Thanks!


Fixed #23931 -- Incremented creation_counter for managers created via db_manager()

This ensures managers created in this way are not inadvertently set as
the default manager.
Trac ticket here: https://code.djangoproject.com/ticket/23931

Closing, pending further investigation on the questions posed there.


[RN][iOS] Do not add LongLivedObject wrapper in OSS

Summary
This change excludes the LongLivedObject.h file from the pod in the ReactCommon library.
The file creates a problem when the use_frameworks! option is used in an app because there can't be two files with the same name, despite being in different paths,
within the same framework. Specifically, this LongLivedObject is just a redirect to the other one, so it should be safe to exclude this.
Changelog
[iOS][Fixed] - Exclude redirector to LongLivedObject.h from ReactCommon podspec
Test Plan

Manually tested in an app from RC2

Closing this as I'm working on a Stack internally to fix use_frameworks!


Copyedit_loyalty_rewards

For all the dog lovers out there who want to get really technical, "Caniche" seems to be the preferred term for "French Poodles," so I suggested updating the text to refer to "Poodles" for simplicity (I didn't make any changes to the code though, but it'd be great to make that consistent). I also recommended some changes in the event that some of the examples might be perceived differently than intended, just to be safe.

For all the dog lovers out there who want to get really technical, "Caniche" seems to be the preferred term for "French Poodles," so I suggested updating the text to refer to "Poodles" for simplicity (I didn't make any changes to the code though, but it'd be great to make that consistent). I also recommended some changes in the event that some of the examples might be perceived differently than intended, just to be safe.

TIL! ;)
@krisajenkins this one's for you to chew on.

This subdirectory is moving today, so have to merge as-is


README: fix typo

The project is named "Eclipse Temurin": https://projects.eclipse.org/projects/adoptium.temurin

Thanks!


MVP Server-Based PvP

Right now it is possible for people to share their screens and play PvP.  The next milestone is to play PvP with a server handling the communication.
(MVP) User Requirements:

User A clicks a public link to start a game.
User A is prompted to enter a "display name" if their client is not associated with an account.
Upon submitting a "display name", an account is created and associated with the client.
User A is then provided with a URL that has been tagged with the created game.
User B clicks the URL after User A shares it via email, text, or IM.
User B is prompted to enter a "display name" if their client is not associated with an account.
Upon submitting a "display name", an account is created and associated with the client.
The new game begins and is persisted indefinitely if the players go offline in case they come back.

(FULL) User Requirements:

When launching the app, the client will check to see if it already possesses a token.
If no token was found, then the user is prompted to provide a display name or login with email and password.
If the user provided a display name, then a new account is created without an email or password.
Regardless of new or existing account, a token is required to proceed.
If the app was launched via a Game URL, then the user is presented with the game board.
If the app was not launched via a Game URL, then the user is presented with a lobby where they can chat or see a list of people available to play.
For accounts that don't have an email and password, a button will allow a user to register their account so that it may be accessed on other devices.

(FULL) Authentication/Authorization requirements:

Valid expired tokens must never require the user to log in to obtain new tokens.  This is necessary for users that do not have log in credentials, but remains a convenience for users that do.
For better performance, non-expired tokens must not be checked for validity.
More than one client may be logged into the same account at the same time.
A given client may only be logged into one account at any given time.
Token must be protected against unauthorized use by:

Assigning each client unique tokens.
Refreshing expired tokens such that old tokens are revoked and cannot be used again.
*** Automatically revoking the client's token if an attempt is made to use an old token.

This requirement no longer seems advisable after realizing that race conditions between multiple browser tabs can result in the accidental use of an old token.  I do not want such to cause a user to lose their account if they had not verified it with an email address or other authentication provider.

Allowing a user to revoke tokens for one or all clients.
Keeping track of each client ID / token pair on the server.  (No need to track revoked tokens)

Some comments about implementation, but they are negotiable.

When using AWS Cognito, explore not providing a username and using whatever username it uses by default.  If a username is required, provide a UUID.  Regardless, the "sub" value (User ID generated by AWS Cognito) will not be communicated to clients.
A JWT can be used to meet all the authentication/authorization requirements.  But, after the JWT expires, it must be exchanged for a new one - assuming the expired token is still valid.  I think it is best for the client to exchange tokens every time it is launched.  It should also have the ability to unpack the JWT to learn when it expires so that it can proactively exchange tokens again before it expires in the event that the client remains open for longer than the expiration time.  Unpacking a JWT should be possible.  I believe they are not usually encrypted, but rather "signed" so that they can be read, but not modified (e.g. to increase the expiration value) without a secret key.  Every time the JWT is submitted to the server, it checks the signature, but not token validity.
The secret key used to sign JWT tokens must be accessible to both the authentication service and any other service that accepts JWT tokens.  It may be a single secret key used for all accounts.
Since a JWT can be unpacked, it must only contain "claims" that a client may read.  But it should also contain sufficient details for server-side validation.  The claims should only include data that is relevant for authentication and authorization as opposed to user profile or session data.  Some JWT claims are part of the JWT specification and are marked with "(spec)".

exp: (spec) The timestamp when the JWT will expire.  Very important.
iat: (spec) The timestamp when the JWT was issued.  This can be used by the client to adjust for an inaccurate time on the local system.
sub: (spec) The account ID.  This may be the username generated by AWS Cognito (or UUID if generation is not possible or preferable)
client_id: The unique ID assigned to the client.  If a client tries to exchange a revoked (or never-issued) JWT, then we need this value to revoke the current token for the client that was compromised.

Revoking a client's token may not immediately revoke access to the account.  If a token has not expired, it is not checked for validity and may be used.  I recommend that the token is only checked for validity before it is exchanged for a new one.  Since the client may exchange tokens (expired or not) every time it is launched, validity checking would occur with every launch of the client.  Even so, the expiration value should be no longer than an hour and may be less.
A client submits the JWT token using an "Authorization" header.  This applies to all HTTP endpoints including both the authentication and game services.

Two people are assigned to this very large issue.  I expect Enijar will be responsible for server-side logic while I will be responsible for client-side logic.

What is the progress on this? I was thinking to create a server with nestjs.com

I never heard of NestJS, but it seems to be a very capable framework.  I started out using the socket.io library and decided I didn't like it, so I've created a roll-my-own framework built on WebSocket.  All RPC and event communication is done over WebSocket.  This repository already has sufficient code to play server-based games.  But I'm still adding a few more minor features and fixing bugs before deploying a beta server at the end of the month.
In the meantime, I'd appreciate any effort on your part to find and fix or report bugs.

I am interested in setting up a server to help support the game.
I have experiencing running linux servers and databases.
I am trying to build the game on windows but getting some errors. Will report back once I can get it compiling.

@seand88
Minimum NodeJS v10.
I'll update the README to make this clear.

I've launched a beta server at this URL.
https://tactics-beta.taorankings.com
I'm closing out this ticket since the fundamentals are in place.  I'm just putting it through beta testing to iron out bugs and add a few more essential features before lifting the beta status.


MetainfoScalarValue: fix UnicodeEncodeError

https://genestack.atlassian.net/browse/GS-11721

This change has missed 0.29.0.


Automatically generate a round's clade list, save it, and submit a PR

Background
When #25 is complete, this hub will have a function that generates a list of clades to be forecast for each modeling round.
The next step is to provided an automated way to schedule a run of this function prior to each round, and write the resulting .json file of clades to variant-nowcast-hub/auxiliary-data/modeled-clades/YYYY-MM-DD.json, where YYYY-MM-DD is the reference date of the upcoming round.
(note: we decided to save each reference date's clades in a separate file, rather than appending to a single, large file).
Definition of done

[ ] schedule the invocation of the update_clades_list function
[ ] write the output to the directory above
[ ] submit the update as PR to this repo, so it can be reviewed and merged by hub admins

since we now have a separate file for each week, with the reference date in the file name, do we need this to be json?  or could it literally just be a text file with e.g. comma-separated names of clades?

since we now have a separate file for each week, with the reference date in the file name, do we need this to be json? or could it literally just be a text file with e.g. comma-separated names of clades?

It can be whatever we want it to be!

i really struggle with pointless decisions like this, but i guess maybe making it json makes it easy to parse with standard tools


Manifests part 2(?)

Something weird happened with GitHub and my fork. My review comments didn't make it into the branch that just got merged. They should all be here in any case.

no worries

Thanks @charles-coward and @antgonza

On Sep 3, 2021, at 11:29 AM, Charles Cowart @.***> wrote:
no worries
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Current MobiVM Gradle plugin is not compatible with the Gradle 7.3.3

Hi, I didn't really investigate on the cause, but I've just used the latest <IP_ADDRESS> release  to generate a new project and it seems that MobiVM iOS backed is not fully compatible with the latest Gradle (with the major release 7 in general?).
Here's what I get from trying to assemble an IPA from the freshly generated project.
./gradlew createIPA
> Task :ios:createIPA FAILED

FAILURE: Build failed with an exception.

* What went wrong:
A problem was found with the configuration of task ':ios:createIPA' (type 'ArchiveTask').
  - In plugin 'robovm' type 'org.robovm.gradle.tasks.ArchiveTask' property 'roboVMLogger' is missing an input or output annotation.

    Reason: A property without annotation isn't considered during up-to-date checking.

    Possible solutions:
      1. Add an input or output annotation.
      2. Mark it as @Internal.

    Please refer to https://docs.gradle.org/7.3.3/userguide/validation_problems.html#missing_annotation for more details about this problem.

This has been reported before; I remember seeing notifications about it on RoboVM's GitHub repos. I'm marginally surprised that it hasn't been fixed, though I probably shouldn't be. There's an open (draft) PR that should add support: https://github.com/MobiVM/robovm/pull/605

I updated the RoboVM plugin to 2.3.15 in the latest release (<IP_ADDRESS>). If you can try it, it would be really helpful, because I don't have a Mac or iOS device. I did make a project with RoboVM 2.3.15 on Windows and it at least doesn't interfere with other modules.

RoboVM has updated at least once since the last comment here, and I think it's working now based on other reports. I think I can close this.


uCars event bug?

uCars event bug?
Im running uCars with 1.12.2 and skript is bensku's fork.
I made an event when the car crashed, but it did not react.
on vehicle enter: broadcast "test"
It is a request, I want a similar event even when the car broke.
On Vehicle Destroy did not move.

There is no error when reading.


Update table.html

Incorrect ID on Responsive section div, fixing for proper scrollspy operation.

Thanks!


Necropolis and mine walls

About the PR

For https://github.com/space-wizards/space-station-14/issues/14226
Just walls for some lavaland structures.
Why / Balance

lavaland wall assets.
Technical details

Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl: NULL882

add: Added Necropolis Wall.
add: Added Mine Wall.
add: Added Sings for Mine Wall.

wait, how's there a watcher there?

we have watchers

must be new


Running chef-client -z (local mode) from / breaks system configuration (e.g. sudo)

I've noticed that running chef-client in local mode via "-z" from the / root directory has side effects which break things across the system, i.e. the ability to sudo.  I'm provisioning machines via AWS user-data.sh, which happens to run as root in /.
Here is the command being run via user-data in /:
sh -c "cd /etc/chef && chef-client -z --recipe-url /etc/chef/cookbooks.tgz -j /etc/chef/first-boot.json"
In the sudo example, I can't tell what's being changed on the system which affects sudo specifically, but I get this error:
ubuntu@ip-10-150-146-12:~$ sudo ls
sudo: unable to stat /etc/sudoers: No such file or directory
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
ubuntu@ip-10-150-146-12:~$

Running from any other directory avoids this side effect, and my system remains intact.  For example:
sh -c "cd /etc/chef && chef-client -z --recipe-url /etc/chef/cookbooks.tgz -j /etc/chef/first-boot.json"
Hopefully this is sufficient to help track this down :)  Super obscure error, but glad I have a workaround.

somehow your /etc/sudoers file got deleted, but chef-client -z doesn't touch that on its own accord.
most likely its something in your recipe code in the chef-client run which is doing it.

@lamont-granquist oddly enough, /etc/sudoers is untouched, and /etc/sudoers.d/ is also untouched.
This happens immediately upon running chef-client -z, before any of the cookbooks have actually run.
I will try to put together a reproduceable scenario, which should involve spinning up a new box, installing chef-client, cd /, and running chef-client -z.  @zts confirmed this is a bug in IRC when discussing yesterday.

So ohai might have a bug.  It shouldn't mutate any system state, but sometimes strange code in plugins sneaks through code review.  The only other possibility I can think of would be something truly bizzare in the way local mode sets up its own cache directory.

I'm also using recipe-url to fetch cookbooks, which get extracted into the cwd, could something else be modifying permissions or mangling anything in subdirectories beyond ./cookbooks, i.e. modifying "." or "./etc"?

Hmmm, there was that awful FileUtils.rm_rf, but I think I ripped that out of the chef-client code you'd be running under zero and that it was only under chef-solo.  That is some funky code though.

(i fixed your first example where i assume you meant to 'cd /' instead of 'cd /etc/chef')

@adammeghji how are you getting on with putting together a reproduction?

@lamont-granquist thanks :)
@thommay I've been engulfed in some other stuff, so haven't had time to reproduce this in a sandbox.

@thommay in attempting to create a reproduceable scenario, I was able to get some additional info re: what's happening here.  Looks like my cookbooks.tgz file actually has . in it, and --recipe-url is extracting into cwd, and thus overwriting .:
ubuntu@kungfu:/tmp/t$ tar -tvf cookbooks.tgz
drwx------ 1000/1000         0 2015-11-24 17:37 .
drwxrwxr-x 1000/1000         0 2015-11-24 17:37 cookbooks

Thus, /. is being overwritten with drwx------ instead of drwxr-xr-x, and everything goes to hell after that.
I'm generating the cookbooks.tgz via Berkshelf's berks package.  I'll take it up with those folks.
Thanks for all the help everyone!  Sorry for the false alarm.

yeah that makes sense, and we extract the tarball in . because we expect to have ./cookbooks and such which only makes sense, so if . is in the tarball and you're in / and it fiddles with the perms then you're gonna have a bad day...
does not seem like there's any useful way to change the chef/chef codebase to make this any better...


fix: allow for the delay plugin to be installable on Kong Gateway

In order to properly use the CI/CD in this repository using the established GitHub actions workflow you will need to ensure you have credentials properly setup or update the actions to use a secret that puts the license in the right spot. You also don't need the license for this custom plugin since it is not using any enterprise features so I would recommend cleaning up the workflow.


Cargo.lock not included and not ignored

When working on #2 I noticed the Cargo.lock file gets created and is not included in the commits. Is that on purpose? If yes you could add it to the .gitignore so it doesn't accidentally get included. If no it needs to be added still.

Good catch, I missed that.
I actually meant to ignore the Cargo.lock file since this package is meant to be used as a library. I'll add it to .gitignore.

If you want to ignore it's fine, but just an FYI cargo install installs without the lock while cargo install --locked uses it. https://doc.rust-lang.org/cargo/commands/cargo-install.html#dealing-with-the-lockfile
So the lock file would just make sure you are testing with the same versions.

I didn't know that. Thanks!
I might be missing something obvious, but what is the point with testing the build with a set of dependencies (determined by Cargo.lock) that might be different from the dependencies that will be used for the actual build?
What about maturin? I saw that maturin build and maturin publish also provide --locked (which, I guess, is just passed to cargo), so the default behaviour is to ignore Carlo.lock?

For testing it just ensures the same versions are used for consistence. There probably isn't a big chance, but if a tests fails and then it is run again after a dependency updates you no longer know if you are fixing the original issue, or if it is something new from the dependency update.
For maturin using locked for the publish ensures what was tested is what gets released. You are correct that you don't want to pin the Python dependencies for a lib, but the Rust dependencies should be fine to pin because people will be installing a pre-compiled wheel when they install the package and any rust dependencies are specific to that python package. Even if someone was building the wheel themselves, the Rust dependencies and resulting compiled binary would be specific to that Python package. The rust dependencies are not used across multiple packages like the python dependencies.


[BUG] Serialization issue with RequestCacheStats, negative longs unsupported, use writeLong or writeZLong [-7386]

Describe the bug
Hello, after cluster update from 2.11.1 to 2.13.0, I have these messages in opensearch.log.
[2024-04-23T03:18:03,647][WARN ][o.o.t.OutboundHandler    ] [node-hot-06] send message failed [channel: Netty4TcpChannel{localAddress=/A.B.C.40:9300, remoteAddress=/A.B.C.69:60146}] java.lang.IllegalStateException: Negative longs unsupported, use writeLong or writeZLong for negative numbers [-7386]         at org.opensearch.core.common.io.stream.StreamOutput.writeVLong(StreamOutput.java:310) ~[opensearch-core-2.13.0.jar:2.13.0]         at org.opensearch.index.cache.request.RequestCacheStats.writeTo(RequestCacheStats.java:103) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.core.common.io.stream.StreamOutput.writeOptionalWriteable(StreamOutput.java:974) ~[opensearch-core-2.13.0.jar:2.13.0]         at org.opensearch.action.admin.indices.stats.CommonStats.writeTo(CommonStats.java:285) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.action.admin.indices.stats.ShardStats.writeTo(ShardStats.java:146) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.core.common.io.stream.StreamOutput.writeOptionalWriteable(StreamOutput.java:974) ~[opensearch-core-2.13.0.jar:2.13.0]         at org.opensearch.action.support.broadcast.node.TransportBroadcastByNodeAction$NodeResponse.writeTo(TransportBroadcastByNodeAction.java:651) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundMessage.writeMessage(OutboundMessage.java:104) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundMessage.serialize(OutboundMessage.java:81) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler$MessageSerializer.get(OutboundHandler.java:235) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler$MessageSerializer.get(OutboundHandler.java:221) ~[opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler$SendContext.get(OutboundHandler.java:275) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler.internalSend(OutboundHandler.java:197) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler.sendMessage(OutboundHandler.java:192) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.OutboundHandler.sendResponse(OutboundHandler.java:159) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.TcpTransportChannel.sendResponse(TcpTransportChannel.java:96) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.TaskTransportChannel.sendResponse(TaskTransportChannel.java:72) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.action.support.broadcast.node.TransportBroadcastByNodeAction$BroadcastByNodeTransportRequestHandler.messageReceived(TransportBroadcastByNodeAction.java:482) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.action.support.broadcast.node.TransportBroadcastByNodeAction$BroadcastByNodeTransportRequestHandler.messageReceived(TransportBroadcastByNodeAction.java:456) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.security.ssl.transport.SecuritySSLRequestHandler.messageReceivedDecorate(SecuritySSLRequestHandler.java:206) [opensearch-security-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.security.transport.SecurityRequestHandler.messageReceivedDecorate(SecurityRequestHandler.java:317) [opensearch-security-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.security.ssl.transport.SecuritySSLRequestHandler.messageReceived(SecuritySSLRequestHandler.java:154) [opensearch-security-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.security.OpenSearchSecurityPlugin$6$1.messageReceived(OpenSearchSecurityPlugin.java:828) [opensearch-security-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.indexmanagement.rollup.interceptor.RollupInterceptor$interceptHandler$1.messageReceived(RollupInterceptor.kt:114) [opensearch-index-management-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.performanceanalyzer.transport.PerformanceAnalyzerTransportRequestHandler.messageReceived(PerformanceAnalyzerTransportRequestHandler.java:43) [opensearch-performance-analyzer-<IP_ADDRESS>.jar:<IP_ADDRESS>]         at org.opensearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:106) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.transport.InboundHandler$RequestHandler.doRun(InboundHandler.java:480) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:913) [opensearch-2.13.0.jar:2.13.0]         at org.opensearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:52) [opensearch-2.13.0.jar:2.13.0]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) [?:?]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) [?:?]         at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
So Is There Any idea, what is wrong?
Related component
Cluster Manager
To Reproduce

Call the api http://A.B.C.35/_cat/shards?v ,The response is:

The docs and store field on A.B.C.34 and A.B.C.40 is None , And I can find previous logs in 34 and 40.
after call http://A.B.C.34/_cat/shards?v ,The response is:

The docs and store field on A.B.C.35 and A.B.C.40 is None , And I can find previous logs in 35 and 40.
Call /_nodes/stats will get the following response:

Expected behavior
Both Not None
Additional Details
No response

The stack trace points to the memory size stat becoming negative in RequestCacheStats.
The error occurs when this negative value is communicated over transport; the result is that whichever node is handling the REST request will return the stats (with the negative value included) while other nodes will fail to return the value.  This is what is leading to the difference in data values on cache stats.
We need to further investigate what changed with the RequestCacheStats (particularly the total memory field) between 2.11.1 and 2.13.0.  From the change log I see several PRs associated with Tiered Caching and/or pluggable caches.  @msfroh and @sohami do you have any ideas here?
I previously fixed a similar bug in https://github.com/opensearch-project/OpenSearch/pull/6917 but that one was overflow; still, it may give some relevant hints about how that value is calculated.

@dbwiddis Let me try taking a look at this. We did change things around RequestCache with Tiered caching feature in 2.12/2.13.

@weily2 I need more info/help on this while I try to reproduce it on my end.
I had couple of hunches where things might be going wrong. Either there was some race condition on removal but theoretically it looks alright and I also verified by running concurrent test locally. And secondly either calculation of size when item is different compared to when it is removed somehow, but I wasn't able to reproduce it.
It seems you were trying to upgrade domain from 2.11 to 2.13 and saw these errors. Did you see these errors during domain upgrade or after the upgrade was complete? Also were you performing a rolling upgrade?
Can you give more precise steps on reproducing this so that I can try same on my end?

I am also seeing this error. The errors appear to occur until the affected node is restarted. After which the errors resume any where from 4 hours to 3 days later. The problem compounds as more nodes in a cluster begin presenting this error and more of the data becomes unavailable.
Given the call stack includes a reference to org.opensearch.indexmanagement.rollup.interceptor.RollupInterceptor I deleted all rollups. The errors resumed about 4.5 hours later. I then disabled rollups in persistent cluster settings.
Following rollup disable via cluster settings the errors ceased without node restarts. I will continue monitoring for the next few days to see if they occur again with rollups disabled.

Disabling rollups didn't stop the 'Negative longs unsupported' errors.

@lyradc Thanks for confirming.
But this shouldn't be just related to rollups. Stacktrace just points out to RollupInterceptor in handlers list(like others) which may not get executed.
Do you mind confirming few things around your layout?

Are you running a 2.13 cluster I assume?
Is it possible to see list of indices along with their layout/settings?
Do you perform any closing/deleting index operations manually/automatically?

@sgup432

Yes, running 2.13 clusters
I should be able to get you indices schema/settings tomorrow.
Not using index closing. Using ISM to handle index deletion for old indices.

Is there a api to clear RequestCache on node ?

@artemus717 There is an api for that. But it will not work in this scenario where it is going negative.
For now, you can turn off the request cache for indices via dynamic setting index.requests.cache.enable and then restart node.
We already have the fix which hopefully should get picked up in next release.

I have raised the PR for this fix.
It turns out that the issue occurs when an indexShard is deleted and then reallocated on the same node. So whenever stale entries from older shard are deleted, those are accounted for the new shard which has the same shardId.
I was able to reproduce it via IT by recreating the above scenario.

Note:
Please don't close this issue even after PR is merged. I would like to wait and confirm the fix to ensure we are not missing anything.

@weily2 I need more info/help on this while I try to reproduce it on my end. I had couple of hunches where things might be going wrong. Either there was some race condition on removal but theoretically it looks alright and I also verified by running concurrent test locally. And secondly either calculation of size when item is cached is different compared to when it is removed somehow but that doesn't seem the case for now.
It seems you were trying to upgrade domain from 2.11 to 2.13 and saw these errors. Did you see these errors during domain upgrade or after the upgrade was complete? Also were you performing a rolling upgrade? Can you give more precise steps on reproducing this so that I can try same on my end?

@sgup432 sorry for the late reply. I do perform a rolling upgrade and saw these errors after the upgrade was complete.

@weily2 @lyradc @artemus717 The fix for this would be available in 2.14 version release.


RHOAIENG-14518: feat(codeserver): disable the VSCode workspace trust mechanism and the trust prompt

https://issues.redhat.com/browse/RHOAIENG-14518
Description
Trust the authors popup appears the first time user opens code-server (VSCode) workbench. It is super scary and confuses users. What is this folder /opt/app-root/src? Is a security risk for my company if I authorize this?
We are taking the decision to spare our users such considerations by removing the VSCode workspace trust completely. Therefore the workspace will be automatically trusted and user will not be prompted about no trust whatsoever.
Alternatively, same thing could've been implemented by running code-server --disable-workspace-trust instead of modifying settings.
I looked into the Workspace Trust Editor, https://github.com/microsoft/vscode/blob/56b535f40900080fac8202c77914c5ce49fa4aae/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.ts, trying to find where it stores trusted paths, since then maybe we could preconfigure /opt/app-root/src to be already trusted, but I did not find this.
How Has This Been Tested?

3.9 image: quay.io/opendatahub/workbench-images:codeserver-ubi9-python-3.9-pr-754
3.11 image: quay.io/opendatahub/workbench-images:codeserver-ubi9-python-3.11-pr-754

I've loaded images into rhoai 2.13, checked that I don't see scary modal anymore at startup, and checked settings to see that they look like what I expected.

Merge criteria:

[x] The commits are squashed in a cohesive manner and have meaningful messages.
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has manually tested the changes and verified that the changes work

error: build error: Failed to push image: trying to reuse blob sha256:40049f9dc50417693bf704b63a02d64347b23867b33ac7776be3fae4a2d178b0 at destination: unable to retrieve auth token: invalid username/password: authentication required

ocp-ci pr build broken again

Tested locally podman run -it -p 8787:8787 quay.io/opendatahub/workbench-images:codeserver-ubi9-python-3.11-pr-754
No pop-up anymore! Less clicks around
/lgtm

I also did run with podman, like @atheo89 did and no more popups, looks great!
$ podman run -it --rm -p 8787:8787 quay.io/opendatahub/workbench-images:codeserver-ubi9-python-3.11-pr-754

/lgtm

/approve
thanks for the review!

/override ci/prow/images
timeouts on rocm images, known ci issue

too late, but yeah
/lgtm

cI failed on Build image rocm-ubi9-python-3.11 from the repository, let's override


Consider allowing to provide context menu commands in code

re #27467
I like how I can have the primary command for a TreeItem, esp. with arguments and I think we should discuss again if we should have that also for context menu actions

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Adding this in front of server calls

Thank you, and sorry for the confusion! This changed with the new-style application tests.
I'm in the process of updating Mirage's docs on an AddonDocs site and will have more sections dedicated to docs about testing.


add {{url}}/api/v1/apps/{{appId}}/users user assignment to AppInstanc…

…eClient

Thank you for your PR and sorry it took so long to get back to it. We have recently released a 1.x version of this SDK which completely updates the structure and build process for our SDK.
I believe our changes no longer require this PR to be included so we are going to close it. If you feel the new version does not resolve the issues you were seeing, prompting this PR, please let us know and we will be happy to re-investigate.


"UIActionSheet+Common.h" file not found

"UIActionSheet+Common.h" file not found

导入UIAlertController+Common.h


[ContractKit] ChainId error in paramsPopulator.populate method

Hi! Since a couple of days I'm seeing an error in kit.connection.paramsPopulator.populate(tx) method in ContractKit.
Context
I'm using that method to fill in chainId, nonce, gas and gasPrice of a transaction, which then I'm signing and broadcasting
Expected Behavior
Here's an example that used to work around a week ago:
import { newKit } from "@celo/contractkit";

(async () => {
  const txParams = {
    from: '0x1b4399a7c97ae092fb4ccdc1598b2767ecb79652',
    value: '10000',
    to: '0xf35ed7156babf2541e032b3bb8625210316e2832',
  }

  const kit = newKit('http://localhost:9393');
  console.log(await kit.connection.paramsPopulator.populate(txParams))
})()

Expected result:
{
  from: '0x1b4399a7c97ae092fb4ccdc1598b2767ecb79652',
  value: '10000',
  to: '0xf35ed7156babf2541e032b3bb8625210316e2832',
  chainId: 42220,
  nonce: 19064,
  gas: 21055,
  gasPrice: '0x1dcd6500'
}

Current Behavior
Currently I'm getting:
(node:62177) UnhandledPromiseRejectionWarning: Gas estimation failed: Could not decode transaction failure reason or Error: invalid argument 0: json: cannot unmarshal non-string into Go struct field TransactionArgs.chainId of type *hexutil.Big
My findings
So I've been debugging this and I think that the issue is the following:

populate method fetches a chainId if it's empty https://github.com/celo-org/celo-monorepo/blob/4b08278d0d2a951b3de1950f26715e256ecafbc4/packages/sdk/connect/src/utils/tx-params-normalizer.ts#L24
this chainId is an integer, as defined in web3-core types https://github.com/ChainSafe/web3.js/blob/5df6818ee4a0a30fb64dd3e94d97964826489b7f/packages/web3-core/types/index.d.ts#L153
chainId is set and sent to connection.estimateGas method https://github.com/celo-org/celo-monorepo/blob/4b08278d0d2a951b3de1950f26715e256ecafbc4/packages/sdk/connect/src/utils/tx-params-normalizer.ts#L32
Celo node expects chainId in a hexutil.Big format and throws an error

Here's an example that does work but isn't compliant with type definitions (chainId should be a number, not a string):
import { newKit } from "@celo/contractkit";

(async () => {
  const txParams = {
    from: '0x1b4399a7c97ae092fb4ccdc1598b2767ecb79652',
    value: '10000',
    to: '0xf35ed7156babf2541e032b3bb8625210316e2832',
    chainId: '0x42220'
  }

  const kit = newKit('http://localhost:9393');
  console.log(await kit.connection.paramsPopulator.populate(txParams))
})()

I dug a bit around latest release of celo-blockchain, but the only relevant thing I found is this comment https://github.com/celo-org/celo-blockchain/pull/1791#issuecomment-1011209303
Celo archive node I'm using is running {"jsonrpc":"2.0","id":1,"result":"celo/v1.5.0-stable-0f7d2e5c/linux-amd64/go1.17.3"}

@pawelnguyen
A little explanation:
The chainId was not a field that the node was taking in count. So basically it was not using that field. The Contract Kit, uses the chainId field for adding it to the v of the signature to avoid a reply attack (https://eips.ethereum.org/EIPS/eip-155). Signs the tx, and then removes that chainId field. And that signature with the tx without the chainId is sent to the node.
With the typed transaction envelope (https://eips.ethereum.org/EIPS/eip-2718) new types of txs are added (eip1559, eip2930), which make the chainId field as a valid one, so now the node, checks that field as a valid one. And, basically, expects an hexa "0x1234".
The error is that the CK for the populate, is using a number, instead of a string. It's not a current problem for all the other cycles because all the wallets from the CK basically remove that chainId, but it is a problem for those who use the populate method and don't remove that field.
TL;DR; the CK should change that chainId from a number to a string that represents an hexa
(adding @dckesler)

Thanks a lot for taking a look and for the explanation @gastonponti, it makes sense.
Just in case someone stumbles upon this, I worked around it by fetching chainId, nonce, gas and GasPrice manually:
  return {
    ...txParams,
    chainId: await kit.connection.chainId(),
    nonce: await kit.connection.nonce(account.freshAddress),
    gas: await kit.connection.estimateGasWithInflationFactor(txParams),
    gasPrice: await kit.connection.gasPrice(),
  }


meta-llama

huggingface website does not have the meta/Llama-2-13b-chat-hf, where can I get it?

Here you go:
https://huggingface.co/meta-llama/Llama-2-13b-chat-hf


adding Ahram Candian Unversity(ACU) acu.edu.eg

Request to Add Ahram Canadian University to JetBrains Educational Program
I would like to propose adding Ahram Canadian University to the list of recognized institutions for the JetBrains Education Pack. I have previously utilized this pack with my university email, which has greatly supported my studies and projects. However, this year I attempted to access the pack again but was unable to do so.
Including Ahram Canadian University would enable me and other students to continue benefiting from JetBrains' valuable tools.
Thank you for considering this request!

@MostafaOsmanFathi I am sorry, the domain acu.edu.eg is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).

Thank you for the clarification. I understand the situation.
I would like to ask if there is anything I can do in the future to help change this status. I am willing to communicate with my university to address the issues that led to the removal, but I am unsure about the steps to take. I would greatly appreciate any guidance on what actions can be taken to have acu.edu.eg reconsidered as a trusted domain, or if there is a possibility for this to change in the future.
Thank you again for your time and assistance!


UwU

Uwufied Fenwiw skiwws and a-a-abiwities.

Please don't merge directly into the main branch, but into dev branch instead... but also: no... you could create a duplicate entry for now, which will be deleted once the site is more 'complete' instead.


Performance optimization for prometheus scrape

2000 fake node exporter cost ~57% cpu (prometheus_scrape -> blackhole) on my AMD 3950X desktop, it shold have be more efficent.

PR #450 improve the parse performance(~50%)


gsUpgrader does not honor locked GLASS1 project on install ...

The following loads glass from GitHub, despite the lock:
  GsDeployer
    bulkMigrate: [
      Metacello new
        baseline: 'GLASS1';
        repository: 'filetree://${gitRoot}/glass/repository';
        lock ].
  Gofer new
    package: 'GsUpgrader-Core';
    url: 'http://ss3.gemtalksystems.com/ss/gsUpgrader';
    load.
  (Smalltalk at: #'GsUpgrader') upgradeGLASS1

Getting a very odd ========>Server Stack: infinite loop when exiting the batchErrorHandlingDo: block ... apparent Error being thrown when aBlock is exiting ...

Okay ... the:
========>Server Stack:

========>Server Stack:

========>Server Stack:

is coming from TodeSession>>logStackRequested: and not related to GsUpgrader class>>batchErrorHandlingDo:


Ensure acceptance tests qualify the exact released binary

Coming from https://docs.google.com/document/d/1rnXpcmmls-8YW51U7GfGNLpVLNUT02fx_ERzARrNDME/edit?usp=sharing postmortem on Databricks v1.16.0 released under passing tests and panicking for the users, the resolution is to ensure that the build and test is arranged in such a way that the exact same binary that is being released is being qualified by ProgramTest runs. Even slight discrepancies between the tested and released binaries like v1.16.0 vs 1.16.0 reduce confidence in our testing when they cause undetected problems.

This got fixed in https://github.com/pulumi/ci-mgmt/issues/1159


updated documentation for project

closes #100
Fixed and added:

readme
license
workflows for issue open, PR, documentations

@07sumit1002 do check & let me know!


[ENHANCE] Edit Settings Should Be Only Available to Admin 🟠

Summary
Edit setings should only be available to admins on contract
Description
Acceptance Criteria

[x] dont display settings for non admins

Additional Information

Put sybil contract here

done


Added splash screen and designed the chat background

added splash screen for beauty and designed the chat background
also since v1 has depreciated i remove the CLIENT_ACCESS_TOKEN from build.gradle buildtypes
also updated the dependency classpath 'com.android.tools.build:gradle:3.4.2'

Sorry! not required at the time.


Fix HSM-based SSL

Using a KeyStore provider that does not allow or returns empty from getEncoded() on private keys causes a KeyStoreException at SSL startup. This is common in HSM-backed key operations.
When creating a reduced KeyStore, use the same provider as the source KeyStore to
minimize incompatibilities.
While it's still not guaranteed to work with all KeyStore providers, switching KeyStore.getInstance("JKS") to KeyStore.getInstance(provider) fixes the issue for SafeNet "Luna" and SunPKCS11 "PKCS11" KeyStore implementations while not breaking the "PKCS12" and "JKS" cases.

Thanks for the pull request, a few questions:
Is there a Jira issue for this? (if not we can create one)
@darranl does this clash/become redundant with the Elytron integration work?
Finally, before we can accept any third-party contributions we have some paper work to do.
We require that all contributions be made under the terms of the MIT License, http://www.opensource.org/licenses/mit-license.php. Do you agree to the these terms?

JIRA issue is https://issues.jboss.org/browse/WFCORE-1466
I'm happy with the MIT license.

This code does become redundant but I approve it's inclusion for now.


Is s3git project still active? - s3git future

I'm wondering if this project is still active? the last commit was 2 years ago. I really like s3git and appreciate your effort but I'm just curious about the future of this project.

The project is dormant right now. As the idea is still enticing we may take it up in the future but there are no concrete plans right now.


Test parallel image cleaning

A new test that simulates processing of two image lists simultaneously.

Create Nginx and Redis deployment
Delete Nginx and Redis deployment
Start cleaning Nginx image
Start cleaning Redis image before Nginx cleaning ends
Make sure Nginx and Redis images are cleaned

@eedorenko Thanks for the PR! #271 adds parallel tests so we can run all of them at the same. Closing in favor of #271.


Metaclass message

Coverage increased (+6.0009%) to 72.071% when pulling 8068386c26d90fc461bb0edcc60c0573bf569efa on metaclass-message into f3eb03bb340575fa2d323d1301be243a3e3775fb on develop.


Update zio, zio-stacktracer, zio-test, ... to 2.0.13

About this PR
📦 Updates

dev.zio:zio
dev.zio:zio-stacktracer
dev.zio:zio-test
dev.zio:zio-test-sbt

from 2.0.0 to 2.0.13
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

🔍 Files still referring to the old version number
The following files still refer to the old version number (2.0.0).
You might want to review and update them manually.
build.sbt

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, old-version-remains, commit-count:1

Superseded by #220.


[FIX] Metabolic network retrieval

Context
Currently, we consider a metabolite to be part of the network boundary if it is either a sink or a source. However, the latest version of SBML has a mandatory attribute called boundaryCondition which serves this specific purpose. Page 51.
Description
This PR addresses this issue, it adds MetabolicNetwork.getBoundaryMetabolites to fetch boundary metabolites, along with the required changes. corrects NetworkBoundaryWriter.outPath. A misleading comment was corrected, and removes some unnecessary blank lines, and fixes a bug at NetworkBoundaryWriter.java.
Test
A modified  e_coli_core model was used for testing (see Points worth noting section). The results were the following:
{
  "Sinks": [
    {
      "id": "M_13dpg_c",
      "name": "3-Phospho-D-glyceroyl phosphate"
    },
    {
      "id": "M_actp_c",
      "name": "Acetyl phosphate"
    },
    {
      "id": "M_for_c",
      "name": "Formate"
    },
    {
      "id": "M_succoa_c",
      "name": "Succinyl-CoA"
    }
  ],
  "Sources": []
}

Points worth noting
Surprisingly I couldn't find any model with at least one metabolite having boundaryCondition set to true. In order to properly test the change I manually changed the value for the metabolites shown in Test section. Feel free to discuss this.

The purpose of this PR is no longer valid


[Tiered Storage] Exclude current ledger from offload deque

Motivation
Currently, the current ledger maybe adds to the offload deque.
If the method ManagedLedgerImpl#maybeOffload try to acquire the lock offloadMutex failed, the offload operation will be scheduled executed after 100 ms in the background, and the new ledger may be created successfully, then the retry offload operation will add the current new ledger to offload queue, because the current ledger is incomplete and the offload data will be incomplete.
Modifications
Exclude current ledger from offload deque.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

@gaoran10 can you check @eolivelli comments? thanks

/pulsarbot run-failure-checks

@sijie Ok, I'll try to add a test, but it's not easy to cover the problem.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@gaoran10 Please check the action CI, thanks.

The current ledge would not be added to the offload queue, I close this PR first.


Fix a warning caused by a misplaced HPX_EXPORT

Put the HPX_EXPORT on the original declaration

Thanks! We need to do a round of cleaning up those warnings before the next release. Or maybe this was the only one? I wonder if we can just remove the forward declaration in runtime.hpp. Would you mind trying that? The warnings would depend on in which order those two files are included, but it may be that we always end up including them in a certain order.

As long as we have the HPX_EXPORT in the forwarding header and #include it from the header that has the actual definition the sequence of inclusion shouldn't matter.

Thanks! We need to do a round of cleaning up those warnings before the next release. Or maybe this was the only one? I wonder if we can just remove the forward declaration in runtime.hpp. Would you mind trying that? The warnings would depend on in which order those two files are included, but it may be that we always end up including them in a certain order.

As long as we have the HPX_EXPORT in the forwarding header and #include it from the header that has the actual definition the sequence of inclusion shouldn't matter.

Exactly, and this PR changes it to the opposite (HPX_EXPORT on the definition, not in the forwarding header), which makes me worried.

Exactly, and this PR changes it to the opposite (HPX_EXPORT on the definition, not in the forwarding header), which makes me worried.

Uhh, indeed. I understood it the other way around :/

FYI removing the declaration from hpx/runtime.hpp
In file included from /home/biddisco/src/hpx-branches/dataflow-annotations/libs/compute/src/host_target.cpp:11:
/home/biddisco/src/hpx-branches/dataflow-annotations/libs/compute/../../hpx/runtime.hpp:351:45: error: ‘memory’ is not a member of ‘hpx::components::server’; did you mean ‘hpx::memory’?
  351 |         std::unique_ptr<components::server::memory> memory_;
      |                                             ^~~~~~

more like it

Thanks! This may be a rabbit hole of circular dependencies, but you could also try including hpx/runtime/components/server/memory.hpp directly where it's needed (in this case runtime.hpp). The forward declaration is probably there to avoid having to pull in that whole header. Otherwise hpx/runtime/components/server/memory.hpp should directly include runtime.hpp. Or the forward declarations should potentially even be moved to hpx/runtime_fwd.hpp.

Don't think we need this PR any more.