2_deploy_contracts fails -  Invalid number of parameters for "undefined". Got 2 expected 1!.

Compiling your contracts...
Building contracts for Oasis
Compiling Migrations.sol...
Compiling SecretBallot.sol...
Starting migrations...

Network name:    'oasis'
Network id:      42261
Block gas limit: 0xf42400

2_deploy_contracts.js
Deploying 'SecretBallot'
Error:  *** Deployment Failed ***
"SecretBallot" -- Invalid number of parameters for "undefined". Got 2 expected 1!.

It looks like we were packaging an older version of truffle with this repo. should have fixed that in https://github.com/oasislabs/secret-ballot/pull/49#pullrequestreview-223508556
If you install truffle globally per the readme, you should get a version that works with the migration script 👍

This is due to an incompatible version of truffle. Please use truffle-oasis.
Install it locally or globally, e.g., via  npm install -g truffle-oasis.

resolve this by using truffle 4.1.7 and adding

compilers: {
solc: {
version: "0.4.23"  // ex:  "0.4.20". (Default: Truffle's installed solc)
}
}
to truffle-config.js

there was also a problem of web3.utils undefined at web3.utils.fromAscii.
It was solved by -> npm install web3-utils.  and

add var web3utils= require('web3-utils');

replace web3.utils.fromAscii with web3utils.fromAscii.

contract is deployed successfully but the truffle migration hangs at eventually return some errors:

saving successful migration to network...
... 0x68ff89b8387403af878e34d7ac86146d307683ea164b5fd5ddf7f9af79d83356
Saving artifacts...
Running migration: 2_deploy_contracts.js
Replacing SecretBallot...
... 0xe604e9cbd4ed6ea8936bb57d8d9dbec24cfd505edae0caf3b090fbf54a289908
SecretBallot: 0x012048011da835101383ff037ea45d057fcfaae2
Saving successful migration to network...
... 0x69550d2351a8b0c71c76831fb5bb65bbb6882f0685c1278077336902b161d4b9
Saving artifacts...
Error: Invalid JSON RPC response: ""
at Object.InvalidResponse (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/web3/node_modules/web3-core-helpers/src/errors.js:42:1)
at e.i.onreadystatechange (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/web3/node_modules/web3-providers-http/src/index.js:92:1)
at e.t.dispatchEvent (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/xhr2-cookies/dist/xml-http-request-event-target.js:34:1)
at e._setReadyState (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/xhr2-cookies/dist/xml-http-request.js:208:1)
at e._onHttpRequestError (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/xhr2-cookies/dist/xml-http-request.js:349:1)
at ClientRequest. (/secret-ballot/node_modules/truffle-hdwallet-provider/dist/webpack:/truffle-hdwallet-provider/Users/fainashalts/truffle-dev/truffle/node_modules/xhr2-cookies/dist/xml-http-request.js:252:47)
at ClientRequest.emit (events.js:182:13)
at TLSSocket.socketErrorListener (_http_client.js:392:9)
at TLSSocket.emit (events.js:182:13)
at emitErrorNT (internal/streams/destroy.js:82:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:50:3)
at process._tickCallback (internal/process/next_tick.js:63:19)

can you try running with --verbose-rpc so we can get a better idea of which request truffle is getting stuck on?


Why two separate release paths? 16.x and 21.x

Hi,
I tried to find some documentation or discussion regarding why there are two separate release paths? 16.x and > 20.x . I would appreciate if someone can point me in the right direction.
I am currently using 16.x and would like to know more before I upgrade to the 21.x. I am exited about the Stateful Runners!
Thanks,
Chinmaya

Anything prefixed with actions-runner-controller- like 0.16.x is a chart release and releases with only tag names are for controller releases!
Also note that RunnerSet needs https://github.com/actions-runner-controller/actions-runner-controller/pull/1126 to scale down reliably when you use webhook-based scaling.


use --pipeline-dir flag to extend the builtin ones not for overriding them

We (w/@dentrax) thought of an idea to increase pipeline configs' UX because the --pipelines-dir flag overrides the built-in pipelines (which is /usr/share/melange/pipelines).
Suppose we are about to create new additional pipelines. In that case, we lose the default built-in pipelines. One workaround could be extending the custom pipelines directory by copying the built-in ones stored in the melange repository.
So, it'd be nice to extend the built-in pipelines with the pipelines given by the --pipeline-dir flag instead of doing workarounds.
WDYT @kaniini?

we are willing to work on this, you can assign it to me ☝

Sounds good to me, lets do it!


Restore application window on notification click

There currently is an issue where the nativefied application does not respond to clicking on a desktop notification. You would expect it to restore and focus its window, but that doesn't work if:

The window is minimized
There is no open window (macOS)

See #221 and possibly #396.
This PR fixes that by adding a click handler to each notification. When clicking the notification the Electron app restores and focuses the main window using BrowserWindow.show(). This seems to handle both cases (restore minimized window / open new window, then focus window).

@sissbruecker makes sense, thanks! Merging.


Bug: Broken User Avatar On Nav

Describe the bug
Below is a screenshot of how it looks currently.

Steps to reproduce

Go to https://beta.insights.opensauced.pizza/
Click on connect to GitHub on the top nav
Approve connection
Once approved, check the top nav to see the broken avatar

Affected services
opensauced.pizza
Platforms
Desktop, Mobile, Tablet
Browsers
Chrome
Environment
Production, Development
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Contributing Docs

[ ] I agree to follow this project's Contribution Docs

@ThePromiseBenard  Did you try to reconnect after disconnecting the GitHub account? Still, getting the issue?

@shamimbinnur yes I did. It still gives the same issue.

I'm closing this as it has been resolved in https://github.com/open-sauced/insights/pull/755


glib: fix build on aarch64-darwin

Description of changes
Fixes build on aarch64-darwin as a followup to #321913.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] 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

[ ] 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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.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 glib
My aarch64-darwin builder is currently building bison 😅

We need this for staging-next, but you included many commits from staging-next..staging.

And your rebuilding everything is exactly because of that.

I just started building glib on my mac, it'll probably take a while. Do you indent to change the base? Should I cancel and wait for you to rebase?

Should be fine now.

@ofborg build glib

It failed there
292/341 glib:gio / gsocketclient-slow                                          ERROR             1.73s   killed by signal 6 SIGABRT

but probably just an overloaded builder?

Ah no, a sandboxing issue, more likely.
GLib-GIO:ERROR:../gio/tests/gsocketclient-slow.c:231:test_connection_failed: assertion failed (local_error == (g-io-error-quark, 39)): Could not connect to localhost: Can't assign requested address (g-io-error-quark, 0)

My check was on a machine with defaults (without sandboxing).

Built for me.
johnrtitor@darwin01 ~ % nix build "github:nixos/nixpkgs/refs/pull/322988/merge#glib" --print-out-paths
/nix/store/4dgdwdnc1fl1fi8r4bjylwgm5lcdzahs-glib-2.80.3-bin


WIP: MAISTRA-2426 move FederationStatus into MeshFederation

Signed-off-by: rcernich<EMAIL_ADDRESS>Please provide a description for what this PR is for.
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

replaced by #393


Debian 11 support is broken

I was installing the latest version on Debian 11, which ship with galera-3 AND galera-4 packages.
For some reason (i didn't debugged it) Debian 11 is taking galera-3 as correct package.
But this broke the mariadb-server 10.5 version shipped with Debian.
So the loop is:

at first run, mariadb-server is installed along with galera-4
at second run. galera-3 is installed (/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install galera-3) which cause

Get:1 http://deb.debian.org/debian bullseye/main amd64 galera-3 amd64 25.3.31-2+b1 [882 kB]
Fetched 882 kB in 0s (15.1 MB/s)
(Reading database ... 71749 files and directories currently installed.)
Removing mariadb-server (1:10.5.11-1) ...
Removing mariadb-server-10.5 (1:10.5.11-1) ...

back to point 1

Easy workaround, specify galera_package_name as the package needed by the class.
The fix should be in the file data/Debian-family.yaml, still i didn't checked why the galera-3 package is picked up (i don't see a hard default...)

The work of @altima in #173 seems to fix that, but you will need to set vendor type and version, as the module currently defaults to 10.3.

@mdklapwijk Could you submit a PR and add the missing pieces (i.e. creating data/Debian-11.yaml)?

PR was merged, this should work with the development version. A new release of this module is still pending.


Add completions for default import mixins/formatters

When importing file or package as default, expose all mixins and formatters in appropriate places.

Done.


feat(core): Lets service keys to be stored as jwk sets

Adds jwk set output to init-keys for kas
updates config to replace KeyList with a key set path
Parses the jwk set to the existing format internally, which is a little ugly

Relates to https://github.com/opentdf/platform/issues/1085

closing as we reconsider key management utilities and admin / day 2 experience


Fix for stevvooe:check-storage-drivers-list-path-not-found in OSS driver

Signed-off-by: Li Yi<EMAIL_ADDRESS>

@denverdino Please make this PR against https://github.com/stevvooe/distribution/tree/check-storage-drivers-list-path-not-found. The PR should open up in stevvooe/distribution, not docker/distribution. Use stevvooe/distribution#2 as an example of how to do this PR properly.
If you need help with the directions, please let us know.


Re-fix DrawBillboardPro to allow source of negative size (#3197)

The root cause of issue #3197 seems to be that having only one dimension with a negative value in source or size causes the vertex order of the billboard to become clockwise, which cannot be rendered correctly when backface culling is enabled. This PR should allow source and size with any negative dimensions to be rendered correctly, and flipped as expected.

@bohonghuang Nice! Thank you very much for this improvement! :)

My pleasure :)


edit page title display bug

When editing the page title, the title content is not displayed in the editing state

Thanks, I have some time in about 1-2 Weeks to go through all reports and try to fix them.

Fixed in 0.3


how to generate mbtiles from topojson?

I have folders whith osm topoJson tiles. How can I generate mbtiles?

This doesn't really seem like an issue with Tangram ES - closing.


Chatbot button not visible when using ConnectOn

Hi,
we are using the "connectOn" state "open" to reduce unnecessary requests combined with "hideWhenNotConnected" state "false".
However since we use that, the chatbot widget / button is hidden by default.
 ...
