Update to Berkeley DB 5.3

Alternative to #2221

Failure does not appear on my machine, retrying in the hope it was a random infrastructure hiccup.

Okay, next step is to recreate on a CentOS 7 VM

Can't even get the code to compile on CentOS (looks like getting the right boost packages is tricky). Trying again to reproduce the issue locally.

I'm scheduling this for cross-compatibility testing AFTER 1.21-dev is capable of fully synching the (testnet3) chain (i.e. AuxPoW works) so I am marking this with "do not merge yet" label until then. Please, do not merge yet ❤

See https://github.com/dogecoin/dogecoin/pull/2483 for another version focusing solely on DB 5.3

@rnicoll currently I'm having issues with 1.21 expecting bdb4.8 whereas 1.14.4+ already has 5.3. Would it be possible to move this one forward first, or do we still have other work that you'd want in before this?

@patricklodder Yeah, can do. Rebasing it without the interim pieces, now, and will then see how it looks.

@bjacquin Yup, using your patch on top of mine. Looks like we've got a few CI cases which are harder to adapt (i.e. Homebrew ships 4.8 and 18.x, but nothing in between) but most of the way there.

@rnicoll Re: 4.8 for OSX-native. That's a bit of a portability issue for the wallet.dat. Don't want to make it blocking, but should be on a TODO for 1.21, imho.
Potential solution: @michilumin made a guide for 1.14.2 that I recently proposed to make standard for 1.14, at #2686. After we merge this, it may be an idea to just use the methodology from the guide (download bdb5.3 from source and compile it) for the system-lib-built OSX test. It also makes it easier to have that guide, because the CI will say if it's still good 😊

@patricklodder Yeah... trying to get the clang patch to reliably apply (because it seemed to skip on exactly one CI target), then will take another look at OS X with a view of it downloading just that dependency.

@patricklodder Looks like there's no ideal solution, as BDB 5.3 not working on arm64 is an ongoing issue: https://trac.macports.org/ticket/62216
Going to try patching BDB to compile on x86 for now and we can think about arm64 later.

BDB 5.3 not working on arm64

Hmm it works for other arm64...
I'll try to do it on my M1 and let you know what I end up with. Can fix that in a subsequent PR.

@patricklodder Going to throw this through Gitian now just to be sure, and do a few upgrade checks. Then do we want to just disable 10.14 native and patch in a follow-on, or leave until we figure out 10.14?

Turns out it doesn't build on Gitian, but it doesn't build on Gitian before this. Both of which are strange because I was damn sure I'd tried 1.21 on Gitian :-/

Then do we want to just disable 10.14 native and patch in a follow-on, or leave until we figure out 10.14?

I'd even be fine with keeping the 10.14 build with 4.8 and then we fix it in a separate pr. I think most testing right now happens on linux?

Turns out it doesn't build on Gitian, but it doesn't build on Gitian before this.

We can fix Gitian later, maybe file an issue with the error?

Interim report from native M1 bdb53 building

Looks like there's no ideal solution, as BDB 5.3 not working on arm64 is an ongoing issue: https://trac.macports.org/ticket/62216

I get around this issue with:
cd build_unix
../dist/configure CXX=clang++ --enable-cxx --enable-posixmutexes

I get some compiler errors after that, which I am investigating later today, but this specific issue seems solvable.

Merged through #2885


vault and oidc usage?

Hello,
I wanted to give the tool a try, and wonder what could be a proper usage of it when using an oidc authentication method.
I configured only the endpoint and hit vault login -method=oidc on each context switching, is there a better way?

Hi @sereinity Currently not unfortunately. What would the ideal UX be for you?

A quick tough:
target vault create example-oidc --endpoint=https://example-vault.com:8200 --method=oidc
target vault create example-token --endpoint=https://example-vault.com:8200 --token=mytoken
eval $(target vault select example-oidc)
vault login
vault read …
eval $(target vault select example-token)
vault read …
eval $(target vault select example-oidc)
# no need to login has the previous token for this profile is still valid
vault read …

Bonus:

target vault create --auto-login=true to run vault login automatically on select
a friendly warning about obsolete token on select

Vault should support using a -method from an environment variable, which seems to not exists right now, a target vault login may help.
Also, target may provide a token helper to store/get/set tokens by profile.

Just installed this tool and also noticed there was no OIDC method so +1 for this


key-bindings.bash: disable pipefail in Alt+C

With set -o pipefail enabled globally, the Alt+C keybinding silently fails without changing directory or indicating an error.
This change temporarily disables the shell option locally within the scope of __fzf_cd__(), as expected by the existing pipelines, and then restores it to the user's original setting prior to invoking Alt+C.
Requires Bash 4.4 at least, which is more than safe to assume here :)

Reference: https://unix.stackexchange.com/a/406332

Proof that this technique works can be demonstrated with:
check(){ echo $*: $(set -o|grep pipefail); }
f() { check at enter f; local -; set +o pipefail; check at exit f; }
check before call f
f
check after call f

Thanks.

Alt+C keybinding silently fails without changing directory or indicating an error.

If I'm not mistaken, it doesn't work only when an entry is selected while the list is still being populated by the underlying command because eval "$cmd" is interrupted.
https://github.com/junegunn/fzf/blob/dd59b8c7b91082a4ae3a669979980abfaa3b470e/shell/key-bindings.bash#L48
It works well if $cmd is complete.

Requires Bash 4.4 at least

Unfortunately, we can't enforce this because macOS ships with bash 3 due to its GPL license and we don't want to stop supporting the default bash version of macOS.
Having said that, an easy fix would be to make $cmd not fail like so:
diff --git a/shell/key-bindings.bash b/shell/key-bindings.bash
index d83f9d3..58bb1db 100644
--- a/shell/key-bindings.bash
+++ b/shell/key-bindings.bash
@@ -45,7 +45,7 @@ __fzf_cd__() {
   cmd="${FZF_ALT_C_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \
     -o -type d -print 2> /dev/null | cut -b3-"}"
   opts="--height ${FZF_TMUX_HEIGHT:-40%} --bind=ctrl-z:ignore --reverse ${FZF_DEFAULT_OPTS-} ${FZF_ALT_C_OPTS-} +m"
