cluster and rancher stores now use advanced worker

Still requires a queueing system in place since some subscribes are fired prior to the advanced worker creation

Summary
Fixes #8837

Occurred changes and/or fixed issues

Technical notes summary

Areas or cases that should be tested

Areas which could experience regressions

Screenshot/Video

@Sean-McQ There's some test failures, can you take a look? I've added the milestone as well, can you create and link the issue as well?

Is there a description of what the advanced worker is meant to do and how to validate for QA? It's unclear what the current vs. expected behavior is.

@git-ival The advanced worker is a javascript web-worker, essentially a new thread outside of the main UI thread to process CPU intensive work that would otherwise block UX responsiveness in the browser tab.
In the case of the "Advanced Worker" feature, we've offloaded the websockets that would typically be waiting for real-time updates for the cluster, rancher, and management apis into separate worker threads (one for each socket) so that excessive incoming messages are handled separately and don't slow down or block the user's interaction with the Dashboard app in the browser.
Simple validation would probably just mean validating that the three websockets in question do in fact open in webworkers, you can do this by checking the Chrome devtools under "Network" and further selecting the "WS" (Websockets) tab to verify that the websockets in question opened in webworkers as opposed to in the main UI thread.

In the above screenshot, I can tell the Websockets in question are running in webworkers by the gear icon next to their "name" and I can tell they are separate worker threads by verifying that the filename under the "Initiator" column are all different (and random).
Apart from that, you'll want to perform some actions in another browser whose changes should appear in the active browser tab under test to ensure that the messages being received via websocket make their way back into the UI thread and update the app that the user is interacting with.
You can also validate performance improvements by scaling up a large cluster that generates excessive websocket traffic to the point of slowing down the UX and then switching on the "advanced worker" to verify that responsiveness improves with the feature toggled on.
Finally, you should notice a decrease in both the amount of memory consumed in the browser for clusters with a lot of resources but also significantly slowed memory growth over time as well. You'll want to test this on a list page with a lot of resources (such as pods or really anything under workloads).

Thanks for the clarification Sean! Just had a couple of follow-up questions.

When you refer to scaling up a large cluster, are you referring to having a large # of workloads/objects, or a large # of downstream clusters in general?
When you refer to memory consumption and performance, are you referring to the local machine running the browser or to the local cluster itself?

@Sean-McQ Do you have answers to Iramis's questions?

Apologies, I thought I had answered these but I'm not seeing that here.
In this case, for scaling I'm referring to large clusters as those with a lot of resources or at least those that produce a lot of events since really what we're addressing here is the web-app's ability to keep up with potentially hundreds or thousands of socket messages per second.
For memory consumption, we're specifically referring to memory used by the web browser itself and not the cluster itself, the only real effect we should see on the cluster is that it shouldn't have to close as many sockets due to a slow client (for which the memory impact would be negligible).


Fix dropdown active item color

Bumps the active item color up so it's seen better when visual looking at it.
@digitaldesigner

Pull Request Test Coverage Report for Build 2831

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 2828:
0.0%

Covered Lines:
21

Relevant Lines:
21

💛  - Coveralls


Hbase-24764 : Add support of adding base peer configs via hbase-site.xml for all replication peers

JIRA: https://issues.apache.org/jira/browse/HBASE-24764
JIRA Description:
Today, if a user needs to apply some common base peer configs to all the replication peers on the cluster,  the only way is to execute update_peer_config via CLI which requires manual intervention and can be tedious in case of large deployment fleet.
As part of this JIRA, we plan to add the support to have base replication peer configs as part of hbase-site.xml like hbase.replication.peer.base.config="k1=v1;k2=v2.." which can be easily updated and applied as part of a rolling restart.
Example below:
    <property>
    <name>hbase.replication.peer.base.configs</name>
<value>hbase.replication.source.custom.walentryfilters=x,y,z;hbase.rpc.protection=abc;hbase.xxx.custom_property=123</value>
    </property>

This property will be empty by default, but user can override to have base configs in place.
The final peer configuration would be a merge of whatever is currently present or what users override during the peer creation/update (if any) + this newly added base config.
Related Jira: https://issues.apache.org/jira/browse/HBASE-17543.  HBASE-17543 added the support to add the WALEntryFilters to default endpoint via peer configuration.
By this new Jira we are extending the support to update peer configs via hbase-site.xml and hence WalEntryFilters or any other peer property can be applied just by rolling restart.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 33s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ branch-1 Compile Tests _

+0 :ok:
mvndep
2m 22s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
8m 18s
branch-1 passed

+1 :green_heart:
compile
1m  0s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
compile
1m  8s
branch-1 passed with JDK v1.7.0_272

+1 :green_heart:
checkstyle
2m  9s
branch-1 passed

+1 :green_heart:
shadedjars
2m 58s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 59s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  3s
branch-1 passed with JDK v1.7.0_272

+0 :ok:
spotbugs
2m 44s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
4m 19s
branch-1 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 17s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 54s
the patch passed

+1 :green_heart:
compile
0m 58s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javac
0m 58s
the patch passed

+1 :green_heart:
compile
1m  7s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
javac
1m  7s
the patch passed

-1 :x:
checkstyle
0m 33s
hbase-client: The patch generated 1 new + 6 unchanged - 0 fixed = 7 total (was 6)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedjars
2m 47s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
hadoopcheck
4m 33s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2.

+1 :green_heart:
javadoc
0m 51s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  6s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
findbugs
4m 20s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
2m 42s
hbase-client in the patch passed.

+1 :green_heart:
unit
121m  1s
hbase-server in the patch passed.

+1 :green_heart:
asflicense
0m 47s
The patch does not generate ASF License warnings.

173m  6s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2327

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux c9dbf305aeeb 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-agent/workspace/Base-PreCommit-GitHub-PR_PR-2327/out/precommit/personality/provided.sh

git revision
branch-1 / 31e47af

Default Java
1.7.0_272

Multi-JDK versions
/usr/lib/jvm/zulu-8-amd64:1.8.0_262 /usr/lib/jvm/zulu-7-amd64:1.7.0_272

checkstyle
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/1/artifact/out/diff-checkstyle-hbase-client.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/1/testReport/

Max. process+thread count
4357 (vs. ulimit of 10000)

modules
C: hbase-client hbase-server U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/1/console

versions
git=1.9.1 maven=3.0.5 findbugs=3.0.1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
6m 54s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ branch-1 Compile Tests _

+0 :ok:
mvndep
2m 26s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
8m  5s
branch-1 passed

+1 :green_heart:
compile
1m  0s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
compile
1m  8s
branch-1 passed with JDK v1.7.0_272

+1 :green_heart:
checkstyle
2m 14s
branch-1 passed

+1 :green_heart:
shadedjars
3m  1s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 59s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  7s
branch-1 passed with JDK v1.7.0_272

+0 :ok:
spotbugs
2m 40s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
4m 17s
branch-1 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 18s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 58s
the patch passed

+1 :green_heart:
compile
1m  1s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javac
1m  1s
the patch passed

+1 :green_heart:
compile
1m  8s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
javac
1m  8s
the patch passed

+1 :green_heart:
checkstyle
2m  6s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedjars
2m 50s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
hadoopcheck
4m 35s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2.

+1 :green_heart:
javadoc
0m 50s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  6s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
findbugs
4m 20s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
2m 42s
hbase-client in the patch passed.

-1 :x:
unit
123m 52s
hbase-server in the patch failed.

+1 :green_heart:
asflicense
0m 50s
The patch does not generate ASF License warnings.

182m 33s

Reason
Tests

Failed junit tests
hadoop.hbase.replication.TestReplicationKillSlaveRS

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2327

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux 2313d063eb29 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-home/workspace/Base-PreCommit-GitHub-PR_PR-2327/out/precommit/personality/provided.sh

git revision
branch-1 / 041debd

Default Java
1.7.0_272

Multi-JDK versions
/usr/lib/jvm/zulu-8-amd64:1.8.0_262 /usr/lib/jvm/zulu-7-amd64:1.7.0_272

unit
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/2/artifact/out/patch-unit-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/2/testReport/

Max. process+thread count
4394 (vs. ulimit of 10000)

modules
C: hbase-client hbase-server U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/2/console

versions
git=1.9.1 maven=3.0.5 findbugs=3.0.1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 39s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ branch-1 Compile Tests _

+0 :ok:
mvndep
2m 27s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
8m 22s
branch-1 passed

+1 :green_heart:
compile
1m  1s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
compile
1m 11s
branch-1 passed with JDK v1.7.0_272

+1 :green_heart:
checkstyle
2m 23s
branch-1 passed

+1 :green_heart:
shadedjars
3m  5s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
1m  2s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  9s
branch-1 passed with JDK v1.7.0_272

+0 :ok:
spotbugs
2m 44s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
4m 21s
branch-1 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 18s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 58s
the patch passed

+1 :green_heart:
compile
1m  2s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javac
1m  2s
the patch passed

+1 :green_heart:
compile
1m  7s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
javac
1m  7s
the patch passed

+1 :green_heart:
checkstyle
2m 11s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedjars
2m 54s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
hadoopcheck
4m 43s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2.

+1 :green_heart:
javadoc
0m 54s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m  5s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
findbugs
4m 28s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
2m 43s
hbase-client in the patch passed.

+1 :green_heart:
unit
133m 18s
hbase-server in the patch passed.

+1 :green_heart:
asflicense
0m 58s
The patch does not generate ASF License warnings.

187m  5s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2327

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux b9a3432f1cee 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-home/workspace/Base-PreCommit-GitHub-PR_PR-2327/out/precommit/personality/provided.sh

git revision
branch-1 / 80ce76c

Default Java
1.7.0_272

Multi-JDK versions
/usr/lib/jvm/zulu-8-amd64:1.8.0_262 /usr/lib/jvm/zulu-7-amd64:1.7.0_272

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/3/testReport/

