HBASE-27938 - PE load any custom implementation of tests at runtime

Enable PE to load any custom implementation of tests at runtime

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

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

_ Prechecks _

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

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

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

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 54s
master passed

+1 :green_heart:
compile
0m 42s
master passed

+1 :green_heart:
checkstyle
0m 15s
master passed

+1 :green_heart:
spotless
0m 57s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 36s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 26s
the patch passed

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

-0 :warning:
checkstyle
0m 10s
hbase-mapreduce: The patch generated 3 new + 27 unchanged - 0 fixed = 30 total (was 27)

-0 :warning:
whitespace
0m  0s
The patch has 4 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>.

_ Prechecks _

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

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

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

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 48s
master passed

+1 :green_heart:
compile
0m 37s
master passed

+1 :green_heart:
checkstyle
0m 12s
master passed

+1 :green_heart:
spotless
0m 52s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 33s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  6s
the patch passed

+1 :green_heart:
compile
0m 31s
the patch passed

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

-0 :warning:
checkstyle
0m 13s
hbase-mapreduce: The patch generated 4 new + 27 unchanged - 0 fixed = 31 total (was 27)

-0 :warning:
whitespace
0m  0s
The patch has 4 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply

+1 :green_heart:
hadoopcheck
12m 36s
Patch does not cause any errors with Hadoop 3.2.4 3.3.5.

-1 :x:
spotless
0m 56s
patch has 63 errors when running spotless:check, run spotless:apply to fix.

+1 :green_heart:
spotbugs
0m 54s
the patch passed

_ Other Tests _

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

33m 51s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/2/artifact/yetus-general-check/output/Dockerfile

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

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux fbd4c62705ee 5.4.0-1101-aws #109~18.04.1-Ubuntu SMP Mon Apr 24 20:40:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 66fd6db9c5

Default Java
Eclipse Adoptium-11.0.17+8

checkstyle
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-mapreduce.txt

whitespace
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/2/artifact/yetus-general-check/output/whitespace-eol.txt

spotless
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/2/artifact/yetus-general-check/output/patch-spotless.txt

Max. process+thread count
77 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

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

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 38s
master passed

+1 :green_heart:
compile
0m 16s
master passed

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

+1 :green_heart:
javadoc
0m 16s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 16s
the patch passed

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

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

+1 :green_heart:
javadoc
0m 12s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
14m 16s
hbase-mapreduce in the patch passed.

35m  6s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

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

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 5e7a771763d4 5.4.0-1101-aws #109~18.04.1-Ubuntu SMP Mon Apr 24 20:40:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 66fd6db9c5

Default Java
Temurin-1.8.0_352-b08

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

Max. process+thread count
2446 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

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

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

Please explain how this should be used; Add command/option explanation in the printUsage method;

Instead of Command name we need to give the classname of Test impl and it should work as is.
I did change the printUsage here, Shall I make it as "Run custom implementation of provided Test classname present in classpath" instead?

We should encourage custom tests to be contributed back as part of the PerformanceEvaluation tool.

That is true, but if the custom test impl is very much usecase specific and isnt generic enough to be contributed back we wont be able to utilise the framework code completely, because as of now it mandates to have a compile time dependency of the implemented test class.
But yes, if the implementations are generic enough like RandomScan100Test and all it totally makes more sense to be part of PerformanceEvaluation tool itself.

Instead of Command name we need to give the classname of Test impl and it should work as is.

So we need to explicitly say that in the printUsage. I couldn't get that by the ? extends Test description.

That is true, but if the custom test impl is very much usecase specific and isnt generic enough to be contributed back we wont be able to utilise the framework code completely, because as of now it mandates to have a compile time dependency of the implemented test class.

What I meant was to put some notes on the description for this generic command option. Something like "Please consider contribute back this custom command into a builtin PE command for the benefit of the community".

Got it, how about we update
Usage: hbase pe  <OPTIONS> [-D<property=value>]* <command> <nclients> to
Usage: hbase pe  <OPTIONS> [-D<property=value>]* <command|class> <nclients>
And add a section for Class just below Commad:
Class:
To run any custom implementation of PerformanceEvaluation.Test, provide the classname of the implementaion class in place of command name and it will be loaded at runtime from classpath.
Please consider to contribute back this custom test impl into a builtin PE command for the benefit of the community.

Seems inline with current documentation standard also to me
@wchevreuil

Got it, how about we update
Usage: hbase pe <OPTIONS> [-D<property=value>]* <command> <nclients> to Usage: hbase pe <OPTIONS> [-D<property=value>]* <command|class> <nclients>
And add a section for Class just below Commad:
Class:
To run any custom implementation of PerformanceEvaluation.Test, provide the classname of the implementaion class in place of command name and it will be loaded at runtime from classpath.
Please consider to contribute back this custom test impl into a builtin PE command for the benefit of the community.

Seems inline with current documentation standard also to me @wchevreuil

Yeah, that would be good. Thanks!

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

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

-1 :x:
docker
0m 17s
Docker failed to build run-specific yetus/hbase:tp-16234}.

Subsystem
Report/Notes

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

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

versions
git=2.17.1

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

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

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

_ Prechecks _

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

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

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

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m  9s
master passed

+1 :green_heart:
compile
0m 30s
master passed

+1 :green_heart:
checkstyle
0m 12s
master passed

+1 :green_heart:
spotless
0m 45s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 30s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 28s
the patch passed

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

-0 :warning:
checkstyle
0m 10s
hbase-mapreduce: The patch generated 2 new + 27 unchanged - 0 fixed = 29 total (was 27)

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

+1 :green_heart:
hadoopcheck
10m 42s
Patch does not cause any errors with Hadoop 3.2.4 3.3.5.

-1 :x:
spotless
0m 38s
patch has 26 errors when running spotless:check, run spotless:apply to fix.

+1 :green_heart:
spotbugs
0m 35s
the patch passed

_ Other Tests _

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

27m 56s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/4/artifact/yetus-general-check/output/Dockerfile

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

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux b274edd5af26 5.4.0-1101-aws #109~18.04.1-Ubuntu SMP Mon Apr 24 20:40:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 3ddc6dd70f

Default Java
Eclipse Adoptium-11.0.17+8

checkstyle
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-mapreduce.txt

spotless
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/4/artifact/yetus-general-check/output/patch-spotless.txt

Max. process+thread count
77 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

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

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
2m 55s
master passed

+1 :green_heart:
compile
0m 19s
master passed

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

+1 :green_heart:
javadoc
0m 17s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 19s
the patch passed

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

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

+1 :green_heart:
javadoc
0m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
15m 38s
hbase-mapreduce in the patch passed.

33m 33s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

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

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux c267b4855376 5.4.0-148-generic #165-Ubuntu SMP Tue Apr 18 08:53:12 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 3ddc6dd70f

Default Java
Eclipse Adoptium-11.0.17+8

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

Max. process+thread count
2762 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

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

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

Could you please provide a UT or add an example in hbase-examples to show how to make use of this feature?
Thanks.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

-0 :warning:
yetus
0m  2s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
2m 50s
master passed

+1 :green_heart:
compile
0m 20s
master passed

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

+1 :green_heart:
javadoc
0m 17s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 19s
the patch passed

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

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

+1 :green_heart:
javadoc
0m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
16m 26s
hbase-mapreduce in the patch passed.

33m 57s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/5/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

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

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 104b1dd925c7 5.4.0-156-generic #173-Ubuntu SMP Tue Jul 11 07:25:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 2fb2ae152a

Default Java
Eclipse Adoptium-11.0.17+8

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/5/testReport/

Max. process+thread count
2782 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/5/console

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

_ Prechecks _

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

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

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

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 18s
master passed

+1 :green_heart:
compile
0m 37s
master passed

+1 :green_heart:
checkstyle
0m 13s
master passed

+1 :green_heart:
spotless
0m 50s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 34s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 11s
the patch passed

+1 :green_heart:
compile
0m 34s
the patch passed

-0 :warning:
javac
0m 34s
hbase-mapreduce generated 1 new + 196 unchanged - 1 fixed = 197 total (was 197)

-0 :warning:
checkstyle
0m 15s
hbase-mapreduce: The patch generated 2 new + 27 unchanged - 0 fixed = 29 total (was 27)

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

