HDFS-17342. Fix DataNode may invalidates normal block causing missing block

Description of PR
https://issues.apache.org/jira/browse/HDFS-17342
When users read an append file, occasional exceptions may occur, such as org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block: xxx.
This can happen if one thread is reading the block while writer thread is finalizing it simultaneously.
Root cause:

The reader thread obtains a RBW replica from VolumeMap, such as: blk_xxx_xxx[RBW] and the data file should be in /XXX/rbw/blk_xxx.
Simultaneously, the writer thread will finalize this block, moving it from the RBW directory to the FINALIZE directory. the data file is move from /XXX/rbw/block_xxx to /XXX/finalize/block_xxx.
The reader thread attempts to open this data input stream but encounters a FileNotFoundException because the data file /XXX/rbw/blk_xxx or meta file /XXX/rbw/blk_xxx_xxx doesn't exist at this moment.
The reader thread will treats this block as corrupt, removes the replica from the volume map, and the DataNode reports the deleted block to the NameNode.
The NameNode removes this replica for the block.
If the current file replication is 1, this file will cause a missing block issue until this DataNode executes the DirectoryScanner again.

As described above, when the reader thread encountered FileNotFoundException is as expected, because the file is moved.
So we need to add a double check to the invalidateMissingBlock logic to verify whether the data file or meta file exists to avoid similar cases.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 25s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

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

_ trunk Compile Tests _

-1 :x:
mvninstall
0m 21s
/branch-mvninstall-root.txt
root in trunk failed.

-1 :x:
compile
0m 21s
/branch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.txt
hadoop-hdfs in trunk failed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.

-1 :x:
compile
0m 21s
/branch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_392-8u392-ga-1~20.04-b08.txt
hadoop-hdfs in trunk failed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08.

-0 :warning:
checkstyle
0m 20s
/buildtool-branch-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
The patch fails to run checkstyle in hadoop-hdfs

-1 :x:
mvnsite
0m 21s
/branch-mvnsite-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in trunk failed.

-1 :x:
javadoc
0m 27s
/branch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.txt
hadoop-hdfs in trunk failed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.

-1 :x:
javadoc
3m 21s
/branch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_392-8u392-ga-1~20.04-b08.txt
hadoop-hdfs in trunk failed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08.

-1 :x:
spotbugs
0m 21s
/branch-spotbugs-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in trunk failed.

+1 :green_heart:
shadedclient
5m 33s

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

_ Patch Compile Tests _

-1 :x:
mvninstall
0m 22s
/patch-mvninstall-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch failed.

-1 :x:
compile
0m 20s
/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.txt
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.

-1 :x:
javac
0m 20s
/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.txt
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.

-1 :x:
compile
0m 16s
/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_392-8u392-ga-1~20.04-b08.txt
hadoop-hdfs in the patch failed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08.

-1 :x:
javac
0m 16s
/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_392-8u392-ga-1~20.04-b08.txt
hadoop-hdfs in the patch failed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08.

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 54s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 88 new + 0 unchanged - 0 fixed = 88 total (was 0)

-1 :x:
mvnsite
0m 28s
/patch-mvnsite-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch failed.

-1 :x:
javadoc
0m 38s
/results-javadoc-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04.txt
hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 generated 99 new + 0 unchanged - 0 fixed = 99 total (was 0)

-1 :x:
javadoc
0m 10s
/patch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_392-8u392-ga-1~20.04-b08.txt
hadoop-hdfs in the patch failed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08.

-1 :x:
spotbugs
0m 21s
/patch-spotbugs-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch failed.

-1 :x:
shadedclient
9m 14s

patch has errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
0m  6s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch failed.

+0 :ok:
asflicense
0m 22s

ASF License check generated no output?

21m 29s

Subsystem
Report/Notes

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

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

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

uname
Linux 1bc43097a9dd 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 2cf8e6c6d3ba6d2dfebff919c67c92b45963a3b0

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

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

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

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

versions
git=2.25.1 maven=3.6.3

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

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 22s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

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

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
34m 14s

trunk passed

+1 :green_heart:
compile
0m 44s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
0m 41s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
checkstyle
0m 40s

trunk passed

+1 :green_heart:
mvnsite
0m 46s

trunk passed

+1 :green_heart:
javadoc
0m 43s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m  5s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 58s

trunk passed

+1 :green_heart:
shadedclient
22m 48s

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 41s

the patch passed

+1 :green_heart:
compile
0m 39s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
0m 39s

the patch passed

+1 :green_heart:
compile
0m 37s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
0m 37s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 32s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 1 new + 87 unchanged - 0 fixed = 88 total (was 87)

+1 :green_heart:
mvnsite
0m 41s

the patch passed

+1 :green_heart:
javadoc
0m 31s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m  3s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 53s

the patch passed

+1 :green_heart:
shadedclient
23m 19s

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

_ Other Tests _

-1 :x:
unit
211m 24s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 21s

The patch does not generate ASF License warnings.

306m 44s

Reason
Tests

Failed junit tests
hadoop.hdfs.TestDFSStripedInputStream

hadoop.hdfs.TestEncryptionZonesWithKMS

hadoop.hdfs.TestReconstructStripedFile

hadoop.hdfs.server.namenode.snapshot.TestRenameWithSnapshots

hadoop.hdfs.server.datanode.TestDirectoryScanner

hadoop.hdfs.server.namenode.TestReconstructStripedBlocks

hadoop.hdfs.TestDFSStripedOutputStreamWithRandomECPolicy

Subsystem
Report/Notes

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

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

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

uname
Linux 0ea7c919d276 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 6f5a1f409a25f7f84a463cb434c41f1c89e7a73d

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

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

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/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.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 23s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

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

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
32m  2s

trunk passed

+1 :green_heart:
compile
0m 41s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
0m 38s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
checkstyle
0m 38s

trunk passed

+1 :green_heart:
mvnsite
0m 43s

trunk passed

+1 :green_heart:
javadoc
0m 39s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m  0s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 42s

trunk passed

+1 :green_heart:
shadedclient
20m 29s

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 39s

the patch passed

+1 :green_heart:
compile
0m 45s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
0m 45s

the patch passed

+1 :green_heart:
compile
0m 32s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
0m 32s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 30s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 1 new + 87 unchanged - 0 fixed = 88 total (was 87)

+1 :green_heart:
mvnsite
0m 37s

the patch passed

+1 :green_heart:
javadoc
0m 29s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m  2s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 40s

the patch passed

+1 :green_heart:
shadedclient
21m  7s

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

_ Other Tests _

-1 :x:
unit
601m 20s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 27s

The patch does not generate ASF License warnings.

689m 46s

Reason
Tests

Failed junit tests
hadoop.hdfs.TestReconstructStripedFileWithRandomECPolicy

hadoop.hdfs.TestDFSStripedInputStream

hadoop.hdfs.server.datanode.fsdataset.impl.TestFsDatasetImpl

hadoop.hdfs.TestParallelShortCircuitReadNoChecksum

Subsystem
Report/Notes

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

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

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

uname
Linux 30043234e0f6 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 83eab24c7696017a24412340514a6977b6a394af

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

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

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/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.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 21s

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 _

+1 :green_heart:
mvninstall
32m 18s

trunk passed

+1 :green_heart:
compile
0m 41s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
0m 37s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
checkstyle
1m  9s

trunk passed

+1 :green_heart:
mvnsite
0m 39s

trunk passed

+1 :green_heart:
javadoc
0m 39s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m  1s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 47s

trunk passed

+1 :green_heart:
shadedclient
20m 30s

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 35s

the patch passed

+1 :green_heart:
compile
0m 39s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
0m 39s

the patch passed

+1 :green_heart:
compile
0m 33s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
0m 33s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 29s

the patch passed

+1 :green_heart:
mvnsite
0m 35s

the patch passed

+1 :green_heart:
javadoc
0m 32s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
0m 55s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 44s

the patch passed

+1 :green_heart:
shadedclient
20m 35s

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

_ Other Tests _

-1 :x:
unit
196m 24s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 27s

The patch does not generate ASF License warnings.

283m 41s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.namenode.TestFileTruncate

hadoop.hdfs.server.datanode.TestDirectoryScanner

Subsystem
Report/Notes

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

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

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

uname
Linux c7f45b3093ae 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 303ea2116d8b3373a82a310bae480b33aedc15e0

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

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

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/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.

Hi @zhangshuyan0 thanks for your review .
Fixed the issue of UT failure, please help review it again, thanks~

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 52s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

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

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
47m 39s

trunk passed

+1 :green_heart:
compile
1m 25s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
1m 14s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
checkstyle
1m 13s

trunk passed

+1 :green_heart:
mvnsite
1m 22s

trunk passed

+1 :green_heart:
javadoc
1m  9s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m 34s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
3m 21s

trunk passed

+1 :green_heart:
shadedclient
39m 57s

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m 13s

the patch passed

+1 :green_heart:
compile
1m 14s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
1m 14s

the patch passed

+1 :green_heart:
compile
1m  6s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
1m  6s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
1m  1s

the patch passed

