extensions view: Wrap stars instead of clipping them

This is not a duplicate of #9644 -- but it's perhaps tangentially related

I'm using multiple boxes side by side in VSCode, so my individual editors are moderately narrow. And I turn on word wrap for my editors...
When I searched for an HTML Preview editor, in extensions, I saw this:

2 stars doesn't seem like a good rating. But I installed it anyway. (Yes, it has 3+ stars, but ...)
Keep in mind that a user, like me, won't necessarily know how non present stars work. Sure, it's possible that they're painted as hollow (as VSCode does), but it's also possible that they're painted as invisible, and if a user doesn't see them, and hasn't looked for extensions in general / recently, there's no way for them to know.
stars aren't shown in this view, so there's no hint about how to expect them above:

Some parts of the top grow ellipses, and the descriptive content wraps:

In short, I'd like the stars to wrap as an integral unit. arguably whatever tht13.html-preview-vscode is and the non selectable text This extension is enabled globally.  should as well. Or, if not, at least use ellipses instead of simply clipping them.

Hi, this is my very first time exploring the vscode repository and this issue seems interesting to me and I would be very grateful for a chance to be assigned on this issue as a part of Open Source Day! Thanks.

@Swatilekha-Roy: @JacksonKearl assigned #123423 to @sandy081 on May 11 which presumably would fix this. Although I'm really not at all certain.
That PR doesn't appear to have a video showing it applied 😦 .
I'd suggest asking for help on https://aka.ms/vscode-dev-community -- good luck.

Hi, im new to contributing to vs code, but id like to give it a try (because right now it seems like people got assigned, but they havnt done anything on this for months)

Personally, if I were you, I'd start working on it, the odds aren't high that someone else is, and worst case, I'd learn how to do some VSCode coding and not have my changes merged because someone else's changes are merged instead.
I'd probably also join the slack community:
https://aka.ms/vscode-dev-community

When i click the link, i get 'This link is no longer active' error

Hmm, that link is reachable from https://github.com/Microsoft/vscode/wiki/Feedback-Channels#slack
Lemme see if I can find someone who can poke it...

Its not reachable on https://github.com/Microsoft/vscode/wiki/Feedback-Channels#slack for me either, weird

I can still reproduce this on the latest mainline build, and it looks like this issue hasn't received much love lately. Mind if I work on this? Thanks!

Please be my guest

Hi,
It seems like it is still not resolved in the latest build so I was wondering whether it is supposed to look like this after it is wrapped?
Before:

After:

If yes, then I would like to work on its fix.
P.S.: Open to design suggestions.

I try not to micromanage projects I don't own. In this case, I wouldn't expect the separators to line up (or connect) across lines as the four items aren't related. More or less, I probably wouldn't want them to end up at the beginning of a line either.

Then I guess the comment in this PR https://github.com/microsoft/vscode/pull/147331 is what might be needed here. A horizontal scroll? If that's the case then that PR needs to get merged.

Horizonal scrolling is almost never the answer in my opinion. That text should just wrap. But, I don't own this project.
The wrapping of the stars in the description's video looks good.

I agree with @jsoref 's approach of Wrapping the text in the form of

No star rating, when the space is not at all.
In the form of a Number and star when the space is limited (e.g. "5⭐" )
As full star represented rating as soon as space is enough. (e.g. "⭐⭐⭐⭐⭐")

That sounds good for the star ratings part but what about the sponsors' badge and the total number of downloads counter? Will they be hidden when there is no space?

Looks like it is how the UI got designed. Everything on the right side of the extension image shouldn't move down more then the height of the extension image (I am guessing).

In the smaller window the right side of all content is getting clipped not only the stars.

So it might be worth considering a new ticket on this subject and discuss how we can design the header section for smaller window.
Relevant to this discussion. The row that have 1. Company name 2. Verified Badge 3. Number of downloads 4. Ratings
For smaller screens what we can do is:

Approximation of Download counts: 35,234,234 to 35M+
Ratings graphics to texts [star icon] 4/5 (26). Meaning one star icon followed by ratings and count.

But this alone will not help us if we shrink the window further to max allowed state. Contents will get clipped eventually

What can we do?

Determine how much the window can shrink.
Implement a smaller size layout where the header content can stack top to bottom. This is a common approach. If we have any UI/UX expert for contribution we can discuss it further.

Further Observation
Class VerifiedPublisherWidget, InstallCountWidget, RatingsWidget, and SponsorWidget already have a property called small which looks like generates output that is optimize for smaller window but they are not used by the looks of it as I can see the value passed is hardcoded false.


How to add user detail authorities to the authentication authorities (now only sope in the authorities)

How to add user detail authorities to the authentication authorities (now only sope in the authorities)

@Waylon-Firework As already mentioned in these previous issues (gh-1035, gh-1027, gh-1015 and gh-1014), we use GitHub issues only for bugs and enhancements.
Questions should be asked on Stack Overflow.


Automations get triggered at 02:00 am (GMT+2) when the API limit is exceeded

Description of Issue
Tonight was the second day when my 3 robots started vacuuming at 02:00 am (GMT+2).
It seems that the API limit exceeded for the day but the command was subsequently triggered the next day after the API call limit was reset.
Is there a way to display the remaining API calls for the day?
This would be very helpful to determine the best setting for the polling interval.
Is it furthermore possible to prevent these queued commands to be sent to the robots? It is not so much fun to get wake up at 02:00 am by a cleaning robot. ;-)
Plugin Version
2.1.0
AEG/Electrolux Appliance(s)
AEG RX9-1-IBM 900 277 268, AEG RX9-2-4-ANM 900 277 479, AEG RX9-2-6-IBM 900 277 480
HomeKit App(s)
No response
Diagnostic Checks

[X] AEG iPhone app is able to control the appliance.

Log File
[08/10/2024, 01:36:19] [Homebridge AEG Robot Vacuum] Request will not be retried (POST is not idempotent)
[08/10/2024, 01:36:19] [Homebridge AEG Robot Vacuum] [API authorisation] Electrolux Group API Status Code Error: [429 Too Many Requests] Limit Exceeded (undefined)

I will look into it when I get the chance. However, no behaviour will be good when the daily rate limit is exceeded. The current behaviour is designed for the short term rate limits of 5 concurrent calls and 10 calls/second… although i didn’t put too much effort into this aspect when I migrated from the reversed engineered app API to the official one, where the rate limits are far stricter.
This plugin has to poll each robot individually to monitor its status. The plugin’s default polling rate is selected based on only having a single robot in the account. Polling every 30 seconds results in 2880 calls/day out of the 5000 calls/day allowance. With 3 robots I suggest you increase the poll interval to around 90 seconds. You then shouldn’t have any issue with the daily API limit.
I am not aware of anything in the API that returns details of the remaining allowance, other than in the errors when it is exceeded. Anyway, I don’t think it would tell you anything useful beyond the figures I have quoted above anyway.

Forcing a rate limit violation shows that the API just sets a 429 status code, adds a x-amzn-errortype: TooManyRequestsException header, and returns a {"message":"Too Many Requests"} body.
The documentation states that the response "response will include ... specific details about the rate limit violation", but that clearly isn't the case. Other APIs I use not only identify which rate limit was exceeded, but also indicate when that limit will reset, and when to retry the request.
Hence, there isn't really any reason to treat 429 status codes differently from other transient error types.
As the log snippet you provided shows, POST requests (as used to send commands to the robot) are not retried... so they would normally be abandoned rather than queued when a rate limit is hit. However, it looks like in your case the OAuth access token expired after the rate limit was hit, so preparation of the POST /api/v1/appliances/${applianceId}/command was stalled until a valid access token was available to put in the request's Authorization header. When the API rate limit reset the token refresh was able to complete, and the POST request was finally issued.
I am thinking that the right approach might be to put a limit on how long non-idempotent requests wait for an access token to be available...
Please can you provide a more complete log file, showing the sequence of events from before the initial attempt to control the vacuum cleaner after hitting the rate limit, through to where that command was finally issued successfully?

I am thinking that the right approach might be to put a limit on how long non-idempotent requests wait for an access token to be available...

Sounds good!
Which logging options do you want me to activate? All 5 of them?

If you have an existing log, even without any debug enabled, it will be useful - just to confirm the series of events that led to the problem. Just normal homebridge debug would be better, but no need for any of the other plugin options.
I have already implemented a change to impose a minimum polling interval dependent on the number of robot vacuum cleaners in the account, and will start looking at a maximum delay for a Bearer token for non-idempotent requests. (I also want to remove the requirement to use at least Node.js 18.20.0 or 20.10.0 since apparently Synology NAS are stuck on version 20.9.0.) I will probably make a new release sometime later today.

 That's really helpful.
Without debug logging it takes a little bit of interpretation, but I think this is what it shows...

The access token is refreshed at 02:00 each day when then rate limit resets.
At 05:02:13 on the first day a timeout occurred polling the appliance state.
At 10:28:45 all three robots are triggered to start cleaning, but it looks like "AEG RX9-2-4-ANM" had some Wi-Fi connectivity issues and didn't receive the command. The other two started cleaning and returned to their dock within 30 minutes.
The access token expires in 12 hours, but the plugin refreshes it after 11 hours to avoid risking its expiry. This happens successfully at 13:00:10.
The last change in status was reported at 13:11:02. The daily rate limit was hit some time after that.
The regular poll requests are "silently" (only debug level logging) retried in response to the 429 status codes when the rate limit is hit.
At 15:30:35 the robots were triggered to start cleaning again. (The clean for the third robot is still pending since it has not reconnected.) I just realised that these are PUT requests, so are idempotent (as opposed to POST requests used to refresh the access tokens, which are not). Hence, these similarly get silently retried in response to the 429 status codes.
At 00:00:10 the following morning the plugin attempts to refresh the access code with an hour to spare before its 01:00:10 expiry. This is where the log starts showing the rate limit issue since POST requests are not idempotent, so are not retried. The outstanding poll and command requests will continue to be retried during this time.
Shortly after 01:00:10 the outstanding poll and command requests will presumably start returning 301 errors due to the expired access token, and their next retry will stall waiting for the token refresh to complete.
At 02:00 the rate limit resets and the access token is refreshed. The outstanding poll and command requests are then issued and succeed.