Max. process+thread count
4400 (vs. ulimit of 10000)

modules
C: hbase-client hbase-server U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/3/console

versions
git=1.9.1 maven=3.0.5 findbugs=3.0.1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@bharathv : Can you please have a look at this ? This is for branch-1.

Will do, waiting for a +1 from Stack on the original PR and then I can sign off on this.

@bharathv : Can you take a look at this. Thanks.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
6m 57s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ branch-1 Compile Tests _

+0 :ok:
mvndep
2m 26s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
8m  5s
branch-1 passed

+1 :green_heart:
compile
1m  7s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
compile
1m 14s
branch-1 passed with JDK v1.7.0_272

+1 :green_heart:
checkstyle
2m 25s
branch-1 passed

+1 :green_heart:
shadedjars
3m 31s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
1m 10s
branch-1 passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m 24s
branch-1 passed with JDK v1.7.0_272

+0 :ok:
spotbugs
3m  9s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
5m  0s
branch-1 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 19s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
2m  9s
the patch passed

+1 :green_heart:
compile
1m  9s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javac
1m  9s
the patch passed

+1 :green_heart:
compile
1m 15s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
javac
1m 15s
the patch passed

+1 :green_heart:
checkstyle
2m 23s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedjars
3m 10s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
hadoopcheck
5m 17s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2.

+1 :green_heart:
javadoc
1m  8s
the patch passed with JDK v1.8.0_262

+1 :green_heart:
javadoc
1m 45s
the patch passed with JDK v1.7.0_272

+1 :green_heart:
findbugs
7m 27s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
2m 52s
hbase-client in the patch passed.

+1 :green_heart:
unit
143m 52s
hbase-server in the patch passed.

+1 :green_heart:
asflicense
0m 52s
The patch does not generate ASF License warnings.

211m 28s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/4/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2327

Optional Tests
dupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile

uname
Linux 0b60862defd6 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-agent/workspace/Base-PreCommit-GitHub-PR_PR-2327/out/precommit/personality/provided.sh

git revision
branch-1 / 7801b45

Default Java
1.7.0_272

Multi-JDK versions
/usr/lib/jvm/zulu-8-amd64:1.8.0_262 /usr/lib/jvm/zulu-7-amd64:1.7.0_272

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/4/testReport/

Max. process+thread count
4613 (vs. ulimit of 10000)

modules
C: hbase-client hbase-server U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2327/4/console

versions
git=1.9.1 maven=3.0.5 findbugs=3.0.1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.


feat(changelog): update for 0.36.0

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 66.08%. Comparing base (f22f37f) to head (72dcac8).

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #568      +/-   ##
==========================================
- Coverage   70.86%   66.08%   -4.79%
==========================================
  Files          47       47
  Lines        3158     3158
  Branches      680      680
==========================================
- Hits         2238     2087     -151
- Misses        728      869     +141
- Partials      192      202      +10

Flag
Coverage Δ

unittests
66.08% <100.00%> (-4.22%)
:arrow_down:

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

Files with missing lines
Coverage Δ

qgis_deployment_toolbelt/__about__.py
100.00% <100.00%> (ø)

... and 7 files with indirect coverage changes


[3242] api updates before apply review

Context
Open api updates before apply review
Changes proposed in this pull request
All low hanging fruits...

grammar
full stops
converted json to yaml
yaml formatting
turned off contribution banner as view source url is wrong

Guidance to review
Commit by commit
Checklist

[ ] Make sure all information from the Trello card is in here
[ ] Attach to Trello card
[ ] Rebased master
[ ] Cleaned commit history
[ ] Tested by running locally

 API Updates - Before Apply Review


Bootstrap 4.2.1 Navbar

I use this theme https://github.com/BlackrockDigital/startbootstrap-creative
Navbar is not working well when upgrade to Bootstrap 4.2.1.
In the code of the Navbar,If the href attribute of Link contains "/" E.g: Link,Navbar cannot add CSS (.navbar-shrink) when scrolling the page.(Navbar background changes from transparent to white), Javascript is not working. Without /,then it is good.
Only Bootstrap 4.2.1 has this issues.Outher version is good.
Why?

Duplicate of #27903


Update Composer dependencies (2023-10-16-00-12)

Visual regression test passed!
View the visual regression test report


helm: cinder-csi: Add extraArgs support for containers

Add an extraArgs value to the various containers that are deployed by cinder-csi. Implementation is similar to occm helm chart
Cherry-pick: #2160 to release-1.23

/approve

/ok-to-test

/lgtm

/approve
can you help add the release note?

@nikParasyr you need to set the release note as in other PRs, otherwise this PR won't be merged.


AttributeError: type object 'spmatrix' has no attribute 'div'

ArbitrageLab: python -m arbitragelab --version
Python version: python --version

Description
After installing arbitagelab if I try to import this library I get an AttributeError: type object 'spmatrix' has no attribute 'div'. I am running jupyter notebook on VSCode, Windows11... I also tried on Google Colab the same error persists.

I encounter the same issue

Are you using python 3.8? Its the only version we support for now - will upgrade it soon.
Id bet its the python version.

Thank you very much for the reminder.  Also thank you so much for open source this great library! Your efforts are apppreciated.在 2024年4月16日，11:06，Jacques Joubert @.***> 写道：
Are you using python 3.8? Its the only version we support for now - will upgrade it soon.
Id bet its the python version.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

Are you using python 3.8? Its the only version we support for now - will upgrade it soon.
Id bet its the python version.

Thanks! Using Python 3.8 worked


If I move app.js to a subfolder, "sails lift" works 100%, but "node ." gives blank 404 'Not found' page

Node version: both 10.18.0 and 8.9.3
Sails version (sails): 1.2.3
ORM hook version (sails-hook-orm): ^2.1.1
Sockets hook version (sails-hook-sockets): 2.0.0
Organics hook version (sails-hook-organics): not in package-lock.json
Grunt hook version (sails-hook-grunt): 4.0.1
Uploads hook version (sails-hook-uploads): not in package-lock.json
DB adapter & version (e.g. sails-mysql@5.55.5): using builtin NeDB
Skipper adapter & version (e.g. skipper-s3@5.55.5): not in package-lock.json

OS environment: Windows 8.1 64-bit
Before posting this, I verified: moved the app.js to the toplevel folder and changed package.json:main to reflect such. No issues there. So:
My sails app is also an electron app. Electron-packager requires your entry point be in a subfolder. So I move app.js to a subfolder and update my package.json. With this, my sails app still works 100% if I do a sails lift, but if I do node . (which is how electron prefers to do things), I get the following results:

Sails does lift in the console, but first it warns me about a missing session secret.
In the browser, I get a 404 code and a plaintext 'Not found'.

I've thrown try/catch blocks at everything in app.js, and made all the electron stuff conditional, but that has had no effect nor revealed any extra information.
My project is open source, so I have no problem sharing code/configs as necessary to troubleshoot.
I realize this is not the electron.js support site, but node . is supposed to work and it normally does until I move the entry point... am I just unaware of a config step or something?
Thanks for your time.

@johnabrams7 this is a bug unless your software is "working as intended" when its main entry point can't be run from a subfolder.

I found the obvious workaround does work:

Move the "real" main entry script to the top-level folder of the project (same folder as package.json).
Create a new script and put it in the subfolder, e.g. app/launcher.js. It only needs to contain one line: require('../app.js'); (presuming your "real" main entry script is app.js).
Update package.json 's main node to point at app/launcher.js

I still consider this a bug and would be willing to follow troubleshooting instructions in order to get you the diagnostic data you need.

Hey, @NathanHawks! Glad you found a workaround. We were wondering if wrapping the whole Sails app in a subfolder might also solve this issue.

Short answer, yes, at least with a fresh app.
Steps taken:

mkdir subfolder; cd subfolder
npm init (with app/app.js as main entry point)
mkdir app; cd app
sails new . and chose Web App

Note: the command did not cleanly exit on its own.
 info: Installing dependencies...
Press CTRL+C to cancel.
(to skip this step in the future, use --fast)
 info: Created a new Sails app `app`!

(steps continued)

Confirm the app works in a regular browser
Quick 'n dirty integrate Electron into app.js:

const request = require('request');
// electron config stuff
var backgroundColor = '#1A1A1A';
var width = 800, height = 600;
// get electron
const electron = require('electron');
// prime electron app
const app = electron.app;
// try to prevent multiple instances of the app running
app.requestSingleInstanceLock();
// electron window(s)
var mainWindow = null;
// when sails says it's lifted, wait a delay or else JS & CSS return 404's
var windowCreationDelay = 5000;
// sails app address
const appAddress = 'http://<IP_ADDRESS>';
const appPort = 1337;

  // give sails time
  setTimeout(() => {
    try {
      // create the browser window
      if (app) {
				const BrowserWindow = electron.BrowserWindow;
        mainWindow = new BrowserWindow({show: false, width: width, height: height,
          backgroundColor: backgroundColor
        });
        // hide menu bar where available
        mainWindow.setMenuBarVisibility(false);
        // maximize the window
        mainWindow.maximize();
        // go to the sails app
        mainWindow.loadURL(`http://<IP_ADDRESS>:1337/`);
        // show javascript & DOM consoles
        mainWindow.webContents.openDevTools();
        // show browser only when it's ready to render itself
        mainWindow.once('ready-to-show', () => {
          mainWindow.show();
        });
        // setup close function
        mainWindow.on('closed', function() {
          mainWindow = null;
        });
      }
    }
    catch (e) { console.error(e); }
  }, windowCreationDelay);

// quit when all windows are closed
if (app) app.on('window-all-closed', function() {
  if (process.platform !== 'darwin') {
    sails.lower(() => {
      app.exit();
    });
  }
})

// --------------------------------------------------------------
// insert sails-generated app code here
// --------------------------------------------------------------