-  dir=$(eval "$cmd" | FZF_DEFAULT_OPTS="$opts" $(__fzfcmd)) && printf 'builtin cd -- %q' "$dir"
+  dir=$(eval "$cmd || :" | FZF_DEFAULT_OPTS="$opts" $(__fzfcmd)) && printf 'builtin cd -- %q' "$dir"
 }

 __fzf_history__() {

Hi, I've decided to disable pipefail only inside the command substitutions where it can be a problem. Thanks.


All function names in output of v0.2.0-alpha.1 are 'undefined'

This is a bug in file extract.js function getOwnFunctions.
The astNode input seems to contain only a single value, hence in:
    const {
      name,
      kind
    } = astNode;

The value of kind is always undefined.
Subsequently, in:
    const isRegularFunction = kind === 'function';
    const actualName = isRegularFunction ? name : kind;

The value of actualName  is always undefined.
Following my previous issue, one can "hot-fix" this by adding the following lines in file fix-modules.js:
fix("./node_modules/solidity-docgen/dist/gather/solidity/extract.js", [
    {prev: "? name : kind", next: "? name : name"}]
);

The names of the constructor and the fallback function still need to be dealt with (instead of appearing as undefined, they now appear empty).
Thanks

Hm, I have a suspicion that this may be due to different output of solc 0.4. I'll look into this and report back.

@frangio:
Thanks.
So it is indeed worth mentioning that prior to this fix, I changed _solc.default.compile to _solc.default.compileStandard in order to support Solc v0.4.x.
This change is described in a previous issue that I have posted (which happens to be the same one that I have linked above, though I linked it there for a different reason).
I hope that compileStandard works for all compiler versions (or by the least for 0.4.x and above, which I believe to be the most common versions in use at present), which will allow you to keep this proposed change and support v0.4.x.
Thanks

Fixed in https://github.com/OpenZeppelin/solidity-docgen/commit/3479ef4c6f8a024cc2450e39d27091f2a4a5ea13.


Images cannot update

Hi, I have faced a problem that, when I choose the new images from the photo library, the view is not updating to new images I've just chosen. Are there any ways to solve it?

Sorry, I've found the problem. Is my own problem. Your code is helping me a lot.. Thank you very much!!


fix: Teradata connection fixes

SUMMARY
fixes to Teradata driver and limit methods in teradata.py

TEST PLAN
This solution works and is tested with Teradata Vantage, but we are happy to make other modifications if the team supports.
ADDITIONAL INFORMATION
The request all realtes to the follwoing bug
New or Changed Public Interfaces
The present proposal requires no new or changed public interfaces.
New dependencies
Only for Teradata connections, the present proposal requires the installation of
the teradatasqlalchemy connector, and
the teradatasql driver
packages to connect to a Teradata Vantage system Advanced SQL Engine Database.
These packages are actively maintained and their licenses are Teradata proprietary. The teradatasql license can be found at:
https://github.com/Teradata/python-driver/blob/master/LICENSE
whereas the teradatasqlalchemy code is not publicly posted at this point.
Migration Plan and Compatibility
No migration is necessary. The proposed code changes are an extension and non-destructive to the existing code, thus not affecting existing compatibility.

@mccushjack I'm going through old unreviewed PRs, and sadly this valuable PR had gone unreviewed. Can you rebase this PR to resolve the conflict? I'll finish reviewing this once that gets done.

@mccushjack oh no, this is conflicted again 🙁 Would you mind rebasing one more time and pinging me when you're done so I can get this merged?

@mccushjack  thank you so much!
@junlincc @villebro anything you could do to nudge this along would be so appreciated!

@junlincc @villebro and @cwiebe18  -- The rebase is complete. The only major change outside of teradata.py fixes was an update to the main setup.py for loading Teradata's native python driver which removes the dependency on odbc driver. This should make interoperability easier and more seamless. LMK if you have any questions or comments.

@mccushjack I think something went wrong with the rebase. It's showing 1,099 file changes.

thanks, @michael-s-molina not sure what that was. made a few changes and checked https://github.com/apache/superset/pull/15930/files and it shows 5 files changed.

This looks great!
Note that there are a few lint errors: https://github.com/apache/superset/runs/4072850679?check_suite_focus=true
You can fix some of these by running:
pip install pre-commit
pre-commit install
pre-commit run -a

@mccushjack did you notice the failed unit test? I believe this is good to go once it's fixed:

@mccushjack seems like linting is failing for this PR. Sorry it has taken so long to get this change merged/reviewed. If you wouldn't mind fixing the lint errors and getting CI passing again, I'll make sure this gets merged. If you're part of the superset slack, feel free to ping me to get things expedited.

@nytai  I got some help to fix our unit test. I think everything is working now let @mccushjack  and @dmcnulla know if there are any updates needed.

I do not know what this Python Misc/pre-commit check does, and I cannot tell from the error what is wrong. Can I buy a clue from somebody?

It runs a few linting type checks. @dmcnulla to get this check passing, the following steps should work.

make an edits to superset/tests/unit_tests/db_engine_specs/test_teradata.py and superset/superset/db_engine_specs/teradata.py (can be simple blank space change)
stage those files git add .
run pre-commit (should be installed via requirements/integration.txt)

Closing, as this work was absorbed by https://github.com/apache/superset/pull/18240


chore: add webpack bundle analyzer

In the scope of this PR I added script that generates webpack stats.json file and then it's parsed with the help of webpack bundle analyzer plugin

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Incompatibilities with Holotoolkit Sharing Service and IL2CPP?

Overview
I deployed the SharingTest scene (part of the Holotoolkit examples), and I can't seem to get the Hololens to connect to the SharingService running on a computer on the same network. When I deploy using the .NET scripting backend it works fine, but IL2CPP doesn't. There are no error messages during the build, or debugging via Visual Studio. It does work in the editor, but not when deployed to the Hololens.
I have tried using older versions of the MRTK, old versions of Unity, newer versions of Unity, and all yielded the same results.
Expected Behavior
Hololens connects to the SharingService.exe.
Actual Behavior
Hololens doesn't connect to the SharingService.exe.
Steps to reproduce
Setup a blank project.
Import the Holotoolkit and Holotoolkit-Examples.
Apply project settings, capabilities, etc.
Change scripting backend to IL2CPP (in Build Window of MRTK).
Open the scene Holotoolkit-Examples/Sharing/SharingService/Scenes/SharingTest.
Launch the SharingService.exe (MRTK > Sharing > Launch Sharing Service).
Change the Sharing script's IP address to your server's IP Address.
Build & Deploy to Hololens.
Unity Editor Version
Currently: 2017.4.4f1
Have tried with:

2017.4.7f1
2017.4.8f1
2017.3.1f1

Mixed Reality Toolkit Release Version
Currently: 2<IP_ADDRESS>
Have tried with:

2<IP_ADDRESS>

I think it's possible this is related to https://github.com/Microsoft/MixedRealityToolkit-Unity/issues/1784.
Somebody else on my team hit this today, unrelated to the Toolkit. It appears that, by default, the .NET backend assumes CallingConvention.Cdecl when accessing DLLs. IL2CPP instead assumes CallingConvention.StdCall, so we'll need to explicitly declare this in our DLLImports.

I don't have any of my own scripts. Should I be going through the relevant MRTK scripts and updating all of the DLLImports to get it to work correctly?

I am unable to get sharing to work on IL2CPP as well.
At first I received logs stating that we need to add MonoPInvokeCallback to our callbacks. That is pretty straight forward to work around.
https://answers.unity.com/questions/1229036/callbacks-from-c-to-c-are-not-working-in-540f3.html
I just modified the files directly since I am not very familiar with swig but it appears that should be fairly easy to edit as well:
https://stackoverflow.com/questions/37448882/unmanaged-c-sharp-calls-to-a-static-library
Now I no longer get that exception but I do get an exception saying the callbacks need to be static. A majority of the callbacks I am seeing in these listener files are not static and not easily changed to static manually.  Perhaps it is another simple edit to Swig but I'm not well versed there.
A this point its not worth the effort for me so I'm going to focus on UNET and Photon but I wanted to leave my findings in case someone else wanted to pick up the cause. :)

Closing issues older than 180 days. If this is still an issue, please reactivate with recent information.

Still not working here


add mde calculator

Resolves https://github.com/david26694/cluster-experiments/issues/176

Codecov Report
Attention: Patch coverage is 94.73684% with 1 line in your changes missing coverage. Please review.

Project coverage is 96.91%.

Files
Patch %
Lines

cluster_experiments/power_analysis.py
94.73%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #177      +/-   ##
==========================================
- Coverage   96.96%   96.91%   -0.05%
==========================================
  Files           9        9
  Lines        1020     1037      +17
==========================================
+ Hits          989     1005      +16
- Misses         31       32       +1

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


Next.js 12.2  Nested Middleware is not allowed

I'm trying to use this package with next 12.2 but I keep getting:
error - Nested Middleware is not allowed, found:
pages/_middleware
Please move your code to a single file at /src/middleware instead.
Read More - https://nextjs.org/docs/messages/nested-middleware
Might be related to the latest release: https://nextjs.org/blog/next-12-2#middleware-stable

You have to use middleware.js at the root of your Next.js project now instead of pages/_middleware.js with 12.2
I will update the e2e test app to Next 12.2 soon

Hey thanks, Already closed this issue because found out I've added underscore in front of the middleware in rooter folder :D

@malithmcr
The package also didn't work for Next 12.2 (req.page deprecated) :D. But I fixed it in #37 and released 0.8.0 to NPM
It is important to match requests now, otherwise, middleware runs on absolutely everything, fonts, assets etc. There is a chainMatch(isPageRequest) now for that, its also in the updated README.


Add github actions to run backend tests (testing purposes)

Note that the frontend tests are Jest-based and very time-consuming. Thus, we run them only locally.


Presentation sections

Hello,
I think it would be beneficial to have a Presentation section similar to the publication.
IMO in academia, researchers like to upload the slides to some their presentation and not all presentations are linked to a publication.
I will be working on this for myself (mostly a copy of publication), and I'll happily send a PR if you're interested.
Thank you for the project

Hi @AntoinePrv,
Sure, that's great. I'd be glad to see that. I try my bests to review and merge all PRs ASAP. There are very good suggestions and works in my to-do list for Avicenna. I hope to find a free slot in my calendar to work on those.
Thank you :)

I'm currently thinking that I would actually like to have more sections (tutorial, poster, grants...), but this would start being too redundant and specific to my needs to merge back into Avicenna.
I think the clean way to go would be to have meta section, where one would specify a title parameter. The subsections would then be processed as it is done for publications...
On the plus side, it gives a lot of flexibility and reduce code duplication (could also be used to implement publication and projects). However, it may add too much complexity.
Here is a sample config (option 1)
[[params.sections]]
  title="My Presentations"

  [[params.sections.presentations]]
    year="2019"

    [[params.sections.presentations.presentation]]
      name="My title"
      author="Some people"

It is a bit verbose, so an idea could be to use the keys for title (option 2):
[[params.sections."My Presentations".2019]]
  name="My title"
  author="Some people"

What are your thoughts on this ?


Update SIMD disable guidance 8.0

Fixes  #30923

Internal previews

📄 File
🔗 Preview link

aspnetcore/blazor/tooling.md
Tooling for ASP.NET Core Blazor

One nit, unrelated. Can we change the URL for wasm features documentation? Instead of directly pointing to .md file on github, use aka link https://aka.ms/dotnet-wasm-features#simd---single-instruction-multiple-data

There are two links here, and I may have updated the wrong one.

Sorry about that, @maraf ... I just walked in the door after being OOF for a couple of hours, so my head wasn't in the game here. It should be in good shape now.

Awesome, thank you!


react-select working example

Hi :)
Did someone succeed at using react-select (beta12) with multi option enabled with redux-form ?
I only found examples about old versions. I have a simple case, where i need a value as an array of choices.

I use react-select @1.0.0-beta12 with redux-form @5.1.1
I don't know what your value as an array of choices means, though assuming it's just an array of values then you need to map the value-array to an array of objects {value, label}..
the following works for me..
<Select
  multi
  {...reduxFormField} /* has initial value; i.e. an array ['one', 'three'] */
  options={['one', 'two', 'three'].map(function (value) {
    return {'value':value, 'label': value};
  })}
/>

If I missed the nail then let me know, With more information I may be able to help ;-)

Hi, thanks for coming by.
This is a usage question, and we encourage you to ask it on StackOverflow instead. We try to use the issue tracker for bug reports and feature requests, as well as some discussions, but this appears to be a very localized question.
I’m closing for these reasons.

@ooflorent not too many people on stack seem to answer redux-form questions. I've got the same issue, have tried to wrap component and still no luck. Would anyone in the redux-form community be willing to create a good sample case using react-select or react-widgets with the multi-selector? I prefer the react-widgets because they have been in production longer. I've already spent days trying to get this to work using all the docs available but it just isn't working...

Not too many people on stack seem to answer redux-form questions.

I try to answer most of unanswered questions on Stack Overflow when they are understandable and detailed. If your question does not get the desired attention on SO, you could open an issue here (that would be closed) and link the question to try to reach us. However I don't recommend it. GitHub issues is not the place for support.

I've got the same issue, have tried to wrap component and still no luck.

If you want to use a custom component with Redux Form, the steps to achieve a good integration are always the same:

The component MUST manage its value using the value property.
The component MUST call onChange to update its value.
The component MAY call onFocus and onBlur to update its touched flag.

Here is how to integrate<EMAIL_ADDRESS>with<EMAIL_ADDRESS>// Nothing more!
<Select name="myselect" options={MYFIELDS_OPTIONS} {...fields.myselect} />

I don't think that works inside redux-form. I have issue as well. When select lost focus, it also lost selected value as well. I couldn't find any answer about this.

I have the same issue.

You need to override the onBlur property: https://github.com/erikras/redux-form/issues/1185

Here's an example #82

Here is a component I created to integrate React Select with Redux Form.
This is how you can use it, and it works with both single and multi select.
const fruits = [
  { value: 'apples', label: 'Apples' },
  { value: 'bananas', label: 'Bananas' },
  { value: 'grapes', label: 'Grapes' }
];
<Field
  multi={true}
  name="fruits"
  options={fruits}
  component={RFReactSelect} />

@leocristofani Wow, good stuff. This is killer and just saved me a lot of time.


Message options trigger

🎯 Goal
Describe why we are making this change
🛠 Implementation details
Provide a description of the implementation
🎨 UI Changes
Add relevant screenshots

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Customise/Disable certain days in the month view

