[MICROWIN] Optimize ISO Access with Cached Read

Type of Change

[x] Refactoring

Description

add Invoke-WPFGetIso improvements from https://github.com/ChrisTitusTech/winutil/pull/2731

read image once, then take info from the result of that.

Impact

faster process of getting ISO

Checklist

[x] My code adheres to the coding and style guidelines of the project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no errors/warnings/merge conflicts.

@MyDrift-user, it's cool that we have passed 3000, but it seems to be broken on Windows 10

@ChrisTitusTech, read this important message carefully BEFORE merging this PR.
There are use cases in which this code gives errors:

The user can have a Windows image that has an index named "Pro", but it is based on the Home SKU:

The user can have a Windows image that has an edition based on the Pro SKU, but no editions are named like that

In the former case, it will present misleading results, should the user proceed. This includes all limitations of the Home SKU, like its inability to join a domain, or to manage group policy settings. In the latter case, it will fail and will default to the first image, which could be a Home image or, if image file information gives luck to the end user, the Pro edition.
This is why it's detected with the Edition ID instead of the name: it prevents such issues from happening. To learn more, see this page from the Windows Imaging format reference from Vista-era documentation:

I've given you important info about this PR, but you decide what to do with it.

Addendum: if you want to know how the first case can happen, do the following:

Mount the Windows image of the Home SKU
Capture the contents of the mounted image to a new index named "Pro"


wasi_experimental_http::close has not been defined

hi ：
I compiled the source code get anerror： wasi_experimental_http::close has not been defined

Hmm, I'm not able to reproduce that. Could you share more details please? E.g.

what operating system are you on
what version of Rust are you on
what command are you using to build
is there any location information associated with the error

Thanks!

what operating system are you on
linux
what version of Rust are you on
rustc 1.56.1
cargo 1.56.0
what command are you using to build
run --package wagi --bin wagi -- -c examples/modules.toml
is there any location information associated with the error

Okay, so it looks like wagi itself is compiling okay, but one of the Wasm modules referenced in examples/modules.toml is not working with the current version of the Wasm outbound HTTP proposal.  In examples/modules.toml, could you try commenting out the example that makes an outbound HTTP request please?
# [[module]]
# route = "/http-example"
# module = "examples/http-example.wasm"
# allowed_hosts = ["https://api.brigade.sh"]
# http_max_concurrency = 2

and see if that helps?  Thanks!
@radu-matei Do you know where this sample came from or if it is likely to need updating?  It's been there since the year dot and I can't see the source code for it...

Okay, so it looks like wagi itself is compiling okay, but one of the Wasm modules referenced in examples/modules.toml is not working with the current version of the Wasm outbound HTTP proposal. In examples/modules.toml, could you try commenting out the example that makes an outbound HTTP request please?
# [[module]]
# route = "/http-example"
# module = "examples/http-example.wasm"
# allowed_hosts = ["https://api.brigade.sh"]
# http_max_concurrency = 2

and see if that helps? Thanks!
@radu-matei Do you know where this sample came from or if it is likely to need updating? It's been there since the year dot and I can't see the source code for it...

yes，commenting out is working， thanks

@baisijian — thanks for pointing that out.
We started putting together the Wagi examples in a single repo, but we never got around to adding all of them — see https://github.com/deislabs/wagi-examples
The HTTP example is mostly the same as — (with a main and proper content type headers) https://github.com/deislabs/wasi-experimental-http/blob/main/tests/rust/src/lib.rs#L3-L20

Reopening as this is an issue with the way Wagi instantiates modules.
Thank you so much for the report, @baisijian.
So there are two places where prepare_wasm_instance gets called in Wagi — once in the handler, and once in the dispatcher.
The dispatcher does not set the proper HTTP linker imports:
https://github.com/deislabs/wagi/blob/7d35f4fb4f7c6c710213f549b68a707d12bb33bf/src/dispatcher.rs#L321


[SPARK-20981][SparkSubmit]Add new configuration spark.jars.repositories as equivalence of --repositories

What changes were proposed in this pull request?
In our use case of launching Spark applications via REST APIs (Livy), there's no way for user to specify command line arguments, all Spark configurations are set through configurations map. For "--repositories" because there's no equivalent Spark configuration, so we cannot specify the custom repository through configuration.
So here propose to add "--repositories" equivalent configuration in Spark.
How was this patch tested?
New UT added.

Test build #77732 has started for PR 18201 at commit d64c7e9.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/77732/
Test FAILed.

Merged build finished. Test FAILed.

Jenkins, retest this please.

Test build #77736 has started for PR 18201 at commit d64c7e9.

I guess the use case is like including some default 3rd part repos in spark-defaults.conf for all jobs? seems reasonable, CC @vanzin

Yes, that's right.

Test build #77736 has finished for PR 18201 at commit d64c7e9.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/77736/
Test PASSed.

Merged build finished. Test PASSed.

LGTM. Merging to master.


Installation succeeds but no way

apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
4 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up linux-headers-4.19.0-8-amd64 (4.19.98-1) ...
/etc/kernel/header_postinst.d/dkms:
Error! Could not locate dkms.conf file.
File: /var/lib/dkms/amdgpu/2.7-27/source/dkms.conf does not exist.
run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 4
Failed to process /etc/kernel/header_postinst.d at /var/lib/dpkg/info/linux-headers-4.19.0-8-amd64.postinst line 11.
dpkg: error processing package linux-headers-4.19.0-8-amd64 (--configure):
installed linux-headers-4.19.0-8-amd64 package post-installation script subprocess returned error exit status 1
Setting up linux-image-4.19.0-8-amd64 (4.19.98-1) ...
/etc/kernel/postinst.d/dkms:
Error! Could not locate dkms.conf file.
File: /var/lib/dkms/amdgpu/2.7-27/source/dkms.conf does not exist.
run-parts: /etc/kernel/postinst.d/dkms exited with return code 4
dpkg: error processing package linux-image-4.19.0-8-amd64 (--configure):
installed linux-image-4.19.0-8-amd64 package post-installation script subprocess returned error exit status 1
dpkg: dependency problems prevent configuration of linux-headers-amd64:
linux-headers-amd64 depends on linux-headers-4.19.0-8-amd64; however:
Package linux-headers-4.19.0-8-amd64 is not configured yet.
dpkg: error processing package linux-headers-amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-image-amd64:
linux-image-amd64 depends on linux-image-4.19.0-8-amd64; however:
Package linux-image-4.19.0-8-amd64 is not configured yet.
dpkg: error processing package linux-image-amd64 (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
linux-headers-4.19.0-8-amd64
linux-image-4.19.0-8-amd64
linux-headers-amd64
linux-image-amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)

this didn't work and I had to reinstall the system, removing rocm failed.

Reinstalled the system. Reinstalled ROCm.

@valeriob01
Can I know the Ubuntu version you are using?
ROCm 3.1 supports Ubuntu 16.04.6 with 4.15 kernels and Ubuntu 18.04.3 with Ubuntu 5.3 kernels.
There is no guarantee that ROCm works for any other kernel like 4.19.

@valeriob01
Can I know the Ubuntu version you are using?
ROCm 3.1 supports Ubuntu 16.04.6 with 4.15 kernels and Ubuntu 18.04.3 with Ubuntu 5.3 kernels.
There is no guarantee that ROCm works for any other kernel like 4.19.

Not using Ubuntu, I am using Debian 10.1 with kernel 4.19.0-8, I wrote an installation script that works on Debian.

Debian OS is not an officially supported OS for ROCm.

Debian OS is not an officially supported OS for ROCm as per https://github.com/RadeonOpenCompute/ROCm --> Supported Operating Systems section

AND ?
I have run ROCm on Debian since version 1.9

OK. It might or might not work as we do not support officially.
I recommend to go ahead with working version.

OK. It might or might not work as we do not support officially.
I recommend to go ahead with working version.

But let me say it, it is unfortunate that you don't support Debian. As I recall it Ubuntu is a derivative of Debian. So you might as well support Debian.

It would be nice to expand the official or not-so-offical list of setups on which ROCm works. For example, I've been running ROCm for years on Linux kernels that were not on the "supported" list, and it did work. Right now I'm running ROCm 3.1 on Linux kernel 5.6, before that ROCm 2.10 on Linux kernel 5.6, 5.5, 5.4.
I guess it comes down to whether AMD can afford to do more extensive validation on a wider range of OSs / kernels for each release. The benefit would be that newcomers would be more likely to find their setup of choice as "supported" and thus enticed to try ROCm with confidence.

For example, I've been running ROCm for years on Linux kernels that were not on the "supported" list, and it did work. Right now I'm running ROCm 3.1 on Linux kernel 5.6, before that ROCm 2.10 on Linux kernel 5.6, 5.5, 5.4.

Can you tell us how to install without errors using debian? I test with 4.19 and 5.4 without success.
Thanks

For example, I've been running ROCm for years on Linux kernels that were not on the "supported" list, and it did work. Right now I'm running ROCm 3.1 on Linux kernel 5.6, before that ROCm 2.10 on Linux kernel 5.6, 5.5, 5.4.

Can you tell us how to install without errors using debian? I test with 4.19 and 5.4 without success.
Thanks

https://github.com/valeriob01/Mersenne-gpu-computing-node/blob/master/install-rocm.Makefile

For example, I've been running ROCm for years on Linux kernels that were not on the "supported" list, and it did work. Right now I'm running ROCm 3.1 on Linux kernel 5.6, before that ROCm 2.10 on Linux kernel 5.6, 5.5, 5.4.

Can you tell us how to install without errors using debian? I test with 4.19 and 5.4 without success.
Thanks

https://github.com/valeriob01/Mersenne-gpu-computing-node/blob/master/install-rocm.Makefile

you can substitute the /debian/ part with /2.10/ to get ver. 2.10

For example, I've been running ROCm for years on Linux kernels that were not on the "supported" list, and it did work. Right now I'm running ROCm 3.1 on Linux kernel 5.6, before that ROCm 2.10 on Linux kernel 5.6, 5.5, 5.4.

Can you tell us how to install without errors using debian? I test with 4.19 and 5.4 without success.
Thanks

https://github.com/valeriob01/Mersenne-gpu-computing-node/blob/master/install-rocm.Makefile

you can substitute the /debian/ part with /2.10/ to get ver. 2.10

Thanks alot. Using debian 4.19.0-6-amd64 kernel is perfect.

Second attempt. Installation of ROCm 3.1.1 succeeds but program unable to find devices.
clGetDeviceID fails

I'm sorry to hear that you had these issues at the time -- hopefully things are working a little better now. If you run into further problems with installing ROCm, please submit another issue. However, as noted in some of the responses, the ROCm team can only offer support on a limited number of operating systems and versions.