+1 :green_heart:
mvnsite
1m 14s

the patch passed

+1 :green_heart:
javadoc
0m 55s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
1m 29s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
3m 19s

the patch passed

+1 :green_heart:
shadedclient
40m 14s

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

_ Other Tests _

-1 :x:
unit
247m 14s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 42s

The patch does not generate ASF License warnings.

399m 46s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.datanode.TestDirectoryScanner

Subsystem
Report/Notes

Docker
ClientAPI=1.44 ServerAPI=1.44 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/6/artifact/out/Dockerfile

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

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

uname
Linux 778cfbae1130 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 0a93644d94377973dbc22ea998b35b2e52b6fae5

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/6/testReport/

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/6/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.

This is a bug fix after https://github.com/apache/hadoop/pull/5564 , do you have time to help review this?

@smarthanwang I have a question about HDFS-16985, Normally FileNotFoundException means that the meta file or data file maybe lost, so the replication on this datanode maybe corrupt, right?  In your business(AWS EC2 + EBS) situation, you don't expect datanode to delete this replica directly, so HDFS-16985 just remove the replica from the memory of DN.
But I want to see that DN should directly delete this corrupt replica If it can ensure that the replica is corrupt, such as: meta file or data file is lost.
So we can add a configure to control whether DN delete this replication from disk directly, such as: fs.datanode.delete.corrupt.replica.from.disk with a default value true.
If fs.datanode.delete.corrupt.replica.from.disk is true, DN can delete this corrupt replica from disk directly. If fs.datanode.delete.corrupt.replica.from.disk is false, DN can just delete this corrupt replica from memory.
@smarthanwang @zhangshuyan0 looking forward to your good ideas.

This is a bug fix after #5564 , do you have time to help review this?

@smarthanwang I have a question about HDFS-16985, Normally FileNotFoundException means that the meta file or data file maybe lost, so the replication on this datanode maybe corrupt, right? In your business(AWS EC2 + EBS) situation, you don't expect datanode to delete this replica directly, so HDFS-16985 just remove the replica from the memory of DN.
But I want to see that DN should directly delete this corrupt replica If it can ensure that the replica is corrupt, such as: meta file or data file is lost. So we can add a configure to control whether DN delete this replication from disk directly, such as: fs.datanode.delete.corrupt.replica.from.disk with a default value true.
If fs.datanode.delete.corrupt.replica.from.disk is true, DN can delete this corrupt replica from disk directly. If fs.datanode.delete.corrupt.replica.from.disk is false, DN can just delete this corrupt replica from memory.
@smarthanwang @zhangshuyan0 looking forward to your good ideas.

Thanks @ZanderXu for your comment.
I agree with add new param to control whether this scenario requires deleting the replica from the disk.
from the datanode side, if it is confirmed that the replica is not exists (meta file or data file is lost), it seems maybe reasonable that this replica should also be deleted (residual meta file or data file) from the disk.
thanks~

This is a bug fix after #5564 , do you have time to help review this?

@smarthanwang I have a question about HDFS-16985, Normally FileNotFoundException means that the meta file or data file maybe lost, so the replication on this datanode maybe corrupt, right? In your business(AWS EC2 + EBS) situation, you don't expect datanode to delete this replica directly, so HDFS-16985 just remove the replica from the memory of DN.
But I want to see that DN should directly delete this corrupt replica If it can ensure that the replica is corrupt, such as: meta file or data file is lost. So we can add a configure to control whether DN delete this replication from disk directly, such as: fs.datanode.delete.corrupt.replica.from.disk with a default value true.
If fs.datanode.delete.corrupt.replica.from.disk is true, DN can delete this corrupt replica from disk directly. If fs.datanode.delete.corrupt.replica.from.disk is false, DN can just delete this corrupt replica from memory.
@smarthanwang @zhangshuyan0 looking forward to your good ideas.

Agree with you, it's better to use parameter to control corrupt block deletion.

Update UT, @ZanderXu @zhangshuyan0 @smarthanwang please help review it again, thanks~

This is a bug fix after #5564 , do you have time to help review this?

@smarthanwang I have a question about HDFS-16985, Normally FileNotFoundException means that the meta file or data file maybe lost, so the replication on this datanode maybe corrupt, right? In your business(AWS EC2 + EBS) situation, you don't expect datanode to delete this replica directly, so HDFS-16985 just remove the replica from the memory of DN.
But I want to see that DN should directly delete this corrupt replica If it can ensure that the replica is corrupt, such as: meta file or data file is lost. So we can add a configure to control whether DN delete this replication from disk directly, such as: fs.datanode.delete.corrupt.replica.from.disk with a default value true.
If fs.datanode.delete.corrupt.replica.from.disk is true, DN can delete this corrupt replica from disk directly. If fs.datanode.delete.corrupt.replica.from.disk is false, DN can just delete this corrupt replica from memory.
@smarthanwang @zhangshuyan0 looking forward to your good ideas.

Thanks @ZanderXu for your comment. I agree with add new param to control whether this scenario requires deleting the replica from the disk. from the datanode side, if it is confirmed that the replica is not exists (meta file or data file is lost), it seems maybe reasonable that this replica should also be deleted (residual meta file or data file) from the disk. thanks~

BTW, if necessary i'm very willing  to implement this function.

Agree with you, it's better to use parameter to control corrupt block deletion.

Thanks @smarthanwang for your response. @haiyang1987 Can you create a new ticket to support it?

Agree with you, it's better to use parameter to control corrupt block deletion.

Thanks @smarthanwang for your response. @haiyang1987 Can you create a new ticket to support it?

Sure, l will create a new ticket to implement it later, thanks~

Resolve conflicts with trunk branch.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 35s

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 _

+1 :green_heart:
mvninstall
31m 38s

trunk passed

+1 :green_heart:
compile
0m 42s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
compile
0m 38s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
checkstyle
0m 38s

trunk passed

+1 :green_heart:
mvnsite
0m 44s

trunk passed

+1 :green_heart:
javadoc
0m 41s

trunk passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
0m 58s

trunk passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 43s

trunk passed

+1 :green_heart:
shadedclient
20m 23s

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 36s

the patch passed

+1 :green_heart:
compile
0m 37s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javac
0m 37s

the patch passed

+1 :green_heart:
compile
0m 34s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
javac
0m 34s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 29s

the patch passed

+1 :green_heart:
mvnsite
0m 37s

the patch passed

+1 :green_heart:
javadoc
0m 30s

the patch passed with JDK Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04

+1 :green_heart:
javadoc
0m 55s

the patch passed with JDK Private Build-1.8.0_392-8u392-ga-1~20.04-b08

+1 :green_heart:
spotbugs
1m 39s

the patch passed

+1 :green_heart:
shadedclient
20m 16s

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

_ Other Tests _

-1 :x:
unit
199m 50s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 26s

The patch does not generate ASF License warnings.

286m 25s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.datanode.TestDirectoryScanner

Subsystem
Report/Notes

Docker
ClientAPI=1.44 ServerAPI=1.44 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/8/artifact/out/Dockerfile

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

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

uname
Linux 5dae00048de9 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / d023cff9ce127a4a7f29696c84c17f735520558f

Default Java
Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.21+9-post-Ubuntu-0ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_392-8u392-ga-1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/8/testReport/

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

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6464/8/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.

The failed unit test seems unrelated to the change.

Hi @zhangshuyan0 @ZanderXu @smarthanwang Could you mind to push this modification forward when you have free time ? Thank you very much.

Hi @smarthanwang , do you have any further comments on this PR?

Hi @zhangshuyan0 @ZanderXu @smarthanwang please help to push this modification forward If there are no any further comments. Thank you very much~

Committed to trunk. Thanks for your contribution @haiyang1987 @ZanderXu @smarthanwang .

Thanks @zhangshuyan0  @ZanderXu @smarthanwang for your help review and merge.


Game Termination

The game should terminate on:

All food is eaten.
Both Pacmans are eaten by the Ghosts.
No direction change from either Pacman in the last 200 seconds.

@318097 @kaushikb11 @hassan23 @Shalinit3 Any Views?

The logic is pretty simple to check if all the food is eaten or not by the gridState. The game should finish after this.
We have to add a condition that if one Pacman is eaten by the Ghost, the game shouldn't stop.
We can safely assume that if both the Pacman don't move, the Ghosts will eventually eat them.

Condition #3 (No direction change from either Pacman in the last 200 seconds) is not required I guess

I wrote that in case no client is interested in playing the game. But, yes, this can be removed.

Resolved in #145


user_groups: Fix group settings UI.

First commit is to fix the tooltips on disabled setting elements.
Second commit is to increase the gap between setting elements.

Screenshots and screen captures:

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Merged, thanks @sahil839!


libvdwxc: fix build with gcc-14

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

@GrahamcOfBorg build libvdwxc

nixpkgs-reviewd workflow started
Status and logs: https://github.com/nixosbrasil/nixpkgs-reviewd/actions/runs/12495581563

nixpkgs-reviewd workflow finished
Status and logs: https://github.com/nixosbrasil/nixpkgs-reviewd/actions/runs/12495581563
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368133

