[SPARK-16060][SQL] Support Vectorized ORC Reader

What changes were proposed in this pull request?
This PR adds a ORC columnar-batch reader to native OrcFileFormat. Since both Spark ColumnarBatch and ORC RowBatch are used together, it is faster than the current Spark. This replaces the prior PR, #17924.
Also, this PR adds OrcReadBenchmark to show the performance improvement.
How was this patch tested?
Pass the existing test cases.

Test build #84733 has started for PR 19943 at commit 449a0a2.

Thank you for review, @mmccline !

Test build #84733 has finished for PR 19943 at commit 449a0a2.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/84733/
Test FAILed.

Test build #84788 has started for PR 19943 at commit d302259.

Test build #84785 has finished for PR 19943 at commit 601ab5e.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/84785/
Test FAILed.

Test build #84788 has finished for PR 19943 at commit d302259.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/84788/
Test FAILed.

Retest this please

Test build #84809 has started for PR 19943 at commit d302259.

Test build #84809 has finished for PR 19943 at commit d302259.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Hi, @cloud-fan , @gatorsmile , @HyukjinKwon , @viirya , @mmccline .
The PR is ready for review again. Could you take a look?

 The parquet data source pick a different approach that writes the values to Spark columnar batch.
Generally I think the wrapper approach should be faster on pure scan, but may be slower if there is computation after the scan, e.g. aggregate. Do we have a benchmark for it?

That's a good point, @cloud-fan . I also agreed to see the result for that before (at the my initial PR.)
First of all, we can compare the results with OrcReadBenchmark.scala in this PR before going with aggregation. Since we have the foundation for that, @viirya can update his PR more easily than before. I love to see the fastest Apache Spark ORC!

Also cc @kiszk , this question also applies to the table cache reader. We should think more about using a wrapper or writing to spark column vector.

If i've understood Spark development process correctly, the 2.3 branch cut date is in couple of days, and if this PR doesn't get merged to master real soon, it'll have to wait until 2.4, about 6 months?
@dongjoon-hyun @cloud-fan Considering that the benchmarks show almost order of magnitude improvement in performance, it would be really great to get this in for Spark 2.3, and worry about the details of copy vs wrapper approach later.
Also, as this is anyway opt-in feature that needs to be enabled with config option, merging this shouldn't be "dangerous".. Thanks for your efforts & looking forward to get this PR to production!

Thank you for review, @cloud-fan, @viirya, @kiszk, @HyukjinKwon, @henrify.

Test build #85456 has started for PR 19943 at commit 3e1d479.

Test build #85456 has finished for PR 19943 at commit 3e1d479.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/85456/
Test FAILed.

retest this please

Test build #85463 has started for PR 19943 at commit 3e1d479.

Thank you for retriggering, @HyukjinKwon .

Test build #85466 has started for PR 19943 at commit 9f225e2.

Test build #85463 has finished for PR 19943 at commit 3e1d479.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Test build #85466 has finished for PR 19943 at commit 9f225e2.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Thank you so much, @HyukjinKwon .

Retest this please.

Test build #85518 has started for PR 19943 at commit 9f225e2.

Test build #85518 has finished for PR 19943 at commit 9f225e2.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/85518/
Test FAILed.

Retest this please

Test build #85534 has started for PR 19943 at commit 9f225e2.

Test build #85534 has finished for PR 19943 at commit 9f225e2.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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


This is my attempt to fix redmine #5721

Toughen all checks and fix logic errors.
I may have added back some "dummy" checking, but better be safe than sorry. Also made the assumption that $interface is a string. I don't believe anyone would set interface names as numbers or any other type (array, object, resource). Please correct me it that is not the case.
It is my belief that the code is improved by this commit. It needs extensive testing to ensure everything works as it should.
Thanks.

A different fix was committed, there were other bugs from previous commit that I had to address.
Thank you for the report!


python38Packages.datadog: 0.42.0 -> 0.43.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python38Packages.datadog is: "The Datadog Python library"
meta.homepage for python38Packages.datadog is: "https://github.com/DataDog/datadogpy"
meta.changelog for python38Packages.datadog is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/.dogwrap-wrapped passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/.dog-wrapped passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/.dogshell-wrapped passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/.dogshellwrap-wrapped passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/dogshell passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/dogshellwrap passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/dog passed the binary check.
/nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin/dogwrap passed the binary check.
8 of 8 passed binary check by having a zero exit code.
8 of 8 passed binary check by having the new version present in output.
found 0.43.0 with grep in /nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0
found 0.43.0 in filename of file in /nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0

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

15 total rebuild path(s)

8 package rebuild(s)

8 x86_64-linux rebuild(s)
7 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
docbookrx
home-assistant
python38Packages.datadog
python38Packages.gradient
python38Packages.gradient_statsd
python39Packages.datadog
python39Packages.gradient
python39Packages.gradient_statsd

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0
ls -la /nix/store/ipqc7if17vy2s2rl930a4zsy3zybwln1-python3.8-datadog-0.43.0/bin

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

2 packages marked as broken and skipped:

python38Packages.gradient
python39Packages.gradient

1 package failed to build:

home-assistant

4 packages built:

python38Packages.datadog
python38Packages.gradient_statsd
python39Packages.datadog
python39Packages.gradient_statsd

Maintainer pings

Done in fb624bf1adc73d61afe0cdd461daa0b2c9711efe


Password File

On oracle <IP_ADDRESS> and above, you cannot create a new password file on the data guard instance.  You will need to copy it from the source database instance in order for it to work properly.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 514bcbf1-9ebb-b9f0-a12e-bfdaf7c9b06f
Version Independent ID: b13e5e51-04c9-cf3f-1196-289802fb56c7
Content: Implement Oracle Data Guard on an Azure Linux virtual machine
Content Source: articles/virtual-machines/workloads/oracle/configure-oracle-dataguard.md
Service: virtual-machines-linux
GitHub Login: @romitgirdhar
Microsoft Alias: rogirdh

@akerber00 I have assigned the issue to the content author to investigate further and update the document as appropriate.

We are currently closing out long standing backlog in order to better determine which issues are still valid and which have been addressed. If you are still seeing a specific problem with this document please open a new issue so we can properly assign the feedback to the correct author and get it addressed ASAP.
#please-close


Replaced Windows file separator with path.join in Executor.getTempFile

Description:
All code snippets failed to execute on Mac with the error:
/usr/local/bin/bash: /var/folders/gy/5n_nrgl56d9f7_m2df17001w0000gr/Ttemp_1715619532117.sh: No such file or directory

Solution:
A previous commit (59414abba95ee3caf5ecedf259016c2bfdd119ee) hard-coded the Windows file separator (\) in Executor.getTempFile.
This change replaces the Windows file separator with the Node built-in path.join so the getTempFile will automatically use the correct OS file separator.
Testing:

clone and make changes locally
npm ci
npm run build
cp main.js <vaultpath>/.obsidian/plugins/execute-code/
reload extension and execute snippet

Fixes twibiral/obsidian-execute-code#347

Note: this worked locally (on a 2019 Intel Mac Pro), but I haven't tested on Windows or Windows+WSL.

Currently I'm using a MacBook Air 13. I want to specifically thank you. javascript works fine but dart didn't work. So I Googled it but it didn't solve the problem. It worked out this way. Thank you for the specific method. I hope you can update me officially soon.

Thanks for the detective work! Doing the updates to 1.11.x I faced some issues with too many different merges and changes. Thank you for answering all the issues and finding the problem

Published in release version 1.12.0


Add LGM velocities

Needed for https://github.com/AidanStarr/PMIP_ACC

Ok I identified the failures and it now at least syncronized.

/run CMIP6.PMIP.MPI-M.MPI-ESM1-2-LR.lgm.r1i1p1f1.Omon.vo.gn.v20190710

@pangeo-forge/dev-team could I maybe get merging rights on this repo?

@pangeo-forge/dev-team could I maybe get merging rights on this repo?

Done!

/run CMIP6.PMIP.MPI-M.MPI-ESM1-2-LR.lgm.r1i1p1f1.Omon.vo.gn.v20190710

@jbusecke, are you able to run this recipe locally? i'm asking because when i run this locally, i get this error:
pangeo-forge-runner bake --repo=https://github.com/jbusecke/CMIP6-PMIP-feedstock --ref=cfffb36e6afdba27438be1e6221ee7bc02729944 --json --prune --Bake.recipe_id=CMIP6.PMIP.MPI-M.MPI-ESM1-2-LR.lgm.r1i1p1f1.Omon.vo.gn.v20190710