I had made an incorrect assumption when I assumed the play commands were non-idempotent requests, so just implementing a timeout on waiting for an access code won't deal with the case where retries continue for a long period whilst the access code is still good. (I had seen the POST in the log snippet, and forgotten that only the authorisation endpoints use POST.)
Conversely, just limiting the timeouts (whether by number of attempts or elapsed time) won't suffice since that check is performed prior to constructing the request for the next attempt and checking whether the access token is good (since it could expire during the retry delay).
I could implement a new timeout after constructing the request but before issuing it... but I don't like the idea of a request being stalled for hours and only have it fail immediately before it is issued. I also need to consider whether I want other requests to fail in that way instead of being retried indefinitely; the regular polling will cope with it, but the one-off initialisation won't so if there is a problem when the plugin (re)starts it could require a homebridge reboot to get it working again, which I would prefer to avoid.
Additionally, it looks like my watchdog implementation for detecting problems with the API needs some attention. It detected a problem at 05:02:13 on the first day, but not when the rate limit was hit. Further, it only logs when a problem is detected, but not when it clears. The implementation of this was quite different with the old API, and I just hacked it enough to fit with the new API when I made that change. I clearly need to show it some TLC.
I think my approach now will be to:

Rewrite the regular polling and heartbeat/watchdog scheme to work better with the new API and to log more consistently.
Add a time limit option to API requests, allowing /api/v1/appliances/${applianceId}/command to be handled as a special case instead of incorrectly tying this to whether they are idempotent.
Race the time limit against both the retry delay and waiting for an access token.

At 10:28:45 all three robots are triggered to start cleaning, but it looks like "AEG RX9-2-4-ANM" had some Wi-Fi connectivity issues and didn't receive the command. The other two started cleaning and returned to their dock within 30 minutes.

I had to reset that robot as it did not show up in the AEG/Electrolux App anymore.

I think my approach now will be to:
1. Rewrite the regular polling and heartbeat/watchdog scheme to work better with the new API and to log more consistently.

2. Add a time limit option to API requests, allowing `/api/v1/appliances/${applianceId}/command` to be handled as a special case instead of incorrectly tying this to whether they are idempotent.

3. `Race` the time limit against both the retry delay and waiting for an access token.

This sounds very good to me! :-D
I really appreciate your work on this great plugin!

That should be fixed in v2.2.0.
Please let me know how you get on with it.

I will keep an eye on that. ;-)
Do you want me to reduce the polling time to 30 seconds again to provoke the behavior?

It should no longer let you reduce the polling time below 58 seconds...

I can still set the polling interval to 30 seconds by either using the up/down arrows next to the field or by typing in the field manually.

The JSON schema for the configuration doesn't know how many robot vacuum cleaners you have in your account. Try setting it to 30 seconds and then look at the log file - it should say that it is increasing the value to 58 seconds.

Ah okay, thanks! I will have a look at the logs.
Currently I am running into another problem, that 2 of my robots are not visible in the devices section after deleting and readding them from the AEG app and therefore are also not promoted to HomeKit.
I will try again tomorrow... Maybe the AEG API needs some time promoting the robots again.

I now see the log message, although 2 of my robots are now missing, but this is another issue:
[09/10/2024, 02:00:51] [Homebridge AEG Robot Vacuum] Increasing polling interval from 30 seconds to 58 seconds due to Electrolux Group API rate limit of 5000 calls/day
[09/10/2024, 02:00:51] [Homebridge AEG Robot Vacuum] With 3 robot vacuum cleaners this reduces the polling rate from 8640 to 4469 calls/day

Nice!

Great! Thanks for confirming.
Either the reduced polling rate (avoiding the daily rate limit), or the time limit on outstanding commands, should have been sufficient on their own. With both implemented I would have been very surprised if you were still getting 2AM delayed starts.


Download latest activites

Argument 'count' should have an option to download only new activities. For this, the last download status has to be stored. This could be done in a pickle file in the download directory. An easy implementation would be saving just the last activity number. This will work as long as only new activities are added in Garmin. This will not work correctly, if the ordering of the activites are changed in Garmin. For instance by deleting activites.

Merged into develop.


GPU performance logging/improvements

Improved GPU performance logging
Reintroduces the subtraction trick in the multi-GPU case
Adds better performance logging
Use only one "ExecuteShards" function.
Use threads to launch NCCL AllReduce

From the look of it, it should be use ExecuteIndexShard only.  I will look more closely after Jenkins resumes.


Fix condition in Analytic Rule Dev-0270WMICDiscoverySep2022.yaml

Change(s):

Check "dllhost.exe" string against the last part of ParentProcessName.

Reason for Change(s):

It was checking against the full column of ParentProcessName (eg C:\Windows\System32\dllhost.exe instead of dllhost.exe)

Version Updated:

Yes

Testing Completed:

Yes

Checked that the validations are passing and have addressed any issues that are present:

Yes

Moreover, the title contains 2 consecutive spaces.

Hi @devikamehra, please provide your feedback. Thanks.

Hi @devikamehra, please review analytical rule and provide your feedback accordingly. Thanks.

Hi @devikamehra, please provide your feedback. Thanks.

Hi @devikamehra @rushriva @vakohl , please review analytical rule and provide your feedback accordingly. Thanks.

Hi @vakohl, please take a look at @ep3p's response to your comment. Thanks.


4.9

@rultor release tag is 4.9

@rultor release tag is 4.9

@portlek OK, I will release it now. Please check the progress here

@rultor release tag is 4.9

@portlek Done! FYI, the full log is here (took me 9min)


feat: modify onboarding process

Pull request checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been reviewed and added / updated if needed (for bug fixes / features)
[x] Build (yarn build) was run locally and any changes were pushed
[x] Lint (yarn lint --check) has passed locally and any fixes were made for failures

Pull request type

Please check the type of change your PR introduces:

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

What is the current behavior?

Issue Number: N/A
What is the new behavior?

simplify onboarding process

Does this introduce a breaking change?

[ ] Yes
[x] No

Other information

Made a commit that should get the e2e tests passing but not sure of the best way to test the private key and password sign in flow.

Pushed commit to modify the login e2e tests using the invoke method to copy the private key to an alias and use it for login.
Also, I am not sure why, in the second login e2e test, the error "There was a problem decrypting your identity" is thrown  - could be my logic is incorrect. @vimwitch @kittybest

Pushed commit to modify the login e2e tests using the invoke method to copy the private key to an alias and use it for login.
Also, I am not sure why, in the second login e2e test, the error "There was a problem decrypting your identity" is thrown - could be my logic is incorrect. @vimwitch @kittybest

Well, actually I didn't see the error? I think the invoke logic is correct 🧐

Ah sorry. I mean when you're actually running the e2e tests, type in a password and click the sign in button, you'll get error text thrown in the UI.

I tested this and it doesn't handle errors during signup properly. Try doing a double signup with an account and the flow should show an error and allow the user to retry or go back.
We also need a screen right after signup where we wait for the signup transaction to complete. I think this screen wasn't in there when I tested it. This is where we would probably show errors too.

I think that's because we are only mocking the response for the twitter oAuth using cy.intercept and not storing the token in local storage.

@vimwitch @AnthonyMadia please check, thanks


Existing SHAP solutions still have errors

When I run the SHAP with AutoGluon-Tabular Census income classification.ipynb in the existing solution of SHAP for AutoGluon
I want to run two additional SHAP code
shap.plots.waterfall(shap_values[0])

and
shap.plots.force(shap_values[0])

But it shows
'numpy.ndarray' object has no attribute 'base_values'

and
'In v0.20 force_plot now requires the base value as the first parameter! Try shap.force_plot(explainer.expected_value, shap_values) or for multi-output models try shap.force_plot(explainer.expected_value[0], shap_values[0]).'

Hi,
Here is notebook with fixes that works on google colab:
https://colab.research.google.com/gist/mglowacki100/ab3db81a05dbc80b7474779021e79a57/shap-with-autogluon-tabular-census-income-classification.ipynb
A few general remarks

it is important to pin version of Pillow to avoid error
cell with charts requires shap.initjs(), I think this is a colab thing as with jupyter typically suffice to init js only once

Things mentioned by @YUUUCC :

shap.plots._waterfall.waterfall_legacy(explainer.expected_value, shap_values[0], feature_names=val_data.columns)
shap.force_plot(explainer.expected_value, shap_values.mean(axis=0), feature_names=val_data.drop(columns='label').columns)
shap.plots.force(explainer.expected_value, shap_values[0], feature_names=val_data.drop(columns='label').columns)
plots.force and force_plot are equivalent.

@Innixma  btw. have you checked https://github.com/AnotherSamWilson/fastshap as an alternative for shap? Autogluon ensembles are great, but shap for them requires KernelExplainer which is way slower in comparison to the TreeExplainers.

Thanks for the extra info @mglowacki100!
fastshap does look like something of interest! Probably worthwhile to check out to see if it is an easy drop-in replacement, once I or one of the developers finds time to dive in. We'd probably want to refactor our entire shap logic so it is less awkwardly isolated to a tutorial and instead as a built-in method that users can use so long as the correctly shap package is installed.


Put uEntity instance ID into dedicated topic segment

The uEntity type and instance IDs contained in the ue_id field of
a UMessage are now being put into separate segments of topic names and
filters to support accepting any uEntity instance ID in topic filters.
Additionally, the mappign of UAttributes::ttl has been changed to use
the standard Message Expiry Interval property of the MQTT 5 PUBLISH
packet instead of using a User Property. This allows for taking
advantage of an MQTT broker's message expiration functionality.

@jjj-vtm @ValMobBIllich would you mind taking a look?

Makes sense to me! I checked and at the very least azures eventgrids support the message_expiry feature.
The only issue I could see is that there might be a discrepancy between the mqtt message expiry timer and the higher level uprotocol TTL? It should be negligible in most cases though I imagine.
For the topics Im still not understanding the logic of what gets mapped where. Maybe Im missing some part of what the UID means.
.../3BA/... becomes .../3BA/0/f...
and
.../403BA/... becomes .../3BA/4/...
so the first two digits get mapped to the new 3rd component of the topic and the last three digits become the 2nd component? Or is there more to it?

For the topics Im still not understanding the logic of what gets mapped where. Maybe Im missing some part of what the UID means.
.../3BA/... becomes .../3BA/0/...
and
.../403BA/... becomes .../3BA/4/...
so the first two digits get mapped to the new 3rd component of the topic and the last three digits become the 2nd component? Or is there more to it?

