HADOOP-18829. S3A prefetch LRU cache eviction metric

Jira: HADOOP-18829

us-west-2:
$ mvn clean verify -Dparallel-tests -DtestsThreadCount=8 -Dscale -Dprefetch
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  24:09 min
[INFO] Finished at: 2023-07-26T22:56:44-07:00
[INFO] ------------------------------------------------------------------------

mvn clean verify -Dparallel-tests -DtestsThreadCount=8 -Dscale
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  24:03 min
[INFO] Finished at: 2023-07-26T23:31:29-07:00
[INFO] ------------------------------------------------------------------------

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 50s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+0 :ok:
detsecrets
0m  1s

detect-secrets was not available.

+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.

_ trunk Compile Tests _

+0 :ok:
mvndep
13m 45s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
36m 19s

trunk passed

+1 :green_heart:
compile
18m 36s

trunk passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
compile
16m 59s

trunk passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
checkstyle
4m 42s

trunk passed

+1 :green_heart:
mvnsite
2m 29s

trunk passed

+1 :green_heart:
javadoc
1m 47s

trunk passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javadoc
1m 31s

trunk passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
spotbugs
3m 50s

trunk passed

+1 :green_heart:
shadedclient
39m 47s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 30s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 32s

the patch passed

+1 :green_heart:
compile
18m 18s

the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javac
18m 18s

the patch passed

+1 :green_heart:
compile
16m 54s

the patch passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
javac
16m 54s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
4m 41s

the patch passed

+1 :green_heart:
mvnsite
2m 28s

the patch passed

+1 :green_heart:
javadoc
1m 43s

the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javadoc
1m 33s

the patch passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
spotbugs
4m  7s

the patch passed

+1 :green_heart:
shadedclient
39m 37s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
18m 49s

hadoop-common in the patch passed.

+1 :green_heart:
unit
2m 35s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
1m  0s

The patch does not generate ASF License warnings.

260m 58s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/5893

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux d98be25884df 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 85eeb76afecac043162c199b67b1944e63f0380c

Default Java
Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/1/testReport/

Max. process+thread count
1239 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/1/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

@mehakmeet @mukund-thakur this one is one of the follow-ups from HADOOP-18291, could you please review this PR?

this (and other future follow-ups from HADOOP-18291) can go after #5832

Duration tracker for the removal of a block?

done, thank you for this suggestion!

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 40s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+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 4 new or modified test files.

_ trunk Compile Tests _

+0 :ok:
mvndep
14m 11s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
34m 58s

trunk passed

+1 :green_heart:
compile
19m 26s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
compile
18m  9s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
checkstyle
4m 35s

trunk passed

+1 :green_heart:
mvnsite
2m 52s

trunk passed

+1 :green_heart:
javadoc
2m  8s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 49s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m 30s

trunk passed

+1 :green_heart:
shadedclient
36m 26s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 34s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 28s

the patch passed

+1 :green_heart:
compile
16m 43s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javac
16m 43s

the patch passed

+1 :green_heart:
compile
16m 16s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
javac
16m 16s

the patch passed

+1 :green_heart:
blanks
0m  1s

The patch has no blanks issues.

-0 :warning:
checkstyle
4m 22s
/results-checkstyle-root.txt
root: The patch generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)

+1 :green_heart:
mvnsite
2m 49s

the patch passed

+1 :green_heart:
javadoc
1m 53s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 52s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m 18s

the patch passed

+1 :green_heart:
shadedclient
34m 50s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
19m  8s

hadoop-common in the patch passed.

+1 :green_heart:
unit
2m 57s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
1m 11s

The patch does not generate ASF License warnings.

255m 41s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/5893

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux 53e7c276e78e 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 630ea5038cdfd1d9b89e6e6f4b314523761d0bca

Default Java
Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/2/testReport/

Max. process+thread count
2664 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/2/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

us-west-2:
mvn clean verify -Dparallel-tests -DtestsThreadCount=8 -Dscale -Dprefetch
Checkstyle complains about 8th param added to CachingBlockManager c'tor. Shall we mark it ignored for now and use builder class (for both CachingBlockManager and S3ACachingBlockManager) later for this patch to not focus on refactor work?

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 38s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+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 4 new or modified test files.

_ trunk Compile Tests _

+0 :ok:
mvndep
14m 49s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
33m  6s

trunk passed

+1 :green_heart:
compile
19m 39s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
compile
16m 53s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
checkstyle
4m 29s

trunk passed

+1 :green_heart:
mvnsite
2m 35s

trunk passed

+1 :green_heart:
javadoc
1m 57s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 41s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m  8s

trunk passed

+1 :green_heart:
shadedclient
37m 55s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 31s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 29s

the patch passed

+1 :green_heart:
compile
18m 26s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javac
18m 26s

the patch passed

+1 :green_heart:
compile
17m 27s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
javac
17m 27s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
4m 27s

the patch passed

+1 :green_heart:
mvnsite
2m 46s

the patch passed

+1 :green_heart:
javadoc
2m  1s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 45s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m 35s

the patch passed

+1 :green_heart:
shadedclient
38m 44s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
19m 41s

hadoop-common in the patch passed.

+1 :green_heart:
unit
2m 49s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
1m  5s

The patch does not generate ASF License warnings.

260m 38s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/5893

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux 9938fcc89a8d 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 8c7e62fe7d583ddb2026c8704e12ae3f096a53d7

Default Java
Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/3/testReport/

Max. process+thread count
1475 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/3/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

please don't rebase to trunk in the middle of a review, It makes reviewing changes a bit difficult unless there are merge conflicts we should have a consistent base for all commits stacked on top of each other.

sure, for this PR, since i just wanted to run the whole test suite with latest head from trunk, i did the merge from latest trunk but maybe i can find other way of re-running the test suite on latest trunk (by manually applying patch on latest trunk, only locally) :)

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 48s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+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 4 new or modified test files.

_ trunk Compile Tests _

+0 :ok:
mvndep
14m  8s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
35m 46s

trunk passed

+1 :green_heart:
compile
19m 12s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
compile
17m 37s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
checkstyle
4m 31s

trunk passed

+1 :green_heart:
mvnsite
2m 39s

trunk passed

+1 :green_heart:
javadoc
1m 56s

trunk passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 40s

trunk passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m  0s

trunk passed

+1 :green_heart:
shadedclient
35m 45s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 32s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 26s

the patch passed

+1 :green_heart:
compile
17m 35s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javac
17m 35s

the patch passed

+1 :green_heart:
compile
17m 46s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
javac
17m 46s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
4m 35s

the patch passed

+1 :green_heart:
mvnsite
2m 45s

the patch passed

+1 :green_heart:
javadoc
2m  1s

the patch passed with JDK Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04

+1 :green_heart:
javadoc
1m 46s

the patch passed with JDK Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

+1 :green_heart:
spotbugs
4m 41s

the patch passed

+1 :green_heart:
shadedclient
40m 59s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
20m 10s

hadoop-common in the patch passed.

+1 :green_heart:
unit
2m 55s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
1m 13s

The patch does not generate ASF License warnings.

264m 16s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/4/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/5893

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux 645b0528e69c 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 66ff4941049ed8f0fb3190c0b843e8435796f44f

Default Java
Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.20+8-post-Ubuntu-1ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_382-8u382-ga-1~20.04.1-b05

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/4/testReport/

Max. process+thread count
3060 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5893/4/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

@mehakmeet sorry to bother you again, could you please take another look?

Thanks for the patch @virajjasani, and sorry for the delay from the last review. Can you please cherrypick the same into branch-3.3 with whole test suite run and then we can merge it there as well.


Questions

Hey! Can we use this library to downsample some timeserie and ideally preserve peaks? Currently I just do a moving average on my data set.


vrgather typo?

The vrgather description has this:
vrgather.vx vd, vs2, rs1, vm # vd[i] = (x[rs1] >= VLMAX) ? 0 : vs2[rs1]
where I think it means:
vrgather.vx vd, vs2, rs1, vm # vd[i] = (x[rs1] >= VLMAX) ? 0 : vs2[x[rs1]]

Yep, thanks for pointing this out, Bill.


wardenenv/images#719 - Add PHP-SPX image build

Adds a new SPX image build. Adjusts Nginx configuration to route requests to the SPX container (similar to Xdebug), and prevents Varnish from caching SPX requests.

@MagePsycho held up until at minimum I fix PHP images not building

@bap14, is there instruction how to use this image? :)

@ihor-sviziev Not yet; however, now that the image is there it can move forward in being a toggled feature for projects.

For anyone interested, to make Warden work now, you can add or modify the .warden/warden-env.yml file in your project and add the following things:
x-volumes: &volumes

${WARDEN_SSL_DIR}/rootca/certs:/etc/ssl/warden-rootca-cert:ro
${WARDEN_COMPOSER_DIR}:/home/www-data/.composer:cached
.${WARDEN_WEB_ROOT:-}/:/var/www/html:cached
bashhistory:/bash_history
sshdirectory:/home/www-data/.ssh

x-extra_hosts: &extra_hosts

${TRAEFIK_DOMAIN}:${TRAEFIK_ADDRESS:-<IP_ADDRESS>}
${TRAEFIK_SUBDOMAIN:-app}.${TRAEFIK_DOMAIN}:${TRAEFIK_ADDRESS:-<IP_ADDRESS>}

