Bluetooth: Mesh: Add Directed Forwarding Support

Add Directed Forwarding Support
https://github.com/zephyrproject-rtos/zephyr/issues/66480
PTS Case(not passed yet, other passed test case not list):
Directed Forwarding
Directed Forwarding Discovery

MESH/NODE/DF/DISC/BV-03-C
MESH/NODE/DF/DISC/BV-10-C

Directed Forwarding Establishment

MESH/NODE/DF/EST/BV-04-C

Directed Forwarding Echo

MESH/NODE/DF/ECHO/BI-04-C(LOOK LIKE PTS BUG)

Directed Forwarding Model
Directed Control State

MESH/SR/DFM/DFS/BV-04-C

Forwarding Table State

MESH/SR/DFM/FTS/BV-10-C
MESH/SR/DFM/FTS/BV-11-C

Directed Control Network Transmit State

MESH/SR/DFM/DCNTS/BV-01-C

@PavelVPV @alxelax Except for listed above for several PTS tests not passed, everything else passed, so look forward to your review now.

@LingaoM Can you please provide complete list of passing or not passing PTS tests?

@LingaoM Can you please provide complete list of passing or not passing PTS tests? PR description is not clear with respect to what has been passed and what did not.

MDF.zip

@LingaoM Can you please provide complete list of passing or not passing PTS tests? PR description is not clear with respect to what has been passed and what did not.

MDF.zip

Ok. So 126 out of 466 are PASS.

@LingaoM Can you please provide complete list of passing or not passing PTS tests? PR description is not clear with respect to what has been passed and what did not.

MDF.zip

Ok. So 126 out of 466 are PASS.

BTW: Only part of Mesh Directed Forwarding tested.

Hi @LingaoM, I've just started reviewing this PR.
Thanks for your great work. DFW is very complex feature. This is quite huge and might take a couple of days.
While I will be reviewing in details I'd like to emphasize the main architectural disadvantages that are seen already. Mesh-1.1 assumes that every subnetwork is operating with direct-forwarding algorithms independently. How do I understand that? It should be possible to have a scalable number of state machines as well as discovery and forwarding tables:
Figure 4.9: Path Origin State Machine states, events, and transitions

Could be all states encapsulated within the subnetwork structure?
Could we formalize the state machine that the specification suggests in a more readable manner? I meant Zephyr's State Machine Framework: https://docs.zephyrproject.org/latest/services/smf/index.html
Could we split dfw server functionality like server commands receiving and state updating over commands and state bindings and direct forwarding procedures like subclause <IP_ADDRESS> Directed forwarding procedures describes?
Currently dfw.c is enormously huge and this is very difficult to maintain in the future.
If you have any questions or topics for architecture discussion we could continue in Zephyr's Mesh Discord. I expect this PR will have a lot of comments to not pollute it with architecture discussion. :)

Mesh-1.1 assumes that every subnetwork is operating with direct-forwarding algorithms independently. How do I understand that? It should be possible to have a scalable number of state machines as well as discovery and forwarding tables:

My understanding of your mean is to design the discovery table and forwarding table into separate like pools, rather than using the same fixed number of configurations for each subnet.


Measure impact of binding table updates on data-plane performance

When the data plane is operating at full load, both in bump-in-the-wire, 550 bytes/packet workloads and on-a-stick IMIX workloads, we need to make sure that we can update the binding table without causing packet drops.  To this end we need to create a test rig consisting of three components: one, a lwaftr; two, a load generator that measures and records packet loss; three, a "snabb config" workload that uses the listen interface to add and remove entries to the binding table.  To allow the packet loss characteristics to be measured, we should make these changes to softwires that are not seeing any traffic in the test workload.  The target is 1000 changes/second without packet loss.
Ideally we should express this test as a hydra job.  Maybe we don't have to run this hydra job on every commit, but we should be able to run it manually.

Hi Andy,
One question please. I thought that snabb required a restart to use a modified binding-table.
Such restart, even as done very fast, was leading in the past to always drop packets when changing the binding-table.
Can you please let me know what changed to update lwaftr's binding-table on the fly with no drops for valid binding-entries?
Thanks
Christian

Christian Graf
Senior Consulting Engineer
Telephone +49 5651/336174
Mobile +49 175/2929 167
<EMAIL_ADDRESS>www.juniper.net
Juniper Networks GmbH
Sitz der Gesellschaft / Registered office: Oskar-Schlemmer-Str. 15, 80807 München
Registergericht / Commercial registry: München, HRB 205571
Geschäftsführer / Directors: Johannes Albers, Stephen Byrne, Terrance Floyd Spidell

This email contains material that is confidential. The content of this email is for the sole use of the intended recipient(s).
Any review or distribution by persons other than the intended recipient(s) without the express permission of Juniper Networks is strictly prohibited.
If you are not the intended recipient, please contact the sender and delete/destroy all copies of this email and any related attachments.
Juniper does not guarantee the accuracy or completeness of third party materials or information