x86_64-darwin

:fast_forward: 4 packages marked as broken and skipped:

python312Packages.gpaw
python312Packages.gpaw.dist
python313Packages.gpaw
python313Packages.gpaw.dist

:white_check_mark: 1 package built:

libvdwxc

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368133

aarch64-darwin

:x: 4 packages failed to build:

python312Packages.gpaw
python312Packages.gpaw.dist
python313Packages.gpaw
python313Packages.gpaw.dist

:white_check_mark: 1 package built:

libvdwxc

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368133

x86_64-linux

:x: 4 packages failed to build:

python312Packages.gpaw
python312Packages.gpaw.dist
python313Packages.gpaw
python313Packages.gpaw.dist

:white_check_mark: 9 packages built:

cp2k
libvdwxc
octopus
python312Packages.sirius
python312Packages.sirius.dev
python313Packages.sirius
python313Packages.sirius.dev
sirius
sirius.dev

The gpaw failures are unrelated. We will fix it in a separate PR.


add support for aws s3 kms encryption

This PR is to provide support to AWS S3 server side encryption using AWS KMS
http://docs.aws.amazon.com/kms/latest/developerguide/overview.html
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putObject-property
Although I provide a test for it, it will still require a valid kms arn (which can be created under "Encryption keys" in IAM from AWS console.
So... not sure how you guys want to go about it...

Thanks @lefrog! I like the URI query idea (rather than an option.sse). I'll work on setting up a KMS key and alias so we can get the travis tests passing - I'll refer here in another PR. We have a number of other things moving, so this should be able to go out in the next release.
Note: fork PRs will fail on tests due to travis not being authenticated from a different git URL. I'll confirm they pass locally once I get the KMS credentials set up.

@lefrog I've got the KMS creds moving over in #109, which also includes this PR's work. I noticed that your test included the eu-central-1 bucket instead of the us-east-1 bucket, so was hitting some region errors with KMS - I've removed the bucket name in https://github.com/mapbox/mapbox-tile-copy/pull/109/commits/49f639e0086ea00d03c421bb3266407b8f1d410e and tests are passing locally for me 👍 . This should be going into master shortly!

Awesome @mapsam !
Thank you guys for the quick turn around :)


Add Grid view to #64

This demo application demonstrates when to use Canvas Panel, and possibly when not to - when the functionality is higher up.
Question - for grid view, are we looking at:

a field of canvases, composited on a synthetic canvas
a field of thumbnail images, composited on a synthetic canvas
just thumbnail images, flowing normally, not on a Canvas (no CP in that shot)

From Atlas' point of view, I think the questions could be reframed. You could model that thumbnail list in Atlas and write a renderer for it. Perhaps the renderer will rely on the browser and HTML (flexbox or css grid) for the flow of the objects, and then rely on the positions for the images.
This type of renderer could choose to support as much or as little of the features Atlas provides. Such as composition and layering of images:

  ...

The benefit of the upfront effort to create a renderer like this would be choices like "which image to load and show" are automatically handled - no thumbnails, we'll use the tiles. Lazy loading is handled. Events are handled in the same way. You could paint annotations etc. etc.
So the rendering output of Canvas panel and Atlas don't need to be black boxes, or single monolithic canvas elements.


Define .crest-eo for organisation_logos.

This will match the executive office crest styling to the single identity one, which will bring html publications on government-frontend more in line with the ones on whitehall.
Part of fixing this visual regression:

Relevant Trello ticket: https://trello.com/c/cJGrtnc1/286-5-html-publications-migration-front-end-work-large

Can we add a test fixture for the component to cover this case?

No automated tests to update since it's adding some additional CSS properties to a classname, but relevant documentation updated.


[ed25519] Fix number of bytes in ed25519 signature

The ed25519 library refers to the "private key" as the private and public key together.  The private key alone is referred to as the "seed".  So, this fixes it accordingly.
Additionally, fixes some consistency issues for authentication keys

I've built a huge PR on top of this one, so I'm going to push this one through, and address the documentation and error messages after that one.


Add dockerfile virtual build system

Add dockerfile virtual build system

Thanks, I will have a try when I get time on this.

这是来自QQ邮箱的假期自动回复邮件。

您好,这里是李晋南（向阳）。来信已收到。看后会尽快给你回复，谢谢

After thinking it over, I would hope not involve docker for env setup, in purpose to:

Setting env in Ubuntu is simple enough
Keep the code for this course simple.

Thank you anyway and looking for more good contribution from you.

这是来自QQ邮箱的假期自动回复邮件。

您好,这里是李晋南（向阳）。来信已收到。看后会尽快给你回复，谢谢


Link's slow down scrolling

When I have a TTTAttributedLabel with a lot of text and some links the control just dies during scrolling.  While dragging your finger just pauses badly, and once you let go it scrolls just fine.  So drawing seems to be no problem.
Instead of capturing all the touches (and doing all that hit testing), wouldn't you be better off just using a TapRecognizer?  You should only have to hit test once, not a million times.
Does that seem like a reasonable change to try?  Thanks.

That (admittedly slow) hit-testing logic attempts to reproduce Safari's fuzzy extended touch areas for links. You might try disabling extendsLinkTouchArea when the user starts scrolling and re-enabling it after.

Would just like to confirm that setting extendsLinkTouchArea to NO improves performance dramatically.

Indeed, much faster.


feat: Split long error message into 2 parts for user experience

SUMMARY

In some case, client get too long error message from BE, and this might cause overlaying error alert issue in FE. Bad User Experience.
This PR splits long error message into 2 parts, and returns message and more_message as an error.
In the frontend, we need updates to show more_message field in show more button clicking.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

Before:

Expecting:
All message below JOB ID section will be hidden by show more button.
TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Pinging @etr2460 and @dpgaspar since you might know best if this is the correct approach to generalize handling these errors (breaking them based on a line break) or if there are edge cases (e.g. other types of error messages) that may be impacted by this.


About data preprocessing

The createLineSegmentDetector function has been removed in the preprocess/ext_lineseg.py file. Do you have an alternative or can you put the processed data set on Google Cloud Drive?

I did not maintain the processed data. You may install a lower version of opencv or use cv2.ximgproc.createFastLineDetector() instead.

Thank you very much for your reply, I will try according to your tips, hope there will be a good result


NFDIV-2900: added response letter code

Change description
Enter a description.
JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/NFDIV-2900
Before merging a pull request make sure that:

[ ] tests have been updated / new tests has been added (if needed)
[ ] README and other documentation has been updated / added (if needed)

If this ticket will have any visible impact on users and is not behind a feature toggle, make sure that:

[ ] this ticket been reviewed by QA
[ ] the user story been signed off by the PO

Note that bug fixes, dependency updates and technical tasks do not directly impact the user experience and can be merged without QA and PO review.
If this user story cannot be immediately merged find a way to put it behind a feature toggle and get it merged.

build faulty


Fix governance hash

This adds vinMasternode to the governance object hash and signature to protect against a DoS vulnerability in the rate check.
Network protocol and serialization format bumped to avoid having hashes changed for existing objects.  This will flush all old governance objects from dashd.

Still not clear for me why we change GetHash() function, imo objs id (hash) should be masternode-agnostic. Can't we instead add masternode vin (vinMasternode.prevout.ToStringShort()) to the signature (i.e. append it to strMessage) and leave GetHash() as it is?

I think ID and signature should be tied together.  Otherwise you could have different objects with the same signature.  That doesn't make a lot of sense to me.
Objects signed by different MN's are distinct objects, so their hashes should be different.

If the vin isn't in the hash you could have 2 different objects with the same hash/ID one of which is valid and the other invalid.  The object propagation system is not designed to handle that kind of situation.

I hadn't thought about it before but this could also be a problem with proposals and the collateral hash, so that should also be added to the object hash.

I think ID and signature should be tied together. Otherwise you could have different objects with the same signature. That doesn't make a lot of sense to me.

Different objects will have different hashes even without vin so there is no way signatures can be the same for different data. With vin added to signatures even the same data won't produce the same signature, so I'm not sure what is the problem you are referring to.

Objects signed by different MN's are distinct objects, so their hashes should be different.

Why are they distinct? It doesn't matter who signed some data, it the very same data regardless of the signer.

If the vin isn't in the hash you could have 2 different objects with the same hash/ID one of which is valid and the other invalid. The object propagation system is not designed to handle that kind of situation.

You mean a signature of it could be valid/invalid? I think you should never keep/relay objects with an invalid signature in the first place and should apply some ban score to nodes which sent this to you. This way it also should be safe to remove the hash of such obj from seen map, so that you were able to receive the same obj with new (probably valid) signature later. And once you've got an obj with valid signature, it doesn't matter if someone is sending an obj with invalid signature, should stop processing in seen check anyway.

I hadn't thought about it before but this could also be a problem with proposals and the collateral hash, so that should also be added to the object hash.

Agree on that one.

One object could be invalid because the MN vin is invalid/non-existent.  If there is another object with the same hash but a valid MN the system will be confused, some maps may contain a valid object, others an  invalid object both with the same hash.
The rate check also is tied to MN.
If you agree this is a problem for proposals with the collateral hash it is certainly also a problem for objects signed by an MN.