{"message": "\n", "status": "running"}
{"message": "DEBUG: Data node: esgf.rcec.sinica.edu.tw not available", "status": "running"}
{"message": "\n", "status": "running"}
{"message": "DEBUG: Testing data node: esgf3.dkrz.de", "status": "running"}
{"message": "\n", "status": "running"}
{"message": "Filtering response data for CMIP6.PMIP.MPI-M.MPI-ESM1-2-LR.lgm.r1i1p1f1.Omon.vo.gn.v20190710...", "status": "running"}
{"message": "\n", "status": "running"}
{"message": "DEBUG: Testing data node: esgf-data1.llnl.gov", "status": "running"}
{"message": "\n", "status": "running"}
{"message": "Error during running: Range request failed with 403 for https://esgf-data1.llnl.gov/thredds/fileServer/css03_data/CMIP6/PMIP/AWI/AWI-ESM-1-1-LR/lgm/r1i1p1f1/Omon/vo/gn/v20200212/vo_Omon_AWI-ESM-1-1-LR_lgm_r1i1p1f1_gn_399101-400012.nc", "exc_info": "Traceback (most recent call last):\n  File \"/home/andersy005/mambaforge/envs/py39/bin/pangeo-forge-runner\", line 8, in <module>\n    sys.exit(main())\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_runner/cli.py\", line 28, in main\n    app.start()\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_runner/cli.py\", line 23, in start\n    super().start()\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/traitlets/config/application.py\", line 464, in start\n    return self.subapp.start()\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_runner/commands/bake.py\", line 125, in start\n    recipes = feedstock.parse_recipes()\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_runner/feedstock.py\", line 60, in parse_recipes\n    recipes = self._import(recipes_config[\"dict_object\"])\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_runner/feedstock.py\", line 43, in _import\n    exec(compile(source=f.read(), filename=filename, mode=\"exec\"), ns)\n  File \"/tmp/tmpebu5j6mt/feedstock/recipe.py\", line 30, in <module>\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/asyncio/runners.py\", line 44, in run\n    return loop.run_until_complete(main)\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/asyncio/base_events.py\", line 647, in run_until_complete\n    return future.result()\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_esgf/recipe_inputs.py\", line 85, in generate_recipe_inputs_from_iids\n    raw_input = await asyncio.gather(*tasks)\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_esgf/recipe_inputs.py\", line 112, in iid_request\n    urls, kwargs = await response_data_processing(session, filtered_response_data, iid)\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_esgf/dynamic_kwargs.py\", line 115, in response_data_processing\n    netcdf3_check = await is_netcdf3(session, urls[-1])\n  File \"/home/andersy005/mambaforge/envs/py39/lib/python3.9/site-packages/pangeo_forge_esgf/dynamic_kwargs.py\", line 183, in is_netcdf3\n    raise RuntimeError(f\"Range request failed with {status_code} for {url}\")\nRuntimeError: Range request failed with 403 for https://esgf-data1.llnl.gov/thredds/fileServer/css03_data/CMIP6/PMIP/AWI/AWI-ESM-1-1-LR/lgm/r1i1p1f1/Omon/vo/gn/v20200212/vo_Omon_AWI-ESM-1-1-LR_lgm_r1i1p1f1_gn_399101-400012.nc", "status": "failed"}

I can confirm that this fails for me too, while it was working yesterday. Frustrating. I think I need to work on handling these errors more gracefully in pangeo-forge-esgf. Thanks @andersy005


TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

I see this issue in the st2sensorcontainer log.
2017-06-20 23:27:00,324<PHONE_NUMBER>82032 ERROR threading [-] Exception in thread Thread-18:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/python2.7/multiprocessing/pool.py", line 361, in _handle_tasks
    cache[job]._set(ind + 1, (False, ex))
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

2017-06-20 23:27:00,326<PHONE_NUMBER>82032 ERROR threading [-]

Which sensors are you running there?

Need some more info on what sensors/config you're running there. Can re-open if we have that info

Hi,
I am also getting same error:-
2018-05-15 21:21:58,247 ERROR [-] Exception in thread Thread-18:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.7/multiprocessing/pool.py", line 361, in _handle_tasks
cache[job]._set(ind + 1, (False, ex))
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
2018-05-15 21:21:58,248 ERROR [-]
-: While trying to execute for following block of code in sensor:-
for item in account.inbox.all():
print(item.author.email_address)
@tonybaloney  Did you find any resolution ?
@LindsayHill  Please help on the same

Which sensor?

Please find link for code.
https://github.com/guptasakshi01/St2/blob/master/monitor_mailbox.py
I am facing issue on line number  87.
Please help

You should probably also look at the existing MS Exchange pack https://github.com/StackStorm-Exchange/stackstorm-msexchange/
I believe that has issues in some scenarios, but it would  be better to start with that, and fix that, rather than write your own code. Better to leverage other's work, and share your improvements.

@LindsayHill  We are not able to use senders email address in this given sensor, Is there any other way I can use the email address of sender as payload while dispatching trigger?
@Kami  It didn't work Is there any other solution??

It looks like it would be trivial to modify the existing sensor to also return the sender ID. e.g. probably change this line https://github.com/StackStorm-Exchange/stackstorm-msexchange/blob/master/sensors/item_sensor.py#L52 and the item_sensor.yaml.
Have you tried doing that, rather than writing a whole new sensor?

Hi @LindsayHill  ,
I am receiving same error while using item_sensor.yaml.
2018-05-22 03:29:09,381 ERROR [-] Exception in thread Thread-18:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.7/multiprocessing/pool.py", line 361, in _handle_tasks
cache[job]._set(ind + 1, (False, ex))
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

@guptasakshi01 Which StackStorm version are you using?
If you didn't upgrade yet, try upgrading to v2.7.2.

st2 2.7.1

@Kami  Thanks for your help
It worked as expected with 2.7.2

Great - glad to hear that.
I will close that issue as resolved in v2.7.2.

@guptasakshi01 now that we've fixed your problem, can you please submit a PR to the MSExchange pack to add the missing functionality that you needed? This will probably help someone else who needs it


[Blog Post] Apache Beam for a content discovery platform

A blog post entry showcasing the usage of Apache Beam in a streaming pipeline to extract and store document content for a GenAI based content discovery platform. Full code available at https://github.com/prodriguezdefino/content-dicovery-platform-gcp

heads up: @nams113 @aaltay

Thank you @prodriguezdefino !
@liferoad - Could someone help with resolving the staging errors? If they can point out the issues, authors here could fix it.
@rszper - If you get a chance, could you review the text?

@damccorm Can you check the failed precommits? Do we need to update the author files?

The errors from the website precommit are:
ERROR Author 'prodriguezdefino' is not defined. Please add them to 'website/www/site/data/authors.yml'
ERROR Author 'namita sharma' is not defined. Please add them to 'website/www/site/data/authors.yml'

so we need to add them the authors to https://github.com/apache/beam/blob/master/website/www/site/data/authors.yml as part of this PR

The whitespace errors can be fixed by running vim -es -c ":%s/\s\+$//e" -c ":wq" "./website/www/site/content/en/blog/dyi-content-discovery-platform-genai-beam.md" (see the postcommit log for commands like this on failures)

LGTM. Thank you all! Merging this.

Published here: https://beam.apache.org/blog/dyi-content-discovery-platform-genai-beam/


Suppress elements deprecation notice