Before that usage the chatbot was visible but did had to many requests, so we applied these changes.
Now the div will just stay on "display: none" (unless manually changed in dev tools).
Is this a known issue or "feature"?
How can we fix that or is there an alternative way to reduce the requests done to the chatbot, while the chat is not opened?
Thanks in advance.

@fa12behrens ,
I am facing the same issue with connectOn property. Have you found any solution?

Hi pramod1812,
unfortunately we did not find any solution to it yet.
As the div container which is display: hidden is created in the <Widget... step, so it cannot directly be prevented, but we are searching for a work around.
The problem also seems, that at least for us the ConnectOn does really just hide the div container, as soon as it is manually changed to display: block for example, than the requests will start being made again, despite the chat window being still closed, just by the display of the chat button.
So we are thinking of adding a placeholder button, which is the same as the chatbot one but doesn't have it's logic.
When this placeholder is clicked or hovered over, then it will fade and the true chatbot button will be displayed.
This requires additional javascript action and the solution is not flawless, but we will try it and see if it is an actual workaround for that problem.
But of course a parameter which would prevent/stop requests when the chat itself is not open would be a better option.


iterator from make_reader hangs after 10 epochs even if num_epochs=None

In the example below, I'm iterating over the MNIST parquet file generated by the MNIST example
num_epochs is set to None to get the "infinite number of epochs" behavior.
However, the iterator loop hangs after 600 batches. Given that the parquet file contains 60000 records and I requested 1000 as my batch size, this corresponds to 10 epochs.
Code to reproduce:
import tensorflow as tf
from petastorm import make_reader
from petastorm.tf_utils import make_petastorm_dataset

def streaming_parser(serialized_example):
    image_data = tf.cast(tf.reshape(serialized_example.image, [784]), tf.float32)
    label = serialized_example.digit
    return {"image_data": image_data}, label

with make_reader("s3://path/to/train",
                 num_epochs=None,
                 cur_shard=0,
                 shard_count=1) as reader:
    exp_dataset = (make_petastorm_dataset(reader)
                   .map(streaming_parser)
                   .batch(1000))

features, labels = exp_dataset.make_one_shot_iterator().get_next()

with tf.Session() as sess:
    sess.run(tf.local_variables_initializer())
    sess.run(tf.global_variables_initializer())
    cum_count = 0
    for idx in range(610):
        labels_manifested = sess.run([labels])
        count = labels_manifested[0].shape[0]
        cum_count += count
        print(f"Batch {idx}, contains {count} records, total records read is {cum_count}")

Please try adjusting the scope of the make_reader context manager. I think that in your case, the reader is actually stopped because you exit the context manager, which triggers earlier then expected epoch termination.
This code works for me:
import tensorflow as tf
from petastorm import make_reader
from petastorm.tf_utils import make_petastorm_dataset

def streaming_parser(serialized_example):
    image_data = tf.cast(tf.reshape(serialized_example.image, [784]), tf.float32)
    label = serialized_example.digit
    return {"image_data": image_data}, label

with make_reader("file:///tmp/mnist/train",
                 num_epochs=1000,
                 workers_count=1) as reader:
    exp_dataset = (make_petastorm_dataset(reader)
                   .map(streaming_parser)
                   .batch(1000))

    features, labels = exp_dataset.make_one_shot_iterator().get_next()

    with tf.Session() as sess:
        sess.run(tf.local_variables_initializer())
        sess.run(tf.global_variables_initializer())
        cum_count = 0
        for idx in range(610):
            labels_manifested = sess.run([labels])
            count = labels_manifested[0].shape[0]
            cum_count += count
            print(f"Batch {idx}, contains {count} records, total records read is {cum_count}")

Okay - that makes sense. It's working with the expanded context manager scope. Thanks.

Please try adjusting the scope of the make_reader context manager. I think that in your case, the reader is actually stopped because you exit the context manager, which triggers earlier then expected epoch termination.
This code works for me:
import tensorflow as tf
from petastorm import make_reader
from petastorm.tf_utils import make_petastorm_dataset

def streaming_parser(serialized_example):
    image_data = tf.cast(tf.reshape(serialized_example.image, [784]), tf.float32)
    label = serialized_example.digit
    return {"image_data": image_data}, label

with make_reader("file:///tmp/mnist/train",
                 num_epochs=1000,
                 workers_count=1) as reader:
    exp_dataset = (make_petastorm_dataset(reader)
                   .map(streaming_parser)
                   .batch(1000))

    features, labels = exp_dataset.make_one_shot_iterator().get_next()

    with tf.Session() as sess:
        sess.run(tf.local_variables_initializer())
        sess.run(tf.global_variables_initializer())
        cum_count = 0
        for idx in range(610):
            labels_manifested = sess.run([labels])
            count = labels_manifested[0].shape[0]
            cum_count += count
            print(f"Batch {idx}, contains {count} records, total records read is {cum_count}")

Hi, Selitvin. I'm wondering if there is a safe way to use dataset without context manager. As I need to input dataset into multiple different frameworks I don't want all the code to be inside a context manager.


Review Travis

I'm seeing Travis build failures more regularly, creating an iissue as a reminder to review and fix what I think is an intermittent test. Or at least review and fix the failures

this seems to be a RM bug that @GantMan filed a bug report on (ticket 2989)

Fixed by gant


Modularize Attitude Control

Describe problem solved by the proposed pull request
Like discussed with @dagar separating core control calculations from organizational logic like task management with clear interfaces is desired for code readability, simple automatic unit testing, reusability (e.g. fixed wing attitude) and replaceability.
So I'm starting here with the example for the attitude control logic which I would know very well how to unit test because I did a lot of testing with hardcoded values before pushing it here: #8003 I had to get rid of all my test because there was no simple way to contribute them as well. My first goal is to enable them.
Describe your preferred solution
All attitude control calculations are separated into the AttitudeControl class which can then have its unit test set that allows for automatic evaluation. This class should also be more readable due to clear members and interfaces, is hence easier to extend and improve further and could also be reused for fixed wing attitude control.

I'd be interested in seeing the unit test integration. The one thing I really wanted to figure out is unit testing we can also run on the actual embedded hardware. So far I've failed with gtest (platform and c++ issues), but I think Catch2 might be workable. https://github.com/catchorg/Catch2

@dagar I looked into Catch2 yesterday. For the basic tests it's more simple to include buuut on the long run I fear it might strike us back because it has far less customizability than gtest and also e.g. no built in mocking. It could end up with fast setup for embedded and a lot more work later.

Devcall: Consent unit tests are necessary and valuable and should be integrated in the code base such that tests can be added with really low effort. Major concern we also need unit testing on hardware. I start the discussion about that with @dagar anyone who wants to join please write. I'll should probably create an issue for that whole topic.

@dagar My private hacking branch is here: https://github.com/PX4/Firmware/compare/master...MaEtUgR:gtest but I can not yet encourage anyone to look at it otherwise I would have pushed it here. I found this interesting about running gtest on hardware: https://stackoverflow.com/questions/38427998/google-test-on-bare-metal-stm32-mcu

@dagar ok, now that part is done and I'll follow up with the unit test pr.

@dagar

rebased on master without conflict (diff)
refactored some parameter handling for gains and rate limits that catched my eyes in https://github.com/PX4/Firmware/pull/11308/commits/4556184bd8efc829f03429febb79d55cd3664956
finally addressed your last open review comment in https://github.com/PX4/Firmware/pull/11308/commits/71b9d69c123b4cce8304343a5f58c1b291c7542c

Is this good to go?

Devcall: No objections for merging even before the release since it's just refactoring to enable unit testing. But we need hardware tests to make sure there is no problem with CPU and Memory on the microcontroller. So we add it to the flight test teams list and if possible do a HITL test.

Tested on Pixhawk v2 Cube; No issues were noted, good flight, in general, tested in Position, Altitude, Stabilized, Mission and RTL.
https://review.px4.io/plot_app?log=7dccc216-aa4b-4d6e-9793-a2172d9461c1

Testes on Pixhawk 4 v5; no issues were noted, good flight in general.
https://review.px4.io/plot_app?log=cd6a998a-fddf-489a-ae10-c5c01090a1df

Thanks team for all the testing!! Mergeable @dagar ?

Thanks for the reviews. As I wrote this is the refactoring step only. I'll follow up with testing and changes to the behavior as soon as this is merged and I consider it safe now.


Cluster creation stuck in CreateMaster step with spot requests

Environment:

AWS ParallelCluster / CfnCluster version  aws-parallelcluster-2.4.1
OS: ubuntu1604
Scheduler: slurm
Master instance type: m4.xlarge
Compute instance type: m4.xlarge

Bug description and how to reproduce:
The past couple of days (two days ago and just now) I tried to create a spot cluster but both times it got stuck in the CreateMaster step, showing no progress.
I then changed the configuration to ondemand and the cluster was created normally. The weird part is that yesterday and for days before that I was able to create spot clusters just fine. And given that the master is an on-demand instance anyway, whether the cluster is spot or ondemand should not affect the master's creation, correct?
When this happened I tried creating both ondemand and spot instances by hand in my console to see if there was an issue with zone availability, but they both completed just fine.
Additional context:
Any other context about the problem. E.g.:

configuration file

[aws]
aws_region_name = us-east-1

[ebs default]
volume_size = 40

[cluster default]
key_name = <redacted>
initial_queue_size = 3
max_queue_size = 3
maintain_initial_size = 3
master_instance_type = m4.xlarge
compute_instance_type = m4.xlarge
cluster_type = spot
vpc_settings = public
ebs_settings = default
base_os = ubuntu1604
scheduler = slurm
placement_group = DYNAMIC
s3_read_write_resource = <>

[vpc public]
vpc_id = vpc-56fd132f
master_subnet_id = subnet-10683d2c

[global]
cluster_template = default
update_check = true
sanity_check = true

[aliases]
ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS}

pre/post-install scripts, if any

screenshots, if useful

if the cluster fails creation, please re-execute create action using --norollback option and attach /var/log/cfn-init.log, /var/log/cloud-init.log and /var/log/cloud-init-output.log files from the Master node

The --norollback option had no effect, the master is never created, hence no logs.

