[DOCS] Update Contributing guidelines

Description
I would like to add a few points:

I would like to include some basic guidelines for first-time contributors, outlining the GitHub workflow they should follow.
Additionally, I want to emphasize that Pull Requests without an associated issue will not be accepted. It is important for contributors to have an assigned issue, whether it has already been opened or raised by them, before creating a Pull Request. This requirement helps maintain organization and clarity throughout the development cycle.

Screenshots
No response
Additional information
I would like to contribute to this under GSSoC'23.

Please assign me, and I will start contributing to this issue by creating a pull request.

Not needed! as of now

Not needed! as of now

Thanks for letting me know.


[1.14.4] Implement inventories for plow and cargocart

The PlowCart and the CargoCart currently only have inventories that can't be accessed by regular players because there is no UI yet. This still has to be implemented.

Closed by a431ae80bd81e3779524ca4c34092f9508640e30


Android Basics: No suggestions or errors

URL of codelab
n/a
In which task and step of the codelab can this issue be found?
n/a
Describe the problem
After importing this project all the suggestions (ctrl+space) and code analysis are gone. Only when the run app button is pressed, the warnings and errors are shown. All other projects work fine and the google solutions didn't work
Steps to reproduce?

Download project
Import project into android studio
Press ctrl + space to see if suggestion are shown. Any warnings or error should also not appear

Versions
Android Studio version: 2020.3.1 patch 4
API version of the emulator: 31.1.4
Additional information
Include screenshots if they would be useful in clarifying the problem.

Hi,
I met the same situation, too.
First, try: Android Studio -> File -> Invalidate Caches and Restart
If that does not work, try to change the version of kotlin plugin.


Request for adding a  new server

Pls add a server of animeworldindia so we can enjoy anime in reginal language also..............

Source Criteria
AnimeTV have multiple source and have been selected carefully. If you want to request new source, please check this source criteria below:

Mandatory

Not regional/specific country/language Source. It should be a global source
Have English dub
Have softsub (Multi lang)
Have skip time features
Structured & Nicely organized
Standarized title to match with AniList & MAL

Optional

Have filler flags
Have multiple stream server
HLS, MP4 or Dash streaming

Will never implemented


Interoperability support

Currently API is incompatible with neither DeepL nor Libretranslate one.
DeepL API: Uses FormData as body, also all paths starts with /v2/
POST /v2/translate HTTP/2
Content-Type: application/x-www-form-urlencoded

text=Hello%2C%20world!&target_lang=DE

200 OK
Content-Type: application/json

{
  "translations": [
    {
      "detected_source_language": "EN",
      "text": "Hallo, Welt!"
    }
  ]
}

Libretranslate API: Have other parameter names
POST /translate HTTP/2
Content-Type: application/json

{
    q: "Hello world!",
    source: "auto",
    target: "de"
}

200 OK
Content-Type: application/json

{
    "detectedLanguage": {
        "confidence": 92,
        "language": "en"
    },
    "translatedText": "Hallo Welt!"
}

I want to know why I want to be compatible. This project is completely independent. If you want the API of this project to be available on other applications, all that needs to be done is for the application to be compatible with DeepLX.


graphviz: fix CVE-2018-10196

Motivation for this change
https://github.com/NixOS/nixpkgs/issues/47122
please backport to staging-18.09
Also I replaced an occurrence of overrideDerivation as advised by https://nixos.org/nixpkgs/manual/#sec-pkg-overrideDerivation
cc @bjornfor @7c6f434c as maintainers.
Things done

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

[ ] NixOS
[ ] macOS
[x] 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/) -> only dot and vimdot
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build graphviz

It's weird that there's been basically no reaction to the patch upstream for months.

Timed out, unknown build status on x86_64-darwin (full log)
Attempted: graphviz
Partial log (click to expand)
cannot build derivation '/nix/store/8ddrllvw09590zxwak6x43wcksn32p3r-cairo-1.15.12.drv': 20 dependencies couldn't be built
cannot build derivation '/nix/store/mbars76jn4h976a81bwlryyhzjqq6mr2-absolute_gir_path.patch.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/n5z8nigvh2g2chnnyl93s2ka4vhr98k1-harfbuzz-1.8.8.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/g8fidggr77w7kh23z2nsb2ybi9dnj8dr-mesa-noglu-18.1.8.drv': 32 dependencies couldn't be built
cannot build derivation '/nix/store/w39ccryqc4fpkij5l43iyhsck6d7zd1a-gobject-introspection-1.56.0.drv': 12 dependencies couldn't be built
cannot build derivation '/nix/store/2babdbf7glsdn1z65hji1z502mv8rfc7-libGL-1.0.0.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/jr9yi34javdmvpfkyl4r8v6l5p6s97q6-libdevil-1.7.8.drv': 12 dependencies couldn't be built
cannot build derivation '/nix/store/mhbnmf9ai6kcjnjyqw73dq7jd2ykk9ip-pango-1.42.4.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/q1yb0c1pzjg6l3addfwcrqzb9gni2m0g-graphviz-2.40.1.drv': 22 dependencies couldn't be built
error: build of '/nix/store/q1yb0c1pzjg6l3addfwcrqzb9gni2m0g-graphviz-2.40.1.drv' failed

Timed out, unknown build status on x86_64-linux (full log)
Attempted: graphviz
Partial log (click to expand)
building of '/nix/store/5z9al7m2dpbhhx8gai5hs5hwcqjdv2b3-mesa-noglu-18.1.8.drv' timed out after 3600 seconds
cannot build derivation '/nix/store/90q0dfhlwm0d7zinhmbgmg5r2wa93632-libGL-1.0.0.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/7a8a8xnvbfzbvzbsiaisnargiqgbxmyf-cairo-1.15.12.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/x6kpfbpcc7kabimrdwg8bqg7is7dj0z2-libdevil-1.7.8.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/0gybd7zp2dizp412hymzy2fwvffpm6md-absolute_gir_path.patch.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/nv3z4mmspq3h511kbs4svcb1718dbvc5-harfbuzz-1.8.8.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/rh09mzmc1sj7092kz2hfxmc36ixja0qz-gobject-introspection-1.56.0.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/5bl22sj0b01jnr859940a6w21vp83cjw-pango-1.42.4.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/98n4d5w2hgk64jhc64jhb3naqn5vym5g-graphviz-2.40.1.drv': 2 dependencies couldn't be built
error: build of '/nix/store/98n4d5w2hgk64jhc64jhb3naqn5vym5g-graphviz-2.40.1.drv' failed

Success on aarch64-linux (full log)
Attempted: graphviz
Partial log (click to expand)
gzipping man pages under /nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/share/man/
strip is /nix/store/842p712rvbhidp5bzvd5q9dkjpxrnhid-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/lib  /nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/bin
patching script interpreter paths in /nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1
/nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/bin/gvmap.sh: interpreter directive changed from "/bin/sh" to "/nix/store/1lgzhz3pk4g6219lrbjhh9bsrkz5cp83-bash-4.4-p23/bin/sh"
/nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/bin/dotty: interpreter directive changed from "/bin/sh" to "/nix/store/1lgzhz3pk4g6219lrbjhh9bsrkz5cp83-bash-4.4-p23/bin/sh"
/nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/bin/lneato: interpreter directive changed from "/bin/sh" to "/nix/store/1lgzhz3pk4g6219lrbjhh9bsrkz5cp83-bash-4.4-p23/bin/sh"
/nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1/bin/vimdot: interpreter directive changed from "/bin/sh" to "/nix/store/1lgzhz3pk4g6219lrbjhh9bsrkz5cp83-bash-4.4-p23/bin/sh"
checking for references to /build in /nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1...
/nix/store/mm58zwigx3crn0rlllnm5yzclm7k3pyz-graphviz-2.40.1

PRs seem to get processed in the project, though. Not sure what is the most reasonable way to handle this… Asking the original submitter if it is OK to submit a PR with them as commit author?


Improve firewall rule consumption

/cc @lmickh

I'm working on testing failure cases with attribute-based rules right now.

Will need a update to os-base as well. We can use am1-test-0 for that.  It can be rebuilt if need be and is outside of the current restrictions of os-base in the production env.
Extending the firewall_rule LWRP kind of ties us to the use of the 'firewall' cookbook, but I can't really think of a cleaner way to do it.  If we were to try to move away from 'firewall' in the future, it would make sense to just move to a different wrapper cookbook.
Looks like it should work assuming testing is fine.  We should probably test with the firewall_rule LWRP used in another recipe to make sure it doesn't conflict with the other cookbooks.   That way we can update and test the attribute driven rules one at a time.

@lmickh Does it make sense to swallow and log firewall rule exceptions? Perhaps like so.
  begin
    firewall_rule name do
      populate_optional_attrs(rule,
        :description, :position, :stateful, :direction, :source, :source_port,
        :destination, :dest_port, :interface, :dest_interface, :redirect_port,
        :logging, :protocol, :command, :port)
    end
  rescue => error
    Chef::Log.fatal 'There was an error processing a firewall rule!'
    Chef::Log.fatal error
  end

I believe that instead we don't want to compile & converge whenever a rule fails. That might leave our server in an indeterminate and non-functional state.

I'm running tests to see what happens whenever an errant rule busts the run. So far it does not result in the removal of existing rules, which is the desired behavior.

I reviewed the code in the os-datadog cookbook and the underlying community cookbook, and I'm not sure at this point how I can leverage them to push a notification to datadog.
If datadog is running on all production servers, then we should be alerted whenever a Chef run fails.  In this case, whenever a firewall rule fails, correct? Does that mean we just need to remove the begin/rescue block?

You would want to look here for the code I was talking about.  The os-datadog cookbook installs that handler to report events up.  Pretty sure you should be able to use it as well.  Another option is to to create an event through the api/v1/event endpoint (docs here).  The api key is in the datadog attribute.  Just do a node.recipe? first to make sure it is running on the machine.
If you want to alert on a firewall rule failure AND not bomb out on the Chef run, we need to go the datadog event/handler route.  If we are fine with the whole run bombing, we can just let the datadog handler report the failed chef run.
I'm fine with going the second route, removing the begin/rescue, whole run halts, and letting the handler report it.  Will keep it simpler for now.  We won't lose the previous firewall state (at least the portions in the attr files) and we can still get notified something failed.  Lets try that and see how it goes.  Can add in the exception handling later if we decide it is still needed.

I just reviewed the code for the handler (leverages the underlying metrics, events and tags classes) and it doesn't look like the methods contained therein are designed for external use. Instead, I think we would have to use the datadog client if we want to publish events.
I'll remove the begin/rescue for now and let the handler report failures.


superset_init fails after upgrading to 3.0.0 due to alembic migrations misconfiguration

How to reproduce the bug

