Re-authentication fails with OAUTHBEARER when roleArn is used in the default credential

Checkboxes for prior research

[X] I've gone through Developer Guide and API reference
[X] I've searched for previous similar issues and didn't find any solution.

Describe the bug
Hi,
i think there are the same issue as the Java one before fixing it in 2.0.2
SASL OAUTHBEARER authentication failed: Cannot change principals during re-authentication from IAM.arn:aws:sts::xxxx:assumed-role/xxxx/276eccf3-xxxx-role: IAM.arn:aws:sts::xxxx:assumed-role/xxxx/b489ee67-xxxx-role
Could we apply the same logic (refreshing of credentials before Oauth token generation) ?
aws-msk-iam-sasl-signer-js library version used
1.0.0
Which Node.js version is this issue in?
20.10.0
Operating System and version
linux
Reproduction Steps
Using default credential provider
async oauthBearerTokenProvider(region: string) {
    // Uses AWS Default Credentials Provider Chain to fetch credentials
    const authTokenResponse = await generateAuthToken({ region });
    return {
        value: authTokenResponse.token,
    };
}

Observed Behavior
With kafkajs and aws-msk-iam-sasl-signer-js
SASL OAUTHBEARER authentication failed: Cannot change principals during re-authentication from IAM.arn:aws:sts::xxxx:assumed-role/xxxx/276eccf3-xxxx-role: IAM.arn:aws:sts::xxxx:assumed-role/xxxx/b489ee67-xxxx-role
Expected Behavior
Avoid KafkaJSNonRetriableError when refreshing credentials
Possible Solution
Refreshing of credentials before Oauth token generation
Additional Information/Context
No response

Thank you for raising this. We will take a look and get back.

Any further updates on this issue? or possible workaround ?

Do we know which credentials provider is being used here via the default credentials chain?  Are these the same roles but with different "assumed role arns", or a different role?
You can try using the awsDebugCreds feature we provide in this library to figure this out. The workaround should be to ensure in some way the arn of the caller identity is same in both cases.
Nevertheless, for us to investigate further, it will be helpful if you can share what credentials provider is being used here to generate the tokens.

Hi, for my case,
it's the same role that is been used (same Role ARN) but the RoleSessionName change.
example:

IAM.arn:aws:sts::#ACCOUNT#:assumed-role/my-custom-role/339bc935-my-custom-role
IAM.arn:aws:sts::#ACCOUNT#:assumed-role/my-custom-role/c0a362f1-my-customv-role

Would it be possible to share debug logs of the kafka client? One way to workaround this is to ensure the "role session name" you mention shouldn't change across tokens. We are interested in knowing which credentials provider in the credentials provider chain is being used for fetching the credentials. Once we know that, we can investigate further.

@sankalpbhatia is there any update on the fix here? we are also facing the same issue.

@BDeus, have you solved this issue at your end or found a temporary workaround?

@sujayvenaik We tried one workaround, setting the env variable AWS_ROLE_SESSION_NAME with any random value, which solves the problem

@jeevchiran Hey! I think this is working for us on Kubernetes based compute. But is still failing  for us when we use this in Elastic Beanstalk (ec2 instances).
What kind of compute were you using?

@sujayvenaik apologies for not responding earlier. Would it be possible to share client level debug logs? If you can also share the steps required to repro this on our end, that would be helpful too.
Thanks

@BDeus, have you solved this issue at your end or found a temporary workaround?

Hi,
for now we restart the consumer when exception is thrown.
It's obvious that is a K8S IAM issue for our part (no error is thrown when run directly on VM EC2)
We still use the old kube2iam project to deal with iam for K8S container. We will migrate to "IAM roles for service accounts" and see if this fix the issue.
I see that some other clients as resolve this issue with double authentication on default credential
https://github.com/aws/aws-msk-iam-auth/issues/143

@sabper
I have deployed the Nest.js framework on EKS and used IRSA to obtain permissions for MSK. However, the same issue still occurs.
To temporarily resolve this, I added AWS_ROLE_SESSION_NAME as an environment variable, but I believe this is not a fundamental solution.

@archepro84
I am also in the same situation where nest.js was deployed by eks, and the situation was temporarily resolved by adding AWS_ROLE_SESSION_NAME.
I also think that we need a solution to the root cause.

@BDeus Was that issue fixed after migrating to IRSA? 👀 This issue is occurring even though we are already using IRSA.

no, it not solve the issue. we still need to override the environment variable


Generate highway=*_link

It's a bit of a hack, but by subtracting FPVKLASS from DOUKLASS one can find link roads, as long as you make sure you don't use DOUKLASS from roads not represented in FPVKLASS.
Notes:
"AGGREGATLevkval_DoU_2017" => DOUKLASS 1 - 6
    # check if we should make this a link
    if tags.get("highway", None) in ['motorway', 'trunk', 'primary'] and way.tags.get("junction", None) != "roundabout":
        fpv_klass = way.tags.get("FPVKLASS", None)
        dou_klass = int(way.tags.get("DOUKLASS", 1000))
        if fpv_klass is None and dou_klass < 4:
            tags['highway'] += "_link"

NVDB_DKStamvag may be an interesting layer in this context.

I had a look at Stamveg, but it did not seem to contain any specific attributes for the on-ramp/off-ramp sections.
I agree the above solution is a bit of a hack, but the quality of FPV Class and DoU Class seem consistent. I believe this data is produced centrally by Trafikverket, rather than by many different people in municipalities and counties.

I haven't had time to study this, but you have in the layers Gatunamn and Vägnummer (ie for city roads and numbered roads) the field ROLL, which might be useful in this and similar contexts:
1: Normal
2: Syskon fram
3: Syskon bak
4: Gren
"Länkroll för gatunamn.Länkroll beskriver ett vägavsnittsroll. Syskonlänkar används när enväg har skilda körbanor. Grenanvänds för förbindelsevägar, t.ex.avfartsramper eller delar av encirkulationsplats."

Tests in Malmö.
The image below is with the DOUKLASS method, more specifically with this JOSM find filter:
DOUKLASS<4 (highway=motorway OR highway=trunk OR highway=primary) -junction=roundabout FPVKLASS=
that is select motorway, trink and primary roads if DOUKLASS less than 4, it's not a roundabout and FPVKLASS is not set:

The result is quite okay, but we can't get secondary or tertiary links with this filter, and it does get some falsely included as links, seen as the two parallel ways at the top.
Here's the same section using this filter:
ROLL=Gren -junction=roundabout (highway=motorway OR highway=trunk OR highway=primary OR highway=secondary OR highway=tertiary)
ie, select all ROLL=Gren which is not roundabouts and is included in motorway to tertiary:

The result is better and more complete. There's still an error (same as in DOUKLASS method), the top left of the four rounded links in the bottom right of the image is still not selected. It's marked as Syskon, which is simply just a data error in NVDB.

Here's a zoom-in on the roundabout at the top. Note that we do get the links that pass by the roundabout, which takes care of this from the OSM highway link wiki: "_link tags should also be used for physical channelization of turning traffic lanes at traffic signal junctions and in roundabout designs that physically separate a specific turn from the main roundabout. "

The above solution has been pushed to main

Agree, "roll" is better. It was not available in Homogeniserad.
In the Norwegian NVDB we have an additional attribute which is used for identifying the cases of a "gren" where a short branch from a trunk/primary is used for a rest area, parking, bus terminal and similar, but I have not been able to find anything like that so far here. At least we get _link in those cases.

I haven't actually looked at the homogeniserad format. I have noted when you read it in separate layers there's quite lot of issues of conflicting values and overlaps, like different names on roads, sometimes different maxspeeds etc. I've done my own resolving algorithm for that, looking at date and specifying priorities depending on different properties. I guess some minor differences could occur due to this compared to using homogeniserad format, but I don't think it should be a big issue.


Support for Angular Universal?

