Updated url for the screenshot in the readme.

Changed the screenshot image url to the image url from the gh-pages branch.

Good catch thank you!


BetterDiscord does not work with the lastest version

Since the latest update by discord, bd no longer works.

Did you tried the latest version? Find it here: https://github.com/rauenzi/BetterDiscordApp/releases

Works just fine for me. Try reinstalling it.

Reinstalled Discord and Better Discrod. Dose not work for me.
Installing Better Discord doesn't change anything in Discord.
app-0.0.305 and BetterDiscord Release 0.3.0

Also next time use https://github.com/rauenzi/BetterDiscordApp/issues for issues, this project is inactive, while the one over there is an actively maintained fork.


Server-Side Rendering

Hi!
Thank you so much for typeahead component! It works really well!
I'm having a small issue with server-side rendering. I don't know if you ever tested this.

From what I've gathered, when document exists you inject some css. This generates an issue with server-side rendering, because the rendered DOM on the server is different from the one rendered on the browser, giving the nasty error above.
Can you consider embedding the CSS into the JSX or providing it as a separated file to be included with less or into the head ?
Cheers!

@jpsfs Thanks for the feedback. Very interesting! I have not considered this use case. I figured appending styles to the head was the most convenient option to the developer.
I will go ahead with inlining the styles, as the defaults provided shoud probably never be overriden anyway.

@jpsfs I've published the changes in<EMAIL_ADDRESS>Can you see if the issue is fixed? Thanks again. :rocket:

Hi @ezequiel ,
Uau, that was a lightening speed release. This issue is now fixed!
Thank you again for the great component!
Best regards,


Install ReactJS & Apollo dependencies

Install npm dependencies for ReactJS and Apollo:

[x] react-apollo
[x] apollo-boost
[x] graphql
[x] lodash

Close #1


MSID: 101078 Version: 1 DOI: 10.1101/2<IP_ADDRESS>1238

MSID: 101078
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>1238
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=101078
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>1238

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/101078v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>1238
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/101078/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

WOS query sent

chased

OK to proceed


Release draft for version: 0.1.2

Version: 0.1.2
SHA: latest

Changelog

Remove packages.

release

release

release

release


chore: upgrade husky@8 and lint-staged@15

upgrade husky@8 and lint-staged@13
New Husky:

Zero dependencies and lightweight (6 kB)
Powered by modern new Git feature (core.hooksPath)
Follows npm and Yarn best practices regarding autoinstall

yarn audit:
before: Severity: 13 Low | 46 Moderate | 89 High | 18 Critical
after: Severity: 12 Low | 45 Moderate | 82 High | 16 Critical

CI is failing because it is still using Node16, which is EOL as of 2023-09-11
CI error:
https://github.com/statelyai/xstate/actions/runs/7151793535/job/19476440608?pr=3637#step:3:27
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">=18.12.0". Got "16.20.2"

Github Workflow using Node 16:
https://github.com/statelyai/xstate/blob/202de6c4e8c3b311a11c63c7cc98c83b748e8766/.github/actions/ci-setup/action.yml#L5-L8

@davidkpiano
Do you prefer a separate PR to update github-action to Node 20? (Can also update PR to update github-action)

@davidkpiano Do you prefer a separate PR to update github-action to Node 20? (Can also update PR to update github-action)

Yes please @chimurai


rake db:seed, password is too short

After running rake db:seed, It shows that the password is too short, here is the error messages:
➜  jobs.ruby.tw git:(master) ✗ rake db:seed --trace
** Invoke db:seed (first_time)
** Execute db:seed
** Invoke db:abort_if_pending_migrations (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:abort_if_pending_migrations
rake aborted!
ActiveRecord::RecordInvalid: Validation failed: Password is too short (minimum is 8 characters)
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/validations.rb:79:in `raise_record_invalid'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/validations.rb:43:in `save!'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/attribute_methods/dirty.rb:29:in `save!'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/transactions.rb:291:in `block in save!'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/transactions.rb:347:in `block in with_transaction_returning_status'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `block in transaction'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/abstract/transaction.rb:188:in `within_new_transaction'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `transaction'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/transactions.rb:220:in `transaction'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/transactions.rb:344:in `with_transaction_returning_status'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/transactions.rb:291:in `save!'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/persistence.rb:51:in `create!'
/Users/zhu/Documents/learning/rails/projects/jobs.ruby.tw/db/seeds.rb:10:in `<top (required)>'
/usr/local/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `load'
/usr/local/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `block in load'
/usr/local/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:240:in `load_dependency'
/usr/local/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `load'
/usr/local/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:547:in `load_seed'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/tasks/database_tasks.rb:250:in `load_seed'
/usr/local/lib/ruby/gems/2.2.0/gems/activerecord-4.2.0/lib/active_record/railties/databases.rake:180:in `block (2 levels) in <top (required)>'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:240:in `call'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:240:in `block in execute'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:235:in `each'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:235:in `execute'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:179:in `block in invoke_with_call_chain'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/monitor.rb:211:in `mon_synchronize'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:172:in `invoke_with_call_chain'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/task.rb:165:in `invoke'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:150:in `invoke_task'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:106:in `block (2 levels) in top_level'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:106:in `each'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:106:in `block in top_level'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:115:in `run_with_threads'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:100:in `top_level'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:78:in `block in run'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:176:in `standard_exception_handling'
/usr/local/Cellar/ruby/2.2.2/lib/ruby/2.2.0/rake/application.rb:75:in `run'
/usr/local/bin/rake:33:in `<main>'
Tasks: TOP => db:seed

so I edit the file db/seed.rb, change the password 'rubytw' to 'rubytaiwan' to solve the problem.

Feel free to propose your workaround as a pull request, thanks!


Change license to MIT

Hello @akx and @IcedShake.
Joey and I privately discussed changing the license of this project to MIT and retroactively apply the MIT license to all past releases. Since you contributed code to this repository, you are also rightsholders to this project, I would like to ask you to agree to this license change as well.
Agreeing means that all your code contributions and past and future releases of this project containing your code will be licensed under the MIT license. (For context: exactly that is already happening just with the GPLv3 license. For more information, see below.)
If you have any questions or concerns, please feel free to comment below and we can discuss this.
If you do not agree to this license change or do not respond within a week, we will revert your contributions to move forward with the license change. Of course, we would like to avoid this if possible, so we hope that you agree.

TLDR: MIT is more permissive to users of the library. GLPv3 puts restrictions on how/who can use spandrel, which we do not want. We (@joeyballentine and I) consider using GLPv3 license a mistake, and we would like to fix that.
Motivation:
Our goal for spandrel was for the wider community to adopt this library as the primary way to load, save, and run AI upscaling models. Unfortunately, GPLv3 hinders this goal with its strong copyleft. Anyone including spandrel's code in their software distribution would be forced to open source their application. This makes some uses of spandrel (e.g. vendoring) impossible, and spandrel unusable for some people/companies. Therefor, we want to relicense with MIT to lift those restrictions.
MIT vs GLPv3:
MIT and GPLv3 are very similar in most aspects. The main difference is copyleft. As described above, GPLv3 forces some people to open-source their application when using this library. The MIT license has no such restriction. It is more permissive.
What does changing the license mean?
You contributed to this project and therefor licensed your code under the GPLv3 license. This license places certain restrictions on users of spandrel, that we now want to lift. So we are asking you to allow the license of your code to be changed to MIT.
Do I lose any legal rights to my code?
No. You are still the rightsholder of your code contributions. The only thing that change is that people are no longer forced to open source their software for using your code.
Why not use X license?
While there are other permissive licenses, MIT is the most commonly-used open source license. Using less known licenses might hinder the adoption of spandrel, as people might (rightfully) be cautious to use a project with a license that is unknown to them. Not everyone is a lawyer/knowledgeable in software licenses. We should meet our (potential) user where they are if we want them to use our code.

I'm alright with relicensing my contributions from GPLv3 to MIT.

Thank you for the quick response @akx!

I'm fine with my contributions being relicensed to MIT as well.

Thank you for your response @IcedShake!
With this, we all agreed to changing the license to MIT.


Support path component in schema registry base URL

Fixes #957 . Adds support for a Schema Registry URL with path components (eg http://example.com/v1) in the schema_registry_decode and schema_registry_encode processors.
I noticed there's some inconsistency between the two processors' implementations, so this also includes a little bit of refactoring so they handle the base URL in the same way.

Looks great, thanks @mdowds!


[icons] Add Medium Icon

Summary
I noticed that the @mui/icons-material library does not include an icon for Medium, which is a widely used social platform. Adding a Medium icon would enhance the library's versatility and usability for projects that involve social media links or buttons.
Examples
No response
Motivation
Include a Medium icon using the official Medium logo SVG.
Reference the SVG path from Medium's official branding resources, ensuring compliance with their usage terms.
Search keywords: Medium icon

Hey @sumedhakoranga, thanks for the report.
We're currently not adding extra icons, see why here: https://github.com/mui/material-ui/issues/19371#issuecomment-578175282
That said, I'll add the "waiting for upvotes" label so the community can vote for this new feature. If you want to see this implemented, please add a 👍🏼 reaction to the issue's description.

@DiegoAndai Got it,
Thanks for the clarification! Let me know if I can help elsewhere.


buildTarget/format implementation

draft implementation of buildTarget/format BSP method. It does not really invokes scalafmt under the hood but fully implements all changes to BSP protocol necessary to implement the feature
overview of the changes:

buildTarget/format method is added
build/initialize method is extended to return ExtendedInitializeBuildResult which in turn has extended capabilities field with type ExtendedBuildServerCapabilities which adds formatProvider.
It's coded to always return"formatProvider": {
  "languageIds": [
    "scala"
  ]
}

