Simulation experiment

This PR adds scripts to generate simulated data and then run the interpolation analysis (established in previous PRs)
There are two main scripts:

main_Pa_sim_simple_linear:  Add gene expression signal that changes linearly with respect to gene target of interest using a simple GRN
main_Pa_sim_simple_nonlinear:  Add gene expression signal that changes nonlinearly with respect to gene target of interest using a simple GRN
main_sim_Pa_2TFs:  Add gene expression signal that changes nonlinearly with respect to gene target of interest using a more complex GRN
Some of the supporting py functions changed in order to add PCA encoding as a benchmark

Note:  Many simulations were run which generated a lot of output files (these are the majority of the files changed)

Finished addressing first set of comments

quick comments (still sifting through)

the .pyc files are still being tracked
files in the metadata folder are lacking file extensions


Update manage-quarantined-messages-and-files.md

@chrisda

@JohanFreelancer9 - kindly do the copy editor review for this PR. Thanks

@chrisda Please merge this PR. Thanks.


Feature request : pass command line arguments to launched tasks

Hi,
I think it would be great to be able to pass command line arguments received by the "grunt devtools" command to the one we launch manually in chrome.
For instance, if I run : "grunt devtools --someArg=someValue"
It would be great that when I launch another task from the chrome extension it sees that argument.
What do you think ?
Thanks.

Would love to see such feature a feature like that. great.


Too many items in legend leads to broken layout

When legend.position is set to right and there are many items/categories provided the layout is broken

If there's no way to make a scrollable list in SVG then legend should be drawn via HTML

Have you tried to make the legends smaller using legend formatter function?
legend: {
  formatter: function(val, opts) {
    return val.substring(0, val.indexOf("competitor-forms-windows-xp"))
  }
}

Another option is - for smaller screen sizes, you can put the legends below chart using responsive config.
I thought about drawing legend with HTML, but it will require a major code rewrite.

@junedchhipa truncating is not an option here and having a hundred of items will span the legend to even more columns eventuall hidden when not fit into chart's container
And there's also another bug that is related to this chart is when xaxis.type is datetime then only the hovered point's data is shown

Looks like I'll have to do the custom filtering UI completely on my own :) like depicted on this mockup

@pribilinskiy Yeah, I think - you have a pretty interesting use case of so many series to show in 1 chart.
Regarding the bug which you noticed (hovered data point), can you please create a codepen example for me to reproduce quickly?
Thanks

Added as separate issue https://github.com/apexcharts/apexcharts.js/issues/115


Tears of the Kingdom Data

Hi there, I really like this Project! I am working on a very similar API for TotK and I have already found most of the data that I need, but I am not able to find the "Common Locations" anywhere in the game files.
If you extracted the data yourself for this API yourself, would you mind telling me where you found the location data?

Support for TOTK data (including common locations) is almost ready; hopefully, in a few days, it will be out. I'll let you know in this thread when the TOTK API is ready for use. (See also: https://github.com/gadhagod/Hyrule-Compendium-API/discussions/36)

That's great!
What I tried to ask was if you knew where in the game files the "Common Locations" for each compendium entry was stored, because I am working on a similar project myself and would like to get the data myself.

Oh lol. Since the game is new, last time I checked no one has really published the data in a standardized format anywhere. I manually entered the data from the game (very painful).
I am in the process of checking it over and getting some other eyes to look at it to make sure all the data's correct before shipping the new features.

Oh wow, that must be so much work!
I was able to extract everything from the game itself, I'm only missing the locations right now...
You can check it out here: https://github.com/BustyBee/TotK-Compendium-API
The code is probably very sloppy but I'm rather new to coding so I'm just happy it works 😂


Revert fromLocal() to fix #150

As issue #150 explains, there's a problem with fromLocal() since commit 9b032eeb and this patch solves the problem until someone can properly fix it.

@elamperti: there's also #195.

Thanks for the contribution! LGTM, until we find another way to deal with this


Consider using eslint-plugin-jsx-a11y

Do you think it is worth it? 🤔

Yep I do.
@acostalima @ivolimasilva This should be added as a task in Oficina as well.

Done! 😉

Closed by #75


Add support for password through ENV_VARIABLES.

f? @jasonthomas r? @leplatrem

I don't understand the code :( Why not just a one-liner like value = os.getenv(key, value) ?

It looks like these values will still be displayed as cleartext via the lambda console and that is not ideal. I think we need to use KMS or something else and pass a encrypted blob as the environment variable.

it only works if no option is supposed to occur twice

It is actually the purpose of the all script.
Read the env variable and override it by the configuration if we have a duplicate.
Also the importer function is looking for a list because argparser is usually reading sys.argv and in this case we are providing the args to the function.

It looks like these values will still be displayed as cleartext via the lambda console

No it won't because we are clearing the secret before displaying them.

According to https://aws.amazon.com/blogs/aws/new-for-aws-lambda-environment-variables-and-serverless-application-model/ the environment variable should be encrypted and will automatically be decrypted using KMS.


Reported chip type: 2303
Reported chip ID: 98-3A-A8-92-76-D7
Reported firmware version: 0.99.53
Mode: Firmware
Switching to boot mode...
Rebooting...
Sending firmware...
FATAL: System.InvalidOperationException: Header not accepted
at DriveCom.PhisonDevice.TransferFile(Byte[] data, Byte header, Byte body) in C:\usb\Psychson-master\Psychson-master\DriveCom\DriveCom\PhisonDevice.cs:line 279
at DriveCom.Startup._RunFirmware(String fileName) in C:\usb\Psychson-master\Psychson-master\DriveCom\DriveCom\Startup.cs:line 428
at DriveCom.Startup.Main(String[] args) in C:\usb\Psychson-master\Psychson-master\DriveCom\DriveCom\Startup.cs:line 114

I would try two things, either put your usb in bootmode manually by shorting circuiting the pins then trying again or..
Try reflashing the firmware with MPALL
Here's my post on how I got it working
https://github.com/brandonlw/Psychson/issues/155#issuecomment-249545198

Thank you for your reply, I was destroyed by the controller. The new usb disk is on the way to mail


Review code iter

Another review: codeiter
It mostly improves readability (to me at least), most of the logic hasn't changed, except for macros declaration.

iterators instead of while
matches instead of ifs
remove several StmtIndicesIter members

I also added a bench to compare. On my system there is a mere 4% improvement, nothing significant but at least it is not worse.
I think a 'merge' between codeiter and codecleaner might be possible to avoid reading the src twice, i don't know yet all the impacts so i'll see for it later.
Again, let me know.

Hi @tafia ,
I like the simplified code, thanks!
All but the same 4 tests work fine on my side.
I'm sorry for wasting your time ...

Hi @tafia
No worries. It's probably something to do with the merge - your branch is a few commits behind now.
I get
failures:
racer::ast::ast_sandbox
racer::codeiter::iterates_half_open_subscope_if_is_the_last_thing
racer::codeiter::iterates_inner_scope
racer::codeiter::iterates_macro
racer::codeiter::iterates_macro_invocation
racer::codeiter::iterates_module_attribute
racer::codeiter::iterates_single_use_stmts
racer::codeiter::iterates_use_stmt_over_two_lines
racer::codeiter::iterates_use_stmt_without_the_prefix
racer::test::completes_local_scope_let
racer::test::completes_struct_field_via_assignment
racer::test::completes_via_parent_scope_let
racer::test::destructures_a_tuplestruct
racer::test::destructures_a_tuplestruct_with_generic_arg
racer::test::differentiates_type_and_value_namespaces
racer::test::finds_a_generic_retval_from_a_function
racer::test::finds_definition_of_lambda_argument
racer::test::finds_defn_of_struct_field
racer::test::finds_field_type
racer::test::finds_glob_imported_enum_variant
racer::test::finds_impl_fn
racer::test::finds_inline_fn
racer::test::finds_templated_impl_fn
racer::test::finds_type_of_tuple_member_in_fn_arg
racer::test::finds_type_of_tuple_member_via_fn_retval
racer::test::finds_type_of_tuple_member_via_let_expr
racer::test::finds_type_of_tuple_member_via_let_type
racer::test::follows_arg_to_enum_method
racer::test::follows_arg_to_method
racer::test::follows_chained_method_call
racer::test::follows_fn_to_method
racer::test::follows_let_method_call
racer::test::follows_self_to_method
racer::test::follows_self_to_method_when_call_on_new_line
racer::test::follows_self_use
racer::test::follows_use
racer::test::follows_use_as
racer::test::follows_use_glob
racer::test::follows_use_to_impl
racer::test::follows_use_to_inline_mod
racer::test::gets_type_via_match_arm
racer::test::handles_an_enum_option_style_return_type
racer::test::handles_if_let
racer::test::handles_if_let_as_expression
racer::test::uses_generic_arg_to_resolve_trait_method
test result: FAILED. 49 passed; 45 failed; 2 ignored; 0 measured