cd ..; electron . -- confirmed boilerplate app works
Copied relevant deps/devdeps/config from another project to package.json
npm install
electron-packager . testSubfolder --platform=win32 --arch=x64
Lower antivirus shields (or add a security exception)
Run the new EXE

Note that the app subfolder now has its own node_modules folder. Project size on disk is currently 1.3 GB after structuring things this way. This includes the electron-packager build. Compare to 1.1 GB, the size of an actual project (also with an electron-packager build in tow).

(Apologies if there was any confusion ---- the title refers to running with node . but this was to simplify the question since it was a requirement of electron-packager)
It also works with node .


Dataset health tables

Creates a table component styled and functional to handle filters.
Create mock data for tables in mirage fixtures

ember test results:
ok 1 Chrome 68.0 - ESLint | mirage: mirage/data/schema.js
ok 2 Chrome 68.0 - ESLint | mirage: mirage/factories/access.js
...
ok 427 Chrome 68.0 - Unit | Utility | validators/urn: buildLiUrn
ok 428 Chrome 68.0 - ember-qunit: Ember.onerror validation: Ember.onerror is functioning properly

1..428
# tests 428
# pass  422
# skip  6
# fail  0

# ok

Reference:

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1291   +/-   ##
=======================================
  Coverage   12.44%   12.44%
=======================================
  Files          28       28
  Lines         643      643
  Branches      137      137
=======================================
  Hits           80       80
  Misses        563      563

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 95d0f55...8f49e5e. Read the comment docs.

Coverage remained the same at 27.736% when pulling 8f49e5e7fd94cde6463a82b6296ed906e8ef749c on cptran777:dataset-health-tables into 95d0f552105aef28798c7cd9640454298d4432e2 on linkedin:master.


select tags and default selected value

I've noticed on using the select tag that the input field takes the first "selected" value, in my screenshot it's displayed as the color red.
Is there a way to control the placeholder value using cf-input-placeholder?
In normal select dropdown fashion, I tried using a disabled option as a placeholder which is not selectable however I only want this placeholder text to appear in the input field and not be seen as an option.

I came across this as well, where it seems "cf-input-placeholder" is overriden by the value of the first select option. Were you able to find a solution to this?

not exactly the best solution but I removed the textfield on radio options to hide this side effect.

So, currently there is no way to not have any default selected value?


ARROW-13775: [C++] Allow Partitioning objects to be created with a vector of field names

This PR ended up being fairly extensive but mostly to avoid a single shared_ptr copy (due to changing the constructor to take in const Schema& schema instead of std::shared_ptr<Schema> since I now copy the field names and types out of the schema) and I'm not entirely sure that's worth it over just keeping the old interface.
Otherwise the only potential downside is that std::shared_ptr<Schema> Partitioning::schema() became Result<std::shared_ptr<Schema>> Partitioning::GetSchema() since it could potentially fail if the partitioning was created without a schema.  I also removed the corresponding accessor from python.
I don't think this is a problem though because GetSchema would only work if there was a schema which means...

You created the partitioning with a schema in the first place so there is no need to pull it back out.
You created the schema with a FileSystemDatasetFactory so you can just get the field types from the dataset schema.