I had to adopt Ubuntu, since then the issue is solved. It is unfortunate that in order to be productive I had to change OS to solve the issue, seen that Ubuntu is a derivative of Debian. I expected Debian to get better support from AMD.


automatic conversion of the target regex

I am wondering whether you have any code yourself or know of any library that convert the regex language you use into any form actually used by a programming language. I suppose you have something to check whether the generated regex in your regex language would accept a positive example and reject a negative example during evaluation. Can you direct me to the relevant part? Thanks.

I believe the getRegex function in PartialProgram.java can convert the program in our DSL to a regex that can be accepted by the Automaton library. You can you that library to check whether its consistency with the examples.

Thanks. Instead of supplying examples to check whether a sketch would match (I believe this needs the example needs to be a full match with nothing extra), I want to supply examples and get the sketch to extract the portion that matches the sketch. Can you highlight the part of the codes that is relevant to making this possible? Thanks.

Excuse me, I am trying to generate executable regular expressions using Regel, could you please tell me how to call PartialProgram.java to get executable regular expressions after calling exp.py and process_output.py with commands? @thelyad

@wailoktam The current code actually does not support this feature. I think this might be difficult since there probably does not exist a 1 to 1 mapping between the sketch and part of the strings that match parts of the sketch.

@wailoktam The current code actually does not support this feature. I think this might be difficult since there probably does not exist a 1 to 1 mapping between the sketch and part of the strings that match parts of the sketch.

@YuanWangC You should be able to obtain the executable regex in the exp.py now #11 . I also output all the synthesized results in a csv format located in $your_log_path/all_results.csv. In this case, you probably don't have to call process_output.py #12 .

@YuanWangC You should be able to obtain the executable regex in the exp.py now #11 . I also output all the synthesized results in a csv format located in $your_log_path/all_results.csv. In this case, you probably don't have to call process_output.py #12 .


Modular pp

This PR creates a modular HPX library that contains our utilities for preprocessor metaprogramming.
This PR includes #3582 and is a follow up to #3628 breaking the big PR into smaller commits.

@sithhell we discussed creating one top-level header file for each module and use that one everywhere else. Did we actually agree to doing that?

I've just updated this with latest master. Let's try to sort out the kinks and get this in soon as an example of an actual module so that we can start refining what our modules should look like.

@sithhell we discussed creating one top-level header file for each module and use that one everywhere else. Did we actually agree to doing that?

There already is a top-level include but it's not used. Opinions on whether we want this or not?

There already is a top-level include but it's not used. Opinions on whether we want this or not?

Including our modules through their corresponding top level header only gives us freedom for later to move things around, if needed.

Including our modules through their corresponding top level header only gives us freedom for later to move things around, if needed.

Yes. We can also decide on this later and change it without users noticing. I think the top-level headers are most useful for users anyway and they have the option of including them now.

Fixed conflicts with master again. Are there any remaining concerns about this? If not I'd like to have it merged before it goes out of date compared to master again.

\o/


Default installation path and 'rbenv rehash' for Bundler

After successful installing bundler gem for default ruby 2.2.3 I realized that bundler is installed for system ruby 1.9.3.
Later I installed ruby 2.2.3 with using ruby-build plugin (using rbenv install command) and switched to 2.2.3 with rbenv global command. But after installing bundler and doing rbenv rehash I see next results:
for default ruby 2.2.3 I don't see bundler in gem list (you can see different paths for bundler and rake):