workspace/buildTargets method is extended to return ExtendedBuildTarget which has targets extended to return List<ExtendedBuildTarget> which extends capabilities to return ExtendedBuildTargetCapabilities which in turn adds boolan canFormat field.
Because for each project scala-cli creates two build targets - main and test, both have been hardcoded to return canFormat: true

Hi @danielleontiev, thank you for starting to work on this feature. I have a question: why didn't you extend InitializeBuildResult by adding an optional field formatProvider in the ch.epfl.scala.bsp4j.InitializeBuildResult class in the bsp-protocol repository? Instead, you created a new class ExtendedInitializeBuildResult.
It helps me better understand your changes.

@danielleontiev Thanks for the explanation. I will continue the discussion under the issue in the scala-cli repo.


Undefined method card for Stripe::Charge

Hi,
I just added stripy-ruby-mock to my project and get the following error when displaying the charge:
     NoMethodError:
       undefined method `card' for #<Stripe::Charge:0x00000009cb7830>

Stripe's charge object has the card attached to it. The mock charge does not. Is this expected or a bug?

looks like you are using the old API version. In newest gem we use API api-2014-06-17 version. Charge object has source method https://stripe.com/docs/api#charge_object

Oh, thanks, I haven't thought about that :face_with_head_bandage:


Directory paths ending with a \ should be supported when quoted

Bug Report
Steps to reproduce

Run the generator in violation mode with the output path set as "c:\temp\"

Expected result
The generator should be able to create violation output files in c:\temp
Actual result
The generator throws an error, because " isn't a supported character.
Additional context
The generator should treat the path as c:\temp\ (or strip off the trailing \, leaving c:\temp).
It looks like PicoCli is treating the \ as an escape character for " and leaving this in the string, therefore the trailing \ is never seen.
The behaviour can be seen in non-violating and visualising modes too, but these modes require a file path, which itself can never end with a \.

Investigation results:
Picocli suggests escaping a backslash to use it in a file path i.e. "C:\temp\"

Did you mean to write "C:\\temp\\"? (Note I had to write the slashes 4 times sine it's the markdown escape character also). Let's have a chat about this tomorrow. Wouldn't your solution remove all "" such that C:\\temp\\locationToPutFile\\ would become C:templocationToPutFile?

If PicoCli doesn't support us in this event, I suggest we update the documentation to show that the framework doesn't support trailing back slashes and ensure that they do not appear.
We should check if this is a product of the shell or java/picocli itself. I.e. running java -jar .... "C:\temp\" in the windows command prompt vs via intelliJ.


Localize a website hero image links to "unsafe" page

On https://developers.cloudflare.com/workers/tutorials/localize-a-website, clicking the first image here:

Takes you to https://i18n-example.workers-tooling.cf/ which shows this:

This is still a problem, workers-tooling.cf domain is hosting malware now by a clickjacker.


Stepped EiffelTestExecutionRecipeCollectionCreatedEvent to 2.0.0

As per issue #149.
In 2.0.0 of the event, the syntax of data.batches.recipes.constraints changed to comply with protocol design guidelines. It is no longer an uncontrolled object, but a list of key-value pair, identical to data.customData.

+1

+1


BEAM-3863: AfterProcessingTime trigger firing at delayedUntil time

The issue with the current logic is that if delayedUntil timestamp is equal to the current time when shouldFire method is called than shouldFire method returns false and trigger doesn't fire and  never fires again unless there is some new element for the the same <key, window> or allowed lateness is hit. In reality when I tested with Flink runner on a cluster it's very likely on the powerful enough machines that it's actually the same millisecond timer fires at delayedUntil timestamp and  calls a method public void onTimers(Iterable<TimerData> timers) throws Exception from ReduceFnRunner and the time current time is probed via getCurrentTime(context) in AfterDelayFromFirstElementStateMachine.shouldFire() method. The suggested fix is to check if current timestamp is equal or greater than delayedUntil timestamp.
I created a test job that replicates the issue: https://github.com/pbartoszek/BEAM-3863_late_trigger
Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand:

[ ] What the pull request does
[ ] Why it does it
[ ] How it does it
[ ] Why this approach

[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

As suggested by @aljoscha another way to fix the issue from Flink runner only would be to
change the logic in toFlinkRuntimeWatermark method here

As suggested by @aljoscha the other way to fix this for Flink runner only would be to add 1 ms when registering a timer in Flink. + 1ms could be done for instance here

I would be in favour of fixing this on the Flink side, because there is a mismatch in what Flink thinks when a timer should fire. As highlighted by https://github.com/apache/beam/blob/6e4de883efc5e3cb2278d9f2be5ab94e33cf1bf8/runners/flink/src/main/java/org/apache/beam/runners/flink/translation/wrappers/streaming/DoFnOperator.java#L606

Should we close this PR if it was fixed on the Flink side.

@robertwb (and also @pbartoszek) when I said "Flink Side" I meant Flink Runner. We can't easily change the way Flink timers behave but we can adapt in the Flink Runner similarly to how we do it for event-time timers.

Basically the other option that @pbartoszek mentioned above.

It seems like this could be easily fixed by correctly converting the Beam timestamp into a Flink timestamp.


Pkg rename: Microsoft.Framework.Caching.Interfaces -> Microsoft.Framework.Caching.Abstractions

See: https://github.com/aspnet/Announcements/issues/8#issuecomment-97566113

https://github.com/aspnet/Caching/commit/2ab1391d1f1d691afbc60c77f64c6c899dcf0c80


Fix formatting tests and enabled

Purpose
This will fix the formatting test and enable them. Also added the support for new tuple syntax change.
Related Issue https://github.com/ballerina-platform/ballerina-lang/issues/15797
Check List

[x] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[x] Integration Tests
[ ] Ballerina By Example Tests

[x] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #15935 into jballerina will increase coverage by 3.25%.
The diff coverage is 71.42%.

@@               Coverage Diff                @@
##             jballerina   #15935      +/-   ##
================================================
+ Coverage         15.46%   18.71%   +3.25%
- Complexity         4875     5885    +1010
================================================
  Files              1975     1975
  Lines             91474    91547      +73
  Branches          12745    12769      +24
================================================
+ Hits              14142    17136    +2994
+ Misses            74991    71421    -3570
- Partials           2341     2990     +649

Impacted Files
Coverage Δ
Complexity Δ

...ang/langserver/formatting/FormattingConstants.java
50% <ø> (+50%)
1 <0> (+1)
:arrow_up:

...lang/langserver/formatting/FormattingNodeTree.java
73.33% <71.42%> (+73.33%)
802 <15> (+802)
:arrow_up:

...alang/langserver/BallerinaTextDocumentService.java
47.53% <0%> (+8.8%)
24% <0%> (+3%)
:arrow_up:

...ang/langserver/formatting/FormattingSourceGen.java
47.63% <0%> (+47.63%)
185% <0%> (+185%)
:arrow_up:

.../langserver/formatting/FormattingVisitorEntry.java
86.95% <0%> (+86.95%)
13% <0%> (+13%)
:arrow_up:

...alang/langserver/formatting/FormattingVisitor.java
100% <0%> (+100%)
6% <0%> (+6%)
:arrow_up:

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 7e19ae4...9e0cc42. Read the comment docs.


fix: docker compose on linux

On Linux, extra_hosts stanza is required for services inside the containers to be able to connect to those ports on the host.
What ❔
Fixes container connectivity when running on Linux.
Why ❔
Similar fix was already applied in zkcli-block-explorer repo.
Checklist

[x] PR title corresponds to the body of PR (we generate changelog entries from PRs).
[ ] Tests for the changes have been added / updated.
[ ] Documentation comments have been added / updated.

Thanks for the PR, this was already done:
docker-compose-cli.yaml


install error

Describe the bug
install error
To Reproduce
yarn install sync-request-curl
Screenshots
CXX(target) Release/obj.target/node_libcurl/src/node_libcurl.o
clang++: warning: /Users/HiramWong/opt/anaconda3/include: 'linker' input unused [-Wunused-command-line-argument]
In file included from ../src/node_libcurl.cc:7:
In file included from ../src/Curl.h:13:
../node_modules/nan/nan.h:2621:8: error: no matching member function for call to 'SetAccessor'
 2621 |   tpl->SetAccessor(
      |   ~~~~~^~~~~~~~~~~
/Users/HiramWong/.electron-gyp/28.3.3/include/node/v8-template.h:816:8: note: candidate function not viable: no known conversion from 'v8::PropertyAttribute' to 'AccessControl' for 5th argument
  816 |   void SetAccessor(
      |        ^
  817 |       Local<Name> name, AccessorNameGetterCallback getter,
  818 |       AccessorNameSetterCallback setter = nullptr,
  819 |       Local<Value> data = Local<Value>(), AccessControl settings = DEFAULT,
      |                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/HiramWong/.electron-gyp/28.3.3/include/node/v8-template.h:809:8: note: candidate function not viable: no known conversion from 'imp::NativeGetter' (aka 'void (*)(v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value> &)') to 'AccessorGetterCallback' (aka 'void (*)(Local<String>, const PropertyCallbackInfo<Value> &)') for 2nd argument
  809 |   void SetAccessor(
      |        ^
  810 |       Local<String> name, AccessorGetterCallback getter,
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/node_libcurl.cc:7:
In file included from ../src/Curl.h:13:
../node_modules/nan/nan.h:2673:8: error: no matching member function for call to 'SetAccessor'
 2673 |   tpl->SetAccessor(
      |   ~~~~~^~~~~~~~~~~
/Users/HiramWong/.electron-gyp/28.3.3/include/node/v8-template.h:816:8: note: candidate function not viable: no known conversion from 'v8::PropertyAttribute' to 'AccessControl' for 5th argument
  816 |   void SetAccessor(
      |        ^
  817 |       Local<Name> name, AccessorNameGetterCallback getter,
  818 |       AccessorNameSetterCallback setter = nullptr,
  819 |       Local<Value> data = Local<Value>(), AccessControl settings = DEFAULT,
      |                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/HiramWong/.electron-gyp/28.3.3/include/node/v8-template.h:809:8: note: candidate function not viable: no known conversion from 'imp::NativeGetter' (aka 'void (*)(v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value> &)') to 'AccessorGetterCallback' (aka 'void (*)(Local<String>, const PropertyCallbackInfo<Value> &)') for 2nd argument
  809 |   void SetAccessor(
      |        ^
  810 |       Local<String> name, AccessorGetterCallback getter,
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
make: *** [Release/obj.target/node_libcurl/src/node_libcurl.o] Error 1
Error: `make` failed with exit code: 2
    at ChildProcess.onExit (/Users/HiramWong/Data/code/ZyPlayer/node_modules/@electron/rebuild/node_modules/node-gyp/lib/build.js:203:23)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess._handle.onexit (node:internal/child_process:294:12)

Desktop (please complete the following information):

macos15.1
nodejs 20.17.0
electron 28.2.0

Installing sync-request-curl as a standalone on Macos v15.0.1, node 20.17.0, yarn 1.22.22 is working okay for me:
sample.webm
since it's directly downloading the binary from node-libcurl. It appears that you're defaulting to building from source though (i.e. no binaries were found), so you may want to take a look at this section (and follow those links) in the documentation:

https://github.com/nktnet1/sync-request-curl?tab=readme-ov-file#42-macos

I also suggest trying install node-libcurl - note that their docs says that, for newer macos version, building from source requires adding the env npm_config_curl_include_dirs="$(xcrun --show-sdk-path)/usr/include", e.g.
npm_config_build_from_source=true npm_config_curl_include_dirs="$(xcrun --show-sdk-path)/usr/include" yarn add node-libcurl

If you're also unable to install node-libcurl, I suggest opening an issue there instead.

node-libcurl install success，but sync-request-curl error

i try this yarn add sync-request-curl@latest in  node version 20.17.0
└─<EMAIL_ADDRESS>$ electron-builder install-app-deps
  • electron-builder  version=25.1.8
  • loaded configuration  file=/Users/HiramWong/Data/code/ZyPlayer/electron-builder.yml
  • executing @electron/rebuild  electronVersion=27.3.11 arch=arm64 buildFromSource=false appDir=./
  • installing native dependencies  arch=arm64
  • preparing       moduleName=easy-libcurl arch=arm64
  ⨯ Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 42, in <module>
    import gyp  # noqa: E402
    ^^^^^^^^^^
  File<EMAIL_ADDRESS>line 9, in <module>
    import gyp.input
  File<EMAIL_ADDRESS>line 19, in <module>
    from distutils.version import StrictVersion
ModuleNotFoundError: No module named 'distutils'
Error: `gyp` failed with exit code: 1
    at ChildProcess.onCpExit (/Users/HiramWong/Data/code/ZyPlayer/node_modules/@electron/rebuild/node_modules/node-gyp/lib/configure.js:325:16)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess._handle.onexit (node:internal/child_process:294:12)

  ⨯ node-gyp failed to rebuild '/Users/HiramWong/Data/code/ZyPlayer/node_modules/easy-libcurl'  failedTask=installAppDeps stackTrace=Error: node-gyp failed to rebuild '/Users/HiramWong/Data/code/ZyPlayer/node_modules/easy-libcurl'
    at ChildProcess.<anonymous> (/Users/HiramWong/Data/code/ZyPlayer/node_modules/@electron/rebuild/lib/module-type/node-gyp/node-gyp.js:121:24)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess._handle.onexit (node:internal/child_process:294:12)
error Command failed with exit code 1.

hmm looks like it's still building from source.
Can you try creating a minimal reproducible repository? I don't have a way of reproducing this currenrly.

Still fail
$ electron-builder install-app-deps
  • electron-builder  version=25.1.8
  • loaded configuration  file=/Users/HiramWong/Data/code/ZyPlayer/electron-builder.yml
  • executing @electron/rebuild  electronVersion=33.2.0 arch=arm64 buildFromSource=false appDir=./
  • installing native dependencies  arch=arm64
  • preparing       moduleName=node-libcurl arch=arm64
  ⨯ Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 42, in <module>
    import gyp  # noqa: E402
    ^^^^^^^^^^
  File<EMAIL_ADDRESS>line 9, in <module>
    import gyp.input
  File<EMAIL_ADDRESS>line 19, in <module>
    from distutils.version import StrictVersion
ModuleNotFoundError: No module named 'distutils'
Error: `gyp` failed with exit code: 1
    at ChildProcess.onCpExit (/Users/HiramWong/Data/code/ZyPlayer/node_modules/@electron/rebuild/node_modules/node-gyp/lib/configure.js:325:16)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess._handle.onexit (node:internal/child_process:294:12)

  ⨯ node-gyp failed to rebuild '/Users/HiramWong/Data/code/ZyPlayer/node_modules/node-libcurl'  failedTask=installAppDeps stackTrace=Error: node-gyp failed to rebuild '/Users/HiramWong/Data/code/ZyPlayer/node_modules/node-libcurl'
    at ChildProcess.<anonymous> (/Users/HiramWong/Data/code/ZyPlayer/node_modules/@electron/rebuild/lib/module-type/node-gyp/node-gyp.js:121:24)
    at ChildProcess.emit (node:events:519:28)
    at ChildProcess._handle.onexit (node:internal/child_process:294:12)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

use npm_config_build_from_source=true npm_config_curl_include_dirs="$(xcrun --show-sdk-path)/usr/include" yarn add sync-request-curl@latest is ok

for this eg , It seems that the performance has not improved.
import syncFetch from 'sync-fetch';
import syncRequest from 'sync-request';
import syncRequestCurl from 'sync-request-curl';

let url = 'https://api.juejin.cn/interact_api/v1/pin_tab_lead?aid=2608&uuid=&spider=0?' + Math.random();

let t1 = new Date().getTime();
syncRequest('GET', url);
let t2 = new Date().getTime();
syncFetch(url, {});
let t3 = new Date().getTime();
syncRequestCurl('GET', url);
let t4 = new Date().getTime();

console.warn('syncRequest time-consuming:' + (t2 - t1) + 'ms');
console.warn('syncFetch time-consuming:' + (t3 - t2) + 'ms');
console.warn('syncRequestCurl time-consuming:' + (t4 - t3) + 'ms');

in linux
syncRequest time-consuming:5338ms
syncFetch time-consuming:5683ms
syncRequestCurl time-consuming:5317ms
in mac
syncRequest time-consuming:228ms
syncFetch time-consuming:364ms
syncRequestCurl time-consuming:246ms
I have another question if I use it in the main thread, will it block the main thread?

Hi Hiram,
It's really odd that your linux times are that high. For example, this is what I get running your code:
$ npx tsx index.ts
syncRequest time-consuming:1085ms
syncFetch time-consuming:349ms
syncRequestCurl time-consuming:323ms

Often times, the bottleneck is the server, not the HTTP client.
Regardless, I suggest running these tests more than just once - for example, 100+ times for each method. There was something similar done here.

I have another question if I use it in the main thread, will it block the main thread?

Yes.

In general, I would always recommend an async alternative if possible. Please see the caveat section of sync-request-curl.
I'll close this issue though, given that the installation issues have been sorted out.


[extractor/twitcasting] Fix extractor for protected twitcast videos

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

Apply patch provided by @bashonly  to fix twitcasting extractor on password protected videos.
Fixes #5888
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[ ] I am the original author of this code and I am willing to release it under Unlicense
[x] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

this is @bashonly's patch, correct?

this is @bashonly's patch, correct?

Yep, correct


init test cases for rancher p

Issue:

https://github.com/rancher/qa-tasks/issues/544
Problem

we need some automation for checking rancher p
Solution

This PR includes checking /rancherversion and ui-brand, ensuring that it matches what we expect. This can also be used ( and may need to be checked ) for the community version.
Testing

local run is passing, will post jenkins run separately

Overall, lgtm, just left some nits.


tour: image does not display

Context: https://tour.golang.org/moretypes/18
instead of an image I get text, which is:
IMAGE:iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAACxElEQVR4nOzTMRHAQAzAsPxd

I'm guessing this is a dup of #65. Closing here in favour of the old thread.


Update handling of error when email is not configured

Add an environment variable, on by default that indicates that the email should not be sent. When that variable is set, suggest having a flow like this:

Display a message "Email is not configured to be sent from this instance of the Identity Kit. Click "View" to see the email text that would have been sent, or Cancel to return to the administrator application."

If they click "View" either show the email in a window or open a new tab with the text of the email.
Let me know if that is difficult and there are other easier ways to handle this. We could have another option that says "...been sent, "Instructions" for information on configuring email, or Cancel...". The instructions link would go to an MD file in the repo.

@swcurran I am currently trying to handle development/demo mode on localhost and a possible deployment differently.
localhost: Running in development mode: to use the invite, go to http://localhost:1234/validate?invite_token=987-654-321
non-localhost: The invite email to<EMAIL_ADDRESS>could not be sent. Are your SMTP server environment variables correct? To use this invite, navigate to: http://mydomain.com/validate?invite_token=987-654-321
The above messages are my initial pass at this and could be improved if necessary.
The reason to not displaying the email text in the window is - mostly - because it is quite long and it would require a fair amount of UI tweaks to get it to work properly, but it could be implemented with more time spent on it.
About the instructions: do we need an extensive guide about how configuring SMTP (and at this point every other piece of the app) or can we just point them to the environment variable section in the manage script and/or docker-compose?

Change this to: "Are your SMTP server environment variables correct?" to "If you expected the email to work please check your SMTP settings".
Other than that - all good.  As to docs - just a section in the README that says where they are set. If there is a section, we can provide a link to it.

See #127


Fixes to FlagStat for Samtools concordance issue #946

These changes result in perfect concordance between ADAM and Samtools flagstat output stats, addressing corner cases around secondary, supplemental, and unmapped reads as described in #946

Can one of the admins verify this patch?

Jenkins, add to whitelist.

Stellar! Thanks for sorting this out, @jpdna! Interesting to see that it is the "unmapped, yet have alignment info" reads that are causing the trouble. I've always been unsure as to what is the correct way to handle them.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1092/Build result: FAILUREGitHub pull request #954 of commit 6a497b9dfdfec6ad69cdccfb0ccc74429fd18113 automatically merged.Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'[EnvInject] - Loading node environment variables.Building remotely on amp-jenkins-worker-05 (centos spark-test) in workspace /home/jenkins/workspace/ADAM-prb > git rev-parse --is-inside-work-tree # timeout=10Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/bigdatagenomics/adam.git # timeout=10Fetching upstream changes from https://github.com/bigdatagenomics/adam.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/bigdatagenomics/adam.git +refs/pull/:refs/remotes/origin/pr/ > git rev-parse origin/pr/954/merge^{commit} # timeout=10 > git branch -a --contains 6792655a74f389324d18134be2bca4b8a5f773bf # timeout=10 > git rev-parse remotes/origin/pr/954/merge^{commit} # timeout=10Checking out Revision 6792655a74f389324d18134be2bca4b8a5f773bf (origin/pr/954/merge) > git config core.sparsecheckout # timeout=10 > git checkout -f 6792655a74f389324d18134be2bca4b8a5f773bfFirst time build. Skipping changelog.Triggering ADAM-prb ? 2.6.0,2.10,1.4.1,centosTriggering ADAM-prb ? 2.6.0,2.11,1.4.1,centosTouchstone configurations resulted in FAILURE, so aborting...Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'
Test FAILed.

oops, I see now this doesn't pass the tests.
Among other things it seems: " Unaligned read can't be a primary alignment" while constructing DecadentRead "    I'll investigate ways to make flagstat match with Samtools while still not violating these assumptions.

Among other things it seems: " Unaligned read can't be a primary alignment" while constructing DecadentRead

I'd need to read the source to be 100%, but I think DecadentRead is a bit over aggressive with input checking and would just remove that requirement.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1094/
Test PASSed.

I've pushed changes to address flag setting code simplification @massie suggests above and also modified tests in a way that the code now passes the tests.   The tests modifications seem to remove a bug or unnecessary requirements, but should be reviewed by others to make sure no downstream assumptions are violated.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1095/
Test PASSed.

LGTM

Fixes #946

Thank you, @jpdna.  Merged manually.


Errors regarding security review are not displayed on build result.

As Example:
TASK: [Security Review report build] ******************************************
failed: [localhost] => {"changed": true, "cmd": "if grep \"error\" build_reports/SecurityReview.txt; then echo \"`<strong>`grep -o \"\\<error\\>\" build_reports/SecurityReview.txt | wc -l`  errors for Security Review: Security Review standard file http://*/build8/build_reports/SecurityReview.txt\" >> /var/lib/jenkins/jobs/*_PR_BUILDER/workspace/commentinfo.md && exit 1; fi;", "delta": "0:00:00.004741", "end": "2016-01-08 05:40:23.080481", "rc": 2, "start": "2016-01-08 05:40:23.075740", "warnings": []}
stderr: /bin/sh: 1: Syntax error: end of file unexpected
...ignoring