Can you explain a bit what's the goal for allowing a Partitioning object without a schema? (we already have a PartitioningFactory for the case where the schema gets inferred from parsed paths)
What would be a use case? (I don't see any test where it is actually used for something) I suppose as alternative for https://github.com/apache/arrow/pull/11008, right?

I also removed the corresponding accessor from python. I don't think this is a problem though because GetSchema would only work if there was a schema which means...

You created the partitioning with a schema in the first place so there is no need to pull it back out.
You created the schema with a FileSystemDatasetFactory so you can just get the field types from the dataset schema.

I added the partitioning attribute on a Dataset on purpose so you can easily check the schema of your partitioning after reading a partitioned dataset (eg dask needs this). It's true that you also can get the types of the partition columns from the dataset's schema if you still have access to the field names of the Partitioning (but this doesn't yet seem to be exposed in this PR, though it should be easy to add), but that's certainly less convenient IMO.
(We could also still leave the attribute, but have it error if not available)

This PR ended up being fairly extensive but mostly to avoid a single shared_ptr copy (due to changing the constructor to take in const Schema& schema instead of std::shared_ptr<Schema> since I now copy the field names and types out of the schema) and I'm not entirely sure that's worth it over just keeping the old interface.

Just take const std::shared_ptr<Schema>& instead to minimize changes.

What would be a use case? (I don't see any test where it is actually used for something) I suppose as alternative for #11008, right?

Yes, but not as an alternative, this would be to enable #11008.  I don't believe #11008 works today.  ds.partitioning(field_names=['a']) returns a partitioning factory and not a partitioning.  It also returns an error when specifying the hive format.  A partitioning factory cannot be used for writing datasets (only reading)...
>>> import pyarrow
>>> import pyarrow as pa
>>> import pyarrow.dataset as ds
>>> table = pa.Table.from_pydict({'a': [1, 2, 3], 'b': ['x', 'y', 'z']})
>>> ds.partitioning(field_names=['a'])
<pyarrow._dataset.PartitioningFactory object at 0x7f2410d4c170>
>>> part = ds.partitioning(field_names=['a'])
>>> ds.write_dataset(table, '/tmp/new_dataset', format='parquet', partitioning=part)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/pace/anaconda3/envs/arrow-release-5/lib/python3.9/site-packages/pyarrow/dataset.py", line 791, in write_dataset
    partitioning = _ensure_write_partitioning(partitioning)
  File "/home/pace/anaconda3/envs/arrow-release-5/lib/python3.9/site-packages/pyarrow/dataset.py", line 686, in _ensure_write_partitioning
    raise ValueError("partitioning needs to be actual Partitioning object")
ValueError: partitioning needs to be actual Partitioning object

I didn't add real world use cases (or python bindings) because I figured those would be covered by #11008.

A partitioning factory cannot be used for writing datasets (only reading)...

Yes, that's the case right now, but that's what #11008 changes: under the hood in ds.write_dataset(..) it combines the PartitioningFactory (if passed by the user) with the schema of the dataset to get an actual Partitioning, which can then be used for writing the dataset.

@jorisvandenbossche Ok, I had to take a further look at the PR.  I didn't quite realize what you are doing.  You are allowing the write_dataset method to accept a partitioning factory which you then populate with the schema from the table being written.  I'll withdraw this then.

To be clear, it's certainly a bit of "misuse" of the PartitioningFactory object, as that is meant to "finish" a partitioning based on parsing file names to infer the schema. But it's also a smaller change, so that might be simpler than changing the Partitioning interface


Passing binary values in with data files

Rachit and I talked about this briefly - I thought it would be convenient if we could represent inputs in binary/hex when testing components. I don't think JSON files will accept things that aren't in decimal, though.
This came to mind when I was trying to test a decoder for RISC-V instructions. To test it, I was writing out the instructions in binary, converting it to decimal, and putting that value in the JSON file. This was a bit unwieldy and also made it less clear what each test was targeting.

The cocotb-base harness exists in this file and is invokes from a fud stage when we run the fud e ... --to cocotb-out command. The data file is passes in here: https://github.com/cucapra/filament/blob/main/fud/filament.py#L204
I think the best place to add this feature is in the harness file itself. The data file is loaded here: https://github.com/cucapra/filament/blob/main/fud/filament.py#L204
We can add some sort of JSON modification that takes data that looks like a binary string and transforms it into an appropriate decimal number. Once that transformation is done, we can pass the data argument in the harness without any other changes. Does this make sense?

Oops, I read this but apparently never responded. It makes sense and I'll try doing this probably next week!


How to use filter_query in this library?

About this issue
This is how to use on web app.
const fetchedStories = await Storyblok.get(`cdn/stories/`, {
					starts_with: slug,
					filter_query: {
						title: {
							like: `*${query}*`,
						},
					},
				});

but this library doesn't provides to use Map<Key: Any> for filter_query.
Please help me to fetch stories with filter_query as above js codes.
Thank you.
Details

[ ] Used library version: 1.2.1

Checklist

[ ] Searched for similar issues
[ ] Checked out the sample application
[ ] Read the README
[ ] Checked out the CHANGELOG
[ ] Read the FAQ
[ ] Checked out the MIGRATION GUIDE

The library exposes the filter query here:
https://github.com/mikepenz/storyblok-mp-SDK/blob/develop/storyblok-mp-sdk/src/commonMain/kotlin/com/mikepenz/storyblok/sdk/Storyblok.kt#L181
So you can pass in the filter query as string which is then sent to the API.
Maybe you can explain a bit more on the need for the API, so we can look into exposing additional helpers to construct the filter qery?

Github link what you shared doesn't make sense for me.
How can I pass this filter as string?
filter_query: {
						title: {
							like: `*${query}*`,
						},
					}

@daliborristic883 I understand now. thank you.
Your filterquery is sent as filter_query[title][like]=*test* via the query parameters.
I'll look into adjusting the API to support such query parameters, which is currently not handled as needed.

Ok thanks.

Before I release an update with the change. Can you please have a look at the PR and see if it also matches your needs:
https://github.com/mikepenz/storyblok-mp-SDK/pull/71 ?

@mikepenz
Sorry I can't make sure how to use filter_query.
can you please show me how to use it?
Thank you.

So with the new API (after it's released) you can pass the different arrays like:
storyblok.fetchStories(filterQuery = mapOf("[title][like]" to "*test*"))

Do you have more complicated filter setups which would be worth trying prior?

Releasing it as 1.3.0-rc01 so you can more easily try it out, and we can iterate on it depending on the needs


map data

same sort of discussion as #9 is needed.

where/how do we store it
how to release
how to rollback (most important new feature)
needs a commit history
ideally inexperienced committers need to have changes reviewed to prevent the currently common breaking changes

Is there a good gem for graphs and graph algorithms in Ruby? I would strongly suggest using a third-party library for graph operations, and see if they support some file format which is human readable and can store everything we need.
I'm not 100% certain what all the complexities about the graph of Gemstone are though. Is the game world a multigraph, or does it require a full pseudograph representation? I know of at least one point where currently the graph stored in lich fails (the ID's for both instances of the Red Forest are identical, and thus there are no edges for leaving the area). I'm not sure if that's an underlying limitation though

There are a lot of edge cases, but generally it is a simple graph. The largest areas of edge cases are the Confluence and Minotaurs.  These areas are randomized and shift. I'm not real familiar with the Red Forest.  The Rift is also a special case.


Simple cats IOApp hello world binary not running

Hello, I'm trying to evaluate Bazel for building Scala apps and I'm trying to build a simple hello world IOApp, but get a class not found exception.
I'm using bazel-deps to define my dependencies.
WORKSPACE:
workspace(name = "bazel_poc")

rules_scala_version="0f89c210ade8f4320017daf718a61de3c1ac4773"

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "io_bazel_rules_scala",
    strip_prefix = "rules_scala-%s" % rules_scala_version,
    type = "zip",
    url = "https://github.com/bazelbuild/rules_scala/archive/%s.zip" % rules_scala_version,
)

load("@io_bazel_rules_scala//scala:toolchains.bzl", "scala_register_toolchains")

scala_register_toolchains()

load("@io_bazel_rules_scala//scala:scala.bzl", "scala_repositories")

scala_repositories()

load("//3rdparty:workspace.bzl", "maven_dependencies")

maven_dependencies()

protobuf_version="09745575a923640154bcf307fba8aedff47f240a"
protobuf_version_sha256="416212e14481cff8fd4849b1c1c1200a7f34808a54377e22d7447efdf54ad758"

skylib_version = "0.8.0"
http_archive(
    name = "bazel_skylib",
    type = "tar.gz",
    url = "https://github.com/bazelbuild/bazel-skylib/releases/download/{}/bazel-skylib.{}.tar.gz".format (skylib_version, skylib_version),
    sha256 = "2ef429f5d7ce7111263289644d233707dba35e39696377ebab8b0bc701f7818e",
)

src/main/scala/example/BUILD:
load("@io_bazel_rules_scala//scala:scala.bzl", "scala_library", "scala_binary")

package(default_visibility = ["//visibility:public"])

scala_binary(
  name = "hello",
  srcs = ["Hello.scala"],
  scalacopts = [
    "-encoding", "UTF-8",
    "-feature",
    "-language:existentials",
    "-language:experimental.macros",
    "-language:higherKinds",
    "-language:implicitConversions",
    "-Ypartial-unification",
  ],
  deps = [
    "//3rdparty/jvm/org/typelevel:cats_core",
    "//3rdparty/jvm/org/typelevel:cats_kernel",
    "//3rdparty/jvm/org/typelevel:cats_macros",
    "//3rdparty/jvm/org/typelevel:cats_effect",
  ],
  main_class = "example.Hello",
  unused_dependency_checker_mode = "warn",
)

bazel_deps.yaml:
options:
  buildHeader: [ "load(\"@io_bazel_rules_scala//scala:scala_import.bzl\", \"scala_import\")" ]
  languages: [ "scala:2.12.8" ]
  resolverType: "coursier"

dependencies:
  org.typelevel:
    cats:
      lang: scala
      modules: [ "core", "effect", "kernel", "macros" ]
      version: "2.0.0"

Hello.scala:
package example

import cats.data.Kleisli
import cats.effect._
import cats.implicits._

object Hello extends IOApp {

  val greet = Kleisli[IO, String, Unit] { name =>
    IO { println(s"Hello $name") }
  }

  override def run(args: List[String]) =
    greet.run("John Doe").as(ExitCode.Success)

}

bazel-bin/src/main/scala/example/hello output:
Exception in thread "main" java.lang.NoClassDefFoundError: cats/effect/IOApp$class
	at example.Hello$.<init>(Hello.scala:7)
	at example.Hello$.<clinit>(Hello.scala)
	at example.Hello.main(Hello.scala)
Caused by: java.lang.ClassNotFoundException: cats.effect.IOApp$class
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 3 more

Am I missing some configuration? I feel like it has to do with the fact that both IOApp and App are traits but that's just a hunch. (Normal class with main method works fine).
Sidenote:
The following also fails:
object Hello extends App {
  println("test")
}

Output:
Exception in thread "main" java.lang.AbstractMethodError: Method example/Hello$.scala$App$_setter_$executionStart_$eq(J)V is abstract
	at example.Hello$.scala$App$_setter_$executionStart_$eq(Hello.scala)
	at scala.App$class.$init$(App.scala:44)
	at example.Hello$.<init>(Hello.scala:18)
	at example.Hello$.<clinit>(Hello.scala)
	at example.Hello.main(Hello.scala)

Apparently this was an issue of scala version mismatch. The fix is to add the scala-2.12 jar shas in scala_repositories() call in WORKSPACE.

👍🏽 Good luck
On Wed, 6 Nov 2019 at 14:56 Sakis Karagiannis<EMAIL_ADDRESS>wrote:

Closed #870 https://github.com/bazelbuild/rules_scala/issues/870.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/rules_scala/issues/870?email_source=notifications&email_token=AAKQQFYEWZ5JSKQVAE3KOYLQSK5JNA5CNFSM4JIUJOA2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOUVVEOMY#event-2775205683,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKQQF2JRDJ5UO4PWS3AJSTQSK5JNANCNFSM4JIUJOAQ
.


add installation for arch linux

Hey,
I'm an Arch Linux package maintainer. I'm submitting this PR to let you know that I created the following packages for the installation of shy on Arch Linux and other distributions that support installing packages from AUR:

shy (builds from source)
shy-bin (latest binary)
shy-git (VCS/development package)

I also updated README.md about installation from AUR. (7a87bff)
BR,
orhun.

Very cool thank you very much! I love Arch Linux!


Don't complete exceptional tasks normally

Nice catch!

We observed an issue where something was completed exceptionally in an actor but at the caller the return value looked like it had completed normally. That led to checking this part.
I've also signed the CLA to be able to contribute.

Available in 1.12.0
https://github.com/orbit/orbit/releases/tag/v1.12.0


[WFLY-19318] WildFly Naming client module is private module

https://issues.redhat.com/browse/WFLY-19318

More information about the wildfly-bot[bot]

I added the 'hold' label pending further discussion of a deprecation plan, documentation of a migration path, update of the JIRA with more details, etc.

@tadamski @rachmatowicz FYI


Refactor enum CurrentUserPrompt to trait CurrentUserPrompt

Description
The goal of this issue is to restructure the CurrentUserPromps to follow the same format as actions. This again will make it much clearer and easier for Impierce but also for third parties to add and navigate through the CurrentUserPromps.
The idea is to turn CurrentUserPromps into structs as well (which implement a new CurrentUserPrompt trait). Though these structs will be fairly simple for our current code, this does open up more flexibility in future/third party additions. The current enum might  appear as a cleaner solution to our current needs, but as enums are static this will bar us from more flexible ways of extending the code in the future.
Again we will use the typetag library to compliment these structs. This will make it possible to serialize the CurrentUserPromps for easy back-end to front-end communication.
The file will contain some comments guidelining third party usage as well.
Motivation
The result will be a clear a much clearer, cleaner and safer pattern to follow for third parties to add their UserPrompts.
Resources
n/a
To-do List
[ ] Transpose existing code to new format
[ ] Add comments and guidelines
[ ] Test new code

 Refactor enum CurrentUserPrompt to trait CurrentUserPrompt


writeType(...) methods should not accept undefined

Writer's writeType methods (writeTimestamp, writeString, etc) all accept undefined as a synonym for null. This means that calling writeInt() (with no parameters) produces null.int, which is rather surprising. Passing an undefined should probably cause an Error to be thrown.

Related to #130, which is a much larger effort.

We've made an exception for writeNull(), which does not throw, and is equivalent to writeNull(IonTypes.NULL)


Consider adding retry feature

First thanks for the toolkits, it's really helpful.
There would be connection errors on several items when downloading a playlist occasionally and may need to retry the full download again.
Adding  the retry feature would be appreciated  : )

Hi, great suggestion!
I will try to work on it in the weekend :)

I added the feature, hopefully it works as you expected


New PR to test SignCLA at 2019-07-18 17:29:31.472873159 -0700 PDT m=+5.037340958

Body of PR

corp-pass-staging: test succeeded


get_absolute_update_url weird bug

Hi,
when using choice_label in (Multi)ChoiceWidget yout get a custom formatting of the select item but you also get that same  html for the widget. I'd like to have different representation. Is there a simple/recommanded way to achieve this? i.e.: a choice_label for the select item and one for the widget item?

Couldn't reproduce, you're probably doing something wrong.
Would love to have a demo: http://django-autocomplete-light.readthedocs.org/en/stable-2.x.x/faq.html#how-to-ask-for-help


