Fix self._handlers popping unknown controller ids

I was experiencing this earlier so I thought it would be a nice quick fix.
Also, noticed that there's also an open issue #7. This PR should fix that.

But are you just hiding the root issue this way? The idea is that controller is responsible for unregistering itself. If that doesn't happen then there might be a deeper issue elsewhere.
That said, maybe it should just be a warning...
If you are developing a package then saving a plugin file triggers a reload that probably can cause such issue but it's sort of an "undefined" case since this is not quite a normal case.

I do get that it is the controller's responsibility for unregistering itself but the FileWatcherChokidar class should be able to handle missing handler references instead of crashing.
So yeah, I guess a warning will do.

Crash shouldn't really affect anything besides producing a stack trace. A warning would still produce an output, only smaller. So I'm not sure there is a big difference there in terms of people being concerned/annoyed.
Can you specify how exactly can it be reproduced. We need to understand what happens and try to address the root issue. As I said in another issue, just ignoring this might result in file watcher never stopping until ST restart.

We can manually reproduce it by reloading the FileWatcher package that I recently uploaded. The instances of handlers are probably wiped after the plugin got reloaded.
Other than that, I have seen it on my end but I do not know the cause. I doubt it was FileWatcher since I was not working on that at that time. That is why I am curious if the guys on issue #7 uses a package of mine.
I thought if it threw an error/exception, it will stop the code entirely. I noticed it on this line. That is why I added a check and allow it to call unregister regardless whether it is still in the _handlers or not
The other checks are when FileWatcher got reloaded.
Other thing I am thinking was if the reference is gone (Handler already deleted), we should remove it in _handlers.

The FIleWatcher package should handle unregistering of controllers when it's being reloaded. It can get notified on reloading by implementing a plugin_unloaded function.

The FIleWatcher package should handle unregistering of controllers when it's being reloaded. It can get notified on reloading by implementing a plugin_unloaded function.

It does or maybe I am doing it wrong?

The FIleWatcher package should handle unregistering of controllers when it's being reloaded. It can get notified on reloading by implementing a plugin_unloaded function.

It does or maybe I am doing it wrong?

@rchl here, I am calling this function on unload. Technically, it iterates over the handlers and calls destroy


Cargo fix: Could not fix use statements

Hey!
I've tried applying cargo fix to transition my crate to edition 2018, following the official guide. The manual preparations would be in this commit. After that, the only thing to do for me was fix use statements. Nothing special there, all works as advertised. Except: Cargo fix was not able to automatically fix the use statements. I'm not sure if it's supposed to, but I went with "When in doubt, issue".
An additional thing is that it wasn't exactly clear to me what was going on. From its output, it looked like cargo fix tried to compile my crate, which obviously failed with the expected errors. But nothing gave an indication if cargo fix encountered a problem (e.g. something it couldn't fix), or whatever went wrong (besides the non-correct use-statements, of course).
If I should provide more information, just let me know what you need.

Thanks for the report @KillTheMule! Always better to err on the side of opening an issue :)
I think the problem here was that the 2018 edition was enabled too soon. The edition guide has some detailed steps and it's currently important to not enable the edition before transitioning to the 2018 edition. That allows cargo fix to handle the warnings that would otherwise be compiler errors (before they are errors).
Does that fix the issue for you?

It's somewhat unclear what steps I should take, probably because there's no obvious (to me...) difference between "enabling the edition" and "transitioning to the edition".
I just went back to this commit, that is, the one I started with anyways, and tried to run cargo +nightly fix --prepare-for 2018 --all-targets --all-features from the guide. Results in error: Found argument '--all-targets' which wasn't expected, or isn't valid in this context. Removed it, then got the analogous error about --all-features.
Then it went... weird. Ran through, seemed to be checking (not sure what that mean, probably as in cargo check) everything, finished without error... but didn't do anything else, neither suggest changes nor do them. Then I put the feature flag in the lib and binary files... and now it worked!
The guide seems pretty clear, although I'd add a sentence of warning. But maybe I'm the only one who's confused. The confusion probably stems from nrc's blog post, which mentions cargo fix, but (at least for me) left the exact meaning of "transitioning" unclear.
Thanks!


Following Drift installation steps doesn't work with Pest 0.3.1

Hi all and many thanks for trying to get such a transformation package available.
While following the basic installations steps from https://pestphp.com/docs/installation/ followed by https://pestphp.com/docs/guides/drift/. I end up with an error Your requirements could not be resolved to an installable set of packages. It seems there is some conflicts going on.
Full error from running composer require pestphp/drift --dev --update-with-all-dependencies:
  Problem 1
    - pestphp/pest v0.2.x-dev conflicts with pestphp/pest-plugin-init[v0.3.0].
    - pestphp/pest v0.2.x-dev conflicts with pestphp/pest-plugin-init[v0.3.0].
    - pestphp/pest v0.2.x-dev conflicts with pestphp/pest-plugin-init[v0.3.0].
    - pestphp/drift dev-master requires pestphp/pest ^0.2 -> satisfiable by pestphp/pest[v0.2.x-dev].
    - Installation request for pestphp/drift dev-master -> satisfiable by pestphp/drift[dev-master].
    - Installation request for pestphp/pest-plugin-init (locked at v0.3.0) -> satisfiable by pestphp/pest-plugin-init[v0.3.0].

Composer.json and Composer.lock created can be found at https://gist.github.com/DannyvdSluijs/92f1b30ba65de5122b5285fa443ec0eb

Ah, looks like Drift is the only plugin that isn't on v0.3 yet. 👍🏻  I should be able to resolve this tomorrow or some time this weekend hopefully. It also converts to the old pre-expectation API. So that will need to be resolved as well.

I've created PR #38 to bump to require version ^0.3 of drift. Didn't see any failures on the tests though.

Further analysis shows that we could easily remove the dependency to pest.
This should solve this problem for good :)


ino-list: Use sass mixins provided by MDC

The new versions of the MDC list provide a whole lot of mixins we can use in order to cleanup our code.
See: https://github.com/material-components/material-components-web/tree/v8.0.0/packages/mdc-list#sass-mixins

I took a brief look at the ino-list, ino-list-item, and ino-list-divider stylesheets and they are actually not as packed as it is the case with some other components. What is more, there aren't any mixins that could be used to replace the state-dependent styles (hover, active, focus), which account for the majority of the lines in the stylesheet of the ino-list-item component. Maybe I am overlooking something, but I don't think it's necessary to replace the existing styles with the mdc mixins.