Hi. I would like to prevent the user from selecting certain days in the calendar view. Is there a way for JBDatePicker to allow for the customisation of certain days of the month?

This api can be used in example, but not in real project. Weird

@simplealina Did you try shouldAllowSelectionOfDay(_ date: Date?) -> Bool ?


Help!!

Hi, i have problems to make the recycleview to implementdrag and drop.the recycle loads but i dont have dragdrop. I follow the drag and drop tutorial and the only change i made is de data source. I simple use a list of objects but i dont know if i need to implement a dataprovider like the demo to make it work.
mi adapter:
MyDraggableItemAdapter.txt
main:
main.txt
i will apreciate any help.
cheers!
nico.

Hello Nico,
I'm having the same problem here. I will let you know if I found a fix. If you find anything, please let me know.

thx you, if i find something ill let you know

When I download your main.txt then it has the same content as MyDraggableItemAdapter.txt...
Did you test your code in onCheckCanStartDrag ? Does it return true when it should be?

Hi cookie, I followed the drag and drop example, the difference is that i dont use a data provider.
No, i dont test my code in onCheck, i will try it and comment again

that method is on the adapter and it has this code
@Override
public boolean onCheckCanStartDrag(MyViewHolder holder, int position, int x, int y) {
// x, y --- relative from the itemView's top-left
final View containerView = holder.mContainer;
final View dragHandleView = holder.mDragHandle;
final int offsetX = containerView.getLeft() + (int) (ViewCompat.getTranslationX(containerView) + 0.5f);
final int offsetY = containerView.getTop() + (int) (ViewCompat.getTranslationY(containerView) + 0.5f);
return ViewUtils.hitTest(dragHandleView, x - offsetX, y - offsetY);
}

main.txt
this is the code on my main activity

well i find a solution. my problem was on the viewHolder. my viewHolder class  was extending RecyclerView.ViewHolder so i change it to AbstractDraggableItemViewHolder and the recycle start to drag.
Now the problem is that the animation is not correct. when i swipe between to elements, it swipes ok but the animation run backwards like the item cannot move it to that pos.
Any ideas?

Just to let you know that my problem was caused by a missing setHasStableIds(true).

thx but i already have that. Now the problem i have is the animation.
When i drag and drop one element aparently it change position but the animation of the element don't stay in the new position, the animation run backwards to the original position the element, but the text changed.
I dont have idea what i'm missing

@nico281 Sorry for the late reply. I took a look at your code and found an implementation issue which causes wrong animation problem.
The getItemId() method is not implemented properly because it currently returns not stable value. Stable means it have to keep the same value even if the item's position has been changed.
  @Override
    public long getItemId(int position) {
        // return position; <- this is not stable!

       // should returns stable value. IDs have to be kept the same value
       // even after its position has been changed.
        return songs.get(position).getId();
    }

related issues:

Swipe state not working properly #170
swiping on any item only moves index 1 #159
Unnecessary animation on drag #83
Position Changing Between List Item #22
Issues with stable ids #7
Repeated animation problem #5

Thx, work almost fine. now the problem is if i drag and drop an adjacent itemit works correct but if i jump the adjacent not.
here is the demonstration.
video-1454258265.mp4.zip

ok i thik my problem is my onMoveItem

@nico281 Could you upload the latest code of your adapter?


overview.md

Added missing word

@kjpoulton : Thanks for your contribution! The author, @deguhath, has been notified to review your proposed change.

#sign-off
I am OK with this change.


add an equal distribution feature

I would like to add an equal distribution feature, similar to the one in PowerPoint. For example, placing 5 blocks at once, and then clicking on equal distribution will make the spacing between them uniform.

Could you elaborate a bit with an example?
For a simple horizontal/vertical distribution we have the following functionality in place:
https://github.com/user-attachments/assets/a718db39-910b-4a72-b2ec-1fb6a4bd8ba4


Support for WS2019 Distributed Network Name CNO Feature

Hi,
I am planning on using DSC for MSSQL VM config in Azure, and am wondering if the new "Distributed Network Name" feature available in Windows Server 2019 is accessible via xFailoverCluster.
Ref: https://techcommunity.microsoft.com/t5/Failover-Clustering/Windows-Server-2016-2019-Cluster-Resource-Resource-Types/ba-p/372163
https://blogs.windows.com/windowsexperience/2018/08/14/announcing-windows-server-2019-insider-preview-build-17733/#5H4XED7gKCoCgttc.97

My investigation found out this is the default design in this recent Windows Server 2019 Build 17733 and up.
So what you are experiencing is not related to DHCP setting on the network card but a new feature called "Distributed Network Name"
Distributed Network Name (clusres.dll): A Distributed Network Name is a name in the Cluster that does not use a clustered IP Address.
It is a name that is published in DNS using the IP Addresses of all the nodes in the Cluster. Client connectivity to this type name is reliant on DNS round robin.
In Azure, this type name can be used in lieu of having the need for an Internal Load Balancer (ILB) address.

The goal being something equivalent to something like (in PS), particularly the parameter "-ManagementPointNetworkType Distributed":
 New-Cluster –Name ${clusterName} -Force –Node ${server1}, ${server2} -AdministrativeAccessPoint ActiveDirectoryAndDns -ManagementPointNetworkType Distributed -NoStorage

That is not supported yet, but I be happy to review a PR that adds this. 🙂

Thanks, @johlju.  I may just do that; stay tuned! :)

Just a quick update, @johlju; I believe Distributed Network Name is being set properly when omitting the static IP address from xCluster config, as below:
            ```xCluster CreateCluster
            {
                Name                          = $Node.ClusterName
                # StaticIPAddress               = $Node.ClusterIPAddress
                # This user must have the permission to create the CNO (Cluster Name Object) in Active Directory, unless it is prestaged.
                DomainAdministratorCredential = $SqlAdministratorCredential
                DependsOn                     = '[WindowsFeature]AddRemoteServerAdministrationToolsClusteringCmdInterfaceFeature'
            }```

I'm continuing to test, but I believe this "just works" with WS 2019 VM's and Azure Automation w/DSC.


Different output values than in python

Hi! Thanks for all your work!
I gave this crate a try, and while it's easy to use, sadly I'm getting different (and thus wrong) outputs from my models.
Here is a gist for rust with ort: https://gist.github.com/LoipesMas/2d342b8087dbae4af31d8af2752e84de
Here is a gist for python with onnxruntime: https://gist.github.com/LoipesMas/d7258a3d009e9b06c3684d77e341251b
(Those are using the squeezenet models from here, but I originally run into this issue with a different, yolov7 based model)

Example outputs
rust+ort:
[src/main.rs:29] &input.shape() = [
    1,
    3,
    224,
    224,
]
[src/main.rs:30] input.slice(s![0, .., 100, 100]) = [0.92156863, 0.9529412, 0.99607843], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:31] input.slice(s![0, .., 180, 50]) = [0.9882353, 0.96862745, 0.95686275], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:48] max_score = Some(
    (
        794,
        0.06649929,
    ),
)
[src/main.rs:49] scores.slice(s![0, 322, .., ..]) = [[1.08950435e-5]], shape=[1, 1], strides=[0, 0], layout=CFcf (0xf), const ndim=2

python:
frame.shape=(1, 3, 224, 224)
frame[0, :, 100, 100]=array([0.92156863, 0.9529412 , 0.99607843], dtype=float32)
frame[0, :, 180, 50]=array([0.9882353 , 0.96862745, 0.95686275], dtype=float32)
max_score=0.11967179
np.where(scores >= max_score)=(array([0]), array([669]), array([0]), array([0]))
scores[0][322]=array([[4.9559356e-05]], dtype=float32)

Input shapes and values are the same (I'm almost positive), but outputs are not even close (e.g. different indexes of max-value, different values (sometimes an order of magnitude different))
I'm not sure if that's an issue on my side (how I load data, how I use this crate or something else) or if it's on crate's side.
Since ort is based on onnxruntime-rs, this issue might be relevant (although probably not very helpful). Maybe those small errors add up somehow? No idea.
Thanks in advance!

In Python you are using the softmax outputs, but in Rust you are using the raw logits. You can use the softmax() function implemented in ort::tensor::NdArrayTensor to get the expected result.

Thanks for fast reply.
Unfortunately I don't think that's it. It seems that there already is a softmax in squeezenet, so I can't see why it wouldn't be included in the output. And the indexes of max-values are different (794 in rust, 669 in python), which is something softmax would not change, AFAIK.
I tried doing softmax on the output, but, as I expected, the index of max-value didn't change.

Oops, you're right, there already is a softmax, sorry.
What's your onnxruntime version in Python? Is the output different with a non-quantized model?
Also, it seems your inputs may not be correct:

The images have to be loaded in to a range of [0, 1] and then normalized using mean = [0.485, 0.456, 0.406] and std = [0.229, 0.224, 0.225].

What's your onnxruntime version in Python?

onnxruntime==1.13.1

Is the output different with a non-quantized model?

For non-quantized model the outputs are wrong as well (python version still has max-value at index 669, rust now has max-value at 111). And the yolov7-based model isn't quantized at all.

Also, it seems your inputs may not be correct:

Yes, because my goal wasn't to use squeezenet, I just chose it for demonstration. So the outputs might be "wrong", but they should be the same "wrong" in python and rust, right?

Yes, the output should be the same with the same input data... This is really strange because ort doesn't mess with the input/output data. There shouldn't be any precision loss anywhere. I've deployed Stable Diffusion, GPT, and ALBERT with ort and haven't had any accuracy issues.
Whatever precision loss is occurring here may be exacerbated by the faulty preprocessing, because it shouldn't be this far off...
I think the Python API is hiding something. Can you try building the session with .with_optimization_level(GraphOptimizationLevel::Level1)? If that doesn't help, try with ::Disable or ::Level2.

I tried all optimization levels, none of them changed anything.
I can try feeding squeezenet properly processed data, but the other model works fine with this data in python.

For some reason I couldn't get squeezenet to give me meaningful results (even with correctly preprocessed data), so I went back to testing with the other model (the yolov7 based one). Here I can get correct results in python, while rust outputs are very wrong. Tried all optimization levels, again, no luck.

Could you share your YOLOv7 Python & Rust code?

Rust: https://gist.github.com/LoipesMas/c0271aeef1d45951c148c40312d91198
Python: https://gist.github.com/LoipesMas/c20233128d04e9a6daa8934cfb354f65

outputs
rust:
[src/main.rs:28] &input.shape() = [
    1,
    3,
    705,
    705,
]
[src/main.rs:29] input.slice(s![0, .., 100, 100]) = [0.0033525568, 0.0036139947, 0.003921569], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:30] input.slice(s![0, .., 180, 50]) = [0.0035217225, 0.0037062669, 0.003921569], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:43] scores.shape() = [
    1,
    77175,
]
[src/main.rs:49] max_score = Some(
    (
        75041,
        0.00014480948,
    ),
)
[src/main.rs:50] scores.slice(s![.., 322]) = [2.9802322e-8], shape=[1], strides=[0], layout=CFcf (0xf), const ndim=1

