Remove support for non-SSA code

regalloc2 was initially designed for SSA inputs only (with blockparams rather than the more usual phi-nodes).
In the course of porting Cranelift to use regalloc2, we decided to build a shim in regalloc.rs on top of regalloc2, and to make this work, we added support for non-SSA code. This includes:

Support for more than one def of a given vreg
Support for "mod" (modify) operands that read and then write a vreg
More efficient support for move instructions, which are used heavily by Cranelift to lower phis internally before passing code to regalloc

Once we adapt Cranelift's backends to pass SSA to regalloc2 directly instead of using the regalloc.rs API (which will be a significant effort on its own), we will be able to remove this functionality and simplify the code in various places, mostly in liverange computation and in move-generation. We should verify that we obtain equivalent code quality without the move coalescing in particular.

The readme mentions that regalloc2 supports both SSA and non-SSA. Is it still planned to eventually remove non-SSA in the future? If so, adding a warning to the readme so people don't depend on that feature might be good.

Yes, it's still the plan -- with a little more urgency lately as we've realized that there are some performance improvements that would be possible if we accept SSA only (basically, better liverange splitting logic by allowing overlap of liveranges for a VReg). We need to resolve the remaining non-SSA cases in Cranelift first and then we're likely to do this. I'll add a note in the README, thanks!


rabbitmq: move from streadway/amqp to rabbitmq/amqp091-go

The github.com/streadway/amqp library is no longer actively maintained. The new libary is now maintained by the RabbitMQ core team under a different package name github.com/rabbitmq/amqp091-go.
Checklist

[x] When introducing a new scaler, I agree with the scaling governance policy
[x] I have verified that my change is according to the deprecations & breaking changes policy
[x] Tests have been added
[x] Changelog has been updated and is aligned with our changelog requirements
[x] A PR is opened to update our Helm chart (repo) (if applicable, ie. when deployment manifests are modified)
[x] A PR is opened to update the documentation on (repo) (if applicable)
[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)

/run-e2e rabbit*


Caching Data (ex: post categories)

When using PostgREST, how would I go about caching the data? Due to the amount of categories (8,000), it can take awhile for the PostgREST endpoint to finish loading.

8k records is no big deal for the db/postgrest (unless there are a lot of columns and json encoding takes time). I think your problem is that it takes a while to send that data over the network so in this case, cache on the server side won't help.
But to answer your question, you would cache the response in front of postgrest using the proxy (nginx/openresty)

You bring up a good point. I'm searching for the issue but can't find it...perhaps I never made an issue for this.
Postgrest currently doesn't provide a way to add http caching response headers. A workaround is to add them for certain routes with nginx on top of your server.
In the long run we could consider having a separate metadata table like this:
create table cache_lookup (
  relation regclass primary key,
  etag regproc,
  max_age regproc,
  last_modified regproc
);

When a request comes in postgrest would check if there's a matching relation in cache_lookup for the table/view specified by the client. If it finds a row and any of the other columns are not NULL, postgrest would call the stored procedures they reference to obtain values for those headers.

I was able to implement caching with custom logic in nginx using a combination of
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_path
and
https://github.com/cloudflare/lua-upstream-cache-nginx-module


README has broken link to UIImageView+PINRemoteImage

In the README, there is a link to UIImageView+PINRemoteImage.  I believe this has to do with the category being changed to PINImageView+PINRemoteImage.h

Addressed with #147, thanks!


Support for official wifi USB plug

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
https://pt.aliexpress.com/item/1005003231633440.html?spm=a2g0o.order_list.order_list_main.5.4426caa4cG0Xmp&gatewayAdapt=glo2bra
This is suposed to be MUST oficial wifi device.
SMART ESS is really poor as management and monitoring app.
Home Assistant should be better to monitor device
Describe the solution you'd like
Set  host and port to use this adapter to monitor MUST PV-1800 over wifi
Home Assistant should be better to monitor device
Describe alternatives you've considered
SMART ESS APP is working fine
Additional context
If remote access is needed to this device over internet, i can arrange a NAT to ip address of developer to conect it.

@alessandrokornowski hello fellow Brazilian! The AliExpress description says it's a Modbus-TCP, so it should work with the current version of the integration, you just need to figure out its IP address and port.

HI everyone
The wifi dongle of the inverters must only communicate with the cloud service www.shinemonitor.com
it is not possible to intercept modbus messages locally. The option for those of us who have this dongle and the inverter far from the home assistant equipment is to read the information that the WiFi dongle sends every 5 minutes to the cloud service
Here is an option that works well, changing some parameters, it would be very good to add the "online" option
I am not very good at programming but I have found how to make it work so that it extracts the data from the web page
To do this, the following data is needed, which is taken from the website:
Shinemonitor settings
base_url = 'http://android.shinemonitor.com/public/'
usr = ''  # Username
pwd = ''  # Password
company_key = ''  # Company key. Obtained from portal
plant_id = ''  # Plant id (Power station ID). Obtained from portal.
pn = ''  # Datalogger PN number. Obtained from portal
sn = ''  # Device serial number. Obtained from portal
devcode = ''  # Device coding. Obtained from portal
https://github.com/itsmariodias/shinemonitor-reporter-mqtt

http:// http://web.shinemonitor.com/public web page send JSON like this:
{"err":0,"desc":"ERR_NONE","dat":[{"title":"id","val":"7710e23aa1c51deb43c4df617e6eb472"},{"title":"Timestamp","val":"2024-05-23 08:38:51"},{"title":"Battery Voltage","unit":"V","val":"48.3"},{"title":"PV Voltage","unit":"V","val":"52.2"},{"title":"Inverter Voltage","unit":"V","val":"225.0"},{"title":"Batt Current","unit":"A","val":"0"},{"title":"Charger Current","unit":"A","val":"0.1"},{"title":"Charger Power","unit":"W","val":"10"},{"title":"PLoad","unit":"W","val":"192"},{"title":"PGrid","unit":"W","val":"-203"},{"title":"work state","val":"Grid-Tie"},{"title":"rated power","unit":"W","val":"5500"},{"title":"Grid Voltage","unit":"V","val":"227.2"},{"title":"PInverter","unit":"W","val":"0"},{"title":"Accumulated Sell Power","unit":"kWh","val":"0"},{"title":"Accumulated Load Power","unit":"kWh","val":"11087"},{"title":"Accumulated Self_Use Power","unit":"kWh","val":"3001"},{"title":"charger work enable","val":"ON"},{"title":"Accumulated PV Power","unit":"kWh","val":"4194.70"}]}

Hi @youmax01
I´ve been trying for some time port scan Dongle IP address and find no udp or tcp port opened, so that´s why @mukaschultze didnt worked.
I´m wondering how SmartESS installed on cel phone is able to discover wifi device on LAN. For this some port should be open to discover it. nmap and fing didn´t found any open port on dongle.
By the way... SmartESS user and password that is in use on my cel phone and correctly monitoring inverter is not known by shinemonitor.com portal.
Is needed to change some dongle option to use shinemonitor instead of SmartESS backend?

Hi @youmax01 I´ve been trying for some time port scan Dongle IP address and find no udp or tcp port opened, so that´s why @mukaschultze didnt worked. I´m wondering how SmartESS installed on cel phone is able to discover wifi device on LAN. For this some port should be open to discover it. nmap and fing didn´t found any open port on dongle.
By the way... SmartESS user and password that is in use on my cel phone and correctly monitoring inverter is not known by shinemonitor.com portal. Is needed to change some dongle option to use shinemonitor instead of SmartESS backend?

Hi Alessandro
The wifi dongle only connects to the shinemonitor server, and the application takes the data from there, not from the dongle.
You can test by disabling internet connectivity, it should not work at all
The first configuration that the app makes towards the dongle is only to register it in the Wi-Fi network and add the serial number of the dongle to the shinemonitor server.
The only option is to take the data from there in online mode.
From what I was able to investigate, the server does a handshake with the dongle, without that the device does not start transmitting the data

another good option is with ESPHOME , ESP32 board + rs485 board, read the data and sent to mqtt to home assistant wireless

@youmax01 wonder if you have some article or video which describe how this can be done in details for some newbies

another good option is with ESPHOME , ESP32 board + rs485 board, read the data and sent to mqtt to home assistant wireless

Why use RS485 ? Must inverter have USB Type-B (RS232) communication port.
I think it is possible to use esp8266 + uart-to-usb ?

@LionBS76 both the USB and the RS485 ports use modbus as the communication protocol, so the layout you're thinking should work just fine.

another good option is with ESPHOME , ESP32 board + rs485 board, read the data and sent to mqtt to home assistant wireless

Why use RS485 ? Must inverter have USB Type-B (RS232) communication port. I think it is possible to use esp8266 + uart-to-usb ?

but you'd still have to convert RS232 to ttl right? so that'd be pretty much the same layout as with RS485

@LionBS76 both the USB and the RS485 ports use modbus as the communication protocol, so the layout you're thinking should work just fine.

Is the MQTT broker the only way to feed data from ESP into HA or this integration also can receive data from ESP and feed it to HA? Thanks!

Is the MQTT broker the only way to feed data from ESP into HA or this integration also can receive data from ESP and feed it to HA? Thanks!

This integration has nothing to do with MQTT or ESP32. That said, it'll work with anything that provides a Modbus connection via TCP, UDP, or USB. See my comment on this other issue: https://github.com/mukaschultze/ha-must-inverter/issues/36#issuecomment-2219485816


how can we save the audio blob into a folder?