For example, couldn't we replace this:
https://github.com/inovex/elements/blob/8b91f4e51abf5a920ccf3718ccc54e13802768f1/packages/elements/src/components/ino-list-item/ino-list-item.scss#L69-L76
With something like this:
.mdc-list-item {
   @include item-primary-text-ink-color(var(--list-item-deselected-color))

   background-color: var(--list-item-deselected-background-color);
// ...

These were also the only ones I could found. I was just asking myself if it is actually worth changing.

As we're not see any benefit from saving two lines of code, we close the issue.


Update google-federation.md link and text

correcting a link and verbiage regarding system browsers

@msmimart
Can you review the proposed changes? Note that the validation warning must be resolved before merging.
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


Move P/Invoke related exceptions and attributes to CoreLib

In order to throw appropriate exception from generated marshalling stubs we need to move P/Invoke related exceptions(eg. DllNotFound) from System.Private.Interop to CoreLib.

System.Private.Interop should be required for COM/WinRT interop via light up only.

Fixed by #7502


Update search service to use the new case-insensitive version field

This is a follow-up task for https://github.com/NuGet/NuGetGallery/issues/4583.

Duplicate of https://github.com/NuGet/NuGetGallery/issues/5051.


Fix inaccurate description of callback in MultiCompiler

The docs currently state that the callback passed to the MultiCompiler is executed after each configuration in the options array has been compiled.
This is not the case. The callback is executed once, after all compilations have finished.

Thanks!

My pleasure. 🙂


[Bug]: Dynamic prompts/wildcards highly change the results vs firstpass, on the hi-res pass on new hi-res fix.

Hi there, really thanks for all your work! There's a new issue, after an update on the dev branch of the webui.
Since https://github.com/AUTOMATIC1111/stable-diffusion-webui/commit/ff0e17174f8d93a71fdd5a4a80a4629bbf97f822 dev commit, if you use it at the same time with wildcards/dynamic prompts, it can use more than one value inside the {|} brackets.
The result is noticeable altered after the hi-res fix pass.
For example, if you use "{green|red|blue|black} eyes", and the choosen token was "green", the result can be a mix of all those eye colours, or a mix of green/red, green/blue, etc
This is more pronounced when using loras/tis with this syntax (for example, "{lora:a1:1|lora:a2:1|lora:a3:1|...}"
The issue get worse when using more than one dyanmic prompt at the same time (aka, random eyes, random hair colours, random hair style, etc)
The issue doesn't happen if the commit is reverted to https://github.com/AUTOMATIC1111/stable-diffusion-webui/commit/3885f8a63e0954ac96e6681aa8b33281f10337a2
And the issue doesn't happen when not using dynamic prompts/wildcards.
No visible error in the console
To reproduce the problem,

Generate any prompt with an extense wildcard/dynamic prompt (example if you want to test):
{blue-gray eyes|orange eyes|light blue eyes|dark red eyes|blind eyes|silver eyes|light brown eyes|light green eyes|dark brown eyes|retro eyes|heart eyes|dark purple eyes|amber eyes|light pink eyes|hazel eyes|yellow eyes|blue eyes|dark green eyes|light red eyes|red eyes|diamond eyes|brown eyes|closed eyes|cat eyes|dark blue eyes|green-hazel eyes|dark pink eyes|purple eyes|white eyes|demon eyes|squinted eyes|gray eyes|pink eyes|light purple eyes|magenta eyes|sparkling eyes|gold eyes|black eyes|green eyes|heterochromia}
Enable/select hires fix.
Generate the image and see if the eye colour result is the desired one, and not a mix of the others colours.

The result should be only the selected by the wildcard/dynamic prompt, and not a mix of the possible values inside the {} brackets.

I think I have kinda found the issue, not sure how to fix it.
When on processing.py, changing the lines
        if self.hr_prompt == '':
            self.hr_prompt = self.prompt

        if self.hr_negative_prompt == '':
            self.hr_negative_prompt = self.negative_prompt

to
        if self.hr_prompt == '':
            self.hr_prompt = self.all_prompts

        if self.hr_negative_prompt == '':
            self.hr_negative_prompt = self.all_negative_prompts

on lines 1077-1081, you can see a print of the hi-res fix prompt on the webui.
And it seems to be doing a pass of the values or {value1|values2} directly on the hires pass, instead of using the value that should be selected on the firstpass.
Without changing those lines, you can add a print and it will have the same issue on the console.

Firstpass:
best quality,sfw,1girl,solo,grey hair, multiple braids, very long hair, cat eyes,hair ornament, necklace, tiara, hair between eyes, leggings, shawl, looking down, space elevator, closed mouth, portrait,
Hi-res fix pass:
["best quality,sfw,1girl,solo,__haircolor__, __hairstyles__, __hairlength__, __eyecolour__, __attire_jewelry_and_accessories_head_and_face__, __accessories__, __attire_headwear__, __bangs__, __legwear__, __neckwear__, __lookingdirections__, {__locations_outdoors_natural__|__locations_buildings__}, {__face_emotions__|__face__}, portrait,"]
Sorry for the ping @adieyal , but I'm not sure if this is on your side (the extension) or on the auto111 side.

Okay, found the total culprit and not sure why it happens.
On modules/processing.py, line 1126 to 1135
    def parse_extra_network_prompts(self):
        res = super().parse_extra_network_prompts()

        if self.enable_hr:
            self.hr_prompts = self.all_hr_prompts[self.iteration * self.batch_size:(self.iteration + 1) * self.batch_size]
            self.hr_negative_prompts = self.all_hr_negative_prompts[self.iteration * self.batch_size:(self.iteration + 1) * self.batch_size]

            self.hr_prompts, self.hr_extra_network_data = extra_networks.parse_prompts(self.hr_prompts)

        return res

Seems that the first 2 lines after if self.enable_hr, or, specially the self.hr_prompts = self.all_hr_prompts[self.iteration * self.batch_size:(self.iteration + 1) * self.batch_size] lines makes the issue surface.
If you comment this line, or well all the function, it works as it was before https://github.com/AUTOMATIC1111/stable-diffusion-webui/commit/ff0e17174f8d93a71fdd5a4a80a4629bbf97f822 commit, but then hi-res negative prompt doesn't work by itself. It needs to have any prompt on the positive hires prompt. Now, doing that, makes the issue come back (getting tokens outside the {} or wildcard values), but it is that code that's doing the issue.

Same issue on my pc after last update of automatic1111. Hires prompt in generated image somehow look like {@var1|var2|var3} and generation look bad

This should be fixed now by pr #483, which sets the hr_all_prompts/hr_all_negative_prompts parameters for upscaling. At least it fixed my problems with it.

@brimston3 just tested and it works TON better than before. It seems to be fixed.
But highres positive/negative prompt don't work. BUT it seems to be an auto111 issue and not a dynamic prompt issue. (Tested without dynamic prompts and they don't work for me). Do hr prompt work for you? Maybe after tinkering so much in my branch I broke something.

hr prompt/hr negative work in auto1111 on main branch. #483 wrecks them both. I made a pr #495 to address hr_prompt/hr_negative a little, but it's not perfect and they are not processed using the dynamic prompt engine. I think this extension's maintainers are going to need to talk about what it should do about combinatorial generation and other extensions modifying all_prompts/negative/hr before a clear way forward on how to handle hr_prompt/hr_negative appears.
tbh, I think the language should be simplified for hr_prompt/negative and only allow cached results by keyword, though I haven't a clue how that should be handled.

closing @akx and @brimston3 , since it's fixed by PR https://github.com/adieyal/sd-dynamic-prompts/pull/495 and PR https://github.com/adieyal/sd-dynamic-prompts/pull/498.


Ability to replace div with tabindex="-1" for nested routes

Have a question?
Question about nested routes, how to replace
 with custom component with styles for nested routes (we have this logic for routes, but how about nested components)?
here is example
https://codesandbox.io/s/reach-router-starter-v1-forked-w7eyj?file=/src/index.js

as you can see on Router we have class avadakedavra, I want do the same for <Home path="/"> I want to see class avadakedavra on the element (sub route of home) that has this

no need anymore


fix(htmlAnchorDirective): remove event listener if target is not element

Previously, when an a tag element used a directive with a replacing template, and did not include an href or name attribute before linkage, the anchor directive would always prevent default.
Now, the anchor directive will cancel its event listener if the linked element is not the same as the target element of the event.
Closes #4262

self-reviewed, minimal perf impact, doesn't seem to introduce any new issues

This causes regression: previously test just called doSomething() and click was prevented.
Now if I click such link, doSomething() is called, but click event is not prevented for .

please produce a reproduction

Can't include all my project code, but here is link example.

$scope.removeAttachment = (attachment) ->
      log 'remove called'
      index = $scope.attachments.indexOf(attachment)
      link = $scope.attachments[index]
      $scope.attachments.splice index, 1
      link.canceler.resolve "aborted"

      $http.get(Data.storage.delete + link.id);

      link = null
      log 'remove completed'

      return false

so your issue is that the target element of the click is not the link itself, it's the span/icon. i'll try to produce a fix for that.


Improvements to the infrastructure provider admin GUI

Closes #488

Build error:
2023-09-16T17:16:04.3175153Z Scanning dependencies of target wasm-psibase
2023-09-16T17:16:07.0522020Z Error: Permission denied (os error 13)
2023-09-16T17:16:07.0522439Z Caused by: Permission denied (os error 13)
2023-09-16T17:16:07.0532465Z make[2]: *** [CMakeFiles/wasm-psibase.dir/build.make:57: CMakeFiles/wasm-psibase] Error 1
2023-09-16T17:16:07.0540583Z make[1]: *** [CMakeFiles/Makefile2:688: CMakeFiles/wasm-psibase.dir/all] Error 2
2023-09-16T17:16:07.0587715Z make: *** [Makefile:152: all] Error 2
2023-09-16T17:16:12.7223917Z ##[error]Process completed with exit code 2.

Discovered the bug in wasm-pack that was preventing me from using the non-root docker image.
https://github.com/rustwasm/wasm-pack/issues/1335
For now, we can work around the bug by passing the WASM_PACK_CACHE environment variable to the build container, and then it creates the cache in a permitted directory.

The test failures on the last commit look like a bug in the test. It's trying to use the /graphql endpoint immediately after psibase boot completes. The service HTTP API isn't available until a block is produced, so it returns a 404. Since the graphql endpoint is being used to track block production, we have a bit of a chicken and egg problem here. I think it will just need to catch the 404 and treat it as meaning "I should wait some more, because it's not ready yet."


Feature Request: AzureRmWebAppDeploymentV4 "Powershell Post Deployment Action"

Azure App Service deploy (DevOps Task)
AzureRmWebAppDeploymentV4
Feature Request
Could you create an option to run powershell scripts on  Post Deployment Action?
Regards

Hi guys, any predictions for this feature? tks....

Hi guys, any predictions for this feature? tks....


[BugFix] fix duplicate array_agg/group_concat in CallOperator

Fixes https://github.com/StarRocks/starrocks/issues/31757
equal array_agg/group_concat with consideration of nullsFist and isAsc when compare CallOperator
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.2
[x] 3.1
[x] 3.0
[ ] 2.5

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:heart_eyes: pass : 9 / 9 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/AggregateFunction.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/CallOperator.java
2
2
100.00%
[]

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:heart_eyes: pass : 11 / 11 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/AggregateFunction.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/CallOperator.java
4
4
100.00%
[]

@Mergifyio backport branch-3.2

@Mergifyio backport branch-3.1

@Mergifyio backport branch-3.0


Update office-365-u.s.-government-dod-endpoints.md

Added a note about cross cloud join
Fixes https://github.com/MicrosoftDocs/microsoft-365-docs/issues/12100

@JohanFreelancer9 Please copy review

@kelleyvice-msft Please merge this PR. Thanks


Pin Bottleneck to 1.2.1

Pull Request Checklist:

[ ] This PR addresses an already opened issue (for bug fixes / features)
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] HISTORY.rst has been updated

After merging to master and before closing the branch:

[ ] bumpversion (minor / major / patch) has been called on master branch
[ ] Tags have been pushed

What kind of change does this PR introduce?
Pins Bottleneck at version 1.2.1

Does this PR introduce a breaking change?
No.

Other information:
Bottleneck 1.3 does not seem to install too cleanly in most Python versions and for most OSes. This pins the library at 1.2.1 until a better built version of that library is released.

Pull Request Test Coverage Report for Build 1231

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

Totals

Change from base Build 1226:
0.0%

Covered Lines:
6132

Relevant Lines:
6756

💛  - Coveralls