There is a syntax error in https://github.com/propeoplemd/cibox/blob/master/github/files/drupal7/scripts/sniffers.yml line 186.
    shell: 'if grep "error" {{ build_reports_dir }}/SecurityReview.txt; then echo "`<strong>`grep -o "\<error\>" {{ build_reports_dir }}/SecurityReview.txt | wc -l`  errors for Security Review: Security Review standard file {{ webroot }}/{{ build_reports_dir }}/SecurityReview.txt" >> {{ workspace_root }}/{{ artifacts_file }} && exit 1; fi;'

should be changed to
    shell: 'if grep "error" {{ build_reports_dir }}/SecurityReview.txt; then echo "`grep -o "\<error\>" {{ build_reports_dir }}/SecurityReview.txt | wc -l`  errors for Security Review: Security Review standard file {{ webroot }}/{{ build_reports_dir }}/SecurityReview.txt" >> {{ workspace_root }}/{{ artifacts_file }} && exit 1; fi;'

@ey-
Thanks for pointing this
Can you prepare Pull Request?


add: Monalisha Roy

Description
Added my profile to the contributors page of the website.
Related Issues
N/A
Changes Proposed

added "Monalisha-Roy.json" file in the public/data to add my bio and other details for the website.
updated the "Profilelist.json" file.