Hi Bernardo, how are you?
The audio blob can be saved if you use run the server example here: https://github.com/bryanjenningz/record-audio/tree/master/record-server-example
If you want to choose a specific folder, you'll have to change your download folder by going into your browser's settings.
There's also a new API for allowing users to choose which folder they want to download files to, but it's not stabilized yet and only works in Chrome, Edge, and Opera (https://developer.mozilla.org/en-US/docs/Web/API/Window/showDirectoryPicker).
Let me know if you still have any questions about how to run the server example or if you have other questions.

I'm going to close this issue since it's not active but feel free to re-open it or comment if you still have any questions.


Bug: LTC4274_EVENT values incorrectly assigned

Product: (OC-SDR, OC-LTE, OC-LTE, OC-Power, others)
OC-SDR
Category: (Hardware, Software/stack, Firmware/bootloader, Documentation)
Software/stack
Description
Describe the issue found
Typedef for LTC4274_EVENT is incorrect.
The typdef uses 9 bits, while the defined register is only 8. The first value (LTC4274_EVT_NONE) should be 0 instead of 1, and all other values should be shifted by 1 less, as shown by the datasheet image below:

Please provide all necessary steps to reproduce the issue
Interrupt values are incorrectly assigned in ltc4274.h. This makes switch statements unreachable in ltc4274.c and incorrect events will be logged.

Fixed by merge of #107.


Jesse: Watch bodyflanges.com

Jesse requests the watch of the watch_keyword bodyflanges\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

bodyflanges\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Nisse Engström in Charcoal HQ


Fix for Ifinfomsg

@marcelbuesing I made one addition to your PR and rebased it. Take a look and let me know if you want to discuss anything else before I merge. Upon further reflection, convenience methods for commonly generated packets may make this library a whole lot more usable. Thank you for your contribution!

Looks good to me !

I've changed the target to 0.5.0 so I'm removing the new2 method in favor of changing the new method. Merging.


feat: Hydration when Transition with v-if

close #5991
feat: Hydration when Transition with v-if

Preview


[WFLY-5263] Make the JSR77 mbean server plugin filter queryMBeans()

https://issues.jboss.org/browse/WFLY-5263

Linux Build 7989 is now running using a merge of decdabf9ec49462f1eeb02db96ea42279ef6dcbd

Windows Build 3028 is now running using a merge of decdabf9ec49462f1eeb02db96ea42279ef6dcbd

This change isn't ready to merge yet

Why not?

NPE at org.jboss.as.jsr77.managedobject.ManagedObjectHandlerRegistry.queryNames(ManagedObjectHandlerRegistry.java:81) running the JSR77 TCK...

Kabir said he was going to look at the NPE in the morning

I have worked around the NPE, but let's see what Scott says


Coordinates are off

Hi, the coordinates for the scoreboard is off by -1 for X and Z coordinates on the scoreboard, I'm using on 1.15.2, anyway to fix this?

Well that shouldn't happen because i am using Bukkit API direct methods.. maybe its a number round?


Update README.md

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=ru
Description of changes:

An unexpected error has occurred, could you please contact admins. Your RequestID: 8692b7e9-2413-4346-897d-8e0336e1084b


New lines around a property outputs [object Object] rather than the html

{this.props.children}

    {this.props.children}

(other than React templates are great!)

Fixed... and added a test so it won't break in the future.
Will publish in a couple of days

Nice one.
I'll give it a go as soon as it's pushed.
Cheers

Ah, thanks, I got into this problem and thought that using {this.props.children} was something ReactTemplates didn't support


Community tracking of objectives & key results (OKRs)

This pull request introduces a system for open planning of community-wide objectives and key results (OKRs) by laying out steps for discussing, finalizing, and tracking OKRs.
When no one is in charge, everyone is in charge. In order to facilitate this at a global scale, this pull request establishes standards and infrastructure to support the nano community operating as an asynchronous and distributed organization.
Community-wide objectives and key results are planned in the open by starting a new GitHub discussion. In these discussions, everyone can weigh in to help refine the objectives and key results until they are:

Specific [needs description]
Time-bound [needs description]
Measurable [needs description]
Verifiable [needs description]

OKRs will be finalized through pull requests that update docs/OKRs.md. Once merged, repo maintainers may convert related GitHub discussions to GitHub issues (and/or create related sub-issues), that people can volunteer to take on. Issues related to finalized OKRs should be labeled YEAR/QUARTER.
[describe how OKRs are assigned]
Each individual should not take anymore than two priority/critical items (unless they are quite small tasks).
OKR Lifecycle

Introduced via GitHub discussions
Finalized via git by updating docs/OKRs.md
Specific issues & pull requests are created to track tasks related to finalized OKRs
Issues are assigned to volunteers

Issue & Discussion Label Management
An issue should be opened for anything specific, while discussions should be used for anything broad. All new issues & discussions will be labeled need/triage. Repo maintainers will ensure each issue & discussion has a priority, kind, and need label before removing the need/triage label.
Labels
Why git and GitHub

Version control
Public API (easy access and distribution)
Easily forked

PR Todo

[ ] issue template
[ ] community code of conduct
[ ] create labels
[ ] script to mange triage label
[ ] update docs/contributing.md

Proposition for objective characteristics:

Specific: Objective description must be clear. Description must include what is expected, what will be done, where and by whom. Anyone reading the description can understand.
Time-bound: Objective must have a timeline/deadline.
Measurable: Objective's progress must be quantifiable. Description must state what will be the means used to measure/quantify the progress.
Verifiable: Once the deadline is reached it should be possible to determine whether the objective has been achieved or not.

@npesc thoughts on displaying OKRs and related tracker issues on the roadmap page (https://nano.community/design/roadmap)?

@npesc thoughts on displaying OKRs and related tracker issues on the roadmap page (https://nano.community/design/roadmap)?

@mistakia
Makes sense. However we should mention that OKRs and issues are community driven since it's one of the community program's objectives. Perhaps renaming the page to something like "Upcoming" with it having two main subsections "Roadmap" and "Community objectives" can help nuance the ideas.

This PR is ready for an initial review and has the basic functionality needed for an initial release, even in its incomplete form it is more useful than the existing placeholder "roadmap" page.
Follow-up / Remaining Tasks

[ ] Determine how OKRs are assigned
[ ] Determine how proposed OKRs are finalized and adopted
[ ] Determine who grades & reviews previously finalized OKRs
[ ] Add a section for guidelines on proposing OKRS to CONTRIBUTING.md

Release Tasks

[ ] Finalize initial set of labels (reach out to community for feedback)
[ ] Create new labels on github & remove "old" labels
[ ] Apply labels to existing issues & discussions
[ ] Setup cron job for importing discussions
[ ] Setup cron job for importing issues
[ ] Review and update existing discussion title and bodies (e.g. Dashboard / Homepage should be updated to a clear and concise objective)

Some half-baked thoughts on how proposed objectives could be finalized and adopted:
For the purpose of an open system of categorizing/labeling community posts (reddit, discord, forum, etc), I've been toying with the idea of nano-linked accounts. It's a public-private key pair signed by the private key of an existing nano account. The signing would ideally happen directly in wallets people are already using (nault, natrium) so no additional exposure of the private key is created. This signed public-private key pair could be loaded into nano.community for the purpose of signing user actions like voting for (or against) a label for a certain post. These signed actions along with the linked nano account data (balance, age, etc) could be used to make display decisions. The idea is that the collective financial incentive to act in the best interest of their holdings will provide moderation of an open system.
A similar approach could be used to allow community members to sign a vote for a proposed objective (and sign an amount to pledge to those who contribute to its completion). These votes can then be used to adopt proposed objectives.
Being that nano-linked accounts could be a blocker of other features, I'm going to shift some of my focus on a basic initial design to build & trial.


How to get the user details

How to get the user details from the code returned by apple?

Check this https://dev.to/heyitsarpit/how-to-add-signin-with-apple-on-your-website-43m9
The below function is how we start the apple authentication workflow. It will open a popup window where a user will be asked to input their apple email and password.
After a successful login apple will send a response object with user data that we can store in our backend.

NOTE

The user object is only sent the first time a user logs in, the rest of the times apple will only send the authorization object.


Migration guide implies compatibility with getInitialProps

Point 5 of migration guide:

Add to getServerSideProps or getInitialProps in the return as props ...(await serverSideTranslations(locale, [<YOUR_NAMESPACES>])).

This implies that it will work on getInitialProps, but it doesn't.
It probably should be

getServerSideProps or getStaticProps,

as per https://github.com/isaachinman/next-i18next#serversidetranslations

Hi @MonstraG,
yes, that's a typo that cost me hours of debugging as well. After reading through lots of issues it was clear to me that I cannot upgrade to 8.x because of that.

(...) next-i18next does not support getInitialProps and doesn't have control over NextJs internals, so issue should actually be placed on the main NextJs repo. (src)

(...) Not sure what your question is exactly, but you should not be using getInitialProps. (...) (src)

We can't use it in all our apps anymore, mainly because of they dropped the support for getInitialProps now.

(...) Using serverSideTranslations is mandatory for all pages. (...) (src)

Great catch, and sorry about that. @MonstraG @natterstefan Would either of you be willing to open a quick PR?

Great catch, and sorry about that. @MonstraG @natterstefan Would either of you be willing to open a quick PR?

Sure, I'll when I'm back at work or later today. 👍🏻

Guys, I can't screw your package next-i18next! Me project is large and it doesn't work out of the file _app.js  getInitialProps, there are a lot of logs written there. Is it possible to get around this somehow? can screw the package react-i18next? or is it a crutch? or do you still need to rewrite the project without getInitialProps?

Guys, I can't screw your package next-i18next! Me project is large and it doesn't work out of the file _app.js getInitialProps, there are a lot of logs written there. Is it possible to get around this somehow? can screw the package react-i18next? or is it a crutch? or do you still need to rewrite the project without getInitialProps?

You have 2 options:

rewrite the whole application without getInitialProps
downgrade to v7.0.1 of next-i18next

Guys, I can't screw your package next-i18next! Me project is large and it doesn't work out of the file _app.js getInitialProps, there are a lot of logs written there. Is it possible to get around this somehow? can screw the package react-i18next? or is it a crutch? or do you still need to rewrite the project without getInitialProps?

You have 2 options:
1. rewrite the whole application without getInitialProps

2. downgrade to v7.0.1 of next-i18next (this is a valid approach, we have an application in production that stays on 7 for, it seems, well, ever)

Thank you!


Add files via upload

Pull request to extend the plugin for optional Opt-In and Opt-Out functianlity. Users should have a possibilty to block or allow the cookies.

I‘ll test that and merge it


Updated tags

Sorry for the delay!

Could I possibly added as a colab so I could approve pulls like this one? Thanks for your work!


Handle keys of array fields correctly when they are of number type

Fixes #267

This PR should be closed as @louischatriot already incorporated the code changes long ago into<EMAIL_ADDRESS>as mentioned in Issue #267.


structs.Map return empty map

test := &commonlyUsedRedisTable{protocol: "test", status: "test"}
m := structs.Map(test)
fmt.Println(m)

   print: map[]

The first example shows unexported fields are not included in the map.

Close this issue?


better support for wide tables (fixed table header)

https://github.com/simonw/datasette/issues/596
There are a few things in the linked issue, this ticket is about having a fixed table header on the table page

A trick: position: sticky is incompatible with ancestor elements who have overflow: hidden.
https://uxdesign.cc/position-stuck-96c9f55d9526 is a workaround.
I think it requires explicit sizing of the columns, which is unfortunate. Possible workaround: render as a table, inspect the actual sizes of things, then inject CSS that adds explicit sizes and possibly changes from display: table-* to display: block or what-have-you.

https://medium.com/neocoast/fixing-a-table-header-on-a-horizontally-scrolling-table-de3364610957 describes a solution that requires JS but works for tables


changed column 'county' to 'county_name' for virginia data files

Note that empty data for this column for 2012 and 2014 are likely due to different data source.

Thanks @timination!


regen

Looks good for me, thanks

:+1:

Failures are the usual ones so I'll just merge.

Is a regen also needed for gio or any of the other crates, or did this really only affect gtk?

For all others repositories, it affected only commented functions. So I didn't open PRs for them.


Requesting to submit an Upload file request without supplying a file name causes a Premature End of File SAXException

Closed OpenESPI-Common-java repository commit https://github.com/energyos/OpenESPI-Common-java/pull/255 and OpenESPI-DataCustodian-java repository commit https://github.com/energyos/OpenESPI-DataCustodian-java/pull/236


[Bug] download_ckpt.py don't work properly

I run the download_ckpt.py script as instruction says and get unchanged error Error downloading checkpoint: HTTP Error 403: Forbidden.
It seems there is a wrong implement for getting the large weight files on huggingface repo via urllib. please check and fix.
all output pasted below:

@Dustinpro

The link is valid as I just verified. Maybe you are in the region where Hugging Face is blocked.

The link is valid as I just verified. Maybe you are in the region where Hugging Face is blocked.

yes, the link is valid, but missing header info in script cause the 403 problem.
I manually add the header and use req = urllib.request.Request(url=xxx,header=xxx) and replace the url to req in urlopen, this issue can solved.


build: 3.8.5

Q
A

Bug fix?
n

New feature?
y

BC breaks?
n

Deprecations?
n

Fixed tickets
n

Add content type api support

My mistake, I pushed directly in dev. Sorry


Migrated project to use node-oauth2-server ^3.0.0-b2

Migrated project to use node-oauth2-server ^3.0.0-b2. Updated model and app, as well as ReadMe.

Nice! I'm merging your changes, but detected some problems. I will commit my corrections later.
Thanks!


Delete collection row should not require a array of objects, only an array of strings.

This looks correct, do a test call.


New rule no-return-await

PR checklist

[ ] Addresses an existing issue: #0000
[x] New feature, bugfix, or enhancement

[x] Includes tests

[x] Documentation update

Overview of change:
Is there anything you'd like reviewers to focus on?

CHANGELOG.md entry:
[new-rule] no-return-await

👎 to include this rule by default to latest. I don't want to spend hours to debug why my try-catch doesn't work some time later (or another colleague in my team). Just because I forgot to insert missed await. i.e. when you modify your code and this return statement will be not latest in the function body.

Just because I forgot to insert missed await

@develar that sounds like the job of another lint rule -- check out no-floating-promises


NCDA - Remove the counseling part on the question "Is the mother or the child beneficiary of cash transfer"

Issue
On the question "Is the mother or the child beneficiary of cash transfer e.g. NSDS, VUP?" when the answer is no they are not beneficiaries there are should not be counseling.
Todo
Remove the counseling on the answer no

NCDA is on live for few months. Closing.


Forget the sketch window position after restarting

"yesterday in class (Windows OS) I had 2 students who hat their sketch windows placed outside the visible screen for some reason. I managed to bring it back but it was very hard. I wonder how could we avoid this. Should perhaps Thonny forget the sketch window position after restarting?"

Cheers @tabreturn, this issue is still plaguing some students, in the most recent Windows versions I found it even harder to bring the window back on screen. O some situations it is possible to change the screen resolution to help, but not always...


support the Chinese language in json string

new version doesn't support the Chinese language in json string, I has been fixed. please see the attachment.

There is no attachment.
The library does support UTF-8, so Chinese characters should not be a problem. Can you provide an example?

{"authority":0,"category":6,"category_id":"0","delete_by":"","delete_time":"","ext":"","ext_link":0,"is_delete":0,"is_file":0,"is_share":0,"lv_creator":"","lv_id":1,"lv_size":0,"lv_time":"","name":"回收站","x_id":6,"x_pid":1}

What is the error message and how does the code look like that produces this error message?

error occured in the function get_token() when parse the Chinese string

can you find my attachment in this topic, I didn't find it.

This code works for me:
#include <json.hpp>
#include <iostream>
using json = nlohmann::json;

int main()
{
    std::string s = R"({"authority":1,"category":6,"category_id":"0","delete_by":"","delete_time":"","ext":"","ext_link":0,"is_delete":0,"is_file":0,"is_share":0,"lv_creator":"","lv_id":1,"lv_size":0,"lv_time":"","name":"回收站","x_id":6,"x_pid":1})";
    json j = json::parse(s);
    std::cout << std::setw(2) << j << std::endl;
}

What is the error message and how does the code look like that produces this error message?

test code is as below:
CString strText;
m_oJsonView.GetWindowTextW(strText);
std::string szJson = ToSTR(strText);
json j3 = json::parse(szJson);

Can you make sure the content of szJson is exactly the one from https://github.com/nlohmann/json/issues/694#issuecomment-321780677 ?
What is the error message?

(You seem to copy the string from window text into a CString variable. Maybe the string is encoded as UTF-16 or UTF-32? The library only supports UTF-8.)

I used VS2015 and the charset I used is unicode.

Which Unicode? The library only supports UTF-8.

@josephsmeng I convert CString to std::string by my funciton ToSTR, do you see it?
std::string ToSTR(CString cs)
{
std::string sstring = "";
if(cs.GetLength() == 0)
return sstring;
BSTR bstr = cs.AllocSysString();
_bstr_t bstr_t(bstr);
sstring.append(bstr_t);
SysFreeString(bstr);

return sstring;

}

@nlohmann you are just so nice, let the young man google his problem, and lean some thing about Unicode ....

when I create a new project by VS2015, the default charset is Unicode.  you can find it in VS as below
solution->property->config property->normal->charset

"Unicode" describes a family of encodings. For this library, the string you pass to parse needs to be UTF-8 encoded. UTF-16 or UTF-32 are not supported.

got it, thank you nlohmann.
you are great~~

你可以从这里开始 http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html，
你的问题其实只需要把UTF-16编码的字符串转换成UTF-8的，
我只告诉你到这里，你需要再自己学习一下字符串编码相关的知识，这是很基础的问题。

呵呵，我不喜欢在编码上浪费时间。
我只修改了json.hpp几行代码，就完全可以支持中文了，你觉得还有必要转换编码么？

你高兴就好啦😄😄😄

@yuanhui2015

when I create a new project by VS2015, the default charset is Unicode. you can find it in VS as below
solution->property->config property->normal->charset

this setting is not meaning your program character is UTF-8. It means the windows library function will use Unicode version funciton, such as SetWindowTextA() and SetWindowTextW(). When you use "Use Unicode Character Set", the unicode function - SetWindowTextW will be call finally, not SetWindowTextA.

呵呵，我不喜欢在编码上浪费时间。 我只修改了json.hpp几行代码，就完全可以支持中文了，你觉得还有必要转换编码么？

老哥怎么解决中文的问题的？能说一下吗？

呵呵，我不喜欢在编码上浪费时间。 我只修改了json.hpp几行代码，就完全可以支持中文了，你觉得还有必要转换编码么？

老哥怎么解决中文的问题的？能说一下吗？

不建议直接改代码，可以看看我之前在类似问题的解决方向：https://github.com/nlohmann/json/issues/1022

好的，谢谢老哥

In Qt project, you can use
ui->lineEdit->text().toUtf8().data() to get a value
and use
ui->textEdit->setText(QString::fromUtf8(j.dump(4).c_str()));
to set this text

1、确保windows中源文件（visual studio中）都是utf-8 with bom格式；
2、确保vs---项目属性---c/c++---命令行 ：其他选项 中有  /utf-8；
至此，json可实现正常解析，保存到文件不会乱码，但是打印到控制台仍然乱码，是因为控制台默认编码方式是936 GBK，要想解决，有两种方法：
a、写一个U2G函数，把UTF-8转换为GBK，打印到控制台不乱码；
b、https://blog.csdn.net/weixin_45265547/article/details/121931397 参考这个，把控制台默认编码方式改为UTF-8，这种方式不建议，因为windows上默认都是GBK输出，改了后其他工程可能会乱码；
综上，nlohmann在源码中应该考虑windows环境下输出到控制台时做U2G转换，不过考虑开源不易，期待有朋友提pr改一下~

The library only supports UTF-8.

The library only supports UTF-8.

Yes, so let the users solve other encoding problems themselves ^.^


[react-i18n] Add ability to supply inline fallback for i18n.translate

Overview
We would like to translate ENUM from server, and do so dynamically with interpolating, e.g.,:
i18n.translate(`SomeComponent.someConcept.${serverProvidedEnum}`)

This would raise if a new serverProvidedEnum is introduced, which will cause the app to stop working.  1 workaround is to wrap in try/catch, but it feels like there could be a nicer API.
@TheMallen mentions some alternative approaches at
https://discourse.shopify.io/t/provide-an-inline-fallback-translation-for-react-i18n-translate-calls/5279/2
However, they are still a bit more cumbersome than what we desire, which is closer to something like this:
i18n.translate(serverProvidedEnum, {
  scope: 'SomeComponent.someConcept',
  default: i18n.translate(...) // my default string for when the key is not found
})

Here, default could also be named fallback

I don't think that the getTranslationTree approach ends up being all that clunky. In the example above it would just be:
const translations = i18n.getTranslationKey('SomeComponent.someConcept');

// later ...

<MySubComponent content={translations[someVariable] || translations.unknown}/>

Given the flexibility that API already gives and the relative rarity of the case I'm not sure it's worth adding an API.
That said, if it was going to be it's own API like this than  I'd rather see something like fallbackKey instead of default or fallback because it would enforce looking in the same scope, be less prone to having inlined string literals put in (thus breaking translatability) and not need another relatively costly traversal of all the different translation trees.
i18n.translate(serverProvidedEnum, {
  scope: 'SomeComponent.someConcept',
  fallbackKey: 'florpus',  // ends up as the value of `SomeComponent.someConcept.florpus`
})

I'm curious to hear other devs who use the API often's thoughts.

I like the concept of fallbackKey a lot
I think you're right, getTranslationTree isn't too bad (thankfully we have this mechanism!), but it also feels like a lesser known API and requires you to hold the tree into a constant, hampering your ability to inline things (requiring a minimum of 2 spots in code related to the concept vs. 1 spot)

Yeah, like I said I'd like to hear if other folks feel strongly about having an explicit API vs using the existing one

The approach using getTranslationTree works but it does seem a bit overkill for the situation. I would say that method is mainly intended for situations where a set of related translations is needed and retrieving those one by one would introduce a lot more code.
In this example, we know which specific translation key we're looking for, only caveat being that the key might be missing in which case we need a fallback. The fallbackKey solution proposed by @TheMallen is quite simple and elegant and it seems to me to be more appropriate for this particular use case.

We use camelCase(enumValue) frequently in Capital, composing into the key string. But this is not typically for raw enum content but rather dynamic content that is enum value driven. Search for camelCase(financingType) in web to see examples. We generally want things to fail fast if our enums were to unfortunately change on the backend without a heads up so our error tracking picks it up. We also have very stable enums that this is used for, so very little risk for translation errors.

it sounds like folks like fallbackKey, I'm going on vacation now though, if anyone wants to try to PR it in they can ping other folks on web-foundations though


Fix bug with refreshing internal webviews

In my application I have the ability to reload() an internal webview. When doing this the webcontents id changes (but the webcontents doesnt), so it ends up duplicating the client in the main process. This has the unwanted side effect of duplicating actions through ipc.
My fix is simple, it just checks for duplicated and removes the clients with the incorrect (old) id. The important code is:
// if webviews are reloaded, the contents id changes
// so duplicates need to be removed
Object.keys(clients).forEach(k => {
  if (clients[k].webContents === sender) {
    delete clients[k];
  }
});

The other changes were created by my prettier setup and shouldn't change anything.
I'm not fully aware if this will create other problems, so welcome to feedback.

Yeah no problems. I use prettier for everything, so hence the style changes. I initially did the PR quickly just to make sure I didn't miss anything with the actual webcontents code. I'll fix it all up when i get the chance soon.


Fix bug: change _rangeEnd to today

Change the _rangeEnd Date to today, because it can not be empty. It's the fallback, if there is no rangeEnd is given.

This confirms better with the documentation of the paremter Leave this parameter empty to request all data from $rangeStart until now, but $this->_date = $rangeStart; was valid too. It only set the range to one day, the start day.

Ok, but when I left the parameter blank, then I get the following error message back:
{
"result": "error",
"message": "Das Datum '2014-12-10,' ist keine korrekte Zeitspanne. Es sollte das folgende Format haben:  'lastN', 'previousN', 'YYYY-MM-DD,YYYY-MM-DD'"
}
With the API call: "... period=range&format=json&language=de& ... &date=2014-12-10,"
But, but now it works :+1:

Ok this is strange, the start range should be copied to the end range...but great that it works now!


[Event Request] T352 "Default Dimension" - trigger OnDelete()

trigger OnDelete()
begin
  ----------------------- ADD EVENT ----------------------
  IsHandled := false;
  OnBeforeOnDelete(Rec, DimMgt, IsHandled)
  if IsHandled then
       exit;
  end;
  ----------------------------------------------------------

....................
[IntegrationEvent(false, false)]
local procedure OnBeforeOnDelete(var Rec : Record "Default Dimension"; var DimMgt: Codeunit DimensionManagement; var IsHandled: Boolean)
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Build failing

The build is failing with:
protoc-gen-go: unable to determine Go import path for "udf.proto"
I suspect this has to do with google introducing breaking changes in the go library for github.com/golang/protobuf 1.5.

closed by #2506


add fitToLayoutMarginsWidth

Hey @aehlke! Thanks for the PR! This is indeed lacking. I'm seeing a way to unify both guides, but I'll merge as it and I'll make the changes in a later PR!
Thanks again!


unable to fetch crashplan server environment:insufficient randomness

Current Behavior
Updated to new docker container got the above response.  rename container to .old recreated it from root with:
docker run -d --name=jleasage-crashplan-pro-2 -e USER_ID=0 -e GROUP_ID=0 -e CRASHPLAN_SRV_MAX_MEM=8192M -p 5800:5800 -v /volume1/docker/appdata/crashplan-pro:/config:rw -v /volume1/:/volume1:ro jlesage/crashplan-pro
Expected Behavior
can't login get response "unable to fetch crashplan server environment:insufficient randomness"
Steps To Reproduce
No response
Environment

OS:
OS version:
CPU:
Docker version: latest container manager as of 08/06/24
Device model: synolofy DS1817+
Browser/OS:
Crashplan Setup wrong docx.docx

Container creation
docker run -d --name=jleasage-crashplan-pro-2 -e USER_ID=0 -e GROUP_ID=0 -e CRASHPLAN_SRV_MAX_MEM=8192M -p 5800:5800 -v /volume1/docker/appdata/crashplan-pro:/config:rw -v /volume1/:/volume1:ro jlesage/crashplan-pro
Container log
don't know how to do

Container inspect
No response
Anything else?
Crashplan Setup wrong docx.docx

Do you get the same error if you execute docker exec <container name> curl https://console.us2.crashplan.com ?
Also, could you share the output of the following commands:

docker exec <container name> ls -l /dev/random
docker exec <container name> ls -l /dev/urandom

I got the same error when trying to log in through the small popup login window. If I copy the link and open the login in a separate tab, I am able to log in.
Cumbersome but it works.

Are you also using a Synology? See my previous comment for information that can be provided to help debug this problem.

Yes, a DS1517+ running DSM 7.2.1

Do you get the same error if you execute docker exec <container name> curl https://console.us2.crashplan.com ?
Also, could you share the output of the following commands:
* `docker exec <container name> ls -l /dev/random`

* `docker exec <container name> ls -l /dev/urandom`

This is the output I get
root@SDYNAS:/volume1/docker/appdata# ls
'Configuration Json Files'   crashplan-pro   crashplan-pro-2   pihole   unifi
root@SDYNAS:/volume1/docker/appdata# docker exec crashplan-pro-2 ls -l /dev/random
Error: No such container: crashplan-pro-2
root@SDYNAS:/volume1/docker/appdata# docker exec crashplan-pro-2 ls -l /dev/urandom
Error: No such container: crashplan-pro-2
root@SDYNAS:/volume1/docker/appdata#

I got the same error when trying to log in through the small popup login window. If I copy the link and open the login in a separate tab, I am able to log in. Cumbersome but it works.

It seems that you are not using the correct container name.
You can run docker ps to see the name of the container.

It seems that you are not using the correct container name. You can run docker ps to see the name of the container.

This is what I get
root@SDYNAS:/volume1/docker/appdata# ls
'Configuration Json Files'   crashplan-pro   crashplan-pro-2   pihole   unifi
root@SDYNAS:/volume1/docker/appdata# docker ps
CONTAINER ID   IMAGE                   COMMAND   CREATED      STATUS       PORTS                                                 NAMES
8540a4e99cbf   jlesage/crashplan-pro   "/init"   2 days ago   Up 8 hours   <IP_ADDRESS>:5800->5800/tcp, :::5800->5800/tcp, 5900/tcp   jleasage-crashplan-pro-2
root@SDYNAS:/volume1/docker/appdata# docker exec 8540a4e99cbf ls -l /dev/random
crw-rw-rw-    1 root     root        1,   8 Aug  8 16:49 /dev/random
root@SDYNAS:/volume1/docker/appdata# docker exec 8540a4e99cbf ls -l /dev/urandom
crw-rw-rw-    1 root     root        1,   9 Aug  8 16:49 /dev/urandom
root@SDYNAS:/volume1/docker/appdata#
root@SDYNAS:/volume1/docker/appdata# docker exec crashplan-pro ls -l /dev/random
Error: No such container: crashplan-pro
root@SDYNAS:/volume1/docker/appdata# docker exec crashplan-pro ls -l /dev/urandom
Error: No such container: crashplan-pro
root@SDYNAS:/volume1/docker/appdata#

here is my synology log file
jleasage-crashplan-pro-2.json

@sol086 you should do docker exec jleasage-crashplan-pro-2 ls -l /dev/random

I am experiencing the same issue
docker exec  curl https://console.us2.crashplan.com
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

docker exec  ls -l /dev/random
crw-rw-rw-    1 root     root        1,   8 Aug 18 14:10 /dev/random
docker exec  ls -l /dev/urandom
crw-rw-rw-    1 root     root        1,   9 Aug 18 14:10 /dev/urandom

Hi, I also have the same issue when using the popup login window, it's ok if I copy the URL in the box to a new tab and log in that way.
root@xxxx:/volume1/docker/appdata# docker exec b1948d7fa402 curl https://console.us2.crashplan.com
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
root@xxxx:/volume1/docker/appdata# docker exec b1948d7fa402 ls -l /dev/random
crw-rw-rw-    1 root     root        1,   8 Aug  4 15:52 /dev/random
root@xxxx:/volume1/docker/appdata# docker exec b1948d7fa402 ls -l /dev/urandom
crw-rw-rw-    1 root     root        1,   9 Aug  4 15:52 /dev/urandom

I'm also seeing this issue and it looks like no solution has been found yet based on reading this thread.
Here's my output too, but it seems to be the same as everyone elses:
admin@xxxx:~$ sudo docker exec crashplan-pro ls -l /dev/random
crw-rw-rw-    1 root     root        1,   8 Oct  2 06:42 /dev/random
admin@xxxx:~$ sudo docker exec crashplan-pro ls -l /dev/urandom
crw-rw-rw-    1 root     root        1,   9 Oct  2 06:42 /dev/urandom
Any ideas or suggestions on how to move forward? Appreciate all your work on this.


Object detection-Local: Training failed when choosing Vott dataset.

System Information (please complete the following information):
Windows OS: Windows-11-Enterprise-22H2
ML.Net Model Builder 2022: <IP_ADDRESS>6001 (Main Build)
Microsoft Visual Studio Enterprise: 2022(17.7.7)
.Net: 6.0,7.0,8.0
Describe the bug

On which step of the process did you run into an issue:
Training failed when choosing Vott dataset.

TestMatrix
https://docs.microsoft.com/en-us/dotnet/machine-learning/tutorials/object-detection-model-builder#create-a-new-vott-project
To Reproduce
Steps to reproduce the behavior:

Select Create a new project from the Visual Studio start window.
Choose the C# Console App (.NET Core) project template.
Add model builder by right click on the project.
Select "Object detection" scenario.
Select "Local" environment.
On Data page, choose the "Vott" Json file.
On the Train page, click "Start training" button.

Expected behavior
Training should be successful when choosing Vott dataset.
Screenshot

Additional context

The bug is not repro when choosing "Coco" Json file.
The bug is not repro on the "Azue" environment.

The bug has been fixed on the latest main build <IP_ADDRESS>6902.


"_index", "generations" and "strings" translations to Galician ready

The Galician translation for the "_index.md", "generations.yaml" and "strings.toml" has been completed in Crowdin, and are ready for approval.
Have a good day.

Thanks, added them with #239


Missplelling on the instructions? Source or Destination

Module: Module 02 - Implement Platform Protection
Lab/Demo: Lab 08: Azure Firewall - Student lab manual
Task: Task 3: Create a default route
Step: 10. On the Add route blade, specify the following settings:
Description of issue
The instructions speaks about the source.
Address prefix source | IP Adresses
Source IP addresses/CIDR ranges | <IP_ADDRESS>/0
But the user interface speaks about destination:

Have a made a mistake on begin steps or, is this just misspelling issue on the instructions?

Updated #### Task 3: Create a default route, 10. On the Add route blade, specify the following settings:  |Address prefix destination|IP Address|     |Destination IP addresses/CIDR ranges|<IP_ADDRESS>/0


OpenDB as a TCL package, rather than a standalone executable

The integration of OpenDB with Python provides it as a package that gets loaded into the Python interpreter.
The same can be done with TCL. Rather than having a separate executable, if opendbtcl is built as a shared object library, then it can be loaded into any TCL shell through the package loading mechanism.
Alongside the shared object library there would be a TCL file called pkgIndex.tcl, which would load the shared object library if required. This would look something like:
package ifneeded opendbtcl 1.0.0 [list load $dir/libopendbtcl.so]
The end user would add the path of the directory where the pkgIndex.tcl file could be found to the environment variable TCLLIBPATH so that all the packages are known (but not loaded) when the tclsh starts up.
More information on the TCL load command:
http://tmml.sourceforge.net/doc/tcl/load.html
To use the opendbtcl package, the end user would do the following:
% tclsh
> package require opendbtcl
Taking this approach will make the python/tcl approach more consistent and tidy up some loose ends in the current opendbtcl binary [e.g. the package mechanism not working]

The current build generates a library file too, it just was not set to SHARED by mistake (will fix that), we can also provide pkgIndex.tcl so the package require would work normally but we probably won't drop the standalone executable as it is the approach with most OpenROAD apps, and will be required for the top-level app to work, and we need it too to inject the TCL wrappers as SWIG currently does not support inline TCL code.


[Orch] Set network policy collector as stable

What does this PR do?

Sets the network policy collector to stable for the Orchestration check

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Notify when EasyCLA Privileges prevent CLA check on Repo

Summary
When an admin or maintainer modifies the privileges that the EasyCLA has to check GitHub PRs there's currently no notification of any kind. Project Managers need to know when their PRs are configured to get an EasyCLA check, but the check cannot be performed due to an access change.
Background

An admin/owner of a GitHub Repo/Organization goes into the "Settings" tab
Then clicks on "Integration & services" verticle navigation
Then clicks "Configure" associated with the EasyCLA App
Then disables some or all of the permissions that EasyCLA has to their repos

User Story
As a project manager,
I need to know when the CLA checks are not able to run
so that I can act appropriately and reinstate the checks as soon as possible
Scenarios/Logic
When a GitHub Repository is configured in EasyCLA Project Console the repos are added to our database in the cla-*-repositories
Given a PR on one of these repositories, if we get a permissions error
Then we send an email notification to the LFIDs who have the corresponding external project id listed in their projects list on cla-*-user-permissions table
Include the following details in the email body

project_name
cla-*-repositories.repository_name
Description: "EasyCLA is unable to check PRs on this repo due to permissions issue. Please contact the repository admin/owner to enable CLA checks.
Provide the Owner/Admin the following instructions:

Go into the "Settings" tab of the GitHub Organization
Click on "Integration & services" verticle navigation
Then click "Configure" associated with the EasyCLA App
Finally, click the "All Repositories" radio button option

Acceptance Criteria
The "done" criteria when this feature or problem is resolved.  Such as:

Unit Tests added and running in CI
Functional Tests updated to cover feature, if applicable
Demonstrate the set of capabilities to the product team while the code is
running in the STAGING environment.

References
Tekton currently has this issue

Notes for documentation

Scenario 1: GitHub Org Admin/Owner has disabled EasyCLA without notifying project leadership. EasyCLA should be reactivated immediately and permissions updated to prevent future activation. See https://github.com/communitybridge/easycla/blob/master/docs/CLA-Troubleshooting.md EasyCLA is Disabled #156
Scenario 2: Project has decided to stop checking for CLAs on one or more repos and modifies EasyCLA app on GitHub. The Project Manager for the corresponding project must also update the EasyCLA configuration to match the list of Repos being checked.

@prasannamahajan Possible fun one - the ticket already includes some details.
May want to implement/deploy a lambda on a schedule to run a task (daily) to check for
permissions (see cla-prod-github-orgs table entries, https://confluence.linuxfoundation.org/display/PROD/EasyCLA+Version+1+Database+Schema+Walkthrough#EasyCLAVersion1DatabaseSchemaWalkthrough-GithubOrgs) and when a GH org member
removes CLA permissions (by disabling/removing the App from GH) we discover this
by running a nightly permission check.
When doing this check and we fail, we need to lookup the Project associated with the repo/org and send the project manager(s) an email.  Coordinate with @pranab-bajpai on the email text/content. We simply need to send an email via the Platform Core Service SNS topic, see API: https://github.com/communitybridge/easycla/blob/master/cla-backend-go/swagger/cla.yaml#L294,which we can re-purposed (initially used for onboarding, but later abandoned, maybe rename the endpoint and package name) for sending generic emails (request payload: https://github.com/communitybridge/easycla/blob/master/cla-backend-go/swagger/cla.yaml#L1494).
The GH id/token we use for repo authentication/permissions is stored in the environment SSM config.

Prasanna here is the Email to be sent:
Project Manager for <project_name>,
EasyCLA is unable to check PRs on this repo due to permissions issue.
cla-*-repositories.<repository_name?
Please contact the repository admin/owner to enable CLA checks.
Provide the Owner/Admin the following instructions:

Go into the "Settings" tab of the GitHub Organization
Click on "Integration & services" vertical navigation
Then click "Configure" associated with the EasyCLA App
Finally, click the "All Repositories" radio button option

Thanks,
EasyCLA Support Team

Changes merged in master with pull request #478


source code modify

Hi,
How can I modify the source code to do this:
If the ticket status is: "Status01" and an agent answer, immediately change to "Status02".

I would probably do the following:

add a config to select if the status change is triggered by agent and/or user
add listener to agent reply
check new config setting before changing status

Can you help me with the implementation?


Fix github action

codecov was removed from pypi

codecov can still be used with actions: https://github.com/codecov/codecov-action


KAFKA-14365: Extract common logic from Fetcher

The Fetcher class is used internally by the KafkaConsumer to fetch records from the brokers. There is ongoing work to create a new consumer implementation with a significantly refactored threading model. The threading refactor work requires a similarly refactored Fetcher.
This task includes refactoring Fetcher by extracting out some common logic to allow forthcoming implementations to leverage it.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@guozhangwang @hachikuji @rajinisivaram @philipnee This is ready for a review from whomever has the time.

I've checked the failed tests, which are irrelevant.

LGTM, merged to trunk.

@guozhangwang , @kirktrue , this PR is causing NPEs downstream.  I've added a comment above that indicates the bad lines.  Thanks.


Cannot set retry_mode, retry_backoff_max and retry_backoff_factor for azure-servicebus

Package Name: azure-servicebus
Package Version: 7.7.0
Operating System: Raspbian 11 Bullseye (Raspberry Pi)
Python Version: 3.9.2

Describe the bug
I am having a hard time to set custom values to retry_mode, retry_backoff_max and retry_backoff_factor on a ServiceBusClient object. My goal is reducing the timeout for reconnection when the network goes down, but all I get is the behaviour with the standard values (begins reading after 3 attempts x 120 seconds * exponential factor) which is around 16-17 minutes.
To Reproduce
Steps to reproduce the behavior:

Create a instance of ServiceBusClient class, with custom values to retry_mode, retry_backoff_max and retry_backoff_factor fields
Run the code
Disconect the device network
Reconnect the device network
Custom values are not applied; only standard library values

Expected behavior
When creating a new instance of ServiceBusClient with custom behaviour, the behaviour should be respected. Default values (retry_mode='exponential', retry_backoff_max='120' and retry_backoff_factor='0.8') should be overriden.
Code sample
credential = AzureSasCredential("TOKEN")
retry_backoff_factor = 20
retry_backoff_max = 20
retry_mode = "fixed"

with ServiceBusClient("NAMESPACE", credential, retry_backoff_factor=retry_backoff_factor, retry_backoff_max=retry_backoff_max, retry_mode=retry_mode) as client:
    with client.get_subscription_receiver("TOPIC", "SUBSCRIPTION", max_wait_time=1440) as receiver:
        for msg in receiver:
            # HANDLE MESSAGE

Any help on this issue will be greatly appreciated.

Hi @jonas1307, thank you for opening an issue! I'll tag the appropriate folks so we can look into this as soon as possible.

Hi @jonas1307 - I've just tested this scenario by following the steps you've outlined. Unfortunately, I was not able to reproduce your error. Adding my exact steps, FYI:

Continuously receive from a subscription and output info level logs, with the following values sent in the ServiceBusClient.

retry_backoff_factor = 20
retry_backoff_max = 20
retry_mode = "fixed

Periodically send to the topic of that subscription.
Intentionally trigger an exception so that the client retries and check that the client will retry after the time specified, i.e. 20. (More details in case you're interested: To intentionally trigger an exception, I forced a link detach from the service by updating the topic properties using the ServiceBusAdministrationClient.)

Retry values were set as specified. I modified the logging to include the backoff time before retry here, so we can see that this is correct.

'servicebus.pysdk-0bc518df' has an exception (ServiceBusConnectionError("The link 'G92:1084690663:receiver-link-83345b02-8bc8-4647-8d6a-49796f5f0276' is force detached. Code: consumer(link43484891). Details: InnerMessageReceiver was closed. TrackingId:33cab24800027e88029786db62c89bf7_G92_B8, SystemTracker:..., Timestamp:2022-07-08T21:05:27 Error condition: ErrorCodes.LinkDetachForced.")). Retrying after (20).

Disconnect from the network. Wait until I get the following logs to check that I disconnected.

Connection b'SBReceiver-2a4c9f29-65ed-4a68-b5bc-367fec3cb4da' state changed from <ConnectionState.END: 13> to <ConnectionState.END: 13>
b'saslclientio_close called while not open' (b'D:\\a\\1\\s\\src\\vendor\\azure-uamqp-c\\src\\saslclientio.c':b'saslclientio_close_async':1130)
b'xio_close failed' (b'D:\\a\\1\\s\\src\\vendor\\azure-uamqp-c\\src\\connection.c':b'connection_close':1437)

Reconnect to the network and wait for logs to show that connection has successfully recovered.
Trigger another exception so that client retries. Check the log to see whether backoff time before retrying has been set back to the default value. I found that it was not set to the default value, and was correctly set to the value that was passed in. Logging:

'servicebus.pysdk-0bc518df' has an exception (ServiceBusConnectionError("The link 'G92:1084690663:receiver-link-83345b02-8bc8-4647-8d6a-49796f5f0276' is force detached. Code: consumer(link43484891). Details: InnerMessageReceiver was closed. TrackingId:33cab24800027e88029786db62c89bf7_G92_B8, SystemTracker:..., Timestamp:2022-07-08T21:05:27 Error condition: ErrorCodes.LinkDetachForced.")). Retrying after (20)..

Even if there are issues with the network, the connection should be recovering after the reconnect and the client should still retain the values that you've passed in. 🤔 To see why that is not happening, would you be able to turn on info-level logging and respond with those logs?
(To turn on logging, you can pass in logging_enable=True to the ServiceBusClient during creation. You can also turn on additional azure.servicebus and uamqp level logs. ex.
import logging
import sys
logger = logging.getLogger('azure.servicebus')
logger.setLevel(logging.INFO)
uamqp_logger = logging.getLogger('uamqp')
uamqp_logger.setLevel(logging.INFO)
handler = logging.StreamHandler(stream=sys.stdout)
logger.addHandler(handler)
uamqp_logger.addHandler(handler)

with ServiceBusClient("NAMESPACE", credential, retry_backoff_factor=retry_backoff_factor, retry_backoff_max=retry_backoff_max, retry_mode=retry_mode, logging_enable=True) as client:

)

Hi @swathipil, I would like to thank you in advance for your assistance and help provided.
I believe I forgot to mention a few additional steps and other information for reproducing the unexpected behavior I’m struggling with.

Create a instance of ServiceBusClient class, with custom values to retry_mode, retry_backoff_max and retry_backoff_factor fields
Run the code and wait until the connection is open
Disconnect the device from the network
Post a message to Service Bus on the target subscription
Reconnect the device to the network after 5 minutes
Message is received only after 16 to 17 minutes, but I was expecting getting it after 20 seconds (or 60 seconds for 20 seconds [retry_backoff_max] * 3 attempts [default value])

If I reconnect the network after 1-2 minutes, the device shortly gets the message in around 20-40 seconds. If the network is down for a few more minutes it takes around 16-17 minutes to receive the message. That’s the behavior I wasn’t expecting, but the usual 20-40 seconds.
As you requested I also enabled informational logs and ran through my failing scenario again (I just replaced some sensitive information before posting it here):
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
b'-> Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.HDR_SENT: 2>
b'<- Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_SENT: 2> to <ConnectionState.HDR_EXCH: 3>
b'-> [OPEN]* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,SVCBUS_NAMESPACE.servicebus.windows.net,65536,65535,NULL,NULL,NULL,NULL,NULL,{[product:azsdk-python-servicebus],[version:7.7.0],[framework:Python/3.9.2],[platform:Linux-5.15.32-v8+-aarch64-with-glibc2.31],[user-agent:azsdk-python-servicebus/7.7.0 Python/3.9.2 (Linux-5.15.32-v8+-aarch64-with-glibc2.31)]}}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_EXCH: 3> to <ConnectionState.OPEN_SENT: 7>
b'<- [OPEN]* {982b6d7e224b4f8faa49f8f2f3906302_G18,NULL,65536,4999,120000,NULL,NULL,NULL,NULL,NULL}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.OPEN_SENT: 7> to <ConnectionState.OPENED: 9>
b'-> [BEGIN]* {NULL,0,65536,65536,4294967295}'
b'<- [BEGIN]* {0,1,5000,65536,255,NULL,NULL,NULL}'
b'-> [ATTACH]* {$cbs-sender,0,false,0,0,* {$cbs},* {$cbs},NULL,NULL,0,0}'
b'-> [ATTACH]* {$cbs-receiver,1,true,0,0,* {$cbs},* {$cbs},NULL,NULL,NULL,0}'
b'<- [ATTACH]* {$cbs-sender,0,true,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,NULL,18446744073709551615,NULL,NULL,NULL}'
b'<- [FLOW]* {0,5000,1,65536,0,0,100,0,NULL,false,NULL}'
b'Properties:* {0}Application properties:* {[name:sb://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION],[operation:put-token],[type:servicebus.windows.net:sastoken]}Body - amqp value:* SVCBUS_CONNECTION_STRING-> [TRANSFER]* {0,0,<01 00 00 00>,0,false,false}'
b'<- [ATTACH]* {$cbs-receiver,1,false,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,18446744073709551615,NULL,NULL,NULL}'
b'-> [FLOW]* {1,65536,1,65535,1,0,10000}'
CBS for connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' completed opening with status: 1
b'<- [DISPOSITION]* {true,0,NULL,true,* {},NULL}'
b'<- [TRANSFER]* {1,0,<01 00 00 00>,0,NULL,false,NULL,NULL,NULL,NULL,false}'
Token put complete with result: 1, status: 202, description: b'Accepted', connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [DISPOSITION]* {true,0,0,true,* {}}'
Message receiver b'receiver-link-4bd52f46-4db6-4a63-ad1c-8438e7bea8c0' state changed from <MessageReceiverState.Idle: 1> to <MessageReceiverState.Opening: 2> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [ATTACH]* {receiver-link-4bd52f46-4db6-4a63-ad1c-8438e7bea8c0,2,true,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a},NULL,NULL,NULL,1048576}'
b'<- [ATTACH]* {receiver-link-4bd52f46-4db6-4a63-ad1c-8438e7bea8c0,2,false,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,1048576,SHARED-SUBS,NULL,NULL}'
b'-> [FLOW]* {2,65535,1,65535,2,0,0}'
Message receiver b'receiver-link-4bd52f46-4db6-4a63-ad1c-8438e7bea8c0' state changed from <MessageReceiverState.Opening: 2> to <MessageReceiverState.Open: 3> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [FLOW]* {2,65535,1,65535,2,0,1}'
b'-> Empty frame'
b'Socketio_Failure: Receiving data from endpoint: errno=104.' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/deps/azure-c-shared-utility/adapters/socketio_berkeley.c':b'socketio_dowork':1068)
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.OPENED: 9> to <ConnectionState.ERROR: 14>
Connection with ID b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' unexpectedly in an error state. Closing: False, Error: None
CBS error occurred on connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Message receiver b'receiver-link-4bd52f46-4db6-4a63-ad1c-8438e7bea8c0' state changed from <MessageReceiverState.Open: 3> to <MessageReceiverState.Error: 5> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
AMQP Connection error occurred: (MessageHandlerError('Message Receiver Client is in an error state. Please confirm credentials and access permissions.\\nSee debug trace for more details.')).
Shutting down connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Shutting down CBS session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Auth closed, destroying session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
b'Connection not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'connection_encode_frame':2048)
Finished shutting down CBS session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
b'send called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_send_async':1181)
b'Cannot send encoded bytes' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'on_bytes_encoded':268)
b'saslclientio_close called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_close_async':1130)
b'xio_close failed' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'on_bytes_encoded':272)
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.ERROR: 14> to <ConnectionState.END: 13>
b'-> [CLOSE]* {}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.END: 13> to <ConnectionState.END: 13>
b'saslclientio_close called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_close_async':1130)
b'xio_close failed' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'connection_close':1437)
Connection shutdown complete b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
'servicebus.pysdk-9cb1c388' has an exception (ServiceBusConnectionError('Message Receiver Client is in an error state. Please confirm credentials and access permissions.\\nSee debug trace for more details.')). Retrying...
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
b'-> Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.HDR_SENT: 2>
b'<- Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_SENT: 2> to <ConnectionState.HDR_EXCH: 3>
b'-> [OPEN]* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,SVCBUS_NAMESPACE.servicebus.windows.net,65536,65535,NULL,NULL,NULL,NULL,NULL,{[product:azsdk-python-servicebus],[version:7.7.0],[framework:Python/3.9.2],[platform:Linux-5.15.32-v8+-aarch64-with-glibc2.31],[user-agent:azsdk-python-servicebus/7.7.0 Python/3.9.2 (Linux-5.15.32-v8+-aarch64-with-glibc2.31)]}}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_EXCH: 3> to <ConnectionState.OPEN_SENT: 7>
b'<- [OPEN]* {48878138660f4d9180decc60c1b5e478_G34,NULL,65536,4999,120000,NULL,NULL,NULL,NULL,NULL}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.OPEN_SENT: 7> to <ConnectionState.OPENED: 9>
b'-> [BEGIN]* {NULL,0,65536,65536,4294967295}'
b'<- [BEGIN]* {0,1,5000,65536,255,NULL,NULL,NULL}'
b'-> [ATTACH]* {$cbs-sender,0,false,0,0,* {$cbs},* {$cbs},NULL,NULL,0,0}'
b'-> [ATTACH]* {$cbs-receiver,1,true,0,0,* {$cbs},* {$cbs},NULL,NULL,NULL,0}'
b'<- [ATTACH]* {$cbs-sender,0,true,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,NULL,18446744073709551615,NULL,NULL,NULL}'
b'<- [FLOW]* {0,5000,1,65536,0,0,100,0,NULL,false,NULL}'
b'Properties:* {0}Application properties:* {[name:sb://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION],[operation:put-token],[type:servicebus.windows.net:sastoken]}Body - amqp value:* SVCBUS_CONNECTION_STRING-> [TRANSFER]* {0,0,<01 00 00 00>,0,false,false}'
b'<- [ATTACH]* {$cbs-receiver,1,false,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,18446744073709551615,NULL,NULL,NULL}'
b'-> [FLOW]* {1,65536,1,65535,1,0,10000}'
CBS for connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' completed opening with status: 1
b'<- [DISPOSITION]* {true,0,NULL,true,* {},NULL}'
b'<- [TRANSFER]* {1,0,<01 00 00 00>,0,NULL,false,NULL,NULL,NULL,NULL,false}'
Token put complete with result: 1, status: 202, description: b'Accepted', connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [DISPOSITION]* {true,0,0,true,* {}}'
Message receiver b'receiver-link-03878d04-f73d-4d25-86a5-2abc080a2b6e' state changed from <MessageReceiverState.Idle: 1> to <MessageReceiverState.Opening: 2> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [ATTACH]* {receiver-link-03878d04-f73d-4d25-86a5-2abc080a2b6e,2,true,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a},NULL,NULL,NULL,1048576}'
b'<- [ATTACH]* {receiver-link-03878d04-f73d-4d25-86a5-2abc080a2b6e,2,false,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,1048576,SHARED-SUBS,NULL,NULL}'
b'-> [FLOW]* {2,65535,1,65535,2,0,0}'
Message receiver b'receiver-link-03878d04-f73d-4d25-86a5-2abc080a2b6e' state changed from <MessageReceiverState.Opening: 2> to <MessageReceiverState.Open: 3> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [FLOW]* {2,65535,1,65535,2,0,1}'
b'<- [TRANSFER]* {2,1,<7A 3D EE 1D A4 30 C9 4B 83 9C E0 7F CA 46 AD 84>,0,NULL,false,NULL,NULL,NULL,NULL,true}'
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.START: 0> to <ConnectionState.HDR_SENT: 2>
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.HDR_SENT: 2> to <ConnectionState.HDR_EXCH: 3>
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.HDR_EXCH: 3> to <ConnectionState.OPEN_SENT: 7>
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.OPEN_SENT: 7> to <ConnectionState.OPENED: 9>
CBS for connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' completed opening with status: 1
Token put complete with result: 1, status: 202, description: b'Accepted', connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'
Message sender b'sender-link-a178b611-0c0b-45de-91cf-fdcb4c46aeed' state changed from <MessageSenderState.Idle: 1> to <MessageSenderState.Opening: 2> on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'
Message sender b'sender-link-a178b611-0c0b-45de-91cf-fdcb4c46aeed' state changed from <MessageSenderState.Opening: 2> to <MessageSenderState.Open: 3> on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'
Message sender b'sender-link-a178b611-0c0b-45de-91cf-fdcb4c46aeed' state changed from <MessageSenderState.Open: 3> to <MessageSenderState.Closing: 4> on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'
Shutting down connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'.
Shutting down CBS session on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'.
Auth closed, destroying session on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'.
Finished shutting down CBS session on connection: b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'.
Connection b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208' state changed from <ConnectionState.OPENED: 9> to <ConnectionState.END: 13>
Connection shutdown complete b'SBSender-6d2e24b1-fe29-4144-9f54-948beeb71208'.
b'-> [DISPOSITION]* {true,1,1,true,* {}}'
b'-> [FLOW]* {3,65534,1,65535,2,1,1}'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'Socketio_Failure: Receiving data from endpoint: errno=110.' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/deps/azure-c-shared-utility/adapters/socketio_berkeley.c':b'socketio_dowork':1068)
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.OPENED: 9> to <ConnectionState.ERROR: 14>
Connection with ID b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' unexpectedly in an error state. Closing: False, Error: None
CBS error occurred on connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Message receiver b'receiver-link-03878d04-f73d-4d25-86a5-2abc080a2b6e' state changed from <MessageReceiverState.Open: 3> to <MessageReceiverState.Error: 5> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
AMQP Connection error occurred: (MessageHandlerError('Message Receiver Client is in an error state. Please confirm credentials and access permissions.\\nSee debug trace for more details.')).
Shutting down connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Shutting down CBS session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
Auth closed, destroying session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
b'Connection not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'connection_encode_frame':2048)
Finished shutting down CBS session on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
b'send called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_send_async':1181)
b'Cannot send encoded bytes' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'on_bytes_encoded':268)
b'saslclientio_close called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_close_async':1130)
b'xio_close failed' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'on_bytes_encoded':272)
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.ERROR: 14> to <ConnectionState.END: 13>
b'-> [CLOSE]* {}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.END: 13> to <ConnectionState.END: 13>
b'saslclientio_close called while not open' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/saslclientio.c':b'saslclientio_close_async':1130)
b'xio_close failed' (b'/tmp/pip-install-9p3yqhu2/uamqp_7682f6ab3f264e3fb3d36d5eb76437d4/src/vendor/azure-uamqp-c/src/connection.c':b'connection_close':1437)
Connection shutdown complete b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'.
'servicebus.pysdk-9cb1c388' has an exception (ServiceBusConnectionError('Message Receiver Client is in an error state. Please confirm credentials and access permissions.\\nSee debug trace for more details.')). Retrying...
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
b'-> Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.START: 0> to <ConnectionState.HDR_SENT: 2>
b'<- Header (AMQP <IP_ADDRESS>)'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_SENT: 2> to <ConnectionState.HDR_EXCH: 3>
b'-> [OPEN]* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,SVCBUS_NAMESPACE.servicebus.windows.net,65536,65535,NULL,NULL,NULL,NULL,NULL,{[product:azsdk-python-servicebus],[version:7.7.0],[framework:Python/3.9.2],[platform:Linux-5.15.32-v8+-aarch64-with-glibc2.31],[user-agent:azsdk-python-servicebus/7.7.0 Python/3.9.2 (Linux-5.15.32-v8+-aarch64-with-glibc2.31)]}}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.HDR_EXCH: 3> to <ConnectionState.OPEN_SENT: 7>
b'<- [OPEN]* {61e3451fb2054589b22a7cda23a7680e_G9,NULL,65536,4999,120000,NULL,NULL,NULL,NULL,NULL}'
Connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' state changed from <ConnectionState.OPEN_SENT: 7> to <ConnectionState.OPENED: 9>
b'-> [BEGIN]* {NULL,0,65536,65536,4294967295}'
b'<- [BEGIN]* {0,1,5000,65536,255,NULL,NULL,NULL}'
b'-> [ATTACH]* {$cbs-sender,0,false,0,0,* {$cbs},* {$cbs},NULL,NULL,0,0}'
b'-> [ATTACH]* {$cbs-receiver,1,true,0,0,* {$cbs},* {$cbs},NULL,NULL,NULL,0}'
b'<- [ATTACH]* {$cbs-sender,0,true,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,NULL,18446744073709551615,NULL,NULL,NULL}'
b'<- [FLOW]* {0,5000,1,65536,0,0,100,0,NULL,false,NULL}'
b'Properties:* {0}Application properties:* {[name:sb://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION],[operation:put-token],[type:servicebus.windows.net:sastoken]}Body - amqp value:* SVCBUS_CONNECTION_STRING-> [TRANSFER]* {0,0,<01 00 00 00>,0,false,false}'
b'<- [ATTACH]* {$cbs-receiver,1,false,0,0,* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {$cbs,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,18446744073709551615,NULL,NULL,NULL}'
b'-> [FLOW]* {1,65536,1,65535,1,0,10000}'
CBS for connection b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a' completed opening with status: 1
b'<- [DISPOSITION]* {true,0,NULL,true,* {},NULL}'
b'<- [TRANSFER]* {1,0,<01 00 00 00>,0,NULL,false,NULL,NULL,NULL,NULL,false}'
Token put complete with result: 1, status: 202, description: b'Accepted', connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [DISPOSITION]* {true,0,0,true,* {}}'
Message receiver b'receiver-link-93452938-4482-4b36-9f0e-a1143e140e0c' state changed from <MessageReceiverState.Idle: 1> to <MessageReceiverState.Opening: 2> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [ATTACH]* {receiver-link-93452938-4482-4b36-9f0e-a1143e140e0c,2,true,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a},NULL,NULL,NULL,1048576}'
b'<- [ATTACH]* {receiver-link-93452938-4482-4b36-9f0e-a1143e140e0c,2,false,0,1,* {amqps://SVCBUS_NAMESPACE.servicebus.windows.net/SVCBUS_TOPIC/Subscriptions/SVCBUS_SUBSCRIPTION,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL},* {SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a,NULL,NULL,NULL,NULL,NULL,NULL},NULL,NULL,0,1048576,SHARED-SUBS,NULL,NULL}'
b'-> [FLOW]* {2,65535,1,65535,2,0,0}'
Message receiver b'receiver-link-93452938-4482-4b36-9f0e-a1143e140e0c' state changed from <MessageReceiverState.Opening: 2> to <MessageReceiverState.Open: 3> on connection: b'SBReceiver-7afc32ac-43c3-4dcd-ada1-56068b8de17a'
b'-> [FLOW]* {2,65535,1,65535,2,0,1}'
b'<- [TRANSFER]* {2,1,<CD D3 D0 F1 3B 8A A5 40 9A 00 01 DC B3 1A 81 DE>,0,NULL,false,NULL,NULL,NULL,NULL,true}'
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.START: 0> to <ConnectionState.START: 0>
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.START: 0> to <ConnectionState.HDR_SENT: 2>
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.HDR_SENT: 2> to <ConnectionState.HDR_EXCH: 3>
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.HDR_EXCH: 3> to <ConnectionState.OPEN_SENT: 7>
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.OPEN_SENT: 7> to <ConnectionState.OPENED: 9>
CBS for connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' completed opening with status: 1
Token put complete with result: 1, status: 202, description: b'Accepted', connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'
Message sender b'sender-link-a7bc6a89-4011-4af0-be97-2ad6926c4cb8' state changed from <MessageSenderState.Idle: 1> to <MessageSenderState.Opening: 2> on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'
Message sender b'sender-link-a7bc6a89-4011-4af0-be97-2ad6926c4cb8' state changed from <MessageSenderState.Opening: 2> to <MessageSenderState.Open: 3> on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'
Message sender b'sender-link-a7bc6a89-4011-4af0-be97-2ad6926c4cb8' state changed from <MessageSenderState.Open: 3> to <MessageSenderState.Closing: 4> on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'
Shutting down connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'.
Shutting down CBS session on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'.
Auth closed, destroying session on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'.
Finished shutting down CBS session on connection: b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'.
Connection b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7' state changed from <ConnectionState.OPENED: 9> to <ConnectionState.END: 13>
Connection shutdown complete b'SBSender-89763c09-5e41-481d-9a4d-c67d4d631ac7'.
b'-> [DISPOSITION]* {true,1,1,true,* {}}'
b'-> [FLOW]* {3,65534,1,65535,2,1,1}'
b'-> Empty frame'
b'-> Empty frame'
b'<- [FLOW]* {1,5000,3,65534,NULL,NULL,NULL,NULL,NULL,true,NULL}'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'<- [FLOW]* {1,5000,3,65534,NULL,NULL,NULL,NULL,NULL,true,NULL}'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'<- [FLOW]* {1,5000,3,65534,NULL,NULL,NULL,NULL,NULL,true,NULL}'
b'-> Empty frame'
b'-> Empty frame'
b'-> Empty frame'
b'<- [FLOW]* {1,5000,3,65534,NULL,NULL,NULL,NULL,NULL,true,NULL}'
b'-> Empty frame'
b'-> Empty frame'