The deprecation notice on selection-buttons.js (https://github.com/alphagov/govuk_frontend_toolkit/blob/0f53e6d2f652f271d22527f29d69c899a965c317/javascripts/govuk/selection-buttons.js#L8) assumes that the javascript is being used with Elements.
GOV.UK uses govuk_frontend_toolkit but does not use Elements. The notice is displaying in the console on GOV.UK because this file is included and used. While we are looking at switching some tools to GOV.UK Elements in preparation for GOV.UK Frontend, there are no plans to switch all of GOV.UK to Elements, and selection-buttons.js will be needed for a while to come.
https://github.com/alphagov/static/issues/1053

easy solution and a non-breaking change would be remove that log. agree?


jsoniter-scala

Have you considered using https://github.com/plokhotnyuk/jsoniter-scala for JSON (de)serialization?

I think it's beyond the scope for now, but who's to say whether we'll allow more flexibility in the future :)
If enough people think this is worthwhile, I think there's a fair chance it'll happen.

Implemented in https://github.com/ocadotechnology/sttp-oauth2/pull/351


Python: Switch to maturin

Our packaging setup is quite dated - maturin will simplify a lot of things

I tried to do so and observed an error that is described in  https://github.com/PyO3/maturin/issues/1083:
⇒  maturin build --sdist
🍹 Building a mixed python/rust project
🔗 Found pyo3 bindings
🐍 Found CPython 3.8 at /.../jsonschema/bin/python3
💥 maturin failed
  Caused by: Failed to build source distribution
  Caused by: Failed to add local dependency json_schema_test_suite at /.../jsonschema/jsonschema-test-suite/Cargo.toml to the source distribution
  Caused by: cargo metadata does not know about the path for dependencies.json_schema_test_suite_proc_macro present in /.../jsonschema/jsonschema-test-suite/Cargo.toml, which should never happen ಠ_ಠ

Please try maturin v0.14.11: https://github.com/PyO3/maturin/releases/tag/v0.14.11

Thank you so much, @messense! It works indeed!


Minor changes to CLI documentation

MTV 2.5
[No Jira] Changes:

Changes  to <source_provider> in the Provider manifest description to be consistent with the rest of the manifests in the procedure.
Changes {namespace} to  in the procedure for migrating VMs via CLI so that user will insert the correct namespace instead of copy-pasting openshift-mtv automatically.
The same for the procedure for canceling a migration via CLI.

Previews:
1 and 2: https://file.emea.redhat.com/rhoch/minor_cli/html-single/#migrating-virtual-machines-cli_mtv [Migration using CLI]
3: https://file.emea.redhat.com/rhoch/minor_cli/html-single/#canceling-migration-cli_mtv [canceling a migration]

@ahadas @qiyuann Please review this PR.

@ahadas I made the changes you suggested. Who else should review this?

@ahadas I made the changes you suggested. Who else should review this?

@qiyuann , I've added her as a reviewer

@qiyuann I had a little trouble with a merge conflict. Could you please double-check the NetworkMap and Plan manifests?

@ahadas I made the change you suggested. Please review.

@ahadas  dropped as requested.


Zoom in/zoom out not working

Describe the bug
When adjusting the size of a service under the  tab, none of my services resize smaller or larger whether I'm using the menu option or ctrl+- and ctrl+=
This was a fresh install on a new windows operating system. The commands work fine in all other applications.

It's been an issue for a while (#1668 #1673 #1677)
However, have you tried installing the new 5.5.0-beta.1 ?
Looks like zoom is fixed: 8d06fbc36d2ba69e0c38b09d59988f29664247f1 thanks to @vantezzen

Oh cool thanks, do I have to install the beta separably or can I activate it through the settings within Franz?

If you're on an older version, my best bet is to download and upgrade to the newest version from here (as of this time, 5.5.0-beta1) right here: https://github.com/meetfranz/franz/releases/tag/v5.5.0-beta.1
No need to uninstall the previous one, and second, the upgrade will keep your apps and settings, don't worry.


Training metrics

Pull Request Template
Checklist

[x] Confirm that run-checks script has been executed.

Related Issues/PRs
This PR partially solves issue #544, which asked for more training metrics.
Metrics requested and successfully implemented

General CPU utilization metric (use percentage)
General memory (RAM + swap) utilization metric (use percentage)

Metrics requested but not implemented, and the reason why I couldn't implement it

Top-k accuracy: I am not familiar with deep learning, and couldn't understand this metric properly
General GPU utilization: My computer only has an AMD APU, no GPU.
General GPU memory usage: My computer only has an AMD APU, no GPU.
Precision Recall: I am not familiar with deep learning, and couldn't understand this metric properly
AUC - ROC: I am not familiar with deep learning, and couldn't understand this metric properly
BLEU score: I am not familiar with deep learning, and couldn't understand this metric properly
ROUGE score: I am not familiar with deep learning, and couldn't understand this metric properly

Metrics not requested yet implemented

CPU Temperature
GPU Temperature

Changes
In issue #544, it has been said that it would be great to have more training metrics. So I have added the metrics that I was skilled enough to add and that I could properly test on my hardware.
Testing
I actually started developing metrics in separate cargo projects, and printed the data to the console.
To check the accuracy of this data, I have used a system tray that I have on my system (see attachment) which shows me hardware info (CPU use percentage, CPU temp, RAM and swap use percentage). Then I simply compared the data, and saw it was accurate.
This is the system tray. From left to right: CPU use, CPU temp, RAM use (swap is displayed once I click it, date/time and battery)

Note: since my "GPU" is actually an APU, my GPU temp is roughly the same as my CPU temp, this is how I tested this metric.
Once I knew that my metric was accurate, I copied the code to BURN and adapted the Metric trait for my data type. And voilà, a new metric.
I have mainly "copied" what I have seen in the CUDA metric, because I didn't know much about the BURN framework.

Hi, I've addressed the changes requested.
In cpu_temp.rs, I've decided to change crates because there was no way to accurately and reliably get the cpu temperature with sysinfo, so I went on with systemstat. I've kept sysinfo for the other metrics.
Let me know if there are any changes that are worth doing

Formatting step in CI is failing.

What should I do ? cargo fmt ?

What should I do ? cargo fmt ?

To fix it, yes. If you have clippy errors, you can cargo clippy --fix as well.

Okay, I'll do it when I get back from work


Problems view: do not show blue focus outline please

Regression: now we display the blue focus outline in the problems view
Assigning also to myself since @sandy081 is on vacation

Not important for relase, moving out to August

The issue is that it looks bad and I do not see the benefit of allowing this sentence to be focues.
@bpasero filed the same issue

I see, not showing any focused element is also weird when problems view is focused. Changed this to: when there are no problems shown, the complete problems view will be focused.

@sandy081 I think the behaviour is now inconsistent with other "empty" views. Take the SCM for example:

I would also not expect a focus indicator around the text here because this element is nothing I can interact with.
For me focus only makes sense if I can interact with the element using the keyboard. It should not be used to fix screen reader issues imho.

@bpasero There is a clear filter link to be interacted with all problems are filtered.

To be consistent, I focussed the container always.

This is now not consistent with empty SCM which does not show focus even on the container.
Why don't you simply pass focus to the input box (similar as how debug console passes to the input)

I like that 👍

I can do that. Reopening to consider @isidorn's suggestion

@isidorn If I focus the filter input box then the status about Problems view (like No Problems) will not be read to the user. Filer input box will have its own status or information.

Than instead of doing some fancy aria-tricks I am fine with leaving the focus in the container - so the proper thing is read out.

Could the input field read out some ARIA context to help here? E.g. how many things you can filter on? Maybe that is something useful to have anyway even when there are markers to filter?

I think input field should read about what it is about. In this case it reads the placeholder that tells you about filtering. It also reads the text when you type. Overloading this with general information is not a good idea.

@sandy081 could the empty case just be a tree with one element that reads this info? that would have the added value that - once problems are coming in - focus would already be in the tree and you can start to navigate.

@bpasero This is the case now except that empty case is with an element other than tree. When the problems come in first problem will be selected.

Closing this as the current solution is acceptable.

@joaomoreno did a change in #61534 so this is now inconsistent.
If you do "Previous Panel View" and the Panel View ends on an empty Problems View, the next "Previous Panel View" won't run.


demo and documentation return 404

Hi, I really want to use your library but doc links and demo links return 404

Do you mean this demo page? https://chenqingspring.github.io/ng-lottie/demo/
You can find all the usages in demo folder, or here is a demo project


spacebar: 0.5.0 -> 1.0.0

Motivation for this change
Upgrade 0.5.0 -> 1.0.0
Also, project has moved GitHub repositories, so meta and owner updated
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I took the liberty of also upgrading the package, since I was about to open a separate PR for that :)

Thanks!


Make in operator work with an object as second operand

If complete value sets, rather than their “compressed” variant, are passed into the external parameters, then we might need { "in": [ "foo", { "foo": "bar" } ] } to work. This extends the CertLogic specification, and is not part of JsonLogic.

Closed per PR #124


clamav: apply patch for CVE-2017-6420

Motivation for this change
The wwunpack function in libclamav/wwunpack.c in ClamAV 0.99.2 allows remote attackers to cause denial of service (use-after-free) via a crafted PE file with WWPack compression.
Details at [1].
[1] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6420
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

This should be backported to stable/17.09.

back ported in d4cced993421eaeee743be4d22fca7f1ba87b3bc


Copilot Chat does not have any context of directory structure of an existing application

For example for a Flutter application, with some defined directory structures for front end model object code, for screens, for UI components--Copilot Chat does not have any context of what the existing directories are and what existing code might already exist.
To add new model objects, Copilot does not take the existing standards of the existing model object code when creating the new code output.
Not taking into account existing code, Copilot Chat can start with incorrect model code, and then screen UI code will also be based on the incorrect model properties, creating subsequent incorrect UI entries with wrong UI controls.

I came here to say almost the same.
I am working on a Typescript project. The first thing I asked Copilot Chat to do was to generate a return type for a function. I only gave it the name of the function and expected that it would have all the necessary context in order to do so. The proper return type looked something like interface RelatedLocationIds { flexibleLocationIds: number[], locationIds: number[] }, but Copilot Chat generated this:
interface Location {
  name: string;
  address: string;
}

interface RelatedLocations {
  [key: string]: Location[];
}

Problems:

RelatedLocations and Location are already known and used types in our codebase
The type or interface can not have just any string as the key in this case, and it would be evident in looking at where the this function is used
We are not returning an object containing arrays of Locations, but an object containing arrays of numbers

Another use case where providing dir structure to copilot will be useful:
When diagnosing problem related to filepath. For example, I have a dockerfile with a copy command that is actually incorrect. I asked copilot but could not give correct solution. Then I experimented by giving it the structure of my dir manually using this extension.
Then the diagnosis gets slightly more accurate. (besides grammatical error, the proposed solution is also still incorrect, but the clue given is spot-on)

You can now use @workspace to provide copilot with relevant workspace information when asking questions: https://code.visualstudio.com/docs/editor/github-copilot#_agents-and-slash-commands


Fix testing rack attack.

When the bucket is emptied the requests are allowed again.
Which could happen just before the last request.
So we want to test that some of the requests have been throttled instead of only the last one.

Looks good, and nice comments.
Looking at the file, this test above isn't very clear:
    context "when the number of requests is lower than the limit" do
      it "does not change the request status" do
        limit.times do # <--- Wouldn't (limit - 1) be more explicit and match the context def?
          get "/", env: { REMOTE_ADDR: "<IP_ADDRESS>" }
          expect(response.status).to_not eq(429)
        end
      end
    end

I think the description should be changed to "... lower than or equal to the limit".
I don't like changing the number of requests since it makes it less clear when the limit is exceeded.

But then it wouldn't actually test both scenarios (lower than and equal to the limit). We would need two tests 🙂