An attacker could create an invalid object and use that to block a valid object from the same vin, by matching the hash (would require predicting the timestamp but that probably isn't that hard).
This could also be done by creating an invalid signature, so the signature also needs to be added to the hash, which means I'll need to rewrite the signature function to not use GetHash().

If you agree this is a problem for proposals with the collateral hash it is certainly also a problem for objects signed by an MN.

No, that's two completely different problems imo.

An attacker could create an invalid object and use that to block a valid object from the same vin, by matching the hash (would require predicting the timestamp but that probably isn't that hard).
This could also be done by creating an invalid signature, so the signature also needs to be added to the hash, which means I'll need to rewrite the signature function to not use GetHash().

No, signature is MN-depended (obviously), it can't be in hash either.
I already described the way this can be solved:

You mean a signature of it could be valid/invalid? I think we should never keep/relay objects with an invalid signature in the first place and should apply some ban score to nodes which sent this to us. This way it also should be safe to remove the hash of such obj from seen map, so that we were able to receive the same obj with new (probably valid) signature later. And once we've got an obj with valid signature, it doesn't matter if someone is sending us an obj with invalid signature, should stop processing in seen check anyway.

Attacker will be banned eventually, no matter if he matched the hash or not.

If the invalid object is seen first the valid object will be blocked and never considered.

No, signature is MN-depended (obviously), it can't be in hash either.

Why can't it be in the hash ?

If the invalid object is seen first the valid object will be blocked and never considered.

I could quote myself for the third time but please just read what I already wrote above ;) you shouldn't keep an obj with an invalid signature in any form.

No, signature is MN-depended (obviously), it can't be in hash either.

Why can't it be in the hash ?

Because signature is MN-depended... and MN has nothing to do with the data itself, it's just one of many valid signers. Actually, nTime shouldn't be in hash either, it should be moved to signature (strMessage) too.

Invalid objects are not kept but their hash is put in mapSeenGovernanceObjects.  That's part of the DoS protection otherwise millions of invalid objects could be created forcing time-consuming signature checks each time.  Hence invalid objects will block valid objects if they both have the same hash.
The design has never required that all objects with the same strData have the same hash, that case is handled by sentinel which selects the  higher hash value object to vote up.

So, again, remove the hash of obj with invalid signature from seen map and apply ban score to the peer who provided such obj - it should be banned for doing so.

The design has never required that all objects with the same strData have the same hash, that case is handled by sentinel which selects the higher hash value object to vote up.

And it's not like that in what I propose either:
    ss << nHashParent;
    ss << nRevision;
-   ss << nTime;
    ss << strData;

i.e. hash value should be defined by nHashParent + nRevision + strData
Why do we have nTime in hash (and prepare/submit commands) in the first place?

The intent of this PR is to fix the collision problems with the current hash, not to change the entire design.
I do not however agree that banning is a better solution for DoS prevention than adding invalid objects to the seen objects map.  Banning is extremely disruptive.  It would be fine if we knew all nodes had the same information and so that banned nodes really were attempting to attack the network but that is not the case and banning makes it more difficult to recover from problems.  I think we need less banning, not more.

I understand the intent but it feels like it's fixing the wrong problem. The collision problem only exists because for some reason it was designed to hold multiple copies of the same data signed by different signers. And I still don't see why it was designed the way which puts additional pressure on network... Or am I misunderstanding it and duplicates are voted for removal by sentinel and should be flushed from dashd soon-ish after that at some point?

Normally sentinel shouldn't be creating duplicate objects in the first place since there is an election process which selects a single MN to submit the trigger for each superblock.
We have seen some duplicates in the past but I think they were created due to object propagation issues or other bugs.  By design they shouldn't exist.

The reason masternode information is included in the object is to support the rate check mechanism which prevents rogue masternodes from flooding the network with objects.  Banning would be an alternate way of handling that problem but the system was originally designed to ban/block objects rather than nodes.

It looks like a need to revert adding the collateral tx hash to the govobj hash because the collateral tx encodes the govobj hash in the blockchain, so there is a recursive dependency.
This means there will still be a vulnerability that might allow a proposal to be blocked by submitting an invalid object with the same hash.  But that is hopefully only a minor vulnerability because the correct proposal could be resubmitted with a different payment address.


bootstrap still not working, graphviz is missing, No package 'libffi' found (ubuntu 15.04)

...
Package libcgraph was not found in the pkg-config search path.
Perhaps you should add the directory containing libcgraph.pc'     to the PKG_CONFIG_PATH environment variable     No package 'libcgraph' found     Package libcgraph was not found in the pkg-config search path.     Perhaps you should add the directory containing libcgraph.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcgraph' found
Trying pkg-config
Trying dotneato-config
Failed to find dotneato-config
Your Graphviz installation could not be found.

....
after installing graphviz and graphviz-dev manually, it still does not find libffi:
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libffi' found
Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libffi' found
Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libffi' found
Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libffi' found
Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libffi' found

reading the wiki helps a lot.


feat: add main unit tests for compose helper util

Related to #4

Thanks for the review @jatinkrmalik I will make the changes soon!


update mate.yaml to skip ppc64le

update mate.yaml to skip ppc64le

I want to add this pr under #30, I'm sorry not familiar with github, can the administrator modify it?

@conda-forge-admin please rerender

@conda-forge-admin please rerender, or would you like to tell me any suggesions for modifying this PR?


renaming or deleting a component causes Failed to compile

The issue is narrowed to the scenario if the component A is imported and used in component B, and then renaming Component A to Component A1, the old name A is still available in component B and it causes the failure compilation. The same issue happens when the component A is deleted.

Thanks @legiaquangvn for reporting this. It's a known issue for now. Renaming an element only updates names for the element itself but not at the places it's used. This could be enhanced to update all references.
Deleting an element is similar, but references are not able to be auto deleted because Rekit doesn't know how it's used. It will cause compile error.

Thanks @Serexx for the comment! Renaming all references is a reasonable requirement indeed. I will address it soon.
However, it should not need to restart dev server after refactoring the code. Could you give an example to reproduce? The dev server is just the same with which of Create React App.

For the moment I've moved on and time is an issue and tbh I was working with a number of things at once, seeing how things worked, so its quite possible that I caused it in another way - on reflection I think I'd leave it unless someone else reports it - thanks for all the work on Rekit, looking forward to seeing it evolve!


Typing error using hierarchical custom __init__

Initial Checks

[X] I have searched GitHub for a duplicate issue and I'm sure this is something new
[X] I have searched Google & StackOverflow for a solution and couldn't find anything
[X] I have read and followed the docs and still think this is a bug
[X] I am confident that the issue is with pydantic (not my code, or another library in the ecosystem like FastAPI or mypy)

Description
Using mypy v1.1.1, found a typing error using a hierarchical  custom __init__ that constructs the object using positional arguments:
Too many positional arguments for "MidleClass"  [misc]mypy(error) (example below)
mypy version:
$ poetry show mypy
 name         : mypy
 version      : 1.1.1
 description  : Optional static typing for Python

dependencies
 - mypy-extensions >=1.0.0
 - tomli >=1.1.0
 - typing-extensions >=3.10

pyproject.toml:
[tool.mypy]
strict = true
files = "src"
mypy_path = "src/"
namespace_packages = true
explicit_package_bases = true
follow_imports = "silent"
ignore_missing_imports = true
exclude = "(resources/.*)"
plugins = ["pydantic.mypy"]

[tool.pydantic-mypy]
init_forbid_extra = true
init_typed = true
warn_required_dynamic_aliases = true
warn_untyped_fields = true

Example Code
from typing import Any

from pydantic import BaseModel

class BaseClass(BaseModel):
    a: str
    b: int

    def __init__(self, *args: Any, **kwargs: Any) -> None:
        if len(args) == 2:
            kwargs = {"a": args[0], "b": args[1]}
        super().__init__(**kwargs)

class MidleClass(BaseClass):
    pass

x = BaseClass("a", 1)  # ok
y = MidleClass("a", 1)  # nok 'Too many positional arguments for "MidleClass"  [misc]mypy(error)'

Python, Pydantic & OS Version
pydantic version: 1.10.7
            pydantic compiled: True
                 install path: /workspace/.venv/lib/python3.9/site-packages/pydantic
               python version: 3.9.16 (main, Jan 11 2023, 15:55:30)  [GCC 10.2.1 20210110]
                     platform: Linux-<IP_ADDRESS>-microsoft-standard-WSL2-x86_64-with-glibc2.31
     optional deps. installed: ['typing-extensions']

Affected Components

[ ] Compatibility between releases
[ ] Data validation/parsing
[ ] Data serialization - .dict() and .json()
[ ] JSON Schema
[ ] Dataclasses
[ ] Model Config
[ ] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - construct(), pickling, private attributes, ORM mode
[X] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

The pydantic plugin for mypy defines a custom init that is used to override the default. While we could potentially attempt to introspect and see if a user-defined __init__ is present, I'm not inclined to make that change for two reasons:

First, all work on the plugin has a fairly high maintenance cost. A future version of mypy could change how things work and we'd have to put a bunch of effort into keeping it working properly.
Second, we're (at least tentatively) planning to remove support for custom __init__ in v2 anyway. (Doing otherwise would have significant negative performance implications, and this is pretty rare.)

If you just want to be able to instantiate your model with positional arguments, have you considered using the @pydantic.dataclasses.dataclass decorator?

We have a lot of such use cases in our codebase, unfortunately this is mostly legacy code but that is still in active use. It looks like we will have to add a lot of # type: ignore all over that codebase.
@dmontagu can you tell us more about removing custom __init__ from v2 and what the timeline is for v2?

Timeline for v2 #4887.
The point with __init__ is that it's not called when models are used within another model (e.g. as a field), or when loading data via model_validate() (née parse_obj) or model_validate_json (née parse_raw).
Instead (implemented in rust as part of pydantic-core) the logic is as follows:

optionally parse the input JSON
iterate over the input object validating it and constructing the dict to become model.__dict__ and the set to become model.__fields_set__ - note the input data here can be a simple dict, or a mapping, or any object to extract attributes from using from_attributes, or a raw rust mapping holding data from json parsing
instantiate a new instance of the model using tp_new
use setattr to set __dict__ and __fields_set__
optionally call __post_init__, see below

The logic for constructing the model is here.
The logic for validating __dict__ and __fields_set__ reuses is here.
The high level point is this:

if we set __init__ to take already validated data, the most common interface for validation MyModel(**untrusted_data) would suddenly stop running validation! This would be too severe a breaking change, and would IMHO make pydantic less simple to use
but we can't pass untrusted_data to __init__ since in many scenarios it can't be unpacked using **

Alternatives in V2:

we're adding a __post_init__ method which, if defined is called after the model has been created
root validators, include wrap validators give you a way to access the input data, catch exceptions, do stuff with the created model - effectively everything you could do with __init__.

@marcelopgc Could you please give us an update on this as Pydantic V2 is out already? Have you had a chance to try Pydantic V2 for your use case? Have you started migrating?

Closing this for now as Pydantic v2 provides a number of alternatives to use of custom __init__ method.
A PR improving the mypy plugin would be welcomed.


Make OSDF test for StatHTTP

Has 2 pelican:// tests for now and need to change one to be an osdf test. Waiting for a #878 merge to do this

This is done already:
https://github.com/PelicanPlatform/pelican/blob/b8040c0ab6a2475f0879f2885aa2885bf9606995/client/fed_test.go#L422-L439


Dynamic slot name Template error: Type 'QTableSlots' has no matching index signature for type 'string'.ts-plugin(2537)

Vue - Official extension or vue-tsc version
2.0.28
VSCode version
1.91.1
Vue version
3.4.29
TypeScript version
5.4.5
System Info
No response
Steps to reproduce
As of version 2.0.28 of Vue Official, we get the following syntax highlighting if we use a dynamic slot name. In this case it is for QTableSlots of the Quasar Component Library.
<template #[`body-cell-${actionsKey}`]="data">

What is expected?
No syntax highlighting as described in https://vuejs.org/guide/components/slots.html#dynamic-slot-names
What is actually happening?
Syntax highlighting and error in Problems window. When using Vue Official 2.0.26 this error does not occur.
Link to minimal reproduction
No response
Any additional comments?
No response

Regression from https://github.com/vuejs/language-tools/pull/4478
Test case
main.vue
<template>
  <Child>
    <template #[`action${n}`]="data">
      {{ exactType(data.a, {} as string) }}
    </template>
    <template #[`action2`]="data">
      {{ exactType(data.a, {} as string) }}
    </template>
  </Child>
</template>
<script lang="ts" setup>
import { exactType } from 'tsc/shared'
import Child from './child.vue'

const n = 1 as const
</script>

child.vue
<template></template>

<script lang="ts" setup>
defineSlots<{
  action1: (props: { a: string }) => void
  action2: (props: { a: string }) => void
}>()
</script>

Opened #4669 for the type problem.
About the syntax highlighting problem, I think the current behavior is expected:

IMO, syntax highlighting should be as error-tolerant as possible
complex expression is actually supported in SFC: example

That worked for me.
function getSlotName(name: string): `body-cell-${string}` {
  return `body-cell-${name}` as unknown as `body-cell-${string}`;
}

That worked for me.
function getSlotName(name: string): `body-cell-${string}` {
  return `body-cell-${name}` as unknown as `body-cell-${string}`;
}

This can be simplified to:
function getSlotName(name: string) {
  return `body-cell-${name}` as const;
}

This works fine! Thanks!

After 2.1.0 release this is now fixed. No need for the workaround above anymore.
<template #[body-cell-${actionsKey}]="data">


adding routines for better performance of NP

Type
enhancement

Description

Introduced goroutines to handle the generation of ingress and egress rules in parallel, improving the performance of the network policy generation process.
Imported the sync package and declared a sync.WaitGroup variable wg at the global scope.
In the GenerateNetworkPolicy function, goroutines are created for each ingress and egress neighbor, and the wg.Add(1) and wg.Done() calls are used to manage the wait group counter.
Added a wg.Wait() call to block until all goroutines have finished their execution.

PR changes walkthrough
Relevant files                                                                                Enhancement1 files

networkpolicy.go

        pkg/apis/softwarecomposition/networkpolicy/networkpolicy.go
The changes in this file are focused on improving the performance of the network policy generation process. This is achieved by introducing goroutines to handle the generation of ingress and egress rules in parallel. A sync.WaitGroup is used to ensure all goroutines complete their execution before proceeding. The sync package is imported and a sync.WaitGroup variable wg is declared at the global scope. In the GenerateNetworkPolicy function, goroutines are created for each ingress and egress neighbor, and the wg.Add(1) and wg.Done() calls are used to manage the wait group counter. Finally, a wg.Wait() call is added to block until all goroutines have finished their execution.

 +41/-26

User description
adding routines for better performance of NP

We see the generating is very fast, is there is no need to add routines


Are those code repeated?

FileConfigurationExtensions.cs#L46)
this could be better?
if (builder.Properties.TryGetValue(FileProviderKey, out object provider))
{
     return provider as IFileProvider;
}

same as FileConfigurationExtensions.cs#L104

If you feel strongly about this, you're welcome to submit a PR


NATS reloader container causes the keptn-nats-cluster-0 pod to fail

When installing Keptn, it occurs that the NATS reloader container causes the keptn-nats-cluster-0 pod to fail.
Since the Keptn Helm Chart for installing Keptn just references the NATS Helm Chart, it is not possible to control this.
Workaround:
However, a workaround is to deploy Keptn with Helm and to set the control-plane.nats.reloader=false
Task:

Provide documentation here https://keptn.sh/docs/0.8.x/operate/advanced_install_options/#advanced-install-options-install-keptn-using-the-helm-chart that explains who to disable the reloader

With #6322, we disable the reloader by default. I am closing the issue.


Upgrade dependencies, fixes in Readme file

Just a small cleanup 😸
Feel free to merge if you find it useful.

thanks!


Remove internal flag on parent profile property

XRTK - Mixed Reality Toolkit Pull Request
Overview
Removed the internal keyword on the BaseMixedRealityProfile.ParentProfile property setter. This was necessary to be able to set parent profiles  in code that lives in another assembly.

What was the purpose of making it internal? Please see https://github.com/XRTK/Examples/pull/46 for use case.

Please use  use InternalsVisibleTo() assembly attribute instead of making the setter public

Done


wrong answer on LinkCheckReq

Describe the bug
I have an object that sends SF7 uplink to SF12 to test the network with LinkCheckReq.
I expect a LinkCheckAns downlink in return but i receive DevStatusAns, this is the wrong message.
Expected behavior
downlink LinkCheckAns on uplink LinkCheckReq
downlink DevStatusAns on uplink DevStatusReq
Device Info (please complete the following information):

Environment Production
Console Device ID : 0c6fcd0e-bb3a-4c73-8a1a-00b48198cb89
Device dev eui 20635F0102000E97
Hotspots (names) used to transfer data : boxy-quartz-pheasant

Lorawan spécification :

the message DevStatusAns is send by device, not by gateway.


KotlinTest not harmonious with IntelliJ IDEA

Writing KotlinTest tests in IntelliJ editor works fine. Executing individual KotlinTest files in IntelliJ runs the tests. However trying to run "All Tests" in the test module of an IntelliJ IDEA project with KotlinTest tests results in no tests being found.

It seemed to work for me and these are just standard jUnit tests under the hood. @helmbold does it work for you ?

It works fine here. The only thing I'm missing is the possibility to run a single test method, but I guess that this would require a KotlinTest plug-in for IntelliJ.

Here's an hypothesis: @sksamuel and @helmbold have their tests in the same directory as the source being tested and created their projects using IntelliJ IDEA whereas I have the standard Gradle project structure with source in src/main/kotlin and tests in src/test/kotlin using an IntelliJ IDEA project generated from the Gradle project.

Let's use KotlinTest itself as an example: it has the code separated from tests (src/main/kotlin and src/test/kotlin). It works on my machine.

Me too. In the left hand side "project" pane, I right click on src/test/kotlin (the green icon) and choose "run all tests". Works fine. Is that what you're doing Russel

Part of the hypothesis failed then: file system and module structure not the issue. Run "gradle test" and all the tests run. Run the files individually in IntelliJ IDEA and they run. Right click on package or module and "No tests found". Recreating the project from scratch leads to the same position. Are you both creating projects with the built in Kotlin support rather than with Gradle, if so the the remaining hypothesis is that the Gradle plugin is doing something really weird.

I go to file -> new project from existing sources -> ... import from gradle
I'm running intellij 16 community.
On 21 June 2016 at 08:51, Russel Winder<EMAIL_ADDRESS>wrote:

Part of the hypothesis failed then: file system and module structure not
the issue. Run "gradle test" and all the tests run. Run the files
individually in IntelliJ IDEA and they run. Right click on package or
module and "No tests found". Recreating the project from scratch leads to
the same position. Are you both creating projects with the built in Kotlin
support rather than with Gradle, if so the the remaining hypothesis is that
the Gradle plugin is doing something really weird.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kotlintest/kotlintest/issues/39#issuecomment-227366309,
or mute the thread
https://github.com/notifications/unsubscribe/AAtZGnjLcdoDDjBCwgWZcNb5R22UtRocks5qN5f4gaJpZM4I4_0B
.

on Linux.
On 21 June 2016 at 08:52, Stephen Samuel (Sam<EMAIL_ADDRESS>wrote:

I go to file -> new project from existing sources -> ... import from gradle
I'm running intellij 16 community.
On 21 June 2016 at 08:51, Russel Winder<EMAIL_ADDRESS>wrote:

Part of the hypothesis failed then: file system and module structure not
the issue. Run "gradle test" and all the tests run. Run the files
individually in IntelliJ IDEA and they run. Right click on package or
module and "No tests found". Recreating the project from scratch leads to
the same position. Are you both creating projects with the built in Kotlin
support rather than with Gradle, if so the the remaining hypothesis is that
the Gradle plugin is doing something really weird.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kotlintest/kotlintest/issues/39#issuecomment-227366309,
or mute the thread
https://github.com/notifications/unsubscribe/AAtZGnjLcdoDDjBCwgWZcNb5R22UtRocks5qN5f4gaJpZM4I4_0B
.

I am running 2016.2 EAP and use the import route it should do the same thing…

@russel Maybe you should file an issue, since it looks like some IntelliJ bug. Could you try IntelliJ 2016.1?

Did you get this sorted  @russel

I see the same behavior as @russel, so I opened https://youtrack.jetbrains.com/issue/IDEA-158136.

@mfriedenhagen Thanks for that, I have voted. Sorry for not acting myself, I have been writing a document and avoiding as much as possible. Document submitted this morning, so no I can get back to doing stuff. Which will probably be kotlinx.maths code using KotlinTest tests.

I got the same issue on elementaryOS, IDEA 2016.2 EAP. Here a screenshot of runing all test in this repo's master: https://www.dropbox.com/s/k1c5bsd3e0yfcov/Screenshot_2016-07-11_16.50.10.png

ah, just found a workaround by learning from Spek code: adding @RunWith() to our test class:
@RunWith(KTestJUnitRunner::class)
class FlatSpecExample : FlatSpec() {
    init {
        "String.length" should "return the length of the string" {
            "sammy".length shouldBe 5
            "".length shouldBe 0
        }
    }
}

and then our test class will be picked up by IDEA's Junit Runner

Aha. the @RunWith thing is working for me.

Well, TestBase is annotated with the RunWith, so this seems not to propagate.

I think I've fixed it (for 2.0 and 1.3). Could you verify it please, @russel , @mfriedenhagen , @hoangtranwork ?

Is there a released version of KotlinTest available with the fix.
(This would be amazingly useful for session at the LJC Open Conference on Saturday 2016-11-26.)

I'll do a release tomorrow night. Remind me :)
On 24 Nov 2016 5:13 p.m., "Russel Winder"<EMAIL_ADDRESS>wrote:

Is there a released version of KotlinTest available with the fix.
(This would be amazingly useful for session at the LJC Open Conference on
Saturday 2016-11-26.)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kotlintest/kotlintest/issues/39#issuecomment-262820126,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAtZGn3gh6bESL7JuMXxtlxCoETUjiH3ks5rBcXUgaJpZM4I4_0B
.

Since nobody reports any issues with my solution, I close it now.

@helmbold As I failed to remind @sksamuel to do a release to test, I haven't actually tested. But the opportunity I had for last Saturday has gone, and went differently to expected. People did though get a blast of proposition based testing and because I have no idea if it is sensible using the various Java/JUnit ports of QuickCheck, I showed using Kotlin and KotlinTest. Speks got a mention from the audience. Hopefully people spotted that Kotlin is way nicer than Java.

@russel It is great that you did something to improve our visibility!

I still need @RunWith(KTestJUnitRunner::class)
Idea 2016.3.1
Kotlin 1.1 m03
kotlintest 1.3.5

Thanks for the feedback, @elect86 . This issue is fixed in 2.0 (dev) only at the moment. We should get this release finally out of the door!

For anyone who arrives at this issue via searching for solutions the problem, as I did, a humble reminder: if you added the test/kotlin directory by hand, don't forget that you have to do "Mark directory as test root."


Fix typo in custom structures documentation

Fix an unfortunate typo in the documentation for creating custom structures.

Sometimes the GitHub UI is hard.


⚠ Samsung has degraded performance

In 6729650, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2282 ms

Resolved: Samsung performance has improved in f80bd67.


Recommend async and defer attributes for embed.js script tag?

I was checking out the Factlink.com "on your site" story:
https://factlink.com/on-your-site#on-your-site-other-platforms
And noticed that their embed code includes async and defer attributes on script tags.
Both have wide browser support:
http://caniuse.com/#feat=script-defer
http://caniuse.com/#feat=script-async
Factlink also suggests putting their script tag "near the top of your document"--which is made possible by using these attributes.
I realize developers may know about them, but they're also really good at copy / paste, so...might be good to just include them regardless.
@hypothesis/developers thoughts?

.

Done:
https://github.com/hypothesis/wordpress-theme-hypothesis/commit/c42691e92cb82aafc5dc26924eb9c9e961c3cb92

Cool. Feel free to deploy it.

make zip
upload to wordpress

Bump the version number, too (git tags).

Looks like Makefile stuff go pwnd during the upgrade. @RawKStar77 may know more.
There's no _style.css any longer (for instance).
I did tag a release:
https://github.com/hypothesis/wordpress-theme-hypothesis/releases/tag/v2.0.1
My guess is that I could use the .zip file from GitHub, but would like to not be the one to test that. :wink:
@RawKStar77 if you still have a demo EC2 up, mind checkin' this change and publishing?

Looks like Jake didn't follow the readme or he would have noticed this and he would have pushed a tag.
Naughty Jake!


I've got a proplem with protractor

I try to run End to End test npm run protractor. As a result I get error. This is a log:
0 info it worked if it ends with ok
1 verbose cli [ 'C:\Program Files\nodejs\node.exe',
1 verbose cli   'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'protractor' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose node symlink C:\Program Files\nodejs\node.exe
5 verbose run-script [ 'preprotractor', 'protractor', 'postprotractor' ]
6 info preprotractor<EMAIL_ADDRESS>7 verbose unsafe-perm in lifecycle true
8 info protractor<EMAIL_ADDRESS>9 verbose unsafe-perm in lifecycle true
10 info<EMAIL_ADDRESS>Failed to exec protractor script
11 error<EMAIL_ADDRESS>protractor: protractor test/protractor-conf.js
11 error Exit status 8
12 error Failed at the<EMAIL_ADDRESS>protractor script.
12 error This is most likely a problem with the angular-phonecat package,
12 error not with npm itself.
12 error Tell the author that this fails on your system:
12 error     protractor test/protractor-conf.js
12 error You can get their info via:
12 error     npm owner ls angular-phonecat
12 error There is likely additional logging output above.
13 error System Windows_NT 6.2.9200
14 error command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "run" "protractor"
15 error cwd E:\Users\User\Documents\NetBeansProjects\angular-phonecat
16 error node -v v0.10.26
17 error npm -v 1.4.3
18 error code ELIFECYCLE
19 verbose exit [ 1, true ]
What's the problem?

I faced a similiar problem below:
Starting selenium standalone server...
[launcher] Running 1 instances of WebDriver
[launcher] Process exited with error code 1
events.js:141
throw er; // Unhandled 'error' event
^
Error: spawn java ENOENT
at exports._errnoException (util.js:870:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32)
at onErrorNT (internal/child_process.js:344:16)
at nextTickCallbackWith2Args (node.js:441:9)
at process._tickCallback (node.js:355:17)

Unfortunatly problem wasn't be solved. In addition to those error I had an exception:
Error: Server terminated early with status 1
at Error ()
at E:\Users\User\Documents\NetBeansProjects\angular-phonecat\node_modules\protractor\node_modules\selenium-webdriver
\remote\index.js:204:18
at promise.ControlFlow.runInFrame_ (eval at  (E:\Users\User\Documents\NetBeansProjects\angular-phonecat\n
ode_modules\protractor\node_modules\selenium-webdriver\lib\goog\base.js:1124:19), :1857:20)
at goog.defineClass.notify (eval at  (E:\Users\User\Documents\NetBeansProjects\angular-phonecat\node_modu
les\protractor\node_modules\selenium-webdriver\lib\goog\base.js:1124:19), :2448:25)
at promise.Promise.notify_ (eval at  (E:\Users\User\Documents\NetBeansProjects\angular-phonecat\node_modu
les\protractor\node_modules\selenium-webdriver\lib\goog\base.js:1124:19), :564:12)
at Array.forEach (native)
at promise.Promise.notifyAll_ (eval at  (E:\Users\User\Documents\NetBeansProjects\angular-phonecat\node_m
odules\protractor\node_modules\selenium-webdriver\lib\goog\base.js:1124:19), :553:15)
at goog.async.run.processWorkQueue [as _onTimeout] (E:\Users\User\Documents\NetBeansProjects\angular-phonecat\node_m
odules\protractor\node_modules\selenium-webdriver\lib\goog\async\run.js:130:15)
at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)

Same here. I found the solution from this issue. In test/protractor-conf.js replace chromeOnly: true, by directConnect: true,.

I had the same problem with ubuntu 16.04, i found that i have to install java (i did install the openjdk: sudo apt-get install openjdk-8-jre and then it worked)

@rarspace01  maybe compiling java manually is a more good choice rather han using sudo apt-get install

Had the same problem on Ubuntu 16.04, per @rarspace01 's recommendation, installing java fixed it for me:
$ sudo apt-get update
$ java -version                 (to make sure java wasn't already installed)
$ sudo apt-get install default-jre

sudo apt-get install default-jre does not seem to be working


Remove React and Ink from wrangler dev

As a follow up to #2283, this will involve removing React from the wrangler dev codepath.

this is being addressed by the startDevWorker work (fully captured by internal ticket SHIP-8231, first milestone in progress here: https://github.com/cloudflare/workers-sdk/pull/4413, https://github.com/cloudflare/workers-sdk/pull/3960)


[Security] : Setup security for whole project

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."


3.1.2 - Uncaught ReferenceError: module is not defined

Now upgraded to 3.1.2 after #251 . Further issues encountered:
If i do not include permission.ng I now get:
Now getting:

Uncaught ReferenceError: module is not defined in the following:
angular-permission.js:19
angular-permission-ui.js:161
angular.js:68 Uncaught Error: [$injector:unpr] Unknown provider: TransitionPropertiesProvider <- TransitionProperties

If I include permission.ng
Now getting:

Uncaught ReferenceError: module is not defined in the following:
angular-permission.js:19
angular-permission-ng.js:102
angular-permission-ui.js:161
angular.js:4524 Uncaught Error: [$injector:unpr] Unknown provider: TransitionPropertiesProvider <- TransitionProperties

The reference errors point to the use of module:
  if (angular.isDefined(module)) {
    module.exports = uiPermission.name;
  }

Additionally if I include permission.ng I am required to install ngRoute which I don't normally use as I use angular-ui-router. Please can you confirm what is required as the documentation seems stale?

@masterspambot please can you confirm you want me to downgrade to 2.1.3 ? That seems quite a while back? Not 2.3.8 ?


[Proposal][tool] Add Flutter version to project template pubspec

Use case
Developers that work together on Flutter projects might run into Flutter version conflicts.
To alleviate this issue, the Flutter version can be specified in the pubspec, using flutter: <version constraint>
Proposal
Specify flutter: '>= {{currentFlutterVersion}}' in the project pubspec.yaml template.
I.e. in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/templates/app/pubspec.yaml.tmpl

Since I am familiar with this part of the tool, I'll write a fix for it.

@mit-mit do you have opinions about this?

@navaronbracke actually, since the Dart SDK version will certainly roll in between different Flutter SDK versions, setting a lower bound on the Dart SDK essentially also sets a lower bound for the Flutter SDK. Or is there some situation where this would not be sufficient?

@navaronbracke actually, since the Dart SDK version will certainly roll in between different Flutter SDK versions, setting a lower bound on the Dart SDK essentially also sets a lower bound for the Flutter SDK. Or is there some situation where this would not be sufficient?

Yeah, I was also thinking that that would be sufficient. However, I had seen an issue on my end where person A was locally running Flutter 3.16 and person b was running Flutter 3.13, while the pubspec of their project listed sdk: '>=3.0.0 <4.0.0' and no Flutter constraint. (so I assume theDart SDK lower bound never changed)
Due to the TextScaler change in Flutter 3.16, person b hit a compilation error (which is expected).
Personally I think that
a) being able to manually set the flutter: constraint isn't being advertised (enough?) as a possible option
b) people tend to forget that they should update their lower bound on the Dart SDK when upgrading Flutter in their projects,
merely because "they don't specifically need new Dart features", but they do want the new Flutter features that are enabled by updating the minimum.
c) the fact that you can pin the Flutter version in two ways (both with the Dart SDK bound, or explicitly), gives users different ways to do the same thing, which might lead to some confusion

@navaronbracke actually, since the Dart SDK version will certainly roll in between different Flutter SDK versions, setting a lower bound on the Dart SDK essentially also sets a lower bound for the Flutter SDK. Or is there some situation where this would not be sufficient?

Yeah, I was also thinking that that would be sufficient. However, I had seen an issue on my end where person A was locally running Flutter 3.16 and person b was running Flutter 3.13, while the pubspec of their project listed sdk: '>=3.0.0 <4.0.0' and no Flutter constraint. (so I assume the Dart SDK lower bound never changed)

The Dart SDK version DID change between Flutter 3.13 and 3.16, the issue here is that this project was likely created with an even older Flutter SDK, I'm guessing version 3.10.0 (see https://docs.flutter.dev/release/archive?tab=linux). Your proposed fix would not have avoided this issue.

c) the fact that you can pin the Flutter version in two ways (both with the Dart SDK bound, or explicitly), gives users different ways to do the same thing, which might lead to some confusion