services:
php-spx:
hostname: "${WARDEN_ENV_NAME}-php-spx"
image: ${WARDEN_IMAGE_REPOSITORY}/php-fpm${WARDEN_SVC_PHP_IMAGE_SUFFIX:-}:${PHP_VERSION:-7.4}-spx
environment:
- TRAEFIK_DOMAIN
- TRAEFIK_SUBDOMAIN
- SSH_AUTH_SOCK=${SSH_AUTH_SOCK_PATH_ENV:-/tmp/ssh-auth.sock}
- NODE_VERSION=${NODE_VERSION:-12}
- COMPOSER_VERSION=${COMPOSER_VERSION:-1}
- COMPOSER_MEMORY_LIMIT=-1
- HISTFILE=/bash_history/.bash_history
- CHOWN_DIR_LIST=${CHOWN_DIR_LIST:-}
volumes: *volumes
extra_hosts: *extra_hosts
where x-volumes and x-extra_hosts are taken from environments/includes/php-fpm.base.yml in your warden installation (the ones above work for 0.15.0) and php-spx is a new container that will handle all requests that have SPX enabled.
In order to enable SPX in your requests, add the following cookies or URL params:
SPX_ENABLED with a value of 1
SPX_KEY with "warden" (without quotation marks) as the value.
To go to your SPX web UI, just use the following URL: https://yourproject.test/?SPX_UI_URI=/ where yourproject.test matches the domain you use for your project.
I'm not sure how long it will work this way, since I guess that some easier method of enabling SPX will get added to Warden in the future, but hopefully it will save someone some time setting this up for as long as there's no better way.


Mumuki requests to runners should be done by websockets

This would improve performance

This is not necessary true - at least, not in a practical way -, and has the problem of mantaining multiple connections alive.
Moreover, some informal studies we have performed show up that students tend to wait 1.2 to 2 minutes between submissions, and each submission takes normally between 600 and 1200ms, so the saved TCP-establishing connection times - a few milliseconds - are not a big issue.
Closing


Highlighted sections off-screen

When scrolling up or down on a page, the highlighted section goes off-screen.

Here is how I fixed it:
https://github.com/LiquidZulu/liquidzulu.github.io/compare/source...Bigtruck2:liquidzulu.github.io:section

Ok, so just so I'm understanding---this would make it such that if you click a TOC item the TOC will actually bother scrolling to it as if you had scrolled to that heading in the main body, right?

This would make it so when a new TOC item is highlighted, the TOC would scroll up or down to that item if it is not on screen. This occurs both when a toc item is clicked and when a user scrolls on the main page to a different heading. It only affects the scroll of the TOC not the main body.

Does it allow the person to use the TOC to scroll down? Like, if the first item is highlighted, could I scroll past it on the TOC to see what other sections are there?

Ah, I see the behaviour now---tested it on local. Looks good. Does smooth scrolling break it on chromium (I seem to recall chromium having issues with smooth scrolling, and I am not seeing smooth scrolling).

seemed to work on local, but now it isn't---I do not know why

ah, I think https://github.com/LiquidZulu/liquidzulu.github.io/pull/130/commits/d0961e71ddd06c8359a66968da0d1517a89b9f5b was working, but not the newer one

at least on librewolf, will try to confirm

hm, no seems to work now, but only on local. Are you seeing the proper behaviour on the live site?

It works on local but not on the live site.

Yep, redeploy seems to have worked---I bet it is something to do with dependabot getting pissed off.


Read csv

Codecov Report

Merging #9 (2a21414) into master (be569b5) will increase coverage by 2.04%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master       #9      +/-   ##
==========================================
+ Coverage   94.44%   96.49%   +2.04%
==========================================
  Files           2        2
  Lines          36       57      +21
==========================================
+ Hits           34       55      +21
  Misses          1        1
  Partials        1        1

Impacted Files
Coverage Δ

dataframe/csv/csv.go
96.36% <100.00%> (+2.24%)
:arrow_up:

Continue to review full report at Codecov.

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


SyntaxError: Strict mode does not allow function declarations in a lexically nested statement in IOS 9.x.

Bug report
Describe the bug
SyntaxError: Strict mode does not allow function declarations in a lexically nested statement in IOS 9.x.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:

install next.js 8.1.0
build and start server
open page in ios8 or ios9 safari
See error

Expected behavior
page should work.
Screenshots

System information

OS: ios8, ios9
Browser: safari
Version of Next.js: 8.1.0

Additional context
The problem may be caused by babel-plugin-transform-async-to-promises. It output function definition inside try block.

@yanghuabei some problem with you，8.0.3 is well

Also in IE10

It also happens to me in 2 different applications using<EMAIL_ADDRESS>Had to downgrade them to make it work.

It also happens to me

Version of Next.js: 8.1.0

I can confirm that this is fixed in the latest, 8.1.1-canary.28, and probably since canary 20.
#7014 removed putting async-to-promises around the Next.js client code.

As @fionawhim mentioned, this was fixed when we made async-to-promises experimental and is no longer enabled by default. I'm going to close this now, if you are still having trouble with this on the latest canary please reply with additional details.

This is actually not caused by async-to-promises. It's caused by Terser defaulting to the inline=3 setting, which is inlining functions where it is unsafe to do so. It can also cause performance issues.

@ijjk  Is there any backport of this fix (or another way to enable it) on the stable 8.1.0 branch? We're seeing lots of this in production logs.

This will be fixed by https://github.com/zeit/next.js/pull/7554.

Published as 8.1.1-canary.51. 🙏

after updating to 8.1.1 - canary custom ts-node (from examples folder) config went down. "Next.js now provides ts support from scratch"...

emmm, I think it is no related to terser.
In v8.1.0, I can fixed it by adding
if (!isServer) {
      // console.log(JSON.stringify(config));
      config.module.rules.push({
        test: /\.(tsx|ts|js|mjs|jsx)$/,
        include: [
          /next-server[\\/]dist[\\/]lib/,
          /next[\\/]dist[\\/]client/,
          /next[\\/]dist[\\/]pages/,
          /[\\/](strip-ansi|ansi-regex)[\\/]/,
        ],
        exclude: path => {
          if (
            /next-server[\\/]dist[\\/]lib/.test(path) ||
            /next[\\/]dist[\\/]client/.test(path) ||
            /next[\\/]dist[\\/]pages/.test(path) ||
            /[\\/](strip-ansi|ansi-regex)[\\/]/.test(path)
          ) {
            return false;
          }
          return /node_modules/.test(path);
        },
        use: defaultLoaders.babel,
      });
    }

to file next.config.js after review the code of #7014


⚠ Science Web Services - QState has degraded performance