But then it wouldn't actually test both scenarios (lower than and equal to the limit). We would need two tests slightly_smiling_face

There's an expectation for every request, so I wouldn't say that we don't test both scenarios.

Isn't it just a matter of adjusting the text instead
context "when the number of requests does not exceed the limit" do
or
context "when the number of requests equals the limit" do

I'm merging this, we can make changes later if we need it


vue-query client invalidateQueries doesn't invalidate immediately

Describe the bug
The Vue implementation of QueryClient.invalidateQueries does not invalidate queries "immediately", as described in the documentation.
Your minimal, reproducible example
https://codesandbox.io/p/devbox/vue-query-query-invalidation-w2kn9y
Steps to reproduce
Run the CodeSandbox; the rendered page shows the difference in behavior between the Vue QueryClient and the base implementation (the latter seems more consistent with the documentation).
Expected behavior
The documentation for QueryClient.invalidateQueries says that "By default, all matching queries are immediately marked as invalid and active queries are refetched in the background." I understand this to mean that, after calling the function, matched queries should be seen to be invalidated, even if the function's returned Promise was not awaited. This is the case when using the base QueryClient of @tanstack/query-core.
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform

OS: Not operating-system specific
Browser: Not browser-specific
Browser version: Not browser-version specific

Tanstack Query adapter
vue-query
TanStack Query version
v5.51.0
TypeScript version
No response
Additional context
A workaround I'm using is to override invalidateQueries with an implementation that performs the invalidations immediately, deferring only the query refetches (as required to fix #6414).

Your approach was very effective. I simplified the implementation based on your solution:
export class QueryClient extends QC
  invalidateQueries(
    filters: MaybeRefDeep<InvalidateQueryFilters> = {},
    options: MaybeRefDeep<InvalidateOptions> = {},
  ): Promise<void> {
    const filtersCloned = cloneDeepUnref(filters)
    const optionsCloned = cloneDeepUnref(options)

    super.invalidateQueries({ ...filtersCloned, refetchType: 'none' }, optionsCloned)
    return nextTick().then(() => {
      return super.refetchQueries(filtersCloned, optionsCloned)
    })
  }
}

What do you think?
cc @@DamianOsipiuk

Your approach was very effective. I simplified the implementation based on your solution:
export class QueryClient extends QC
  invalidateQueries(
    filters: MaybeRefDeep<InvalidateQueryFilters> = {},
    options: MaybeRefDeep<InvalidateOptions> = {},
  ): Promise<void> {
    const filtersCloned = cloneDeepUnref(filters)
    const optionsCloned = cloneDeepUnref(options)

    super.invalidateQueries({ ...filtersCloned, refetchType: 'none' }, optionsCloned)
    return nextTick().then(() => {
      return super.refetchQueries(filtersCloned, optionsCloned)
    })
  }
}

What do you think?
cc @@DamianOsipiuk

filtersCloned.refetchType needs to be propagated to refetchQueries.

https://github.com/TanStack/query/blob/14d9c49fba6715a21e62dd473c11c8454cdc51f9/packages/query-core/src/types.ts#L505-L507
https://github.com/TanStack/query/blob/14d9c49fba6715a21e62dd473c11c8454cdc51f9/packages/query-core/src/queryClient.ts#L288-L290
It seems that refetchType exists to determine whether invalidateQueries needs to perform a refetch. This approach only defers refetchQueries to the next micro task.

@Mini-ghost if the goal is to perform the marking as invalidated immediately, but do the refetching in the "next tick", then your implementation looks correct. looking at the comment in the code left by @DamianOsipiuk:
https://github.com/TanStack/query/blob/febbde676d0888d8dd4868177868a3316686cb58/packages/vue-query/src/queryClient.ts#L178-L179
I can only assume that what needs to be deferred is the refetch, not the mark as invalidated, because only the refetch itself runs the queryFn.
sadly, in the PR that introduced the fix, we didn't add a test case:

https://github.com/TanStack/query/pull/6561/files

So I'm unsure what still needs to "work" after the fix. But maybe we can add a test case now and look at the original issue posted in:

https://github.com/TanStack/query/issues/6414

@Mini-ghost would you like to PR that?

The refetchType property of InvalidateQueryFilters can be used in two ways:

It can be set to none to prevent refetch.
It can be set to a refetch type, which should be passed to the refetchQueries function.

This implementation ignores the refetchType entirely; see comments added here:

export class QueryClient extends QC
  invalidateQueries(
    filters: MaybeRefDeep<InvalidateQueryFilters> = {},
    options: MaybeRefDeep<InvalidateOptions> = {},
  ): Promise<void> {
    const filtersCloned = cloneDeepUnref(filters)
    const optionsCloned = cloneDeepUnref(options)

    // Here we call `super.invalidateQueries` with `refetchType` overridden, so the `refetchType` is not used.
    super.invalidateQueries({ ...filtersCloned, refetchType: 'none' }, optionsCloned)
    return nextTick().then(() => {
      // Now:
      // - We are calling `refetchQueries` even if `refetchType` is `none`
      // - We are passing the filters to `refetchQueries`, but it ignores `refetchType`, because that is a property
      //  of `InvalidateQueryFilters` that is not present in the `refetchQueries` filters.
      return super.refetchQueries(filtersCloned, optionsCloned)
    })
  }
}

In order to support those two functionalities offered by the refetchType property, we need to replicate the logic that super.invalidateQueries would have performed if we didn't override refetchType:

We should skip refetching if the value is none:

https://github.com/TanStack/query/blob/14d9c49fba6715a21e62dd473c11c8454cdc51f9/packages/query-core/src/queryClient.ts#L288-L290

When we don't skip refetching, any refetchType value provided should set the type field passed to refetchQueries (because it reads type, not refetchType):

https://github.com/TanStack/query/blob/14d9c49fba6715a21e62dd473c11c8454cdc51f9/packages/query-core/src/queryClient.ts#L291-L294

@TkDodo Thank you for your response. I am happy to address this issue and will review various operation combinations to add test cases for these scenarios.

@kazcw After reviewing the core code implementation, I realize you are correct. I will check if refetchType is none to determine whether to execute super.refetchQueries.

sadly, in the PR that introduced the fix, we didn't add a test case:
https://github.com/TanStack/query/pull/6561/files
So I'm unsure what still needs to "work" after the fix. But maybe we can add a test case now and look at the original issue
posted in:

Issue is that reactive values in vue are queued in the event loop.
const foo = ref('foo');
useQuery({
  queryKey: ['foo', foo],
  queryFn: async ({ queryKey }) => {
    console.log(queryKey[1], foo.value);
    return {};
  },
});

const queryClient = useQueryClient();

setTimeout(() => {
  foo.value = 'bar';
  queryClient.invalidateQueries();
}, 2000);

In this case queryKey[1] which is taken from queryFn context has stale value. While foo.value is correct.
And yes, the solution to this might be to re-implement invalidate function to defer only refetch if necessary.


Does DryIoc already work with dotnet 6/7 ?

My question is if DryIoc already work with dotnet 6/7 ?

@informatorius What features of those platforms do you need?

Current version v5.3.4 targets .NET Standard 2.0 - so it is compatible with .NET 6, 7
The next version v5.4.0 will include the .NET 7 as a target, plus the next version of DryIoc.Microsoft.DependencyInjection will target 6 and 7 directly and will depend on Microsoft.Extensions.DependencyInjection.Abstractions 7.0.0

Here https://learn.microsoft.com/en-us/dotnet/core/extensions/dependency-injection-guidelines


Re-instating Tabs import

Re-instates the Tabs and TabItem imports. Without these the installing page in the documentation doesn't display correctly with the relevant information for Windows/Mac/Linux

Oh. Ha! Should've tested that last one, huh.


Little issues

Good news , the basics are working but a few problems / issues:

i can't see the senor  "Energy total"   the other sensors are ok , how can i add this last one ?
i have only  real time  sennors,  hoe can i add a dasboard with history over the day / month / year as in the  "pull resquest"  tab
i have setup a full HA system for testing, the prodcution is running on docker, can i add it later en put the files in the  \config\custom_components\apsystem  folder an reboot HA ?

Tnx for reading

Seems i have fixed this in the next version that i will proberly release tomorrow... just doing final testings of it

it works good for now !!  I have one little issue but is not a big problem. later I come back an will explain the "problem"


Realtek

Added resolution settings(in settings/general settings)
UI customization changes
InfoBar feature integration(Wifi/Bluetooth)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Aphsana Salim seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/AcceleratorUI/8/rdkcentral/AcceleratorUI

Commit: b8fdd9768abde0c5f32ae52987cbef92e667fbc4

Report detail: gist

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/AcceleratorUI/8/rdkcentral/AcceleratorUI

Commit: 89d0eec5bb154d7c9623c8c31692e9b59cdb1672

Report detail: gist

WARNING: A Blackduck scan failure has been waived
A prior failure has been upvoted

Upvote reason: Code match is spurious - fixed in tool

Commit: 89d0eec5bb154d7c9623c8c31692e9b59cdb1672


RFC: Fix source-mapped line numbers

The source maps were pointing at the wrong lines.  I'm pretty new to generating source maps, so I'm kinda in the dark here.
This PR fixes the line numbers for expression statements.
I don't really expect this to get merged.  This is more of a Request for Comments.  I wish that source maps were working better, but I'm not sure how to improve them.