Checklist

[x] I have read and followed the Contribution Guidelines.
[x] All new and existing tests passed.
[x] I have updated the documentation to reflect the changes I've made.
[x] My code follows the code style of this project.
[x] The title of my pull request is a short description of the requested changes.

Screenshots
N/A
Note to reviewers
Please verify that my profile appears correctly on the contributors page.

@Monalisha-Roy Thank you so much for your contribution! Your efforts are greatly appreciated and will go a long way in improving our project. Please feel free to share it with others and help us grow even further!


Add static tf to planning scene

This PR resolves #9 by subscribing to the /tf_static topic and by adding it to the PlanningScene fixed_frame_transforms field.
Caveat

When multiple tf are included in the fixed_frame_transforms, some frames triggers an error.

[ERROR] [1631215385.714685866]: Given transform is to frame 'panda_hand', but frame 'panda_link0' was expected.
[ERROR] [1631215385.714727137]: Given transform is to frame 'panda_link8', but frame 'panda_link0' was expected.

We should add a timeout to be sure that the node has time to get /tf_static from all subscribers. But this would be slow down the benchmark...

Reflexion

Tried getting the tf from the tf2_listener without success by following this tutorial.
There must be a simplier way ?

The second commit uses the TransformListener to get the tf information. To resolve the ERROR messages, I just copy pasted this protected function who will only retrieve the transforms that is not a link or the model frame of the robot.
The downside is that there needs to be a timeout (1 second on my  system) between the TransformListener and a call to the buffer methods.
This is the preferred solution. I need to put this function into an utility header. Then squash commits and merge.


Status bar's "Snap Modes" not having expected effect

The "Snap Modes" menu is not having the expected effect on tools. This behavior is different than what is observed in Design Review.
Steps:
Open viewer app with default ui or Frontstage Sample.
Start "Measure Tool"
Open "Snap Mode" menu
Select a different mode than "keypoints"
Expected:
The measure tool snap will respect the snap mode selected in the "Snap Mode" menu.
Observed:
The measure tool snap will continue to snap to keypoints.

OS: Windows 10
Browser Chrome & Edge
Version [e.g. 22]
Test in Viewer
-- iTwin.js Version: 3.1.2
-- web-viewer-react: 2.0.9

@bbastings @NancyMcCallB can you take a look?

Aha! Looks as though this was fixed recently, in this PR: https://github.com/iTwin/viewer/pull/199, that's why it looks fine to me in the source.
Updating to the latest Viewer source should fix things.


Document CompactTarget order/equality

Add documentation to the CompactTarget type explaining the nuance surrounding order/equality.
Close: #2110

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
19191

Relevant Lines:
23064

💛  - Coveralls

Creating a CompactTarget from Target is lossy, which is (probably) unsurprising, but also creating a Target from a CompactTarget is lossy (because there are redundant encodings for some values). We should mention both.
If it were only one direction that lost information I think we'd be able to have these traits.

I think I got it, can you re-check my wording please.

df47dc82d822aae01b28d58277d7abf58f6ab7a9 looks good. I'm not sure the examples add a lot of value. I think we should drop them.
We should also explicitly say "Therefore, CompactTarget implements neither Eq nor Ord. If you want to compare them, first convert them to u32s or Targets and compare those." (Though I guess, as of this PR, that is not true.)
My new thought is for what we want to do with the traits is:

We should implement PartialEq/Eq in terms of the underlying u32. I think this is what people expect, and in particular, it's what users want when they compare BlockHeaders containing compact targets (since that equality should be byte-for-byte equality).
We should drop PartialOrd/Ord on both CompactTarget and BlockHeader and replace them with arbitraryord.

Anyway if you just drop the examples I will ACK this PR.

This can go in, its just docs.

All good, done.


Config azure pipelines

This configuration builds the application and produces builds for both Debug and Release configurations.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: zkatsavelis sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Update PPP - Zong Han

Changes
This PR updates the PPP for Zong Han to the latest v1.3b milestone.
Related Issues
None

Codecov Report

Merging #317 (65b30ad) into master (48797e7) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #317   +/-   ##
=========================================
  Coverage     72.21%   72.21%
  Complexity     1240     1240
=========================================
  Files           159      159
  Lines          3819     3819
  Branches        447      447
=========================================
  Hits           2758     2758
  Misses          983      983
  Partials         78       78

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 48797e7...65b30ad. Read the comment docs.


Bug fixes for SQL UI buttons

Description
Adding bug fixes for SQL UI buttons

Show create Button only on S3 datasources
Show explain and download buttons only on OpenSearch datasource
Remove text editor disabling
Update index name regex

Issues Resolved
#122
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Looking into test failure


Feature request: migration path from RKE to k3s