OK thanks !
Doing it asap

There was indeed a typo error.
Fixed.
PS: I cannot update my rust version because of some curl issue i have, so i couldn't rebase.

Thanks! I'll hopefully get some time to test it more and look through it thoroughly later today
Have a good weekend!

Thanks !
It's already saturday night here :)
I am having a look at other files. Next target might be scope.rs, others
look too impressive for now :)
It is like a puzzle, I'm leaning piece after piece. I will probably add
more functions comments once I grab it all, it'll help next guys !
Have a good week end too.
On 24 Jan 2015 18:17, "Phil Dawes"<EMAIL_ADDRESS>wrote:

Thanks! I'll hopefully get some time to test it more and look through it
thoroughly later today
Have a good weekend!
—
Reply to this email directly or view it on GitHub
https://github.com/phildawes/racer/pull/123#issuecomment-71309219.

I don't want to push new changes if i am in the wrong direction so I prefer waiting for your feedack.
Fyi, I have reviewed scope as well. There are very good results for mask_comment and mask_sub_scopes.

Nice !
Thanks

Thanks @tafia. Sorry I've been dragging my heels a bit lately - my evenings are a bit busy at the moment.


unwanted reference between objects is created when returned by axios or the like

Version
2.6.11
Reproduction link
https://jsfiddle.net/kriech/ft1u7wm0/120/
Steps to reproduce
Click on button "Change array A".
What is expected?
The name "Peter" in array A (arA) changes to "Paul".
Array b stays unchanged.
What is actually happening?
The name "Peter" in BOTH arrays changes to "Paul".

It looks like by using an simple "=" a reference to the data object returned by axios is created.
But the really stunning fact comes now (for some reasons not reproduceable in fiddle):
I tried to created an independen clone. i.e. copying the array without creating a reference:
arA = [...arB]
arA = arB.slice()
None of this works!
Changing object properties in array A afterwards changes the same properties in array B.
The only workaround I found was using a "parsing/stringify" combination:
this.arB = JSON.parse(JSON.stringify(res.data))
I also tried to write the data in a variable first and then tried to clone it with spread operator or slice.
The reference between the arrays stays intact.

I believe this is normal behaviour.
Once you assign a value to vue observed variable, it will have kind off deep connection to the assigned variable.
Yes JSON.parse(JSON.stringify(res.data)) is a way to severe the connection.

This is expected are both arA and arB are holding the same reference to the same object, so modifying one modifies the other

Remember to use the forum or the Discord chat to ask questions!


comment not accepted after .assume / .align / .org directives

Minor issue, but very nice to have for properly documenting code

Fixed in commit 5cdf646


Increase font size for recent topics in less dense mode.

This uses the dense_mode UserProfile field for showing less_dense_mode. This is currently enabled in development_environment only.
before:

after:

For unread count, before:

after:

I did some pretty carefully testing and then merged the unread counts part of this as the series ending with 85a7325757d2a5c12945e62e7b75b9466578ac7e.  (The one bug you had was the starred message counts being broken, but they were ugly anyway so I just redid them).  Thanks for doing this big cleanup!
I'm still not convinced we need a font-medium class -- can't we just change the font size on body based on the less_dense_mode setting?

Following - thank you for working on this! 🙏

Sorry for all the comments, but it seems there are a few merge requests from the last few years related to the UI that were never merged and now have conflicts. Is there an intention to improve these items, like font size and density?
Even before any user settings are added, wouldn't it make sense to simply increase the default font size to be in line with the defaults of web browsers, slack, etc.?
I am just trying to get started moving from Slack but the fonts and density are tough to deal with for my users.

Yes, we absolutely intend to prioritize this work, but unfortunately it is not a simple engineering project.

Closing this since we are doing a separate font size change effort.


release docs

documentation ready for release

Notes on Binder:
So far this looks quite exciting, and I am impressed.  This is how it works:

We have a repo with notebooks in which we want anybody to be able to use no matter what their environment
We make a file in the repo called index.ipynb and a file containing the environment specs for the notebooks (this can be a yml file describing a conda env or a txt file describing pip installs, or a docker file)
We press a big red button (it's not really red, but it should be) on the binder website and it makes a badge in the repo
When you click the badge, the environment is activated and the index notebook is opened
You can copy and paste the badge URL from github to share the link.

I am a little unsure of structure at the moment, but I am going to play around with it to find out.

I have been having a look at the example repos on the Binder website, and so far the binder badge on every single one has failed to load.  This is not so good... I can only keep trying.

Summary of Binder:
This seems to have its advantages and disadvantages.
Advantages:
-  Really useful for opening an environment anywhere on any machine to run a notebook
-  You can extend the badge URL to run any notebook in the repo tree from a link
-  It's exciting
Disadvantages:
-  Has a lot of bugs and issues because it's very new
-  It doesn't track changes in the repo, so you have to manually rebuild the binder when necessary
-  It can't track branches
I am still trying to find a way to make the binder track changes in the repo, but it looks at the moment like it will have to be rebuilt manually upon every release, which is not ideal.

Notes on Azure:
Don't like it.


Redesigning footer

Resize the footer size. Fix the logo size and add a link to the top.
Proper alignment of join our newsletter, email form and send button.
Aligning the send button alongside the email form for the dense look.
Fix the social media icon with proper color and hover effect.

I would like to work on this issue please assign to me under GSSoC'20.

I want to work on this issue. Please assign it to me. @Mustafiz04

If @Mustafiz04 doesn't finish in 3 days I will assign this to you.


gobject-introspection-1.56.1.tar.xz from upstream is broken

Downloading https://download.gnome.org/sources/gobject-introspection/1.56/gobject-introspection-1.56.1.tar.xz from upstream and trying to "untar" it fails:
$ brew install gobject-introspection
...
gobject-introspection-1.56.1/docs/reference/html/gi-gitypelib.html: Can't unlink already-existing object
tar: Error exit delayed from previous errors.
Error: Failure while executing: tar xJf /Users/falfaro/Library/Caches/Homebrew/gobject-introspection-1.56.1.tar.xz

Actually, it could very well be a problem with the built-in "tar" in macOS 10.14 (beta2). I tried unpacking in Ubuntu 18.10 and it works fine :-/

Think you may be right! I am running into the same problem with texi2html installing.

Probably you need to file a rdar with Apple.
Formula specific issues belong in https://github.com/Homebrew/homebrew-core/issues
Please read and fill out the issue template in future, thanks.

For the record, I've opened a bug against Apple for this particular problem.

Thanks. rdar number?

Wait, now TAR is broken on macOS? If Steve Jobs was alive for a day, he would donate all of his controlling stock to Microsoft and then happily return to his resting place...


Version bump for 2.11.5 release

Includes:

Support sysctl cookbook 0.10.0 on Chef 12.5+ ( Issues: #340 )

also pinning travis to precise.  Since trusty builds are 2x slower and are failing on ruby 2.1.4: see https://travis-ci.org/caskdata/hadoop_cookbook/builds/262076878


On branch edburns-msft-ibm-100 Update offer to use latest base images.

modified:   src/main/bicep/config.json

Hello @edburns The version needs to be bumped as a partner center update is also needed.


[Urgently!] Problem...

In our country blocked the site 7zip, please make an alternative download link!
For example: https://sourceforge.net/projects/sevenzip/files/7-Zip/
Screenshot (In Russian it is written: Unable to connect to remote server):

SORRY FOR MY BAD ENGLISH!

Duplicate of #3287


add command ChangeToCurDir and AutoChangeDirectory

add command:

ChangeToCurDir
AutoChangeDirectory: change between rooter and cur directory

I feel this is a little out of scope.


Migrate the Variables to crates/dc_bundle

This will take a bit more than just moving the declarations and fixing imports. Most of the variable types's functions use structs from figma_schema.rs. I'm unsure how much of the variable code from figma_schema.rs should be moved to dc_bundle. @rylin8 I think I'll need your help here.

@timothyfroehlich pretty sure this should be closed. Reopen if not.


Fix flake: //test/integration:overload_integration_test

Commit Message: Fix flake in overload_integration_test.
Additional Description: wait for headers so the response starts for LoadShedPointIntegrationTest.Http1ServerDispatchAbortClosesConnectionWhenResponseStarted
Risk Level: low
Testing: ran 500x
Docs Changes: na
Release Notes: na
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

/assign @phlax

/retest


[Feature Request] Full names of ontologies in Advanced Search

Is your feature request related to a problem? Please describe.
When using Advanced Search, ontologies shown in the "select ontology" dropdown menu are abbreviated.
Describe the solution you'd like
It might be nice if the full names of these ontologies are visible when, examplarily, hovering over them.
Describe alternatives you've considered
Show full names with abbreviations in brackets.
Additional context
Screenshot:

Please correct me if i am wrong, but this is already possible by hovering over the info icon on the left.

If you think this needs to be shown in another way, please let us know!

Please correct me if i am wrong, but this is already possible by hovering over the info icon on the left.

If you think this needs to be shown in another way, please let us know!


Invalid non-string/buffer chunk while writing file on server

While writing file:
Files.write(data,{
        type: 'application/pdf',
        fileName: 'sample.pdf',
        meta: {
          reference: "ref",
          version: 1
        }, function (error, fileRef) {
          if (error) {
            throw error;
          } else {
            console.log(fileRef.name + ' is successfully saved to FS. _id: ' + fileRef._id);
          }
        }
      });

The error "Invalid non-string/buffer chunk" appear with a blank file in the path.

Version of Meteor-Files 1.9.3
Version of Meteor 1.6.1
OS Linux (It work on Mac), Chrome browser
It is Server issue?

Exception in callback of async function: TypeError: invalid non-string/buffer chunk

Hello @inromualdo ,

FYI syntax highlighting
Post Server logs with enabled debug option, you can enable "debug" mode in Constructor
What you're passing as data? Where it's coming from? Could you console.log it?

Hello.
I just update Meteor to 1.6.1 and every thing work. What was the problem?

What was the problem?

What version you were on?

1.5.1

Feel free to close it in case if the issue is solved on your end.

Are you on 1.6.1 (beta) or <IP_ADDRESS> (stable)?
Take a look on Meteor's changelog to see what is changed between your updates, but I don't see any significant and related changes
Since you're on the latest Meteor release, you can update Meteor-Files package ti the latest release

Sure, there is might be a bug in Meteor or Meteor-Files package, which was recently fixed, it's always a good idea to keep packages updated.

I try to reproduce this issus but i can not.
I am on 1.6.1 in Linux before it was on 1.5.1
I will close it. If i get this problem again, i will contact with other informations

Please, support this project by:

Star on GitHub
Star on Atmosphere
Check other packages we have made
Share on Facebook and Twitter
Donate via PayPal


[SERVER][ENHANCEMENT] Add PPL to "ls" message

Add people to "ls" messages, even if "c":"true"
So seekers wouldn't be smth annoying and it could index all rooms.
also will help at mppdb if bots get banned
Example:
    {
        "m": "ls",
        "c": false,
        "u": [
            {
                "settings": {
                    "chat": true,
                    "color": "#000000",
                    "color2": "#ffffff",
                    "visible": true,
                    "noindex": false,
                    "limit": 99,
                    "crownsolo": false,
                    "no cussing": false
                },
                "ppl": [
                         {
                                  "_id": "8fe9321a7a7f5b2e04db3cc7",
                                  "name": "user",
                                  "color": "#000000",
                                  "afk": false,
                                  "id": "123456abcdef",
                                  "x": "78.00",
                                  "y": "42.00"
                        }
                ]
                "_id": "фыв",
                "id": "фыв",
                "count": 2,
                "crown": {
                    "endPos": {
                        "x": 89.21,
                        "y": 81.77812291394729
                    },
                    "startPos": {
                        "x": "89.21",
                        "y": "0.53"
                    },
                    "userId": "051c9f8e14761df1481abccc",
                    "time":<PHONE_NUMBER>507,
                    "participantId": "051c9f8e14761df1481abccc"
                },
                "banned": false
            }
        ]
    }
]```

No. Because this leaks too much information about the game, and any bad actor could enter MPP and instantly get the information of all online players. It does not make sense.
This has been talked about before.


Converting ComplexNumber[] to IEnumerable`1

(Useful code that's helped me a lot. Thanks!)
I adapted your code to use binaryformatter and protobuf. Easy enough because the lib is well designed. One thing though: I needed to add this to the DefaultValueConverter:
    public bool TryConvert(object origValue, Type destType, out object destValue)
    {
      if (origValue.GetType().GetInterfaces().Any(t => t == destType))
      {
        destValue = origValue;
        return true;
      }

for when the client makes this call:
  ComplexNumber result3 = await client.InvokeAsync(x => x.AddComplexNumbers(new[]
  {
      new ComplexNumber(0.5f, 0.4f),
      new ComplexNumber(0.2f, 0.1f),
      new ComplexNumber(0.3f, 0.5f),
  }));

Without the above code, the fault on the server is:
{System.InvalidCastException: Object must implement IConvertible.
   at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
...

Switching back to your JSON serializer, the above code is not executed and execution advances to JArray handling.
I guess the default converter is for use only with the default serializer.

Thanks for creating the issue, I'm fixing this in v1.0.2 which will be published very soon.


fix: do not append whitespace to emoji if whitespace is already present

Details

This PR fixes a regression in https://github.com/Expensify/App/pull/30412 where a whitespace was added to a pasted text even if it already had a leading or trailing white space.
Discussion here: https://github.com/Expensify/App/issues/23658#issuecomment-1797273930
Fixed Issues

$ https://github.com/Expensify/App/issues/23658
PROPOSAL:
Tests

Open any chat
Enter an emoji via native keyboard, emoji picker or short code (eg- :heart:)
Verify that the emoji gets appended by a white space.
Verify that emoji can be removed by tapping backspace.
Verify cursor is positioned properly after inserting emoji.
Verify that emoji can be inserted at the midst of text
Verify that an emoji can be copy pasted
Verify that complex emoji like '👨👩👧👦' can be added and removed.
Verify that while pasting text, white space is added only when emoji is pasted. Whitespace shouldn't be added if the pasted text has any other characters other than emoji, including whitespace.

[x] Verify that no errors appear in the JS console

Offline tests

Open any chat
Enter an emoji via native keyboard, emoji picker or short code (eg- :heart:)
Verify that the emoji gets appended by a white space.
Verify that emoji can be removed by tapping backspace.
Verify cursor is positioned properly after inserting emoji.
Verify that emoji can be inserted at the midst of text
Verify that an emoji can be copy pasted
Verify that complex emoji like '👨👩👧👦' can be added and removed.
Verify that while pasting text, white space is added only when emoji is pasted. Whitespace shouldn't be added if the pasted text has any other characters other than emoji, including whitespace.

QA Steps

Open any chat
Enter an emoji via native keyboard, emoji picker or short code (eg- :heart:)
Verify that the emoji gets appended by a white space.
Verify that emoji can be removed by tapping backspace.
Verify cursor is positioned properly after inserting emoji.
Verify that emoji can be inserted at the midst of text
Verify that an emoji can be copy pasted
Verify that complex emoji like '👨👩👧👦' can be added and removed.
Verify that while pasting text, white space is added only when emoji is pasted. Whitespace shouldn't be added if the pasted text has any other characters other than emoji, including whitespace.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/6880914/52e5b454-9171-4029-b290-65eedc8d623a

Android: mWeb Chrome

https://github.com/Expensify/App/assets/6880914/3cade01f-843b-49fe-9ca4-9e162a1de602

iOS: Native

https://github.com/Expensify/App/assets/6880914/aaf2723c-3d63-4b91-b41c-86a8bfffc37f

iOS: mWeb Safari

https://github.com/Expensify/App/assets/6880914/ff1cd89f-ac7c-470f-ba4e-4db032527e3d

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/6880914/45bd0ad0-c94b-4f1e-92db-a30d735b07fd

MacOS: Desktop

https://github.com/Expensify/App/assets/6880914/94f6abb0-d815-4d84-b9cf-ddbdb3eb6641

@aswin-s Are this PR fixing this https://github.com/Expensify/App/issues/30983 deploy blocker?

@aswin-s Are this PR fixing this #30983 deploy blocker?

Nope, it handles extra white space appended when the pasted content already contains a trailing whitespace.

@aswin-s Could you pull the latest main? Thank you!

@mollfpr Done!

Additional whitespace was added to a pasted emoji even if it already had a leading or trailing white space.
Emoji's with skin tones were getting corrupted after appending white space.

Also, I need help figuring out the changes for the above fix. Could you explain it more? Thanks!

@mollfpr Here is the explanation for the changes

Additional whitespace was added to a pasted emoji even if it already had a leading or trailing white space.

The earlier logic didn't consider if the diff from previous text had leading or trailing white space, there by appending an additional white space after emoji. This was fixed by checking if the diff indeed has leading or trailing white space and skipping the addition of white space if there is any.
Relevant Commit: https://github.com/Expensify/App/pull/30955/commits/639136ad63796d54e7c18af31b6cd769fcd4f9e4

Emoji's with skin tones were getting corrupted after appending white space.

This issue occurred because of appending whitespace immediately after a detected emoji character. However for emojis with skin tone immediately after the actual emoji there were additional unicode characters that denoted what the skin tone is. By simply adding a white space after the original emoji and then followed by the skin tone unicode characters the emoji itself got corrupted. In the fix I made sure that the entire emoji length is taken into consideration before appending white space.
Relevant Commit: https://github.com/Expensify/App/pull/30955/commits/6062753ff9e20bae3f6f1ca1623c55c4f63ff1c3

@mollfpr Waiting for your feedback

@aswin-s Most cases seem to be working fine, but I have one issue with pasting only an emoji next to another, which doesn't add a whitespace after it. It works fine by pasting an emoji next to a text.
https://github.com/Expensify/App/assets/25520267/d28ca1a4-d806-4e15-a40c-cb13ca8f943e
Also, could you resolve the conflict? Thanks!

@mollfpr Fixed and retested all scenarios.
https://github.com/Expensify/App/assets/6880914/5d7e5c4b-53ee-43b7-ba50-c19bc5b885ca

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Looks good, one more thought: is this code performing well on an input of 100k chars?

Yep, tested with 100K characters and performing well.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/flodnv in version: 1.4.33-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/francoisl in version: 1.4.33-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


C# syntax not working as expected

VSCode Version: 1.2.1
OS Version: Mac OS X 10.11.5
Steps to Reproduce:

Download and install the onnisharp extension;
Just try to copy and paste some C# code;
Look at the source;

The code is not properly highlighted.

The theme is Monokai

Hi! Which bits are not properly highlighted? It looks to me like all syntactic highlighting in your screenshots is correct. It's true that semantic highlighting of type names (e.g. "Console", "Person", etc.) is not supported yet. We're tracking that with #222.
Please feel free to re-open if I missed something obvious in your screenshots.

Ok, I haven't previously seen #222


cleanup: improve directory_test

The directory test didn't cleanup the directories created during the test, causing repeated runs of project/make.sh tests to fail.
This refactors the tests to make sure the directories are removed afterwards.
Also, fixed paths (/tmp/...) are replaced by os.TempDir() and filepath.Join() to make the tests platform independent.

needs rebase sorry :(

@jfrazelle yup, even not sure if this is still relevant; there are some other proposals currently up in this area. Will check tonight, otherwise close this one :)

Closing this for now to cleanup outstanding PRs and I didn't have time yet to rebase and check if it's still relevant. Will reopen if it still is.


add hexo generate --concurrency option

Check List
Please read and check followings before submitting a PR.

[ ] I want to publish my theme on Hexo official website.

[ ] I have read the theme publishing doc.
[ ] link URL is correct.
[ ] preview URL is correct.
[ ] preview URL web site is rendered correctly.
[ ] Add a screenshot to source/themes/screenshots.
[ ] Screenshot filename is same as value of name.
[ ] Screenshot size is 800 * 500.
[ ] Screenshot file format is png.

[ ] I want to publish my plugin on Hexo official website.

[ ] I have read the plugin publishing doc.
[ ] link URL is correct.

[x] Others (Update, fix, translation, etc...)

#1046

Dear all
Please do not merge yet. This PR for v4.0.0


MFA with wrong answer should return question/device response

When answering an MFA (question or device type) with the wrong answer the API responds with an empty APIList (Banks) object. When I output the contents of banks.api_method it shows that the response is the same as the link call where it returns the question. I take it the gem should be updated to handle this case no? To replicate in Sandbox mode use the following in a IRB console:
require 'synapse_pay'

# Set your SynapsePay credentials

client = SynapsePay::User.create({
  :email =><EMAIL_ADDRESS>  :fullname => "Test Account",
  :ip_address => "<IP_ADDRESS>",
  :phonenumber => "123456789"
})

mfa = client.banks.link({
  :username => "synapse_good",
  :password => "test1234",
  :bank => "Bank of America"
})

banks = mfa.answer("Bank of America", "wrong-test_answer")

The banks variable above will be an empty APIList instance:
=> #<SynapsePay::APIList[SynapsePay::Bank]:0x3ff951cb6bc0> Data: [

]

But if you run the following you'll see that the json contents are the same response as the link call.
pp banks.api_method

prints out:
 @json=
  {:is_mfa=>true,
   :response=>
    {:access_token=>"...",
     :cookies=>"",
     :form_extra=>"",
     :mfa=>
      [{:question=>
         "I heard you like questions so we put a question in your question?"}],
     :type=>"questions"},
   :success=>true},

I expected the server to return an error on this case, which is why we weren't looking to parse the response into anything but an error object if the answer was wrong. Let me run this by a few others to see what they think, but thanks for pointing it out.

Reading the blog post on MFA, in the Mapping Resources section it suggests that another question can be returned so this definitely needs to be updated to handle different cases.
"... If another question is returned, follow the same steps."

Looks like we need some detail here @sankaet on what to expect. I've been meaning to ask but it seems that yes, it is possible to receive multiple questions but not in the same response but rather after answering the first question I might get a second question as part of the MFA process.

This should be resolved in the latest version (0.0.8). Thanks for pointing it out!


chore: upgrade @ossjs/release

Released: v1.4.1 🎉
This has been released in v1.4.1!

📄 Release notes
📦 npm package

Make sure to always update to the latest version (npm i outvariant@latest) to get the newest features and bug fixes.

Predictable release automation by @ossjs/release.


Support for TypeScript's suggestion diagnostics

See https://github.com/Microsoft/TypeScript/pull/22204
We need to support the new suggest diagnostics level from TypeScript. These diagnostics will be used to show places where a refactoring style code fix is available, such as convert es5 function to es6 class. We can also use these to indicate potential problems in files even if these are not errors  or warnings, such as marking unused local even when noUnusedLocals is not set
This work item covers both the adoption of ts suggestion diagnostics plus the UX work on the vscode side to make sure we present these diagnostics well

Fixed by #45433


Add note about running spellbot in dev mode

Description
Adds a short note recommending using the --dev flag when contributing to SpellBot's development.
Might not be needed since --help lists it as an option, but figured it'd be good to call out the main flag you'd run for development.
Checklist

[ ] Add tests for these changes
[x] Test coverage is not decreased
[x] Entire test suite passes

Codecov Report

Merging #126 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #126   +/-   ##
=======================================
  Coverage   97.17%   97.17%
=======================================
  Files          21       21
  Lines        1309     1309
  Branches      215      215
=======================================
  Hits         1272     1272
  Misses         21       21
  Partials       16       16

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 c8a3962...f3614f2. Read the comment docs.


updated README

Thank you kind redditor, my loafy loaf brain can't remember to do that. May big chungus Keanu Reeves be with you!

No worries, I've got your back, brother.


[BP-1.16][FLINK-30881][ci] Replaces optional minikube installation by mandatory removal

1.16 backport PR of parent PR #21834
What is the purpose of the change
The goal is to fix the Minikube version instead of relying on the Minikube version that's provided by the AzureCI Docker image.
Brief change log

Removes any minikube version that's not matching the required version
Installs the expected minikube version

Verifying this change

Normal ci run with k8s tests should pass

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, Kubernetes/Yarn, 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

@wangyang0918 approved this approach in the 1.15 backport PR #21837


Ship Avro Serialization Interface and Implementation

Add an interface layer into Azure Core which adds support for a pluggable Avro serialization layer. The purpose of this interface isn't to replace all Azure SDK serialization, it only covers scenarios where SDKs are interacting with customer POJOs. In addition to the interface layer an implementation should be shipped, the target implementation is Apache Avro with the possibility of Jackson Avro.

There have been beta releases for this but need to get final API review.


Updates for OSX testing for OpenJ9

This is also to allow running of functional test suites, subsets of which we may eventually want to use at AdoptOpenJDK for all implementations.

Related https://github.com/eclipse/openj9/pull/3494


tracking using wandb

@muellerzr
Hello!
I have a look into tracking using acceleraor
using wandb or tensorboard for this script
I am getting the warning
python3.9/site-packages/accelerate/accelerator.py:205: UserWarning: log_with=wandb was passed but no supported trackers are currently installed.
How to install the trckers? Do I miss something?

yes I just pay attention to this now I am very sorry. but I have another issue now))) it is not related to accelerate
huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...