I also don't see anything for bundler on .rbenv/shims directory.
for system ruby 1.9.3 I see bundler in gem list (but I don't use system ruby since installing 2.2.3):

I also tried to open new terminal and reload my machine (and did rbenv rehash one more time) - it doesn't help.

Sorry you're having trouble. Have you verified that "bundler" is present among gem list when you switch to Ruby 2.2.3? After running rbenv rehash, the bundle command should be present in ~/.rbenv/shims/.

After switching to Ruby 2.2.3 and running gem list bundler is not present on gem list:

After running rbenv rehash path to bundler and content of `~/.rbenv/shims/ are the same as before.
Running rbenv rehash:

Content of shims after running rbenv rehash and refreshing file tree:

I also tried to do the same under system Ruby, but nothing changes with bundler's path and rbenv's shims:

Maybe it will help to solve this issue:

All actions are doing under Ubuntu 14.04
I installed Bundler gem with using sudo running sudo gem install bundler instead of simple gem install bundler.

After switching to Ruby 2.2.3 and running gem list bundler is not present on gem list:

Well, there's the problem. We have to install bundler first in order to be able to use it.

2. I installed Bundler gem with using sudo running sudo gem install bundler instead of simple gem install bundler.

Using sudo is only necessary when using "system" Ruby version in /usr/local/bin. But, generally with rbenv you don't want to be using system version. Instead, you want to be using one of the rbenv-managed versions, which don't require sudo to install anything.
Do a gem install bundler while Ruby 2.2.3 is active and you should be good.


Fix incorrect name for pandoc path option

"Markdown pandoc path" option is not working.

See code at: https://github.com/Glavin001/atom-beautify/blob/master/lib/language-options.coffee#L263
Could you make the tests pass. Just need to change https://github.com/KoharaKazuya/atom-beautify/blob/2fe815e47cf8c95d099ee0f17b2c4d83dc8dd2ce/lib/langs/markdown-beautify.coffee#L13 to if not pandocPath because the default value is "" (empty string, see https://github.com/Glavin001/atom-beautify/blob/master/lib/language-options.coffee#L265 ) not undefined or null.
That should fix it and then I can merge.
Thanks you!

Sorry, I have no idea why test failed.

Looks, to me, like Travis CI broke :stuck_out_tongue_winking_eye: . I restarted it. Thanks!

Taking a look at this now. Looks like the failing test is with SQL beautification, not with your pull request. I hope to merge this soon. Thanks!

Published to v0.24.1


Fix of Bitwarden connection problem

Please review the release process for BrowserServicesKit here.
Required:
Task/Issue URL: https://app.asana.com/0/1177771139624306/1203672423028788/f
iOS PR: https://github.com/duckduckgo/iOS/pull/1437
macOS PR: https://github.com/more-duckduckgo-org/macos-browser/pull/924
What kind of version bump will this require?: Patch
Optional:
Tech Design URL:
CC: @brindy @GioSensation
Description:
Fix of the communication with Bitwarden caused by not injecting correct arguments to SecureVaultManager. Assertion added to make sure password manager is set for macOS platform.

Steps to test this PR:
macOS

Visit https://fill.dev/ and make sure you can autofill credentials, add new credentials and update existing credentials with the internal password manager
Repeat the test with Bitwarden set as password manager.

iOS

Make sure you can autofill credentials, add new credentials and update existing credentials.

OS Testing:

[ ] iOS 14
[ ] iOS 15
[ ] iOS 16
[ ] macOS 10.15
[ ] macOS 11
[ ] macOS 12

Internal references:
Software Engineering Expectations
Technical Design Template

Thank you for the review Brindy 🙏. My change probably broke few unit tests. I'll take a look at it tomorrow and post an update here

The assertion is causing problems when unit tests are running on macOS and makes it hard to test iOS related scenarios. I decided to not move forward with it and close this PR.
The fix of the original issue remains part of https://github.com/more-duckduckgo-org/macos-browser/pull/924


feat(chip): improve stack in card support

Description
Convert chip to standard ha-card. This improve support for card like vertical-stack-in-card because the container element is a ha-card.
Example :

type: custom:vertical-stack-in-card
styles:
  '--chip-box-shadow': none
  '--chip-background': none
  '--chip-spacing': 0
cards:
  - type: custom:mushroom-light-card
    entity: light.bed_light
  - type: custom:mushroom-chips-card
    alignment: justify
    chips:
      - type: entity
        entity: sensor.outside_temperature
        icon_color: red
      - type: entity
        entity: sensor.iphone_de_paul_battery_level
        icon_color: grey

Related Issue

Motivation and Context

How Has This Been Tested

Types of changes

[ ] 🐛 Bug fix (non-breaking change which fixes an issue)
[ ] 🚀 New feature (non-breaking change which adds functionality)
[ ] 🌎 Translation (addition or update a translation)
[x] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have tested the change locally.

Im havent an issue with a custom theme:
Chips background still shows: (by the way, i really all the great work you're doing)

Have you added this options to vertical stack in card?
styles:
  '--chip-box-shadow': none
  '--chip-background': none
  '--chip-spacing': 0

Yes, I did.

And what is your Mushroom version?

V1.8.7

Yes, I did.

You are using stack-in-card,
Try using vertical-using-in-stack and it will probably work

Same issue here in the top-left corner (and many other cards)...

I'm on v1.8.7 and was previously able to use...
style: |
  ha-card {box-shadow: 0px 0px;}

...to remove the border shadow on Mushroom Chips in stack-in-cards (not vertical-stack-in-cards as I see in the previous post).
Considering stack-in-cards are meant to work in vertical or horizontal mode since they were meant to replace vertical-stack-in-cards...

...I'd still like to figure out the proper syntax and/or request a change in Mushroom Chip Cards to make them compatible again. I think it'll be great to not have to remove the border for each chip card once I can get it working. ;-)
Here's the syntax I'm trying (I've also tried putting '0px 0px' in place of 'none' for the box-shadow property...didn't work):
- type: custom:stack-in-card
  mode: vertical
  styles:
    '--chip-box-shadow': none
    '--chip-background': none
    '--chip-spacing': 0
  cards:
      # Status Chips
    - type: custom:mushroom-chips-card
      chips:
        - type: template
          entity: binary_sensor.study_occupancy
          icon: >-
            {{ iif(is_state('binary_sensor.study_occupancy','on'),
            'mdi:account-check', 'mdi:account-cancel-outline') }}
          icon_color: '{{ iif(is_state(''binary_sensor.study_occupancy'',''on''), ''green'', ''grey'') }}'
          tap_action:
            action: more-info

I appreciate any help.

One example with stack-in-card. We need to use card_mod :
type: custom:stack-in-card
cards:
  - type: custom:mushroom-chips-card
    card_mod:
      style: |
        ha-card {
          --chip-box-shadow: none;
          --chip-background: none;
          --chip-spacing: 0;
        }
    chips:
      - type: entity
        entity: sensor.outside_temperature
        icon_color: red
      - type: light
        entity: light.bed_light

card_mod still isn't doing it for me. Drop shadow won't go away

Ok, I didn't initially realize that card-mod was something I needed to install. After getting it set up it still didn't work as @piitaya described. This is what I finally got to work:
type: custom:stack-in-card
mode: vertical
card_mod:
  style:
    "hui-vertical-stack-card$ mushroom-chips-card":
      "$ *":
        "$ mushroom-chip$": |
          ha-card {
            --ha-card-box-shadow: none;
          }
cards:
  - type: custom:mushroom-title-card
    title: Front Door
    alignment: center
    subtitle: ''
  - type: custom:mushroom-chips-card
    chips:
      - type: entity
        entity: lock.front_door_lock
      - type: entity
        entity: sensor.doorbell_last_motion
        icon: mdi:motion-sensor
      - type: entity
        entity: sensor.doorbell_last_ding
        icon: mdi:bell-ring-outline
      - type: alarm-control-panel
        entity: alarm_control_panel.home_alarm
    alignment: center

Here you go, default theme with mushroom 1.8.8
type: custom:stack-in-card
mode: vertical
cards:
  - type: custom:mushroom-title-card
    title: Front Door
    alignment: center
    subtitle: ''
  - type: custom:mushroom-chips-card
    card_mod:
      style: |
        ha-card {
          --chip-box-shadow: none;
          --chip-background: none;
          --chip-spacing: 0;
        }
    chips:
      - type: entity
        entity: sensor.doorbell_last_motion
        icon: mdi:motion-sensor
      - type: entity
        entity: sensor.doorbell_last_ding
        icon: mdi:bell-ring-outline
    alignment: center
  - type: custom:mushroom-chips-card
    card_mod:
      style: |
        ha-card {
          --chip-box-shadow: none;
          --chip-background: none;
          --chip-spacing: 0;
        }
    chips:
      - type: entity
        entity: lock.front_door_lock
      - type: alarm-control-panel
        entity: alarm_control_panel.home_alarm
    alignment: center

Using Chrome on MacOS with HASS running on RasPi. I wonder if there's CSS added by another extension breaking it for me?

Maybe. I only have card_mod and stack-in-card installed on my test env.

This seems to actually work now. Not sure what changed


fix: simplify stop port forward function

Description
This pull request changes the following:

remove unnecessary async and await new Promise....
remove the port open check as the close event will be emitted when the port is closed (I know we've found it to be not behaving as it says although doc says the close event will be emitted: https://nodejs.org/api/net.html#serverclosecallback).

Related Issues

Closes #

Closing it as I'm not working on it anymore.


Append to icechunk stores

This resizes the arrays which are being appended to and, probably too naïvely, increments the append_dim index of the chunk key by an offset of the existing number of chunks along the append dimension.
Also Zarr append ref: https://github.com/zarr-developers/zarr-python/blob/main/src/zarr/core/array.py#L1134-L1186

[x] Closes https://github.com/zarr-developers/VirtualiZarr/issues/311
[x] Tests added
[x] Tests passing
[x] Full type hint coverage
[x] Changes are documented in docs/releases.rst
[x] New functions/methods are listed in api.rst
[x] New functionality has documentation

I think that's great! Does xarray have any similar logic in it?

In the case of appending to a zarr store using xarray,

From what I can tell, resizing happens here. (Btw if someone can explain write_region to me I would appreciate it, I couldn't find good documentation anywhere).
For writing actual chunks of data to keys, I believe that currently happens here (in zarr.array._set_selection. I will continue to dig into how it's working in xarray and zarr to understand how it should work here.

Also this is not fully working yet, it is getting a decompression error 😭

This feature should be orthogonal to all of that, so to begin with I would concentrate on writing tests with very simple arrays, even uncompressed ones.

Yes I think my next step will be to write some simple tests.

@TomNicholas thanks so much for your review, I think I have addressed all your comments but I need to address the failures. I'll let you know when I would like a need a re-review.

Finally got all tests passing! But there are still a few things I want to address:

[ ] getting _check_same_codecs to work for both ManifestArrays and Zarr Arrays of either Zarr version required a new get_codecs function that is quite complex. Not sure if that is the way to go or just use the methods from array_api that work more seamlessly with Zarr v3 arrays.
[ ] Curious if there is a good way to type the return of get_codecs since, I believe, each data type may return something slightly different - such as virtualizarr.zarr.Codec vs zarr.abc.codec
[ ] Want to figure out if I can resolve needing dask to create valid Zarr chunk manifests from xarray tutorial air_temperature dataset

@TomNicholas curious if you have suggestions about an approach to make get_codecs work for both Zarr Arrays and Manifest Arrays, of both Zarr versions. See the current implementation in https://github.com/zarr-developers/VirtualiZarr/blob/icechunk-append/virtualizarr/manifests/get_codecs.py.
I'll otherwise be looking into the range precision difference today.

curious if you have suggestions about an approach to make get_codecs work for both Zarr Arrays and Manifest Arrays, of both Zarr versions.

I was going to say that
a) I had not realised that appending could imply comparing ManifestArrays with zarr.Arrays directly in order to concatenate them in the Icechunk store,
b) Some kind of high-level function like
def check_compatible(*arrs: ManifestArray | zarr.Array) -> None:
    """Raises if any codecs / anything else is incompatible so these arrays cannot be concatenated"""

sounds really useful,
c) The get_codecs stuff is likely messy right now but also will hopefully become a lot simpler once we implement https://github.com/zarr-developers/VirtualiZarr/pull/175, but that's also blocked on kerchunk supporting zarr-python v3,
d) Given (c) I suppose you might want to prioritize an approach which is forward-looking, i.e. have get_codecs return in the form it returns for zarr.Array with zarr-python v3,
e) This might imply refactorings in other places in the codebase where codecs are handled.

Also minor nit but I think your get_codecs logic should live in virtualizarr.zarr.py or even a new virtualizarr.codecs.py rather than inside virtualizarr.manifests, because it doesn't really have anything to do with the manifests themselves, only with the ZArray class.

@TomNicholas thanks for this - very helpful.
2 questions:

Regarding check_compatible(*arrs: ManifestArray | zarr.Array) this seems very similar to https://github.com/zarr-developers/VirtualiZarr/blob/main/virtualizarr/manifests/array_api.py#L28-L40 which I have modified to work for both ManifestArrays and zarr.Arrays (which really just required the get_codecs function). Did you mean you think we should create another function and, if so, how would it be different from what check_combineable_zarr_arrays does?

I can look into refactoring get_codecs to return in the form it returns for zarr.Array with zarr-python v3 but if this requires changes in a lot of other places, do you think we should address it in a different PR?

Did you mean you think we should create another function and, if so, how would it be different from what check_combineable_zarr_arrays does?

I'm just saying let's make sure we have just one official function for doing this within the codebase, that gets called from inside concatenate as well .to_icechunk, and can handle all the types. Your modified version looks great, so let's just make sure we use that one everywhere.

I can look into refactoring get_codecs to return in the form it returns for zarr.Array with zarr-python v3 but if this requires changes in a lot of other places, do you think we should address it in a different PR?

If you can get this PR to work without doing all those changes then we can punt on them, but if you need those changes I agree it would be neater to separate them into a different PR.

@TomNicholas To state what you already know, I believe we can assume if zarr-python is installed, then it would be zarr-python version 3, since zarr is a dependency only if icechunk is a dependency (as far as I can tell).
But, if we assume we are still supporting both zarr format version 2 and zarr format version 3, then the get_codecs function can't always return the same type, since for zarr format version 2, there is no codecs property. So the solution I have settled on is returning either a virtualizarr.zarr.Codec object, for version 2 zarr arrays, and tuple of the various codecs supported for version 3 zarr arrays.
Note: I have to do a type conversion of array.metadata.codecs to a tuple in codecs.py. The type of the codecs attribute in zarr-python's ArrayV3Metadata is a tuple but in actuality, a list is what is stored. I believe it's because of these lines. Should this be fixed in zarr-python?

I believe we can assume if zarr-python is installed, then it would be zarr-python version 3, since zarr is a dependency only if icechunk is a dependency (as far as I can tell).

Unfortunately not, because kerchunk still uses zarr-python v2. But the only time this is going to come up is when we deal with zarr.Array directly, which only happens within the icechunk append functionality, and if you're using icechunk then v3 must be the one installed.
So I think you could maybe just have the check_combinable function that accepts zarr.Array raise NotImplemented if it encounters a zarr.Array with zarr-python v2 installed?

The type of the codecs attribute in zarr-python's ArrayV3Metadata is a tuple but in actuality, a list is what is stored.

Yeah that looks like an upstream bug to me.

@TomNicholas I believe I have addressed all comments. I'm going to try it out with some real-world datasets and add documentation.

I don't know what the issue is, but this seems like an unrelated error to the functionality that's added in this PR surely?
This PR has tests, which pass, so I would be in favour of merging it now and making the functionality public + adding documentation in a follow-up. Also some of the codecs stuff might be useful to @norlandrhagen in #271.
Also if it just sits here for a while in open status that's also fine.

Hmmmm so I have seen that error before, when I had the wrong order of codecs it caused the compression to be messed up.

Oh that's a good find! It looks like chunk is being overwritten somehow for sure.
If I understand the notebook, the original dataset loads fine from icechunk to xarray before the append. So at least that narrows it down.
I am happy to try and take a look (this confirms we need a way to get references out of icechunk too)

@mpiannucci thanks for the heads up, I upgraded but it did not resolve the error.
Also, I'm sure you realized this but I think with zarr a change has to be made https://github.com/mpiannucci/kerchunk/blob/v3/kerchunk/utils.py#L55 from mode='w' to read_only=False when upgrading to icechunk 0.1.0a5 (as it depends on zarr v3.0.0-beta.2).

Thanks! Ill sync those changes in kerchunk land.
I will have time tomorrow to test this PR out for real

This is an icechunk bug :( See here: https://github.com/earth-mover/icechunk/issues/418

icehcunk alpha 6 is out now, and fixes this bug and should pave the way for this PR to get merged :) Im so exicted about this

I've modified a test to assert that it would fail with icechunk 0.1.0a5 and then succeeds with icechunk 0.1.0a6. However there seem to be some unrelated mypy errors in the hdf module - should I look at resolving these?

I've modified a test to assert that it would fail with icechunk 0.1.0a5 and then succeeds with icechunk 0.1.0a6

Excellent - I was going to suggest that.
How do you feel about merging this now @abarciauskas-bgse ? With docs and/or examples in a follow-up?

Well I was feeling great about it but it seems like something else in icechunk is changed, as I'm running the notebook and some functions which were previously sync are now async - note await is required when creating the store and also am getting an error that set_virtual_ref needs to be awaited 😞
@mpiannucci do you know the best way to handle the async changes?

@abarciauskas-bgse  I updated your notebook here: https://github.com/zarr-developers/VirtualiZarr/pull/327 and it is working perfectly!

Thanks @mpiannucci but it's still not working for me... when I run IcechunkStore.create it returns a coroutine, not a store. I'm confounded! Not trying to be difficult, I swear! See https://github.com/zarr-developers/VirtualiZarr/blob/e38823c20134858029188260bb834669a202b13e/noaa-cdr-sst.ipynb

That is very confusing because it is definitely not an async function in a7!
https://github.com/earth-mover/icechunk/blob/a8c33b81d329c32a8e34e7151a1a71620967067a/icechunk-python/python/icechunk/__init__.py#L133
Is there any chance your environment is crossed up?

@mpiannucci yes my environment (well at least 1 of them) was messed up. Another one is working 😅 so we should be good now. i'm going to merge your version of the notebook and move it to the examples directory after cleaning up some extra cells...

ok @TomNicholas I think this is finally g2g, I added to release docs and checked the autogenerated API documentation for to_icehunk.
As far as the example I added in examples/ ... perhaps in another PR we can add this to the virtualizarr docs or icechunk docs.

(@abarciauskas-bgse you should have merge rights)


Type code TEST_MPL_O not valid for Biomass

We are trying to simulate the Level-0 Step3 processing. The Task execution fails with the following error message:
[E] Type code TEST_MPL_O not valid for Biomass

In attachment you can find a zip file containing:

wrapper.sh: shell script simulating the Task executable (it calls the procsim executable according to the documentation)
dockerfile: updated dockerfile needed to create one executable for each processor Task (each one is a synbolic link to the wrapper.sh script)
scenarioConf.json: scenario configuration file
L0PFStep3_SM1_01_01_Step3_05_03L01_2508.zip: working directory created by the CPF and containing the job order and the input products.

L0Step3_failed_ProcSim1.6.zip

We were able to reproduce this issue and fixed it in PR #28. MPL products are now recognized and handled properly.
Thank you for supplying a complete set of data and scripts so that we could investigate this issue. Just as a heads-up, during debugging, another error appeared relating to an unexpected deviation from the MPH format. In the MPH of product BIO_AUX_ERP____20201201T000000_20201231T235959_01_046UV2, the eop:processingDate is given with milliseconds where no decimals are expected.

I have executed the same test with v1.6.1. The error previously detected does not occur anymore but now procsim raises an exception that seems to be related to the parsing of a date:
% /opt/pnode/bin/procsim -t level0_task3.sh -j BIO_L0PFStep3-SM1_01.01_2470-2474_20220323T121107_JobOrder_upd.xml scenarioConf.json
2022-03-25T12:30:00.172704 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Procsim v1.6.1 processor stub simulator
2022-03-25T12:30:00.172754 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Simulate scenario L0 step 3, consolidation of Monitoring products (Measurement Mode)
2022-03-25T12:30:00.172765 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Read JobOrder BIO_L0PFStep3-SM1_01.01_2470-2474_20220323T121107_JobOrder_upd.xml
2022-03-25T12:30:00.172773 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [D] JobOrder validation against schema: OK
2022-03-25T12:30:00.172780 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Read task Step3 from the JobOrder
2022-03-25T12:30:00.172791 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Input type AUX_PP0___: BIO_AUX_PP0____20000101T000000_20500101T000000_01_000000
2022-03-25T12:30:00.172800 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Input type MPL_ORBPRE: BIO_TEST_MPL_ORBPRE_20210201T000000_20210202T000000_0001.EOF
2022-03-25T12:30:00.172814 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Input type S1_RAWP_0M: BIO_S1_RAWP_0M_20210201T002432_20210201T002932_T_G___M01_C___T000_F____42_BLKCCN
2022-03-25T12:30:00.172823 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [I] Input type AUX_ERP___: BIO_AUX_ERP____20201201T000000_20201231T235959_01_046UV2
2022-03-25T12:30:00.185540 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [D] Parse BIO_S1_RAWP_0M_20210201T002432_20210201T002932_T_G___M01_C___T000_F____42_BLKCCN for S1_RAW__0M
2022-03-25T12:30:00.187433 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [D] Data take id 1 of BIO_AUX_PP0____20000101T000000_20500101T000000_01_000000 matches
2022-03-25T12:30:00.187977 cpf-ipf-p-1 L0PFStep3-SM1 01.01 Step3 [0000046085]: [D] Data take id 1 of BIO_S1_RAWP_0M_20210201T002432_20210201T002932_T_G___M01_C___T000_F____42_BLKCCN matches
Traceback (most recent call last):
  File "/opt/pnode/bin/procsim", line 8, in <module>
    sys.exit(main())
  File "/opt/pnode/lib/python3.9/site-packages/procsim/core/main.py", line 384, in main
    if job_task.inputs and not gen.parse_inputs(job_task.inputs):
  File "/opt/pnode/lib/python3.9/site-packages/procsim/biomass/level0_product_generator.py", line 308, in parse_inputs
    hdr.parse(mph_file_name)
  File "/opt/pnode/lib/python3.9/site-packages/procsim/biomass/main_product_header.py", line 824, in parse
    processing_date = _time_from_iso_short(processing_info.findtext(eop + 'processingDate'))
  File "/opt/pnode/lib/python3.9/site-packages/procsim/biomass/main_product_header.py", line 72, in _time_from_iso_short
    return datetime.datetime.strptime(timestr, ISO_TIME_FORMAT_SHORT)
  File<EMAIL_ADDRESS>line 568, in _strptime_datetime
    tt, fraction, gmtoff_fraction = _strptime(data_string, format)
  File<EMAIL_ADDRESS>line 352, in _strptime
    raise ValueError("unconverted data remains: %s" %
ValueError: unconverted data remains: .567
luca mariani@ESR01104747 L0PFStep3_SM1_01_01_Step3_05_03L01_2508 %

Can you please check?

Indeed, this issue came up during testing. The eop:processingDate is given with millisecond precision where the format we expect (from the BIO-ESA-EOPG-EEGS-TN-0051 MPH definition) is dateTime in ISO 8601 format YYYY-MM-DDThh:mm:ssZ. I verified that removing the decimals in this field solves the issue.

@mivermeu thank you!


Keda namespace remains in termination state after Keda Module uninstallation

Description
Keda namespace is not deleted after keda uninstallation
apiVersion: v1
kind: Namespace
metadata:
  labels:
    control-plane: controller-manager
    kubernetes.io/metadata.name: keda
  name: keda
spec:
  finalizers:
  - kubernetes
status:
  conditions:
  - lastTransitionTime: "2022-10-31T13:26:04Z"
    message: 'Discovery failed for some groups, 1 failing: unable to retrieve the
      complete list of server APIs: external.metrics.k8s.io/v1beta1: the server is
      currently unable to handle the request'
    reason: DiscoveryFailed
    status: "True"
    type: NamespaceDeletionDiscoveryFailure
  - lastTransitionTime: "2022-10-31T13:25:57Z"
    message: All legacy kube types successfully parsed
    reason: ParsedGroupVersions
    status: "False"
    type: NamespaceDeletionGroupVersionParsingFailure
  - lastTransitionTime: "2022-10-31T13:26:40Z"
    message: All content successfully deleted, may be waiting on finalization
    reason: ContentDeleted
    status: "False"
    type: NamespaceDeletionContentFailure
  - lastTransitionTime: "2022-10-31T13:26:40Z"
    message: All content successfully removed
    reason: ContentRemoved
    status: "False"
    type: NamespaceContentRemaining
  - lastTransitionTime: "2022-10-31T13:25:57Z"
    message: All content-preserving finalizers finished
    reason: ContentHasNoFinalizers
    status: "False"
    type: NamespaceFinalizersRemaining
  phase: Terminating

Expected result
keda namespace should be deleted
Actual result
keda namespace remains in termination state
Steps to reproduce
Uninstall Keda form Kyma by editing Kyma CR
Troubleshooting

The apiservice is in False state
m00g3n@V40JYGF020 ~ % k get apiservices.apiregistration.k8s.io | grep keda
v1alpha1.keda.sh                       Local                                 True                      124m
v1beta1.external.metrics.k8s.io        keda/keda-manager-metrics-apiserver   False (ServiceNotFound)   42m

As a mitigation we can fix it by removing apiservice
kubectl delete apiservices.apiregistration.k8s.io v1beta1.external.metrics.k8s.io

The final solution could be to implement the deletion of apiservices in ManifestReconciler after deletion of finalizers in HandleDeletingState. We could than have it exposed as a new functional option in declarative pkg to provide apiservices that should be deleted deleted.

I think in general apiservices deletion is a really specific use case and most likely it would make more sense to implement a generic functional hook on deletion instead of a specific option with your requirement. Then you would be able to use the hook in deletion state to delete the apiservice without us having to implement an option just for apiservice derigstration.
WDYT?

Great, the functional hook would give us also the place to perform the deletion of the apiservices.

This issue could be fixed with https://github.com/kyma-project/module-manager/pull/165/.
Could you please get the latest module-manager dependencies and report back if it fixes the issue?
go get github.com/kyma-project/module-manager/operator@main

We are dropping the usage of declarative library


Convert all line-ending to unix for the 3 files with CRLF

This is a bit unfortunate as it will look on git as if we touched all
the lines while we actually did nothing to the content.
It's rare enough that I don't think it's worth setting a precommit hooks
Closes #3889

It is suggested to see the diff without whitespace changes:
https://github.com/napari/napari/pull/3919/files?diff=split&w=1


Text Block and Wrapping

Hi, i'm looking to change over to TTF_RenderText_Blended_Wrapped for multi line text rendering in preparation for an Editbox and a scrolling box of text for longer messages. However, this will mean an additional argument of width to be passed. I'm not sure what your opinion on introducing breaking changes into the library is so should i implement it as a new RenderTextWrapped function, or just extend the existing function and any uses within the library, and set it to not wrap if the width is set to 0

I think we can handle this with an editbox option - KW_EnableEditboxWrapping and KW_DisableEditboxWrapping, which would set a flag on the KW_Editbox structure (this flag should be added to the end of the struct). RenderEditboxText() should then check if this flag is set and render accordingly. This would guarantee that the API doesn't break with current code.
If code gets too messy and too different (I didn't checked all the code paths for this), then I believe creating another component entirely would probably be better, albeit it's a lot more work and probably would involve a lot  of duplicated code.
Hey, thanks for your effort!


Minor fix for registry CLI LIST command

Description
Minor changes to the registry LIST operation's SDK code to use the autorest 'list' function instead of the 'list_by_subscription' function, which although preferrable, doesn't have an implemented backend yet.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

e2e Test coverage for registry operations is dependent on a few more other PRs, and is out-of-scope of a minor repo sync/fix PR.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-ml


Add Splay benchmark.

This first version is as close as possible to the original implementation as possible. The benchmarks are:
splay [all] sbt           :         6.49 real        19.04 user         1.16 sys
splay [fastopt] d8        : Splay: 1961.764705882353 us
splay [fastopt] node      : Splay: 1979.2284866468842 us
splay [fullopt] d8        : Splay: 1533.3333333333333 us
splay [fullopt] node      : Splay: 1632.6530612244899 us
splay [js] d8             : Splay(RunTime):<PHONE_NUMBER>6451616 us
splay [js] node           : Splay(RunTime):<PHONE_NUMBER>483403 us

Are there any optimizations that I could use without fundamentally changing the benchmark?

Review by @sjrd.

The new benchmarks are:
splay [all] sbt           :        11.54 real        43.59 user         1.84 sys
splay [fastopt] d8        : Splay: 45590.90909090909 us
splay [fastopt] node      : Splay: 45909.09090909091 us
splay [fullopt] d8        : Splay: 43702.12765957447 us
splay [fullopt] node      : Splay: 45177.77777777778 us
splay [js] d8             : Splay(RunTime): 43717.391304347824 us
splay [js] node           : Splay(RunTime): 50333.333333333336 us

Success :)

Awesome!


web component tester not importing the polymer element to test

I am using WCT to test my polymer elements. All the configurations and paths are correct. However, when i run the wct, the element html file is not imported to the test and i cant read any properties or functions from the element file. I have checked the logs with verbose on and all files are served properly.
Test File:
<!doctype html>
<html>
 <head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
  <script src="../../public/bower_components/webcomponentsjs/webcomponents-lite.js"></script>
  <script src="../../public/bower_components/web-component-tester/browser.js"></script>
  <link rel="import" href="../../public/scripts/components/component-list/component-list.html">
 </head>
<body>
 <component-list></component-list>
<script>
  var myEl = document.querySelector('component-list');
  suite('<component-list>', function() {
    test('defines chartState property', function() {
        assert.equal(myEl, true);
    });
  });
</script>
</body>
</html>

index.html
 <!doctype html>
 <html>
 <head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
  <script src="../public/bower_components/webcomponentsjs/webcomponents-lite.js"></script>
  <script src="../public/bower_components/web-component-tester/browser.js"></script>
</head>
<body>
 <script>
  WCT.loadSuites([
    'polymer/basic-test.html'
  ]);
</script>
</body>
</html>

So the component-list html does not get injected to myEl variable. Running the test i get myEl as <component-list></component-list> and not the actual html content.

Update on the issue: The file is not imported due the presence of behaviors property inside the script. When i removed it, it worked fine. However, we need the behaviors to be defined for shared elements. Any idea on how to get around this.


fixed error handling when failing to Get noobaa cr

When a failure occurred while trying to get noobaa cr using client.Get(), only "not found" errors were handled. all other errors were ignored.

/ok-to-test


Opensarlab lib

Update for opensarlab-lib updates
MintPy_Time_Series_From_Prepared_Data_Stack.ipynb
SAR_Training/English/Master/MintPy_Time_Series_From_Prepared_Data_Stack.ipynb
SAR_Training/English/Master/Prepare_HyP3_InSAR_Stack_for_MintPy.ipynb

Need to note that data subdir needs to be in the same dir as the data notebook

Prepare_HyP3_InSAR_Stack_for_MintPy: remove gdal.Warp call in section 3 "Crop the stack to the AOI and reproject to lat-lon"


Bug!

I found a new bug @GoRedbirds! You can not earn any money anymore! We need to fix that right away!

I fixed it now.


[Question]: Explainability of Vector Search

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Can someone help me with understanding how does the vectorisation process works for Vector Store and Vector Search ? I tried looking at the documentation and code implementation but couldn't figure it out due to abstraction.
What I am looking for/at is the simplistic approach for building a RAG via embeddings of my choice and overall usage of embeddings of my choice for the Vector Storage and little verbose work on the implementation/running for the user.

Basically, the embedding model transforms chunks of text into a list of numbers (i.e. an embedding vector)
When you query, an embedding vector is also generated for the query text. Then, cosine similarity is used to find the top k matching pieces of text compared to the query.
If you want to customize the embeddings model, you can set that in the service context
https://gpt-index.readthedocs.io/en/latest/core_modules/model_modules/embeddings/usage_pattern.html#embedding-model-integrations


Throw an error to inform the developer that the other assets(except XUDT) is not currently supported

The SDK currently only supports XUDT assets.
Suppose the developer accidentally passes other Type Script assets into the functions provided by the SDK. In that case, the SDK needs to throw an error to inform the developer that the asset is not currently supported.

https://github.com/ckb-cell/rgbpp-sdk/pull/80


Happy Eyeballs

Happy Eyeballs Implementation in Pick First LB policy.

Please merge #19357 into master and then merge those changes into this PR, so that I can more easily see the diffs that are in this PR only.  Thanks!


Conflicts when nesting PagerView inside of Material Top/Bottom Tab navigator

Environment

Using Expo Router V2
Using React Navigation Material Top Tabs

Description
I have a vertical view pager nested inside of a material top tab screen. The vertical view pager works perfectly fine, however, I am no longer able to swipe horizontally across screens.
The nested ViewPager within the screen seems to hog all the swipe events and prevents me from swiping horizontally between screens of my navigator, which I believe is built on top of react-native-pager-view as well.
Ideally, the screen would register vertical swiping for my nested ViewPager and horizontal swiping for my navigator. Is there some way to allow my nested ViewPager to register just vertical swipes and pass through horizontal swipes to the parent?

Did you find any solution?

Unfortunately not

I'm facing the same issue. Please help 🙏🏻

@sant3001 are you facing issue of black screen or not able to move? Also what version are you using? I was able to fix this using a patch which basically enable nested scroll. Let me know how I can help you

@sant3001 I was using pager view v6.2.0 and fix I mentioned is https://github.com/callstack/react-native-pager-view/pull/734
This basically enabled me to swipe between tabs and also enabled vertical scrolling. Yours might be a different problem. Have you tried using the next version on IOS?

Thanks @samiullah452 I got tired of dealing with these version issues and patches, so I just used a basic implementation similar to what @hewad-mubariz did in their implementation of Wiggling cards (without the wiggling animations): https://github.com/hewad-mubariz/reactnative-50-days/blob/main/wiggling-cards/src/components/WigglingCards.tsx#L65

@sant3001 glad you found a way around.

Could you check, if this PR https://github.com/callstack/react-native-pager-view/pull/933 resolves this issue? Thank you 🙏


Run detection for samples after submit

Fixes
https://issues.redhat.com/browse/HAC-2697

Description
Run detection for samples after submit.

Type of change

[x] Feature
[ ] Bugfix
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Screen shots / Gifs for design review
https://user-images.githubusercontent.com/20013884/211789561-3f59936f-25c3-4784-b8cf-ba8baedc04b6.mp4

How to test or reproduce?
Add sample components.

Browser conformance:

[ ] Chrome
[x] Firefox
[ ] Safari
[ ] Edge

/lgtm
verified locally. works as expected

e2e tests passing locally


Use env placeholders for OIDC Client ID/Secret

Hi,
Not sure if this is plugin-specific behaviour or a Caddy limitation.
I would like to be able to template in the OIDC client ID and secret using {env.*} placeholders. This would prevent the secrets needing to be persisted to disk. Currently I have env vars set at runtime, but if I try to use an env placeholder, then the literal strings {env.OIDC_CLIENT_ID} is being used in the authorisation request to the OIDC provider, which rejects it for not being a known client id.
Configuration
Trimmed for brevity, only relevant directives shown
https://auth.example.com {
  route /auth* {
    auth_portal {
      backends {
        generic_oauth2_backend {
          method oauth2
          # These placeholders do not interpolate
          client_id {env.OIDC_CLIENT_ID}
          client_secret {env.OIDC_CLIENT_SECRET
        }
      }
      jwt {
        token_name access_token
        # This placeholder interpolates OK
        token_secret {env.OIDC_RESIGNING_SECRET}
      }
    }
  }

Version Information
Provide output of caddy list-modules -versions | grep auth below:
http.authentication.hashes.bcrypt v2.3.0
http.authentication.hashes.scrypt v2.3.0
http.authentication.providers.http_basic v2.3.0
http.authentication.providers.jwt v1.2.6
http.handlers.auth_portal v1.4.3
http.handlers.authentication v2.3.0

Expected behavior
Client ID/Secret should accept placeholders

@optiz0r , I will be working on it sometime next week.

Note: per conversation with @francislavoie, he recommends. Leaving it here for the reference.
I recommend checking out the caddy codebase and poking around, looking at how existing modules do it is the best way to go. Basically you're looking for places where ReplacerCtxKey is used. Basically the replacer is put in Context at the start of each request, and it can used to grab the replacer instance. Looks like this: repl := r.Context().Value(caddy.ReplacerCtxKey).(*caddy.Replacer)

{$ENV} only works for the Caddyfile, but {env.*} works for all config adapters

@optiz0r , have you tried using {$ENV}?

To be clear, what I was saying is that {$ENV} will work regardless of any changes to the codebase, because it's a feature implemented in the Caddyfile adapter: https://caddyserver.com/docs/caddyfile/concepts#environment-variables
The difference is that {$ENV} is replaced at Caddyfile adapt time, whereas {env.*} is replaced at runtime, but only if the module passes configuration values through the Replacer, i.e. the mechanism used to transform config placeholders into context-specific values. If this module doesn't use the replacer, then {env.*} will not work -- so replacer support needs to be implemented in this module for that to work.

@optiz0r , have you tried using {$ENV}?

I had not tried this, but just have and indeed it does work, thanks!

The difference is that {$ENV} is replaced at Caddyfile adapt time

In this case, this should be fine, as the values don't change once the process starts up (and if they ever do change, the container scheduler will trigger an explicit reload anyway).

@optiz0r , with the recent changes to configuration syntax, you would need to change.
https://auth.example.com {
  route /auth* {
    authp {
      backends {
        generic_oauth2_backend {
          method oauth2
          # These placeholders do not interpolate
          client_id {env.OIDC_CLIENT_ID}
          client_secret {env.OIDC_CLIENT_SECRET}
        }
      }
      crypto key sign-verify {env.OIDC_RESIGNING_SECRET}
    }
  }

FYI, @francislavoie gave me a few pointers on how to implement placeholders.
We will see how I can get them integrated.
client_id {env.OIDC_CLIENT_ID}
client_secret {env.OIDC_CLIENT_SECRET}
crypto key sign-verify {env.OIDC_RESIGNING_SECRET}

Need to add replacers in these places:

https://github.com/greenpau/caddy-auth-portal/blob/c3957cd0e8fa870a86f762783ee1ec11a4c85ab9/caddyfile.go#L292-L299
https://github.com/greenpau/caddy-auth-portal/blob/c3957cd0e8fa870a86f762783ee1ec11a4c85ab9/caddyfile.go#L239-L243
https://github.com/greenpau/caddy-auth-portal/blob/c3957cd0e8fa870a86f762783ee1ec11a4c85ab9/caddyfile.go#L173-L184

Additionally, need to add it here:
https://github.com/greenpau/caddy-auth-jwt/blob/9676ded0e0ca1b71c6b9470da146aeac50954227/caddyfile.go#L118-L129

This now resolved in https://github.com/greenpau/caddy-auth-portal/commit/f7970b46232ec7846b89dc6e50a8b697f16b1bcf


[REGRESSION] DateTime corruption?

DateTime causes problems.
The following code is self-explanatory: when ct is declared, the day and month return invalid values:
EDIT: Tested a previous version (also labelled 1.2.1) which does not have this problem. so this is a regression.
#include "RTClib.h"      // https://github.com/adafruit/RTClib
#include <Time.h>        // https://github.com/PaulStoffregen/Time
#include <Timezone.h>    // https://github.com/JChristensen/Timezone

// If you declare "DateTime ct;", both month (13) and day (140) are invalid:
//<PHONE_NUMBER> 2019-13-140 20:27:19

// If you UNCOMMENT "DateTime ct;" you get the following, which is correct:
//<PHONE_NUMBER> 2019-6-18 20:27:19
//DateTime ct;

void setup () {
  Serial.begin(115200);

  time_t nowTime =<PHONE_NUMBER>;

  Serial.print(nowTime);
  Serial.print(" ");
  Serial.print(year(nowTime));
  Serial.print("-");
  Serial.print(month(nowTime));
  Serial.print("-");
  Serial.print(day(nowTime));
  Serial.print(" ");
  Serial.print(hour(nowTime));
  Serial.print(":");
  Serial.print(minute(nowTime));
  Serial.print(":");
  Serial.println(second(nowTime));
}

void loop(){}

I could not reproduce the problem on Linux with Arduino 1.8.5, using the current master branch of each of the libraries involved:

RTClib: 5ddcf7c4d8aefa4286874426b158d7f3e0ec2b26 (Apr 13, 2019)
Time: d4fafb2 (Jun 11, 2019)
Timezone: a913400 (Nov 14, 2018)

Whether I include or not the line
DateTime ct;

I get the same result:
1560889639 2019-6-18 20:27:19

I used Arduino IDE 1.8.9 as well as 1.8.3 both on Windows (7 and XP) and deployed on a Pro Mini and a Nano, same results as mentioned. Also used the latest versions of RTClib, Time and Timezone (as you mentioned)

TL;DR, weird optimization bug.
This is a weird one. Here's what happens as far as I can tell:

RTClib.cpp defines daysInMonth as an array of bytes with the number of days in each month (31, 28, 31, 30, etc). This array is stored in PROGMEM.
Time.cpp also does this with monthDays. The two arrays are exactly the same. This array is not stored in PROGMEM.
The compiler sees two identical const arrays and helps us out by optimizing one away. It keeps the one in PROGMEM. Not sure if this is a bug or intentional.
monthDays somehow still works as long as the DateTime constructor hasn't run.
At run-time the default DateTime constructor calls pgm_read_byte. I don't know what happens here but something is modified and because monthDays is not accessed with pgm_read_byte it now gets the wrong data.

Workarounds:

Add a dummy value to the end of one array, e.g. static  const uint8_t monthDays[]={31,28,31,30,31,30,31,31,30,31,30,31,0}; The compiler now sees two different arrays and won't optimize it out. The code using monthDays knows there are only 12 months and doesn't mind the dummy value.
Store monthDays in PROGMEM.
Pretty much anything to fool the optimization, you could make monthDays local instead of global but then you're wasting some space. You can take daysInMonth out of PROGMEM and it'll work, they're optimized down to one array but now there's no PROGMEM access issue.

We could get rid of the array and instead use arithmetic expressions to convert between long day counts and (year, month day) triplets. For example:
--- a/RTClib.cpp
+++ b/RTClib.cpp
@@ -109,9 +109,7 @@
 static uint16_t date2days(uint16_t y, uint8_t m, uint8_t d) {
     if (y >= 2000)
         y -= 2000;
-    uint16_t days = d;
-    for (uint8_t i = 1; i < m; ++i)
-        days += pgm_read_byte(daysInMonth + i - 1);
+    uint16_t days = d + (m * 153 - 151 - (m>2) * 11) / 5;
     if (m > 2 && y % 4 == 0)
         ++days;
     return days + 365 * y + (y + 3) / 4 - 1;

This also does away with the loop over the months, but it requires a division, which is not cheap on the AVR-based boards. It may end up being slower than the loop-based solution: some tests would be needed to tell for sure. This solution has also the drawback of not being obviously correct at first sight.
A similar method can be used to remove the only other use of daysInMonth, in DateTime::DateTime(uint32_t t). That would remove two loops (over years and months) at the cost of three divisions (one in 32 bits and two in 16 bits).
Is this idea worth pursuing? I am not completely convinced, but if the maintainers think it is worth it, I could write it, test, and request a pull.

Maybe a simpler solution would be to remove the December slot from the array. It looks like it is not very useful.

Please open a PR @nobodyinperson and we'll merge this.

As I wrote before, the issue can also be fixed by removing rather than adding an item. I just submitted a pull request that does so: #125.


Prepare for code review and refactoring for new release v2.0

First of all, remove unneeded, redundant and crappy features :dancer:

The project survived WW2 and will survive WW3 - due to this, respect bro respect )))))))

woot woot and it will help our backups survive ww3! exciting flurry of activity this morning!!

:D I love you guys )
You make me forcefully hack again this already defeated east front.
Now comrades please prepare to fix extra shitty bugs )))))))

I think it is enough for 2.0 release as I am getting bored with refactoring )


Add image backend flag

flynn-host installer quits with error on /var/lib/docker being a btrfs formatted partition.
flynn-release download /etc/flynn/version.json
Downloading flynn/discoverd 933ce2c41a655a1b0d58ce6a621d9783050d0a40200526f1683eb337b87ba7b2...
main.go:52: backing file system is unsupported for this graph driver
2014/08/14 15:59:47 exit status 1

reinstallation with a ext4-reformated /var/lib/docker works as suspected.
platform: fresh ubu 14.04
kernel: 3.13.0-34-generic #60-Ubuntu
btrfs-tools                         3.12-1
aufs-tools                          1:3.2+20130722-1.1
flynn-host                          20140814.0~21bf97c0

We're moving away from Docker's image handling code, so this issue is moot.


Can't get license from RPM file

Hi:
I am unable to use the [] method to get the license string from RPM packages with licenses. For example: strace-4.8-4.3.x86_64.rpm (which you can get here: ftp://rpmfind.net/linux/opensuse/factory/repo/oss/suse/x86_64/strace-4.8-4.3.x86_64.rpm)
[joe@mawu:/tmp]% md5sum strace-4.8-4.3.x86_64.rpm
MD5 (strace-4.8-4.3.x86_64.rpm) = 63fc4a8049b7833d65255487b64256ac
[joe@mawu:/tmp]% irb
irb(main):001:0> require 'rubygems'
=> false
irb(main):002:0> require 'rpm'
=> true
irb(main):003:0> pkg = RPM::Package.open("strace-4.8-4.3.x86_64.rpm")
warning: strace-4.8-4.3.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 3dbdc284: NOKEY
=> #<RPM::Package:0x007f8f8c071bd8 @hdr=#<FFI::AutoPointer address=0x007f8f8b95be80>>
irb(main):004:0> pkg[:arch]
=> "x86_64"
irb(main):005:0> pkg[:name]
=> "strace"
irb(main):006:0> pkg[:license]
=> nil

Yet if I use rpm on the command line and queryformat:
[joe@mawu:/tmp]% rpm -q -p ./strace-4.8-4.3.x86_64.rpm --queryformat "%{LICENSE}\n"
warning: ./strace-4.8-4.3.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 3dbdc284: NOKEY
BSD-3-Clause

Same for other RPMs.
I am using rpm version:  RPM version <IP_ADDRESS>
Thanks

For some reason FFI is not working with the enum in symbol mode. It works with eg. :name but not with :license:
RPM::C.headerGet(ptr, :license, tagc, RPM::C::HEADERGET_MINMEM)
=> 0
RPM::C.headerGet(ptr, 1014, tagc, RPM::C::HEADERGET_MINMEM)
=> 1
RPM::C.rpmtdGetString(tagc)
=> "GPL"
RPM::C.headerGet(ptr, 1000, tagc, RPM::C::HEADERGET_MINMEM)
=> 1
RPM::C.rpmtdGetString(tagc)
=> "simple"
RPM::C.headerGet(ptr, :name, tagc, RPM::C::HEADERGET_MINMEM)
=> 1
RPM::C.rpmtdGetString(tagc)
=> "simple"


update to context

what

Update to context.tf.

why

In v0.19.0 the enabled var was added manually instead of via context.

references

Refs #56

I would really appreciate it if this PR could be tagged with hacktoberfest-accepted so it counts towards my Hacktoberfest PR's (since the repo isn't tagged with hacktoberfest)

/test all

Hi @syphernl
Looks good. I think you just need to move your readme updates into the README.yaml file

@syphernl not sure if you saw my last comment. Also I think we're avoiding using the upper bound on Terraform versions so it should just be ">= 0.12"

@syphernl disregard previous comment. Was thinking of another project, sorry!

@joe-niland Ah, that explains :)

I think we're currently avoiding using the upper bound on Terraform versions so it should just be ">= 0.12"
I added a PR against your branch for this.

Merged, thanks!

/test all

@syphernl thanks very much for your contribution. Released!


Pad allowance for Open Short

Add a little extra allowance to make up for minor discrepancy between sdk's calcOpenShort method and the contract's openShort method.
This fixes the issue where you can't open a short after approving a one-time allowance for that trade.
Note: We have a ticket for making the sdk and contracts at parity with each other, at which point we can remove this 1% padding: https://github.com/delvtech/hyperdrive/issues/894

Addresses #859


Can't deploy simple smart contract

Hi i am trying to complete this tutorial:
https://github.com/romanovichim/TonFunClessons_ru/blob/main/1lesson/firstlesson.md
I've run into a problem that I can't complete it for some reason
I asked the author:
https://github.com/romanovichim/TonFunClessons_ru/issues/1
he could not help in any way, he advised me to contact you
in addition, I can say that my computer had a problem with myLocalTON
this was due to the fact that AVX2 instructions are not supported on my processor, and it was successfully fixed:
https://github.com/neodiX42/MyLocalTon/commit/222900450d8b2ca3311e2941b44bae6115762500
I will duplicate here what the console outputs to me:
INFO: 👻 Your smart contract project [←[32mD:\PyCharm\ton_lesson1\wallet←[0m] is now going to be ←[32mdeployed←[0m, get ready!
INFO: 🌈 Start building:
INFO: 🌲 Func compiled
INFO: 🤗 Run tests on ←[36m['D:\\PyCharm\\ton_lesson1\\wallet\\fift\\data.fif']←[0m
[ 1][t 0][2022-05-10 14:35:31.9943753][fift-main.cpp:180]       Error interpreting standard preamble file `Fift.fif`: cannot locate file `Fift.fif`
Check that correct include path is set by -I or by FIFTPATH environment variable, or disable standard preamble by -n.
INFO: 🌲 Tests passed
INFO: 🥳 Start contract manipulation
[ 1][t 0][2022-05-10 14:35:32.0719421][fift-main.cpp:180]       Error interpreting standard preamble file `Fift.fif`: cannot locate file `Fift.fif`
Check that correct include path is set by -I or by FIFTPATH environment variable, or disable standard preamble by -n.
Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "D:\PyCharm\ton_lesson1\venv\Scripts\toncli.exe\__main__.py", line 7, in <module>
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\main.py", line 60, in main
    CommandsExecuter(command, string_kwargs, parser)
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\utils\commands\commands_executer.py", line 40, in __init__
    self.command_mapper[command](self)
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\utils\commands\commands_executer.py", line 71, in deploy_command
    return DeployCommand(self.string_kwargs, self.parser)
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\utils\commands\command_classes\deploy_command.py", line 17, in __init__
    deployer.publish(real_args[2:])
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\deploy_contract.py", line 86, in publish
    self.build(real_contracts)
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\abstract\deployer.py", line 107, in build
    data.append(contract_manipulation(os.path.abspath(contract.to_save_location),
  File "d:\pycharm\ton_lesson1\venv\lib\site-packages\toncli\modules\utils\fift\commands.py", line 94, in contract_manipulation
    output = subprocess.check_output(command, cwd=getcwd() if not cwd else cwd)
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 424, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['D:\\PyCharm\\toncli\\ton-win64-binaries\\fift.exe', '-I', 'C:\\Users\\user\\AppData\\Local\\toncli\\toncli\\fift-libs', '-s', 'C:\\Users\\user\\AppData\\Local\\Temp\\tmpsdh86lw6.boc', '']' returned non-zero exit status 2.

If it is not hard for you, will glad for help

Hi. To fix this problem on windows - copy all fift-lib content into project root.
Original issue: https://github.com/disintar/toncli/issues/14


Tag Categories descriptions are cut

This can also be validated in the sandbox https://sandbox.open-metadata.org/tags
Thanks

Taken care of in #9120


fix(sidebar): fix sidebar being stuck for mobile, again

apparently upgrading animate.css to 4.x was a breaking change and all of the classes have animate__ prefix before them: https://animate.style/#migration

:tada: This PR is included in version 0.45.8 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


AttributeError: 'ClientSecretCredential' object has no attribute 'signed_session'

Package Name: azure-identity
Package Version: 1.6.1
Package Name: azure-mgmt-resource
Package Version: 2.2.0
Operating System: Windows 10 Home 19042.1237
Python Version: 3.9.5

Describe the bug
After creating a resource management client, when trying to use it to return a list of resource groups (or similar code to create a new resource group), the code fails with an attribute error "'ClientSecretCredential' object has no attribute 'signed_session'."
To Reproduce
Steps to reproduce the behavior:

Define environment variables for a service principal with Contributor role to the Azure Basic subscription.
Run the code below.
Results in the error message: "AttributeError: 'ClientSecretCredential' object has no attribute 'signed_session'"

import os
from azure.mgmt.resource import ResourceManagementClient
from azure.identity import ClientSecretCredential

def main():
    SUBSCRIPTION_ID = os.environ.get("AZURE_SUBSCRIPTION_ID", None)
    tenant_id = os.environ["AZURE_TENANT_ID"]
    client_id = os.environ["AZURE_CLIENT_ID"]
    client_secret = os.environ["AZURE_CLIENT_SECRET"]
    credential = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)

    print("Create resource client...")
    resource_client = ResourceManagementClient(credential, SUBSCRIPTION_ID)
    print("Printing existing resource grouops:")
    for item in resource_client.resource_groups.list():
        print_item(item)

if __name__ == "__main__":
    main()

This code results in the following output:
Create resource client...
Printing existing resource grouops:
Traceback (most recent call last):
  File "C:\Users\db533\PycharmProjects\GunaBot2\azure-mgmt\azure_test3.py", line 20, in <module>
    main()
  File "C:\Users\db533\PycharmProjects\GunaBot2\azure-mgmt\azure_test3.py", line 16, in main
    for item in resource_client.resource_groups.list():
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\paging.py", line 143, in __next__
    self.advance_page()
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\paging.py", line 129, in advance_page
    self._response = self._get_next(self.next_link)
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\azure\mgmt\resource\resources\v2018_05_01\operations\resource_groups_operations.py", line 512, in internal_paging
    response = self._client.send(request, stream=False, **operation_config)
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\service_client.py", line 336, in send
    pipeline_response = self.config.pipeline.run(request, **kwargs)
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\pipeline\__init__.py", line 197, in run
    return first_node.send(pipeline_request, **kwargs)  # type: ignore
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\pipeline\__init__.py", line 150, in send
    response = self.next.send(request, **kwargs)
  File "C:\Users\db533\PycharmProjects\GunaBot2\venv\lib\site-packages\msrest\pipeline\requests.py", line 65, in send
    self._creds.signed_session(session)
AttributeError: 'ClientSecretCredential' object has no attribute 'signed_session'

Expected behavior
Expect the code to return the list of existing resource groups.
Screenshots
N/A
Additional context
Similar code has worked previously when I ran it in an Ubuntu (20.04) virtual machine, but I do not have access to this VM anymore. I'm now trying to run this code in a venv virtual environment in a PyCharm Community project, running PyCharm on a Windows 10 laptop (same laptop in which the Ubuntu VM was run). The same service principal was used when it worked on Ubuntu VM.

Thanks for your feedback.
azure-mgmt-resource 2.2.0 is track 1 library and it is not fully compatible with azure-identity.
You can upgrade azure-mgmt-resource to latest version or https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/migration_guide.md for migrations.
Please let us know if any questions.

Thanks for the quick response. Switching to azure-common credentials, as detailed in the link, did indeed fix the issue.


cant ftl from expeds early with all living humans on

Description
its meant to let you ftl early if all living humanoidappearance entities on the map are on the ship

Description
its meant to let you ftl early if all living humanoidappearance entities on the map are on the ship

you must've forgotten to let the skinwalkers in


Chat View History: display current conversation

Validations

[X] I believe this is a way to improve. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that requests the same enhancement

Problem
Currently, if I start a new Chat (Ctrl+L) and start talking with the LLM, and then click "View History", the current chat will not appear in the History. Only if I, for example, select a past chat and click View History again, will it appear on the top.
Solution
I think it would be more clear if history displayed not only past conversations, but also the latest created, ongoing conversation.

Yeah this definitely makes sense!
I'm marking this as good-first-issue on the chance that anyone finds it and is interested in contributing before we get to it, but I think this feels like a high bang to buck that we might fix in the next ~week
I think the best way of doing this is probably to auto-save the chat at the end of each message


Addition of database

Hey correct me if i am wrong i cannot find any sort of databse in you files...if you want i can add a database to your website

@ayush1009208 you can do so by Opening a PR.
we will be happy to review it

Ohhk assign this issue to me under hacktober tag...will submit the pr by the evening
And how shall I share the api keys?

Not sure what you mean by API here, according to the code the whole project is client side only

@ayush1009208 you don't need to share keys. Can you please explain what type of database you are trying to implement

I will firebase real time database

I meant to explain your full approach. BTW the following app is client-side there is no need of adding database now
You can wait until we switch over to server-side approach.

@ayush1009208 feel free to open a seperate Issue for the server-side application


[FX-4718] Remove deprecated props

FX-4718
Description
Removes deprecated props from TreeView.
There are no usages of the prop across the entire org.
How to test

Temploy
CI should pass, no other changes

Development checks

[x] Add changeset according to guidelines (if needed)
[x] Read CONTRIBUTING.md and Component API principles
[x] Make sure that additions and changes on the design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core
[x] Annotate all props in component with documentation
[x] Create examples for component
[x] Ensure that deployed demo has expected results and good examples
[x] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.
[x] Self reviewed
[x] Covered with tests (visual tests included)

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-anvil ping reviewers

@sashuk @mkrl should we merge this to master? or should we merge it as bulk for all depreciation removal?

@TomasSlama I think it is fine to merge to master


log_text freezes in my Django project

I have this piece of code in my Django project and 'start' is printed but I never see 'end'.
from google.cloud import logging
logging_client = logging.Client()
log_name = 'frontend'
logger = logging_client.logger(log_name)
print 'start'
print logger.project
logger.log_text('test')
print 'end'

Also, if I set
logging_client._use_grpc = False

~It won't freeze, but I don't see my log in stackdriver.~
It will work!
BTW, I also see this error in test cases but not in production env:
RetryError: GaxError(Exception occurred in retry method that was not classified as transient, caused by <_Rendezvous of RPC that terminated with (StatusCode.DEADLINE_EXCEEDED, Deadline Exceeded)>)

[UPDATE] It works fine locally, but when I deploy everything to kubenetes with Apache, I keep getting the same problem (log_text freezes).
[UPDATE] With logging_client._use_grpc = False, it just works for me on kubenetes. It seems the grpc call will just freeze.

Hi,
Has anyone looked into this problem? We really want to have this implemented but can't figure out the issue.

@waprin Can you take a look?

Friendly ping?

@hangll was largely away for a few weeks but I'm back today, will try to repro this in a bit.

It looks like #3088 might have been fixed (it is not clear to me whether it was fixed or closed as a duplicate).
@hangll If you are still having this issue, feel free to reopen this.


Competely clean reinstallations

Used portainer-ce for a while on a Debian 11 system for standalone docker containers.
After some troubles on the server (could not connect to local docker environmet) decided to reinstall the portainer:

stopped and deleted portainer container
removed images from local repo
removed volumes

But. On a new installation with the command
docker run -d -p <IP_ADDRESS>:8000:8000 -p <IP_ADDRESS>:9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.16.0
I had the same version of portainer-ce used previously (2.11) and the same password and login! No new admin password setup page  - only login form and my previous credentials appeared to be valid.
I have tried with different volumes, used system directories, cleaned browser cache, but somehow the configs are restored on a complete clean reinstall.

Portainer stores the configuration in the portainer_data volume, so removing that (docker volume rm portainer_data) should get rid of it from your system. We do retain some details in local storage of your browser as well, so it pays to clear that to be sure. But if the volume is removed properly and that volume is what is being used for Portainer's data directory, you'll get a clean install.


Units doesn't close on clicking Scale

If already open, the units pop up should close on clicking the scale.  Found when status-bar.spec.js started failing.

Workaround for test added to #735.  Be sure to update the test when fixing this.

I think this can now be closed.


Add Hanoi University of Science and Technology

@tranduchuy682 I am sorry, the domain hust.edu.vn is removed from our trusted domains list because the school allows to register an email address there even if you are not a student of the school. If you are the student of this school, please apply with official document (OFFICIAL DOCUMENT tab at https://www.jetbrains.com/shop/eform/students).


docs: Add animation lock to AbilityExtra

Adds animationLock and reorganizes the 264-line section to make more sense.
Also updated the ToC since I didn't do it last time. My fork was out of date

Did I do something wrong? I'm not sure why the test is failing.

Did I do something wrong? I'm not sure why the test is failing.

Ah, I see the issue (same reason I thought you manually added it -- the field is missing from the capture regex).  In AbilityExtra in netlog_defs, the firstOptionalField prop needs to be chanaged to:
firstOptionalField: undefined,
Otherwise, it treats the field as optional for capture regex, which is what's causing everything else to bark.  (Also, re-run the generate-log-guide script to pick up the regex and examples).  Should resolve it.

(Also, re-run the generate-log-guide script to pick up the regex and examples).

^
(Thanks & sorry about the various steps; we've tried to tighten up the various cross-references to avoid desyncs, but it does make LogGuide updates a little more involved than they used to be.)

@xpdota as soon as you re-run generate-log-guide this should be good to merge.


Jets 6 Jobs not being created

Checklist

[x] Upgrade Jets: Are you using the latest version of Jets? This allows Jets to fix issues fast. There's a jets upgrade command that makes this a simple task. There's also an Upgrading Guide: http://rubyonjets.com/docs/upgrading/
[x] Reproducibility: Are you reporting a bug others will be able to reproduce and not asking a question. If you're unsure or want to ask a question, do so on https://community.boltops.com
[ ] Code sample: Have you put together a code sample to reproduce the issue and make it available?  Code samples help speed up fixes dramatically. If it's an easily reproducible issue, then code samples are not needed. If you're unsure, please include a code sample.

My Environment

Software

Operating System
osx

Jets
6.0

Ruby
3.3.0

Expected Behaviour
When jobs are enabled via
config.job.enable = true in deploy.rb, the jobs in app/jobs/* will be deployed.
Current Behavior
After enabling jobs, none of the jobs in the app/job/directory have been created. This is using the latest rails 7.x, ruby 3.3.0, and jets 6.0
Step-by-step reproduction instructions
Create a rails/jets application.
Create a api endpoint
Deploy the api
add a job (active job) and enable jobs in the deploy.rb config.
deploy jets again.
Code Sample

Solution Suggestion

Do you have a sample application?
Is the event lambda and sqs being created?

Tried on a couple different apps unable to reproduce.

Thanks for taking a look. I'm gonna destroy everything then bring it back up to see if I can repro as well.
But no the sqs and lambdas are not being created.

Did you set ?
config.active_job.queue_adapter = :jets_job
https://docs.rubyonjets.com/docs/jobs/

@SteffanPerry Thanks for the report. Found some edge case issues with jobs. Will take a closer look soon. Just wanted to let you know so you don’t spin cycles.

The edge case issues should be fixed. Fixed in #727
For posterity:

Needed to deploy jets twice because the sql queue url was being set in the lambda function at build vs lazily at cfn deployed time.  So it was set upon the 2nd and future deploys, hence it wasn’t reproduced on the jets deployments with job enable. They’ve been running on production for over a month 🎉
It’s fixed now. The 1st deploy with job.enable will just work
You should also update to the latest jets-rails plugin
Lastly, jets jobs docs updated https://docs.rubyonjets.com/docs/jobs/enable/


Expand Travis CI for more coverage

Some tests have failed in another branch and PR. It'd be good to be
confirm whether those tests pass without that branch's changes.

The UBSAN issue looks like something in Boost.Test.  I have reported it.

Not much point in diagnosing the compiler error here; should disable the gcc 4.6 job in the .travis.yml file - that just leaves the UBSAN issue.

Closing this pull-request because it has now served its purpose of checking build failures.

I'll finish the update on my end - thanks.


Added BBoxDB to database list

Added BBoxDB to the list of databases.

Thanks! And good luck!

Thank you very much!


Backward compatibility for StreamConfig

@npawar Could you help review this. Thanks!

StremConfigTest is failing. Can you take care of that?

Fixing tests and added backward compatibility checks.

Codecov Report

Merging #3380 into master will increase coverage by 10.59%.
The diff coverage is 100%.

@@              Coverage Diff              @@
##             master    #3380       +/-   ##
=============================================
+ Coverage     60.22%   70.81%   +10.59%
  Complexity        4        4
=============================================
  Files           987      987
  Lines         45423    45429        +6
  Branches       6089     6090        +1
=============================================
+ Hits          27356    32171     +4815
+ Misses        16074    11138     -4936
- Partials       1993     2120      +127

Impacted Files
Coverage Δ
Complexity Δ

...kedin/pinot/core/realtime/stream/StreamConfig.java
99.31% <100%> (+0.02%)
0 <0> (ø)
:arrow_down:

...lix/EmptyBrokerOnlineOfflineStateModelFactory.java
86.66% <0%> (-13.34%)
0% <0%> (ø)

...nsport/netty/PooledNettyClientResourceManager.java
85.41% <0%> (-4.17%)
0% <0%> (ø)

...inot/transport/netty/NettyTCPClientConnection.java
82.31% <0%> (-3.41%)
0% <0%> (ø)

.../pinot/core/segment/index/SegmentMetadataImpl.java
81.56% <0%> (+0.34%)
0% <0%> (ø)
:arrow_down:

...ator/transform/function/BaseTransformFunction.java
29.95% <0%> (+0.42%)
0% <0%> (ø)
:arrow_down:

...ment/creator/impl/SegmentColumnarIndexCreator.java
88.76% <0%> (+0.74%)
0% <0%> (ø)
:arrow_down:

...r/transform/function/ValueInTransformFunction.java
39.2% <0%> (+0.8%)
0% <0%> (ø)
:arrow_down:

...com/linkedin/pinot/common/utils/ServiceStatus.java
70.73% <0%> (+0.81%)
0% <0%> (ø)
:arrow_down:

.../helix/core/realtime/SegmentCompletionManager.java
69.05% <0%> (+0.89%)
0% <0%> (ø)
:arrow_down:

... and 318 more

Continue to review full report at Codecov.

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


Synchronize the newly added spot right away

The project in the master branch can not detect the newly added spot, which means when a new spot is added in mastodon, sciview will not show it immediately. Then users need to restart the sciview to see the new spots.

The issue is fixed in the dev branch. It can show the new spots immediately.


#121: Auto-Save

This commit adds auto-saving functionality. This feature can be enabled / disabled, with a configurable interval.
There's also a small debug change to the server auto-start feature.

can you put it under administration, fo the rest it looks great.

Done.


sds: add validation callback for all secret providers

This adds an implementation of addValidationCallback for all secret providers. This is a no-op, unless the secret provider is a `CertificateValidationContextSdsApi.
Envoy crashes when trying to add a validation callback to CertificateValidationContextProvider due to a bad dynamic cast. When certificate_validation_context_provider_ isn't a CertificateValidationContextSdsApi, we no-op.
Fixes: #7892 and OSS-Fuzz Issue
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17001
Testing: add corpus entry
Signed-off-by: Asra Ali<EMAIL_ADDRESS>

@snowp @JimmyCYJ can you take a look and see if this lines up with the SDS intended behavior with respect to the config in the testcase?

/retest

@JimmyCYJ yes it is generated by oss-fuzz


Fix scrolling issue on mobile

fixed some scrolling issues on mobile and also added a simple plugin system.

 I think the easiest solution would be to create a new branch based on the current master and just copt and paste your changes on the library and do a separate commit and pull request with it.

 I think the easiest solution would be to create a new branch based on the current master and just copt and paste your changes on the library and do a separate commit and pull request with it.

So I guess this can be closed since he opened #50?


operators [N] [CI] k8gb (0.0.1)

Signed-off-by: Jirka Kremser<EMAIL_ADDRESS>Add k8gb operator. K8gb is a global load balancer, more info here:
https://k8gb.io
New Submissions

[x] Are you familiar with our contribution guidelines?
[x] Have you packaged and deployed your Operator for Operator Framework?

[x] Is your submission signed?
[x] Is operator icon set?

Updates to existing Operators
N/A
Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

/merge possible


Ubuntu 16.04 Xenial on C1: timeout on serial at startup

Created a fresh C1 server with Ubuntu 16.04 Xenial image.
On boot, timeout error is displayed when setting up ttyS0:
"Timed out waiting for dev-ttyS0.device" and "Dependency failed for Serial Getty on ttyS0" messages are displayed on console"
Installing udev (apt-get install udev) fixes the error.
Same issue as https://github.com/scaleway/image-debian/issues/61
Please add udev in Xenial Dockerfile

Hi @skimpax
Thanks for your feedback, it will be released at the beginning of the next week


Compare performance of the EdDSAPoseidon (and BabyJubjub) algorithm in JS and Rust in Node.js and browser

Description
There is an implementation of EdDSA with Poseidon and BabyJubjub in TS/JS: https://github.com/privacy-scaling-explorations/zk-kit/tree/main/packages/eddsa-poseidon.
There is no EdDSA Poseidon (and BabyJubjub) implementation in Rust yet. Once the issue (https://github.com/privacy-scaling-explorations/zk-kit.rust/issues/9) is closed as completed, there will be a crate for it on zk-kit.rust.
The idea of this issue is to compare the performance of this algorithm written in TS/JS and Rust (compiled to wasm) in Node.js and browser.
Resources
Guide to convert the Rust implementation to wasm: https://rustwasm.github.io/docs/book/
Library to create benchmarks in Node.js and browser: https://github.com/tinylibs/tinybench

So, just to clarify, this issue can't be picked up until https://github.com/privacy-scaling-explorations/zk-kit.rust/issues/9 is complete? Perhaps it would be worth my compiling the documentation for the TS/JS part in the interim, if that is of interest?

Hey @Some-of-the-things, what documentation do you mean?
https://github.com/privacy-scaling-explorations/zk-kit.rust/issues/9 is available as a good first issue again btw.

@cedoor I'd assumed that the result will need documenting to share findings. Thanks for the heads up: I'll take a look at that one...