Feature Request Description
A migration path from RKE to k3s.  Specifically from RKE to k3s using RDS.
gz#10611
gz#10556

I see it shows milestone as v1.20 - Backlog.  Any more information on when this might be taken up?


cmd-shift-l slow for ~100 lines

I was able to confirm this, a noticeable lag when you have around 100 lines selected.
support/7a7036deb41111e393e81ac03fa195eb?page=1

Closing in favor of #5025.


Nested properties in array

Hello i would like to ask you how is it possible to map from an Array a nested property to a model.
Example:
var foos = [ { type : { id : 1, name :  "test" } , spec :  { id : 1, name :  "test" } },
                    { type : { id : 1, name :  "test" } , spec :  { id : 1, name :  "test" } }
                 ];

//var myWantedModel : { type : foos[0].type.name } for example

If i try the mapper with forMember i get returned an array with the initial data.
If i use convertUsing :
.convertUsing(function (resolutionContext) {
                return { type: resolutionContext.sourceValue.type.name, spec: resolutionContext.sourceValue.spec.name };
          });

I get an array with 2 empty objects

Hi Duskfall,
Currently, this is not possible with AutoMapper. Every conversion is performed on the single item level. You could of course map from a source array to a destination array (this is supported out of the box) and afterwards combine the results into one object. Does this help you? Otherwise, could you please specify which business need you try to cover? If creating support for your business need is doable and feasibly, we can always try adding this kind of functionality ;) ...
Cheers, Bert

Hi @loedeman  thanks for reply, i want to map a business logic dto which is different than my UI model!
I managed to do this chaining the mapping
.forMember('type', function (opts) { return opts.sourceObject.type ? opts.sourceObject.type.name : null })
.forMember('uiType', (opts) => opts.mapFrom('type'))
.forMember('uiType', (opts) => {return opts.sourceObject.type.name })

Dto is an object with type property, which is and object and has an id and name properties.
I wanted to map the name property to one upper level to simplify logic.
Thanks anyway :)

Hi @Duskfall, thanks for clarification. Do I understand you completely, when I consider the following code as the solution you originally would have wanted to have?
.forMember('uiType', (opts) => opts.mapFrom('type.name'))

This syntax does feel 'right' to me as well, it should not be very hard to get it working too... If this code would be helpful, I will give it a try ;) ...

Yeah exactly! In MVC we have this syntax for this kind of case
ForMember(dest => dest.Type, opt => opt.MapFrom(src => src.Type.Name));

Hi @Duskfall, you should now be able to use nested mapping. It has been more of a hassle than I initially expected, but everything works on my end now (you could have a look at the unit tests if you like). There is some work to do in order to get the code nicer and smoother, but I do not expect the functionality to be buggy...
PS. The package has been relocated and renamed though, I would be pleased if you would give the brand new AutoMapperTS v1.6.0 a try ;) ...

Just tested it and worked fine! Cheers!

Im not sure what Im doing wrong here, but I still get an array with empty objects. when using convertUsing()


Your project has set android.useAndroidX=true, but configuration :app:debugRuntimeClasspath still contains legacy support libraries