The uEntity identifier of a UUri is a u32, the 16 LSBs represent the service type while the 16 MSB represent the service instance.
The uEntity ID 0x0000_03ba has type 0x03ba and instance 0x0000 (the default instance).
This gets serialized to a URI as up://{authority_name}/3BA/{major_version}/{resource_id} and gets encoded into an MQTT topic name as {authority}/3BA/0/{version}/{instance}.
The uEntity ID 0x0004_00ba has type 0x00ba and instance 0x0004.
This gets serialized to a URI as up://{authority_name}/400BA/{major_version}/{resource_id} and gets encoded into an MQTT topic name as {authority}/BA/4/{version}/{instance}.
With the instance ID in its dedicated topic segment, we can now filter on a specific service instance or accept all instance IDs using the MQTT topic wildcard character (+).

That makes sense now thanks! I went ahead and created a small PR to implement these changes also on the transport side here: https://github.com/eclipse-uprotocol/up-transport-mqtt5-rust/pull/17
Lemme know if I understood everything correctly.

@PLeVasseur would you mind taking a look?


Support for In conditions

Given the following query
SELECT
    user_profile.id,
    user_profile.email,
FROM
    user_profile
WHERE
    user_profile.email in (pggen.arg ('emails'));

I get the following function signature out.
GetUsersByEmail(ctx context.Context, emails string)

However, it would be great if I got
GetUsersByEmail(ctx context.Context, emails []string)

Is this currently possible? if not, are there any blockers to supporting this?

Postgres doesn't allow prepared statements for in expressions. Since pggen compiles to prepared statements, there's no first-class support for in expressions.
A supported alternative I've used is to use col = ANY (pggen.arg('val')::some_type[]) https://stackoverflow.com/questions/36929116/how-to-use-in-clause-with-preparedstatement-in-postgresql
SELECT
    user_profile.id,
    user_profile.email,
FROM
    user_profile
WHERE
    user_profile.email = any (pggen.arg ('emails')::text[]);

I'm not entirely opposed to adding support in the future but since there's a reasonable workaround, that feature is a low priority. The reason to support in is that it sometimes triggers different query plans: https://stackoverflow.com/questions/34627026/in-vs-any-operator-in-postgresql

So I devised an alternative workaround, but I suspect yours is better as unnest is happening at runtime; however, in most cases where the array is small, I suspect the performance cost is tiny.
SELECT
    id,
    email
FROM
    user_profile
WHERE
    email in (select unnest(pggen.arg('email')::TEXT[]));

I reviewed the code around type deferring, and it looks like for first-class In support, you would need some query parsing to get context-aware knowledge of what type is better than the OID returned from the prepared statement parameter_types. This feels quite heavy for a small use-case like this that can be worked around; I suspect it would be useful first to collect a list of edge cases that would gain from static analysis of the queries and see if this is a worthwhile endeavor as I am not sure IN alone is enough for such an increase in complexity.
Additionally, right now, the query ran on the database is very true to the question you write in your SQL files. However, this would break down that behavior slightly as the generated Go code would need to do some query building to build the correct number of $X values into the query ran against the database depending on the input size of the slice.

you would need some query parsing to get context-aware knowledge of what type is better than the OID returned from the prepared statement parameter_types. This feels quite heavy for a small use-case like this that can be worked around

Yes, I've stuck solely with prepared values because it's much easier to support.

I suspect it would be useful first to collect a list of edge cases that would gain from static analysis of the queries and see if this is a worthwhile endeavor as I am not sure IN alone is enough for such an increase in complexity.

Good thought; I agree. I'll close. If folks have a reasonable use case, please comment with details.


Improve tvmc error message from lazy-loading frontend imports

When installing TVM from the python package, the Frontend frameworks dependencies such as TensorFlow, PyTorch, ONNX, etc, are not installed by default.
In case a user tries to run tvmc using a model whose framework was not installed, it will be presented with a very raw Python exception in the output.
The aim of this commit is to implement a better error messages for errors related to lazy-loading frontend frameworks in tvmc.
cc @areusch @leandron @gromero @Mousius for reviews

@ophirfrish please address the comments and the ci failure (maybe just need to re-submit as CI was flaky the past week or two).

I am still working on some of the comments I got. Will submit the updated code once all comments are resolved
From: Andrew Reusch @.>
Sent: Sunday, October 3, 2021 8:38 PM
To: apache/tvm @.>
Cc: Ophir Frish @.>; Mention @.>
Subject: Re: [apache/tvm] Improve tvmc error message from lazy-loading frontend imports (#9074)
@ophirfrishhttps://github.com/ophirfrish please address the comments and the ci failure (maybe just need to re-submit as CI was flaky the past week or two).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/apache/tvm/pull/9074#issuecomment-932994335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKEKISZ7NTGFVUK4PNVIS7DUFCIHPANCNFSM5EQ3FKZA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Duration display showing incorrect values when switching between recording and watching video

Description
I've observed that the duration display is showing incorrect values when switching between recording video and watching video.
Steps to reproduce
First scenario:

Record video (record button)
Watch the video (auto plays) (duration displayed correctly)
Watch it again (play button)
The max duration is now displayed as "-:--:--". Towards the very end of the video the duration is displayed correctly again. Probably related to how duration metadata is missing from webm when recorded with RecordRTC? https://github.com/collab-project/videojs-record/issues/31

Second scenario:

Record video (record button)
Play a MP4 video using player.src = [{ type: "video/mp4", src: "source.mp4" }]
The max duration is correct, but the current time stops counting when it reaches the max duration of the recorded video. So if my recorded video is 5 seconds and the MP4 video is 15 seconds, when playing the MP4 the current time will get stuck at 5/15 seconds even though the video keeps playing.

Results
Expected
First scenario: Expected to see the actual recording max duration instead of "-:--:--"
Second scenario: Expected to see the actual current time instead of it getting stuck
Actual
First scenario: I see "-:--:--" as max duration
Second scenario: I see time getting stuck at 5/15 seconds
Additional Information
I've noticed that webm format files recorded with RecordRTC do not display the correct max duration no matter if they are recorded with videojs-record or played with videojs.
versions
videojs
Video.js 5.11.9
videojs-record
videojs-record v1.5.0
browsers
Chrome Version 54.0.2840.87 m (64-bit)
OSes
Windows 10 64-bit

Thanks for this detailed report. It's a known issue and it should be fixed.

@maxpaj is this still an issue?

I think this may be fixed with the config
videoMimeType: 'video/webm;codecs=vp9',

Thanks for the feedback. if you could verify this, it would be very useful so we can close this one.

Yup, it's definitely working now. You can close it :)

Thx for the feedback.


⚠ ClamAV has degraded performance

In 784e4e1, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 556 ms

Resolved: ClamAV performance has improved in cc1d163.


Add Payment feature

To test the feature, pull and run from the payment branch

Should PR from branch


[Dialog] clear deprecated api

@oliviertassinari I had to remove isOpen() since it makes no sense now. And defaultOpen, I don't think there really is a use-case for this. therefore I made open required. do you think we should ease into this or YOLO?!

Looks good. What should we do with the DatePicker https://github.com/subjectix/material-ui/blob/dialog-clear-deprecated-api/src/date-picker/date-picker-dialog.jsx#L162?
I think that having a controllabled DatePicker would be a good idea.

Is there any case for uncontrolled DatePicker or TimePicker?
Well for now they will be noop. I guess we should make other PRs to address them too.

I think that uncontrolled DatePicket and TimePicker make sense. For instance, in my app, I'm hacking the interface for them to be controlled. For instance, I need to close the DatePicker when the user navigate back.
I guess I'm not the only one to do so. I think that we should create another PR before merging this.
What do you think?

I think that uncontrolled DatePicket and TimePicker make sense... for them to be controlled...

@oliviertassinari I'm confused O.o

What I mean is that controlled and uncontrolled are two valid use case.

@oliviertassinari I see. In that case, sure. But let's not introduce breaking changes right now to those components. I'll try to patch them up within this PR before merging. sounds good? Later on we'll deprecate those props and cover the use-cases in a more convenient way.

I'll try to patch them up within this PR before merging

Sounds awesome!

@oliviertassinari Is this ok? I think it's better not to rebase, the second commit indicates exactly why those lines where removed and added.

Looks fine :).

How about releasing new version to NPM? Currently DatePicker is broken in 0.14.0-rc1 version.


refactor: remove unused junk from cgelem.c

You know I don't get an email when you update the branch, right?

Auto-merge toggled on


[FZ Editor] Disable hotkeys for template layouts.

Related to #1411
Assigning a key to templates should be disabled. The feature is allowed only for custom layouts.

This has been resolved in the 0.35 release. https://github.com/microsoft/PowerToys/releases/latest


addOptions fails to test URL if nil options are passed

While increasing code coverage in #1202, I discovered that if nil is passed to addOptions, then the rest of the URL tests are not performed.
This means that a garbage URL could be used without detection if nil is passed as the option.
This doesn't seem correct, but this will need more investigation to see why that check was added there and if it was fixing some other problem.

Hello @gmlewis , was this task done? Is it also a good first issue?

This issue is still open and has not been done yet.
No, unfortunately I would not consider this to be a good first issue because it will take some investigation and testing to figure out what the correct solution is.

Hello, I am happy to work on this issue. As I understand the effect of moving the parsing of the URL before checking for the nil value of options might have unpredictable effects?

I apologize for not documenting this issue better.
Here is the problem...  In addOptions, the code says this right now:
// addOptions adds the parameters in opt as URL query parameters to s. opt
// must be a struct whose fields may contain "url" tags.
func addOptions(s string, opts interface{}) (string, error) {
	v := reflect.ValueOf(opts)
	if v.Kind() == reflect.Ptr && v.IsNil() {
		return s, nil
	}

	u, err := url.Parse(s)
	if err != nil {
		return s, err
	}
...
}

What I realized is that if opts is nil, then this function returns on line238 without even attempting to parse the URL.
So if the URL is can not be parsed, addOptions is still going to report success, and I'm thinking that the lines 241-244 should be moved up to the very top of the function.
In retrospect, this seems like a simple solution... however I filed this issue because this change will require a good amount of testing, and I would like someone to test out this change "in real life" as well, with the most endpoints as possible against real GitHub. I'm not expecting the change to cause problems, but we just need someone to carefully check.
Does that make sense, @paladium ?
Thank you for volunteering!

Yes, I understand the issue better now. I will be happy to test out this change. Is there any formal way I can document the process of real-life testing?

I can make a separate repo, include the changed library and write e2e tests for each API endpoint by consuming the new library?

Oh, uh, wow... No need for a formal documentation process or a separate repo... thank you, though!
If you simply want to keep your notes of your testing in this GitHub issue right here, that is fine with me.