How to configure stomp endpoint over nginx server ?

Hi @beevelop
First of all , this is not a issues. i just want to know about how to configure stomp endpoint i.e ( http://<IP_ADDRESS>:8080/stomp ) over nginx server if you konw.

This highly depends on your project setup and is unfortunately out of scope for this small library. I made a Docker image a while ago for testing purposes: https://hub.docker.com/r/beevelop/rabbitmq-stomp/
The image does not rely on nginx but might provide a solution for dev / testing purpposes.


[PDI-13633] - Adding a fallback logic to connect the datasource using class if JNDI lookup fails

@dkincade , @kcruzada , @mattyb149  please review this change.


[Bug]: Home page font size too big

What bug you encountered?
reduce the font size and image size also
Show us the trouble with screenshots

Which browsers are affected?
Brave
Agreement to Code of Conduct

[X] Code of Conduct

can you assign this issue to me?

I want to fix the font size of the website can u assign this issue to me

We are closing this issue, as it has been inactive for a long time. If you think you want to work on this issue please create a new ISSUE.


dump-json does not respect max-filesize

dump-json does not respect max-filesize and shows all videos. using youtube.

See my comment on #4654.

This is expected. max-filesize limits the maximum filesize of videos to download, dump-json has nothing to do with this.


Added patch script and patch file for fedora core 25.

Cleaned up the patch and git history for this patch.

Left off in the commit description this patch is for the uvcvideo kernel module specifically. I use this in conjunction with thofmann realsense repo for librealsense.

Could you please update the installation document and review project CLA before merging?

Is there something specific you would like me to be aware of in the CLA?

@croadfeldt, sorry, CONTRIBUTING has the missing explanation: In order to accept your contribution you need to agree to the terms of the CLA, under your legal name.

I agree to the terms of the Intel® RealSense™ Cross Platform API CLA.
Name: Chris Roadfeldt

Thank you!


Merge stable

merge stable to master
Checklist

[x] Changelog is updated (in case of notable or breaking changes)

@Lagovas @G1gg1L3s let's merge?

I have no objections. But, should we run the tests again? There is a high chance that something broke since that time, but even if it did, should we fix it here or merge and then fix?

yes please

Nope, still doesn't work

@G1gg1L3s how about closing this PR and creating a new one stable -> master?

Hmm, let's try :)


temporary makes my-matches open spectate view instead of play level v…

…iew so that players can see matches with their own team

here, since our play blue logic have strange bug and haven't fix yet. we disable play blue logic here.
but again the players confusing about their matches results. (win in red but losse in blue)
so i think temporary we can use spactate view here so that student cannot edit their code but anyway can see right results.

Hmm. Will be confusing if they want to pick some player to battle against to update their code but sometimes get spectate mode instead.
What if we instead update this table to show who was playing which team, so you can see who was red and who was blue, and add another column for spectating the match? Then all matches, whether you were red or blue, get a spectate link, but only the ones where you were red currently get a battle link until the bug is fixed.

seems make more sense. i would do that!


Multiple identities in IRC

The current code spawns a bot and makes it join the IRC channel(s), then starts /say-ing everything that is being said in Slack.
Is there a way the code can be patched in such a way that instead of a single bot saying everything, multiple bots can join the channel(s), each one with it's own nick (mapped to a slack user), and make them say what each user in Slack says?

I've discussed this previously, but I think we concluded that it was too hard to get right and that it might have a few unwanted side effects. It might work okay for small channels, but would probably be a bit weird to scale for Slacks with thousands of users. If you're interested it should definitely be possible to implement in a fork though, but I'm gonna close this as I think it's quite different from slack-irc's existing functionality.
Feel free to PM me on Gitter or similar if you want some tips in terms of how the current codebase could be changed to function like that though!


Not getting all claims in X-JWT-Assertion header in APIM 3.0.0

Description:
Not getting all claims in X-JWT-Assertion header in APIM 3.0.0
Steps to reproduce:
Used below JWT configuration in deployment.toml file
[apim.jwt]
enable = true
encoding = "base64" # base64,base64url
generator_impl = "org.wso2.carbon.apimgt.keymgt.token.JWTGenerator"
claim_dialect = "http://wso2.org/claims"
header = "X-JWT-Assertion"
signing_algorithm = "SHA256withRSA"
enable_user_claims = "true"
claims_extractor_impl = "org.wso2.carbon.apimgt.impl.token.DefaultClaimsRetriever"
Affected Product Version:
APIM 3.0.0
Environment details (with versions):

OS: Windows
Client:
Env (Docker/K8s):

Optional Fields
Related Issues:

Suggested Labels:

Suggested Assignees:

Same issue reported https://github.com/wso2/product-apim/issues/7781 and fixed in 3.2.0-Alpha with https://github.com/wso2/carbon-apimgt/pull/8386. Will be also available with next GA release 3.2.0 soon. Hence closing this issue.


Use template selectors

[x] File operations
[x] Device
[x] Drive
[x] Directory Explorer

Closed in 0887711a5f0f98c5a696762f02cf7d7345371f4a


how can i minify classname with postcss or webpack

when i use SUIT, the className become long,
and i wan't to minify the className in production
like:
before minify
// style.css
.Excerpt-thumbnail {
....
}
// index.html

after minify
// style.css
.a {
....
}
// index.html

You may be able to use css-loader / local scope to achieve this. You'd still need something to sort through your templates and change class names, however.
In general, I think you will find using gzip to serve these resources will be more than enough to compensate for the extra characters in a production environment.

@timkelty thanks

You can try to look over this
https://github.com/vreshch/optimize-css-classnames-plugin


fix several bugs with the auditor

don't reaudit if we see an older version of the team than we've previously auditted
don't change history.PostProbes until we actually do the probe
we can have an audit when there are no PostProbes; that is ok, but we have to be willing to handle a 0-valued MaxMerkleProbe in the audit history
don't write to the audit cache if nothing happened in the audit (if there were no probes done)
version the audit data structure and throw out the old one

FWIW, here is what happened to @chrisnojima:

One type of loader (fast or slow, I don't know), did an audit at seqno=9
The other type of loader did an audit at seqno=11
The first type of loader did an audit at seqno=9

Here is where we tripped the first bug, that the audit in step 3 wasn't circumvented, because we were previously short-circuiting the audit if the given max chain seqno was equal to the max chain seqno of the last audit.  We really wanted less than or equal to.
So we charged ahead in the audit. What this meant is that we were auditing the part of the global merkle sequence after seqno=11 in the team chain, with only links 1 through 9. That means all of the merkle seqnos we probed had fallen off the right side of the chain links passed in. So this meant they all were giving chain seqnos equal to 0. This wasn't a bug, it's the right behavior, but it caused bugs 2 and 3.
Bug 2 was that because of the ill-advised use of history.PostProbes to screen out duplicates in scheduleProbes, we were adding a bunch of entries into history.PostProbes that we never followed up on. So there were many audit probes of the form "3625051":{"index":2,"teamSeqno":0} gumming up the PostProbes.
Bug 3 was that after this failure of an audit, we wound up with this in the audit history:  {"time":1537278251023,"maxMerkleSeqno":3625609,"maxChainSeqno":9,"maxMerkleProbe":0}. The problem here is maxMerkleProbe:0, which destroyed the subsequent audit, since there is no PostProbe for seqno=0.

This is what was in nojima's audit state:
{"ID":"3c61c86e98ff5c789be1d26616e71224","public":false,"priorMerkleSeqno":3572705,"audits":[{"time":1537208077049,"maxMerkleSeqno":3621642,"maxChainSeqno":9,"maxMerkleProbe":3620618},{"time":1537241920101,"maxMerkleSeqno":3623800,"maxChainSeqno":11,"maxMerkleProbe":3623731},{"time":1537278251023,"maxMerkleSeqno":3625609,"maxChainSeqno":9,"maxMerkleProbe":0}],"preProbes":{"1023060":{"index":0,"teamSeqno":0},"1032228":{"index":1,"teamSeqno":0},"1059260":{"index":1,"teamSeqno":0},"1087614":{"index":0,"teamSeqno":0},"1109853":{"index":0,"teamSeqno":0},"1152918":{"index":0,"teamSeqno":0},"1154961":{"index":0,"teamSeqno":0},"1156171":{"index":1,"teamSeqno":0},"1203638":{"index":0,"teamSeqno":0},"1441279":{"index":1,"teamSeqno":0},"1484032":{"index":0,"teamSeqno":0},"1525618":{"index":0,"teamSeqno":0},"1545323":{"index":0,"teamSeqno":0},"1663741":{"index":1,"teamSeqno":0},"1709799":{"index":1,"teamSeqno":0},"1891044":{"index":0,"teamSeqno":0},"1936708":{"index":1,"teamSeqno":0},"2032733":{"index":0,"teamSeqno":0},"2048541":{"index":1,"teamSeqno":0},"2058823":{"index":0,"teamSeqno":0},"2136718":{"index":1,"teamSeqno":0},"2233213":{"index":1,"teamSeqno":0},"2245593":{"index":1,"teamSeqno":0},"2333650":{"index":0,"teamSeqno":0},"2352057":{"index":1,"teamSeqno":0},"2356797":{"index":1,"teamSeqno":0},"2570994":{"index":0,"teamSeqno":0},"2728141":{"index":0,"teamSeqno":0},"2812420":{"index":0,"teamSeqno":0},"2826125":{"index":1,"teamSeqno":0},"2893779":{"index":1,"teamSeqno":0},"2912329":{"index":0,"teamSeqno":0},"2921078":{"index":1,"teamSeqno":0},"2926604":{"index":1,"teamSeqno":0},"2974169":{"index":0,"teamSeqno":0},"3028209":{"index":0,"teamSeqno":0},"3071815":{"index":0,"teamSeqno":0},"3120157":{"index":0,"teamSeqno":0},"3172729":{"index":1,"teamSeqno":0},"3174816":{"index":0,"teamSeqno":0},"3185120":{"index":0,"teamSeqno":0},"3229858":{"index":0,"teamSeqno":0},"3237979":{"index":1,"teamSeqno":0},"3278958":{"index":1,"teamSeqno":0},"3292398":{"index":1,"teamSeqno":0},"3346701":{"index":1,"teamSeqno":0},"3518931":{"index":0,"teamSeqno":0},"851150":{"index":1,"teamSeqno":0},"906846":{"index":1,"teamSeqno":0},"969342":{"index":1,"teamSeqno":0}},"postProbes":{"3577967":{"index":0,"teamSeqno":4},"3578281":{"index":0,"teamSeqno":4},"3578588":{"index":0,"teamSeqno":4},"3579306":{"index":0,"teamSeqno":4},"3579990":{"index":0,"teamSeqno":4},"3582699":{"index":0,"teamSeqno":4},"3582850":{"index":0,"teamSeqno":4},"3585566":{"index":0,"teamSeqno":4},"3588231":{"index":0,"teamSeqno":4},"3588716":{"index":0,"teamSeqno":4},"3589138":{"index":0,"teamSeqno":4},"3589996":{"index":0,"teamSeqno":9},"3590598":{"index":0,"teamSeqno":9},"3594620":{"index":0,"teamSeqno":9},"3596892":{"index":0,"teamSeqno":9},"3596970":{"index":0,"teamSeqno":9},"3597679":{"index":0,"teamSeqno":9},"3598724":{"index":0,"teamSeqno":9},"3602406":{"index":0,"teamSeqno":9},"3604694":{"index":0,"teamSeqno":9},"3609005":{"index":0,"teamSeqno":9},"3610423":{"index":0,"teamSeqno":9},"3612713":{"index":0,"teamSeqno":9},"3619871":{"index":0,"teamSeqno":9},"3620618":{"index":0,"teamSeqno":9},"3621694":{"index":1,"teamSeqno":9},"3621786":{"index":1,"teamSeqno":9},"3621799":{"index":1,"teamSeqno":9},"3621810":{"index":1,"teamSeqno":9},"3621847":{"index":1,"teamSeqno":9},"3621997":{"index":1,"teamSeqno":9},"3622051":{"index":1,"teamSeqno":9},"3622125":{"index":1,"teamSeqno":9},"3622413":{"index":1,"teamSeqno":9},"3622457":{"index":1,"teamSeqno":9},"3622477":{"index":1,"teamSeqno":9},"3622530":{"index":1,"teamSeqno":9},"3622531":{"index":1,"teamSeqno":9},"3622730":{"index":1,"teamSeqno":9},"3622952":{"index":1,"teamSeqno":9},"3623035":{"index":1,"teamSeqno":9},"3623140":{"index":1,"teamSeqno":9},"3623160":{"index":1,"teamSeqno":9},"3623185":{"index":1,"teamSeqno":9},"3623198":{"index":1,"teamSeqno":9},"3623296":{"index":1,"teamSeqno":9},"3623543":{"index":1,"teamSeqno":10},"3623664":{"index":1,"teamSeqno":11},"3623688":{"index":1,"teamSeqno":11},"3623731":{"index":1,"teamSeqno":11},"3623822":{"index":2,"teamSeqno":0},"3623826":{"index":2,"teamSeqno":0},"3623897":{"index":2,"teamSeqno":0},"3623949":{"index":2,"teamSeqno":0},"3623996":{"index":2,"teamSeqno":0},"3623999":{"index":2,"teamSeqno":0},"3624049":{"index":2,"teamSeqno":0},"3624086":{"index":2,"teamSeqno":0},"3624282":{"index":2,"teamSeqno":0},"3624410":{"index":2,"teamSeqno":0},"3624453":{"index":2,"teamSeqno":0},"3624508":{"index":2,"teamSeqno":0},"3624516":{"index":2,"teamSeqno":0},"3624570":{"index":2,"teamSeqno":0},"3624741":{"index":2,"teamSeqno":0},"3624812":{"index":2,"teamSeqno":0},"3624860":{"index":2,"teamSeqno":0},"3624872":{"index":2,"teamSeqno":0},"3625009":{"index":2,"teamSeqno":0},"3625051":{"index":2,"teamSeqno":0},"3625211":{"index":2,"teamSeqno":0},"3625214":{"index":2,"teamSeqno":0},"3625239":{"index":2,"teamSeqno":0},"3625296":{"index":2,"teamSeqno":0},"3625326":{"index":2,"teamSeqno":0}}}


fix logout Anonymos user

screwed up in last commit logout a bit, when sending signal, because user is Anonymous at the moment signal being sent
fixed now


[docs] Fix StaticDatePicker landscape example

Fix wrong example

[x] I have followed (at least) the PR section of the contributing guide.

should be done now i think @danilo-leal  :)

Actually, I think the previous example might be correct. it was issuing <Date> to the generic props intentionally. I will close the PR then. thanks!


Values are parsed as lists instead of single values

I noticed that metadata and properties values (which can only take a single value each) are represented as lists in the parsed specobject. For example like this:
"properties": {
          "begin": {
            "type": [
              "xsd:positiveInteger"
            ],
            "minCount": [
              "1"
            ],
            "maxCount": [
              "1"
            ]
          },
          "end": {
            "type": [
              "xsd:positiveInteger"
            ],
            "minCount": [
              "1"
            ],
            "maxCount": [
              "1"
            ]
          }
        }

or this:
"metadata": {
          "name": [
            "SemVer"
          ],
          "SubclassOf": [
            "xsd:string"
          ],
          "Instantiability": [
            "Concrete"
          ],
          "Status": [
            "Stable"
          ],
          "id": [
            "https://spdx.org/rdf/Core/SemVer"
          ]
        }

Is this a bug or a feature? I don't see the benefit of it, as there can't be more than one maxCount, minCount, or type.

Are all values single for every case, or do we ever have multiple ones?

Currently, there are no list-valued properties in the md-files. If there will ever be any, we can still think about special logic for them then.

OK, then it should be easy.
Let's have a PR about "all AV values are single, not lists".
It will only change all _values = split(...) to _values = ... (but keep the strip()).
Shall I do it or will you?

OK, I'll take care of it :)


refactor/handlers

:warning: Work in progress
This pull request enhances the control flow of certain controllers and introduces a dedicated function for deleting documents and images.

Looks good so far - Let me know if you need help with anything!

If you feel the pull request is becoming too extensive, please let me know, and I'll split it into smaller pull requests.

Also please let me know when it is no longer a WIP, so I can merge :)