Could you please take a look on the issue with the logs I provided and the additional steps for reproducing it?
Thank you for your time.

Hi @jonas1307 - Really sorry about the late response on this issue! We have been working on and just released a pure Python AMQP stack-based azure-servicebus. This should make debugging this issue a lot simpler, since we're no longer having to dig through the uamqp library. Would you be able to try installing the latest version (or any version > 7.10.0), and see if this problem still persists? Thank you!


Font not loading correctly in game anymore

Probably has something to do with moving the build to a separate directory? Thought I tested this, so maybe it's something else... but seems like it has to do with not being able to reach the .ttf file.

Hi, I know why this is happening. When the executable is compiled into build/, the font is not moved with it, causing it to not be able to find the font. When building, the font should be moved into the feather/ directory of build/. There is a similar problem with assets failing to load, and needing to be manually moved into an assets folder in the build directory.

Fixed in #36


How to use JSQMessagesViewController ?Thank you very much

Hello,
I use swift and I have tried to usr cocoapods to install "JSQMessagesViewController", but it doesn't work...
I add " pod 'JSQMessagesViewController' " in the Podfile, but it aways show "#import <JSQMessagesViewController/JSQMessages.h> not found", I have searched this in internet, I can not find an clear answer...
Could you give me a clear steps to install "JSQMessagesViewController", Thank you.
Now I try to install JSQMessagesViewController by manual, I downloaded the two sdk from https://github.com/jessesquires/JSQMessagesViewController and https://github.com/jessesquires/JSQSystemSoundPlayer. Then I added the two sdk in my project, but it show "ld: symbol(s) not found for architecture arm64", I didn't find an answer in internet.
Could you give me some steps or simple to install and use JSQMessagesViewController?
Thank you very much.