I agree that two different ways to do this is confusing, and thus I would prefer we rely on the Dart SDK constraint. Unfortunately, I don't think also pinning the Flutter SDK version is the correct approach, so I am going to close this issue.


New Format starting Fall 2017?

Haven't heard a lot of details about this, but I heard it mentioned today that there's a new format that Grad Division wants going forward (something about all page numbers now being bottom-centered).  Apparently the new format is not required yet (and AFAICT, the formatting guide has yet to be updated), but this will be something to be aware of going forward.

According to https://grad.ucsd.edu/progress/dissertation-thesis.html,
"New margin and pagination requirements are in effect beginning Fall 2017"
however
"Dissertations/theses already formatted according to the 2016-2017 manual will be accepted only through Fall 2017 (final appointment must be completed by December 15, 2017"
So if you're using the old formatting you're OK if you have you're final appointment by December 15, 2017. Regardless, this repository should get updated.
The new requirements can be found at:
https://grad.ucsd.edu/_files/academic-affairs/Dissertations_Theses_Formatting_Manual_17-18.pdf

The pagination change (centering) was just merged (yay!). Any other needs here?

TBH, I submitted already, so I qualified for the old formatting rules and don't have any familiarity with the new rules.  Hopefully @devinplatt or someone else can chime in.

I added the pagination change, will put in the margin changes today :)