I am getting the following warning in the project while building it in the Android Studio. How this can be resolved properly or the library needs to upgrade itself. Anyone, please clarify.
Your project has set android.useAndroidX=true, but configuration :app:debugRuntimeClasspathstill contains legacy support libraries, which may cause runtime issues. This behavior will not be allowed in Android Gradle plugin 8.0. Please use only AndroidX dependencies or setandroid.enableJetifier=truein thegradle.propertiesfile to migrate your project to AndroidX (see https://developer.android.com/jetpack/androidx/migrate for more info). The following legacy support libraries are detected: :app:debugRuntimeClasspath -> com.github.denzcoskun:ImageSlideshow:0.1.0 -> com.squareup.picasso:picasso:2.71828 -> com.android.support:support-annotations:27.1.0 :app:debugRuntimeClasspath -> com.github.denzcoskun:ImageSlideshow:0.1.0 -> com.squareup.picasso:picasso:2.71828 -> com.android.support:exifinterface:27.1.0

basically, you need to put android.enableJetifier=true in gradle.properties


Support base64 encoded pubkeys in simulate_bundle

Currently the API defined as if it supports it, but the code path only tries decoding b58 strings.

haven't seen a base64 pubkey used anywhere, lets stick with base58


Release v0.0.1 (take 4): Initial release of the compiler and SDK crates

Ref #246
Well, the release PR against the main branch is not going to work since the VM v0.10 has MSRV 1.80 and some breaking API changes. Let's test the publishing from the next branch.
In this PR, I set the release CI job to run on merges to the next branch. We'll revert this after publish testing is complete.
After this PR is merged, the release CI job will publish all the unpublished crates.

If I understand correctly, we should merge this once #272 is green? Or should we merge it now, and it will release once we have a successful build on that branch? Feel free to merge this whenever ready if it's the latter.

Since it is testing of the publishing process and not the actual public release, I thought the green test suite is not required, and we can merge it now. On the second thought, maybe publishing with a red test suite is not a good idea.
The CI job should publish the crates once it merged. Since we are not running(BTW, should we?) the tests in the release job, green cargo build is the only hard requirement.


Add Dockerfile And Github Action Triggering Docker Push

Summary :

Dockerfile to build a minimal docker image containing coupe bins
Add meshes exemples
Add new github action (must be manually triggered)

Pros:

Usefull for hands-on sessions / paper submissions

TODO:

[x] Update README.md to show how to run a simple example
[x] Add automatic nightly publish ?

For information I am quite busy :(
I should be able to get back on the PR at the end of the week :)

Now that #131 is merged can the docker image contain the C library too?
It should be as simple as cd ffi && make && sudo make install

Now that #131 is merged can the docker image contain the C library too?
It should be as simple as cd ffi && make && sudo make install

I think we should clarify the perimeter associated with the docker image. Previously, i had in mind to only provide CLI related features.
Should we extend it to add libraries and other stuff ?

Thanks for your updates.

Looks great to me.
Thanks!


patch-2: iPhone 12 related

Added iPhone 12 colors, and pictures

Due to no activity, working at #15


Ability to run commands inside an existing container?

Might be missing something, but from a cursory glance it doesn't appear to be possible to run a command inside an existing container?
My usecase is I'd like to be able to call into a container which runs some caching daemon, and the commands are passed into the daemon running in the container via a in-container cli tool.

See the Execution interface here: https://github.com/ahmetb/go-dexec/blob/2538e5e2198f293ab61ffcab998efd691276af67/execution.go#L11-L20
I only implemented the ByCreatingContainer strategy as a proof of concept, and omitted what you asked. If you have time, you can contribute a the InRunningContainer and just call Docker exec APIs. I think all the pieces that are needed to make this work are already there.


data-triton-root-id should be named data-react-server-root-id

Minor nit: description says it all.

Yeah, we've got a lot of that sort of thing to deal with. :p

Maybe we should close this issue in favor of an omni "remove all instances of the word triton" issue?


SSIM has values larger than 1

🐛 Bug

It seems like SSIM can have values larger than 1 when computing over an epoch. I cannot reproduce this error but only observe it with tensorboard after training.

Environment

Python 3.9.13
Pytorch 2.0.1
TorchMetrics 1.3.0

Additional context
I am comparing between a synthetic and an target image. The target image has value between 0 and 1 while the synthetic image has values between -1 and 1. The data_range is set to None. I know the range between the synthetic and target image is different but still should SSIM produce a maximum score of 1?

Hi @TuanDTr, thanks for reporting this issue.
I just tried different input tensors based on your description and I cannot reproduce the behavior either. I am pretty sure that the metric should not be able to output values larger than 1.
Would it be possible to share how you initialize the metric? Alternatively, how your training step where you log the metric looks like?

@SkafteNicki Thank you for your quick response. Please find bellow the methods for forward, training steps as well as for validation steps where I initialize the metrics. Basically the metric is initialized in on_validation_model_eval, updated per step and aggregated and reset in on_validation_epoch_end. I have used this setup for a while without any problem but noticed this when evaluating 3D tensors (since I moved from 2D to 3D diffusion models).
    def training_step(self, batch: Union[Tuple, torch.Tensor], batch_idx: int) -> torch.Tensor:
        if self.use_profiler:
            self.profiler.step()

        x = batch["t1c"]
        z = self.get_latent_code(x)

        z_cond = []

        for m in self.hparams.cond_modality:
                x_cond = batch[m]
                z_cond.append(self.get_latent_code(x_cond))

        z_cond = torch.cat(z_cond, dim=1)

        noise = torch.randn_like(z).to(self.device)
        timesteps = torch.randint(0, self.hparams.num_train_steps, (z.shape[0], ), device=self.device).long()
        noisy_z = self._scheduler.add_noise(original_samples=z, noise=noise, timesteps=timesteps)
        noise_pred = self._unet(torch.cat((noisy_z, z_cond), dim=1), timesteps=timesteps)
        loss = self.criterion(noise_pred, noise)

        self.log("train/noise_recons_loss", loss, on_step=True, on_epoch=True, prog_bar=True, logger=True)

        return loss

    @torch.inference_mode()
    def forward(self, z_cond):
        self._ema.ema_model.eval()
        z_dim = [z_cond.shape[0], self._unet.out_channels, *z_cond.shape[2:]]
        z = torch.randn(z_dim, device=self.device)

        self._scheduler.set_timesteps(num_inference_steps=self.hparams.num_inference_steps)
        for t in range(self.hparams.num_inference_steps):
            model_output = self._ema.ema_model(
                torch.cat((z, z_cond), dim=1),
                timesteps=torch.Tensor((t,)).to(self.device).long()
            )
            z, _ = self._scheduler.step(model_output, t, z)

        x = self.decode_from_latent_code(z)

        return x, z

    def on_validation_model_eval(self) -> None:
        """Prepare before validation."""

        self.metrics = {
            "PSNR": PeakSignalNoiseRatio(data_range=None).to(self.device),
            "SSIM": StructuralSimilarityIndexMeasure(data_range=None).to(self.device),
            "MAE_image": MeanAbsoluteError().to(self.device),
            "MAE_latent": MeanAbsoluteError().to(self.device)
        }
        super().on_validation_model_eval()

    def validation_step(self, batch: Union[Tuple, torch.Tensor], batch_idx: int) -> None:
        x = batch["t1c"]
        if not self.hparams.preloaded_latent:
            z = self.get_latent_code(x)
        else:
            z = batch["latent_t1c"]

        z_cond = []

        for m in self.hparams.cond_modality:
            if not self.hparams.preloaded_latent:
                x_cond = batch[m]
                z_cond.append(self.get_latent_code(x_cond))
            else:
                z_cond.append(batch[f"latent_{m}"])

        z_cond = torch.cat(z_cond, dim=1)

        preds, latents = self.forward(z_cond)

        # Compute score
        self.metrics["PSNR"].update(preds, x)
        self.metrics["SSIM"].update(preds, x)
        self.metrics["MAE_image"].update(preds, x)
        self.metrics["MAE_latent"].update(latents, z)

        # Inverse transform
        inverse_transform = BatchInverseTransform(self.val_dataloader().dataset.transforms, self.val_dataloader())
        with allow_missing_keys_mode(self.val_dataloader().dataset.transforms):
            preds = inverse_transform({"latent_t1c": preds})

        self.save_to_h5_dataset(preds)

    def on_validation_epoch_end(self) -> None:
        psnr = self.metrics["PSNR"].compute()
        ssim = self.metrics["SSIM"].compute()
        mae_image = self.metrics["MAE_image"].compute()
        mae_latent = self.metrics["MAE_latent"].compute()

        self.log("val/psnr", psnr, on_epoch=True, logger=True, prog_bar=True)
        self.log("val/ssim", ssim, on_epoch=True, logger=True, prog_bar=True)
        self.log("val/mae_image", mae_image, on_epoch=True, logger=True, prog_bar=True)
        self.log("val/mae_latent", mae_latent, on_epoch=True, logger=True, prog_bar=True)

        self.metrics["PSNR"].reset()
        self.metrics["SSIM"].reset()
        self.metrics["MAE_image"].reset()
        self.metrics["MAE_latent"].reset()

Hi @TuanDTr,
I tried to reproduce the error again without success. Also the code you send me looks fine, nothing there.
I am going to assume that the reason is that you have different scaling on your input. The underlying assumption in SSIM is that the input is scaled in a similar way.
Else you would have to send me the full metric state when the error happens:
def on_validation_epoch_end(self) -> None:
    ssim = self.metrics["SSIM"].compute()
    if ssim > 1:
        torch.save(self.metrics["SSIM"].metric_state, "ssim_state.pt")

Hi @SkafteNicki, here is the state when the error happens:
{'similarity': metatensor(105.5943, device='cuda:0'),
 'total': tensor(101., device='cuda:0')}

I'll further scale all input tensors to the same range and see if this still occurs. I will follow up with you.

@TuanDTr I been trying to further debug the issue on my end and I am still unable to reproduce the problem. From the output you send it is very clear to me that 105/101 > 1 but not how the similarity gets to be higher than 101.
Have you tried the rescaling of the range to see if it helped?

Hi @SkafteNicki, I have tried rescaling the range of inputs to [0, 1] (see below) but I still encountered the SSIM > 1. I am setting the data_range to None, which I believe will eventually set the data_range to 1, right? I will assess the range of saved outputs, hopefully it can shed light on something else. I am sorry for the late response as I am working on other stuffs at the moment but I still follow up on this.
def forward(self, z_cond):
   ....
  return x.clamp(0, 1), z

@SkafteNicki Hello and I am sorry for the late update. I might have an idea why SSIM is larger than 1. I inspected my evaluation script and found that the tensors were in float16. If I change them to float32, I will get the correct results. However, I cannot reproduce this issue outside my training script. I think my setting that uses mixed precision training could have something to do with this. Do you have any idea how to inspect this further. Thanks!


shell comment lost

Hello,
I'm playing with LPeg and lot of things around.
I started to test your sh-parser that seems really cool.
I see shell's comment is not managed like the rest of the body
My shell sample is
# comment 1
FOO=foo
# comment 2
BAR=bar

The parsed result is
t = {
   ["body"] = {
      [1] = {
         ["type"] = "SimpleCommand",
         ["prefix"] = {
            [1] = {
               ["type"] = "Assignment",
               ["value"] = {
                  ["type"] = "Word",
                  ["content"] = {
                     [1] = "foo",
                  },
               },
               ["name"] = {
                  ["type"] = "Name",
                  ["text"] = "FOO",
               },
            },
         },
      },
      [2] = {
         ["type"] = "SimpleCommand",
         ["prefix"] = {
            [1] = {
               ["type"] = "Assignment",
               ["value"] = {
                  ["type"] = "Word",
                  ["content"] = {
                     [1] = "bar",
                  },
               },
               ["name"] = {
                  ["type"] = "Name",
                  ["text"] = "BAR",
               },
            },
         },
      },
      ["__comment"] = {
         ["type"] = "Comment",
         ["text"] = " comment 2",
      },
   },
   ["type"] = "Program",
}

Is it wanted ?
why not processing comment like any other shell command ?

I would like to get something like :
t = {
   ["body"] = {
      [1] = {type= "SimpleCommand", ...},
      [2] = {type= "Comment", ...},
      [3] = {type= "SimpleCommand", ...},
      [4] = {type= "Comment", ...},
   },
   ["type"] = "Program",
}

Hi,
do you use the latest revision from the master branch? Do you use default AST builder sh-parser.ast.simple (e.g. via sh-parser.parser) or your custom? If the former, then pass { comments = true } as the second argument to the parse function.
Comments are handled specially. They are parsed, the parser calls create_node handler for them, but does not include the created nodes in captures. Comments may appear almost anywhere, so they would broke low-level API (based on positional captures) or complicate the grammar significantly.
If consumer of the low-level API wants to include comments, then it must store them aside and inject into appropriate AST node itself. That’s what sh-parser.ast.simple currently do; comments are eventually injected into the root node (Program).

Hello,
I started with a simple sample, without custom stuff.
Then my sample was done with the sh-parser default grammar (that should be sh-parser.ast.simple).
For my sample Im using something like :
local sh = [[
FOO=bar
]]

local parse = require 'sh-parser.parser'.parse

local t = parse(sh)
local prettyprint = require "tprint"
print( "t = "..prettyprint(t) )

I used my own simple prettyprinter : tprint
I think there is 2 approach :

parse to eval : then comment lost is not a problem)
parse to rewrite like beautifier : then lost something is a problem

did you done sh-parser mainly for the 1st one ?
Regards,

Try this:
  local sh = [[
  FOO=bar
  ]]

  local parse = require 'sh-parser.parser'.parse

- local t = parse(sh)
+ local t = parse(sh, { comments = true })
  local prettyprint = require "tprint"
  print( "t = "..prettyprint(t) )

You can read about available options in sh-parser.ast.imple.

did you done sh-parser mainly for the 1st one ?

No, the main motivation was programmatic modification of shell scripts, so comments are important for me too.

Hello,
I'm using directly the git repository in the master branch, then I don't have issue with deployment.
I tried with { comment = true } and it is better, but far to be perfect.
I got :
t = {
    ["body"] = {
        [1] = {
            ["type"] = "SimpleCommand",
            ["prefix"] = {
                [1] = {
                    ["value"] = {
                        ["type"] = "Word",
                        ["content"] = {
                            [1] = "value1",
                        },
                    },
                    ["name"] = {
                        ["type"] = "Name",
                        ["text"] = "var1",
                    },
                    ["type"] = "Assignment",
                },
            },
        },
        [2] = {
            ["type"] = "SimpleCommand",
            ["prefix"] = {
                [1] = {
                    ["value"] = {
                        ["type"] = "Word",
                        ["content"] = {
                            [1] = "value2",
                        },
                    },
                    ["name"] = {
                        ["type"] = "Name",
                        ["text"] = "var2",
                    },
                    ["type"] = "Assignment",
                },
            },
        },
    },
    ["comments"] = {
        [1] = {
            ["type"] = "Comment",
            ["text"] = " comment line 1",
        },
        [2] = {
            ["type"] = "Comment",
            ["text"] = " comment line 3",
        },
    },
    ["type"] = "Program",
}

Now I have all comment lines in t.comments but still outside of the t.body.

Why is it so hard to consider comment line like any other shell instruction ?

Do you know metalua and his ast format ?
IMHO the metalua's AST format seems the one that is closed to be a standard.
Are you interested to modify the ash result to follow the metalua format ?

rename type to tag
use numeric index instead of key index

I'm also starting to work with lpeg and lpeg.re.
Do you already know lpeg.re ?
Do you think it will hard try to define the shell posix grammar in lpeg.re syntax ?


scRNA input for signature

Heya,
I am interested in trying this with my data.
How should I process the scRNA reference before calculating the signature?
Logspace? Counts? Depth normalization?
Ty!

Hi,
thanks for the interest in the package.
It depends a bit on the data (as always), but as a default I think library size normalization + log transformation are a good choice.
I think I never really tested it without library size normalization.
Regarding log-transformation;