Have you used cocoa pods before?

i add this : pod 'JSQMessagesViewController' it works fine for me.

Also, it works best for swift to edit the podfile, and turn on the use frameworks line.  When usin frameworks, swift does not need a bridging header defined.  If you leave this feature off, you will need to create a bridging header file (a .h include file) that handles the imports you need to use the objective c library.


Automatically publish new versions from main branch

Also setup branch protections etc.

Done, for now with manual trigger.


chore: added CODEOWNERS

@race-of-sloths

🥁  Score it!
@dj8yfo, please score the PR with @race-of-sloths score [1/2/3/5/8/13]. The contributor deserves it.
If no scoring is provided within 24 hours, this PR will be scored as 1 🦥


BUG: not possible to set parameters for genesis block

Currently it's not possible to submit large genesis block, because genesis.json paramemeters set in genesis block only take effect on the next transaction execution.

its blocked by https://github.com/hyperledger/iroha/pull/4812
./kagami genesis generate --executor-path-in-genesis /Users/michaeltimofeev/Documents/projects/latest/iroha/configs/swarm/executor.wasm --genesis-public-key ed012078c9df093c67efd300a314124ee7ad419b413615178d0f159e50744691d9dfae synthetic --domains 2  --accounts-per-domain 2 --assets-per-domain 2