Install superset version 3.0.0 using docker compose
Start it using $ TAG=3.0.0 docker compose -f docker-compose-non-dev.yml up
In the output we see the following:

...
superset_init         | 2023-10-04 00:13:59,065:INFO:sqlalchemy.engine.Engine:ROLLBACK
superset_init         | 2023-10-04 00:13:59,065 INFO sqlalchemy.engine.Engine ROLLBACK
superset_init         | INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
superset_init         | INFO  [alembic.runtime.migration] Will assume transactional DDL.
superset_init         | ERROR [flask_migrate] Error: Can't locate revision identified by '4b85906e5b91'

superset_worker       | [2023-10-04 00:13:59,719: INFO/MainProcess] mingle: all alone
superset_worker       | [2023-10-04 00:13:59,749: INFO/MainProcess] celery@eae9ce18f86d ready.
superset_worker       | [2023-10-04 00:13:59,752: INFO/MainProcess] Task reports.prune_log[8eaff329-7d30-4c71-a767-8843ce3e1830] received
superset_worker       | [2023-10-04 00:13:59,754: INFO/MainProcess] Task reports.scheduler[fea31b64-1d28-4488-aa65-3b91cbdafe5c] received
superset_worker       | [2023-10-04 00:13:59,804: INFO/ForkPoolWorker-1] Task reports.prune_log[8eaff329-7d30-4c71-a767-8843ce3e1830] succeeded in 0.04927377501735464s: None
superset_worker       | [2023-10-04 00:13:59,806: INFO/ForkPoolWorker-2] Task reports.scheduler[fea31b64-1d28-4488-aa65-3b91cbdafe5c] succeeded in 0.0521750440238975s: None
superset_worker_beat  | [2023-10-04 00:14:00,002: INFO/MainProcess] Scheduler: Sending due task reports.scheduler (reports.scheduler)
superset_worker       | [2023-10-04 00:14:00,005: INFO/MainProcess] Task reports.scheduler[1e14046e-0e7d-48bf-9c93-c48f0da43ff1] received
superset_worker       | [2023-10-04 00:14:00,038: INFO/ForkPoolWorker-1] Task reports.scheduler[1e14046e-0e7d-48bf-9c93-c48f0da43ff1] succeeded in 0.03090966702438891s: None

superset_init exited with code 1

superset_app          | <IP_ADDRESS> - - [04/Oct/2023:00:14:21 +0000] "GET /health HTTP/1.1" 200 2 "-" "curl/7.88.1"
superset_app          | <IP_ADDRESS> - - [04/Oct/2023:00:14:51 +0000] "GET /health HTTP/1.1" 200 2 "-" "curl/7.88.1"
superset_worker_beat  | [2023-10-04 00:15:00,020: INFO/MainProcess] Scheduler: Sending due task reports.scheduler (reports.scheduler)

I added the blank lines myself, to emphasize key parts of the output.
Since "Applying DB migrations" is the first step of docker-init.sh and it completes with an error, the remaining steps are skipped, namely:

Step 2. Create an admin user
Step 3. Create default roles and permissions
Step 4. Load some data to play with

And looks like it is caused by missing migration file in superset_app container, because alembic expects to see the following migration:
select * from alembic_version;
 version_num
--------------
 4b85906e5b91

which corresponds to 2023-09-15_12-58_4b85906e5b91_add_on_delete_cascade_for_dashboard_roles.py but in superset_app container there is no such migration:
root@515f0f33ea47:/app# ls superset/migrations/versions/ | tail -n 5
2023-08-09_15-39_4448fa6deeb1__dd_on_delete_cascade_for_embedded_dashboards.py.py
2023-08-14_09-38_9f4a086c2676_add_normalize_columns_to_sqla_model.py
2023-08-22_11-09_ec54aca4c8a2_increase_ab_user_email_field_size.py
__init__.py
__pycache__

The file 2023-08-22_11-09_ec54aca4c8a2_increase_ab_user_email_field_size.py corresponds to one of the previous migrations.
I made sure all migrations are applied and for now I updated the alembic data to get rid of the initialization error (see below), but this is more of a dirty hack and the problem needs to be solved by properly transferring the scripts to the container
update alembic_version set version_num = 'ec54aca4c8a2' where version_num = '4b85906e5b91';

Expected results
No errors during the service start.
Actual results
Errors and incorrect configuration, superset_init container status is Exited (1)
Environment

superset version: Superset 3.0.0
python version: Python 3.9.16

$ docker ps -a
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED          STATUS                      NAMES
eae9ce18f86d   apachesuperset.docker.scarf.sh/apache/superset:3.0.0   "/app/docker/docker-…"   20 minutes ago   Up 16 minutes (healthy)     superset_worker
d03dbd3b815a   apachesuperset.docker.scarf.sh/apache/superset:3.0.0   "/app/docker/docker-…"   20 minutes ago   Up 16 minutes (healthy)     superset_app
6dc22b0ffded   apachesuperset.docker.scarf.sh/apache/superset:3.0.0   "/app/docker/docker-…"   20 minutes ago   Exited (1) 16 minutes ago   superset_init
69a41f099a15   apachesuperset.docker.scarf.sh/apache/superset:3.0.0   "/app/docker/docker-…"   20 minutes ago   Up 16 minutes               superset_worker_beat
ab393ec6595b   redis:7                                                "docker-entrypoint.s…"   20 minutes ago   Up 16 minutes               superset_cache
e700220c988f   superset-websocket                                     "docker-entrypoint.s…"   20 hours ago     Exited (1) 20 hours ago     superset_websocket
f291bc14ddd1   node:16                                                "docker-entrypoint.s…"   20 hours ago     Exited (137) 20 hours ago   superset_node

Checklist
Make sure to follow these steps before submitting your issue - thank you!

[x] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[x] I have reproduced the issue with at least the latest released version of superset.
[x] I have checked the issue tracker for the same issue and I haven't found one similar.

In addition to this, I've noticed that migration 317970b4400c (the one that revises migration ec54aca4c8a2) does not exist when pulling apache/superset:3.0.0. This results in our Superset instance being stuck on ec54aca4c8a2.
Migration timeline:

ec54aca4c8a2_increase_ab_user_email_field_size (the one we're stuck on)
317970b4400c_added_time_secondary_column_to_ (the one that doesn't exist in the 3.0 image)
4b85906e5b91_add_on_delete_cascade_for_dashboard_roles (this one somehow does exist in the 3.0 image)

I don't know if this has been solved, as it comes way too late. In my case, removing the volumes attached to the containers solved the issue.
I believe that certain database stored the docker id of a container for performing some action (in this case, "4b85906e5b91"), and, for some reason, it was made permanent. Because every docker compose uses the same volumes, every time I tried to start a fresh download, I kept getting the same error. I am not completely sure that this was the reason though.

I think I'll go ahead and close this, since it's stale, seemingly solved, and we no longer support Superset 3.0. If anyone's still struggling, please file a new issue with updated context for currently supported versions. Thanks all!


SoC-specific firmware cannot be found

Some SoC-specific firmware (lib/firmware/tegra*) in the l4t-firmware package cannot be found by the kernel, despite l4t-firmware being in the NixOS firmware package list.
For example, the following error shows up in the kernel log when attempting to use NVENC on an Orin NX:
falcon 154c0000.nvenc: Direct firmware load for nvhost_nvenc080.fw failed with error -2
falcon 154c0000.nvenc: looking for firmware in subdirectory

I suspect the firmware files need to be moved out of their tegraXXX directory and into the main tree. This can be done based on the given model in the NixOS configuration.

I'm a bit surprised I haven't run into this myself, since we have a test that (I believe) uses nvenc.
If you run nix run github:anduril/jetpack-nixos#samples.multimedia-test , do you get this same kernel error message?

My bad; it appears that the kernel attempts to load firmware from the main directory first before then loading it from the correct subdirectory, which is succeeding.
I haven't yet been able to test NVENC properly due to what I suspect is this bug. I'm looking at using OE4T's shim now.

More details in https://github.com/anduril/jetpack-nixos/pull/228.


GNUInstallDirs

https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html

Unclear how this is useful or necessary.


Update PHPDoc of getRequest with '\Illuminate\Http\Request'

WHY
BEFORE - What was wrong? What was happening before this PR?
There was not description and return type on getRequest method PHPDoc.
AFTER - What is happening after this PR?
I just add a description & add return type with '\Illuminate\Http\Request'
HOW
How did you achieve that, in technical terms?
When I access  $this->crud->getRequest()->input('name') , my IDE can not read input() method. It show warning.
Is it a breaking change?
No
How can we test the before & after?
Just check in your IDE. If IDE can read and suggest all method of '\Illuminate\Http\Request' , it's working nicely.

Thank you @emrancu ! Keep 'em coming, if you find more docblock annoyances like this 🙏


[Candidate 1v1 Dammed Cottages ZH v1] After dam break, water particles keep pouring in but water level no longer rises

Observed behaviour
After dam break, water particles keep pouring in but water level no longer rises.
Expected behavior
There are no such particles and sound effects of pouring water after the flooding is completed.
Screenshots

its beause the water is pourin out there also its included in dam(object itself) so it cant be fixed


Add initial test coverage (fails on tail values)

This PR adds the first test case that can be used to verify the tail handling, when implemented.
@neon-sunset Let me know if you're still working on this project and if you need any help completing the implementation.

Wow I had no idea someone would look at this. This is very unfinished initial draft of what the implementation would approximately look like. At the time, I was reading the papers by Dr. Lemire and reviewing existing the implementations in Rust, Go, etc. realizing that .NET's cross-platform SIMD vectors are a great fit to implement this natively in C#.
However, my skill and knowledge were insufficient (at the time) so after getting stuck I decided to place this into a long list of OSS projects to do later :D
To be honest, if you were to see this through, that would likely require doing the 80-90% of the remaining work (I don't even know if the output here matches reference implementations). Meaning, you might as well create your own repo as I wouldn't want to get the credit for someone else's work.

Hi @neon-sunset Thanks for the thoughtful response. I'll start my own implementation and share the source when I make some more progress. So far, I've completed and verified the non-non-vertorized scalar paths. The vectorization side is also going to challenge my brain -- but should be a fun challenge.


v0.1.3 Set default logging level to INFO

Codecov Report

Merging #14 (380b850) into main (bea2ba8) will decrease coverage by 0.42%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #14      +/-   ##
==========================================
- Coverage   76.37%   75.94%   -0.43%
==========================================
  Files           9        9
  Lines        1642     1642
  Branches      328      328
==========================================
- Hits         1254     1247       -7
- Misses        283      285       +2
- Partials      105      110       +5

Flag
Coverage Δ

unittests
75.94% <100.00%> (-0.43%)
:arrow_down:

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

Impacted Files
Coverage Δ

flaml/version.py
100.00% <100.00%> (ø)

flaml/model.py
78.37% <0.00%> (-0.78%)
:arrow_down:

flaml/automl.py
72.38% <0.00%> (-0.63%)
:arrow_down:

flaml/search.py
78.13% <0.00%> (-0.54%)
:arrow_down:

Continue to review full report at Codecov.

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


Drop remove operations from webhook patches

What type of PR is this?
/kind bug
What this PR does / why we need it:
Prevent job webhooks from dropping fields for newer API fields when Kueue libraries are behind the latest released CRDs.
This was possible by reusing controller-runtime's handler for CustomDefaulter, by dropping the "remove" operations from the jsondiffs.
I had to duplicate controller-runtime's webhook builder, because there is no way to introduce a custom handler in it. I have an open PR to upstream this ability https://github.com/kubernetes-sigs/controller-runtime/pull/2932
Which issue(s) this PR fixes:

Fixes #2878
Special notes for your reviewer:
Just to expand on why I decided to go with this approach of dropping the remove operations:
Another option I considered was for every job to return jsonpatches in the Suspend operation. But then it becomes quite hard to explain how to do your own, if you aren't already familiar with jsonpatches. It's much simpler to say "just edit the object". Then I was thinking how can we produce safe patches generically, starting from an edited object. One option would have been to do something similar to https://github.com/kubernetes-sigs/controller-runtime/pull/2931, but that approach might introduce other bugs, as explained in https://github.com/kubernetes-sigs/controller-runtime/pull/2931#discussion_r1728367254
So ultimately I decided to exploit the fact that our webhooks simply don't drop fields.
Does this PR introduce a user-facing change?

Prevent job webhooks from dropping fields for newer API fields when Kueue libraries are behind the latest released CRDs.

/cc

/lgtm
/approve
/hold
In case @tenzen-y has more comments. @alculquicondor please follow up with a note about the recommendation for registering webhooks for integrations.
Also, @tenzen-y  @alculquicondor  WDYT about cherry-picking to 0.8?

re cherry-picking:
This PR depends on https://github.com/kubernetes-sigs/kueue/pull/3132, so maybe a bit too much for a clean merge?
I think we are relatively safe given that we are using the latest libraries in 0.8 already. And people who might be thinking of upgrading k8s or kuberay are more likely to also stay up to date with Kueue.

re cherry-picking: This PR depends on #3132, so maybe a bit too much for a clean merge?
I think we are relatively safe given that we are using the latest libraries in 0.8 already. And people who might be thinking of upgrading k8s or kuberay are more likely to also stay up to date with Kueue.

Indeed, I had some discussions about cherry-picking there: https://github.com/kubernetes-sigs/kueue/pull/3132#discussion_r1775672986
So, I'm ok without cherry-picking.

go<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>dial tcp <IP_ADDRESS>:443: i/o timeout

https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_kueue/3132/pull-kueue-test-multikueue-e2e-main/1839710600670744576
This seems to be a networking connectivity error.
/test pull-kueue-test-multikueue-e2e-main

I think https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_kueue/3132/pull-kueue-test-integration-main/1839710600372948992 is a flake

Due to https://github.com/kubernetes-sigs/kueue/issues/3144

/test pull-kueue-test-integration-main

/cherry-pick release-0.8


Fixed systemd detection in ubuntu 18.04

This pull request fixes pkgr which runs the app via initctl instead of systemd in ubuntu 18.04.
From now on initctl is only used in ubuntu 14.04.

Thanks!


Plan MovR changes for Q4 developer enablement projects

In Q4, we need to build a "cloud-native starter app" to be the foundation of @ericharmeling's end-to-end app development tutorial as well as input for other projects, such as the next "Developer Basics" online training course. Significant work has already gone into MovR in Python/SQLAlchemy, so that should be the app we use, unless there's very strong reasoning to the contrary.
The first step is to align a group of stakeholders on the exact shape/schema of MovR for the purpose of having a full-stack application for education and demonstration. In the end, the code should be easily leveraged in education content and fork-able from GitHub.
@ericharmeling will lead this effort.
Stakeholders:

@ericharmeling
@bdarnell
@timveil
@rafiss
@thatnerd

Observers:

@nstewart
@jseldess

@timveil's feedback with early impressions from the movr schema: https://docs.google.com/document/d/10ri0HTUIv5-5ofjIUjqnRC4co2-7XyXjmVMdZSVSm1w/edit?ts=5d9e71d9#heading=h.qcrio2griqja
Input from @nstewart:
I’d break the feedback into a few parts

stuff that is required to make crdb work in multi-region deployements (ie compound primary keys) - we can’t change this. but we can make a single region movr for certain docs if we need it
stuff that is weird, but is there due to bugs (lots of issues around FKs and weird things like having city and vehicle_city). — we just need these fixed in the DB
stuff that is tied to how the app works — ie users can have multiple promo codes by design. and users can ride vehicles, but they can also add them to the pool
Things that are not necessary or confusing — for example having a credit card column raises more questions than it answers. (edited)

I think #4 is the place to focus, but curious what everyone here thinks
I’ll defer to the folks on this thread. As a reminder, this app is modeled after Lime

I'd say this planning work is done.


Add simple search sample to readme

Addresses another example for issue #15

Looks great. Thanks @xmclark!


fix: -1 Days unsupported (International Date Line)

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes: #51
Summary:

Adding unit test to testing when the -1 day arrive
Adding condition to showing the span text in flight header when the --1 day arrive
Adding demo for show the UI meanline -1 day arrive/depart

Type of change:
Please delete options that are not relevant.

[ ] New capability
[x] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[ ] Other (please elaborate)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Should caveats be third party?

This won't matter provided the check parameter in Macaroons verification is a conjunction not a disjunction over caveats. This is because if a malicious third party added a first party caveat then the original caveat will still give false and negate the conjunction. There is a problem if there is a conjunction. This does introduce possibility for denial of service if capabilities are intercepted and lower level tokens added to negate disjunctions. However I don't think this applies as the threat model relies on capabilities not being intercepted to avoid elevation of privilege.

Actually, assuming one can maliciously remove first party caveats from the serialised form of the Macaroon and then deserialise it back again, a quick fix would be to put tokens into the identifier rather than the identifier just being a high entropy string which isn't ever used.


UpdateMetadataAccount returning deprecated error

Hello.
The instruction in metaplex/token_metadata 'UpdateMetadataAccount' is returning a deprecated error:
2024/02/21 10:00:18 failed to send tx, err: {"code":-32002,"message":"Transaction simulation failed: Error processing Instructionrogram error: 0x4b","data":{"accounts":null,"err":{"InstructionError":[0,{"Custom":75}]},"logs":["Program metaqbxxUerdq28cj1RbAWkbt518x1s invoke [1]","Program log: This instruction was deprecated in a previous release and is now removed","Program metaqbxxUerYQm3ybzjb6a8bt518x1s consumed 2371 of 200000 compute units","Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s failed: custom p: 0x4b"],"returnData":null,"unitsConsumed":0}}
I'm also using the example provided in the docs https://github.com/blocto/solana-go-sdk/blob/main/docs/_examples/program/metaplex/token-metadata/update-metadata/main.go
I belive this could be because in the official metaplex docs they have upgraded the instruction? As seen in here https://docs.metaplex.com/programs/token-metadata/changelog/v1.1

thank you for pointing this out. I will update them soon!

I added UpdateMetadataAccountV2. this one should be fixed in v1.27.0!


celluloid doesn't install with requirements

Shouldn't jupyter and nbdev also be part of requirements?

These are technically dev-only requirements (theyre also installed by default in the CI), but it is probably sensible to add at least jupyter, or explain this in CONTRIBUTING. Thanks!

Yup, adding it to CONTRIBUTING makes sense to me.


The actions item shows strangely in the 'Actions' panel

Storage Explorer Version: 1.12.0
Build: 20200210.4
Branch: master
Platform/OS: Windows 10/ Linux Ubuntu 18.04
Architecture: ia32/x64
Regression From: Previous release(1.12.0)
Steps to reproduce:

Launch Storage Explorer.
Check the actions in the 'Actions' panel.

Expect Experience:
The actions item shows well.
Actual Experience:
The actions item shows strangely.

@v-limu Can you share some screenshot, please? We're not sure what you mean by the action items showing "strangely".

This is what I have on this particular build.

Hit the wrong button. Reopen.

Hi @craxal @jinglouMSFT 😉

Click 'Storage Accounts'. The actions show strangely in 'Actions' panel.

This issue also reproduces in clicking all items.

oh yeah. I see this too on my install using the same build.

A fix has been merged. Please verify.

@JasonYeMSFT
Verified on build 20200311.2. Reproduce.

Fixed on build 20200312.1. So close it.


Rails Admin should be prettier

Update:
See the new pretty rails_admin live here: http://rails-admin.heroku.com
See the code here: https://github.com/gunn/rails_admin/tree/activo
...
I've put up a repo with some mockups at: https://github.com/gunn/rails_admin-prototypes/
The idea would be to base this on the current jquery branch, and modify the markup to be consistent with what the web-app-theme project provides. This would make us compatible with a few nice css / js themes in addition to the one shown in my mockups.
What do people think?

@gunn You did a excellent job with this, but now i'm working on Rails 3.1, so i'm not be able to use it.
Where can i find an update? Thanks.


DRAFT: Promo cards feature implementation

Description
Still to do:

testing
doc

The commit pushes forward a modular promo card system, which is used to hold info on a particular product. The card consists of an image, title, content and footer. One or more cards are grouped into a card list which spreads content based on screen width, in order to accommodate tablet/mobile devices.
It also augments the lg-separator by introducing a 'dotted' variant alongside the standard solid one.
Fixes # (issue)
Requirements
The components should be tested, if possible, on desktop, tablet and mobile displays.
Storybook link: (once netlify has deployed link provide a link to the component)
Design link: https://legalandgeneral.invisionapp.com/d/main/#/console/20962538/441579639/inspect
Screenshot: (if appropriate provide a quick screen grab of the changes)
Checklist:

[x] The commit messages follow the convention for this project
[ ] I have provided an adequate amount of test coverage
[ ] I have added the functionality to the test app
[ ] I have provided a story in storybook to document the changes
[ ] I have provided documentation in the notes section of the story
[x] I have added any new public feature modules to public-api.ts
[ ] I have linked the new component to adobe DSM (if appropriate)

An open question:
Should we use the promo card title inside a promo card header component as is the case with standard cards?


[desktop_drop] Wrong path prefix on macOS

I got file:///Users/xxx/dir on macOS, expect /User/xxx/dir.
desktop_drop: 0.1.2
Flutter 2.5.3
macOS 12.0.1

you can use Uri.toFilePath to create a file path from a file URI
https://api.flutter.dev/flutter/dart-core/Uri/toFilePath.html

I know can workaround this, but package provide platform specific style is better.

file:// is better

file:// is better


Impro742 extrapolation cli

Adds CLIs for optical flow advection of precipitation (with --extrapolate as an option) and for extrapolation using known wind or optical flow advection components.
Testing:

[x] Ran tests and they passed OK
[x] Added new tests for the new feature(s)

All tests now passed and warning message has now gone.

The output doesn't look quite right. Please don't merge this in yet.


panic: runtime error: slice bounds out of range [33:21]

What version of Hugo are you using (hugo version)?

hugo v0.115.4-dc9524521270f81d1c038ebbb200f0cfa3427cc5+extended linux/amd64 BuildDate=2023-07-20T06:49:57Z VendorInfo=gohugoio

Does this issue reproduce with the latest release?
Yes.
new content
<!--[if gte mso 9]与<![endif]-->

###Stacktrace
goroutine 23 [running]:
github.com/tdewolff/minify/v2/html.(*Minifier).Minify(0xc000788548, 0xc0005a35c0, {0x28abd20, 0xc0028847e0}, {0x28abce0, 0xc002914180}, 0x0?)
	/root/project/gomodcache/github.com/tdewolff/minify/v2@v2.12.4/html/html.go:99 +0x3d6d
github.com/tdewolff/minify/v2.MinifierFunc.Minify(...)
	/root/project/gomodcache/github.com/tdewolff/minify/v2@v2.12.4/minify.go:41
github.com/gohugoio/hugo/minifiers.Client.Transformer.func1({0x28b88f8?, 0xc003d8b820?})
	/root/project/hugo/minifiers/minifiers.go:51 +0xa3
github.com/gohugoio/hugo/transform.(*Chain).Apply(0xc001f056b0, {0x28abd20, 0xc002ab2240}, {0x28abce0, 0xc002884600})
	/root/project/hugo/transform/chain.go:108 +0x3af
github.com/gohugoio/hugo/publisher.DestinationPublisher.Publish({{_, _}, {_, _}, _}, {{0x28abce0, 0xc002884600}, {{0x2217e46, 0x4}, {{0x2219ade, ...}, ...}, ...}, ...})
	/root/project/hugo/publisher/publisher.go:107 +0x1a5
github.com/gohugoio/hugo/hugolib.(*Site).renderAndWritePage(0xc00072dd40, 0xc0004866f0, {0xc002848ed0, 0x2f}, {0xc001d2c2e8, 0x15}, 0xc000eac270, {0x28b88a8, 0xc0005aa3c0})
	/root/project/hugo/hugolib/site.go:1784 +0x7f5
github.com/gohugoio/hugo/hugolib.pageRenderer(0x0?, 0xc00072dd40, 0x0?, 0x0?, 0x0?)
	/root/project/hugo/hugolib/site_render.go:138 +0x287
created by github.com/gohugoio/hugo/hugolib.(*Site).renderPages
	/root/project/hugo/hugolib/site_render.go:74 +0x108

Thanks, this seem to be a upstream issue. I would appreciate if you could create an issue at
https://github.com/tdewolff/minify/issues
And point back to this issue. We're using v2.12.7 of minfiy, which I see is the latest.

https://github.com/tdewolff/minify/issues/596

This was resolved in v0.120.0 with https://github.com/gohugoio/hugo/pull/11535


Fix race conditions in the overlay network driver

While reviewing the code for https://github.com/docker/libnetwork/issues/1765, I came across several race conditions in the overlay driver code.   These make classic read-modify-write mistakes by not holding their locks through the modifications.  This means that parallel invocations can lead to inconsistent state.
When reviewing, please look at the 3 commits individually.  They don't overlap in code, but if you look at the commit you will find an explanation for why I think there is a problem here as well as any tradeoffs I see in the proposed fix.

LGTM

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@1aac06b). Click here to learn what that means.
The diff coverage is 6.45%.

@@            Coverage Diff            @@
##             master    #2143   +/-   ##
=========================================
  Coverage          ?   40.48%
=========================================
  Files             ?      139
  Lines             ?    22495
  Branches          ?        0
=========================================
  Hits              ?     9107
  Misses            ?    12049
  Partials          ?     1339

Impacted Files
Coverage Δ

drivers/overlay/ov_network.go
2.79% <0%> (ø)

drivers/overlay/encryption.go
0% <0%> (ø)

drivers/overlay/ovmanager/ovmanager.go
49.58% <40%> (ø)

Continue to review full report at Codecov.

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

LGTM. A couple of the network-already-exists check may be moved to the beginning of the routines if possible while maintaining the "defer unlock" pattern.

Ok, this passed integration and latest e2e, fwiw.


Enabe and Disable ActionsCommandBar Items

Hi,
This is a feature request, as I don't think this is currently possible.
I would like to be able to programmatically enable and disable items in the ActionsCommandBar, so that items can be made available from the ViewModel as the model changes.
Thanks
K

Right now you can control your ActionsCommandBar items visibility with the canExecute delegate of the action item Command.
if (button.Command?.CanExecute(button?.CommandParameter) == true)
{
	button.Visibility = Visibility.Visible;
}
else
{
	button.Visibility = Visibility.Collapsed;
}

For example, all of our actions, handle the canExecute determining if the parameter is null or not:
public static ICommand Mailto
{
	get
	{
		return new RelayCommand<string>(async mail =>
		{
			if (!string.IsNullOrEmpty(mail))
			{
				await Launcher.LaunchUriAsync(new Uri(string.Format("mailto:{0}", mail)));
			}
		}, **(mail => !string.IsNullOrEmpty(mail)));**
	}
}

We did this because it's easier to hide a button than disabling and applying styles to it.
Works for you?


Fix Scope tests

Fix the Scope related tests in Potel.

In POTel this only works when there is this with sentry_sdk.start_span() in the test, because this is the point where our scopes are put on the OTel context.
This should also work without having a span. @sl0thentr0py said he will implement a switch to switch to Otel and in that case the Sentry scopes will be put on the OTel context during SDK init().
So I will leave this Issue here until it is time to implement that switch.

This is now outdated. Will close.


Replace travis with github actions

Before we start with refactoring or cleaning the code we should add CI. Travis seems to be defunct and was not testing all targets. This replaces it by github actions. The clippy check is expected to fail because those lints are fixed later by #305 and #306. No rustfmt check either because we do the formatting later.

Add #307 to the list


cmd/cue: mod publish fails with VCS State is not clean

What version of CUE are you using (cue version)?

$ cue version
cue version v0.9.0-alpha.3

go version go1.22.2
      -buildmode exe
       -compiler gc
  DefaultGODEBUG httplaxcontentlength=1,httpmuxgo121=1,tls10server=1,tlsrsakex=1,tlsunsafeekm=1
     CGO_ENABLED 1
          GOARCH arm64
            GOOS darwin

Does this issue reproduce with the latest stable release?
This is for v0.9.0-alpha.3 only.
What did you do?

Publishing a module after setting the source to git tells me that the VCS state is not clean and won't let me proceed even with the -i flag.
I work in monorepos so I always have a dirty VCS state. I can't see myself ever changing that.
All the files within the cue module scope are commited.
What did you expect to see?
The -i flag or a --force flag allowing me to bypass that error.
What did you see instead?
Had to change my source to self with cue mod edit --source self for it to allow me to publish.

Had a brief chat with @myitcv on this - we should only care about "dirty" or "unclean" VCS files if they are part of the CUE module being published. If I have a monorepo at /mono and I am publishing a CUE module at /mono/cuemod, and there are uncommitted new files or changed files in /mono/dirty, we should not require the user to use --force or any flag like that.

Thanks for raising, @DavidGamba


Add ability to easily embed the event page for a meeting in a blog post to drive registrations

I figured this out as part of the libp2p Day blog post: https://github.com/libp2p/blog/pull/123


Using PS Move service in another application written in NodeJS

Hello.
I really want to create application in my favourite programming langugage, which will handle all positions of controller. I red that any application can use service via network. But I can't find any documentation about protocol. Can you find or write any document about network packages that I should use to comunicate to service?
Thanks,
Mateusz Woźniak

The easiest way would be to write a C-wrapper using the CAPI:
https://github.com/cboulay/PSMoveService/blob/master/src/psmoveclient/PSMoveClient_CAPI.h
Writing a doc to describe the network protocol would be a huge undertaking, especially because the network protocol uses protobuf and is expected to be unpacked by something using protobuf.

No follow-up so I guess you've moved on. Feel free to re-open if you want to discuss this more.


dot notation not working on listview reference fields

Description
Look at this plnker. On the listview for users I would expect to have a reference link to the associated permission  record.
If the reference is made using a dot notation field nga.field('permissionRef.id', 'reference') the datastore is not populated and nothing id displayed
Steps to Reproduce

Run the plnkr,
Go to user listview

Expected behavior: permission name is displayed under the permission column with a href link to that permission record
Actual behavior: nothing is diplayed

Stop the plnkr and go to script.js file.
Uncomment the section

//            nga.field('permissionId', 'reference')
//                .targetEntity(perms)
//                .targetField(nga.field('name'))

run the plnkr again

In this case the permission name appear on both column, because the datastore has been populated by the uncommented code.

Until this is implemented, you can use an interceptor to duplicate the dot notation field into a normal field.


Modify the project so the execution of the script  could be stopped, like with a button

You can edit the boot file as follows, and then add a reset button to Pico. Pressing the reset button will enter safe mode and only mount the USB drive without executing the script. Pressing the reset button again will restore it. Such a cycle.
https://github.com/Limour-dev/qrjs/blob/main/pico-badusb/boot.py


REQUEST: New membership for

GitHub Username
StellarisW
Requirements

[x] I have reviewed the community membership guidelines (https://github.com/cloudwego/community/blob/main/COMMUNITY_MEMBERSHIP.md)
[x] I have joined to the Slack Channel and Feishu Group Chat (for Chinese)
[x] I am contributing (any of the following apply: issues, discussions, PRs, reviews) to 1 or more CloudWeGo repositories

List of contributions to CloudWeGo

PRs reviewed / authored
Cwgo:

https://github.com/cloudwego/cwgo/pull/80
https://github.com/cloudwego/cwgo/pull/33
https://github.com/cloudwego/hertz/pull/575

Hertz:

https://github.com/hertz-contrib/logger/pull/27
https://github.com/hertz-contrib/casbin/pull/3
https://github.com/hertz-contrib/casbin/pull/2
https://github.com/hertz-contrib/logger/pull/19
https://github.com/hertz-contrib/websocket/pull/13

Kitex:

https://github.com/cloudwego/kitex/pull/799

docs:

https://github.com/cloudwego/cloudwego.github.io/pull/716
https://github.com/cloudwego/cloudwego.github.io/pull/526
https://github.com/cloudwego/cwgo/pull/32
https://github.com/cloudwego/hertz-examples/pull/76
https://github.com/cloudwego/volo/pull/126

Thank you for your contribution to cwgo.

+1 ❤  Thank you very much for your contribution, I hope you can make the cwgo platform better and help more users.

+1 ❤ Thank you very much for your contribution~~

+1 Welcome

+1 Welcome

+1 Welcome

+1 support. Expecting more kitex contribution from you [bisou]

+1 support

support

Hi, your request has been reviewed by the CloudWeGo community management team and passed with majority approval. Congratulations !
You have been invited to join CloudWeGo org and hertz-contrib as a public member, as well as Hertz Committer Team in CloudWeGo. Your certificate is here.
Please check Responsibilities and privileges for more details.
Welcome to Join us !


Custom API endpoint for ip_address <--> interface M2M association.

As ...
Tammy - Tools Integrator
I want ...
In 2.0.0.b2 Interface to IpAaddress association has been changed to M2M. According to Django REST Framework docs M2M are read-only can't be set with respective model calls.
I talked to @glennmatthews and he suggests implementing custom API endpoint to allow Interface to 'IpAddress` association.
So that ...
nautobot-ansible collection will have the same functionality with 2.0.
I know this is done when...
I can make this association via API using pynautobot (next-2.0 branch)
Optional - Feature groups this request pertains to.

[ ] Automation
[ ] Circuits
[X] DCIM
[X] IPAM
[ ] Misc (including Data Sources)
[ ] Organization
[ ] Plugins (and other Extensibility)
[ ] Security (Secrets, etc)
[ ] Image Management
[ ] UI/UX
[ ] Documentation
[ ] Other (not directly a platform feature)

Database Changes
No response
External Dependencies
No response

@nautobot/core will discuss in design session then point

Option 1
Expose through table in an api view (undesirable by itself but required for implementation of option 2)
Option 2 (breaking, must be 2.0.0)
Similar to Tags (writable nested representation)
How do we expose through table attributes (is_primary, is_standby, etc)
Example interface representation:
    "ip_address_assignments": [
        {
            "id": "<uuid>",
            "object_type": "ipam.ipaddresstointerface",
            "url": "https://next.demo.nautobot.com/api/ipam/ipaddresstointerface/<uuid>/",
            "is_source": false,
            "is_destination": false,
            "is_default": false,
            "is_preferred": false,
            "is_primary": false,
            "is_secondary": false,
            "is_standby": false,
            "ip_address": {
                "id": "5af6e025-f6bf-4325-a247-3d61b6deca7e",
                "object_type": "ipam.ipaddress",
                "url": "https://next.demo.nautobot.com/api/ipam/ip-addresses/5af6e025-f6bf-4325-a247-3d61b6deca7e/"
            }
            // make sure to exclude the interface and vm_interface fields for this nested serializer
        }
    ],

Option 3 (desirable, non-breaking, could be 2.0.x or higher in a separate issue)
Separate API endpoints (similar to m2m ORM API .remove(), .add()) (/api/dcim/interfaces/<uuid>/add_ipaddress)
How do we expose through table attributes (is_primary, is_standby, etc)
Is this really necessary with Option 2? Do we want to have 2 different ways to do the same thing?
TODO
This issue becomes option 1, open follow-up issue for option 2 (blocked by this issue), and another issue for option 3 to be groomed later


Update the metics query pointlist type

What does this PR do?
:wave: Hi,
We recently notice tha the dogapi gem has been marked as legacy, so we are trying to adopt the new ruby datadog client, but I have a blocking error using the query-timeseries-points endpoint.
Here the error:
> client.query_metrics(1636822108,<PHONE_NUMBER>, "metric.name{tag: value}")
ETHON: Libcurl initialized
ETHON: performed EASY effective_url=https://api.datadoghq.com/api/v1/query?from=1636822108&to=1639414144&query=metric.name%7Btag%3Avalue%7D response_code=200 return_code=ok total_time=0.673536
NoMethodError: undefined method `build_from_hash' for Array:Class
from /Users/xxx/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/datadog_api_client-1.0.0/lib/datadog_api_client/v1/models/metrics_query_metadata.rb:301:in `_deserialize'

It looks like the response is ok (200) but there is an issue in the deserialize method.
I've compared the response body with the previous implementation (using dogapi gem) and both are identical:
"{\"status\":\"ok\",\"resp_version\":1,\"series\":[{\"end\":1639483199000,\"attributes\":{},\"metric\":\"metric.name\",\"interval\":14400,\"tag_set\":[],\"start\":1636963200000,\"length\":118,\"query_index\":0,\"aggr\":null,\"scope\":\"tag: value\",\"pointlist\":[[1636963200000.0,66.0],[1636977600000.0,66.0],[1636992000000.0,66.0],[1637006400000.0,66.0],[1637020800000.0,66.0],[1637035200000.0,66.0],[1637049600000.0,66.0],[1637064000000.0,66.0],[1637078400000.0,66.0],[1637092800000.0,66.0],[1637107200000.0,66.0],[1637121600000.0,66.0],[1637136000000.0,66.0],[1637150400000.0,66.0],[1637164800000.0,66.0],[1637179200000.0,66.0],
[...],
[1638979200000.0,66.0],[1638993600000.0,66.0],[1639008000000.0,66.0],[1639022400000.0,66.0],[1639036800000.0,66.0],[1639051200000.0,66.0],[1639267200000.0,66.0],[1639339200000.0,66.0],[1639353600000.0,66.0],[1639368000000.0,66.0],[1639382400000.0,66.0],[1639396800000.0,66.0],[1639411200000.0,66.0],[1639425600000.0,66.0],[1639440000000.0,66.5],[1639454400000.0,67.0],[1639468800000.0,67.0]],\"expression\":\"metric.name{tag: value}\",\"unit\":null,\"display_name\":\"metric.name\"}],\"to_date\":1639475622000,\"query\":\"metric.name{tag: value}\",\"message\":\"\",\"res_type\":\"time_series\",\"times\":[],\"from_date\":1636883616000,\"group_by\":[],\"values\":[]}"

Checking how the deserialize is done in the dogapi gem, it looks like use multi_json. The datadog_api_client doesn't use it and it has a method for it. See deserialize method
Checking the implementation and the datadog response, we think the issue is how the attribute type mapping is defined, in concrete, how the :pointlist is mapped. This PR updates it to mach the response we get from Datadog.
Additional Notes

Review checklist
Please check relevant items below:

[ ] This PR includes all newly recorded cassettes for any modified tests.

[ ] This PR does not rely on API client schema changes.

[ ] The CI should be fully passing.

[ ] Or, this PR relies on API schema changes and this is a Draft PR to include tests for that new functionality.

Note: CI shouldn't be run on this Draft PR, as its expected to fail without the corresponding schema changes.

It looks like you're using a pretty old version of client, can you try to upgrade? Looks like the operation works on more recent versions. Thanks.

It looks like you're using a pretty old version of client, can you try to upgrade? Looks like the operation works on more recent versions. Thanks.

Upgrade to v1.5.0 and issue solved. Closing the PR.
Thanks for the support ✨


Add Controller

[x] Forward and turning
[x] Slow start
[x] Brake
[x] Arm
[x] Intake

Closes #5
Closes #4
Closes #3

Precision turning is done we just have to verify motor direction


Issue45 aips configv0.0.5

configFile for v0.0.5

included configFile in branch for issue50
added some corrections


✨ Add a guide for drawing multiple connection lines.

Closes #315. We finally got round to cooking up an example! As always @bcakmakoglu contributed a non-trivial amount of the work ^.^
https://github.com/xyflow/web/assets/9001354/78a3d514-b980-4bce-9d39-18b40edfdd19
Not sure how I feel about importing and using internalsSymbol though...

looks awesome ✨


add callback notification to write function

Hi,
please add a callback to the function
.write (GA, payload, datapoint)
that notifies the caller when the actual data layed out on the bus and also informs if it was acknowledged by at least one receiver.

Hi
Can do that monday?  Every telegram is sent each ca. 40ms. You'll have that event fired every 40ms, that can lead in a stack overflow if you cannot handle it very quickly.
KNXUltimate has a property "** _getClearToSend**", that becomes TRUE if the last telegram was succesfully acknowledge.
You can maybe use such property instead of having to check every telegram succesfully sent?
// Check wether knxUltimateClient is clear to send the next telegram.
// This should be called bevore any .write, .response, and .read request.
// If not clear to send, retry later because the knxUltimateClient is busy in sending another telegram.
console.log("Clear to send: " + knxUltimateClient._getClearToSend())

Only outbound traffic matters. My knx applications write to the bus normally very rarely.
And receiving the notification is just setting a status for the caller that has to processess it asynchronously.  No worry about overload.
It is for a special use case, when an application wants to ensure that the data was seen by others on the bus. Without this you cut cut the wires and the app would not notice. (Best would be to design a back channel, but with KNX not everything is always possible)
Another question: do I need to take care about clear to send? That would mean I would need to implement some kind of buffer by myself, because all my applications are designed in a way that they expect it to be handeled on lower layer.

Hi Franz

understood.
If there are no issues between your KNX Gateway and your KNX device to be controlled, the _clearToSend is not an issue. Immediately after you send a telegram, KNXUltimate sets the _clearToSend to false and waits for the ACK. According to the KNX Gateway has 1 second to respond witk ACK OK, so the _clearToSend can be false for some time (if the KNX gateway doesn't respond immediately, for example if you're controlling a KNX installation from a slow VPN). Once AKC received, the _clearToSend is set to true.

PS: based on that and on the other "issue" you opened, please tell me if you're still interested in having the "ack" event you requested. If not, you'll save my time. Thanks.

-Yes, I'm still interested.
-I did not understand point number to. What do I explicitely need to do on what interfaces if the clearToSend is not true?

Himyou need to just wait until cleartosend becomes true again.

Hi Franz
the callback ackReceived has been implemented. Please read the README on now to use it.
Please STAR my node if not already done.

Hi Suergivane, how does your example work?
you sequentially call:
if (knxUltimateClient._getClearToSend()) knxUltimateClient.write("...", payload, "1.001");
by a one time trigger. Wont 2nd call get blocked immediatelly? If not then I have not understood what ClearToSend means, if yes then the example is not good.
Wait forcleartosend becomes true again means that I have to duplicate a state machine in every logic that wants to write to bus. This kind of architecture makes no sense

Hi Franz
I’ve explained you how cleartosend works. I’ve made for you the ACK callback and wrote an example.
i’ve spent my time on developing what you have asked.
Now you tell me that the architecture makes no sense?
Sorry, i won’t spend any more time on that. Remember that all work i’ve done for you, it’s free of charge.


Flask based paged attention with streaming and generator queue to dynamically add and remove jobs.

This is how I use the Dynamic Generator as a class object and the server wrapped in the flask.
But the responses get mixed when I send 2 requests simultaneously (mimicking client).
Note: The multiple prompt is not predefined in a list object, but it is a queue where the job is added and removed when finished.
LOAD MODEL
AI_MODEL = "./qwen2-7b-chat"
total_context = 32768 * 4
max_batch_size = 2
max_chunk_size = 10240
max_new_tokens = 1024
json_mode = False
paged = True
healing = True
use_ngram = False
use_draft_model = False

def load_model():
    global tokenizer,llm_dynamic_generator,cache,config,model_type,model
    config = ExLlamaV2Config(AI_MODEL)
    config = ExLlamaV2Config(model_dir)
    config.max_input_len = max_chunk_size
    config.max_attention_size = max_chunk_size ** 2
    model = ExLlamaV2(config)
    cache = ExLlamaV2Cache(
        model,
        max_seq_len = 32768 * 4,
        lazy = True)

    model.load_autosplit(cache, progress = True)
    tokenizer = ExLlamaV2Tokenizer(config)
    generator = ExLlamaV2DynamicGenerator(
        model = model,
        cache = cache,
        draft_model = None,
        draft_cache = None,
        tokenizer = tokenizer,
        max_batch_size = 2,
        use_ngram_draft = False,
        max_chunk_size = 10240,
        paged = True)
load_model()

LLM CLASS OBJ & FLASK WRAPPER
class LlmContextProcessor:
    def __init__(self, prompt,unique_id):
        self.unique_id = unique_id
        self.prompt = prompt

    def stream_response(self):
        job = ExLlamaV2DynamicJob(
                input_ids=tokenizer.encode(self.prompt, add_bos = True),
                max_new_tokens = self.max_tokens,
                identifier = str(self.unique_id),
                token_healing = True)
        generator.enqueue(job)

        while generator.num_remaining_jobs() > 0:
            results = generator.iterate()

            for result in results:
                idx = result["identifier"]
                text_chunk = result.get("text", "")
                yield text_chunk

from flask import Flask, request, Response, stream_with_context
import json, uuid, sys

app = Flask(__name__)
@app.route('/conversation', methods=['POST'])
def conversation():
    data = request.json
    content = data.get('text', '')
    question = data.get('question', 'Summarize text.')
    prompt= f'''<|im_start|>system
Provide some context and/or instructions to the model.<|im_end|>
<|im_start|>user
TEXT: {content}

QUESTION: {question}<|im_end|>
<|im_start|>assistant
'''
    processor = LlmContextProcessor(prompt=prompt, unique_id = str(uuid.uuid4()))
    def iter_chunks():
        for chunk in processor.stream_response():
            yield chunk
        return Response(stream_with_context(iter_chunks()), mimetype="text/event-stream", status=200)
if __name__ == '__main__':
    app.run(host='<IP_ADDRESS>', port=5000)

CLIENT REQUEST
#CLIENT API MIMIC BELOW
import requests
from concurrent.futures import ThreadPoolExecutor, as_completed

def make_request(input_data):
    with requests.post("http://<IP_ADDRESS>:5000/conversation", json=input_data, stream=True) as r:
        if r.status_code == 200:
            for line in r.iter_lines():
                if line:
                    decoded_line = line.decode('utf-8')
                    print(decoded_line)
                elif line == b'':
                    print('\n')
input_data_list = []
input_data = {}
text = '''Artificial Intelligence (AI) refers to the development of computer systems that can perform tasks that typically require human intelligence. AI systems can learn, reason, and interact with humans in a way that simulates human thought processes. The field of AI has been rapidly evolving over the past few decades, with significant advancements in areas such as machine learning, natural language processing, and computer vision.\n\nHistory of AI:\nThe concept of AI dates back to the 1950s, when computer scientists like Alan Turing, Marvin Minsky, and John McCarthy began exploring ways to create machines that could think and learn like humans. The term "Artificial Intelligence" was coined by John McCarthy in 1956. The early years of AI research focused on developing rule-based systems that could perform specific tasks, such as playing chess or recognizing patterns.\n\nHowever, the field faced significant challenges, including the difficulty of creating machines that could learn from experience and adapt to new situations. The AI winter of the 1980s and 1990s, which was characterized by a lack of funding and interest in AI research, led to a slowdown in advancements.\n\nRecent Advances:\nIn the 21st century, AI has experienced a resurgence, driven by advances in computing power, data storage, and machine learning algorithms. The development of deep learning techniques, which are inspired by the structure and function of the human brain, has enabled AI systems to learn from vast amounts of data and improve their performance over time.\n\nSome of the recent advancements in AI include:\n\nMachine Learning: Machine learning algorithms, such as neural networks and decision trees, allow AI systems to learn from data and improve their performance over time.\nNatural Language Processing: AI systems can now understand and generate human language, enabling applications such as chatbots, virtual assistants, and language translation.\nComputer Vision: AI systems can now process and analyze visual data, enabling applications such as facial recognition, object detection, and autonomous vehicles.\nRobotics: AI systems can now control and interact with physical robots, enabling applications such as robotic process automation and autonomous assembly.\nExpert Systems: AI systems can now mimic the decision-making abilities of human experts, enabling applications such as medical diagnosis and financial analysis.\nApplications of AI:\nAI has a wide range of applications across various industries, including:\n\nHealthcare: AI can be used to analyze medical images, diagnose diseases, and develop personalized treatment plans.\nFinance: AI can be used to analyze financial data, predict market trends, and automate trading decisions.\nRetail: AI can be used to personalize customer experiences, optimize supply chains, and improve product recommendations.\nTransportation: AI can be used to develop autonomous vehicles, optimize traffic flow, and improve public transportation systems.'''
input_data['question'] = "Explain the AI in details."
input_data['text'] = text
input_data_list.append(input_data)

input_data = {}
input_data['question'] = "Explain the difference between AI and ML"
input_data['text'] = text
input_data_list.append(input_data)

with ThreadPoolExecutor(max_workers=2) as executor:
    futures = [executor.submit(make_request, data) for data in input_data_list]
    for future in as_completed(futures):
        try:
            future.result()
        except Exception as e:
            print(f"Request generated an exception: {e}")

OUTPUT
<IP_ADDRESS> - - [25/Jun/2024 02:09:20] "POST /conversation HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [25/Jun/2024 02:09:20] "POST /conversation HTTP/1.1" 200 -
<IP_ADDRESS> - - [25/Jun/2024 02:09:20] "POST /conversation HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [25/Jun/2024 02:09:20] "POST /conversation HTTP/1.1" 200 -
{   'cached_pages': 0,
    'cached_tokens': 0,
    'eos': True,
    'eos_reason': 'stop_token',
    'full_completion': ':Art Artificialificial Intelligence Intelligence ( '
                       'refersAI refers refers to refers the to development '
                       'the development development development of of of of '
                       'computer computer computer computer computer systems '
                       'systems systems systems systems that that that that '
                       'that can can can can can can perform perform perform '
                       'perform perform tasks tasks tasks tasks tasks that '
                       'that that that that typically typically typically '
                       'typically typically require require require require '
                       'require human human human human human intelligence '
                       'intelligence.',
    'identifier': 'dinsodknfo434',
    'job': ExLlamaV2DynamicJob #1,
    'new_tokens': 80,
    'prompt_tokens': 614,
    'serial': 1,
    'stage': 'streaming',
    'time_enqueued': 0.0003533363342285156,
    'time_generate': 1.3093879222869873,
    'time_prefill': 0.4452393054962158}
{   'cached_pages': 2,
    'cached_tokens': 682,
    'eos': True,
    'eos_reason': 'stop_token',
    'full_completion': ':Machine Artificial Learning Intelligence Intelligence '
                       '( refersAI to) the the development development of of '
                       'of computer computer computer systems systems systems '
                       'that that that that can can can can learn learn learn '
                       'learn from from from from from data data data data '
                       'data and and and and and improve improve improve '
                       'improve improve their their their their their '
                       'performance performance performance performance '
                       'performance performance over over over over over time '
                       'time time time time time through,. through',
    'identifier': 'sdihfjidsj0cfds',
    'job': ExLlamaV2DynamicJob #1,
    'new_tokens': 83,
    'prompt_tokens': 618,
    'serial': 1,
    'stage': 'streaming',
    'time_enqueued': 0.1411433219909668,
    'time_generate': 1.355302095413208,
    'time_prefill': 0.30434155464172363}

If you look at the logs in the terminal after pprint the result, the tokens are leaking in other jobs when executing each request. Can the idx "identifier" maintain isolation?

Note: The model is not in async mode. Does this have to be in async to enable to the job to be added, removed, and executed automatically if cache is present to execute? Or can I run the model in a class obj and have the API in flask sync wrapper.

@turboderp Thanks for your help and suggestion on this one. I tried wrapping my head almost everywhere around the sync/async with llm and paged attention. And created this issue only when couldn't find the resources for LLM + sync flask. Please let me know if this is not the correct direction.

I would guess the problem here is that you end up with two threads calling iterate() concurrently. The generator isn't threadsafe and honestly it's a little surprising that it doesn't just crash when used like that..?
Regardless, the trick would be to use tasks rather than threads. The async wrapper facilitates this nicely, by letting each job work as an independent generator, routing the batched streams automatically. I'm not sure if Flask has a single-threaded/async mode, though. Perhaps it would be easier to use something like Quart? Though I'm not an expert on that either.


Not able to install packages

Hello,
I have installed vcpkg a week ago on my Mac M1 but unfortunately I'm not able to install any packages using vcpkg.
Machine info:
MacBook Pro (13-inch, M1, 2020)
Chip: M1
RAM: 8 GB
Error log:
appu@CESIT-MAC-13inch2020s-MacBook-Pro vcpkg % ./vcpkg install "aws-sdk-cpp[s3]" --recurse
Computing installation plan...
The following packages will be built and installed:
  * aws-c-common[core]:arm64-osx -> 0.4.56
  * aws-c-event-stream[core]:arm64-osx -> 0.1.6
  * aws-checksums[core]:arm64-osx -> 0.1.9
    aws-sdk-cpp[core,dynamodb,kinesis,s3]:arm64-osx -> 1.8.126#8
  * curl[core,non-http,sectransp,ssl]:arm64-osx -> 7.74.0#5
  * openssl[core]:arm64-osx -> 1.1.1k#1
  * zlib[core]:arm64-osx -> 1.2.11#10
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet arm64-osx...

-- Using community triplet arm64-osx. This triplet configuration is not guaranteed to succeed.
-- [COMMUNITY] Loading triplet configuration from: /Users/appu/vcpkg/triplets/community/arm64-osx.cmake
-- Using cached /Users/appu/vcpkg/downloads/awslabs-aws-c-common-4a21a1c0757083a16497fea27886f5f20ccdf334.tar.gz
-- Cleaning sources at /Users/appu/vcpkg/buildtrees/aws-c-common/src/f20ccdf334-c310c32102.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /Users/appu/vcpkg/downloads/awslabs-aws-c-common-4a21a1c0757083a16497fea27886f5f20ccdf334.tar.gz
-- Applying patch disable-error-4068.patch
-- Applying patch disable-internal-crt-option.patch
-- Applying patch fix-cmake-target-path.patch
-- Using source at /Users/appu/vcpkg/buildtrees/aws-c-common/src/f20ccdf334-c310c32102.clean
-- Configuring arm64-osx-dbg
-- Configuring arm64-osx-rel
-- Building arm64-osx-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:146 (message):
    Command failed: /Users/appu/vcpkg/downloads/tools/cmake-3.20.2-osx/cmake-3.20.2-macos-universal/CMake.app/Contents/bin/cmake --build . --config Debug --target install -- -v -j9
    Working Directory: /Users/appu/vcpkg/buildtrees/aws-c-common/arm64-osx-dbg
    See logs for more information:
      /Users/appu/vcpkg/buildtrees/aws-c-common/install-arm64-osx-dbg-out.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_build_cmake.cmake:104 (vcpkg_execute_build_process)
  scripts/cmake/vcpkg_install_cmake.cmake:44 (vcpkg_build_cmake)
  ports/aws-c-common/portfile.cmake:18 (vcpkg_install_cmake)
  scripts/ports.cmake:141 (include)

Error: Building package aws-c-common:arm64-osx failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `./vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  Package: aws-c-common:arm64-osx
  Vcpkg version: 2021-05-05-unknownhash

Additionally, attach any relevant sections from the log files above.

Is there any existing solution for this?
Note: I already tried ./vcpkg update

Created this issue here: https://github.com/aws/aws-sdk-cpp/issues/1659


WIP viewport engine

This pull request adds support for rendering in the Blender viewport using the Mitsuba add-on. This allows you to have an interactive preview of the scene using Mitsuba directly.
The PR also adds support for editing materials and lights properties on the right panel. Edits to the scene will be reflected in the viewport interactively, allowing you to see the changes in real-time.
This PR is a draft, and should be used as a starting point for implementing viewport rendering properly.

Thank you! This will be a great starting point!

Wow, this is what I can only dream of. What a great start.


Doesn't check that the RPC call is from Sudo?

Sudo for Windows version
0.1.6
Windows build number
10.0.26052.0
Other Software
No response
Steps to reproduce
see below
Expected Behavior
No response
Actual Behavior
Haven't had time to test this out yet, but according to https://www.tiraniddo.dev/2024/02/sudo-on-windows-quick-rundown.html, sudo accepts any RPC call when in the background and doesn't check if it originates from sudo.

There are no checks for the caller’s PID to make sure it’s really the non-elevated sudo making the request. As long as the RPC server is running you can make the call. Finding the ALPC port is easy enough, you can just enumerate all the ALPC ports in \RPC Control to find them.

The code doesn’t provide a security descriptor for the ALPC port and it calls RpcServerRegisterIf to register the server, which should basically never be used. This old function doesn’t allow you to specify a security descriptor or a security callback. What this means is that any user on the same system can connect to this service and execute sudo commands.

FWIW This was actually already fixed!

Internally, tracked in MSFT:48520593
closed in !10167063
That got ingested as sudo 0.1.6
ingested into the OS in !10223639
Still sitting in ge_release_we_adept as of the 5th.

wait, you're on sudo v0.1.6? I'm pretty sure that shouldn't be available yet externally? Unless I don't understand Windows insider flighting rules (and I most likely do not)

Typo, sorry!

No worries!  Thanks for following up! FWIW there are some notes on internally fixed bugs over in #4


Vagrant fix

The Vagrant Fix consists of all the required changes for running gates on Vagrant. The PR also has commits which deploys contrail-2.1

Please squash the commits

This has been tested on vagrant. merging this now.


get AADSTS700054/AADSTS9002325 for blazor webassembly app

[Enter feedback here]
Cx is following this doc https://docs.microsoft.com/en-us/aspnet/core/blazor/security/webassembly/standalone-with-azure-active-directory?view=aspnetcore-6.0  to enable AAD authentication for his blazor webassembly app, cx said they are using microsoft.authentication.webassembly.msal version 6.0.4, and their target is to use oauth2 authorizaton code flow with PKCE for this SPA app.
When exactly following the document – configure the AAD app registration  platform as SPA and no implicit grant id_token/access_token enabled, we get “AADSTS700054: response_type 'id_token' is not enabled for the application.”
When keep the app registration  platform as SPA and enable implicit grant id_token option, we get ” AADSTS9002325: Proof Key for Code Exchange is required for cross-origin authorization code redemption.”
Only after we change the app registration platform to WEB and enable implicit grant id_token option, we could successfully sign-in the blazor webassembly app.
Please kindly advise why the above 1st/2nd scenario is not working.
Tenant ID: 2c49a62c-bc76-4a03-a45d-21df056b892d
Application ID: b5f34e6f-a8a9-464a-8e80-67b412a5b3ed
AADSTS700054 error correlation ID:  afc83a06-3808-4379-b2b8-7cd6410cb590
AADSTS700054 error timestamp: 5/13/2022 8:41:03.4137980 AM
AADSTS9002325 error correlation ID:  f457083e-6296-46e1-a102-c4ef7fd4d16b
AADSTS9002325 error timestamp: 5/13/2022 8:49:32.5994551 AM
Working correlation ID: de791de1-1d33-4a70-8708-04a7126ec9b2
Working timestamp: 5/13/2022 8:57:13.6971556 AM

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

ID: 9adb06ae-6ca0-9e47-1061-4458d807c770
Version Independent ID: 2f556d47-42e8-8b09-e0cb-9d169acd6aa6
Content: Secure an ASP.NET Core Blazor WebAssembly standalone app with Microsoft Accounts
Content Source: aspnetcore/blazor/security/webassembly/standalone-with-microsoft-accounts.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @guardrex
Microsoft Alias: riande

Confirmed! ... I can't repro any problem with the authentication basics that the topic describes. I performed a quick-'n'-dirty 6.0 update on my 5.0 app. It ran fine and logged in a test user with my existing AAD app registration, which mirrors the topic's guidance [SPA with auth code (PKCE) flow].
There seem to be some deltas in the Blazor security node generally for NRTs that I saw VS complaining about, but that's known situation and on a tracking issue for when the whole security node is overhauled. NRT problems don't generally affect the app running or the auth guidance working.
The customer may have lingering cookies breaking their tests. They should use a fresh in-private/incognito browser for every test run no matter how insignificant the config update is on the app or Azure side. I placed a bit of guidance on this subject into these topics to help devs get their apps to open a new browser automatically for each debug run ...
https://docs.microsoft.com/aspnet/core/blazor/security/webassembly/standalone-with-azure-active-directory#cookies-and-site-data
Outside of that you could open an issue for the product unit here, but I have a feeling that they won't be able to help with a scenario that can't be cleanly reproduced as occurring within the Blazor framework. The Blazor framework uses the MSAL/MS Identity Platform. They don't work on or maintain those APIs (or AAD for that matter), so they probably can't help if the customer found a bonafide bug in those APIs/AAD.
I'm going to close this because there isn't anything actionable at this time. If you discover the cause of the problem, please leave a comment on this issue. It might be something worthy of calling out or cross-linking. If so, I'll re-open this issue for work.


Fake News Detection

Fake news detection system to detect if a news is real or fake.

I can work on this project
FullName: Sagar Santoshkumar Shukla
Github Profile Link: https://github.com/Sagar201003
Email ID<EMAIL_ADDRESS>Approach for this Project:
I will perform EDA , feature selection , PCA , Data augmentation . I will use Pycaret to get the best model .
Implement the models using TensorFlow or PyTorch.
What is your participant role? -SSOC contributor

I can work on this project FullName: Sagar Santoshkumar Shukla Github Profile Link: https://github.com/Sagar201003 Email ID<EMAIL_ADDRESS>Approach for this Project: I will perform EDA , feature selection , PCA , Data augmentation . I will use Pycaret to get the best model . Implement the models using TensorFlow or PyTorch.
What is your participant role? -SSOC contributor

Please try to find out a different issue as the contributor himself has opened this issue. So this will be assigned to him after evaluating all the parameters.

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title :  Fake News Detection Model
:red_circle: Aim : Create and compare some models to detect if a news is real or not.
:red_circle: Dataset : https://www.kaggle.com/datasets/clmentbisaillon/fake-and-real-news-dataset
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name : Nidhish Kumar
GitHub Profile Link :  https://github.com/nk-droid
Email ID<EMAIL_ADDRESS>Participant ID (if applicable):
Approach for this Project : First, I'll make simple ML and DL models and then compare their performance.
What is your participant role? SSoC'23 Contributor

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Complete the assigned issue first, after that this issue will be assigned to you.
@nk-droid

@abhisheks008 I've completed the assigned task. Could you please merge it and then assign me this project?

Issue assigned to you @nk-droid. You can start working on it.

@abhisheks008 @nk-droid i would too like to work on this issue.

This issue is already assigned @maitri-vv

Hi @abhisheks008 Please assign this issue to me.I have worked on a similar case of spam classifer and fraud insurance claims detection problem before.

Hi @YashSachan2 can you please share your approach for solving this issue?

I intend to create a batches of dataset with 70% false dataset and 30% true dataset so as to emphasize more on correctly identifying wrong articles ,then doing some feature engineering like length of article,positive words count,negative words count etc.Then after encoding using word2vec then comparison and hypertuning among models like XG Boost,Cat boost ,NN having dual RNN and LSTM layers along with embedding layer,Logistic Regression.

Looks good to me. Issue assigned to you. @YashSachan2

Hi @YashSachan2 any update on this issue?

@abhisheks008 I am working on it. I will submit pr by today

@abhisheks008 I have made the pr for this issue.Please look into it and assign me the points

@abhisheks008 I have made a new pr making the changes you asked for.Please look into it and assign me the points.

@abhisheks008 I have made a new pr making the changes you asked for.Please look into it and assign me the points.

Hi @YashSachan2 I have requested some changes there. Once the PR is approved and merged, the points will be assigned accordingly. You don't need to make me remember every single time :)


FormData binding problem

Hello,
I tried the recently added FormData binding in a ReScript project exactly according to your example with appendObject and it doesn't work. The problem is that the JS snippet it generated looks like this:
              var formData = new FormData();
              formData.append("image", {
                    type: "image/jpeg",
                    uri: photoUri,
                    name: "image.jpg"
                  }, undefined);

The undefined as the third parameter is the problem. There must be no third parameter, not even undefined. If I remove it from the gerenated JS file, it works correctly.
If I understand the FormData API correctly the third parameter (filename) is used only for Blobs and Files.

Hmm, yeah the filename argument doesn't make much sense for objects, so I think it's fairly safe to just remove it. I do wonder what happens if it's omitted and generates undefined for files and blobs as well. Would it be better if it was mandatory for those?
Any thoughts, @yawaramin, @anmonteiro?

AFAIK appendObject was intended only for React Native, it doesn't work for browsers. @FilipKittnar where are you running the output JS? In React Native? Can you show the exact error message?

In Chrome at least there are no issues with:
var fd = new FormData()
var bl = new Blob()

fd.append('bl', bl, undefined)

AFAIK appendObject was intended only for React Native, it doesn't work for browsers. @FilipKittnar where are you running the output JS? In React Native? Can you show the exact error message?

Unfortunatelly I cannot provide anything anymore because in the end I had to completely refactor the code and used the image in base64 instead of form data. It just didn't work with form data.
I think you might be true, because originally we had this in React Native and it was working fine. We were changing the app to PWA, which means normal web React and I started to have problems with this. I'm pretty sure the error was something like "this image is not a blob" or something like that. If I altered the generated JS file and removed the undefined, the error was gone. But later (when I did my own binding for the function) I found out that it didn't work even like that, because the form-data in the request was not correct and server was not accepting it.
So you might be right, this is probably only for React Native. It was probably my misunderstanding how form-data works.

No problem. As it turns out, we documented the issue with React Native in the interface file: https://github.com/reasonml-community/bs-fetch/blob/934389964e1005d4e37911c8324a6aeb7ce0a1b0/src/Fetch.mli#L260 . Maybe we should warn more explicitly there that it won't work in the browser.

Thanks for the input @yawaramin. I forgot that this was only for React Native, and I'm not entirely sure why I accepted it. I don't think I would today. So I think there are a few different ways we could move forward on this:

Do nothing and expect people to read the documentation.
Remove it as out-of-scope and expect people to bind to it themselves or use a library that extends bs-fetch for React Native.
Move it to a ReactNative namespace module to make it explicit in code that this is platform-specific.

I'm leaning towards 2. What do you guys think?


Allow None for pred metadata ops

When using protocol activation block as predecessor (with validation_pass = 0), its ops metadata hash should be None, to match Ocaml behavior.

@binier The fix is to allow predecessor with no-ops to have None as its ops_metadata_hash. According to @tizoc, this is how Octez node (and protocol) behaves.
See here: https://gitlab.com/tezedge/tezos/blob/a925eda16fc0520e5fddfb746ed025022b7add17/src/lib_store/store.ml#L725

Btw, the address-sanitizer version of the Github actions runners is not able to finish anymore, I think the VM/container where the build run just doesn't have enough RAM to build the automaton, so it gets killed.


Segmentation fault when running vite dev

I'm using Vite with the React SWC plugin.
import react from "@vitejs/plugin-react-swc";
import * as fs from "fs";
import { defineConfig } from "vitest/config";

const CERT_PATH = "../certs/cert.pem";
const KEY_PATH = "../certs/key.pem";

export default defineConfig({
  plugins: [
    react({
      plugins: [
        ["@swc-jotai/react-refresh", {}],
        ["@swc-jotai/debug-label", {}],
      ],
    }),
  ]
});

I navigate to the dev URL and I get Segmentation fault and vite dev crashes.

Can you provide a reproduction?

For a more detailed guide:
npm create vite@latest demo # Select React as the framework and TypeScript + SWC as the variant.

Install the swc-jotai plugins and the copy this config into vite.config.ts:
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react-swc";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    react({
      plugins: [
        ["@swc-jotai/debug-label", {}],
        ["@swc-jotai/react-refresh", {}],
      ],
    }),
  ],
});

Run yarn dev. This vanilla example doesn't segfault for me but it still errors and doesn't render with the following:
thread '<unnamed>' panicked at 'assertion failed: prev.start > max', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0-beta.2/src/engine/trap/frame_info.rs:224:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
failed to handle: assertion failed: prev.start > max
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0-beta.2/src/engine/trap/frame_info.rs:220:39

Can you try it out with latest versions of the plugins?

Now I get this.
[client] thread '<unnamed>' panicked at 'assertion failed: prev.start > max', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:224:9
[client] note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[client] failed to handle: assertion failed: prev.start > max
[client] thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:220:39
[client] failed to handle: called `Result::unwrap()` on an `Err` value: PoisonError { .. }
[client] thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:220:39
[client] failed to handle: called `Result::unwrap()` on an `Err` value: PoisonError { .. }
[client] thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:220:39
[client] failed to handle: called `Result::unwrap()` on an `Err` value: PoisonError { .. }
[client] thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:220:39
[client] thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: PoisonError { .. }', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:220:39

@Xenfo can you test whether @swc/plugin-noop works in your setup?
https://github.com/swc-project/plugins/blob/main/packages/noop/package.json

No it doesn't, because of this I think this is actually a problem with the SWC plugin for Vite. I'll check if anything is filed upstream.

https://github.com/vitejs/vite-plugin-react-swc/issues/97

@swc/plugin-noop works now, it was an issue with my monorepo setup. I checked and confirmed that swc-jotai plugins are still broken.

Alright, thanks for confirming @Xenfo.
Please provide a reproduction in CodeSandbox or a cloneable repo. Then I can look into it.

Actually, this is an issue in Wasmer:
https://github.com/wasmerio/wasmer/issues/3793

Hello,
Here is the minimal reproduction with clean Vite + SWC setup: https://github.com/pawelblaszczyk5/swc-jotai-repro
It indeed seems to be some issue inside of wasmer, at least from stacktrace
thread '<unnamed>' panicked at 'assertion failed: prev.start > max', /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wasmer-compiler-3.2.0/src/engine/trap/frame_info.rs:224:9

It does seem to do the same thing on NextJS btw (13.4.8)
thread '<unnamed>' panicked at 'failed to invoke plugin: failed to invoke plugin on 'Some("<path>/node_modules/.pnpm/next@13.4.8_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/client/components/error-boundary.js")'

Caused by:
    0: failed to invoke `<path>/node_modules/.pnpm/@swc-jotai+react-refresh<EMAIL_ADDRESS>as js transform plugin at <path>/node_modules/.pnpm/@swc-jotai+react-refresh<EMAIL_ADDRESS>    1: RuntimeError: unreachable
           at <unnamed> (<module>[1929]:0x96f9f)
           at <unnamed> (<module>[1924]:0x96d63)
           at <unnamed> (<module>[1923]:0x96d32)
           at <unnamed> (<module>[1910]:0x95ed2)
           at <unnamed> (<module>[1909]:0x95dff)
           at <unnamed> (<module>[1918]:0x965d4)
           at <unnamed> (<module>[2051]:0xa4552)
           at <unnamed> (<module>[2099]:0xaaf0c)
           at <unnamed> (<module>[314]:0x3ffcf)
           at <unnamed> (<module>[100]:0x18ea2)
           at <unnamed> (<module>[123]:0x206cf)
           at <unnamed> (<module>[124]:0x20f28)
           at <unnamed> (<module>[99]:0x18a79)
           at <unnamed> (<module>[97]:0x17a1a)
           at <unnamed> (<module>[123]:0x20aae)
           at <unnamed> (<module>[47]:0x7e77)
           at <unnamed> (<module>[19]:0x1b86)
           at <unnamed> (<module>[17]:0x1aae)
           at <unnamed> (<module>[16]:0x189a)
           at <unnamed> (<module>[347]:0x4993b)
           at <unnamed> (<module>[2195]:0xb1617)', /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/swc-0.263.26/src/plugin.rs:162:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at 'failed to invoke plugin: failed to invoke plugin on 'Some("<path>/node_modules/.pnpm/next@13.4.8_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/server/app-render/entry-base.js")'

the noop plugin works just fine

Looks like https://github.com/wasmerio/wasmer/issues/3793 has been fixed.

Looks like wasmerio/wasmer#3793 has been fixed.

Thanks for the reminder! I'll look into updating the crates soon.

wen fix?

Looks like wasmerio/wasmer#3793 has been fixed.

Thanks for the reminder! I'll look into updating the crates soon.

Thank you!

Sorry for the wait people! Holiday season is over in Europe and I had the time to look into this.
I have published both packages in 0.1.0, hopefully the issues are fixed. If not, create a new issue.


Fa_ir minor edits (Farsi feedback requested!)

What does this PR do?
Improve repo
For resources
Description
Minor text upgrade to the Persian translation.
Why is this valuable (or not)?
Makes the text more readable.
How do we know it's really free?
The PR does not contain any new links.
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

I'm a native speaker and the changes look good to me. 👍

changes will make translation more readable, looks good 👍

Thank you team farsi!
Thanks, and welcome to free-programming-books!


How to use with 3rd party Gulpfiles

So my scenario is the following:

I am using angular cli to build the project
I have configured Service worker support with @angular/service-worker
I am using Polymer CLI to build my google polymer dependencies and have a customized polymer build

The question that arises for me now is: How can I use the normal "angular way" of building my app (with ng build --prod but still build up a build pipe line with Polymer CLI.
I know that you guys offer a Gulp build configuration but I am not sure how it lives together with the normal ng build tools? Do I need to run both ng build --prod and then the mobile-toolkit gulpfile and then the polymer build? Or is ng build --prod obsolete if I use the mobile-toolkit?

You can find more details regarding the integration with Angular CLI here.
Angular CLI uses webpack, you won't need the gulp plugin provided by the mobile toolkit.

@mgechev Thanks for the response. Yes, I am quite aware that Angular CLI uses webpack and that I do not need to use the gulp plugin. However: I need to customize my build for the service worker generation.
And the generated sources from the Polymer build are a big part of this service worker generation. So I need to create a build where the two builds can talk to each other. Which is not possible with webpack and gulp.
Do you know how to solve that problem?

You can eject the CLI application and modify the webpack configuration according to your needs. For this purpose you can use the webpack plugin for generation of manifest file.

@mgechev agreed. This is what we already are doing. But then the problem arises how we let the modified webpack configuration talk with another gulp task (Polymer build)? I thought it may be easier to use the mobile-toolkit gulpfile to exchange info which files have been processed...
This was my original question. Sorry, I think I formulated it a bit pragmatic :)

Sorry, never saw this part: https://github.com/angular/angular-cli/blob/f3644a939c15f7533e5b240005f7247b8219f646/tests/e2e/tests/build/service-worker.ts
This actually solves the problem on how to run 3rd party tasks. Thx!