Secrets store backup and restore

Describe changes
Allow users to configure a "backup" secrets store in addition to the primary one, with the same set of available secrets store types and configuration options.
When the backup secrets store is configured, it acts as a backup and high-available replica of the primary secrets store:

all secret values are also stored (created/updated) in the backup secrets store
if the primary secrets store is not responding or failing, the backup is used to fetch, create and delete secret values (the update operation is the only one impacted, for consistency reason).
if the backup secrets store is not responding or failing, the errors are treated as warnings
if a secret value is only found in the backup secrets store, it is automatically copied back to the primary secrets store on retrieval
two new zenml secret backup and zenml secret restore CLI commands allow bulk secret backup and restoration (see below)

This feature is also used to migrate secrets between secrets stores in three phases:

first, the new secrets store (B) is configured as backup alongside the existing one (A)
a bulk secret store values backup operation is called by running zenml secret update --delete-secrets --ignore-errors. This effectively moves all secret values from secrets store (A) to (B).
the primary secret store (A) is removed from the configuration and the new one (B) is configured as primary.

Side-quests

new REST API endpoints are implemented for the new backup/restore bulk secret operations
the new backup/restore bulk secret operations make use of two new RBAC secret permissions that need to be reflected in the ZenML Cloud code & dashboard. Secret BACKUP and RESTORE permissions should only be assigned to the tenant admin by default.
this PR also re-organizes the helm chart templates to generate environment variables using named templates instead of duplicating them in various places. This eliminates code duplication and keeps the helm chart code closer aligned to the ZenML python configuration code.
the GCP service account credentials, when configured for the GCP secrets store, are no longer passed as a pod volume, but as an environment variable instead.

Pre-requisites
Please ensure you have done the following:

[x] I have read the CONTRIBUTING.md document.
[x] If my change requires a change to docs, I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] I have based my new branch on develop and the open PR is targeting develop. If your branch wasn't based on develop read Contribution guide on rebasing branch to develop.
[ ] If my changes require changes to the dashboard, these changes are communicated/requested.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Other (add details above)

@coderabbitai review


Menu extends beyond screen on small displays

My laptop screen has a resolution of 1360x768 and when the view mode is set to "Satellite," the options for arrows and projection run off the top edge of the screen, even in fullscreen mode.

Hey, thanks for letting me know!
Knowing the screen resolution definitely helps. I pushed out a fix to add a scrollbar, does that help?

I can scroll in Chrome with the wheel and scrollbar, but not in other browsers (tbf I only have edge as well... no scrollbar appears)

Can also now confirm scrollbar doesn't appear in Firefox either, nor can I scroll with the mouse wheel.


add explicit control for clearing out form fields