#8
Hi,
It seems like the latex is broken when imported to sharelatex or overleaf. Can somebody help here?
I have reference the issue above.
Thanks.

@jnussbac any chance you can push up a PR with the margin changes and get us to zero open issues? :)

The needed modifications are in ucsd.cls lines 1579 (plain should be thesis) and a close bracket in line 1585.

done


Claim Pages

Describe the feature you would like to request
We need 3 claim pages but ideally the user has only 1 type of link.
Example:
keypom.xyz/claim/[some_secret_key]
From the /claim route, the secret key should be loaded into the SDK (getDropInformation)
keypom-js v1.2.0-rc.1
https://github.com/keypom/keypom-js/blob/f5307c147b5bd5aad7992807bfc74f56e2668682/src/lib/views.ts#L280
You will get dropInformation
https://github.com/keypom/keypom-js/blob/6f63de79257c6a35d2d8f8abf875ddae4d5243a4/src/lib/views.ts#L251
And then you can re-route the user to the specific drop page based on the drop information.
suggest top level routes:
/claim-token
/claim-nft
/claim-ticket
Acceptance Criteria
TBD

[ ] Criteria 1
[ ] Criteria 2

Some questions:

What would the /claim page looks like? Currently, we have /claim/ticket /claim/nft and /claim/token to preview the possible final page of each claiming type based on the Figma.
on /claim/ticket, you can see on the repo that we have a folder with [id].tsx in it. this [id] can be loaded simply with useRouter to access the [secret_key] part of the endpoint.