the new issue can be solved adding to the main script this solution
closing


terraform-provider-kubectl 1.6.2

Creating package terraform-provider-kubectl in version v1.6.2.

It looks like the binaries may have moved within the package in this release:

==> Installing terraform-provider-kubectl...
Error: chmod /usr/local/gofish/Barrel/terraform-provider-kubectl/1.6.2/terraform-provider-kubectl: no such file or directory

Would you mind looking into this?


:bug: Remove defunct GTC recreation areas

Description
Oroville, Hamilton, and Yukon recreation areas appear to no longer be GoingToCamp customers and their sites are down.
Has This Been Tested?
Yes -- a campground list was performed on all remaining GTC recreation areas.
Checklist:

[x] I've read the contributing guidelines of this project
[x] I've installed and used .pre_commit on all my code
[x] I have documented my code, particularly in hard-to-understand areas
[x] I have made any necessary corresponding changes to the documentation

:tada: This PR is included in version 0.13.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


docs: invenio.base package addition

FIX Adds invenio.base package to the config.py file for a custom overlay in the docs
Signed-off-by: Jan Stypka<EMAIL_ADDRESS>

Improved commit message example:

docs: invenio.base package addition
## empty line
* FIX Adds missing `invenio.base` package to the `config.py` file for a custom overlay in the docs.  ## Break before 72 chars.
## empty line
Signed-off-by: you
Reviewed-by: Jiri Kuncar<EMAIL_ADDRESS>