Error:
   0: Failed to parse `signatory` part in `signatory@domain`. `signatory` should have multihash format e.g. "ed0120..."

Location:
   tools/kagami/src/genesis/generate.rs:207


Add (almost) unclickable link to github page

I believe it's important to show people how to contribute to this awesome project so I've added a link to the github page.
It also doubles as patience trial for possible new contributors.

<TAB><RETURN>

Consider using screen.height and screen.width?

Consider using screen.height and screen.width?

I believe it would be even better to use window.innerWidth and window.innerHeight to make it relative to the size of the browser window.

👍

👍

:+1:


[Feature] Filter search functionality

A nice feature addition would be to have search box at the top of the page with the ability to do a filter search similar to the filter search functionality in Chrome's Bookmark Manager - chrome://bookmarks/

Is there any chance for add this functionality?

Glad to hear that. And thank you for quick response.

@ibillingsley
Hello, thank you very much for developing this plugin. It was a great experience for me
However, I have too many bookmarks. Could you please add a search box to the new tab to filter the bookmarks? This will greatly improve my experience. Thank you again


v1.2.1 Release

ramsey/uuid update on composer.json is crucial for updating some dependancies on Laravel framework. Can you please tag 1.2.1 with updated composer?

Please use symfony-5 branch form Laravel 7 support until new version is released. See https://github.com/ankitpokhrel/tus-php/issues/253#issuecomment-604649273