Hi,
Could you share the stack events with us in order to better understand where the failure is occurring and what resources are still pending creation? Also are you waiting for the stack timeout or just deleting the stack when it hangs? Did you check in the EC2 console to see if any node is coming up?
Here is a command you could use to retrieve stack events:
aws cloudformation describe-stack-events --stack-name parallelcluster-stackname

Hello @demartinofra , sure you can find the stack events here.
Not sure how long the stack timeout is, I'm pretty sure I've waited more than 15-30 minutes for the MasterServer step to complete.
No EC2 nodes are coming up, as I said I can manually create instances so not sure why none are coming up.
Today I tried launching both on-demand and spot clusters and both were stuck in the Status: MasterServer - CREATE_IN_PROGRESS step.

Hi,
looks like the availability zone where your subnet resides is not supporting m5 instances.
You could try choosing a different subnet for compute instances if you want to keep the master in the current subnet, or choosing another subnet for both master and compute instances by specifying only mster_subnet_id. See here: https://docs.aws.amazon.com/parallelcluster/latest/ug/vpc-section.html#compute-subnet-id

Thank you @ddeidda . Is there a way to tell if a specific subnet support the instances I'm trying to launch?
When I run pcluster configure I get a list of subnets to choose from and I can't tell the differences between them.

You can run this command to check if you can launch an instance type on your subnet:
aws ec2 run-instances --instance-type <INSTANCE_TYPE> --dry-run --image-id <AMI_ID> --subnet-id <SUBNET_ID>
More details here:
https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-INSTANCE_TYPE_NOT_SUPPORTED-error.html

Thanks.
BTW I tried using the AMI from the 2.4.1 branch (linked to from the docs) list like this:
aws ec2 run-instances --instance-type m5.xlarge --dry-run --image-id ami-0eacbde87adcd79a4 --subnet-id subnet-15d56619
but got:
An error occurred (InvalidAMIID.NotFound) when calling the RunInstances operation: The image id '[ami-0eacbde87adcd79a4]' does not exist
using the AMI from the master branch ami-0c535eb8c5a80b962 seems to have worked fine:
>aws ec2 run-instances --instance-type m5.xlarge --dry-run --image-id ami-0c535eb8c5a80b962 --subnet-id subnet-15d56619

An error occurred (DryRunOperation) when calling the RunInstances operation: Request would have succeeded, but DryRun flag is set.

I'm closing this for now because it's hard to replicate, if I run into the same issues with the CreateMaster step I'll re-open.


[All hosts](shared runtime) add Word support

Updates the yo office step to include Word as an option (as well as indicate there are other options to that are supported.)

Docs Build status updates of commit 88a9e06:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:warning:Warning
View
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md