If you do play around with debugging source maps, note that there's a big difference between @babel/core versions.
v7.18.0
v7.19.6

This subject has been a pain for me as well. I am losing my fondness of the => stuff assertion transformation. I wonder if it would be best for this tool to drop that feature. I'm satisfied with writing assert.equal(foo, bar) Maybe it would read awkwardly in docs?

assert.equal does feel pretty awkward in a readme.  I'm hoping that over time, Babel's sourcemap support improves and fixes this use-case.


Unable to force a FILTER order

My Environment

ArangoDB Version:        3.4
Storage Engine:             RocksD
Deployment Mode:       Single Server
Deployment Strategy:   Manual Start
Configuration:               Simple single server setup
Infrastructure:               Server, 16 CPUs
Operating System:        CentOS 7
Used Package:              .rpm

Component, Query & Data
Affected feature:
Example FILTER:  A=B AND C=D
How do I force Arango to do A=B first, then C=D?
For example, say A=B will pick out 1 record from 1 million, and C=D will pick out 500000 from 1 million,  It makes sense to force arango to do the A=B bit first.
AQL query (if applicable):
Not given
AQL explain (if applicable):

Not given
Dataset:
Not given
Replication Factor & Number of Shards (Cluster only):
Not given
Steps to reproduce

FILTER:  A=B AND C=D
Arango uses C=D first, then A=B based on its own optimizations.
I wish to be able to force A=B first, then C=D because I know better what sort of data is stored than arango could work out.

Problem:
Expected result:

FILTER: A=B AND C=D
Should search using first A=B, and then C=D.
FILTER: C=D AND A=B
Should search using first C=D, and then A=B.

AFAIK there is no standard way of enforcing the order for two FILTERs, but there is a way to turn off specific optimizations should this be required.
I am wondering if you could share a concrete query example for the filter orders being interchanged, as it is not happening in all cases.
For example, here is a query for which it is not happening:
Query String:
 FOR doc IN collection FILTER doc.a == 2 AND doc.b == 3 AND doc.c == 9 RETURN doc

Execution plan:
 Id   NodeType                  Est.   Comment
  1   SingletonNode                1   * ROOT
  2   EnumerateCollectionNode   1000     - FOR doc IN x   /* full collection scan */
  3   CalculationNode           1000       - LET #1 = (((doc.`a` == 2) && (doc.`b` == 3)) && (doc.`c` == 9))   /* simple expression */   /* collections used: doc : x */
  4   FilterNode                1000       - FILTER #1
  5   ReturnNode                1000       - RETURN doc

It would be helpful if you could send the full execution plan for the query.
Thanks!

I guess another approach is if I try to explain what I am trying to do.

Say I have a list of nodes A,  lets call that "people" with field "id"
I have a list of nodes B, lets call that "cloths" with fields "type" containing "dress" or "shirt" or some type of clothing.
I have a list of nodes C, lets call that "likes" with fields "colour" containing "red" or "green" etc.
There are edges/links between A -> B, and A -> C.
So, the question I wish to ask is something like:
Show me all the people who have brought "cloths":"type"=="dress", and "likes": "colour":"red".
Returns a list of people IDs.
I also wish the edges/links to have other fields on this, e.g. dates.
So, I could ask:
Show me all the people who have brought "cloths":"type"=="dress", and "likes": "colour":"red" in the last 3 months.
Now, suppose I have prior knowledge, and I know that a count of "type" == "dress" will be 10, and count of "colour" == "red" is 500000.
So, I would wish to run the "type" == "dress" first, because that has already cut the list of people down to 10, and further restricting that to "colour" == "red" should be quick.
But, what I am seeing is the system scanning 500000 records, and no way to force it to scan only 10.

So this is about filters in traversals (FilterNode followed by TraversalNode) in the particular use case.
In order to determine which filter criterion is more selective for a given value, wouldn't it be necessary to have some sort of index with counts? To make this index eligible for traversals, it would need to be a vertex-centric index with such stats if I'm not mistaken.

@jcdutton
I am closing this issue for now since we have not heard back from you in a while.
In case you are still facing a problem, please feel free to comment and we will reopen.


Remove the save operations in Photos and instead cancel the saving of all edits at each stage

At each stage of the workload an image is selected from the gridview, edited and saved back to the device.  This means that subsequent tests pick up an edited image.  On the Yoga device this actually results in a failure because the image gets iteratively rotated/cropped to such a small size the app complains it is less than 50k.
Instead, we should discard edits so that the images listed in the gridview remain unchanged for all iterations of the test.

I've kept the save step in this workload but now we remove the edited (and saved) images after each iteration. This will prevent the same image being cropped when running multiple iterations. This was done in commit: 9393bfb

Small problem with the change you made.  Teardown doesn't run per iteration.  It only runs at the end of the entire run.  It should work if you move this to update_result.  Please make this change and check it works.  You should be able to verify it by viewing the images gallery during the runs and ensuring there are always only 5.

I think you might be confusing finalize with teardown. I see the teardown operation happening per iteration in my testing?

I'm going with what the manual says.  http://pythonhosted.org/wlauto/writing_extensions.html#adding-a-workload.  Check with Sergei please.

My bad.  You're correct.


Update repo description for HACS

@keatontaylor I just enabled HACS which reads the repo page to populate some info.
We should replace "Custom components I've created for home assistant (hopefully that will be submitted live eventually)" with "This is a custom component to allow control of Amazon Alexa devices in Home Assistant using the unofficial Alexa API.".  Only you can make that change.

Done


Missing feature to deallocate UVVM FIFO

I'd like to request a feature that I'm missing. There is no way to deallocate a UVVM FIFO, but the data queue package, which UVVM FIFO is built upon, does support deallocation of buffer.

Hi,
Yes there is a procedure deallocate_buffer() which resets all the pointers in the buffer thus deallocating ALL the queues. Is this the feature you would like for the UVVM FIFO? Because deallocating a single FIFO requires a more complex procedure.
Best regards,
Erick

Hi Erick,
Yes I'd like that feature for the UVVM FIFO.
Br,
David

Alright, then we'll make sure to add that feature in our next release.

Great. Thank you :+1:


User defined JSON output for Nextclade

Is your feature request related to a problem? Please describe
By default the pipeline outputs Nextclades's results only in CSV format.
I find useful to have the result also in JSON format, it is more flexible for further analysis. To date there is no way to tell viralrecon to output any other format.
Describe the solution you'd like
User defined option to tell viralrecon to output nextclade's results in json format.
Describe alternatives you've considered
One possibility is via custom.config file. Since the CSV output is parsed downstream in the pipeline I think that outputting both formats is the best way to go. Not sure if it is possible to tell nextclade something like:
--output-json=output/nextclade.json \
--output-csv=output/nextclade.csv \
In one command line.

As added in https://github.com/nf-core/viralrecon/pull/230/commits/66ff1c2fef58859609f9ca1a96d2583b8b2a4e13 Nextclade will now output all files by default in the upcoming release. However, only the csv file will be published by default. You can output the json too using a custom.config like below:
params {
    modules {
        'nanopore_nextclade' {
            publish_files   = ['csv':'', 'json']
        }
    }
}

Amazing, thank you very much.

Dear @drpatelh just in case,
your suggestion of adding the following to custom.config in order to obtain the json file is not working:
params {
modules {
'nanopore_nextclade' {
publish_files   = ['csv':'', 'json']
}
}
}
All it does is to create a directory named "json" full of CSV files.
The correct syntax is:
params {
modules {
'nanopore_nextclade' {
publish_files   = ['json':'', '']
}
}
}
Regards,


Incorrect font in "purpose and obstacle" field

Describe the bug
Currently the "purpose and obstacle" field is using Calibri font.
Reported by @theflyingp1g on 21/10/2024
To Reproduce

Open character sheet
Navigate to "purpose and obstacle" field
Enter text in field
Text will be in Calibri font

Expected behavior
Text in field should be the same as other body font
Checklist:

[x] I have searched the existing issues to ensure this bug has not already been reported

Resolved in #129


Make the last col of get-classes and get-plans wider so we're at least 80 cols

Signed-off-by: Doug Davis<EMAIL_ADDRESS>

ping @carolynvs @jberkhahn

I thought about how to do some of that stuff. The problem is that if we try to do it "the right way" it'll involve major changes - like creating a proxy structure for each table to track the width of each column as things are appended and calling the proxy for all table ops instead of the real TableWriter. I can take a stab at that but be prepared for a much larger PR with far more impactful changes. I tried to keep things to a minimum with this.

I'm not so sure about implementing it that way. Who says every single table we write is going to want an extra large last column? How do we know the last column is always going to be the large one? I think implementing it specifically for the output types that actually need large columns seems fine.

If I did the "right (generic) solution" I was going to make it so that people could tell us which column is the variable/wide one.   However, before I head down that path and create a much bigger PR I'd like agreement that we really want the bigger PR and not this more focused one. I'll let you two decide - I can go either way.

NewListTable is intended to be used for the output of svcat get commands, which is why I suggested it. Not all tables are impacted.
Mostly my objection is that I wouldn't want to ever modify/maintain the code added as it looks right now. It's confusing and I'm hoping that there is a middle ground where at the every least the output functions that want to opt in can do so in a way is consistent and doesn't overwhelm the Write* function the logic just to format the width...
Honestly I would rather leave it as-is than what's in here. 🤷♀

