[FEAT] Create a non-resource page which will be visible in the side panel

Is your feature request related to a problem? Please describe.
Right now I don't see anything in the docs how to add a non-resource page which will be visible in the side panel.
Describe alternatives you've considered
No response
Additional context
No response
Describe the thing to improve
Add a possibility to create a non-resource page which will be visible in the side panel.

Hey @mil,
Hey @Mikilll94,
For internal links, easiest way is to create a dummy resource and add it to the resources prop of the <Refine> component. This will add a navigation link to the sidebar.
import { Refine } from "@refinedev/core";
<Refine
    ...
    resources={[
        {
            name: "dummy-resource",
            list: "/internal-link",
            meta: {
                label: "Navigation Link",
                icon: 👋,
            },
        },
    ]}
/>;

For external links, you can use the render prop of the <Sider> component. This will allow you to render any custom component.
import { Layout, Sider } from "@refinedev/antd";
const CustomSider = () => {
  return (
    <Sider
      render={({ items, logout }) => {
        return (
          <>
            👋 Navigation Link
            {items}
            {logout}
          </>
        );
      }}
    />
  );
};
const CustomLayout = () => {
  return <Layout Sider={CustomSider}>...</Layout>;
};

Additionally, you can use swizzle command to copy the default Sider component to your project. This will allow you to customize the sidebar as you want.
Refer to the swizzle documentation for more information.

How to hide items from the sidebar that appear in resources?


Update jupyter_server version to 2.7.0 to match Determined AI

Summary
Determineds task environments have jupyter_server==2.7.0, but jupyterlab-pachyderm is locked to  jupyter_server>=1.6,<2 which prevents it from being installed into a Determined task environment. Change the locked version to jupyter_server==2.7.0 to match Determined as of 0.24.0.
jupyter_server recommends that the version be pinned to avoid plug-in breakage.
This change enables the installation of the  jupyterlab-pachyderm into a determined task environment  without creating a broken jupyter lab environment.
 pip install jupyterlab-pachyderm

Testing
Verified the plug-in mount capability with this configuration.
Are there other specific areas that we need to verify?
docker run -it -p 8888:8888 --cap-add SYS_ADMIN --device /dev/fuse   pachyderm/notebooks-user:dev

I did find a workaround to this
https://rndwiki-pro.its.hpecorp.net/display/AT/Updated%3A+Building+a+Pachyderm-enabled+DAI+Notebook+Environment
Though unless jupyter_server==2.7.0 breaks something, I think this is a worthwhile change to enable MLDE users to simply add  jupyterlab-pachyderm without breaking jupyter lab by default.

Hi @jerryharrow, sorry for the slow followup. I'm looking into adding you and @pankaj-mandal to our github repo so that your PRs run in our CI. We'll focus on getting this and #9219 merged, and hopefully with CI set up, future PRs will be easier

Sounds good.  Thanks.

We'll need to fix those, since breaking CI will block development. Maybe we can discuss what changes are needed tomorrow?

It isn't clear how/ the tests can be run locally to debug, but I'll see if I can track down the source of the problem. I created a new PR #9343 to see if the state is different now that I have membership in the pachyderm dev group. Now can add reviewers, which I couldn't before, but it doesn't appear that CI tests trigger on my PRs yet so that must be controlled by something else.

Just to follow up with this, two suggestions:

To get a PR that triggers CI: because you (should) have access to the repo, you can always clone the repo and start pushing to the msteffen-9251-test branch (let me know if you do so I don't accidentally clobber your changes). You can also, of course, create a new branch and start pushing to that. Because it's a branch of the pachyderm/pachyderm repo, rather than a fork, CI should work there as well. AFAICT CI discriminates between PRs created from forks of the pachyderm/pachyderm repo and PRs created from branches within the pachyderm/pachyderm repo in this way.
To run the tests locally: start pachyderm (make sure pachctl can connect) and then do the following (I got these by just reading the relevant CircleCI logs, which, while tedious, is a good way to start iterating on anything happening in CI):

export VIRTUAL_ENV=$(pwd)/venv
python3 -m pip install -e '.[dev]'
mkdir pfs
export PFS_MOUNT_DIR=$(pwd)/pfs
pytest -v jupyterlab_pachyderm/tests/test_integrations.py

Replaced with direct branch to enable CI.
https://github.com/pachyderm/pachyderm/pull/9351


Error with brave

Hi, great workflow, very helpful
But when I try to query brave I get the following error in debug mode:
[11:47:21.074] ERROR: Browser Tabs[Script Filter] Code 1: ./list-tabs.js: execution error: Error: Error: An error occurred. (-1743)

ok I've found the cause. Somehow I wasn't asked to allow automation access for Brave. So I've added "Brave Browser" under Privacy/Automation/Alfred 4.app

how to set？

ok I've found the cause. Somehow I wasn't asked to allow automation access for Brave. So I've added "Brave Browser" under Privacy/Automation/Alfred 4.app

how to set？


MINOR: Change topic zNode's new reassigning fields names to snake case in order to be consistent with other fields

I accidentally introduced camelCase into the names for the topic ZNode data structure with https://github.com/apache/kafka/pull/7128

LGTM.
The reason there are no tests that fail is that he's changing both the serialization and deserialization logic.  And since these fields didn't exist previously to 2.4, no ducktape test would have a chance of seeing a failure either.


proposal: Securing Go vendor packaging

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
1.7.x and 1.8.x
What operating system and processor architecture are you using (go env)?
Linux / Alpine / CoreOS / RancherOS / Ubuntu and CentOS
What did you do?
system architect
What is the problem?
While there are vendoring tools and strategies out there they fail to secure enterprise. Another related issue is init() in vendor packages
Examples
most vendoring tools copy the vendor packages and their dep tree to the project folder. Making you responsible for maintaining them as part of the actual project instead of a fork.
forking projects to not include forking of the dep tree. So if your favorite package also includes a 3rd party lib [a] the namespace is corrupt [b] the forked package is broken.
And as evidenced by the NodeJS project that was part of the dependency tree of 80-90% of all node projects where the developer removed his code in protest.
Once your favorite package imports from another vendor and that code is corrupted with an init() function that launches a thread that deletes your HDD or encrypts it. It's a perfect trojan.
Possible fix
First of all I would like to see a compiler error/warning generated when a package imports from anyplace other than the core golang packages. And an accompanying pragma as to whether this is a warning or a compiler error. But it should NEVER be silenced.
First of all I would like to see an error/warning if a vendor package implements an init(). And we should see even more errors/warnings if the vendor package does any sort of i/o without some sort of pragma in the import statement.

First of all I would like to see a compiler error/warning generated when a package imports from anyplace other than the core golang packages. And an accompanying pragma as to whether this is a warning or a compiler error. But it should NEVER be silenced.

The Go compiler does not have warnings, only errors.

And we should see even more errors/warnings if the vendor package does any sort of i/o without some sort of pragma in the import statement.

I don't think this is possible to implement reliably. I can make syscalls from assembly, after all.
Why would you vendor code you haven't audited, including transitive dependencies? You are ultimately responsible for the correctness and robustness of the source upon which your code depends.
The only thing vendoring tools can provide is a guarantee of authenticity for the code. (And, if you're using Git, you do get most of that guarantee "for free," recent vulnerabilities of SHA1 notwithstanding.) You can even use git to check for code that doesn't have PGP signatures on tags and/or commits, if you're particularly concerned about authenticity.

I had not considered embedded assembly although I have not seen those references in the language definition which does not mean that it does not exist. As for syscalls, I would expect those to generate warnings too.... as syscalls are i/o. (conditional build based on OS ir ARCH not withstanding)
I'm making the point that without code reviews of vendor code and the dependency tree there are any number of challenges. Just because the tree is safe today does not mean it's going to be safe tomorrow. GIT makes no promise implied or other...
I'll give you another example... I have been testing a javascript sip client. It's loaded in my browser from a local apache server. In order to get the client to connect I need to provide credentials. The library is a professional/commercial product and makes no claim or configuration option for a TUN or STUN proxy, yet they took my credentials and sent them to their proxy service. Since this was a commercial product they obfuscated the code so a code review was not possible.
The point I'm making is that while I have an implied contract with the 3rd party vendor I'm using I'm also obligated to accept the nested contract that vendor has engaged. I am further asserting that the golang compiler should warn as I indicated. AGAIN, any of those deeply nested vendors could become compromised and so would everyone above.

On hold for #17244, which in turn is essentially blocked on understanding the long-term plan for package management.

On hold until we have package management work progresses.
But any validation checks or restrictions like this will probably be part of a vendoring tool and not a Go change, though.

@bradfitz that's reasonable and works for me. Thanks

Marking this obsoleted by Go modules.

This proposal has been declined as obsolete.
— rsc for the proposal review group


[Bug]: Initialized datatype of variables does not change until the app is refreshed

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Initialized datatype of a variable present in a JS object does not change until the app is refreshed. Hence when a user is using this changed variable type in a binding then they see an error for incorrect datatype.
Steps To Reproduce

Add a new JS object - observe myvar2 is an object datatype
Change this value to a string, something like, "sunday"
Try to bind myvar2 to a Button widget's label and observe there's an error for datatype
Refresh the page and observe this error is cleared

Public Sample App
No response
Version
Cloud

@ramsaptami JSObject variables work like constants and cannot be reassigned. Related to #14568


fix: add fish scripts to the default ignore patterns

Shellcheck doesn't support fish scripts, so they should be ignored

Thank you!


Laptop Price Prediction WebApp

Laptop price prediction Web app, this folder contain all the files which is useful for making or deploying the laptop price prediction model into web app.
This project is build by using Machine Learning and streamlit.

Yo, are you using a weighted model to predict prices? like ram takes precedence over display etc?

Hey @ankitkumar174  Everything is  Ok. But you had committed the project to wrong dir.
See there is one special dir for Data Science . Read the Readme file there how to contribute any ml project.
Just follow those guideline.
Will happy to see update PR.

Yes, it is easily run on RAM because its a Machine Learning model its processing time or storage are less and the dataset used in this model is easily managed by ram.
We need GPU for Deep Learning models.

Hey @ankitkumar174  Everything is  Ok. But you had committed the project to wrong dir.
See there is one special dir for Data Science . Read the Readme file there how to contribute any ml project.
Just follow those guideline.
Will happy to see update PR.

Ok, i will update the PR and changed the project dir.

Hey @ankitkumar174  Everything is  Ok. But you had committed the project to wrong dir.
See there is one special dir for Data Science . Read the Readme file there how to contribute any ml project.
Just follow those guideline.
Will happy to see update PR.

I have made the changes of my projects according to your guidelines.


asd-resync service failing

First of all, thanks for the great work in asd, it is a very nice replacement for profile-sync-daemon.
Below the is error log. It might be the error file has vanished: "/tmp/asd-braulio/home/braulio/.cache/thorium/Profile 6/Cache/Cache_Data/7082fdad76859f2e_0" causing the failed status
✗  sudo systemctl list-units --failed
  UNIT               LOAD   ACTIVE SUB    DESCRIPTION
● asd-resync.service loaded failed failed Timed resync

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.
1 loaded units listed.

✗  sudo systemctl status asd-resync
× asd-resync.service - Timed resync
     Loaded: loaded (/usr/lib/systemd/system/asd-resync.service; disabled; preset: disabled)
     Active: failed (Result: exit-code) since Wed 2023-08-30 10:01:24 -03; 9min ago
   Duration: 6.864s
TriggeredBy: ● asd-resync.timer
       Docs: man:asd(1)
             man:anything-sync-daemon(1)
             https://wiki.archlinux.org/index.php/Anything-sync-daemon
    Process: 154726 ExecStart=/usr/bin/anything-sync-daemon resync (code=exited, status=24)
   Main PID: 154726 (code=exited, status=24)
        CPU: 4.907s

ago 30 10:01:22 bhavapower anything-sync-daemon[154740]: [47.9K blob data]
ago 30 10:01:22 bhavapower anything-sync-daemon[154740]: [48.0K blob data]
ago 30 10:01:22 bhavapower anything-sync-daemon[154740]: [29.6K blob data]
ago 30 10:01:22 bhavapower anything-sync-daemon[154740]: file has vanished: "/tmp/asd-braulio/home/braulio/.cache/thorium/Profile 6/Cache/Cache_Data/7082fdad76859f2e_0"
ago 30 10:01:24 bhavapower anything-sync-daemon[154740]: [12.5K blob data]
ago 30 10:01:24 bhavapower anything-sync-daemon[154726]: flock: obtenção da trava levou 0.000002 segundos
ago 30 10:01:24 bhavapower anything-sync-daemon[154726]: flock: executando /usr/bin/anything-sync-daemon
ago 30 10:01:24 bhavapower systemd[1]: asd-resync.service: Main process exited, code=exited, status=24/n/a
ago 30 10:01:24 bhavapower systemd[1]: asd-resync.service: Failed with result 'exit-code'.
ago 30 10:01:24 bhavapower systemd[1]: asd-resync.service: Consumed 4.907s CPU time.

I am not sure about it as this does seem to be an rsync issue that the files vanishes, this could be an edge case that you encountered but am not sure how we can handle that. although as per this it does seem like the message should've been harmless and rsync will copy files normally, am not sure why the failure though.


Measures: Use outer join for in-out degrees computation

JIRA: MADLIB-1073
Commit 06788cc added the graph measure functions described in the JIRA.
 The bug led to results not containing vertices that
either had 0 in-degree or out-degree.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/180/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/188/


Support for non-standard hwloc installation

I'm working on a platform that does not have a system-installed hwloc, which causes build problems with the blt_cuda_mpi_smoke tests in rev 9383457.  I've worked around this by adjusting CXXFLAGS and LDFLAGS, but it would be nice to have a find hwloc capability (unless it is there and I'm just missing it).

This is no longer a requirement of the smoke test and is now an internal test.  It's probably not worth fixing for the internal tests since only BLT developers run them.


"IPC connect call failed" when running gpg at Docker Hub

Found your Dockerfile with the problem description when was trying to solve similar issue myself. Apparently, there's some timing problem when gpg-agent can't start before gpg's attempts to use it, so my solution is to start it explicitly:
RUN apk -U add gnupg && gpg-agent --daemon && gpg ...

thanks, I am trying it.


Replace obsolete map functions in disposals code

About the PR

Replace obsolete map functions in disposals code.
Requirements

[x] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

PROJECT ZERO WARNINGS


It is not obvious to me.  I don't know what half the logs mean reported from "wifi" and "mesh"
I only run wifi scan when the node looks stable (not logging a whole lot of stuff) and it is reporting MESH_NODE
Can you please advise a suitable test I can implement to determine if it is safe to scan for closer parents.

My test logs clearly show I have waited much longer than 6 seconds for a node type MESH_IDLE to take some action - more like up to 60 seconds before I give up.

See notes above and logs running "mesh root" to manually trigger esp_mesh_set_self_organized(true, true)

You said "The function of this scan cannot cover all situations because the judgment criteria are relatively single. Perhaps we can add more judgments？"
Can you please propose suitable tests.
I suspect the reason you can't reproduce the problem using your modified version of "ip_internal_network" is that you are only looking for new parents on higher layers and so you don't find one to switch to.  You raised this with me and your code was only looking for layer -1

Can you please send me the source file (not just the patch file) so I can play with it.
I would also appreciate it if you could try this looking for a closer parent on the same or lower (numeric) layer so that it actually finds one calls esp_err_t err = esp_mesh_set_parent(&parent, (mesh_addr_t *)&parent_assoc.mesh_id, my_type, my_layer);
I suspect this breaks something which triggers the problems later when the parent or MESH_ROOT either power off or reboot causing combinations of the following:

Repeating <MESH_EVENT_PARENT_DISCONNECTED> event loop
Nodes stuck indefinitely on type MESH_IDLE
Nodes sitting on layers more than one level up from the parent eg node on layer 5 with parent on layer 2
Nodes connected to parent which is MESH_IDLE

From the Nov 29.zip log, running "mesh root" to manually trigger esp_mesh_set_self_organized(true, true) seems work well. Then you can use it to stop the 201 loop.
I (65677) wifi:>>>intv = 102400, max = 0 this log was added as a debug log while addressing the crash issue. The solution to the crash has already been merged into release v5.3, but it has not yet been synced to GitHub. Once it is synced, you can update your IDF version.

You said "How about directly comparing with mesh_layer ?"
I don't understand what you mean here. Please elaborate

In your last comment, you let parent_assoc.layer = mesh_layer and in findClosestParent() function, you use assoc.layer <= parent_assoc.layer for comparison. So I suggest using mesh_layer for the comparison instead.
void findClosestParent(int num) { // after a WiFi scan
...
                if (assoc.layer <= mesh_layer || assoc.layer2_cap < parent_assoc.layer2_cap) { // parents on same layer or better qualify
...

The mesh network by default allows multiple roots. However, users can call the esp_mesh_allow_root_conflicts(false)  to disable this feature, and once configured, only a single root will be allowed to exist.
Here is my mesh_main.c
mesh_main_1203.zip

Hi
Thanks for your ongoing work on this. Very much appreciated as I am in deep with this contract.

Yes it works in terms of breaking out of the 201 loop, but sometimes it results in the software locking up.
Are you saying you have made some more changes to address the crash issue, which I don't have yet?  I am currently running ESP IDF ver 5.3.1.  Will the update be ver 5.3.2 or later so I can recognize it?  Do you have an approx date for release?
Thank you for clarifying I will correct this
I have added esp_mesh_allow_root_conflicts(false) to by Wifi Mesh configuration.
Thanks for this, but if there are more updates which fix the crash (per item 2), I might wait for them to be released in interest of saving time.

Can I ask another unrelated question please.
I want to use a 4G modem using the USB bus on the ESP32-S3.  I found an example in a Espressif Git repository https://github.com/espressif/esp-iot-solution called usb_cdc_4g_module. But I don't know how esp-iot-solution relates to IDF.
https://docs.espressif.com/projects/esp-iot-solution/en/latest/ states, "ESP-IoT-Solution contains device drivers and code frameworks for the development of IoT system, which works as extra components of ESP-IDF and much easier to start."
But I have found that esp-iot-solution seems to have a parallel overlapping directory structure of components and examples to IDF.
I copied usb_cdc_4g_module project and I tried to build it using IDF 5.3.1 but the USB modem component was missing, so I manually installed this.  Now it builds but crashes soon after startup.
I don't want to enter a debugging session for this in this ticket, but I would appreciate it if you could explain how esp-iot-solution and IDF relate to each other?
Will the USB modem components be released under IDF? If so, roughly when?
If not, should I
The "Getting started" page states the latest version "master" corresponds to IDF ver >-4.4, so it looks like it is not updated as much as IDF. So for me switching from IDF v5.3.1 to esp-iot-solution does not look viable.
I would appreciate any advice on how I can connect to a 4G modem using USB.

2. Are you saying you have made some more changes to address the crash issue, which I don't have yet?  I am currently running ESP IDF ver 5.3.1.  Will the update be ver 5.3.2 or later so I can recognize it?  Do you have an approx date for release?

Yes, the v5.3.2 will contain the fix. (The fix in v5.4 is here). For the I (65677) wifi:>>>intv = 102400, max = 0, please refer to the previous comment, it solved the node crash issue, hope you have an impression of this.

I have added esp_mesh_allow_root_conflicts(false) to by Wifi Mesh configuration.

In a mesh network, if multiple roots are not allowed, when more than one root is created, the two roots will compare their RSSI and capacity values. The one with the better metrics will continue to act as the root, while the other will relinquish its root role and reconnect to the network.

For the ESP-IoT-Solution issue, please create a new issue under the esp-iot-solution  project, the colleague in charge of this issue will reply to you.

hi @michaelsimp , after you set the IDF_path,  you can directly build the iot-solution example under iot-solution path,

Hi
I don't think we understand each others position.

Are you saying you have made some more changes to address the crash issue, which I don't have yet? I am currently running ESP IDF ver 5.3.1. Will the update be ver 5.3.2 or later so I can recognize it? Do you have an approx date for release?

Yes, the v5.3.2 will contain the fix. (The fix in v5.4 is here). For the I (65677) wifi:>>>intv = 102400, max = 0, please refer to the https://github.com/espressif/esp-idf/issues/14720#issuecomment-2456066231, it solved the node crash issue, hope you have an impression of this.

Your reference back to a post you made a couple of weeks ago which said

@michaelsimp
Yes, I added a fix to the wifi lib I provided to you. wifi:>>>intv = 102400, max = 0 this log was added by me to locate the problem. I'm glad to hear that the problem has been solved.
Have you tested the router reboot case? Does the root node crash still exist?

But I am confused as since then I have posted heaps of logs which still show multiple problems with the mesh network when the parent is powered off or rebooted, including:
A) the 201 loop.  esp_mesh_set_self_organized(true, true) works in terms of breaking out of the 201 loop, but sometimes it results in the software locking up. This still a serious problem for me.
B) nodes locking up
C) the child going to MESH_IDLE and not recovering or attempting to find a new parent. My attempts to trigger a scan for a new parent using
                esp_mesh_set_self_organized(false, false);`
                esp_wifi_scan_stop();
                scan_config.show_hidden = 1;
                scan_config.scan_type = WIFI_SCAN_TYPE_PASSIVE;
                esp_wifi_scan_start(&scan_config, 0);

... result in lock up.
My  posts continue through to the end of last week and then yesterday you stated

"The solution to the crash has already been merged into release v5.3, but it has not yet been synced to GitHub. Once it is synced, you can update your IDF version."

So if the latest update you have made was back before https://github.com/espressif/esp-idf/issues/14720#issuecomment-2456066231, You need to understand my problem is most certainly not fixed.
I think you reported that this was done when looking for a parent on a lower numeric layer which with the tests both you and I did, no nodes were found so it never ran the code
esp_err_t err = esp_mesh_set_parent(&parent, (mesh_addr_t *)&parent_assoc.mesh_id, my_type, my_layer);
which I think is the trigger to breaking the mesh network.
Please confirm again if you have more changes since this date.  I tried to check the reference fix in v5.4 is here but I cant view them as I just get action not available.  (I am not very familiar with GIT).

You said in the comment  that you couldn't understand what this log meant.

Line 126 starts logging I (65677) wifi:>>>intv = 102400, max = 0. I don't know what this means

Then I replied to you that this log was added to solve the previous crash issue. I quoted my previous comment just to let you know that there have been similar logs before, and this fix has not been updated to GitHub yet, that's all. It has nothing to do with the other issues you reported later !!!

Ok thanks for clarifying. I didn't understand the context and got excited at the prospects of a fix.
So is my case still open for action from your side, or do you need something more from me?

Can I have an update please.

Ok, but I will need to park it and come back as soon as I can.  My project is far behind now and I have to make progress in other areas.  Please keep this ticket open

sure.


change(devops): Use correct name for cd-build-zcash-params.yml

Motivation
This isn't a reusable workflow, so it should either start with ci or cd. Since it is only run on the main branch, cd seems better.
Review
This is a low priority cleanup.
Reviewer Checklist

[ ] Are the PR labels correct?
[ ] Does the code do what the ticket and PR says?

[ ] Does it change concurrent code, unsafe code, or consensus rules?

[ ] How do you know it works? Does it have tests?

This workflow will be deleted by PR #7613 or the PR after it, so changing its name will just cause merge conflicts.


SOLR-17423: Remove -h as short option for --host, and use --host.

Couple of small code cleanups..
https://issues.apache.org/jira/browse/SOLR-17423
Description
Deal with -h confusion.
Solution
Got lucky and found out RunExampleTool never uses -h option, so easy removal!
Tests
Please describe the tests you've developed or run to confirm this patch implements the feature or solves the problem.
Checklist
Please review the following and check all that apply:

[ ] I have reviewed the guidelines for How to Contribute and my code conforms to the standards described there to the best of my ability.
[ ] I have created a Jira issue and added the issue ID to my pull request title.
[ ] I have given Solr maintainers access to contribute to my PR branch. (optional but recommended, not available for branches on forks living under an organisation)
[ ] I have developed this patch against the main branch.
[ ] I have run ./gradlew check.
[ ] I have added tests for my changes.
[ ] I have added documentation for the Reference Guide

I just noticed, there is a line in solr.cmd in both branch_9x and main (different places), that does:
set SOLR_HOST=%~2
set "PASS_TO_RUN_EXAMPLE=-h %~2 !PASS_TO_RUN_EXAMPLE!"

These hidden arguments are very hard to find. We should definitely move more code to Java and have a single place to update everything in the future. #

you found it!   You know, earlier today, I took a spin through solr.cmd looking for this and did NOT find it...

Okay, see https://github.com/apache/solr/pull/2683 for fix.


Updating build links in project README to point to codedellemc instead of emccode

Current coverage is 24.12% (diff: 100%)

Merging #333 into master will not change coverage

@@             master       #333   diff @@
==========================================
  Files            47         47
  Lines          2815       2815
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            679        679
  Misses         2067       2067
  Partials         69         69

Powered by Codecov. Last update 159b773...74f6d01


Hydra dependency will not install - git@github.com:akhti/hydra.git

Linux Ubuntu 20.04:

pip3 install -r requirements.txt
Obtaining hydra from git+git@github.com:akhti/hydra.git#egg=hydra (from -r requirements.txt (line 10))
DEPRECATION: This form of VCS requirement is being deprecated: git+git@github.com:akhti/hydra.git#egg=hydra. pip 21.0 will remove support for this functionality. A possible replacement is<EMAIL_ADDRESS><EMAIL_ADDRESS>or the insecure<EMAIL_ADDRESS>You can find discussion regarding this at https://github.com/pypa/pip/issues/7554.
Cloning git@github.com:akhti/hydra.git to ./src/hydra
Running command git clone -q git@github.com:akhti/hydra.git /home/ivberg/GitRepos/rebel/src/hydra
The authenticity of host 'github.com (<IP_ADDRESS>)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'github.com,<IP_ADDRESS>' (RSA) to the list of known hosts.
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
ERROR: Command errored out with exit status 128: git clone -q git@github.com:akhti/hydra.git /home/ivberg/GitRepos/rebel/src/hydra Check the logs for full command output.
Windows Win10 1809:

pip install -r requirements.txt

Obtaining hydra from git+git@github.com:akhti/hydra.git#egg=hydra (from -r requirements.txt (line 10))
DEPRECATION: This form of VCS requirement is being deprecated: git+git@github.com:akhti/hydra.git#egg=hydra. pip 21.0 will remove support for this functionality. A possible replacement is<EMAIL_ADDRESS><EMAIL_ADDRESS>or the insecure<EMAIL_ADDRESS>You can find discussion regarding this at https://github.com/pypa/pip/issues/7554.
Cloning git@github.com:akhti/hydra.git to .\src\hydra
Running command git clone -q git@github.com:akhti/hydra.git 'c:\src\rebel\src\hydra'
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ERROR: Command errored out with exit status 128: git clone -q git@github.com:akhti/hydra.git 'c:\src\rebel\src\hydra' Check the logs for full command output.

@ivberg please pull and try again

I am having similar issues. Ubuntu 20.04:
Cloning into '/home/code/projects/rebel/third_party/pybind11'...
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of 'git@github.com:pybind/pybind11.git' into submodule path '/home/code/projects/rebel/third_party/pybind11' failed
Failed to clone 'third_party/pybind11'. Retry scheduled
Cloning into '/home/code/projects/rebel/third_party/pybind11'...
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of 'git@github.com:pybind/pybind11.git' into submodule path '/home/code/projects/rebel/third_party/pybind11' failed
Failed to clone 'third_party/pybind11' a second time, aborting

@xgshark this is a different issue as you have error while cloning a public repo (pybind11).
Does it work when you try to clone it separately?
git clone git@github.com:pybind/pybind11.git

If not, something is very peculiar with your git config

@xgshark
you can try this:
rm -rf third_party/*
cd third_party
git clone https://github.com/google/googletest.git
git clone -b v2.3 https://github.com/pybind/pybind11.git
cd ..

@xgshark
you can try this:
rm -rf third_party/*
cd third_party
git clone https://github.com/google/googletest.git
git clone -b v2.3 https://github.com/pybind/pybind11.git
cd ..

This works for me


Add LICENSE file containing 2, 3 or 4-clause BSD License text

Originally reported by Kubilay Kocak (Bitbucket: koobs, GitHub: koobs)

Add a LICENSE file to the repository containing the chosen license text, to indicate explicitly which of the BSD Licenses [1] is specified:

2-clause ("Simplified" or "FreeBSD")
3-clause ("Revised", "New" or "Modified"), or
4-clause ("Original")

I am currently creating a FreeBSD Port for the lazy package, and need to specify this for our license framework requirements.

Update Trove classifiers to suite (for bonus points)

[1] https://en.wikipedia.org/wiki/BSD_licenses

Bitbucket: https://bitbucket.org/ned/coveragepy/issue/313
This issue had attachments: coverage.patch.  See the original issue for details.

Great project


loadable-components: failed to asynchronously load component

🐛 Bug Report
A clear and concise description of what the bug is.
To Reproduce
I have created module A which is a component library of my React App. Which I plan on using on module B which is my actual React App.
I have an index.js whereby I export my components from module A by using loadable components in the following fashion
import loadable from '@loadable/component'

export const Theme = loadable(() => import('./Theme'))
export const OtherComponent = loadable(() => import('./OtherComponent'))
export const OtherComponent2 = loadable(() => import('./OtherComponent2'))

I therefore build and deploy my module to npm by using the following webpack configuration
const path = require('path')
const { CleanWebpackPlugin } = require('clean-webpack-plugin')
const TerserPlugin = require("terser-webpack-plugin")
const LoadablePlugin = require('@loadable/webpack-plugin')

module.exports = {
  mode: 'production',
  optimization: {
    usedExports: true,
    minimize: true,
    concatenateModules: false,
    minimizer: [new TerserPlugin({
      terserOptions: {
        keep_fnames: true
      }
    })],

  },
  entry: {
    main: './src/components/index.js',
  },
  output: {
    publicPath: ''/",
    filename: "[name].js",
    path: path.resolve(__dirname, "dist"),
    library: "myComponentLibrary",
    libraryTarget: "umd",
    globalObject: "this"
  },
  externals: {
    react: {
      root: 'React',
      commonjs: 'react',
      commonjs2: 'react',
      amd: 'react',
    },
  },
  plugins: [new CleanWebpackPlugin(), new LoadablePlugin()],
  module: {
    rules: [
     {
        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: [
          {
            loader: "babel-loader",
            options: {
              cacheDirectory: true
            }
          }
        ],
      },
      {
        test: /\.(jpe?g|png|gif|svg)$/,
        type: 'asset/inline'
      },
    ]
  }
}

Expected behavior
I expected that when I npm install module A on module B to be able to import and render my components but instead I get the following error.

loadable-components: failed to asynchronously load component {
fileName: undefined,
chunkName: undefined,
error: 'Loading chunk 2661 failed.\n(error: 2661.js)'
}

Run npx envinfo --system --binaries --npmPackages @loadable/component,@loadable/server,@loadable/webpack-plugin,@loadable/babel-plugin --markdown --clipboard
Paste the results here:
 - OS: Linux 5.8 Ubuntu 20.04.1 LTS (Focal Fossa)
 - CPU: (4) x64 Intel(R) Core(TM) i7-4600M CPU @ 2.90GHz
 - Memory: 848.22 MB / 11.40 GB
 - Container: Yes
 - Shell: 5.8 - /bin/zsh
## Binaries:
 - Node: 14.15.5 - ~/.nvm/versions/node/v14.15.5/bin/node
 - npm: 6.14.11 - ~/.nvm/versions/node/v14.15.5/bin/npm
## npmPackages:
 - @loadable/babel-plugin: ^5.13.2 => 5.13.2
 - @loadable/component: ^5.15.0 => 5.15.0
 - @loadable/webpack-plugin: ^5.15.1 => 5.15.1

Sorry, but you have to build only ONE thing using webpack, not both.
Loadable components are "product facing" library and not supposed to be used in other packages.
Meanwhile, please check #640 for the use case closer to your one, however completely different.

@theKashey follow up question to your answer:
We have a similar use case, where we have packages compiled using Rollup and we want to put code split points in them, and have applications configurated with @loadable consume them -- we're finding some issues with those code split points functioning.
We run Babel on these packages explicitly (for other reasons), and I was thinking that perhaps that would help @loadable be able to find the code split points, but your answer makes me think that this just doesn't work fundamentally?
Do you perhaps have an issue or reason you could point us towards as to why that's the case? Is it the Babel plugin, or the Webpack plugin, etc?
Thanks for the great library and any assistance!

loadable babel plugin injects webpack-chunk-name into all dynamic imports, expecting them to be named this way by webpack. It can work for node_modules as well, but you have to ensure that 1) babel is told to (default settings are excluding node_modules) 2) dynamic import is still dynamic import (or babel plugin will not find what it has to amend)
that is all. The rest is to server/webpack packages which have to ensure that the expectations of babel plugin are fulfilled.

So please check the build output of rollup - it's better to ESM with untranspiled dynamic import.


Add  option to meltano config load for loading from a file

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/2764
Originally created by @rm-corneille on 2021-05-23 20:01:59

Scope of Issue
Enable meltano config <plugin> load <path>. This would accept a file and iterate over the keys in the file. It would then run meltano config <plugin> set <key> <value> code path for each, so that settings will end up in meltano.yml or .env as appropriate.
Problem to solve
Basically we have to manually input the Redshift credentials every time we set up a new redshift target
we would like to find a way to automate the configuration of target-redshift
Target audience
for the developer, the one in charge of setup the meltano config
Further details
an instruction like meltano config target-redshift load my_config.json or meltano elt tap-foo target-redshift --loader-config=my_config.json
Proposal
(How are we going to solve the problem? Try to include the user journey)
What does success look like, and how can we measure that?
an instruction like meltano config target-redshift load my_config.json or meltano elt tap-foo target-redshift --loader-config=my_config.json
Regression test
(Ensure the feature doesn't cause any regressions)

[ ] Write adequate test cases and submit test results
[ ] Test results should be reviewed by a person from the team

Links / references

View 6 previous comments from the original issue on GitLab


Consider removing hard dependency on PyOpenSSL

Authenticating service accounts with a JSON private key should not require installing PyOpenSSL.
More specifically, when isinstance(credentials, service_account._ServiceAccountCredentials) is True, PyOpenSSL is not required.
Given that PyOpenSSL requires OpenSSL, minimizing the dependency is beneficial.

:+1: The oauth2client dependency should be sufficient. It's a dep that's been "unexamined" for some time. The last time it was touched was in #419 (my PR). It's used to convert a PKCS12 key to a PM payload for signing a URL.
        # Take our PKCS12 (.p12) key and make it into a RSA key we can use.
        pkcs12 = crypto.load_pkcs12(
            base64.b64decode(credentials.private_key),
            'notasecret')
        pem_text = crypto.dump_privatekey(
            crypto.FILETYPE_PEM, pkcs12.get_privatekey())

The function storage.connection._get_pem_key is only used by the function storage.connection._get_signed_query_params which in turn is only used by storage.connection.Connection.generate_signed_url.
The only other place we use "crypto" is in our regression tests, checking an MD5 hash against a stored file.

@craigcitro What do you think about moving some of the behavior of _get_pem_key and _get_signed_query_params into google/oauth2client? We've discussed this before, but signed a URL is a generic thing people may do.

@dhermes SGTM, especially if you move some tests in with it. ;)

google/oauth2client#115 created to offload the dependency onto oauth2client.
That library makes me sad every time I read the source :( But this is true of a lot of popular libraries, so meh.
I'm wondering if we could also ditch the PyCrypto dependency? @s3ththompson I don't have a lot of expertise here, is one easier to deal with than the other?

Since PyCrypto is a pure-python library, there's not really a need to ditch it as a dependency.  The problem with PyOpenSSL is just that it depends on installing OpenSSL a (non-python) binary.

Ahhh! Very nice.

So google/oauth2client#115 has been cut, so fixing this can now be done on the next release of oauth2client.


Add route testing test case

All Submissions:

[x] Have you followed the guidelines in our Contributing document?
[x] Have you read and signed the automated Contributor's License Agreement?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

New Feature Submissions:

[x] Does your submission pass tests?
[x] Have you lint your code locally prior to submission?

Changes to Core Features:

[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your core changes, as applicable?
[x] Have you successfully ran tests with your changes locally?

We should also add the github action in the same PR, to see the tests run

@solancer any update on this?


Getting "Cannot Import Module" errors when using Typescript

I was getting "Cannot Import Module" errors when attempting to import Markdown files in Typescript.
However, the solution was as simple as adding the following globals.d.ts file to my project root:
declare module '*.md';

I landed with thous types:
declare module '*.md' {
    const attributes: { [key: string]: string | string[] | {}[] };
    const react: React.FC<attributes>;
    export { attributes, react }
}


Add Support for EDNS

Is your feature request related to a problem? Please describe.
Currently EDNS is not supported, while it is a widely used protocol for extending DNS's capabilities.
Describe the solution you'd like
The server should be extended to support EDNS.
Additional context
The relevant RFC is here

#122 Begins this work


fix default value in accounts-display-density

Github Issue (if applicable): #XXX
Trello Link (if applicable):
Forum Link (if applicable):
Explanation of Bugfix/Feature/Enhancement:
@dbaldon commented on #828 that the default value should match the default option value.
Recommended Release Notes:

I'm only fixing this because it is the 'template' I had looked at while working on #828.


building the library for windows

I ran configure with the --prefix=/mingw flag and then when i ran make i got this linker error :
libtool: link: gcc -shared  .libs/libconfuse_la-confuse.o   -lintl  -g -O2   -o .libs/libconfuse-2.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libconfuse.dll.a
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_free:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:1992: undefined reference to cfg_yylex_destroy
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_init_defaults:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:792: undefined reference to fmemopen
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:801: undefined reference to cfg_scan_fp_begin
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:808: undefined reference to cfg_scan_fp_end
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_parse_internal:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:1287: undefined reference to cfg_yylex
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_addopt:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:627: undefined reference to reallocarray
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_parse_fp:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:1677: undefined reference to cfg_scan_fp_begin
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:1679: undefined reference to cfg_scan_fp_end
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_parse_buf:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:1798: undefined reference to fmemopen
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: .libs/libconfuse_la-confuse.o: in function cfg_include:
C:/Users/abder/Downloads/confuse-3.3/src/confuse.c:2011: undefined reference to cfg_lexer_include
collect2.exe: error: ld returned 1 exit status
make[2]: *** [Makefile:452: libconfuse.la] Error 1
make[2]: Leaving directory /c/Users/abder/Downloads/confuse-3.3/src
make[1]: *** [Makefile:520: all-recursive] Error 1
make[1]: Leaving directory /c/Users/abder/Downloads/confuse-3.3
make: *** [Makefile:406: all] Error 2

There's a windows/mingw/README.TXT did you see that?

yes and i followed the instructions but when i tried to debug a simple
program to test it gdb kept exiting and when i ran it on bash it said that
it needs libconfuse-2.dll so i tried to build it but i got the linker
message that mentioned in the issue
On Fri, Sep 22, 2023, 12:13 AM Joachim Wiberg @.***>
wrote:

There's a windows/mingw/README.TXT did you see that?
—
Reply to this email directly, view it on GitHub
https://github.com/libconfuse/libconfuse/issues/172#issuecomment-1730310551,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A475XG5X63LJNHKLCO4QUG3X3SUYVANCNFSM6AAAAAA5B7RRTA
.
You are receiving this because you authored the thread.Message ID:
@.***>

I finally solved the proplem
so this is what i had to do if any one else encountered the same proplem :

I moved the definition of HAVE_WINDOWS_H from config.h to fmemopen.c.
I included reallocarray.c in confuse.c.

OK, but none of that should be necessary:

config.h should be included in fmemopen.c when HAVE_CONFIG_H is set on the command-line, which is done on all other build targets
reallocarray.c is built-in to libconfuse for systems where the configure script cannot find reallocarray() in the libc

Exactly how did you autogen.sh + configure + make libconfuse to get to this state? And what version of libconfuse are you using, or are you building directly from the latest master branch on GitHub?

I downloaded the zip file from the releases page yesterday so i think it is the latest release and i configured and built it using
mingw64 bash i tried to build it multiple times but here is what i did the last time

I decompressed the files agian in case it was corrrupted
I ran configure with no arguments
I ran make to build the dll

when i opened the fmemopen.c to see what is the proplem config.h was included and it had HAVE_WINDOWS_H set to 1 but for some reason all the definitions of fmemopen where dark which means that it is not activated due to preprocessors so i moved HAVE_WINDOWS_H from config.h to fmemopen and when i ran make the only error i got was a linker error saying that it can't find the definition of realloc_array so i included it in confuse.c and finally i was able to build the dll

Thanks for detailing your answer.  We'll have a look at it later to see if we can figure out what's wrong.


Slow for large images on Android

Is there a way to downsize the image before loading it into the canvas? That way the plugin would I think be a lot faster.

I'm having the same problem, I'm using the component to create avatar images, and on mobile devices it takes time to load it, and I can't loader a charger at the moment either ...


Fix small issues with CHANGELOG-6.x.md

Changes:
Change dont -> don't
Context:
Fixes similar issue as the ones I fixed with pulls #34540, #34538 and #34525.

Please send to 6.x.

Will do! :smile:


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-source-version-target/pull/180 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-source-version-target.git

Docs Build status updates of commit 735fc9e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.redirection.json
:white_check_mark:Succeeded

versioningArchiveSourceFolder/TOC.yml
:white_check_mark:Succeeded
View (sql-server-2014 || azuresqldb-current || azuresqldb-mi-current || azure-sqldw-latest || >= aps-pdw-2016 || >= sql-server-2016 || >= sql-server-linux-2017 || sql-server-previousversions || sqlallproducts-allversions)

versioningArchiveSourceFolder/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


pkgs.formats.toml changed semantics in 23.05

Describe the bug
pkgs.formats.toml changed behaviour between nixos 22.11 and NixOS 23.05, apparently producing semantically different outputs (which broke our telegraf module)
~/nixpkgs nixos-22.11
❯ git rev-parse HEAD
eef86b8a942913a828b9ef13722835f359deef29

~/nixpkgs nixos-22.11
❯ cat $(nix-build --expr '(((import ./. {}).formats.toml {}).generate "test" { processors = { override = [ { tags = { cluster = "staging"; }; } ]; rename = [ { replace = [ { dest = "ceph_telegraf_check"; measurement = "exec"; } ]; }]; }; })')
[processors]
[[processors.override]]
[processors.override.tags]
cluster = "staging"

[[processors.rename]]
[[processors.rename.replace]]
dest = "ceph_telegraf_check"
measurement = "exec"

~/nixpkgs nixos-22.11
❯ git checkout nixos-23.05

~/nixpkgs nixos-23.05
❯ git rev-parse HEAD
d3bb401dcfc5a46ce51cdfb5762e70cc75d082d2

~/nixpkgs nixos-23.05
❯ cat $(nix-build --expr '(((import ./. {}).formats.toml {}).generate "test" { processors = { override = [ { tags = { cluster = "staging"; }; } ]; rename = [ { replace = [ { dest = "ceph_telegraf_check"; measurement = "exec"; } ]; }]; }; })')

[processors]
[processors.override.tags]
cluster = "staging"
[[processors.rename.replace]]
dest = "ceph_telegraf_check"
measurement = "exec"

Bisect implies this is the commit that broke(?) remarshal: 620c7eaeeeaed47156d51b04e50ea220614cfa62
Was this intentional?

cc @offlinehacker as maintainer of remarshal
cc @infinisil as author (I think?) of pkgs.formats.toml

Oh yeah that's definitely not intentional, at least from Nixpkgs side. It's unfortunate that we depend on a third-party for this..
We could pin tomlkit to prevent such breakages, but we should definitely have a test case that covers this breakage.


not issue but feature request: Add supertokens

would be really nice to have this too, apart from the usual next-auth (having trouble with edge and slow performance recently) and clerk (can become pricey fast)

https://supertokens.com/ - ref supertokens
https://kinde.com/docs/developer-tools/nextjs-sdk/ - ref kinde nextjs 13


DataFusion weekly project plan (Andrew Lamb) - Sep 16, 2024

Follow on to https://github.com/apache/datafusion/issues/12391
My (personal) North ⭐ : 1000 projects are built using DataFusion 📈 ( Getting closer all the time )
It would be great for other contributors to DataFusion to to make them visible somehow as well 🙏  (feel free to copy / modify the format of this ticket)
External news
(please feel free to post a comment to this ticket if you know of something else that should be highlighted)

@emgeee and @ameyc talk about building streaming with DataFusion: https://techontherocks.show/3
Using StringView / German Style Strings to Make Queries Faster: Part 1 - Reading Parquet
[Using StringView / German Style Strings to Make Queries Faster: Part 2 - String Operations](https://www.influxdata.com/blog/faster-queries-with-stringview-part-two-influxdb/
Cross post about StringView on DataFusion blog (waiting on review https://github.com/apache/datafusion-site/pull/25)

Major Discussions (Please Take a Look)

What features should DataFusion have? https://github.com/apache/datafusion/issues/12357

Upcoming Meetups

NYC tomorrow! https://github.com/apache/datafusion/discussions/11213
Belgrade next week: https://github.com/apache/datafusion/discussions/11431
San Francisco on Wednesday September 25th https://lu.ma/05lyf19h
Seattle: Mon Oct 14: https://lu.ma/tnwl866b / https://github.com/apache/datafusion/discussions/10348#discussioncomment-10558368

Highlights from last week

We got a much needed upgrade in interval parsing correctness thanks to https://github.com/apache/datafusion/pull/12222
@waruto210  and the team at Tencent started contributing: https://github.com/apache/datafusion/pull/12417 ❤
@Rachelint  made MEDIAN and other non group aggregation faster for (really) high cardinality: https://github.com/apache/datafusion/pull/11827
@andygrove  made the 42.0.0 release candidate and we are in the final phases of release: https://github.com/apache/datafusion/issues/11902
Final touches on UF8View: https://github.com/apache/datafusion/pull/12309 from @devanbenz https://github.com/apache/datafusion/pull/12203 https://github.com/apache/datafusion/pull/12383 from @2010YOUY01
Started documenting extensions: https://github.com/apache/datafusion/pull/12420
@Omega359 and @Abdullahsab3 supported range / gen_series for intervals less than 1 day https://github.com/apache/datafusion/pull/12400
@Omega359  supported https://github.com/apache/datafusion/pull/12283

My (personal) plans for this week

[ ] Figure out sqlparser donation https://github.com/sqlparser-rs/sqlparser-rs/issues/1294
[ ] Speak at NYC meetup and prepare for CMU building blocks seminar
[ ] Get StringView enabled by default
[ ] Hack on dft with @matthewmturner : https://github.com/datafusion-contrib/datafusion-dft (it is a great testbed to see how easy/hard it is to keep functions outside the core)
[ ] Work down the review backlog

Projects I plan to help actively help review / push forward

[ ] StringView integration https://github.com/apache/datafusion/issues/11752
[ ] Parquet Filtering: https://github.com/apache/datafusion/issues/4028
[ ] High Cardinality Grouping: https://github.com/apache/datafusion/issues/11679

Algorithm for (my) prioritizing PR reviews
Note there are many committers who can and do review and merge PRs, so this is not the priorities of the project as a whole, just the approximate algorithm I use to prioritize my own time.
Priority:

Bug fixes (where something is just incorrect), especially regressions (where it used to work and now does not)
Improvements directly related to features needed for InfluxDB (my employer)
Documentation and test improvements (I view these as very strategically important)
PRs for other features I think are strategically important (See below)
Other new features / additions to functionality (note this is the lowest priority on purpose)

The top strategically important projects in my head are:

Anything that improves DataFusion's quality such as bug fixes, and improved / expanded tests, etc
Anything that makes it easier to use DataFusion as a user (docs, examples, better APIs, cleaner code, etc), including Getting started guide for new users (who want to use DataFusion in their project)
Improved performance (with benchmarks)

Thus, if you are interested in contributing to DataFusion and are interested in a fast turn around time I would recommend looking into bug fixes / test improvements / documentation or the projects named above.
If you propose adding new functionality, especially if the PR is large/complex and not connected to a wider need, the review cycle will likely be longer. You can make it a shorter cycle by looking at the comments on other recent PRs and following the same model (e.g. break it into small PRs, ensure there are tests in sqllogictest for example, the CI passes, includes documentation, etc)
Background
The idea of this ticket is make my plans for DataFusion visible, largely for my own personal organizational needs, but also to:

Communicate / coordinate in the community
Help provide an interesting summary of what is happening in DataFusion this week (both for my future self and others)

Review Queue
DataFusion (bugs / improvements)

[ ]

DataFusion (performance):

[ ] https://github.com/apache/datafusion/pull/12395
[ ] https://github.com/apache/datafusion/pull/12401
[ ] https://github.com/apache/datafusion/pull/11943

DataFusion (new features, lower priority for me):

[ ] https://github.com/apache/datafusion/pull/12186
[ ] https://github.com/apache/datafusion/pull/12266
[ ] https://github.com/apache/datafusion/pull/12225
[ ] https://github.com/apache/datafusion/pull/12080
[ ] https://github.com/apache/datafusion/pull/12295
[ ] https://github.com/apache/datafusion/pull/11978

Arrow-rs

[ ] https://github.com/apache/arrow-rs/pull/6376
[ ] https://github.com/apache/arrow-rs/pull/6365
[ ] https://github.com/apache/arrow-rs/pull/6290
[ ] https://github.com/apache/arrow-rs/pull/6336

sqlparser-rs

For next week -- craeated https://github.com/datafusion-contrib/datafusion-functions-extra as a home for extra functions
See https://github.com/apache/datafusion/issues/12254#issuecomment-2356571864

Will try and revive these updates next week


<EMAIL_ADDRESS>and babel-eslint

See eslint/eslint#5476, babel/babel-eslint#267, eslint/eslint#5494, possibly others.
The gist is that<EMAIL_ADDRESS>breaks with babel-eslint and possibly other alternative parsers.
gulp-eslint specifies ^2.0.0 which means that new installations grab 2.3.0 now. Is there any way you can pin to 2.2.x – ~2.2.0 – until<EMAIL_ADDRESS>stabilizes?

I'm going to hold off on publishing a version of gulp-eslint to downgrade ESLint since this is an ESLint issue specific to the use of babel-eslint (rather than an incompatibility between gulp-eslint and ESLint).
Fortunately, you can "pin" the version of ESLint that gulp-eslint uses by depending on a more specific version in your package (or any package dependent on gulp-eslint). The only restriction is that is has to be within the gulp-eslint dependency range (currently, any 2.x version).

I totally understand not pinning to 2.2.x just for babel-eslint. I hesitated even making this issue because of that. However, I am glad I did because of your second paragraph...

Fortunately, you can "pin" the version of ESLint that gulp-eslint uses by depending on a more specific version in your package (or any package dependent on gulp-eslint).

Oh that is nifty. You learn something every day. Thanks for that tip; that's a lifesaver. That restriction makes sense, but fortunately 2.2.x is in that range, so I think we're good. Again, thanks for the response and tip.


Enhancement: Add the ability to filter against the User who sent the email

Issue:
We would like to have a filter against the user who sent the email as well as the subject. This would stop builds from happening if the subject comes up in a non-authorized email or with a reply-type email
Expected behaviour
I would hope that the plugin would also have a form which would allow particular emails to be "authorized" and the plugin would check for the subject and who sent the email
Actual behaviour
Right now the plugin only checks on the subject
Server configuration
Any
Additional Steps/Questions
These I feel like I can ignore since this is a net new enhancement rather than a bug/issue

Hi @alexanderrtaylor ,
I'm not maintaining this plugin (looking for an active maintainer), but you might want to consider the workaround (use "Choice" parameter) from this issue -> https://github.com/jenkinsci/poll-mailbox-trigger-plugin/issues/17 (also, this might be a duplicate of that issue, but I'll let you close this ticket).
Kind regards,
Nick

Will do and thanks @nickgrealy


Support for specify process name

First of all, @josepdcs thank you for your efforts, this project is the best supported project for performance sampling so far.
When a application container that contains multiple processes require specifying the target process name when capturing. Just like the --pgrep parameter inside the upstream

If it's okay, I can contribute this feature :-)

WIP @SSmallMonster ;-)

Added to my TODO :-)

Added to my TODO :-)

That's great!!

Hi, @SSmallMonster it's already solved in 1.2.0 :-))

Hi, @SSmallMonster it's already solved in 1.2.0 :-))

Awaresome!


blocking issues with deep attributes on cloning models

Hi,
Consider the code below. When the attributes model have more than 1 level then changing the value of some deep level attributes of the clone (or the original) will be also changed in the original (or the clone) as they share the same deep-level attribute object. A deepClone() function could be not simply enhancement but bug fix because browsing through the code we can suspect that the clone() should be replaced by the deepClone() in other places it is used. For instance this code:
this._previousAttributes = _.clone(this.attributes)
with the current shallow cloning results in unexpected behavior when attributes are not a single level object. If you change a deep attributes like this.attributes.address then this._previousAttributes.address points to the same object and will not report anymore the previous attributes state. Maybe you could think about a _.extendDeep() like in jQuery.
I survey this interesting library looking for some lightweight MVC and raise some questions. Is there some forum where to exchange about Backbone and underscore?
Thanks for the nice job.
Joel
var bill = new Backbone.Model({
  name: "Bill Smith",
  address:{ city:"Boston", street:"Some"}
});

var john = bill.clone();
console.log(bill.attributes === john.attributes);
// => true

john.set({name:"John Gospel"});
console.log([bill.get("name"), john.get("name")]);
// => ["Bill Smith", "John Gospel"]
console.log(bill.attributes === john.attributes);
// => false
console.log(bill.attributes.address === john.attributes.address);
// => true

john.get("address")["city"] = "Paris";
console.log('EXPECTED : ["Boston", "Paris"], FOUND :',
      [bill.get("address")["city"],john.get("address")["city"]]);
// => EXPECTED : ["Boston", "Paris"], FOUND : ["Paris", "Paris"]
console.log(bill.attributes.address === john.attributes.address);
// => true

Yep -- deep cloning isn't well supported or (often) desirable in JS. Backbone attributes are intentionally shallow ... and if you're using them to reflect your database columns and rows, things should line up nicely.


Handling condition where Entity.cause is not a dict.

Issue #154
Description of changes:
In a case of exception chaining where an unhandled exception is captured in a subsegment and then propagated to the parent segment/subsegment, the cause property of this parent entity becomes a str from dict to record the exception id from the child subsegment. Any further dictionary operation this cause will result in TypeError.
Doing a type check on the Entity.cause when adding a new exception and resetting the cause to dict since we cannot recover the original cause dict once it has been updated to a string.
Also, making sure when adding multiple exceptions to an entity, they should be appended and not replaced.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #267 (58082a9) into master (b54ee22) will decrease coverage by 34.95%.
The diff coverage is 50.00%.

@@             Coverage Diff             @@
##           master     #267       +/-   ##
===========================================
- Coverage   79.37%   44.42%   -34.96%
===========================================
  Files          82       82
  Lines        3248     3253        +5
===========================================
- Hits         2578     1445     -1133
- Misses        670     1808     +1138

Impacted Files
Coverage Δ

aws_xray_sdk/core/models/entity.py
62.41% <50.00%> (-29.95%)
:arrow_down:

aws_xray_sdk/ext/pg8000/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/psycopg2/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/requests/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/pg8000/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/httplib/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/pymysql/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/sqlalchemy/query.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/botocore/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/psycopg2/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 55 more

Continue to review full report at Codecov.

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

Codecov Report

Merging #267 (58082a9) into master (b54ee22) will decrease coverage by 34.95%.
The diff coverage is 50.00%.

@@             Coverage Diff             @@
##           master     #267       +/-   ##
===========================================
- Coverage   79.37%   44.42%   -34.96%
===========================================
  Files          82       82
  Lines        3248     3253        +5
===========================================
- Hits         2578     1445     -1133
- Misses        670     1808     +1138

Impacted Files
Coverage Δ

aws_xray_sdk/core/models/entity.py
62.41% <50.00%> (-29.95%)
:arrow_down:

aws_xray_sdk/ext/pg8000/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/psycopg2/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/requests/patch.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/pg8000/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/httplib/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/pymysql/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/sqlalchemy/query.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/botocore/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

aws_xray_sdk/ext/psycopg2/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 55 more

Continue to review full report at Codecov.

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


Fallbacks not working with .json translation files

Laravel Version: 9.4.1
PHP Version: 8.1.1
Database Driver & Version: MySQL 8.0.28 for Linux on x86_64

Description:
Fallbacks not working with .json translation files
Steps To Reproduce:

In configuration

Add any language as default language
Add other language as fallback language

Create an empty .json file for these languages
In .json of fallback language add a key with translation
In your code call this translation with the key (added in previous step)

To fix this behavior I modified the method bellow:
https://github.com/laravel/framework/blob/6094c427834827b9932f848b6a37d788c181e814/src/Illuminate/Translation/Translator.php#L100-L135
I added the following code after line 109:
if ($fallback && $line === null) {
    $this->load('*', '*', $this->fallback);
    $line = $this->loaded['*']['*'][$this->fallback][$key] ?? null;
}

The complete code:
public function get($key, array $replace = [], $locale = null, $fallback = true)
{
    $locale = $locale ?: $this->locale;

    // For JSON translations, there is only one file per locale, so we will simply load
    // that file and then we will be ready to check the array for the key. These are
    // only one level deep so we do not need to do any fancy searching through it.
    $this->load('*', '*', $locale);

    $line = $this->loaded['*']['*'][$locale][$key] ?? null;

    if ($fallback && $line === null) {
        $this->load('*', '*', $this->fallback);
        $line = $this->loaded['*']['*'][$this->fallback][$key] ?? null;
    }

    // If we can't find a translation for the JSON key, we will attempt to translate it
    // using the typical translation file. This way developers can always just use a
    // helper such as __ instead of having to pick between trans or __ with views.
    if (! isset($line)) {
        [$namespace, $group, $item] = $this->parseKey($key);

        // Here we will get the locale that should be used for the language line. If one
        // was not passed, we will use the default locales which was given to us when
        // the translator was instantiated. Then, we can load the lines and return.
        $locales = $fallback ? $this->localeArray($locale) : [$locale];

        foreach ($locales as $locale) {
            if (! is_null($line = $this->getLine(
                $namespace, $group, $locale, $item, $replace
            ))) {
                return $line;
            }
        }
    }

    // If the line doesn't exist, we will return back the key which was requested as
    // that will be quick to spot in the UI if language keys are wrong or missing
    // from the application's language files. Otherwise we can return the line.
    return $this->makeReplacements($line ?: $key, $replace);
}

The current code works as intended. With JSON translations, there is no usage of a fallback language. The key is the translation.

Okay, I will implement it directly in my code. Thanks.

But it would be nice to have the opportunity to have a "changeable" fallback language.
Three use cases.

Changing the default translation
If there is a typo in the default (fallback) translation. Currently you'll have to find and replace all appearances of this string, in every template and every other languages. This can only be done by a global search and replace.
If the fix is merged, you simply have to create a language file for the default (fallback) language and can add the key with the typo and the corrected text it in the value.

The translation has variations
If you'll have an English word, that has multiple meanings in other languages. It's impossible to handle this with json files only because you would have to use the same key twice.

Changing the fallback language
The most horrible use case because you'll have to search for every keys in every view files and language files and replace them with the strings of the new fallback language. It would be so easy, simply changing the value of "fallback_language" in the config/app.php file.

In all use cases you'll have to swap back to the php files where all these problems can be solved with a fingertip. Why is the user forceed to do so. It wouldn't be a breaking change when handling json translation files in the same way as php translation files, or would it?

I also faced the problem while testing the application.
config/app.php:
return [
    'locale' => 'en',
    'fallback_locale' => 'fr',
];

lang/fr.json:
{
    "All rights reserved.": "Tous droits réservés."
}

lang/en.json doesn't exist.
return __('All rights reserved.');
// Returned "All rights reserved." instead of "Tous droits réservés."

Personally, this behavior misleads me, given that there are no such problems when using php files.

@felipe-dsdev, as a temporary solution, I used your code by creating a Laravel-Lang/json-fallback-hotfix project.
To get the latest version of Laravel Lang: JSON Fallback Hotfix, simply require the project using Composer:
composer require laravel-lang/json-fallback-hotfix

Next, in the providers section of the config/app.php file, replace Illuminate\Translation\TranslationServiceProvider::class
with LaravelLang\JsonFallbackHotfix\TranslationServiceProvider::class.
Compatible with Laravel 6-9.

Thanks @andrey-helldar. works like a charm.
@driesvints you indicate  "The current code works as intended" but others (including me) do not seem to agree. Can you elaborate on this? There are multiple use cases as indicated by @chludwig and I can think of a few more (for instance to ensure there is always a logical message on the screen (in the fallback language) when new code is deployed, even if translation in a less important target language is still using an older version of the json file that does not yet include the new strings). Please reconsider to include the change in the main code branch.

Indeed, if the language of the fallback application is English, then there are no problems, but since this option is placed in the configuration file and allows you to change the localization, then, I think, it will be correct to change the json keys too, and not just php.

I have found that if I do something like this in a HTTP middleware, the feature is re-enabled. 🤷
app()->setLocale($lang1)
app()->setFallbackLocale($lang2)

I have found that if I do something like this in a HTTP middleware, the feature is re-enabled. 🤷
app()->setLocale($lang1)
app()->setFallbackLocale($lang2)

Json keys doesn't works with this way.

My mistake.

Ran into this as I was puzzled why I had short keywords show up in new languages as opposed to my expected fallback texts from en.json.
Having the key function as the fall-back has a big downside: if you ever decide you need a better fallback text you are forced to update the key in all json language files.
The hotfix provided by @andrey-helldar works with Laravel 10. Please reconsider changing this in Laravel itself.


Update Change basemap sample

This PR updates the Change basemap sample to accommodate for the deprecated basemaps. Some basemaps do not have new basemap styles so I included a few of the new styles to supplement for the old ones. Please let me know what you think!

Ready for a review! @yo1995

This sample is now prompting for credentials, which is expected as per Nimesh. But qt sampleviewer did some additional changes so that this sample won't prompt for login. Should the design be the same for iOS viewer too?

Hm are you referring to the addition of the API keys? After iOS finalizes support for the API keys, this sample will only request AGOL access if API keys have not been provided. This will take into affect after #1013 is merged.

@vquach2404 So should we update read me to mention about requirement of adding api key or authenticating? Because even with ting's branch the default behavior is not including api keys

@vquach2404 So should we update read me to mention about requirement of adding api key or authenticating? Because even with ting's branch the default behavior is not including api keys

Oops there seems to be some miscommunication.
Currently we are staging all the changes to basemap onto basemap-updates branch.
Originally I thought #1013 will get into v.next soon, and after it's done I'll merge v.next back into basemap-updates branch. It turns out that the timing has changed, so I'll update #1013 tomorrow to also include API keys.
When we finally merge basemap-updates into v.next, we can do the test then.

When we finally merge basemap-updates into v.next, we can do the test then.

Are you saying we should hold off on testing this and instead just test the basemap-updates branch before merging into. v.next?

Are you saying we should hold off on testing this and instead just test the basemap-updates branch before merging into. v.next?

IMO For now we can do some ad-hoc testing to verify that the sample work as normal; we may wait until merging to run the automated tests like image comparison and others.


Added logo file.

The logo file has, for years, been living an isolated life, all by itself
remaining in CodePlex. Just why the file was never added to the repository
I can no longer remember; I must have had a thought about that back then,
but I can't remember the reasoning. In other open source projects, I've
been hosting the logo file(s) in the repository, and never had any
problems with doing that. Examples:

https://github.com/ploeh/Albedo
https://github.com/ploeh/ZeroToNine
https://github.com/ploeh/Hyprlinkr
https://github.com/GreanTech/AtomEventStore

The logo file was actively ignored in .gitignore, but git blame doesn't
help much, because the lines in question were added in
1ed3e705a43f1146c75d5eef79e24020e97f30c3 by @ecampidoglio, but that was
only a part of the migration from Mercurial, so offers little clue on the
original reasoning.

I don't see why not :+1:

I managed to track this all the way back to f46cf6d and 1e5f4d1 but even that didn't help solve the mystery. :disappointed:
Anyway, it's fine by me. :+1:

Feel free to pull if you think this PR makes the AutoFixture code base better :smile:


Approval Reminder Frequency

Description
Approval reminder emails are being sent 5 minutes after the initial approval request (if it had not been actioned) rather than 5 days.
Not sure if this is technically a bug, so apologies if I picked the wrong option.
Steps to reproduce

Submit a space request
Receive approval request but don't immediately action it
After 5 minutes an approval reminder request will be sent

Expected results
Approval Reminders should be sent 5 days after the initial approval request according to the description of the ApprovalReminderInterval setting in the Provisioning Request Settings list.

Actual Results
Approval Reminders are sent 5 minutes after the initial approval mail is sent. I checked the Provisioning Request Approval flow and the Delay in here is set to use the value from SharePoint, but the Unit is set to to Minute and not Day

Solution component
Power Automate Flows
Operating system (environment)
Windows
Additional Info
No response

@swallace74 good spot, I'll get this fixed

@swallace74 I've fixed this in the latest V1 and V2 releases


docs: Add additional documentation to aid in first-time setup

I had some trouble running the example so I've added documentation to improve the experience for new users.

Agree with @onewland here. I don't think these details are relevant for this library. All that this library's tests and examples require is a running Kafka on <IP_ADDRESS>:9092. I think we may want to include some configuration here to spin these up instead of depending on Sentry's.

@lynnagara @onewland Because running the example requires service orchestration (and independence from the sentry project) I think a tool like docker-compose would be beneficial.  Would that change be welcome?

@cmanallen That seems good to me. If we can share the same configuration with CI https://github.com/getsentry/arroyo/blob/main/.github/workflows/ci.yml#L59-L76 that would be great.


Fix Root Motion Delta Translation

Delta Translation of Root Motion is now relative to the current Orientation Basis.
You can add it directly to the Velocity to move your model accordingly (turning animation is a good example)

General sample applied to a KinematicBody
func _process(delta):
    var root_motion = anim_tree.get_root_motion_transform()
    velocity = global_transform.basis * root_motion.origin / delta
    velocity += GRAVITY * delta
    var velocity2 = move_and_slide(velocity, Vector3(0,1,0))

    global_transform.basis *= root_motion.basis

This is interesting, but I think it may be better to make it an option (will also avoid breaking compatibility)

That exactly what I thought at first.
But after digging for a while, the current implementation doesn't allow a full usage of RootMotion.
Currently, it is working only for forward/backward/strafing/etc animation, i.e. as long as the root bone doesn't change its direction via animation.
This fix only give the new possibility of taking account of that rotation (from the animation).
A common usage is turning while walking, where the root bone actually moves and rotates in the animation, not by code.
I'll attach an animated dae file for you to try what I'm talking about ;)
dud.zip
However I understand the compatibility issue, but since that will only affect the rotated animations, which are not working now, I don't think that will be a problem.

@iwHiteRabbiT Is this still desired? If so, it needs to be rebased on the latest master branch. While there are no conflicts, rebasing is important so that reviewers can easily test the PR.
If not, abandoned pull requests will be closed in the future as announced here.

Relative rotation make sense. But I wonder if we need to also make sure that all the importers are importing the file correctly.

Any chance of this solve the problem of xfade between animations that handles displacement and rotations?

The reason the rotation was not relative is probably due to the fact that certain AnimationTreeNodes use Seek, so the calculation of the root motion during Seek was broken. This will be fixed in #60774 and it should allow the root motion to use the rotation correctly.
If you still need to put rotation into translate, you may be able to add that as an option, but we are planning to make changes to expose the API of the animation process to the outside world, so that may be accomplished with a custom module or something.

problem actual in 4.0, last version!
rotation no sync!
see video: https://youtu.be/Z78KnTzFswg
im use:
var tr2: Transform3D = _animation_tree.get_root_motion_transform()
_core.transform.basis *= tr2.basis.orthonormalized()

i rotate the model using root_motion_transform.
But I can't get the absolute transformation of the main bone, which causes the animation to shift over time.

@Valeryn4 I can't understand what your problem is, as you lack a detailed explanation.
But perhaps you are misunderstanding the use of the root bone, which is a bone used to move the character, usually inserted as the parent of Hips.
If you need to move forward while facing backward, for example in a hip attack, it is necessary to rotate the Hips, not the root bone.

@Valeryn4 I can't understand what your problem is, as you lack a detailed explanation.
But perhaps you are misunderstanding the use of the root bone, which is a bone used to move the character, usually inserted as the parent of Hips. This means that basically Hips is never specified as root bone by AnimationTree.
https://www.youtube.com/watch?v=byghgoZW5ek
If you need to move forward while facing backward, for example in a hip attack, it is necessary to rotate the Hips, not the root bone.

all mixamo animations rotate the root bone. Their root bone is the hips.
In unity, this problem is solved by the fact that you can bake the animation. And also fix the rotation, disable the axis, etc.
In godot you can't get the transform root move.
therefore it is not possible to successfully apply the rotation.
I have to add the following code to animation_tree every update, in animation_tree.cpp

					case Animation::TYPE_ROTATION_3D: {
#ifndef _3D_DISABLED
						TrackCacheTransform *t = static_cast<TrackCacheTransform *>(track);
						if (track->root_motion && calc_root && capture_rotation) { //add capture rotation flag
							if (t->process_pass != process_pass) {
								t->process_pass = process_pass;
								t->loc = Vector3(0, 0, 0);
								t->rot = Quaternion(0, 0, 0, 1);
								t->scale = Vector3(0, 0, 0);
...
...
...
ClassDB::bind_method(D_METHOD("set_capture_rotation", "path"), &AnimationTree::set_capture_rotation);
ClassDB::bind_method(D_METHOD("get_capture_rotation"), &AnimationTree::get_capture_rotation);
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "capture_rotation"), "set_capture_rotation", "get_capture_rotation");

converters for mixmao use the armature itself as the root.
convert mixmao: https://github.com/enziop/mixamo_converter

@Valeryn4 Again, Hips is the "root on the tree", but it is not appropriate as the "root bone"; the root bone usually resides at the origin of the model as the parent of Hips.

@Valeryn4  If you use Mixamo, you will need to extract the Transfome from the Hips move that you actually want to apply to the model and apply it to the root bone that you added in Blender.
This is a necessary process in both Unity and Unreal, but it is more of an importer role, similar to retargeting, and should never be solved in AnimationTree.

OK.
I have a very poor understanding of animation and skeletons.
And some plugins import some models incorrectly. (Godot Game Tools for example)
Other plugins turn bones inside out.
Based on this video, I wrote such a script. Which creates a new bone and updates all animations.
@tool
extends Node3D

const HIPS_NAME_VARIANTS := ['Hips', 'mixamorig:Hips', 'mixamorig_Hips', 'Pelvis']

#
# path to target skeleton
@export var path_skeleton: NodePath = NodePath() :
	set(val) :
		path_skeleton = NodePath()
		var sk := get_node_or_null(val) as Skeleton3D
		if sk :
			path_skeleton = val

#the path where the root of rotation
@export var path_target_root: NodePath = NodePath(".") :
	set(val) :
		path_target_root = NodePath()
		var sk := get_node_or_null(val) as Node3D
		if sk :
			path_target_root = val

@export var old_root_bone_name := "mixamorig_Hips"
@export var new_root_bone_name := "Root"

#path to animation player edit animations
@export var path_animation_player: NodePath = NodePath() :
	set(val) :
		path_animation_player = NodePath()
		var sk := get_node_or_null(val) as AnimationPlayer
		if sk :
			path_animation_player = val

#exclude animations parse
@export var exclude_animations: PackedStringArray = PackedStringArray([
	"T", "RESET"
])

#click in inspector, apply now!
@export var force_convert := false :
	set(val) :
		force_convert = false
		if val :
			_convert()

var _skeleton: Skeleton3D = null
var _animation_player: AnimationPlayer = null
var _target_node: Node3D = null
var _old_bone_idx := -1
var _new_bone_idx := -1

func _to_string() -> String:
	return "[MixmaoConverter:%d]" % get_instance_id()

#chnagne track path to path target
func _parce_track(animation: Animation, track_id: int) -> void :
	var type_track := animation.track_get_type(track_id)
	var key_count := animation.track_get_key_count(track_id)
	var old_path := animation.track_get_path(track_id)
	var new_path := NodePath(
		String(old_path).replace(old_root_bone_name, new_root_bone_name)
	)

	var old_bone_rest := _skeleton.get_bone_global_rest(_old_bone_idx)
	var new_bone_rest := _skeleton.get_bone_global_rest(_new_bone_idx)
	var delta_rest_pos := new_bone_rest.origin - old_bone_rest.origin

	if type_track == Animation.TYPE_POSITION_3D and key_count > 0:
		var find_exists_tack_id := animation.find_track(new_path, Animation.TYPE_POSITION_3D)
		if find_exists_tack_id != -1 :
			animation.remove_track(find_exists_tack_id)

		animation.track_set_path(track_id, new_path)

		for key_id in animation.track_get_key_count(track_id) :
			var value: Vector3 = animation.track_get_key_value(track_id, key_id)
			value += delta_rest_pos
			animation.track_set_key_value(track_id, key_id, value)

#find tack on bone_name path
func _parse_animation(animation: Animation) -> void :

	for track_id in animation.get_track_count() :
		var path: NodePath = animation.track_get_path(track_id)
		if path.is_empty() and path.get_subname_count() > 0 :
			continue

		var tack_param_name: StringName = path.get_concatenated_subnames()
		if old_root_bone_name == tack_param_name:
			print(self, "  Track: ", path)
			_parce_track(animation, track_id)
	pass

func _convert() -> void :
	_skeleton = null
	_animation_player = null
	_target_node = null
	_old_bone_idx = -1
	_new_bone_idx = -1
	_skeleton = get_node_or_null(path_skeleton) as Skeleton3D
	_target_node = get_node_or_null(path_target_root) as Node3D
	_animation_player = get_node_or_null(path_animation_player) as AnimationPlayer

	if not _skeleton or not _target_node or not _animation_player :
		printerr(self, " Failed convert root bone animation!")
		return

	if _skeleton.get_bone_count() <= 0 :
		printerr(self, " Failed convert, skeleton bone not found!")
		return

	if old_root_bone_name.length() == 0 or new_root_bone_name.length() == 0 :
		printerr(self, " Bone name invalid!!!")
		return

	_old_bone_idx = _skeleton.find_bone(old_root_bone_name)
	if _old_bone_idx == -1 :
		printerr(self, " Bone ", old_root_bone_name, " not found!")
		return

	_new_bone_idx = _skeleton.find_bone(new_root_bone_name)
	if _new_bone_idx == -1 :
		_skeleton.add_bone(new_root_bone_name)
		_new_bone_idx = _skeleton.find_bone(new_root_bone_name)
		var local_pos := _skeleton.to_local(_target_node.global_transform.origin)
		_skeleton.set_bone_rest(
			_new_bone_idx,
			Transform3D(Basis(), local_pos)
		)
		_skeleton.set_bone_parent(_old_bone_idx, _new_bone_idx)

	var animation_list := _animation_player.get_animation_list()
	for animation_name in animation_list :
		if animation_name in exclude_animations :
			continue
		print(self, " Parse animation: ", animation_name)
		var animation := _animation_player.get_animation(animation_name)
		_parse_animation(animation)

I chatted with Tokage. Tokage said the rotation issue was fixed, so this PR can be closed.

Now we can properly extract rotation from root_motion. If this is necessary, I think we can solve this by using xform() to rotate translate.

it would be nice to use any node as root motion and not just skeleton bone.
Many UE blender plugins use the root of the skeleton as root motion, not the bone.

@Valeryn4 As I have said many times, what you are saying has nothing to do with this PR.

I've kicked it to 4.x, but needs an assessment from someone from @godotengine/animation. @TokageItLab maybe you can decide if it's worth keeping? Or if it's not relevant anymore, perhaps?

I think this PR is not actually needed anymore, and I think it can be closed.

Closing due to @TokageItLab 's appraisal.

Already we can properly extract rotation from root_motion. If this is necessary, I think we can solve this by using xform() to rotate translate.

Can you provide any examples?

@HitalloExiled You can just apply the extracted RootMotion as you want.
	var t: Transform3D = at.get_root_motion_transform()
	var root_orig: Vector3 = Vector3(t.origin.x, 0, t.origin.z)
	var root_rot: Basis = t.basis
	var root_tr: Transform3D = Transform3D(root_rot, root_orig)

	if !swap_apply_order:
		lb.text = "Apply Root motion order: Same as RootMotionView"
		player.transform *= root_tr
	else:
		lb.text = "Apply Root motion ordermode: Same as AnimationPlayer"
		player.transform.origin += root_orig
		player.transform.basis *= root_rot

rootrot.zip

@TokageItLab
I tried something like this and it didn't work in my case.
Still having the same problem reported in issue #58061.
I can only run the animation correctly when I save the relative orientation. And as mentioned in that issue, this only works if there is no xfade in the transition.
demo.zip

@HitalloExiled I can't open your project correctly. Which version of Godot are you using? The above PR was merged in May, so root motion is still broken in earlier versions of Godot.

@TokageItLab
Godot 4 Beta 6 .Net

@HitalloExiled I am not using .Net, so it would be helpful if you could create a demo project in normal Godot. But can you confirm that the root motion rotation is correctly returning relative values by delta in my project above?

@TokageItLab

@HitalloExiled I am not using .Net, so it would be helpful if you could create a demo project in standard Godot. But can you confirm that the root motion rotation is correctly returning relative values by delta in my project above?

Sorry. I deleted the ".godot" folder assuming it was auto generated.
I've updated your demo project with what I consider to be the desired behavior.
Press [D] two times to enable the mode "Apply Root motion order: Respecting delta (desired)"
rootrot2.zip

@HitalloExiled I gave the same explanation in https://github.com/godotengine/godot/issues/58061#issuecomment-1327928649 just now, too. Yeah, I don't think this is that important since it can be secured by a one-line implementation on the GDScript side, but there certainly seems to be a use case for it, so I'll see if it can be implemented as an option.

@HitalloExiled I gave the same explanation in #58061 (comment) just now, too. Yeah, I don't think this is that important since it can be secured by a one-line implementation on the GDScript side, but there certainly seems to be a use case for it, so I'll see if it can be implemented as an option.

The problem is that this solution only works if there is no xfade/blend in the transition. Which leads to a wrong interpolation in the translation.

@iwHiteRabbiT That is a pointless because it is not only about rotation but also position.

@HitalloExiled After all, for your issue, since the initial value of the rotation must come from the object to which the root motion is applied, not from the Skeleton, it would be wrong to implement it in the AnimationTree. It is easier to retrieve the object and better for performance.
The purpose of this PR in the first place has nothing to do with your issue, and probably seems to be to make the root_motion multiplication looking equal to the AnimationPlayer. It means
player.transform.origin += root_orig
player.transform.basis *= root_rot

replace with
player.transform *= root_tr

and perhaps if this PR is applied, you still need to get the current rotation of the object on the script side.
But that is just an improvement to make it easier to understand how root motion should be applied, and I think it can be complemented by the documentation.
In the meantime, I will send some improved PR for RootMotion later.

@TokageItLab
I know that in Godot things work differently, but for reference, in Unity it just works. And I believe this is the behavior most users expect when working with root motion.
public void OnAnimatorMove()
{
    transform.position += animator.deltaPosition;
    transform.rotation *= animator.deltaRotation;
}

https://user-images.githubusercontent.com/6312403/204104330-070e90ba-731a-4500-a45e-e2bb52d39bdf.mp4
As it works today, to be able to work around some of the limitations would require some way to get more details about the execution of the transitions.
I think something like this could work:
if (useRotation)
{
    var transition = stateMachine.CurrentTransition();
    // or var transition = stateMachine.GetTransition(/* From */ "Turn", /* To */ "Walk");
    // or var transition = stateMachine.GetNode("Turn").GetTransitionTo("Walk");

    // Here we could use transition information to manually interpolate the delta position.
    if (transition.Running)
    {
        var previous = this.GlobalTransform.origin + -this.orientation.basis.z;
	var current  = this.GlobalTransform.origin + -this.GlobalTransform.basis.z;

        this.orientation = this.orientation.LookingAt(previous.Lerp(current, transition.Progress /* 0..1 */), Vector3.Up);
    }
}
else
{
    if (moving && direction != this.GlobalTransform.basis.z)
    {
        var previous = this.GlobalTransform.origin + -this.GlobalTransform.basis.z;
        var current  = this.GlobalTransform.origin + -direction;

        this.LookAt(previous.Lerp(current, 0.25f), Vector3.Up);
    }

    this.orientation = this.GlobalTransform;
}

var rootMotion = this.animationTree.GetRootMotionTransform();

rootMotion.origin = this.orientation.basis * rootMotion.origin;

var transform = this.GlobalTransform;

transform.origin += rootMotion.origin;
transform.basis *= rootMotion.basis;

this.GlobalTransform = transform;

@iwHiteRabbiT Yes, so I conclude that there is no problem with the calculation of the root motion rotation itself, and that it is only a documentation issue at this point. So I think #58061 can be closed by #69199.
I agree with your need to get some information from the StateMachine and AnimationTree, and I recommend that you create a proposal on them in https://github.com/godotengine/godot-proposals.


Fix chunks order

Line
return allChunks.filter(chunk => ids.includes(chunk.id))

completely breaks 'chunksSortMode' in HtmlWebpackPlugin, so I changes code to preserve order.
Also I believe, that chunk.siblings should go before chunk.id, because they are runtime and vendor files, they should be first.

Instead of a JSONP function a JSONP array is used -> async script tag support, order no longer matter
https://github.com/webpack/webpack/releases/tag/v4.0.0

So I think you can safely disable chunksSortMode by set to 'none'.

But is still matter for CSS chunks

Yes, you're right. But I think it can't solve the problem of css chunks order.
For example:
import './style1.css'
import './style2.css' // bigger than 30kb, so won't be merge into style1.css

If the split chunk 'style2.css' goes before initial chunk, the order of css will be wrong. There's no way to tell the order of auto-generated chunks.
But I will accept the PR, I think it's better not to break chunksSortMode feature anyway.
Thank you so much.

Hm... I didn't think about size-related splitting.
But without my changes, in my case, vendor css (bootstrap) was after my css, where I alter styles, and in result – broken page.
Thanks for merging :)