python:
frame.shape=(1, 3, 705, 705)
frame[0, :, 100, 100]=array([0.85490197, 0.92156863, 1.        ], dtype=float32)
frame[0, :, 180, 50]=array([0.8980392 , 0.94509804, 1.        ], dtype=float32)
(1, 77175)
max_score=0.9575529
np.where(scores >= max_score)=(array([0]), array([76457]))
scores[scores >= 0.9]=array([0.93757355, 0.9528866 , 0.9477465 , 0.95434356, 0.9529081 , 0.9575529 ], dtype=float32)
scores[0][322]=5.9604645e-08

On an image where it was supposed to detect something (used for the outputs above), python code correctly returns high-confidence values, while rust code does not.
On an image where there is nothing to detect, python code correctly returns only low-confidence values, while rust returns roughly the same values as with the other image.

I think there is an issue with preprocessing.
[src/main.rs:29] input.slice(s![0, .., 100, 100]) = [0.0033525568, 0.0036139947, 0.003921569], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1

Is the Rust code is dividing by 255 twice? 0.0033525568 * 255 = 0.854901984.
I notice you transmute (to GRB?) in Python but not in Rust:
frame = np.transpose(frame, (2, 0, 1))

Try using np.save in Python and ndarray-npy in Rust to save & load the model input to rule out preprocessing differences.

I copied wrong output, my bad (I was trying random things, such as dividing by 255, hoping to get any clues).
Here's correct output:
[src/main.rs:27] &input.shape() = [
    1,
    3,
    705,
    705,
]
[src/main.rs:28] input.slice(s![0, .., 100, 100]) = [0.85490197, 0.92156863, 1.0], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:29] input.slice(s![0, .., 180, 50]) = [0.8980392, 0.94509804, 1.0], shape=[3], strides=[1], layout=CFcf (0xf), const ndim=1
[src/main.rs:42] scores.shape() = [
    1,
    77175,
]
[src/main.rs:48] max_score = Some(
    (
        76654,
        0.0004245937,
    ),
)
[src/main.rs:49] scores.slice(s![.., 322]) = [1.7881393e-7], shape=[1], strides=[0], layout=CFcf (0xf), const ndim=1

That transpose changes the shape from Height x Width x Channels to Channels x Height x Width. In rust the input is already in that format.
I'll try saving and comparing.

write_npy("rust.npy", &input).unwrap();

np.save("python.npy", frame)

Both saved just before running the inference.
In [12]: r = np.load("rust.npy")

In [13]: p = np.load("python.npy")

In [14]: np.array_equal(r,p)
Out[14]: True

Sadly they are the same

Could you try using ort on the main branch?
ort = { git = "https://github.com/pykeio/ort", branch = "main" }

That transpose changes the shape from Height x Width x Channels to Channels x Height x Width. In rust the input is already in that format.

my brain is not working today 🙃

It worked! Thank you so much.
I was already using the main branch, but it didn't check for updates.
I expected this to be image-loading related (since models you mentioned only had text input), but I wouldn't expect it to be this (but I'm new to ndarray and stuff, so I still have a lot to learn).
Thanks again, glad you managed to solve it!

Awesome!
Funnily enough, I think this also solves another problem I had with Stable Diffusion's safety checker... I thought I just did the preprocessing wrong, turns out it was an ort issue! 😅

Hmm, there still seems to be an issue with precision. For one file it's exactly the same, but for others there are small differences (e.g. 0.008985966 in rust, 0.008349687 in python). Max-value is the same, but the error is not negligible. This one looks more like the onnxruntime-rs issue I linked.

Are graph optimizations still disabled in Rust? Python may be defaulting to Level3 (aka "all" in official docs) which may cause this problem.

I tried all optimization levels, but it didn't help. Disable might actually be a bit closer to python, because some small values result in 0.0 in python, 2.983123e-8 in rust with Level3, but 0.0 in rust with Disable. But the bigger values don't change at all.

I have the same problem.
My model is yolov5n.onnx, and the inference result is correct in C++ onnxruntime. The rust ort is wrong.
In C++ output is:
5.53997, 7.43146, 10.5765, 12.0833, 6.16908e-06, 0.784669, 0.198309, 10.3879, 8.485, 21.0019, 15.7535,
8.82149e-06, 0.781702, 0.210636, 18.8944, 7.6956, 26.7782, 13.5962, 2.95043e-06, 0.849125, 0.153245

In Rust output is:
5.762603, 7.143219, 11.919465, 12.539226, 6.2584877e-6, 0.83790576, 0.15439245, 11.427677, 7.2222357,
20.642508, 13.55667, 2.014637e-5, 0.85138524, 0.14452386, 19.017769, 5.5255632, 18.779839, 9.80006,
6.4373016e-6, 0.88766444, 0.110286444

Looks like a big error，I checked the input values as follows:
C++:
0.454902, 0.454902, 0.462745, 0.462745, 0.458824, 0.447059, 0.454902, 0.462745, 0.454902, 0.45098,
0.45098, 0.447059, 0.45098, 0.458824, 0.454902, 0.454902, 0.454902, 0.454902, 0.45098, 0.439216,
0.435294, 0.435294, 0.435294, 0.423529, 0.447059, 0.439216, 0.454902, 0.470588, 0.454902, 0.462745,
 0.470588, 0.466667, 0.462745, 0.45098, 0.454902, 0.45098, 0.439216, 0.447059, 0.458824, 0.454902,
0.462745, 0.454902, 0.454902, 0.45098, 0.466667, 0.458824, 0.466667, 0.47451, 0.470588, 0.462745

Rust:
0.45490196, 0.45490196, 0.4627451, 0.4627451, 0.45882353, 0.44705883, 0.45490196, 0.4627451, 0.45490196,
0.4509804, 0.4509804, 0.44705883, 0.4509804, 0.45882353, 0.45490196, 0.45490196, 0.45490196, 0.45490196,
0.4509804, 0.4392157, 0.43529412, 0.43529412, 0.43529412, 0.42352942, 0.44705883, 0.4392157, 0.45490196,
0.47058824, 0.45490196, 0.4627451, 0.47058824, 0.46666667, 0.4627451, 0.4509804, 0.45490196, 0.4509804,
0.4392157, 0.44705883, 0.45882353, 0.45490196, 0.4627451, 0.45490196, 0.45490196, 0.4509804, 0.46666667,
0.45882353, 0.46666667, 0.4745098, 0.47058824, 0.4627451

The input value looks OK, I cloned the latest version.

I cannot replicate this with SqueezeNet 1.1. I think this problem is exclusive to YOLO models - the linked issue in onnxruntime-rs was with YOLOv3, and this issue involves YOLOv7 and YOLOv5. My outputs for SqueezeNet, Stable Diffusion, BERT, ALBERT, and GPT are all perfectly fine, but it seems only YOLO has problems.
I have no idea why this is happening, my only thought is that it still involves pre/post-processing somehow. ort doesn't modify, copy, or even look at model outputs from ONNX Runtime, it just creates an ndarray using the tensor data provided to it. There's no copying involved, and AFAIK whatever values are in this array are exactly what was given by ONNX Runtime.
@LoipesMas @soloist-v what operating system/execution providers (if any) are you using?

OS: Windows 11 22H2   rustc 1.67.0-nightly (95a3a7277 2022-10-31)
https://github.com/soloist-v/ort/blob/ac6092a34f392fbee2ae73aa5a965e11fdb6e9d4/examples/yolov5.rs

Is there a problem with float16 then? I noticed all the yolov5 ONNX models take float16 inputs/outputs. The only float16 model I am using is Stable Diffusion, but the model has casts from/to float32 at the input/output which could be why I'm not seeing errors.

I suspect that the input data may have undergone some conversion or the reading order may have caused the problem, but the C API is not the problem and it's also unlikely that the output is an issue.

I initially used a fp32 model, which had accuracy issues, even after switching to f16 the problems persisted. But when I directly called the C API, all the problems disappeared, so I suspect the input underwent an incorrect conversion or the reading order was wrong.

In #18 the only differences I see are using different MemTypes and using pre-allocated output memory. This is almost certainly not what the Python bindings do, so I don't think that's what fixed it. I pushed https://github.com/pykeio/ort/commit/3b74b6293aef5b339668200386776555bea31061 using the "proper" MemTypes now but I don't think it'll make a difference.
ort doesn't read or write any tensor data directly, besides a single clone on line 44 of src/tensor/ort_tensor.rs. Everything else is just reading from pointers.

I had a similar problem in Rust, where the value returned by rust ort differed from the value returned by Python for the same custom ONNX model. I created a demo in pure C++, and the value was the same as in Rust. Then I replaced the image with a set of fixed data, all pixels set to 0.5. Rust, C++, and Python all started giving the same result.
I checked the pixels and noticed that in Rust, the x and y coordinates were swapped. To load the image in Rust, I'm using the image crate:
let input = ndarray::Array::from_shape_fn((1, 256, 256, 3), |(_, x, y, channel)| {
    let pixel = img.get_pixel(y as u32, x as u32); // y, x!!!!!!!!!
    let channels = pixel.channels();
    (channels[channel] as f32) / 255.0 // range [0, 255] -> range [0.0, 1.0]
});
let inputs = [InputTensor::FloatTensor(input.into_dyn())];

After swapping the arguments in img.get_pixel(x, y) to y, x I obtained the correct value.
It is possible that the issue lies elsewhere, but it is worth double-checking the input data to eliminate any potential sources of error.


Datapath support for Cilium mTLS

Note: this is very much work in progress:

Add an optional "auth" object to CNP ingress and egress. When specified the bpf policy map will have a new auth_type field set.
Add a new datapath drop reason DROP_POLICY_AUTH_REQUIRED and pick them up in a new auth/monitor package.

Auth type is passed in ExtError so that the auth request can be passed to the right control plane

Add an example policy to trigger the above new functionality.

Next steps:

[x] Add datapath state for the authorization status of a connection.
[x] Define a Go interface for authorization agents that gets called with the datapath info when authorization is required. Needs to support:

[x] Auth required notifications to relevant registered authorization agents

Auth agent registration missing

[x] Bpf map updates when authorization is granted or revoked
[ ] Bpf map GC when endpoints and/or security identities are deleted

[x] Create a mock authorization agent for testing and as an example for further development of authorization agents
[ ] visibility/introspection of the authorization state

Initial datapath support for Cilium mTLS has been added.

@jrajahalme and I have been talking about this one - I agree with the "add a way for the datapath to hold up/drop traffic until authentication is complete" model (although I think the description above may need an update).
Once we have the Go interface for the datapath to request that a flow be authenticated, then we'll be able to lean on the SPIFFE support worked on in #17335, with its associated upstream changes (mainly spiffe/spire-api-sdk#8) to add something to the agent for it both to maintain SPIFFE SVIDs on behalf of the workloads, and handshake between workloads as required (there are some interesting design challenges in that bit).
The architecture @jrajahalme is proposing will allow us to keep that work pretty separate to this, more datapath-heavy work though.

/test

Rebased, addressing Joe's comments next...

/test

/test

Addressed @joestringer's comments, rebased.

Pushed bpf compile fixes.

/test

53 successful and 1 neutral checks 🎉

Fixed some rebase breakage, mainly in the last commit with local testing. Next will come up with some sort of CI tests.

53 successful and 1 neutral checks 🎉

So no verifier complexity issues due to these changes :crossed_fingers:

Fixed log format.

/test

/test

Fixed build commits breakage.

Rebased to get rid of Error: unknown command "build-config" for "cilium"

/test

git fetch failed on test-1.24-5.4, retrying

/test-1.24-5.4

This is looking pretty close, let's get this in for the next RC and then we can follow up on the remaining items.


LemonLoader Crashes

All of the following criteria must be met

[ ] Full Latest.log file included. If no file exists then leave this unchecked and state so.

All of the following are optional to answer

[X] Tried reinstalling the game.
[x] Tried reinstalling LemonLoader.
[ ] Tried restarting device.

Describe the issue.
When I installed LemonLoader and patch Bonelab it chrashes while restoring the game and it forces me to reinstall the game
Did you attach your log file?

[ ] Yes, I attached my log file to the text box above.
[X] No, I could not find a log file at /storage/emulated/0/Android/data/<package name>/files/melonloader/etc/Latest.log

I just reinstalled it and it got fixed


remove JsonPathInst, instead move find functionality to JsonPath.

See #59
This PR has no further performance improvements like the other ones.
However it tries to simplify the usage of the crate for others.
That is done by getting rid of the JsonPathInst which was basically just a JsonPath and moving the independend find functions (3 independent and one in the JsonPathInst) all directly to the JsonPath.
Additionally the internal macros which where used for testing are no longer exported (i keep the jp_v and path one because I though those might make sense externally, please correct me here if others are used too).
This makes the docs page thinner, and focuses users more towards the common usecase:

Most diff is just moving the code, I found it hard to find the right spot for the JsonPath as its a result of the parser but also defines how stuff is searched and heavily relies on the path. I just now chosed a own file, though not 100% happy with it either.
Oh I could get rid of the vec_init_then_push clippy warnings in the macros, shouldn't have a big impact though.

Hi @besok  I pushed another commit and adjusted the macro exports :)

Great! Thank you for the awesome PR


How to send backspaces?

I tried using enter_text("\b") but apparently that isn't a valid escape sequence. Any ideas? Oh, and thanks for making this by the way, it's going to be super useful for a project I have in mind.

If you want to simulate a press of the backspace key, you can use https://docs.rs/libxdo/0.6.0/libxdo/struct.XDo.html#method.send_keysequence with BackSpace as the sequence. If you have Xorg's xev utility installed, you can use it to find out the names of various keys to use in keysequences.
When you press a key, it will print out a string similar to this

KeyPress event, serial 48, synthetic NO, window 0x2400001,
root 0x4ac, subw 0x0, time 20300572, (445,165), root:(447,186),
state 0x0, keycode 22 (keysym 0xff08, BackSpace), same_screen YES,
XLookupString gives 1 bytes: (08) "
XmbLookupString gives 1 bytes: (08) "
XFilterEvent returns: False

The part I marked bold is the name to look out for.

Great answer, and thanks for being so quick. In the meantime I did work out that
enter_text("\x08") sends a back space too.


Add fftshift/ifftshift

Fixes https://github.com/dask/dask/issues/2124
Adds equivalents of NumPy's fftshift and ifftshift functions for Dask Arrays. Also includes tests to ensure that the results with Dask are equivalent to those with NumPy. Further add some identity tests to ensure that applying fftshift and then ifftshift or vice versa return the original array unchanged.

LGTM.


Suppress secret diffs from helmfile diff by default

Currently you need helmfile diff --supresss-secrets to hide your credentials from being exposed via stdout.
Should't this turned on by default, so that you don't unexpectedly expose credentials?

Sounds sensible, perhaps this should be the default for the helm diff plugin too?

Thanks. We should probably do so. Opened an issue in helm-diff!

Would love to see this added as the default to helmfile now (for both diff and apply) without waiting for upstream helm diff to do the same. It is scary that forgetting to include --supresss-secrets on CI results in secrets showing in the logs forever!


Redis stores number as string

Laravel Version
11.4
PHP Version
8.2
Database Driver & Version
phpredis, redis
Description
Storing numeric values in redis returns the values as strings.
I understand that redis cannot store numeric values (redis data-types), so I don't know if this issue can be addressed...
Steps To Reproduce
Cache::put('test', 1);
Cache::get('test'); // Returns "1"

This is just how Redis works:
https://redis.io/docs/latest/develop/data-types/#lists

thanks @gcjbr


Support memo field per transaction

Similar to how it is implemented in alpha version

@dmugtasimov Please review https://github.com/thenewboston-developers/thenewboston-node/pull/119

@andbortnik fix the comment and merge it yourself

@andbortnik please, also add a unittest to make sure that message pack does not mess up utf-8 specific characters (use characters outside ascii - Russian is fine)
My point of concern is here https://github.com/msgpack/msgpack-python
Packer

use_bin_type=True by default. bytes are encoded in bin type in msgpack. If you are still using Python 2, you must use unicode for all string types. You can use use_bin_type=False to encode into old msgpack format.
encoding option is removed. UTF-8 is used always.

Unpacker

raw=False by default. It assumes str types are valid UTF-8 string and decode them to Python str (unicode) object.
encoding option is removed. You can use raw=True to support old format.

@dmugtasimov Please review https://github.com/thenewboston-developers/thenewboston-node/pull/120

merged thanks


Signup doesn't prompt when clicking on the invitation link

As the title suggests, the signup form doesn't prompt when I click the link from the invite-only email. The login form when navigated to /admin does work, however.
Is there something I have to add or am doing wrong?

same problem for me

Found the fix, and it seems it may be in other projects from netlify and thus a product of the admin widget?
The fix is copy-pasting the invite link into a private window(firefox) and adding /admin/before the token in the url. More details in the link below.
https://community.netlify.com/t/common-issue-netlify-cms-git-gateway-email-not-confirmed/10690/9

Same for me, found another fix !
https://community.netlify.com/t/user-invitation-through-mail-opens-index-page-instead-of-login-form-asking-a-password/10684/21

the fix is simple, use 'https://<project-name..netlify.app/admin/#invite_token=' syntax for setting password instead of just 'https://<project-name..netlify.app/#invite_token='

Where do I get the invite token? Can't find it anywhere.


Upgrade to .30 fails - Solution "TeamLink" failed to import: Solution Upgrade action failed after import as holding. InnerException is: You cannot delete this form because it is the only fallback form of type main for the cr599_site entity. Each entity must have at least one fallback form for each form type..

Hi Stuart,
Very cool app - big props for making it!
I tried to upgrade from 1.0.23 to 1.0.30 and received the following message
Solution "TeamLink" failed to import: Solution Upgrade action failed after import as holding. InnerException is: You cannot delete this form because it is the only fallback form of type main for the cr599_site entity. Each entity must have at least one fallback form for each form type.
TeamLink_import.xlsx
Any help gratefully received
Thanks
Dan

Hi Dan, thanks for the kind words.
This is a headscratcher 🤔 as I've not seen this before.  I've just created a new 1.0.23 version and upgraded successfully to 1.0.30 with no problems.   In fact a quick search online only highlights issues from old CRM instances many years ago.
So here are a few questions

Have you tried multiple times in case there was a weird glitch the first time?
Have you checked for (and removed) unmanaged layers? As this is a Dataverse for Teams solution this needs to be done from the Power Automate Maker portal at https://make.powerautomate.com - See this documentation https://docs.microsoft.com/en-us/power-apps/maker/data-platform/solution-layers
Could you try upgrading the solution from the Power Automate maker portal instead of in Teams - https://make.powerautomate.com

Still no luck?   Could you provide a little more info about your setup and any changes made.   Is it in Dataverse for Teams or Full Dataverse etc.