Please rebase on top of maint-2.0 and re-push to the same PR.

$ git fetch upstream
$ git rebase upstream/maint-2.0
$ git commit --amend
# paste my example commit message
$ git push origin master -f

NOTE Always use topical branches - never write code in master branch.
--
cc @kaplun

@jstypka please fix minor commit message formatting issue:
-for a custom overlay in the docs.
+  for a custom overlay in the docs.


Fix Generate Sets Errors

Issue #, if available:
Description of changes:
Fix Generate Sets Errors
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

This seems overlapping with PR #18

Yes, I can remove these files from this PR.


saned network daemon non-functional with USB scanner

Describe the bug
I have a USB scanner (Fujitsu S1500) attached to a NixOS server, and I've configured services.saned to use this scanner over the network. However, after configuring the saned service, the scanner could not be found over the network, nor locally for users in the scanner group.

scanimage -L on the localhost as root user can find the scanner
scanimage -L on the localhost as my user (in the scanner group) cannot find the scanner
sudo -u scanner scanimage -L on the localhost as the dedicated scanner users cannot find the scanner
scanimage -L on a remote host cannot find the scanner (the host is configured correctly to search the scanner server)

Note that the systemd service is configured to run with user/group scanner (case 3), so the service itself is unable to access the scanner, which explains why remote access fails.
I believe it's a device file permission issue, given the examples above. This server was previously a Debian host that I just converted to NixOS and the same configuration was working there without any issue. In the Context section below I've included a possible solution that addresses the permission problem.
Steps To Reproduce
Note that there are also some firewall problems which I'll add as a separate issue, which only effect remote access of course. Local access is enough to resolve the issue, but of wanting to test the network access I'd disable the firewall.
Steps to reproduce the behavior:

Connect a USB scanner that is supported by sane
Enable and configure services.saned on a remote server with extraConfig allowing the local network
Enable and configure hardware.sane on a client with netConf set to the remote server
Run scanimage -L from the client and observe it cannot find any scanners. Watching journalctl on the server for saned@ logs will show the client connecting
Run scanimage -L locally from the server with a user in the scanner group, observe it cannot find any scanners
Run as root or sudo scanimage -L and observe the the root user can find the scanner

Here are snippets of the configurations:
Server:
{
  hardware.sane = {
    enable = true;
    disabledDefaultBackends = [
      "net"
      "escl"
    ];
  };

  services.saned = {
    enable = true;
    extraConfig = ''
      <IP_ADDRESS>/24
    '';
  };
}

Here are examples of the commands showing the results above.

> lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 023: ID 04c5:11a2 Fujitsu, Ltd ScanSnap S1500
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