create clearField(fieldName) method on Form.jsx. clearField should add form name to a new this.state.deletedFields array

create unclearField(fieldName) method (find better name?) that removes field from the deletedFields array

pass "clearField" callback from Form.jsx down to the form component

if a field value is modified after it has been cleared, unclearField should be called to remove the field name should be removed from deletedFields

modify the submitForm method in Form.jsx to also add all deletedFields fields to the unset object

Thanks for this! But is it clearedFields or deletedFields? looks like you have both in there?


Viewed by (username) not present for "TV Shows" Media Type

Describe the bug
The " Viewed by (username)" is missing from the "First Value" dropdown when any "TV Shows" media type is selected.
To Reproduce
Steps to reproduce the behavior:

Go to 'Rules'
Click on 'TV Shows' from Library
Select "Episodes" ffor media type
Scroll down to 'Rules -> Section 1'
Click the drop down for "First Rule"
Observe that "Viewed by (username) is not in the list

Expected behavior
I'm very new to Maintainerr, so it's possible I'm missing something, but I believe "Viewed by (username)" should be in the dropdown.
Device (please complete the following information):

OS: Official Docker
Version 2.1.2

Additional context
I am only using Plex and Sonarr as connected applications. Both are properly connected and pass connection checks.

What you are looking for is called Users that watch the show/season/episode, but you are correct it is named Viewed by when you are on a Movies library.

I am marking this as closed. If you require further assistance, please open a new issue.


Add License conditions screens

Changes in this PR

Add an additional licence conditions page

Screenshots of UI changes

Release checklist
Release process documentation.
Pre-merge checklist

[ ] Are any changes required to dependent services for this change to work?
(eg. CAS API)
[ ] Have they been released to production already?

Post-merge checklist

[ ] Manually approve
release to test
[ ] Manually approve
release to preprod
[ ] Manually approve
release to prod

@selina-dxw I've included a screenshot with all the errors. A lot of these feel clunky, but I'm not sure how to word them better. And should "Civil orders / SHPT / restraining, criminal behaviour orders" be "Civil / SHPT / restraining / criminal behaviour orders"?

 Add License conditions screens

Hey @bryangaledxw
I've checked against the original referral form and I think civil orders should be: 'Civil orders (e.g. SHPT), restraining orders, criminal behaviour orders'
Suggesting changes to a few of the error messages too:
You must provide details about conditions to engage with services
You must provide details about conditions on intimate relationships
You must provide details about conditions on child contact
You must provide details about conditions on non association
You must provide details about conditions on non contact
You must provide details about conditions on programmes or activities


Yoy.tv

Hello,
I apologize as I speak very little Polish, but I am setting Kodi up on an Amazon Fire TV for my grandmother whose first language is Polish. I am trying to use yoy.tv with the addon and it prompted me for a premium account. I paid the money for the premium account and it works fine in a web browser, but even with the login credentials in Kodi for yoy.tv, for whatever reason it is not recognizing that the account is premium. If you could please look into this, that would be great.

Also of note, this issue occurs on my PC as well in Kodi

please check your Premium status https://snag.gy/m4dpDw.jpg
check your login and password in settings,
clean Cookies folder in add-on userdata http://kodi.wiki/view/userdata (path in my PC is .kodi/userdata/addon_data/plugin.video.mrknowtv/Cookie

Update addon to new version 2<IP_ADDRESS>.

Thank you so much! Dziekuje! Appears to be working on my PC. Will try the Amazon Fire TV later.


Replace the use of viper.BindPFlags with variables binding

Replace all use of viper.BindPFlags with flag variables like here https://github.com/cilium/tetragon/pull/1106/commits/da795ea4b2890f51f2f922a19e194ac3926a0429 and add a static check on BindPFlags, like grep or something like that to prevent the use of this thing. Because:

When using same local flag for different subcommands, binding to the global configuration will erase previous values with the value of the last command's flag registered. See https://github.com/spf13/viper/issues/233.

And this has been breaking flags for some time now.

Can I be assigned this issue?

@mtardy
I apologize for leaving the issue unattended for so long.
While revisiting this issue recently, I noticed that the code has changed quite a bit since the issue was first published.
So I think it's worth checking to see if the issue is still valid.

@mtardy
I apologize for leaving the issue unattended for so long. While revisiting this issue recently, I noticed that the code has changed quite a bit since the issue was first published. So I think it's worth checking to see if the issue is still valid.

no worries, yep the option/flags part changed quite a lot recently. I would say it still applies but it's up to you, you can pick up something else and we can close this one. This thing has been causing issues in the past but it's not technically broken at the moment, it's mostly preventive.

For cmd/tetra, I think the change to viper.BindPFlags is valid.
However, in cmd/tetragon, the operator is calling viper.MergeConfigMap via pkg/option's Read*Config function.
Therefore, in both cases, we believe the use of viper.BindPFlags is appropriate.
What are your thoughts on this?

@mtardy For cmd/tetra, I think the change to viper.BindPFlags is valid. However, in cmd/tetragon, the operator is calling viper.MergeConfigMap via pkg/option's Read*Config function. Therefore, in both cases, we believe the use of viper.BindPFlags is appropriate. What are your thoughts on this?

let's worry only about tetra because tetragon is less subject having multiple flags colliding. I think your PR is great for tetra :)


Bug: Problem identifying correct release with multiple different releases

Scenario:
abo@ernest:~$ bin install github.com/kubernetes-sigs/kustomize
   • Getting latest release for kubernetes-sigs/kustomize
   ⨯ command failed            error=Could not find any compatible files
abo@ernest:~$ bin install https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2Fv4.1.2
   • Getting kustomize/v4.1.2 release for kubernetes-sigs/kustomize
   • Starting download of https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v4.1.2/kustomize_v4.1.2_linux_amd64.tar.gz
4.97 MiB / 4.97 MiB [-------------------------------------------------------------------------------------------------------------------------------------------------------------] 100.00% 5.74 MiB p/s 1s
   • Copying for<EMAIL_ADDRESS>into /home/abo/.local/bin/kustomize
   • Done installing kustomize kustomize/v4.1.2