+1 :green_heart:
hadoopcheck
12m 38s
Patch does not cause any errors with Hadoop 3.2.4 3.3.5.

+1 :green_heart:
spotless
1m  3s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 54s
the patch passed

_ Other Tests _

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

34m  6s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/artifact/yetus-general-check/output/Dockerfile

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

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux f4333d3ed0a0 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / b1fd92d3c7

Default Java
Eclipse Adoptium-11.0.17+8

javac
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/artifact/yetus-general-check/output/diff-compile-javac-hbase-mapreduce.txt

checkstyle
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/artifact/yetus-general-check/output/diff-checkstyle-hbase-mapreduce.txt

Max. process+thread count
79 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/console

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 49s
master passed

+1 :green_heart:
compile
0m 16s
master passed

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

+1 :green_heart:
javadoc
0m 14s
master passed

_ Patch Compile Tests _

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

+1 :green_heart:
compile
0m 19s
the patch passed

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

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

+1 :green_heart:
javadoc
0m 12s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
15m 18s
hbase-mapreduce in the patch passed.

35m 59s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

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

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 25739fa1b431 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / b1fd92d3c7

Default Java
Temurin-1.8.0_352-b08

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/testReport/

Max. process+thread count
3006 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/6/console

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 21s
the patch passed

+1 :green_heart:
compile
0m 23s
the patch passed

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

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

-0 :warning:
javadoc
0m 18s
hbase-mapreduce generated 17 new + 0 unchanged - 0 fixed = 17 total (was 0)

_ Other Tests _

+1 :green_heart:
unit
16m  5s
hbase-mapreduce in the patch passed.

37m 50s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

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

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 1136b537802f 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / ca34010053

Default Java
Temurin-1.8.0_352-b08

mvninstall
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/artifact/yetus-jdk8-hadoop3-check/output/branch-mvninstall-root.txt

compile
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/artifact/yetus-jdk8-hadoop3-check/output/branch-compile-hbase-mapreduce.txt

javadoc
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/artifact/yetus-jdk8-hadoop3-check/output/branch-javadoc-hbase-mapreduce.txt

javadoc
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-mapreduce.txt

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/testReport/

Max. process+thread count
2817 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5307/10/console

versions
git=2.34.1 maven=3.8.6

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

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

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


Implement content refactor tool first attempt

@TejasSC looks nice! Now you need to change String type to Text.
Use this package (you need to add it build-depends field in .cabal file):

http://hackage.haskell.org/package/text

You need to use -XOverloadedStrings extension. Read this tutorial about Text, it's very useful!

https://mmhaskell.com/blog/2017/5/15/untangling-haskells-strings

Okay, I think that CI will be fixed later during some refactoring. Let's merge now!


Allow generic item indices in time series dataframe

Issue #, if available:
Description of changes:
Depends on: #1841 #1839
Removes the constraint of specifying only integer type item indices in time series panel data frames, improving user experience.
cc: @huibinshen
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-1849-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1849/1/index.html

Job PR-1849-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1849/2/index.html

LGTM!


.NET 7 upgrade - error TapGestureRecognizer TreeView

Hi!
I've tried to use your package, with the latest .NET7 release for MAUI, however, when running a page with TreeView component, (iwindows target)  the following error appears:
Microsoft.Maui.Controls.TapGestureRecognizer.add_Tapped error
After downgrading .NET7 to .NET6 all works without any issue. ( And yes, I know .net was released yesterday, so just wanted to leave a heads up!)

.NET 7.0 support will be released with v2.0
I'll prepare .NET 7.0 and release in this week.

https://github.com/enisn/UraniumUI/pull/92

Also looking forward to this

When using the TreeView on Windows / Mac & .NET7 we get this error/info -> Microsoft.Maui.Controls.Element: Warning: Microsoft.Maui.Controls.TapGestureRecognizer is already a child of Microsoft.Maui.Controls.ContentView. Remove Microsoft.Maui.Controls.TapGestureRecognizer from Microsoft.Maui.Controls.ContentView before adding to Microsoft.Maui.Controls.HorizontalStackLayout.
I am almost certain is related to the TreeView


upgrade to 3.5.1 ,get an error on Browser console TypeError: webCrypto.randomUUID is not a function

Environment