This new output: https://github.com/kubernetes-incubator/service-catalog/pull/2226/files#diff-345f1d72c94dd1c75d5bf43421aa41e2L1 shows why I really want something like this.  The old format made us looks silly.

Ah, ok. I think the best solution then would be to write some function that figures this out in a generic manner, and then call out to it from writeClassListTable and writePlanListTable

@carolynvs see if you like this version better. If so, I'll squash to kill-off the first variant.

@duglin I pushed a commit to your branch that shows what I was suggesting.

/lgtm
/approve


Update 07-collaborating.Rmd

Just a couple of minor edits, as well as fixing a little formatting weirdness in 07-collaborating.Rmd

Looks good! I will merge this soon

Thanks again @ehumph! Sorry it took me awhile to get to these!


Doesn't work on web

The package doesn't notice the keyboard VISIBLE on web.
Is this is a bug?
Or is this wrong?

Hi @10686142
please refer this https://stacksecrets.com/flutter/detect-keyboard-visibility-in-flutter-app
Thanks.


Import first batch of production repositories

Import following repositories into teraform management:

https://github.com/ministryofjustice/.github
https://github.com/ministryofjustice/acronyms
https://github.com/ministryofjustice/cloud-platform-maintenance-pages
https://github.com/ministryofjustice/github-actions
https://github.com/ministryofjustice/github-collaborators
https://github.com/ministryofjustice/moj-terraform-aws-sso
https://github.com/ministryofjustice/moj-terraform-scim-github
https://github.com/ministryofjustice/operations-engineering-devcontainer

Also includes:

Github repository terraform module pinned to v0.0.2

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

Comparison is base (d67bc13) 98.47% compared to head (33306ad) 98.47%.
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4083   +/-   ##
=======================================
  Coverage   98.47%   98.47%
=======================================
  Files          43       43
  Lines        4068     4068
=======================================
  Hits         4006     4006
  Misses         62       62

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


ES6 webpack build support

root/global is undefined in the okcoker/taggle master branch when importing taggle w/ ES6 syntax in a webpack build env, preventing the build from succeeding.
I'm not familiar with the amd define block, but this change works with our webpack ES6 import build process.
import Taggle from "taggle"

I don't think your change is doing much here but switching the order of the if statements and changing the name of root to global. Is define or define.amd defined in your project?
Other than that, I also think you may have a webpack configuration error. I was successfully able to import taggle in 2 SSR react apps using es6 with no problems. One built on top of next.js and another with a custom config.


Homebridge crashes when map has no zones

I had to send off my D7 for repair and noticed Homebridge wouldn't start up because the neato plugin was throwing an error due to my vacuum being disconnected.
Is it possible to have this fail more gracefully without affecting other plugins?
homebridge_1  | [8/1/2019, 3:55:08 AM] [NeatoVacuumRobot] error getting boundaries: Error: Request failed with status code 404: undefined
homebridge_1  | [8/1/2019, 3:55:08 AM] [NeatoVacuumRobot] Found robot #1 named "CatBot" with serial "OPS05418-7C3866EF12CA"
homebridge_1  | (node:3593) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'forEach' of undefined
homebridge_1  |     at that.robots.(anonymous function).maps.forEach (/usr/local/lib/node_modules/homebridge-neato/index.js:50:40)
homebridge_1  |     at Array.forEach (<anonymous>)
homebridge_1  |     at /usr/local/lib/node_modules/homebridge-neato/index.js:49:41
homebridge_1  |     at robot.getMapBoundaries (/usr/local/lib/node_modules/homebridge-neato/index.js:110:53)
homebridge_1  |     at /usr/local/lib/node_modules/homebridge-neato/node_modules/node-botvac/lib/robot.js:410:17
homebridge_1  |     at /usr/local/lib/node_modules/homebridge-neato/node_modules/node-botvac/lib/robot.js:482:17
homebridge_1  |     at /usr/local/lib/node_modules/homebridge-neato/node_modules/node-botvac/lib/api.js:34:45
homebridge_1  |     at process._tickCallback (internal/process/next_tick.js:68:7)
homebridge_1  | (node:3593) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
homebridge_1  | (node:3593) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
homebridge_1  | [8/1/2019, 3:55:08 AM] [NeatoVacuumRobot] Error: Request failed with status code 404: null

Hi, do you use plugin version v0.6.2? This looks like an older, already fixed, bug.

Yes, I'm on 0.6.2. I believe this problem may have derived from the fact that during the repair my robot has been removed from my account. I got it back today and after getting it back on my wifi it works again. I did have e to set up the Homekit accessories again. For some reason even though the name is the same, all my switches loaded in my "default room" instead of where they were meant to be. Going to test after work to see if I can replicate this if I turn off the robot.

https://github.com/naofireblade/homebridge-neato/blob/master/index.js#L49-L50 is where I was getting an error. I can’t grab the logs at the moment but one of those to arrays way undefined so the forEach threw an error. My Neato got stuck last night and died so it might have been offline even though it was on the charger.

I had to RMA my Neato again... after restarting Homebridge to update another plugin, this plugin prevents Homebride from starting because it can't find the robot.
homebridge_1  | [8/11/2019, 7:40:29 PM] [NeatoVacuumRobot] Error: Request failed with status code 404: null

These errors are really hard to fix because parts of the code are rewritten from a PR and I can't test it because my robot has no zone cleaning capability.
I guess I fixed it now. @ifeign @dgreif can you check if it's fixed with v0.6.3?

@naofireblade I just tested it out and checked the code.  All looks good!  I confirmed it by pausing wifi to my vacuum on 0.6.2 to reproduce the error, then upgraded and 0.6.3 worked perfectly.  Thanks for the fix!

Thank you for testing :)


Check all boxes don't work on tables

Check all boxes at top of tables don't work.

doesn't work on milestone-tasks/ page

assigned: @lucamatsumoto


[Question] Can pydantic peek into JSON and choose class to instantiate?

Question
Can pydantic peek into the JSON and choose the type to instantiate from a set of types?
Background
I am creating an API but unfortunately the requests all target the same endpoint (not under my control) and use a flat JSON body consisting of varying fields where only three are common to all
request bodies.
# Examples of varying request bodies
# Fields: event, sessionId, timestamp are common to all request JSON, but the rest of
# the fields are "event" dependent

## class Event
{  "event": "sessionCreated",
    "timestamp": ...
    "sessionId"" ...
}

## class SessionDestroyedEvent(Event)
{  "event": sessionDestroyed",
    "timestamp": ...
    "sessionId"" ...
    "startTime":....
    "duration": ....
    "reason":....
}

## class UserJoinedEvent(Event)
{ "event": "userJoined",
  "timestamp":...
   "sessionId":...
   "username": ...
   "location":
  "platform":...
}

## class UserLeftEvent(Event)
{ "event": "userLeft",
  "timestamp":...
   "sessionId":...
   "username": ...
   "location":
    "startTime":....
    "duration": ....
}

Can I annotate a related  set of BaseModel (maybe all descended from a Event class) and some how get pydantic to disambiguate based on the "event" field.
            pydantic version: 1.5.1
            pydantic compiled: True
                 install path: /home/miniconda3/envs/venv38/lib/python3.8/site-packages/pydantic
               python version: 3.8.2 (default, Mar 26 2020, 15:53:00)  [GCC 7.3.0]
                     platform: Linux-4.18.0-147.8.1.el8_1.x86_64-x86_64-with-glibc2.10
     optional deps. installed: []

...

There has already been quite some discussion on discriminated unions just like what you're describing here: https://github.com/samuelcolvin/pydantic/issues/619
Through a related issue, @samuelcolvin shared how he's currently managing such a response with this model: em2/protocol/views/main.py
As to the Models used to represent the examples you've given, here's how I would construct them, which should allow you to mimic the above example in your own codebase:
from enum import Enum, unique

@unique
class EventTypes(str, Enum):
    session_created = "sessionCreated"
    session_destroyed = "sessionDestroyed"
    user_joined = "userJoined"
    user_left = "userLeft"

class Event(BaseModel):
    event: EventTypes
    timestamp: datetime
    sessionId: str

class SessionDestroyedEvent(Event):
    startTime: datetime
    duration: timedelta
    reason: str

class UserEvent(Event):
    username: str
    location: str

class UserJoinedEvent(UserEvent):
    platform: str

class UserLeftEvent(UserEvent)
    startTime: datetime
    duration: timedelta

I'll close this issue as a duplicate of #619 , if you have any further questions, do follow that issue and ask them there.


Implement combinational groups and primitives

This will be a relatively big PR with pervasive changes.
TODO

[X] BREAKING: Deprecate non-comb groups attached to with clauses. This will require changes to the frontends.
[X] comb groups will be converted into normal groups by the remove-comb-groups pass.
[X] It will be an error to use combinational groups within normal control operators.
[X] Make top-down-cc work again.
[x] Write more tests from #639 for FSMs generated by top-down-cc.

[x] Group that writes to the same register in a sequence.
[x] if immediately nested in a while.
[x] while as the first node in the control program

[x] Fix frontends