We did try multiple times but no cigar - and I thought (you can tell I'm an amateur in dynamics!) I'd removed the unmanaged layer where we'd had to customise some bits.  However, happy to say we (well the person in the my team who knows what they are doing ) solved it by creating some fallback forms in the default solution and then running the update again and all sorted.
We are running it in Dataverse rather than Dataverse for Teams - started in our dev team but think it's a good shout for the whole org especially as folks work across departments in project teams.
When I showed it to a few people, a number of ideas came flooding out like talking to Exchange online or setting your teams message stuff e.g "This week, I am planning to be in the office Mon, Tues and remote otherwise" and allowing the user to set if their office could be used for meetings if they were working remotely and lastly (I think another issue has mentioned this, augmenting the options might be useful but am aiming for less is more approach.
We also thought about if you could double up the app for a rough busyness e.g. Do not disturb, Busy, Available , Not at work.  That could be another app as I think TeamLink does one thing, does it well and it might make it too busy


COCO annotation file

Thank you so much for sharing the code and the data. I have question about the annotation json file (coco-s2ships.json). It appears that each item within the annotations key may contain more than objects (ship, moored ship, etc.). I think this is different from the coco convention where each item within annotations corresponds to one object.
Below is an example. Each array within segmentation corresponds to one object in the image. According to my understanding of coco, all arrays within segmentation are meant to describe one object where the first array is for the outer polygon and the rest are for holes within the polygon.
    "annotations": [
        {
            "id": 92,
            "image_id": 1,
            "category_id": 1,
            "segmentation": [
                [
                    390.2,
                    58.7,
                    392.2,
                    56.7,
                    394.2,
                    58.7,
                    392.2,
                    60.7
                ],
                [
                    486.5,
                    151.0,
                    488.5,
                    149.0,
                    490.5,
                    151.0,
                    488.5,
                    153.0
                ],
                [
                    518.4,
                    66.4,
                    520.4,
                    64.4,
                    522.4,
                    66.4,
                    520.4,
                    68.4
                ],
                [
                    596.2,
                    350.2,
                    598.2,
                    348.2,
                    600.2,
                    350.2,
                    598.2,
                    352.2
                ],
                [
                    552.7,
                    91.0,
                    554.7,
                    89.0,
                    556.7,
                    91.0,
                    554.7,
                    93.0
                ],
                [
                    581.3,
                    2.7,
                    583.3,
                    0.7,
                    585.3,
                    2.7,
                    583.3,
                    4.7
                ],
                [
                    604.1,
                    21.6,
                    606.1,
                    19.6,
                    608.1,
                    21.6,
                    606.1,
                    23.6
                ]
            ],
            "area": 56,
            "bbox": [
                390.0,
                1.0,
                218.0,
                351.0
            ],
            "iscrowd": false,
            "isbbox": false,
            "color": "#dcf864",
            "metadata": {}
        },

I think you are correct, indeed here the format does not match the COCO one exactly. The scripts in this repo that process this annotation file do however take into account this difference and produce an image mask that is correct.

I fixed the issues in the attached
coco-s2ships-from-mask.json

and with the segmentation in addition to bbox
coco-s2ships-from-mask.json


[SPARK-20680][SQL][FOLLOW-UP] Add HiveVoidType in HiveClientImpl

What changes were proposed in this pull request?

Discussion with comment.
Add HiveVoidType class in HiveClientImpl then we can replace NullType to HiveVoidType before we call hive client.
Why are the changes needed?

Better compatible with hive.
More details in #29244.
Does this PR introduce any user-facing change?

Yes, user can create view with null type in Hive.
How was this patch tested?

New test.

Test build #127399 has started for PR 29423 at commit ad890a4.

Merged build finished. Test PASSed.

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

Test build #127399 has finished for PR 29423 at commit ad890a4.

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

Merged build finished. Test FAILed.

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

Merged build finished. Test PASSed.

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

Test build #127408 has started for PR 29423 at commit 5150279.

Test build #127408 has finished for PR 29423 at commit 5150279.

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

Merged build finished. Test PASSed.

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

Test build #127414 has started for PR 29423 at commit b2c152a.

Merged build finished. Test PASSed.

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

Test build #127414 has finished for PR 29423 at commit b2c152a.

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

Merged build finished. Test FAILed.

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

Test build #127427 has started for PR 29423 at commit 57d8fd8.

Merged build finished. Test PASSed.

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

Test build #127427 has finished for PR 29423 at commit 57d8fd8.

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

Merged build finished. Test PASSed.

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

thanks, merging to master!

thanks for merging!


Unexpected fail of Signed-Tags check

The scorecard on bkimminich/juice-shop gives this result:
RESULTS
-------
Active: Pass 10
CI-Tests: Pass 10
CII-Best-Practices: Pass 10
Code-Review: Fail 10
Contributors: Pass 10
Frozen-Deps: Fail 5
Fuzzing: Fail 3
Pull-Requests: Pass 7
SAST: Pass 8
Security-Policy: Pass 10
Signed-Releases: Fail 10
Signed-Tags: Fail 9

I get the Code-Review and Fuzzing fails, but not the Signed-Tags fail:

All releases (of the last 2+ years at least) are based on signed tags. And since 1 year+ all releases have MD5 signatures of all artifacts as well as artifacts themselves, so the Signed-Releases fail seems also unexpected:

Signed-releases is failing since it is missing signature file - https://github.com/ossf/scorecard/blob/main/checks/signed_releases.go#L49
asc, sig are usual formats for these, see https://wiki.debian.org/Creating signed GitHub releases
md5 is just checksum, not signature file.
Signed-tags is something @dlorenc can look into. when i run with --show-details, only one signed tag is found via api: v11.1.2, commit: dc428cf36d647356de7d44110ddb292250d71704, not the v12 ones.

Ah, my bad on the tagged releases... one down, one to go. Here at least the GitHub web UI is on my side... 😁

I reprod this, we must be doing something wrong with the API. I'm seeing this in the results:

We call ListTags to get all the tags then iterate through them.
We lookup the commit corresponding to each tag.
For the first tag here v12.1.1, we see commit f43b0444f3d2e49544a1a5084a50ab24e5c41c46
We then fetch that commit and check the Verification on it. The verification here is 'false' with a reason of 'unsigned'.

This looks to be the issue here: https://github.community/t/is-there-an-api-to-get-a-single-tag-by-its-tag-name/126107
The "ListTags" API returns a list of tags with names and the commit the tag points at, but does not return the tag sha itself.
The API call to Get a tag requires the tag sha.

OK, figured this out. Unfortunately the GraphQL API allows you to retrieve the tag_sha, but does not allow you to check the verification status of that tag. So we need to use both APIs here after all.

Signed-Tags: Pass 10 looks good now, thanks!


Fixed popup height

Currently the popup has no fixed height and some things from the menu can run below the fold and are not visible.
I think we could have a fixed height OR this problem solves itself when we have a nicer designed blank screen (when there are no transactions visible)

I'm for the problem fixing itself as I'm sure the nicer designed blank screen will require more height.


Multy-GPU training?

I am have PC with two old GPU. I am set CUDA_VISIBLE_DEVICES=0,1 and launch "run.sh". Unfortunate only first GPU in usage with terrifing ~300 hours for training.
Is here GPU limitation somewhere in code?

We did not implement multi-GPU training. If it is needed, you can realize it yourself by referring to some existing repos which have deployed the NeRF on multiple GPUs.

same question


Test using Python 2.7, 3.7, 3.10, and pypy-3.8

I've mocked the data in test file.

I am a bit confused.
This test is a real world test as these are actual versions of Python to test against rather than text in a file.
If you approve the workflow then we can see the results of the test run before considering merging it or not.

I am a bit confused. This test is a real world test as these are actual versions of Python to test against rather than text in a file.
If you approve the workflow then we can see the results of the test run before considering merging it or not.
We might also want to test on multiple OSes.

That means I should add one more test case to test the real environment, but not only the mocked data. I'll do it later.

So with the current code, if you run detect-python-interpreter, it does not actually detect the Python interpreter?

https://github.com/XadillaX/detect-python-interpreter/blob/master/test/index.test.js#L16
This package is, but the test cases is not. The test cases mocked the return value of child_process to test the logic of each situation.

@cclauss It seems all test environments have Python3 installed.


CreateProcess: use ordered list in attempts list to improve readability

Hi. This is the comparison about this change:
Before:

... The system tries to interpret the possibilities in the following order:
c:\program.exe c:\program files\sub.exe c:\program files\sub dir\program.exe c:\program files\sub dir\program name.exe If the executable module is a 16-bit application ...

After:

... The system tries to interpret the possibilities in the following order:

c:\program.exe
c:\program files\sub.exe
c:\program files\sub dir\program.exe
c:\program files\sub dir\program name.exe

If the executable module is a 16-bit application ...

@pzhlkj6612 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Karl-Bridge-Microsoft : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@Karl-Bridge-Microsoft : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi @Karl-Bridge-Microsoft , thank you for your correction.


Document notifications technical capabilities

MUMUP-2856
MUMUP-2857
In this PR:

Wrote documentation for notifications, including user-facing content and technical implementation
Removed the action attribute from actionButtons configuration (limited use case and not currently working as intended)
Included minimal best practices guidance

Screenshots

Coverage remained the same at 39.199% when pulling 1158c618a70bb5d96772e09d50af14c7a0c66512 on thevoiceofzeke:docs into a840a308da5505a77e546953f70b455d52f7a85a on UW-Madison-DoIT:master.

Coverage remained the same at 39.199% when pulling 1158c618a70bb5d96772e09d50af14c7a0c66512 on thevoiceofzeke:docs into a840a308da5505a77e546953f70b455d52f7a85a on UW-Madison-DoIT:master.

Coverage remained the same at 39.199% when pulling cda8c5c30e1576bf64d3ab58fd5155ddcda32c43 on thevoiceofzeke:docs into a840a308da5505a77e546953f70b455d52f7a85a on UW-Madison-DoIT:master.

Coverage remained the same at 39.199% when pulling adf5595060f52497f07bdc6855c30a7213cbcb80 on thevoiceofzeke:docs into a840a308da5505a77e546953f70b455d52f7a85a on UW-Madison-DoIT:master.

Coverage remained the same at 39.199% when pulling c5d9f41913618da8feee5c1dcc355bc192260121 on thevoiceofzeke:docs into a840a308da5505a77e546953f70b455d52f7a85a on UW-Madison-DoIT:master.


Error: RCTUIManager.dispatchViewManagerCommand must not be null

I'm using an Animated.View from react-native.
If I do Actions.pop() while the animation is still playing I get this weird weird error.
If I wait for the animation to end I don't get the error
Specifically the error is this:
[error][tid:com.facebook.React.ShadowQueue][RCTModuleMethod.m:58] Argument 0 (NSNumber) of RCTUIManager.dispatchViewManagerCommand must not be null
[error][tid:com.facebook.React.ShadowQueue][RCTModuleMethod.m:58] Argument 0 (<null>) of RCTUIManager.dispatchViewManagerCommand could not be processed. Aborting method call.

I'm actually running
 componentWillUnmount(){
   this.animation.stop();
 }

to stop the animation if we are about to unmount, the code works fine, but I still get the error...
Not sure what to do, I just have a secret hope that you might be able to help me with this.

Ok this had nothing to do with the Animated.View, it had to do with me calling scrollResponder.scrollResponderScrollTo after I called Actions.pop().
I close the issue and leave it here if someone faces this in the future.


Document that in order to use chef_vault_secret, the client must be an admin

admins is a required attribute:
https://github.com/chef-cookbooks/chef-vault/blob/master/libraries/chef_vault_secret.rb#L38
However I haven't found a way to configure chef to allow clients to read user pubic keys without providing full admin access:
You can do the following to read clients:
knife acl add client 'node_for_chef_vault_secret_creation' container clients read

But the only way to get them to read users is to give the node full admin privs:
knife group add client 'node_for_chef_vault_secret_creation' group admins

We should document this, and maybe look at creating a ticket around allowing access to public keys. Github does it by default to the entire world: https://github.com/hh.keys

Note that trying to add a client to the admin group via the manage.chef.io results in an error, you must do it via knife-acl / knife group add

I'm going to try removing the requirement for the admin attribute.

Looking forward to this fix.

I don't think it's really usable at all in current state, but I don't have the time/resources to look into this further atm.

Agreed :( I am hoping chef will find a real fix for this since I think the RBAC / databags implementation is mutually exclusive to the implementation of chef-vault (cookbook and gem).

search(:node, search_string) do |n|
  # my work around using chef_data_bag which encrypts using the shared key
  # but I'd like to replace with the chef_vault_secret
  chef_data_bag_item "secrets/for_#{n.name}" do
    complete true
    encrypt true
    encryption_version 3
    secret_path '/etc/chef/encrypted_data_bag_secret'
    raw_data lazy {
        {'secret' => open("/tmp/dynamic_data_from_chefrun_for_#{n.name}").read }
      }
  end

  chef_vault_secret "secrets/for_#{n.name}" do
    search "name:#{n.name} or name:#{node.name}" # the target node AND this node need to be encrypt
    # clients [n.name, node.name]
    data_bag node['secrets_databag']
    raw_data(
      lazy {
        {'secret' => open("/tmp/dynamic_data_from_chefrun_for_#{n.name}").read }
      }
    )
    # admins  doesn't seem to work on hosted chef as the node/client running the recipe
    # can't "read/get" the users... the client must  be an admin.
    # knife group add client the_node_running_this admins (doesn't work via knife-acl)
   # updating the web-gui works but we still fail to encrypt to any nodes
    admins 'hippiehacker'
  end
end


Create generator-generic-ossf-slsa3-publish.yml

Care to elaborate? Why does this project specifically need such a thing?


Validate vendor_path

Validate that vendor_path is a valid path before attempting to copy the contents
@milosgajdos83 @ashb can you take a look at this please?

Yeah looks sane to me.
I wonder if it's worth throwing or reporting an error if vendor_path is specified but doesn't exist?

@ashb good point, added in https://github.com/simonmcc/kitchen-salt/commit/83e8e3e8ac6a25ab5a00c1130b1b24f90f14e073


minFilter 9986 vs 9987 -  Moiré  pattern on model viewer

Hi,
We have been a long time user and have been using google's model viewer implementation which relies on the threeJS library.
We recently found an issue with the model textures that they appear to show a moiré  pattern (upon closer inspection) as has also been discussed on this model viewer issue:
https://github.com/google/model-viewer/issues/936
I have then gone ahead and edited the glb files manually and changed the minFilter value to the proposed 9987 and the issue disappeared.
How can we create a .glb file that uses minFilter 9987 instead of 9986.
Has anyone run into this issue before?

@lanxinger I think NEAREST_MIPMAP_LINEAR (9986) is a good default given the runtime/quality trade-off. Though I'm not opposed to removing the defaults and letting the runtime engine decide. Would that work for model-viewer?

@lilleyse thank you for your reply.
yes I think that would work. I checked the gltf export from blender and they are not using the minFilter at all and the exported file doesn’t cause moire issues. If people would still need it would it be a good option to have a flag that people can pass via CLI?

@lilleyse according to one of the Google model viewer developers:
"Yes, removing the default would be ideal. Technically that's not letting
the engine decide, as the glTF spec specifies which default the engines
must use. However, they chose that default with input from the engines, as
we know anything other than LINEAR_MIPMAP_LINEAR results in significant
rendering artifacts. The performance difference from this is small since it
is handled in hardware anyway.
Thanks,"
https://github.com/google/model-viewer/issues/936#issuecomment-623535158

@lanxinger opened a PR here: https://github.com/CesiumGS/obj2gltf/pull/240


[Cherry-pick] [BugFix] When the status of HeartBeat is not ok, it also need to be synced to follower(#8265)

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #8259
Problem Summary(Required) ：

When master the received heartbeat status is not ok, the heartbeat info also need to be synced to follower.
Otherwise, the failed heartbeat information will not be synchronized to the follower.
Since the failed heartbeat info also modifies fe's memory, this.heartbeatRetryTimes++;
if it is not synchronized to the follower, this will cause the master and follower's metadata to be inconsistent

run starrocks_tscancode

run starrocks_fe_unittest

run starrocks_tscancode

@Mergify backport branch-2.2


Chrome complains about KeyboardEvent.keyIdentifier

'KeyboardEvent.keyIdentifier' is deprecated and will be removed in M53, around September 2016. See https://www.chromestatus.com/features/5316065118650368 for more details.

seems like it might be something internal to Closure library

also exists upstream - @NeilFraser.
To reproduce:
Select/click a block, then hit "control." (e.g., as if you're about to do CTRL-Z).

I suspect that this will go away if you update closure.

ah, ok - will re-open if still doing it after that!


Server: support function calling

Fix #784,  Related PR,  #995 .
Some examples of model requests:

meta-llama/Llama-3.2-1B-Instruct
Qwen/Qwen2.5-0.5B-Instruct
mistralai/Mistral-7B-Instruct-v0.3

View the meta-llama/Llama-3.2-1B-Instruct cURL & response
meta-llama/Llama-3.2-1B-Instruct

curl

curl http://localhost:8080/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "meta-llama/Llama-3.2-1B-Instruct",
        "messages": [
            { "role": "user", "content": "What is the weather in San Francisco?" }
        ],
        "tools": [
            {
                "type": "function",
                "function": {
                    "name": "get_current_weather",
                    "description": "Get the current weather",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "location": {
                                "type": "string",
                                "description": "The city and country, eg.  }
        ],
        "tools": [
            {
                "type": "function",
                "function": {
                    "name": "get_current_weather",
                    "description": "Get the current weather",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "location": {
                                "type": "string",
                                "description": "The city and country, eg. San Francisco, USA"
                            },
                            "format": { "type": "string", "enum": ["celsius", "fahrenheit"] }
                        },
                        "required": ["location", "format"]
                    }
                }
            }
        ]
    }'

{
    "id": "chatcmpl-a704f0ce-16dd-45ef-8620-b7dce4b6e8ed",
    "system_fingerprint": "fp_2e665298-ed11-4424-b23f-812fda71d9d4",
    "object": "chat.completions",
    "model": "Qwen/Qwen2.5-0.5B-Instruct",
    "created":<PHONE_NUMBER>,
    "choices": [
        {
            "index": 0,
            "finish_reason": "stop",
            "message": {
                "role": "assistant",
                "content": "<tool_call>\n{\"name\": \"get_current_weather\", \"arguments\": {\"location\": \"San Francisco, USA\"}}\n</tool_call>"
            }
        }
    ],
    "usage": {
        "prompt_tokens": 209,
        "completion_tokens": 24,
        "total_tokens": 233
    }
}

View the mistralai/Mistral-7B-Instruct-v0.3 cURL & response
mistralai/Mistral-7B-Instruct-v0.3

curl

curl http://localhost:8080/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "mistralai/Mistral-7B-Instruct-v0.3",
        "messages": [
            { "role": "user", "content": "What is the weather in San Francisco?" }
        ],
        "tools": [
            {
                "type": "function",
                "function": {
                    "name": "get_current_weather",
                    "description": "Get the current weather",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "location": {
                                "type": "string",
                                "description": "The city and country, eg. San Francisco, USA"
                            },
                            "format": { "type": "string", "enum": ["celsius", "fahrenheit"] }
                        },
                        "required": ["location", "format"]
                    }
                }
            }
        ]
    }'

response

{
	"id": "chatcmpl-c724d955-63d3-404d-8af5-e775dfecc27e",
	"system_fingerprint": "fp_bcee6a65-1462-44ec-9272-275e3333063c",
	"object": "chat.completions",
	"model": "mistralai/Mistral-7B-Instruct-v0.3",
	"created":<PHONE_NUMBER>,
	"choices": [{
		"index": 0,
		"logprobs": {
			"token_logprobs": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.625],
			"top_logprobs": [],
			"tokens": [5, 1501, 7567, 1629, 2032, 1113, 1295, 29498, 3790, 29498, 1537, 1991, 1316, 1113, 17452, 2032, 10598, 3501, 2032, 1113, 18672, 10454, 29493, 7803, 1316, 1113, 4530, 2032, 1113, 29485, 1958, 3938, 29507, 1743, 29561, 2]
		},
		"finish_reason": "stop",
		"message": {
			"role": "assistant",
			"content": "[TOOL_CALLS] [{\"name\": \"get_current_weather\", \"arguments\": {\"location\": \"San Francisco, USA\", \"format\": \"celsius\"}}]"
		}
	}],
	"usage": {
		"prompt_tokens": 114,
		"completion_tokens": 36,
		"total_tokens": 150
	}
}

Limitation
Currently, chat_template is used to encode and process input, but there is no unified method for handling output yet. Therefore, manual parsing is required for each model's output. For details, see: Tool Use, Unified .

I tried this after installing your other PR with function calling support. For example, Qwen does consequently reply with the tool/function call and stops: "<tool_call>
{"name": "get_web_search_results", "arguments": {"keyword": "OpenAI function calling format"}}
</tool_call>".
Shouldn't the "finish_reason" be "tool_calls" so that it's OpenAI-compatible, as per https://platform.openai.com/docs/guides/function-calling ? I think that's how apps like TypingMind and other front ends know there's a tool to call.

I tried this after installing your other PR with function calling support. For example, Qwen does consequently reply with the tool/function call and stops: "<tool_call> {"name": "get_web_search_results", "arguments": {"keyword": "OpenAI function calling format"}} </tool_call>".
Shouldn't the "finish_reason" be "tool_calls" so that it's OpenAI-compatible, as per https://platform.openai.com/docs/guides/function-calling ? I think that's how apps like TypingMind and other front ends know there's a tool to call.

You are right, "finish_reason" should be "tool_calls." As mentioned in the link above, the function results are still manually parsed, meaning there is currently no good way to determine if the end reason is tool_calls. This PR is not a complete feature implementation, and perhaps when the tokenizer supports a similar decode_function_call function, we can fully support the function calling feature.

You are right, "finish_reason" should be "tool_calls."

Does it make sense to do something like:

Check if tools in the request
If it is and the stop condition is met, set the finish_reason to tool_calls ?

You are right, "finish_reason" should be "tool_calls."

Does it make sense to do something like:

Check if tools in the request
If it is and the stop condition is met, set the finish_reason to tool_calls ?

The situation may not be that simple, because including the parameter tools does not necessarily call a function. For example, the following request that includes tools returns a plain text description.

View the Qwen/Qwen2.5-0.5B-Instruct cURL & response
Qwen/Qwen2.5-0.5B-Instruct
curl:
curl http://localhost:8080/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
        "model": "Qwen/Qwen2.5-0.5B-Instruct",
        "messages": [
            { "role": "user", "content": "What is the weather in San Francisco?" }
        ],
        "tools": [
            {
                "type": "function",
                "function": {
                    "name": "get_current_weather",
                    "description": "Get the current weather",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "location": {
                                "type": "string",
                                "description": "The city and country, eg.  Given that you asked \"What is the weather in San Francisco? \", I can provide you with general information about the local climate in San Francisco, but I cannot guarantee the current weather conditions or predict future weather patterns. For precise weather conditions and more detailed information, it's best to check the local weather service, the official government website of San Francisco, or the California Department of"
		}
	}],
	"usage": {
		"prompt_tokens": 37,
		"completion_tokens": 100,
		"total_tokens": 137
	}
}

The approach I currently recommend is:

Check if "finish_reason" is "stop";
If so, manually parse to see if it matches the function rules of each model.

Of course, as mentioned above, this submission does not fully support the Function Calling feature. Full support requires relying on the Huggingface transformers library to provide similar functions.

@alelordelo https://github.com/madroidmaq/mlx-omni-server The project has made compatibility handling for the Function Calling return mentioned above, you can try it out.


README.md: mark properties argument as optional

see https://github.com/uber/r-dom/blob/7d913fff2a1b86bec9396e6b9dd67e0492761ae3/index.js#L23-L26

children is also optional. Should we show that as well?


some problem during make pythonAPI

some problem had happened during building
the warning are as follow:
ninja: error: '../boost-1.72.0-c8-install/lib/libboost_filesystem.a', needed by 'LibCarla/cmake/test/libcarla_test_client_release', missing and no known rule to make it
make: *** [Util/BuildTools/Linux.mk:124：LibCarla.client.release]

Hey, did you manage to solve it?
I have the same issue

I try it again and again .At last I put the file folder of some part of carla in the cmake file and turn the vpn on , make it again, finally solve the problem

I just managed to solve it too.
I rebooted my computer.
I removed any exported python path from .bashrc file.
I reinstalled CARLA from source (as my initial installation was)
And I was able to execute make PythonAPI with no problems :)


Passes onError and onLoadStart through

closes #94

Ah.. I was wondering why those weren't working. Can this get merged in?

I think this is fixed on master now :)