i have a suggestion on the top level routes. What if we keep it to /api/claim and let the [token, nft, ticket] as a param instead? i.e., /api/claim/[some_secret_key]?type=token

We were hoping to "infer" the type, because the user might end up at our /claim route from another application creating a drop link.
But we can use this for now and add the inference later and drop the URL query params.

hi guys, can i check with you where can I get the drop_id to test the getDropInformation API?
thankss


feat: Android updates for Windows and androidVersionCode output

Changes

Create android keystore on windows when available
Output android version code

Needs https://github.com/game-ci/documentation/pull/349
Checklist

[x] Read the contribution guide and accept the code of conduct
[x] Readme (updated or not needed)
[x] Tests (added, updated or not needed)

Codecov Report

Merging #478 (78f5a2e) into main (2a32a9d) will decrease coverage by 0.02%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #478      +/-   ##
==========================================
- Coverage   36.61%   36.58%   -0.03%
==========================================
  Files          72       72
  Lines        2734     2736       +2
  Branches      507      507
==========================================
  Hits         1001     1001
- Misses       1731     1733       +2
  Partials        2        2

Impacted Files
Coverage Δ

src/model/output.ts
66.66% <0.00%> (-33.34%)
:arrow_down:


missing reduce dependency import

If you try to run prometheus_couchbase_exporter inside the docker image python:3.6.4-alpine the reduce method used on the _dot_get method is not defined. You need to include the import