abo@ernest:~$ bin update kustomize
   • /home/abo/.local/bin/kustomize kustomize/v4.1.2 -> kyaml/v0.10.19 (https://github.com/kubernetes-sigs/kustomize/releases/tag/kyaml/v0.10.19)

So bin runs into problems when a repo releases multiple different things, which is fair I guess.
Anything we can do to make it possible to install releases from such repos?

Anything we can do to make it possible to install releases from such repos?

This is going to be very tricky.. since if repo use any convention that they want it's going to be very difficult for us to be able to do something about it. I believe not even github thought about this use-case of one repository having multiple releases of multiple projects.
I saw this in the past but I've decided not to do so anything about it since it's the only case that I came across so far. If you have any simple way of fixing this I'm happy to hear options, but otherwise, I don't even think it's worth investing the time to fix this only case.

My first thought was that since the repo uses tagging that contains names of the releases (ie. kustomize and kyaml) we could allow setting a prefix for tags. That unfortunately probably won't work as the "latest release" only points to whatever was released last, switching between different products, so there won't always be a kustomize release marked as "latest release".
Can bin figure out the latest version aside from what is marked as "latest release"?


ASN not shown sometimes

For some reason the ASN was not shown some times and I found the following reason:
To decide whether the ASN should be shown or not, the default templates calls "Mage_CatalogSearch_Block_Layer::canShowBlock()". At this method the configuration value "catalog/search/use_layered_navigation_count" is fetched and if it's greater 0, that value is compared against "a product collection" from the database (which seems to be a Magento bug, since it actually should ask the engine! Fortunately this causes only a "select count" query, which is much faster than a full search)
Since I don't know how to file a bug at Magento, there should be a workaround for this. :-/
A quick fix is to set that configuration ("System" > "Configuration" > "Catalog" > "Catalog Search" > "Apply Layered Navigation if Search Results are Less Than") to "0", so that comparison is completely disabled.

Can you check this again please? After https://github.com/Flagbit/Magento-FACTFinder/commit/00813e0b3a85caf5339176bedf56c18ecccf8ce3 it should not happen anymore.

@xpoback:
Should there not be a special handling in case the fallback search feature is active?

@tuegeb this is already included into isEnabled function, when the fallback feature is active, it returns false.

Ok, thanks. From my point view this issue is solved. Probably @rudibatt won't check this anymore.

The current version doesn't solve this issue.
@xpoback: Please override the method canShowBlock in order to solve this issue.

@tuegeb I couldn't reproduce the issue, but just in case we will always show layer navigation if the module is enabled and the number of results is between 0 and the max allowed number.

@xpoback: Using 0 was fully functional, but in many cases this default setting has not been adjusted, so the idea was to remove this check, because all ASN related settings are made on FACT-Finder side and therefore the Catalog search settings on Magento side should completely be ignored.

@tuegeb Okay

Now it works fine, many thanks.


Introduce framework for background analysis; introduce POC analyzer

We introduce a BackgroundAnalysisTextViewCreationListener. This class implements, and MEF exports, the ITextViewCreationListener interface. VS invokes the listener's TextViewCreated method when the user opens any file.
The listener invokes the BackgroundAnalysisService (which it MEF imports through the IBackgroundAnalysisService interface) to start the analysis in the background. The introduction of this and other interfaces proposed here facilitate unit testing.
The BackgroundAnalysisService in turn MEF imports any number of objects that implement IBackgroundAnalyzer (note the [ImportMany]. This means that anyone can plug into the background analysis services by writing an extension containing a class that MEF exports the IBackgroundAnalyzer interface.
Our one and only implementation of IBackgroundAnalyzer is the ProofOfConceptBackgroundAnalyzer, which offers to replace internal class with public class.
Every analyzer derives from BackgroundAnalyzerBase. The base class takes care of stream management and output creation. Derived classes just override its abstract CreateSarifLog method, which takes the string of text to analyze, the path to the file, and a TextWriter to which the analyzer can write the SARIF log. This works nicely if the analyzer uses the SarifLogger (which can be constructed from a TextWriter) to create the SARIF. The POC analyzer does just that.
I mentioned "output creation". The base class does a MEF [ImportMany] of objects that implement IBackgroundAnalysisSink. At the moment, the sole implementer is the SarifViewerBackgroundAnalysisSink, which sends the log file to the SARIF viewer through the viewer's interop API (using LoadSarifLog(Stream)). But unit tests can replace the sink with (for example) one that writes to a StringBuilder, and one could imagine other destinations for the analysis in future (a database, for example, or a telemetry provider).
This implementation has several functional holes and design flaws:

If you close a file, the error list items resulting from the background analysis of that file remain.
If you close a file and the background analysis is not complete, the analysis continues. Similarly, if you then quickly reopen the file, multiple copies of the same analysis will run at the same time.
If you edit the file, the background analysis is not repeated.
The background operations are not cancelable.
There's no indication of the background operations in the status center.

Some of these (for example, status center presence) could easily be added to the current design. Most of the other deficiencies stem from the fact that we do not (yet) track of the identity or lifetime of a background analysis and its associated results.
Gabe believes we can evolve the code in this PR to the desired state (which is why I raise it for your inspection).

@lgolding, status on this? can we update this branch from master? is there some baseline work we should merge/build on or do you need to iterate?
let us know if @eddynaka can jump in.

No need for further iteration. I will merge this as soon as you give the go ahead. I've walked @eddynaka through the design and he understands where to plug in his analyzer.

In reply to: 728214435 [](ancestors = 728214435)

This branch is fully up to date with master and ready to merge.

In reply to: 728233936 [](ancestors = 728233936,728214435)


idf monitor: cyrillic symbols are broken (IDFGH-10437)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v5.1-rc1-36-g4bc762621d
Operating System used.
Windows
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
PowerShell
Development Kit.
custom board
Power Supply used.
USB
What is the expected behavior?
In idf.py monitor output - all cyrillic symbols are visible
What is the actual behavior?
Instead of cyrillic symbols I got ?? symbols:

##CLI.NAMESET#: 8 ???????????? FM

Steps to reproduce.

do export.ps1
idf.py monitor

Debug Logs.
Also I tried to use idf.py script from platformio:

 "name": "framework-espidf",
 "title": "Espressif IoT Development Framework",
"version": "3.50000.0",

With this version - all symbols are visible, no ?? symbols.

More Information.
No response

We will take care of this in the esp-idf-monitor project, please follow this issue: https://github.com/espressif/esp-idf-monitor/issues/1


define site tag for gcp

What is the problem that this PR is trying to fix?
This is the necessary worker config for travis-ci/worker#389.
What approach did you choose and why?
How can you test this?
What feedback would you like, if any?

We already define + internally recognize "Travis site", which have the same values as you've defined here.  Can you use the existing value instead?

Closing, as the worker PR is being reworked to re-use the global config. 👍


when use_chars is True ，a problem arose？

Traceback (most recent call last):
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 2349, in get_attr
c_api.TF_OperationGetAttrValueProto(self._c_op, name, buf)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Operation 'ExtractImagePatches' has no attr named '_XlaCompile'.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py", line 391, in _MaybeCompile
xla_compile = op.get_attr("_XlaCompile")
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 2353, in get_attr
raise ValueError(str(e))
ValueError: Operation 'ExtractImagePatches' has no attr named '_XlaCompile'.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "train.py", line 26, in
main()
File "train.py", line 12, in main
model.build()
File "/home/wsy/qa/aspect_extraction-master/model/aspect_model.py", line 409, in build
self.config.clip)
File "/home/wsy/qa/aspect_extraction-master/model/base_model.py", line 54, in add_train_op
grads, vs= zip(*optimizer.compute_gradients(loss))
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/training/optimizer.py", line 511, in compute_gradients
colocate_gradients_with_ops=colocate_gradients_with_ops)
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py", line 532, in gradients
gate_gradients, aggregation_method, stop_gradients)
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py", line 701, in _GradientsHelper
lambda: grad_fn(op, *out_grads))
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py", line 396, in _MaybeCompile
return grad_fn()  # Exit early
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py", line 701, in
lambda: grad_fn(op, *out_grads))
File "/home/wsy/python36_cuda9/lib/python3.6/site-packages/tensorflow/python/ops/array_grad.py", line 749, in _ExtractImagePatchesGrad
rows_out = int(ceil(rows_in / stride_r))
TypeError: unsupported operand type(s) for /: 'NoneType' and 'int'
could you help me？

You can not use character embedding this way because the task is to tag each word. Typically, you use character embeddings for sentence classification. Alternatively, you could concat word embeddings with character embeddings and then apply this network on that modified word embeddings.


Add option for always printing integration test output

Getting integration test output is sometimes useful even when they don't fail. Without this feature, you have to intentionally break the integration test to see the output.

Coverage decreased (-0.12%) to 71.49% when pulling a27eca52a290b571bb12836d5e5f1358737ce2fb on snordhausen:master into 7ca0cb9882e32813e7644b7b88c8523f7836b0aa on pybuilder:master.

Coverage decreased (-0.12%) to 71.49% when pulling a27eca52a290b571bb12836d5e5f1358737ce2fb on snordhausen:master into 7ca0cb9882e32813e7644b7b88c8523f7836b0aa on pybuilder:master.

LGTM - I'd like to have a more explicit property name though, something like integrationtest_always_verbose.
I'd expect integrationtest_verbose to do the same thing as verbose (which is the global setting), i.E.be verbose when there's an error.
One of the PyBuilder principles is that the build output should be clear and minimal, so the term "verbose" is something we currently use to say "if there's an error, then spew out more output". In this case there's always verbose output, so I think we should make this clear.

Coverage decreased (-0.12%) to 71.49% when pulling 3333afbc88467369eeb57be78b827f0f86b0ee09 on snordhausen:master into 7ca0cb9882e32813e7644b7b88c8523f7836b0aa on pybuilder:master.

Coverage decreased (-0.12%) to 71.49% when pulling 3333afbc88467369eeb57be78b827f0f86b0ee09 on snordhausen:master into 7ca0cb9882e32813e7644b7b88c8523f7836b0aa on pybuilder:master.

pybuilder==0.10.59 is on PyPI with your changes. Thanks!


objectMode?

It's possible to turn on objectMode?
This note means that it doesn't support?

There is no explicit objectMode because in streams1 such a concept did not exist. This will work with object streams implicitly. if you want a module that supports objectMode you can use through2


the newest realease doesn't work foe me!

the version of 2.18 is well,but above 3.0,it doesn't work anymore for auto translate, i used googletranslate,but when i changed to manual,it goes well.what's the problem of me ?

Greetings, and apologies for not having responded to this earlier.
I currently have no way of helping you as you have provided no details on the issue you are facing.
I can only guess that it may be related to a bad installation path that includes the '#' character in the path. The earlier versions of 3.x.x had issues with this, but it has been resolved in the later versions.
So I can only recommend that you update to a newer version.
If it still is not working for you, please re-open the issue and provide additional details on the issue you are facing.

Thanks for your replay.sadly!the newest is not work.so strange.version 2.8 is ok


Support for tensorflow/keras OR pytorch policies

Description of Problem: current rasa version is tightly coupled with tensorflow and is not practical for the use of pytorch. Pytorch is growing very fast and is ofter considered as an option for ML solutions.
Overview of the Solution:
A possible solution is the creation of PytorchPolicy as it exists with KerasPolicy. Transformer embedding policies should also choose if it uses Tensorflow or Pytorch. This way, tensorflow would not be a requirement for rasa anymore (it would be optional the same way as pytorch).
Examples (if relevant):

Blockers (if relevant):

Definition of Done:

[x] Tests are added
[x] Feature described the docs
[x] It is possible to install and create a rasa bot without tensorflow installed.

Thanks for raising this issue, @JustinaPetr will get back to you about it soon✨
Please also check out the docs and the forum in case your issue was raised there too 🤗

Hi @staticdev. Thanks for your suggestion. At the moment we don't have plans to implement pytorch policies. This is based on our approach that we implement new policies if they benefit a new method instead of just supporting new underlying libraries.
Nonetheless, thank you for your suggestion! 😊
I will close this for now.


Highlight body of C# 6 expression bodied members properly.

Fixes #638, #403, #679, #249
Before

After

LGTM

I wish we didn't have to copy paste so much though.

@DustinCampbell I wish we had a way to write tests for this this and avoid regressions in the future ;)

yeah, I want to figure that out too.


Feat/env handle

I'm still unsure with envs being implemented this way as it doesn't really achieve much other than warning the user that a certain env is required. The scraper will still need to do a null check to avoid crashing just like previously with the get_env_config() implementation.
If the only reason for this is to warn the user I think one if statement in a scraper's __init__() function is better than 21 lines.
Perhaps there's another reason to this implementation I'm missing? I'm all open to convincing.

Also I would prefer to be able to interact directly with the decouple config object in the scraper class.

Perhaps there's another reason to this implementation I'm missing? I'm all open to convincing.

This would reduce the amount of code required, resulting in a cleaner codebase.
That's the only reason that comes to mind currently.