chore:delete unused files

Description
I used knip to identify unused files. There will be a few more related PRs, after that I will add CI check for this.
Fixes #35778
Related EE PR https://github.com/appsmithorg/appsmith-ee/pull/5165
Automation
/ok-to-test<EMAIL_ADDRESS>:mag: Cypress test results

[!CAUTION]
🔴 🔴 🔴 Some tests have failed.
Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/10916398691
Commit: fd89026f13d3872eb221eece3291976501a17437
Cypress dashboard.
Tags: @tag.All
Spec:
The following are new failures, please fix them before merging the PR:
cypress/e2e/Regression/ClientSide/Anvil/AnvilModal_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilStatsWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchGroupWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilTableWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilToolbarButtonWidgetSnapshot_spec.ts
cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilZoneSectionWidgetSnapshot_spec.ts
cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL1_Spec.ts
cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts
cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres1_Spec.ts
cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres2_Spec.ts
cypress/e2e/Regression/ServerSide/QueryPane/QueryPane_Postgres_Spec.js
List of identified flaky tests.
Wed, 18 Sep 2024 07:07:57 UTC

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[x] No

/build-deploy-preview skip-test=true

There are many files that are in experimental stages hence still kept around like the IDE files

The project should not contain files that are not used anywhere, since their work cannot even be checked. This is especially important now when we are planning large-scale changes in the project. You can always put files under the feature flag and use theme somewhere or find them in the git even if they have been deleted. It's not a issue.