You can now try out v2.0 before it gets released.
composer require ankitpokhrel/tus-php:v2.x-dev

See #264

Seems it's broken as @ankitpokhrel removed 2.x-dev branch and released 2.0 officially. Anybody having the same problem can follow https://github.com/vimeo/vimeo.php/pull/259 for now or use https://github.com/mstaack/vimeo.php/tree/patch-1 as vimeo-php dependancy.


Error message "can't unbox heterogenous list"

Hi,
I am using anaconda with numba 0.34 and python 3.5 versions. I use the numba.jit decorator on two functions. Unfortunately, the first function (code line 23) keeps given me the error message:
"can't unbox heterogenous list"
I tried to debug without success.  I attached a copy of the script with the input data for further testing.
Any suggestions?
Many thanks,
Ivan
Issue_heterogenous_list.zip

This means that you are passing a list into Numba that contains elements with different data types.  What is in the list you are passing in?

Hi Seibert,
Thanks for your prompt answer.
I read numeric values from ASCII files into a 2D array (code lines 67 - 91; see script in attached zip file).
Then, I have this command line (line 112):   R= rankorder(attributes_data[:,i].astype(np.float32))
This is exactly where the error occurs.
I believe that the input data has a common data type. The command : print(attributes[:,i].dtype) gives float64
Hope this helps,
Ivan