In 0a2cbfd, Science Web Services - QState (https://sws.labbricks.com/qstate/) experienced degraded performance:

HTTP code: 523
Response time: 3192 ms

Resolved: Science Web Services - QState performance has improved in 1ff3658 after 59 minutes.


Data migration for astana

Ticket: https://govuk.zendesk.com/agent/tickets/3645655
Adds a data migration to be run with bundle exec rake db:data:migrate on all environments (there's a jenkins job called Run_Whitehall_Data_Migrations).

There's also a Rake task you can use to avoid having to write a migration: https://github.com/alphagov/whitehall/blob/648f5a5c8685cd3bc0db32783a6eef5a830735a1/lib/tasks/reslugging.rake#L113

Thanks, Tom, I used that instead.


Decouple UI Components from TIKI SDK

Currently, the UI components in TIKI SDK are tightly coupled with the SDK, making it difficult for developers to use them without the SDK Theme. This can create a dependency issue for developers who may not want to use all the SDK pre-built UIs.
Proposed Solution
To make the UI components more flexible and reusable, we need to decouple them from the TIKI SDK. This can be achieved by ensuring that each component receives all the necessary parameters through initialization parameters. These parameters should include all colors and styles that are currently used from the TIKI SDK Theme and any necessary methods that are called from TIKI SDK.
Expected Result
Once the UI components are decoupled from the TIKI SDK, developers should be able to use them without any reference to the TIKI SDK. This will allow for more flexibility and easier integration with other projects.
Tasks

[x] Identify all the necessary parameters for each UI component.
[x] Modify the initialization parameters of each component to include all necessary parameters.
[x] Ensure that the UI components work properly with or without the TIKI SDK.
[x] Update the documentation to reflect the changes made to the UI components.

Additional Information

Decoupling the UI components from the TIKI SDK will make them more flexible and reusable.
This change will make it easier for developers to use the UI components without depending on the TIKI SDK.


Maven can not find dependency seldon-server-config-${config.version}

I am now using the version is 0.90 I no matter what version is used to solve this Maven dependency.
Please helo me!

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
/lifecycle stale


npm i @angular-devkit/build-angular --> No matching version found for<EMAIL_ADDRESS>

Description
I cannot successfully install @angular-devkit/build-angular anymore please help.
🔬 Minimal Reproduction
Just run "npm i @angular-devkit/build-angular"
Same with if you run "ng new my_project"

npm i @angular-devkit/build-angular

npm ERR! code ETARGET
npm ERR! notarget No matching version found for<EMAIL_ADDRESS>npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget
npm ERR! notarget It was specified as a dependency of '@angular-devkit/build-angular'

Hi, probably you were trying to do an installation while it was being released.
This shouldn’t be a problem anymore now.


log add debug logs for potential duplicate tablet ids

Proposed changes
Add debug logs for potential duplicate tablet ids for DeltaWriter profile.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 48.08 seconds
stream load tsv:          513 seconds loaded<PHONE_NUMBER>9 Bytes, about 139 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          65 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.4 seconds inserted 10000000 Rows, about 340K ops/s
storage size:<PHONE_NUMBER>6 Bytes

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 48 seconds
stream load tsv:          510 seconds loaded<PHONE_NUMBER>9 Bytes, about 139 MB/s
stream load json:         21 seconds loaded<PHONE_NUMBER> Bytes, about 107 MB/s
stream load orc:          65 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          30 seconds loaded 861443392 Bytes, about 27 MB/s
insert into select:          29.1 seconds inserted 10000000 Rows, about 343K ops/s
storage size:<PHONE_NUMBER>6 Bytes


Reroll with Schips and Erschwernis

If you miss a roll and deselected e.g. Belastung in the roll window and reroll with Schips it seems Belastung is readded in the roll.
Expectation: Same behaviour as original roll.

The roll keeps the actor state at the moment of the roll. Later changes are and will not be taken into consideration.
If you want to remove the belastung afterwards, edit the roll and change the modifier accordingly.

Duplicate of #247


cropstable: adjust popup for health status

Adjust the popup for health status based on #122

[x] expand the representation of the health status in the table so that you can see the status (ok, warning, attention) of nutrient deficiency, watering and disease detection at the same time
[x] create popup for more details

@fmarahre We have to get it approved on Thursday.


Updated names, added new fields, and jira_issues doc type

Not quite ready for production, but updated schema

@dpford - I think we can close this one now?

Yep!


Use Theano's IfElse instead of Switch for in_train_phase

Using IfElse should allow Theano to perform lazy evaluation of the training and testing branches, so in theory it might be faster. Switch always computes both outputs.

cool! which benchmarks did you run?

Benchmarks are a bit difficult. In most cases this won't give any measurable improvement, because the difference between the training and testing branches is usually quite small. Theano will merge them and there aren't that many unnecessary operations left to be skipped.
There will be an improvement when the training and testing phases use different operations that cannot be merged. For example, cuDNN has separate batch normalization functions for training and inference, and you would want to run only the one that is actually used.
I did a small experiment with the mnist_cnn.py example, to which I added two batch normalization layers. This also requires the batch normalization patches for Theano and Keras I am working on (Keras branch and Theano branch).
The current Keras code uses a switch, which means that Theano will run both the training and testing batch normalization functions from cuDNN. Timings:
Train on 60000 samples, validate on 10000 samples
Epoch 1/12
60000/60000 [==============================] - 76s - loss: 0.3945 - acc: 0.8785 - val_loss: 0.3039 - val_acc: 0.9070
Epoch 2/12
60000/60000 [==============================] - 74s - loss: 0.1396 - acc: 0.9592 - val_loss: 0.0604 - val_acc: 0.9810
Epoch 3/12
60000/60000 [==============================] - 74s - loss: 0.1018 - acc: 0.9702 - val_loss: 0.0452 - val_acc: 0.9846

With ifelse, only the training op will be run, giving a small speed-up (most of the time is spent in the convolution layers and elsewhere):
Train on 60000 samples, validate on 10000 samples
Epoch 1/12
60000/60000 [==============================] - 70s - loss: 0.3955 - acc: 0.8784 - val_loss: 0.3160 - val_acc: 0.9004
Epoch 2/12
60000/60000 [==============================] - 68s - loss: 0.1395 - acc: 0.9593 - val_loss: 0.0635 - val_acc: 0.9796
Epoch 3/12
60000/60000 [==============================] - 69s - loss: 0.1022 - acc: 0.9701 - val_loss: 0.0446 - val_acc: 0.9844

well, 4 seconds can add up quick. Let us get the @farizrahman4u in the conversation. What do you think?

That looks reasonable to me.

@fchollet In that case, we should use IFElse for K.switch() too.

How about change Theano's swtich implementation and and another API for tf-like select for element-wise slection operation #4519

@farizrahman4u, @DingKe: You could use ifelse instead of switch if the condition is a scalar, so you'd have to check that first. K.switch (at least on Theano) accepts elementwise conditions as well.
Be aware that the Theano documentation has a warning that ifelse is not always faster than switch, which is why the scalar-switch isn't optimized automatically by Theano. I don't know if this is still true, though, since the ticket it refers to seems to be quite old.


Cleanup

Tidying up, replaced Vec3 with Vector3, replaced Mat22 with Matrix3x2

Hey @HughPH
I see more changes and perhaps more changes will come. What do you think is the best way to review everything? (If we run window-tests/other tests, we see all good)
It’s hard to make sure everything is okay (I mean all changed files).
Do you want me to do 2.0.0-alpha now, and then we'll push more versions?

Sure. I just added ChainShape but no collisions. If you cut it now, I think it's at a good place.
A funny thing with nuget is that any version number with - in it is considered pre-release. So it won't appear unless people look for a pre-release version. Then they will be prepared to accept some bugs.

Maybe I'll create a more complex test with multiple objects colliding in different ways. Box2D is deterministic, so if we're happy that we think it's right, we can just create a unit test to construct a complex world and test the object locations after n steps.

Sure. I just added ChainShape but no collisions. If you cut it now, I think it's at a good place.
A funny thing with nuget is that any version number with - in it is considered pre-release. So it won't appear unless people look for a pre-release version. Then they will be prepared to accept some bugs.

Haha, yes, I see how nuget works, I think people will see version 2.0.0 alpha.
I see important changes in this PR. Will we do 2.0.0-alpha after you merge this PR or from what we now have in master?

Maybe I'll create a more complex test with multiple objects colliding in different ways. Box2D is deterministic, so if we're happy that we think it's right, we can just create a unit test to construct a complex world and test the object locations after n steps.

It sounds good. I think we have console tests that look like this.

@HughPH I'm about to make a new package now.

OK

There is a "console test" that shows a ball dropping, but it doesn't prove much. I think we need a scene with every fixture type and every joint type, and as many collisions as possible. I could put something together in RUBE and then we just need a quick visualiser to check it visually which should be easy with DebugDraw. Then if we just run it for n iterations, we can record the positions and use that as our test baseline. If the positions change, we know something is wrong.

"error NU5035: The PackageLicenseUrl is being deprecated and cannot be used in conjunction with the PackageLicenseFile or PackageLicenseExpression."
I'll remove this line "PackageLicenseUrl" from the csproj file. Good?

Yes fine

@HughPH https://www.nuget.org/packages/Box2D.NetStandard/2.0.0-alpha

The console test is a bit like that, but it's not automated and it doesn't validate any of the values.


Type error with latest @types/k6 version

Problem: The TS file src/internal/s3.ts has a type error with the latest @types/k6 package.
Version

k6-jslib-aws v0.12.3
@types/k6 ~0.52.0

Error message:
src/internal/s3.ts:200:13 - error TS2345: Argument of type 'string | ArrayBuffer' is not assignable to parameter of type 'string | bytes'.
  Type 'ArrayBuffer' is not assignable to type 'string | bytes'.
    Type 'ArrayBuffer' is missing the following properties from type 'number[]': length, pop, push, concat, and 28 more.

200             res.body
                ~~~~~~~~

Found 1 error in src/internal/s3.ts:200

How to reproduce?
git clone git@github.com:grafana/k6-jslib-aws.git
cd k6-jslib-aws/
git checkout v0.12.3
npm install --save-dev @types/k6 # Install latest `@types/k6` package
npx tsc -t es5 src/internal/s3.ts # See error output above

This has been fixed in the current master in b312325
cc @oleiade are we going to be releasing a version soon?

I'll be making a release as soon as possible indeed 🙇🏻

jslib-aws v0.13.0 is out. @fullheart would you mind trying again and let us know if it addressed your issue 👍🏻
Without a sign back from you I'll close this issue in a week 🙇🏻

@oleiade Great, thanks. I tested version 0.13.0. The type error is fixed. I am closing the issue.


Unable to find window element for app installer in root's session but inspect.exe can find it

it can not find_element_by_classname("SkinUi') though by root's session. and dump driver's page_source, it does not have the SkinUI window.
WinAppDriver.exe: 1.2.1
window OS's version: Windows 11 家庭中文版-22H2-22621.2283
page_source.zip

refresh inspect and then try to find it again, also Is it inside some application or a type of prompt?


Sense 2.1

Related Issue

closes #399
closes #416
closes #415

Description

Adds and clarifies a number of fields to distinguish between the category field.

Changelog

NEW: Sense.baseCategory
NEW: Sense.semanticClass
CHANGE: support lexical subcategories

Pull Request Checklist

[x] Open an issue for the change, if one is not open already. NOTE: It is a good idea to wait until your suggested change is approved by a maintainer before writing any code.

[x] Make changes to the schemas or code. The schemas are located in /schemas/yaml. Do not update the schemas in schemas/json, or your changes will be overwritten.

[x] Update the "description" field of any schemas / properties that you change.

[x] Update examples in the affected schemas to reflect the changes you made.

[x] Build the project (npm run build)

[x] Run the tests (npm test) and fix issues that arise. If you find an issue that is unrelated to the one you are working on, open a new issue for it.

[x] Update the project documentation (README.md, CONTRIBUTING.md, etc.) to reflect the changes you made, if applicable.

[x] Build the project documentation (npm run docs) and then inspect it for your changes (open docs/index.html)

@dwhieb see my comment on #399 about any further changes to the descriptions of these fields

 [format] review: Sense 2.1


7pm d show search info

In this pull request, we enabled users to do basic google search and count search remain. Admins have a table that shows search info of all the users.

This is worth at least 40 points.   Possibly 50 or 60 since it contains more than one feature.


Add methods for the Arrow PyCapsule Protocol to DataFrame/Column interchange protocol objects

Addresses https://github.com/data-apis/dataframe-api/issues/279
Currently, I added schema and array support to Column, and schema and stream support to DataFrame. I think that's the typical way those objects are used (chunked dataframe, gets chunks+columns, and then single-chunk column), but for completeness (and because the spec doesn't distinguish between single vs multi-chunk objects) we can probably add both the array and stream method to both the DataFrame and Column object.
I also added the schema method to both DataFrame and Column, although those are strictly speaking not "schema" objects. But we don't have a dedicated schema object in the interchange spec (DataFrame has no attribute, and the Column.dtype attribute is a plain tuple)

What should the behavior be if the library has its data on say a GPU instead of CPU?
Throw? Copy to CPU?
If we support this CPU only protocol why don't we support other CPU only protocols as well?

What should the behavior be if the library has its data on say a GPU instead of CPU? Throw? Copy to CPU?

That's one thing I still needed to add: if you do not support this protocol, I would propose to indicate this by not having the methods (so you get do hasattr(obj, "..") as a proxy for checking if the object supports this protocol).
So if we decide that GPU libraries shouldn't support this, then they should simply not add those methods.
Personally I don't have much experience with GPU, but based on following earlier discussions, I think the general preference is that there is no silent copy?
Certainly given the fact we want to expand this protocol to support GPU data as well (https://github.com/apache/arrow/issues/38325), I think not implementing this right now is the best option for objects backed by GPU data.

If we support this CPU only protocol why don't we support other CPU only protocols as well?

Which other CPU-only protocol are you thinking about? I am not aware of any other dataframe protocol.
(there are of course array protocols, which you might be hinting on, but we already do have DLPack on the buffer/array level that already supports devices. So adding another array protocol at that level is much less needed given that most array libraries nowadays support DLPack. Personally I think adding general Python buffer protocol support would be nice, though)

So if we decide that GPU libraries shouldn't support this, then they should simply not add those methods.

I agree - if they'd start copying data to host memory now to support the CPU-only protocol, that would make it much harder to later add the device-agnostic version.
If there was movement and a timeline on https://github.com/apache/arrow/issues/38325, it'd be easier to say "let's not do the CPU-only version". However, it looks like that may take quite a while. Somehow work on these protocols is always slow going (DLPack was/is no exception). So it seems reasonable to me to start supporting the CPU protocol now.
There is indeed the fragmentation on the array side, with too many different CPU-only protocols. However, on the dataframe side things are cleaner. If things could stay limited to:

__dataframe__ and from_dataframe at the Python API level
the Arrow CPU-only protocol as dunder methods
the Arrow device-agnostic protocol as dunder methods

then it looks like things are in pretty good shape.

I am still a strong -1 on this proposal.
The array API didn't implement __array__ or __array_interface__ despite being more widely adopted and used than the equivalent Arrow protocols being added here. It wasn't implemented because they didn't want to fragment implementations or cause downstream pain in leveraging non-CPU, non-numpy implementations.
We have already defined a new interchange protocol that can handle Arrow formatted data zero copy in addition to handling non-CPU memory and non-arrow memory layouts.

That's OK
@jorisvandenbossche we can still use this in pandas/polars/pyarrow from_dataframe:
def from_dataframe(df: SupportsInterchange, *, allow_copy: bool = True) -> DataFrame:
    if hasattr(df, '__arrow_c_schema__'):
        return fastpath_constructor(df, allow_copy=allow_copy)
    return _from_dataframe(
        df.__dataframe__(allow_copy=allow_copy),  # type: ignore[arg-type]
        allow_copy=allow_copy,
    )

even if it's not officially part of the interchange protocol

The array API didn't implement __array__ or __array_interface__ despite being more widely adopted and used than the equivalent Arrow protocols being added here. It wasn't implemented because they didn't want to fragment implementations or cause downstream pain in leveraging non-CPU, non-numpy implementations.

I understand why the array API didn't implement those, but not sure how that is relevant for this discussion? I am not proposing to add this protocol based on some popularity metric, but because it is adding missing features and convenience. The array protocols you mentioned also wouldn't add much additional value for the Array API because it already had DLPack covering the same.
For the DataFrame interchange protocol, though, that is not the case. What I am proposing here has additional value on top of what we already have (allow accessing the data at DataFrame/Column level instead of only at Buffer level + exposing the data through a stable C ABI interface, similarly as DLPack does for the arrays)
@kkraus14 what is not clear to me, is your objection mainly based on the lack of non-cpu device support, or more in general? Assume for a moment that the Arrow community already resolved the discussion around adding device support for the Arrow PyCapsule protocol, and we could directly add it here as well. Would you then be OK with it?

we can still use this in pandas/polars/pyarrow interchange.from_dataframe,  ... even if it's not officially part of the interchange protocol

@MarcoGorelli that's certainly possible and would already improve that part of the interchange's usecases, but that still doesn't enable usage of the interchange protocol in places that require Arrow memory (using duckdb as the typical example, they support Arrow memory, and doubt they would ever support the interchange protocol directly. They could of course already easily support it if they want by depending on pyarrow, but that dependency isn't needed with this PR)

@kkraus14 what is not clear to me, is your objection mainly based on the lack of non-cpu device support, or more in general? Assume for a moment that the Arrow community already resolved the discussion around adding device support for the Arrow PyCapsule protocol, and we could directly add it here as well. Would you then be OK with it?

I would be more okay with it, but I still feel funny about giving Arrow memory layout arguably preferential treatment over non Arrow memory layout, though we already do that for strings more or less.
I.E. if someone uses a sentinel value or a byte mask for representing nulls, should they not support this protocol or should they support it via a copy + conversion? Both are unideal from the perspective of a library not using Arrow format for representing nulls supporting a standard.


Should be sending company in signup form

We should be sending company in signup form than company_name

Some of the places we've used company_name instead of company and we're also sending company_name the PATCH users/self call. We should be using company everywhere
Changes to be done in this file: https://github.com/Real-Dev-Squad/website-my/blob/develop/app/controllers/signup.js

I'll handle this. 😄

I'll handle this. smile

Assigned to you! 🚀


Use of JavaScript-Load-Image in an Angular 7 project

In looking through the demo and documentation, this is one of the few libraries that provides comprehensive EXIF and IPTC extraction, two things I need, however, I'm working in Angular, and I cannot for the life of me find a way to make use of this library in Angular.
This isn't a bug, clearly, or a feature request per say, but if there is any way anyone could provide some guidance as to how to incorporate this into an Angular 7 project, I would be eternally grateful.

I haven't worked with Angular since Angular 1, but here's a demo with the latest version:
https://angular-n5aegg.stackblitz.io (demo)
https://stackblitz.com/edit/angular-n5aegg (editor)
app.component.html
<input type="file" (change)="handleFileInput($event)">
<div #image></div>

app.component.ts
import { Component, ViewChild, Renderer2 } from '@angular/core';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
  constructor(private renderer:Renderer2) {}
  @ViewChild('image', {static: true}) image;
  handleFileInput(event) {
    window.loadImage(event.target.files[0], (img) => {
      if (this.image.nativeElement.firstChild) {
        this.renderer.removeChild(
          this.image.nativeElement,
          this.image.nativeElement.firstChild
        );
      }
      this.renderer.appendChild(this.image.nativeElement, img);
    }, {
      maxWidth: 300
    })
  }
}

Closing this as resolved.


Add print in case an upgrade failed

Just one question: should we put it behind a feature instead?
cc @sdroege @EPashkin

if cfg!(debug_assertions) ?

same as in https://doc.rust-lang.org/std/macro.debug_assert.html

I don't agree with this change. Upgrade failing is not an error but often wanted behavior.
Sent from my Android device with K-9 Mail. Please excuse my brevity.

No, it's definitely not. Take a look at https://github.com/gtk-rs/examples/pull/294.

I'm not too certain using cfg(debug_assertions) is a great idea though... Having a debug feature or something along the line might be better I think.
Also, I'll need to add documentation about this as well.

On February 16, 2020 6:00:46 PM GMT+01:00, Guillaume Gomez<EMAIL_ADDRESS>wrote:

No, it's definitely not. Take a look at
https://github.com/gtk-rs/examples/pull/294.

Yes that's a bug in the usage there. I don't want random noise to be printed in correct usage. That the value can disappear safely is the main feature of weak references and not an error.
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

That's why I want to put it behind a macro. In case you didn't use it correctly and you need more information to debug.

As a separate debugging feature would be acceptable for me.

Then I'll do that instead.

@GuillaumeGomez note that current version don't build
error: variable 'variable' is still repeating at this depth
   --> src\clone.rs:136:65
    |
136 |                     println!("Failed to upgrade {}", stringify!($variable));
    |

Ah? Strange, it worked fine for me...

Fixed the formatting...

Updated the domain as well.

Otherwise good to be merged for me.

:+1:


Update sveltekit Request new event. hooks

Describe the bug
hello, since the new version of sveletekit I can no longer make the code work that I present to you the hook the application crashes with an error TypeError: object is not iterable (cannot read property Symbol(Symbol.iterator))
Thank you for your help
Reproduction
import cookie from 'cookie';
export const getSession = async (event) => {
const cookies = cookie.parse(event.request.headers.get('cookie') || '');
const theme = cookies.theme || 'light';
return {
	theme
};

};
export const handle = async ({ event, resolve }) => {
const response = await resolve({...event});
const cookies = cookie.parse(event.request.headers.get('cookie') || '');

let headers = response.headers

//console.log(headers)
const cookiesArray = [];

if (!cookies.theme) {
	const theme = event.request.headers.get('theme') || 'light';
	cookiesArray.push(`theme=${theme};path=/;expires=Fri, 31 Dec 9999 23:59:59 GMT`);
}
if (cookiesArray.length > 0) {
	headers = {
		...response.headers,
		'set-cookie': cookiesArray
	};
}

return {
	...response,
	headers
};

};
Logs
TypeError: object is not iterable (cannot read property Symbol(Symbol.iterator))

System Info
sveltekit

Severity
annoyance
Additional Information
https://github.com/Upsetmania/client-v507.git
No response

Please provide a minimal reproduction as a StackBlitz link or a clonable repo.

hello, thank you for your answer I added the link of the ghiub clone thank you cordilamenet

getSession was removed and I think using the spread operator on a request isn't a good idea. And take a look at the new cookie api, it should fit your use case

thanks for the information but since deleting session and getsession I can't find a solution to modify the code

thank you very much i solved my problem.
https://github.com/sveltejs/kit/discussions/5883


Widget shows events on wrong dates

Consider the attached screenshot. It shows a "Ribakovs" event on Saturday, and no event on Sunday:

However, the "Ribakovs" event is actually scheduled on Sunday, while a "Maker Faire" event on Saturday does not show up at all:

The event output is:
{
  "results": [
    {
      "executedAt":<PHONE_NUMBER>779,
      "selectionArgs": [],
      "sortOrder": "startDay ASC, allDay DESC, begin ASC ",
      "standardMillisOffsetUtcToLocal": -28800000,
      "projection": [
        "event_id",
        "title",
        "begin",
        "end",
        "allDay",
        "eventLocation",
        "hasAlarm",
        "rrule",
        "displayColor"
      ],
      "uri": "content:\/\/com.android.calendar\/instances\/when\/1443642924779\/1444247724779",
      "selection": "selfAttendeeStatus!=2 AND (calendar_id = 3 OR calendar_id = 5 OR calendar_id = 1 OR calendar_id = 4 )",
      "rows": [
        {
          "title": {
            "value": "Mathworks Advisory Board Meeting",
            "type": 3
          },
          "eventLocation": {
            "value": "Manhattan Beach Marriott, 1400 Parkview Ave, Manhattan Beach, CA 90266, United States",
            "type": 3
          },
          "allDay": {
            "value": 0,
            "type": 1
          },
          "displayColor": {
            "value": -3312410,
            "type": 1
          },
          "rrule": {
            "type": 0
          },
          "event_id": {
            "value": 172,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        },
        {
          "title": {
            "value": "Company Meeting",
            "type": 3
          },
          "eventLocation": {
            "value": "",
            "type": 3
          },
          "allDay": {
            "value": 0,
            "type": 1
          },
          "displayColor": {
            "value": -3312410,
            "type": 1
          },
          "rrule": {
            "type": 0
          },
          "event_id": {
            "value": 160,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        },
        {
          "title": {
            "value": "Maker Fair",
            "type": 3
          },
          "eventLocation": {
            "value": "Balboa Park, San Diego, CA, USA",
            "type": 3
          },
          "allDay": {
            "value": 0,
            "type": 1
          },
          "displayColor": {
            "value": -6644481,
            "type": 1
          },
          "rrule": {
            "type": 0
          },
          "event_id": {
            "value": 1078,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        },
        {
          "title": {
            "value": "Henry Ribakovs's birthday",
            "type": 3
          },
          "eventLocation": {
            "value": "",
            "type": 3
          },
          "allDay": {
            "value": 1,
            "type": 1
          },
          "displayColor": {
            "value": -7151168,
            "type": 1
          },
          "rrule": {
            "type": 0
          },
          "event_id": {
            "value": 978,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        },
        {
          "title": {
            "value": "Ribakovs",
            "type": 3
          },
          "eventLocation": {
            "value": "XXXed out",
            "type": 3
          },
          "allDay": {
            "value": 0,
            "type": 1
          },
          "displayColor": {
            "value": -6644481,
            "type": 1
          },
          "rrule": {
            "type": 0
          },
          "event_id": {
            "value": 1080,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        },
        {
          "title": {
            "value": "Mathworks Conference",
            "type": 3
          },
          "eventLocation": {
            "value": "",
            "type": 3
          },
          "allDay": {
            "value": 0,
            "type": 1
          },
          "displayColor": {
            "value": -3312410,
            "type": 1
          },
          "rrule": {
            "value": "FREQ=WEEKLY;WKST=MO;BYDAY=MO",
            "type": 3
          },
          "event_id": {
            "value": 155,
            "type": 1
          },
          "hasAlarm": {
            "value": 0,
            "type": 1
          },
          "end": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          },
          "begin": {
            "value":<PHONE_NUMBER>000,
            "type": 1
          }
        }
      ],
      "millisOffsetUtcToLocal": -25200000,
      "timeZoneId": "America\/Los_Angeles"
    }
  ],
  "applicationInfo": {
    "versionCode": 334,
    "preferences": {
      "showDaysWithoutEvents": false,
      "hideBasedOnKeywords": "",
      "eventRange": 7,
      "showPastEventsWithDefaultColor": false,
      "fillAllDay": true,
      "eventsEnded": "NONE"
    },
    "versionName": "1.9.2-6b6d980"
  },
  "resultsVersion": 1,
  "deviceInfo": {
    "buildManufacturer": "samsung",
    "versionCode": 19,
    "buildBrand": "samsung",
    "versionCodename": "REL",
    "buildModel": "SAMSUNG-SGH-I747",
    "versionRelease": "4.4.4"
  }
}

Hello @Nikratio,
I'm trying to reproduce your problem. I created new test case with a report, that your provided (see commit above...), and now I'm replaying your report at test environment.
The only thing that needed to be set manually for the test was a Time Zone. I set "GMT-07:00 Pacific Daylight Time" in emulator.
Now when I'm running the WrongDatesLostEventsTest I see the below list of Widget entries, which looks exactly as you need.
The only difference: I'm running the code after today's fix of #206 (not sure if that could fix this issue also).
Could you build current code of this repository and check?
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 00 DayHeader [startDate=2015-10-01T00:00:00.000-07:00]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 01 CalendarEntry [startDate=2015-10-01T08:30:00.000-07:00, endDate=2015-10-01T16:30:00.000-07:00, allDay=false, event=CalendarEvent [eventId=172, title=Mathworks Advisory Board Meeting, startDate=2015-10-01T08:30:00.000-07:00, endDate=2015-10-01T16:30:00.000-07:00, color=-3312410, allDay=false, alarmActive=false, recurring=false, location=Manhattan Beach Marriott, 1400 Parkview Ave, Manhattan Beach, CA 90266, United States]]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 02 CalendarEntry [startDate=2015-10-01T12:00:00.000-07:00, endDate=2015-10-01T13:00:00.000-07:00, allDay=false, event=CalendarEvent [eventId=160, title=Company Meeting, startDate=2015-10-01T12:00:00.000-07:00, endDate=2015-10-01T13:00:00.000-07:00, color=-3312410, allDay=false, alarmActive=false, recurring=false, location=]]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 03 DayHeader [startDate=2015-10-03T00:00:00.000-07:00]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 04 CalendarEntry [startDate=2015-10-03T10:00:00.000-07:00, endDate=2015-10-03T12:00:00.000-07:00, allDay=false, event=CalendarEvent [eventId=1078, title=Maker Fair, startDate=2015-10-03T10:00:00.000-07:00, endDate=2015-10-03T12:00:00.000-07:00, color=-6644481, allDay=false, alarmActive=false, recurring=false, location=Balboa Park, San Diego, CA, USA]]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 05 DayHeader [startDate=2015-10-04T00:00:00.000-07:00]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 06 CalendarEntry [startDate=2015-10-04T00:00:00.000-07:00, endDate=2015-10-05T00:00:00.000-07:00, allDay=true, event=CalendarEvent [eventId=978, title=Henry Ribakovs's birthday, startDate=2015-10-04T00:00:00.000-07:00, endDate=2015-10-05T00:00:00.000-07:00, color=-7151168, allDay=true, alarmActive=false, recurring=false, location=]]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 07 CalendarEntry [startDate=2015-10-04T09:00:00.000-07:00, endDate=2015-10-04T13:00:00.000-07:00, allDay=false, event=CalendarEvent [eventId=1080, title=Ribakovs, startDate=2015-10-04T09:00:00.000-07:00, endDate=2015-10-04T13:00:00.000-07:00, color=-6644481, allDay=false, alarmActive=false, recurring=false, location=XXXed out]]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 08 DayHeader [startDate=2015-10-05T00:00:00.000-07:00]
10-03 06:59:23.370 6780-6795/com.plusonelabs.calendar V/WrongDatesLostEventsTest: 09 CalendarEntry [startDate=2015-10-05T08:00:00.000-07:00, endDate=2015-10-05T09:00:00.000-07:00, allDay=false, event=CalendarEvent [eventId=155, title=Mathworks Conference, startDate=2015-10-05T08:00:00.000-07:00, endDate=2015-10-05T09:00:00.000-07:00, color=-3312410, allDay=false, alarmActive=false, recurring=true, location=]]

Can you give more detailed instructions for building the code? I never built an Android app before.
However, there might be a second problem: if it does work with the new build, we don't know for sure that the problem has been fixed because some time later the problem went away (I may have restarted the phone in between). So it doesn't seem to happen every time.

If you a not a developer, I'm not sure, if building from a source code is a good way for you. You better wait for a Beta release then (please opt in to the Open Beta Testing channel here). We are generally building a code using Android Studio. Building a code on Android device may be fun, so you can also try AIDE, see the instruction for similar app. GIT URL to clone: https://github.com/plusonelabs/calendar-widget.git
We received a report that a Widget randomly becomes empty. If your case is similar, you could also try manual refresh. Anyway, next time you will see similar problem, please start from making the same report as above and then try to figure out if manual refresh / device reboot / app reinstall helps.

Now this test case is automatically replayed using correct DateTime and a Time Zone.
All tests passed.


add support for localAddress

As in the title, did I missed something?
Closes #14

fixed the compiling issue


Undo file broken

Vim 7.4 on Windows 8/8.1

If I set undofile, after some operations the edited file and undofile both are
broken, edited file beceomes one long line only contains ^@(<C-Q><C-@>); also
get error that undofile is not correct.

This problem never happend if I use Windows 7 in the past.

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 12 Mar 2014 at 1:11

Considering that this ticket is open for more than 4 years and we haven't heard any more breakage problems, I suppose this is fixed. Also the problem description isn't very clear. So Closing.


Suggestion: Index or registry of deployments

It might be nice to encourage deployments to announce themselves, via an (opt-out?) feature that pings some "datalab registry" somewhere with a daily heartbeat containing the public deployment stats. This is somewhat required to ensure that prefixes are unique across deployments.
This registry can display metadata about that deployment (who is running it, who can use it etc.) and could eventually become a way of sharing custom schemas between all instances.

This could just run as a simple open-source app hosted somewhere like Fly so people can transparently see what we're doing with the data (see e.g., https://github.com/marda-alliance/metadata_extractors_registry as a template)

This essentially exists as https://github.com/datalab-org/datalab-federation


Error on import

Hello. I successfully downloaded using
sanity install<EMAIL_ADDRESS>I am using Sanity v2. Everything compiles fine until I try to import ComputedField upon which I get this error
Error in<EMAIL_ADDRESS>Module parse failed: Unexpected token (1343:8)
You may need an appropriate loader to handle this file type.
|     if (mode === "bleed") {
|       return {
|         ...muted,
|         enabled: {
|           bg: "transparent",
 @ ./node_modules/sanity-plugin-computed-field/lib/ComputedField.js 27:13-34
 @ ./schemas/documents/product.js
 @ ./schemas/schema.js (part:@sanity/base/schema)
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>(part:@sanity/base/root)
<EMAIL_ADDRESS>(part:@sanity/base/sanity-root)
<EMAIL_ADDRESS> @ multi<EMAIL_ADDRESS>
I understand if you're no longer supporting the older version but it doesn't seem to be an issue with my dependencies so I would appreciate any help. Thanks in advance.

interesting -- v1.0.2 did work in Sanity v2 at one point. It looks like this error is coming from the sanity ui library @sanity/ui/dist/index.esm.js.  I'm wondering if you maybe pinned your version of @sanity/ui lower, maybe it would work.
Unfortunately, not officially supporting v2 any longer.


Adds sorting for mixed str numeric cols

Adds dataTable plugin to sort Impulse and Avg Trust cols by the number matched from the table cell contents on the motor and search views.
Note, the dataTables.sort.numeric.js isn't unit tested. I followed the pattern on used by some of the plugins found on the dataTables plugins page, but if the desire is to add unit testing to the front-end code I'd suggest refactoring it into a CommonJS module and using browserify to build the front-end JavaScript.
Also adds underscore to the front-end JavaScript. Not sure if you want to add another dependency, but it may be worth taking a look at adding underscore (or lodash) to both the front and back end. Both have a nice set of features working with collections, functional-style programming, type checking, etc.
Also refactors #setupTable to take a single required selector argument, and an optional 'options' object. This is a fairy common idiom in JavaScript.

Yeah, I saw that sorting was messed up, so last week I added data-sort
values to the tables:
{{formatMMT
diameter}}
The formatSort helper produces a consistent pure numeric value that allows
dataTables to sort properly.
I'm not against adding more dependencies (I'm also used to Underscore.js).
I'll take a look at the actual PR.
John
On Sun, Jan 31, 2016 at 6:59 PM, Aaron Sheriff<EMAIL_ADDRESS>wrote:

Adds dataTable plugin to sort Impulse and Avg Trust cols by the number
matched from the table cell contents on the motor and search views.
Note, the dataTables.sort.numeric.js isn't unit tested. I followed the
pattern on used by some of the plugins found on the dataTables plugins
page https://datatables.net/plug-ins/sorting/, but if the desire is to
add unit testing to the front-end code I'd suggest refactoring it into a
CommonJS module and using browserify http://browserify.org/ to build
the front-end JavaScript.
Also adds underscore http://underscorejs.org/ to the front-end
JavaScript. Not sure if you want to add another dependency, but it may be
worth taking a look at adding underscore (or lodash) to both the front and
back end. Both have a nice set of features working with collections,
functional-style programming, type checking, etc.
Also refactors #setupTable to take a single required selector argument,
and an optional 'options' object. This is a fairy common idiom in
JavaScript.
You can view, comment on, or merge this pull request online at:
https://github.com/JohnCoker/thrustcurve3/pull/1
Commit Summary

add underscore.js to web page
add plugin to sort dataTables from number matched from string
refactor setupTable to take options arg
adds number from string sort to serach and motors tables

File Changes

A public/javascripts/dataTables.sort.numeric.js
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-0 (24)
M public/javascripts/main.js
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-1 (38)
A public/javascripts/underscore-min.js
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-2 (6)
M views/layouts/default.hbs
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-3 (2)
M views/manufacturers/motors.hbs
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-4 (18)
M views/motors/search.hbs
https://github.com/JohnCoker/thrustcurve3/pull/1/files#diff-5 (18)

Patch Links:

https://github.com/JohnCoker/thrustcurve3/pull/1.patch
https://github.com/JohnCoker/thrustcurve3/pull/1.diff

—
Reply to this email directly or view it on GitHub
https://github.com/JohnCoker/thrustcurve3/pull/1.

Ah, sorry, I was mostly looking at motors.hbs I missed how the data-sort was working in seach.hbs.
I'd say decline this and go with what you have.

Updated PR to remove sort plugin.

Wonderful, thanks!
John
On Sun, Jan 31, 2016 at 8:39 PM, Aaron Sheriff<EMAIL_ADDRESS>wrote:

Updated PR to remove sort plugin.
—
Reply to this email directly or view it on GitHub
https://github.com/JohnCoker/thrustcurve3/pull/1#issuecomment-177761349.


UTC Time Zone in table

Current Behavior
Hello all,
Im trying to show a select from mysql using the table dashboard, my current time is UTC -3 and the data is saved like that, so when I try to show this data using the table dashboard the Time zone is UTC by default and i cant change it.
I've tried to change TZ in to settings.js, but didnt work.

Expected Behavior
No response
Steps To Reproduce
No response
Example flow
paste your flow here

Environment

Node-RED version:
Node.js version:
npm version:
Platform/OS:
Browser:

Hi, we use the issue tracker in this repository primarily for reporting issues and bugs.
As the template says, ❓questions should be asked on the Node-RED forum
There are many helpful community members and a lot of existing database/dashboard timezone threads to find an answer.


Disable emit-on-save in tsconfig.json?

I would like to request a feature to disable emit-on-save based on the tsconfig.json file. In my situation, I have 2~3 projects living together in the same folder structure. These are the client and server components, sharing some of the definitions and logic with one another using a shared component. I will elaborate on the feature request.
The client component is compiled using browserify and tsify. This enables writing nodejs-like applications which bundles all the dependencies nicely together into a single output file to load into browsers. It also supports source maps, which would otherwise be lost when the files were build into an intermediary file prior to bundling them up with browserify. This component should have emit-on-save disabled.
The other component is a NodeJS-based application. It serves as the server back-end for the client component. Bundling this up would be awkward and silly, so the emit-on-save facilities save time and provide nice integration with the editing experience. Furthermore, node-inspector debugging is quite happy with the emits I can make from the editor like this. No further build or watchers necessary, so this is great here.
Would it be a reasonable idea to enable/disable emit-on-save per project, rather than on/off?

@Deathspike we recommend you use something like : https://github.com/TypeStrong/atom-typescript/blob/master/docs/packages.md#manage-your-projects for now.
Having said that I now realize that perhaps it does belong in tsconfig.json under an atomts key as well since you might want to share this setting. So I will reopen with has-workaround. Probably low priority though.

What is the name of this setting? I saw "compileOnSave" in the another thread, this however does not work:
'MyTestProject':
  'title': 'MyTestProject'
  'paths': [
    '...'
  ]
  'settings':
    'atom-typescript.compileOnSave': false

I use webpack so extra js files doesn't make sense. I still want to compile or statically check though, just without extra files.

Oh I see this link https://github.com/TypeStrong/atom-typescript/blob/master/docs/packages.md#manage-your-projects doesn't contain new information. It's enough to just put in tsconfig a "complieOnSave : false".

@Ciantic Can I have the link to that thread 🌹


StashUnstashPlugin: What if multiple files match?

What problem are you trying to solve with your request?
Because stash can accept a pattern, multiple files can potentially match.  BUILD_ARTIFACT will now contain multiple filenames, and this might be problematic in certain cases.  What can the user do about it?
Describe the solution you'd like
What if we provided a BUILD_ARTIFACT_COUNT variable, that indicated the number of files that were stashed/unstashed.  Then the user would know if the problem happened, and could programmatically do something about it, if needed.

Related to Issue #36


Error in converting Markdown to PDF

Error in converting Markdown to PDF, after clicking download pdf, the local host page will reload and content will be cleared.
in terminal shows:
-----

WeasyPrint could not import some external libraries. Please carefully follow the installation steps before reporting an issue:
https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#installation
https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#troubleshooting

-----

Error in converting Markdown to PDF: cannot load library 'gobject-2.0-0': dlopen(gobject-2.0-0, 0x0002): tried: 'gobject-2.0-0' (no such file), '/System/Volumes/Preboot/Cryptexes/OSgobject-2.0-0' (no such file), '/Users/he_muling/miniconda3/envs/researcher/bin/../lib/gobject-2.0-0' (no such file), '/usr/lib/gobject-2.0-0' (no such file, not in dyld cache), 'gobject-2.0-0' (no such file), '/usr/local/lib/gobject-2.0-0' (no such file), '/usr/lib/gobject-2.0-0' (no such file, not in dyld cache).  Additionally, ctypes.util.find_library() did not manage to locate a library called 'gobject-2.0-0'
Report written to outputs/task_1717657875_latest results regarding cognitive neuroscie.docx

however, i have already installed glib using homebrew, check with pkg-config --cflags --libs gobject-2.0 return:
-I/opt/homebrew/Cellar/glib/2.80.2/include -I/opt/homebrew/Cellar/glib/2.80.2/include/glib-2.0 -I/opt/homebrew/Cellar/glib/2.80.2/lib/glib-2.0/include -I/opt/homebrew/opt/gettext/include -I/opt/homebrew/Cellar/pcre2/10.43/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk/usr/include/ffi -L/opt/homebrew/Cellar/glib/2.80.2/lib -L/opt/homebrew/opt/gettext/lib -lgobject-2.0 -lglib-2.0 -lintl

i have followed https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#installation instruction and install with homebrew, the issue persists
also, i noticed that copy button only copies the content while format of markdown is not included, e.g.:

lack of #
lack of url, nature not [nature](url)

system info:

using conda to manage env
running on: macos 14.5 (23F79)

Hey @HeMuling,
You might have an easier path via Docker Desktop:
Step 1: Install Docker Desktop
Step 2: Walk through this Tutorial
Another requirement I should have mentioned in that video: the path to your files should be within the code of this project. That will enable you to skip the complexity of mounting stuff into Docker

If you are using conda environment on Windows, make sure you have GTK3 installed before you install the rest of the requirements:
conda install -c conda-forge gtk3


Add destructuring binding pattern support for xml Functional constructors

Description:
Refer: https://github.com/ballerina-platform/ballerina-spec/commit/7ffe36128182add34d1e2fcd82514adf5acc9c1b#diff-a9b79438f2c8a8890efc4088543d5a35R2738
Steps to reproduce:
Affected Versions:
OS, DB, other environment details and versions:
Related Issues (optional):

Suggested Labels (optional):

Suggested Assignees (optional):

Closing as spec has removed support for functional constructors


help with padding for text

hello, i'm sorry if this is the wrong place to ask for advice.
i have been trying to get a little bit of space in between the edges of the cells and the text, can you recommend a way of doing that?
so far i've tried:

padding (which affects the drop down box but not the text), i've read this only works on the cell body
indent (only affects the left of the text)
ReoGridHorAlign (again just one side)
overriding OnPaint and calling dc.DrawCellText (i thought it would put the text in the cell body, but maybe i'm not doing it right)

There is a sample that creates a customized cell body with padding value calculation.
You may check if it matches your requirements, but still some issues there, such as

It doesn't work with automatic cell text adjustment, if the user double clicks on the column, the width of the column will not fit this cell
You have to set this cell body to all cells that use padding, there is might a performance problem
You might have to handle the cell's styles manually

The cell body
class CellWithPaddingBody : CellBody
{
	public override void OnPaint(CellDrawingContext dc)
	{
		var cell = this.Cell;

		// calc the target bounds with padding
		var bounds = this.Bounds;
		bounds.X += 10;         // left padding
		bounds.Width -= 10;     // right padding

		// draw cell background
		dc.DrawCellBackground();

		// draw cell text
		dc.Graphics.DrawText(cell.DisplayText, "Arial", 9, SolidColor.Black,
			bounds, ReoGridHorAlign.Left, ReoGridVerAlign.Middle);
	}
}

Code to use the cell body
var sheet = this.grid.CurrentWorksheet;

var cell = sheet.Cells["C3"];
cell.Body = new CellWithPaddingBody();

cell.Data = "Hello World";

You can handle the cell's styles by using this.Cell.Style property in cell body.

wow thanks for the quick reply :) i'll try this out

yes, i'm seeing some good results with your code!
thank you sir


Create standalone app

The current electron app must be run through a python virtual environment as it uses python (and several local package dependencies) as its backend (through a nodejs interface layer). This should be restructured by:

first, packaging the application to resolve all dependencies on install automatically,
second, consider a refactor of the backend codebase to nodejs to support a truly standalone app

This issue was resolved by PRs #47 and #48 .


KAFKA-10565: Only print console producer prompt with a tty

This fixes https://issues.apache.org/jira/browse/KAFKA-10565 by using System.console to determine whether we're connected to a TTY before printing the kafka-console-producer.sh prompt. That's not a perfect solution (since stdin might be connected to the tty but not stdout, or vice versa), but it's still better that printing many prompts when reading from a pipe.

@chia7712 might you be able to review this? It's trivial, but I couldn't find a good way to test it except manually.

I couldn't find a good way to test it except manually.

@tombentley Could you attach the console screenshot ? I will test this PR manually later.

@chia7712 current behaviour:

With this patch:

@tombentley Thanks for your testing. Is it worth having a configuration to disable/enable to print prompt? The check of System.console is useful and the configuration make it more flexible. WDYT?

@chia7712 what's the use case for when you'd need to override the effects of using System.console? It would require a KIP, so adding a config is quite a lot more effort and I can't immediately see the benefit, but maybe you have something in mind.


Adjusts tile xy value when coordinates are out of bounds

Ref #82
Same problem, I was using the wrong branch in the previous PR.
@javisantana

@javisantana review!

is there a reason why here (https://github.com/CartoDB/torque/blob/coord-wrap/lib/torque/provider/windshaft.js#L296) corrected is not used?

Yep: we need to callback the tile rendering function with the original tile numbers, not the corrected ones, otherwise they will only render in the "corrected" tile positions (i.e. the ones within the normal coordinate ranges).
We only need corrected values to ask the right tiles.

nice, thanks
:es:

:shipit:
(cc @saleiva)


How to programmatically invoke multisort?

I know that this repo advocates for using spectrum, but I'm not getting any responses and really need help with this:
Given some event occurring (button click or something else), how can I programmatically tell react-table to sort the data by several columns?
The dogs have the following info for column.toggleSortBy:
toggleSortBy: Function(descending, multi) => void

    - This function can be used to programmatically toggle the sorting for this column.
    - This function is similar to the instance-level toggleSortBy, however, passing a columnId is not required since it is located on a Column object already.

So if I have three columns:

age
name
income

would I then do this?
ageColumn.toggleSortBy(true, true)
nameColumn.toggleSortBy(true, true)
incomeColumn.toggleSortBy(true, true)

I've so far found this spectrum thread:
https://spectrum.chat/react-table/general/default-multiple-sorting~665cf8be-5054-4126-ac49-1f44a1895b01
Which was kind of helpful, but outdated.
And I see that in the useSortBy docs there's mention of initialState.sortBy, which is a great starting point and docs are very clear on what the usage is. Using initialState.sortBy I've gotten my table to render initially with a complex multisort by default.
Now I need a way of re-sorting using this initial sorting configuration if the user changes the sorting criteria (i.e. by clicking on a sortable column and thus re-rendering the table). The use case is that we have a reset sorting button that the user will click and the sorting will use this default multi-sort config.

Here's a proof-of-concept for resetting sort based on a user action (such as a button click as described above):
const SimpleTable = <T extends {}>({ data, columns, sortBy, ResetSortBtn }: TableProps<T>) => {
  const {
    rows,
    columns: instanceColuns,
    headerGroups,
    getTableProps,
    getTableBodyProps,
    prepareRow,
    toggleSortBy,
  } = useTable(
    {
      columns: generateColumns(columns),
      data,
      initialState: {
        sortBy,
      },
    },
    useSortBy,
  )

  return (
    <>
      {ResetSortBtn && (
        <ResetSortBtn
          onClick={() => {
            instanceColuns.forEach(col => {
              if (col.isSorted) {
                col.clearSortBy()
              }
            })

            sortBy?.forEach(({ id, desc = true }) => {
              toggleSortBy(id, desc, true)
            })
          }}
        >
          Reset Sorting
        </ResetSortBtn>
      )}
      <Table {...getTableProps()}>
        <TableHead headerGroups={headerGroups} />
        <Tbody {...getTableBodyProps()} data-testid={'table-body'}>
       // .... other stuff
      </Table>
    </>

Note that I'm passing in the sortBy options as described in (table options)[https://github.com/tannerlinsley/react-table/blob/master/docs/api/useSortBy.md#table-options], then there's a ResetSortBtn prop that takes a react component which will get passed a onClick handler and button text letting the user know that this button is for resetting props.
And this is how I am using it:
<Table {...props} ResetSortBtn={Button} />

Leaving this here for:

feedback
In case someone else is wondering the same thing

@tannerlinsley if you find this example useful, I could create a codesandbox PR for an example on programmatically triggering multisort & resetting back to original sort order.

This looks like a good enough approach and I think this issue is plenty fine for posterity. If we get more people asking about it, I'll let you know :)

In case anyone comes across this in the future: I found that this only worked if the first "toggleSortBy" had its last parameter (multisort) set to false, and subsequent "toggleSortBy"s had it set to true.


[TechDocs CLI] ACL (bucket-owner-full-control) config for AWS publisher

Hey all, I'm trying to solve a peculiar issue. Our CI runs in a separate AWS account and we have our Backstage instance together with its techdocs s3 bucket in another AWS account.
This means that objects uploaded to the techdocs bucket are owned by CI AWS account and Backstage doesn't have access rights to display them. Common solution is to set bucket-owner-full-control ACL when uploading objects to S3. How would you recommend to address this situation? Would it make sense to make ACL configurable, or can you see a different solution?
Thanks

We in @backstage/techdocs-core do not use AWS internally so we are not in the best position to investigate this issue further.
It would be great if anyone from the community who uses Backstage within AWS is able to investigate this and contribute a fix if possible. We can support with PR reviews and getting the fix in.

for anyone stumbling upon this closed issue, as of November 2021, it is possible to enforce a proper bucket and skip setting the ACLs
https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-s3-object-ownership-simplify-access-management-data-s3/


Ref to the config snapshot in pulumi_destroy.md

Refer to the config snapshot file in pulumi_destroy.md.

I don't think we'll want to take these edits to the CLI documentation - so closing this one out.


Paste in Jupyter Notebook makes a copy to the Terminal window

Bug: Notebook Editor
Steps to cause the bug to occur

click to focus the vscode built-in terminal window

focus back to notebook

copy & paste

Actual behavior
paste to both notebook and terminal
Expected behavior
paste to only notebook

Jupyter and/or Python environment
Please provide as much info as you readily know

Jupyter server running: Local
Extension version: 2020.7.94776
VS Code version: 1.47.2
Setting python.jediEnabled: false
Setting python.languageServer: Microsoft
Python and/or Anaconda version: 3.8.3
OS: Windows 10
Virtual environment: conda

Developer Tools Console Output

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

This is fixed in upstream.


ODataListBinding: Filter cannot be applied to aggregated property

OpenUI5 version: 1.121.0
Browser: Google Chrome
URL (minimal example if possible):  https://github.com/tofriede/odata-v4-filter-aggregation
Steps to reproduce the problem:

Create a sap.ui.model.odata.v4.ODataListBinding
Aggregate a numeric property
Apply a sap.ui.model.Filter  based on the aggregated property

What is the expected result?
The list binding should execute an OData request with the query option $apply, in which the data is aggregated first and then the corresponding filter is applied. The fact that this should be possible is also mentioned in the documentation under Extension for Data Aggregation (section: Filtering).
What happens instead?
Before the request is fired, the ListBinding analyzes the applied filter and tries to determine the type of the aggregated property via the MetaModel. However, this fails because an alias must be used for the aggregation that is not known to the MetaModel, as this is defined on the client side.

https://github.com/SAP/openui5/blob/2baad67a9dfdb39be38b027396d3646c57162d70/src/sap.ui.core/src/sap/ui/model/odata/v4/ODataListBinding.js#L1798
Since the mapping of aliases and original property names is known to the ListBinding (getAggregation), it should also be able to identify the types of aggregated properties.

Our current thinking is that we cannot fix this as a bug easily. The needed type is not at all clear from the information we have. The average of an Edm.Int would normally not be an integer value as well. The OData response will contain the type information, but that is too late. Maybe it can be enhanced in future, but as a next step, we should first improve our docs. Thanks for your understanding.

Hello @ThomasChadzelek!
Thanks for the quick response. As far as I can see, the type is only needed to convert the filter values to a suitable literal that is used in the odata url. Since all numeric values are treated the same here (no quotes), using the type of the original property should not cause any problems. The exact type is not really needed at this point.
https://github.com/SAP/openui5/blob/26c34829f0d5869f6d6a85c4f5cf46489fcb911d/src/sap.ui.core/src/sap/ui/model/odata/v4/lib/_Helper.js#L1185

"Since all numeric values are treated the same here (no quotes)" - well, that is no strictly true, see Edm.Decimal and Edm.Int64 which are handled as strings in order to avoid loss of precision.


buggy at aster/tools/create_synthtext_tfrecord.py?

I am sorry but on my side things worked well until I tried to create synthtext_crop_all.tfrecord via excecuting  python aster/tools/create_synthtext_tfrecord.py.
Error comes as follow:
  File "aster/tools/create_synthtext_tfrecord.py", line 150, in main
    _create_samples_of_an_image(writer, image_rel_path, text, word_polygons, char_polygons)
NameError: name '_create_samples_of_an_image' is not defined

Walking through the source code , I found even though method _create_samples_of_an_image of class SynthTextCreator is invoked , the function takes 4 positional arguments but 5 were given, things are still broken.
I have already successfully run the demo , generated synth90k_all.tfrecord & iiit5k_test_1k.tfrecord ,train and eval on both datasets. So my run time environment can be considered ok.
I am sorry to bother but sincerely waiting for response :)

#https://github.com/bgshih/aster/issues/16


[Wiki] "Volunteers Welcome!" should not only focus on developers

Right now the "Volunteers Welcome!" documentation is 100% focuesd on developers: https://github.com/commons-app/apps-android-commons/wiki/Volunteers-welcome! (formerly in the README)
I think this could be improved to also include translation and other work related to the app that more non-technical people could do. The technical development instructions might also better be placed in a seperate document.

What would that be, what a more non-technical person can de besided Translation on Translatewiki?
Testing?
Moderating images?
Helping with issues?

Write documentation in the wiki

Yeah, testing the app and moderating images would be great.
To expand, to people who can use Android Studio:

Compile and test the latest (not yet release) app, and report any issues you encounter

To experienced Commons editors:

Check lists such as https://commons.wikimedia.org/wiki/User:Didym/Mobile_upload and https://commons.wikimedia.org/wiki/Special:RecentChangesLinked/Category:Uploaded_with_Mobile/Android. Report (if it seems a malfunction on the app's side) and/or fix anomalies such as possible copyright violation, accidental overwrite, inadequate file name, etc.

Everything @whym mentioned, plus:

Testing the current beta release and reporting any issues with it (for those who don't know how to build from GitHub)
Moderating our Google group forums (AFAIK @neslihanturan is currently doing that, but a non-technical person could also do that)
Helping with promotional/marketing stuff - sharing about the app on social media, making educational videos on how to use it, etc
Custom icons for Nearby places or Nav drawer items, etc (definitely not a necessity, but would be nice)


Support for T.Optional variant

Hi!
I have some code that uses the idiom:
import typing as T

def test(param: T.Optional[str] = "hello"):
    ...

The command in this repo turns this into Optional[T.Optional[str]] and adds an unessesary import. I think this way of writing is fairly popular (?). If it is, would it be possible to add support for this variant too?

Thanks, released in 1.3


Option for "variable-name" rule to allow leading underscore for property backing fields

It would be nice to have this:
class Example {
    private _var1; // ERROR, not a backing field, shouldn't start with an underscore.
    private _var2; // Allowed, as it's a backing field for the `var2` property.

    public get var2() {
        return this._var2;
    }
}

allow-leading-underscore-backing-fields maybe.
Edit: It would be considered a backing field if there was either a getter or a setter with the same name (sans the leading underscore).

This naming convention for backing fields is also suggested in the typescript handbook ;
private _fullName: string;

get fullName(): string {
    return this._fullName;
}

variable-name now allows options such as "allow-leading-underscore". 🎉

@JoshuaKGoldberg That's not new, and allows leading underscores on any variable.

Oh! My apologies, I speed-read the rule and missed the difference. Agreed that an option to allow a leading underscore only for backing properties would be nice.
We should note that it shouldn't be allowed to be enabled at the same time as "allow-leading-underscore".

The issue is closed but I can't find a option at the documentation. Is it still planned to offer a option like allow-leading-underscore-backing-fields?

Thanks for the catch @Xenya0815 - this should have been re-opened.

Closing in favor of https://github.com/typescript-eslint/typescript-eslint/issues/816

🤖 Beep boop! 👉  TSLint is deprecated 👈 (#4534)  and you should switch to typescript-eslint! 🤖
🔒 This issue is being locked to prevent further unnecessary discussions. Thank you! 👋


Implement built-in CRDTs: YATA (array type)

Background
YATA is another array type, which is popularized by Yjs. Yjs is a popular CRDT library, which we used to make Penguin World.
Task

implement
test
document how this type works and its usage

Resources

https://www.researchgate.net/publication/310212186_Near_Real-Time_Peer-to-Peer_Shared_Editing_on_Extensible_Data_Types original paper; PDF available: https://files.gitter.im/y-js/yjs/yCYx/GROUP2016-6.pdf
https://www.bartoszsypytkowski.com/yata/ Bartosz's explanation

not using crdt builtins anymore


added a config option to reduce the number of full_node worker processes to reduce ram usage

The Issue:
The biggest problem chia fork farmers face is ram usage. Many farmers simply do not have the ram required to run all the forks and my 64GB machine is at its limits as well
One Cause:
By default, chia and its forks create number of logical cores - 2 start_full_node process. Each worker process takes 50MB RAM. On a typical 8 core, 16 threads CPU this is 700MB of RAM per chia fork. For 38 Forks this is about 26GB of ram for the full_nodes alone
One Solution:
Give farmers the ability to limit the number of worker processes. Make this configurable, so pure, designated full_nodes can still use all cpu cores for their task, but allow farmers to reduce the CPU and RAM load of running a full_node
Pro:

On an 8 core / 16 thread cpu this can easily save up to 600MB RAM per fork
On an 32 core / 64 thread cpu this can easily save 3GB RAM per fork
The ram saving is especially noticable on dual core machines, which likely have little ram available
Users can choose to reduce ram usage, which allows them to farm more forks including yours if they there previously unable to

Cons:
Reducing the number of worker processes can reduce sync speed. This does not affect ongoing synchronization of synced nodes, only a node that is way behind the chain really benefits from many worker processes. The user has full control over that and can reduce the number of worker processes once synced or set them to a good compromise between resource consumption and sync speed, tailored for his machine
Changes:

5 Lines of code (two of those line are imports). In a place where the chia team already limits the number of worker processes to 61 I added a config check and apply the configured limit if one is set
1 new config option in config.yaml

Who is effected by this change:

This change only effects users who add the config option multiprocessing_limit to their config.yaml

Question, which section of the config.yaml file should one add the "multiprocessing_limit" paramater?

Question, which section of the config.yaml file should one add the "multiprocessing_limit" paramater?

Just throw it in the first line without any whitespace before it.

Hello there is there a way to add this tweak in windows to other forks of chia?