Macro API design discussion

I wanted to discuss the overall design of the macro APIs that people are coding against. Ultimately, my goal is to move them much closer to the existing APIs with the exception of the introspection APIs.
Some specific changes I want to make:

Remove the description field entirely from the macro class, and move to the macro interfaces we currently have - essentially wholesale copy these apis, but with tweaks to the transitively exposed types there.
Add Builder APIs for how you actually perform augmentation, replacing the AugmentationResponse and Augmentation classes we have today. The AugmentationResponse would change how it is structured to match something more like the MacroExecutionResult.

This allows us to easily merge augmentations together like we currently do (without parsing them), which makes the resulting files look nicer when many macros are running.
It keeps developers on the rails, so they don't try to produce augmentations they aren't allowed to based on their current phase.
It handles the hard parts of producing augmentation declarations for you (this could be done in a separate helper possibly though).
Lastly, it is much easier for us to validate that the returned augmentations are not violating any rules.

cc @davidmorgan maybe we should discuss tomorrow am?

Thanks for pushing on this Jake ... there is a surprisingly large amount to unpack here :)

Re: "description field".
With Macro application annotation identification we haven't fleshed out how the host finds out implementation detail of the macro, such as phases.
What we currently have in v2 is that macro implementation detail is sent by the macro on startup in MacroStartedRequest.
So to support fine-grained interfaces per the v1 API we would have:

_macro_builder analyzes the macro code to get the set of interfaces implemented, injects this into the bootstrap script so it gets added to MacroStartedRequest, along with the set of phases needed
the host can now check whether where the macro was applied matches the set of places the macro knows how to handle
AugmentRequest gets a new field, the target type
_macro_client dispatches based on target type and phase to the fine-grained interfaces

and then we have a few more questions about how this whole thing ties together:

v1 macro gets its own metadata through the constructor, how does v2 get it?
v1 macro gets the target Declaration passed in, what does v2 get?
v1 gets a builder: this is a new type of thing we probably want for v2

Metadata and Declaration are mostly interesting for the question of how they interact with queries and the Model. Possibly what a v2 macro gets is a default initial query and it immediately gets passed a Model which is the result of that query. But then the macro hasn't had a chance to specify the details of that query, e.g. whether to fetch all the types mentioned. So that's not 100% clear.
Another consideration here is that I think the Macro interface is tied to the major protocol version: when the major protocol version changes the Macro interface becomes Macro2 and all the types change. So the macro_client dispatch to macro methods has to be able to do this. (Should be easy enough, particularly since we fully control the generation of the bootstrap code).
I think a good path is to push for one e2e example that works like a v1 macro, it's not clear to me that we're headed for something exactly like v1 macros, but if there are going to be any differences then we can figure out what+why along the way.

Builder APIs: yes, I think we want these, and yes to flushing out AugmentationResponse correspondingly.
Just one note here. If I understood correctly, builders are code running on the client that helps to create Dart code. That's fine, but we should think about forwards compatibility: what happens when a new language version requires something different? We might need a way to introduce new code paths for new language versions.
Again I think probably some simple e2e example to prove out the new ground here is probably a good way to go.

Indeed, let's discuss :) thanks!

Just one note here. If I understood correctly, builders are code running on the client that helps to create Dart code. That's fine, but we should think about forwards compatibility: what happens when a new language version requires something different? We might need a way to introduce new code paths for new language versions.

It is a combination of client + server side right now. The client side only ever generates a single declaration, and not any surrounding declarations (but will have a reference to which surrounding declaration it is generating it for). The server side then merges all those declarations together from all the macros, under a single augmentation of the surrounding declaration.
We could move literally all of it server side though, if that would be better.

Copying a comment from , we decided on the following additional things regarding builder objects:

Make the API for macros only take a builder object as a parameter, with access to the target model via a getter

This will also auto merge the results of any queries into the model that is in scope.
It also opens up the door to potentially trying to answer queries with the existing model in scope when all data is present, and/or converting queries to minimal ones when additional data is needed.

Add some convenience methods on QualifiedName to look it up in the model because this will be generally useful.


Automated cherry pick of #8326: fix: get images distinct field

Cherry pick of #8326 on release/3.4.
#8326: fix: get images distinct field

Codecov Report

Merging #8327 into release/3.4 will decrease coverage by 2.02%.
The diff coverage is 0.00%.

@@              Coverage Diff               @@
##           release/3.4   #8327      +/-   ##
==============================================
- Coverage         6.22%   4.19%   -2.03%
==============================================
  Files              759     453     -306
  Lines           117145   83249   -33896
==============================================
- Hits              7289    3495    -3794
+ Misses          109197   79452   -29745
+ Partials           659     302     -357

Flag
Coverage Δ

#aFlag
4.19% <0.00%> (-2.03%)
:arrow_down:

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

Impacted Files
Coverage Δ

pkg/appsrv/stats.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/db_dispatcher.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/domain.go
2.73% <0.00%> (+0.07%)
:arrow_up:

pkg/cloudcommon/db/metadata.go
5.06% <0.00%> (-0.04%)
:arrow_down:

pkg/cloudcommon/db/metadataresource.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/namevalidator.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/project.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/scoperesource.go
0.00% <ø> (ø)

pkg/cloudcommon/db/standalone.go
2.05% <0.00%> (-0.12%)
:arrow_down:

pkg/cloudcommon/db/virtualresource.go
0.00% <0.00%> (ø)

... and 335 more

Continue to review full report at Codecov.

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

/lgtm
/approve


always use urljoin

We have various places where + is used instead of urljoin
 r = requests.get(self.mscolab_server_url + '/operations
That needs to become refactored
A side effect, when there is no Url, tests show this in python 3.11
tests/_test_msui/test_mscolab_admin_window.py::Test_MscolabAdminWindow::test_add_permissions
  /home/reimar/MASTER/MSS/conftest.py:222: UserWarning: An unhandled message box popped up during your test!
  PyQt5.QtWidgets.QMessageBox.critical(): [call(None, 'fatal error', 'Fatal error in MSS 8.2.0 on Linux-6.2.0-10018-tuxedo-x86_64-with-glibc2.35\nPython 3.11.4 | packaged by conda-forge | (main, Jun 10 2023, 18:08:17) [GCC 12.2.0]\n\nPlease report bugs in MSS to https://github.com/Open-MSS/MSS\n\nInformation about the fatal error:\n\nTraceback (most recent call last):\n  File "/home/reimar/MASTER/MSS/mslib/msui/mscolab.py", line 1395, in render_new_permission\n    r = requests.get(self.mscolab_server_url + \'/user\', data=data, timeout=(2, 10))\n                     ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~\nTypeError: unsupported operand type(s) for +: \'NoneType\' and \'str\'\n')]
    warnings.warn(f"An unhandled message box popped up during your test!\n{summary}")

Yes also the f' string syntax should use urljoin.
Later when we use os.path/fs.path join methods for files and urljoin for urls it becomes less error-prone.
It gets also much easier to collect all urls.


CLIMATE-782 Resolve BeautifulSoup warnings in esgf data_source and add myproxyclient to easy-ocw install

This PR addresses https://issues.apache.org/jira/browse/CLIMATE-782

Merged build triggered. Test Failed.

Merged build started. Test Failed.

Merged build finished. Test Failed.


sc-4679: Allow overriding hyperparameters in dq.auto() to ensure early convergence

Please do not create a pull request without creating an issue first.
Changes need to be discussed before proceeding, pull requests submitted without linked issues may be rejected.
Please provide enough information so that others can review your pull request. You can skip this if you're fixing a typo – it happens.

[ ] I have added tests to tests to cover my changes.
[ ] I have updated docs/, if necessary.
[ ] I have updated the README.md, if necessary.

What existing issue does this pull request close?
Put closes #issue-number in this pull request's description to auto-close the issue that this fixes.
How are these changes tested?
This pull request includes automated tests for the code it touches and those tests are described below. If no tests are included, reasons why must be provided below.
These changes are tested with [...]
Demonstration
Demonstrate your contribution.
For example, what are the exact commands you ran and their output, related screenshots, screen-recordings, test runs, anything that can showcase.
Provide additional context.
Provide as much relevant context as you like.

Codecov Report

Merging #554 (3eb8239) into main (02c10a4) will decrease coverage by 0.02%.
The diff coverage is 75.00%.

@@            Coverage Diff             @@
##             main     #554      +/-   ##
==========================================
- Coverage   90.60%   90.59%   -0.02%
==========================================
  Files         137      137
  Lines       10773    10771       -2
==========================================
- Hits         9761     9758       -3
- Misses       1012     1013       +1

Impacted Files
Coverage Δ

dataquality/dq_auto/auto.py
68.18% <0.00%> (ø)

dataquality/dq_auto/ner_trainer.py
39.39% <ø> (ø)

dataquality/dq_auto/tc_trainer.py
100.00% <ø> (ø)

dataquality/dq_auto/ner.py
96.77% <100.00%> (ø)

dataquality/dq_auto/text_classification.py
98.68% <100.00%> (ø)

... and 3 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


KPOA do not respect the parameter get_logs

Is your feature request related to a problem? Please describe.
with the KPOA I only get the logs at the end
Describe the solution you'd like
if get_logs is true then at every poke of the operator get the new logs
Additional context
With the KPO the parameter get_logs works
get_logs: bool = True,

Thanks for raising this, we are already working on it in Airflow with the PR you mentioned and https://github.com/astronomer/astronomer-providers/pull/139 :)

Once we merge the PR on Airflow side, we will release a new version of Kubernetes Provider on Airflow and then release a new version of Astronomer Providers too - 1.2.0. ETA ~1-2 weeks


Release nuget package with net standard support

As netStandard code is already merged in master.
Can you please publish a nuget package which supports net standard?

Any updates on this ??

Release the package @doubleyewdee ! :)

Sorry! Had some issues with our code signing infrastructure. Should be out tomorrow.
Get Outlook for iOShttps://aka.ms/o0ukef