IDBObjectStore's 'put'

Would be useful to have IDBObjectStore.put's "update or insert" behavior in addition to 'add' that's currently exposed.
Just ran into this library, looks like it will save my bacon.  Thanks!

update() uses put(), so this issue can be closed.


Error starting built mod using expandability as a dependency

So I have a mod that adds a few items to minecraft. When starting it in my ide(eclipse) using runClient it works perfectly fine, but if I build it to a jar file and start it with the minecraft launcher I get an error that mentions this dependency. How would I fix this? Thanks in advance!
crash-2023-06-22_16.48.24-fml.txt

Your log suggests expandability is not on your runtime classpath, and does not show in the modlist. Make sure that you have the expandability jar in your mods folder, or include it in your mod as a JarJar dependency.
Also, you should add the dependency to your mods.toml so your users get a clear error message if it is missing instead of this crash.

Thanks for the quick answer, though I do have expandability 7.0.0 installed. Is there something else you think could be wrong? I will also try to redownload it tomorrow just to be sure.

 I downloaded the fabric version by accident, while I am using forge. Thanks for your answer anyway and sorry to take up your time!


Issues with Camera Settings and Stream Recovery Post-Update

Environment

Version: Updated from 1.x (dont know exact version anymore) to latest
Operating System: Ubuntu 22.04
Camera: Canon 2000d
Backend: gphoto2

Description
After updating to the latest version of the photobooth-app from version 1.x, I am encountering several for me critical issues related to camera functionality and stream recovery:

The camera no longer sets the configured ISO automatically for live streaming mode (after capture).
If the camera experiences a power outage, the stream does not recover; instead, the error screen remains displayed.

Questions

What changes were made in the latest version regarding camera settings and stream recovery functionalities?
What is the purpose of _on_configure_optimized_for_idle() in the gphoto2 backend? Could the absence of this setting be affecting the auto ISO / Shutter functionality?
Is there a possibility that a configuration change that I might have missed is causing these issues?

Could you please also provide some logging file?

I right now also notized that right before the new photo is taken, eg. when the timer starts, the ISO setting is changed to liveview, as can be seen in the log file. And after the photo was taken, the iso / shutter stays the same (eg. capture iso / shutter). So it seems that after the photo was taken the iso is not reset / eg. set back.
(found these things using the search phrase: "setting custom iso value")
2024-06-29 20:27:06,386 [    INFO] setting custom iso value: Auto (gphoto2.py:220)
2024-06-29 20:27:06,432 [    INFO] setting custom shutter speed: 1/20 (gphoto2.py:230)
2024-06-29 20:27:08,176 [    INFO] transition after: idle--(start)-->counting (processingservice.py:295)
2024-06-29 20:27:08,177 [    INFO] exit: counting from _counted (processingservice.py:306)
2024-06-29 20:27:08,177 [    INFO] enter: capture from _counted (processingservice.py:299)
2024-06-29 20:27:08,178 [    INFO] current capture (1/1, remaining 0) (processingservice.py:348)
2024-06-29 20:27:08,179 [   DEBUG] capture to mediaitem.path_original=PosixPath('media/original/20240629-202708-178661.jpg') (processingservice.py:360)
2024-06-29 20:27:08,179 [    INFO] WledService preset_shoot triggered (wledservice.py:142)
2024-06-29 20:27:08,179 [ WARNING] WLED module not connected, ignoring request (wledservice.py:154)
2024-06-29 20:27:08,213 [    INFO] disable viewfinder before capture (gphoto2.py:296)
2024-06-29 20:27:08,213 [   DEBUG] request to _wait_for_lores_image waiting until ongoing request_hires_still is finished (gphoto2.py:174)
2024-06-29 20:27:08,233 [   DEBUG] request to _wait_for_lores_image waiting until ongoing request_hires_still is finished (gphoto2.py:174)
2024-06-29 20:27:08,488 [   DEBUG] configure camera optimized for still capture (gphoto2.py:193)
2024-06-29 20:27:08,488 [    INFO] setting custom iso value: 100 (gphoto2.py:220)

For the reconnection of the camera i sadly didnt find any hints within the log.
Here is the full log file:
log.txt

I experience the same behaviour with ISO not being set after capture. When triggered again, the ISO is set shortly after pressing the button.
For me this was ok, because the darker live stream is some kind of idle screen.
When taking a collage, ISO is not changing with the second picture onwards, so this seems more Like a bug.

Hey, gphoto2 issue to reconnect should be fixed in above commit.

And above should improve behaviour for setting iso/shutter.

I think this needs a bit more elaboration. For Picameras it is different than for gphoto2, I think:
countdown for still:

picamera runs in still-mode (to avoid delay due to switch actually when the picture shall be taken)
gphoto2 runs in video-mode (so preview is good)

Thank you for the quick resolution to the previous issues. The described cases are now functioning correctly. However, I have identified another (in this case small) problem:

When the application starts, the live view ISO is not set immediately. (eg. in my case the ISO of the camera is used)
Additionally, after recovering the camera from a power outage, the ISO is also not set. (eg. in my case the ISO of the camera is used)

Could you please look into these issues? Thank you!

Small above change should fix both. Would you test it?

Thanks for the fix, they seems to be working flawlessly on my system :)
michael @.***> schrieb am Di., 2. Juli 2024, 07:44:

Small above change should fix both. Would you test it?
—
Reply to this email directly, view it on GitHub
https://github.com/photobooth-app/photobooth-app/issues/311#issuecomment-2201986948,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANU6NJ4MXHPHWPWTJKVMBTZKI44RAVCNFSM6AAAAABKDCDW32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMBRHE4DMOJUHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

OK, closing it here, will be included in next release later.
Thank you for testing, this is very helpful!

next approach to finally fix this.
different backends work internally slightly different. picamera2 for example shall be set to HQ mode on start of countdown, to avoid delay when switching on the actual capture.
gphoto2 can apply new settings to the camera in no time, so its better to switch mode right before the capture instead the countdown start.
automated testing is running now, I think it should work now in every case.

Looking forward to this.
Will it be released shortly?
Would like to test this, but can‘t update to newest commits, since I‘m using pipx Version.

Hey, sorry to inform you, but I think the provided fix does not work. As after the selection screen (eg. If one would like to retake a photo eg for collages) the iso and shutter is still set to capture.

Hm, in processing, when the countdown is started, the signalbackend_configure_optimized_for_hq_preview function is called, which should result in finally call _configure_optimized_for_idle_video for gphoto2 when lores stream is requested.
I will test again later using hardware again.

I tested yestetday.
Indeed, between collage pictures the video now starts with still-params and adjusts to video-params after a second or so.
I can just tell from seeing Auto-ISO for Video vs. Specific ISO set for flash.

I tested on my canon 1100d now and the exif data is with ISO100 while livestream is with ISO800 - as set in the config.
if the camera needs 1 sec to apply this setting, it might never work as intended and it might need to stick to the capture settings even during captures.

Closing this for now. Feel free to reopen if still an issue...


Separate condition evaluations for same attribute

Consider the following:
with_options if: { kind: :short } do
  expose :name do |obj, opts|
    "#{obj.first_name[0]}. #{obj.last_name}"
  end
end

with_options if: { kind: :full } do
  expose :name do |obj, opts|
    "#{obj.first_name} #{obj.last_name}"
  end
end

Based on the above, I would expect that if :kind is :short then the value of :name will be the first initial and last name, and if :kind is :full then the value will be the first and last name.
However, since these two exposures use the same attribute name, it's not possible to evaluated them both.  The :name attribute only retains the conditional options that are defined last because they replace any previously defined options for the :name key in the the exposures hash.
This means that (for the code above) if :kind is :short then the :name attribute will not be exposed at all.
My first idea was to append some sort of unique identifier to each key in the exposures hash, but this produced a bunch of errors in the specs because they access the keys in the exposures hash directly to test values, and do not know beforehand what unique ID will be added.
Any thoughts?

I tried to solve it differently in #151, please look at it.


Use CMake for building

The current approach for building this project is a mess. I recommend to use CMake instead. It would allow more flexibility in changing compilers and targets.

I don't see much trouble in defining CC and/or CXX, and many platforms have things like update-alternatives that will often make those Just Work.  It's already very easy to compile with clang, gcc, etc.  An untested compiler might not work if it's using outdated libraries, but CMake won't really fix that.
What's the tangible benefit?  Outside of requiring someone to rewrite a build script in another language, and revalidate the builds on other platforms, and update the CI scripts to use cmake instead - which is just extra work - what would this fix?
For example, I suppose maxcso probably doesn't run on Hurd (but maybe it does?), though I doubt CMake would help that.  I'm pretty sure it does work fine on BSD already.
-[Unknown]

What's the tangible benefit?

Not so much benefit. Just a bit more versatility for which one would have to pay by having CMake on his computer. Unneeded when the environment is precisely known, but may be useful in other cases. But from the other side it may allow to have other environments without changing the sources. IDK if it worth, but for the fixing of the makefile for MinGW-w64 I had to spend quite some time. I hope that CMake would allow to automate that because it has modules for discovery of popular libs.