[x] Dahlia: https://github.com/cucapra/dahlia/pull/383
[x] TCAM
[x] NTT
[x] Relay

[ ] Fix interpreter
[x] Add tests for new passes

[x] remove-dead-groups

[x] Combinational groups
[x] Normal groups

[x] minimize-regs

[x] Test that fails without the change of adding port in if and while to the gens list

Punt

[ ] #654

Notes
Change to Language Semantics
Change the invariant for compilation passes: control nodes cannot have with attached to them anymore. This means that if-with and while-with need to be converted in simple if and while nodes. This will be done either in a new pass or remove-comb-groups:
New syntax for if without with:
manipulate_r_out; // This group modifies r.out
if r.out { ... } else { ... }

In this case, we need to be sure that r.out will have a stable value during the entire execution of either the true or false branch. For frontends, they can manipulate the value of r.out during the execution of the branches. The compiler must use the new pass to ensure that the value in the port remains stable. @sampsyo does this feel reasonable or am I making this unnecessarily expressive?
while w/o with will have a similar syntax and restrictions.
Normal if-with syntax will be modified to only allow for combinational groups in the with position. remove-comb-group can always ensure the stable property because combinational groups cannot be used in normal control flow.
Changes to Passes
remove-comb-groups
The pass will transform comb groups to normal groups using the original heuristic. The only change is that it will also hoist the group into a seq before the if or while: if lt.out with cond { .. } turns into: seq { cond; if lt_reg.out { .. }
The if transformation is:
cond0; // Runs assignments in cond and saves value of lt.out
if comb_reg.out { // register with value of lt.out
  ...
}

The while transformation is:
cond0;
while comb_reg.out {
  ...
  cond0;
}

top-down-cc
BREAKING: Requires top-down-cc to run before this and assumes there are no groups in with position. New mechanism to generate FSMs (see #639).

Invalid Notes
Changes that didn't make into this PR. I'm leaving them here for future context.
@stable annotation on conditional ports
The compilation passes will require ports used in the cond position to be marked with the annotation @stable which tells the pass that the port's value will not change during the execution of the branches of if or the body of a while loop. When compiling comb groups, remove-comb-groups will add this annotation. For non combinational conditions, the frontend must add this annotation.

Turns out we don't need the @stable stuff with the new FSM representation generated by top-down-cc.

(NOTE: I'm starting to think that this strategy will not work for while loops at all since they might need to recompute things for the condition and therefore need to run a cond group.)

 Can I get some help fixing the interpreter? The changes to the normal interpreter seemed straightforward to make but the stepper changes seemed more involved.

Sure thing, I'll untangle those

Thanks! Apart from the interpreter fixes, the PR is ready for review & merge.

alright that should do it for the interpreter (probably). What's the situation with static-timing now since it seems to no longer be available? I adjusted the tests, but as it stands there are some redundant suites since we can't explicitly enable static timing anymore.
sidebar: I am very much not looking forward to merging these interpreter changes with the multi-component stuff.


Animating a Switch which has children containing Switches and Redirects causes major issues

Version
4.0.0-master
Test Case
Assume you have a top level component that has the basic routing table which animates them as they mount/unmount:
<CSSTransitionGroup>
<Switch key={location.key} location={location}>
  <Route path="/foo" component={Foo} />
  <Route path="/bar" component={Bar} />
  <Route path="/" component={Default} />
<Switch>
</CSSTransitionGroup>

Default.js has the following routes:
<CSSTransitionGroup>
<Switch key={location.key} location={location}>
  <Route path="x" component={x} />
  <Route path="y" component={y} />
  <Redirect to="/x" />
<Switch>
</CSSTransitionGroup>

Steps to reproduce
If you are on / and Default is rendered, and then navigate to /foo, you will see some flickering on the screen and eventually you're thrown back to /.
Expected Behavior
No flickering and router should continue to function normally.
Actual Behavior
Flickering animations and thrown back to /

<Route path="/" component={Default} />
that should be:
<Route exact path="/" component={Default} />
Otherwise everything matches /, might or might not be causing problems here.
More importantly, Redirect in a Switch needs to have a from and to prop, not just to.
Additionally, you've got some relative paths in there (path="x") which aren't supported.
So, clean all that up and see what happens. I'll reopen if there's still a problem.

Sorry, I was a bit in a hurry when I wrote this.
So the reason I don't want to use exact for path="/" is that I want to be able to define which routes should match in the Default component and redirect there if necessary. Otherwise I would end up with one big routing table a la v2/3 again.
Why does a Redirect need a from? How do I achieve the 'catch-all' behavior then? I would imagine omitting from would be the same as <Route render={() => <Redirect to="..." />} />, but maybe im wrong?
Here is the exact tables:
Root.js:
            <Switch key={location.key} location={location}>
              <Route
                path="/library"
                component={RegexLibrary}
              />

              <Route
                path="/settings"
                component={SettingsPage}
                exact
              />

              <Route
                path="/account"
                component={AccountPage}
              />

              <Route
                path="/r/:permalinkFragment(\w+)/:version(\d+)"
                component={RegexEditor}
              />

              <Route
                path="/"
                component={RegexEditor}
              />
            </Switch>

RegexEditor.js:
              <Switch key={location.key} location={location}>
                <Route
                  path={`${match.path}/tests/:tools(codegen|debugger)?`}
                  component={UnitTestArea}
                  exact
                />

                <Route
                  path={`${match.path}/:tools(codegen|debugger)?`}
                  component={TestStringArea}
                  exact
                />

                <Redirect to="/" />
              </Switch>

Here's a table showing what I want

User visits
Rendered Component

/
RegexEditor + TestStringArea

/r/foo/1
RegexEditor + TestStringArea

/r/foo/1/bar
Redirected to /

/bar
Redirected to /

/tests
RegexEditor + UnitTestArea

/tests/codegen
RegexEditor + UnitTestArea

How could I achieve something similar to that but with animations working?

@ryanflorence Do you have any input on this? Can we chat on Discord or similar?

@firasdib One of your issues is that you are using location.key as the transition key.
Given the app:
const App = ({ location }) => (
  <CSSTransitionGroup>
    <Switch key={location.key}>
      <Route exact path='/' component={Home}/>
      <Route path='/color' component={Colors}/>
    </Switch>
  </CSSTransitionGroup>
)

const Colors = ({ location, match }) => (
  <CSSTransitionGroup>
    <Switch key={location.key}>
      <Route exact path={`${match.url}`} component={ColorPicker} />
      <Route path={`${match.url}/:color`} component={SpecColor} />
    </Switch>
  </CSSTransitionGroup>
)

If the first location is:  url: '/color/red', key: 'abcdef' }, it will create the following structure:
<App>
  <CSSTransitionGroup>
    <Switch key='abcdef'> // appear
      <Route match={{ url: '/color' }}>
        <Colors>
          <CSSTransitionGroup>
            <Switch  key='abcdef'> // appear
              <Route match={{ url: '/color/red' }}>
                <SpecColor/>

Then, the user might navigate to: { url: '/color/blue', key: 'ghijkl' }. Because this has a different key than the previous URL, this means that there will be a new base <Switch> is rendered instead of re-using the existing one.
<App>
  <CSSTransitionGroup>
    <Switch key='abcdef'> // leave
      <Route match={{ url: '/color' }}>
        <Colors>
          <CSSTransitionGroup>
            <Switch  key='abcdef'> // leave
              <Route match={{ url: '/color/red' }}>
                <SpecColor/>
    <Switch key='ghijkl'> // enter
      <Route match={{ url: '/color' }}>
        <Colors>
          <CSSTransitionGroup>
            <Switch  key='ghijkl'> // appear
              <Route match={{ url: '/color/blue' }}>
                <SpecColor/>

What I believe you want to render is:
<App>
  <CSSTransitionGroup>
    <Switch key='/color'>
      <Route match={{ url: '/color' }}>
        <Colors>
          <CSSTransitionGroup>
            <Switch  key='/color/red'> // leave
              <Route match={{ url: '/color/red' }}>
                <SpecColor/>
            <Switch  key='/color/blue'> // enter
              <Route match={{ url: '/color/blue' }}>
                <SpecColor/>

This exposes an issue with the <Switch> component, which is that you do not have a way to pass match.url to the <Switch> as its key. This is unfortunate, because it would work well as the key here. A <TransitionSwitch> that wraps the matched <Route> in a <CSSTransitionGroup> would probably work. I have done a little experimenting along those lines, but not enough to confirm that that would be the way to go.

I see. Please get back to me if you find out how this can be solved. The match object is available in the switch, so perhaps that can be used somehow?

Also, where can I read about Redirect in a Switch? Because right now, no matter what I do, I get stuck in this redirect loop.

Still working on docs, it's beta, so you can read about it in the source :)

@ryanflorence I can not see any from prop? https://github.com/ReactTraining/react-router/blob/v4/packages/react-router/modules/Redirect.js#L16-L22

Even the code needs more docs :P it only works in switch, and then eventually handled in matchPath

Oh okay. So the from in a <Redirect> in a <Switch> operates like the path in a <Route>?

@pshrmn Do you have any news for me :-)?

@firasdib You can check out this wrapSwitch HOC in rrc. The component it creates isn't a drop in replacement for <Switch> (because I prefer passing a routes array over using elements and I don't support redirects as routes), but it is the same idea.
I've tested it out with a simple app and it seemed to work pretty well. Redirects are a bit tricky and you might need to mess around with the key a bit, but I think that they can still work.


