sfdx.SFDXBaseTask supports formatting extra with org_config; Add dx_set_defaultusername Task

Critical Changes
Changes

sfdx.SFDXBaseTask supports formatting extra with self.org_config
Added dx_set_defaultusername Task to set SFDX Default Username from org_config.   Useful for VS Code integration whose commands assume a Default Username is set.class_path: cumulusci.tasks.sfdx.SFDXBaseTask
options:
    command: 'force:config:set'
    extra: 'defaultusername="{org_config.sfdx_alias}"'
    format_extra_with_org_config: True

Issues Closed

@davidmreed , the coninuous-integration/appveyor/branch failed but for an unrelated test.  Can you help with this?

@spelak-salesforce This is similar to an issue on our backlog, #868, but we were thinking of it as something that should happen automatically when you set your default CCI org using cci org default [orgname] rather than a standalone task. Considering that idea, do you think there are still situations where you would want to use this as a separate task? i.e. a case where you want the org to be the default for sfdx but not for cci?

@spelak-salesforce This is similar to an issue on our backlog, #868, but we were thinking of it as something that should happen automatically when you set your default CCI org using cci org default [orgname] rather than a standalone task. Considering that idea, do you think there are still situations where you would want to use this as a separate task? i.e. a case where you want the org to be the default for sfdx but not for cci?

The Salesforce Extension Pack VS Code Extension requires a sfdx Default Username to be set.  There are some nice features.  Also, the Salesforce Extension Pack displays the sfdx Default Username on screen (bottom middle) which is useful for knowing where what state the project is in

I've written functions/aliases to help me quickly do the following:

  # delete the existing dev org and recreate the dev org
  # to guarantee the scratch org has exactly my source
  alias dev_org='cci org remove dev && cci flow run dev_org --org dev'

  # Execute test shortcuts
  # I like the sfdx test printout a lot more than cci's test printout
  alias sfdx_test='sfdx force:apex:test:run -c -r human -w 10 -y -n $1'
  alias sfdx_tests='sfdx force:apex:test:run -c -r human -w 10 -n $1'
  alias sfdx_tests_all='sfdx force:apex:test:run -c -l RunLocalTests -r human'

I use my dev_org alias often, so I'm deleting and recreating scratch orgs a dozen+ times a day.
Plus I want to quickly execute Apex Tests with sfdx, so I want use my sfdx_test aliases.    I need project.name from cumulusci.yml + know which config is used to known programatically what the sfdx Username is for the current state of the project.   This isn't easily accessible from cci (to my knowledge).

I've written functions/aliases to extract this info from cumulusci.yml that is hard-coded to use the dev config.

function yaml {
  python -c "import yaml;print(yaml.safe_load(open('$1'))$2)"
}

function dev_sfdx {
  PROJECT_NAME=$(yaml cumulusci.yml  "['project']['name']")
  PROJECT_NAME+='__dev'
  sfdx force:config:set defaultusername=$PROJECT_NAME
}
``
-   But this is annoying + hard-coded to **dev** config.  I want to:
    -  Be able to create a cci task to execute a sfdx command where I fill in the `sfdx_alias` (this is the update to `sfdx.SFDXBaseTask`)
    -  We don't specifically need a cci `dx_set_defaultusername` in cci.  I can create this task locally in a project.
    -  I also don't want to force the other engineers on my team to have to have their sfdx Default Username to be set.  My plan is to create another `dev_org_dx` flow in our team's project.

@spelak-salesforce I'm not trying to question the usefulness of sfdx commands -- I use them too. What I'm saying is we can make it so that cci org default dev takes care of setting dev as the default scratch org for CCI commands AND ALSO setting PROJECTNAME__dev as the defaultusername for sfdx.
Then your dev_org alias would become:
alias dev_org='cci org remove dev && cci org default dev && cci flow run dev_org'
This would set both defaults and you would not need to adjust flows to run an additional task.
Would you use this or am I missing something important?

@spelak-salesforce I'm not trying to question the usefulness of sfdx commands -- I use them too. What I'm saying is we can make it so that cci org default dev takes care of setting dev as the default scratch org for CCI commands AND ALSO setting PROJECTNAME__dev as the defaultusername for sfdx.
Then your dev_org alias would become:
alias dev_org='cci org remove dev && cci org default dev && cci flow run dev_org'
This would set both defaults and you would not need to adjust flows to run an additional task.
Would you use this or am I missing something important?

@davisagli , all good.  Yes, I could set a default cci org that sets the sfdx Default Usernameto solve my problem.

Make sure to wrap the PROJECTNAME__dev in double quotes since the Project Name can have spaces.
In VS Code, it is a lot more useful to set the sfdx Default Username with the alias than the username since whatever is set is displayed on the screen (see image above).

A separate question: Is there anything wrong with the change to sfdx.SFDXBaseTask to support formatting extra with org_config attributes?

This allows one to call sfdx getting the cci sfdx_alias for an arbitrary sfdx command.
sfdx.SFDXOrgTask exists and maybe this change isn't needed if setting cci default org sets the sfdx Default Username
Since format() is used, is there any risk of modifying org_config?

@spelak-salesforce thanks, those are good details to keep in mind. I'll try to work on this addition to the cci org default command soon.
I don't see any glaring problems with adding the ability to format extra with org_config attributes, but if the change I'm proposing for cci org default makes it unnecessary, I'd rather wait to add it until there's a clear need.

@spelak-salesforce I've opened a PR with my proposal, #1086

@davisagli , could we do something simpler?
Can we change sfdx.SFDXOrgTask to append the org_config.sfdx_alias instead of the org_config.username?
I think I do want to be able to create a task to set the sfdx Default Username from cci config:

My team's repo is in Metadata format
I am creating a temporary sfdx project in a branch so I can use force:source:pull to pull in Metadata changes made in the UI
I am currently manually calling sfdx force:config:set defaultusername="Case Management__dev" and prefer to use a cci command which pulls the info from the config rather than me looking it up

@spelak-salesforce

I am currently manually calling sfdx force:config:set defaultusername="Case Management__dev" and prefer to use a cci command which pulls the info from the config rather than me looking it up

That is what the cci org default [orgname] command will do in the next release since we merged #1086

@spelak-salesforce I agree with your suggestion that it would be better for SFDXOrgTask to pass the sfdx_alias instead of the username though.

@davisagli

@spelak-salesforce

I am currently manually calling sfdx force:config:set defaultusername="Case Management__dev" and prefer to use a cci command which pulls the info from the config rather than me looking it up

That is what the cci org default [orgname] command will do in the next release since we merged #1086

But if I create a sfdx Project inside a Metadata-format Repo, I need to change directory to the project and won't be in a cci directory anymore.   ... and using cci commands would be unavailable anyways and my Use Case wouldn't work anyways.

@spelak-salesforce I agree with your suggestion that it would be better for SFDXOrgTask to pass the sfdx_alias instead of the username though.

May I change this Pull Request to only change sfdx.SFDXOrgTask to append the org_config.sfdx_alias instead of the org_config.username?  I have test data ready-to-go to test the sfdx_alias.   Then you can decide if you want to merge or not.

But if I create a sfdx Project inside a Metadata-format Repo, I need to change directory to the project and won't be in a cci directory anymore. ... and using cci commands would be unavailable anyways and my Use Case wouldn't work 😅.

@spelak-salesforce it should work if you create your sfdx project inside the root of the repository. cci looks for a containing directory with a .git subdirectory.

May I change this Pull Request to only change sfdx.SFDXOrgTask to append the org_config.sfdx_alias instead of the org_config.username?

Yeah, go ahead.

May I change this Pull Request to only change sfdx.SFDXOrgTask to append the org_config.sfdx_alias instead of the org_config.username?

Closing this due to inactivity. Please feel free to open a new PR with this change.


Windows Installation Video Tutorial (Cuda 12.1)

This isn't an issue or enhancement request.
Just wanted to say thanks for your work on AutoGPTQ,
And just wanted to help Windows users, that don't want to go the wsl route, be able to get it working with Cuda 12.1.
https://www.youtube.com/watch?v=kPDUEm9J-Cw

yes ，l am same

Thank you so much for making this video! I think it would also be a good idea to put the link in a proper place in README, I will do it some time later.


Pioneers, Settlers, Townplanners area does not scale as the map scales.

The current Pioneers, Settlers, Townplanners area does not scale as the map scales as the browser is resized.
The current implementation of Pioneers, Settlers, Townplanners area uses the following:
pioneers visibility, maturity width height
My suggestion would be that it is changed to the following:
pioneers start visibility, start maturity, end visibility, end maturity width height
Leaving width height allows for backward compatibility with current maps.
If the end visibility and end maturity were in place the width and height would be ignored.
End visibility/maturity may be the wrong name but it allows for a dynamically sized box that will adapt the browser size rather than being a fixed height and width.
Nick
Example:
Both of the following were created with the same map:
pioneers [0.95, 0.02] 450 1030
settlers [0.95, 0.44] 250 1030
townplanners [0.95, 0.75] 250 1030
note Pioneers [0.03, 0.38]
note Settlers [0.03, 0.62]
note Town Planners [0.03, 0.90]

Thanks for this Nick.  I've had to change it quite a lot and have decided not to maintain backwards capability.  Instead I have implemented a migration script which will update maps with a best guess if they're loaded with the old syntax.
settlers [0.95, 0.44, 0.75, 0.64]
townplanners [0.95, 0.75, 0.75, 0.95]

(pioneers|settlers|townplanners) [<visibility>, <maturity>, <visibility2>, <maturity2>]

Thank you for your work!

This is awesome thank you!


Rewrite URLs for improved HATEOAS

One request came in for Prism v2 and help with replacing hosts in JSON:API links, and I was wondering if we could solve that in Prism v3.
So, taking their link-in-the-body example:

It is a little unfortunate they have had to pollute their spec with a variable, which will show up and look funny in other tools. Instead, what if they hardcode all links to match the content of a valid server.
So, in their spec, define the servers array:
servers:
  - url: https://api.foo.com
    description: Production server

  - url: https://staging-api.foo.com
    description: Staging server

Continuging with their example:
"links": {
  "self": "https://api.foo.com/api/shared_file_categories"
}

This is a nice default because it includes the production server, and it is only a problem when Prism returns that link. When clients follow it, they end up on production, so boo, let's turn that into a local URL.
If we add a CLI option --rewrite-urls, it could be implemented as a Fastly middleware which looks through the JSON/XML/HTML content for a URL which matches a known servers.url + a valid path as defined in the spec, it rewrites the server URL portion (everything before the path) of that link to whatever prism is currently running under.
If Prism was running as usual:
$ prism mock links.yaml --rewrite-urls
http://<IP_ADDRESS>:4010

...and the calls were as usual:
http GET http://<IP_ADDRESS>:4010

The links would be rewritten to:
"links": {
  "self": "http://<IP_ADDRESS>:4010/api/shared_file_categories"
}

If Prism was called in conjunction with server validation (missing from Prism v3 currently but implemented in v2):
http GET http://<IP_ADDRESS>:4010?__server=https://staging-api.foo.com

then we would see links rewritten like this:
"links": {
  "self": "https://staging-api.foo.com/api/shared_file_categories"
}

What do you think?
I started off considering this somehow related to OpenAPI "Links" but I think it can be done without going anywhere near them, as it is links in the body we are struggling with currently.

@philsturgeon interesting idea, and I like it.
The main concerns I have with --rewrite-urls as a cli option, we open pandoras box, and we start to specialize prism towards certain api designs.
Maybe instead of a cli option, it could be a plugin instead? I know the new version of prism doesn't have a plugin system just yet, but would be pretty cool. We could provide some of our own plugins initially, and if users wanted to, they could write their own.

I don't really mind what code the CLI is enabling. When proposing this I figured the CLI option would enable the middleware, the middleware then interacts with the JS library, etc.

Gotcha, what about something like --plugin @stoplight/rewrite-urls, then it doesn't look like something we officially support(unless of course that is our plugin). And you could pass in as many plugins as you want, --plugin @stoplight/rewrite-urls --plugin @stoplight/cors or --plugin @stoplight/rewrite-urls,@stoplight/cors.
Just an idea that would need to be fleshed out, couple concerns from a user perspective is what order do plugins run in? I have some ideas around that. Adding plugins would mean we need to design a plugin interface, document, ect so that users could build them.

I think we can wrap up official plugins with a bit of a nicer API than that, right? Save a lot of faff?
To me, common functionality can be in the core, and as things get more outlandish they can go elsewhere, but this is a pretty common thing. Building a REST API is pretty much our whole thing, and supporting links is necessary for that.

Neat idea! Plugins are cool but a HUGE topic.
Thinking out loud - for this, would a more generic "rewrite/replace" type arg get the job done? Something like:
prism mock links.yaml --rewrite "https://api.foo.com" "http://<IP_ADDRESS>:4010"

I agree with @marbemac, plugins would be awesome but there's a lot more to that than simply creating a plugin architecture.
What I don't understand is why this should either be a plugin or new CLI parameter, as Stoplight already offers a system for extending mocking behavior through Scenarios?
Although a bit clunky and rather buggy, it does more or less work.
Just an idea: maybe these prism "plugins" could take the form of Stoplight-provided Scenario steps one can use as building blocks?

@distinctgrey The generic functionality provided can be exposed in multiple ways. I work mainly with the CLI tools so that’s the example I’m using, but for it to exist it will need work done on the core libraries. With that core work done it will be possible for us to expose that functionality through the various user interfaces of the Stoplight platform.
@marbemac one downside with that —rewrite approach is that maybe it’s a little clunky to type? Generic things are good, but I feel like this is so generic it’s losing some of its sheen. It will be something we have to document as a use case, like “if you want to support HATEOAS links in the body, here is a little trick” instead of just a switch you enable and the use case happens for you through the existing conventions in Prism.
I feel like folks might ask for generic rewrites in the future, and we can add them as a “do whatever” feature, but perhaps we can have both for the sake of the users fingers. :)


refactor: Standardize header guard macros.

Request
Decide on a standard for header guard macros.
Possible implementation
Two potential options for how we want to combine the snake case folder names and camel case file names (e.g. log_surgeon/finite_automata/DfaState) :

Ignore camel case (e.g., LOG_SURGEON_FINITE_AUTOMATA_DFASTATE).

Convert camel case to snake case (e.g., LOG_SURGEON_FINITE_AUTOMATA_DFA_STATE).

Sorry to miss this in #57. We should also ensure the header guards are ended with the file postfix, e.g., DfaState.hpp should have its header guard being LOG_SURGEON_FINITE_AUTOMATA_DFASTATE_HPP


[Issue 10781][pulsar-functions] fix build failure because of spotbugs