> ls -l /dev/bus/usb/*/*
crw-rw-r-- 1 root root 189,   0 Dec  3 17:44 /dev/bus/usb/001/001
crw-rw-r-- 1 root root 189,   1 Dec  3 17:44 /dev/bus/usb/001/002
crw-rw-r-- 1 root root 189,  22 Dec  4 22:39 /dev/bus/usb/001/023
crw-rw-r-- 1 root root 189, 128 Dec  3 17:44 /dev/bus/usb/002/001

> getfacl /dev/bus/usb/001/023
getfacl: Removing leading '/' from absolute path names
# file: dev/bus/usb/001/023
# owner: root
# group: root
user::rw-
group::rw-
other::r--

> groups
myuser wheel lp dialout scanner

> scanimage -L --verbose

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

 sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.
  # Also you need support for SCSI Generic (sg) in your operating system.
  # If using Linux, try "modprobe sg".

could not open USB device 0x1d6b/0x0003 at 002:001: Access denied (insufficient permissions)
could not open USB device 0x04c5/0x11a2 at 001:023: Access denied (insufficient permissions)
could not open USB device 0x0a12/0x0001 at 001:002: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 001:001: Access denied (insufficient permissions)
  # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

  # You may want to run this program as root to find all devices. Once you
  # found the scanner devices, be sure to adjust access permissions as
  # necessary.

> sudo scanimage -L
device `fujitsu:ScanSnap S1500:44380' is a FUJITSU ScanSnap S1500 scanner

> sudo sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.
  # Also you need support for SCSI Generic (sg) in your operating system.
  # If using Linux, try "modprobe sg".

could not fetch string descriptor: Pipe error
could not fetch string descriptor: Pipe error
found possible USB scanner (vendor=0x04c5, product=0x11a2) at libusb:001:023
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

> id scanner
uid=59(scanner) gid=59(scanner) groups=59(scanner),20(lp),989(avahi)

> sudo -u scanner scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

> sudo -u scanner sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.
  # Also you need support for SCSI Generic (sg) in your operating system.
  # If using Linux, try "modprobe sg".

could not open USB device 0x1d6b/0x0003 at 002:001: Access denied (insufficient permissions)
could not open USB device 0x04c5/0x11a2 at 001:023: Access denied (insufficient permissions)
could not open USB device 0x0a12/0x0001 at 001:002: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 001:001: Access denied (insufficient permissions)
  # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

  # You may want to run this program as root to find all devices. Once you
  # found the scanner devices, be sure to adjust access permissions as
  # necessary.

Expected behavior

Enabling and configuring hardware.sane should allow a local user in the scanner group to see a locally connected USB scanner
Enabling and configuring services.saned on a host should allow its local USB scanner to be remotely accessible

Additional context
As I mentioned previously, this looks like a permission problem. The USB device paths are all owned by root:root with no user write access. I noticed there were previous issues about permissions that caused problems with printers, so chmoding the device paths as scanner:scanner was removed from the udev rules. However, the replacement looks to be to use ACLs instead. I compared this to my Debian configuration, and noticed it packages an extra udev rule which runs setfacl on the device path which gives the scanner user write access and ability to find the scanner:
https://sources.debian.org/src/sane-backends/1.3.0-1/debian/99-libsane1.rules/
ENV{DEVNAME}!="", ENV{libsane_matched}=="yes", RUN+="/bin/setfacl -m g:scanner:rw $env{DEVNAME}"

sane-desc from sane-backends also adds the same rule in its udev+acl rule generator, but this seems to be out of favor as the hwdb config is preferred (and there's no hwdb+acl or standalone acl generator). So I assume this is why Debian shipped their own rules file. Presumably this doesn't conflict with the mentioned printer permission problems.
I copied the rule verbatim into my configuration, this solved all the problems listed above:
{
  services.udev.extraRules = ''
    ENV{DEVNAME}!="", ENV{libsane_matched}=="yes", RUN+="${pkgs.acl}/bin/setfacl -m g:scanner:rw $env{DEVNAME}"
  '';
}

After doing so the device path is still owned by root:root but has added ACLs that allow access from the scanner user:
> lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 024: ID 04c5:11a2 Fujitsu, Ltd ScanSnap S1500
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

> getfacl /dev/bus/usb/001/024
getfacl: Removing leading '/' from absolute path names
# file: dev/bus/usb/001/024
# owner: root
# group: root
user::rw-
group::rw-
group:scanner:rw-
mask::rw-
other::r--

> sudo -u scanner scanimage -L
device `fujitsu:ScanSnap S1500:44380' is a FUJITSU ScanSnap S1500 scanner

Now any scanner group users and remote clients are able to find and use the scanner.
I don't know if there are any downsides to this approach, but it is the Debian solution.
Metadata
Server:

system: "x86_64-linux"
host os: Linux 6.6.63, NixOS, 25.05 (Warbler), 25.05.20241203.55d15ad
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.24.10
nixpkgs: /nix/store/vqhkmj60457j8nrw9vb94ln40rkic1p6-source

Client:

system: "x86_64-linux"
host os: Linux 6.12.1, NixOS, 25.05 (Warbler), 25.05.20241203.55d15ad
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.24.10
nixpkgs: /nix/store/vqhkmj60457j8nrw9vb94ln40rkic1p6-source

Notify maintainers
@symphorien

Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

Hi,
Thank you for you detailed report.
Current setup works as follows:

the hwdb file provided by sane backends (/nix/store/5cigs4wr45k0ixi9rj6xf16x1zr7z02w-sane-backends-1.3.1/etc/udev/hwdb.d/20-sane.hwdb ) adds the tag libsane_matched to the device
this builtin udev rule grants the tag uaccess https://github.com/systemd/systemd/blob/main/rules.d/70-uaccess.rules.in#L20
this makes systemd or logind run add an ACL on the device file which grants read/write access to the device to any physically logged-in user

This is partially visible on my system by running

sudo udevadm test /dev/bus/usb/001/029  reports the uaccess tag. This command also logs that the hwdb key for this device is usb:v04A9p1854:TR4500 series
systemd-hwdb query usb:v04A9p1854:TR4500 series reports that hwdb knows the device as libsane_matched=yes

As a result on my system I get these acls
$  getfacl /dev/bus/usb/001/029
getfacl : suppression du premier « / » des noms de chemins absolus
# file: dev/bus/usb/001/029
# owner: root
# group: lp
user::rw-
user:symphorien:rw-
group::rw-
mask::rw-
other::r--

You report that neither the user saned run as and your (presumably non-system, graphically and physically logged-in) user have permission for the scanner.
If this is the case there are two separate problems:

your scanner did not get the uaccess tag, so your user does not have access to the device
the user saned runs as is not a normal user and does not benefit from the uaccess mechanism.

About the first problem.
Can you confirm that your device does not get the uaccess tag with the udevadmn command I indicated above?
I checked and the output result/etc/udev/hwdb.d/10-sane.hwdb file of sane-backend does contain your scanner. Does
systemd-hwdb query usb:v04C5p11A2

return a result with libsane_matched=yes ?
About the second problem
Indeed one more udev rule would be indicated, and other distros do it. You found it for debian, here is arch for another example https://gitlab.archlinux.org/archlinux/packaging/packages/sane/-/blob/main/66-saned.rules?ref_type=heads
Before doing such a change I'd like to reproduce you issue on my machine. This will take some time.

Interestingly I don't get your issue because my printer matches this udev rule from systemd: /nix/store/3abwqv1a1bdycmgaydzfw3a0qzxwk8am-systemd-256.8/lib/udev/rules.d/50-udev-default.rules:86
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"

which changes the group of the printer to lp, and the scanner user belongs to the lp group.
I can reproduce the issue by removing the scanner user from the lp group

Please test https://github.com/NixOS/nixpkgs/pull/367198
Thank you again for you detailed bug report.


Couple of clarifications would be helpful

Details
the following command would fail if .kube does not exist, so it might be helpful to suggest sudo mkdir var/lib/jenkins/.kube/
sudo cp ~/.kube/config /var/lib/jenkins/.kube/
It's not clear what the purpose of running the following command.
When I see 777 it's usually a red flag from the security point of view.
sudo chmod 777 /var/lib/jenkins/
sudo chmod 777 /var/lib/jenkins/config

is the path correct /var/lib/jenkins/config? this file doesn't exist. Did you mean /var/lib/jenkins/.kube/config?
In the examples where the following placeholder is used <Resource_Group>  it can be better to include prefix for better clarity e.g. <AKS__Resource_Group> or <ACR_Resource_Group>
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 15c8677e-3fcd-56c0-fa71-64d758a02ca8
Version Independent ID: ffb63abe-0c37-4c6c-0560-3e2df33e7e5b
Content: Tutorial - Deploy from GitHub to Azure Kubernetes Service using Jenkins
Content Source: articles/jenkins/deploy-from-github-to-aks.md
Service: jenkins
GitHub Login: @Duffney
Microsoft Alias: tarcher

@kfilimon  Thank you for your feedback. As our current Jenkins support is limited to security fixes, we're closing this Issue.


proper translation components, now available

I did not test this at all so it might be a bit scuffed. Translation components of inputs/outputs for spells will come in a later PR.

You've been busy!


issue with google-auth.js

pi@raspberrypi:~/MagicMirror/modules/MMM-Assistant $ node google-auth.js
internal/modules/cjs/loader.js:550
    throw err;
    ^

Error: Cannot find module '/home/pi/MagicMirror/modules/MMM-Assistant/google-auth.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:548:15)
    at Function.Module._load (internal/modules/cjs/loader.js:475:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:695:10)
    at startup (internal/bootstrap/node.js:201:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:516:3)

sorry if i shouln't open a new topic on this...but can someone help me here?

thanks for your reply! managed to locate it and run it but now i get this
~/MagicMirror/modules/MMM-Assistant/scripts $ node google-auth.js/home/pi/MagicMirror/modules/MMM-Assistant/node_modules/google-assistant/components/auth.js:18
    throw new Error('Missing "keyFilePath" from config (should be where your JSON file is)');
    ^

Error: Missing "keyFilePath" from config (should be where your JSON file is)
    at new Auth (/home/pi/MagicMirror/modules/MMM-Assistant/node_modules/google-assistant/components/auth.js:18:11)
    at new GoogleAssistant (/home/pi/MagicMirror/modules/MMM-Assistant/node_modules/google-assistant/index.js:21:16)
    at Object.<anonymous> (/home/pi/MagicMirror/modules/MMM-Assistant/scripts/google-auth.js:27:19)
    at Module._compile (internal/modules/cjs/loader.js:654:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
    at Module.load (internal/modules/cjs/loader.js:566:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
    at Function.Module._load (internal/modules/cjs/loader.js:498:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:695:10)
    at startup (internal/bootstrap/node.js:201:19)

i tried editting the google-auth.js as stated in another thread, and now i get this
node google-auth.js
/home/pi/MagicMirror/modules/MMM-Assistant/scripts/google-auth.js:27
const assistant = new GoogleAssistant(config)
^^^^^

SyntaxError: Unexpected token const
    at new Script (vm.js:51:7)
    at createScript (vm.js:136:10)
    at Object.runInThisContext (vm.js:197:10)
    at Module._compile (internal/modules/cjs/loader.js:618:28)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
    at Module.load (internal/modules/cjs/loader.js:566:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
    at Function.Module._load (internal/modules/cjs/loader.js:498:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:695:10)
    at startup (internal/bootstrap/node.js:201:19)

sorry for making you deal with a noob like me!

i changed it to this
const config = {
    keyFilePath: path.resolve(__dirname,     '../assets/google-client-secret.json'), // secret.json
    savedTokensPath: path.resolve(__dirname, '../assets/google-access-tokens.json'), // resources/tokens.js
}

I got the secret.json downloaded after enabling api's and setting ownership on google according to the wiki page, and renamed it to google-client-secret.json seeing how that's labelled within the google-auth.js file.  i also placed it in the scripts folder.  I don't have the access token as I can't get google-auth.js working

I've just updated the script, so please get the latest version.
Then do this:
# From module home directory
rm assets/google-access-tokens.json
cd scripts
node google-auth.js

There will be an error after the url is shown. Just ignore that (it is not related to our script) and paste the key token from the Google request page anyway. Now the file should be created and working.

that worked now thank you so much!

during the installtion of the module I got this error
><EMAIL_ADDRESS>install /home/pi/MagicMirror/modules/MMM-Assistant/node_modules/snowboy
> node-pre-gyp install --fallback-to-build

node-pre-gyp ERR! Tried to download(403): https://snowboy-release-node.s3-us-west-2.amazonaws.com/snowboy/v1.2.0/Release/snowboy-v1.2.0-node-v59-linux-arm.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for<EMAIL_ADDRESS>and<EMAIL_ADDRESS>(node-v59 ABI, glibc) (falling back to source compile with node-gyp)

it's not an issue is it?

No, just let it compile. It can take up to 12 minutes!


Shortcut to buy per stack

Hi everyone,
Is it possible, with a shop admin, to sell/buy by one item but with sneak for example to sell/buy a stack ?
For example, I created an admin shop that buy to player an Oak Wood for 1$ and sell it to 10$. Now imagine a player 64 items of Oak wood. Can he sell it in one time or does he have to click 64 time on the shop ?
Thanks in advance

Thank you for your commit, it works a half xD
Sneak + right click works
Sneak + lef click does not

I know, but since sneak and break removes a shop, I will need to remove that feature.
It's the same as when you try breaking a shop without sneaking, you will also sell to the shop once instead of just removing it.

Is it necessary to have sneak + break to remove a shop ? The command /shop remove is good enough

I think I'll keep that feature but only if you got an axe in your hand, so your can not sell a stack of something with an axe in your hand but can break a shop with it (while sneaking). You will still be able to sell items with an axe in your hand as long as you're not sneaking.

Not a bad idea :)


ImageTracking demo doesn't work

Describe the bug

To Reproduce
Steps to reproduce the behavior:

go to : https://ar-js-org.github.io/AR.js/aframe/examples/image-tracking/nft/
open the console :)

Expected behavior
The asset should be loaded and the demo should start
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: windows 11 64bit
Browser chrome
Version 114

Smartphone (please complete the following information):

Device: oneplus10
OS: android (not sure about the version)
Browser chrome
Version 114

I have the same issue, It just says 'loading, please wait'

I have the same issue, Also updated the script tag to the latest version link, but the same problem.


docs: Add badges to readme

Add relevant badges to readme

Codecov Report

Merging #103 (f5f8d14) into master (17007eb) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #103   +/-   ##
=======================================
  Coverage   81.57%   81.57%
=======================================
  Files          14       14
  Lines         445      445
=======================================
  Hits          363      363
  Misses         62       62
  Partials       20       20

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 17007eb...f5f8d14. Read the comment docs.


Update error-reserved-resource-name.md

Was missing one of the names:
https://msazure.visualstudio.com/One/_workitems/edit/15667718

@tfitzmac if you can take a look.
@jennyhunter-msft fyi

@tfitzmac
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


Inform reader about "Port 5000 already in use" on MacOS Monterrey & Its Solution

File: compose/gettingstarted.md
When attempting to run docker-compose up on MacOS Monterrey with default OS settings applied, an error occurs due to port 5000 being in use. This is due to the default setting of the "AirPlay Receiver" being enabled which uses port 5000.
This article shows the solution: https://anandtripathi5.medium.com/port-5000-already-in-use-macos-monterey-issue-d86b02edd36c

@RedHoodedWraith Thanks for this! Also thanks for linking the article!
@StefanScherer seems port 5000 has been hijacked by MacOS Monterrey, I saw that you updated the docs to use port 5000 in this PR: #12559, is there some alternative port I could update the docs to use? Maybe port 6000?

Thanks @RedHoodedWraith and @danBamikiya for the heads-up.
Indeed, the "AirPlay Receiver" uses the port 5000.
I had a look at https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers, port 6000 is officially reserved, I think I'll take port 4000 and update the getting started guide.

Thanks @RedHoodedWraith and @danBamikiya for the heads-up.
Indeed, the "AirPlay Receiver" uses the port 5000.
I had a look at https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers, port 6000 is officially reserved, I think I'll take port 4000 and update the getting started guide.

Oh that's great! Didn't know about the https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers wiki page. Learnt something new today 🎉

You're welcome! Just made a PR, using port 8000 on the host (reverting some of my changes of the other PR).


Review RMQ's log embeds

Now that we've separated out the mod event & user event logs, it's surfaced that RMQ is currently using the modlog channel for its own logging information:
https://github.com/python-discord/bot/blob/fc0d8fb1eff4d18c11da8340d8bd8f5941c4f196/bot/cogs/rmq.py#L109-L114

Do we still want these here, or should they go into a different channel?

Closing this as RMQ is getting removed


[Error_Handling] :: Unhandled Rejection/Catch TypeError: channel.send is not a function

 [Error_Handling] :: Unhandled Rejection/Catch
TypeError: channel.send is not a function

how to fix this

can you show screenshot of error ? so i can know which file cause error

Hi,

Please check the image for Full erro,

when I enter /play it giving error and bot not playing any music


Challenge 3, Chuck Norris Joke

Hi guys, this is my code
https://github.com/cmariofonseca/Chanllege3/tree/master/chuckNorrisJoke

Hi @cmariofonseca  :1st_place_medal: , You are the first one... Congratulations :confetti_ball:
Great solution  :heart_eyes_cat: , i little tip, you can import only the operator that you use,  like
import 'rxjs/add/operator/map';   and reduce the charge of the files.


Update ruby version

Description

upgraded ruby to version 2.7.2
upgraded gem mimemagic due to licensing change

closed by #94


[5.1 04-24] [ModuleInterface] Rename 'parseable interface' to 'module interface' in diagnostics

I missed a couple of commits when cherry-picking #23969 to 5.1 in #24053.
Reviewed originally by @jrose-apple and @nathawes

@swift-ci please test


Update Jax Quickstart for pmap, remat

There’s a separate pmap cookbook notebook but adding pmap and maybe even remat to the Jax Quickstart would showcase more of what Jax can offer.
This would require switching the notebook to a Cloud TPU Colab. @skye you shared this idea earlier this year offline (@mattjj was cc’ed) , getting back to you now (at last). Let me know what you think, I can start working on PR. Cheers

That sounds like a great idea! In the spirit of making smaller easier-to-review changes, how about starting with just pmap?
One thing I'm less sure of is if there are any downsides to using a Cloud TPU colab for the quickstart. @jekbradbury @skye WDYT?

Thanks @mattjj Adding only pmap for now makes sense. Will work on it.

I think it would be best it at least the majority of the quickstart notebook can run on any platform. It's great to show off Cloud TPUs, but most people getting started with JAX probably won't be using them, and I wouldn't want them to think they need to be using TPUs for JAX to be worthwhile.

I like the idea of switching to Cloud TPU + adding pmap. I'm imagining putting it at the end so the rest of the notebook runs on any colab platform, with a little blurb explaining this will work on any platform if you have enough devices. You can even put an assert like:
assert jax.device_count() >= 4  # or however many devices the example needs

The main downside I see is that Cloud TPU requires putting the preamble at the top to switch to the new TPU driver, which I think will break on other platforms. There might be a colab env var or something we can check to conditionally run the preamble only on a TPU colab, I can look into this if it'd be helpful. I'd also be ok just putting the preamble collapsed by default and explaining it should be removed for non-TPU platforms.


only call DubboBootstrap.reset(); once to make the test faster

What is the purpose of the change
The propose of this change is to make tests run faster. DubboBootstrap is only used once in the test org.apache.dubbo.generic.GenericServiceTest. There are five tests in the test class org.apache.dubbo.generic.GenericServiceTest. However, only testGenericCompatible tries to modify with DubboBootstrap and other four tests are not dealing with DubboBootstrap. Repeatly calling DubboBootstrap.reset(); may cause a big cost in time. On our local machine, the time can jump from 4.281 s to 1.429 s.
Brief changelog
Change the @BeforeEach annotation to @AfterEach annotation to only call DubboBootstrap.reset(); once.
Verifying this change
We confirm that if make this change, the test run time can jump from 4.281 s to 1.429 s.

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (5554706) 69.47% compared to head (f4ff788) 69.46%.

Additional details and impacted files
@@             Coverage Diff              @@
##                3.2   #13466      +/-   ##
============================================
- Coverage     69.47%   69.46%   -0.01%
  Complexity        2        2
============================================
  Files          1655     1655
  Lines         71701    71701
  Branches      10278    10278
============================================
- Hits          49812    49810       -2
- Misses        17174    17182       +8
+ Partials       4715     4709       -6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


PWA-704 increased the productList initial limit to force the user to scroll to get more products

Pull Request Test Coverage Report for Build 1123

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 0.0%

Totals

Change from base Build 1116:
0.0%

Covered Lines:
0

Relevant Lines:
5406

💛  - Coveralls


Add the geo_att analysis code

Creates a new type of geographic analysis "geo_att" that analyzes the geographic origins of images depending on the attributes of the individuals featured.

The comments from 5/23 should now be resolved within the new commits.


world.view causes world.get to panic even if the view is never used

Consider the following example:
      struct CompA {};
      struct CompB {
         reference_to_a: hecs::Entity
      };
      let mut world = hecs::World::new();
      let a_entity = world.spawn((CompA {},));
      world.spawn((CompB { reference_to_a: a_entity },));
      let mut comp_a_view = world.view::<(&mut CompA)>();
      fn nested_function(
         world: &hecs::World,
         b: &mut CompB
      ) {
         let aref = b.reference_to_a;
         let Ok(a) = world.get::<&mut CompA>(aref) else { // <- panics with: "CompA already borrowed"
            return;
         };
         // do something with a...
      }
      for (e, b) in &mut world.query::<(&mut CompB)>() {
         nested_function(&world, b)
      }

This causes panic even though comp_a_view has not been used to borrow components from the world for actual usage. Is there a reason why this should not be allowed if we consider the Rust borrowing rules?
This is a pretty scary footgun since often it can be useful and ergonomic to declare multiple views on a higher level when we consider the function call stack. On a high level, you can create many queries that make use of the same view that lives in the same scope as the queries. Then, inside the queries' scope, helper functions are called that can go very deep in the function call stack. If one of these helper functions accidentally access a component that is being held by a view, you get a panic. It is an easy mistake to make in a complex scenario because you only see it during runtime when one of these helper functions happen to violate this rule.
In this example, the comp_a_view is used in two queries to compute some data, then it is never used again. However, when we access CompA in the following query which is unrelated to comp_a_view (comp_a_view is never used again after this point) we still get a panic:
      struct CompA {
         data: usize
      };
      struct CompB {
         reference_to_a: hecs::Entity
      };
      let mut world = hecs::World::new();
      let a_entity = world.spawn((CompA { data: 0 },));
      world.spawn((CompB { reference_to_a: a_entity },));

      fn nested_function(
         world: &hecs::World,
         b: &mut CompB
      ) {
         let aref = b.reference_to_a;
         let Ok(a) = world.get::<&mut CompA>(aref) else { // <- panics with: "CompA already borrowed"
            return;
         };
         // do something with a...
      }

      let mut comp_a_view = world.view::<(&mut CompA)>();
      for (e, a) in comp_a_view.iter_mut() {
         a.data += 1
      }
      for (e, a) in comp_a_view.iter_mut() {
         a.data += 2
      }

      for (e, b) in &mut world.query::<(&mut CompB)>() {
         nested_function(&world, b)
      }

This is intended behavior. A view is a borrow of all components that it exposes.  Instead, create views directly when and where they are needed, and drop them afterwards, like any other borrow.
If you only want to borrow for the duration of access to an individual component, use World::get instead of views. That's what it's for. Views exist expressly to avoid the extra overhead this incurs by doing all the borrows once, up front. It is not even possible to borrow in View::get, because it doesn't return a smart pointer as would be necessary to know when it's safe to release a borrow.
If this was unclear, documentation PRs would be welcome!


🐛 Bug Report: Plugin Azure pipeline error on action integration

📜 Description
When trying to integrate a plugin for azure pipelines in the scaffolder.ts it looks like it isn't possible.
Type 'ScmIntegrations' is not assignable to type 'ScmIntegrationRegistry'
It's the following plugin:
scaffolder-backend-module-azure-pipelines
👍 Expected behavior
Property integrations should be of a different type than it's used in this example. The situation now is that the const actions doesnt understand how to do the pipeline actions
const integrations = ScmIntegrations.fromConfig(env.config);
const actions = [
    builtInActions,
    createAzurePipelineAction({ integrations }),
    permitAzurePipelineAction({ integrations }),
    runAzurePipelineAction({ integrations })
  ]

👎 Actual Behavior with Screenshots
I put down my backend/src/plugins/scaffolder.ts below and the error message I get is:
Type 'ScmIntegrations' is not assignable to type 'ScmIntegrationRegistry'
import { CatalogClient } from '@backstage/catalog-client';
import { createRouter } from '@backstage/plugin-scaffolder-backend';
import { createBuiltinActions } from '@backstage/plugin-scaffolder-backend';
import { ScmIntegrations} from '@backstage/integration';
import { Router } from 'express';
import {
  createAzurePipelineAction,
  permitAzurePipelineAction,
  runAzurePipelineAction,
} from "@parfuemerie-douglas/scaffolder-backend-module-azure-pipelines";

import type { PluginEnvironment } from '../types';

export default async function createPlugin(
  env: PluginEnvironment,
): Promise<Router> {
  const catalogClient = new CatalogClient({
    discoveryApi: env.discovery,
  });
  const integrations = ScmIntegrations.fromConfig(env.config);
  const builtInActions = createBuiltinActions({
    integrations,
    catalogClient,
    config: env.config,
    reader: env.reader,
  });

  const actions = [
    builtInActions,
    createAzurePipelineAction({ integrations }),
    permitAzurePipelineAction({ integrations }),
    runAzurePipelineAction({ integrations })
  ]
  return await createRouter({
    actions,
    logger: env.logger,
    config: env.config,
    database: env.database,
    reader: env.reader,
    catalogClient,
    identity: env.identity,
  });
}

👟 Reproduction steps
I integrated the plugin like so
scaffolder-backend-module-azure-pipelines
📃 Provide the context for the Bug.
I was looking for a plugin to have more interaction with azure pipelines and found this one.
scaffolder-backend-module-azure-pipelines
However when I try to implement it the functions require an ScmRegistry to be added, but my integrations property is of type ScmIntegrations.
🖥 Your Environment
OS:   Linux <IP_ADDRESS>-microsoft-standard-WSL2 - linux/x64
node: v18.16.0
yarn: 1.22.19
cli:  0.22.1 (installed)
backstage:  1.10.0

Dependencies:
  @backstage/app-defaults                          1.1.0
  @backstage/backend-app-api                       0.3.1, 0.4.0, 0.4.2
  @backstage/backend-common                        0.15.2, 0.18.1, 0.18.2, 0.18.4
  @backstage/backend-dev-utils                     0.1.0, 0.1.1
  @backstage/backend-plugin-api                    0.3.1, 0.4.0, 0.5.1
  @backstage/backend-tasks                         0.4.2, 0.4.3, 0.5.1
  @backstage/catalog-client                        1.3.0, 1.3.1, 1.4.0, 1.4.1
  @backstage/catalog-model                         1.1.5, 1.2.0, 1.2.1, 1.3.0
  @backstage/cli-common                            0.1.12, 0.1.11
  @backstage/cli                                   0.22.1
  @backstage/config-loader                         1.2.0, 1.1.8
  @backstage/config                                1.0.7, 1.0.6
  @backstage/core-app-api                          1.4.0
  @backstage/core-components                       0.12.3, 0.12.4, 0.12.5
  @backstage/core-plugin-api                       1.3.0, 1.4.0, 1.5.0
  @backstage/errors                                1.1.5, 1.1.4
  @backstage/integration-aws-node                  0.1.1, 0.1.2
  @backstage/integration-react                     1.1.9
  @backstage/integration                           1.4.4, 1.4.2, 1.4.3
  @backstage/plugin-api-docs                       0.8.14
  @backstage/plugin-app-backend                    0.3.41
  @backstage/plugin-auth-backend                   0.17.4
  @backstage/plugin-auth-node                      0.2.10, 0.2.11, 0.2.13
  @backstage/plugin-azure-devops-common            0.3.0
  @backstage/plugin-azure-devops                   0.2.7
  @backstage/plugin-catalog-backend                1.7.1, 1.9.0
  @backstage/plugin-catalog-common                 1.0.10, 1.0.11, 1.0.12, 1.0.13
  @backstage/plugin-catalog-graph                  0.2.26
  @backstage/plugin-catalog-import                 0.9.4
  @backstage/plugin-catalog-node                   1.3.2, 1.3.5
  @backstage/plugin-catalog-react                  1.2.4, 1.3.0, 1.4.0
  @backstage/plugin-catalog                        1.7.2
  @backstage/plugin-github-actions                 0.5.14
  @backstage/plugin-kubernetes-backend             0.9.3
  @backstage/plugin-kubernetes-common              0.6.0
  @backstage/plugin-kubernetes                     0.7.8
  @backstage/plugin-org                            0.6.4
  @backstage/plugin-permission-common              0.7.3, 0.7.4, 0.7.5
  @backstage/plugin-permission-node                0.7.4, 0.7.5, 0.7.7
  @backstage/plugin-permission-react               0.4.10, 0.4.11, 0.4.9
  @backstage/plugin-proxy-backend                  0.2.35
  @backstage/plugin-scaffolder-backend             1.10.1, 1.13.1
  @backstage/plugin-scaffolder-common              1.2.4, 1.2.7
  @backstage/plugin-scaffolder-node                0.1.2
  @backstage/plugin-scaffolder-react               1.0.1
  @backstage/plugin-scaffolder                     1.10.1
  @backstage/plugin-search-backend-module-catalog  0.1.0
  @backstage/plugin-search-backend-module-pg       0.5.2
  @backstage/plugin-search-backend-node            1.1.2, 1.2.0
  @backstage/plugin-search-backend                 1.2.2
  @backstage/plugin-search-common                  1.2.1, 1.2.2, 1.2.3
  @backstage/plugin-search-react                   1.4.0
  @backstage/plugin-search                         1.0.7
  @backstage/plugin-tech-radar                     0.6.0
  @backstage/plugin-techdocs-backend               1.5.2
  @backstage/plugin-techdocs-module-addons-contrib 1.0.9
  @backstage/plugin-techdocs-node                  1.4.5
  @backstage/plugin-techdocs-react                 1.1.2
  @backstage/plugin-techdocs                       1.4.3
  @backstage/plugin-user-settings                  0.6.2
  @backstage/release-manifests                     0.0.8
  @backstage/test-utils                            1.2.4
  @backstage/theme                                 0.2.16, 0.2.17, 0.2.18
  @backstage/types                                 1.0.2
  @backstage/version-bridge                        1.0.3

👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
None

You'll see in your environment that you have lots of different versions of some central packages. That means you have competing, incompatible runtimes that may have problems speaking to each other, and typescript caught that.
When you upgrade your installation, make sure to use yarn backstage-cli versions:bump which helps removing duplicates.
You may want to use yarn backstage-cli versions:check --fix to see if that can reduce the duplication for you.