Hello,
Is it correct that this module not compatible with angular universal?
I get the following errors while rendering it server side because i think not the right renderer is used to modify the dom?:
ERROR { ReferenceError: document is not defined
    at DefaultDomRenderer2.selectRootElement (webpack-internal:///19:2111:72)
    at BaseAnimationRenderer.selectRootElement (webpack-internal:///669:32989:106)
    at createElement (webpack-internal:///1:9216:23)
    at createViewNodes (webpack-internal:///1:12200:44)
    at createRootView (webpack-internal:///1:12129:5)
    at Object.createProdRootView [as createRootView] (webpack-internal:///1:12818:12)
    at ComponentFactory_.create (webpack-internal:///1:9899:46)
    at ComponentFactoryBoundToModule.create (webpack-internal:///1:4001:29)
    at ApplicationRef_.bootstrap (webpack-internal:///1:5312:57)
    at eval (webpack-internal:///1:5167:81)
    at Array.forEach (native)
    at PlatformRef_._moduleDoBootstrap (webpack-internal:///1:5167:44)
    at eval (webpack-internal:///1:5129:27)
    at ZoneDelegate.invoke (webpack-internal:///304:392:26)
    at Object.onInvoke (webpack-internal:///1:4583:33)
    at ZoneDelegate.invoke (webpack-internal:///304:391:32)

I'm not sure but i have tested it on angular 4.x and 5.x with the latest angular2-universal, any one have a idee how to fix this?

Any updates on universal?


Add NFTOwned Facet by default in DiamondFoundry

This would complicate diamond initialization process, there is no need for that, we assume nftOwned facet is passed as parameter


CODE IS NOT RUNNING

[Running] cd "c:\Users\ayana\OneDrive\Documents\C PROGRAMMING" && gcc some.c -o some && "c:\Users\ayana\OneDrive\Documents\C PROGRAMMING"some
c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../libmingw32.a(main.o):(.text.startup+0xa0): undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status
HAVING THIS PROBLEM , SHOWING THIS WHILE RUNNING THE CODE, PLEASE HELP ME AS SOON AS POSSIBLE

/duplicate

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


const values are not accepted as array dimension in shaders

Godot 3.2.3
Godot 3.2.4 beta 3
Windows 10 64 bits
OpenGL ES 3.0 Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
The following shader fails to compile at the line where the array is defined with the constant:
shader_type spatial;

const int COUNT = 16;

void fragment() {
	float test1[16];
	float test2[COUNT]; // <-- fails here
}

With error
SCRIPT ERROR: (null): Expected integer constant > 0 or ']'
          At: :7

It should be possible to use constants here.

cc @Chaosus


Link sharing issue

On dev, the quick search functionality is working in the data sources app, however navigating directly to a URL of search results is no longer functioning. I am unable to replicate this locally when building from the dev branch.
For example a 404 is displayed for this url: https://data-sources.pdap.dev/search/Calls/Chicago

@mbodeantor we can call this closed, yes?

yup!


Regen of latest data from go_cam_mgi.gpad

Latest MGI import models for testing using new upstream data. Details in PR to mgi-go-cams repo: https://github.com/geneontology/mgi-go-cams/pull/1
Tagging @ukemi

Looks as advertised.


How to convert to wav file to listen to result?

I am a bit confused how to do this. Any help would be appreciated! :)

I would also like to know this. I can't seem to download the audio file after running the code.

I don't think the audio file is actually being written anywhere. Just the data stored in memory I believe.

What is the point then to advertise it as "text-to-music" generator? :(

I have played around trying to save the tensors as wav files (sample below for others interested), however I seem to only receive audio files out that are complete static.
I would really appreciate it if someone can offer a correct solution to this. I would be happy to submit code adding a utility for this as well.
# Turn noise into new audio sample with diffusion
noise = torch.randn(1, 2, 2**18)
sample = model.sample(
    noise,
    text=['Bird chirping'],
    embedding_scale=5.0, # Higher for more text importance, suggested range: 1-15 (Classifier-Free Guidance Scale)
    num_steps=15 # Higher for better quality, suggested num_steps: 10-100
)

import soundfile as sf
def save_wav(tensor, path):
    tensor = tensor.squeeze()
    tensor = tensor / tensor.max()
    nparray = tensor.squeeze().numpy(force=True).astype('float32').T
    sf.write(path, nparray, samplerate=44100, format='wav')
    print("Done saving file")

save_wav(sample, "test_generated_sound.wav")

This is a library for researchers to train audio diffusion models, no pre-trained models are provided here

The correct way to save a tensor to .wav file is as follows:
import torchaudio
sample_rate = 48000
torchaudio.save('test_generated_sound.wav', sample, sample_rate)

No additional utility or library is required for that


try to add dependency caching

r? @adamgreig
(rust-highfive has picked a reviewer for you, use r? to override)

bors try

bors try

bors try


design logo for raylib

I designed a logo for raylib. I think this logo is more stylish and more flashy than before. I've made it more noticeable by using the initials of the application. I can send files in any size and format. I hope you like it.

Hi @harunbadilli, thank you very much for the effort but I like current logo. No plans to change it.


Add EVP_DigestSqueeze() API for architecture s390x

This PR is based on  PR #21511 (which adds the new EVP_DigestSqueeze() API). This RP adds the s390x-related implementation for this new API.
The new API requires changes in the low-level asm implementation of SHA3_Squeeze(), as well as the in the default provider for sha3-digests. Both is covered in this PR. The patches are in separate commits for better readability, but will be folded later.
test_evp_xof can be used to test the new API. For testing the low-level implementation of SHA3_Squeeze(), the CPACF instructions must be by-passed (by setting environment variable OPENSSL_s390xcap=stfle:0:0:0  for the tests).
Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

Added the rebase label due to @slontis' last comment re: #21511

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

@holger-dengler Can you please rebase this?

The last four commits are still separate. Please let me know, if I should fold them.

As there were no changes in code in the rebase I am going to merge this now.

Merged to the master branch. Thank you for your contribution.


Update p2.js typings

This PR:

changes TypeScript definitions

The suggested typings comes from the official p2 typings. (from DefinitelyTyped)
I copy/paste the whole typings because they are not compatible with the phaser version.

ping @samme this is a serious blocking issue :/ .
Also i'll come back with more, I need to know if this kind of PR will be merge and release quickly.

If there are more TypeScript bugs, you're welcome to patch them, we can put it all in the next release.


Branch handling improvements

I have observed one problem and one detail with the branch extraction mechanism in pyk while working on a recent engagement:
Problem: the results of the extract_branches function (as used here) are not simplified or checked for satisfiability. This means that by using the mechanism we could end up with more complex terms in the path constraint or explore vacuous branches. My experience is that simplifications being applied is essential for tractability of our verification. For this reason, I am currently commenting out the extract_branches of KEVM while working with client code. I see two solutions:

Let the backend handle the branching fully - this will ensure the simplifications are done
Simplify manually in pyk (which does mean calling the backend) while checking feasibility

Detail: It is not always the case that the path constraints of next states syntactically extend the path constraint of the initial state. For example, if we learn that two symbolic variables are equal, then the backend will perform the substitution. This means that this check will not always work (as @lucasmt noticed). I have also flagged this substitution behaviour to the Haskell backend team so that it can be confirmed that it is desired.

A simple solution would be to check the feasibility of each branch that is extracted with extract_branches heuristic by passing it through the simplify endpoint. Then if any of the branches go to #Bottom, we discard that branch.
If we are left with just a single branch, we could can skip the extract branches logic and instead go through to the execute case. Something like this: https://github.com/runtimeverification/pyk/blob/e16401475cf16636e48cbd4e41b9fc85d2b614ef/src/pyk/kcfg/explore.py#L376, replaced with:
        if not kcfg.splits(target_id=node.id):
            branches = [self.cterm_simplify(branch) for branch in self.kcfg_semantics.extract_branches(node.cterm)]
            branches = [branch for branch in branches if not branch._is_bottom]
            if len(branches) > 1:
                kcfg.split_on_constraints(node.id, branches)
                _LOGGER.info(
                    f'Found {len(branches)} branches using heuristic for node {node.id}: {shorten_hashes(node.id)}: {[self.kprint.pretty_print(bc) for bc in branches]}'
                )
                return

Yes, this would work. The thing is that the returned branches (constraints, really) should be simplified with respect to both all of the simplifications we have as well as the current path constraint, so we need the correct way of doing that? I will explore...

You can probably use the routine APRProof.path_constraints to help here: https://github.com/runtimeverification/pyk/blob/e87862c070793908b2e7983222bddd71f5c0bb69/src/pyk/proof/reachability.py#L208


feat: ES5/IE11 cleanup (part 1)

:tada: This PR is included in version 5.0.0-beta.3 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


refactor(table): rename MatTableDataSource to ClientArrayTableDataSource

Renames the MatTableDataSource to ClientArrayTableDataSource to make it a bit clearer what it's supposed to be used for.
Fixes #14378.

Added to 11.0.0 milestone

Needs rebase

I'm closing this since it's pretty breaking and way out of date. We can recreate it if we still think it's a good idea.


Seeing the same subjects multiple times while classifying

I (and several other users) have been seeing duplicate subjects popping up again and again. Initially I thought this was just because I was refreshing my browser, but it has persisted even when I'm not.
Typically I will see ~10 different subjects, and the 11th subject is actually the first subject again, and I classify the whole sequence again up to 20, when I may start a new set of 10 or I may start seeing a third round. (I don't think it's always 10, but I'm not sure.) The net effect is that getting through a subject set takes twice the effort it should... so this is a pretty big deal.
I last duplicated this bug about 15 minutes ago.

This is actually related to #787


Column and Header Freezing

Add sticky-headers optional attribute for d2l-table-wrapper
Add sticky optional attribute for td / th
Setup position: sticky to allow headers and one column to be sticky

Have you tried this out with shadow DOM enabled? What about Polymer 2? Some of the selectors you're using appear to pierce shadow DOM, which likely won't work.
To test Polymer 2 with shadow DOM, just run polymer serve and then visit the "mainline" version.

There should be Galen tests for this.

Add a table with sticky column/header with an appropriate class/id in demo/simple.html
Add a selector to table.gspec giving it a label
Add selector label to imageCompare
Run npm run dump:galen:local
git add only the files that contain the label you need.
Run npm run test:galen:local

To simplify the use case a lot, I'd strongly recommend just making this work if consumers are using the proper table markup:

What about the alternate d2l-table method of using <d2l-table>/<d2l-tr>/<d2l-td>/etc.?

Noticed a bug: as the table scrolls, the rounded corners at the top cause the non-sticky rows to peak through:

You may want to try artificially pushing them down a few pixels to stay below the rounded bit.

To simplify the use case a lot, I'd strongly recommend just making this work if consumers are using the proper table markup:

Our goal is to make this work on Enter Grades Page (user_list_view) and a few other legacy pages that don't have valid table markup. I'll update to include valid markup for future proofing but we'll be keeping the header attribute support as well.

What about the alternate d2l-table method of using ///etc.?

As discussed. No pages in the LMS currently use d2l-table. We can create an issue to add support for d2l-table but it won't be included in this PR.

@dlockhart @awikkerink any other comments?

I think Galen tests should be added for the new type of table to ensure the borders stuff works in all browsers. I can add those if you can't get them working.

I haven't been able to get the Galen tests working on Windows so I'd love the help if you can add the tests, @awikkerink.

sticky with d2l-*:

sticky with d2l-table-wrapper:

Also, in shadow DOM, the sticky header column background colour is incorrect

@awikkerink Awesome! I've fixed the double border issue when the first item is not selected. When the first item is selected, we still have a double border. The issue is that with sticky headers, we want the header to have a border (to separate itself from other cells) but it shouldn't be the blue of the selected color.
Example 1: Header doesn't have a border bottom so the selected row looks correct. When we scroll down we get the following:

Example 2: Header has a border bottom but selected row doesn't have a top.

Looks like the tests didn't actually pass.
[galen] image file dumps/d2l-table-rtl/objects/row-header-without-thead.body.png, error 12px
[galen]
[galen]     dynamic.head:
[galen]         aligned horizontally top d2l-small.body
[galen] [sc] Closing Sauce Connect Tunnel
[galen] [sc] Shutting down
[galen] npm run galen:sauce:run exited with code 0
--> Sending SIGTERM to other processes..
[serve] polymer serve -p 8080 exited with code null

[galen] ->      image file dumps/d2l-table/objects/small-sticky.head.tr-1.png, error 6px
[galen] ->      :   Element does not look like "test/acceptance/dumps/d2l-table/objects/small-sticky.head.tr-1.png". There are 1458 mismatching pixels but max allowed is 6

The background of the sticky header in Polymer 2 Shadow DOM is white.

Looks like OSX is timing out for some reason

I think the purpose of this logic was to ensure the component was attached before setting the property.
I don't remember what the reason was. There may be an issue with IE11 or Edge

@awikkerink Edge unfortunately has issues around position: sticky. They technically 'support' it as it does work but it ends up hiding the borders of sticky objects. It also has an bug around RTL support. Since these are bugs, we're assuming MS will fix them but for the time being, we'll be disabling sticky support in Edge upstream. I can update the README to mention this but the Galen tests for sticky will fail until MS fixes their browser.

The issue is that Safari doesn't support :host-context so both isSticky and isRtl don't work in Safari. The chevrons are in the incorrect place and don't work. Sticky Headers doesn't support IE11 and now works in all supported browsers.

Looks like Edge failed because of SauceLabs. I restarted the build

I'm seeing a lot of sticky errors in the specs

Are those errors in Edge? If so, it's to be expected. I mentioned above, the Edge browser has issues with position: sticky and does things like hiding the border and positioning things incorrectly with RTL enabled. In the LMS we disable sticky-headers from being applied to Edge browsers. I suggest we disable running tests for sticky-headers against Edge until MS fixes the bugs. I can add to the README.md that Edge is not a compatible browser at the moment and we can remove that later when (if) MS fixes the bugs.

Edge and Chrome failed. The html report wasn't generated for some reason

Edge failed with this:

https://s3.amazonaws.com/sequence-viewer-artifacts/BrightspaceUI/table/715/715.1/2-edgewindows.html

https://s3.amazonaws.com/sequence-viewer-artifacts/BrightspaceUI/table/718/718.1/5-safarimac.html
WrappedException: Wrapped org.openqa.selenium.WebDriverException: Invalid message: ERROR Internal Server Error (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 0 milliseconds Build info: version: 'unknown', revision: 'unknown', time: 'unknown' System info: host: 'travis-job-brightspaceui-table-350391042', ip: '<IP_ADDRESS>', os.name: 'Linux', os.arch: 'amd64', os.version: '4.14.12-041412-generic', java.version: '1.8.0_161' Driver info: org.openqa.selenium.remote.RemoteWebDriver Capabilities {browserName: safari, cssSelectorsEnabled: true, hasMetadata: true, javascriptEnabled: true, platform: MAC, platformName: MAC, secureSsl: true, takesScreenshot: true, version: 10.0.1, webdriver.remote.sessionid: d0e655560cf64b1783880ffcfa5...} Session ID: d0e655560cf64b1783880ffcfa50f02a (/home/travis/build/BrightspaceUI/table/node_modules/d2l-galen-utils/galen/polymer-tests.js#73)


[FEATURE REQ] Improve the sample that allows to return an Object for Receiver and Error Handler with ServiceBusProcessorClient

Is your feature request related to a problem? Please describe.
The sample in the ServiceBusProcessorClient Class definition does not specify if the ProcessorClient only works with Consumers and it provides a basic example on how to create a processor.
The ServiceBusProcessorClient documentation does not point to valid samples on how to implement the client other than just the snippet that uses Java Consumers.

There is a sample found on GitHub but it is not being referenced in the official ServiceBusProcessorClient documentation: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/servicebus/azure-messaging-servicebus/src/samples/java/com/azure/messaging/servicebus/ServiceBusProcessorSample.java
The sample does use external non consumer methods to process messages and handle errors
Also, the sample uses getMessageId to retrieve a Session ID on line 79. Instead, it should use the getSessionId method.
However, the documentation for ProcessorClient located at the root folder "azure-messaging-services" in the same GitHub repo still uses the Consumer approach
The documentation on how to use the azure-messaging-servicebus package is also either not finished or misleading as, per the GitHub documentation, the developer should only add the BOM file and the direct dependency in order to use the SDK:

com.azure
azure-sdk-bom
{bom_version_to_target}
pom
import

com.azure
azure-messaging-servicebus

But by adding the BOM and dependency mentioned above there are errors at the POM file. It complains about a failure to read multiple artifacts, as shown by the image attached.
o	azure-core
o	azure-core-amqp
o	azure-core-http-netty
o	Etc

Describe the solution you'd like
Please kindly consider to:
•	Update the official documentation with the cases and sample mentioned above
•	Document the dependencies needed for the azure-messaging-servicebus to work properly
•	Either document both ways to receive messages and handle errors or stick with one approach: External methods or Java Consumers
Describe alternatives you've considered
Spike using the current sample and finding the alternative ways to have session working.
Additional context
N/A, as they were added to the description.
Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Description Added
[x] Expected solution specified

Seems like not a Spring library's issue, @Azure/azsdk-sb-java could you take a look at this?


Pass OS signals to Pulsar container process to enable graceful shutdown

Changes

using "exec" to run a command replaces the shell process with the executed process
this is required so that the process running in the container is able to receive OS signals

explained in https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
and https://docs.docker.com/engine/reference/builder/#entrypoint

receiving SIGTERM signal is required for graceful shutdown. This is explained in https://pracucci.com/graceful-shutdown-of-kubernetes-pods.html

This change might fix issues such as https://github.com/apache/pulsar/issues/6603 . One expectation of this fix is that graceful shutdown would allow Pulsar components such as a bookies to deregistered from Zookeeper properly before shutdown.
Motivation
Dockerfile best practices mention that "exec" should be used so that the process running in a container can receive OS signals. This is explained in https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
and https://docs.docker.com/engine/reference/builder/#entrypoint .  Kubernetes documention explains pod termination in https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination : "Typically, the container runtime sends a TERM signal to the main process in each container. Once the grace period has expired, the KILL signal is sent to any remaining processes, and the Pod is then deleted from the API Server ."
Currently some issues while running Pulsar are caused by the lack of graceful shutdown. Graceful shutdown isn't happening at all since the Pulsar processes never receive the TERM signal that would allow graceful shutdown. This PR fixes that.
This PR was inspired by https://github.com/kafkaesque-io/pulsar-helm-chart/pull/31

@lhotari bin/pulsar script already uses exec to running the process. Are you sure that we need this change?

@lhotari bin/pulsar script already uses exec to running the process. Are you sure that we need this change?

Yes, it's needed. exec is a shell built-in and it will only be able to replace it's current shell not any parent shells. Therefore the exec in bin/pulsar won't affect the top-level shell (command: ["sh", "-c"]).
You can quickly check the behavior without exec in docker:
docker run --name pulsar-standalone --rm -it --entrypoint '/bin/sh' apachepulsar/pulsar:2.6.1 -c 'bin/apply-config-from-env.py conf/standalone.conf && bin/pulsar standalone'

$ docker exec -it pulsar-standalone ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 19:56 pts/0    00:00:00 /bin/sh -c bin/apply-config-from
root         7     1 99 19:56 pts/0    00:01:01 /usr/local/openjdk-8/bin/java -c
root       685     0 10 19:56 pts/1    00:00:00 ps -ef

As it can be seen, /bin/sh is PID 1 in the docker container when exec isn't used.
after adding exec this changes:
docker run --name pulsar-standalone --rm -it --entrypoint '/bin/sh' apachepulsar/pulsar:2.6.1 -c 'bin/apply-config-from-env.py conf/standalone.conf && exec bin/pulsar standalone'

$ docker exec -it pulsar-standalone ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0 99 19:58 pts/0    00:00:14 /usr/local/openjdk-8/bin/java -c
root       253     0  0 19:58 pts/1    00:00:00 ps -ef

the java process is now PID 1 and it will receive OS signals as recommended in Docker and k8s documentation (links provided in the issue description).

@lhotari Thank you for your detailed explanation! It makes sense to me.


MINOR: improve resilience of Streams test producers

Some Streams system tests have failed during the setup phase
due to the producer having retries disabled and getting some
transient error from the broker.
This patch adds a retries parameter to the VerifiableProducer
(default unchanged), and sets retries to 10 for Streams tests.
It also sets acks equal to the number of brokers for Streams tests.
Committer Checklist (excluded from commit message)

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

The "flaky test" run from above failed during setup while downloading Java from Oracle:
    worker6: Connecting to download.oracle.com (download.oracle.com)|<IP_ADDRESS>|:443... connected.
    worker6: HTTP request sent, awaiting response... 200 OK
    worker6: Length: 191753373 (183M) [application/x-gzip]
    worker6: Saving to: ‘jdk-8u191-linux-x64.tar.gz’
    worker6:
    worker6:      0K ........ ........ ........ ........ ........ ........  1% 38.2M 5s
    worker6:   3072K ........ ........ ........ ........ ........ ........  3% 82.9M 3s
    worker6:   6144K ........ ........ ........ ........ ........ ........  4% 75.6M 3s
    worker6:   9216K ........ ........ ........ ........ ........ ........  6% 46.5M 3s
    worker6:  12288K ........ ........ ........ ........ ........ ........  8% 56.7M 3s
    worker6:  15360K ........ ........ ........ ........ ........ ........  9% 86.2M 3s
    worker6:  18432K ........ ........ ........ ........ ........ ........ 11% 74.5M 3s
    worker6:  21504K ........ ........ ........ ........ ........ ........ 13% 66.2M 3s
    worker6:  24576K ........ ........ ........ ........ ........ ........ 14% 81.0M 2s
    worker6:  27648K ........ ........ ........ ........ ........ ........ 16% 88.0M 2s
    worker6:  30720K ........ ........ ........ ........ ........ ........ 18% 78.8M 2s
    worker6:  33792K ........ ........ ........ ........ ........ ........ 19% 88.5M 2s
    worker6:  36864K ........ ........ ........ ........ ........ ........ 21% 69.8M 2s
    worker6:  39936K ........ ........ ........ ........ ........ ........ 22% 79.8M 2s
    worker6:  43008K ........ ........ ........ ........ ........ ........ 24% 42.6M 2s
    worker6:  46080K ........ ........ ........ ........ ........ ........ 26% 66.3M 2s
    worker6:  49152K ........ ........ ........ ........ ........ ........ 27% 52.8M 2s
    worker6:  52224K ........ ........ ........ ........ ........ ........ 29% 68.4M 2s
    worker6:  55296K ........ ........ ........ ........ ........ ........ 31% 76.4M 2s
    worker6:  58368K ........ ........ ........ ........ ........ ........ 32% 82.7M 2s
    worker6:  61440K ........ ........ ........ ........ ........ ........ 34% 33.5M 2s
    worker6:  64512K                                                       34%  265M=1.0s
    worker6:
    worker6: 2018-12-12 22:33:22 (63.2 MB/s) - Read error at byte 66082158/191753373 (Connection reset by peer). download failed
    worker6: Oracle JDK 8 is NOT installed.
    worker6: dpkg: error processing package oracle-java8-installer (--configure):
    worker6:  subprocess installed post-installation script returned error exit status 1
    worker6: Errors were encountered while processing:
    worker6:  oracle-java8-installer
    worker6: E: Sub-process /usr/bin/dpkg returned an error code (1)
    worker6: + echo 'ERROR: JDK install failed'
    worker6: ERROR: JDK install failed
    worker6: + exit 1
==> worker6: An error occurred. The error will be shown after all tasks complete.

re-running as https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2133

While analyzing the failed system tests, I found that my setting in BaseStreamsTest of acks==num_brokers breaks the (only, apparently) test that sets num_brokers > 1: StreamsStandbyTask.
This is because the VerifiableProducer class only allows the values 1, 0, and -1 (with -1 meaning "all"). this suits me fine, as I initially wanted to set it to "all". I'm updating the setting to -1 and re-running the streams system tests.
After analysis, I do not believe the client or core system test failures above are caused by the changes to VerifiableProducer, so I'll no repeat all tests, just streams tests x5.

Running streams system tests x5 x4 (total of 20 runs):

https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2135
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2136
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2137
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2138

@vvcephei I saw some of the system tests failed, are they relevant?

@guozhangwang Thanks for the reminder... I haven't looked yet. I'll let you know tomorrow.

Unfortunately, those jenkins jobs have already been cleaned up, and I couldn't find the results in s3... I'll re-run, and be more diligent about collecting the results:

https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2160/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2161/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2163/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/2164/

Ok, this time, I did three single all-streams runs and three x5 runs, so I could get some results faster:

x1 run: http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001.1546474009--vvcephei--fix-streams-broker-system-test--27e2aed/report.html
x1 run: http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001.1546474519--vvcephei--fix-streams-broker-system-test--27e2aed/report.html
x1 run: http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001.1546474682--vvcephei--fix-streams-broker-system-test--27e2aed/report.html

x5 runs are still pending.
All three of the x1 runs had 1 failure, but they all failed on different tests. I'll look more into it later.

All three of the x1 runs had 1 failure, but they all failed on different tests. I'll look more into it later.

Thanks @vvcephei

The x5 runs all timed out at the configured 800-minute mark.
However, before they timed out, all the tests passed:

http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001/report.html
http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001/report.html
http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-02--001/report.html

Ok, since the last runs took longer than the configured timeout, I updated the timeout policy to timeout only if the tests stop logging and kicked off 3 more streams x5 runs.
They failed 1, 2, and 1 time respectively, as noted below:

http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-03--001.1546598950--vvcephei--fix-streams-broker-system-test--27e2aed/report.html

133/test_log.info:[INFO  - 2019-01-03 23:12:18,786 - runner_client - log - lineno:230]: RunnerClient: kafkatest.tests.streams.streams_optimized_test.StreamsOptimizedTest.test_upgrade_optimized_topology: Summary: Never saw processing of AGGREGATED|REDUCED|JOINED ubuntu@worker6

http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-03--001.1546600602--vvcephei--fix-streams-broker-system-test--27e2aed/report.html

14/test_log.info:[INFO  - 2019-01-03 20:13:37,654 - runner_client - log - lineno:230]: RunnerClient: kafkatest.tests.streams.streams_named_repartition_topic_test.StreamsNamedRepartitionTopicTest.test_upgrade_topology_with_named_repartition_topic: Summary: Never saw processing of AGGREGATED ubuntu@worker7
15.2/test_log.info:[INFO  - 2019-01-03 20:31:51,419 - runner_client - log - lineno:230]: RunnerClient: kafkatest.tests.streams.streams_optimized_test.StreamsOptimizedTest.test_upgrade_optimized_topology: Summary: Never saw processing of AGGREGATED|REDUCED|JOINED ubuntu@worker6

http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2019-01-03--001.1546601379--vvcephei--fix-streams-broker-system-test--27e2aed/report.html

15/test_log.info:[INFO  - 2019-01-03 20:16:27,177 - runner_client - log - lineno:230]: RunnerClient: kafkatest.tests.streams.streams_optimized_test.StreamsOptimizedTest.test_upgrade_optimized_topology: Summary: Never saw processing of AGGREGATED|REDUCED|JOINED ubuntu@worker6

For one thing, none of these seem to be related to the change I made. I think if anything, it would result in an overcount of processed messages, not a failure to reach some state.
There is one test, test_upgrade_optimized_topology that failed one out of 5 times in each build, which might be a problem worth investigating...
WDYT?

There is one test, test_upgrade_optimized_topology that failed one out of 5 times in each build, which might be a problem worth investigating...

The test_upgrade_optimized_topology was upgraded by #6063 with 25 consecutive runs on branch builder, but it another look over wouldn't hurt.
If those are the only failures then I would agree that merging this PR should be safe.

Why are we setting retries? The point of KIP-91 was to move away from that approach.

@ijuma during startup phases there are other reasons than the ones KIP-91 tries to fix, e.g. not-enough-replica, without retries producer would drop the messages and cause test to fail.


missing license

the package.json says MIT but the license doesn't seem to be reflected in a LICENSE.md which is typically the convention i have seen for other MIT FOSS repos.
ref: https://github.com/houstonj1/node-with-metrics/blob/main/package.json#L8

👁 👁

:tada: This issue has been resolved in version 1.4.10 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


fix: use new TS Highlighter API

Since https://github.com/neovim/neovim/pull/13252 got merged, nvim-treesitter-context would error out sue to API incompatibilities.
This is just my quick attempt to get it back to work using the new highlighter API.

Is this working for you? With a build from master just now and this I get quite a few errors:

@romgrk did you update nvim-treesitter plugin?

Will try again when that gets merged, I've subscribed to that PR

Merged, thanks :]

I think there is a performance regression related to this change. Whenver I scroll large files, after some time of having them open, everything starts to lag.
I really did not pay much attention to it, just wanted to get it working without it spitting out lua errors everytime I scrolled, sorry about that.
I will see if I can spot the regression root although I cannot  make any promises.
I'm not really familiar with lua or tree-sitter, specially with the new api.


Support for offloading tasks which use imported JS libraries?

Currently it seems like we can just use our own functions with 'worklet' statement. Are there any plans to support imported libraries?
Eg. Passing JS instantiated objects to some of turf.js functions which are executed on another thread.
function nearest(targetPoint, points){
  'worklet'
  return turf.nearestPoint(targetPoint, points);
}

That not really possible to add from the library side. You'd need to look into "workletizng" the turf.js code yourself and use that. If it's a pure JS library it should be possible (ie. get the library code and mark everything as "worklet")


sct_label_utils: IndexError: index 118 is out of bounds for axis 2 with size 118

When using a segmentation file as input.
syntax:
sct_label_utils -i nifti_seg.nii.gz -create-seg 0,14:117,8
> Spinal Cord Toolbox (git-master-ff7553098ea27d2b6a51a90965a526f53368805e*)
>
> Traceback (most recent call last):
>   File "/home/felix/Repos/sct/scripts/sct_label_utils.py", line 828, in <module>
>     main()
>   File "/home/felix/Repos/sct/scripts/sct_label_utils.py", line 818, in main
>     processor.process(process_type)
>   File "/home/felix/Repos/sct/scripts/sct_label_utils.py", line 112, in process
>     self.output_image = self.create_label_along_segmentation()
>   File "/home/felix/Repos/sct/scripts/sct_label_utils.py", line 215, in create_label_along_segmentation
>     x, y = ndimage.measurements.center_of_mass(np.array(im_rpi.data[:, :, z_rpi]))
> IndexError: index 118 is out of bounds for axis 2 with size 118

@felixsc1 thank you for reporting this bug.
It sounds like the algo is trying to compute a center of mass in an empty slice. Maybe you have "holes" in your segmentation?  I'm happy to look at the problem if you upload the segmentation.

Thanks, I did have an empty slice in the segmentation, but after fixing it I still get the error.
Here is the example segmentation file. I get the error also for other scans of the same geometry.

@felixsc1 this is because the function assumes that the 3rd dimension of your input image (z) corresponds to the superior-inferior axis, which is not the case here (your 3rd dimension is A-P). So first, you would need to reorient to e.g. RPI, and then get your labels:
sct_image -i T1_seg.nii.gz -setorient RPI -o T1_seg_RPI.nii.gz
sct_label_utils -i T1_seg_RPI.nii.gz -create-seg 0,14:106,8

We will add a check at the beginning of the function, to make sure the input image is in the correct orientation.

reopening to make sure we implement the check for orientation of the input image

In #2289, the following was added to the create_label_along_segmentation function:
https://github.com/neuropoly/spinalcordtoolbox/blob/3d5df3e9b9c1de2047f463ab2189a4b72c4947c1/scripts/sct_label_utils.py#L195-L196
This has since been refactored during #2887 to the following:
https://github.com/neuropoly/spinalcordtoolbox/blob/d310d2670f93f0c272efc3e33a5e07b922d05230/spinalcordtoolbox/labels.py#L101-L104
So, the orientation check mentioned by @jcohenadad (https://github.com/neuropoly/spinalcordtoolbox/issues/2424#issuecomment-526841432) is already in place.
The curious thing is, the conversion to RPI was already been in place by the time this problem was reported (#2289: May 2019 vs. #2424: October 2019). So, I'm not sure what the cause of the original issue was.
Still, I think we could possibly close this.

The issue is more perverse than that: in the input syntax, the orientation is assumed to have z as the last dimension (chunk that says "0,14:106,8"). Even if data are reoriented, what counts is what the user think is the inferior-superior dimension.

Ah, I see now. I was going off of just these comments (https://github.com/neuropoly/spinalcordtoolbox/issues/2424#issuecomment-526726179) but more analysis was done in @saulo-p's PR here: https://github.com/neuropoly/spinalcordtoolbox/pull/2710#issuecomment-638408235.
I will look further into this to pick up where @saulo-p left off.

Even if data are reoriented, what counts is what the user think is the inferior-superior dimension.

In that case, is this issue not just an isolated case of usage error? i.e. if the input here was supposed to be 0,14:106,8 instead of 0,14:117,8. Or am I still misunderstanding?

I would need to spend a few minutes looking at the usage/code of this function, but a quick glance raises a few flags:

the systematic reorientation to RPI might not be needed for some operations, e.g. -add, -display
wrt. the issue raised by the user in this thread: I agree this is an isolated case, but i could think of two improvements:

change the usage of -create-seg to replace "z" by "slice index in the inferior-superior direction (e.g. z in case the image is oriented as RPI)"
display a warning in case the last dim is not I or S.

these are my "quick" two-cent

Perfect, I think we are on the same page. :slightly_smiling_face:
I very much agree that improvements could definitely be made to make the proper usage of -create-seg more clear.


Sous server explicitly sets wildcard for offset and flavor

Otherwise it was using the zero value of "" which meant "no offset" or "no flavor" - and ignoring those deployments entirely.

  Generated by :no_entry_sign: Danger

Codecov Report

Merging #388 into master will decrease coverage by 0.02%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master     #388      +/-   ##
==========================================
- Coverage   65.75%   65.73%   -0.03%
==========================================
  Files         144      144
  Lines        8113     8113
==========================================
- Hits         5335     5333       -2
- Misses       2332     2334       +2
  Partials      446      446

Impacted Files
Coverage Δ

cli/sous_server.go
59.61% <50%> (+3.84%)
:arrow_up:

lib/auto_resolver.go
88.05% <0%> (-2.99%)
:arrow_down:

Continue to review full report at Codecov.

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

There was a travis-ci on the development branch, but the same thing merged to master passed. I reckon this was an ephemeral fail, I tested the same branch locally and it passed.


Jump to next/previous cursorword match

Contributing guidelines

[X] I have read CONTRIBUTING.md
[X] I have read CODE_OF_CONDUCT.md

Module(s)
cursorword
Description
Is there any chance to implement jumping to the next/previous matching word by pressing keys like Alt+n/p? This is a very practical feature.

Maybe just using  */# is enough.

Thanks for suggestion!

Maybe just using */# is enough.

Yes, that's what I'd recommend using here.
Closing as not planned.


test(robot): add test case Test Longhorn components recovery

Which issue(s) this PR fixes:
Issue #9536
What this PR does / why we need it:
Automate manutal test case Test Longhorn components recovery into blow sub test cases

Test Longhorn components recovery
Test Longhorn volume recovery
Test Longhorn backing image volume recovery
Test Longhorn dynamic provisioned RWX volume recovery
Test Longhorn dynamic provisioned RWO volume recovery

Special notes for your reviewer:
Tested on my local env
Additional documentation or context

Summary by CodeRabbit
Release Notes

New Features

Introduced new keywords for managing backing images, Longhorn components, and share managers, enhancing operational capabilities.
Added a new test suite for validating the resilience of Longhorn components and volumes under failure conditions.

Improvements

Enhanced pod management functionality with new methods for waiting on pod statuses and retrieving pods from specific namespaces.
Improved logging and error handling in various components for better operational visibility.

Bug Fixes

Adjusted method signatures to allow for namespace specifications, increasing flexibility in managing resources.

Updated.
cc @yangchiu , @PhanLe1010 , @shuo-wu


[WIP @Balletie @gfokkema] Add the infosheet

ToDo:

@gfokkema has to fill in his description
@Balletie has to fill in his description

We need to add the outlook once the recommendations section has been written. Perhaps ask Eelco / Hendrik is the product is going to be used, too.
We need to ask Hendrik if we can include his email address as well.

To add: the project is difficult because no assumptions can be made regarding host languages.

Please merge this after #84.


[Bug]: Shutting down camera is not possible until destroy and should also work with removeStream

Version
0.2.2
Environment that reproduces the issue
Device: intel laptop
OS: Windows 11
Chrome 111.0.5563.65 (Build oficial) (64 bits)
Is it reproducible in the example application?
Yes
Reproduction steps
Using your demo app: https://record.a.video/
Add stream > Add screencast + rounded webcam
Delete cam stream (using the trash button)
The light of the camera continues being on and shouldn't.
I also tried after removing the stream stop the streams manually from outside:
getTracks().forEach((track) => track.stop());
But it still keeps the camera open.
It is only released when calling destroy() function.
Expected result
In my opinion the stream lifecicle should be managed from outside of the component, so:
When a stream is removed from the component it should completely release all the resources, even before the destroy.
Actual result
Currently the camera light continues being turned on until destroy the component
Additional context
No response
Relevant logs output
No response

In addition calling destroy fails if stopRecording has been called previously.


Custom docker images in connectable builds on resin-intel

Connects to resin-os/meta-resin#133-supervisor-custom-image-tag
@telphan @floion

LGTM


performance improvement for data loading in seq2seq example

In https://docs.chainer.org/en/stable/examples/seq2seq.html, the load_data function takes a rather long time (around 9-10 minutes~) to load, and it takes up a lot of main memory (15 GB~ of main ram). Is it possible to improve that speed, reduce the memory usage, or ideally both?
In real world scenarios, the issue of performance and memory will often come up, so if some general approach applicable to seq2seq example may as well help real world scenarios.
It's very good that the data set of this example reveals the performance side of consideration that let us think of.

I've updated the example to reduce memory consumption. Please see #4782.

Fixed via #4782.


Support for converting an existing VS 2017 Service Fabric Solution to VS Code (cross platform)

Hi @suhuruli, cross post with Support for Visual Code and Service Fabric Mesh but also relevant to Service Fabric. Have been converting an existing VS 2017 Service Fabric Solution (.Net Core) to run cross platform and so much (ALL) of the process is currently manual... hoping your efforts will take away the pain :wink:
That is, I have to create the various .sh files which build, publish and deploy the multi-project solution... not to mention configuring tasks.json & debugging etc. While the current Service Fabric Reliable Services Extension for Visual Studio Code is a good start, hope you can make converting existing solutions developed in VS 2017 to VS Code a one click experience?
For example I would like to open an existing Service Fabric solution built with VS 2017 and using .Net Core in VS Code on Linux... the VS Code Service Fabric Extension then kicks-in and "cross-platforms" the whole VS 2017 solution/projects, creates the relevant .sh Service Fabric / Mesh - Linux artifacts for building, cleaning, debugging, deploying, containerizing etc
PS. Let me know if you need any more detailed feedback... (EntryPoint, Runtime Identifiers, Release vs Debug mode support etc).

Thanks the for the feedback. Its a good one. Ideally we would want to be able to support deployment to Linux from VS itself. Today, you should be able to do that by changing the runtime identifier. In this case, if, I understand your scenario correctly, you start creating the solution on a windows platform with VS and then want to continue editing/ deployment/ debugging on Linux as both dev and target platform, because you would need the sh files only in that case.

Hi @raunakpandya, agree being able to deploy from VS 2017 to Linux would be great feature... above is specifically for existing Service Fabric projects which started life in VS 2017 or VS 2015... currently there is no support in VS Code to convert these existing solution/projects... so your understanding is spot on in that I want to take an existing Service Fabric solution & continue editing/deployment/debugging on Linux as both dev and target platform.
PS. The ideal experience is one where we can go full circle, say from VS 2015/2017 to VS Code or vice versa...

@MedAnd this is great feedback and one that we will definitely keep in mind.

@suhuruli - would also be helpful if the folder structure was kept consistent between platforms. For example using VS Code and yo azuresfcsharp on Linux, the structure created is very different to VS 2017 on Windows.

This a great point @MedAnd and something we are taking into account as best as we can

Another nice to have but longer term would be support for development and testing scenarios using Service Fabric for Linux on Windows Subystem for Linux (WSL).

@suhuruli - have encountered an issue during my manual port to Linux Unable to load shared library 'libFabricCommon.so' or one of its dependencies. As I'm attempting to make the solution cross platform and co-exist within the same folder structure, not sure where the issue is... any ideas?
Thx.

@PavanKunapareddyMSFT @rapatchi

Hi @suhuruli / @PavanKunapareddyMSFT / @rapatchi - any update on this feature? Thanks.

Hi @MedAnd, we have put this particular feature on hold while we prioritize some more important announcements for SF that you will see announced @ MS Build :) @peterpogorski, can comment on when this might land.

Thanks @suhuruli... will follow-up after MS Build ☺ and also look fwd to @peterpogorski insights.

For anyone tracking this feature request, the just released SF SDK version 3.4 and newer support publishing .Net Core applications from Visual Studio, targeting a remote Linux Service Fabric cluster
Hopefully VS Code tooling will eventually catch-up to support Windows to Linux, and vice versa deployments, in addition to being able to use the same project structures 😎

Hopefully that would be soon.. Sshhhh!!! :)

@raunakpandya - let's talk when you get a chance 😃


Using polyline decorator on geojson

I was wondering if I can use the polyline decorator similar to this:
var polylines = L.geoJson(json, {
  onEachFeature: function (feature, layer) {
    L.polylineDecorator(layer, {
      patterns: [
        {offset: 25, repeat: 30, symbol: L.Symbol.arrowHead({pixelSize: 15, pathOptions: {fillOpacity: 1, weight: 0}})}
      ]
    }).addTo(map);  /// Adds each decorator to the map!!!!
  }
}).addTo(map);

Is this possible right now?

Here is an minimal app with what I tried:
import requests
import json

import dash
import dash_html_components as html
import dash_leaflet.express as dlx
import dash_leaflet as dl
from dash_extensions.javascript import assign

sample_data = {'type': 'FeatureCollection', 'features': [
        {'type': 'Feature', 'properties': {'color': '#808080', 'width': 1.0
            }, 'geometry': {'type': 'LineString', 'coordinates': [
                    [
                        22.078610659636464,
                        50.55186121597399
                    ],
                    [
                        22.128103668948533,
                        50.61670780537185
                    ],
                    [
                        22.532823668948534,
                        51.13182780537187
                    ],
                    [
                        22.58414628215175,
                        51.19594585313759
                    ]
                ]
            }
        },
        {'type': 'Feature', 'properties': {'color': '#808080', 'width': 1.0
            }, 'geometry': {'type': 'LineString', 'coordinates': [
                    [
                        16.9775,
                        52.4742
                    ],
                    [
                        16.96598480139067,
                        52.534548583255855
                    ],
                    [
                        16.881744801390667,
                        53.01870858325586
                    ],
                    [
                        16.87251879452556,
                        53.079544464703204
                    ]
                ]
            }
        }
    ]
}

def prep_line_layer(data):
    geobuf = dlx.geojson_to_geobuf(data)
    draw_arrow = assign("""function(feature, layer, context){
    console.log("Entering draw_arrow")
    return L.polylineDecorator(layer, {
          patterns: [
            {symbol: L.Symbol.arrowHead({pixelSize: 15, pathOptions: {fillOpacity: 1, weight: 2}})}
          ]
        });
    }""")
    layer = dl.GeoJSON(
        options=dict(onEachFeature=draw_arrow),
        data=geobuf,
        format='geobuf',
        id="line_layer"
    )
    return layer

geomap = html.Div([
    dl.Map(center=[52.0, -11.0], zoom=4, children=[
        dl.TileLayer(),
        prep_line_layer(sample_data),
    ], id="map"),
], style={'width': '70%', 'height': '70vh', 'margin': "auto", "display": "block", "top": 50})

app = dash.Dash()

app.layout = html.Div([
    geomap
], className="container")

if __name__ == '__main__':
    app.run_server(debug=True)

I think there is somehing like addTo(map) missing here:
L.polylineDecorator(layer, {
          patterns: [
            {symbol: L.Symbol.arrowHead({pixelSize: 15, pathOptions: {fillOpacity: 1, weight: 2}})}
          ]
        });

However, I don't know how to address the map object and whether this is even possible.

As per the comment in decorator source,
/**

Deals with all the different cases. input can be one of these types:
array of LatLng, array of 2-number arrays, Polyline, Polygon,
array of one of the previous.
*/

I don't think that it is possible. But please prove me wrong :). I guess the easiest way to address you issue would be just to use the PolylineDecorator component instead.

Awsome!  This opens a whole lot of new possibilities :)


Log everything #85

Hello I had some issues with my mac and for some reason git created a new branch and I couldn't update my previous PR.
I believe I've finished all the logging functions, but I got some questions:

File: cloudbridge.cloud.providers.aws

resources: Should I add more debug messages?
services: Should I use log.info instead of log.debug?

Hope this helps. I also messed up  with a rebase I think, sorry about that!

@FabioRosado Thanks for these changes, looks great, and this is a great help! No worries about the rebase, we should be able to fix that. Can you give me write access to your source branch so I can fix it? (There's a check box on the right had pane of the pull request that will allow edits from maintainers)

This is awesome! Thanks @FabioRosado!

@nuwang Thanks for the help, I have the tick box checked so you should be able to edit my feature branch 👍
@afgane Thank you so much glad to help 😄

@FabioRosado Thanks for this excellent contribution - all merged in. I performed an interactive rebase with git rebase -i master, and that sorted the rebase issue. Thanks again for this substantial chunk of work!

@nuwang Thanks for the help. I did git pull before pushing my changes and I think that's why it all messed up haha

closes https://github.com/gvlproject/cloudbridge/issues/85


All *_up metrics return 0

Describe the bug
Hi. I noticed that the all *_up metrics return 0. Is it mean that the last scrape was unsuccessful and what might be the reason for this
What happened:
elasticsearch_index_stats_up,      |
elasticsearch_cluster_health_up  |  =>  All of them return 0
elasticsearch_node_stats_up       |
What you expected to happen:
I think that the value for successful scrape is 1, so i expect to get 1 from them metrics, not 0.
How to reproduce it (as minimally and precisely as possible):
elasticsearch-oss 6.7.1
elasticseearch-exporter 1.0.2

apparently you solved the problem. The _up metrics reflect success/failure of the corresponding elasticsearch HTTP API calls. The logs provide further details on failures.


API: implement HSDS/HSDA

See https://openreferral.readthedocs.io/en/latest/

We've made good progress on this, see repo and swagger. We can talk about ways of sharing this.

What would be the best way of sharing? A git submodule could be a possibility.


Fix retry-after header name and add fallback value

When diagnosing an unrelated issue I noticed that our in-house bot was repeatedly trying requests after receiving a 429 response.
This was caused by the header Retry-After being instead retry-after and the previous code then passing NaN to setTimeout which caused it to be called immediately.
I fixed it by renaming the header and then adding a fallback value if the header is not present. I also added a log message so that it is more obvious what is happening.

Thanks!


properly enumerated and cast but getting C2665 in VS 2017 ?

using vs 2017 with c++/CLI console project template 👍
code 👍
// Ex2_13b.cpp : main project file.
// Defining and using a C++/CLI enumeration.
#include "stdafx.h"
using namespace System;
enum class Suit{Clubs, Diamonds, Hearts, Spades};
int main(array<System::String ^> ^args)
{
Suit suit = Suit::Clubs;
int value = safe_cast(suit);
Console::WriteLine(L"Suit is {0} and the value is {1} ", value, suit);
suit = Suit::Diamonds;
value = safe_cast(suit);
Console::WriteLine(L"Suit is {0} and the value is {1} ", value, suit);
return 0;
}
I get
Error	C2665	'System::Console::WriteLine': none of the 19 overloads could convert all the argument types	Ex2_13b
Thank You for any guidance,  Lewis

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

ID: c477e357-0738-21c8-a309-ddbf3c35d328
Version Independent ID: e49ca50c-acf7-e722-a0c4-1fcb335eaa80
Content: Compiler Error C2665
Content Source: docs/error-messages/compiler-errors-2/compiler-error-c2665.md
Product: visual-cpp
Technology: cpp-diagnostics
GitHub Login: @corob-msft
Microsoft Alias: corob

I did , actually, have value and suit switched improperly in the above console output code, but I switched them back to suit, value and I still get the c2665.
Thank You, Lewis

@LewisHoff
I'm sorry, we don't have the bandwidth for support requests here, so I'm closing your issue. The best place to ask a question like yours is on the Microsoft Docs Q&A forum for C++. Off the top of my head, it looks like you have two issues. The first is, you're not using a template parameter with your safe_cast, which ought to be value = safe_cast<int>(suit); instead. The other problem that's causing Error C2665 is, you're passing a value suit of type Suit to Console.WriteLine without creating a way to convert its values into something printable. Console.WriteLine won't implicitly convert a Suit for you. Best of luck!

Thank You very much.  This is very helpful.  Lewis


[Feature] Show the addon detail status.

Now if an addon get stuck in enabling phase because of some reasons,  there aren't any ways for user to know what happened.  This pr set a field as DetailWorkflowInfo which contains the addon related application detailWorkflowInfo. And this field will always have the the reason of application hanging.
eg:
{
"name": "fluxcd",
"phase": "enabling",
"args": null,
"detailWorkflowInfo": "[{"id":"498cywf5sl","name":"deploy-control-plane","type":"apply-application","phase":"failed","message":"step output: step components: step 1: run step(provider=oam,do=component-apply): DispatchStandardWorkload: cannot apply manifest, name: "webhook-receiver" apiVersion: "v1" kind: "Service": cannot create object: services "webhook-receiver" is forbidden: unable to create new content in namespace flux-system because it is being terminated","reason":"Execute","firstExecuteTime":"2021-12-10T10:23:46Z","lastExecuteTime":"2021-12-10T10:23:46Z"}]"
}

@wangyikewxgm Describe your solution directly.

@wangyikewxgm Describe your solution directly.

Updated the content.


translated not working properly for circles - blank-canvas

Just found another issue:
drawingOf $ translated 3 5 $ rectangle 0.2 0.2 & circle 0.2
Doesn't work properly when running locally.
c2934c2 is also the culprit.

Thanks again.  Transformations were being applied twice to arcs and circles!  This time I tried a few examples to satisfy myself that there are no more obvious bugs, at least.  Will release a new version to hackage now.

Done

Thank you kindly sir.


[DOC] Create README template to be used for all near repos

Proposed github repo template:
https://github.com/near-examples/readme-template

@thisisjoshford @gagdiez, what do you think about this Readme template?

LGTM for big projects (QueryAPI, DA, Indexer, etc), and for small examples on docs we can follow the convention we are using now, which is simpler since the repos are also simpler


The local startup doc page cannot switch language

Before submitting your bug report

[ ] I believe this is a bug. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that reports the same bug
[ ] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS:WINDOWS X64
- Continue version:latest main cod
- NODEjs:v22

Description
I just pulled the latest main code and saw some commit records about the document update. So I executed npm run start in the doc directory and started the local 3000 port page to view the document. I noticed that there is a language switch option in the upper right corner. When I switched to Chinese, the page could not jump to the Chinese interface correctly. There was a quick redirect behavior. It seems that the front-end routing is not configured correctly.
To reproduce

Log output
No response

We are working on getting the Chinese docs that a recent contributor submitted available, but in the meantime we've just commented that language option out. So in latest main you should still have the select but with a single option, English.

thanks ,If it can support more languages including Chinese I believe it will be very useful to attract more developers come here


⚠ ClamAV has degraded performance

In 30e15cc, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 68 ms

Resolved: ClamAV performance has improved in 2b50486.


Products json availability in checkout UI extensions

Please list the related package(s)
checkout-ui-extensions
If this related to specific APIs or components, please list them here
https://shopify.dev/api/checkout-extensions/checkout/extension-points/api
Is your feature request related to a problem? Please describe.

When developing a checkout ui extension app, we do not have acces via the existing API to product information.
For a regular Shopify app, we can get product details by accessing <storefront_url>/products/<product_handle>.json.
When trying to fetch the same url from within a checkout ui app, the request is being redirected to <storefront_url>/password
Describe the changes you are looking for
Ability to retrieve product data via the checkout UI extensions API.

Test

I can't provide an ETA, but we're currently working on integrating the storefront api into checkout extensions.

It looks like this was added to some of the checkout extension apis based on the change log via the query object in the standard API are there any plans to add this to the post purchase extensions API as well?


[Request] Matter over Thread protocol examples

Hello,
Could you add some examples of Matter over Thread protocol implementations show in this video:
M5NanoC6 demo
Regards

The examples shown in the official website video use the examples officially provided by esp-matter.

I'm thinking of this environment seen on video here:

1 * M5Stack FIRE IoT (OpenThread Border Router)
1 * M5NanoC6 (OpenThread RCP - Radio Coprocessor)
1 * M5NanoC6 (Matter Light)
1 * M5NanoC6 (Matter Contact sensor)
1 * M5NanoC6 (Matter Temperature and humidity sensor)

I'd like to do the same environment with my M5CoreS3.


Editor doesn't draw node-pointer arrows that are located inside conditionals

In the following example node, the [[NodeCats]] and [[NodeDogs]] don't seem to be recognized as node-pointers. If there is no node called "NodeCats", no error/warning is generated, and when the node does exist, no arrows are drawn.
<<if $someVariable == true>>
    Okay, since that is true, let's talk about cats.
    [[NodeCats]]
<<else>>
    Hmm, since that is not true, let's talk about dogs.
    [[NodeDogs]]
<<endif>>

Arrows are already drawn to NodeCats/Dogs, although no error was generated.  Link parsing was improved which also generates errors for this case.


proposal: x/website/internal/dl: add including unstable without archived releases (?mode=json&include=stable,unstable)

What version?
https://github.com/golang/website/commit/51b22ef31af8bf2cb877aab9d56031bae8313a18
Does this issue reproduce with the latest release?
Yes
What did you do?
Query https://golang.org/dl/?mode=json for stable releases and beta releases.
What did you expect to see?
A way to query the endpoint and get back the latest stable releases, i.e. go1.14.7 and go1.13.5, as well as the latest unstable/beta/release-candidate, i.e. go1.15rc2.
What did you see instead?
I see only a way to query the last two stable releases:
https://golang.org/dl/?mode=json
Or to query all releases that includes stable releases, unstable releases, and archived releases, of which there are many:
https://golang.org/dl/?mode=json&include=all

Proposal
I think it would be useful for tools or development environments that automatically install the latest stable versions of Go to be able to easily query for the latest unstable releases. Using unstable releases is encouraged so that issues are found early and this is one way we could make that easier.
We could change the include option to take other values such as stable, unstable, and archived. The query value could support a comma-separated list of valid values so it would be possible to specify stable,unstable. This would be trivial to implement because the logic here is straightforward and malleable:
https://github.com/golang/website/blob/0108f0928b89f2c1b821381349f473db3f4cbfc4/internal/dl/server.go#L101-L107

In what way is it not easy right now?

It's not about reducing the size of the response, but folks who are automating the installation of Go in different environment may be, like me, doing this in scripts like bash scripts, etc. Right now because the default response is just the last two stable releases it is really simple to pipe that output to some other shell commands to install the stable releases.
When release candidates and betas come out ideally it is as simple for people to install them as easily as stable releases by adding a parameter to the URL. It's definitely possible to parse all archived old releases to get at the release candidates/betas, but I think there's value in surfacing at least betas outside of the archived list so that it is easier for people to install all stable+RCs/betas since running the betas and RCs is encouraged. If it is encouraged it's worth lowering the barrier?
Another option would be to include the release candidates/betas in the default output but that'd be a breaking change and I'm not sure if that'd be appropriate.

We want this for vscode-go's Go release checking. In our case, the size of the response is important because vscode-go is watching this endpoint periodically. @dmitshur and @leighmcculloch, do you mind if we reopen this issue to reconsider the  feature and sort out the details (e.g. include=stable,unstable)?


Test failed: wrong import path

https://github.com/aliyun/aliyun-oss-go-sdk/blob/dee3ad30860e06bd1e28e4d16e2d591da8e03552/sample.go
import (
	"fmt"
	"sample"
)

this import path should be github.com/aliyun/aliyun-oss-go-sdk/sample

Thank you, it has been fixed .


Overlapping Demo is broken

Not sure if this is the right place to raise this issue, but it appears that (on mac latest stable Chrome) the demo for @emeeks's Network Annotation with Collision Detection is broken. I raise this here, because that block appears to be part of the docs for this library.

Thanks for letting me know it looks like the resize example is also broken. I'll take a look.

@mcnuttandrew thanks for flagging this, in the latest version 2.2.5 it has been fixed.


UKI auto regen via hooks, as the last action in the list

Change condition evaluation
Whitespace
postinst.d script to auto-create a UKI package after a kernel install
skip UKI if sbctl is not present

Now with additional refinements and silent failthroughs.
And colors! Pretty colors. Always nice.

Ready.


Is this adapter still maintained ? - PLEASE RESPOND UNTIL 15.7.2024

Is this adapter still maintained?
According to documentation this adapter uses the todoist V1 Api. This api is deprecated and wills top to work with November 2024 (according to todoist website https://developer.todoist.com/rest/v1/#overview
Please respond until 15.7.2024 if you still plan to maintain this adapter.
If there is no reaction until 15.7.2024 we could consider to migrate this adapter into iobroker-communita-area

ease respond until 15.7.2024 if you still plan to maintain this adapter.
If there is no reaction until 15.7.2024 we could consider to migrate this adapter into iobroker-communita-area

Pease respond until 15.7.2024 if you still plan to maintain this adapter.
If there is no reaction until 15.7.2024 we could consider to migrate this adapter into iobroker-communita-area


fix(collapse): remove unnecessary inherit

Remove unnecessary inherit property, which causes issues when custom widths are used, including percentage based widths

Fix in action here.
This fixes #6163.

LGTM


Material modules increases app size per each module. Reuse components.

Currently you indirectly forces developer to only use a single huge Angular module. Instead of using multiple modules. Why?
Because every time you import a Material module, it increases the app size. And even more if you use a shared module for this.
Example:
You import MatButtonModule in two modules. Use case: A page and a dialog with its own module. Build you app and you see duplicated code. The MatButton code is not reused. It appears two times in built code as exact copy.
There is also an article what descibes the use of shared modules:
https://indepth.dev/posts/1191/stop-using-shared-material-module
This will reduce the app size. But does not fix the core issue.
In this issue we want to find a solution. Find a way to import this Framework/Components only once and use it in every module in you app without increasing the app size for each module by Material modules. Maybe tree-shaking? Would forRoot/forChild work? I'm sure you have better ideas.
Why not just initialize the framework once in e.g. main or main module? Like the most other UIs work. E.g. Ionic.

If you can show this is an issue, I'd recommend filing it against the framework itself.  There is nothing we can do about this from the Material side


docs: fix kompat tools to support semantic versioning correctly

Fixes #5841
Description
Fix kompat tool to generate correct semantic versioning for Karpenter/Kubernetes compatibility matrix
How was this change tested?
Does this change impact docs?

[x] Yes, PR includes docs updates
[x] Yes, issue opened: #5841
[ ] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Can you generate the new compatibility table for the docs and add the table to all versions?

There is nothing new when generating a doc, this fix adhere to semantic versioning in case Karpenter will have compatibility with not the latest k8s version, in the case of a range between Karpenter versions, instead of <version min> - <version max> it will output >= <version min> <= <version max>

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.458%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5340

Relevant Lines:
6476

💛  - Coveralls


fix: amend orientation to support faceUp and faceDown

Currently this wasn't supported so in faceUp and faceDown orientation.
The default was portrait. Now it takes the statusBarOrientation.

@arielhernandezmusa Hey man, are you around?
Can you take a look at my PR's? I need them. Thanks


[AppConfig] Use the latest stable version 2023-10-01 and remove azure-core-experimental dependency

We have a working canary endpoint which was deployed successfully on 10/31/2023.
It is time to change to use the latest deployed stable service version. 2023-10-01.
TODO: After azure-core is released, remove the azure-core-experimental dependency, and use the PollOperationDetials class.

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


Forwarder 500

I have seen below error occasionally on my Azure Kubernetes Service cluster. Seems random.
time="2018-10-12T23:44:27Z" level=info msg="forwarder information" Scanner ID=29003d0e7ec754ce5ed6530d60a2b0ba Scanner URL="https://scanner.heptio.com"
time="2018-10-12T23:44:28Z" level=info msg="waiting for a done file to appear..." looking for=/tmp/sonobuoy/done
time="2018-10-13T01:20:33Z" level=info msg="done file detected"
time="2018-10-13T01:20:33Z" level=info msg="processing the done file contents"
time="2018-10-13T01:20:33Z" level=info msg="processing result file" result file=/tmp/sonobuoy/201810122344_sonobuoy_698ab9e5-872e-442d-b0b9-89b24413e34e.tar.gz
time="2018-10-13T01:20:33Z" level=info msg="failed to POST data" endpoint="http://<IP_ADDRESS>:9898/ingest/" error="non success response code: 500" result file=/tmp/sonobuoy/201810122344_sonobuoy_698ab9e5-872e-442d-b0b9-89b24413e34e.tar.gz

@weinong If it eventually succeeds then this is a known issue that recovers.

@timothysc got it. is the known issue documented somewhere?

@chuckha Do you know by chance if we have a bug log'd?  It's not really a bug, other then we could change the logline.

we have exactly 1 issue logged and it is to add exponential backoff & retries.

This is in the scanner-forwarder code and so the 500 coming from that server could have been any number of things. Need to look into the scanner servers themselves to see if we're seeing any server side errors on a regular basis.

I've faced this issue since 17 April..

There was another ticket #710 that is a current issue being resolved.
Going to close this at the current time due to the generic error not being much to go on after this much time. The other ticket mentioned, being newer, led to an actual fix since we could more easily repro/debug.


[Bug]: On Android, onLongPress function is working only once(initial render)

Mapbox Implementation
Mapbox
Mapbox Version
10.1.32
React Native Version
0.74.5
Platform
Android
@rnmapbox/maps version
10.0.0-beta.32
Standalone component to reproduce
import React from 'react';
import {
  MapView,
  ShapeSource,
  LineLayer,
  Camera,
} from '@rnmapbox/maps';

const aLine = {
  type: 'LineString',
  coordinates: [
    [-74.00597, 40.71427],
    [-74.00697, 40.71527],
  ],
};

class BugReportExample extends React.Component {
  render() {
    return (
      <MapView style={{flex: 1}}   onLongPress={() => console.log("long press")}>
        <Camera centerCoordinate={[-74.00597, 40.71427]} zoomLevel={14} />
        <ShapeSource id="idStreetLayer" shape={aLine}>
          <LineLayer id="idStreetLayer" />
        </ShapeSource>
      </MapView>
    );
  }
}

Observed behavior and steps to reproduce
onLongPress is triggered only once (during the initial render) on Android, but works as expected on iOS.
Expected behavior
onLongPress should be triggered whenever the user performs a long press on the map.
Notes / preliminary analysis
No response
Additional links and references
No response

+1

I am facing the same issue.

Mee too

I am running into this issue as well. Is there a workaround available ?

I am facing same issue


Properly specify syntax and semantics for SemVer version requrenments

Problem
Problem 1: there's no canonical spec for requirements. Specifically, what can be on the rhs in time = "0.1". Notably, this is not part of the semver spec. This is logic specific to Cargo (although it is similar to npm's one) and should be documented by us.
Problem 2: although all the info is documented in the current docs, I feel the info is spread across several pages in less than optimal ways.
Proposed Solution
Create SemVer Requrenments document in the reference section of the book, and move https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#specifying-dependencies-from-cratesio section there. The doc should describe syntax and semantics of SemVerReq, but shouldn't talk about path dependencies or alternative registries
In the current specifying-dependencies page, just link the new page. This is ok for reference docs.
In the guide section, update the examples to use past 1.0 crates. Say something along the lines of

time = "1.2.0" is a semver requrenment, and would allow any SemVer compatible version. For example, 1.3.2 would be allowed, but 1.1.9 or 2.0.0 would not. See NEW PAGE LINK for details. It is also possible to depend on local crates or github repositories, see OLD PAGE LINK for details

Link the new page from semver crate's docs as well
Notes
No response

Just FYI, there is some movement to officially document it here. I'm not sure if that will come to fruition, though. I think it would be good to have our own more explicit docs.


Conditionally use the proxy environment.  This was causing a failure …

…of the role on my Vagrant setup.
I'm not a huge fan of it, and if proxy_env was used anywhere else I'd definitely look to see if we can use the proxy conditional on proxy_env, rather than on the tasks.  However, without a proxy, it seems to be broken, and this fixes it.

Thanks!


Question: force Bermuda to create a device for an elusive MAC address that is not yet "seen" by home assistant?

I've avoided the template since this is a question, rather than a bug report: this is probably me needing a direction and/or documentation, rather than something needing fixing in Bermuda itself.
I'm currently trying to configure a new device under https://my-home-assistant/config/integrations/integration/bermuda, and the entry mask that has the placeholder="List of Bluetooth devices to specifically create tracking entities for." is only allowing selection of MAC addresses that it has already "seen".
I'm wondering if:

it is possible to enter MAC address that HA Bluetooth has not yet seen (effectively skipping the UI validation)
I'm doing something wrong while trying to get HA to see some of my devices

Further context

I'm trying to pair my Pixel 5 phone, and I understand that phones are tricky / fiddly due to potential MAC randomization.
I have a very noisy environment due to many Philips Hue devices using BLE themselves

My the phone is not being picked up by passive scanning: it is pairable from my main work computer, so I managed to extract its BT MAC address via bluetoothctl paired-devices there.
I was wondering if I could just take that MAC address and ask Bermuda to create a device from it, or if that's nonsensical because Bermuda must first have seen the device, for some reason.

I guess this is a general question on how to force devices to appear in HA :D
Also: is that list that I'm seeing somehow limited? Because I have at least 70~80 Bluetooth-capable devices around me, so I'm wondering if HA is somehow limiting what's visible.

The issue template is helpful regardless because it lets me know what version of the code you are using, and what your settings are, for instance. Having it filled out is never unhelpful, and is usually important.
If Bermuda can't "see" the address, then adding it to the config anyway won't fix it, because it still won't "see" any advertisements. In the case of a pixel, this is because it never sends adverts with that address, so there's no point trying harder to listen for them, they'll never arrive.
I'd suggest running the HA companion app on your pixel, and configuring it to send iBeacon adverts. These will be sent with randomised MAC addresses, and the next release of Bermuda includes the feature of being able to track iBeacons, so that should solve the issue for you.
I'm hoping to get that new version released "soon" - hopefully in the next several days.

Awesome! That's the piece of info I was missing: beacons of mobile phones (via companion app) aren't yet picked up be Bermuda!
Thanks for that! 😁
Closing here, as the missing puzzle piece is provided, thanks! 💪

Hey @Ocramius you might like to try out the new version v0.5.0 I just released - it includes support for the Android HA Companion app's iBeacon 💥

Gave it a shot locally: no luck, although I just enabled the iBeacon integration

Hmm that's very odd! It should work really easily out of the box - personally I haven't enjoyed the way the native iBeacon integration works, but if it's doing what you need that's great.
Which bluetooth proxies are you using - esphome or Shelly Plus?
If you want to dig further let me know, happy to help work out what's going on. We'll need to start with a screenshot of your bermuda config dialog, and the first page or so of output from the dump_devices service call.

Hmm that's very odd! It should work really easily out of the box - personally I haven't enjoyed the way the native iBeacon integration works, but if it's doing what you need that's great.

@agittins I'd first check any logs about the integrations on my end: it's probably broken on my end :)
Probably getting to it this week :muscle:

Which bluetooth proxies are you using - esphome or Shelly **Plus?

I'm currently trying on a TP-Link UB500, which is listed on the docs as problematic due to:

tp-link UB500 (RTL8761BU) - Frequent connection failures with active connections

Oh well, it's also apparently the most stable Linux Bluetooth USB adapter since a while. I forward the USB device from a  proxmox host down to the Home Assistant VM.
I have 2 * Shelly PRO 4 PM where Bluetooth proxy (passive scanning) is enabled, but I don't use them to test: I literally just sit near my server and try stuff out :-D

If you want to dig further let me know, happy to help work out what's going on. We'll need to start with a screenshot of your bermuda config dialog, and the first page or so of output from the dump_devices service call.

Would it be OK with an anonymized version with MAC addresses snipped out?

Cool, all good! Whenever you get a chance :-)
USB bluetooth adaptors aren't terribly well-tested with Bermuda because my focus has been on getting Area-based distance ranging. That said, the device_tracker entity has been working well with local bluetooth for quite a while, so it should work.
I just pushed a release fixing a bug where local bluetooth dongles would "stick" to a device that had gone out of range, but I don't think this will have been affecting you.
FWIW, I also forward my usb adaptor via libvirt, which is the same backend that proxmox uses IIRC.
Redacted MACs is fine, it might be helpful if you can leave the first octet in place just for picking between different entries but it'll be fine either way. You're also welcome to PM things to me if you'd rather not share it with the entire planet<EMAIL_ADDRESS>The dump_devices output will tend to be rather huge, so you can just include the first page or two for starters, or specify the particular addresses you're interested in to cull down the results it gives (just hit the "fill example data" button for tips).
The proxies are really where it's at, in my opinion. Being able to receive BT data into your system from anywhere in the house, via redundant receivers, its just awesome. I like it better than zigbee/zwave because I'm not reliant on a single receiver for the entire network (of course it's not for everything). Anyway, I'm rambling again 🤣

The dump_devices output will tend to be rather huge, so you can just include the first page or two for starters, or specify the particular addresses you're interested in to cull down the results it gives (just hit the "fill example data" button for tips).

I noticed: I keep daily notes, and my notes repository grew substantially, that day (including debug logs of the integration :P ).

The proxies are really where it's at, in my opinion.

I've yet to try setting near one of the shellys while debugging: will try working close to the Bluetooth proxies next :-)

I like it better than zigbee/zwave because I'm not reliant on a single receiver for the entire network (of course it's not for everything).

Mesh, yo. Honestly, I just want 802.11ah halow, and forever forget about Bluetooth/Zigbee/Thread/LoRa: just connect your ESP32-XYZ to my WiFi over WPA3, and enjoy IoT hell almost a kilometer away, in your little isolated VLAN :D

Just some feedback here: HA started picking up information about iBeacon through Bluetooth proxies, although with a ton of information being messy/missing:

The detection area kinda works too:

Distance also kinda works, but needs better calibration: would probably need to understand calibration a bit better.
In the following screenshot, for reference, my phone has been ~2m away from a Shelly 1PM Mini Gen3 for a couple hours:

I'll keep things monitored, but Bluetooth proxy was indeed the way to go, and I'll now start setting up hidden Shelly switches everywhere to see if room detection works (as you can see, I currently only have 4 Bluetooth proxies)

Hey, sorry I missed your previous updates. It looks like things are working OK for you. The "missing" sensor entries there are actually just "disabled". By default we only enable the distance and area sensors, since that will provide the information most people require.
But for testing or other work, Bermuda also provides those "distance to.." and unfiltered sensors so that people can dig deeper into how it works internally. But we "disable" those sensors by default so that they don't clutter up dashboards and also so that they don't cause a lot of database size increase, as HA will start recording their history if they are enabled.
Calibration can be done by the steps in the readme - but it doesn't matter too much if you are just doing room-based detection, since everything is relative.


Streaming a long file with decoder_main yield an exception in embedding.py

Running decoder_main on a "long" file (5 minutes) with --simulate-streaming and --num_left_chunks 15 end up throwing an exception inside embedding.py:
I0518 12:28:59.294829  3894 torch_asr_decoder.cc:100] Required 64 get 64
terminate called after throwing an instance of 'torch::jit::JITException'
  what():  The following operation failed in the TorchScript interpreter.
Traceback of TorchScript, serialized code (most recent call last):
  File "code/__torch__/wenet/transformer/embedding.py", line 17, in forward_encoder_chunk
      pass
    else:
      ops.prim.RaiseException("Exception")
      ~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    _1 = torch.to(self.pe, ops.prim.device(x), None, False, False)
    self.pe = _1

Traceback of TorchScript, original code (most recent call last):
  File "/workspaces/wenet/transformer/embedding.py", line 107, in forward_encoder_chunk
            torch.Tensor: Positional embedding tensor (1, time, `*`).
        """
        assert offset + x.size(1) < self.max_len
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
        self.pe = self.pe.to(x.device)
        x = x * self.xscale
RuntimeError: Exception

Expected behavior
I would expect that in streaming mode, we can transcribe very long audio.

OS: Ubuntu 16, pytorch 1.6.0, python 3.8.8, gcc 5.4,

—simulate-streaming is used to test the cpu usage. It will sleep to simulate the real speaking scene.
You should use the websocket with —continuous_decoding

hum, ok.  I'm getting a different exception when I try with the websocket approach.  I'm still a little puzzle as why setting a left context > -1 does not limit how many characters are considered by the network.  I'll do a bit more digging and I'll report here.
Just to be sure, you are saying that it should be technically possible to perform recognition on a very long audio by using --continuous_decoding and a positive num_left_chunk parameter, right?

The left context only limits the chunks num of decoding. Rescoring will consider the total sentence.
Set --continuous_decoding to true, a negative num_left_chunk works too (so do not care it).

Rescoring will consider the total sentence.
Can't we limit rescoring to a certain window?  I mean, if we want streaming capabilities, it sort of implies (in my head actually), to not bound the length of the audio to transcribe to a certain length.  Am I misunderstanding what WeNet considers "streaming" to be?

--continuous_decoding will detect the endpoint. Once the endpoint is detected, wenet will do the rescoring and reset the decoding state.

Unfortunately, this assert still fires on ~6min recordings.
Any chance on fix?
Here is how I run it:
./build/decoder_main \
    --chunk_size -1 \
    --wav_path $f \
    --model_path $model_dir/final.zip \
    --dict_path $model_dir/words.txt

Here is error message:
I1005 01:53:16.203866 98472 torch_asr_decoder.cc:111] Required<PHONE_NUMBER> get 36389
terminate called after throwing an instance of 'torch::jit::JITException'
  what():  The following operation failed in the TorchScript interpreter.
Traceback of TorchScript, serialized code (most recent call last):
  File "code/__torch__/wenet/transformer/embedding.py", line 17, in forward_encoder_chunk
      pass
    else:
      ops.prim.RaiseException("Exception")
      ~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    _1 = torch.to(self.pe, ops.prim.device(x), None, False, False)
    self.pe = _1

Traceback of TorchScript, original code (most recent call last):
  File "/data/users/diwu/github/reverse/wenet/examples/gigaspeech/s0/wenet/transformer/embedding.py", line 107, in forward_encoder_chunk
            torch.Tensor: Positional embedding tensor (1, time, `*`).
        """
        assert offset + x.size(1) < self.max_len
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
        self.pe = self.pe.to(x.device)
        x = x * self.xscale
RuntimeError: Exception

Same error.
So is the error solved now?


Added strong naming and fixed a dependency

Added strong naming to support the people who still use strong naming.
The signing is done with an open snk file, just to prevent issues.
Also fixed some issues with the embedded resources sharing.

This time dotnet core is also signed, don't know if that helps.

So the build with dotnet build is still having issues, this comes from the fact that resources (other than strings) work differently with dotnet core. The main assembly builds fine, it's the sample projects.
Let me see what I can do.

Hi, any chances you will get it merged soon?