From: Damian Hickey<EMAIL_ADDRESS>Sent: Monday, April 24, 2017 11:22:30 PM
To: Microsoft/Microsoft.IO.RecyclableMemoryStream
Cc: Chip Locke; Mention
Subject: Re: [Microsoft/Microsoft.IO.RecyclableMemoryStream] Release nuget package with net standard support (#43)
Release the package @doubleyewdeehttps://github.com/doubleyewdee ! :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Microsoft/Microsoft.IO.RecyclableMemoryStream/issues/43#issuecomment-296925711, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AC4h27L-3SGYY8zSN1mmgxIVv7pozx8Nks5rzZEmgaJpZM4NBdRG.

Done. https://www.nuget.org/packages/Microsoft.IO.RecyclableMemoryStream/1.2.2

Thanks @doubleyewdee


Uncaught Error: EACCES: permission denied, open '~/dev/projects/stukplaces/.bundle/gems/minitest-...

[Enter steps to reproduce below:]

...
...


try to unbundle stuff in advance

What does this PR do?

Motivation

Additional Notes

Describe how to test your changes

Checklist

[ ] The CHANGELOG.md has been updated
[ ] Unit tests have been updated and pass
[ ] If known, an appropriate milestone has been selected

Replaced by prebuildify


Update the import paths for Caddy

This pull request makes torproxy compatible with Caddy v1.0.1+ (see epicagency/caddy-expires#6 for reference) by updating the import paths for Caddy.

Thanks :smiley:  :+1:
/LGTM.


docs: update particles loader and initializer

Updating particlesInit and particlesLoaded to use full TypeScript support and also adding the async await statement to correctly loaded the instances
Did you build the project before submitting the PR?

[ ] Yes
[x] No

Ok! Will do it later. Thanks

Move to new PR with tag #4479


Apple TV 3 Adding Network Profile

Device: Apple TV 3 (Model A1427)
The 5th step of the process (pressing Play button on Send Data to Apple) does not seem to work on this Apple TV model. I am not sure if this has been discussed in the slack channel as I am not in it (would love to be added), but is there an alternative method of adding a network profile? It seems like it is doable over Apple Configurator as per this  article, but I don't have a Mac to give it a try. Any advice is helpful.
Thanks in advance!

Hey, I used the exact method as PlexConnect which has a nice wiki. Maybe you can find your answer there, since I dont have any device to test :)


substitutes array_extend with array_replace_recurcive

substitutes array_extend with arraY_replace_recurcive to include substitution of sub keys in categories for correct mergeFallback logic

Closed by 9083e85a0167b0d27c66245daf256adb09382298. Thanks!


#68 Made Rultor avoided pre releases

Ref: #68

PR-Codex overview
This PR focuses on adding a pre-release step to the existing release process.
Detailed summary

Added a pre: false flag to disable the pre-release step.
Modified the script section to set the new version and commit it to git.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@yegor256 please merge this one

@yegor256 reminder

@maxonfjvipon thanks


CORS with oauth2 strips the response header

Kong 0.10.2
Summary
When using oauth2 and CORS plugin for simultaneously for same api, the Kong response header strips the response header
This is what we get
response header: Connection:keep-alive Content-Length:2132 Content-Type:text/html; charset=utf-8 Date:Wed, 07 Jun 2017 08:26:03 GMT Via:kong/0.10.2 X-Kong-Proxy-Latency:0 X-Kong-Upstream-Latency:5
instead of
Access-Control-Allow-Credentials:true Access-Control-Allow-Headers:content-type Access-Control-Allow-Methods:GET Access-Control-Allow-Origin:http://localhost:4200 Access-Control-Max-Age:3600
Steps To Reproduce

Add api
curl -i -X POST  --url kong:8001/apis/  --data 'name=uigateway'  --data 'uris=/api/gateway/ui'  --data 'upstream_url= http://some-domain:some-port'

curl -X POST http://kong:8001/apis/ask_GET/plugins  --data "name=acl"  --data "config.whitelist=root,022a038e-7080-4878-a84a-ae41b530be76"
3.
curl -X POST http://kong:8001/apis/ask_GET/plugins      --data "name=oauth2"      --data "config.enable_client_credentials=true"      --data "config.global_credentials"
4.
curl -X POST http://kong:8001/apis/ask_GET/plugins      --data "name=cors"      --data "config.origins=*"      --data "config.methods=GET,POST,PUT"      --data "config.headers=origin,content-type,accept,authorization,authentication,Access-Control-Allow-Headers,Access-Control-Allow-Origin,X-Total-Count"      --data "config.exposed_headers=origin,content-type,accept,authorization,authentication,Access-Control-Allow-Headers,Access-Control-Allow-Origin,X-Total-Count"      --data "config.preflight_continue=true"      --data "config.max_age=3600"
Get request to api  gives
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access. The response had HTTP status code 404.

Hello,
same problem here. Did you succeed to fix this ?

Dear contributor,
We're closing this issue as there hasn't been any update to it for a long time. If the issue is still relevant in the latest version, please feel free to reopen it. We're more than happy to revisit it again.
Please have a look at our pledge to the community for more information.
Sincerely,
Kong Gateway Team


Update wasm loading in treemap

wasm module is now loaded in Component (async import)
It is too difficult to load wasm module sync way.

Some of server side rendering / hot reloading causes complex error.

Codecov Report
Attention: 35 lines in your changes are missing coverage. Please review.

Files
Coverage Δ

packages/clock/src/digital/digital.tsx
100.00% <100.00%> (ø)

packages/clock/src/index.ts
38.09% <100.00%> (ø)

packages/editablelabel/src/index.ts
100.00% <ø> (ø)

packages/style-bulma/src/stopwatch.tsx
45.83% <100.00%> (ø)

packages/style-bulma/src/timer.tsx
34.37% <50.00%> (ø)

packages/editablelabel/src/EditableLabel.tsx
85.24% <91.66%> (ø)

packages/textfield/src/TextArea.tsx
76.11% <84.78%> (+3.39%)
:arrow_up:

packages/textfield/src/TextField.tsx
76.11% <83.72%> (+3.39%)
:arrow_up:

packages/treemap/src/treemap.tsx
0.00% <0.00%> (-28.09%)
:arrow_down:

:loudspeaker: Thoughts on this report? Let us know!


Terraform changes pull for load balancer -

Problem

Solution

Tests

Notes

I need to sync patch-1 branch in forked repo. I will open another request.


Uplift timeline-chart to include fix for vertical scroll issue

Signed-off-by: Bernd Hufmann<EMAIL_ADDRESS>

Scroll fix reference: https://github.com/theia-ide/timeline-chart/pull/101

Scroll fix reference: https://github.com/theia-ide/timeline-chart/pull/101


Update rand_core to ^0.6.

This is necessary to update rand_core in pairing-plus.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


optimize checkouts, and time and clean up scripts used in CI

Description of changes:

We can't shallow checkout our repo, because bootstrap expects commit history, but I added a comment because upstream rust seems to consider this a bug?
Don't checkout LLVM in CI, saves a good amount of download time.
Shallow checkouts of other submodules. Seems harmless... may save some time?
Avoid (seemingly unnecessary?) submodule update in the firecracker regression
I got mad at the regression testing scripts and tried to clean them up
Among other things, I discovered we weren't failing CI if the firecracker build failed. Resolved that with set -eu
Added timing and clear "start" "stop" log messages for various sub-components of rmc-regression

Let's see if any CI times are noticably shorter in this PR...
Checklist

[x] Each commit message has a non-empty body, explaining why the change was made
[n/a] Methods or procedures are documented
[n/a] Regression or unit tests are included, or existing tests cover the modified code
[x] My PR is restricted to a single feature or bugfix

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

I'll merge this one since I want to push my upstream merge now. We can address the comments in a follow up PR.

Haha, wow. The submodules changes went from almost 5 minutes to 30 seconds. Awesome. That was most of the time savings for this change though. So a 4ish minute win for now.


rampup3 (Relative Refs #2 (~))

Hi, I managed to figure it out since I found show solutions, but I feel like it could be improved a bit. I went through the tutorials up until this point a few times, trying to find the bit where it tells you to go down a specific commit without using the hash (since I thought we weren't meant to use hash)

Ah yep, this is one of the weaker lessons. Sadly translations are pretty baked in so its hard to rewrite; I can remove the lesson entirely if negative feedback continues to come in

(closing out old issues)

(closing out old issues)


⚠ Bofrost.be has degraded performance

In 4d928d0, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1315 ms

Resolved: Bofrost.be performance has improved in 4f7e499.


fix: Allow multiple mappings to the same action

This change fixes the inconsistency in the mappings that were applied inside the provided Lspsaga functions.
A single utility function map_keys has been created which automatically applies the action to all the mappings that have been provided by the user.

and I am thinking about add this into ref not main branch. because in ref branch we have a utils.lua file

and I am thinking about add this into ref not main branch. because in ref branch we have a utils.lua file

I think this should be in master too. We can merge the utils.lua file after ref branch.

okay current version I don't add unit test. in next version we have. so I would to know does it works fine ? then i can merge this . i don't have much time test this pr sry

okay current version I don't add unit test. in next version we have. so I would to know does it works fine ? then i can merge this . i don't have much time test this pr sry

Yes it works fine no problems. Now it is easy to use different keys for the same action like:
require("lspsaga").setup {
  finder = {
    max_height = 0.7,
    keys = {
      expand_or_jump = { "<CR>", "o" },
      quit = { "<Esc>", "q" },
      vsplit = "<C-v>",
      split = "<C-x>",
      tabnew = { "<C-t>" },
    },
  }
}

could you rename utils -> util


Add channel behind unstable feature flag

This is a simple bounded MPMC channel based on crossbeam-channel.
We're only adding the following to async_std::sync:

Function bounded(cap) that constructs a channel.
Types Sender and Receiver.

Closes #212

@yoshuawuyts has approved this PR verbally so I'm going to merge now :)


fatal compiler error on swift 5.7 and Swift 5.8

Description
using Swift Docc plugin 1.0.0, I receive fatal compilation error from Swift on 5.7 and 5.8
19:03:38 [2/2] Compiling plugin Swift-DocC
19:03:38 error: fatalError

or
19:01:05 Compiling plugin Swift-DocC...
19:01:05 error: emit-module command failed with exit code 1 (use -v to see invocation)
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:31:50: error: consecutive declarations on a line must be separated by ';'
19:01:05     private var remainingOptionsOrFlags: [String].SubSequence
19:01:05                                                  ^
19:01:05                                                  ;
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:31:50: error: expected declaration
19:01:05     private var remainingOptionsOrFlags: [String].SubSequence
19:01:05                                                  ^
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:12:15: note: in declaration of 'CommandLineArguments'
19:01:05 public struct CommandLineArguments {
19:01:05               ^
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:34:40: error: consecutive declarations on a line must be separated by ';'
19:01:05     private var literalValues: [String].SubSequence
19:01:05                                        ^
19:01:05                                        ;
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:34:40: error: expected declaration
19:01:05     private var literalValues: [String].SubSequence
19:01:05                                        ^
19:01:05 /code/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SwiftDocCPluginUtilities/CommandLineArguments/CommandLineArguments.swift:12:15: note: in declaration of 'CommandLineArguments'
19:01:05 public struct CommandLineArguments {
19:01:05               ^
19:01:05 error: fatalError

This breaks our pipeline for The Swift Lambda runtime, see the automated tests for this PR : https://github.com/swift-server/swift-aws-lambda-runtime/pull/342
Checklist

[ ] If possible, I've reproduced the issue using the main branch of this package.
[X] This issue hasn't been addressed in an existing GitHub issue.

Expected Behavior
Should compile on last 3 Swift versions
Actual behavior
error: fatalError

Steps To Reproduce
Checkout this PR and compile with a 5.7 or 5.8 toolchain
Swift-DocC Version Information
1.0.0
Swift Compiler Version Information
5.7 and 5.8

I'm on vacation next week, away from a computer, but I can look at this when I get back if no one else has fixed this by then.

I can help fix it. But I think besides it, we need to add some CI check for each PR.
Since the Package.swift is 5.6. We need to add a CI to check build success from 5.6 to 6.0 and main.
But sadly GitHub are disabled by default and we need to add it on ci.swift.org which I do not have permission to contribute.

See related issue and reply here

Since the Package.swift is 5.6. We need to add a CI to check build success from 5.6 to 6.0 and main.

@Kyle-Ye Thank you for pinging that, I don't think we want to be supporting as far back as Swift 5.6 -- as part of my fix, I will update Package.swift to 5.7 :)
Also, +1 on having CI for all the versions we support, to ensure changes are compatible for all.

Will there be a release soon so projects that had to pin the docc version can unpin?

Just made a new release for swift-docc-plugin to get the fix out as soon as possible:
https://github.com/swiftlang/swift-docc-plugin/releases/tag/1.4.2
Pinned projects should now be able to unpin.

Thank you!


YAML rule refactoring #1109

PR Summary

Rule refactoring of rules from PowerShell to YAML. #1109

The following rules where refactored:

Azure.AppConfig.SKU
Azure.AppConfig.Name
Azure.AppInsights.Workspace
Azure.AppInsights.Name
Azure.Cosmos.AccountName
Azure.FrontDoor.State
Azure.FrontDoor.Name
Azure.FrontDoor.WAF.Mode
Azure.FrontDoor.WAF.Enabled
Azure.FrontDoor.WAF.Name

Additional updates to documentation.

PR Checklist

[x] PR has a meaningful title
[x] Summarized changes
[x] Change is not breaking
[x] This PR is ready to merge and is not Work in Progress
Rule changes

[ ] Unit tests created/ updated
[x] Rule documentation created/ updated
[x] Link to a filed issue
[x] Change log has been updated with change under unreleased section

Looks great. I will convert these to YAML rules as well: https://github.com/Azure/PSRule.Rules.Azure/blob/main/src/PSRule.Rules.Azure/rules/Azure.AKS.Rule.ps1#L95-L128. Maybe in another PR if thats easier.

Absolutely. Those AKS ones look good to refactor.


fix dependency loop causing crash

Signed-off-by: James Talton<EMAIL_ADDRESS>https://github.com/stolostron/backlog/issues/23047

/lgtm


Feat/next lesson card

Description

Creates NextLessonCard component, test file and story

Issue(s)
Fixes #LESQ-409
How to test

Go to https://deploy-preview-2075--owa-storybook.netlify.thenational.academy/?path=/docs/download-components-nextlessoncard--docs

Screenshots
How it should now look:

Checklist

[ ] Added or updated tests where appropriate
[ ] Manually tested across browsers / devices
[ ] Considered impact on accessibility
[ ] Design sign-off
[ ] Approved by product owner
[ ] Does this PR update a package with a breaking change

You haven't asked for a review yet but I saw the PR :D
Just noticed at mobile widths it cuts off the "Download resources" copy. Didn't know if that was a storybook issue, or would annoy us on the front end eventually?

This is a width of the card and size of the button issue, still trying to figure out if I can solve it

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


[rhash] update to 1.4.2

Fix #24340
Update [rhash] version to 1.4.2
Note: no ferature need to test

Thanks for the update!


Call Reset Function Outside of Modal

I am trying to figure out how to call the function which resets the selected items from outside of the modal.
I have a function in one of my controllers that is called when a button is clicked. When that button is clicked I would like to call the reset function in this libraries JS file. Any recommendations on how to do this?

Any updates on this?

+1 on this

hi, are you using the multiple option?
That is probably broken


Support for Non-OpenAI Models in Token Trimming

related: https://github.com/elizaOS/eliza/issues/1439
need to be tested: https://github.com/elizaOS/eliza/issues/1439#issuecomment-2566405036

THANK YOU for doing this! It has been wrong since the beginning lol so much appreciated! This is an important fix!


Add test case for repositories with special characters

Here's a test case for this fix. It should pass fine with your changes applied.

Cheers buddy


Added Dockerfiles for api and Frontend

Added Dockerfiles for both the API and frontend components to containerize the application. These Dockerfiles will facilitate easier deployment and scaling by using consistent environments.
API Dockerfile: Sets up a Python environment, installs dependencies, and runs the FastAPI server.
Frontend Dockerfile: Sets up a Node.js environment, installs dependencies, builds the Next.js application, and serves it.

Hi @yashwant7chaudhari thank you for the contribution. But the goal of this repo is to use as a starting point, so you can use this repo as a fork and add your DevOps solution.


feat: add progress component

Purpose
Implement the Progress component
Approach
Create the new component using div with role="progressbar" instead of the HTML5 progress element, the reason is because the progress element requires several workarounds for the CSS to be consistent between browsers.
It also sets the recommended aria attributes, more info:

https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_progressbar_role
https://www.w3.org/TR/wai-aria-1.1/#progressbar

Other Progress Bars also use this approach, for example:

https://baseweb.design/components/progress-bar/
https://luna.sainsburys.co.uk/components/progress-indicator

Testing
Storybook progress.story.tsx
Risks
N/A

Pre approving as all other things are minor to me, did you mean to mark it as "non-draft"?

Final few very minor comments added, otherwise LGTM. Nice job 👍

Actually, last thing - when you finish addressing all the comments, please don't forget to add new E2E screenshots:

If you introduced visual changes intentionally and are sure it's how it should look, update the screenshot baselines by downloading screenshots artifacts in your PR's checks and copying the images into ./e2e/.snapshots.

Let me know if you have questions regarding this.

LGTM too, great work on this @euljr!


Refactor doctor_visits: Load source file only once

Description
Currently, doctor_visits source files have multiple columns with slightly different names but refer to the same kind of data:
"servicedate": "ServiceDate",
"patCountyFIPS": "PatCountyFIPS",
"patHRRname": "Pat HRR Name",
"patAgeGroup": "PatAgeGroup",
"patHRRid": "Pat HRR ID"

We deal with this by:

Unzip and load source file into  dataframe
Rename columns to a standard format
Rewrote the whole source file into its original storage
Reopen the source file and load into another dataframe
Continue processing data.

This PR remove the first round of loading source file and rename columns, replacing it with code that does the same thing but avoid loading/writing the source file twice.
Changelog
Itemize code/test/documentation changes and files added/removed.

remove modify_claims_drops related files and tests
replace with code that does the same thing (rename columns and check for duplicated rows) in update_sensor.py
Adjust unit test files accordingly: adjust test_geo_map, change column names in csv.gz file to be deviant, so the unit test will change them to correct columns.

Description
continuing optimizing for doctors_visit
Main ran: 569 (
doctor_visit_EDI_AGG_OUTPATIENT_26062024_1455CDT.log
)
doctor_visit_refactor: 94 (
doctor_visit_refactored_EDI_AGG_OUTPATIENT_26062024_1455CDT.log
)
Changelog
Itemize code/test/documentation changes and files added/removed.
refactored update sensor and moved the csv processing into separate module
using datetime date params instead of string
using dask to read in csv

output of one day of state and cprofile output with validation scripts
profile_results.zip


adding c++ txn sample

This change is

@knz the thinking on the back-off delay has evolved a bit - the plan is to do all the waiting in the store based on some signaling mechanism - you'll be woken when the intent that's blocking you has gone away and so you can either proceed (if the other guy rolled back) or immediately restart with a higher timestamp.

@knz, @RaduBerinde, everything look good to go now?

:lgtm:

Reviewed 1 of 2 files at r1, 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 4 unresolved discussions.

_includes/app/txn-sample.cpp, line 63 [r2] (raw file):
stutter. also add a colon after Note

Comments from the review on Reviewable.io

@jseldess I thought the plan was to switch to use INT instead of DECIMAL and float?

Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from the review on Reviewable.io

@RaduBerinde, yes, that's the plan. Andrei just hasn't made those updates yet.

Review status: 1 of 3 files reviewed at latest revision, 8 unresolved discussions.

_includes/app/basic-sample.cpp, line 19 [r3] (raw file):
fixed spaces throughout this file

_includes/app/txn-sample.cpp, line 44 [r2] (raw file):
Done.

_includes/app/txn-sample.cpp, line 59 [r2] (raw file):
Done.

_includes/app/txn-sample.cpp, line 63 [r2] (raw file):
Done.

_includes/app/txn-sample.cpp, line 15 [r3] (raw file):
i've reverted this from auto to the actual type. The default (according to the Google style guide, for example) is to spell out the type unless you can't, or it's too long, or if you're very lazy.

Comments from the review on Reviewable.io


112427: Avoid deleting source dir on item import

References
Add references/links to any related issues or PRs. These may include:

Related to https://github.com/DSpace/DSpace/issues/9330

Description
Don't delete an entire directory anymore if something goes wrong during the SAF import
Instructions for Reviewers
Go through the steps mentioned in the issue -> The source dir should not be deleted
Checklist
This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[x] My PR passes Checkstyle validation based on the Code Style Guide.
[x] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[x] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[x] If my PR includes new libraries/dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[x] If my PR modifies REST API endpoints, I've opened a separate REST Contract PR related to this change.
[x] If my PR includes new configurations, I've provided basic technical documentation in the PR itself.
[x] If my PR fixes an issue ticket, I've linked them together.

Closing, as noted above I believe this is already fixed by #8870.  Cannot reproduce.


chore: modernise tooling and reduce package size

Summary

70% reduction in bundle size.
Tree-shaking
Simplified folder structure
Replace prettier with biome
Replace jest with vitest
Replace node with bun
Added codecov
Added size reporting
Automated TSDoc builds
Removed Monorepo setup
Added changesets for greatly simplified release process
Removed aa-core
Added “Code of conduct” and “Security”

Here are the passing e2e tests: https://github.com/bcnmy/biconomy-client-sdk/actions/runs/8704460093/job/23872782014

Corresponding PR in sdk-examples. https://github.com/bcnmy/sdk-examples/pull/40/files, All works nicely

Nice job

Looks great, Why "Replace node with bun" tho
Haven't seen any team working with bun on production

Looks great, Why "Replace node with bun" tho
Haven't seen any team working with bun on production

Only because it's faster. viem, permissionless and zerodev all use bun

https://github.com/wevm/viem/blob/main/bun.lockb
https://github.com/pimlicolabs/permissionless.js/blob/main/bun.lockb
https://github.com/zerodevapp/sdk/blob/main/bun.lockb

size report is not getting generated


303, 307, and 308 should be cached by Fastly

[Current coverage][cc-pull] is 100%

Merging [#1127][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master      #1127   diff @@
==========================================
  Files            75         75
  Lines          2513       2513
  Methods           0          0
  Messages          0          0
  Branches        303        303
==========================================
  Hits           2513       2513
  Misses            0          0
  Partials          0          0

[][cc-pull]

Powered by Codecov. Last updated by 917a000
[cc-base-branch]: https://codecov.io/gh/pypa/warehouse/branch/master?src=pr
[cc-pull]: https://codecov.io/gh/pypa/warehouse/pull/1127?src=pr


[BEAM-1473] Remove unused windmill proto from python sdk

R: @charlesccychen PTAL
Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

Thanks! LGTM.
R: @aaltay, can you please merge?

Could you update .pylintrc and run_pylint.sh files, to remove exceptions for the removed files?

Changes Unknown when pulling 684b0f239d4c2d52ae8f88c6b49cb3ae715041c4 on sb2nov:BEAM-1473-remove-windmill-proto into ** on apache:master**.

@aaltay done. PTAL

LGTM. Thank you.

Coverage increased (+0.01%) to 69.717% when pulling 216944a53ae8c4c433974b0cafa01c731d8c6352 on sb2nov:BEAM-1473-remove-windmill-proto into 0d3389a20ee44925dae64e9b7a60992bed5a6dd9 on apache:master.


Update slf4j-nop to 1.7.28

Updates org.slf4j:slf4j-nop from 1.7.26 to 1.7.28.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention @scala-steward in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [{ groupId = "org.slf4j", artifactId = "slf4j-nop" }]

labels: semver-patch

Codecov Report

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

@@           Coverage Diff           @@
##           master     #914   +/-   ##
=======================================
  Coverage   89.89%   89.89%
=======================================
  Files          34       34
  Lines        1464     1464
  Branches        1        1
=======================================
  Hits         1316     1316
  Misses        148      148

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 ae053b8...f5d978a. Read the comment docs.

LGTM! Thanks @scala-steward!


[Feature Request] Logging of custom training metrics

🚀 Feature Request

When training a model with ModelTrainer, it would be nice to be able to log some custom metrics (ideally in tensorboard), defined by the model (e.g., the values of the individual loss terms if the loss of the model is a sum of multiple terms). Right now one can only access the overall loss of the model.
Motivation
Is your feature request related to a problem? Please describe.

At the moment I am working on a model that optimizes a sum of reconstruction loss, reward prediction loss, and a kl divergence term. For debugging purposes it would be nice to monitor how the individual losses evolve over time.
This logging can not be done by the model class on its own since it needs some information from the RL algorithm (e.g. the current iteration of the algorithm / number of samples drawn from the environment) for the logged values to be meaningful.
Pitch
Describe the solution you'd like

The simplest solution certainly is to just allow passing kwargs to ModelTrainer.train(), which are passed through to Model.update(). This would allow to pass some custom logging function / object that then logs values passed by the model implementation.
This is of course not the most elegant solution, but the kwargs could also be used for other purposes (e.g. passing some additional information to Model.update() if a model implementation requires this).
Describe alternatives you've considered

An alternative to this would be to let Model.update() return a dictionary of metrics in addition to the loss. This dictionary could then be returned by ModelTrainer.train() or it could be processed by the callback passed to the function.
This would of course cause breaking changes since the method signature of Model would need to be changed.
Are you willing to open a pull request? (See CONTRIBUTING)
Yes

Thanks for the request, @JanS97! I agree this would be a useful feature. While working on PlaNet I was thinking of a solution which is basically the second alternative you describe (but I haven't implemented yet). Namely, Model.update() now returns a dictionary of anything the user deems relevant (maybe as a second output), and then the callback takes care of the additional logging. I'd prefer to keep the model trainer code agnostic to the particular logger used by the user.
It's true that this is a breaking change, but hopefully the user impact is not so large, since update is mostly used by the model trainer. We could also add some temporary logic for the trainer to handle ouputs in the old format and emit a deprecation warning, while this becomes the official solution (which I have in mind for v0.2.0, when the PlaNet code is ready to merge).
Any thoughts on this?

I believe this is the best solution to the problem. However, I think we need to modify the functions Model.loss() and Model.eval_score() to return such a dictionary as well. In my case, the individual loss terms are calculated by Model.loss(). The default implementation of Model.update() should then just pass through the dictionary from Model.loss(). Having Model.eval_score() return a dictionary would allow to e.g. record the same metrics on evaluation data.
I agree that the ModelTrainer should be agnostic to the logger that is used. Using the callback to do the logging is a good solution here.
As you said, the impact of the breaking change should not be too large since the functions mentioned above should all be used only by ModelTrainer and Model itself. However, changing the signature of the callback function might also cause problems, so we should keep some temporary logic that deals with callback functions that do not have the extra argument for the dictionary.

Good point about the callback! OK, since this feature would be immediately useful for several people, I'll work on adding it next week in a separate branch. I can tag you in the pull request if you are interested in reviewing :)

Sure, let me know if I can help you with anything

Yes, I think this would be a very useful feature!

@JanS97 Following up on this, in case you didn't receive notifications about #109 (and if you'd like to take a look).

Thanks for implementing this so quickly. I have been a bit busy, so I have not looked at it yet. I'll have a look later today.


Sync local branch with main

@shruti25ratnam I don't know how it happened. But the main -> other branches merge doesn't need a PR.


[Not issue] Thank you - fantastic for counting CRISPR guides

Hi there,
Many thanks for this package. Wasn't sure where to leave a thank you note but this package is absolutely fantastic in our application where we have a library of 100k+ CRISPR guides that we have to count in a stream of millions of DNA sequencing reads. This package does it faster than the previous C program we used for the purpose and helps us stick to just Python code in our pipeline.
Best wishes,
Miika (AstraZeneca Functional Genomics Centre)

Thank you, what a great testimonial! I'm happy that our work appeared useful for your job. I'm happy Python survived, working with this language is pure joy.
If you don't mind, I'll quote your post in our documentation, it's so rewarding. :)
BTW I'm not familiar with genomics, could you please briefly describe the problem you solved? Or provide some pointer to the algorithm.

@mjafin I have a completely separate question: do you use https://github.com/samtools/samtools?

Thank you, what a great testimonial! I'm happy that our work appeared useful for your job. I'm happy Python survived, working with this language is pure joy.
If you don't mind, I'll quote your post in our documentation, it's so rewarding. :)
BTW I'm not familiar with genomics, could you please briefly describe the problem you solved? Or provide some pointer to the algorithm.

The problem we have is perhaps best illustrated in this figure https://www.sciencedirect.com/science/article/pii/S1044579X17302742#fig0015. In Fig 3A you see 3 "guides" as the purple, green and yellow wiggles. Each of these guides in a CRISPR experiment cuts a gene causing that gene to be knocked out (or knocked in).
Functional Genomics is about knocking out "all" (20k) genes, not just three, in one experiment and seeing how the knockout either kills cells, does nothing or causes growth. This helps us e.g. identify new gene targets that could preferentially kill cancer cells and leave normal cells alone. After the experiment is finished some of the guides are no longer in the population (green in Fig3A) because the cells died, while others (purple, yellow) can still be observed where there was no effect to the gene cutting. The guides can be sequenced using a DNA sequencer and then the Aho-Corasick algorithm applied to count the presence or absence of the 20k+ different guides in the sequencing data. Does this help?

@mjafin I have a completely separate question: do you use https://github.com/samtools/samtools?

Definitely, it's one of the standard tools of sequence analysis in a slightly different context. In our specific CRISPR application we're not terribly interested in the sequencing data itself as we're merely counting tags. However, in most sequencing applications where the sequence itself needs to be analysed for modifications and such samtools is part of the standard toolbox.

@mjafin Thanks a lot for the explanation, that's a really cool application of Aho-Corasick.
I have a little research project related to speeding up one function of samtools, could you please contact me via email<EMAIL_ADDRESS>or linkedin?

Sounds good, pinged you on LinkedIn

@mjafin I added your quote to the readme ... See https://github.com/WojciechMula/pyahocorasick/pull/160/commits/faf82874192c519f237dd2e4b89049610a4c67eb I hope this is OK, otherwise please advise what would work best!
Thank you again.


feat(panel): Step to assign customer owner when creating a new customer

(*) edited description about the creation of a new customer
Concerns CU-90w1jm

Task linked: CU-90w1jm Set an explicit customer owner when creating a customer in the Administration area

Task linked: CU-90w1jm Set an explicit customer owner when creating a customer in the Administration area


ci: Don't use secrets.CODECOV_TOKEN anymore

This is a public repo and it doesn't need to use a secret token
anymore. In addition after the repository rename CodeCov got
confused and the token value is different too.

Coverage report for this PR is at https://codecov.io/gh/gluwa/creditcoin/tree/c8df1fae2e81e08bc6b91d3765c95c1759076bba


MediaReview download: add "translation" mapping of Schema speak to human speak

Previously, we had worked to translate the mediaAuthenticityCategory from the Schema to the language we originally used for the ratings (see issue 526.)
We did this for the media detail page on Vault, and want to apply the same mapping / translation to the Insights downloads.
So, as before:

DecontextualizedContent -> Missing Context
EditedOrCroppedContent -> Edited or Cropped
OriginalMediaContent -> Original
SatireOrParodyContent -> Satire or Parody
StagedContent -> Staged
TransformedContent -> Transformed

Done, with an added step of alphabetizing them when there are multiple; kudos


Fix the symbol of CHF

According to https://en.wikipedia.org/wiki/Swiss_franc
the symbol of CHF should be Fr

cc @smirzaei

Thanks for the PR but it looks like CHF is more popular though...
https://www.xe.com/symbols.php
Also the built-in Intl API also return CHF
new Intl.NumberFormat('en-US', { style: 'currency', currency: 'CHF' }).format(10000)
"CHF100,000,000.00"
new Intl.NumberFormat('de-CH', { style: 'currency', currency: 'CHF' }).format(10000)
"CHF 100’000’000.00"

I'll merge this but if anyone is against this change let me know.


Apply post-config tweaks for make CRC target

Apply the post-config CRC commands replicated from OCP Prow CI: https://github.com/openshift/release/pull/34536

recheck

PTAL

Closed it as ci-framework already covers this https://github.com/openstack-k8s-operators/ci-framework/pull/327
And we don't need to have it in both places, likely


fix: automatically reconnect when only is authorized client

Proposed Changes
for #776
Behavior before change:
(wallet state: disconnect) -> connect on stakes.social site -> (state: connected)
  -> reload browser -> (state: connected)
    -> disconnect on metamask dialog -> reload (state: disconnect) -> displayed wallet connect dialog

Behavior after change:
(wallet state: disconnect) -> connect on stakes.social site -> (state: connected)
  -> reload browser -> (state: connected)
    -> disconnect on metamask dialog -> reload (state: disconnect) -> not displayed wallet connect dialog

Implementation

It's perfect! Thank you for the PR!


FancyZones doesn't seem to save the layout after reboot

Microsoft PowerToys version
0.45.0
Running as admin

[X] Yes

Area(s) with issue?
FancyZones
Steps to reproduce
After I reboot my zones go back to some default. I have 3x monitors and I split all of them into 2x zones, but after reboot they all go into 3x zones, as they all snap to this priority grid:

✔ Expected Behavior
Keep the settings, with each monitor having 2x zones.
❌ Actual Behavior
Priority grid with 3x zones is applied for all monitors.
Other Software
No response

Seems like #13069 to me.

yes seems like it, will close this one then


make sure dealbot doesn't run out of disk space on storage deals

should delete the generate car file that lotus client import was called on
should try to help the lotus client clean up its imported copy after the deal as well

fixed by #219


[Bug Report] Redirected to /api/admin/thumbnail_progress when docker container is restarted while on admin page

Describe the bug
As discussed in #265:
"When you visit any page without a valid auth token, Mango redirects you to the login page, and after a successful login you will be redirected back to the page you requested. In your case, you were still on the admin page when the container restarted, and the browser was still sending requests to the progress endpoint. So when the container came back online you were sent to the login page and then redirected to the page you last requested, which happened to be the JSON API."
To Reproduce
Steps to reproduce the behavior:

Go to the Admin page
Restart the docker container
Log in

Expected behavior
Sent to homepage or admin page
Environment (please complete the following information):

OS: Unraid
Browser: Firefox
Mango Version: 0.24.0

Docker
Default values, other than:

Map /Manga in container to /mnt/user/manga/ in host
Map /root/.config/mango in container to /mnt/user/appdata/Mango/Config in host
Map /root/mango in container to /mnt/user/appdata/Mango/Appdata in host

Additional context
It may be best to redirect to the home page after logging in, generally speaking, as otherwise if a container is stopped, then the files are modified, when container is started again the client could experience an error.
Example would be the client is reading a manga, the container is stopped, the manga is deleted, then the container is resumed.
This bug is very minor with minimal user impact.

This is not a bug but a design choice. In most cases this is a very useful feature - I can just reload the page, log in, and then continue from where I was. The situations you described and encountered in #265 are relatively rare so I don't really want to sacrifice this feature.

Perfectly understandable, it's a rare circumstance and has minimal impact.


mysql-connector-cpp[jdbc] 64-windows-static

Installing the mysql-connector-cpp[jdbc] will create the output library, not on the root "..\installed\x64-windows-static\lib" but under a subfolder.
Also it will label the .lib as mysqlcppconn8-static-mt-mt.lib instead of the usual mysqlcppconn-static.lib  (jdbc legacy).
This means that when trying to link you will get errors, to fix the copy of the .lib to the root lib folder must be done manually.

OS: w11
Compiler: vs2019/22

Steps to reproduce the behavior:
vcpkg install mysql-connector-cpp[jdbc]:x64-windows-static
Regards.

@jfnaugusto, Thanks for posting this issue, Regarding your first question, you think that the lib location exported by mysql-connector-cpp[jdbc] after installation is not under "..\installed\x64-windows-static\lib" but in a subdirectory? However, after installation, I found that it is indeed under "..\installed\x64-windows-static\lib"

Hi,
That lib is for the mysql-connector-cpp:x64-windows-static, and not for the mysql-connector-cpp[jdbc]:x64-windows-static (legacy one).

The later one get's installed in the vs14 folder.
That's also a reason why I think they should keep the "original" names to avoid this type of confusion.
mysqlcppconn8-static-mt.lib -> mysqlcppconn8-static.lib
mysqlcppconn8-static-mt-mt.lib -> mysqlcppconn-static.lib
Thanks.

I am experiencing the same issue, but it only occurs with the static library. Is there any prediction or timeline for a fix?

I guess port maintenance wasn't careful enough with regard to the jdbc feature.

The jdbc feature doesn't use the same lib name patching as the main lib.
A serious problem for vcpkg: The connector-jdbc lib/target is created as a convenience lib viamerge_libraries(connector-jdbc jdbc)

with# merge_libraries()
#   Merge several static libraries into single static or shared library.
#   Includes all transitive dependencies of the libraries being merged.

This duplicates at least the main lib symbols. The resulting redundancy is not desired - at least not for files which go directly to /lib.
So for the jdbc feature in vcpkg, the connector-jdbc lib must be either created without merging, or the jdbc-enabled lib should replace the original lib, or the jdbc-enabled lib has to be put into subdir (lib/manual-link).

I'm currently working with CMake in Visual Studio (MySQL), and my setup is fully updated, including Vcpkg in manifest mode. However, I consistently encounter a specific error when attempting to build the static version of my project. The dynamic build, on the other hand, proceeds without any issues. Could this be related to how the static libraries are configured or a particular dependency that behaves differently in static context?

Could this be related to how the static libraries are configured or a particular dependency that behaves differently in static context?

YES.
Some things are generally different with static library linkage:

There are transitive link lib requirements (unless using large "convenience libs"))
On Windows, package often different lib names due to conflict between static lib and import lib.

In vcpkg, we also see a inconsistent quality of ports and patches: some errors are not visible until libraries are actually used (missing link libs, wrong runtime lib), so they may go unnoticed by CI and maintainers.

It seems to be linked to this issue as well? #37407

I have no issues with the building of the jdbc static library, the only issue is that you have to manually copy the .lib to the root, to prevent linking errors.
The 37407 fixed that for the non jdbc lib, nevertheless I think that the libs should keep their orignal names.
mysqlcppconn8-static-mt.lib -> mysqlcppconn8-static.lib
mysqlcppconn8-static-mt-mt.lib -> mysqlcppconn-static.lib
Also imo there is no need to add the runtime to the name of the .libs (mt, etc.), since the triplets already creates folders for different runtimes.

It seems to be linked to this issue as well? #37407

the only issue is that you have to manually copy the .lib to the root, to prevent linking errors.

This issue should not exist, and it is a result of how this port builds libs. It needs reasonable modifications. Basically, there is no need to have two libs which are mostly identical. If the user asks for jdbc, the lib without jdbc should be replaced IMO.
Naming should be reviewed, too. -mt comes from upstream IIUC, and vcpkg mostly follows upstream. Except for harmonizing static and shared.
https://learn.microsoft.com/en-us/vcpkg/contributing/maintainer-guide#do-not-rename-binaries-outside-the-names-given-by-upstream

This can be closed, the latest version fixes the naming and the placement.
Thanks


Validate parameters for strict functions and non simple param lists

For strict mode functions we should not allow strict keywords or
eval/arguments as binding name in the formal parameters.
For non simple parameter lists (default, rest and destructuring) as
well as strict function we do not allow duplicate binding names.

@johnjbarton PTAL

@barkinet

LGTM, another bug found ;-)


Adding a new label to the warehouse

You need to add this label to the warehouse, pay attention to the following when adding labels.
Label name: waiting topic
Color: #ffffff
The name and color will be like this.

Added label.


Cannot restore if storage account in different resource group

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Related command
az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --restore-mode OriginalLocation
    --storage-account mystorageaccount \
    --rp-name myRecoveryPointName

Describe the bug
Command succeeds when the storage account is in the same resource group as the recovery service vault.
However, the command fails when the storage account is in a different resource group.
To Reproduce

Have a recovery service vault in a resource group A
Create a storage account in a resource group B (different than the one for the recovery service vault)
Execute the command above (by replacing with the correct values)

Expected behavior
Command should restores disks even when storage account is in a different resource group.
Environment summary

azure-cli                         2.39.0

core                              2.39.0
telemetry                          1.0.8

Extensions:
account                            0.2.1

Dependencies:
msal                            1.18.0b1
azure-mgmt-resource             21.1.0b1

Python (Darwin) 3.9.13
[Clang 13.1.6 (clang-13<IP_ADDRESS>)]

route to CXP team

@ynden Thanks for reaching out to us and reporting this issue. We are looking into this issue and we will provide an update.

@ynden I see that you have created the above PR to address this and it is currently under review.


TDWeb usage docs?

tdlib 1.4.0 ships with TDWeb lib, any usage docs available?

What exactly do you need beyond available in https://www.npmjs.com/package/tdweb?

Can TDWeb be used within node.js environment?
If so, only with native ES modules, or CommonJS is also available

Ok, now I see that it's supposed to be used with webpack inside browser environment.

tdweb is for web, browsers only.
In Node.js you could use TDLib directly. We have now 7 Node.js wrappers in the examples.

Thanks a lot, haven't seen those wrappers


No translations during fallback rendering (v2.0.2)

What version of this package are you using?
2.0.2
What operating system, Node.js, and npm version?
OS: Windows 10
Node.js: v18.14.0
npm: v9.4.2
What happened?
When router.isFallback === true translations don't seem to load and the translation key is output instead.
What did you expect to happen?
Translations working during fallback rendering. It works in the latest 1.x version.
Are you willing to submit a pull request to fix this bug?
No (would take too long)
--
Minimal example that works in v1.x but doesn't in v2.0.2:
import { useRouter } from 'next/router'
import useTranslation from 'next-translate/useTranslation'

const TestPage = () => {
    const { t } = useTranslation()
    const { isFallback } = useRouter()

    return <div>{isFallback ? t('someTranslationKey') : 'No fallback rendering' }</div>
}

Would you create a minimal repo that reproduces this issue? Thank you

Hi @aralroca,
Sorry for the long wait. I added a minimal example replicating the described bug at https://github.com/stpch/next-translate-bug.
Follow these steps to reproduce:

git clone https://github.com/stpch/next-translate-bug.git
npm i inside cloned directory
npm run dev
Open http://localhost:3000/foo in your browser

The page outputs a test translation with the key common:test as well as the fallback rendering flag and current URL parameter.
By repeatedly refreshing the page, you can briefly see the initial fallback rendering output as:
Translation: common:test
Fallback rendering: true
Page URL param:

Then the non-fallback rendering shows as:
Translation: This is a test translation
Fallback rendering: false
Page URL param: foo


Icon is cutting

Icon is cutting

ratingView = AARatingBar()
ratingView.translatesAutoresizingMaskIntoConstraints = false
ratingView.maxValue = 5
ratingView.color = UIColor(hexString: "#FFE500")!
contentContainer.addSubview(ratingView)

ratingView.snp.makeConstraints {
    $0.centerX.equalToSuperview()
    $0.top.equalToSuperview().offset(20)
    $0.height.equalTo(40)
    $0.width.equalToSuperview()
    $0.margins.equalTo(50)
}

The size of stars is having dynamic heights from the superview.
Pull the version 1.1 and make the adjustment from the property spaceOffset  like below:
ratingbar.spaceOffset = 1.2


add -k to curl in instructions

On some machines with old ssl(I think) you may get this:
curl: (35) error:0D0890AB:asn1 encoding routines:ASN1_verify:unknown message digest algorithm

Seems you need to fix your ssl.  Github ssl certs are valid, and adding -k would generally be unadvisable.


!help command to see docs

OK here is my first attempt. This works for the functionality, but the formatting isn't pretty yet.
    {
        name: '!help',
        description: 'Lists all available commands and their descriptions.',
        perform: async function (agent) {
            const commandList = actionsList.map(action => {
                return `${action.name}: ${action.description}`;
            }).join('\n');
            return `Here are the available commands:\n ${commandList}`;
        }
    },

I just added this at the end of src/agent/commands/actions.js

Final draft with some formatting to prettify the output.
{
    name: '!help',
    description: 'Lists all available commands and their descriptions.',
    perform: async function (agent) {
        const commandList = actionsList.map(action => {
            return `${action.name.padEnd(15)} - ${action.description}`; // Ensure consistent spacing
        }).join('\n');

        console.log(commandList);
        return `Available Commands:\n${commandList}`;
    }
}

Which will output this to the console:
Available Commands:
!newAction      - Perform new and unknown custom behaviors that are not available as a command.
!stop           - Force stop all actions and commands that are currently executing.
!stfu           - Stop all chatting and self-prompts but continue current action execution.
!restart        - Restart the agent process safely.
!clearChat      - Clear the current chat history.
!goToPlayer     - Navigates the bot to the specified player.
!followPlayer   - Follows the specified player from a certain distance.
!goToBlock      - Navigates the bot to the nearest specified block type.
!moveAway       - Moves the bot away from the current position by the specified distance.
!rememberHere   - Saves the current location with a given name.
!goToPlace      - Navigates the bot to a pre-saved location.
!givePlayer     - Gives the specified item to the given player.
!discard        - Discards the given items from the bot’s inventory.
!help           - Lists all available commands and their descriptions.

Do you want me to go through the Pull Request process?


chore(deps): update all non-major

This PR contains the following updates:

Package
Type
Update
Change

anyhow
dependencies
patch
1.0.75 -> 1.0.76

clap
dependencies
patch
4.4.10 -> 4.4.11

cockroachdb/cockroach

patch
v23.1.12 -> v23.1.13

fake
dependencies
patch
2.9.1 -> 2.9.2

futures (source)
dependencies
patch
0.3.29 -> 0.3.30

futures-util (source)
dev-dependencies
patch
0.3.29 -> 0.3.30

minify-html
dependencies
minor
0.11.1 -> 0.15.0

once_cell
dev-dependencies
minor
1.18.0 -> 1.19.0

once_cell
dependencies
minor
1.18.0 -> 1.19.0

pikav-client (source)
dependencies
patch
0.20.5 -> 0.20.7

rust-embed
dependencies
minor
8.0.0 -> 8.1.0

tokio (source)
dev-dependencies
minor
1.34.0 -> 1.35.1

tokio (source)
dependencies
minor
1.34.0 -> 1.35.1

twa-jwks (source)
dependencies
patch
1.2.6 -> 1.2.9

unic-langid
dependencies
patch
0.9.1 -> 0.9.4

Release Notes

dtolnay/anyhow (anyhow)
v1.0.76
Compare Source

Opt in to unsafe_op_in_unsafe_fn lint (#329)

clap-rs/clap (clap)
v4.4.11
Compare Source
Features

Add Command::mut_group

rust-lang/futures-rs (futures)
v0.3.30
Compare Source

Add {BiLock,SplitStream,SplitSink,ReadHalf,WriteHalf}::is_pair_of (#2797)
Fix panic in FuturesUnordered::clear (#2809)
Fix panic in AsyncBufReadExt::fill_buf (#2801, #2812)
Improve support for targets without atomic CAS (#2811)
Remove build scripts (#2811)

wilsonzlin/minify-html (minify-html)
v0.15.0
Compare Source

Add keep_input_type_text_attr option to keep type=text on <input> elements.
[Java] The Configuration class constructor has been made private to enforce the use of the builder. The constructor has a lot of params which can easily cause bugs due to ordering and confusion.

v0.14.0
Compare Source

Add new options to parse and preserve common templating syntax in content source code. NOTE: The parsing is "dumb" and merely looks for the next subsequence in the source code that matches the closing delimiter characters. This means that literal closing delimiter characters (e.g. strings) and nesting may cause parsing to be incorrect.

preserve_brace_template_syntax: When {{, {#, or {% are seen in content, all source code until the subsequent matching closing }}, #}, or %} respectively gets piped through untouched.

Templating engines: Pebble, Mustache, Django, Go, Jinja, Twix, Nunjucks, Handlebars, Liquid.

preserve_chevron_percent_template_syntax: When <% is seen in content, all source code until the subsequent matching closing %> gets piped through untouched.

Templating engines: Sailfish, JSP, EJS, ERB.

v0.13.3
Compare Source

Avoid downloading html-data JSON from network on build.

v0.13.2
Compare Source

[Java] Set up cross compilation for macOS and Linux ARM64 builds.

v0.13.1
Compare Source

[CLI] Add missing Cargo metadata.

v0.13.0
Compare Source

Use lightningcss instead of css-minify, which is better maintained.

BREAKING: The minify_css_level_* Cfg options no longer apply and have been removed.

[onepass] Implement Display and Error for Error and FriendlyError structs.

v0.12.0
Compare Source

Change CLI name to minhtml as it's a more concise command name and allows for cargo install minhtml.
Add keep_ssi_comments to preserve SSI comments.
[Ruby] BREAKING: The class method is now a global function, so call minify_html instead of MinifyHtml.minify. All else remains the same. This is due to migrating from Rutie (see 0.11.3).

This change was inadvertently released in patch version bumps from 0.11.3 to 0.11.5; these gems have been yanked.

v0.11.5
Compare Source

Omit Rust source files from Node.js package.

v0.11.4
Compare Source

Bump minify-js version.
Fix Node.js native package names.

v0.11.3
Compare Source

Fix detection of module type scripts.
Derive Clone for Cfg in minify-html.
Fix parsing of malformed closing tags.
Cross compile Python library for macOS ARM64.
Migrate to rb-sys and magnus for Ruby library, which adds support for up to Ruby 3.2 and more platforms.
Cross compile Node.js library for macOS ARM64.
Use optional dependencies instead of downloading from remote server for Node.js library.

v0.11.2
Compare Source

Build and release for Python 3.12.
Restructure project to use top-level Cargo workspace instead of separate isolated crates.
Extract out common Rust code to separate published shared crate instead of symlinking.
Port gen code to build.rs in common Rust library to avoid requiring Node.js in order to build, and to ensure code stays in sync.
Rename library folders to minify-html-* to better distinguish them from other assorted project code.

matklad/once_cell (once_cell)
v1.19.0
Compare Source

Use portable-atomic instead of atomic-polyfill, #251.

timayz/pikav (pikav-client)
v0.20.7
Compare Source
Bug Fixes

deps: update all non-major (#77) (1caa355)

v0.20.6
Compare Source
Bug Fixes

deps: update all non-major (#76) (f0a51bc)

pyros2097/rust-embed (rust-embed)
v8.1.0

Add created to file metadata. #225. Thanks to ngalaiko

tokio-rs/tokio (tokio)
v1.35.1: Tokio v1.35.1
Compare Source
1.35.1 (December 19, 2023)
This is a forward part of a change that was backported to 1.25.3.
Fixed

io: add budgeting to tokio::runtime::io::registration::async_io (#6221)

v1.35.0: Tokio v1.35.0
Compare Source
1.35.0 (December 8th, 2023)
Added

net: add Apple watchOS support (#6176)

Changed

io: drop the Sized requirements from AsyncReadExt.read_buf (#6169)
runtime: make Runtime unwind safe (#6189)
runtime: reduce the lock contention in task spawn (#6001)
tokio: update nix dependency to 0.27.1 (#6190)

Fixed

chore: make --cfg docsrs work without net feature (#6166)
chore: use relaxed load for unsync_load on miri (#6179)
runtime: handle missing context on wake (#6148)
taskdump: fix taskdump cargo config example (#6150)
taskdump: skip notified tasks during taskdumps (#6194)
tracing: avoid creating resource spans with current parent, use a None parent instead (#6107)
tracing: make task span explicit root (#6158)

Documented

io: flush in AsyncWriteExt examples (#6149)
runtime: document fairness guarantees and current behavior (#6145)
task: document cancel safety of LocalSet::run_until (#6147)

timayz/twa-jwks (twa-jwks)
v1.2.9
Compare Source
Bug Fixes

deps: update all non-major (#18) (1158f49)

v1.2.8
Compare Source
Bug Fixes

deps: update all non-major (#17) (93f9df9)

v1.2.7
Compare Source
Bug Fixes

deps: update all non-major (#16) (ddff572)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

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

GitHub release
v0.7.0

Your semantic-release bot :package::rocket:


Rename Paid Label to Permitted

The intent is to tag the issue (for filtering purposes) that a payment permit has already been generated for the issue. I'm honestly still not a fan of this approach at all but it seems that the team is skeptical about rate limit overhead. So for now we will leave this feature in.
We need to rename from Paid to Permitted because Paid is misleading.
          @Steveantor this `Paid` label is a feature that I'm not aware of. I disagree with this approach because @rndquu already implemented cross referencing permits with etherescan transactions to actually verify that the payment has been made. I presume that you are simply adding the label "Paid" when it writes the permit which is misleading, because it doesn't actually check that the payment was made.

Originally posted by @pavlovcik in https://github.com/ubiquity/bounty-bot/issues/158#issuecomment-1502911861

Permit Authorized is too verbose, it's Paid in the sense that we've generated the permit aka Paid,
now it's the bounty hunter's responsibility to claim those when is up to them.

/assign

/assign

It was still on the discussion

It was still on the discussion

The conclusion I came to is simply renaming Paid to Permitted !

we can use "Paid" the same way and "Claimed" when the hunter gets his money


GpuFilteredPartition has a Heisenbug on String data and fails when all testcases are executed

But when I run GpuFiltredPartition test cases alone, they pass.

The problem was that string data needed special treatment because they are represented as arrays of chars. Also, one character in java is two bytes but in C/OpenCL it is only one byte.


Malfunction with the Download page on OpenSSL.org

(Not sure if this is where this should go, but anyways...)
I cannot see any of the downloads on OpenSSL.org, and trying to connect to the FTP server fails with a 425 Could Not Create Connection error.
I am using Firefox whatever-the-latest-stable-is.
A screenshot is attached.

It should all be fixed now. Sorry for the inconvenience.

It works now. Thanks.


重做N6英雄池

[ ] 由固定阵容改为从胜率较高的英雄中筛选
[ ] 添加AI相关的逻辑从lua改为ts

    {"heroName":"npc_dota_hero_necrolyte","win":280,"total":908,"winrate":0.30837004405286345,"pickrate":0.02308787632221318},
    {"heroName":"npc_dota_hero_dragon_knight","win":333,"total":1137,"winrate":0.2928759894459103,"pickrate":0.028910699755899105},
    {"heroName":"npc_dota_hero_spectre","win":330,"total":1133,"winrate":0.2912621359223301,"pickrate":0.028808991049633848},
    {"heroName":"npc_dota_hero_omniknight","win":330,"total":1151,"winrate":0.2867072111207645,"pickrate":0.029266680227827503},
    {"heroName":"npc_dota_hero_abaddon","win":398,"total":1394,"winrate":0.2855093256814921,"pickrate":0.03544548413344182},
    {"heroName":"npc_dota_hero_sniper","win":269,"total":950,"winrate":0.2831578947368421,"pickrate":0.024155817737998374},
    {"heroName":"npc_dota_hero_zuus","win":269,"total":986,"winrate":0.27281947261663286,"pickrate":0.02507119609438568},
    {"heroName":"npc_dota_hero_medusa","win":261,"total":957,"winrate":0.2727272727272727,"pickrate":0.024333807973962573},
    {"heroName":"npc_dota_hero_viper","win":255,"total":935,"winrate":0.2727272727272727,"pickrate":0.02377441008950366},
    {"heroName":"npc_dota_hero_nevermore","win":248,"total":1000,"winrate":0.248,"pickrate":0.025427176566314078},
    {"heroName":"npc_dota_hero_oracle","win":175,"total":723,"winrate":0.24204702627939143,"pickrate":0.01838384865744508},
    {"heroName":"npc_dota_hero_shadow_shaman","win":173,"total":720,"winrate":0.24027777777777778,"pickrate":0.018307567127746133},
    {"heroName":"npc_dota_hero_tinker","win":235,"total":1023,"winrate":0.22971652003910067,"pickrate":0.026012001627339302},
    {"heroName":"npc_dota_hero_luna","win":199,"total":868,"winrate":0.22926267281105991,"pickrate":0.02207078925956062},
    {"heroName":"npc_dota_hero_witch_doctor","win":173,"total":760,"winrate":0.22763157894736843,"pickrate":0.019324654190398697},
    {"heroName":"npc_dota_hero_drow_ranger","win":197,"total":873,"winrate":0.2256586483390607,"pickrate":0.02219792514239219},
    {"heroName":"npc_dota_hero_bristleback","win":212,"total":944,"winrate":0.2245762711864407,"pickrate":0.024003254678600486},
    {"heroName":"npc_dota_hero_riki","win":173,"total":777,"winrate":0.22265122265122264,"pickrate":0.019756916192026037},
    {"heroName":"npc_dota_hero_dazzle","win":188,"total":845,"winrate":0.22248520710059172,"pickrate":0.021485964198535396},
    {"heroName":"npc_dota_hero_earthshaker","win":184,"total":830,"winrate":0.2216867469879518,"pickrate":0.021104556550040683},
    {"heroName":"npc_dota_hero_phantom_assassin","win":198,"total":912,"winrate":0.21710526315789475,"pickrate":0.023189585028478437},
    {"heroName":"npc_dota_hero_bounty_hunter","win":180,"total":841,"winrate":0.2140309155766944,"pickrate":0.02138425549227014},
    {"heroName":"npc_dota_hero_death_prophet","win":158,"total":742,"winrate":0.21293800539083557,"pickrate":0.018866965012205045},
    {"heroName":"npc_dota_hero_axe","win":216,"total":1015,"winrate":0.21280788177339902,"pickrate":0.025808584214808788},

    {"heroName":"npc_dota_hero_lion","win":156,"total":735,"winrate":0.21224489795918366,"pickrate":0.018688974776240846},
    {"heroName":"npc_dota_hero_sand_king","win":192,"total":917,"winrate":0.2093784078516903,"pickrate":0.02331672091131001},
    {"heroName":"npc_dota_hero_sven","win":177,"total":856,"winrate":0.20677570093457945,"pickrate":0.02176566314076485},
    {"heroName":"npc_dota_hero_vengefulspirit","win":177,"total":863,"winrate":0.20509849362688296,"pickrate":0.021943653376729048},
    {"heroName":"npc_dota_hero_bloodseeker","win":175,"total":865,"winrate":0.2023121387283237,"pickrate":0.021994507729861675},
    {"heroName":"npc_dota_hero_bane","win":176,"total":870,"winrate":0.20229885057471264,"pickrate":0.022121643612693247},
    {"heroName":"npc_dota_hero_warlock","win":195,"total":978,"winrate":0.19938650306748465,"pickrate":0.024867778681855166},
    {"heroName":"npc_dota_hero_kunkka","win":162,"total":820,"winrate":0.1975609756097561,"pickrate":0.020850284784377542},
    {"heroName":"npc_dota_hero_meepo","win":182,"total":925,"winrate":0.19675675675675675,"pickrate":0.02352013832384052},
    {"heroName":"npc_dota_hero_chaos_knight","win":161,"total":825,"winrate":0.19515151515151516,"pickrate":0.020977420667209114},
    {"heroName":"npc_dota_hero_skeleton_king","win":145,"total":750,"winrate":0.19333333333333333,"pickrate":0.019070382424735556},
    {"heroName":"npc_dota_hero_lich","win":126,"total":660,"winrate":0.19090909090909092,"pickrate":0.01678193653376729},
    {"heroName":"npc_dota_hero_tiny","win":166,"total":881,"winrate":0.188422247446084,"pickrate":0.022401342554922703},
    {"heroName":"npc_dota_hero_lina","win":119,"total":632,"winrate":0.18829113924050633,"pickrate":0.016069975589910496},
    {"heroName":"npc_dota_hero_ogre_magi","win":149,"total":793,"winrate":0.18789407313997478,"pickrate":0.02016375101708706},
    {"heroName":"npc_dota_hero_juggernaut","win":142,"total":760,"winrate":0.1868421052631579,"pickrate":0.019324654190398697},
    {"heroName":"npc_dota_hero_jakiro","win":133,"total":719,"winrate":0.18497913769123783,"pickrate":0.018282139951179822},
    {"heroName":"npc_dota_hero_skywrath_mage","win":123,"total":669,"winrate":0.18385650224215247,"pickrate":0.017010781122864117},
    {"heroName":"npc_dota_hero_pudge","win":140,"total":776,"winrate":0.18041237113402062,"pickrate":0.01973148901545972},
    {"heroName":"npc_dota_hero_crystal_maiden","win":131,"total":733,"winrate":0.17871759890859482,"pickrate":0.01863812042310822},
    {"heroName":"npc_dota_hero_windrunner","win":153,"total":877,"winrate":0.17445838084378562,"pickrate":0.022299633848657446}

v3.10
{"heroName":"npc_dota_hero_necrolyte","win":180,"total":568,"winrate":0.31690140845070425,"pickrate":0.025190704275323755},{"heroName":"npc_dota_hero_viper","win":171,"total":555,"winrate":0.3081081081081081,"pickrate":0.02461415646620543},{"heroName":"npc_dota_hero_dragon_knight","win":211,"total":693,"winrate":0.30447330447330445,"pickrate":0.030734433209153804},{"heroName":"npc_dota_hero_abaddon","win":239,"total":801,"winrate":0.2983770287141074,"pickrate":0.035524215007982966},{"heroName":"npc_dota_hero_omniknight","win":194,"total":654,"winrate":0.2966360856269113,"pickrate":0.02900478978179883},{"heroName":"npc_dota_hero_spectre","win":199,"total":680,"winrate":0.2926470588235294,"pickrate":0.03015788540003548},{"heroName":"npc_dota_hero_zuus","win":162,"total":570,"winrate":0.28421052631578947,"pickrate":0.025279403938265034},{"heroName":"npc_dota_hero_bristleback","win":160,"total":566,"winrate":0.2826855123674912,"pickrate":0.025102004612382472},{"heroName":"npc_dota_hero_shadow_shaman","win":112,"total":404,"winrate":0.27722772277227725,"pickrate":0.017917331914138725},{"heroName":"npc_dota_hero_medusa","win":153,"total":592,"winrate":0.25844594594594594,"pickrate":0.026255100230619124},{"heroName":"npc_dota_hero_sniper","win":134,"total":522,"winrate":0.2567049808429119,"pickrate":0.023150612027674294},{"heroName":"npc_dota_hero_drow_ranger","win":119,"total":474,"winrate":0.2510548523206751,"pickrate":0.021021820117083555},{"heroName":"npc_dota_hero_dazzle","win":113,"total":451,"winrate":0.25055432372505543,"pickrate":0.020001773993258826},{"heroName":"npc_dota_hero_bloodseeker","win":126,"total":516,"winrate":0.2441860465116279,"pickrate":0.022884513038850453},{"heroName":"npc_dota_hero_lina","win":76,"total":318,"winrate":0.2389937106918239,"pickrate":0.014103246407663651},{"heroName":"npc_dota_hero_ogre_magi","win":112,"total":471,"winrate":0.23779193205944799,"pickrate":0.020888770622671634},{"heroName":"npc_dota_hero_nevermore","win":141,"total":595,"winrate":0.23697478991596638,"pickrate":0.026388149725031045},{"heroName":"npc_dota_hero_phantom_assassin","win":139,"total":590,"winrate":0.23559322033898306,"pickrate":0.02616640056767784},{"heroName":"npc_dota_hero_bounty_hunter","win":112,"total":485,"winrate":0.2309278350515464,"pickrate":0.0215096682632606},{"heroName":"npc_dota_hero_earthshaker","win":109,"total":475,"winrate":0.2294736842105263,"pickrate":0.021066169948554196},{"heroName":"npc_dota_hero_oracle","win":93,"total":414,"winrate":0.2246376811594203,"pickrate":0.018360830228845132},{"heroName":"npc_dota_hero_tiny","win":115,"total":512,"winrate":0.224609375,"pickrate":0.02270711371296789},{"heroName":"npc_dota_hero_death_prophet","win":98,"total":442,"winrate":0.22171945701357465,"pickrate":0.01960262551002306},{"heroName":"npc_dota_hero_axe","win":130,"total":590,"winrate":0.22033898305084745,"pickrate":0.02616640056767784},{"heroName":"npc_dota_hero_riki","win":96,"total":443,"winrate":0.21670428893905191,"pickrate":0.019646975341493702},{"heroName":"npc_dota_hero_pudge","win":99,"total":459,"winrate":0.21568627450980393,"pickrate":0.020356572645023947},{"heroName":"npc_dota_hero_sand_king","win":102,"total":474,"winrate":0.21518987341772153,"pickrate":0.021021820117083555},{"heroName":"npc_dota_hero_sven","win":100,"total":468,"winrate":0.21367521367521367,"pickrate":0.020755721128259713},{"heroName":"npc_dota_hero_vengefulspirit","win":102,"total":480,"winrate":0.2125,"pickrate":0.021287919105907396},{"heroName":"npc_dota_hero_kunkka","win":91,"total":432,"winrate":0.21064814814814814,"pickrate":0.019159127195316657},{"heroName":"npc_dota_hero_witch_doctor","win":88,"total":419,"winrate":0.2100238663484487,"pickrate":0.018582579386198332},{"heroName":"npc_dota_hero_warlock","win":107,"total":520,"winrate":0.20576923076923076,"pickrate":0.023061912364733015},{"heroName":"npc_dota_hero_skywrath_mage","win":87,"total":425,"winrate":0.20470588235294118,"pickrate":0.018848678375022174},{"heroName":"npc_dota_hero_luna","win":103,"total":508,"winrate":0.20275590551181102,"pickrate":0.02252971438708533},{"heroName":"npc_dota_hero_lion","win":85,"total":425,"winrate":0.2,"pickrate":0.018848678375022174},{"heroName":"npc_dota_hero_skeleton_king","win":82,"total":414,"winrate":0.19806763285024154,"pickrate":0.018360830228845132},{"heroName":"npc_dota_hero_juggernaut","win":80,"total":404,"winrate":0.19801980198019803,"pickrate":0.017917331914138725},{"heroName":"npc_dota_hero_lich","win":72,"total":365,"winrate":0.19726027397260273,"pickrate":0.01618768848678375},{"heroName":"npc_dota_hero_bane","win":100,"total":509,"winrate":0.19646365422396855,"pickrate":0.02257406421855597},{"heroName":"npc_dota_hero_tinker","win":118,"total":602,"winrate":0.19601328903654486,"pickrate":0.026698598545325528},{"heroName":"npc_dota_hero_jakiro","win":79,"total":410,"winrate":0.1926829268292683,"pickrate":0.01818343090296257},{"heroName":"npc_dota_hero_windrunner","win":92,"total":478,"winrate":0.19246861924686193,"pickrate":0.021199219442966117},{"heroName":"npc_dota_hero_crystal_maiden","win":81,"total":424,"winrate":0.19103773584905662,"pickrate":0.018804328543551536},{"heroName":"npc_dota_hero_meepo","win":93,"total":491,"winrate":0.1894093686354379,"pickrate":0.02177576725208444},{"heroName":"npc_dota_hero_chaos_knight","win":86,"total":460,"winrate":0.18695652173913044,"pickrate":0.02040092247649459},


Error logs while parsing batch DELETE responses

Hi, I use the cloud SDK to read/write data in SAP SuccessFactors.

Describe the bug
When executing an OData DELETE within a $batch request the cloud SDK outputs a log message about failure in response parsing.
{
  "message": "Could not parse response body. Invalid JSON. Original Error: SyntaxError: Unexpected token C in JSON at position 0",
  "level": "error",
  "custom_fields": {
    "package": "core",
    "messageContext": "batch-response-parser"
  },
  "logger": "sap-cloud-sdk-logger",
  "timestamp": "2021-10-25T13:36:14.538Z",
  "msg": "Could not parse response body. Invalid JSON. Original Error: SyntaxError: Unexpected token C in JSON at position 0",
  "written_ts":<PHONE_NUMBER>538,
  "written_at": "2021-10-25T13:36:14.538Z"
}

To Reproduce
Steps to reproduce the behavior:

Generate OData client for some SF OData Service
Use the cloud SDK to execute a DELETE within a batch request
See error below

Expected behavior
There should not be any error message. An OData DELETE request's response should not be parsed.
Used Versions:

node version via node -v: 12.22.7
npm version via npm -v: 6.14.15
SAP Cloud SDK version you used as dependency: 1.50.0

Code Examples
Request body:
--batch_c9713710-a62c-4b98-8db3-f7d696a3662c
Content-Type: multipart/mixed; boundary=changeset_605e191b-b487-4d26-b76b-963e10fc74a3

--changeset_605e191b-b487-4d26-b76b-963e10fc74a3
Content-Type: application/http
Content-Transfer-Encoding: binary

DELETE https://myserver.sapsf.eu:443/odata/v2/cust_entity/cust_entity(Id=1L) HTTP/1.1
Content-Type: application/json
Accept: application/json

--changeset_605e191b-b487-4d26-b76b-963e10fc74a3--
--batch_c9713710-a62c-4b98-8db3-f7d696a3662c--

Response body:
--batch_89b52e20-aee8-46c8-8fda-a74b4684191b
Content-Type: multipart/mixed; boundary=changeset_3ff17c33-5fcf-4b0a-ab17-84917374e43e

--changeset_3ff17c33-5fcf-4b0a-ab17-84917374e43e
Content-Type: application/http
Content-Transfer-Encoding: binary

HTTP/1.1 200 OK
DataServiceVersion: 1.0
Content-Length: 0

--changeset_3ff17c33-5fcf-4b0a-ab17-84917374e43e--

--batch_89b52e20-aee8-46c8-8fda-a74b4684191b--

Impact / Priority
I don't exactly know when release will be. There is no high urgency as this is just a log error.
Also there is a workaround: set level of logger batch-response-parser to off (although this level is not allowed but the typings, it is still a valid winston level).
Additional context
The fact that SuccessFactors responds to DELETE requests with code 200 matches the OData v2 specification:
https://www.odata.org/documentation/odata-version-2-0/operations/#:~:text=If the operation executed successfully servers should return 200 (OK) with no response body.

2.8 Deleting Entries
Entries are deleted by executing an HTTP DELETE request against a URI that points at the Entry. If the operation executed successfully servers should return 200 (OK) with no response body.

Thanks a lot!
Lennart

Hi @lennart-m ,
We have fixed the issue, you can try in the canary version. A new stable version should be released sometime soon.
I'll close the ticket for now. Please reopen if necessary.
Regards.


Builtin = Built In

Still Builtin is displayed

@vshymanskyy I didn't deploy. Waiting for more fixes.


Update broken pkg link and comment re: cloud CIDR ranges

Was poking around the repo to understand the new registry forwarder and hit upon a broken link in the archeio README.md.

/ok-to-test

/check-cla

Apologies; I did not realize I was not on the corp CLA. Ticket opened to resolve but I don't know the timeframe for everything to update. I can move this to draft or close and re-open when I get notified the CLA is resolved.

Thanks for filing and sorry about that! AFAIK we are required to have passing CLA for merges, but I think we can afford to wait for the CLA to be resolved for this one :-)
/lgtm
/approve

Thanks!


Build instructions for MOTION2NX

Hello,
Are there any build instructions available, on how to get this running?
I followed the same instructions that were present in the MOTION repository - mkdir build && cd build, followed by cmake .. and make.
The first two steps worked fine - here's the output of cmake ..:
-- The CXX compiler identification is GNU 11.1.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1f")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.69.0") found components: context fiber filesystem log log_setup program_options system thread
fmt was not found: add fmt subdirectory
flatbuffers was not found: add flatbuffers subdirectory
-- The C compiler identification is GNU 11.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Looking for strtof_l
-- Looking for strtof_l - found
-- Looking for strtoull_l
-- Looking for strtoull_l - found
-- Configuring done
-- Generating done
-- Build files have been written to: /home/gokul/MOTION2NX/build

However, make fails for some reason - here's the error log attached
I was able to build MOTION without any problems by installing the mentioned pre-requisites, so I thought the same would work here. Is there any dependency that I am missing?
Here are some of the relevant specs, please let me know if you need anything else:
gokul@cssl:~/MOTION2NX/build$ g++ --version
g++ (Ubuntu 11.1.0-1ubuntu1~20.04) 11.1.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

gokul@cssl:~/MOTION2NX/build$ cmake --version
cmake version 3.16.3

CMake suite maintained and supported by Kitware (kitware.com/cmake).
gokul@cssl:~/MOTION2NX/build$ make --version
GNU Make 4.2.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Hi,
thanks for your interest! I can't say off top of my head what is going wrong there, but writing proper build instructions are definitely on my TODO list.

Thanks for the prompt response -  I wasn't running Make with C++11 support before, post that I was able to move past that error. Once I changed my CXX and CXXFLAGS, I was able to get ride of most of the errors.
I was able to finally build, but I had to edit quite a bit - add a few headers files, change some header files to point to different locations etc. Boost 1.71 and 1.77 didn't work, but surprisingly 1.76 worked.
I built this on Ubuntu 20.04.

If you can, could you please let me know what version of Boost are you using where this works? I am having trouble with a particular header file - the code here uses #include<boost/json/to_string.hpp> whereas none of the modern releases of the JSON library have this header file in this location that you've mentioned.
Could you kindly confirm once?

I added build instructions to the README and fixed some things that I found when enabling C++20 and compiling the whole thing for the first time in a year with newer compiler and library versions.
Note that the stated version numbers refer to the versions that I used for testing. Hence, it might very well be the case that older versions of some libraries suffice.
Regarding Boost.JSON: I started using the library while it was still under review and not yet integrated into Boost. The API has changed a bit since then. This is fixed now.