Moved relevant content from "How it works" into "When not to use"

Moved one line of content from under "How it works" to "When not to use this component" as it is an instruction of when not to use the component.
I had missed this when reviewing the use of the Notification Banner component, and had advised to show both notification banner and error summary on the same page.
Thankfully it was caught in review, and I think this change would help to make the guidance clearer.

@trang-erskine Thanks for the speedy review! 👍🏻


fix: adjust return type of addDocuments in case of no additions

Fixing a bug when the /v1/workspace/{slug}/update-embeddings endpoint was called with no additions to the documents.
Solves issue #352

Ah great catch! Thanks for the contribution! If you want a contributor badge in the discord ping me!


cabal install fails for ghc 9.2.1

cabal install fails for ghc 9.2.1:
bash-3.2$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 9.2.1
bash-3.2$ cabal install splitmix
Warning: Unknown/unsupported 'ghc' version detected (Cabal <IP_ADDRESS> supports
'ghc' version < 9.1): /usr/local/bin/ghc is version 9.2.1
Warning: Unknown/unsupported 'ghc' version detected (Cabal <IP_ADDRESS> supports
'ghc' version < 9.1): /usr/local/bin/ghc is version 9.2.1
Resolving dependencies...
cabal: Could not resolve dependencies:
[__0] trying: splitmix-<IP_ADDRESS> (user goal)
[__1] next goal: base (dependency of splitmix)
[__1] rejecting: base-<IP_ADDRESS>/installed-<IP_ADDRESS> (conflict: splitmix =>
base>=4.3 && <4.16)
[__1] skipping: base-<IP_ADDRESS> (has the same characteristics that caused the
previous version to fail: excluded by constraint '>=4.3 && <4.16' from
'splitmix')
[__1] rejecting: base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>
(constraint from non-upgradeable package requires installed instance)
[__1] fail (backjumping, conflict set: base, splitmix)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, splitmix

https://hackage.haskell.org/package/splitmix-<IP_ADDRESS> is on hackage.


Documentation: Add Table of Contents in README file

Is your feature request related to a problem? Please describe.
If the Table of Contents is not present in the README file, it can make navigating through the project a bit challenging for users. Without a clear structure or easy access to key sections, users may find it time-consuming to locate specific information or understand the flow of the project.
Describe the solution you'd like
By adding a Table of Contents, you ensure that users can quickly find what they are looking for, improving overall accessibility and user experience.

Please assign me this task under gssoc-ext and hacktoberfest-accepted label.

@Maryam0330 assigned. Please think of more content or changes to get approval for level1.


WebXR Image tracking project is clipping the render in AR mode

Forum: https://forum.playcanvas.com/t/webxr-ar-image-tracking-render-clipping/20797
You can only see a quarter of the 3D render on top of the camera view.
If device pixel ratio is disabled, only part of the screen renders the 3D scene.

Breaking changing seems to be in v1.41.0


Multiple Currency Preference (Global)

Currently we're only showing only one supported currency (INR). We need to show the global preference to change the all currency type according to their preference!

assign me this


The performance for finding files is poor.

I got a working folder with about 20,000 files. Then, the performance issue occurred when finding files, i.e. finding ".cpp" files. There are symbolic links in my folder and I do not know whether it matters. The GUI was blocking for a while. Hope this can be fixed soon.

This extension is obsolete, you might want to use the native find file feature in vscode

Yes, you are right. Thanks a lot for your quick response!


fix: clear stale values on asset toggle

Description
When toggling assets in swapperV2 there are a few UI issues that surface when a useEffect doesn't fire when expected, or a quote or rate request fails/takes a long time to return.
This can be observed with the gas fee or rate (1 ETH = 333 POO) where they will briefly flash an incorrect value when toggling assets. In some case the they will stay an incorrect value.
This PR clears values we know become stale when an asset changes so they are never shown to the user.
Notice

[x] Have you followed the guidelines in our Contributing guide?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

Pull Request Type

[x] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)
N/A - general swapper improvement.
Risk
Minimal - only clears swapper data that is stale.
Testing
With swapperV2 enabled, notice that when toggling assets we don't get a flash of incorrect values in the rate or gas fields.
Engineering
As above.
Operations
As above.
Screenshots (if applicable)
N/A

Merged as it's a strict improvement on the as-is, but we still need to tackle the case where we don't have quotes and ensure we trigger a request.


chore: pakage update for vulnerability fix

PR summary
updated packages for vulnerability fix
Fixes: https://github.ibm.com/Notification-Hub/planning/issues/14065
PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the Angular Commit Message Guidelines.
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] New tests
[ ] Build/CI related changes
[ ] Documentation content changes
[ ] Other (please describe)

What is the current behavior?
vulnerability detected in micromatch-4.0.5.tgz and braces-3.0.2.tgz packages
What is the new behavior?
updated packages for vulnerability fix
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


/Identity/Account/ResetPassword page is not reachable when auth required globally

Looks like at least one page was missed when fixing #1617
Repro steps

dotnet new mvc --name netcoreIndividualAuth --auth Individual --use-local-db (doubt --use-local-db is mandatory)
cd netcoreIndividualAuth
Open project in Visual Studio
Edit Startup.ConfigureServices(...) to require an authenticated user globally i.e. change services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); to

services
    .AddMvc(configuration =>
    {
        var policy = new AuthorizationPolicyBuilder()
            .RequireAuthenticatedUser()
            .Build();
        configuration.Filters.Add(new AuthorizeFilter(policy));
    })
    .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

Start app in the debugger
Ensure debug option "Enable Just My Code" is disabled and "Microsoft Symbol Servers" are enabled under "Symbols"
Set C# function breakpoint at Microsoft.AspNetCore.Identity.UI.Services.EmailSender.SendEmailAsync
In browser, register a new user
In debugger, copy the URL in the htmlMessage parameter
In browser, head to the copied URL but change &code to &code
In browser, log out, click on "Forgot your password", then enter the new user's email and click Submit
In debugger, copy the URL in the htmlMessage parameter
In browser, head to the copied URL

Expected

Land on /Identity/Account/ForgotPasswordConfirmation page after step 11
Land on /Identity/Account/ResetPassword page after step 13

Actual
Redirected to the login page again in both cases i.e. both page models lack [AllowAnonymous] though the lack in /Identity/Account/ResetPassword is more troublesome.

This is a small part of #1617 which does not work end-to-end. Found while verifying (aspnet/Release#263) with the 2.1.300-preview2-008523 SDK and Microsoft.AspNetCore.Identity.UI 2.1.0-preview2-30552.

So... is the suggestion to just add AllowAnonymous to the two pages that should allow anonymous?

Yes, exactly. Sorry for leaving that out.

It's a 2-line fix unless other pages involved in resetting a password also need to be accessible before user logs in again.

After lowering the lockout attempts to 2 i.e. services.AddDefaultIdentity<IdentityUser>(options => options.Lockout.MaxFailedAccessAttempts = 2), I found the /Identity/Account/Lockout page also needs [AllowAnonymous] on its page model class. Without this, user is redirected to login page again.

Related question: Should the /Identity/Account/AccessDenied page have [AllowAnonymous]? This page doesn't appear to be used by default and I'm unsure where it would be used.
Might have missed other pages that should allow anonymous access for specific scenarios.

Access denied is for someone whose permissions failed auth - so they are logged in, just they don't have access. So it doesn't need allow anonymous, it's point is that someone is logged in.


Unable to download

OS: Ubuntu 18.04 LTS
Docker version 18.06.1-ce, build e68fc7a
Docker-Compose 1.22.0
The download always stalls when pulling from library/nextcloud, specifically 97bfe05c49ae. It always stalls at ~20% mark.
I can pull the regular nextcloud and other docker libraries fine individually, the issue only happens when trying to start the containers from the *.yml file.
I have tried the instructions on Ubuntu 16.04, and it works fine.
PS. This issue also only happens when using an AWS lightsail instance (Sydney). It downloads fine from my Linode.

The AWS server might have been out of resources, on the free tier 512mb VPS.


fix FlawCollector to account for an empty acknowledgment affiliation

C.l.o.s.i.n.g OSIDB-1195

Closing in favor of https://github.com/RedHatProductSecurity/osidb/pull/309 which is opened from/to the correct branches instead according to the documentation in the OPS repo.


Maintenance Release

[#39] Maintenance release
Update dependencies to latest
Add travis build for Node.js v7.x and v6.x
Docs improved/corrected
Add target pretest in scripts section to rm ./test/tmp folder

Current coverage is 100% (diff: 100%)

Merging #42 into master will not change coverage

@@           master   #42   diff @@
===================================
  Files           9     9
  Lines         525   525
  Methods       103   103
  Messages        0     0
  Branches       68    68
===================================
  Hits          525   525
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update 9dee021...e0eb00e

Coverage remained the same at 100.0% when pulling 7ef1dc31ea87694d0d511c3a3fa5e09d69fe3bcf on development into 9dee021eceb66a354ebd81191d0c7feb9098dd08 on master.


Contribution to "Deeply nested json in jackson-databind"

Updates

Affected products
Description

Version 2.14 has not been relased yet.