The dataset missing problem

Hei, Thanks for the instructions, the CHAMELEON
dataset is unavailable from the link. please provide a Google drive link.

Hi, you can get the testing dataset from here. Thanks :)


wanted: Opencv

Module location
https://github.com/opencv/opencv
Link to bzlmod issue in the module's repository
No response
Any other context to provide?
Image Processing Library
Fund our work

[ ] Sponsor our community's open source work by donating a feature bounty

Bazel rules for an old version can be found here and may serve as a starting point - https://github.com/mjbots/bazel_deps/tree/master/tools/workspace/opencv


[RELATION] Colors undefined

Hello and thank you for you'r great tool.
I just hosted this repo on my personal server.
I have an issue with the relations's colors. The stroke attribute is set to undefined. I tested it with firefox and chrome, with an imported XML and a new one.
The stroke path must be a CSS color. The file is : js/relation.js
SVG > PATH > stroke attr
Thanks

Yeah, this is already fixed in the new "storage" branch. Let me backport this fix to the master as well.

Fixed; please confirm that it works now.

It works ! Thank you :)


Multiple outputs from transform function are not supported

Hi,
Sorry in advance if I misunderstand the concept of working with the library, but I had to modify it a bit to suit my needs — probably, this can be considered as an issue.
The case was the following: the transform function resulted in several output pieces to be written. Say, I have an incoming string like "Key=1, Value=1; Key=2, Value=2". I need to split them into
{ Key : 1, Value : 1 }, { Key : 2, Value : 2 }.