Line 21, Column 1: [Warning: code-block-indented - See documentation] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```).

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit df79d1b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 811fb22:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 71fdedf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 6a0eb72:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 28352d4:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 4c845bf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/develop/configure-your-add-in-to-use-a-shared-runtime.md
:white_check_mark:Succeeded
View

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


db writes synchronously on every request.

The .record_request method will write to the database on every request.  This could be a performance issue, and will only get worse as this table grows.
I've made a branch which moves this function to a background job.
Maybe this is too big of a change or takes things in a different direction that you are thinking.  If not, let me know, and I'll open an actual pull request.

Hi, thanks for sharing you changes. Yes, it slows down each request a little bit. However the main issue is to write to the database for each request even if the task is delayed in the background. If you have 1000 req/s you still have 1000 inserts or updates per seconds into the database. That is very annoying because it can saturate the database.
I have in mind to store the data in Redis for a short period of time. That is very fast. Then, a task will periodically transfer those data from Redis to the database. Thus there will be a lot less write queries than requests and the workload for the database will be lowered.


Fixed: Refactor ExecuteCommand

Currently, we are passing a map[string]interface{} as the only argument of the ExecuteCommand. However, it does not provide any information about what should be included in this map.
In order to make it clean, here is a new command named ExecuteCommandWithParameters. It's intended to replace the ExecuteCommand that I marked as deprecated.
If the previous command is used somewhere, please let me know.
Otherwise, I will remove it soon.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #312   +/-   ##
=======================================
  Coverage   55.14%   55.14%
=======================================
  Files          46       46
  Lines        4704     4704
=======================================
  Hits         2594     2594
  Misses       1909     1909
  Partials      201      201

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 b0eb379...877aea3. Read the comment docs.

I have found another use of the ExecuteCommand in the enforcerd. PR#196 has been submitted and so the ExecuteCommandWithParameters could be renamed ExecuteCommand.

Moving back to two versions of the execute command to be backward compatible with enforcers and tests.


Support Ubuntu 24.04

Crate name
pacmap
Build failure link
https://docs.rs/crate/pacmap/0.2.1/builds/1531317
Additional details
Any crate using USearch requires GCC 13+. While I can make a separate crate build environment for USearch and pacmap and install GCC 13, is upgrading the builder to Ubuntu 24.04 LTS being considered? I believe Github Actions is currently in the process of making this the ubuntu-latest runner and this would eliminate build failures from crates requiring recent GCC versions.

there is an WIP PR that needs rebasing & some checks / fixes: https://github.com/rust-lang/crates-build-env/pull/151
Sadly it's always some work to do the upgrade.
also related: #2587


[Bug]: Execution time idles for 60 seconds after single-model execution

Is there an existing issue for this?

[x] I have searched the existing issues

Current Behavior
When I execute my (very simple) test model from the dbt command line, execution claims to have taken 62 seconds:

However, this does not reflect the actual performance of the queries in Dremio:

As you can see, the actual query execution time was less than 4 seconds for everything. Then, dbt apparently cooled its heels for 60 seconds until it hit, presumably, some sort of timeout.
This is a new behavior from my experience using the (admittedly very old) previous versions of the dbt-dremio adapter.  I understand this new version is making requests in a very different way and I am very happy with all of the new features, but I don't understand why this is happening.
Expected Behavior
I expect the model queries to execute and the job to return with completed status immediately afterward.
Steps To Reproduce

Build single dbt model
Single thread profile or multi-thread profile doesn't matter
Object storage is not $scratch, but local storage
Run model against Dremio instance

Environment
- OS: Ubuntu in JupyterHub/Kubernetes
- dbt-dremio: 1.4.5
- Dremio Software: 24.0.0 on-premise
- Dremio Cloud: no

Relevant log output
[15:24:26] jovyan@jupyter-awaschick-40hlkagency-2ecom:~/shared/awaschick/jupyter-automation-qa-delivery-kit/notebooks/dbt/report $ dbt run --vars '{"dremio_database": "_sandbox", "schema_prefix": "hello"}'
15:24:33  Running with dbt=1.4.5
15:24:35  Found 1 model, 0 tests, 0 snapshots, 0 analyses, 333 macros, 0 operations, 0 seed files, 1 source, 0 exposures, 0 metrics
15:24:35
15:24:38  Concurrency: 2 threads (target='default')
15:24:38
15:24:38  1 of 1 START sql table model local_nfs_storage_0.dbt-scratch.qa-delivery-kit-dev.hello.hello  [RUN]
15:25:37  1 of 1 OK created sql table model local_nfs_storage_0.dbt-scratch.qa-delivery-kit-dev.hello.hello  [72138 in 59.19s]
15:25:38
15:25:38  Finished running 1 table model in 0 hours 1 minutes and 2.19 seconds (62.19s).
15:25:38
15:25:38  Completed successfully
15:25:38
15:25:38  Done. PASS=1 WARN=0 ERROR=0 SKIP=0 TOTAL=1

@awaschick if there is no sensitive information, are you able to share the dbt.log file from under the project directory?

@jlarue26 Certainly sir!  I re-ran the model again fresh just now, with similar performance outcome, yielding the log:
dbt.log
My profile for this is nothing out of the ordinary, but in case it is useful:
config:
  partial_parse: false
  use_colors: true
  send_anonymous_usage_stats: false

local_dremio:
  outputs:
    default:
      object_storage_source: local_nfs_storage_0
      object_storage_path: dbt-scratch.qa-delivery-kit-dev.hello
      password:[redacted]
      port: 9047
      software_host: dremio-client.dremio.svc.cluster.local
      threads: 1
      type: dremio
      use_ssl: false
      user: andy
  target: default

@jlarue26 Also to confirm, the execution time reported in dbt.log, of 56.08 seconds, does not match the execution time of the job in Dremio:

Super strange.

Thanks @awaschick , we will take a look. I can't provide a timeframe for resolution yet, but are starting to investigate.

Another interesting thing on this issue: It seems my dbt job is pulling the results for my materialization query back!  The server is not idle, checking the master node's logs, I see it's not idling at all, but fielding a whole ton of requests like this:
<IP_ADDRESS> - - [11/Apr/2023:21:01:04 +0000] "GET /api/v3/job/1bca3583-bd03-25a2-2dbf-84e88e0aab00/results?offset=23801&limit=100 HTTP/1.1" 200 559 "-" "python-requests/2.26.0"
The job, back in dbt, does in fact show a recordcount... but I don't understand why I would need to pull back all the data in a model. In fact for a lot of my models, which have millions of rows, this would be super-not-good.  Is there a reason it's doing this?  Can I prevent it from doing this?

More insight through irresponsible hacky-cheating: If I make edits to cursor.py in my installed dbt-dremio in dbt/adapters/dremio/api, I can effect the expected performance by commenting out the while expression in _populate_job_results that iterates over all rows in the materialized table.
Presumably, this hack has all kinds of negative edge case for operations that do not involve a straight-up table materialization. However, in this use-case, I got precisely the intended results, the job completed in a timely manner, the table materialized fully, the operation ran in 3 seconds.
Is there a way to forego this step for tasks that do not require fully consuming the content of the remote table?

Hi @awaschick, just out of curiosity, how many columns does your test model have?

Hey @ravjotbrar!  My test model has 45 columns.  It's very basic, it does a select * from an existing materialized table.

We're also facing similar issues - the actual job will be done, but DBT will wait for quite some time before returning. Have also experienced timeouts waiting

Looks like fetch is actually hardcoded to always be True? Is this a bug?
https://github.com/dremio/dbt-dremio/blob/09cceed52ab5c004811555172fe1208b51ed36dc/dbt/adapters/dremio/connections.py#L179C21-L179C21

Sorry for the spam. Python is not my native language, so takes some time to dig deep.
Regarding why fetch is hardcoded to True in the Execute method, it kinda makes sense as add_query(), which is called a couple of lines before will always fetch everything. This indicates that maybe some refactoring is necessary to get fetch_result to work as intended. One idea could be to only call _populate_job_results if fetch_results is set to True, as @awaschick mentions.
I do feel though, that the big question is why does the Dremio API give you the created table as part of the result when you run a create table query through the API? When you run the same query in the console you only get a single line response, that the table was created, which I feel is normal SQL behavior.

Final post and I will shut-up. Though I would post my fix here.
cursor.py:
def execute(self, sql, bindings=None, fetch=True):
if self.closed:
raise Exception("CursorClosed")
if bindings is None:
self._initialize()
        json_payload = sql_endpoint(self._parameters, sql, context=None)

        self._job_id = json_payload["id"]

        self._populate_rowcount()
        if fetch:
            self._populate_job_results()
        self._populate_results_table()

    else:
        raise Exception("Bindings not currently supported.")

connection.py:
def add_query(self, sql, auto_begin=True, bindings=None, abridge_sql_log=False, fetch=True):
    connection = self.get_thread_connection()
    if auto_begin and connection.transaction_open is False:
        self.begin()

    logger.debug(f'Using {self.TYPE} connection "{connection.name}". fetch={fetch}')

    with self.exception_handler(sql):
        if abridge_sql_log:
            logger.debug("On {}: {}....".format(connection.name, sql[0:512]))
        else:
            logger.debug("On {}: {}".format(connection.name, sql))

        pre = time.time()
        cursor = connection.handle.cursor()

        if bindings is None:
            cursor.execute(sql, fetch=fetch)
        else:
            logger.debug(f"Bindings: {bindings}")
            cursor.execute(sql, bindings, fetch=fetch)

        logger.debug(
            "SQL status: {} in {:0.2f} seconds".format(
                self.get_response(cursor), (time.time() - pre)
            )
        )
        return connection, cursor

connection.py:
def execute(
self, sql: str, auto_begin: bool = False, fetch: bool = False
) -> Tuple[AdapterResponse, agate.Table]:
sql = self._add_query_comment(sql)
_, cursor = self.add_query(sql, auto_begin, fetch=fetch)
response = self.get_response(cursor)
# fetch = True
if fetch:
table = cursor.table
else:
table = dbt.clients.agate_helper.empty_table()
    return response, table


SC-22 # Improve overall test coverage

Added

SC-22: Various test cases for multiple files/functions/lines

Changed

SC-22: Moved configuration based routes and CORS configuration from a .json file (pointed at from package.json:main) to .blinkmrc.json

Code Review Notes

Probably worth reviewing these one commit at a time.

Known incomplete work to be tackled in future:

[ ] Update server-cli-service to use new updates to server-cli

LGTM 👍
I'll go add some documentation changes now


make sure that create new dat works as intended with stats

The bit in models/repo.js looks good and consistent with CLI.
Sorry I had missed the no importing before =). That used to be done automatically.

I see!

Nice!


feat(#23): Show roll quality (%) on relics

Pull Request

Description

added new tab in the import/save page
updated DB
added new file for lib to grade relics
updated the relic preview component to include the substats

Checklist

[ ] I have added commit messages that are descriptive and meaningful.
[ ] I have tested the changes locally.
[ ] I have reviewed the code changes.

Screenshots
The substats in relics tab

Tooltip to show roll value

The overall display in the characters tab

Ran into some crashed on the character page

Thanks for helping with this! I'm editing the roll grading so it doesn't have to be on the import menu, will update tomorrow.

Glad I can help. Yeah I added it at the time not knowing if we will need it


Permissions

Can you please update this documentation to include what kind of permissions is needed to perform Autopilot Local Reset, or link to documentation describing roles that are needed. Thanks

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

ID: 97ddb8fb-cc02-9821-d2d3-8bd724021e6f
Version Independent ID: e003bcd6-b285-3b46-dbf3-1ee91eef2b1b
Content: Reset devices using local Windows Autopilot Reset
Content Source: windows/deployment/windows-autopilot/windows-autopilot-reset-local.md
Product: w10
GitHub Login: @greg-lindsay
Microsoft Alias: greg-lindsay

@officedocsbot assign @mypil

@trophywtf - Thank you for submitting feedback.
From our understanding, the issue has been resolved but it may take a few days for the merged content to appear in the article. If you feel it hasn't been resolved, please re-open this issue.
Thank you for your contribution to make the docs better! Much appreciated!

@officedocsbot close


feat(monosize): add --fixture argument to measure command to target specific fixture files

This adds an optional --fixtures argument to allow the monosize measure command to target specific fixtures by filename or pattern.
README updated with examples.

Thanks, @Hotell! I've incorporated those changes.

Thanks, @Hotell! I've incorporated those changes.

two more things and we should be ready to merge. ty!

Thanks @hotell! Updated.


[Candidate 1v1 [RANK] Melting Snow ZH v4] Infantry can move through fence

Issue Description
Infantry can move through fence.
Expected behavior
Infantry cannot move through fence.
Screenshots

After testing 5 minutes forth and back a fence at the edge is in most cases passable to an extent.
My decision is to delete it here, it may be different with other fences.
Fixes also impassable terrain right top of the map together with water tank placement.

Fixed with https://github.com/xezon/GeneralsRankedMaps/commit/ed405e6ca1e66ca1e43b42f7c11329f3747b4c14


Batch deadman is triggering off batches received not total points received

If a query returns zero results the deadman doesn't trigger because it successfully got an empty result. We need to change it to trigger off points returned.

Turns out this is not a bug and the issue was created by testing an older version


Manual Validation task not supported in Azure DevOps server 2020?

This task doesn't seem available in Azure DevOps server 2020.

Questions:

Am I correct in stating this, or do I miss anything?
Should I create a PR for updating the documentation?

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

ID: 43cdab75-b48a-ba18-11da-a50ed8e680a6
Version Independent ID: 8422d73e-5a3f-91d6-edbc-ccd9c968cc9a
Content: Manual Validation task - Azure Pipelines
Content Source: docs/pipelines/tasks/utility/manual-validation.md
Product: devops
Technology: devops-cicd-tasks
GitHub Login: @raiyan
Microsoft Alias: moala

@FlorisDevreese - Floris, thanks for your feedback. Here are some resources that might address your immediate question:

Azure DevOps Services
Azure DevOps Support Bot
Azure DevOps on Stack Overflow

Your input helps improve our documentation. When you're suggesting a simple change to the documentation, it may be faster for you to submit the edit yourself via a Pull Request (PR). You can do so by following these steps:

Navigate to the page of interest
Select the "Edit" button at the top right of the page
Select the "Pencil" icon on the right
Modify the text within the text box in markdown format
Name your file change and copy the link to your Git Issue into the "extended description" box
Select "Propose file change"
Select "Create pull request" on the 'Comparing changes' page
Select "Create pull request" on the 'Open a pull request' page
Wait for an author to review and approve the change request - this can take a bit depending on the complexity

Doing this will allow authors to directly add your text to the documentation. This also displays your github image on the page of authors, and list you as a contributor to the documentation.
@raiyanalam Please take a look at this issue.

I am no longer working in this area. Adding @pulkitaggarwl and @rohit-batra to look into this.

duplicate of #9833

Closed this issue as it is indeed a copy of #9833


invalid operation: y == x (mismatched types ... )

Hi,
I encountered this problem after updating our dependencies. I'm unsure when it was introduced but could pin it down to a last working revision if that information is needed.
It seems to be related to the order in which arguments are passed down. tx.Exec(a,b,c) throws the error in the title but if i shuffle the arguments in the query around it suddenly works.
I posted code to produce the issues in this gist which throws the following error for me:
panic: invalid operation: 11 == 0.4 (mismatched types int64 and float64)

goroutine 1 [running]:
main.check(0xc12780, 0xc4201539f0)
	/home/user/go/src/test/main.go:12 +0x4a
main.main()
	/home/user/go/src/test/main.go:99 +0x939
exit status 2

I've just locally updated all ql dependecies and tested master at tip https://github.com/cznic/ql/commit/8c32ff10fdc2810e93a6e127119d95545497909e. go test passes cleanly. Please provide a recipe how to reproduce the failure, thank you.
jnml@4670:~/src/github.com/cznic/ql> go get -u -v
github.com/cznic/ql (download)
github.com/cznic/b (download)
github.com/cznic/golex (download)
github.com/cznic/lldb (download)
github.com/cznic/fileutil (download)
github.com/cznic/internal (download)
github.com/cznic/mathutil (download)
github.com/edsrzf/mmap-go (download)
github.com/cznic/sortutil (download)
github.com/cznic/zappy (download)
github.com/cznic/strutil (download)
github.com/cznic/b
github.com/cznic/fileutil
github.com/cznic/zappy
github.com/cznic/ql/vendored/github.com/camlistore/go4/lock
github.com/cznic/internal/file
github.com/cznic/lldb
github.com/cznic/ql
jnml@4670:~/src/github.com/cznic/ql> go test |& tee log
PASS
ok  	github.com/cznic/ql	9.684s
jnml@4670:~/src/github.com/cznic/ql>

The file in the gist doesn't work for you? I turn it into a PR which makes it a test on the driver package.

Sorry, I'm heavily multitasking right now and completely missed the link. The repro PR is a good idea, go on please. Please add yourself to the AUTHORS/CONTRIBUTORS files, thank you.

No problem. I know such days very well. See #191.

@cryptix Sorry for the delay.

de nada! very glad you found the problem.


Un-normalizing statistics for Google robot tasks

Hi, I'm playing with the OpenVLA model and I want to evaluate this model on SimplerEnv's Google robot tasks. Since there is a unnorm_key argument in the predict_action method, I assume that that's related to some dataset-specific bias terms and has to be changed if I use some other datasets. However I saw that for the openvla-7b model, there's no google-related keys in the norm_stats dictionary. Does that mean I have to retrain/fine-tune the model on Google tasks? Also, I saw you did some Google robot evaluations in the paper, have you released related code? Thanks in advance for your help!

Never mind, I think I found the unnorm_key for Google which is fractal20220817_data. I also want to make sure that I should use bridge_orig for SimplerEnv's WidowX tasks right?

I'm struggling to get OpenVLA to work on this kind of scenarios:
Task: pick up spoon and place on towel

I was using the bridge_orig as the unnorm key, but that might be not the correct option. Do you know which key I should choose?

Hi @siddk @kpertsch @moojink, sorry to ping you guys, but do you have any clues what unnorm key I should use in the above scenario? Thanks in advance for the help!

Hey sorry for the late reply!
The unnorm_keys you are using are correct for both Bridge and Google Robot.
When I tried SIMPLER before, OpenVLA seemed to work pretty well on the Google robot tasks and less well on the Bridge tasks, since there the visual real-to-sim domain gap is wider. Can you try the google robot tasks?
I am pasting my SIMPLER script below -- it won't quite run out of the box since it's not yet adapted to the release code (we need a bit of time to clean this up), but figured it could be helpful for you to see the sticky action logic required for the Google Robot (this is copied from SIMPLER Octo eval, which used the same logic).
The reason Octo & OpenVLA need sticky gripper is that during their training we convert the "relative gripper actions" -- +1 for opening, -1 for closing -- into "absolute gripper actions" -- +1 for opened, -1 for closed. So during inference we need to convert them back to relative, but need to apply the relative opening / closing actions for multiple timesteps in a row for the gripper to actually fully close.
Hope this helps your investigations!
"""
eval_model_in_simpler_env.py

Runs a model checkpoint in a simulated SIMPLER environment.

Usage:
    python experiments/robot/libero/eval_model_in_simpler_env.py \
        --model.type <VLM_TYPE> \
        --pretrained_checkpoint <CHECKPOINT_PATH>
"""

import os
import sys
import time
from dataclasses import dataclass, field
from pathlib import Path
from typing import Union

import draccus
import numpy as np
import tqdm

import wandb
from prismatic.conf import ModelConfig, ModelRegistry

# TODO (moojink) Hack so that the interpreter can find experiments.robot
sys.path.append("../..")
from experiments.robot.simpler.simpler_utils import (
    get_simpler_env,
    get_simpler_img,
    process_simpler_action,
)
from experiments.robot.utils import (
    get_action,
    get_image_resize_size,
    get_model,
)

assert "MS2_ASSET_DIR" in os.environ, (
    "Environment variable MS2_ASSET_DIR not set. "
    "Usage: `MS2_ASSET_DIR=./ManiSkill2_real2sim/data python test_real2sim.py ...`"
)
DATE_TIME = time.strftime("%Y_%m_%d-%H_%M_%S")

@dataclass
class GenerateConfig:
    # fmt: off

    # Pre-trained model class
    model: ModelConfig = field(
        default_factory=ModelConfig.get_choice_class(ModelRegistry.REPRODUCTION_7B.model_id)
    )
    model_family: str = "llava"

    # Model Parameters
    pretrained_checkpoint: Union[str, Path] = Path(
        "/shared/karl/models/open_vla/siglip-224px+mx-oxe-magic-soup+n8+b32+x7/"
        "checkpoints/step-152500-epoch-27-loss=0.1637.pt"
    )

    # Choose from 'bridge_orig' / 'fractal20220817_data'
    unnorm_key: str = "bridge_orig"                             # Dataset name for action unnormalization
    center_crop: bool = False                                   # Center crop? (if trained w/ random crop image aug)

    # Task to eval. For options, run: import simpler_env; simpler_env.ENVIRONMENTS
    task: str = "widowx_spoon_on_towel"

    # SIMPLER-related args
    sticky_gripper_num_repeat: int = 10                         # Number of steps for Google Robot sticky gripper action
    num_trials: int = 5                                         # Number of rollouts per task
    num_save_videos: int = 5                                    # Number of videos to be logged per task
    video_temp_subsample: int = 1                               # Temporal subsampling to make videos shorter

    # Weights & Biases
    wandb_project: str = "openvla"                              # Name of W&B project to log to (use default!)
    wandb_entity: str = "stanford-voltron"                      # Name of entity to log under

    # HF Hub Credentials (for LLaMa-2)
    hf_token: Union[str, Path] = Path(".hf_token")              # Environment variable or Path to HF Token

    # Randomness
    seed: int = 21                                              # Random Seed (for reproducibility)
    # fmt: on

@draccus.wrap()
def eval_simpler(cfg: GenerateConfig) -> None:
    assert cfg.pretrained_checkpoint is not None, "cfg.pretrained_checkpoint must not be None!"
    assert cfg.model_family == "llava", "Only OpenVLA evaluation supported for now."

    # Load Model
    model = get_model(cfg)

    # Initialize W&B
    wandb.init(
        entity=cfg.wandb_entity,
        project=cfg.wandb_project,
        name=f"EVAL-SIMPLER-{cfg.task}-{cfg.model_family}-{DATE_TIME}",
    )

    # Get Expected Image Dimensions
    resize_size = get_image_resize_size(cfg)

    # Initialize the SIMPLER environment.
    env = get_simpler_env(cfg.task)

    # Start episodes.
    task_episodes, task_successes = 0, 0
    for episode_idx in tqdm.tqdm(range(cfg.num_trials)):

        # Reset environment.
        obs, _ = env.reset()
        language_instruction = env.get_language_instruction()
        print(f"\nTask: {language_instruction}")

        # Setup.
        done, truncated = False, False
        previous_gripper_action = None
        sticky_action_is_on = False
        gripper_action_repeat = 0
        rollout_images = []
        print(f"Starting episode {episode_idx+1}...")
        while not (done or truncated):
            # Get preprocessed image.
            img = get_simpler_img(env, obs, resize_size)
            rollout_images.append(img)

            # Generate action with model.
            observation = {
                "full_image": img,
            }
            action = get_action(cfg, model, observation, language_instruction, policy_function=None)

            # Modify action to comply with SIMPLER env
            action = process_simpler_action(action)
            if "widowx" in cfg.task:
                # Map gripper [0, 1] --> [-1, 1] for Bridge env
                action[-1:] = 2.0 * (action[-1:] > 0.5) - 1.0
            elif "google_robot" in cfg.task:
                # Convert action from absolute --> relative for Google robot using "sticky" actions
                current_gripper_action = action[-1]
                if previous_gripper_action is None:
                    relative_gripper_action = np.array([0])
                else:
                    relative_gripper_action = (
                        previous_gripper_action - current_gripper_action
                    )  # google robot 1 = close; -1 = open
                previous_gripper_action = current_gripper_action

                if np.abs(relative_gripper_action) > 0.5 and sticky_action_is_on is False:
                    sticky_action_is_on = True
                    sticky_gripper_action = relative_gripper_action

                if sticky_action_is_on:
                    gripper_action_repeat += 1
                    relative_gripper_action = sticky_gripper_action

                if gripper_action_repeat == cfg.sticky_gripper_num_repeat:
                    sticky_action_is_on = False
                    gripper_action_repeat = 0
                    sticky_gripper_action = 0.0

                action[-1] = relative_gripper_action

            # Execute action in environment.
            obs, reward, done, truncated, info = env.step(action)

        task_episodes += 1
        task_successes += float(done)
        print(f"Success rate: {float(task_successes) / float(task_episodes)}")
        if episode_idx < cfg.num_save_videos:
            # Save rollout GIF.
            wandb.log(
                {
                    f"video_{episode_idx}": wandb.Video(
                        np.array(rollout_images[:: cfg.video_temp_subsample]).transpose(0, 3, 1, 2)
                    )
                }
            )

    # Log and update total metrics
    wandb.log(
        {
            "success_rate": float(task_successes) / float(task_episodes),
            "num_episodes": task_episodes,
        }
    )

if __name__ == "__main__":
    eval_simpler()

Thank you!

Thank you!
Hello, my friend, I have the same problem as you. No matter what unnorm_key I choose, using OpenVLA doesn't work well in simpler env. Have you solved the problem?


Errors when using SID in cdt.metrics

Hi!
When running SID by the given example, an error occurred:
ImportError                               Traceback (most recent call last)
 in
5 tar = np.triu(randint(2, size=(10, 10)))
6 pred = np.triu(randint(2, size=(10, 10)))
----> 7 SID(tar, pred)
c:\users\sx-liang\appdata\local\programs\python\python37\lib\site-packages\cdt\metrics.py in SID(target, pred)
271    """
272     if not RPackages.SID:
--> 273         raise ImportError("SID R package is not available. Please check your installation.")
274
275     true_labels = retrieve_adjacency_matrix(target)
ImportError: SID R package is not available. Please check your installation.
But when running SHD, everything goes well. Could you tell me how to fix it? Thanks!

Hello !
Is the R package SID is available in your R installation ? Try:
install.packages("BiocManager")
BiocManager::install(c("CAM", "SID", "bnlearn", "pcalg", "kpcalg", "D2C"))

Best,
Diviyan

Hello !
Is the R package SID is available in your R installation ? Try in R:
install.packages("BiocManager")
BiocManager::install(c("CAM", "SID", "bnlearn", "pcalg", "kpcalg", "D2C"))

Best,
Diviyan

Hi! I have successfully solved this problem by your instruction. Thanks very much!

Great, I'll close the issue!


Strip out control codes from the logged messages

bot merge

Why wasn't strip_control_codes shared? If there's no good idea - I'd create a PR to share it into yet another primitive create.
We need this for a custom panic handler - and copy-pasting cross-repos doesn't seem like a good idea.

Because we don't wanted to create a crate for just one function and no, there is no other crate where this really fits into.

There’s lots of other projects where this is a good idea (not just rusty
blockchains). Having a general crate to do it this one task well isn’t a
bad idea for the rust community. I’m not saying that created we would
definitely use it, but some projects surely would.
On Thu, 6 Jan 2022 at 18:43, Bastian Köcher @.***>
wrote:

Because we don't wanted to create a crate for just one function and no,
there is no other crate where this really fits into.
—
Reply to this email directly, view it on GitHub
https://github.com/paritytech/substrate/pull/10081#issuecomment-1006827833,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGEJCA6E6IUEDCYFK2WDXDUUXPELANCNFSM5GQBGR6Q
.
You are receiving this because your review was requested.Message ID:
@.***>


HDDS-5526. ContainerBalancer#checkConditionsForBalancing pre-emptively checks iteration limits.

What changes were proposed in this pull request?
Currently, we stop an iteration of balancer if we are one datanode or 5GB away from the limits "datanodes.involved.max.percentage.per.iteration" and "size.moved.max.per.iteration" respectively. This is a pre-emptive check.
This PR changes this by trying to dynamically adapt to these limits if possible instead of breaking out of the loop right away. If we're nearing the limits - that is, we're one DN away - then we restrict potential source datanodes to the ones that have already been selected. If we've reached the limits, then we restrict potential sources and targets both to datanodes that have already been selected. The iteration can continue because we aren't involving any new datanodes (Changes made in ContainerBalancerTask, FindSourceStrategy and FindTargetStrategy). We adapt to the max size to move limit by filtering out candidate containers according to size (changes made in ContainerBalancerSelectionCriteria).
For example, suppose we have 10 datanodes in the cluster and the max datanodes percentage is 90%. This means that a max of 9 DNs can be involved in balancing. When 8 datanodes have been selected for balancing, we restrict potential (datanode that can be a source for move) source DNs to already selected ones. This means we're allowed to select new target DNs, but source DNs must be ones that have already been selected. If a new target is selected, we'll reach 9 datanodes. If an already  selected target is selected, we'll stay at 8 DNs. Suppose a new target was selected. Now we have involved 9/10 datanodes, which is our limit. Balancer will now restrict potential sources and targets to already selected DNs and will never cross the limit.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-5526
How was this patch tested?
Existing tests

@JacksonYao287 Thanks for reviewing. I agree that one datanode would not make much difference in large clusters; this bug is more apparent in small clusters.
This change is more about correctness. While the previous code is simpler logic, it's not entirely correct. Suppose 9 out of 10 datanodes have been involved in balancing. Now, users can expect this iteration to continue if some datanodes are still under and over utilized. But because of the current logic, this iteration will be stopped.

@sumitagrawl Pointed out a bug in the logic - let me fix that and update this PR.

@sumitagrawl I've updated the PR, can you please check?

The patch LGTM too. + 1.


[Feature Request] Integration with Maatwebsite - Laravel Nova Excel

Hi! Thank you for your plugin. Is there a possibility to export some specific JSON fields to excel using the Laravel Nova Excel? For example, if i have 3 dogs with Name, Age, Race, i want to export only names, is it possible? Thank you again!

Hi @stezani - I think this is more a question for Nova Excel - the repeatable fields package just saves to a db column, nothing more, nothing less.  You can customise your nova exports fully I believe (see their docs: https://docs.laravel-excel.com/nova/1.0/exports/customizations.html#full-control) so I suggest you start there and ping the maintainers of that package a message if you get stuck.


CSUB-518: Pt 5. Followup

Renames the GATEFacuetAddress to GATEFaucetAccount and removes the unnecessary #[transactional attributes

Codecov Report

Merging #1284 (6a6ac9a) into dev (ded93a8) will decrease coverage by 61.87%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##              dev   #1284       +/-   ##
==========================================
- Coverage   70.19%   8.32%   -61.87%
==========================================
  Files         103      28       -75
  Lines       12124     889    -11235
  Branches      114     114
==========================================
- Hits         8510      74     -8436
+ Misses       3605     815     -2790
+ Partials        9       0        -9

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


Reimporting an existing album causes a traceback error when finding duplicates

Repo Steps:

Import an album into beets
Import the exact same album into beets again.

Error:
Album is recognised tagged, and says album already exists but also causes a traceback error:
 * Gettin Jiggy Wit It ->
   Gettin' Jiggy Wit It
 * Miami
 * Freakin It ->
   Freakin' It
 * Will 2k (Ft. K-Ci) ->
   Will 2K (title)
 * Wild Wild West (Ft. Dru Hill & Kool Moe Dee) ->
   Wild Wild West (title)
 * Nod Ya Head (The Remix) (Ft. Christina Vidal en Trá-Knox) ->
   Nod Ya Head (The Remix) (title)
 * Just The Two Of Us ->
   Just the Two of Us
This album is already in the library!
Traceback (most recent call last):
  File "/home/admin/.virtualenvs/beetsdev/bin/beet", line 9, in <module>
    load_entry_point('beets==1.3.11', 'console_scripts', 'beet')()
  File "/home/admin/python/beets/beets/ui/__init__.py", line 1081, in main
    _raw_main(args)
  File "/home/admin/python/beets/beets/ui/__init__.py", line 1071, in _raw_main
    subcommand.func(lib, suboptions, subargs)
  File "/home/admin/python/beets/beets/ui/commands.py", line 892, in import_func
    import_files(lib, paths, query)
  File "/home/admin/python/beets/beets/ui/commands.py", line 869, in import_files
    session.run()
  File "/home/admin/python/beets/beets/importer.py", line 316, in run
    pl.run_parallel(QUEUE_SIZE)
  File "/home/admin/python/beets/beets/util/pipeline.py", line 301, in run
    out = self.coro.send(msg)
  File "/home/admin/python/beets/beets/util/pipeline.py", line 160, in coro
    task = func(*(args + (task,)))
  File "/home/admin/python/beets/beets/importer.py", line 1287, in user_query
    resolve_duplicates(session, task)
  File "/home/admin/python/beets/beets/importer.py", line 1299, in resolve_duplicates
    session.resolve_duplicate(task, found_duplicates)
  File "/home/admin/python/beets/beets/ui/commands.py", line 783, in resolve_duplicate
    real_duplicates = filter(len, found_duplicates)
TypeError: object of type 'Album' has no len()

I saw that @brunal made a commit bcfdcdc4b768c138c074a4ac599623f7e3f35066 which added new functionality which is where this error is occurring.
Happy to provide any more info.
Config:
  1 directory: /mounts/backup/music
  2 library: /mounts/backup/music/beetslibrary.db
  3
  4 import:
  5     move: no
  6     copy: yes
  7     write: yes
  8     resume: ask
  9     detail: yes
 10
 11 plugins:
 12     ftintitle
 13
 14 paths:
 15     default: $albumartist/$year - $album/$track - $title
 16     singleton: ZZMusic/$artist - $track - $title
 17     comp: Various Artists/$year - $album/$track - $title
 18
 19 ui:
 20     terminal_width: 120
 21     color: yes
 22     colors:
 23         text_success: green
 24         text_warning: yellow
 25         text_error: red
 26         text_highlight: red
 27         text_highlight_minor: lightgray
 28         action_default: turquoise
 29         action: blue
 30
 31 time_format: '%Y-%m-%d %H:%M:%S'
 32
 33 ftintitle:
 34     auto: yes
 35     drop: no

Well I did break it. I knew I should've written tests. I'm on it.

Hi @brunal I built from your commit, and am not seeing this error anymore. Just thought I would retest with your latest commit. Let me know if you want me to retest with any more usecases.

Cool. Since I did not find an easy & satisfying way to test this I'm cowardly closing this issue...


Add Celery DjangoFixup explicitly

Fixes: #744

Because of our custom loader sequence (in which DJANGO_SETTINGS_MODULE is not fully set before Django begins to start up), Celery's Django-specific logic was not being applied at startup time, resulting in various shared-state errors when running multiple simultaneous Celery tasks.
Besides the errors that could be encountered due to this case, another clue is that when running in the development environment (with DEBUG = True), the Celery worker was not warning about this setting being present, because the logic that checks for that and issues that warning was not installed. With this fix in place, the warning is now seen as expected:
[2021-08-02 20:30:27,980: INFO/MainProcess] Connected to redis://:**@redis:6379/0
[2021-08-02 20:30:27,993: INFO/MainProcess] mingle: searching for neighbors
[2021-08-02 20:30:29,015: INFO/MainProcess] mingle: all alone
[2021-08-02 20:30:29,037: WARNING/MainProcess] /usr/local/lib/python3.6/site-packages/celery/fixups/django.py:204: UserWarning: Using settings.DEBUG leads to a memory
            leak, never use this setting in production environments!
  leak, never use this setting in production environments!''')

[2021-08-02 20:30:29,037: INFO/MainProcess] celery@8522c2347725 ready.

Testing
The original issue was reproducible as described in #744 - stopping the Celery worker, enqueuing 10 or so Jobs for execution, then starting the Celery worker so that all ten Jobs were more-or-less simultaneously picked up for execution, would result in errors such as:
[2021-08-02 20:27:56,645: ERROR/ForkPoolWorker-7] Task nautobot.extras.jobs.run_job[1fd322d7-c4a8-4994-b4bb-ca12c6040dd6] raised unexpected: InterfaceError('connection already closed',)
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 237, in _cursor
    return self._prepare_cursor(self.create_cursor(name))
  File "/usr/local/lib/python3.6/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/django/db/backends/postgresql/base.py", line 236, in create_cursor
    cursor = self.connection.cursor()
psycopg2.InterfaceError: connection already closed

After this change, no such issues are seen - all ten Jobs run successfully to completion.
I don't have any particularly bright ideas around implementing an automated regression test for this issue - suggestions are welcome.

Great work. It looks like this is the only fixup that is even ran so this should be a lasting change for a while. If we need to revisit this in the future, we might consider doing our own custom fixup that always calls DjangoFixup explicitly and then pass that list of custom fixups to Celery class using Celery("nautobot", fixups=fixups).


Inspector: METADATA pop-up window feature

I have re-approached the code as per this discussion:
https://forum.babylonjs.com/t/read-write-metadata-using-the-inspector/34208
Thus a first-attempt at the metadata editor. It's not perfect but in a good state.
Notes:

the metadata property can be set to null and undefined just by typing the literal string
the metadata property can also be set as a string or JSON object
there is some basic validation but aim was focused on UX
there is a known glitch where quoted values "a string" gets considered as a JSON in validation (not really an issue)
simple prettifying but not full beautifier with colour - considered re-using monaco-editor however it looked over bloaty/unnecessary
there is a bit of duplicate css however wanted to avoid conflicts and not affect backwards compatibility
minimal impact on performance by using an observer
could probably improve the picking trigger/observer but OK for first-release

New METADATA tab:

New METADATA pop-up window:

supersedes https://github.com/BabylonJS/Babylon.js/pull/13643
Closes #13027

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/13671/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/13671/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/13671/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/13671/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/13671/merge
https://gui.babylonjs.com/?snapshot=refs/pull/13671/merge
https://nme.babylonjs.com/?snapshot=refs/pull/13671/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/13671/merge#BCU1XR#0

Just had a thought after testing the implementation - shouldn't this be a part of the individual object tab? i.e. - open metadata for a specific object? i.e. here (all the way down):

Just had a thought after testing the implementation - shouldn't this be a part of the individual object tab? i.e. - open metadata for a specific object? i.e. here (all the way down)...)

I believe it's currently a tool because the properties are core babylon features, may get in the way a bit in the default tab. Once the metadata property becomes more discussed/developed I can imagine improved UI and potentially another pop-out approach rather than window. I can also see the inspector getting a face-lift in the future as more features become developed.
Happy to make a quick change to relocate the button (under DEBUG or METADATA category?) ...if you think this is right - I'll follow your instruction @RaananW.

Just had a thought after testing the implementation - shouldn't this be a part of the individual object tab? i.e. - open metadata for a specific object? i.e. here (all the way down)...)

I believe it's currently a tool because the properties are core babylon features, may get in the way a bit in the default tab. Once the metadata property becomes more discussed/developed I can imagine improved UI and potentially another pop-out approach rather than window. I can also see the inspector getting a face-lift in the future as more features become developed.

Metadata is a core feature of a node in Babylon. it is a part of the node's properties (if defined), so it does make sense to have it in properties. In this case it is important to make sure the data updates according to the selected node, and that the external window is being reused when opening the editor (and not open a window per node :-)).

Note that metadata also exists in the material, scene, animation group, sound, texture, reflection probe, sprite manager, control (GUI). So I think it would make more sense to have something like an "Edit Metadata" button in the property page of the corresponding element, instead of an "Open Metadata Editor" button in the tool page. Also, like @Raanan, why have a popup for this, we could embed the edit in the element property page (in that case, no need for the button, just add a "Metadata" section, or something like that) ?

I like the UI in the pop up, those buttons just need to be a part of the embedded area instead. Prettify, refresh update.
When you refer to onChange you mean when the object selected was changed? In that case the dev will be required to update the object before. The UI can have a notification saying the metadata is "dirty" and should be updated.

@RaananW it has been re-written and ready for review.
It was necessary to change the components that had pane className to make the metadata paneContainer conditionally render. I think the changes are improvements and look to follow the other panes (debug stats etc). There were additional unnecessary divs removed.
I've added a basic check to prevent corrupting Objects if they contain non-stringifyable values.
The controls' enabled attribute changes based on dirty, protected and types. Hopefully this behaviour will explain to the user enough they need to know.

@carolhmj @Popov72, could you have a look ?
@j-te when you removed those did you check all the tools using it like GUI and NME ?
Let me move as draft until @RaananW is back from vacation in a couple weeks ?

@sebavan I've done a reference lookup and seems that the components in ../dev/sharedUiComponents/src/tabs/propertyGrids/gui/ are only used by the inspector. It's definitely worth another pair of eyes to check though please @carolhmj

guiEditor have similar named components, but it looks duplicated. I speculate there may have been style conflict issues while trying to consolidate components, during GUI dev.

I moved to draft as we are heading real close from the 6.0 release (next week) so let s wait after release to mark as ready again and merge.

Merged and will follow up when deployed.
Thanks for that wonderful PR!


Update sbt version of artificial project

Thanks, @raboof. Note that this code is currently WIP and not used right now. :-)


mtools: Add patch to fix mtools directory creation

mtools uninitialized data when creating directories which can
potentially cause filesystem corruption.
https://lists.gnu.org/archive/html/info-mtools/2014-08/msg00000.html
Change-type: minor
Changelog-entry: Patch mtools directory creation
Signed-off-by: Will Newton<EMAIL_ADDRESS>

@resin-jenkins retest this please

Needs a rebase.

@resin-jenkins retest this please

@resin-jenkins retest this please

@agherzan comment added


Building project includes dependency even when dynamic-cdn-webpack-plugin is set up

I have attached my current demo project below. I've tried doing the exact same steps as the README file suggests to. Am I doing something wrong?
three-demo.zip
Using the plugin and not both results in output ./dist of ~600 KB by running npm run build. I've made sure I'm building it in production mode.
Node v12.18.1 LTS
npm 6.14.5

Refer to this.


Filtering not working for multi value URL parameters (GET request)

Let's say I have a section with tags, and another section with multiple select box that selects from tags.
If I want to filter that section by multiple tags, I'd do something like this :
?tags[]=blue&tags[]=green&tags[]=red

This gives me following nodes :
<url-tags.1>blue</url-tags.1>
<url-tags.2>green</url-tags.2>
<url-tags.3>red</url-tags.3>

And following parameters :
$url-tags.1    'blue'
$url-tags.2    'green'
$url-tags.3    'red'

I can't really filter DS with that, since I never know how many tags I will have, so I can't do something like {$url-tags.1:}, {$url-tags.2:}, {$url-tags.3:} as filter criteria. This also doesn't work {$url-tags} (it was my last hope) :D
This also doesn't work it gives similar results to the ones above :
?fields[tags][]=Blue&fields[tags][]=Brown

I suggest that generated xml for parameters look like this :
<url-tags>
    <value>tag01</value>
    <value>tag02</value>
</url-tags>

Or for more complex url parameter :
?field-group[field1][]=f1v1&field-group[field1][]=f1v2&field-group[field1][]=f2v1&field-group[field2][]=f2v2

XML :
<url-field-group>
    <url-field1>
        <val>f1v1</val>
        <val>f1v2</val>
    </url-field1>
    <url-field2>
        <val>f2v1</val>
        <val>f2v2</val>
    </url-field2>
</url-field-group>

I think this is closely related to #1807 and  #2484 ?

Also, following parameters should be created :
$url-tags = blue, green, red
$url-tags-and = blue+green+red

$url-field-group.url-field1 = f1v1, f1v2
$url-field-group.url-field1-and = f1v1+f1v2

$url-field-group.url-field2 = f2v1, f2v2
$url-field-group.url-field2-and = f2v1+f2v2

@johnpuddephatt yes, but the seem kind of forgotten ;D

Also, following parameters should be created :

Where does the -and part comes from ?
You shoud use tag=1,2,3 instead of php's array syntax...

@nitriques comma separated values are treated as OR while plus separated values are treated as AND. It would be practical to have both of them to allow us for better filtering.
I'm not sure what you mean by php array syntax. This maybe tags[]=value? This is part of URL that form generates once you have submitted value from multi select box.
Forms don't generate URLs with comma separated values. This can be achieved with JavaScript but should be possible with vanilla Symphony.

It would be practical to have both of them to allow us for better filtering.

You only need one at the time, I do not see why both are needed. You can url-encode the + sign to get the AND.

This maybe tags[]=value?

Yup

This is part of URL that form generates once you have submitted value from multi select box.

Only if the field name contains [], which you can remove.

Forms don't generate URLs with comma separated values.

Symphony generated forms are meant to save data into sections, not do filtering. I guess that you need to do some javascript to make it work.
I'd like to get @brendo's feedback on this, as I am not well placed to discuss this part of the system ;)

no, no, no... I think we have a misunderstanding here :D @nitriques
I'm talking about getting adhoc parameters, not section events or page parameters. And [] is kind of a standard notation for fields with multiple values so I just put them there so that people can understand what's going on there.

I think we have a misunderstanding here

Maybe, please explain ;)

And [] is kind of a standard notation for fields with multiple values

I agree. But right now, data sources are not meant to work with this...

I remember a discussion (long time ago) about this, and a simple solution: Add an event to your page to manipulate the form data. Here is an example event:
<?php

require_once(TOOLKIT.'/class.event.php');

class eventcomma_separate_get_params extends Event
{
    public $ROOTELEMENT = 'comma-separate-get-params';

    public $eParamFILTERS = array(
    );

    public static function about()
    {
        return array(
                'name' =>'Comma separate $_GET params',
                'author' => array(
                    'name' => 'John Porter, Michael Eichelsdoerfer'
                ),
                'version' => '1.0',
                'release-date' => '2012-10-16'
        );
    }

    public static function allowEditorToParse()
    {
        return false;
    }

    public static function documentation()
    {
        return '';
    }

    public function load()
    {
        return $this->__trigger();
    }

    protected function __trigger()
    {
        $page = Frontend::instance()->Page();
        if (is_array($_GET) && !empty($_GET)) {
            foreach ($_GET as $key => $value) {
                if (is_array($value)) {
                    $page->_param['url-'.$key] = join(',', $value);
                }
            }
        }
    }
}

I remember a discussion (long time ago) about this

only three years ;)
It does look like some changes were agreed in #1807 and #2484 but never happened.

@nitriques well... yes, currently data sources don't work with that and this is exactly what I'm talking about :D

@nitriques no, because html forms don't generate comma separated values on multiselect fields. I can do it with JavaScript but it should be possible with vanilla symphony setup.

but it should be possible with vanilla symphony setup.

Right now, it's not. Like I've said, if you want to make it work right now, you must do js.
We'll work on making it possible tho, but that could take a long time.

@nitriques as I said, I know that :D

Ok perfect ;) I am not an native English speaker so I tend to repeat myself ;)

I suggest that generated xml for parameters look like this :

<url-tags>
    <value>tag01</value>
    <value>tag02</value>
</url-tags>

If you still need it, I have an unreleased extension for this. Not sure if it works with your more complex example, though.

@jensscherbl thanks, although I'm kind of in the middle of making a little promo / tutorial for symphony and this doesn't look very good :D

although I'm kind of in the middle of making a little promo / tutorial for symphony and this doesn't look very good :D

Agreed. It's already on the list for the 3.0.0 release.


Error Log getSupportedPreviewSizes

08-15 16:03:06.344 18901-18923/io.fotoapparat.sample E/suojp: getSupportedPictureSizes str:4160x3120,4000x3000,3840x2160,3200x2400,3120x3120,2976x2976,2592x1944,2560x1920,2688x1512,2048x1536,1920x1080,1600x1200,1280x960,1280x768,1280x720,1024x768,800x600,864x480,800x480,720x480,640x480,352x288,320x240,176x144,160x120
08-15 16:03:06.345 18901-18923/io.fotoapparat.sample E/suojp: getSupportedPreviewSizes th:java.lang.Throwable
                                                                  at android.hardware.Camera$Parameters.getSupportedPreviewSizes(Camera.java:3088)
                                                                  at io.fotoapparat.hardware.v1.capabilities.CapabilitiesFactory.extractPreviewSizes(CapabilitiesFactory.java:37)
                                                                  at io.fotoapparat.hardware.v1.capabilities.CapabilitiesFactory.fromParameters(CapabilitiesFactory.java:30)
                                                                  at io.fotoapparat.hardware.v1.Camera1.getCapabilities(Camera1.java:236)
                                                                  at io.fotoapparat.parameter.provider.InitialParametersProvider.initialParameters(InitialParametersProvider.java:45)
                                                                  at io.fotoapparat.routine.StartCameraRoutine.tryToStartCamera(StartCameraRoutine.java:58)
                                                                  at io.fotoapparat.routine.StartCameraRoutine.run(StartCameraRoutine.java:45)
                                                                  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
                                                                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
                                                                  at java.lang.Thread.run(Thread.java:818)

get this error log on Android Device letv pro1
it's  resolution is  2560x1440。
Now ,when I taka a picture ,it failed to save it in Android/data/io/io.fotoapparat.sample/files/photos/  ,I'm not sure wheather this error log lead to fail save picture ..How could i solve this problem.forgive my poor english.

Could you please show me how you initialize Fotoapparat instance and what are you using for picture size and for preview size.

Well ,forget to say.I clone the code from master branch and run the application get this problem.
On other phone xiaomi5  run the same application without any problem.

I expect here that the device implementation is broken since getSupportedPreviewSizes is not expected to return any exception. Only think we could do here to support it is to leave PreviewSizes untouched which I don't really like

So, this device is violating the android API contract meaning that the device is not returning any preview sizes. I propose we don't support this device. Pretty sure it's users have other apps which are broken too.
Info, Android jdoc for getSupportedPreviewSizes:
        /**
         * Gets the supported preview sizes.
         *
         * @return a list of Size object. This method will always return a list
         *         with at least one element.
         */


Allow for different option types in sandbox

Added template/coloredBar.js file
Updated template.js file to handle looker input types: radio, select, number, text
Changed /dist/index.html file to have  at the end -- THIS WILL MESS UP SPARKLINE

Replacing with more updated pull request that includes the actual file loaded into looker


Are the following data types missing？

1.Is this project applicable to S7 Series, including s71200 / 1500
2.Missing Sint, LREAL and other data types in s7type

1.Is this project applicable to S7 Series, including s71200 / 1500

This may or may not work, the library predates those models i think,
please feel free to test it out and report back here :wink:

2.Missing Sint, LREAL and other data types in s7type

PR's accepted :shrug:


chore: add comment to explain origin of test

@googlebot I consent.

@OrKoN Could you LGTM this change?

@googlebot I consent.


Add docs for request error handling

Examples miss a really important point: error handly for a request like a simple timeout.
simply like this:
$request = $client->request('GET', $url);
$request->on('error', function ($e) {
  $socketerror = $e->getPrevious();
  echo "request failed with error: " . $e->getMessage() . PHP_EOL;
});

I spend too much time just for this so i think it should be added in the README or the exemple section.

@Fneufneu sounds reasonable, could you create a PR adding documentation for this?

@Fneufneu So @clue already fixed it though: https://github.com/reactphp/http-client/pull/97


[Docker] Update docker images for llvm-16

Update ci_arm docker image to take llvm-16 from package.
Update ci_cpu docker image to correctly named one.

@leandron @Liam-Sturge does there also need to be an llvm update in tlc-pack?


PostgreSQL DB architecture improvements

PostgreSQL DB architecture improvements

use Jinja template in postgres file
Create 2 users in postgres. One for application and one for user

This problem will be addressed in cQube v5.0.

This is implemented in the current version


Fix: failure to handle extra if env is not empty but does noot have extra

Since pdm==2.11 is out, we are not able to perform install anymore because markers evaluation fail on extra for environment not having extra but not being empty neither.
This PR reproduce this in a test and fix it.
Note: I added the test script but I can remove the commit

Thanks, i will make a quick release.


InteractiveAuto behavior needs more details regarding when it's using WebAssembly.

Description
The article says:

The .NET runtime and app bundle are downloaded to the client in the background and cached so that they can be used on future visits.

Which I interpret as once the client is fully downloaded the Auto will use WebAssembly from there on.
Examples

Reloading an Auto page will run it as WebAssembly as expected
Navigating back and forth between an Auto and WebAssembly page will render the Auto page in WebAssembly
Navigating to an (Interactive)Server page and then to an Auto page will not launch the WebAssembly but instead run the Auto page as (Interactive)Server.

Thus "future visits" need to be clarified that it depends on how the visitor navigates and not only whether the runtime and app is fully downloaded.
Page URL
https://learn.microsoft.com/en-us/aspnet/core/blazor/components/render-modes?view=aspnetcore-8.0#automatic-auto-rendering
Content source URL
https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/blazor/components/render-modes.md
Document ID
7c9948a3-9886-8097-6014-492a4c21ea4e
Article author
@guardrex

Thanks @breakerofbuilds ... I agree; but in the third case, I would guess the Auto page runs initially with WASM because the WASM runtime is active.
@MackinnonBuck ... Can you clarify what "on future visits" means? I'll add remarks to the article.

There's one thing that we'll probably need to add (I'll look on Monday to see how we're handling it) ... Auto components are still prerendered on the server. Therefore, we'll need to make sure that it's clear that even if the Blazor runtime is active on the client, there's a prerendering step on the server. Then, we need to flesh out if page transitions affect CSR. I don't think so ... I think after the Blazor client becomes active (and after prerendering) that Auto components always render on the client. However, I assumed that was the case from product unit remarks and didn't inquire further.

Perhaps, the line that can cover it is ...

After prerendering has occurred on the server and the Blazor runtime has activated on the client, Auto components always use WebAssembly, regardless of the render mode used by component that the user has navigated from.

.... something along those lines.
When Mackinnon gets on, he'll be able to say if that's accurate.

It may be correct but missing clarification for this crucial part:

and the Blazor runtime has activated

The missing information here is: When is the runtime activated?
I assumed incorrectly that it would activate whenever the runtime was cached(and the page reloaded after being cached the first time).

That should be true tho. I have a feeling that we might hit a problem that Steve Sanderson has called out several times about lifecycle methods over the years, namely that our documentation isn't going to be able to cover exactly when things happen because the framework is complicated and timing is a bit arbitrary (e.g., network lags, task completion, etc.). The runtime activates after it and the app bundle are downloaded, and we might not be able to be more specific than that. Mackinnon can comment on this aspect as well.

I see.
Then the problem I see with the documentation is that is makes statements based on conditions that are undefined(runtime being loaded).

The .NET runtime and app bundle are downloaded to the client in the background and cached so that they can be used on future visits.

In the next paragraph it says:

but on subsequent visits it's rendered from the client after the .NET runtime and app bundle are downloaded and cached.

Instead it could say something like this.

The component is initially rendered with interactive server-side rendering (interactive SSR) using the Blazor Server hosting model. The .NET runtime and app bundle are downloaded to the client in the background and cached so that they can be used on future visits.
On subsequent visits a runtime algorithm determines each time whether to render the component with InteractiveServer or InteractiveWebAssembly. The runtime being cached is a requirement but not a guarantee that the component will render using InteractiveWebAssembly.

And in the second paragraph:

...from the server, but on subsequent visits it's rendered from the client after the .NET runtime and app bundle are downloaded and cached.

Into

...from the server . On subsequent visits it's rendered from either the client or the server.

No, your proposed language isn't correct based on what they told me. I was told that if the app bundle and runtime are cached on the client they will be used for Auto component rendering (i.e., WASM will be used at that point). If you can demonstrate that isn't the case, you'd need to open an issue on the PU's repo to show them. You may have found a bug in the framework.

What I'm saying is that the exact timing of when that happens is indeterminate ... when the download is finished and exactly when the runtime starts. AFAIK, that can't be predicted exactly.

Ok, my initial observation was that the rendermode used with Auto was determined by what rendermode the user was navigating from.
I will open a bug report.

... and whatever might be going on like that we would need to get in ... that's right. These articles were all checked over by the PU, but behaviors and details do sometimes get left out on the first pass setting up new docs.
Please add ...
cc: @guardrex https://github.com/dotnet/AspNetCore.Docs/issues/31228

... to the bottom of your opening comment of your PU issue so that I can follow along.
I still want to work on the text. Leave this open. It will close automatically later when the PR merges.

Thanks @breakerofbuilds ... That's perfect. I'll keep an 👂 open there for their response.

Ok ... now we know. 😄 Indeed! The full logic wasn't explained to me when we put the coverage up.
I'll get to this fairly fast ... next week tho. I'm buried in other work at the moment trying to get our 8.0 snippet sample apps in place and cross-linked for doc snippets. I'll get back to this as soon as I can 🏃♂🏃♂🏃♂🏃♂🏃♂🏃♂🏃♂🏃♂🏃♂🏃♂😅.

same issue :https://github.com/dotnet/aspnetcore/issues/52719

It's already cross-linked via @breakerofbuilds's issue. I see the related ones ... Artak probably marked all of them. I'll survey all of them when I work on this.

UPDATE ... I'm trying to get back to this issue, but I'm a bit ⛰⛏😅 at the moment on other high priority work items. I hope to reach this issue next week before taking off for the holiday break ⛄.

OK ... I'm finally 😅 back 😄. I've been buried in work for weeks, often putting out emergency 🔥🚒 that have cropped up in coverage.
I'm going to see about resolving this issue now.