From: Andy Wingo <notifications<EMAIL_ADDRESS>Reply-To: Igalia/snabb <reply<EMAIL_ADDRESS>Date: Freitag, 11. November 2016 11:59
To: Igalia/snabb <snabb<EMAIL_ADDRESS>Subject: [Igalia/snabb] Measure impact of binding table updates on data-plane performance (#573)
When the data plane is operating at full load, both in bump-in-the-wire, 550 bytes/packet workloads and on-a-stick IMIX workloads, we need to make sure that we can update the binding table without causing packet drops. To this end we need to create a test rig consisting of three components: one, a lwaftr; two, a load generator that measures and records packet loss; three, a "snabb config" workload that uses the listen interface to add and remove entries to the binding table. To allow the packet loss characteristics to be measured, we should make these changes to softwires that are not seeing any traffic in the test workload. The target is 1000 changes/second without packet loss.
Ideally we should express this test as a hydra job. Maybe we don't have to run this hydra job on every commit, but we should be able to run it manually.

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/Igalia/snabb/issues/573, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AU_G6jwNqpm6iN8Y3AXq3mDEdTBa4QdQks5q9EqDgaJpZM4Kvo_A.

Hi @chrgraf, this is a milestone bug for our use when planning future releases.  We will be adding support for changing the binding table without dropping packets.  Further details to come later.

Hi Andy,
Thanks for quick feedback! I got it.
Thanks
Christian

Christian Graf
Senior Consulting Engineer
Telephone +49 5651/336174
Mobile +49 175/2929 167
<EMAIL_ADDRESS>www.juniper.net
Juniper Networks GmbH
Sitz der Gesellschaft / Registered office: Oskar-Schlemmer-Str. 15, 80807 München
Registergericht / Commercial registry: München, HRB 205571
Geschäftsführer / Directors: Johannes Albers, Stephen Byrne, Terrance Floyd Spidell

This email contains material that is confidential. The content of this email is for the sole use of the intended recipient(s).
Any review or distribution by persons other than the intended recipient(s) without the express permission of Juniper Networks is strictly prohibited.
If you are not the intended recipient, please contact the sender and delete/destroy all copies of this email and any related attachments.
Juniper does not guarantee the accuracy or completeness of third party materials or information

From: Andy Wingo <notifications<EMAIL_ADDRESS>Reply-To: Igalia/snabb <reply<EMAIL_ADDRESS>Date: Freitag, 11. November 2016 13:16
To: Igalia/snabb <snabb<EMAIL_ADDRESS>Cc: Christian Graf <cgraf<EMAIL_ADDRESS>Mention <mention<EMAIL_ADDRESS>Subject: Re: [Igalia/snabb] Measure impact of binding table updates on data-plane performance (#573)
Hi @chrgrafhttps://github.com/chrgraf, this is a milestone bug for our use when planning future releases. We will be adding support for changing the binding table without dropping packets. Further details to come later.

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Igalia/snabb/issues/573#issuecomment-259945577, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AU_G6nqjIGdXaEG0i04IY-oo1r46GnRyks5q9FyhgaJpZM4Kvo_A.

To test this, you run a lwaftr.  Say it's running and named "lwaftr".  For this example:
sudo ./snabb lwaftr run --name lwaftr --reconfigurable --cpu 4 --conf program/lwaftr/tests/data/icmp_on_fail.conf --v4 03:00.0 --v6 03:00.1

Now run a loadtest:
sudo numactl -m 1 taskset -c 9 ./snabb lwaftr loadtest -D 5 --program=ramp_down -b 9.2e9 -s 1e5 program/lwaftr/tests/benchdata/ipv4-0550.pcap "NIC 0" "NIC 1" 83:00.0 program/lwaftr/tests/benchdata/ipv6-0550.pcap "NIC 1" "NIC 0" 83:00.1

Now we create a script of commands to add and remove softwires.  For example:
{"id":"add","verb":"add","path":"/softwire-config/binding-table/softwire",
 "value":"{ ipv4 <IP_ADDRESS>; psid 1; b4-ipv6 200:01:20:30:40:50:60:128; }"}
{"id":"remove","verb":"remove",
 "path":"/softwire-config/binding-table/softwire[ipv4=<IP_ADDRESS>][psid=1]"}

Copy that like 100 or 1000 times in a file (say commands.json).  Then pass it to "snabb config bench":
$ while sleep 1; do sudo ./snabb config bench lwaftr ../../commands4.json ; done
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Issued 378 commands in 0.23 seconds (1673.00 commands/s)
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Issued 378 commands in 0.22 seconds (1701.78 commands/s)
...

The "w" entries indicate where "snabb config bench" was writing a request and "r" indicates when it read a response.  It will write requests while there is room in the pipe to snabb config listen, which by default can fill up 64 KB on modern Linux systems.  Then it will read responses to buffered writes, then buffer some more writes, and so on.  As you can see the rate in this example is about 1700 commands/s.
Now check the loadtest results.  In my tests I see no drops at 1.75 MPPS FDX; I see some drops around 2 MPPS though.


refactor(c): implement new transport interface, incorporate new vault…

… interface

@robinbudd could you amend the commit message for eae854e0b5def8f89dfbe2b8ae079a5648a54279 to reflect that it only has the error code change .. or squash the two


Add example on fine-tuning for function calling

Hey @mlabonne
Great work on this repo!
Would be amazing if you would want to add an example of fine-tuning for function calling. This would gain a lot of traction due to devs wanting OSS alternatives to GPT.

Hi @homanp it's a great idea. I'm writing it down for a future article, thanks! :)

@mlabonne I would heavily suggest SFT-ing this newly released model by Nexusflow, which surpasses GPT-4 according to their evals.
If you want, I could work on this when I have time over the next few weeks.

@vikram71198 Very interesting, please let me know if you do it!

ohh


MERC-543 Update config.json to point to correct release notes url

Update the documentation_url in the config.json to point to
https://support.bigcommerce.com/articles/Public/Cornerstone-Theme-Manual
https://jira.bigcommerce.com/browse/MERC-543
ping @mcampa @sherrybc @mickr @hegrec

Test is failing for some reason but it is certainly unrelated to this PR so feel free to merge this. :+1:


Fix GATK container (add java ENV)

The variable name should be JAVA_OPTS. That's a widely accepted convention.

Added a statement: java $JAVA_OPTS -jar /path/to/jar.jar in the wrapper that will allow a user to specify any number of java options.  In concert with docker, this is achieved by using the -e flag.
Example:
docker run -e JAVA_OPTS=-Xmx15g computationalgenomicslab/gatk <parameters>


Use less aggressive timeouts for CLI tests

What was wrong?
Yesterday, I reduced timeouts for the CLI test in an attempt to reduce CI times. Turns out reducing from 40 to 20 seconds was a bit too aggressive and it introduced some flakiness.
How was it fixed?
Trying if we can live with 30 seconds
Cute Animal Picture

I'm going wildwest crazy and merge this without review to not slow other PRs down. Judge me later.

Evidently this is the top result for "I'm judging you" on the internet....


fix: do not disable fullTemplateTypeCheck when ES5 downleveling

I'm submitting a...
[x] Bug Fix
[ ] Feature
[ ] Other (Refactoring, Added tests, Documentation, ...)

Checklist

[x] Commit Messages follow the Conventional Commits pattern

A feature commit message is prefixed "feat:"
A bugfix commit message is prefixed "fix:"

[ ] Tests for the changes have been added

Description
In #826 the option was enabled in tsconfig.ngc.json and then in #812 the option was disabled again when downleveling to ES5. This then causes #822 to resurface again, which was supposedly fixed by #826.
No integration test has been added at this moment, I'm hoping this can get in during the RCs to get real world feedback if the function calls in decorator bugs are now actually fully resolved. With the changes in this PR applied to 3.0.0-rc4 I have been able to successfully build my project that was also suffering from this issue after upgrading from 2.4 to the 3.0 RC.
More Information
After some two hour debug session in the guts of Angular's compiler, I finally tracked down angular/angular#23609 to originate from this piece of code when reading the metadata of a library. As can be seen there, with certain conditions Angular rejects most of the class metadata such that function calls cannot be resolved, resulting in the error.
Following above condition we follow the code into summaryResolver.isLibraryFile to find that it calls into the compiler host to determine if the file not a source file that is the actual culprit. Here we find that skipTemplateCodegen and fullTemplateTypeCheck ultimately affect the decision to elide some of the metadata.
Does this PR introduce a breaking change?
[ ] Yes
[x] No

Very well explained!

Very well explained.


Docker.DotNet, X509, BasicAuth: Should be signed releases

In order for uses to include Docker.DotNet and other binaries in the GAC (for non .NET Core scenarios) they need to be signed.

Looking for feedback here:
I don't want to limit the communities ability to create privates and use them. Does anyone know the best practices for .NET signing binaries in the public? From what I can tell people include the Key.snk in the project and you can sign the binaries on your own if building privates. However this doesn't offer any protections of authenticity given the key is public if we use this same key for NuGet. For official releases to NuGet I would sign these with a private key known only to me. (Uh... Hit by a bus scenario anyone?)
The issue I see here is mostly that these two keys will never be the same and thus people who are making privates will be constantly switching between strong names of different keys. Are there any issues here other than requiring rebuild? Maybe that isn't even a problem since if you are using privates you are rebuilding anyways. Ideas?

@Jterry75 I would suggest you to ping @sergeybykov
He is the head of Orleans project and we sign Orleans public bits on every release. I know it is a costly process but he may be able to guide you with the internal MSFT process to get there.
As for public custom builds, anyone can tap in the build process using their preferable tool and sign the dll.


Support Flux instances with access to namespaces other than their own

Some questions and an issue

If running namespaces flux operators
Example:
flux-dev  for dev namespace
flux-staging for staging namespace
Is it recommended to run the operator in the same namespace as the applications or run them all in a main flux namespace?

When we enable a flux operator we get an error like this

secrets \"flux-git-dev-deploy\" is forbidden: User \"system:serviceaccount:flux:flux-dev\" cannot patch secrets in the namespace \"flux\": Unknown user \"system:serviceaccount:flux:flux-dev\"

We deployed the operator by doing kubectl apply -f on
https://github.com/justinbarrick/flux-operator/blob/master/deploy/flux-operator-namespaced.yaml

For question 1, I typically run the flux-operator in its own namespace and then each Flux would live in and control its own namespace.
So in your example, you would have a namespace called flux-dev with a Flux in it and a namespace called flux-staging with a Flux in it.
For 2, can you show me what the Flux you created was? Is the error from the flux-operator log?

Yes the error is from the log
And the yaml is as follows
apiVersion: flux.codesink.net/v1alpha1
kind: Flux
metadata:
  name: dev
  namespace: flux-dev
spec:
  gitUrl: git@github.com:xxxx/yyyy.git
  gitBranch: master
  args:
    k8s-namespace-whitelist: dev

Log
ts=2018-08-27T02:44:10.706021586Z caller=main.go:140 version=1.5.0
ts=2018-08-27T02:44:10.967775007Z caller=main.go:222 err="secrets \"flux-git-dev-deploy\" is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot patch secrets in the namespace \"flux-dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""

If I check
kubectl -n flux-dev get rolebindings.rbac.authorization.k8s.io

and
kubectl -n flux-dev get role

I see no results
Should there be something there?

Now it starts up but I see this issue
bash:flux tobias$ kubectl -n flux-dev get sa
NAME       SECRETS   AGE
default    1         52m
flux-dev   1         3m

ts=2018-08-27T03:34:56.334938543Z caller=kubernetes.go:391 component=cluster err="getting kind cronjob for namespace dev: cronjobs.batch is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot list cronjobs.batch in the namespace \"dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""
ts=2018-08-27T03:34:56.452467802Z caller=kubernetes.go:391 component=cluster err="getting kind daemonset for namespace dev: daemonsets.extensions is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot list daemonsets.extensions in the namespace \"dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""
ts=2018-08-27T03:34:56.578210837Z caller=kubernetes.go:391 component=cluster err="getting kind deployment for namespace dev: deployments.extensions is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot list deployments.extensions in the namespace \"dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""
ts=2018-08-27T03:34:56.693570307Z caller=kubernetes.go:391 component=cluster err="getting kind statefulset for namespace dev: statefulsets.apps is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot list statefulsets.apps in the namespace \"dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""
ts=2018-08-27T03:34:56.818267535Z caller=kubernetes.go:391 component=cluster err="getting kind fluxhelmrelease for namespace dev: fluxhelmreleases.helm.integrations.flux.weave.works is forbidden: User \"system:serviceaccount:flux-dev:flux-dev\" cannot list fluxhelmreleases.helm.integrations.flux.weave.works in the namespace \"dev\": Unknown user \"system:serviceaccount:flux-dev:flux-dev\""

You also need to fix the k8s-namespace-whitelist you set, from:
    k8s-namespace-whitelist: dev

To:
    k8s-namespace-whitelist: flux-dev

But won't that only allow flux to apply changes to flux-dev namespace.
The current setup is
Flux runs in flux-dev namespace and is supposed to apply changes to only dev namespace
Or should I change flux to run in same namespace as all other services for that env (dev in this case)?

Right now it only supports Fluxes that are either scoped to their own namespace (they are in the same namespace as the services they deploy) or scoped to the entire cluster. I would like for us to support Fluxes that deploy to a different namespace than they live in (#23 is related), so we can make this ticket a feature request for that.

ok
Thanks for the help and it is a great addition to flux

Sure!
Note: I'm not sure if there's a secure way to implement this for multitenant clusters. If I let you ask for a Flux in one namespace and flux-operator will create roles for it in a different namespace, there's not a good way to ensure that the creator of the Flux instance also has access to the namespace they want to deploy to. When we add it, it'll be non-default and the caveat will be documented, but I wouldn't hold out for it if you use flux-operator in a multitenant cluster.


Installation

Hi,
I've been following this tutorial http://newrelic-sphinx.com/installation.html
However, in point 2, when i do "sudo go get github.com/yunge/sphinx", i get the error "package github.com/yunge/sphinx: cannot download, $GOPATH not set. For more deta
ils see: go help gopath"
Any help will be appreciated, thanks!

export GOPATH=/home/your_user/go_path/
Sorry for the late reply, but this is not an issue with this plugin, but with your go environment.


Pipeline parameters not enabled error

We get "Pipeline parameters not enabled" error when pressing 'Run' on the build pipeline. This is after adding our parameter values to the top of our yaml file. Anyone know why that is?

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

ID: 6724abea-bbdc-bf66-ed5e-3214fa6c3e66
Version Independent ID: 4f8dab21-3f0e-da32-cc0e-1d85c13c0065
Content: Templates - Azure Pipelines
Content Source: docs/pipelines/process/templates.md
Product: devops
Technology: devops-cicd
GitHub Login: @juliakm
Microsoft Alias: jukullam

From what I discovered, you can only use parameters in YAML files if they are within templates. You're better off defining variables in the pipeline in the form of 'Parameters.name' if you copied the YAML output from a classic pipeline.

@davykinger Thank you for the feedback.
Unfortunately, since this is a documentation forum our support options are limited.
Please start an issue here for feedback from the product team.

I am having this same issue. Docs say its supported here...but it isn't https://docs.microsoft.com/en-us/azure/devops/pipelines/process/runtime-parameters?view=azure-devops

i've checked the preview features and I have almost everything turned on for the Org except Experimental Themes and Full access to Azure Pipelines for Stakeholders

Please refer to this open issue with the product team currently under investigation.

@msebolt Unless I am grossly misunderstanding that issue you sent...this isn't the same issue. My problem is that I can't define paramters within the parent azure-pipielines.yml file and have these basically as "Settable at Queue Time". I'm trying to following the example here https://docs.microsoft.com/en-us/azure/devops/pipelines/process/runtime-parameters?view=azure-devops#use-parameters-in-pipelines

You may be right that this may be a technical issue that needs to be resolved...but the docs need to reflect that this currently isn't supported uniformly across all tenants yet or whatever.

@rdbartram If this is a new issue I'll need to assign this to the author for further review.
Thank you for bringing this to our attention.

I found the same docs today while looking for a nice way to do a loop over several steps. I found two odd results (1) triggers seem to be ignored and pipeline is run automatically when I push (only since adding parameters) and (2) attempting manual run anyway there is error "Pipeline parameters not enabled".
I have played further and found that the bad trigger was actually generated because there were compile errors for my pipeline. Those errors happen to be from trying to use ${{ parameters.foo }} as recently documented. When there were no errors, there was no entry in the pipeline history. I then was able to add a sample parameters block to my pipeline so long as I didn't try to use any of it. This presumable compiles fine because I received no error. When I tried to manually run however I did not see a Run pipeline result similar to the documented example. The single parameter I added was nowhere to be found.
Perhaps the docs were published ahead of full rollout of support for this?

The feature is live now.


Layout bug caused by floating point rounding error

Report

[x] I have searched existing issues and this is not a duplicate

Issues and Steps to Reproduce

Layout multiple layers of views, and put a label as leaf node.
Run it in a 3x resolution screen, like iPhone X or one of the Plus models.

Expected Behavior
The text on the label should be displayed without problem
Actual Behavior
The text got truncated.

Link to Code
Example project to reproduce the issue https://github.com/leafduo/yoga-rounding

The problem was caused by the accumulation of floating point rounding error in complex layout. The view tree in the example has a height of 4, and causes floating point rounding errors to accumulate. In YGRoundValueToPixelGrid, the fractialvariable is 0.999877929 and is considered not a whole integer. In the end, the width of the label is one pixel short, causing the text truncation.
This issue is presented when pointScaleFactor is 3 (not 1 or 2), and perhaps it's because 1) 3 is bigger and will cause more error, and 2) multiply and division by 2 is pretty accurate because the binary nature of computer.
Using double instead of float to represent points, or raising the threshold in YGFloatsEqual will make the text fully displayed in the example, but not solve this problem completely. It will still exist in a more complex layout.
I think maybe we can store scaled value or use a real fraction representation?

I think this problem is the same as mine:
https://github.com/facebook/yoga/issues/738

I tried your code. I change all float -> double, fmodf -> fmod, then it works fine.

how about YGConfigSetPointScaleFactor(globalConfig, 0);?

@LeoSchleicher It appears so.

@linqingmo I've tried to set pointScaleFactor to 0, and the truncation will be solved. But will it cause view not align to pixel grid and become blurry?

@jmaurice-unity It's not related, #688 is about bug when rounding negative numbers, my coordinates are all positive.

I believe I am running into this issue as well. If I set the pointScaleFactor to 0, then widths are calculated correctly. If not, continuous updates lead to constant shrinking of elements. I have an example of this running here: https://codesandbox.io/s/qxnnm7272j

我尝试了一下，字符串后面加一个空格可以解决 😅
I tried it, and add a space after string. hhhh

// Adding epsilon value illuminates problems with converting values from
// double to float, and then rounding them to pixel grid in Yoga.
CGFloat epsilon = 0.001;
return (YGSize){
RCTYogaFloatFromCoreGraphicsFloat(size.width + epsilon),
RCTYogaFloatFromCoreGraphicsFloat(size.height + epsilon)
};
rn里面是这么用的
@leafduo


rultor test

@rultor merge

@rultor merge

@driver733 OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@driver733 Done! FYI, the full log is here (took me 3min)

Coverage remained the same at 73.659% when pulling 0e8ea03dd2ed68c9bc837b465874005793f961f5 on rultorTest into a85dddc16c77de3e3b80bcd70ef713a363611a3d on master.


multimodal large models support

Can this library support SFT and reinforcement learning for some multimodal large models, such as QianwenVL, which usually includes VIT？

Currently, SFT support VLM, see examples

How about DPO support for MLLM? I have some issues on modify it for latest trl


Support multiple workspaces

Is your feature request related to a problem? Please describe.
Our app allows users to connect to multiple networks that we operate. Each network has its own unique CIO workspace. Users are only actively connected to one network at a time, so we call CustomerIO.initialize() when they switch between networks. However, subsequent calls to CustomerIO.initialize() are ignored (an unexpected behavior that doesn't seem to be documented anywhere).
Describe the solution you'd like
We'd like to either have the option of having multiple CIO instances or have the ability to reconfigure by calling CustomerIO.initialize() any time we need to change configuration.
Describe alternatives you've considered
We see no other option than to fork the repo and implement the desired functionality ourselves.
Additional context

Currently, CustomerIO.initialize() is designed to be called only once per app session. Repeated calls to initialize are intentionally ignored, as the SDK architecture supports a single active instance for a single workspace.
Are you able to share a little more about your specific use case? Specifically are you able to share any more details about what a "network" is, and why each network requires a separate workspace even though they are using the same app. If you'd rather share privately you can send an email to<EMAIL_ADDRESS>

We close off feature requests on the public repo once we start tracking them internally. Please feel free to respond to this thread with more insights or requests.

Thanks. Followed up privately


Logout of ExAdmin

I don't if we can consider this an issue. I am unable to perform logout function from admin. I think users have to move to alternative pages to shutdown or cookies are cleared at browser shutdown.
I was wondering if anyone has an idea on how to enable coherence to log out from within ExAdmin. I have been attempting to customize the nav bar but the struct is a bit different. It would have been cool if I could embed my general app layout into ExAdmin.
(If I can help with any dev or feature implementation feel free to let me know. I am at a low level with elixir though so guidance would be required to get started. Once I am up running all should be well.)

Could be a problem with your implementation of the ExAdmin.Authentication protocol. Could also be a routing issue. What is the error?
Yes, I will be looking for some help fairly soon. Check out #333 to get a sense of the stuff I just started to work on. Once I get the new architecture sketched out, I'll be open to contributions from the community. Please feel free to comment on the issue if you have ideas.

Thanks for your input.


Added missing return type for get_user_delegation_key

Codecov Report

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

@@           Coverage Diff           @@
##           master     #605   +/-   ##
=======================================
  Coverage   86.94%   86.94%
=======================================
  Files          52       52
  Lines        4895     4895
  Branches      525      525
=======================================
  Hits         4256     4256
  Misses        469      469
  Partials      170      170

Impacted Files
Coverage Δ

...storage-blob/azure/storage/blob/baseblobservice.py
92.96% <ø> (ø)
:arrow_up:

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 329f121...6b1341d. Read the comment docs.


vacuum-card: init at 2.10.1

Adds vacuum-card Lovelace module for controlling robots.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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

[x] 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/)
25.05 Release Notes (or backporting 24.11 and 25.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.

Add a :+1: reaction to pull requests you find important.

@ofborg build home-assistant-custom-lovelace-modules.vacuum-card

The commit message needs to use the full attribute name.

@mweinelt Done.

@mweinelt Thanks, can you take a look at https://github.com/NixOS/nixpkgs/pull/356473 as well?


SWDEV-303745 - Add new path of clangrt lib

Change-Id: I3bfe28ac5c50884653187d733a466e661ff32f7d

Can confirm that projects using hip no longer build with rocm >= 5.0.0 (fine with 4.5.0)
For example, building rocm-5.0.2/hip/samples/2_Cookbook/12_cmake_hip_add_executable/:
> mkdir build && cd build
> cmake .. -DCMAKE_CXX_COMPILER=/opt/rocm-5.0.2/bin/amdclang++
...
-- Found HIP: 5.0.13601-ded05588
WARNING,Please remove obsolete HCC_OPTIONS from hip_add_executable()
-- hip::amdhip64 is SHARED_LIBRARY
-- Found hip::host at /opt/rocm-5.0.2/hip/lib/cmake/hip
-- Configuring done
-- Generating done
...
> make
...
[100%] Linking HIP executable MatrixTranspose
ld.lld: error: unable to find library -lCLANGRT_BUILTINS-NOTFOUND
clang-14: error: linker command failed with exit code 1 (use -v to see invocation)
...


Messages bigger than 65535 utf code points crash the server

common/Message uses DataOutputStream#writeUTF which throws an expiation if the string to write is longer than 65535 utf code points
https://github.com/mvndaemon/mvnd/blob/master/common/src/main/java/org/jboss/fuse/mvnd/common/Message.java#L302
I stumbled upon this while trying mvnd with Neo4j-OGM. It happens while our build triggers the Maven Java doc plugin.
I was able to reproduce it with the following test:
package com.example.mvndtest;

import java.io.IOException;

import org.junit.jupiter.api.Test;

class MvndTestApplicationTests {

	@Test
	void contextLoads() throws IOException {

		var stringToWrite = new StringBuilder();
		for (int i = 0; i < 65535 /* 65509 works on my machine */; ++i) {
			stringToWrite.append("a");
		}

		System.out.println(stringToWrite.toString());
	}
}

Having such an output somewhere in the build - doesn't matter via plugin or code - will crash the server.
I wasn't able to reproduce it with exec maven or ant run plugins and the reason is simple: Those plugins redirect sys out line by line. The java doc plugin however collects all the log from the javadoc binary and passes it directly to the maven log.
That's basically the same like I do in the example above.
I have attached a reproducer.
mvn clean package works nicely with a lot of useless output, mvnd clean package will end with:
[INFO] Running com.example.mvndtest.MvndTestApplicationTests
Exception in thread "main" org.jboss.fuse.mvnd.common.DaemonException$StaleAddressException: Could not receive a message from the daemon.
	at org.jboss.fuse.mvnd.client.DaemonClientConnection.receive(DaemonClientConnection.java:107)
	at org.jboss.fuse.mvnd.client.DefaultClient.execute(DefaultClient.java:198)
	at org.jboss.fuse.mvnd.client.DefaultClient.main(DefaultClient.java:72)
Caused by: java.io.IOException: No message received within 3000ms, daemon may have crashed
	at org.jboss.fuse.mvnd.client.DaemonClientConnection.receive(DaemonClientConnection.java:100)
	... 2 more

and attached logs.
Reproducer:
mvnd-test.zip
Logs:
logs.zip

@ppalaga I think the removal of the utf8  encode/decode methods is the cause, so maybe we should revert this commit https://github.com/mvndaemon/mvnd/commit/a71033cc940535739f6cf42c7da68e6e6be44f6e#diff-07780342186ffa696b0e9d532cb9e9cf11f62cae11d2980e44c7be22c0619892L332-L419.

Interesting! Thanks for the report, @michael-simons!

Yeah, let me have a look what we can do about this.

UTF varies in length between 2 and 4. The 💩 emoji for example is a 4 byte utf character I used on various occasions to break things:
https://info.michael-simons.eu/2013/01/21/java-mysql-and-multi-byte-utf-8-support/

UTF-8 varies in length between 2 and 4. The 💩 emoji for example is a 4 byte utf character I used on various occasions to break things:
https://info.michael-simons.eu/2013/01/21/java-mysql-and-multi-byte-utf-8-support/
The serializer looks actually sensible.

No, I was talking about the length of the string.  The DataOutputStream uses an unsigned short (2 bytes) so is limited to 64k. The DataOutputStream code code has the following:
        if (utflen > 65535)
            throw new UTFDataFormatException(
                "encoded string too long: " + utflen + " bytes");


Make links in About Dogecoin Core clickable.

Added clickable thingys. (Something about telling QT to parse some of the HTML)
Devsnack pls?

Missing a space there between the words.

Thomas Bernard.Paper wallet art provided by Anacoluthia.

Maybe that works...?

Yup, that works, thanks 👍

Rebased

It marks them as links, but they don't actually open a browser for me. Tested on Ubuntu 14.04 with FIrefox. If someone else wants to test? If not, might just not pull it.

It was on the doom sheet lol

Tested with Ubuntu 14.04 and get the same result. I think this is a bug in QT, however, and personally I'd rather merge this change and keep in sync with Bitcoin Core. I'm also optimistic we'll see this behaviour change in the longer term.

Sounds good to me. Maybe it works in windows. But nontheless, it allows to right click and "copy link location" so I'm fine either way.


default branch "master" causes problem on default branches with default name "main"

Dear evennode team,
I have been struggling for a while to get my github integration via actions to work.
Reason was that you're using 'master' as the name of the branch, whereas most code I've worked with so far (I'm not a professional programmer) used the name 'main' for its main branch.
Independent of one's actual naming and preferences, it may help future users if you enriched the commenary both here on github and on the evennode blog to reflect that the name of the branch does matter / needs to be custom-fitted in 2 locations of the code.
Hope this is helpful.
Best, Michael

Thank you for your feedback!
This has been resolved in 9eb7d0f


Docs

[ ] Currently only support GRCh37/hg19
[ ] What should be in the config

closing and moving to #161


[1.3] Thermostat User Interface Configuration Cluster XML has to be updated as per spec

Description
XML has to be updated as per spec:

Below mentioned data types has to be added in XML and it should be reflected in attributes 'type'.

TemperatureDisplayModeEnum
KeypadLockoutEnum
ScheduleProgrammingVisibilityEnum

XML Reference:

Specification Reference:

Bug prevalence
Whenever I do this
GitHub hash of the SDK that was being used
https://github.com/project-chip/connectedhomeip/commit/eb2f8f6ca95c181577415bc4b3e7cc240d5b2edd
Platform
raspi
Platform Version(s)
No response
Type
Test Improvement

Issue resolved in PR: https://github.com/project-chip/connectedhomeip/pull/30325


Serialize intersections field

A RouteStep object in the response data now includes an intersections field that indicates the location and configuration of each intermediate intersection along the way between two maneuvers. The application can use this information to tighten up rerouting logic around known intersections. Currently the library drops this data, but it should be preserved in some object-oriented form.
/cc @willwhite @zugaldia

@1ec5 Thanks for the heads up, equivalent MAS ticket in https://github.com/mapbox/mapbox-java/issues/152.

Implemented in #80.


Dart crash during JIT compilation with early round-trip serialization

With the fixes in https://dart-review.googlesource.com/c/sdk/+/128405 the round-trip serialization test fails in some configurations. To reproduce, run e.g.
out/ReleaseX64/dart --deterministic --early-round-trip-serialization runtime/tests/vm/dart/il_round_trip_deserialization_test.dart

to get
Crash when compiling file:///usr/local/google/home/askesc/dart-sdk/sdk/runtime/tests/vm/dart/il_round_trip_deserialization_test.dart,
at character offset null:
NoSuchMethodError: Class 'String' has no instance method '>='.
Receiver: "<optimized out>"
Tried calling: >=(0)
#0      Object.noSuchMethod (dart:core-patch/object_patch.dart:53:5)
#1      _scanOneByteCharacters (dart:convert-patch/convert_patch.dart:1863:14)
#2      Utf8Decoder.convert (dart:convert/utf.dart:313:20)
#3      BinaryBuilder.readUriToSource (package:kernel/binary/ast_from_binary.dart:748:43)
...

/cc @alexmarkov


Headless Chrome workaround fails with Chrome <IP_ADDRESS>

What is your Scenario?
Running Testcafe in AWS Codebuild, I experienced the issue with Chrome v122 described here: https://github.com/DevExpress/testcafe/issues/8145 - and using the workaround to pass in --headless=new fixed the issue.
Now with Chrome v123, running headless tests in codebuild throws this error: ERROR The Chrome <IP_ADDRESS> / Amazon Linux 2023.4.20240401 (Amazon Linux) browser disconnected. If you did not close the browser yourself, browser performance or network issues may be at fault. No changes to my configuration at all, the new chrome version introduced this problem.
What is the Current behavior?
Now with Chrome v123, running headless tests in codebuild throws this error: ERROR The Chrome <IP_ADDRESS> / Amazon Linux 2023.4.20240401 (Amazon Linux) browser disconnected. If you did not close the browser yourself, browser performance or network issues may be at fault.
Testcafe version: 3.5.0
Codebuild runtime: Node 18
Codebuild image: aws/codebuild/amazonlinux2-x86_64-standard:5.0
Image info-
image_name="al2023-container"
image_version="2023"
image_arch="x86_64"
image_file="al2023-container-2023.4.20240401.1-x86_64"
image_stamp="380f-2370"
image_date="20240401195520"
recipe_name="al2023 container"
recipe_id="d16da0fb-a0ea-71a0-40a9-5557-695a-45d9-6d4e30de"
Browser arg: chromium:/usr/bin/chromium --headless=new --no-sandbox --disable-dev-shm-usage --disable-setuid-sandbox --single-process --use-gl=swiftshader --no-first-run --no-zygote
^ Tried passing in the browser with & without quotes, with & without full path to chromium, passing in chrome instead of chromium; all throw the same error. Also tried passing in the original :headless instead of  --headless=new and that throws the No inspectable targets error as mentioned in https://github.com/DevExpress/testcafe/issues/8145
What is the Expected behavior?
headless tests should run on Chrome v123 in Codebuild without error
What is the public URL of the test page? (attach your complete example)
no public url of my test page exists, issue is with browser connection
What is your TestCafe test code?
n/a - not an issue within test files
Your complete configuration file
{
    "reporter": [
        {
            "name": "spec"
        },
        {
            "name": "xunit",
            "output": "spec_report.xml"
        }
    ],
    "disableMultipleWindows": true,
    "filter": {
        "fixtureMeta": {
            "browser": "headless"
        }
    },
    "skipJsErrors": true,
    "concurrency": 2,
    "browserInitTimeout": 480000,
    "screenshotPath": "tmp/screenshots/",
    "screenshotPathPattern": "${DATE}_${TIME}/test-${TEST_INDEX}/${USERAGENT}/${FILE_INDEX}.png",
    "takeScreenshotsOnFails": true,
    "port1": 1337,
    "port2": 1338
}

Your complete test report
partial codebuild logs>>>
[Container] 2024/04/16 12:47:59.227726 Running command which testcafe
/usr/local/bin/testcafe
[Container] 2024/04/16 12:47:59.234674 Running command which chromium
/usr/bin/chromium
[Container] 2024/04/16 12:47:59.241373 Running command testcafe -v
Using locally installed version of TestCafe.
3.5.0
[Container] 2024/04/16 12:48:00.282632 Running command export ENV_MODE=${ENVIRONMENT}
[Container] 2024/04/16 12:48:00.289295 Running command echo ${ENVIRONMENT}
staging
[Container] 2024/04/16 12:48:00.294128 Phase complete: PRE_BUILD State: SUCCEEDED
[Container] 2024/04/16 12:48:00.294144 Phase context status code:  Message:
[Container] 2024/04/16 12:48:00.327693 Entering phase BUILD
[Container] 2024/04/16 12:48:00.328208 Running command testcafe -c ${CONCURRENCY} --config-file .testcaferc.json "${BROWSER}" ${TESTS} --fixture-meta browser=headless
Using locally installed version of TestCafe.
The "concurrency" and "filter" options from the configuration file will be ignored.
ERROR The Chrome <IP_ADDRESS> / Amazon Linux 2023.4.20240401 (Amazon Linux) browser disconnected. If you did not close the browser yourself, browser performance or network issues may be at fault.
Screenshots
n/a
Steps to Reproduce
Run any tests in the AWS codebuild environment described above on latest headless chrome/chromium browser. Note: concurrency was set to 1 in this case.
TestCafe version
reproduced w/ 3.5.0 and 2.6.1
Node.js version
reproduced w/ 18 and 16
Command-line arguments
testcafe -c ${CONCURRENCY} --config-file .testcaferc.json "${BROWSER}" ${TESTS} --fixture-meta browser=headless
Browser name(s) and version(s)
Chrome <IP_ADDRESS>
Platform(s) and version(s)
AWS Codebuild
Other
Buildspec configuration>>>
version: 0.2
batch:
build-graph:
- identifier: mod_forum_admin_tests
env:
variables:
TESTS: tests/hus/moderation/forum-admin/
CONCURRENCY: 1
ignore-failure: true
phases:
install:
runtime-versions:
nodejs: 18
commands:
- echo Image Info
- cat /etc/image-id
- echo Installing Chromium
- wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
- sudo yum install -y ./google-chrome-stable_current_x86_64.rpm
- sudo ln -s /usr/bin/google-chrome-stable /usr/bin/chromium
- echo Installing Testcafe
- npm install -g testcafe
- npm install
pre_build:
commands:
- which testcafe
- which chromium
- testcafe -v
- export ENV_MODE=${ENVIRONMENT}
- echo ${ENVIRONMENT}
build:
on-failure: CONTINUE
commands:
- testcafe -c ${CONCURRENCY} --config-file .testcaferc.json "${BROWSER}" ${TESTS} --fixture-meta browser=headless
^ see previous sections for complete browser argument

We were having same issue with a docker on version 3.5.0 which uses chromium 124.0.
We've been able to run our tests by forcing the version to chromium 124.0.6367.60-r0 from alpine v3.19.
FROM testcafe/testcafe:3.5.0

USER root
RUN apk --no-cache $ALPINE_REPOS --repository http://dl-cdn.alpinelinux.org/alpine/v3.19/community/ upgrade && \
 apk --no-cache $ALPINE_REPOS --repository http://dl-cdn.alpinelinux.org/alpine/v3.19/community/ add 'chromium=124.0.6367.60-r0'

We experience the same issue in Docker

Hello @anthonyferroHU,
Is the problematic behavior reproduced locally? If not, then most likely, the issue relates to how this version of chromium works in the AWS Codebuild environment. Please try updating the chromium version as @ujjwol05 suggested and let us know you results.


Adding PinotDB module

Hi @kant777,
Please make sure that you follow the following process:
https://www.testcontainers.org/contributing/#contributing-new-modules
Also, could you please clarify why you think a module is needed? (as per "Does it need to be a module?" section of the docs)

Hi @bsideup
Pinot DB is a new low latency OLAP database that a lot of people use and just like any other module I see Pinot DB also satisfies all the requirements on why a module is needed. please let me know if you have any specific questions

Hi @kant777,
Thanks. I am not questioning the importance of PinotDB, but please see the checklist (it is recommended to also copy it into PR's description and mark every checkbox if you think it is satisfied)
From a quick look, I get a feeling that there is no point in having a dedicated module, and it works fine with just GenericContainer. Maybe I am missing something?

I pretty much followed what other modules did. so if you are saying this is just a Generic container then so does the lot of other modules that are already in place. so I am not sure I follow on what is required to have a module beyond satisfying the list that you already pointed out
one thing i can say about pinot is. it does load some default datasets on startup which is very useful for testing. And it will have specific wait strategies.

@kant777 thanks for thinking of raising a PR. We do encourage people to talk to us before starting work on new modules, because we recognise that it can be disappointing to get feedback after spending time on it.
A lot of the modules that we currently have were added before we created the new modules guidance, so I'm afraid other modules aren't necessarily a good reference for what does/doesn't tick the boxes. Actually, we created the guidelines because we have a bit of a problem with some of the existing modules.
In this case I think @bsideup is right, and this should probably just be an example code snippet rather than an entire module. Also, for my part, I do worry a little about whether Pinot is a bit too specialised for us to take on maintenance of a module - it might be better if this were distributed separately anyway, either as a third party module or by the Pinot project itself.
I'm going to close, because I don't think we'll be able to take this PR. Sorry if this is disappointing to you.


GAWB-2092: add response handler for 403s

Adds a generic Resource dispatch handler for ForbiddenException/403s; we already had them for other responses. Also adjusted indentation in this code block.

[x] Submitter: Include the JIRA issue number in the PR description
[x] Submitter: Make sure Swagger is updated if API changes
[x] Submitter: Check documentation and code comments. Add explanatory PR comments if helpful.
[x] Submitter: JIRA ticket checks:

Acceptance criteria exists and is met
Note any changes to implementation from the description
Add notes on what you've tested

[x] Submitter: Update RC_XXX release ticket with any config or environment changes necessary
[x] Submitter: Update FISMA documentation if changes to:

Authentication
Authorization
Encryption
Audit trails

[x] Submitter: If you're adding new libraries, sign us up to security updates for them
[x] Tell the tech lead (TL) that the PR exists if they wants to look at it
[ ] Anoint a lead reviewer (LR). Assign PR to LR

Review cycle:

LR reviews
Rest of team may comment on PR at will
LR assigns to submitter for feedback fixes
Submitter rebases to develop again if necessary
Submitter makes further commits. DO NOT SQUASH
Submitter updates documentation as needed
Submitter reassigns to LR for further feedback

[x] TL sign off
[x] LR sign off
[ ] Product Owner sign off
[ ] Assign to submitter to finalize
[ ] Submitter: Verify all tests go green, including CI tests
[ ] Submitter: Squash commits and merge to develop
[ ] Submitter: Delete branch after merge
[ ] Submitter: Test this change works on dev environment after deployment. YOU own getting it fixed if dev isn't working for ANY reason!
[ ] Submitter: Verify swagger UI on dev environment still works after deployment
[ ] Submitter: Inform other teams of any API changes via hipchat and/or email
[ ] Submitter: Mark JIRA issue as resolved once this checklist is completed

Coverage decreased (-0.003%) to 61.763% when pulling 6e4f94baf4aeec06919ec6abe97de198061a7019 on da_GAWB-2092_gcsApiChange into daed3f6073575c9d1ac2c5b24c9b9a71b5df3c87 on develop.


chore: improvements to default configuration

enforce default line length of 120 for solidity, 100 otherwise
tag the .sol files so they show up in github search correctly using gitattributes
increase optimizer runs to prioritize run efficiency over deploy size efficiency
reduce verbosity in ci to only show logs when tests fail
reduce default fuzzer runs to 512 to run faster

inspired by defaults in https://github.com/transmissions11/foundry-template

reverting the optimizer improvement since it caused the NameRegistry to become ~3kb larger which made it undeployable


Complex marl env

What changes do you make in this PR?

Add more vehicles to multi-agent env

Checklist

[x] I have merged the latest main branch into current branch.
[x] I have run bash scripts/format.sh before merging.
Please use "squash and merge" mode.

Can we make the dispatch of agents in FirstBlock autonomous? Such as uniformly choosing spawn points


Updated README.md

Would be awesome if you could remove the whole setup section then? :smile:

Looks good to me thanks @hellozee :smile:


[CPREQ-8832] Support Kubernetes v1.30.1

Description

Support Kubernetes v1.30.1

Test Cases
Install or upgrade cluster to Kubernetes v1.30.1
Checklist

[ ] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] Integration CI passed
[ ] Unit tests. If Yes list of new/changed tests with brief description
[x] There is no merge conflicts

As latest versions are available for calico, crictl and nginx-ingress-controller, can we add support for them?
We have added similar support in v1.29.4, v1.28.9 & v1.27.13
https://github.com/Netcracker/KubeMarine/pull/662

As latest versions are available for calico, crictl and nginx-ingress-controller, can we add support for them? We have added similar support in v1.29.4, v1.28.9 & v1.27.13 PR #662

I will update compatibility map to the new plugins versions if PR 662 is merged first. Otherwise, I suggest to do that within PR 662.

As latest versions are available for calico, crictl and nginx-ingress-controller, can we add support for them? We have added similar support in v1.29.4, v1.28.9 & v1.27.13 PR #662

I will update compatibility map to the new plugins versions if PR 662 is merged first. Otherwise, I suggest to do that within PR 662.

As latest versions are available for calico, crictl and nginx-ingress-controller, can we add support for them? We have added similar support in v1.29.4, v1.28.9 & v1.27.13 PR #662

I will update compatibility map to the new plugins versions if PR #662 is merged first. Otherwise, I suggest to do that within PR 662.

pls proceed


Brigther Components when none are selected

I'm creating a new scenario from scratch and I'm to use the Valkyrie App itself to desing de adventure.
After placing every tiles and tokens in the board I want to see the hole board, zooming and seeing details alternating with global peeks.
In order to achieve that, I see a problem the fact that there is no way of seeying all board without being dark.
I propose that browsing to the Quest properties (Description, creator, expansions required, ...) automatically unselect last selected board component and show a global view of board, without being dark.

The issue is overlapping components.  The reason they are dark is that all components are transparent, and you see through to the background.  Many  boards and/or tokens could be on top of one another and this is to show you that.
I can try to do something to make them not dark but keep the transparency between items.

Suggestion: Assign tiles to a group and have an option to show/hide the group. By default all tiles are in the group "default". That way, all tiles can be non transparent.

Grouping already exists by files.  Could enable display by group.  The problem is worse for tokens though, there are often overlapping tokens.

Is this still an issue now the transparency is adjustable in the options of version 2.2?

No, but still could add groups or use layers of some sort for that. But thanks I will close that for now.


Long polling does not work

Just like the title, I am unable to use long poling. It always return response immediately. Here is my script:
`
    $bot = TelegraphBot::fromToken('6187681620:token');

    $bot->updates(60, 823310133)->each(function(TelegramUpdate $update){
        // do smt
    });

`
I tried long polling by calling telegram getUpdates API using Postman with timeout and offset parameters and it did work.

[Update]
I tried to debug src code and found that the body of POST request is emty. No timeout and offset parameters were passed. That 's why long polling did not work

[Update 2]
The reason why the data of Telegraph is empty is that you set the data property of Telegraph instance but you return the clone version of it.
HasBotsAndChats.php
public function botUpdates(int $timeout = null, int $offset = null, int $limit = null, array $allowedUpdates = null): Telegraph
{
    $telegraph = clone $this;

    $telegraph->endpoint = self::ENDPOINT_GET_BOT_UPDATES;

    if($offset !== null) {
        $this->data['offset'] = $offset;
    }

    if($limit !== null) {
        $this->data['limit'] = $limit;
    }

    if($timeout !== null) {
        $this->data['timeout'] = $timeout;
    }

    if($allowedUpdates !== null) {
        $this->data['allowed_updates'] = $allowedUpdates;
    }

    return $telegraph;
}

fixed, we are releasing a patch right now
thanks!


make storage more friendly

Add StorageParam to configure to support any addition storage configure.
Add Init(interface{}) function to ServiceStorage interface.
Modify storage functions.
Register storage implementation at  init()

curious what @andresuribe87 thinks about this pattern

this is super cool BTW

looks like a number of conflicts. happy to merge once they're resolved

this pull request change source structures and missing new features,  conflicts too complex to resolve, should I close it and re-fork?

sure, up to you


[modify] this could help stabilize specs up

Coverage decreased (-0.01%) to 84.327% when pulling 37a72923d28c525aea7f0c989b4b47d7ca3ff727 on feature/stabilize-specs-up into 179415b7f9cd2653d44366a0af1c82b150610372 on master.


Failed to install (1.4.0)

For some reason I can't install latest version of plugin (1.4.0) to latest Obsidian (1.1.9). Both update and reinstall are failing with error:
app.js:1 Error: Request failed, status 404
    at new t (app.js:1:710073)
    at Aw (app.js:1:710265)
    at app.js:1:710942
    at app.js:1:235505
    at Object.next (app.js:1:235610)
    at a (app.js:1:234349)
(anonymous) @ app.js:1

I've managed to install 1.4.0 through BRAT, but there's something I've noticed.

Obsidian lists version as 1.5.0, though latest release is 1.4.0. Looks like version is fetched from master branch (probably from default branch?), but since there's no released tagged 1.5.0, it can't be downloaded.

Hi @EricKotato. I've just released Version 1.5.0 of Obsidian Chat View. That should fix the error your getting. Let me know if it fixed it, and I'll close this issue.

Yes, plugin is properly updated now. Thanks.


AssignCommand executes despite showing an error message

for example, if index 1 is a blank wedding and the following commands are input:
assign 1 c/1
assign 1 c/1 2
the message "Person has already been added" would be shown, but person 2 would still be added to the wedding
Somehow this only happens sometimes, after spamming "assign 1 c/1 2"

I think the recent PR should have fixed this too.


improve do oauth

The main changes here are:

add hasOAuth() method, use cached OAuth token
Rather than requesting an OAuth token for every authorization-requiring request,
cache the OAuth token in storage, and try to use the cached token for subsequent
requests. Only request a new OAuth token if a failure results from using the
cached one.
New hasOAuth() method returns whether or not we have an OAuth token cached.
This will give the UI a hint about whether it should prompt the user to
authorize uProxy to access her DO account, or whether this prompt can likely be
skipped. This is only a hint because the token could have expired, or the user
could have manually revoked the access token using the DO UI at
https://cloud.digitalocean.com/settings/api/access.
But this is strictly better than never saving the token, which led to the
current UI which always prompts the user to "sign in and connect" to DO, even
when the user already has.
ref: #2292

refactor private members, explanatory comments

Remove unused dispatch_ member.
Move the fields inside state out to the top level, rather than stuffing them
in a catch-all state_ object.

wire DO hasOAuth() to uProxyCore, ui improvements
UI improvements:

Now that the DigitalOcean module has the hasOAuth() method, we no longer
need to unconditionally prompt the user to sign up for or sign into DO;
instead, check hasOAuth(), and only prompt the user to sign up or sign in
when hasOAuth() is false. Fixes #2292.
Now that we skip the sign-up-or-sign-into-DO prompt and go straight to the
create-a-cloud-server prompt when possible, refactor the UI between these
two screens so they provide the relevant information for the user's context.
UI polish improvements for DigitalOcean (fixes #2540).
Fix #2578

And here are some screenshots of some of the UI improvements:
top margin for empty roster instructions:

shorter cloud label in networks list:

more context-aware explanation on DO-sign-up-or-sign-in screen, better checkbox margin:

more context-aware explanation and button label on create cloud server screen:

more context-aware title and explanation on our DO overlay:

@trevj and/or @dborkan, PTAL at the code changes when you get a chance!
And @ohnocassio, PTAL at the UI changes I'm proposing. The more context-aware explanations on the cloud screens do make them feel text-heavy. If there's a way to improve that without getting rid of the essential info there, I'd love to. (The cloud flow is still sufficiently complicated that I think this extra guidance is warranted.)

This change is

more context-aware title and explanation on our DO overlay

Note, when you click "Proceed to uProxy" in our DO overlay, you're taken back to uProxy which is still sitting on the "Create an Account" / "I have an account" (sign-up-or-sign-in) screen. Ideally we'd make it so clicking Proceed would auto-advance to the "Create a cloud server" screen. We can do that in the future, but for now I addressed this with a context hint in the overlay: "You can now go back to uProxy and choose the ”I have an account” option if prompted" text.

For completeness' sake, clicking "Create a cloud server" for the first time (before you've ever given the OAuth grant) takes you here:

The first paragraph of explanatory text on the "Create a cloud server" screen is meant to help the user expect this.
Once the user clicks "Authorize application", the tab is closed automatically. The uProxy window should then steal focus, but I'm not sure it's doing so (if not let's address in a future PR). The uProxy window will display the "Hold tight" screen with cloud install progress bar for a couple minutes until the server up and running.
To drive the point home, if you then delete the cloud server and choose "create a cloud server" again, since uProxy now remembers it's gotten an OAuth token, as long as we're not past its expiration date, we now go straight to the "Create a cloud server" screen, bypassing the "Create an account" / "I have an account" screen.
If the OAuth token has been manually revoked, we catch this and handle it gracefully, showing the "Create an account" / "I have an account" screen for cloud until a new OAuth token has been received.

Meant to say, I intentionally reused the uproxy+digitalocean.svg image on the "Create a cloud server" screen, since now that the "Create an account" / "I have an account" screen is not necessarily shown right before (when the user has already OAuthed), it seemed important to make sure the user still has a prominent cue that "DigitalOcean interactions are about to be required (possibly)" from this screen too.

Super!
I've been interested to diagram the flows in our UI a little more...for this change, I see a flow (highlights in PINK):

I'm pretty into your diagram, @trevj, thank you for posting! Isn't it amazing what a difference a few boxes and arrows can make? (I made one out of ascii art when I was doing the DO overlay to help keep that straight myself.)
I've dreamed of using an interactive tool we could use to maintain an up-to-date representation of our UI state transitions, so it's quicker and easier to understand the user experience at a glance, identify friction hotspots, visualize proposed changes before making them, and be able to refer to while making changes. But I'm not sure what that tool might be. 🤔

btw when I tested in Firefox everything I tried worked there too

Ok, I think all remaining code issues are resolved. Ready to merge upon @trevj's and @ohnocassio's 👍 !

One comment on logging but :+1: from me.

@trevj approved merging now (before any other conflicts can happen) and addressing any desired changes to these UI changes in a follow-up PR.


When running in Eureka in Cluster, why registerWithEureka should be true.

Have set up Eureka in cluster with 3 instances, something like below.
spring:
  profiles: dev1_profile
eureka:
  client:
    serviceUrl:
      defaultZone: https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v1199.net:${config.server.port}/eureka, 	   https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v0852.net:${config.server.port}/eureka,				   https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v1377.net:${config.server.port}/eureka

with this configuration, when I login to Eureka Dashboard, I do see these 3 servers listed in registered-replicas & available-replicas.
But when I modify to disable registerwitheureka (by setting it to false), I see no servers in available-replicas and I see it in unavailable-replicas
spring:
  profiles: dev1_profile
eureka:
  client:
    registerWithEureka: false
    serviceUrl:
      defaultZone: https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v1199.net:${config.server.port}/eureka, 	   https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v0852.net:${config.server.port}/eureka,				   https://${spring.cloud.eureka.user.name}:${spring.cloud.eureka.user.password}@v1377.net:${config.server.port}/eureka

using below configuration
<artifactId>spring-cloud-dependencies</artifactId>
<version>Brixton.SR7</version>
and
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.2.RELEASE</version>

We do not want to Register Eureka Instances when running in cluster.

So you are setting registerWithEureka to false on each Eureka server in the cluster?

Sorry I didn't understand, this is how I am working on it. build using profile in this case dev1_profile.
Run that jar file in different boxes.

I tested setting that property out profile configuration something like below
eureka:
client:
register-with-eureka: false

register-with-eureka must be true to have each server in the cluster replicate information with each other.  You can imagine each server being a client as well, so it is just like I client talking to another Eureka server.

Thanks @ryanjbaxter . Closing this thread.


Error with kraken get default

When trying to get the default model I receive the following error:
/data # kraken get default
Retrieving model	⣽Traceback (most recent call last):
  File "/usr/bin/kraken", line 10, in <module>
    sys.exit(cli())
  File "/usr/lib/python2.7/site-packages/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 1086, in invoke
    rv.append(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python2.7/site-packages/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/site-packages/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/kraken/kraken.py", line 280, in get
    partial(spin, 'Retrieving model'))
  File "/usr/lib/python2.7/site-packages/kraken/repo.py", line 60, in get_model
    desc = json.loads(raw)
  File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.7/json/decoder.py", line 380, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting ',' delimiter: line 7 column 1095 (char 1254)

Any ideas on how to get around that?

There was a syntax error in the JSON metadata file. It's fixed now.

Perfect!
Thanks a lot


proxy.golang.org:  letme

Hi all, thanks for your amazing contribution to open source!
I am having a little issue where it seems like for this repository (https://github.com/lockedinspace/letme) tags are not being correctly updated on their respective mirror https://pkg.go.dev/github.com/lockedinspace/letme?tab=versions I can see the tag v0 but on the repo mentioned above its the v0.1.
It is also causing some errors while installing:
$ go install [github.com/lockedinspace/letme@latest](http://github.com/lockedinspace/letme@latest)

go: downloading [github.com/lockedinspace/letme](http://github.com/lockedinspace/letme) v0.1.1-rc2
go: [github.com/lockedinspace/letme@latest](http://github.com/lockedinspace/letme@latest): module [github.com/lockedinspace/letme@latest](http://github.com/lockedinspace/letme@latest) found (v0.1.1-rc2), but does not contain package [github.com/lockedinspace/letme](http://github.com/lockedinspace/letme)

If you clone the repo and execute go build this  error does not appear.
Seems like it is not successfully updated, could you please verify from your end if everything's correct?

v0.1 is not a valid version. A version must contain at least three segments, so v0.1.0 would be valid. For more see this https://go.dev/doc/modules/version-numbers.

see above.
Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.
For questions please refer to https://github.com/golang/go/wiki/Questions

Hi @seankhliao , sorry to bother you but please if this is not the place, update your docs accordingly:
https://proxy.golang.org/
FAQ -> I committed a new change (or released a new version) to a repository, why isn't it showing up when I run go get -u or go list -m --versions?
file an issue link. Currently pointing at: https://github.com/golang/go/issues/new?title=proxy.golang.org%3A+


Command 'PlayCanvas: Add project' resulted in an error

I got this error after selecting the "PlayCanvas: Add Project" command in the VS Code command menu. I entered my PlayCanvas token and username on the extension settings page earlier

Yeah actually that's what I got in https://github.com/playcanvas/vscode-extension/issues/5 thought it was solved but I got the error again so..

I tried fixing it your way of adding the script and restarting vscode but it still doesn't work :(

cc @isumygin-sc

Not sure if its related but [Extension Host] API call failed: Error: Forbidden shows in the logs

the issue is fixed, please reload VS Code

I reloaded VS Code and PlayCanvas plugin but still got this error... wondering if anyone is still facing it?

Not sure if its related but [Extension Host] API call failed: Error: Forbidden shows in the logs

Forbidden suggests bad key or username
I know this sounds obvious but I found my way here researching a fix for what I thought was this issue. Solved my Error: Forbidden by double checking the username I put in the VS Code extension settings exactly matched user from account profile page on PlayCanvas website. Turns out there was a character missing... RTFM type situation 🤭
Hope it helps

Close now that this is logged: https://github.com/playcanvas/vscode-extension/issues/7


0.52.2 Finishing touches

Not sure where to put this since the PR has been merged into master, so here goes :)
Last things I'm running into:

[x] ListView doesn't scroll

[ ] Loading images with require('Image.png') doesn't work
This seems to be an issue on dev build only though.

[ ] Padding doesn't work on TextInput
I looked into rewriting RCTTextField to RCTSingleLineTextField, but I don't know enough about Mac development nor do I have enough time to figure this out.

Other then that things seem to run pretty solid here!

Thanks for the feedback. Could you try to replace ListView with FlatList?

FlatList doesn't scroll when click and drag, but it works when using gestures.

@unmec Why do you expect "click+drag to scroll" behavior in a desktop application? I've never seen anyone do that.

@aleclarson Well I believe you certainly have. Just image what would you do when you want to select a big piece of text in Safari? Click, then drag to scroll to when it ends right?

@unmec Ah, you didn't mention text selection in the previous comment. Can you open a new issue for that, please?


Firestore Get, Query, List examples returns incorect document name in payload

All Firestore examples which return payload has issues with document name. For example I get the following payload output on serial:
Get a document... ok {   "name": "projects/stripe-webhook-d1xxxx/databases/(default)/documents/info/countries",   "fields": {     "Singapore": {       "mapValue": {         "fields": {           "population": {             "integerValue": "5703600"           },           "time_zone": {             "integerValue": "8"           }         }       }     }   },   "createTime": "2024-01-04T00:40:24.270730Z",   "updateTime": "2024-01-04T00:40:24.270730Z" }
Document name is returned as full document path (including server path), but not as actual name, which in this case is "countries". How I can make it return real document name, instead of path? Thanks

It is upon Google Firestore APIs and features, we can't do anything.


limit num_vals in Column to u32

Currently the API uses u64 to address positions in the columnar storage. That's because multi-value fields could have more than u32::MAX values. I think we can set that limitation to u32, since segments that large with num_docs * avg_val_per_doc > u32::MAX are too large anyway

yes... and I think we can chance the idx to u32 too. (I forgot if there is another ticket open for this)


Make Markdown Syntax work within HTML tags (more consistent with Jupyter & Google Colab)

Feature: Notebook Editor, Interactive Window, Python Editor cells

Description
In Jupyter Notebooks, Jupyter Labs, & Google Colab, you can still use markdown syntax inside of html tags
(i.e. <...> ... </...>).
However currently this does not work, making formatting less consistent between platforms.
This is normally not all that big of a deal except when LaTeX/KaTeX (whatever TeX engine you are using) do not render the contents of a $...$ or $$...$$ making it harder to read and understand.
They also utilize code syntax highlighting in their editors for the markdown sections which is just a nice to have.  And if it can conform or use whatever syntax highlighting extension/settings that a particular instance of vscode uses for its markdown language files, would be even better for consistency within the vscode ecosystems! (but not completely necessary)
Thank you for your time and consideration!

Microsoft Data Science for VS Code Engineering Team: @rchiodo, @IanMatthewHuff, @DavidKutu, @DonJayamanne, @greazer, @joyceerhl

In a markdown cell in Jupiter it is fairly common to do something like:
## Section Title
<font size="4">
Section _contents in larger font size_ for better formatting when squished between code blocks.
 - Soem bullet points
</font>

Which works just fine, but not in vscode notebooks.
Does that help?

Quickly following up here: this is caused by https://github.com/microsoft/vscode/issues/107192 in the core VSCode editor. Please upvote that issue to indicate your support for this feature!


Animate menu component over current screen rather than animate current screen

It seems more natural to drag the menu component on to the screen rather than to drag the currently displayed component off the screen.

Hi @danderson00!
There are different techniques describing how menu can be animated and this is just one of them. You can always go for https://github.com/react-native-community/react-native-drawer-layout or https://github.com/root-two/react-native-drawer to achieve an experience you want to have


Thank you

This is not requesting a feature or reporting a defect.
I have wasted so much time trying to get SAML working for Go web services. Other libraries haven't seemed to work or worked properly with one IdP but not with others, providing no insight as to why.
This package worked with minimal fuss. I'm grateful to have it.

Thanks so much for the kind feedback, I'm glad to hear this solved a problem for you!
I don't by any means think we've achieved total compatibility with every SAML provider out there, but we've gotten a lot of great contributions lately, especially more provider tests and associated fixes.
Don't hesitate to submit real defects or PRs as needed and I'll do my best to get to them ASAP.

Went through 3 different libraries. This is one is joy to work with. (Works great with Azure AD SAML SSO).
Thanks so much!

@nhz-io I'm new to SAML and SSO world. Want to write a SP for Azure AD. Would it be possible for you to help me here?


[LITE] l2norm refactor, remove double calculation of index

Also, while this seems like a trivial change, every PR takes additional time to guide through the landing process, so please focus on important changes rather than minor cleanups or code tweaks.


Fix #1685: setHeader() with undefined value

Allow setHeader to work by not using an undefined value

Issue #1685

Thanks for finding the right place for the fix, @garymathews, your commit is pushed here https://github.com/request/request/pull/1687. I'll publish it shortly.

2.60 is published.


[Bug] Infinite Loading

Plugin has become unuseable. Does not display files uploaded or removed. Lags badly, and upon waiting too long makes everything on my Obsidian disappear. Upon restarting my obsidian view returns, however i have to quickly turn off the plugin. I'm not sure this isn't by my own fault. Recently i installed Breadcrumbs and that seemed to not play well with the metadata this plugin was reading. I'm not sure if that is the reason this started happening or not. After uninstalling that breadcrumbs and removing all of that metadata to my knowledge, this is still happening.

Sorry to hear that! How many notes do you have in your library? And how many are published or have the dg-publish attribute? The way I figure out whether a note has changed or not could be a bit computing intensive if you have a lot of notes with the dg-publish attribute.
Have you tried turning off all other plugins? It would be helpful to know if the problem still exists then.

Ah, sorry i didn't see this message till now!
I have 20,000 files in my vault.
According to a quick search, 18 files were published. One was very image heavy.
I've turned off the other plugins. The little terminal for DG does not display any files. After requesting it to update changed files anyway, its turned obsidian black again. Did not deploy at all.
Well, interestingly, it did deploy successfully when i updated the theme.


Bump up rk-entry version to v2.2.9

Codecov Report

Merging #33 (40a2819) into master (5e630d1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #33   +/-   ##
=======================================
  Coverage   89.95%   89.95%
=======================================
  Files          18       18
  Lines         836      836
=======================================
  Hits          752      752
  Misses         65       65
  Partials       19       19

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Fails to compile when cross-compiling

dos@yoga:~/git/butler$ GOOS=linux GOARCH=arm go build
build github.com/itchio/butler: cannot load github.com/itchio/dmcunrar-go/dmcunrar: no Go source files

Seems like it fails with any non-native configuration.
I have no slightest clue about golang's build system, so no idea if it's butler's or dmcunrar's fault.

Nothing puts your brain to work as well as clicking "send". Of course, it's a non-Go binding which needs special measures when cross-compiling :P

CGO_ENABLED=1 should do the trick
I'm told @icculus (hope that's the right GitHub username) has successfully compiled butler for ARM, maybe there's some knowledge to share here?

CGO_ENABLED would work with proper C toolchain setup, right. However, in the end I've just launched armv7 docker container and built it there - seems to work :)


Pagination Slot for w-table

I would be nice to be able to edit the pagination UI of a w-table by providing a custom template.
For example <template #pagination=
Similar to how it is now implemented for Footers, Headers, Row Cells, etc.

Hi @Fleximex,
The pagination slot was actually already existing but the documentation was missing.
I took the opportunity to review all the pagination and finish/improve what needed to be, now released in version 3.9.2.
Please check the pagination documentation for details: https://antoniandre.github.io/wave-ui/w-table#pagination, as well as the new example about the custom pagination.

I hope it solves the issue, if not please reopen :)


Range operator doesn't work in surrogate pairs character

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
I'm proceed Japanese text in PowerShell with range operator(..)
Generally, range operator used like as "a" .. "c".
PS> "a".."c"
a
b
c

Therefore range operator can also be used Japanese Kanji.
PS > "一".."七"
一
丁
丂
七

That characters Unicode code point is "一" to U+4E00, "七" to U+4E03 at CJK unified ideographs in Unicode 14.0.0 .
However, a bit Kanji and symbol (include Emoji) cannot represent by single char type. These are called surrogate pairs character.
Examples follow:
PS> "`u{29E3D}"
𩸽
PS> "`u{1F600}"
😃

Then it is cannot cast string to char type.
# Normal Kanji.
PS> [char]"`u{4E00}"
一
# Surrogate pairs character.
PS> [char]"`u{29e3d}"
InvalidArgument: Cannot convert value "𩸽" to type "System.Char". Error: "String must be exactly one character long."
😃
PS> [char]"`u{1F600}"
InvalidArgument: Cannot convert value "😀" to type "System.Char". Error: "String must be exactly one character long."

Please look at the page Character encoding in .NET
To excerpt from the page.

However, for some languages and for some symbols and emoji, it takes two char instances to represent a single character.

For that reason, I think that the range operator can only be using characters which can be cast to char type. But I think surrogate pairs characters should also be supported at the context of semantics.
Sorry for my bad english.
Expected behavior
PS> "一".."一"
一
PS> "`u{4E00}".."`u{4E00}"
一
PS> "𩸽".."𩸽"
𩸽
PS> "`u{29e3d}".."`u{29e3d}"
𩸽

Actual behavior
PS> "一".."一"
一
PS> "`u{4E00}".."`u{4E00}"
一
PS> "𩸽".."𩸽"
OperationStopped: Input string was not in a correct format.
PS> "`u{29e3d}".."`u{29e3d}"
OperationStopped: Input string was not in a correct format.

Error details
PS> Get-Error
Exception             :
    Type       : System.FormatException
    TargetSite :
        Name          : ThrowOverflowOrFormatException
        DeclaringType : System.Number, System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e
        MemberType    : Method
        Module        : System.Private.CoreLib.dll
    Message    : Input string was not in a correct format.
    Data       : System.Collections.ListDictionaryInternal
    Source     : System.Private.CoreLib
    HResult    : -2146233033
    StackTrace :
   at System.Number.ThrowOverflowOrFormatException(ParsingStatus status, TypeCode type)
   at System.String.System.IConvertible.ToInt32(IFormatProvider provider)
   at System.Convert.ToInt32(Object value)
   at System.Management.Automation.ParserOps.RangeOperator(Object lval, Object rval)
   at System.Management.Automation.Interpreter.FuncCallInstruction`3.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
CategoryInfo          : OperationStopped: (:) [], FormatException
FullyQualifiedErrorId : System.FormatException
InvocationInfo        :
    ScriptLineNumber : 1
    OffsetInLine     : 1
    HistoryId        : -1
    Line             : "`u{29e3d}".."`u{29e3d}"
    PositionMessage  : At line:1 char:1
                       + "`u{29e3d}".."`u{29e3d}"
                       + ~~~~~~~~~~~~~~~~~~~~~~~~
    CommandOrigin    : Internal
ScriptStackTrace      : at <ScriptBlock>, <No file>: line 1

Environment data
PS> > $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.2.1
PSEdition                      Core
GitCommitId                    7.2.1
OS                             Linux 5.13.0-28-generic #31~20.04.1-Ubuntu SMP Wed Jan 19 14:08:10 UTC 2022
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

hex:29E3D == 171581
The .net framework can only handle characters smaller than 65535, I don't know if it has changed in .net 6 now.
If not, I am pessimistic that this problem will never be solved.

I agree with @kasini3000, this seems to be a behavior with .net
PS> "`u{29e3d}"
𩸽
PS> [char]"`u{29e3d}"
InvalidArgument: Cannot convert value "𩸽" to type "System.Char". Error: "String must be exactly one character long."

WG-Engine:
There are a few ways we could potentially go about implementing this as an enhancement, all of which would likely involve use of the new(ish) System.Text.Rune type:

Change the object types returned from "a".."z" and all string ranges like this from [char] to [System.Text.Rune], and enumerate a numeric range over the rune values, return a set of values with Runes. This would be a breaking change, as it would mean usages like [string]::new('a'..'z') would stop working.
Introduce the above behaviour only for ranges that definitely exceed the [char] value range. This would avoid breakages but introduce some inconsistency in how the lower and upper ranges are handled. Also up for question would be how do we handle ranges that attempt to cross this 'barrier' range.
Do something along the lines of the above, but convert the generated runes to strings before returning them. This would be a little more compatible than the first option, a bit more consistent than the second option, but would still be a significant change from the original implementation.

There are other possible options, but we felt these represented the most likely cases. Some possible concerns raised were:

We're unsure how useful this kind of feature may end up being if the Unicode character ranges aren't as contiguous as they are for the lower values. None of us have the necessary familiarity with all the Unicode code pages, so ultimately we don't feel this is a huge concern, but nor do we think it's wise to define custom ways for the ranges to work, it would have to stick by the ordering presented by .NET for the contiguous integer values of Runes.
The formatting system currently doesn't render raw Rune values, instead it defaults to a List format view showing the Rune's properties. This is something we might want as follow up work if this feature is extended in this way. (Rendering them is fairly simple, calling .ToString() on the Runes suffices.)
The formatting system is not very well set up for rendering these kinds of characters currently, so it may be a little more likely to surface any issues there with how it's designed.

Ultimately, we're unsure if this is something we want to provide in this way as yet. It would be good to see if there's more community interest in this request before we commit to providing this. We're inclined to leave this issue open for discussion for a few months before we assess it again.

Since I was playing with it a bit, here's a function that provides similar behaviour that may be of interest to folks who want to play with what this might potentially end up looking like and see how it suits their use cases:
function Get-Runes {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory)]
        [ValidatePattern('^.\.\..$', ErrorMessage = "Invalid format for character range")]
        [string]
        $Range
    )

    $start, $end = $Range -split '\.\.'
    [System.Text.Rune]$startRune = $start.EnumerateRunes() | Select -First 1
    [System.Text.Rune]$endRune = $end.EnumerateRunes() | Select -First 1

    ($startRune.Value)..($endRune.Value) -as [System.Text.Rune[]]
}


Unable to run multiple modules in the same command

Hi, in python's version of windapsearch I was able to run multiple modules at once (eg. unconstrained user-spns privileged-users domain-admins). I tried it with go's version and it seems that if you specify multiple modules, it only takes into account the first one. Am I doing something wrong?
Thanks!

Hi! You’re not doing anything wrong, I didn’t copy that functionality over from the Python one. With the new JSON encoding it’s really difficult to combine outputs from different queries in the same response (for example, Groups and Users have very different attributes)
With the python version, it was basically just making sequential full connections and requests, so with the go version it wouldn’t be much different than just running ./windapsearch -m mod1 && ./windapsearch -m mod2, but I know that’s not ideal.
What are some of the common combinations of modules you run? Maybe they could be combined into a “super” module that executes multiple filters in an “OR”?

Hey Ronnie! Sorry for the delay, the notification about your reply somehow got lost on my inbox. I usually combine the enumeration of specific things that are good for quick wins. Eg: unconstrained delegations, user-spn, privileged users and domain admins. But its not really that big of an issue, I just wanted to ask in case I was doing something wrong, but I can definitely concatenate commands. I understand the difficulties of working with JSON encoding.
Thanks for the reply!


Export lists

Minor thing, but is it currently possible to use explicit export lists in the generated code?
I'd quite like to compile without warnings for various reasons, and this is the one thing currently preventing me from doing so (unless I do the work myself, but hey, this package is meant for us lazy people...).

It's not currently possible to do this.
What's producing the warning? elm-analyse? We turn that warning off with checks: { "ExposeAll": false } in our elm-analyse.json, as we don't find it to be of any value. You could also exclude the generated code from being analysed with excludePaths.
I would accept a PR that adds explicit export lists if you still want it. It shouldn't be too much trouble to do.

Yeah, it's coming from elm-analyse. Those seem like two very reasonable suggestions, thanks (I'm very new to Elm, so I haven't quite found my way around all the tooling yet).
I'll look into implementing it anyway.

Cool! Here's where you need to look: https://github.com/folq/elm-syntax/blob/0bed7db2095fa7c3c9367e94effe93e4bf62f54e/src/Language/Elm/Pretty.hs#L96


use absolute path for gif

I suppose this really depends on where the compiled HTML output actually is ... I suppose the example isn't exactly complete in this sense.


Quagga: Add AS-Path Lists and Route Maps to BGP

Hi,
I need some enlightenment! I created two new tabs within BGP.
First is AS-Path where I can create a ACL style AS Path list.
Here I need to know if theres a form parameter to tell the field to count the number up or forbid using the same ACL number:

Second one is a bit tricky. In the Route-Map tab I can create multiple route maps and multiple entries for ONE route map and reference an AS-Path list to it:

But this only works when the content of the AS Path list is just text/number etc., but Quagga expects regexp (https://forum.opnsense.org/index.php?topic=5134.0). Any hints here?
Third is most tricky, in the neighbor tab I added the route-map field as a ModelRelationField where I can choose the route map to add. The problem here is, that when I have ONE route map with two entries like:
route-map SET_IN_FILTER permit 10
 match as-path 3
 set local-preference 300
!
route-map SET_IN_FILTER permit 20
 set local-preference 290

I get two route maps with the same name offered. Is there a form type to tell the UI to only offer one? Or is the logical structure wrong?

https://github.com/mimugmail/plugins/blob/bgp/net/quagga/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml#L68
There's also a sub item which I want to add because in the neigbor config I have to choose a direction, but this also doesn't work.
@fichtner I think a list of all available form types and options would be very helpful 👍
This is my current code base:
https://github.com/mimugmail/plugins/tree/bgp/net/quagga/src/opnsense
Thanks for any help/hint

I think I've found the list:
https://github.com/opnsense/core/tree/master/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes
So AutoNumberField should help to create Sequence IDs.
Perhaps I have to restructure the process of adding route-maps in order to get it done ...

I think I have fixed most things. Only problem right now is that:
https://docs.google.com/document/d/1h-5y_gEAdfrcJJK3kdCJzlp-zYL1hc8Ejy2hqKpkb4c/edit#heading=h.frna2byt2m84
Here the entry is empty. It doesn't get  the name of the routemap.
Could this probably be that the enum of the routemap is below this block?
In my conf I only get:
router bgp 65001
 network <IP_ADDRESS>/24
 neighbor <IP_ADDRESS> remote-as 65333
 neighbor <IP_ADDRESS> update-source em0
 neighbor <IP_ADDRESS> route-map  in
 neighbor <IP_ADDRESS> route-map  out

I tried two differenct approaches for in and out, but nothing workes.
@fabianfrz or @fichtner .. do you have clue?

@mimugmail the reason why this may not work is because you are accessing an array field without a key.

@fabianfrz Thanks! Do you have a reference for a no-brainer like me :)

probably this line:
https://github.com/opnsense/plugins/blob/master/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf#L45

Fixed with #157


How to change file name when use TusDiskStore

Hi ,
as the title, I don't known how to save files use custom file name when I use the TusDiskStore as my store provider.
it seems that hard code to use file id: https://github.com/tusdotnet/tusdotnet/blob/096db753d4af2875179e76f61d4d6ae2e2cc94c8/Source/tusdotnet/Stores/TusDiskStore.cs#L198-L208

another problem ,  I can't use  Custom-File-Id-Provider
the release version can not fine ITusFileIdProvider :

Hi,
Custom file IDs are not yet released to nuget so you will either have to to wait for it or build your own package from source.

Hi,
Custom file IDs are not yet released to nuget so you will either have to to wait for it or build your own package from source.

Oh I see , thanks


Force access rights of the tmp-dir

Got in trouble with a temp-dir that got the wrong access-rights

workaround: umask 0000 before running secotrec-local