Operating System: Windows_NT
Node Version:     v16.16.0
Nuxt Version:     3.5.1
Nitro Version:    2.4.1
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      experimental
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-qleyyo
here is this code ,but can`t  reproduce this issue.the same code on my local machine get this error

Describe the bug
when  i use a server component,  and set componentIslands true, the browser console will get a error: TypeError: webCrypto.randomUUID is not a function.
components/Header.server.vue

 experimental: {
    componentIslands: true,
  },

app.vue:
<template>
  <div>
    <Header />
  </div>
</template>

But i cant reproduce  this issue on the stackblitz, and this issue occur when i upgrade  from v.3.4.3 to v.3.5
Additional context
No response
Logs
No response

WebCrypto is only enabled in HTTPS and localhost environments.
could this be the cause of your issue?

@maou-shonen i tried,you are right ,  this issue  occur  when i through the ip+port visit my site.


ECID setting methods and behavior

Issue in ./help/identity-service/ecid.md
In the field we often get questions related to

what are the various methods by which an ECID is set?
What happens if a client blocks cookies - how is ECID set?
How is ECID set in mobile apps and mobile web?
Is the ECID generated client side or server side?
How does first party CNAME entries affect ECID generation?

Would be great to have some of this information added to this guide.

Thank you for submitting this issue. We will review the documentation and make the necessary updates as quickly as possible. Tracking internally in PLAT-136054.


i18n(zh-cn): Update astro-assets.mdx and related link

Description (required)

Update astro-assets.mdx
Update images.mdx
Update other corresponding link in other docs

Related issues & labels (optional)

#9801
Suggested label: i18n

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

zh-cn
guides/migrate-to-astro/from-gatsby.mdx
Localization changed, will be marked as complete.

zh-cn
guides/migrate-to-astro/from-nextjs.mdx
Localization changed, will be marked as complete.

zh-cn
guides/migrate-to-astro/from-nuxtjs.mdx
Localization changed, will be marked as complete.

zh-cn
guides/upgrade-to/v3.mdx
Localization changed, will be marked as complete.

zh-cn
reference/components-reference.mdx
Localization changed, will be marked as complete.

zh-cn
reference/modules/astro-assets.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

Thanks for your work! @Nin3lee I have left several suggestions.


Support logging live prediction with whylogs for MLFlow's sklearn

Tested manually with
import mlflow
whylogs.enable_mlflow()
mlflow.set_tracking_uri("http://localhost:5000")

# Build model here

mlflow.sagemaker.deploy(
    app_name="demo",
    model_uri="runs:/c5759e1dc5bf48e7bfe6be1ec4951d7a/model",
    execution_role_arn="<arn>",
    mode="replace")

I'm a bit confused why coveralls is failing. Seems that coverall is not picking up data for some reason:
https://github.com/whylabs/whylogs-python/pull/113/checks?check_run_id=1723137705#step:9:14
No source for /home/runner/work/whylogs-python/whylogs-python/src/whylogs/app/logger.py

I'm a bit confused why coveralls is failing. Seems that coverall is not picking up data for some reason:
https://github.com/whylabs/whylogs-python/pull/113/checks?check_run_id=1723137705#step:9:14
No source for /home/runner/work/whylogs-python/whylogs-python/src/whylogs/app/logger.py


Updated expected to failure for suite apiShareOperationsToShares1 and apiWebdavUpload1

:boom: Acceptance test Web-Tests-ocis-smoke-ocis-storage-1 failed. Further test are cancelled...


Missing RPM's for Rocky Linux

https://github.com/rocknsm/rock-createiso/blob/f1f6bec0b79e23070973504ff7afb5200868a959/bootstrap.sh#L21
fuseiso and firstboot are not available for Rocky Linux in default repo's or Epel.

fuseiso was able to be install from rpmsphere.
No luck on firstboot


Debugging option for SVG tool

Include an option to draw all the parts of a lane with the same color and use different colors for each lane having a pool of ten colors a least to create an image that improves the debugging of the lane creation,

@basicNew I think this could work.

And one without waypoints:

Those small lanes inside perimeter belong to the connection between some waypoints, they are not any kind of waypoints.
I still need to add  argument list to complete it but just to see if it is OK.

That looks great @agalbachicar ! Very minor knit: could you make the waypoints the same colors as the streets in the first screen to quickly visualize the directions?

@basicNew it will imply making a refactor because waypoints and lanes are decoupled. If you consider it is necessary I think I can do it but it will take some time.


parser: support cast as real

What problem does this PR solve?
Releated PR: https://github.com/pingcap/tidb/pull/11564
Support cast(xxx as real).
Mysql support the parser in 8.0.17.
https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html

@wshwsh12 please update with the master branch and resolve conflicts.


Missing revision in Device profiles

The new "Regional parameters revision" : RP002-1.0.4 is not displayed on the Device Profile page:

I'm about to create the same issue.
Yes, I have the same issue.


Adding a landscape full screen sized scrap clips its ink texture

add landscape scrap that is size of the screen
draw all over it so that the strokes hit the ink texture
save
ink is clipped

a texture somewhere is being created for the screen size it seems, instead of the scrap size. the clipping happens where i'd expect the width of the texture to be if it was the width of the screen in portrait mode.


Have YoutubePlayerController extend Stream

As the listen override is already implemented, this allows for all the
built in Stream methods to be used on the controller.

Hmm actually I think it would be better to just expose a stream getter on the controller.
That will keep the API surface clean.

Yeah, this was removed with v2.2.0 to make the controller API less crowded.
https://pub.dev/packages/youtube_player_iframe/changelog#220
May I ask, why do you want to expose stream from the controller ?

I have changed it to a stream getter.
I was using it in a few places. It allows you to listen for specific cases in a nice expressive way. For example:
controller
    .map((event) => event.playerState)
    .distinct()
    .where((s) => [PlayerState.cued, PlayerState.ended].contains(s))
    .take(1)
    .listen((_) => close());


Compiling scss too many time

After npm run watch and then if i modify and save scss files, compiling process is not less than 4 seconds... http://joxi.ru/a2XeBzEUYxE3Ag
With laravel-elixir (with same scss'es) this process was fast.

It looks your CSS file is pretty huge. Not much we can do there.

@JeffreyWay But earlier, with laravel-elixir, this compiling with same css files was maximum 0.3 seconds!

Webpack is doing more things than Gulp.
But I have a large project, and the watcher compiles everything down in less than a second. Seems like you have nearly a meg's worth of CSS. That's a lot.


Update the homepage Slack pictogram

Based on the feedback from Mike and worked with Diana Stanciulescu by reaching out to the Slack Team, we come to the conclusion on not using the Slack logo mark nor creating a new pictogram based on the Slack logo mark for now but replace the pictogram with an existing one.

@wonilsuhibm Diana and I agreed this pictogram works as the replacement for the Slack pictogram on our homepage. Please let me know if you agree. If you are, I will work with Anna to have it updated asap.

@wonilsuhibm
Update: Diana just shared the response from Slack corporation and now the IBM pictogram based on the Slack logo is approved. She is going to work on the Slack pictogram and have it added to the IDL pictogram library. Once it's done, we can update the one we have on the current website.

The Slack pictogram from the IDL team is below and the .AI work file can be found here if needed.
slack.svg.zip

The Slack file works for the update can be found here.

Update screenshot from Anna.


[Bug]: Authentication Context Botched

Please confirm that you have:

[X] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[X] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Extension
Expected behavior
This CLI should maintain working context in terms of authentication over time. Leaving my computer alone for a half-hour break should not break the CLI session.

Verbose output
14:18:28 Pushed » 'my-extension' to a draft
- blocks/puddle-of-poo.liquid
Please provide this information with your report:
www-authenticate: Bearer realm="171e16d403dfa18082ffb3d197bd2b5f4479c3fc32736d69296829cbb28d41a6",error="invalid_token",error_description="The access token provided is expired, revoked, malformed, or invalid for other reasons."
x-request-id: c0d68972-f830-4bb4-bc1a-e57d6695f546

Reproduction steps

Operating System
MacOS
Shopify CLI version (check your project's package.json if you're not sure)
3.44.1
Shell
zsh
Node version (run node -v if you're not sure)
v19
What language and version are you using in your application?
Ruby 3.2.1

@Shopify/theme-developer-tools

This is actually one of the worst CLI problems I have run into, and ignoring it and or not addressing it just screams that it is a real issue, and real tough and that perhaps the authentication scheme selected for the CLI is permanently crippled. Perhaps. Perhaps someone will fix this issue though. Not STALE.
The @shopify/theme-code-tools team is aware of this problem and it's on our roadmap. As soon as we have an update for it, we will leave a comment here.
Thanks again for bringing this up!

This issue is not stale, it simply has not been fixed by anyone. Please Mr. Bot, do not confuse issues not solved or resolved with stale. I just suffered from this exact bug twice today! It is an everyday occurring thing.


LogFilter: fix NULL termination check

gcc-12 generated the following warning:
proxy/logging/LogFilter.h: In function 'void wipeField(char**, char*, const char*)':
proxy/logging/LogFilter.h:477:35: error: comparing the result of pointer addition '(new_param + 1)' and NULL [-Werror=address]
477 |       if (new_param && (new_param + 1)) {
|                        ~~~~~~~~~^~
That is indeed a bug. new_param + 1 will always be non-NULL even if new_param
is NULL because 1 will be added to it. The intention was to check for the
string's null terminator at the offset, which is done via a dereference.

Cherry-picked to v9.2.x

@zwoop or whoever's doing 9.1.x releases, we need this for 9.1.x to build on Fedora.  Or is 9.1.x deprecated in favor of 9.2.x?


[Question] How to implement and add a custom rule?

Hi, is it possible to implement and add custom rule? For example, I'd like to add a rule that, each test name need start with a specific Jira key code, like FEAT-6792 user can see recommendations, I'd like to define a regex, which each test name shall match with.
test('FEAT-6792 user can see recommendations', async ({}, testInfo) => {
  testInfo.annotations.push({ type: 'test_key', description: 'FEAT-6792' });
  //...
});

@python012 This is supported uston the valid-title rule and the mustMatch option.
https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/valid-title.md#mustmatch--mustnotmatch

Thank You! @mskelton


Cookies not persistent

saving login info using cookiesis not persistent between different loads

possibly fixed with 8cedab5e2a3f56e94e8b7cad9bc6c9144e645415?

turns out I forgot to use the CookiesProvider


Add more complicated version checks

This adds a more comprehensive matrix of supported versions, since
theoretically, an end user may be using Java 17 and trying to target
Java 11 or may want to target Java 17.

Basically this expands on #77 (and actually targets being merged into that PR's branch) to use the -release flag introduced in JEP 247 (available in Java 9) (and v3.6 of the maven-compiler-plugin) which is a little safer than relying on source/target (because of bootstrap classpath stuff).
Originally I thought that maybe this would be just a thought experiment to see if we even still compile against 18. But the more I played with it, the more I kinda liked it.
Anyway, since this targets another feature/ branch, it doesn't technically require review and anyone with write permissions can merge it. But I do want to open it for review separately from that change so that it doesn't slow things down. If this PR needs more discussion, we can move forward with #77 and then re-target this PR to develop.


docs coverage, like esdoc

... will be supported soon?

@le93us That'd be a great feature! This is a community supported project so there is no timeline for when issues will be completed. PRs are always welcome :heart:

Closing in favor of #1067 (I knew it had been brought up before)


VSCode context menu appears in the wrong window when windows are grouped in Hyprland

Already reported ? *

[X] I have searched the existing open and closed issues.

Regression?
No
System Info and Version
 System/Version info
Hyprland, built from branch  at commit 0d70c442538ba0d1efc63558c859c184367c95ad  ().
Date: 2024-10-08
Tag: , commits: 5306
built against aquamarine 0.4.1

flags: (if any)

System Information:
System name: Linux
Node name: nixos
Release: 6.6.54
Version: #1-NixOS SMP PREEMPT_DYNAMIC Fri Oct  4 14:30:05 UTC 2024

GPU information:
00:02.0 VGA compatible controller [0300]: Intel Corporation RocketLake-S GT1 [UHD Graphics 750] [8086:4c8a] (rev 04) (prog-if 00 [VGA controller])

os-release: ANSI_COLOR="1;34"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="24.11.20241006.c31898a"
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 24.11 (Vicuna)"
SUPPORT_URL="https://nixos.org/community.html"
VERSION="24.11 (Vicuna)"
VERSION_CODENAME=vicuna
VERSION_ID="24.11"

plugins:

======Config-Start======

Config File: /home/henrik/.config/hypr/hyprland.conf: Read Succeeded
source = ~/.config/hypr/mocha.conf
$mainMod = SUPER_L
# env = NOTIFY,true
bind = $mainMod, F1, exec, export NOTIFY=true && notify-send "Hyprland" "Notification enabled"
bind = $mainMod, F2, exec, export NOTIFY=false && notify-send "Hyprland" "Notification disabled"
bind = $mainMod, equal, exec, $HOME/.config/hypr/scripts/hallo.sh

################
### MONITORS ###
################

source = ~/.config/hypr/hyprland.monitor.conf

##############################
### WINDOWS AND WORKSPACES ###
##############################

# 
exec-once = [workspace 1] kitty
workspace = 1, defaultName:, monitor:$monitorMain, default:true
bind = $mainMod, j, workspace, 1
bind = $mainMod SHIFT, j, movetoworkspace, 1

# 
$projectA = ~/dotfiles
workspace = 2, defaultName:, monitor:$monitorMain
windowrulev2 = workspace 2 silent, class:^(code-url-handler)$
windowrulev2 = group, class:^(code-url-handler)$
bind = $mainMod, k, workspace, 2
bind = $mainMod SHIFT, k, movetoworkspace, 2
bind = $mainMod, a, focuswindow, title:^($projectA \| Code)$
bind = $mainMod, s, exec, $HOME/.config/hypr/scripts/shortcut-execute.sh "s"
bind = $mainMod CTRL, s, exec, $HOME/.config/hypr/scripts/shortcut-set.sh "s"
bind = $mainMod, d, exec, $HOME/.config/hypr/scripts/shortcut-execute.sh "d"
bind = $mainMod CTRL, d, exec, $HOME/.config/hypr/scripts/shortcut-set.sh "d"
bind = $mainMod, f, exec, $HOME/.config/hypr/scripts/shortcut-execute.sh "f"
bind = $mainMod CTRL, f, exec, $HOME/.config/hypr/scripts/shortcut-set.sh "f"

exec-once = code $projectA
exec-once = $HOME/.config/hypr/scripts/launch-code-project.sh "s"
exec-once = $HOME/.config/hypr/scripts/launch-code-project.sh "d"
exec-once = $HOME/.config/hypr/scripts/launch-code-project.sh "f"

# 󰖟
workspace = 3, defaultName:󰖟, monitor:$monitorMain
windowrulev2 = workspace 3 silent, class:^(google-chrome)$
windowrulev2 = group, class:^(google-chrome)$
bind = $mainMod, l, workspace, 3
bind = $mainMod SHIFT, l, movetoworkspace, 3
bind = $mainMod, v, focuswindow, title:( \| default - Google Chrome)
bind = $mainMod CTRL, v, exec, google-chrome-stable --force-dark-mode --profile-directory="Default"
bind = $mainMod, c, focuswindow, title:( \| work - Google Chrome)
bind = $mainMod CTRL, c, exec, google-chrome-stable --force-dark-mode --profile-directory="Profile 1"
bind = $mainMod, x, focuswindow, title:( \| p1 - Google Chrome)
bind = $mainMod CTRL, x, exec, google-chrome-stable --force-dark-mode --profile-directory="Profile 2"
bind = $mainMod, z, focuswindow, title:( \| p2 - Google Chrome)
bind = $mainMod CTRL, z, exec, google-chrome-stable --force-dark-mode --profile-directory="Profile 3"
# exec-once = firefox -P defaultprofile
# exec-once = google-chrome-stable --profile-directory="Default"
# exec-once = google-chrome-stable --profile-directory="Profile 1"
# exec-once = google-chrome-stable --profile-directory="Profile 2"
# exec-once = google-chrome-stable --profile-directory="Profile 3"
exec-once = $HOME/.config/hypr/scripts/launch-chrome-instances.sh

# 
workspace = 4, defaultName:, monitor:$monitorMain
bind = $mainMod, semicolon, workspace, 4
bind = $mainMod SHIFT, semicolon, movetoworkspace, 4
exec-once = [workspace 4] obsidian

# 󰻞
workspace = 5, defaultName:󰻞, monitor:$monitorMain
windowrulev2 = workspace 5 silent, initialtitle:^(Teams)
windowrulev2 = group, initialtitle:^(Teams)
bind = $mainMod, u, workspace, 5
bind = $mainMod SHIFT, u, movetoworkspace, 5
# bind = $mainMod, i, exec, $HOME/.config/hypr/scripts/reset-submap.sh
# bind = $mainMod, i, submap, groupselectteams
# submap = groupselectteams
# bind = $mainMod, i, changegroupactive, f
# submap = reset
exec-once = teams-for-linux
exec-once = teams-for-linux --user-data-dir=/home/henrik/.local/share/teams-for-linux/instance2

# 
workspace = 6, defaultName:, monitor:$monitorMain
windowrulev2 = workspace 6 silent, initialtitle:^(Outlook)
windowrulev2 = group, initialtitle:^(Outlook)
bind = $mainMod, i, workspace, 6
bind = $mainMod SHIFT, i, movetoworkspace, 6
# exec-once = $HOME/.config/hypr/scripts/launch-firefox-pwa.sh "Outlook 1"
# exec-once = $HOME/.config/hypr/scripts/launch-firefox-pwa.sh "Outlook 2"

# 
workspace = 7, defaultName:, monitor:$monitorMain
windowrulev2 = workspace 7 silent, class:^(org.keepassxc.KeePassXC)$
bind = $mainMod, o, workspace, 7
bind = $mainMod SHIFT, o, movetoworkspace, 7
exec-once = keepassxc

# 
workspace = 8, defaultName:, monitor:$monitorMain
windowrulev2 = workspace 8 silent, initialTitle:Spotify Premium
bind = $mainMod, p, workspace, 8
bind = $mainMod SHIFT, p, movetoworkspace, 8
exec-once = spotify

# 
workspace = 9, defaultName:, monitor:$monitorMain
bind = $mainMod, apostrophe, workspace, 9
bind = $mainMod SHIFT, apostrophe, movetoworkspace, 9

# 󰍹
workspace = 10, defaultName:󰍹, monitor:$monitorSide
bind = $mainMod, backslash, workspace, 10
bind = $mainMod SHIFT, backslash, movetoworkspace, 10

workspace = special, monitor:$monitorMain
bind = $mainMod, minus, togglespecialworkspace
bind = $mainMod SHIFT, minus, movetoworkspacesilent, special
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

# Clipse
windowrulev2 = float, class:(clipse)
windowrulev2 = size 622 652, class:(clipse)
bind = $mainMod, equal, exec, kitty --class clipse -e clipse

####################
### KEYBINDINGSS ###
####################

bind = $mainMod, r, exec, pkill tofi-drun || tofi-drun | xargs hyprctl dispatch exec --
bind = $mainMod SHIFT, r, exec, $HOME/.config/hypr/scripts/launcher-execute.sh
bind = $mainMod, g, exec, $HOME/.config/hypr/scripts/launcher-focus-window.sh "| Code"
bind = $mainMod SHIFT, g, exec, $HOME/.config/hypr/scripts/launcher-focus-window.sh ""
bind = $mainMod, q, exec, $HOME/.config/hypr/scripts/launcher-snippets.sh
bind = $mainMod SHIFT, q, exec, $HOME/.config/hypr/scripts/launcher-emojipicker.sh
bind = $mainMod, SUPER_L, exec, $HOME/.config/hypr/scripts/hide-special-workspace.sh
bind = $mainMod, t, exec, kitty
bind = $mainMod, e, exec, nautilus
bind = $mainMod, grave, exec, $HOME/.local/bin/grimblast copysave area $HOME/screenshots/$(date +'%F-%T.png')
bind = $mainMod, backspace, workspace, previous
bind = $mainMod, w, killactive
bind = $mainMod, h, fullscreen
bind = $mainMod, n, togglefloating
bind = $mainMod, m, layoutmsg, rollnext
bind = $mainMod SHIFT, m, layoutmsg, rollprev
bind = $mainMod, comma, changegroupactive , f
bind = $mainMod SHIFT, comma, changegroupactive, b
# additionalactions
bind = $mainMod, period, submap, additionalactions
submap = additionalactions
bind = , o, moveoutofgroup
bind = , t, togglegroup
bind = , left, moveintogroup, l
bind = , right, moveintogroup, r
bind = , up, moveintogroup, u
bind = , down, moveintogroup, d
bind = , s, movegroupwindow, f
bind = , k, exec, pkill tofi
bind = , c, layoutmsg, orientationcycle
bind = , catchall, submap, reset
submap = reset

bind = $mainMod SHIFT, right, movecurrentworkspacetomonitor, $monitorMain
bind = $mainMod SHIFT, left, movecurrentworkspacetomonitor, $monitorSide

bind = $mainMod CTRL, y, exec, playerctl previous -p spotify
bind = $mainMod SHIFT, y, exec, playerctl next -p spotify
bind = $mainMod, y, exec, playerctl play-pause -p spotify
# bind = $mainMod SHIFT, i, exec, playerctl stop --all-players

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

#############################
### ENVIRONMENT VARIABLES ###
#############################

env = HYPRCURSOR_THEME,catppuccin-mocha-mauve-cursors
env = HYPRCURSOR_SIZE,28
env = XCURSOR_THEME,catppuccin-mocha-mauve-cursors
env = XCURSOR_SIZE,28
env = ELECTRON_OZONE_PLATFORM_HINT,wayland
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_CONFIG_HOME,$HOME/.config/
env = QT_QPA_PLATFORM,wayland
env = QT_QPA_PLATFORMTHEME,qt5ct
env = GTK_USE_PORTAL,1
env = GTK_THEME,Adwaita:dark
env = GTK_FONT_NAME,"Agave Nerd Font"
env = GDK_BACKEND,wayland
env = SSH_AUTH_SOCK,$XDG_RUNTIME_DIR/ssh-agent.socket

#################
### AUTOSTART ###
#################

exec-once = waybar
exec-once = dunst
exec-once = hyprpaper
exec-once = clipse -listen
exec-once = udiskie --tray
exec-once = synology-drive start
exec-once = eval "$(ssh-agent -a $XDG_RUNTIME_DIR/ssh-agent.socket)"
exec-once = dconf write /org/gnome/desktop/interface/cursor-theme "'catppuccin-mocha-mauve-cursors'"
exec-once = dconf write /org/gnome/desktop/interface/cursor-size 32

#####################
### LOOK AND FEEL ###
#####################

# https://wiki.hyprland.org/Configuring/Variables/#general
general {
    gaps_in = 5
    gaps_out = 10

    border_size = 2

    col.active_border = rgba($greenAlphaee) rgba($skyAlphaee) $mauve
    col.inactive_border = rgba(595959aa)

    resize_on_border = true

    allow_tearing = false

    layout = master
}

group {
    col.border_active = rgba($greenAlphaee) rgba($skyAlphaee) $mauve
    col.border_inactive = rgba(595959aa)
    groupbar {
        enabled = true
        col.active = rgba($lavenderAlphaEE)
        col.inactive = rgba($lavenderAlpha66)
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 5

    # Change transparency of focused and unfocused windows
    active_opacity = 0.9
    inactive_opacity = 0.8

    drop_shadow = true
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 3
        passes = 1

        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true

    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 8, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
    mfact = 0.70
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
    font_family = "Agave Nerd Font"
    force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}

#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input
input {
    kb_layout = us
    kb_variant = altgr-intl
    kb_model =
    kb_options =
    kb_rules =

    follow_mouse = 1

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

Config File: /home/henrik/.config/hypr/mocha.conf: Read Succeeded

$rosewater = rgb(f5e0dc)
$rosewaterAlpha = f5e0dc

$flamingo = rgb(f2cdcd)
$flamingoAlpha = f2cdcd

$pink = rgb(f5c2e7)
$pinkAlpha = f5c2e7

$mauve = rgb(cba6f7)
$mauveAlpha = cba6f7

$red = rgb(f38ba8)
$redAlpha = f38ba8

$maroon = rgb(eba0ac)
$maroonAlpha = eba0ac

$peach = rgb(fab387)
$peachAlpha = fab387

$yellow = rgb(f9e2af)
$yellowAlpha = f9e2af

$green = rgb(a6e3a1)
$greenAlpha = a6e3a1

$teal = rgb(94e2d5)
$tealAlpha = 94e2d5

$sky = rgb(89dceb)
$skyAlpha = 89dceb

$sapphire = rgb(74c7ec)
$sapphireAlpha = 74c7ec

$blue = rgb(89b4fa)
$blueAlpha = 89b4fa

$lavender = rgb(b4befe)
$lavenderAlpha = b4befe

$text = rgb(cdd6f4)
$textAlpha = cdd6f4

$subtext1 = rgb(bac2de)
$subtext1Alpha = bac2de

$subtext0 = rgb(a6adc8)
$subtext0Alpha = a6adc8

$overlay2 = rgb(9399b2)
$overlay2Alpha = 9399b2

$overlay1 = rgb(7f849c)
$overlay1Alpha = 7f849c

$overlay0 = rgb(6c7086)
$overlay0Alpha = 6c7086

$surface2 = rgb(585b70)
$surface2Alpha = 585b70

$surface1 = rgb(45475a)
$surface1Alpha = 45475a

$surface0 = rgb(313244)
$surface0Alpha = 313244

$base = rgb(1e1e2e)
$baseAlpha = 1e1e2e

$mantle = rgb(181825)
$mantleAlpha = 181825

$crust = rgb(11111b)
$crustAlpha = 11111b

Config File: /home/henrik/.config/hypr/hyprland.monitor.conf: Read Succeeded
################
### MONITORS ###
################

$monitorMain = HDMI-A-1
$monitorSide = HDMI-A-2

#monitor=,preferred,auto,auto
monitor = $monitorMain, 1920x1080, 1920x0, 1
monitor = $monitorSide, 1920x1080, 0x0, 1

# ln -sf ~/dotfiles/home/.config/hypr/hyprland.monitor.desktop-pc.conf ~/.config/hypr/hyprland.monitor.conf
======Config-End========

Description
I am experiencing an issue where the context menu in VSCode always appears in the wrong instance when multiple VSCode windows are grouped in Hyprland. If I right-click in any instance, the context menu consistently opens in the first window of the group, regardless of which window I right-click in. This issue does not occur if the VSCode instances are not grouped. The behavior suggests a problem with how context menus and grouped windows are managed in Hyprland.
I have tested the following:

Disabling all window rules
Ensuring VSCode is running natively under Wayland
This issue only happens when windows are grouped; without window grouping, the problem does not occur.

How to reproduce

Open two or more instances of VSCode.
Group the VSCode windows together (via windows rule or manually).
Right-click in any window other than the first in the group.
Observe that the context menu opens in the first window of the group, not the window where the right-click occurred.

Crash reports, logs, images, videos
hyprland_logs.txt

I can't reproduce. Can you try on latest git?

Thank you for the feedback. I have to admit that I'm not very familiar with the inner workings of Hyprland or Electron, so I probably can't contribute much to solving this issue. However, it’s unfortunate that this problem prevents me from using the group feature in Hyprland with VS Code.
I’m curious about the assumption that this is an Electron bug. The issue seems to occur only under Hyprland when windows are grouped, while Electron apps outside of groups work fine. It feels like the context menu is treated like a kind of popup, and there might be an interaction with how popups are handled in Hyprland.
That being said, I appreciate your expertise and any support you can provide towards a solution!

Thanks for your input, I have investigated this further and you seem to be correct.
First, I tried to reproduce it in Sway and I am not able to.
Then, I have been able to reproduce this with Nautilus and Dolphin popups too, so this is not a bug in VSCode or Electron, but in multiple grouped instances of the same program's popups.
So this seems like a bug in Hyprland indeed (and also in COSMIC).

Hm, I was triggering a different bug with Dolphin and Nautilus though.
So this is a Hyprland+Electron bug.

I can reproduce with other Electron programs like drawio.
I have reported it to COSMIC. Let see if together we can fix it. https://github.com/pop-os/cosmic-comp/issues/915


arm64 release artifact name should be aarch64 not arm64

It would be nice to be able to write a command such as
curl -sL https://github.com/parca-dev/parca-agent/releases/download/v0.11.0/parca-agent_0.11.0_`uname -s`_`uname -m`.tar.gz

For tutorials using Parca Agent, however, uname -m on arm64 returns aarch64, but the artifact is called arm64. We already fixed this for amd64, which returns x86_64, but not for arm64.

I think uname -m has different outputs on Linux and Darwin. And arm64 is the output for Darwin. We should only support Linux.


Added Ubuntu 22.04 (Jammy) to releases

It's coming out in 3 months, might as well get a release ready for Ubuntu Jammy.
It's using the locally installed flex/bison since Jammy is on glibc 2.34

Can you temporarily uncomment the release building in https://github.com/chipsalliance/verible/blob/master/.github/workflows/verible-ci.yml#L215 so that we can see that all releases build properly (because it is disabled by default in the regular CI).
Once it works, we can rever that back in verible-ci.

Codecov Report

Merging #1144 (5c28c80) into master (39cf83d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1144   +/-   ##
=======================================
  Coverage   92.85%   92.85%
=======================================
  Files         337      337
  Lines       22565    22565
=======================================
  Hits        20953    20953
  Misses       1612     1612

Continue to review full report at Codecov.

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

I enabled the release.
Would you be interested to enable release build through workflow input (in addition to current behavior), I could look into that.

I enabled the release.
Would you be interested to enable release build through workflow input (in addition to current behavior), I could look into that.

@corco, the workflow_dispatch event is added already. Hence, you'd only need to add the inputs fields below. See, for instance, https://github.com/hdl/containers/blob/main/.github/workflows/dispatch.yml. Those inputs are available through github.event.inputs. Find more info in pyTooling/Actions: Context and github/feedback#9092.

So this looks like almost ready to merge; @corco , did you consider @umarcor 's suggestions ?

Yes, I applied @umarcor's suggestions and the build with releases is passing. I re-disabled building release on every push, it should be ready to merge.


Log not going to sumo logic

import request from 'request';
import SumoLogger from 'sumologic';

var endpoint = "https://endpoint1.collection.us2.sumologic.com/receiver/v1/http/";
var syncInterval = 1000;
// Optional opts
var opts = {
   request,
   endpoint,
  syncInterval
};
var logger = new SumoLogger('ZaVnC4dhaV3zjUZdlGwXea2aT2_HdktJCzRDJ8gFt0aQisFzoHhwsajD1VQz6dXYunSmzTwRonSkWqMDOKKpUgn1hbchPprqCbqsk3ZQ6UuhKUHkg5Bdqw==', opts );

logger.log("Yeah, it worked");

Above code don't seems to be working, is i am missing something basic here ?
curl post for same details are working.

Apologies for the late reply @PradeepJaiswar - I missed the notification for this issue.
Your approach works fine for me. Assuming your 'opts' structure is a typo (it's meant to be a map). eg.
var opts = {
  endpoint: endpoint,
}


fix handling of alumni info based on section name

Fixes #226
Swaps order of if/else and uses "contains" rather than string matching

My jekyll is still not working, so if someone could test that the Alumni looks normal that would be great. I've attached as screenshot of how it used to look

Alumni list is back to what it should be.


update Activiti/activiti-api to develop

UpdateBot pushed version changes from the source code in repository: Activiti/activiti-api ref: develop

UpdateBot commands:
updatebot push --ref develop https://github.com/Activiti/activiti-api.git


update dependencies

Brings racerd into the iron 0.5.1 era, among other updates.  Relies on jwilm/iron-hmac#11.
The one thing that I didn't get rid of which I would have quite liked to is the rustc-serialize requirement in testing.  I tried swapping it out for serde but tests started failing for some reason, and to be honest I'm losing enthusiasm for chasing things down...
So I figure let's not allow the perfect to be the enemy of the good, send the pull request as it stands.

looks like #76 is doing the business so we don't need this one any more.


Supress errors in fixOrientation()

At the moment when you ->fixOrientation() on pngs or anything other than JPEGs or Tiffs, Gregwar breaks. Not good.
This suppresses errors when it cannot read the exif information.
Fixes #92, #96, #105.

@Gregwar any news?

Thanks for contributing


TimeLimiter instance properties configuration not working

Describe the bug
Properties configuration for instances of the resilience4j's TimeLimiter is not working.
This is an extension of #122. The above issue was partially fixed in the Cloud version 2020.0.5 - the TimeLimiter configuration is still not working.
If you run the code below you will get a timeout exception, whereas if you un-comment the default TimeLimiter configuration in application.yml you will get the result printed in the console.
Sample
demo-tl.zip

So it is just the specific time limiter configuration that is not working?

Correct

The problem is that the circuit breaker id created by OpenFeign is DemoClient#getDemo() however # ( ) , are not allowed in property source names so what ends up being the property source name in your configuration properties is DemoClientgetDemo and of course we don't find that configuration name when we look for any kind of configuration for DemoClient#getDemo().  There are two possible solutions:

We change the circuit breaker id created by OpenFeign so it does not have these characters
In Spring Cloud CircuitBreaker we first check for the id thats passed and if no configuration is found we strip the characters from the name and check again.

The advantage to solution number 2 is that is less of a breaking change.
@spencergibb @OlgaMaciaszek what do you think?
As an interim solution would be define this bean and it should make things work.
	@Bean
	CircuitBreakerNameResolver circuitBreakerNameResolver() {
		return (feignClientName, target, method) -> Feign.configKey(target.type(), method).replace("#","").replace("(","").replace(")", "").replace(",","");
	}

Then this means that the circuit breaker configuration itself is not working as well. Because I have defined it as demo-client.
As a side question, is it the case that a circuit breaker instance is created for every feign operation (method)?
Why can't the curcuit breaker name be the same as the feign client name? demo-client in this case. Additionally, I would never guess that the CB instance name is ClassName#method()  as this is not documented at all.

Then this means that the circuit breaker configuration itself is not working as well. Because I have defined it as demo-client.

The feign client name has no effect on the CB name

As a side question, is it the case that a circuit breaker instance is created for every feign operation (method)?

Yes each operation gets its own CB

Why can't the curcuit breaker name be the same as the feign client name? demo-client in this case.

See above, because each method gets its own CB, the names must be unique

Additionally, I would never guess that the CB instance name is ClassName#method() as this is not documented at all.

You can open an issue in spring-cloud-openfeign for this

@ryanjbaxter replacement would probably work fine for 3.1.x, however, as we're working on a major for 4.x now, we could consider changing the naming implementation in OF. wdyt? what naming convention would be the best for naming those circuits?

Fixed in Spring Cloud OpenFeign https://github.com/spring-cloud/spring-cloud-openfeign/pull/687


This is a simple but effective factorial calculator.

Hey, I understand this is not part of any of the languages you have but it is part of the C family. So I am giving it a go to see if you will accept it. Have a great day.

Hey there!
Sorry, but I can't merge this request Because this repository is only for data structures and algorithms related stuff. You can contribute your code in any projects repository. And if you have DSA related code then you are welcome to contribute here.
Thank you!


move logic for adding finalizer so it will occur for GitSync updates as well

Currently, the Finalizer is only added for a new GitSync being reconciled. However, it seems that it's possible for the code which updates resources based on Git changes to remove the Finalizer, given that it compares the Git spec to the running object and patches the difference.
Therefore, we should always make sure during reconciliations that the Finalizer is there.

Actually, now that I realize how client-side Apply works, I don't think this would happen. It should only remove fields if they were in its "last-applied-configuration".


chore(curriculum): Updated Step 6 concerning indentation of child elements

Proposed improvement on paragraph concerning nesting and indentation of child elements to increase readability.
Checklist:

[X] I have read freeCodeCamp's contribution guidelines.
[X] My pull request has a descriptive title (not a vague title like Update index.md)
[X] My pull request targets the main branch of freeCodeCamp.
[X] I have tested these changes either locally on my machine, or GitPod.

Closes #46443

Hey, sorry for label juggling. But bbsmooth stated important points, that are helpful. The comment


Will Symlinks ever be supported?

As the subject says.
Will Goofys ever support symlinks?

The problem is that when you do ls, goofys has to be able to tell the kernel if a file is a symlink, and all ListObject tells us is the file name, size, and etag. We can possibly stuff a known payload (and hence known etag) and treat all objects with that etag as symlink, although if any other files happen to have the same etag then we are kind of screwed.
What do you plan to use symlinks for and can you emulate this on the application side?

Yes I see that it has to be some kind of magic in a tag saying that the file content is the target path for a symlink. If the tag is suitably obscure (Goofys-Symlink-Target-Path=/example/file) then I'd have thought the chances of it colliding with a 'genuine' tag is pretty remote.
FWIW, s3fs does support symlinks so it might be worthwhile having a quick look at how that does it.
My use case is migration of a single-server based system to AWS. The filesystem in /var/www has numerous 'client' trees that have symlinks to directories of php code. To host this filesystem on S3 without symlinks would mean rewriting loads of stuff :(

I meant etag not this new object tagging thing that aws s3 supports. I just double checked and I don't see that ListObjects return the tags? Otherwise you'd have to fallback to what s3fs does which is to send a HEAD request for each object, at that point you could just use good old metadata (and also kills your performance)

You could have a magical _$symlink$ suffix.
lstat calls just return the mode with symlink bit set (which you can devise based on whether the suffix exists or not)
reading the symlink target is a separate readlink syscall anyway at which point you can just lookup the content of the suffixed key (that holds the target as body of the key) or HEAD of the object if you store the target as a tag.
even ls -lah issues two separate syscalls:
lstat("symlink", {st_mode=S_IFLNK|0777, st_size=26, ...}) = 0
lgetxattr("symlink", "security.selinux", 0xb30120, 255) = -1 ENODATA (No data available)
readlink("symlink", "target", 27) = 26

The problem is slightly more complicated. When the filesystem looks up "symlink", we don't yet know if it's a symlink yet, so we will have to HEAD both "symlink" and "symlink_$symlink$" even though most of the time they would not be symlinks.
We can lookup "symlink" first and fallback to "symlink_$symlink$", like we do for "dir" and "dir/", but that's already messy and we will also need to hand "symlink" and "symlink_$symlink$" both existing. Also, the mode is returned in readdir as well.
Using a magic etag has its downside too, since we can't use SSE-C or SSE-KMS even if that's configured (otherwise the etag may be meaningless) and the IAM policy may not allow us to do that.
Anyways I am not totally opposed to implementing symlink, I just haven't seen good enough reason do that yet given the costs. For example, is it sufficient to set x-amz-website-redirect-location and make sure goofys works fine with that? I imagine the use case of this is read-only and most people don't actually care if the file shows up as a symlink, as long as it's reading data from the correct object?

So I don't think it matters if it shows up as symlink or not, as long as its not consuming extra space. My usecase is uploading tons of OS libraries that have this weird mylib.so.<IP_ADDRESS> linking to mylib.so.0.0.1 linking to mylib.so.1 linking to mylib.so.
It's nice to have programs work from the s3 mount without having to dereference links and duplicate storage consumption. Perhaps symlinks could be optionally provided as the slow double head traversal for people who want that, as I personally would be ready to pay the price for that.
Other usecase is using symlinks for packages. I have postgres/latest symlink pointing at postgres/9.6.1 etc, so in the current state of affairs I end up uploading two versions. I know the usecases are wishy washy that could be worked around differently, but its sadly out of my control and I have to provide a solution that is equivalent to the legacy one.
Lastly, you could temporarily cache (seconds) existance of symlinks after the readdir call, so when someone stats(x) you know you saw x_$suffix$ not that long ago.

So if I read this correctly, as long as read is working correctly that's all you care about. Do you also need to be able to create these links within goofys? If not, then all goofys need to do is follow the redirect when we see x-amz-website-redirect-location, which seems like the right thing to do and cost nothing for people who are not using it.
goofys can set x-amz-website-redirect-location as well but it will cause the file to sometimes show up as symlink and sometimes not. Which maybe ok.

trying to use a twitter poll to see what other people think: https://twitter.com/s3goofys/status/883398280628928512

Well if you support reading, you should support writing too. I guess this could cover both hardlinks and symlinks.

I'm experimenting with hacky way to support symlinks in my current project. I'm using goofys as a volume for a docker container. Within the container I'm using overlayfs with goofys as the lowerdir. I let my job execute and write/read out everything to an upperlayer that's backed by tmpfs. After the job is completed I rsync everything that isn't a link into the goofys fs, and rsync all the links into the docker container and commit them. It's kind of working, but it's a very very ugly hack just to prove a that goofys has the performance to support my use case, which is backing the .pants.d working directory running within a CI environment without any persistant volumes(except s3).

What is the current behavior for symlinks? Will the syscall fail or will it just duplicate the data?

Any updates on this? We're very interested in having this functionality available :)


Missing PokemonModel and etc

I haven't seen the PokemonModel file and next structs: PokemonAPIList, Pokemon.
I made very fast fix just to see what's happened in the app.

Pokemon model is not uploaded on git.

https://github.com/charlessnow/SwitfUICollectionViewResearch.git

https://github.com/charlessnow/SwitfUICollectionViewResearch.git

I put PokemonModel here, you can use it.


Only Refresh rate possible is 60hz

Hello,
After the installation of the driver per instruction everything is working exept the higher refresh rates.
I can't choose any refresh rate higher 60hz.
any hints on that?

nevermind... I have simply adjusted it in the options.txt


Can you help me with some question of how to use this repo? Thank you very much!

hello, author, great thanks for your great work, but I'm a rookie of TAD, I have read over your code, but I can't understand that th model just output the start, end, confidence of a action, but not classify them, why it be called TAD?
My foolish understand of TAD all step:
first: train a video recognition model to extract feature for a untrimmed video
second: train a proposal model to get some proposal
last: use a video recognition model to classify proposal
am I right?  Dose the model of last step and first step is the same one?
Thank you and wait for your reply!
Very gratefull.

Hi @goldlee , very good question!

Your understanding is correct. It is OK to divide the pipeline into the three stages as your mentioned, but not necessary. Indeed, I was also thinking of these questions in the past year.
(a) Why do we have to extract the feature? And why do we have to use an action recognition model to provide the feature for localization?
(b) The definition of temporal action proposal came after the action localization problem. Action proposal is an intermediate product of action detection or localization. Maybe it is put more effort into the problem itself, and less effort into proposal generation.
(c) Video-level classification for actions plays an essential role in this problem. It should be interesting to see how snippet-level information help to classify the actions.

If you are also thinking about 1., you can answer your second question. In my view, the first step and the last step should not be the same model because the first step should provide video representation for the detection problem, but the last step should recognise the action.

TAD is a fast-developing field. Currently, many work are on step 2, several on step 3, but few on step 1.

Hi @frostinassiky,
Thanks for your wonderful work. I have read your code, but I didn't figure out how you classified the proposals generated by your framework.  Could you share with us the details?
Thanks again and look forward to your reply.


Internal error: Call to a member function connection() on null

Larastan Version: 0.5.2
--level used: 7

Description
Hi. I got the error from phpstan:
Internal error: Call to a member function connection() on null.
phpstan with --debug options give me that:

In Model.php line 1255:
Call to a member function connection() on null

So i think phpstan could not resolve static variable here https://github.com/illuminate/database/blob/6.x/Eloquent/Model.php#L1255
when i try save my models.
Laravel code where the issue was found
public static function resolveConnection($connection = null)
    {
        return static::$resolver->connection($connection);
    }

Thank you!

Hi,
Thank you for reporting this.
Can you try to narrow down to a specific code where this error happens?

Yes, sure.

DB::connection()->getPdo()->query('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');

So it gives the error while scanning that code? But there is no model used in the above code you gave. But the error is related to Model class.

Oh sorry, not that code.

$balance->amount += $amoun;
$balance->save();

I'm not able to reproduce this. So if you can give more info about this it'd be helpful. And maybe you can try to delete some code until this error does not happen. So we can pinpoint where exactly its happening.

I have localized the problem.
I have the class Partner.
class Partner extends Model
{
    /**
     * @return HasMany
     */
    public function balances(): HasMany
    {
        return $this->hasMany(Balance::class);
    }
}

Then i do
$partner = Partner::find(1);

$partner->balances()->lockForUpdate()->where('currency', '=', 'USD')->first();

And after that i got the error.

I am still not able to reproduce this. With the code you shared.
So, the only option is for you to debug this. Maybe try putting a breakpoint in resolveConnection method and check the call stack and see which Larastan code has executed that lead to that point.

Closing this since we did not get any feedback. Feel free to open a new issue if the problem still occurs in the newer version of Larastan.

That issue is not reproducible as its occured becuase of local mistakes that dev like me always do and learn new things because of that. So basically you have to go in vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php and check for function named "resolveConnection", then you need to make dd for $resolver and it will give you exact error, like in my case I have remove one package but app.php has serviceProvider for that. I hope it will help others as well.


Fix network request leak on pre-8.1 devices

For future reference: https://android.googlesource.com/platform/frameworks/base/+/dafed3d00818713b60ec09cfff482487a3405202
Pre 8.1 didn't have this fix, and so unregisterNetworkCallback would only unregister the most recent request and "leak" prior requests. An app can only have up to 100 ongoing requests at a time, otherwise it'll throw an exception. Notably, WebRTC also registers a callback in NetworkMonitorAutoDetect, so the exception would crash the app.


Issue with<EMAIL_ADDRESS>

Hello,
I am experimenting the next issue with<EMAIL_ADDRESS>and nodejs 12.10. I installed 2.2.9 and it worked.
Code
let subscriberOther = await db.collectionGroup('users').where('email', '==', req.email).get()
subscriberOther.forEach(doc => {
        subscriberId = doc.data().subscriber
        userDisplayName = doc.data().displayName,
	userRole = doc.data().roleId,
	owner = doc.data().owner
})

Error
(node:1348) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'length' of undefined     at Root.load (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\protobufjs\src\root.js:192:44)     at Root.loadSync (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\protobufjs\src\root.js:235:17)     at Object.loadSync (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@grpc\proto-loader\build\src\index.js:230:27)     at GrpcClient.loadFromProto (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\google-gax\build\src\grpc.js:118:44)     at GrpcClient.loadProto (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\google-gax\build\src\grpc.js:145:21)     at new FirestoreClient (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@google-cloud\firestore\build\src\v1\firestore_client.js:112:32)     at ClientPool.clientFactory (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@google-cloud\firestore\build\src\index.js:315:26)     at ClientPool.acquire (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@google-cloud\firestore\build\src\pool.js:64:35)     at ClientPool.run (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@google-cloud\firestore\build\src\pool.js:121:29)     at Firestore.readStream (C:\Users\ARSENIO\Desktop\Development\application\dev\backend\node_modules\@google-cloud\firestore\build\src\index.js:1000:26) (node:1348) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:1348) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Regards,
Arsenio

I have a solution for you, but I'd leave the issue open, as it affects almost all Google libraries and should be fixed upstream.
The solution is as follows:

remove node_modules
remove package-lock.json
npm install

@aaaguirrep Thanks for filing this issue and sorry to hear about your trouble! Unfortunately, there is an incompatibility if a new version of Firestore is used together with an older version of google-gax. We should have avoided this by releasing this as part of a major version bump, but we failed to realize this until after the release.
For now, to make sure that you get the newest version, please follow the steps as outlined in your latest comment.

We see this issue with latest version of Admin 8.13.
Error: not supported
        at Root.loadSync (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/protobufjs/src/root.js:246:15)
        at Object.loadSync (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/@grpc/proto-loader/build/src/index.js:217:29)
        at GrpcClient.loadFromProto (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/google-gax/src/grpc.ts:151:40)
        at GrpcClient.loadProto (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/google-gax/src/grpc.ts:185:17)
        at new FirestoreClient (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/v1/firestore_client.js:118:38)
        at ClientPool.Firestore._clientPool.pool_1.ClientPool [as clientFactory] (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/index.js:326:26)
        at ClientPool.acquire (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/pool.js:87:35)
        at ClientPool.run (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/pool.js:164:29)
        at Firestore.request (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/index.js:983:33)
        at WriteBatch.commit_ (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/write-batch.js:496:48)
    Caused by: Error:
        at WriteBatch.commit (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/write-batch.js:415:23)
        at DocumentReference.set (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/node_modules/firebase-admin/node_modules/@google-cloud/firestore/build/src/reference.js:341:14)
        at FirestoreStandardDatabase.create (/Volumes/Work/Projects/Products/Platforms//Backend/FirebaseProject/functions/src/common/systems/database/providers/firestore-standard/firestore-standard-database.provider.ts:73:45)

Can someone suggest proper way to fix the gprc errors on every update?

Do you directly depend on google-gax or any other Google library besides Firestore?

@schmidt-sebastian  We use pubsub, cloud tasks as well. Let me share my package.json
"dependencies": {
    "@google-cloud/firestore": "^4.1.1",
    "@google-cloud/functions-framework": "^1.6.0",
    "@google-cloud/pubsub": "^2.2.0",
    "@google-cloud/storage": "^5.1.2",
    "@google-cloud/tasks": "^2.1.0",
    "@google-cloud/trace-agent": "^5.1.0",
    "@types/axios": "^0.14.0",
    "@types/cors": "^2.8.5",
    "@types/dotenv": "^6.1.1",
    "@types/express": "^4.17.7",
    "@types/faker": "^4.1.12",
    "@types/http-errors": "^1.8.0",
<EMAIL_ADDRESS>"^4.2.6",
    "@types/morgan": "^1.9.1",
    "@types/nanoid": "^2.1.0",
    "@types/node-fetch": "^2.5.7",
    "@types/uuid": "^3.4.9",
    "axios": "^0.19.2",
    "cors": "^2.8.5",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "express-async-router": "^0.1.15",
    "firebase-admin": "^8.13.0",
    "firebase-functions": "^3.8.0",
    "google-auth-library": "^6.0.5",
    "lodash.chunk": "^4.2.0",
    "max-listeners-exceeded-warning": "0.0.1",
    "morgan": "^1.10.0",
    "nanoid": "^2.1.11",
    "node-fetch": "^2.6.0",
    "npm": "^6.14.6",
    "openapi-validator-middleware": "^3.0.1",
    "pubsub-js": "^1.8.0",
    "razorpay": "^2.0.6",
    "require-benchmark": "^1.0.0",
    "require-so-slow": "^2.0.2",
    "uuid": "^3.4.0"
  },
  "devDependencies": {
    "@firebase/app": "^0.6.8",
    "@firebase/testing": "^0.19.6",
    "@types/jest": "^25.2.3",
    "@types/node": "^13.13.14",
    "@types/sharp": "^0.25.0",
    "@types/shortid": "0.0.29",
    "@types/supertest": "^2.0.10",
    "cross-env": "^7.0.2",
    "faker": "^4.1.0",
    "fs-extra": "^9.0.1",
    "google-play-scraper": "^7.1.3",
    "jest": "^25.5.4",
    "jest-extended": "^0.11.5",
    "jest-stare": "^1.27.0",
    "sharp": "^0.25.4",
    "ts-essentials": "^6.0.7",
    "ts-jest": "^25.5.1",
    "ts-node": "^8.10.2",
    "tslint": "^6.1.2",
    "typescript": "^3.8.9"
  },

Please update to firebase-admin v9 as the first step. That should remove on duplicate copy of @google-cloud/firestore.

@schmidt-sebastian  Unfortunately, I don't see any difference. Still its throwing the same error.
On another note, upgrading to v9 gave this warning
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

But I see 3.8 is the latest though.

I am not sure how to solve your initial issue. It seems strange that you would run into this problem with every upgrade.
Regarding the warning in firebase-functions - we are working on releasing a new version that will bump the dependency to firebase-admin v9. For now, I would advise to just ignore the warning.


how to implement Qibla direction?

we get the value but how to implement it?

As salam aleykum,
I'm also interested in implementing Qibla from qibla.direction.

For Flutter you can use something like:
               Transform.rotate(
                  angle: qiblaDirectionRad, //in radians
                  child: CustomPaint(
                    size: Size(264, 264),
                    painter: CompassPointerPainter(),
                  ),
                ),

I am using a custom painter as a child, but could be any widget you prefer. For the compass function I use flutter_compass package.
Please note that qibla.direction provides the result in degrees, while Flutter's Transform widget uses radians. Convert degrees to radians via formula radians = degrees × π / 180° or as in Flutter:
import 'dart:math' as math;
...
  double qiblaDirectionRad = qibla.direction  * (math.pi / 180.0);