Hm, well, I think that's just a factor of it being a different language, essentially.  Someone might say Meson or Bazel is better, or perhaps SCons.  Maybe one could even use Broccoli.  It seems like we have too many:
https://news.ycombinator.com/item?id=16488772
The funny thing is some of these just use makefiles under the hood.  Makefiles are simple and they're probably not going anywhere.  I don't have to worry that a Makefile I write will have compatibility compliance warnings with a new version of Make in 5-10 years or stop working altogether - that almost certainly will be true of CMake, though.
And CMake is no magic bullet - for example, PPSSPP has some hacks for mingw compilation to work within its CMakeLists.txt.  The main issue with mingw was really that libdeflate decided mingw ought to be treated differently - and it doesn't support CMake either, so if I switched I'd probably have to unwrap why they did that and make my own CMake build script for libdeflate too.
So with that and the fact that there's a Makefile that already works plenty well on macOS, BSD (thought I think it requires gmake), various Linux distros, etc.... I don't really want to move to CMake without a compelling reason.  Possibly if I someday decided to have a GUI in this repo (which isn't really likely) that would be easier with CMake than Make.  But other than that, switching build systems entirely just has more risk than reward.
-[Unknown]


QuickEdit a settings icon does not switch to newline

VSCode Version: 1.8.1
OS Version: Windows 10

Steps to Reproduce:

Open 3-4 Editors(one of them is the default settings editor) next to each other to have not that much space left.
Try edit a option:

Since my screenshot program doesn't want to recognize my pointer, I've drawn it. If you want to edit this option, the scrollbar is in its way. And when I am over the scrollbar, the edit icon is invisible.
I would like to have it being switched to the next line, so I can edit this option, even when there is not much space.

Duplicate of #16714


Trigger a timeout when guessing parameters for HDF5 takes too long

TODO better error handling. Right now, the opening dialogue defaults to RAW
if the timeout is triggered.
TODO There seems to be code duplication. between _get_datasets() and detect_params().
@sk1p is there a specific reason to do it like that? I have to admit that I don't fully
understand the consequences of changing this.
TODO: Choose a well-balanced timeout value in case traversing a legitimate file
takes longer than that, for example over network.
Closes #440

I've looked into creating an artificially slowed down HDF5 file to get test coverage for the new code. I tried to inject a modified version of h5py.File with a slowed-down function. However, that didn't work as expected. Can we leave this code path without coverage?

Based on your patch, I removed the duplication and added test cases.

TODO better error handling. Right now, the opening dialogue defaults to RAW
if the timeout is triggered.

This is actually because the TimeoutError is thrown outside of the try block, so it propagates up and HDF5 is skipped completely as format. The rationale here is that different readers are tried on different files, and may throw exceptions as they are handed something that may look like garbage to them. Maybe we should at least log the exception in these cases (Linux does it like this IIRC; you may get log messages from different file systems when mounting without a specified file system.)

I've looked into creating an artificially slowed down HDF5 file to get test coverage for the new code. I tried to inject a modified version of h5py.File with a slowed-down function. However, that didn't work as expected. Can we leave this code path without coverage?

What works, and without introducing a slow sleep somewhere, is just making visititems throw the TimeoutError. Or, to also cover the visitor function completely, one can make time.time return a value from a sequence of pre-defined timestamps on each call. I've included both approaches for now.
To get this right, it is crucial to patch it in the right namespace, in this case directly in h5py.File (this depends on how the module is imported, for example, if libertem.io.dataset.hdf5 had from h5py import File, we would have to patch libertem.io.dataset.hdf5.File instead, IIRC.) There is a handy tool called mock in the stdlib that handles many of the special cases for us.

TODO: Choose a well-balanced timeout value in case traversing a legitimate file
takes longer than that, for example over network.

Don't know about a good value, maybe let's change this once we hit it :grin:

mock looks neat! Next time I'll play around with that. :-)
@sk1p thx for the improvements and guidance!

Could you re-test (after your weekend!) with your strange HDF5 file, and let me know if this also works in practice? Then I'll merge. Thanks!

Could you re-test (after your weekend!) with your strange HDF5 file, and let me know if this also works in practice? Then I'll merge. Thanks!

Tested and confirmed to work! 👍

Thanks, merged!


Support for ES6 / EcmaScript 2015?

This package does not seem to work properly with ES6 files. I cannot find any of my class methods, for instance.

Have you tried using a custom ctags configuration? This seems to work okay for my ES6 classes with a custom ~/.ctags. Out of the box, it didn't work for me.

This seems to work okay for my ES6 classes with a custom ~/.ctags. Out of the box, it didn't work for me.

@sb8244: Would you be willing to share your custom ~/.ctags file?


[Feature Request] add ability to enable or disable transition

This is not a very common case. But it's good to let user control this transition affect or not.
I see the WeChat app has two type of navigation bar transition. The original navigation transition and the other one just like this project(WeChat -> Me -> Cards & Offers).
Should we add a switch for this transition?

Hi @tinpont, I didn't add the switch because I tried to make the library cover all cases. As the mini program of WeChat, all the animation transitions are similar to the effects provided by this library.
But adding a switch that gives users more control,  so feel free to make a pull request if you want.

Thanks for your reply, @MoZhouqi. I will try when I have time.


force-engine feature seems to not be including the engine

The 111.24.0+1.1.1s release seems to include the change to add the force-engine feature (a714062):
$ git tag --contains a714062
111.23.0+1.1.1r
111.24.0+1.1.1s

However, when trying to use it, openssl-src, seems to still be providing the no-engine flag. See https://github.com/vectordotdev/vector/pull/15375, in particular the failed cross-compilation for musl.
For contrast, this fork that removes the conditional for setting no-engine does compile correctly.
I feel like I may be missing something though.

Hmm, actually this might be an issue with it not including the feature for build dependencies, where openssl-src also appears.

Yep, that was it 😅


Forward some more CMake variables to host builds.

This makes it so that these variables (which control sanitizers, use of
ccache, and cmake verbosity) apply also to the host build, not just to
the target build.

nice, thanks!


DialogButton Readme example not accurate

An internally reported issue regarding the first example in the dialog readme:
isDefault does not work on Accept, but instead appears on Dismiss.
      <Dialog open={isOpen}>
        <DialogTitle>My Dialog</DialogTitle>
        <DialogContent>
          <MyDialogContent />
        </DialogContent>
        <DialogFooter>
          <DialogButton action='dismiss'>Dismiss</DialogButton>
          <DialogButton action='accept' isDefault>Accept</DialogButton>
        </DialogFooter>
      </Dialog>```

Am also seeing this in my use of Dialog. If you swap buttons in code it works on accept, so first button seems to be default.

I think this has something to do with focus-trap, which makes the dialog accessible.
This is my understanding of the code so far:
Dialog opens, creates a focus-trap instance, with the dialog-element as parameter by calling createFocusTrapInstance.
Focus-trap puts the focus on the first element as default (Demo).
To focus on another element (e. g. the one with isDefault=true), createFocusTrapInstance  needs the element as parameter.
I found no way to set this parameter.
A reference to the trapInstance is saved as class-variable focusTrap.
I did not find a way to interact with this variable.
The only work-around I found was, to reverse the order of the buttons and reverse them back using CSS3:
<DialogFooter style={{'flex-direction': 'row-reverse'}}>
  <DialogButton action='accept' isDefault>Accept</DialogButton>
  <DialogButton action='dismiss'>Dismiss</DialogButton>
</DialogFooter>

I think this work-around makes sense, because it gives the best UX for people that can see the UI (button for the default choice is on the right site) and for people using a screen reader (button for default is read out first + tab order is consistent with the read out buttons).
I am not an expert on a11y so maybe I am missing something.
But please fix the docs or implement isDefault correctly, because the current implementation is doing accessibility a disservice (in german: Bärendienst). This is one of those issues that makes developer do stupid things to save time, like giving tab-index=1 to the accept button (please don't do it) which would also work, but would make the app/website probably unusable for people using a screen reader.


Manual testing to approve Alpha MVP (for ETH1)

What is wrong?
We're very close to telling people: this is no longer just a prototype, it's a "basically working" alpha (with some intentionally missing features, like log filters).
Before we do that, we should make sure we really believe it ourselves.
How can it be fixed
Everyone run a trinity node for a while, and try it out.
Things to try on mainnet:

[ ] check an account balance
[ ] call a contract
[ ] broadcast a transaction
[ ] make something else up that isn't listed here

People who signed off that it looks good enough for MVP:

[ ] ralexstokes
[ ] lithp
[ ] cburgdorf
[ ] gsalgado
[ ] carver
[ ] kclowes
[ ] njgheorghita
[ ] pipermerriam

(I'll change all those ^ to mentions when all the other MVP tasks are resolved)
@kclowes -- Would you be up for adding a guide in web3.py docs to launch trinity and connect to it, then do all the web3.py things you might want to do? If there's anything keeping us from preferring trinity over Infura in the docs, please mention it!

@carver running a node in this context means starting from scratch and using beam sync to reach the tip of the chain?

Would you be up for adding a guide in web3.py docs to launch trinity and connect to it, then do all the web3.py things you might want to do?

How exciting!! I'd be happy to! I can write something up in the next week or so as I play around with it, or if you want to/already have something ready let me know @carver!

If there's anything keeping us from preferring trinity over Infura in the docs, please mention it!

Will do!

@ralexstokes alternatively, you can use --beam-from-checkpoint <checkpoint-uri> to skip downloading the header chain and start from a trusted checkpoint instead.

Just to throw in something motivating, I've been running beam sync on Görli for a week with just one minor hiccup which is already fixed in master.

@carver this issue mentions broadcast a transaction but I just realized we don't have eth_sendRawTransaction (#29) implemented yet. I guess this is a must  for the beta milestone, no?

Confirmed that transactions can be submitted locally via metamask https://goerli.etherscan.io/tx/0x19afa0f2c8a1ac19bf40789ba18adee22937c901740d639cae4fa0a502ee0844