Trying to build examples from Quickstart gRPC for C++. Got error: undefined reference to `grpc_alts_is_running_on_gcp()'

What version of gRPC and what language are you using?
I am following the Quickstart instructions to install gRPC for cpp. From this line, I conclude I am working with v1.46.3:
git clone --recurse-submodules -b v1.46.3 --depth 1 --shallow-submodules https://github.com/grpc/grpc
What operating system (Linux, Windows,...) and version?
Ubuntu 18.04.6 LTS
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
cmake version 3.19.6
GNU Make 4.1 / Built for x86_64-pc-linux-gnu
What did you do?
First, I tried installing with Bazel ("bazel build :all"). It couldn't find my gcc path and I had to add this as a variable. But I couldn't build examples (maybe I should install somehow?) so I moved to build with CMake.
I was following Quickstart instructions. I did the "Build and install gRPC and Protocol Buffers" part - with only 1 difference - I run "make -j3" because "make -j" seemed to spawn a lot processes and hanged dead my i5-3570(4/4) with 8Gb. I installed and restarted pc.
I then tried to build examples. I got errors. (I tried this after building gRPC+PB and with clean grpc repository clone - the same result).
What did you expect to see?
Executable files greeter_server and greeter_client in the working directory.
What did you see instead?
I saw this:

...
[ 55%] Linking CXX executable greeter_async_server
/home/broot/.local/lib/libgrpc.a(google_c2p_resolver.cc.o): In function grpc_core::(anonymous > namespace)::GoogleCloud2ProdResolver::GoogleCloud2ProdResolver(grpc_core::ResolverArgs)': google_c2p_resolver.cc:(.text+0x13f9): undefined reference to grpc_alts_is_running_on_gcp()'
...
make: *** [all] Error 2

Just for context - full output:

broot@broot:~/grpc/examples/cpp/helloworld/cmake/build$ cmake -DCMAKE_PREFIX_PATH=$MY_INSTALL_DIR ../..
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
CMake Warning (dev) at /home/broot/.local/lib/cmake/protobuf/protobuf-options.cmake:6 (option):
Policy CMP0077 is not set: option() honors normal variables.  Run "cmake
--help-policy CMP0077" for policy details.  Use the cmake_policy command to
set the policy and suppress this warning.
For compatibility with older versions of CMake, option is clearing the
normal variable 'protobuf_MODULE_COMPATIBLE'.
Call Stack (most recent call first):
/home/broot/.local/lib/cmake/protobuf/protobuf-config.cmake:2 (include)
/home/broot/grpc/examples/cpp/cmake/common.cmake:101 (find_package)
CMakeLists.txt:24 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Using protobuf <IP_ADDRESS>
-- Using gRPC 1.46.3
-- Configuring done
-- Generating done
-- Build files have been written to: /home/broot/grpc/examples/cpp/helloworld/cmake/build
broot@broot: ~ /grpc/examples/cpp/helloworld/cmake/build$ make -j3
[  5%] Generating helloworld.pb.cc, helloworld.pb.h, helloworld.grpc.pb.cc, helloworld.grpc.pb.h
Scanning dependencies of target hw_grpc_proto
[ 11%] Building CXX object CMakeFiles/hw_grpc_proto.dir/helloworld.grpc.pb.cc.o
[ 16%] Building CXX object CMakeFiles/hw_grpc_proto.dir/helloworld.pb.cc.o
[ 22%] Linking CXX static library libhw_grpc_proto.a
[ 22%] Built target hw_grpc_proto
Scanning dependencies of target greeter_async_client
Scanning dependencies of target greeter_async_server
Scanning dependencies of target greeter_async_client2
[ 27%] Building CXX object CMakeFiles/greeter_async_client.dir/greeter_async_client.cc.o
[ 33%] Building CXX object CMakeFiles/greeter_async_client2.dir/greeter_async_client2.cc.o
[ 38%] Building CXX object CMakeFiles/greeter_async_server.dir/greeter_async_server.cc.o
[ 44%] Linking CXX executable greeter_async_client
[ 50%] Linking CXX executable greeter_async_client2
[ 55%] Linking CXX executable greeter_async_server
/home/broot/.local/lib/libgrpc.a(google_c2p_resolver.cc.o): In function grpc_core::(anonymous namespace)::GoogleCloud2ProdResolver::GoogleCloud2ProdResolver(grpc_core::ResolverArgs)': google_c2p_resolver.cc:(.text+0x13f9): undefined reference to grpc_alts_is_running_on_gcp()'
/home/broot/.local/lib/libgrpc.a(google_default_credentials.cc.o):(.data.rel+0x0): undefined reference to grpc_alts_is_running_on_gcp()' /home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)':
alts_credentials.cc:(.text+0x401): undefined reference to grpc_alts_is_running_on_gcp()' /home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_server_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)':
alts_credentials.cc:(.text+0x48b): undefined reference to grpc_alts_is_running_on_gcp()' collect2: error: ld returned 1 exit status CMakeFiles/greeter_async_client2.dir/build.make:159: recipe for target 'greeter_async_client2' failed make[2]: *** [greeter_async_client2] Error 1 CMakeFiles/Makefile2:189: recipe for target 'CMakeFiles/greeter_async_client2.dir/all' failed make[1]: *** [CMakeFiles/greeter_async_client2.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... /home/broot/.local/lib/libgrpc.a(google_c2p_resolver.cc.o): In function grpc_core::(anonymous namespace)::GoogleCloud2ProdResolver::GoogleCloud2ProdResolver(grpc_core::ResolverArgs)':
google_c2p_resolver.cc:(.text+0x13f9): undefined reference to grpc_alts_is_running_on_gcp()' /home/broot/.local/lib/libgrpc.a(google_default_credentials.cc.o):(.data.rel+0x0): undefined reference to grpc_alts_is_running_on_gcp()'
/home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)': alts_credentials.cc:(.text+0x401): undefined reference to grpc_alts_is_running_on_gcp()'
/home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_server_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)': alts_credentials.cc:(.text+0x48b): undefined reference to grpc_alts_is_running_on_gcp()'
collect2: error: ld returned 1 exit status
CMakeFiles/greeter_async_client.dir/build.make:159: recipe for target 'greeter_async_client' failed
make[2]: *** [greeter_async_client] Error 1
CMakeFiles/Makefile2:135: recipe for target 'CMakeFiles/greeter_async_client.dir/all' failed
make[1]: *** [CMakeFiles/greeter_async_client.dir/all] Error 2
/home/broot/.local/lib/libgrpc.a(google_c2p_resolver.cc.o): In function grpc_core::(anonymous namespace)::GoogleCloud2ProdResolver::GoogleCloud2ProdResolver(grpc_core::ResolverArgs)': google_c2p_resolver.cc:(.text+0x13f9): undefined reference to grpc_alts_is_running_on_gcp()'
/home/broot/.local/lib/libgrpc.a(google_default_credentials.cc.o):(.data.rel+0x0): undefined reference to grpc_alts_is_running_on_gcp()' /home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)':
alts_credentials.cc:(.text+0x401): undefined reference to grpc_alts_is_running_on_gcp()' /home/broot/.local/lib/libgrpc.a(alts_credentials.cc.o): In function grpc_alts_server_credentials_create_customized(grpc_alts_credentials_options const*, char const*, bool)':
alts_credentials.cc:(.text+0x48b): undefined reference to `grpc_alts_is_running_on_gcp()'
collect2: error: ld returned 1 exit status
CMakeFiles/greeter_async_server.dir/build.make:159: recipe for target 'greeter_async_server' failed
make[2]: *** [greeter_async_server] Error 1
CMakeFiles/Makefile2:108: recipe for target 'CMakeFiles/greeter_async_server.dir/all' failed
make[1]: *** [CMakeFiles/greeter_async_server.dir/all] Error 2
Makefile:102: recipe for target 'all' failed
make: *** [all] Error 2
broot@broot:~/grpc/examples/cpp/helloworld/cmake/build$