when analysing Xenium for example we mostly didn't notice large differences in the resulting cell type assignment when using log-transformed vs non-transformed signatures. This likely might be influenced by the fact that the choice of genes in the panel already is "biased" towards genes that are expressed in a similar range and few genes are used anyway.
for Stereo-seq/Nova-ST we almost always used log-transformed signatures.

As a side note as well, you probably should first log-transform your data before calculating the signatures and not the other way around.

Thank you!
I think the api is much nicer than Ficture :)
Looking forward to giving it a spin


[FLINK-11392][network] Introduce ShuffleEnvironment interface

What is the purpose of the change
Extract ShuffleEnvironment interface from NetworkEnvironment.
Brief change log

Add page size config also to TaskManagerServicesConfiguration because this general option is also used for MemoryManager independently from NetworkEnvironment. Any other ShuffleEnvironment can potentially use its own page size.
Extract ShuffleEnvironment interface from NetworkEnvironment with its public methods.
Make NetworkEnvironment its default implementation
Rename NetworkEnvironment to NettyShuffleEnvironment.

Verifying this change
Refactoring covered by existing tests.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

The PR is based on  #8566 at the moment. Only last 3 commits are relevant.

@flinkbot attention @zhijiangW

Thanks @zhijiangW , I have addressed comments

Thanks for the review @tillrohrmann, I've pushed the final version with the last changes including yours.

@azagrebin @tillrohrmann sorry for leaving several nit comments at the point of merging this PR.
My above comments are not critical and might be addressed conveniently future.

Thanks @zhijiangW , addressed

Thanks for the review @zhijiangW and the good work @azagrebin. Merging now.


Optimize GeoJSON support

GeoJSON support is creating 2 copies of the data in memory to convert to GeoJSON. Optimize so that data can be streamed directly from backend

We have optimized to stream out the list of permits retrieved from the adapter. The list is written directly via Json.NET JsonWriter interface.
NOTE: Additional optimization might be added by streaming right from the adapter, but a new adapter interface method would need to be added to take a stream as a parameter.


v1.0.0

Changed

Site is dark-themed
Hover effects removed on touch devices, site redesigned with this constraint
Instead of using Chrome's "mini-info toolbar" for PWA installs, use a custom Install button

Fixed

Add a maximum piece history of 20
Volume slider is exponential instead of linear
Uncached pieces are displayed as disabled while offline
Users without Web Audio support are not able to initiate playback
App won't crash when attempting to open the record tab without a piece selected
(dev) .jsx files are linted

Added

Pieces can be added to/removed from favorites and the piece list can be filtered to only show favorites
Piece tags are displayed and the piece list is filterable by tag
Piece links can be copied from the "more" menu
Configurable sorting (by release date or play time)

Resolves #113.
Resolves #56.
Resolves #111.
Resolves #37.
Resolves #100.
Resolves #85.
Resolves #77.
Resolves #71.
Resolves #60.
Resolves #51.
Resolves #20.


IndexExpr and Shape Dialect

Hi,
(This is not an issue, just try to find an answer)
onnx-mlir uses IndexExpr for shape inference.
Is that because shape dialect is insufficient to express some constraints or expressions?
Thanks

I have had discussions with the shape dialect folks, and we are both after something similar. The issue we both face is that we want to have a single piece of code that can answer questions about shape before code gen (shape inference) as well as during code gen (generate code to compute at execution the dynamic shapes). Shape dialect is a dialect that let you compute shapes, more like the code gen part.
IndexExpr allow us to express in one go the computations needed to both infer constant shapes (and -1/dynamic) during the shape inference, and use the very same code to generate expressions for dynamic code during code gen.

See how the same ONNXxxxOpShapeHelper are used during shape inference and lowering code.

Thanks for the explanation.
Below is my understand:
Shape Dialect can be used to generate code that executes at runtime to compute shape. (I see MLIR emits functions for shape computation).
The reason onnx-mlir uses IndexExpr is because it is easier to use for compile-time shape deduction and propagation.
Is that correct?

The reason onnx-mlir uses IndexExpr is because it is easier to use for compile-time shape deduction and propagation.

Not quite. ONNX has 100+ ops (like TF, Torch) and we want to have a unique piece of code to compute shape. We use that same code to either generate compile time constants and dynamic values (no code gen, that is the analysis) or generate the ops to compute the dynamic shapes.
Right now, when we generate ops, we introduce arithmetic ops. It would be easy to switch some of it to shape dialects, if needed. We have not had this need internally, probably because our effort started before shape dialect matured. But it could be done relatively easily.
IndexExpr are possibly slightly more encompassing than shape dialect. We have multiple cases where conditional (select) are needed for shapes, so IndexExpr also represents boolean values. (Unfortunately), ONNX also has a few places where floating points operations are needed to compute shapes. We handle these cases in IndexExpr as well.
Aside of all this, code writers in ONNX-MLIR are strongly encouraged to use the existing infra to compute shape. The last thing we want is to have redundant code that recompute shapes in a different way. Standard evolve fast enough that we also want to maintain only one change if shape where to change (it does often between opset releases).
Hope this helps.

Great! Thanks.
This totally makes sense.


Move javascript out of the server binary

The server binary now just loads files from disk, instead of
files embedded into the binary.
This has the advantage that the build process becomes slightly more
straightforward - we can compile the go binary without building
javascript, and we can refresh the javascript in docker images without
re-building the go binary.
I've hard-coded the server binary to look at the sub-directory
"dist" below the binary's directory, and dumped the generated files in
bin/dist - it's a bit of an odd place to put the dist files, but
bin is a directory of generated files already, and this makes it
very easy to accidentally get right.

I'm gonna go with "probably not". I don't think it'll actually re-read from disk every time - the files will land in the linux page cache, right? By the time we've got so many users and features that the performance of this becomes a problem, I'll want to pull down an off-the-shelf load balancer to deal with all the other requirements we'll have by then.

I'm gonna go with "probably not". I don't think it'll actually re-read from disk every time - the files will land in the linux page cache, right? By the time we've got so many users and features that the performance of this becomes a problem, I'll want to pull down an off-the-shelf load balancer to deal with all the other requirements we'll have by then.

That was mostly my thinking. I guess we should keep it in mind but this shouldn't ever be a high traffic app so we can probably err on the side of simplicity


⚠ Jenkins Plugins Artifactory has degraded performance

In 2df3795, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1206 ms

Resolved: Jenkins Plugins Artifactory performance has improved in d0e2303 after 14 minutes.


Support position for devtool

WHAT

Migrate example from create-react-app to vitejs
Support 4 positions for devtool UI: top-left, top-right, bottom-left, bottom-right. And keep top-right as default option
Add storybook for easy to test/prototype component
Update packages

Storybook:
https://react-hook-form-devtool-ui.vercel.app/?path=/story/devtoolui--default-dev-tool

WHY

We should support position as a prop because it's easy to adjust for different UI.

HOW

New usage

<DevTool control={control} placement="top-left" />

Screenshots (if appropriate):

Types of changes

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

Checklist:

[x] Linter
[x] Tests
[ ] Review comments
[ ] Security

oh wow, thanks very much @jellydn  this is awesome, I will contribute to the UI as well after this is merged. I will bake those buttons inside the pannel so they look nicer.

Let me know it's ready to be reviewed.

Thanks Bill. It's ready. Please take a look. Thanks 😀


One more thing Some featur need to work with attribute like customUrl()

and a lot of feature just ulAttr() that work nice with attribute how can i ?


Did a lot of things

Moleculized date-picker
Moleculized user-list
Edited notification center style, enabling popover feature
Resolved all warnings
Removed all debug messages
Added alert for every request failures
Enabling user information edit
Resolving package conflicts
Making base for test

You are genious


increase length of some string fields

Hello @tiagobrito @alexanderdean @yalisassoon,
We have an issue related to length of some string fields. Field's length is too short. So some strings are cut when saving into database.
I update code and create a pull request. Pls review and merge.

Hello @tiagobrito @alexanderdean @yalisassoon,
We have an issue related to length of some string fields. Field's length is too short. So some strings are cut when saving into database.
I update code and create a pull request. Pls review and merge.

Hi! We are not actively maintaining this library. Happy to transfer it to a good home

@alexanderdean It would be great if you merge it, because we use this package in some projects. It helps us save time for updating a small issue

Sorry I can't merge code that I haven't reviewed, and I can't review code that I'm not actively maintaining.


cookbook_file crashes when copying file ending on ".dll" to a Windows 2012R2

Description
When copying a ".dll" file, the recipe crashes.
Chef Version
Test system:
Windows 2012R2 with chef-client-17.10.3-1-x64.msi on it.
Client system (where chef-kitchen is executed):
Chef Workstation version: 22.6.973
Chef InSpec version: 4.56.20
Chef CLI version: 5.6.1
Chef Habitat version: 1.6.420
Test Kitchen version: 3.2.2
Cookstyle version: 7.32.1
Chef Infra Client version: 17.10.0
Platform Version
Test system:
Windows 2012R2 with chef-client-17.10.3-1-x64.msi on it.
Client system (where chef-kitchen is executed):
Chef Workstation version: 22.6.973
Chef InSpec version: 4.56.20
Chef CLI version: 5.6.1
Chef Habitat version: 1.6.420
Test Kitchen version: 3.2.2
Cookstyle version: 7.32.1
Chef Infra Client version: 17.10.0
Replication Case

Install Windows 2012R2 VHD from Microsoft
Activate Hyper-V on Windows 10 (21H2/ OS Build 19044.1766)
Create a new VM and attach the disk
Use default switch (if connectivity is broken , create an internal one)
Start the 2012R2, set a user and a password
Upload and install the chef-client (chef-client-17.10.3-1-x64.msi) on the 2012R2
Allow winrm from the client system (win10 21H2) over the IP:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value '172.26.121.*'