from functools import reduce

Hi @brunorene
Thanks for your feedback. This package was updated to 1.0.3 version.


thread '' panicked at 'called Result::unwrap() on an Err value: Error("EOF while parsing a value", line: 1, column: 0)'

thread '' panicked at 'called Result::unwrap() on an Err value: Error("EOF while parsing a value", line: 1, column: 0)', src\lib.rs:124:23
line 124:
let json_obj: Value=serde_json::from_str(s.as_str()).unwrap();

@kematy That is intended behaviour?
There are a number of issues here, most important one being that you are using serde_json, rather than serde_json_core (different crate, https://github.com/serde-rs/json)
You are calling unwrap() on an error type, causing a panic.
The reason it returns an error, seems to be that you are attempting to parse invalid JSON, though this is just a guess without knowing the contents of s.as_str()

Closing this with reference to above comment about it being a user error.
Feel free to re-open if this is still an issue.


Adding some more help text

@homeyer Both @margaretrms and I worked on some minor text changes to make instructions clearer and hopefully cut down on user error or confusion when getting set up (less support needs).
Three things here:

try to get folks to know all team members before team creation
explain gotchas of adding team members
explain the invitation process and how it has to be accepted first

I don't know if there's a fast way to deploy this in Slack and test it out and make sure it doesn't break. 😬


ESP32-S3 Linker Source Snippets does not work for SPIRAM Relocations

Describe the bug
It is not possible to relocate data to the SPIRAM using the CMake linker snippets such as:
# in app CMakeLists.txt
zephyr_linker_sources(RAM_SECTIONS spiram_noinit_relocations.ld)

# File:  spiram_noinit_relocations.ld
SECTION_PROLOGUE(spiram_noinit_relocations, (NOLOAD), ALIGN(4))
{
    *net_pkt.c.obj(.noinit .noinit.*)
} > ext_ram_seg

The reason for this is that the SPI Flash (DROM) and SPI RAM (DRAM) both share a 32MB address space and different combinations of SPI Flash and SPIRAM can be fitted.  In Zephyr 3.6 with the EspressIf HAL v5.1, the linker descriptor soc/espressif/esp32s3/default.ld maps both of these sections to the DROM_SEG_ORG and then later in the file, the address of the  .ext_ram.dummy dummy is shifted to the end of the SPI Flash contents.
This means that anything defined in snippets-ram-sections.ld will included before the  .ext_ram.dummy section and will therefore be located at DROM_SEG_ORG instead of DROM_SEG_ORG + sizeof(Flash Data).
Here is a summary of the soc/espressif/esp32s3/default.ld file:
  drom0_0_seg(R):  org = DROM_SEG_ORG, len = DROM_SEG_LEN
#if defined(CONFIG_ESP_SPIRAM)
  ext_ram_seg(RWX): org = DROM_SEG_ORG, len = CONFIG_ESP_SPIRAM_SIZE - 0x40
#endif
. . .
  #include <snippets-ram-sections.ld>
. . .
  /* this will capture any remaining .noinit items, so "snippets-ram-sections.ld" must be included before this section.
  .dram0.noinit (NOLOAD):
  {
    . = ALIGN(4);
    *(.noinit)
    *(.noinit.*)
    . = ALIGN(4) ;
  } GROUP_LINK_IN(RAMABLE_REGION)
. . .
#if defined(CONFIG_ESP_SPIRAM)

  .ext_ram.dummy (NOLOAD):
  {
    . = ORIGIN(ext_ram_seg) + (_rodata_reserved_end - _flash_rodata_dummy_start);
    . = ALIGN (CACHE_ALIGN);
  } GROUP_LINK_IN(ext_ram_seg)

  /* This section holds .ext_ram.bss data, and will be put in PSRAM */
  .ext_ram.bss (NOLOAD) :
  {
    _ext_ram_bss_start = ABSOLUTE(.);
    *(.ext_ram.bss*)
    . = ALIGN(4);

    _spiram_heap_start = ABSOLUTE(.);
    . = . + CONFIG_ESP_SPIRAM_HEAP_SIZE - (_spiram_heap_start - _ext_ram_bss_start);
    . = ALIGN(4);

    _ext_ram_bss_end = ABSOLUTE(.);
  } GROUP_LINK_IN(ext_ram_seg)

#endif /* CONFIG_ESP_SPIRAM */

I am not aware of any other way to force the linker to match the items later.  The only solution I can think of is to go back to the solution used in Zephyr 3.5 which placed the SPIRAM at the end of the segment.
See the following discussions for additional details:

https://discord.com/channels/720317445772017664/1250370791313248286
https://discord.com/channels/720317445772017664/883444902971727882/1250695683338666089

To Reproduce
In application CMakeLists.txt:
zephyr_linker_sources(RAM_SECTIONS spiram_relocations.ld)
In spiram_relocations.ld:
SECTION_PROLOGUE(spiram_noinit, (NOLOAD), ALIGN(4))
{
    *net_pkt.c.obj(.noinit .noinit.*)
} > ext_ram_seg

Build the image and filter based upon net_pkt objects:
west build -t ram_report | grep -C20 net_pkt.c
This results in the spiram_noinit section getting placed at the beginning of the ext_ram_seg, when it needs to be placed after .ext_ram.dummy.
├── net_pkt.c                          25940   0.31%  -
│   ├── _k_mem_slab_buf_rx_pkts         2048   0.02%  0x3c005c60 spiram_noinit
│   ├── _k_mem_slab_buf_tx_pkts         2048   0.02%  0x3c005460 spiram_noinit
│   ├── _net_buf_rx_bufs                 224   0.00%  0x3c005380 spiram_noinit
│   ├── _net_buf_tx_bufs                 896   0.01%  0x3c004000 spiram_noinit
│   ├── log_dynamic_net_pkt                4   0.00%  0x3fca87e8 log_dynamic_area
│   ├── net_buf_data_rx_bufs            4096   0.05%  0x3c004380 spiram_noinit
│   ├── net_buf_data_tx_bufs           16384   0.20%  0x3c000000 spiram_noinit  <-- located at beginning which is SPI Flash
│   ├── net_buf_fixed_alloc_rx_bufs       12   0.00%  0x3c0d51a0 .ext_ram.dummy
│   ├── net_buf_fixed_alloc_tx_bufs       12   0.00%  0x3c0d5190 .ext_ram.dummy
│   ├── net_buf_fixed_rx_bufs              4   0.00%  0x3c0d51ac .ext_ram.dummy
│   ├── net_buf_fixed_tx_bufs              4   0.00%  0x3c0d519c .ext_ram.dummy
│   ├── rx_bufs                           68   0.00%  0x3fca8d9c net_buf_pool_area
│   ├── rx_pkts                           36   0.00%  0x3fca8920 k_mem_slab_area
│   ├── tx_bufs                           68   0.00%  0x3fca8de0 net_buf_pool_area

Impact
This is a major annoyance as a workaround is to go through the Zephyr kernel and manually add __attribute__ ((section (".ext_ram.noinit"))) and __attribute__ ((section (".ext_ram.bss"))).
Environment (please complete the following information):
Zephyr v3.6.99 at commit d78a9429450.

@sylvioalves - any chance we can also get this issue resolved in the current cleanup efforts?

@marekmatej - thanks, I will take a look at that.  This particular issue is for for general relocation, I just used the network stacks as an example.  I was able to successfully move about 40KB of the WiFi heap to SPIRAM and added the code to https://github.com/zephyrproject-rtos/zephyr/issues/74246#issuecomment-2267228781.

Bump to keep this open so the bot doesn't think it has been abandoned.

Is anyone currently working on a fix?