Anything else we should know about your project / environment?
All I can add is this:
Quickstart example is built smoothly when instead of Ubuntu18 I load my PC into the Windows system and then log into [WSL2] Ubuntu 20.04.2 LTS with "cmake version 3.19.6" and "GNU Make 4.2.1" and "gcc 9.3.0" (though I still need to build gRPC with "make -j3" command, so my i5-3570+8Gb wouldn't die). "Helloworld" example is built and run nicely.

Yes, for bazel I use CC=/usr/bin/gcc. But this is built attempt with make (and cmake). Third try with clean build worked as intended - I think I made some mess while fighting my out-of-memory kind of errors on "make -j" command. Installed it clean with "make -j3". Thanks, closing.


use RISCV_PREFIX instead of RISCV_TOOLCHAIN

The riscv-arch-test uses variable RISCV_PREFIX, but the makefiles in sw use RISCV_TOOLCHAIN for the same purpose This PR makes them consistent by using RISCV_PREFIX only.

I never thought about this, but now it is much more consistent!
Great work! :+1:


tar command fails in mac build when productName has spaces

Unsure where you're getting that error from since tauri-build does never run tar anywhere. So this must be something specific to you workflow. Gonna close this for now

I did not add anything new into the workflow other than using tauri-build. I did the same with the official tauri build, but that did not result in this issue


DLL load failed while importing _sqlite3

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[x] Tried basic troubleshooting (if a bug/error)

[ ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
Created a new environment
conda create -n spyder54 spyder=5.4
activate spyder54

run spyder from anaconda terminal in the spyder54 environemnt
got the following error and Spyder closes down at startup.
fromIccProfile: failed minimal tag size sanity
Traceback (most recent call last):
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Scripts\spyder-script.py", line 10, in <module>
    sys.exit(main())
             ^^^^^^
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\app\start.py", line 256, in main
    mainwindow.main(options, args)
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\app\mainwindow.py", line 1823, in main
    mainwindow = create_window(MainWindow, app, splash, options, args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\app\utils.py", line 289, in create_window
    main.setup()
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\app\mainwindow.py", line 732, in setup
    internal_plugins = find_internal_plugins()
                       ^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\app\find_plugins.py", line 40, in find_internal_plugins
    mod = importlib.import_module(entry_point.module_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\plugins\editor\plugin.py", line 49, in <module>
    from spyder.plugins.editor.widgets.codeeditor import CodeEditor
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\spyder\plugins\editor\widgets\codeeditor.py", line 33, in <module>
    from IPython.core.inputtransformer2 import TransformerManager
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\IPython\__init__.py", line 55, in <module>
    from .terminal.embed import embed
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\IPython\terminal\embed.py", line 15, in <module>
    from IPython.core.interactiveshell import DummyMod, InteractiveShell
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\IPython\core\interactiveshell.py", line 97, in <module>
    from IPython.core.history import HistoryManager
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\site-packages\IPython\core\history.py", line 11, in <module>
    import sqlite3
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\sqlite3\__init__.py", line 57, in <module>
    from sqlite3.dbapi2 import *
  File "C:\Users\atosato\Anaconda3\envs\spyder54\Lib\sqlite3\dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ImportError: DLL load failed while importing _sqlite3: The specified procedure could not be found.

Versions

Spyder version: 5.4.3
Python version: 3.11.7
Qt version: seems not to be installed in my env
PyQt version: 5.15.10
Operating System name/version:

I fixed this by downloading the sqlite3 ddl here and copying the downloaded files (sqlite3.dll, sqlite3.def)  into C:\Users\yor_user_name\Anaconda3\envs\your_environment_name\DLLs

Hey @albe-jj, thanks for reporting and letting us know how you managed to fix this problem.

I fixed this by downloading the sqlite3 ddl here and copying the downloaded files (sqlite3.dll, sqlite3.def) into C:\Users\yor_user_name\Anaconda3\envs\your_environment_name\DLLs

You are my HERO!!! Thank you!!!!

I fixed this by downloading the sqlite3 ddl here and copying the downloaded files (sqlite3.dll, sqlite3.def) into C:\Users\yor_user_name\Anaconda3\envs\your_environment_name\DLLs

Thanks very much, OP! Just add a minor explanation to newbies like me, from the website, you download the 'Precompiled Binaries' for your OS and unzip them into wherever your environment is located '...\Anaconda3\envs\your_enviroment_name\DLLs' , not necessarily on the C: drive.


Issue #79: added a configuration change

Modified code to add configuration change to choose between Berkley or Rocks db in backend.

Coverage decreased (-0.003%) to 46.487% when pulling 2af7c35908fcb6d50a19dc32d7fa0e88f2b79513 on anudeepti2004:master into d25b53977c936af0c64be3da3042bbdec2d0459f on ViDA-NYU:master.


[4.0] destroy broken on selections with length > 1

Only the first select of the list is destroyed (similar issue #2187 but for v4.0).
Here is a test case (destroy after 3 seconds) :
http://codepen.io/mh-nichts/pen/JdXbdm
Tested on Windows 7 : Firefox 37, Chrome 42, IE 11.

I was affected by the issue too, and I fixed it locally, hence the pull request.

$orginalRow.find("select.select2").select2("destroy").end().clone();
4.03: There is an error while calling on non select2 object. It was working fine in version 3.5.


Initialize interactive frame on startup

Nice to have: give plugin a title and make it full size on startup.

Amazing!

Of course, the dimensions are hard coded

Too bad there's nothing like Notify: autoscale for plugin windows

Good to merge?

Yep :+1:


chore: FollowProfileButton uses cohesion analytics

Follow up to #6213, Update FollowProfileButton to use cohesion analytics and remove unnecessary props.

bumping for review @damassi @emmadickson


[Proposal] Add JuiceFS CSI Driver Chart to KubeSphere App Store

Hi JuiceFS team,
The tutorial Install JuiceFS on KubeSphere inspired me a lot. If you would like to make JuiceFS CSI Driver much visible and easier to deploy in KubeSphere, I recommend you to add the Helm Chart of JuiceFS CSI Driver to the built-in KubeSphere App Store. You can raise a PR to add it to this folder, then you will be able to see JuiceFS CSI Driver in KubeSphere 3.2.

PR already merged.


Preserving ordering in sol2 tables and converting to ordered JSON

First of all, thank you for this library and the effort that was put into it!
Description
I'm using the sol2 library along with the nlohmann JSON library in my project. I need to preserve the ordering of data in sol tables and then convert them to ordered JSON using the nlohmann JSON library. However, it seems that the default behavior of sol2 doesn't preserve ordering when converting sol tables to JSON.
Expected Behavior:
When converting sol tables to JSON, the ordering of elements should be preserved, ensuring that the JSON output maintains the same order as the original sol table.
Steps to Reproduce:

Create a sol table and populate it with data, ensuring that the data has a specific order:

sol::state lua;
sol::table myTable = lua.create_table();
myTable["first"] = 1;
myTable["second"] = 2;
myTable["third"] = 3;

Convert the sol table to JSON using sol2:

nlohmann::ordered_json jsonOutput = tableToJson(myTable);

nlohmann::ordered_json tableToJson(sol::table table) {
    nlohmann::ordered_json json;
    table.for_each([&json](sol::object const& key, sol::object const& value) {
        if (key.is<std::string>()) {
            std::string keyStr = key.as<std::string>();
            if (value.is<int>()) {
                json[keyStr] = value.as<int>();
            } else if (value.is<double>()) {
                json[keyStr] = value.as<double>();
            } else if (value.is<std::string>()) {
                json[keyStr] = value.as<std::string>();
            } else if (value.is<bool>()) {
                json[keyStr] = value.as<bool>();
            } else if (value.is<sol::table>()) {
                json[keyStr] = tableToJson(value.as<sol::table>());
            } else {
                // Handle other types if needed
            }
        }
    });
    return json;
}

Compare the ordering of elements in the original sol table with the generated JSON output:

std::cout << jsonOutput.dump() << std::endl;

Output:
JSON Output:
{
    "first": 1,
    "third": 3,
    "second": 2
}

Additional Information:
I'm currently using the nlohmann ordered JSON library (nlohmann::ordered_json) to handle JSON objects. It would be helpful to have guidance on how to correctly store data in sol tables while preserving ordering and then convert them to ordered JSON using sol2.
Environment:
Operating System: WSL2 (Debian)
Compiler: Clang 14.0.6 x86_64
sol2 Version: 3.3.0
nlohmann JSON Version: 3.11.2
Full Code:
#include <iostream>
#include <sol/sol.hpp>
#include <nlohmann/json.hpp>

using Json = nlohmann::ordered_json;

// Function to convert a sol table to JSON
Json tableToJson(sol::table table) {
  Json json;
  table.for_each([&json](sol::object const & key, sol::object const & value) {
    if (key.is<std::string>()) {
      std::string keyStr = key.as<std::string>();
      if (value.is<int>()) {
        json[keyStr] = value.as<int>();
      } else if (value.is<double>()) {
        json[keyStr] = value.as<double>();
      } else if (value.is<std::string>()) {
        json[keyStr] = value.as<std::string>();
      } else if (value.is<bool>()) {
        json[keyStr] = value.as<bool>();
      } else if (value.is<sol::table>()) {
        json[keyStr] = tableToJson(value.as<sol::table>());
      } else {
        // Handle other types if needed
      }
    }
  });
  return json;
}

int main() {
  // Create a Lua state
  sol::state lua;

  // Create a Lua table
  sol::table myTable = lua.create_table();
  myTable["first"] = 1;
  myTable["second"] = 2;
  myTable["third"] = 3;

  // Convert the Lua table to JSON
  Json jsonOutput = tableToJson(myTable);

  // Inspect the JSON output
  std::cout << "JSON Output:\n" << jsonOutput.dump(4) << std::endl;

  return 0;
}

Thanks a lot for the support!

Sol tables are just lua tables. And lua tables are not guaranteed to be ordered, so the assumption in step 1 that the code creates the table with specific order is incorrect. As I understand, tables are basically hash maps.
From table constructor docs

The order of the assignments in a constructor is undefined.

The for_each documentation tells that it does not guarantee order.

The iterators you use to walk through a sol::table are NOT guaranteed to iterate in numeric order

Furthermore, in lua you can only A) iterate through a table by specifying the keys to iterate yourself and accessing that specific key in a loop, B) by iterating from 1 up to the first absent index (ipairs), C) by looping through all keys in the table with pairs which does not guarantee order (pairs calls next). for_each in sol is the same as pairs so it will never have guaranteed order even if the data would be ordered, and from the documentation of next which pairs uses:

The order in which the indices are enumerated is not specified, even for numeric indices.

To collect all of this together, what you can do is create an ordered list containing the data instead and iterate through it using ipairs (or in sol, just get length and iterate from 1 to length):
// myTable = {
// { first = 1 },
// { second = 2 },
// { third = 3 },
// }
sol::table myTable = lua.create_table();
myTable[1] = lua.create_table_with(1, "first", 2, 1);
myTable[2] = lua.create_table_with(1, "second", 2, 2);
myTable[3] = lua.create_table_with(1, "third", 2, 3);

for (int i = 1, count = myTable.size(); i <= count; ++i) {
    lua["print"](i, myTable[i], myTable[i][1], myTable[i][2]);
}

This is a lot less efficient and inconvenient overall but it guarantees order. There are of course other options, like creating your own data structure, or exposing some kind of C++ data structure to lua depending on what you need. On that vein, if you want an easy way for ordering while having a regular map, you could track the insertions and deletions from the table in a separate list.

-- Define the table with metatable
local function createTrackedTable()
    local data = {}
    local order = {}

    local mt = {
        __newindex = function(t, k, v)
            print("newindex")
            if v == nil then
                -- Remove key from data and order if the value is nil
                rawset(data, k, nil)
                for i, key in ipairs(order) do
                    if key == k then
                        table.remove(order, i)
                        break
                    end
                end
            else
                -- Add new key-value pair to data and key to order
                if rawget(data, k)  == nil then
                    table.insert(order, k)
                end
                rawset(data, k, v)
            end
        end,

        __pairs = function(t)
            local i = 0
            local function iter(data, oldk)
                i = i + 1
                local k = order[i]
                if k then
                    return k, data[k]
                end
            end
            return iter, data, nil
        end,
    }

    return setmetatable({}, mt)
end

print("HELLO", _VERSION)

-- Usage
local trackedTable = createTrackedTable()

-- Insert elements
trackedTable[1] = "apple"
trackedTable["first"] = 1
trackedTable["second"] = 2
trackedTable["third"] = 3

-- Print elements in their insertion order
for k, v in pairs(trackedTable) do
    print(k, v)
end

-- Remove element
trackedTable["second"] = nil
-- add it back in
trackedTable["second"] = 2

-- Print elements in their insertion order
for k, v in pairs(trackedTable) do
    print(k, v)
end

In general only lists, stacks, queues and similar data structures have insertion order preserved. Maps and sets order the data on its own, based on the keys or values usually, so they may not suit your needs if you require insertion order being preserved. I would say that JavaScript is quite unique in its implementation of a map style structure with insertion order when iterated (ref). Not sure I have seen anything similar elsewhere yet. 👀

@Rochet2 thank you very much for the technical explanation and support. I have continued to read the documentation of both Lua and Sol2 and will try to implement one of your proposed methods to achieve separate sorting. Basically, even if I do not respect the insertion order I need the keys to always be in a certain order before conversion to Json.
In general, I am well aware of the pattern to be followed for the final result in terms of key sorting, but I am trying to get something that scales well for future software modifications and customization of results 👍🏻


Ability to log processing durations

Description
Ability to log processing durations
Used to create https://docs.google.com/spreadsheets/d/1MY8xaf9O8Ko9ZKef5V26bAMWW3FjXicZPxAnmmW8vGQ/edit?gid=2012502775#gid=2012502775
Type of change

[ ] Refactor
[x] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)

/override "Red Hat Konflux / ols-e2e-tests-rosa / lightspeed-service"
/override "Red Hat Konflux / ols-enterprise-contract / lightspeed-service"

/lgtm

/approve


Remove version: CrystalDewWorld.CrystalDiskInfo.ShizukuEdition version 8.17.13

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

Close with reason: Duplicate;


Error in sample() usage

Documentation says this method signature should work.
julia> using QuasiMonteCarlo
julia> d, n = 4, 2^15
(4, 32768)
julia> Z = QuasiMonteCarlo.sample(n, d, SobolSample());
ERROR: MethodError: no method matching sample(::Int64, ::Int64, ::SobolSample)

Closest candidates are:
  sample(::Integer, ::Union{Number, Tuple, AbstractVector}, ::Union{Number, Tuple, AbstractVector}, ::FaureSample)
  ...

The README.md matches the soon-to-be (when??) released version, see issue #76 .
See see the stable documentation for current version.
If you want the next release features, I think you can do
pkg> add QuasiMonteCarlo#master

and look at in-development documentation.

I see, thanks!

It should be tagged now.


Perform post-release operations after 1.0.6

Codecov Report

Merging #238 (400fb19) into main (8e08013) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main     #238   +/-   ##
=========================================
  Coverage     90.02%   90.02%
  Complexity      549      549
=========================================
  Files            97       97
  Lines          1694     1694
  Branches        114      114
=========================================
  Hits           1525     1525
  Misses          150      150
  Partials         19       19

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 8e08013...400fb19. Read the comment docs.


VSCode Remote WSL drops connection reproducibly when using non-standard shell

Does this issue occur when all extensions are disabled?: No (but only because the WSL extension is what's producing the error)

VS Code Version: 1.71.2
OS Version: Windows_NT x64 10.0.19044

Steps to Reproduce:

Install Nushell (https://www.nushell.sh) though I expect this is not specific to Nu
Using WSL, run chsh -s path/to/nu to change your shell (adding it to /etc/shells as necessary)
Launch VSCode and connect to the WSL remote
Navigate into a code repo on your Windows filesystem and open a directory there (see note below)
Observe that within seconds, the WSL remote connection drops and will not reconnect. VSCode itself remains responsive, but any attempt to communicate with the remote fails (including trying to grab logs, which is a pain)
Disable terminal.integrated.shellIntegration.enabled, observe same behavior on re-launch of remote
chsh -s /bin/bash and observe all behavior goes back to normal on re-launch of remote

Note that I do not think these are minimal repro steps. Notably while I could only reproduce the issue when navigating into my Windows filesystem, some directories seemed to not produce the issue, and I can't see a good reason why that would be. This is where I'd normally start blaming other extensions, but it's difficult to rule them out while still working under WSL since I have to work through the remote.
I'd love to work with someone with a little more insight into VSCode troubleshooting to help narrow down the minimal repro.

I am able to reproduce even when manually disabling all extensions except for "WSL"

Hmm the key to reproducing seems to be not "open a code repo on your Windows filesystem" but in fact "Open a folder on your Windows filesystem that causes the VSCode integrated source control tab to populate."
Moving through any folders that are not source controlled is fine, as is moving through source controlled directories on the linux filesystem.

I tried to reproduce with the steps above, without luck, no hangs

installed nu, made it the default shell in the distro
opened a WSL remote window and opened various folders on /mnt/, some under git source control, other not

As you expect it has to do with git, can you check the gut output view? Can you run whereis git to see if git is installed in your distro, or whether the Windows git is found?

/home/asmith〉whereis git                                                                                09/30/2022 05:13:30 PM
git: /usr/bin/git /c/Program Files/Git/cmd/git.exe /usr/share/man/man1/git.1.gz

Got it both in the linux filesystem in /usr/bin and on the windows filesystem on C:\Program Files\Git\cmd.
After playing around with this a little more today I was able to reproduce even without leaving the linux filesystem by opening a particular directory /home/asmith/workspace which contains further down in its tree several git repositories. (.../github.com/nottheeconomist/reponame, .../gitlab.com/nottheeconomist/anotherrepo, etc...)
Unfortunately I can't get anything from the output views because my VSCode freezes as soon as I exhibit the error.

Can you confirm that disabling the git extension will make the freeze go away?
(open the extensions view and filter with @builtin git to see the extension)

Confirmed. I can reproduce the error with @builtin git enabled by opening my /home/asmith/workspace directory as a project in VSCode while using nushell as a login shell. I cannot reproduce by doing the same steps with @builtin git disabled.

@NotTheEconomist, what version of git are you using? Could you upgrade to the latest available version?

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


Feature Request: Slime Type Eyes

You can get Slime type eyes by removing the pupils in the image but it leads to some weird eyes, so I suggest that there is a slime eye type (2x2 as that's how slimes are)
For example this is how it looks when you look up:

I won't probably add these. The space has become limited in the skin


Update plek content store url

Following some deployments to heroku by content designers,
This [1] plek content store url returned 403 status. Now switching
to use [2].
[1] https://www-origin.integration.publishing.service.gov.uk/api
[2] https://www.gov.uk/api

+1 LGTM

@leenagupte thanks for merging this


Add NSM+Istio example

Signed-off-by: Sergey Shlyanin<EMAIL_ADDRESS>

This is overcomplicated. I'll rework ths in https://github.com/networkservicemesh/deployments-k8s/pull/5930


Feature/adp 1806 optimize polling strategy to utilize navigator on line

Context
ADP-1806 Utilize Navigator.onLine and window.online/offline events to optimize polling strategy
Proposed Solution

ConnectionStatusTracker observable type is used to notify connection state changes.
createSimpleConnectionStatusTracker is used by default in SingleAddressWallet:

When running in browser, window online/offline events are used to determine if the connection is up or down.
When running in Node, the connection will always be reported as up, because there is no simple mechanism to determine if the active interface is connected or not.

Users can provide their own ConnectionStatusTracker observable to SingleAddressWallet
Providers exponential backoff is canceled while connection is down
TipTracker will emit only while connection is up

Important Changes Introduced

Looks great! Please squash to minimal commits.

Done


Difference in Parser behaviour between 1.11.3, 1.15.4 and 1.16.1-SNAPSHOT with respect to whitespace and newline

Hi,
We are seeing a difference in parser behaviour between 1.11.3, 1.15.4 and 1.16.1-SNAPSHOT with respect to whitespace and newlines between the html tags and text. We are using xml parser and prettyprint set to true.
For example:
Input:

							1111

								V2

								Xdxux

								v3yfygygyg

with Jsoup version 1.11.3 we get the parser output has

         1111

         V2

 Xdxux

 v3yfygygyg

with Jsoup version 1.15.4 we get the parser output has

        1111

V2

          Xdxux

          v3yfygygyg

We can re-create this issue using: https://try.jsoup.org/~HLY5GwlDvfC8Fn8tiGSpgCyIFFo
I observed that some fixes was done around whitespace and newline character so I consumed 1.16.1-snapshot version.
with Jsoup version 1.16.1-snapshot version  we get the parser output has

        1111

         V2

          Xdxux

          v3yfygygyg

We are bit confused about which is the correct behaviour as we are upgrading the jsoup version from 1.11.3 to 1.15.4
to understand the difference I have highlighted it in the image below which was captured using notepad++ to showcase the difference in whitespace between various versions of jsoup

In 1.11.3 we see only
 tag, but with 1.15.4 newline between
 and  tag is lost.
With 1.11.3 we see there is a whitespace after every
 and after the text "v3yfygygyg" but with 1.15.4 and 1.16.1-SNAPSHOT the whitespace is not there.
with 1.11.3 we see there is a whitespace after
 which is not present with 1.15.4 and 1.16.1-SNAPSHOT version of jsoup
with 1.11.3 we see there is a whitespace after
 tag which is not present with 1.15.4 and 1.16.1-SNAPSHOT version of jsoup
@jhy  We are bit confused with what is the correct behaviour of the parser. Was there an issue with 1.11.3 which is fixed now or is this a new issue? Please can you let us know what should be the correct behaviour.
Thank you....

Hi,
The output of the pretty-printer is subject to change as we make improvements.
If the output of the printer causes a change to the way a browser renders the HTML, I would generally consider it a bug. E.g. see #1926. But there will be changes between releases. I believe the current output is better than the previous output, and so am inclined to keep it as-is.


docs: update 1.1.0 changelog entries

Summary
Changes a few rome -> biome references.
Test Plan
Markdown looks correct i suppose

Updated an passing (save for the usual approval needed one)


Problem: [List view] When I tried to use color columns I cannot use List view

Reporduced:

list view https://uat_reproducing_errors.saltcorn.com/view/ColorsList
table https://uat_reproducing_errors.saltcorn.com/table/9

The Scenario is:
Table with color column.
I cannot create List view that shows all records (with all values of color fields including null):

Table data:

Table definition:

The problem in "Default search form values when first loaded"
Because there are no option to do not set color column for first load.

fixed in #543. If the default colour, #000000 is selected, it is assumed not to be a required default state field. This isn't an ideal implementation, but I find it unlikely that someone will want to have a default filter based on colour anyways. Unfortunately HTML 5 colour inputs cannot be left blank https://stackoverflow.com/questions/14943074/html5-input-colors-default-color

fixed in #543. If the default colour, #000000 is selected, it is assumed not to be a required default state field. This isn't an ideal implementation, but I find it unlikely that someone will want to have a default filter based on colour anyways. Unfortunately HTML 5 colour inputs cannot be left blank https://stackoverflow.com/questions/14943074/html5-input-colors-default-color


video content now following the color theme

Hello, I noticed that the video content in vlc and retroarch is following the current theme I chose. Which it should not.
My stylix configuration:
{ pkgs, ...}:
{
  stylix.enable = true;
  # Theme settings.
  stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/da-one-sea.yaml";
  stylix.image = "${pkgs.adapta-backgrounds}/share/backgrounds/adapta/tealized.jpg";
  stylix.polarity = "dark";
  stylix.opacity.applications = 1.0;
  stylix.opacity.desktop = 1.0;

  # Cursor settings.
  stylix.cursor.package = pkgs.bibata-cursors;
  stylix.cursor.name = "Bibata-Modern-Classic";
  # Font settings.
  stylix.fonts.serif.package = pkgs.ubuntu-classic;
  stylix.fonts.serif.name = "Ubuntu Classic";
  stylix.fonts.sansSerif.package = pkgs.fira-code-nerdfont;
  stylix.fonts.sansSerif.name = "UbuntuMono Nerd Font";
  stylix.fonts.monospace.package = pkgs.fira-code-nerdfont;
  stylix.fonts.monospace.name = "FiraCode Nerd Font";
}

What do I need to do to get the colors back in VLC and other video software?

Hmm... I updated my nixpkgs flake input and now everything is back to normal... I was on this branch before: https://github.com/Keksgesicht/nixpkgs/tree/master

Hmm... I updated my nixpkgs flake input and now everything is back to normal...

Should we close this issue?

I'll close it, as I can not reproduce it with up-to-date flake inputs, If it occurs again I'll open a new one.


[ServiceBus] Double "With" statement when using top level ServiceBusClient

Current way may look a bit awkward, this could be improved:
sb_client = ServiceBusClient.from_connection_string()
with sb_client:
    sb_receiver = sb_client.get_queue_receiver()
    with sb_receiver:
        # handling messages

Some thoughts as we do triage:
The one way I see for us to broach this and minimize the extra boilerplate is if ServiceBusClient sanely closes out the lifecycles of all sub-clients on its own closing (and, necessarily, opens() either implicitly with creation or on first action).  We can assess this as we mature the connection pooling work in T2.

Some extra context: In recent user study sessions, most users don't complain about the double "with" statement as the pattern is introduced in readme/sample smoothly.
Let wait for more feedback on this.

Closing this issue as we have reached good conclusions in UX studies as well as our plan going forward with connection sharing and refcount-based-cleanup for making this robust against common use patterns.  (keeping in mind people don't always remember the outermost with)


resolve nvim_fzf_directory when needed

The lua part of the plugin might get loaded first, in which case the local nvim_fzf_directory variable would be nil.
Moving this inside the raw_action function makes sure its resolved correctly

Makes sense to me! Merging. Thanks for the contribution!

Makes sense to me! Merging. Thanks for the contribution!


Support printing final Kubernetes resources with kpops generate

Closes #32

please merge the recent changes from main, there is a conflict in test_pipeline.py

please add one integration test in test_pipeline.py that calls generate --template ... that checks that the command is executed successfully. I can show you how to do the mocking of helm template if you need guidance.

please add one integration test in test_pipeline.py that calls generate --template ... and checks that the command is executed successfully. I can show you how to do the mocking of helm template if you need guidance.

@disrupted Regarding this: I would wait for your PR to merge so we can just use the stdout of the runner for the integration tests


Not all response codes are handled

Hi,
It seems that when processing a response, not all status codes are covered. Only code 200 is handled.
https://github.com/straw-hat-team/bittrex/blob/e296e3f6602926d9eddd303ac474343838199634/lib/bittrex/client.ex#L34-L38
The problem is that if a response is not successful (not code 2xx) then it will still return {:ok, response}. The question is: should the library API wrap a non-successful response as {:ok, decoded} or {:error, decoded} ?
I came across this issue because I got a 503 response (service unavailable).

@kwrooijen sorry for the delay for some reason Github didn't send me any notification. For the future, please tag me on it.
You are right, I forgot to handle other response codes ... working on it.


Add logging

Need a way to see if the correct scripts are being loaded.

the import function now logs information. verbosity is controlled with an environment variable.


"Event" field of the extendedPacket doesn't exist

In Kernel/TCP.wl, line 89, there is:
If[extendedPacket["Completed"] && extendedPacket["Event"] === "Received",

However, the extendedPacket["Event"] doesn't exist, making the server ignore all incoming TCP packages.
An example extendedObject generated with curl is as follows:
In[4]:=
        ClearAll::clloc: Cannot clear local variable ZeroMQLink`SocketListener`PackagePrivate`callback.
                                                                                >> <|TimeStamp -> DateObject[{2024, 10, 17, 16, 33, 34}, Instant, Gregorian, 8.], SourceSocket -> SocketObject[a13552d9-541f-48e7-9f35-515354864d7f],

                                                                                >    Socket -> SocketObject[TCPSERVER-e81ff7f2-d910-45b9-bf5d-b7b203e2f4b7], Data :> ByteArrayToString[ByteArray[<77>], UTF-8], DataBytes :> Normal[ByteArray[<77>]],

                                                                             >    DataByteArray -> ByteArray[<77>], MultipartComplete -> True, Completed -> True, ExpectedLength -> 77, StoredLength -> 77, DataLength -> 77|>

Due to the above problem, curl waits forever for the response. The server behaves normally when commenting out the second condition:
❯ curl http://<IP_ADDRESS>:8080/
hello%

The problem is also connected with the blank window issue https://github.com/JerryI/wolfram-js-frontend/issues/286. It goes to normal after installing the modified version of TCPServer.


Update stable channel to v1.18.4+k3s1

Is part of release effort. Once v1.18.4 has been fully released (all artifacts exist, qa smoke test manual install by specify v1.18.4 works) then we will take this out of draft and merge in to mark the new release as stable.


[SPARK-27320][SQL]Replacing index with iterator to traverse the expressions list in AggregationIterator, which make it simpler

What changes were proposed in this pull request?
In AggregationIterator's loop function, we access the expressions by expressions(i), the type of expressions is ::, a subtype of list.
while (i < expressionsLength) {
      val func = expressions(i).aggregateFunction

This PR replacing  index with iterator to access the expressions list, which make it simpler.
How was this patch tested?
Existing tests.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9394/
Test PASSed.

Test build #104045 has started for PR 24238 at commit 75bb32b.

If that's the case, that this can be passed a non-indexed Seq, then let's just undo the manual while loop and indexing and turn it into a normal iteration with for (expression <- expressions) {

Test build #104045 has finished for PR 24238 at commit 75bb32b.

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

Merged build finished. Test PASSed.

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

If we convert functions into an array, can we eliminate zipWithIndex in the two loops?

That would be fine by me too.

Here's non-critical path.  I don't think it's very much worth it ..

Test build #104064 has started for PR 24238 at commit 9f3c3fe.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9413/
Test PASSed.

@srowen @kiszk @HyukjinKwon Thanks for review. I hive modified it to use for (expression <- expressions). @HyukjinKwon, although here's non-critical path, but I think it's better to use for to traverse a list than to use index

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9416/
Test PASSed.

Test build #104067 has started for PR 24238 at commit 598b6da.

How much performance does it gain? It doesn't necessarily fix when both are virtually same.

@HyukjinKwon, I constructed a test case that used for and index to access a list which hive 1000 elements, the result is like below, calculateWithFor is 6x faster than calculateWithIndex
calculateWithIndex cost: 6813710 ns
calculateWithFor    cost: 1257866 ns
`def calculateWithFor(in: Seq[Int]): Array[Int] = {
val result = new ArrayInt
var i: Int = 0
for (x <- in) {
result(i) = x
i = i + 1
}
result
}
def calculateWithIndex(in: Seq[Int]): Array[Int] = {
val result = new ArrayInt
val length = in.length
var i: Int = 0
while(i < length) {
result(i) = in(i)
i = i + 1
}
result
}`

It's non-critical path so I don't think the diff matters here. I am okay with taking that it's simpler.

Can you fix PR title and PR description please, @eatoncys?

Can you fix PR title and PR description please, @eatoncys?
Ok, fixed, thanks.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9420/
Test PASSed.

Test build #104072 has started for PR 24238 at commit 3d4554a.

Test build #104064 has finished for PR 24238 at commit 9f3c3fe.

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

Merged build finished. Test PASSed.

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

Test build #104067 has finished for PR 24238 at commit 598b6da.

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

Merged build finished. Test PASSed.

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

Test build #104072 has finished for PR 24238 at commit 3d4554a.

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

Merged build finished. Test PASSed.

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

@srowen @HyukjinKwon Can we merge it to master?
Thanks.

LGTM

Merged to master


crash on destroy Filament

Describe the bug
crash on destry Filament. Log and Stacktrace below:
A/libc: invalid address or address of corrupt block 0x5596e4cd30 passed to dlfree

Smartphone (please complete the following information):

Device: android 5.1.1,vivo X7
OS: android 5.1.1

Do you have more information?  We need to reproduce the issue.

This looks like a double-free. Could you double-check that you're not destroying the Engine twice?

I 'll test it later,give you guys more information.

destroy it by wrong order