My biggest concern is breaking the large number of users of this repo without running the endpoints through their paces.  I can't imagine this change affecting anything negatively, but I just want (someone) to take time and make sure I'm not suggesting something stupid.  :smile:
Thanks again!

Yes sure, no problem.

Opening up issue for an experienced Go developer.
All contributions are greatly appreciated!
Feel free to volunteer for any issue and the issue can be assigned to you so that others don't attempt to duplicate the work.
Please check out our CONTRIBUTING.md guide to get started. (In particular, please remember to go generate ./... and don't use force-push to your PRs.)
Thank you!

This can be closed per the discussion in #2896. The main premise of this issue is still true, addOptions does fail to do any URL checks when opts is nil. However this isn't a real problem because the Client.New*Request methods also error on invalid urls, and in the case that those methods aren't used, http.NewRequest also returns the same error for invalid urls.

Many thanks go to @WillAbides for doing a deep dive into this issue and proving that it is really a non-issue in the above comment.
Closing as a non-issue.


Vcpkg uvw version 2.12.1

The version of uvw installed by vcpkg 2.12.1, not 3.0.0.

You should pull the latest changes then. I see version 3.0.0 here. 🙂


[WIP] Introduce fast PHP7 based linter

Closes enhancement part of #1959 .
Depends on #1970 .
Very early preview.

What is happening when disabling linter on php 7?
If I see it correctly the code is linted anyway, because of TOKEN_PARSE. But the exception for invalid files is not catched, because TokenizerLinter is not used.

Remember it's very early preview ;)
Indeed, on 7.x linter should be enforced.

I still think linting should be always enforeced and we should never fix invalid files (especially files from higher php versions).

The problem is that for PHP5 you are not always able to enforce linting, as you need to find PHP executable path

I often want to turn off linting so I can debug bad fixers.

one way or another for PHP7 linting would be always enabled thanks to Tokenizer change for semi-reserved keywords

What's the status here?

I would guess it needs some dev time to be finished

cc @SpacePossum @GrahamCampbell

Also, updated initial PR comment

Perhapse a linter factory would be better than having a linter wrapper class?

It was my first implementation. Then I got sick of it to replace the usage everywhere so I decided to kept the original name as is and encapsulate decision which linter will be use for component, so one could treat Process/Tokenizer Linters only as private classes for Linter namespace (as if it would be possible in PHP, like in C#)


translations for BCANZ report

currently only English
This report was generated through the [ssdtools Shiny app](https://bcgov-env.shinyapps.io/ssdtools)
which fits species sensitivity distributions to concentration data. The app is built from the R package [ssdtools](https://cran.r-project.org/web/packages/ssdtools/), and shares the same functionality.

**Toxicant:** `r params$toxicant`
**Report created:** `r format(Sys.Date(), "%d/%m/%Y")`
**Input distributions:** `r params$dists`
**ssdtools version:** `r utils::packageVersion("ssdtools")`
**R version:** `r gsub("R version ", "", R.version$version.string)`

\newpage

# Fit of all distributions
```{r, message=FALSE, warning=FALSE}
params$fit_plot

Goodness of fit table
kable(params$gof_table)

Table 1. The goodness of fit statistics. 'dist' is the distribution name; 'ad' is the Anderson-Darling statistic; 'ks' is the Kolmogorov-Smirnov statistic; 'cvm' is the Cramer-von Mises statistic; 'aic' is the Akaike's Information Criterion; 'aicc' is the Akaike's Information Criterion corrected for sample size; 'bic' is the Bayesian Information Criterion; 'delta' is the Information Criterion differences; 'weight' is the Information Criterion weights. 'delta' and 'weight' are based on 'aic' for censored data and 'aicc' for non-censored data.
\newpage
Model averaged fit
params$model_average_plot

Estimated hazardous/protective concentration
avehc <- ssd_hc(params$fit_dist, proportion = c(0.01, 0.05, 0.1, 0.2), ci = TRUE, nboot = params$nboot, min_pboot = 0.8, multi_est = TRUE)
avehc |>
  mutate(HCx = proportion*100,
         PCx = (1 - proportion) * 100) |>
  dplyr::select(HCx, PCx, est, se, lcl, ucl, nboot, pboot) |>
  kable(digits = 3)

Table 2. The estimated hazardous/protective concentrations. 'HCx' is the % species affected; 'PCx' is the % species protected; 'est' is the model-averaged estimate of the concentration; 'se' is the bootstrap based standard error of the estimate; 'lcl' and 'ucl' are the bootstrapped based lower and upper 95% confidence limits; 'nboot' is the number of bootstrap samples; 'pboot' is the proportion of bootstrap samples that converged. The model-averaged estimate(s) is calculated by treating the distribution as a single weighted mixture distribution. Distributions with an absolute AIC difference greater than a default delta of 9.21 (corresponding to a weight of no more than 0.01) are excluded prior to bootstrapping.
\newpage
Input data

coming - will take 1-2 weeks

done


RHCLOUD-35836 - Kessel E2E testing setup + Increase test coverage

PR Template:
Describe your changes

E2E test deploy

Testing suite now includes relations-api and spicedb as part of the setup
Folder structure for kind setup can be found under deploy/kind

Test suite has been changed

Expanded tests in inventory_http_tests.go to include update/delete's and relationships
Changes have been made to kafkaconsumer_test.go because of errors found during testing (unknown topic or partition error)

GH workflow for e2e tests has been changed to check the status of tests and return the logs

Ticket reference (if applicable)
Fixes #RHCLOUD-35836

Checklist

[ ] Are the agreed upon acceptance criteria fulfilled?

[ ] Was the 4-eye-principle applied? (async PR review, pairing, ensembling)

[ ] Do your changes have passing automated tests and sufficient observability?

[ ] Are the work steps you introduced repeatable by others, either through automation or documentation?

[ ] If automation is possible but not done due to other constraints, a ticket to the tech debt sprint is added
[ ] An SOP (Standard Operating Procedure) was created

[ ] The Changes were automatically built, tested, and  - if needed, behind a feature flag - deployed to our production environment. (Please check this when the new deployment is done and you could verify it.)

[ ] Are the agreed upon coding/architectural practices applied?

[ ] Are security needs fullfilled? (e.g. no internal URL)

[ ] Is the corresponding Ticket in the right state? (should be on "review" now, put to done when this change made it to production)

[ ] For changes to the public API / code dependencies: Was the whole team (or a sufficient amount of ppl) able to review?

Appears to be working on my system just fine!
$ kc get pods
NAME                                        READY   STATUS      RESTARTS   AGE
e2e-inventory-http-tests-gwhxr              0/1     Completed   0          27s
invdatabase-75f6cc55bc-45lbw                1/1     Running     0          2m4s
kessel-inventory-7dc5b568bb-24jkp           1/1     Running     0          2m4s
my-cluster-kafka-0                          1/1     Running     0          69s
my-cluster-kafka-1                          1/1     Running     0          69s
my-cluster-kafka-2                          1/1     Running     0          69s
my-cluster-zookeeper-0                      1/1     Running     0          104s
my-cluster-zookeeper-1                      1/1     Running     0          104s
my-cluster-zookeeper-2                      1/1     Running     0          104s
postgres-7f4f855598-xcj2x                   1/1     Running     0          2m1s
relationships-7f9656ff68-7pc7b              1/1     Running     0          118s
spicedb-cr-spicedb-7849b95878-wkspw         1/1     Running     0          83s
spicedb-operator-7d9c5c5c7d-mbrx2           1/1     Running     0          2m1s
strimzi-cluster-operator-6f9fbb4c75-pb582   1/1     Running     0          2m4s
[anatale@fedora-csb inventory-api]$ kc logs e2e-inventory-http-tests-gwhxr
Defaulted container "e2e-http-tests" out of: e2e-http-tests, wait-for-inventory (init)
INFO msg=TLS environment variables not set
=== RUN   TestInventoryAPIHTTP_Livez
=== PAUSE TestInventoryAPIHTTP_Livez
=== RUN   TestInventoryAPIHTTP_Readyz
=== PAUSE TestInventoryAPIHTTP_Readyz
=== RUN   TestInventoryAPIHTTP_Metrics
--- PASS: TestInventoryAPIHTTP_Metrics (0.00s)
=== RUN   TestInventoryAPIHTTP_RHELHostLifecycle
=== PAUSE TestInventoryAPIHTTP_RHELHostLifecycle
=== RUN   TestInventoryAPIHTTP_K8SClusterLifecycle
=== PAUSE TestInventoryAPIHTTP_K8SClusterLifecycle
=== RUN   TestInventoryAPIHTTP_K8SPolicyLifecycle
=== PAUSE TestInventoryAPIHTTP_K8SPolicyLifecycle
=== RUN   TestInventoryAPIHTTP_K8SPolicy_is_propagated_to_K8sClusterLifecycle
=== PAUSE TestInventoryAPIHTTP_K8SPolicy_is_propagated_to_K8sClusterLifecycle
=== RUN   Test_ACMKafkaConsumer
=== PAUSE Test_ACMKafkaConsumer
=== CONT  TestInventoryAPIHTTP_Livez
=== CONT  TestInventoryAPIHTTP_RHELHostLifecycle
=== CONT  TestInventoryAPIHTTP_K8SPolicyLifecycle
=== CONT  TestInventoryAPIHTTP_K8SClusterLifecycle
=== CONT  TestInventoryAPIHTTP_Readyz
=== CONT  TestInventoryAPIHTTP_K8SPolicy_is_propagated_to_K8sClusterLifecycle
=== CONT  Test_ACMKafkaConsumer
--- PASS: TestInventoryAPIHTTP_Livez (0.00s)
--- PASS: TestInventoryAPIHTTP_Readyz (0.00s)
--- PASS: TestInventoryAPIHTTP_K8SPolicy_is_propagated_to_K8sClusterLifecycle (0.16s)
--- PASS: TestInventoryAPIHTTP_RHELHostLifecycle (0.26s)
--- PASS: TestInventoryAPIHTTP_K8SClusterLifecycle (0.27s)
--- PASS: TestInventoryAPIHTTP_K8SPolicyLifecycle (0.29s)
% Message on kessel-inventory[0]@0:
{"specversion":"1.0","id":"1e974521-ac24-11ef-ae2e-c67b6670d6d5","source":"http://localhost:8000","type":"redhat.inventory.resources.rhel_host.created","subject":"/resources/rhel_host/00000000-0000-0000-0000-000000000000","datacontenttype":"application/json","time":"2024-11-26T18:27:40.380475782Z","data":{"metadata":{"id":"00000000-0000-0000-0000-000000000000","resource_type":"rhel_host","org_id":"","created_at":"2024-11-26T18:27:40.380475782Z","workspace_id":"workspace"},"reporter_data":{"reporter_instance_id":"Go-http-client/1.1","reporter_type":"ACM","console_href":"www.example.com","api_href":"www.example.com","local_resource_id":"0123","reporter_version":"0.1"}}}
% Headers: [content-type="application/cloudevents+json"]
The message is valid!
=== NAME  Test_ACMKafkaConsumer
    kafkaconsumer_test.go:230: Schema validation passed
--- PASS: Test_ACMKafkaConsumer (5.65s)
PASS


Update is-number and fill-range to version 4.0

Note that if we now update fill-range with the latest to-regex-range, we'll need to do a major bump on fill-range again. I know I said this before, but this will only create more duplicates in the dependency tree, and continue to create an endless loop of bumps with no payoff.

Also, going forward, if you do a PR with a major bump, please check for a changelog as well and (if one exists) please add a major version to the release history with a note of the change. thanks

Right thus this comment https://github.com/jonschlinkert/fill-range/pull/7#issuecomment-340976721
That was me not paying attention, sorry about that. I won't be updating fill-range in this repo as it's only a dev dependency.
+1 on the changelog. I'll go through my open PRs and add any that are missing.

+1 on the changelog. I'll go through my open PRs and add any that are missing.

thanks, I appreciate it

Looks like none of the repos I have open PRs on have one :)

Right thus this comment jonschlinkert/fill-range#7 (comment)

Sorry, I think you might be missing my point.
As an example, fill-range has 27 dependents. Any of those might be elsewhere in your dependency tree, in which case there will now be duplicates of fill-range in your dependency tree (one again) until all of those libraries also update their versions of fill-range to the latest. By the time that happens, it's possible if not likely that this library will have changes again.
Even if those libraries aren't in your dependency tree, we're potentially causing duplicates for other libraries that do depend on those libs. To you, this might not matter, since you're accomplishing your goal for yourself, but to me, it matters because we're causing unnecessary work for other devs that use fill-range.
My example was about fill-range, but the same thing obviously applies to all libs. At least one of the libs you did PRs on has hundreds of dependents, and some of those dependents are libs like yarn, jest, nyc, etc. Which means more duplicates for their users.

I indeed missed your point. I thought it was about causing a two majors in short succession.
As mentioned before my concern are those dependencies descendant of micromatch in the hope of getting a clean tree when/if es128/anymatch#22 happens. Right now micromatch pulls in 4 different versions of kind-of alone.
You obviously have a different perspective then I do (I'm a greenkeeper fan) and your approach of bumping the major when updating dependencies reflects that.
In the end these packages are your show, if you'd rather have me stop this I'm happy to do so.

if you'd rather have me stop this I'm happy to do so.

not at all, it's appreciated and totally up to you. I explained my point, you are the best judge of what you need for your projects, and I'm happy to help.


fix: throw NotFoundError when a document cannot be found

Types of changes

[ ] Chore (a non-breaking change which is related to package maintenance)
[x] Bug fix (a non-breaking change which fixes an issue)
[ ] New feature (a non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
This PR fixes getFirst() and all dependent methods, including getByUID() and getByID(), by throwing a NotFoundError when a matching document is not found.
NotFoundError is a subclass of PrismicError, retaining compatibility with instanceof PrismicError.
Before:
import { createClient } from "@prismicio/client";

const client = createClient("example-prismic-repo");
await client.getByUID("page", "non-existent");
// => throws PrismicError

After:
import { createClient } from "@prismicio/client";

const client = createClient("example-prismic-repo");
await client.getByUID("page", "non-existent");
// => throws NotFoundError

Checklist:

[ ] My change requires an update to the official documentation.
[x] All TSDoc comments are up-to-date and new ones have been added where necessary.
[x] All new and existing tests are passing.

🦁

Codecov Report

Merging #316 (e002238) into master (76fa2ca) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.


imagemagick doesn't install convert even when installing legacy tools is enabled for some reason now

not exactly the right place to put this but the other places i put this in completely ignored me so eh
._.
help pls

also slight feature request(s)
option to treat modern usernames (@s) as classic user/ URLs
wayback_features for the watch page
option to disable the modern channel banner on the channel pages because apparently they still show even when an appropriate wayback_features background exists

fixed by simply stealing an older version off the internet archive


Request : Faqwiki

Source name
Faqwiki
Source link
https://faqwiki.us/
Language
English
Other details
amazing website
a lot of completed novels
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a title with source name.
[X] I have checked that the extension does not already exist by searching the GitHub repository and verified it does not appear in the code base.
[X] I will fill out all of the requested information in this form.

Duplicate of https://github.com/LNReader/lnreader-sources/issues/619


Training dynamics

Hi, thank you for open-sourcing your code.
I'm working on a similar project, integrating point cloud encoding with diffusion, and I'm curious about what your training curves looked like. Did you notice a steep decline in loss initially, followed by it flattening out?
I'm observing that the gradient means and standard deviations for my PointNet encoder are very small, which makes me suspect it's not having much of a conditioning effect on the diffusion process. Did you notice anything similar?

This is very helpful, I am currently investigating the loss curves for each diffusion step (instead of the aggregate loss) - will keep you updated with my progress!
Sorry if I missed this in the paper, but how long did it take to train for that last 1%?

Hi, I think generally we train 2000~3000 epochs. Observing from the loss, I could tell that in only several epochs (~10), the loss has been very small. but we usually still train for long to make our policy accurate


empty cog created with custom TMS

I am having an issue creating a cog with internal tiling from a TMS spec (attached). Basically using the TMS spec seems to create a mostly empty image without the right dimensions or crs bounds.
The TMS spec is from a pr branch on Planetcantile where I am regenerating the tms specs, so I don't know if it's an issue with that or something deeper in rio-tiler going wrong.
The original image size is 11498 x 7665, but currently the rio-cogeo output size is 512 x 6144, and loading the file in QGIS doesn't show anything so I think the warpedvrt may not be reading the data correclty at all. I have't dug as deep as I could yet as I am hoping for a check in the tms attached as I could just be wildly off in that.
link to cog: https://asc-pds-services.s3.us-west-2.amazonaws.com/mosaic/Mars/Mars_MRO_CTX_Equi_Mosaics_Robbins/232mpp/MC08_232mpp.16bit.tif
attached TMS json spec
IAU49910.json

I think I have worked out that there is just something really odd and off with the projection information on the source data as I used a different dataset successfully with the tms spec. I am thinking there could be some good logging to add to warn users that there is no data in common with the projections, but that is more of a feature request than issue


ExpandableLinearLayout

A LinearLayout variant would be useful

Hi @Wavesonics ,
I thought I created it. So, I named ExpandableRelativeLayout.
But a LinearLayout is complicated how to calculate a size of child layouts.
I think you use the ExpandableRelativeLayout is better.


Biometrics prom while entering background in iOS 14.7.1

When FaceID & Passcode turn ON, while entering background mode (hit HOME) bottom. The app prompt Biometrics challenge. Same behavior not observed on other iOS version.

yeah seem weird with swiftUI sensePhase stuff

fixed in 2022.05.15 release


Ghidra Loaders doesn't support JRE 16

Describe the bug
When I want to disassemble something, the "format" option is only "Raw Binary". Maybe the JRE/JDK update broke the Ghidra loaders.
To Reproduce
Steps to reproduce the behavior:

Install Java JRE 16
Open Ghidra and import a file
the format is only Raw Binary , and you can see the error message:

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Attachments
If applicable, please attach any files that caused problems or log files generated by the software.
Environment (please complete the following information):

OS: Windows 10 19042
Java Version: 16.0

Ghidra Version: 9.2.3
Ghidra Origin: official repo

Additional context
I found a discuss topic in Reddit: https://www.reddit.com/r/ghidra/comments/mfr39k/issue_with_ghidra_pe_loader/
They said:

I have solved the issue. I noticed JDK updated in March. Apparently the JDK update from 15->16 broke the Ghidra loaders. I uninstalled JDK 16 and installed 15 and it's working perfectly now.

Duplicate of 2879.  See the following comment to enable support for Java 16.
https://github.com/NationalSecurityAgency/ghidra/issues/2879#issuecomment-810161137


Consolidate memory read/write regs into one access reg

As riscv32 doesn't have instruction with read/write memory at the same time, we can combine the nodes for read/write to one set of nodes.

Thanks for your contribution!


Roll Engine from 20caf5496951 to d6beaed561f0 (1 revision)

https://github.com/flutter/engine/compare/20caf5496951...d6beaed561f0
2020-11-25<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from gkfmiRsIl... to un3JixwuO... (flutter/engine#22744)
Also rolling transitive DEPS:
fuchsia/sdk/core/linux-amd64 from gkfmiRsIlyNL to un3JixwuOl_i
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.


Update Documentation in all .mustache-files

Updates the documentation within each .mustache-file. Each template now clearly states dependent templates, dependency templates, as well as additional context. This does not affect generated classes in any way.

Checklist
Each item in the list MUST either be checked ([x]) or crossed off (~).

[x] Closes #278
[ ] New Release?

[ ] Update <version> in pom.xml
[ ] Update <version> in README.md and index.md

[x] Compile the project with mvn clean install
[x] Commit all new/changed/deleted generated-sources-files
[x] Documentation (README.md & index.md) have been updated

Forgot to include generated-sources... #280


Add Windows Authentication support to WiltonDB

Babelfish supports GSSAPI, but it is not included with WiltonDB. In theory GSSAPI (MIT Kerberos) may be used with Windows Kerberos (Active Directory) when running on Windows as the Kerberos protocol is supposed to be compatible between MIT Kerberos and Windows Kerberos. But in practice PostgreSQL on Windows does not use GSSAPI to talk with Active Directory - uses SSPI (Windows Kerberos with NTLM fallback) instead, and SSPI  part is not implemented in Babelfish for TDS protocol.
This issue is to explore the possibilities to implement SSPI for TDS connections in WiltonDB.

@staticlibs can you please let us know where we on this?

@psrinivasa2 , there has been no work done yet on this issue.
To clarify the situation: I am currently working on #2137 and need to complete it before taking on another major tasks (like SSPI support for Windows Auth). I do think that there are more potential users of Babelfish on Windows who are interested in Windows Auth (because many MSSQL users rely on it), than in legacy jTDS driver support. Just my work on jTDS is (partially) sponsored by the company which needs it - so this task takes the preference.
After #2137 is completed (I think it is close to completion) I intend to look into 2 minor related TDS issues (#2402 and #14 - not sure if there will be any changes for them) and prepare updated WiltonDB packages with jTDS support. After that I will be able to look into SSPI.

Hi @staticlibs,
I know you may be busy with concurrent works, but currently this is a blocker for us in integrating wiltonDB with our application, can you please let us know is this started or yet to be?

@psrinivasa2, yes, the work on this has started now, I am currently researching how SSPI works in Postgres and how GSSAPI support is implemented in Babelfish on Linux. I will update this issue with details once the steps to implement are more clear. One point that is completely unclear now is how to deal with SQL Browser service, SSPI connections use it to lookup the instance port. It seems that some kind of replacement for SQL Browser needs to be implemented for WiltonDB.

thanks @staticlibs

As an update on this, I've got a working prototype of Windows Auth on TDS connections. It is tested to work with ADO.NET (Integrated Security=True), mssql-jdbc, SSMS and bcp. It currently does not work with wdb_transfer (wdb_transfer itself needs to be updated).
@psrinivasa2 , some details and a few questions to you on the projected usage:

SQL Browser appeared to be not required for Windows Auth, all MSFT client libs/apps support specifying TCP port directly instead of instance name.

current server-side implementation in WiltonDB and all the MSFT client libs/apps listed above use  Negotiate mode for auth. It is supposed to work transparently with both NTLM and Kerberos protocols, but was only tested with NTLM (that does not require AD setup). Would it be possible to use NTLM in your case? I know it may be prohibited by IT as "less secure" in some environments. I won't make any promises about Kerberos support - AD setup for its testing is unreasonably complex.

what are your requirements to the DB logins that are selected for incoming OS users? Can all incoming users be mapped to a single DB login, or do you require support for username maps? I would like to keep this part as simple as possible for initial versions. And also would like to avoid pg_ident.conf file usage (used by SSPI/GSS for Postgres connections), as it is easy to mess up. If it is acceptable to have a single regex for incoming OS usernames mapped to a single DB login - it will be easier to implement.

I will do check on it and come back @staticlibs

@staticlibs ,

For the First point, we are already using only server name in our config file, since during deployment in different machine's we no need to know about port number if it is  different for different customer machine's. Is it possible to have the same behavior?

For the second one, when I check the authentication scheme in SQL server which we are using, it says NTLM. So we already using NTLM, it can be same for the time being

For the third one, Based on my understanding in SQL, for every windows OS user windows authentication login , the SQL automatically create a equivalent DB login. In such a way each OS user will have different DB login's. This is will be helpful when it comes to auditing. how difficult it is to mimic the same SQL behavior here? Please correct me if my understanding is wrong.

@staticlibs for the first one, we can go-ahead with specifying TCP port with server name, since even in SQL instance name will work for default port alone, if it is changed, we need to mention the port number with instance name, I believe.

@psrinivasa2 , I will follow up on point 3 and will prepare a release candidate MSI build for you to try in a day or two.

@staticlibs  Regarding the point, 'It currently does not work with wdb_transfer (wdb_transfer itself needs to be updated).'
Sometimes back you mentioned that you have implemented windows auth for wdb_trabsfer which I have not tested yet since I faced during that time and left there, do you mean to say it got broken because of recent change?

@psrinivasa2 , I will follow up on wdb_transfer tomorrow.

thanks @staticlibs

@psrinivasa2

@staticlibs Regarding the point, 'It currently does not work with wdb_transfer (wdb_transfer itself needs to be updated).'
Sometimes back you mentioned that you have implemented windows auth for wdb_trabsfer which I have not tested yet since I faced a error during that time and left there, do you mean to say it got broken because of recent change?
babelfish-for-postgresql/babelfish-for-postgresql#15 (reply in thread)

About the Windows Auth support in wdb_transfer - it was added in 1.2.0. There is no custom auth code there, Windows Auth is supported by (fairly popular) underlying lib. What is specific about this lib, is that it relies on SQL Browser for Windows Auth. It takes instance name instead of port number (this is reflected in wdb_transfer UI) and looks up the port number. This bit was failing for you in this comment, I've replied to it providing python script to troubleshoot. There was no activity on this after it, so I've closed #17 . If you still have problems with Windows Auth in wdb_transfer - please just reopen #17 and add details there.
All the above is about using wdb_transfer with MSSQL. With upcoming Windows Auth in WiltonDB - there is no support for SQL Browser - it seems to be unnecessary. All MSFT client apps/DB drivers support specifying machine_name,port_number instead of machine_name\instance_name. And port number is 1433 by default, so can be omitted in that case. This support for specifying the ports number for Windows Auth is currently lacking in wdb_transfer UI and underlying lib (invoked bcp supports it fine) - this needs to be improved in wdb_transfer after WiltonDB update is out.

okay got it Alex @staticlibs , I will need to check two issue with wdb_transfer from my end 1) windows authentication 2) duplicate key value violates unique constraint "babelfish_view_def_pkey". Once I complete my analysis area, I need to deep dive into these two and check it.

@psrinivasa2 , I've prepared a release candidate MSI with Windows Auth support included, see details about its usage on draft Windows Authentication wiki page.

Thanks much Alex, @staticlibs. I will check on it.

Hi Alex, @staticlibs,
This installer seems to be common DB login rather than SQL behavior of different automatically created DB logins for different windows users. Any update on that point?

Thanks Alex @staticlibs , Can you bit elaborate on the point 'the intention is to use wilton_winauth login for all SSPI logins and to provide the ability to fetch OS user name for audit purposes' how can this be done?
Moreover, when I login as windows auth in SSMS (DESKTOP-JS80C9O, 2433) based on the instruction given in the document, It is successful. Further when I try to connect to a database via above connection (DESKTOP-JS80C9O, 2433) which was created in localhost,2433, I am getting below error, any idea on it Alex?

@psrinivasa2 , the following query can be used from SSPI session to get a name of OS user (also described in this section on a draft page):
select setting from pg_settings where name = 'wilton_winauth_os_user'

About connecting to T-SQL databases in SSPI session - you need to give wilton_winauth login appropriate permissions. For example, make this login a sysadmin with the following:
alter server role sysadmin add member wilton_winauth

Thanks, Alex @staticlibs

@psrinivasa2 , yes, going to update wdb_transfer (to support  Windows Auth without instance name) after debug MSI for #24 is out.

Hi Alex @staticlibs  Where are we on this for above wdb_transfer windows authentication change

@psrinivasa2 , wdb_transfer UI changes are in progress, update should be ready in a few days.

Noted, thanks Alex

Hi Alex @staticlibs,
Good Day!
Can you please share the update on above?

@psrinivasa2 , wdb_transfer changes are in progress, there are complications with underlying DB access lib that relies on SQL Browser, should be solvable, need few more days for this.

Okay Alex @staticlibs

As an update to this, I've got to the bottom of the problem with underlying DB lib. There is a bug in Windows auth impl in it, submitted a fix there. With modified Tiberius lib Windows auth is working with WiltonDB. So only UI changes are remaining now for wdb_transfer.

Thanks Alex, hope you will consider about the below points in transfer tool as well which you have shared separately with me
I can add the following logic to SSPI login implementation:

if DB login exists with the same name as OS user - this DB login is used
otherwise wilton_winauth DB login is used
if neither of DB logins exist - login process is failed

A point triggered on my mind, Till now we tried windows auth via application connection string and SSMS. Is there away to connect to pgAdmin tool as windows user?

@psrinivasa2 , yes, I can confirm that Windows auth on Postgres connection works fine with WiltonDB. There are no Babelfish specifics about it, normal Postgres SSPI setup can be used. Basically you need to set auth-method to sspi in pg_hba.conf, create a user map in pg_ident.conf and use "Kerberos Authentication" option in PgAdmin. Docs reference.
Though having Windows auth on the same WiltonDB instance on both TDS and Postgres connections may requires non-trivial setup in pg_hba.conf. I suggest to not mix both Postgres and TDS Windows auth on the same instance. TDS Windows auth does not require any changes to pg_hba.conf.

@psrinivasa2 , I've added support for 1-to-1 OS user to DB login mapping in 11-16-0-rc2.
The implementation uses the fact, that create login [domain\username] from windows is supported in Babelfish for GSS TDS login. Such from windows logins are stored in Postgres (pg_roles, pg_authid) and Babelfish (babelfish_authid_login_ext) catalogs in username@DOMAIN Kerberos format. Due to this storage and processing details, such login names are not case-sensitive, support only ASCII characters and cannot include @ symbol.
Besides  the @ (that must be replaced with _ in all T-SQL commands), there are no other transformation requirements. I've updated corresponding section in wiki.

@psrinivasa2 , I've updated wdb_transfer to support Windows auth with WiltonDB - 1.3.0 release. It will require SQLBrowser service with MSSQL only when "Connect to named MSSQL instance" checkbox is enabled.

Hi Alex @staticlibs,
I tested both WiltonDB and transfer tool in high level, I can you confirm that It works fine. I will keep you posted, If I find any issue in it.

Any idea on this Alex?
only sysadmin role is supported in ALTER SERVER ROLE statement

@psrinivasa2 , yes, only "sysadmin" role is implemented in Babelfish. Other roles like "securityadmin" are not supported. It is documented in this wiki section.

Hi Alex,
The moment we create 'create login [domain\username] from windows', what is the role attached with it?

Apart server level permission, what are the database level permissions are possible?

@psrinivasa2 , by default new login has a "guest" role and can create objects in "master.guest" schema.
In a particular database users created for logins can be granted permissions like "select" or "insert" for particular tables or views (wiki link).

Thanks Alex, @staticlibs.
My understanding is when I execute ''create login [domain\john] from windows',  it will be guest role access to only 'master.guest' schema. I need to create the database user for this login and assign other further permission's for relevant database like wilton database as whole or particular schema or table, etc
When I execute ''create login [domain\john] from windows' and 'alter server role serveradmin add member  [domain\john]', no need to create separate database user as this by default has all permission's.
is this correct?

@psrinivasa2 , yes, this is correct.
Overall there are 3 main options for permissions management:

sysadmin login
T-SQL DB owner login
user inside the DB with fine grained permissions

can you bit elaborate on 'T-SQL DB owner login'?

@psrinivasa2 , yes, I was referring to assigning logical DB ownership to a particular login - doc.

this answer's, thanks Alex @staticlibs

@psrinivasa2 , I would think the problem is not related to authentication. Just something is wrong with some of the SQL queries that are issued by SSMS after the connection is established. Can you copy the relevant bits from DB server log when the problem happens? Also, what is the exact version of SSMS you use?

Hi @staticlibs,
Please find the attached screenshot

@psrinivasa2 , I filed #35 to track this "Invalid cast" problem with SSMS, please leave your comments there, if necessary.

Hi Alex @staticlibs ,
After I create the OS user for myself, I don't see the use for 'wilton' user. We are maintaining 5000 clients, difficult to maintain the custom wilton user password for all of them, is it possible to remove 'wilton' user by running any query after creating OS user?

@psrinivasa2 , perhaps the easiest way to disable wilton user would be to change the password for this user (on Postgres connection) to some random unknown one (for example to gen_random_uuid() output):
alter user wilton with password '...'


Add a publishable tests CI workflow

Adding a publishable CI workflow file that users could publish using:
php artisan vendor:publish --tag=auth:ci

Then they would be able to run all of the Auth package tests within their own apps on every pull request.

Looks great! Thanks.


Fix CommandFactory.create(...) doc

This PR fixes an issue found in the CommandFactory.create(command, targetVersion) documentation.
The description of targetVersion parameter was simply wrong and irrelevant.
Fixes #672.

@armiol, PTAL.


[Dubbo - telnet] Unrecognized the other provider

[x] I have searched the issues of this repository and believe that this is not a duplicate.
[x] I have checked the FAQ of this repository and believe that this is not a duplicate.

Environment

Dubbo version: 2.7.0+
Operating System version: mac
Java version: 1.8

Steps to reproduce this issue
Assume that there is an interface below：
package org.apache.dubbo.demo;
public interface DemoService {
    String sayHello(String name);
}

package org.apache.dubbo.demo.provider;
import org.apache.dubbo.demo.DemoService;
public class DemoAService implements DemoService {
    @Override
    public String sayHello(String name) {
        return "Hello " + name + ", response from provider: " + this.getClass().getSimpleName();
    }
}

package org.apache.dubbo.demo.provider;
import org.apache.dubbo.demo.DemoService;
public class DemoBService implements DemoService {
    @Override
    public String sayHello(String name) {
        return "Hello " + name + ", response from provider: " + this.getClass().getSimpleName();
    }
}

dubbo-demo-provider.xml:
    <!-- service implementation, as same as regular local bean -->
    <bean id="demoAService" class="org.apache.dubbo.demo.provider.DemoAService"/>

    <!-- declare the service interface to be exported -->
    <dubbo:service interface="org.apache.dubbo.demo.DemoService" ref="demoAService" group="demoA"/>

    <!-- service implementation, as same as regular local bean -->
    <bean id="demoBService" class="org.apache.dubbo.demo.provider.DemoBService"/>

    <!-- declare the service interface to be exported -->
    <dubbo:service interface="org.apache.dubbo.demo.DemoService" ref="demoBService" group="demoB"/>

Start telnet call service：
incubator-dubbo yeling$ telnet localhost 20880
dubbo>ls
org.apache.dubbo.demo.DemoService
org.apache.dubbo.demo.DemoService
dubbo>invoke org.apache.dubbo.demo.DemoService.sayHello("china")
"Hello china, response from provider: DemoAService"

Always only call the provider DemoAService，There's no way I can invoke to DemoBService.

Where is DemoAService?
Is there some mistakes in code displayed?

Oh, I see, haha
So shall we merge the same interface or separate them?

Personally think we should separate them.
:)

Can we differentiate multiple implementations of interfaces when LS commands, add group information, and facilitate the next invoke operation?

@wangchangbing
Seems like we haven't supported this.

@wangchangbing
Seems like we haven't supported this.

Or we just implement a Round Robin like selecting by merging them together?
It looks more simple

Emm..  Not a good way.
Round Robin is to load balancing. In dubbo invoke, we need precise control. This is two cases.

Emm.. Not a good way.
Round Robin is to load balancing. In dubbo invoke, we need precise control. This is two cases.

So..... We will expose them as the implemented class name? Or just these multiple implemented interfaces?

@jasonjoo2010
Maybe we can discuss on mailing list. Would u pls reply the mail for some ideas?

A questions ::

As adding group here, indicate multiple implementation support of a service which is exposed. How the consumer will discover which one to use?

Is consumer developer will know about groups at the time of  writing it? Or some one else by understanding implementation details and available groups can choose which one to use?

Few improvements which I am guessing can be possible (Correct me If I am wrong here)

Is there will be a default group support for any exposed service (e.g. in sprint boot there could be multiple implementation of a data source but there will be a default primary bean always.
If a implementation of service (e.g. group B) is unavailable should we provide support that consumer call can be still served by default group (or configured group D ), this can be use full when a particular group is in upgradation phase or out of service).

Any correction of my thought will be appreciated.Thanks in advanced.

A questions ::

As adding group here, indicate multiple implementation support of a service which is exposed. How the consumer will discover which one to use?

Is consumer developer will know about groups at the time of  writing it? Or some one else by understanding implementation details and available groups can choose which one to use?

Few improvements which I am guessing can be possible (Correct me If I am wrong here)

Is there will be a default group support for any exposed service (e.g. in sprint boot there could be multiple implementation of a data source but there will be a default primary bean always.
If a implementation of service (e.g. group B) is unavailable should we provide support that consumer call can be still served by default group (or configured group D ), this can be use full when a particular group is in upgradation phase or out of service).

Any correction of my thought will be appreciated.Thanks in advanced.

Here what we talked about is only Telnet handler and will not effect normal RPC requests

@jasonjoo2010 I will give it a try.

A questions ::

As adding group here, indicate multiple implementation support of a service which is exposed. How the consumer will discover which one to use?

Is consumer developer will know about groups at the time of  writing it? Or some one else by understanding implementation details and available groups can choose which one to use?

Few improvements which I am guessing can be possible (Correct me If I am wrong here)

Is there will be a default group support for any exposed service (e.g. in sprint boot there could be multiple implementation of a data source but there will be a default primary bean always.
If a implementation of service (e.g. group B) is unavailable should we provide support that consumer call can be still served by default group (or configured group D ), this can be use full when a particular group is in upgradation phase or out of service).

Any correction of my thought will be appreciated.Thanks in advanced.

Here what we talked about is only Telnet handler and will not effect normal RPC requests

@jasonjoo2010 thanks for your reply and correcting me.

A questions ::

As adding group here, indicate multiple implementation support of a service which is exposed. How the consumer will discover which one to use?

Is consumer developer will know about groups at the time of  writing it? Or some one else by understanding implementation details and available groups can choose which one to use?

Few improvements which I am guessing can be possible (Correct me If I am wrong here)

Is there will be a default group support for any exposed service (e.g. in sprint boot there could be multiple implementation of a data source but there will be a default primary bean always.
If a implementation of service (e.g. group B) is unavailable should we provide support that consumer call can be still served by default group (or configured group D ), this can be use full when a particular group is in upgradation phase or out of service).

Any correction of my thought will be appreciated.Thanks in advanced.

Here what we talked about is only Telnet handler and will not effect normal RPC requests

@jasonjoo2010 thanks for your reply and correcting me.

:)

@jasonjoo2010 I will give it a try.

thanks

dubbo>ls
demoA:org.apache.dubbo.demo.DemoService:1.0.0
demoB:org.apache.dubbo.demo.DemoService:1.0.0

How about this.

dubbo>ls
demoA:org.apache.dubbo.demo.DemoService:1.0.0
demoB:org.apache.dubbo.demo.DemoService:1.0.0

How about this.

I think we should keep backwards compatibility.
So if no multiple implementation it should not change the gramma or formats.
Maybe it would changed when meet multiple implementation, eg:
dubbo>ls
org.apache.dubbo.demo.FirstService
org.apache.dubbo.demo.SecondService
org.apache.dubbo.demo.SecondServiceImplA
org.apache.dubbo.demo.SecondServiceImplB

Surely there is no extra info including version, group and etc. only work for multiple implementation.


selint: warn on duplicate policy configuration files

Warn if the scanned directory contains multiple policy configuration files with the same name, in particular 'modules.conf', 'obj_perm_sets.spt' or 'access_vectors'.
Take the first found one.
Also avoid leaking filenames on subsequent encounters.

Merged, thanks!


Further workaround for priority mishandling in runtime.

See rdar://79378762, SR-14802, SR-14841, SR-14875.
This doesn't resolve all hangs, such as those occurring
due to explicit usage of priorities and certain other
situations where priorities seem to be causing issues
(rdar://79823345), but it does resolve some cases.

@swift-ci smoke test

@swift-ci smoke test linux

The failure on linux looks unrelated:
Test Case 'BuildPlanTests.testExplicitSwiftPackageBuild' started at 2021-07-16 10:56:40.049
SwiftDriver/ClangVersionedDependencyResolution.swift:165: Fatal error: Unresolved placeholder dependencies at planning stage: swiftPlaceholder("C")
Exited with signal code 4

@swift-ci smoke test linux

Landing tracked by rdar://80688213.

Linux failure fix is tracked by https://github.com/apple/swift/pull/38434

@swift-ci smoke test

@swift-ci Please test windows


[AKS] Update SDK version to use 2020-07-01 API Version

Description

With new API version 2020-07-01, we need this PR to add the support of new python SDK to use new API version 2020-07-01.
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

Update SDK

Hi @gtxistxgao , is this PR still valid ?

Hi @gtxistxgao , is this PR still valid ?

It's not needed anymore. Closed. Thanks for checking out.


After EV_REJOIN_FAILED the board seems to lock up with no re-join attempts?

Hi,
Using "Sparkfun Pro RF - Basic LongFi Example":
The example code works very well. Joins Helium and pushed payload just fine. That is until after EV_REJOIN_FAILED message is received and then the board seems to drop-off Hilum and locks up with no re-join attempts thereafter?
Only reset gets the board out of this state. With mobile setup EV_LINK_DEAD is not uncommon as reception does change when the node moves from the range of one hot spot to another but it looks like that once EV_LINK_DEAD occurs re-join is not attempted and the node is basically dead. Here's the sequence of events which leads to this condition:
43201269: EV_TXCOMPLETE (includes waiting for RX windows)
Packet queued
43671127: EV_TXCOMPLETE (includes waiting for RX windows)
Packet queued
44140952: EV_TXCOMPLETE (includes waiting for RX windows)
44140974: EV_LINK_DEAD
OP_TXRXPEND, not sending
44695777: EV_REJOIN_FAILED

Any possible remedy to the problem?
Thank you
Boyan

Hi @bubba198,
Very sorry this got no response sooner!
Try increasing the LINK_CHECK_DONE (default is 24) in the lmic.h file found here at line 36:
linux: /home/{user}/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h
windows: Documents/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h
mac os: Documents/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h

Hi @bubba198,
Very sorry this got no response sooner!
Try increasing the LINK_CHECK_DONE (default is 24) in the lmic.h file found here at line 36:
linux: /home/{user}/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h
windows: Documents/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h
mac os: Documents/Arduino/libraries/IBM_LMIC_framework/src/lmic/lmic.h

Closing this as there has been no response in some time.


Support configuring a custom function with the request object as an input param for URL pattern

sw-toolbox has two  options, Express-style Routes and
Regular Expression Routes,  for configuring the routes,  but it's not flexible enough for users. If it can support  configuring a custom function with the request object as an input param for url pattern，users can do more processing according to the request object.  In order to meet this need, I have changed  two files, lib/router.js and lib/route.js,  and added some test cases in the test folder. These changes will not affect the original Routes config.Your prompt attention to this matter will be appreciated.
An example of using Function Expression routing include:
toolbox.router.get(
function(request){
  // users can get request object, do some processing accroding to the request object and return a boolean value
  if (request && reqest.headers && request.headers.referer) {
     return true;
  }
}, apiHandler);

I signed it!

ok, I have committed another new PR, please check again, thank you!


Using hiera for docker::run_instance throws iptables error when using ports[]

Hi, I have an issue when I use hiera to create my containers - the port [ ] arguments throws the following error with iptables
Withdrawing workstation service for vethf1c4fb7.
time="2016-09-09T06:07:05.073069320-04:00" level=error msg="Handler for POST /v1.24/containers/e192f1f19f9ce250cff0f11081d91745b12be3098e1b6c0ff59a16021d19660c/start returned error: driver failed programming external connectivity on endpoint consul (22f7b6bef4db6999e320e03e461f78f493cb56470d5ff92c895b2c76558a22ff): iptables failed: iptables --wait -t filter -A DOCKER ! -i docker0 -o docker0 -p tcp -d <IP_ADDRESS> --dport 8500 -j ACCEPT: iptables: No chain/target/match by that name.\n (exit status 1)"
here's is how I declare it (below).  The correct code would look like
docker::run_instance::instance:
consul:
image: 'progrium/consul'
command: '-server -bootstrap -ui-dir /ui'
ports: ['8500:8500']

Could you please try that and see if that solves your issue


[FEATURE REQUEST] More time intervals for update checking

Before submitting the issue

[x] I have checked that the requested feature is not a duplicate or, if it is, it needs to be reopened
[x] I have checked that I am running the latest version of WingetUI
[x] I have checked the FAQ section
[x] I have read the contributing guidelines and I agree with the Code of Conduct

Is your feature request related to a problem? Please describe.
It would be useful to add more options for Check for updates every: section.
At the moment the options are:

30 minutes
1 hour
2 hours
4 hours
8 hours

I would like to be able to check even once a day, once a week or once a month, for example.
Describe the solution you'd like
Add more options to choose from:

30 minutes
1 hour
2 hours
4 hours
8 hours
12 hours
1 day
1 week
2 weeks
1 month
3 months

WingetUI checks for updates on launch, and the time starts counting after the start of WingetUI on the system tray, so more than 8 hours does not make sense for me.
What do you think?

Okay, so I misunderstood that setting. It indicates the interval between update checks when wingetUI is opened.
I would still add a couple of options:

12 hours
1 day

What I would like to have as an option is to automatically check for updates even when the GUI is closed. So without keeping WingetUI running all the time, but only do an update check once 1/2/3 weeks/months. For example by running silently a scheduled task and open and notify the user if there are updates, otherwise remain closed.

I am not sure if that las part will be possible, since the main application is built into the GUI

WingetUI checks for updates on launch, and the time starts counting after the start of WingetUI on the system tray, so more than 8 hours does not make sense for me.

It is useful if the computer is not restarted every day. I primarily use the hibernation mode, because this way the computer is booted faster and also all programs are open again. You can simply continue working where you were last when you turned off the computer. With WingetUI in the tray.


Add type checker [Mypy]

Codecov Report

Merging #431 (625c9d5) into master (e4e1926) will increase coverage by 0.54%.
The diff coverage is 96.42%.

@@            Coverage Diff             @@
##           master     #431      +/-   ##
==========================================
+ Coverage   63.42%   63.97%   +0.54%
==========================================
  Files          35       37       +2
  Lines        2078     2104      +26
  Branches      158      162       +4
==========================================
+ Hits         1318     1346      +28
+ Misses        729      727       -2
  Partials       31       31

Impacted Files
Coverage Δ

selene/support/_logging.py
96.00% <96.00%> (ø)

selene/__init__.py
100.00% <100.00%> (ø)

selene/core/condition.py
86.74% <100.00%> (+2.40%)
:arrow_up:

selene/support/__init__.py
100.00% <100.00%> (ø)

selene/core/entity.py
61.32% <0.00%> (+0.17%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


refactor: split nodes & runtimes

Signed-off-by: Gregory Hill<EMAIL_ADDRESS>Moves rpc crate to the root of the directory and adds a separate standalone node / runtime.

Wrt: duplication, we can probably extract some common components in the future but it's mostly boilerplate and there are some custom commands in each.


New package: EntropyScaling v0.1.0

Registering package: EntropyScaling
Repository: https://github.com/se-schmitt/EntropyScaling.jl
Created by: @se-schmitt
Version: v0.1.0
Commit: dad5cbaf5ebd37e6bdf8fba5efe5c01dcfe51bda
Reviewed by: @se-schmitt
Reference: https://github.com/se-schmitt/EntropyScaling.jl/commit/dad5cbaf5ebd37e6bdf8fba5efe5c01dcfe51bda#commitcomment-148409751

Congratulations on the new package!
I just wanted to check with you that you think the name isn't too general, since the README says

This is an implementation of the entropy scaling framework introduced in [paper]

Are there other widely used approaches to entropy scaling that are not covered by this package? If there were, and you're not planning to support those in this package, maybe EntropyScaling isn't an ideal name, and you'd want to add a prefix to disambiguate it.
I'm not a domain expert on this, so I'll leave this entirely to your judgement. I also realize I'm a bit late in the review period, so I'm just making this comment temporarily blocking to give you a chance to review it before the automerge.
If you decide you want to go forward with the current name, I'll be happy to unblock

Hi @goerz, thanks! I would like to keep the current name as I'm planning to extend the package and make other similar methods available in EntropyScaling.jl.


How to specify a particular pub-cache/bin, instead of the default one?

flutter pub global activate XXX will install XXX under "$HOME/.pub-cache/bin" by default. How can I set a specified directory instead of the default one as pub-cache/bin ?

https://dart.dev/tools/pub/environment-variables


feat: allow customization and download of qr code

Hey :D in our company the internal communications require custom styling of QR codes. Right now they advertise to go to a random website to generate those. I saw an opportunity to support it in the backstage plugin and gave it a go.
I changed which library is used to generate QR codes. This one allows customization, allows the generated image to be saved on rightclick, and allows downloading the image with different formats.
This does make the code a bit more involved, to allow the user to configure those settings. Also because of the use-case I investigated a way to configure the default styling. I chose to do this via the app-config, but maybe you have a different solution that would be a better fit?

Some lint issues


Enhancement/227 extraction of report service from report controller

Referring to your last commit fixing the compile error bug: There should definitely be a TODO in your change. "Deprecated" would mean that we want to remove the test in the future, which is not true, so that should be removed.
Can't we just inject the ReportService into this test instead of the controller to fix the problem? This function shouldn't actually have been lost due to your refactoring.

Yes, we can do that indeed. I just thought that it might be senseful that this method is not up-to-date, as I am checking for the Response delivered by Controller in ControllerTest instead of functionality that sits in the ReportService now.
Will fix that :)

When I run the docker-local-deploy setup script, then the ResportService is changed. I suppose Maven automatically added the license in that file when run. Please, push that change into the MR so that reviewers and future developers does not have to deal with this.


Updated documentation for Jack Support, Build Tools 24 and Java 8

The installation information on the README does not explain how to use Butterknife with Jack Compiler and Build Tools 24. So I added a new section in the README that explains it. This configuration is working with Java 8 as well.

References #616

There are a lot of instructions here for things unrelated to configuring Butter Knife. I'll adapt your changes and merge manually to master since I don't think it's necessary to retain all this information.

I added 533e212e91c3d2d0d02d376ba1dfb7383550d9bb (which will show up after I make the release here shortly) which covers this.


Unifies pipelines for CLI, extension and release

Creates a unified pipeline with multiple stages to reduce the number of times we build and pack the CLI tool.
This change also simplifies the versioning to leverage variables in the build pipeline.
Fixes #223

/azp run


Debug mode is normal,but release mode error

Debug mode is normal,but release mode error
No such method.Did you make it public ?dart_liquidcore_type_
flutter version 1.13.5

We have the same problem, and use --no-shrink as a temporary solution.

I unfortunately don't have much free to time to work on the project at the moment.
If you're able to fix the issue, then feel free to put in a PR and I'll be sure to merge and publish it pending testing.


adding support for systemd env options

What type of PR is this?
(REQUIRED)

[ ] bug
[ ] cleanup
[ ] documentation
[x] feature

What this PR does / why we need it:
It adds the optional ability to add and configure an rke-{server,agent} systemd environment file to /etc/default
Which issue(s) this PR fixes:
Fixes #169
Rework of #174
Release Notes
NONE

Hi @mddamato, @aleiner,
I tested the deployment on my side and it seems everything is working properly. Is there anything else I can help with this PR ?

Hi @aleiner,
I wonder if the team might be interested in a PR to fix Lint warnings ? (At least for those we are seeing in this PR)

Hi @aleiner, I wonder if the team might be interested in a PR to fix Lint warnings ? (At least for those we are seeing in this PR)

Thanks for the offer and sorry for all of the delays. We have something in the works that we're hoping to push out soon.


Always set 'set -e' explicitly

Using '-e' in shebang is not secure since executing the script
like 'bash /the-script' isn't taking the additional options into
account.
Fixes regression caused by 44fb885e2e6b03

[test]

Meh, sorry about this.  We should fix this rather sooner than later till not many
images depend on this.  Basically failed test case could be overlooked.

[test]

[test]

Merged early without review, to not risk that others will depend on broken
commons.

Makes sense, thanks!


For 2025

better time management
a bit more on plotting

remove Plots.jl dep from PredatorPrey.jl