There are many files that are used / imported in EE so cannot be deleted

Only three files were used in EE and I moved them.

app/client/src/ee/pages/AdminSettings/FormGroup/TextAreaField.tsx
app/client/src/ee/pages/Editor/AppSettingsPane/PaneHeader.tsx
app/client/src/ee/pages/common/AvatarComponent.tsx


⚠ Nebulance has degraded performance

In 8b4114c, Nebulance ($NBL) experienced degraded performance:

HTTP code: 200
Response time: 1827 ms

Resolved: Nebulance performance has improved in 5905664 after 6 minutes.


[json] Formatting a JSON file should not remove the trailing newline

In #19281, @mousetraps said that removing the newline at the end is by design.
However, this may not be an ideal design. By POSIX definition, a text file ends with a newline character. If it does not end with a newline character, it is not a text file, only a stream of bytes.
Therefore, for anyone who wishes to have their JSON files be POSIX-valid text files, I think it would be best if VS Code did not remove already-existing newline characters in text files.
It is not necessary for VS Code to add newline characters where there currently aren't any, unless users have "Files: Insert Final Newline" enabled, in which case it should. Regardless of this setting, VS Code should not remove already-existing trailing newline characters (it should leave 0 or 1 of them).

duplicate of #17359
Also related: #23260


Feature request: Handle overloading functions

Similar requests

[X] I have searched and found no existing similar requests

How are you using Studio?
Legend Studio
What problems are you trying to solve?
Support overloading functions with same name but different params.
This is already handled by @finos/legend-engine  compilation but is not handled by studio's builder.
Sample Grammar to support
function model::test(a: String[1]): String[1]
{
  'a';
}

function model::test(a: String[1], b: Integer[1]): String[1]
{
  'a';
}

Describe the solution you would like to see implemented
Differentiate between functionName and name.
For the two functions above their functionName would be the same test, but their name would be different test_String_1_String_1_ vs test_String_1_Integer_1_String_1_  respectively.
The graph building of function, transformation, and function editor would need to be updated to generate this name and in PureModel and index it so we can allow duplicates. Function Editor would be updated to update name and functionName
Contribution

[ ] I would like to work on this feature

Implementation plan

[ ]  Fix Engine roundtrip process. /pure/v1/grammar/jsonToGrammar/model will add one new ### Pure among each overloaded functions e.g.

function model::test(a: String[1]): String[1]
{
  'a';
}
### Pure
function model::test(a: String[1], b: Integer[1]): String[1]
{
  'a';
}

[ ] graph building of function
[ ] v1-metaModel transformation
[ ] Update Model explorer panel to display function full signature instead of functionName
[ ] function editor

Fix Engine roundtrip process. /pure/v1/grammar/jsonToGrammar/model will add one new ### Pure among each overloaded functions e.g.

Why do we want to do this?
Will think about the rest of the points in SDLC

Isn't it the case of engine that we will change grammar parser to correctly generate the right packageable element now?

Isn't it the case of engine that we will change grammar parser to correctly generate the right packageable element now?
Yes, update parser will fix the current behavior.

Why didn't we mention @kevin-m-knight-gs approach here?

To clarify, for sdlc (1) and (2) are quick hacks, (2) is stricter and less hacky than (1). (3) is a more generic approach proposed by @kevin-m-knight-gs to handle cases where we got any problems while trying to parse/get the entity (hence the idea of Corrupted Entity)

To clarify, for sdlc (1) and (2) are quick hacks, (2) is stricter and less hacky than (1). (3) is a more generic approach proposed by @kevin-m-knight-gs to handle cases where we got any problems while trying to parse/get the entity (hence the idea of Corrupted Entity)

Based on our earlier meeting, we will resolve this ticket using the second approach for now.
Link this pr to Engine PR  and SDLC PR .
TODO: A error handling strategy will be implemented to handle any non backward compatible changes.


Fix Clang warning flag, document some useful CMake build options

Resolves #366

LGTM

Codecov Report

Merging #374 (c9971d3) into develop (e05fbfe) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #374   +/-   ##
========================================
  Coverage    93.40%   93.40%
========================================
  Files           43       43
  Lines         1910     1910
========================================
  Hits          1784     1784
  Misses         126      126

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 e05fbfe...c9971d3. Read the comment docs.


Update description of admission-webhook in install

This adds additional information to the description of the admission webhook in the kustomization file.

/assign @janetkuo


Code Coverage

Some good candidates for testing coverage are:

[ ] Dispatch Commands
[ ] Dispatch Arguments
[ ] Many of the Persistence utilities (Persistence, FileUtil, DataContainer, etc.)
[ ] Many of the Math utilities (These would basically just be running each method and determining that the results are within some reasonable margin of error)

[x] Vector2
[x] Vector3
[ ] Path2
[x] Path3
[ ] BitUtil
[ ] CoreMath
[ ] Cuboid
[ ] CentralLimitDistribution
[ ] ValueWeight
[ ] WeightedDistribution

[ ] The Adapters (These would basically just be serializing and deserializing to some temp folder)

[ ] LocationAdapter
[ ] PathAdapter
[ ] Vector2Adapter
[ ] Vector3Adapter
[ ] Path2Adapter
[ ] Path3Adapter

If you are interested in any of these, please make another issue specific to that one and bring the coverage as high as possible on one of the files. I'm happy to answer any questions about the intended functionality.

Hey @hhenrichsen, Would it be alright if I assist with the testing?

Hey @hhenrichsen, Would it be alright if I assist with the testing?

Yes. As I mentioned in the original issue, please start by opening an issue for the testing you intend to add, then create a pull request for that issue.