(If this PR fixes a github issue, please add Fixes #<xyz>.)
Fixes #10781
Motivation
solving build failure case causing by spotbugs issue which is explained in #10781
Modifications
Small modification: add a null check in BKStateStoreImpl.java:[line 175]
Verifying this change

[ ] Make sure that the change passes the CI checks.

This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

Hi @jiazhai  @codelipenghui , can you please take a look?


add requirements.txt and update readme.

Hi @CLQ060728,
I updated your readme and added a requirements.txt.
Small help.
Best.

Hi Sefika, Thanks a lot. BestQian From: Sefika EfeogluSent: 23 January 2024 21:47To: CLQ060728/DCSSMSCc: CLQ060728; MentionSubject: [CLQ060728/DCSSMS] add requirements.txt and update readme. (PR #4) Hi @CLQ060728,I updated your readme and added a requirements.txt.Small help.Best.You can view, comment on, or merge this pull request online at:  https://github.com/CLQ060728/DCSSMS/pull/4Commit Summaryd25be87 Update README.md4f5d38c add requirements.txtFile Changes (2 files)M README.md (58) A requirements.txt (16) Patch Links:https://github.com/CLQ060728/DCSSMS/pull/4.patchhttps://github.com/CLQ060728/DCSSMS/pull/4.diff—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>


what about an image rotator?

sometimes it would be cool to generate some things and turn them upside down since stable diffusion doesn't do sideways or upside orientations very easily.

Good one
Will add it

@KohakuBlueleaf
Is flip image feature still planned?

@KohakuBlueleaf Is flip image feature still planned?

Yeah
I am busy in the end of the semester in college these days
Will impl this in this weekend or next week
If you want to do it you can just pr it


Fix Hover

Notes for Reviewers
This PR fixes #8717
Screencast from 02-10-23 01:34:02 AM IST.webm
Signed commits

[x] Yes, I signed my commits.

The resultant effect looks good. Please do consider incorporating, @theBeginner86's feedback

Let's discuss this on the Meshery dev call tomorrow,
Please add this as your agenda item in Docs: https://docs.google.com/document/d/1Dg4Uz9rGTuGHmYZwIt47z1j5x3LmnpxD1M1SgypAkQ0/edit

LGTM 👍now


Requesting source of image used.

Hi,
I'm creating this ticket here because I couldn't find the IRC or similar channel of you guys. Apologies if it's the wrong place.
Could you guys please give me the source to the image behind 'Welcome Nick!' in this image used in https://getstream.io/winds/#.

I searched your repository for it, but couldn't find it. It would be really helpful if you could.
Thanks :)

Hey Dwight- We killed that when we changed that section to showcase "featured" publishers. It is now this:

@zeroby0 - what was the interest here? Perhaps send me an email -<EMAIL_ADDRESS>I'll close issue this for now.


Improve contains check done by FastRegexMatcher

I recently saw a production regexp pattern like (.+)-(.+)-(.+)-(.+)-(.+). Currently, this pattern is loosely optimised in the FastRegexMatcher: we only check if the input string contains 1 occurence of - (in any position) and, if yes, we run the full regexp engine, while if it doesn't we skip the regexp engine.
A simple way to further optimise it is to check for all literals in the pattern instead of just the first one, which is what I'm proposing in this PR.
Benchmark
The benchmark shows some performance change to few patterns that are not expected to change. I've re-run the benchmarks multiple times and they're consistent, which I don't fully understand. I thought it was the change to compileMatchStringFunction() so I've commented the change there (essentially skipping the "contains" check), but I still get such difference with main.
goos: darwin
goarch: arm64
pkg: github.com/prometheus/prometheus/model/labels
                                                     │  before.txt   │              after.txt              │
                                                     │    sec/op     │    sec/op     vs base               │
FastRegexMatcher/#00-11                                 40.86n ±  3%   35.52n ±  1%  -13.07% (p=0.002 n=6)
FastRegexMatcher/foo-11                                 41.51n ± 21%   36.10n ±  0%  -13.04% (p=0.050 n=6)
FastRegexMatcher/^foo-11                                33.90n ±  1%   33.62n ±  1%        ~ (p=0.065 n=6)
FastRegexMatcher/(foo|bar)-11                           47.43n ±  1%   46.74n ±  2%   -1.45% (p=0.041 n=6)
FastRegexMatcher/foo.*-11                               84.12n ±  2%   80.83n ±  4%   -3.92% (p=0.009 n=6)
FastRegexMatcher/.*foo-11                               96.67n ±  3%   96.01n ±  4%        ~ (p=0.699 n=6)
FastRegexMatcher/^.*foo$-11                             98.48n ±  2%   95.20n ±  0%   -3.34% (p=0.002 n=6)
FastRegexMatcher/^.+foo$-11                             98.22n ±  2%   97.08n ±  3%        ~ (p=0.818 n=6)
FastRegexMatcher/.?-11                                  55.68n ±  0%   55.63n ±  0%   -0.09% (p=0.002 n=6)
FastRegexMatcher/.*-11                                  66.39n ±  4%   65.73n ±  6%        ~ (p=0.485 n=6)
FastRegexMatcher/.+-11                                  72.13n ±  4%   70.46n ±  5%        ~ (p=0.394 n=6)
FastRegexMatcher/foo.+-11                               84.08n ±  1%   84.39n ±  2%        ~ (p=1.000 n=6)
FastRegexMatcher/.+foo-11                               97.27n ±  3%   97.39n ±  3%        ~ (p=0.937 n=6)
FastRegexMatcher/foo_.+-11                              70.28n ±  1%   70.11n ±  1%        ~ (p=0.485 n=6)
FastRegexMatcher/foo_.*-11                              71.00n ±  4%   69.97n ±  2%   -1.45% (p=0.026 n=6)
FastRegexMatcher/.*foo.*-11                             175.1n ±  1%   173.2n ±  5%        ~ (p=0.143 n=6)
FastRegexMatcher/.+foo.+-11                             185.0n ±  1%   184.2n ±  2%        ~ (p=0.411 n=6)
FastRegexMatcher/(?s:.*)-11                             35.58n ±  1%   34.82n ±  1%   -2.14% (p=0.002 n=6)
FastRegexMatcher/(?s:.+)-11                             34.48n ±  0%   34.78n ±  1%   +0.87% (p=0.004 n=6)
FastRegexMatcher/(?s:^.*foo$)-11                        96.44n ±  1%   95.79n ±  2%        ~ (p=1.000 n=6)
FastRegexMatcher/(?i:foo)-11                            63.73n ±  1%   63.69n ±  0%        ~ (p=0.327 n=6)
FastRegexMatcher/(?i:(foo|bar))-11                      145.4n ±  1%   145.6n ±  2%        ~ (p=0.219 n=6)
FastRegexMatcher/(?i:(foo1|foo2|bar))-11                239.5n ±  1%   240.2n ±  1%        ~ (p=0.310 n=6)
FastRegexMatcher/^(?i:foo|oo)|(bar)$-11                 642.6n ±  0%   635.7n ±  0%   -1.07% (p=0.002 n=6)
FastRegexMatcher/(?i:(foo1|foo2|aaa|bbb|ccc|ddd|e-11    1.352µ ±  1%   1.470µ ±  1%   +8.73% (p=0.002 n=6)
FastRegexMatcher/((.*)(bar|b|buzz)(.+)|foo)$-11         432.1n ±  1%   443.3n ±  1%   +2.58% (p=0.002 n=6)
FastRegexMatcher/^$-11                                  35.62n ±  0%   34.79n ±  3%   -2.32% (p=0.039 n=6)
FastRegexMatcher/(prometheus|api_prom)_api_v1_.+-11     162.5n ±  2%   162.4n ±  3%        ~ (p=0.671 n=6)
FastRegexMatcher/10\.0\.(1|2)\.+-11                     70.96n ±  0%   70.96n ±  0%        ~ (p=1.000 n=6)
FastRegexMatcher/10\.0\.(1|2).+-11                      70.97n ±  0%   71.01n ±  2%        ~ (p=0.448 n=6)
FastRegexMatcher/((fo(bar))|.+foo)-11                   181.8n ±  0%   181.7n ±  0%        ~ (p=0.210 n=6)
FastRegexMatcher/zQPbMkNO|NNSPdvMi|iWuuSoAl|qbvKM-11    186.9n ±  6%   179.3n ± 11%        ~ (p=0.240 n=6)
FastRegexMatcher/jyyfj00j0061|jyyfj00j0062|jyyfj9-11    180.4n ± 29%   189.7n ±  5%        ~ (p=0.394 n=6)
FastRegexMatcher/(?i:(zQPbMkNO|NNSPdvMi|iWuuSoAl|-11    1.371µ ±  1%   1.473µ ±  1%   +7.48% (p=0.002 n=6)
FastRegexMatcher/(?i:(zQPbMkNO.*|NNSPdvMi.*|iWuuS-11    5.176µ ±  0%   5.179µ ±  1%   +0.06% (p=0.017 n=6)
FastRegexMatcher/(?i:(.*zQPbMkNO|.*NNSPdvMi|.*iWu-11    6.163µ ±  0%   6.151µ ±  0%   -0.19% (p=0.009 n=6)
FastRegexMatcher/fo.?-11                                84.01n ±  0%   85.22n ±  0%   +1.45% (p=0.002 n=6)
FastRegexMatcher/foo.?-11                               83.43n ±  0%   85.21n ±  1%   +2.14% (p=0.002 n=6)
FastRegexMatcher/f.?o-11                                71.54n ±  0%   71.56n ±  1%        ~ (p=0.855 n=6)
FastRegexMatcher/.*foo.?-11                             183.6n ±  0%   185.9n ±  3%        ~ (p=0.067 n=6)
FastRegexMatcher/.?foo.+-11                             173.7n ±  1%   176.1n ±  5%   +1.41% (p=0.009 n=6)
FastRegexMatcher/foo.?|bar-11                           127.0n ±  0%   126.8n ±  1%        ~ (p=0.288 n=6)
FastRegexMatcher/.*-.*-.*-.*-.*-11                     4631.0n ±  2%   178.7n ±  1%  -96.14% (p=0.002 n=6)
FastRegexMatcher/(.+)-(.+)-(.+)-(.+)-(.+)-11           5704.0n ±  0%   179.8n ±  1%  -96.85% (p=0.002 n=6)
FastRegexMatcher/((.*))(?i:f)((.*))o((.*))o((.*))-11    8.558µ ±  0%   4.012µ ±  1%  -53.12% (p=0.002 n=6)
FastRegexMatcher/((.*))f((.*))(?i:o)((.*))o((.*))-11    5.493µ ±  0%   3.264µ ±  1%  -40.59% (p=0.002 n=6)
geomean                                                 183.9n         153.7n        -16.41%

(I omitted memory benchmark results because there's no diff)

To explain my thinking: previously the test used 18 strings, total about 456 bytes.  This is small enough that most branches could fit in the prediction cache of the cpu, and adding one more branch could tip that change.  It's unrealistically small compared to any real-world Prometheus.
Increasing to 75,000 strings and 3.5MB makes it unlikely the CPU can predict every branch, and pushes out from L1 to L2/L3 cache.


Buttons unvisible

Microsoft PowerToys version
0.80.1
Installation method
GitHub
Running as admin
Yes
Area(s) with issue?
General
Steps to reproduce
I use the light theme of powertoys. Buttons at right upper corner (minimize , maximize , close , are unvisible.
They appear only at hover mouse.
✔ Expected Behavior
Buttons always visible
❌ Actual Behavior

Other Software
No response

/dup #29387


Bowling animation for the random dice

There's support for a new animation for the random dice.
This time it's the bowling emoji https://emojipedia.org/bowling/.
It would be basically doing the same we did in https://github.com/kotlin-telegram-bot/kotlin-telegram-bot/pull/119/files, but for the bowling emoji.

Hi @vjgarciag96, I am currently learning to contribute to open source. I feel like this is a good issue to work with. I would like to try it. So, this issue deals with working on the same files that were in https://github.com/kotlin-telegram-bot/kotlin-telegram-bot/pull/119/files doing the same changes. Am I right?

Hi @vjgarciag96, I am currently learning to contribute to open source. I feel like this is a good issue to work with. I would like to try it. So, this issue deals with working on the same files that were in https://github.com/kotlin-telegram-bot/kotlin-telegram-bot/pull/119/files doing the same changes. Am I right?

Hi @ShrillShrestha!
I'm happy for you to work on the issue 🙂. Yes, you're right, it's about working on the same files that were in that PR doing the same changes but to add a different emoji in this case.
Let me know if you need help with anything!

Hi @ShrillShrestha!
I'm happy for you to work on the issue 🙂. Yes, you're right, it's about working on the same files that were in that PR doing the same changes but to add a different emoji in this case.
Let me know if you need help with anything!

Thanks, @vjgarciag96. I will work on this. If there are any questions, I will let you know. :)

Thanks, @vjgarciag96. I will work on this. If there are any questions, I will let you know. :)


yolov9_t_wholebody17 processing example

Issue Type
Support
OS
Other
OS architecture
x86_64
Programming Language
Other
Framework
ONNX
Model name and Weights/Checkpoints URL
https://github.com/PINTO0309/PINTO_model_zoo/tree/main/457_YOLOv9-Wholebody17
Description
I am trying to run the YOLOv9-Wholebody17 in browser using https://cdn.jsdelivr.net/npm/onnxruntime-web/dist/ort.min.js
I have a .js that use to work with you previous models. Now, with yolov9_t_wholebody17_post_0100_1x3x736x1280.onnx the image is processed, but no output.
Can you give me a simple python example of the image processing for the model with some output?
Relevant Log Output
process the results: {"batchno_classid_score_x1y1x2y2":{"cpuData":{},"dataLocation":"cpu","type":"float32","dims":[0,7],"size":0}}

URL or source code for simple inference testing code
No response

https://github.com/PINTO0309/PINTO_model_zoo/blob/main/457_YOLOv9-Wholebody17/demo/demo_yolov9_onnx_wholebody17.py
https://github.com/PINTO0309/PINTO_model_zoo/tree/main/457_YOLOv9-Wholebody17#yolov9-wholebody17


Update project template and fix codecov

Problem & Solution Description (including issue #)
Update project template
Adding codecov token to secret
Code Quality

[ ] My code follows the code style of this project
[ ] I have written unit tests or justified all instances of #pragma: no cover; in the case of a bugfix, a new test that breaks as a result of the bug has been added
[ ] My code contains relevant comments and necessary documentation for future maintainers; the change is reflected in applicable demos/tutorials (with output cleared!) and added/updated docstrings use the NumPy docstring format
[ ] Any breaking changes, described above, are accompanied by backwards compatibility and deprecation warnings

oh no I think i messed up...try again...


Add glossary

The terminology used in DNW can be confusing (rates model, rates file, weights...).
Having a clear definition for those terms would help both the end-user to use the tool, and the developer to maintain the project.

Done : https://github.com/HurlesGroupSanger/DeNovoWEST/wiki/Glossary-and-Resources


CHEBI:34907, please check

Hi Adnan,
Please could you review CHEBI:34907 needed for Rhea.
You can add
MetaCyc xref:CPD-16744  (http://metacyc.ai.sri.com/compound?orgid=META&id=CPD-16744)
PubMed citation: 23311903
Thank you,
Anne

Now checked.


Improve accessiblity

This is tracker for accessibility related issues.
These issues don't have to (and probably shouldn't) be solved in one take. Every PR is welcomed.
Non-clickable elements

[ ] src/client/components/Story/StoryFull.js - PopoverMenu is not clickable.
[ ] src/client/components/UserMenu.js - Menu elements are not clickable.
[ ] src/client/invite/Invite.js - Copy link button is not clickable.
[ ] src/client/settings/ProfileSettings.js - Submit button is not clickable.
[ ] src/client/activity/UserActivitySearch.js - Collapse/Expand icon is not clickable.
[ ] src/client/components/Sidebar/CryptoTrendingCharts.js - Refresh and collapse icons are not clickable.

In progress:

[ ] src/client/components/Sidebar/InterestingPeople.js - Refresh icon is not clickable. assigned to @garroadran

Done:

[x] src/client/components/Sidebar/Topics.js - Show more/less buttons are not clickable - assigned to @th7nder

I would be delighted if I could try to solve this one!

I'd love to have a crack at
src/client/components/Sidebar/InterestingPeople.js - Refresh icon is not clickable
Although it might take me a few days to get around to it.

Great, thanks!

I got here after trying to suggest accessibility improvements through Utopian.io and having the suggestions rejected because this issue already existed. I see the issue has been closed for a couple of months and many things are still unsolved. Are there any plans to tackle the accessibility problems again?
Aside from the elements already mentioned in the issue, there are many important buttons that cannot be accessed from the keyboard (cannot be focused by using the "Tab" key nor activated by the "Enter" key), such as the "Like" button, the "Reblog" button, and the button to open the popover menu (most of them also have no labels for screen readers). The files where they are located:

src/client/components/StoryFooter/Buttons.js - except for the link with the number of comments, all buttons are inaccessible from the keyboard.
src/client/components/CommentFooter/Buttons.js - all buttons are inaccessible from the keyboard.
src/client/components/PopoverMenu/PopoverMenuItem.js - popover menu items have text but are inaccessible from the keyboard.
src/client/components/StoryFooter//Confirmation.js - the "Confirm" and "Cancel" buttons have text but are inaccessible from the keyboard.

These elements are ahrefs without the hrefs, and just adding 'href="#"' would be enough to make them respond to keyboard input. As for the buttons with no text, adding 'aria-hidden="true"' to the icons' 'i' elements, then adding an 'aria-label' with the same text as the tooltips should be enough for screen readers to announce the buttons.

Hi is this still relevant ? If so I could try  src/client/components/Story/StoryFull.js - PopoverMenu is not clickable.


Revert "Team page alignment fixed and spacing in the code"

Reverts Catalyst-CSE/OpenSourceEvents-Frontend#95

@anubhavsingh16 any reasons?

Yes @aashimgarg  please have a look PR again.

Yes @aashimgarg please have a look PR again.

i checked in my browser. might be not working in the macOS browser


expenses: 0.2.2 -> 0.2.3

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/manojkarthick/expenses/releases.
meta.description for expenses is: "An interactive command line expense logger"
meta.homepage for expenses is: ""
meta.changelog for expenses is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
Warning: no invocation of /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3/bin/expenses had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 0.2.3 with grep in /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3
found 0.2.3 in filename of file in /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
expenses

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A expenses https://github.com/r-ryantm/nixpkgs/archive/9f786dea838b07e749f8d77257e5917f70201876.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3
ls -la /nix/store/9xb1ccymzz6pr6x358mv296jj9i5imyn-expenses-0.2.3/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

expenses

Maintainer pings
cc @manojkarthick @kalbasit for testing.

Thank you!


fix(reports): don't log user errors and state change has errors

SUMMARY
Don't log misconfigure alerts (with bad SQL or unsupported results) has errors on the worker. Also logs information about log pruning
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

Codecov Report

Merging #12277 (3014e8c) into master (d4a854e) will decrease coverage by 3.65%.
The diff coverage is 8.00%.

@@            Coverage Diff             @@
##           master   #12277      +/-   ##
==========================================
- Coverage   67.17%   63.52%   -3.66%
==========================================
  Files        1002      485     -517
  Lines       49231    29843   -19388
  Branches     5000        0    -5000
==========================================
- Hits        33073    18957   -14116
+ Misses      16035    10886    -5149
+ Partials      123        0     -123

Flag
Coverage Δ

cypress
?

javascript
?

python
63.52% <8.00%> (-0.69%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

superset/reports/commands/log_prune.py
0.00% <0.00%> (ø)

superset/reports/dao.py
78.50% <0.00%> (-0.75%)
:arrow_down:

superset/tasks/scheduler.py
0.00% <0.00%> (ø)

superset/reports/commands/exceptions.py
98.59% <100.00%> (+0.04%)
:arrow_up:

superset/db_engines/hive.py
0.00% <0.00%> (-85.72%)
:arrow_down:

superset/db_engine_specs/hive.py
54.61% <0.00%> (-29.62%)
:arrow_down:

superset/db_engine_specs/presto.py
70.56% <0.00%> (-12.78%)
:arrow_down:

superset/db_engine_specs/mysql.py
79.59% <0.00%> (-12.25%)
:arrow_down:

superset/db_engine_specs/sqlite.py
65.62% <0.00%> (-9.38%)
:arrow_down:

superset/utils/celery.py
96.42% <0.00%> (-3.58%)
:arrow_down:

... and 526 more

Continue to review full report at Codecov.

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


Stepper Icons are too big

Problem
Stepper Icons have no space between Icon itself and the circle.
In my opinion, it looks disturbing, especially for edit icon.

Solution
Changing this
case StepState.editing:
    return new Icon(
        Icons.edit,
        color: isDarkActive ? _kCircleActiveDark : _kCircleActiveLight,
    );
case StepState.complete:
    return new Icon(
        Icons.check,
        color: isDarkActive ? _kCircleActiveDark : _kCircleActiveLight,
    );

Into this:
case StepState.editing:
    return new Icon(
        Icons.edit,
        color: isDarkActive ? _kCircleActiveDark : _kCircleActiveLight,
        size: 18.0,
    );
case StepState.complete:
    return new Icon(
        Icons.check,
        color: isDarkActive ? _kCircleActiveDark : _kCircleActiveLight,
        size: 18.0,
    );

Would result in this:

In Material specs there is no mention of icon size. Only that the circle should be 24dp.
Can we make this change? I can make a pull request.

@MarcinusX Is there a way already defined in stepper implementation, for changing the icon example editing, complete whenever, we are on the step. I am unable to find a way, but your screenshots looks interesting.

I don't think there is such a way. Those code snippets are coming from material library source, so they're not customizable.

The icons honour the sizing from the iconTheme property in the theme. As a workaround, you could override this in the MaterialApp.theme property, but that would affect all icons that also use the same theme, so you can wrap your Stepper in a Theme widget and override the size on the iconTheme:
var theme = Theme.of(context);
Theme(
  data: theme.copyWith(iconTheme: theme.iconTheme.copyWith(size: 18.0),
  child: Stepper(…)
),


Hide TypstCode syntax from menu

I think the TypstCode syntax should be hidden from the menus (the command palette and the syntax selection menu from the bottom right corner) because this syntax is not meant to be selected manually.
And I don't know if the typc file extension really exists, but otherwise the following part is probably also unnecessary and could be removed (I haven't done it in this pull request because it's not so important):
file_extensions:
  - typc

You are so fast with merging pull requests 🚀
Thanks :-)


May this code be used in research work?

Hi Tinfoi,
I think this code is very well done, and it is definitely a clean and efficient PyTorch implementation of the sample reweighting algorithm.
My question is, may this code be reused for other people's research work? (Including modification and release in research papers.) I believe it will benefit the research community really much.
I am personally doing research related to sample reweighting right now, and I hope to refer to some parts of your code. I would be very grateful if you can permit this and properly cite your work.
Thank you very much for your work.

Thanks!


General: Allow instructors to recommend date of completion for competencies

Checklist
General

[ ] I tested all changes and their related features with all corresponding user types on a test server.
[ ] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
[x] I followed the coding and design guidelines.
[x] I added multiple integration tests (Spring) related to the features (with a high test coverage).
[x] I documented the Java code using JavaDoc style.

Client

[x] Important: I implemented the changes with a very good performance, prevented too many (unnecessary) REST calls and made sure the UI is responsive, even with large data.
[x] I followed the coding and design guidelines.
[x] Following the theming guidelines, I specified colors only in the theming variable files and checked that the changes look consistent in both the light and the dark theme.
[x] I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
[x] I documented the TypeScript code using JSDoc style.
[x] I added multiple screenshots/screencasts of my UI changes.
[x] I translated all newly inserted strings into English and German.

Motivation and Context

Students have difficulties managing their time in asynchronous LEs. This PR allows instructors to guide students by recommending the time of completion of competencies.
In the future, this date will also be used during the creation of individual learning paths.
Description

added date to domain&DB
added date picker in the competency creation/update view
added date to competency management view
added date badge to competency card & details view

Steps for Testing

Prerequisites:

1 Instructor
1 Student
1 Course

create 3 competencies (competency 1 - no date, 2 - date in the past, 3 - date in the future)
check if you can edit and save a competency as expected (make sure the competencies still satisfy the properties stated above)
check that the dates are displayed correctly in the competency management table
log in as a student and navigate to the course competencies
make sure you see the following: 1 - no date badge, 2 - red date badge, 3 - green date badge
open each of the competencies and check that you see the same badges again.

Review Progress

Code Review

[ ] Code Review 1
[ ] Code Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Test Coverage

Class/File
Line Coverage
Confirmation (assert/expect)

Competency.java
79%
✅

CompetencyResource.java
97%
✅

create-learning-goal.component.ts
%
✅

edit-learning-goal.component.ts
%
✅

learning-goal-card.component.ts
%
✅

learning-goal-form.component.ts
%
✅

learning-goal-management.component.ts
%
✅

learningGoal.model.ts
%
✅

course-learning-goals-details.component.ts
%
✅

Screenshots

Create/Edit:

Management:

Card:

Details:

Codecov Report

Merging #6662 (3fc76f6) into develop (9fdfbf0) will increase coverage by 4.27%.
The diff coverage is 88.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.
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #6662      +/-   ##
=============================================
+ Coverage      76.14%   80.41%   +4.27%
- Complexity         0    13590   +13590
=============================================
  Files           1277     2399    +1122
  Lines          47944    91732   +43788
  Branches        8373    12880    +4507
=============================================
+ Hits           36507    73768   +37261
- Misses          5807     9866    +4059
- Partials        5630     8098    +2468

Impacted Files
Coverage Δ

src/main/webapp/app/entities/learningGoal.model.ts
70.37% <ø> (ø)

...g-goals/course-learning-goals-details.component.ts
75.38% <75.00%> (-0.06%)
:arrow_down:

...learning-goal-card/learning-goal-card.component.ts
90.00% <80.00%> (+3.33%)
:arrow_up:

...java/de/tum/in/www1/artemis/domain/Competency.java
83.05% <100.00%> (ø)

...m/in/www1/artemis/web/rest/CompetencyResource.java
95.07% <100.00%> (ø)

...te-learning-goal/create-learning-goal.component.ts
81.81% <100.00%> (+0.42%)
:arrow_up:

...edit-learning-goal/edit-learning-goal.component.ts
86.53% <100.00%> (+0.26%)
:arrow_up:

...learning-goal-form/learning-goal-form.component.ts
76.40% <100.00%> (+0.54%)
:arrow_up:

... and 1121 files with indirect coverage changes

Flag
Coverage Δ

client
76.15% <85.00%> (+<0.01%)
:arrow_up:

server
85.09% <100.00%> (?)

Continue to review full report in Codecov by Sentry.

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

@RY997 I fixed the alignment issue. Thx for pointing it out. The difference is so small on my screen that I didn't even notice it without inspecting the element.

Tested on ts2. Works as expected for competencies with due dates. However, the competency with no due date could not be loaded automatically in the student view. I had to press the refresh button to get it to work.


[Bug] seatunnel spark to doris not report error when be reponse job failed

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
when i use seatunnel sync data from hive to doris, the spark task log "Batch Messages Response" Status is Fail, but seatunnel still show job success. what happened about it?
SeaTunnel Version
2.1.0
SeaTunnel Config
Doris {
             fenodes="xxx:8030"
             database="xxx"
             table="xxx"
             user="xxx"
             password="xxx"
             batch_size=1000
             doris.column_separator="\\t"
             doris.columns="id, name, sex"
  }

Running Command
start-seatunnel-spark --master yarn --deploy-mode client --config ./myjob.conf

Error Exception
not report exception

Flink or Spark Version
spark version is 2.4.0-cdh6.2.1
Java or Scala Version
2.11
Screenshots

Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

can you show more message ， is there any exception?

tks for your reply~ there is no any exception found.
and i found the reason for it. because sink.DorisUtil.streamLoad is not catch the fail status in doris respose.
like the below picture, i will attemp to parse the reponse in our version.

can you show more message ， is there any exception?

can you show more message ， is there any exception?

tks for your reply~ there is no any exception found. and i found the reason for it. because sink.DorisUtil.streamLoad is not catch the fail status in doris respose. like the below picture, i will attemp to parse the reponse in our version.

if possile，can you also fix it for seatunnal?

tks for your reply~ there is no any exception found. and i found the reason for it. because sink.DorisUtil.streamLoad is not catch the fail status in doris respose. like the below picture, i will attemp to parse the reponse in our version.

if possile，can you also fix it for seatunnal?

the latest version has changed the sync ways, and already parse the reponse , i will update my version to v2.3.0 for it


AkkaHttp backend modifies content-type header "application/json" with encoding

It looks like AkkaHttp backend removes charset part of the content-type if the content type is "application/json".
Please compare:
basicRequest.contentType(MediaType.ApplicationJson.charset("UTF-8"))
produces
User-Agent: akka-http/10.2.9
Content-Type: application/json

Custom content type
basicRequest.contentType("application/test", "utf-8")
produces expected result:
User-Agent: akka-http/10.2.9
Content-Type: application/test; charset=UTF-8

I can imagine that the motivation for removing the charset in the first case is because this is the default but in some cases it is crucial to be as specific as possible, for example because of specific server-side requirements.

Hi,
From what I see it is an akka-http issues in general as it treat application/json as MediaType with fixed charset and drop any provided by user. Here you can see it clearly:

It is a snippet from  akka.http.scaladsl.model.ContentType and we are using this method in sttp.
I am not sure if it is even a bug as here  https://www.iana.org/assignments/media-types/application/json you can read that there is no charset parameter defined for application/json at all.

Hi!
Yes, you're absolutely right, this is something where akka-http "knows better" and yes, I do agree that the standard you mentioned does define "application/json" without an encoding parameter.
It would be a nice world if standards were obeyed :D
There are other RFCs and standards, less general that state that content-type header can contain encoding part, such as https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type and https://datatracker.ietf.org/doc/html/rfc7231#section-<IP_ADDRESS> .
I do understand that they are less specific and the one mentioned by you shall be preferred.
Unfortunately some libraries/frameworks implement less specific approach and in this case it would be good to satisfy their requirements even when these are not 100% standard-conform. In other words, the library should not "know better".
For example, currently I must communicate with an API that supports few content-types and a lot of functionality is linked to the encoding parameter. For simplicity on their side they require the encoding to always be defined. And with current implementation there is literally no possibility to do so, except for the customizeRequest defined for the whole akka-http backend.
With akka-http directly it is not strait-forward but possible like
val contentType: ContentType.WithFixedCharset = MediaTypes.`application/json`.withParams(Map("charset" -> charset)).toContentType
request.withEntity(request.entity.withContentType(contentType))

So maybe it would make sense to be explicit and apply withParams in the sttp BodyToAkka#ctWithCharset in the case if charset is defined in the request?

@slavaschmidt unfortunately in the current design we are not able to reliably distinguish between an explicitly-set content type, and a default one coming from a body, as encoding in StringBody is non-optional. Hence changing this would mean that all json requests would have the charset appended.
I agree this is a shortcoming of sttp but I think this can only be fixed by breaking binary compatibility (so will have to wait until sttp-client4)

Related discussion: https://github.com/akka/akka-http/issues/1482
akka-http follows the "be generous in what you consume but strict in what you produce" principle.
Therefore it does not produce HTTP messages with standard-violating Content-Type headers.
The discussion around application/json encodings came up man times in the last 10 years (that's how old akka-http now is).
I've come to regard application/json as a kind of binary Content-Type, which just happens to be human-readable.
It's not really a text-based Content-Type because there is no flexibility with regard to the encoding.
UTF-8 is simply set in stone.

Hey @sirthias , thank you for jumping into the discussion. As I mentioned above, the akka-http approach is strict and it is understandable that framework developers strive for purity in regard to the standard.
Still, there are few things worth mentioning:

The standard does not forbid defining the encoding for application/json content-type, it merely states it is meaningless (the link you provided puts it nicely). This is important in my case because I have intermediary that is blind in regard to content-type but requires encoding to be explicitly defined. For sure, in the case of application/json it will always be UTF-8, the point is, I need to have such possibility and in this case it is standard compliant.
akka-http still allows to define any encoding for application/json, it just needs to be done in a quirky way and this "workaround" is not what sttp (understandable) counts for
On a broader scope, it is sad if library does not allow for solving a problem because library developers decided that some problem is just not a right problem to solve (and of course library developers have absolute right to decide whatever they want to).  I'm using async-http-client now instead of akka-http-client because my problem "is not right", huge thanks to the flexibility of sttp, still, one user less for akka-http-client.


When profiling Snowflake, allow users to choose between system and bernoulli sampling.

Is your feature request related to a problem? Please describe.
Task #8336 made a change to use bernoulli for sampling so that views could be sampled. Turns out that the performance hit due to this is much larger than one might have expected. One of my table scans went from a 1 minute scan to a 13 minute scan due to the change.
Describe the solution you'd like
When profiling a Snowflake table, allow users to choose what type of sampling that they want to use.
Describe alternatives you've considered
Spending a lot of money on long running queries ;)

@hendrix04 thanks for opening this. I think users should be able to choose (i.e. we should not force one or the other). While it takes longer for BERNOULLI to run, SYSTEM has one big drawback in which not all rows have the same probability to be picked up in the sampling (which is not the case with BERNOUILLI).
As both have tradeoffs, we should let user decide. 🙂 I'll circle back with more details.

@TeddyCr, Any more details here?

@TeddyCr, do you think I should do #8429 in the same PR as this task?

Let's tackle them separately. 🙂

Can I try this issue for my next challenge?

Sure @nakaken-churadata, go ahead, Let me know if you require any help around the same and if you need more context here

Fixed with https://github.com/open-metadata/OpenMetadata/pull/17831


sshs seems to be confused with User defined as a parameter for global and host

seen w/ sshs 3.4.0
sshs seems to be confused with User defined as a parameter for global and host
Here is the content of my config file.

Host *
User admin
ServerAliveInterval 30
ServerAliveCountMax 120
Host axis-b8a44f
User root

I'm expected to have the user root used for the connection to axis-b8a44f as it is shown by sshs

But it seems that it's not the case, based ion the ssh prompt
admin@axis-b8a44f's password:

sshs is using the locally installed ssh to connect to hosts. That might be an issue with your currently installed version of ssh.
What does ssh -V gives you ?

I'm currently having the issue with OpenSSH on Ubuntu on WSL

$ wsl.exe
Welcome to Ubuntu 20.04.5 LTS (GNU/Linux 4.4.0-19041-Microsoft x86_64)
$ ssh -V
OpenSSH_8.2p1 Ubuntu-4ubuntu0.5, OpenSSL 1.1.1f  31 Mar 2020

Hey! Looking back to your configuration, everything's fine, did you expected admin to show up in the User column?


Add TypeScript

Adds TypeScript. Inherits most definitions from @types/haxball-headless-browser
Tested with mocha

I've reviewed at your Pull Request and everything looks great specially typings. But I have some concerns about modularizing it. How about opening a side repository for modularizing? Like @haxballjs/builder or something. I want haxball.js to stay original as possible, thanks.

There is no implementation of modularizing in this PR, it's just a recommendation for developing with haxball.js in README.md. It will help it to be used in more projects. Everything that is included is necessary for typings themselves. If we would make @haxballjs/builder, there is no code to be put there.
I understand if this doesn't align with your vision - let me know in the comment. I'll develop these solutions in my own repos then.

All is good for me, im releasing 2.1.0 for now. Let me think about what I can do with @haxballjs/builder when I get home, then i will inform you. Thanks for PR.


Color Theme ID should be shon on github page too

Running bash thrown theme list which is too long to fund the one we like, so please include input id to the currosponding theme on github page too so we dont need to search id for the input can be quick and easy

Every time someone contribute with a theme, the ID changes.
Surely I can align that the page is always updated with the repo themes.
However, people do not know this and tomorrow someone can make a script that uses the ID x to install a specific theme.
When Gogh changes the ID change and the script will break and the worst thing is that it will be very difficult to debug and figure out why he is not installing the "original" theme.
Yea i know we need to set static ID's to resolve this and I have a solution in mind or so I think.
The static ID it can be generated by making a hash of each Theme and using the first 5 numbers of that hash. Something like that. I still do not know.
At some point it will be done.
https://github.com/Mayccoll/Gogh/discussions/256

Every time someone contribute with a theme, the ID changes.
Surely I can align that the page is always updated with the repo themes.
However, people do not know this and tomorrow someone can make a script that uses the ID x to install a specific theme.
When Gogh changes the ID change and the script will break and the worst thing is that it will be very difficult to debug and figure out why he is not installing the "original" theme.
Yea i know we need to set static ID's to resolve this and I have a solution in mind or so I think.
The static ID it can be generated by making a hash of each Theme and using the first 5 numbers of that hash. Something like that. I still do not know.
At some point it will be done.
https://github.com/Mayccoll/Gogh/discussions/256

ok,
can also if id is not an option to keep on webpage directly, you can allow the bash script to any two case inputs

ID of theme
Directly theme name we cpoied from web page as input eg: echo "Aci" | bash -c "$(curl -sLo- https://git.io/vQgMr)"

ok,
can also if id is not an option to keep on webpage directly, you can allow the bash script to any two case inputs

ID of theme
Directly theme name we cpoied from web page as input eg: echo "Aci" | bash -c "$(curl -sLo- https://git.io/vQgMr)"

can you add such option in future !

can you add such option in future !


Support Godot Asset Library releases

This project could be pre-compiled and offered as download through the 'releases' section. The resulting zip just needs to contain a addons/numdot/ folder with the .gdextension file and the compiled binaries.
The best way to support this would be through GitHub CI. I found two good examples that already use it:

godot-cpp example
godot-jolt

From their example, it should be possible to do the same and get uploaded to the asset library.

GitHub CI is now running (and passing!). Artifacts are being uploaded. We just need to create a release with the files now.

We now have an entry on the asset store: https://godotengine.org/asset-library/asset/3351


Code request inquiry

Hey @Fredhack1 I'll be needing the other code tommorow morning to implement 🙏

Just the wikkinotes tool implementation
On Tue, Nov 22, 2022, 09:51 Fredhack1 @.***> wrote:

Hi @FonyaBrandone https://github.com/FonyaBrandone do you need a code
from me???
—
Reply to this email directly, view it on GitHub
https://github.com/FonyaBrandone/Inspireweek-Hackaton-Team-Project---EdTech/issues/2#issuecomment-1323313140,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYA4XKPP6OEZZMTWCNAMON3WJSCQFANCNFSM6AAAAAASHC2EQE
.
You are receiving this because you were mentioned.Message ID:
<FonyaBrandone/Inspireweek-Hackaton-Team-Project---EdTech/issues/2/1323313140
@github.com>


Use newer Tekton Results version

Use newer Tekton Results version including the "Support all data types in summary annotations" (fix for the json unmarshal bug). Drop the "employ some channel best practices to avoid hanging goroutines and memory leaks from unclosed buffered channels" commit.
The commit is from the downstream-0.9.1-03-no-21d96ba branch on the Results fork.

/test test-pipeline-service-upgrade-ocp-414

/test test-pipeline-service-upgrade-ocp-414

/test test-pipeline-service-upgrade-ocp-414

I was able to verify deploy, upgrade and downgrade including running the tests after each step. The downgrade test failure is a problem with our testing which we have to check and fix, but it's not related to the change.


How to use this software?

Building on #1, a good README should have step-by-step instructions for a minimal example on how to use the software

Yes, as mentioned in the README, the repository was being updated to provide step-by-step instructions.
I recommend running the "End-to-End OChemR (From image to JSON)" section after installing the requirements and downloading the DETR weights and placing them in the correct folder.
Also, no OCR-trained weights are yet publicly provided. This means that the OCR will not show the same results as stated in the README since it will not endow the correct weights.
Everything will be updated soon :)


It should handle directories by default

At present, it requires us to manually run it on directories using the command
find . -name \*.md -exec markdown-link-check {} \;
I believe this should be handled automatically. So that when user runs it on a directory, it should check all markdown files recursively by default.
$ markdown-link-check -p run/on/dir

Let me know if this is required? I can put together up a PR to address this.

Duplicate of #40 I think

duplicates #40


Page Typ "background audio"

Hello,
I couldn`t find the new Page Typ "background audio". Is the new Page Type only available in the hosting version?
Thanks a lot and best regards
gingko24

Hi,
no, as of v0.7 it is part of the gem.
Tim

Sorry, I meant v0.5. There is also a note in the CHANGELOG how to enable it.

Sorry, I added the recommended line and now the page type works fine.
Thanks.


Sync/cf222

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 4 committers have signed the CLA.:white_check_mark: biancaluna:white_check_mark: ThomasHurek:x: David Sayer:x: lanierjennyDavid Sayer seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


ModuleNotFoundError: No module named 'logging'

Hello Miguel,
Thanks for a cool project, but I'm having trouble.
I have FL v21.2.3 [Build 4004] installed
I have Python 3.9.x installed because FL is using some pyyhon 3.9.x (i see via "sys.version"
I have followed instuction to install a configure flapi
I get this this error in both device files in the script output window:
init ok
Traceback (most recent call last):
  File "<string>", line 11, in <module>
ModuleNotFoundError: No module named 'logging'

but "pip install logging" does not resolved situation...
Will you please provide a pointer for resolution?

Hi! This is primarily because FL Studio's Python environment is different to your standard Python environment. In all current stable versions of FL Studio, only a limited subset of the standard library is available, which is why logging is failing to import. You can fix this by using the latest beta of FL Studio (at the time of writing this is 2024.1 Beta 9), which has access to far more of the standard library.
That being said, the script will likely still fail (at least on Windows) due to some other technical issues which I haven't resolved yet (I need to restructure the message format so that data can be distributed across many messages, since currently messages are often too long to process correctly).
I hope this helps!

I am on windows. I will try Beta and see how far I get. Thanks for the bump.


Docs: OAuth2 sequence with Edge Proxy Server

@jobara @cindyli @amb26 I've create a github issue and a pull request to move the contents of the gist to here to allow for more localized commentary.
GH-7: Document the OAuth2 sequence for static sites and Edge Proxy Server secure access to the preferences server

@klown, @cindyli and @amb26 I've attempted to document the OpenID Connect authentication flow incorporated into authorizing an embedded UIO to access the Prefs Server.
OpenID Connect Flow

Actors/Resources

Resource Owner: The user attempting to authorize UIO to use their preferences
UIO: An embedded instance of User Interface Options (UI Options); preferences editor/enactors
Edge Proxy: Lambda functions, server configuration, or light weight server to handle redirects between UIO and the prefs server. To allow cross origin requests.
Preferences Server: An instance of the Preferences Server. Stores preferenences and authenticates with a SSO provider, e.g. Google.
Google SSO: Using Google as single sign on (SSO) provider. The examples are based on their API but others could be substituted.

Workflow Description

Open login
a. Trigger login to Preferences server from UIO
b. UIO makes a local request handled by the Edge Proxy. This is to prevent cross origin requests. e.g. /login/google
c. The Edge Proxy redirects this request to the proper endpoint on the Preferences Server.
d. The Prerences Server sends the authentication request to Google. This includes the following as queury parameter:
* client_id for the Preferences Server
* response_type which is usually code
* scope which would likely be openid email
* redirect_uri which is the endpoint on the Preferences Server that will receive the response from Google. It must match a pre-configured authorized redirect URI.
* state, the anti-forgery unique session token
Login and consent
a. The Resource Owner will be presented with a login screen in Google's domain, and asked to consent the requested scope.
* If the user is already logged into Google, they may just be presented with the consent.
b. The Resource Owner authenticates with Google and grants consent
Authorization code and anti-forgery
a. Google responds to the Preferences Server at the redirect_uri and includes the state (anti-forgery token) and the code (authentication code)
b. The Preferences Server confirms that the state (anti-forgery token) is valid
Exchange Authorization Code
a. Request to exchange the Authorization Code for an Access Token and ID Token. This includes the following:
* code, the Authorization Code sent from the previous response from Google
* client_id for the Preferences Server
* redirect_uri which is the endpoint on the Preferences Server that will receive the response from Google. It must match a pre-configured authorized redirect URI.
* grant_type which must be set to authorization_code
b. Google responds at the previously specified redirect uri with the Access Token and ID Token
* The access_token can be sent to Google to access the Google API
* The id_token is a JWT identifying the Resource Owner and is signed by Google.
Authenticate and Authorize UIO
a. Using the id_token the Preferences Server authenticates the Resource Owner
b. Somehow the Preferences Server passes back the authorization to the Edge Proxy
c. Somehow the Edge Proxy passes back the authorization to UIO
Making Authorized Requests to the Preferences Server
a. Somehow, using the authorization, makes a local request to the Preferences Server handled by the Edge Proxy. e.g. a GET request to /preferences
b. Somehow, the Edge Proxy redirects this request to a Preferences Server end point
c. Somehow, the Preferences Server validates the authorization of this request
d. The Preferences Server responds to the Edge Proxy
e. The Edge Proxy responds to UIO

Questions

How to best establish the state (anti-forgery token) (see: 1d, 3b)?
After authenticating with Google how exactly does the Preferences Server return the authorization to UIO (see: 5)?
How does UIO pass along its authorization to the Preferences server with the requests to Preferences Server API (see: 6a, 6b)?
How does the Preferences Server verify UIO's authorization (see: 6c)?
Can refresh tokens be used? How long will the id_token from Google be valid and how long should the authorization of UIO with the Preferences Server be valid.

Editing the Protocol Diagram
The Protocol Diagram was created used Web Sequence Diagrams and can be edited by pasting in the following.
title Preferences OpenID Connect Flow
actor Resource Owner

Resource Owner->UIO: 1a) Login
UIO->Edge Proxy: 1b) open local login page (e.g. /login/google)
Edge Proxy->Preferences Server: 1c) redirect to prefs server login
Preferences Server->Google (SSO): 1d) redirect to Google login
Google (SSO)->Resource Owner: 2a) request user login and consent
Resource Owner->Google (SSO): 2b) login and grant consent
Google (SSO)->Preferences Server: 3a) state (anti-forgery token) and authorization code
note left of Preferences Server: 3b) confirm state (anti-forgery token)
Preferences Server->Google (SSO): 4a) exchange authorization code
Google (SSO)->Preferences Server: 4b) access token and id token
note left of Preferences Server: 5a) use id token to authenticate resource owner and grant authorization
Preferences Server->Edge Proxy: 5b) ?? pass authorization
Edge Proxy->UIO: 5c) ?? pass authorization
UIO->Edge Proxy: 6a) make local authorized requets (e.g. /preferences)
Edge Proxy->Preferences Server: 6b) redirect to prefs server resource
note right of Preferences Server: Verify authorization
Preferences Server->Edge Proxy: 6d) return response
Edge Proxy->UIO: 6e) return response

2. After authenticating with Google how exactly does the Preferences Server return the authorization to UIO (see: 5)?
3. How does UIO pass along its authorization to the Preferences server with the requests to Preferences Server API (see: 6a, 6b)?
4. How does the Preferences Server verify UIO's authorization (see: 6c)?

My thoughts to answer question 2, 3, 4:
Prerequisites
Preferences Server registers as an OAuth client on Google SSO
@jobara, I think your workflow is already using this approach that the whole login process will use client_id and client_secret that belongs to the preferences server. A successful login indicates a Google resource owner has granted the preferences server to access his/her user information from Google.
Set up the preferences server as another authorization server
Preferences Server provides an interface where websites with embedded UIO can request a client_id and client_secret from it. This helps the preferences server to keep track of which preferences resource owner has granted which website to access his/her preferences.
In summary, there are two authorization servers involved: Google SSO and Preferences Server.
Workflow clarification
1c
When the edge proxy redirects the login to the preferences server, it sends along the client_id and client_secret the website requested from the preferences server.
5a
After receiving id token, the preferences server encrypts the website's client_id and the id token into an authorization code. This authorization code will be used as a session id to maintain the login session between the edge server and UIO.
5b
The preferences server passes the authorization code and the expiry timestamp of the access token to the edge proxy.
5c
The edge proxy passes the authorization code as a session id to UIO (the browser) and the session expiration timestamp is same as the expiration timestamp of the access token.
6a
Whenever UIO makes requests to access preferences, it sends along the session id to the edge proxy.
6b
The edge proxy redirects the session id to the preferences server, along with the client_id and client_secret the website requested from the preferences server.
Preferences Server verifies the session id
Preferences Server decrypts the session id, verifies unpacked client_id and the id token with what's saved in its database.

This is great, @jobara, especially the diagram.  It makes things clearer.
Steps 1d through 4b is the SSO process and matches what I was trying to document in my step-by-step my description of the flow.  In the usual SSO flow, users end up on a page that is the same as where they would be if they had logged in using a local account.  For example, if they are logging into Clusive, they end up in Clusive's main reader interface.  If they are logging into an Atlassian JIRA account using Google SSO, they end up on a JIRA page. In both cases, it's exactly as if they used their Clusive or JIRA account to log in.
In the edge proxy case, that corresponds to ending up logged into the preferences server, which is okay from a authorization perspective, but is not of much use in terms of user experience.  The preferences server doesn't have a UI, or, if it does, it's the wrong UI.  There needs to be something that eventuates passing back to the edge proxy, and back to the user/UIO site.  That's your 5a and 5b, and you're right to note, "Somehow the preferences server passes back the authorization to the Edge Proxy" and "Somehow the Edge Proxy passes back the authorization to UIO".  Actually, if anything, they would be passing back the access token or openId.  I say that because that is what the requests would use if they were logged into the preferences server.  I don't know what triggers 5a nor whether passing around the token/openId/whatever is secure.  I've looked through the OAuth2 spec for such a workflow, and it might be the Implicit Grant Flow, but I'm not certain.

When this is merged, we should updated this wiki page that references this work. https://wiki.fluidproject.org/display/IUIGFVP/Preferences+Server


Changes to support SQL plugins through vendoring

What changed?
Made some persistence constructors public and changed visibility store to take database object.

Why?
These changes are made in order to support SQL plugin implemented outside of this repo.

How did you test it?
Need to test this locally.

Potential risks
No risk.

These changes are made in order to support SQL plugin implemented outside of this repo.

I thought it's already supported, isn't it correct?
like https://github.com/longquanzheng/cadence-extensions/tree/master/cadence-sqlite
I think I must miss something.

These changes are made in order to support SQL plugin implemented outside of this repo.

I thought it's already supported, isn't it correct?
like https://github.com/longquanzheng/cadence-extensions/tree/master/cadence-sqlite
I think I must miss something.

Oh, I see. I think we won't need this change as well. @andrewjdawson2016

Looks to me like Long is right this should be supported. Lets abandon this diff. If we find that for some reason we cannot use the existing method to Register our plugin we can revisit this.


Move away from Enzyme to @testing-library/react

After updating to React v17, we should move away from Enzyme to @testing-library/react. The adapter for v17 is not official.

[x] #562
[x] #563
[x] #570
[x] #593

Similar to the ts migration, this can be broken down and worked on in smaller chunks. It's only a few dozen test that depend on enzyme.

We'll face some difficulties with this so here are some notes about how to proceed with RTL:

pretty much all calls to enzyme's mount() can be replaced with RTL's render() which returns things like component, unmount, getByRole etc
user events like the previous simulate() will now use userEvent documented in https://testing-library.com/docs/ecosystem-user-event/
access to a component's state is simply no longer possible - these tests will instead need to test things exposed to the DOM like the presence of a CSS class or the right number of child elements of a specific type
access to a component's internal methods will no longer be possible so it is important to trigger the right combination of user actions to test the flow of functionality as expected

The biggest and most notable single change will be the lack of enzyme's shallow. RTL's docs suggest Jest's mocking for this https://testing-library.com/docs/react-testing-library/migrate-from-enzyme/#how-to-shallow-render-a-component but it doesn't look like a trivial undertaking. Perhaps if all leaf node components are well tested it shouldn't be necessary to test higher level parent components.
RTL brings with it a new philosophy of testing a component's usage intent rather than internal implementation. This should lead to more resilient tests (you may move something out of state for example, yet still retain existing functionality).
As a last note RTL does not replace Jest itself. Access to expect(), test() etc will still remain and be used in the same way. I've noticed some things are easier to access in RTL due to component from render() - this gives you JS access to the DOM and you can than use things like querySelector(), classList etc.

Should we close this ticket now that all the components are completed?

All components are completed, this can be closed.


Merge LittleProxy upstream breaks MITM

@jekh please note, the last upstream commits in LittleProxy breaks LittleProxy-mitm with following behavior:

Use LittleProxy-mitm Launcher with a browser (Iceweasel 31.8.0) to get https://github.com/adamfisk/LittleProxy/issues
Wait 10 or 15 seconds (it's important, klicking faster causes no problem) and klick an issue
It will be blocking until Gateway timeout

Second strange example:

Get https://www.debian.org and wait between 10 to 15 seconds (I've needed some tries)
Get a link on the page like https://www.debian.org/releases/stable/releasenotes
I've got this answer:

Bad Request

Your browser sent a request that this server could not understand.
Reason: You're speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.
Apache Server at www.debian.org Port 443

It's fixed with commit ganskef/LittleProxy@cf27050e62caa20bf799dad865b2d62a5eeeeb80 (checkout and rebuild both). I will try to figure out more.

Update: There's no problem with plain http and LittleProxy-mitm. Blocking happens with https only.
I've pushed a branch before_upstream_breaks_mitm in ganskef/LittleProxy. Please use it to build LittleProxy-mitm.

Close this issue since it's fixed in ganskef/LittleProxy master branch and the PR.


[$500] iOS - RHP- Keyboard persist when user opened chat and navigated on Profile via QR Code or share link

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.37-7
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause-Internal Team
Slack conversation:
Action Performed:

Open app
Navigate to any chat
Tap on the compose box
Open camera app
Scan the Profile QR code of different user

Expected Result:
Profile page should be properly displayed
Actual Result:
Keyboard persist when user opened the chat and then navigated on profile page
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/115492554/fc7f867f-b227-431f-9609-42fb706efac8

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01f5e97312ab13244c
Upwork Job ID:<PHONE_NUMBER>710287872
Last Price Increase: 2024-02-14
Automatic offers:

situchan | Contributor | 0
akinwale | Contributor | 0

Proposal
Updated

@thesahindia Did you get a chance to review my proposal yet?

@thesahindia - bump on the above.

Rotated the label since I will be OOO till 29th! I can take it back when I return!
But that will also get us a new C+ here

@mallenexpensify rotating bug and help wanted didn't assign a new C+. You will need to ask manually in the C+ slack channel and get this assigned! Thank you.

I am interested in reviewing this. I can also install app on physical iPhone.

Assigned to @situchan , please review the proposal above, thx

@situchan Just to note here, this is also reproducible without having to use a physical device. Quoting from my proposal:

The issue is also reproducible by trying to open the URI scheme of a user profile when their corresponding chat report is the current active window. The command to do this with an example profile is: npx uri-scheme open new-expensify://a/16292980 --ios

Thanks. xcrun simctl openurl booted 'new-expensify://a/16292980' also works
https://github.com/Expensify/App/assets/108292595/d89d1203-908a-4fd9-aa5e-0f03bdcdf17a

@situchan My PR is ready for review. Thanks.

PR was deployed to production on Feb 28

@situchan, we want a regression test for this, right?  Below is the checklist, it didn't auto-populate for some reason.
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[ ] The PR that introduced the bug has been identified. Link to the PR:
[ ] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[ ] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[ ] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
[ ] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:
[ ]

Contributor: @akinwale paid $500 via Upwork
Contributor+: @situchan paid $500 via Upwork

I haven't found any culprit PR. I think this bug existed for long time and just not caught as unusual case.
This was caught by QA team so I don't think new regression test is needed here.

@situchan , most bugs are created by QA/Applause and most end up with new or updated regression tests.
Unless you're 100% sure we don't need one, it's best practice to err on the side of creating one because QA can easily close if it' not needed. Created one for this issue.

https://github.com/Expensify/Expensify/issues/379526

Thx


[Feature]: ADMIN_USER_TYPE parameter is not available on snowflake_account (Resource)

Company Name
LSEG
Use Cases or Problem Statement
Snowflake introduced new parameters for account creation, specifically relevant for use cases where accounts are created programmatically.
Add support for new Account parameters ADMIN_USER_TYPE
Terraform Resource Name snowflake_account (Resource)

Category
category:resource
Object type(s)
resource:account
Proposal
Add support for new Account parameters ADMIN_USER_TYPE
Terraform Resource Name snowflake_account (Resource)
How much impact is this issue causing?
Medium
Additional Information
No response
Would you like to implement a fix?

[ ] Yeah, I'll take it 😎

Hey @ravisingh27. Thanks for reaching out to us.
This seems to be a duplicate of https://github.com/Snowflake-Labs/terraform-provider-snowflake/issues/3121.


Bug: clicking the notification multiple times launches main activity multiple times

Pressing the back key multiple times afterwards takes user back to the same activity.

You have the specify your desired launchMode in your AndroidManifest file.
By default, it is set to standard. In standard mode, every time there's a new intent for an activity, a new instance of the class is created to respond to that intent, thereby duplicating the activity.
If you want the intent to resume your activity or launch a new one only if no activity is found, set the launchMode this way:
<application>        ...        <activity>              ...              android:launchMode="singleTask"              <intent-filter>                   ...              </intent-filter>        </activity> </application>


feature request: have a option to use default command line to for confirmation

Did you check existing requests?

[X] I have searched the existing issues

Describe the feature
The popup doesn't interact quite well with some plugin like indent-line or hlchunk. It seem the popup is actually a regular buffer and these indent plugins add indent line to them
Provide background
No response
What is the significance of this feature?
nice to have
Additional details
No response

Displaying the changes in the command line will not be a good user experience. If you have other plugins that are messing up the UI, I recommend configuring those plugins to not interfere. You can try disabling them for the filetype oil_preview.


Max Rotation Bound

I don't know if this is actually possible. I need a 360 degree circle to stop at the max and the user can only rewind back to 0 after that, instead of it looping endlessly

Apologies for being late! Added in 1.3.0.


rustfmt + 2018 edition + 2018 idioms

I think this can replace #20 as it also does rustfmt and rust_2018_idioms.
Fixes #20

bors r+


[feature request] Support rz/sz

Currently I use https://github.com/FGasper/zmodemjs, which have some issues when transfer big files, wondering if this project could provide support for rz/sz, so it can be used as a replacement to zmodemjs.

It shouldn't be difficult. But I'm busy working on trzsz right now.
If someone has time to work on it, please open a Pull Request.


[flutter] reject mouse drags by default in scrollables

Currently flutter web and desktop apps allow scrolling by dragging with the mouse. This feels unnatural compared to other desktop applications, and makes it harder to use more complex mouse gestures on items that are contained within a scrollable and impossible to accurately select text (since the text selection drag competes with the scroll drag).
This is likely a breaking change, so the old scrollable behavior is configurable via scroll behavior: enableMouseDrag
Nothing broke!
Fixes https://github.com/flutter/flutter/issues/71322

Assuming we put this in the scroll configuration, I imagine the breaking change might go something like:

expose the ability to turn of drags - breaking change announcement
default to false?

Assuming we put this in the scroll configuration, I imagine the breaking change might go something like:

expose the ability to turn of drags - breaking change announcement
default to false?

I vote for first, we should target the user experience

Next patch is a little WIP, but moves the configuration onto the scroll behavior and then defaults it to the current incorrect behavior

What is the over/under on adding a field to scroll behavior being a breaking change? i'm a bit concerned we're actually going to make this more breaking not less, to allow configuring a behavior that is IMO a bug.

i guess as long as people are extending ScrollBehavior it should be OK

Next patch is a little WIP, but moves the configuration onto the scroll behavior and then defaults it to the current incorrect behavior

Oh sorry I overlooked the original comment. I meant we should default it to true to prevent mouse scrolling, and I am fine whether we expose and override or not. We can always expose it later if people want to change it. Not exposing it will however, probably get a lot of complain though

@Hixie considerations for naming? I think the correct name would be something like mouseDrag and not enableMouseDrag as I have it - but then maybe that should be mousedrag? Unsure 😄

How about rather than a boolean here we just have a set of pointer kinds that accept drags? Then you can name it just "devices" and "dragDevices" or some such. (That would also let people decide if styluses should allow drags. I suspect there are UIs where you'd want a stylus to draw and a finger to drag.)

Yeah, that was the suggestion that @Piinks and @chunhtai made above 😅 - I'll give it a shot

What is the over/under on adding a field to scroll behavior being a breaking change? i'm a bit concerned we're actually going to make this more breaking not less, to allow configuring a behavior that is IMO a bug.

I don't think it will be that breaking, we just made a bunch of changes to ScrollBehavior and I already migrated the implementing customers to land those changes. This was actually on my list for the next change to make before migrating customers back. :)

we just made a bunch of changes to ScrollBehavior and I already migrated the implementing customers to land those changes

Awesome!

I wasn't sure whether to prefer a set or list, I mostly chose a list because I could use PointerDeviceKind.values as a default and since contains on small lists is generally faster (but that doesn't really matter here). Will update to a set

Triggered a global test run manually, so it likely won't update here. Everything passed. 🎉  Will set the G check green manually.

Updated to use a set, and to set the supported devices in the gesture factory callback

@Piinks hey,
Let's take a look at this problem again #81015
Now we can’t drag with the mouse, and the bar disappears quickly. This experience is too bad.

@Piinks hey,
Let's look at this problem again #81284

Definitely! Let's regroup in that issue!

I'm still having this problem. horizontal scroll. However, fluent-ui package has a HorizontalScollView that works. However, they don't show a scrollbar.

@talksik can you please file a new issue with:

a minimal code sample that reproduces the issue
the output of flutter doctor -v

Thanks!


Feature/current time

Checklist
Please put "X" in the below checkboxes that apply::

[ ] If committing a bugfix, I have tested it in different browsers (Chrome, Firefox, Safari).
[ ] If committing a new feature, I have first submitted an issue (Please note: you are free to open PRs for non-issued features, but opening an issue increases your chance of a successful PR).
[X] If committing a new feature, I have also written an appropriate test suite for it.

I have tested the following:

[X] Qalendar component in month mode.
[X] Qalendar component in week mode.
[X] Qalendar component in day mode.
[X] All of the above modes on emulated mobile view.
[X] Dragging and dropping events.
[X] Resizing events in day/week modes.
[X] Clicking events to open event dialog.

:tada: This PR is included in version 1.10.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Force user to change password after login

As administrator I wont to be able force specific user to change password.
As a option it could be boolean prop in user like - passwordChangesRequired.
If true - than after first login - user has to change his password.
Is there kind of feature in roadmap?
Or it should be implemented on client side ?

@ISulimanov sounds OK. Can you make a PR to add it?

sure, we will send PR in 1-2 weeks


Alpha value textbox incorrect after first removing focus

See https://github.com/mozilla/Themer/issues/159

@nt1m can you try a build with the latest version because I cannot reproduce it in the latest version and the docs website is outdated.

/cc @johngruen @lmorchard ^