The transform function reads from the stream and, once it encounters ";", it creates a new object and calls back. The problem is that by the time the callback should be called in the second time, it's already null (function afterTransform in _stream_transform does this). I had to comment lines
ts.writecb = null;

in afterTransform and
strate.writecb = null;

in _stream_writable / doWrite.

Dont call the callback twice. Use .push instead
though(function (data, enc, cb) {
  this.push({key: 1, value: 1})
  this.push({key: 2, value: 2})
  cb()
})

Thank you, it worked


[AVM Module Issue]: AnotherOperationInProgress when deploying multiple subnets

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Issue Type?
Bug
Module Name
avm/res/network/virtual-network
(Optional) Module Version
0.1.5
Description
I have the following definition to deploy a hub virtual network.
param ResourcePrefix string
param azdns array
param onpremdns array
param domain bool = false

var dns = (domain) ? azdns : concat(onpremdns,azdns)

var dnsurl = 'privatelink.file.${environment().suffixes.storage}'

var hubvnetname = 'vnet-hub-01'

var hubvnet = {
  name: hubvnetname
  vnetAddressPrefixes : [
      '<IP_ADDRESS>/23'
    ]
    subnets: [
      {
        name: 'AzureFirewallSubnet'
        addressPrefix: '<IP_ADDRESS>/26'
      }
      {
        name: 'AzureFirewallManagementSubnet'
        addressPrefix: '<IP_ADDRESS>/26'
        routeTableResourceId: resourceId('Microsoft.Network/routeTables', 'rt-snet-fwmgt-01')
      }
      {
        name: 'GatewaySubnet'
        addressPrefix: '<IP_ADDRESS>/26'
        routeTableResourceId: resourceId('Microsoft.Network/routeTables', 'rt-snet-gw-01')
      }
      {
        name: 'AzureBastionSubnet'
        addressPrefix: '<IP_ADDRESS>/27'
        networkSecurityGroupResourceId: resourceId('Microsoft.Network/networkSecurityGroups', 'nsg-bastion-01')
      }
      {
        name: 'snet-shared'
        addressPrefix: '<IP_ADDRESS>/25'
        networkSecurityGroupResourceId: resourceId('Microsoft.Network/networkSecurityGroups', 'nsg-hub-01')
        routeTableResourceId: resourceId('Microsoft.Network/routeTables', 'rt-vnet-hub-01')
      }
      {
        name: 'snet-domain'
        addressPrefix: '<IP_ADDRESS>/26'
        networkSecurityGroupResourceId: resourceId('Microsoft.Network/networkSecurityGroups', 'nsg-hub-01')
        routeTableResourceId: resourceId('Microsoft.Network/routeTables', 'rt-vnet-hub-01')
      }
    ]
}

module deployhubvnet 'br/public:avm/res/network/virtual-network:0.1.5' = {
  name: 'deploy_${hubvnet.name}'
  scope: resourceGroup('rg-${ResourcePrefix}-platform-01-connectivity-01')
  params: {
    addressPrefixes: hubvnet.vnetAddressPrefixes
    name: hubvnet.name
    subnets: hubvnet.subnets
    dnsServers: dns
  }
}

resource privatednszone 'Microsoft.Network/privateDnsZones@2020-06-01' = {
  name: dnsurl
  location: 'global'
}

resource privatednszonelink 'Microsoft.Network/privateDnsZones/virtualNetworkLinks@2020-06-01' = {
  name: '${dnsurl}-link'
  location: 'global'
  parent: privatednszone
  properties: {
    registrationEnabled: false
    virtualNetwork: {
      id: deployhubvnet.outputs.resourceId
    }
  }
  dependsOn: [
    deployhubvnet
  ]
}

output hubvnet string = deployhubvnet.outputs.resourceId

I seem to be getting repeated errors stating AnotherOperationInProgress when the deployment re-runs. I believe this is related to the subnets all being deployed at once rather than with a batch size of 1. This doesn't happen all the time, just occasionally.
Is there a way of resolving this using the module or am I best to resorting back to my original vnet deployment code?
(Optional) Correlation Id
14a7d25a-8556-4e3c-985b-02ada5aaa3c1

Hi @marshalexander99 thank you for your issue. Please note that this is a duplication of https://github.com/Azure/bicep-registry-modules/issues/1519 and has been solved via https://github.com/Azure/bicep-registry-modules/pull/1771. I am going to close the issue. Thanks!


Help text of rosa describe cluster implies that '-c/--cluster' is optional yet it looks to be required

Help text of rosa describe cluster implies that '-c/--cluster' is optional and we could execute rosa describe cluster mycluster, yet when I try this looks like the -c/--cluster is required.
$ ./rosa version
1.0.1

$ ./rosa describe cluster myclusterreplaced
Error: required flag(s) "cluster" not set
Usage:
  rosa describe cluster [flags]

Examples:
  # Describe a cluster named "mycluster"
  rosa describe cluster mycluster

  # Describe a cluster using the --cluster flag
  rosa describe cluster --cluster=mycluster

Flags:
  -c, --cluster string   Name or ID of the cluster to describe.
  -h, --help             help for cluster
      --region string    Use a specific AWS region, overriding the AWS_REGION environment variable.

Global Flags:
      --debug            Enable debug mode.
      --profile string   Use a specific AWS profile from your credential file.

Failed to execute root command: required flag(s) "cluster" not set

Thanks!
Fixed by #312