8.Test winrm connectivity
$cred = Get-Credential
Enter-PSSession -Computername <VMIP> -Authentication Negotiate -Credential $cred

Create cookbook & recipe

chef generate cookbook mycookbook
cd mycookbook
chef generate recipe myrecipe

Create recipe like this:

cookbook_file 'mydllfile.dll' do
  atomic_update              true
  backup                     false
  inherits                   true
  mode                       '0777'
  path                       'C:\\mydllfile.dll'
  source                     'mydllfile.dll'
  action                     :create
end

Create kitchen's yml (replace IP, username and pass)

---
provisioner:
  name: chef_zero
  log_level: debug

verifier:
  name: inspec

platforms:
  - name: windows-2012R2
    os_type: windows
    shell_type: powershell
    transport:
      name: winrm
      elevated: true
      username: 'user'
      password: 'pass'
      hostname: 'ip_of_VM'
    driver:
      box: windows-2012r2

suites:
  - name: myrecipe
    run_list:
      - recipe[myrecipe]

Copy a dll file named "mydllfile.dll" into cookbook/files
Execute kitchen

kitchen converge -l debug

Client Output
https://gist.githubusercontent.com/hunter86bg/32b4163fe4d132125cd4fe241c6cdac2/raw/09a115c3c276fbdd7485ac71e21e422703a8e630/cookbook_file%2520dll%2520crash
Stacktrace
backtrace
D      ----------------------
D      ------Backtrace-------
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:181:in report_errors' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:172:in run_action'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command/action.rb:35:in block in call' D      C:/opscode/chef-workstation/embedded/lib/ruby/3.0.0/benchmark.rb:293:in measure'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command/action.rb:33:in call' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/cli.rb:52:in perform'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/cli.rb:198:in block (2 levels) in <class:CLI>' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:27:in run'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in invoke_command' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in dispatch'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/base.rb:485:in start' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/bin/kitchen:11:in block in <top (required)>'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/errors.rb:183:in with_friendly_errors' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/bin/kitchen:11:in <top (required)>'
D      C:/opscode/chef-workstation/bin/kitchen:408:in load' D      C:/opscode/chef-workstation/bin/kitchen:408:in '
D      ----End Backtrace-----
D      -Composite Exception--
D      Class: Kitchen::InstanceFailure
D      Message: Converge failed on instance .  Please see .kitchen/logs/mycookbook-windows-2012R2.log for more details
D      ----------------------
D      ------Backtrace-------
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/provisioner/base.rb:100:in rescue in call' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/provisioner/base.rb:99:in call'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:419:in block in converge_action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:563:in synchronize_or_call'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:524:in block in action' D      C:/opscode/chef-workstation/embedded/lib/ruby/3.0.0/benchmark.rb:293:in measure'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:523:in action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:414:in converge_action'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:392:in block (2 levels) in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/lifecycle_hooks.rb:47:in run_with_hooks'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:391:in block in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:390:in each'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:390:in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:139:in converge'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:195:in public_send' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:195:in run_action_in_thread'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:166:in block (2 levels) in run_action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in block in create_with_logging_context'
D      ----End Backtrace-----
D      ---Nested Exception---
D      Class: Kitchen::ActionFailed
D      Message: WinRM exited (1) for command: [$env:TEST_KITCHEN = "1"
$env:PATH = try {
[System.Environment]::GetEnvironmentVariable('PATH','Machine')
} catch { $env:PATH }
& $env:systemdrive\opscode\chef\bin\chef-client.bat --local-mode --config $env:TEMP\kitchen\client.rb --log_level debug --force-formatter --no-color --json-attributes $env:TEMP\kitchen\dna.json --chef-zero-port 8889 ; exit $LastExitCode]
D      ----------------------
D      ------Backtrace-------
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/provisioner/base.rb:100:in rescue in call' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/provisioner/base.rb:99:in call'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:419:in block in converge_action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:563:in synchronize_or_call'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:524:in block in action' D      C:/opscode/chef-workstation/embedded/lib/ruby/3.0.0/benchmark.rb:293:in measure'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:523:in action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:414:in converge_action'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:392:in block (2 levels) in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/lifecycle_hooks.rb:47:in run_with_hooks'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:391:in block in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:390:in each'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:390:in transition_to' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/instance.rb:139:in converge'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:195:in public_send' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:195:in run_action_in_thread'
D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/test-kitchen-3.2.2/lib/kitchen/command.rb:166:in block (2 levels) in run_action' D      C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.0.0/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in block in create_with_logging_context'
D      ----End Backtrace-----

Thank you for the detailed bug report!
We would like to understand what is the specific usecase that you are looking to address by copying the dll using chef?
Is this a blocker for the work that you are doing or do you have a workaround in getting past this issue?

It seems that the workaround is to name the file as 'Myfile_dll' and then select that as source.
The use case is to deliver the NuGet Package Provider dll to systems behind firewall, so after that via chef deliver nuget packages locally and via powershell to create a local/internal (behind firewall) Powershell Repo and install those powershell modules (for example IISAdministration)

As I was reporting multiple issues at once, I might have mixed the problems, so don't hesitate to ask if something looks odd.


Content Fixes

Bug 1:

On the Partner site account sign-up, Terms of Use links are not underlined in partner account sign-up legal disclosure modal.

Expected Behavior 1:

This link should be underlined.

Bug 2:

On the Public facing log-in page, there is a spelling error "Sign up quicky with no need to remember any passwords."

Expected Behavior 2:

Spelling error "Sign up quickly with no need to remember any passwords."

QA Notes: underlines were added also for export applications TOS accept modal

lgtm!!


add NEW status to notifications

Add New/Read status for notifications
Minor refactoring and cleanup
get dispute / stake account info at load

looks good - closing


Type definitions

It is not likely an issue, but can you add type definitions? It is incredibly easy to do and it gives you lots of advantages.

https://github.com/CdePanda/hypixel-js/pull/8


add  support logfile import？

will add  support logfile import？

Similar to the answer here. You will need to config filelog receiver


Use deepsleep between measurements

Hi Ricardo, i found this piece of code useful especially when you don't wanna setup an entire digi or igate, and yes, this isn't an issue but another proposal. Why don't add the deepsleep() function to maximize battery duration? This kind of stations are often battery operated and solar charged, the deepsleep() could help a lot. Other than this, you don't need to be active between two consecutive readings, if it doesn't rain....in this case you need to count the "click-clack" of the rain meter, but you can always link it to an interrupt routine who counts the impulse over a dedicated "wakeup" pin, it can be done with esp32 if i remember correctly...
Thank you for your time

Hi,
i was thinking about the same thing...  I will check how to do the interrupt for the rain
with this I think I can make it sleep without any problem.
give me a time to do this as this week I'm full on making the tracker web installer ready

Sure, there's no hurry at all. For what i remember the solution is quite straightforward, you connect the pulse of the rain meter to a pin and after you tell to esp32 to wakeup from deep sleep when this pin is activated (status chage 0 or 1, can be selected). After that, when you wakeup, you must check the reason (there is a proper function to check why we went waked up from deepsleep and from what source) and in case the reason is "external pin trigger" then you can increment the "rain meter" variable.
This is the reference: https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/system/sleep_modes.html
I think the ext0 wakeup is the most suitable for this task. There are other interesting source for the wakeup, as you can read, but mostly not compatible with the "deepest" deepsleep you can do.

yes I see there is not much difficulty , I even have something like this running on a secret project to be shared soon
sleeping Digirepeater that wakes up when Beacon must be sended or when a message is received and should be repeated and then sleeps but LoRa Modules stays listening. So it could be easy be achieved in WX station

Great, i know this feature of the SX12xx family, you can use a digital output of the lora module when a packet is received, to wakeup the esp32 from deepsleep. Really useful, i've just a self made digi (Wemos D1 mini ESP32 and SX1278) who needs this feature, it consumes a lot to be fully battery powered all time long... :-) The worst part of this hardware is the AM1117 ldo, that is really inefficient as i've already seen in other projects i did in the past...anyway, looking forward for your code. Invaluable work, my compliments.


Cannot spyOn on a primitive value; undefined given

🐛 Bug Report
I cant spy on  any of my components
  const spyDidMount = jest.spyOn(Component.prototype, "componentDidMount");
  wrapper = shallow(<Component />, { disableLifecycleMethods: true });

Or
  wrapper = shallow(<Component />, { disableLifecycleMethods: true });
const spyDidMount = jest.spyOn(wrapper.instance(), "componentDidMount");

both are not working
wrapper.instance() show error => Cannot read property 'instance' of undefined
Component.prototype   show error =>    Cannot spyOn on a primitive value; undefined given
To Reproduce
I have a sample provided to test
Expected behavior
I could spy on component
Link to repl or repo (highly encouraged)
https://codesandbox.io/s/kind-spence-sbuyb

wrapper or wrapper.instance() is undefined for some reason (I don't use Enzyme) and that's why it fails. jest.spyOn seems to report correctly what's wrong. You need to fix your tests first.

I got this error when using jest.spyOn  is this mean anything
Cannot spyOn on a primitive value; undefined given

I tried your repro and wrapper is undefined. Maybe at some point it's defined, but instance() returns undefined (because e.g. it's a non-class component without instance). And the message is pretty much descriptive. I don't see what else we can do. Fix your code first :)


Ability to call hubot

Hey,
Actually this is not a issue. This is feature request. As we know Slack has feature to call team members. It will be nice to have the feature to call hubot and we can implement listeners to parse the audio.
Its just a idea. Lets see, what people say?

Right now, we have no API methods exposed to accomplish any of this, I'm sorry to say. We can revisit if we expose any endpoints for making calls!