Giter Club home page Giter Club logo

cactus's People

Contributors

jonathanl-telenav avatar jonathanlocke avatar timboudreau avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cactus's Issues

Maven build goals

build-type = [ compile | default | all | release-local | release-to-ossrh | documentation | javadoc | lexakai | codeflowers | dmg ]
build-flag = [ attach-jars | sign-jars | debug | dry-run | no-tests | debug-tests | no-javadoc | quick-tests | quiet | single-threaded ]

(1) mvn telenav:build -Dbuild-type=[ build-type ] -Dbuild-flags=[ build-flags ] * — performs the given type of build with the given build flags

(1) mvn telenav:clean-caches — cleans all cache folders and temporary files (prompts before each deletion)
(1) mvn telenav:clean-all — cleans caches and regenerable files in the source tree and in the local maven repository (prompts before each deletion)
(1) mvn telenav:clean-sparkling — cleans caches, regenerable files and removes the entire local maven repository (prompts before each deletion)

remove cactus from build?

because we depend on the same set of superpoms in safety-service, cactus versions have different meanings in the telenav-build workspace and in the safety-service-build workspace. since cactus is not in the safety-service-build workspace, it wants the version to be the most recently published version (right now 1.5.26), while the telenav-build workspace wants it to be the next version (right now 1.5.27) because cactus is in the workspace. there are a few different solutions possible, but perhaps the cleanest is to remove cactus from the telenav-build workspace and only use published versions of cactus in telenav-build and safety-service-build workspaces.

ModuleInfo compiler parse fails

Our new module info compiler reports the error below when building the hadoop doubly-shaded jar. The problem seems to be due to the exports to clause I added in kivakit-resource's module-info.java: exports com.telenav.kivakit.resource.internal.lexakai to kivakit.network.http. The to clause has been left commented out in the feature/relocate-lexakai-annotations branch because it causes this failure.

[WARNING] Begin compile of synthetic module-info.java
[INFO] ModuleInfo Compiler: /var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/minfo-synthl6p82ep9-1/src/module-info.java:92: warning: [module] module not found: kivakit.network.http
[INFO]         kivakit.network.http;
[INFO]                        ^
[INFO] /var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/minfo-synthl6p82ep9-1/src/module-info.java:92: warning: [module] module not found: kivakit.network.http
[INFO]         kivakit.network.http;

remove debugging statements at the appropriate time

BITS IN FACTOR 12
[958](https://github.com/Telenav/kivakit-extensions/runs/7981468602?check_suite_focus=true#step:41:959)
BITS IN V 12
[959](https://github.com/Telenav/kivakit-extensions/runs/7981468602?check_suite_focus=true#step:41:960)
REAL: orange light-bulb
[960](https://github.com/Telenav/kivakit-extensions/runs/7981468602?check_suite_focus=true#step:41:961)
MINE: turquoise tornado
[961](https://github.com/Telenav/kivakit-extensions/runs/7981468602?check_suite_focus=true#step:41:962)
[her, our, their, his, thy, my, your, its]

-Dcactus.permit-local-changes=true fails

this maven command:

mvn -Dorg.slf4j.simpleLogger.logFile="/var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/maven-Wed-2022.07.30-17.14-telenav-checkout.log" -Dorg.slf4j.simpleLogger.defaultLogLevel="info" -Dorg.slf4j.simpleLogger.cacheOutputStream=false -Dcactus.fetch-first=true -Dcactus.base-branch=develop -Dcactus.target-branch="feature/cors" -Dcactus.update-root=true -Dcactus.include-root=true -Dcactus.create-branches=true -Dcactus.create-local-branches=true -Dcactus.push=false -Dcactus.permit-local-changes=true -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.26:checkout validate

executed on the safety-service-build workspace, with all projects on the develop branch, unexpectedly fails to switch branches:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  10.610 s
[INFO] Finished at: 2022-08-30T17:14:23-06:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.26:checkout (default-cli) on project safety-service-uber-bom: Cannot change all branches to 'feature/cors:
**[ERROR] Have local changes in kivakit-extensions - cannot proceed to change to branch feature/cors**
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :safety-service-uber-bom

would expect it to switch branches.

workaround: if I manually create the branch feature/cors the plugin then succeeds in switching all branches to feature/cors.

Maven source control goals

(2) mvn telenav:start -Dbranch-type=[ feature | hotfix | release ] -Dbranch=[ branch-name ] — starts a git-flow branch of the given type and name
(2) mvn telenav:finish -Dbranch-type=[ feature | hotfix | release ] -Dbranch=[ branch-name ] — completes a git-flow branch of the given type and name

(1) mvn telenav:git-checkout -Dbranch=[ branch-name ] — checks out the given branch name in all repositories, after checking that all changes are committed
(1) mvn telenav:git-commit -Dmessage=[ message ] — commits changes in all repositories using the given message
(1) mvn telenav:git-push — pushes git changes in all repositories
(1) mvn telenav:git-status — determines git status in all repositories
(1) mvn telenav:git-update — updates all repositories

KivaKit PR build failed

There's nothing wrong with the branch, as you can see here: https://github.com/Telenav/kivakit/actions. But the pull request to develop fails: https://github.com/Telenav/kivakit/runs/7791514261?check_suite_focus=true

[1](https://github.com/Telenav/kivakit/runs/7791514261?check_suite_focus=true#step:33:1)
Run cd $GITHUB_WORKSPACE/telenav-build/$PROJECT && git checkout $GITHUB_SHA
[12](https://github.com/Telenav/kivakit/runs/7791514261?check_suite_focus=true#step:33:13)
fatal: reference is not a tree: df51dba14f3440c8ef0ae0631a56326fdd061b79
[13](https://github.com/Telenav/kivakit/runs/7791514261?check_suite_focus=true#step:33:14)
Error: Process completed with exit code 128.

Evaluate environment variables

Evaluate environment variables and remove any unneeded ones. Consider keeping these:

TELENAV_WORKSPACE=/Users/jonathan/Workspaces/kivakit-1.6/feature

KIVAKIT_CACHE_HOME=/Users/jonathan/.kivakit/1.5.1-SNAPSHOT
KIVAKIT_HOME=/Users/jonathan/Workspaces/kivakit-1.6/feature/kivakit
KIVAKIT_VERSION=1.5.1-SNAPSHOT

MESAKIT_CACHE_HOME=/Users/jonathan/.kivakit/1.5.1-SNAPSHOT
MESAKIT_HOME=/Users/jonathan/Workspaces/kivakit-1.6/feature/kivakit
MESAKIT_VERSION=0.9.3

concurrent modification exception in KillQueue

Exception in thread "Process timeout killer" java.util.ConcurrentModificationException
at java.base/java.util.WeakHashMap$HashIterator.nextEntry(WeakHashMap.java:809)
at java.base/java.util.WeakHashMap$EntryIterator.next(WeakHashMap.java:848)
at java.base/java.util.WeakHashMap$EntryIterator.next(WeakHashMap.java:846)
at com.telenav.cactus.process.KillQueue.leastInterval(KillQueue.java:87)
at com.telenav.cactus.process.KillQueue.killLoop(KillQueue.java:108)
at java.base/java.lang.Thread.run(Thread.java:833)

build of PR 19 failed due to git error

Run cd $GITHUB_WORKSPACE/cactus && git checkout -t origin/$GITHUB_REF_NAME -b build-$GITHUB_RUN_ID
fatal: 'origin/19/merge' is not a commit and a branch 'build-2827148062' cannot be created from it
Error: Process completed with exit code 128.

Maven versioning goals

(2) mvn telenav:version-update -Drepository=[ repository-name | all ] -Dversion=[ version ] — updates the version number for the given repository or all repositories
(2) mvn telenav:version-show -Drepository=[ repository-name | all ] — shows the version number of a given repository or all repositories
(3) mvn telenav:version-check -Drepository=[ repository-name | all ] — checks the consistency of version numbers in the given repository or all repositories

cactus fails to create pull request for root

Creating a pull request for feature/testing results in the following output. Even though it says it put telenav-build in the pull request set, it thinks there is no PR.

[INFO] --- cactus-maven-plugin:1.5.24:git-pull-request (default-cli) @ telenav-build ---
[INFO] Ignoring matched checkout cactus for pull request - because we are matching the branch feature/testing but it is on the branch develop

[SNIP]

[INFO] Ignoring matched checkout telenav-superpom for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Will include telenav-build in the pull request set, on branch feature/testing
[WARNING] Every checkout matched already has an open, mergeable PR.  Nothing to do.

kill queue failure

Exception in thread "Process timeout killer" java.util.ConcurrentModificationException
	at java.base/java.util.WeakHashMap$HashIterator.nextEntry(WeakHashMap.java:809)
	at java.base/java.util.WeakHashMap$EntryIterator.next(WeakHashMap.java:848)
	at java.base/java.util.WeakHashMap$EntryIterator.next(WeakHashMap.java:846)
	at java.base/java.util.AbstractCollection.addAll(AbstractCollection.java:335)
	at java.base/java.util.HashSet.<init>(HashSet.java:121)
	at com.telenav.cactus.process.KillQueue.leastInterval(KillQueue.java:87)
	at com.telenav.cactus.process.KillQueue.killLoop(KillQueue.java:108)
	at java.base/java.lang.Thread.run(Thread.java:833)

cactus create pull request fails with exception

This command:

mvn -X -Dcactus.authentication-token="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" -Dcactus.title="add support for CORS" -Dcactus.to-branch=develop -Dcactus.from-branch="feature/cors2" -Dcactus.body=" refactored to allow access to servlet request for every request" -Dcactus.reviewers="rodherz,sunshine-syz,timboudreau,wenjuanj,jonathanl-telenav,haifeng-z" -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.27:git-pull-request validate

produces this exception

ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.27:git-pull-request (default-cli) on project safety-service-uber-bom: java.lang.NullPointerException: Cannot invoke "java.net.URI.toURL()" because "uri" is null -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.27:git-pull-request (default-cli) on project safety-service-uber-bom: java.lang.NullPointerException: Cannot invoke "java.net.URI.toURL()" because "uri" is null
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:306)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.plugin.MojoFailureException: java.lang.NullPointerException: Cannot invoke "java.net.URI.toURL()" because "uri" is null
    at com.telenav.cactus.maven.mojobase.BaseMojo.run (BaseMojo.java:674)
    at com.telenav.cactus.maven.mojobase.BaseMojo.execute (BaseMojo.java:355)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.NullPointerException: Cannot invoke "java.net.URI.toURL()" because "uri" is null
    at com.telenav.cactus.maven.GitPullRequestMojo.lambda$createPullRequests$14 (GitPullRequestMojo.java:455)
    at com.telenav.cactus.tasks.TaskImpl.accept (TaskImpl.java:45)
    at com.telenav.cactus.tasks.TaskImpl.accept (TaskImpl.java:30)
    at com.telenav.cactus.tasks.TaskGroupImpl.accept (TaskGroupImpl.java:96)
    at com.telenav.cactus.tasks.TaskGroupImpl.accept (TaskGroupImpl.java:36)
    at com.telenav.cactus.tasks.Tasks.lambda$execute$0 (Tasks.java:125)
    at com.telenav.cactus.tasks.Rollback.executeWithRollback (Rollback.java:57)
    at com.telenav.cactus.tasks.Tasks.execute (Tasks.java:119)
    at com.telenav.cactus.maven.GitPullRequestMojo.createPullRequests (GitPullRequestMojo.java:470)
    at com.telenav.cactus.maven.GitPullRequestMojo.execute (GitPullRequestMojo.java:196)
    at com.telenav.cactus.maven.mojobase.ScopedCheckoutsMojo.lambda$execute$4 (ScopedCheckoutsMojo.java:163)
    at com.mastfrog.function.throwing.ThrowingConsumer.lambda$toNonThrowing$0 (ThrowingConsumer.java:62)
    at java.util.Optional.ifPresent (Optional.java:178)
    at com.mastfrog.function.optional.ThrowingOptionalWrapper.ifPresent (ThrowingOptionalWrapper.java:60)
    at com.telenav.cactus.maven.mojobase.BaseMojo.withProjectTree (BaseMojo.java:594)
    at com.telenav.cactus.maven.mojobase.ScopedCheckoutsMojo.execute (ScopedCheckoutsMojo.java:145)
    at com.telenav.cactus.maven.mojobase.ScopeMojo.performTasks (ScopeMojo.java:184)
    at com.telenav.cactus.maven.mojobase.BaseMojo.lambda$run$3 (BaseMojo.java:654)
    at com.telenav.cactus.maven.log.BuildLog.lambda$run$0 (BuildLog.java:140)
    at com.telenav.cactus.maven.log.BuildLog.withLog (BuildLog.java:88)
    at com.telenav.cactus.maven.log.BuildLog.run (BuildLog.java:136)
    at com.telenav.cactus.maven.mojobase.BaseMojo.run (BaseMojo.java:651)
    at com.telenav.cactus.maven.mojobase.BaseMojo.execute (BaseMojo.java:355)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :safety-service-uber-bom

lexakai docs generation fails

the release script fails with:

[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.26:lexakai (generate-lexakai-docs) on project kivakit: Could not download com.telenav.lexakai:lexakai:jar:app:1.0.8 from https://repo1.maven.org/maven2 -> [Help 1]

it seems it can't download the 1.0.8 jar

cactus pull request create fails

[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.23:git-pull-request (default-cli) on project telenav-build: com.telenav.cactus.cli.ProcessFailedException: gh pr create --head feature/maven-logging --base develop --title blah --body blah (in /Users/jonathan/Workspaces/telenav-build/cactus) exited 1
[ERROR] pull request create failed: GraphQL error: No commits between develop and feature/maven-logging

[Bug] Failure in cactus when run telenav-pull in safety-service-build

Maven command

   mvn -Dorg.slf4j.simpleLogger.logFile="/var/folders/_1/187j4_wj03gg826916xz6s5n8450y4/T/maven-Wed-2022.08.06-16.41-telenav-pull.log" -Dorg.slf4j.simpleLogger.defaultLogLevel="info" -Dorg.slf4j.simpleLogger.cacheOutputStream=false -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.27:pull validate 2>&1

failed with exit code 256. A complete log is in /var/folders/_1/187j4_wj03gg826916xz6s5n8450y4/T/maven-Wed-2022.08.06-16.41-telenav-pull.log.
The last maven log is always /var/folders/_1/187j4_wj03gg826916xz6s5n8450y4/T/maven-last.log

Errors

[INFO] safety-service-pipeline-parking 1.1.3-SNAPSHOT ..... SUCCESS [  0.270 s]
[INFO] safety-service-pipeline-driving 1.1.3-SNAPSHOT ..... SUCCESS [  0.574 s]
[INFO] safety-service-pipeline 1.1.3-SNAPSHOT ............. SUCCESS [  0.002 s]
[INFO] safety-service-microservice 1.1.3-SNAPSHOT ......... SUCCESS [  0.134 s]
[INFO] safety-service 1.1.3-SNAPSHOT ...................... SUCCESS [  0.002 s]
[INFO] safety-service-bom 1.1.1-SNAPSHOT .................. FAILURE [ 11.328 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  22.146 s
[INFO] Finished at: 2022-09-06T16:42:10-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.27:pull (default-cli) on project safety-service-uber-bom: com.telenav.cactus.cli.ProcessFailedException: git --no-pager -c push.default=current -c pull.rebase=false -c diff.renamelimit=0 -c init.defaultBranch=main merge-base FETCH_HEAD feature/cors2 (in /Users/yizhous/Desktop/workspace/safety-service-build) exited 128
[ERROR] fatal: Not a valid object name FETCH_HEAD
[ERROR]
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :safety-service-uber-bom

debug exception should be removed at the appropriate time

java.lang.Exception: kivakit-testing on ProjectInformationMojo @ 548408077
[663](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:664)
	at com.telenav.cactus.maven.ParallelismDiagnosticsLogger$Diagnostic.<init>(ParallelismDiagnosticsLogger.java:209)
[664](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:665)
	at com.telenav.cactus.maven.ParallelismDiagnosticsLogger.logDiagnostic(ParallelismDiagnosticsLogger.java:102)
[665](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:666)
	at com.telenav.cactus.maven.ProjectInformationMojo.diagnostics(ProjectInformationMojo.java:87)
[666](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:667)
	at com.telenav.cactus.maven.ProjectInformationMojo.performTasks(ProjectInformationMojo.java:66)
[667](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:668)
	at com.telenav.cactus.maven.mojobase.BaseMojo.lambda$run$3(BaseMojo.java:654)
[668](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:669)
	at com.telenav.cactus.maven.log.BuildLog.lambda$run$0(BuildLog.java:140)
[669](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:670)
	at com.telenav.cactus.maven.log.BuildLog.withLog(BuildLog.java:88)
[670](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:671)
	at com.telenav.cactus.maven.log.BuildLog.run(BuildLog.java:136)
[671](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:672)
	at com.telenav.cactus.maven.mojobase.BaseMojo.run(BaseMojo.java:651)
[672](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:673)
	at com.telenav.cactus.maven.mojobase.BaseMojo.execute(BaseMojo.java:355)
[673](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:674)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
[674](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:675)
	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:301)
[675](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:676)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:211)
[676](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:677)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:165)
[677](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:678)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:157)
[678](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:679)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:121)
[679](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:680)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[680](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:681)
	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
[681](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:682)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:127)
[682](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:683)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:294)
[683](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:684)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
[684](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:685)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
[685](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:686)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:960)
[686](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:687)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:293)
[687](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:688)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:196)
[688](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:689)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[689](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:690)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
[690](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:691)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[691](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:692)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
[692](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:693)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
[693](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:694)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
[694](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:695)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
[695](https://github.com/Telenav/kivakit-extensions/runs/7979334691?check_suite_focus=true#step:41:696)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

invalid pom.xml in telenav-superpom-lexakai

I believe the configuration should go inside the execution element. This might explain why it's not updating readmes.

                    <plugin>
                        <groupId>com.telenav.cactus</groupId>
                        <artifactId>cactus-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>lexakai</id>
                                <phase>install</phase>
                                <goals>
                                    <goal>lexakai</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <verbose>true</verbose>
                            <overwrite-resources>true</overwrite-resources>
                            <update-readme>true</update-readme>
                        </configuration>
                    </plugin>

maven plugin git checkout fails

Description
The cactus maven plugin checkout command fails with an exception.

Reproduce Case
mvn --quiet "$scope" -Dtelenav.branch="$branch" -Dtelenav.failover-base-branch="" -Dtelenav.permit-local-modifications=false com.telenav.cactus:cactus-maven-plugin:checkout || exit 1

Stack Trace
[~/Workspaces/kivakit-1.6/feature] telenav-git-checkout.sh
Branch? develop
[ERROR] root
java.lang.NoClassDefFoundError: com/google/common/base/Strings
at com.telenav.cactus.maven.CheckoutMojo.onValidateParameters (CheckoutMojo.java:79)
at com.telenav.cactus.maven.mojobase.ScopeMojo.validateParameters (ScopeMojo.java:241)
at com.telenav.cactus.maven.mojobase.BaseMojo.internalValidateParameters (BaseMojo.java:207)
at com.telenav.cactus.maven.mojobase.BaseMojo.lambda$run$0 (BaseMojo.java:272)
at com.telenav.cactus.maven.log.BuildLog.lambda$run$0 (BuildLog.java:99)
at com.telenav.cactus.maven.log.BuildLog.withLog (BuildLog.java:76)
at com.telenav.cactus.maven.log.BuildLog.run (BuildLog.java:95)
at com.telenav.cactus.maven.mojobase.BaseMojo.run (BaseMojo.java:270)
at com.telenav.cactus.maven.mojobase.BaseMojo.execute (BaseMojo.java:234)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Strings
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass (SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass (ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:239)
at com.telenav.cactus.maven.CheckoutMojo.onValidateParameters (CheckoutMojo.java:79)
at com.telenav.cactus.maven.mojobase.ScopeMojo.validateParameters (ScopeMojo.java:241)
at com.telenav.cactus.maven.mojobase.BaseMojo.internalValidateParameters (BaseMojo.java:207)
at com.telenav.cactus.maven.mojobase.BaseMojo.lambda$run$0 (BaseMojo.java:272)
at com.telenav.cactus.maven.log.BuildLog.lambda$run$0 (BuildLog.java:99)
at com.telenav.cactus.maven.log.BuildLog.withLog (BuildLog.java:76)
at com.telenav.cactus.maven.log.BuildLog.run (BuildLog.java:95)
at com.telenav.cactus.maven.mojobase.BaseMojo.run (BaseMojo.java:270)
at com.telenav.cactus.maven.mojobase.BaseMojo.execute (BaseMojo.java:234)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.4.10:checkout (default-cli) on project telenav-build: java.lang.NoClassDefFoundError: com/google/common/base/Strings: com.google.common.base.Strings -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn -rf :telenav-build

cactus corrupts .gitmodules file?

something added this to the end of my .gitmodules file, which then got committed and pushed, unfortunately.

[submodule ""]
branch = develop

can you fix this and hopefully also fix GitHub by removing that commit? thanks.

PR ambiguity check in approve pull request mojo fails

mvn -Dorg.slf4j.simpleLogger.logFile="/var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/maven-Fri-2022.08.01-12.08-telenav-approve-pull-request.log" -Dorg.slf4j.simpleLogger.defaultLogLevel="info" -Dorg.slf4j.simpleLogger.cacheOutputStream=false -Dcactus.authentication-token="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" -Dcactus.pr.branch-to-approve="feature/cors2" -Dcactus.pr.body="self-approving" -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.27:git-approve-pull-request validate 2>&1

results in this failure (neither cited pull request is related):

[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.27:git-approve-pull-request (default-cli) on project safety-service-uber-bom: 

Ambiguous PRs - more than one PR on feature/cors2 in safety-service: 
[

{"baseRefName":"develop","body":"","headRefName":"jenkins-build-checks","mergeable":true,"number":101,"state":"OPEN","title":"trivial changes for testing PR build check","url":"https://github.com/Telenav/safety-service/pull/101","open":true}, 

{"baseRefName":"develop","body":"https://github.com/Telenav/safety-service/issues/86\r\n\r\nplease don't merge until:\r\n\r\n1. new kivakit version is published\r\n2. safety-service supermom references this version\r\n3. Jenkins build succeeds","headRefName":"feature/For_parking_incidents,_the_response_is_different_from_Swagger_definition_#86_and_narrow_logging","mergeable":true,"number":88,"state":"OPEN","title":"Feature/for parking incidents, the response is different from swagger definition #86 and narrow logging","url":"https://github.com/Telenav/safety-service/pull/88","open":true}

] -> [Help 1]

strange thread dump

any idea where this came from?

[INFO] Running com.telenav.cactus.test.project.generator.BranchCleanupTest
[main] INFO BuildLog - [develop 8fdd110] Initial content for root repo
[main] INFO BuildLog -  1 file changed, 23 insertions(+)
[main] INFO BuildLog -  create mode 100644 pom.xml
Maven location is /Users/jonathan/Developer/apache-maven-3.8.5/bin/mvn

 -------- Thread Dump for PID 50120 --------
2022-08-31 11:33:48
Full thread dump OpenJDK 64-Bit Server VM (17.0.3+6-LTS mixed mode, sharing):

Threads class SMR info:
_java_thread_list=0x00006000006d2c80, length=13, elements={
0x00007f9b8b00a800, 0x00007f9b6b008200, 0x00007f9b6b80a400, 0x00007f9b8a808c00,
0x00007f9b8a809200, 0x00007f9b8a813000, 0x00007f9b8a813600, 0x00007f9b8a81f400,
0x00007f9b8a81fa00, 0x00007f9b8c812800, 0x00007f9b6b80c000, 0x00007f9b6b043400,
0x00007f9b8b00ae00
}

"main" #1 prio=5 os_prio=31 cpu=98.59ms elapsed=0.17s tid=0x00007f9b8b00a800 nid=0x1703 runnable  [0x0000700003ec2000]
   java.lang.Thread.State: RUNNABLE
	at jdk.internal.ref.CleanerImpl.getCleanerImpl([email protected]/CleanerImpl.java:77)
	at jdk.internal.ref.PhantomCleanable.<init>([email protected]/PhantomCleanable.java:67)
	at jdk.internal.ref.CleanerImpl$PhantomCleanableRef.<init>([email protected]/CleanerImpl.java:164)
	at java.lang.ref.Cleaner.register([email protected]/Cleaner.java:220)
	at java.util.zip.ZipFile$ZipFileInflaterInputStream.<init>([email protected]/ZipFile.java:426)
	at java.util.zip.ZipFile$ZipFileInflaterInputStream.<init>([email protected]/ZipFile.java:419)
	at java.util.zip.ZipFile.getInputStream([email protected]/ZipFile.java:386)
	- locked <0x00000010800d4798> (a java.util.jar.JarFile)
	at java.util.jar.JarFile.getInputStream([email protected]/JarFile.java:842)
	- locked <0x00000010800d4798> (a java.util.jar.JarFile)
	at jdk.internal.loader.URLClassPath$JarLoader$2.getInputStream([email protected]/URLClassPath.java:879)
	at jdk.internal.loader.Resource.cachedInputStream([email protected]/Resource.java:77)
	- locked <0x0000001080a3a028> (a jdk.internal.loader.URLClassPath$JarLoader$2)
	at jdk.internal.loader.Resource.getByteBuffer([email protected]/Resource.java:163)
	at java.net.URLClassLoader.defineClass([email protected]/URLClassLoader.java:511)
	at java.net.URLClassLoader$1.run([email protected]/URLClassLoader.java:427)
	at java.net.URLClassLoader$1.run([email protected]/URLClassLoader.java:421)
	at java.security.AccessController.executePrivileged([email protected]/AccessController.java:807)
	at java.security.AccessController.doPrivileged([email protected]/AccessController.java:712)
	at java.net.URLClassLoader.findClass([email protected]/URLClassLoader.java:420)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:425)
	- locked <0x0000001080a38d90> (a java.lang.Object)
	at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
	at org.apache.maven.extension.internal.CoreExtensionEntry.<clinit>(CoreExtensionEntry.java:82)
	at org.apache.maven.cli.MavenCli.container(MavenCli.java:631)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:196)
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0([email protected]/Native Method)
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke([email protected]/NativeMethodAccessorImpl.java:77)
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke([email protected]/DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke([email protected]/Method.java:568)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

"Reference Handler" #2 daemon prio=10 os_prio=31 cpu=0.10ms elapsed=0.15s tid=0x00007f9b6b008200 nid=0x3e03 waiting on condition  [0x00007000045dd000]
   java.lang.Thread.State: RUNNABLE
	at java.lang.ref.Reference.waitForReferencePendingList([email protected]/Native Method)
	at java.lang.ref.Reference.processPendingReferences([email protected]/Reference.java:253)
	at java.lang.ref.Reference$ReferenceHandler.run([email protected]/Reference.java:215)

"Finalizer" #3 daemon prio=8 os_prio=31 cpu=0.16ms elapsed=0.15s tid=0x00007f9b6b80a400 nid=0x3f03 in Object.wait()  [0x00007000046e0000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait([email protected]/Native Method)
	- waiting on <0x0000001080002f30> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove([email protected]/ReferenceQueue.java:155)
	- locked <0x0000001080002f30> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove([email protected]/ReferenceQueue.java:176)
	at java.lang.ref.Finalizer$FinalizerThread.run([email protected]/Finalizer.java:172)

"Signal Dispatcher" #4 daemon prio=9 os_prio=31 cpu=0.16ms elapsed=0.15s tid=0x00007f9b8a808c00 nid=0xa503 waiting on condition  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Service Thread" #5 daemon prio=9 os_prio=31 cpu=0.02ms elapsed=0.15s tid=0x00007f9b8a809200 nid=0x5a03 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Monitor Deflation Thread" #6 daemon prio=9 os_prio=31 cpu=0.02ms elapsed=0.15s tid=0x00007f9b8a813000 nid=0x5b03 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #7 daemon prio=9 os_prio=31 cpu=27.35ms elapsed=0.15s tid=0x00007f9b8a813600 nid=0x5c03 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   Compiling:  359   !   4       java.util.zip.ZipFile$Source::checkAndAddEntry (209 bytes)

"C1 CompilerThread0" #15 daemon prio=9 os_prio=31 cpu=30.47ms elapsed=0.15s tid=0x00007f9b8a81f400 nid=0x5d03 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   Compiling:  392       3       java.net.URLStreamHandler::parseURL (1201 bytes)

"Sweeper thread" #19 daemon prio=9 os_prio=31 cpu=0.02ms elapsed=0.15s tid=0x00007f9b8a81fa00 nid=0x5f03 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread1" #16 daemon prio=9 os_prio=31 cpu=27.01ms elapsed=0.15s tid=0x00007f9b8c812800 nid=0x6103 waiting on condition  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE
   No compile task

"Common-Cleaner" #20 daemon prio=8 os_prio=31 cpu=0.07ms elapsed=0.14s tid=0x00007f9b6b80c000 nid=0x6203 in Object.wait()  [0x0000700004ffe000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait([email protected]/Native Method)
	- waiting on <0x000000108004a428> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove([email protected]/ReferenceQueue.java:155)
	- locked <0x000000108004a428> (a java.lang.ref.ReferenceQueue$Lock)
	at jdk.internal.ref.CleanerImpl.run([email protected]/CleanerImpl.java:140)
	at java.lang.Thread.run([email protected]/Thread.java:833)
	at jdk.internal.misc.InnocuousThread.run([email protected]/InnocuousThread.java:162)

"Notification Thread" #21 daemon prio=9 os_prio=31 cpu=0.04ms elapsed=0.14s tid=0x00007f9b6b043400 nid=0x6303 runnable  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Attach Listener" #22 daemon prio=9 os_prio=31 cpu=0.45ms elapsed=0.10s tid=0x00007f9b8b00ae00 nid=0x6403 waiting on condition  [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"VM Thread" os_prio=31 cpu=0.30ms elapsed=0.16s tid=0x00007f9b7a707190 nid=0x4603 runnable

"GC Thread#0" os_prio=31 cpu=0.06ms elapsed=0.16s tid=0x00007f9b8b808570 nid=0x4c03 runnable

"G1 Main Marker" os_prio=31 cpu=0.02ms elapsed=0.16s tid=0x00007f9b8b808c10 nid=0x4b03 runnable

"G1 Conc#0" os_prio=31 cpu=0.02ms elapsed=0.16s tid=0x00007f9b8b809490 nid=0x3203 runnable

"G1 Refine#0" os_prio=31 cpu=0.04ms elapsed=0.16s tid=0x00007f9b8b80d0f0 nid=0x4903 runnable

"G1 Service" os_prio=31 cpu=0.03ms elapsed=0.16s tid=0x00007f9b8b80d980 nid=0x4703 runnable

"VM Periodic Task Thread" os_prio=31 cpu=0.09ms elapsed=0.14s tid=0x00007f9b6a8063f0 nid=0x9e03 waiting on condition

JNI global refs: 17, weak refs: 0

test new script

I cannot push my changes because of the earlier problem with .gitmodules, but here are the scripts.
When the other bugs are resolved, give it a try. Should be very close to working now.

Maven docker environment goals

(3) mvn telenav:docker-build -Dimage=[ image-name ] — builds a docker image for building and developing with the given name
(3) mvn telenav:docker-push -Dimage=[ image-name ] — pushes the given docker build image to dockerhub
(3) mvn telenav:docker-use -Dimage=[ image-name ] — runs the given docker build image from dockerhub, providing a complete development environment

Maven release goal

(2) mvn telenav:release — steps through the full release process and pushes to ossrh (staging repository for maven central)

Maven plugin: setup goals

(2) mvn telenav:help — shows help for all commands below
(1) mvn telenav:setup -Dbranch=[ branch-name ] ? — sets up to build the given branch name, or the default branch if none is specified
(1) mvn telenav:tools-install — installs all required tools for the build in ~/.telenav/tools
(3) mvn telenav:tools-check — ensures that all tools of the required versions are installed

authentication failing

this maven command (created by the telenav-pull-request script) doesn't work as expected:

mvn -Dcactus.scope=all -Dcactus.authentication-token="xxxxxxxx" -Dcactus.title="FOO" -Dcactus.to-branch=develop -Dcactus.from-branch="bugfix/pr-list-does-not-take-head-argument" -Dcactus.body="BAR" -Dcactus.reviewers=rodherz,sunshine-syz,timboudreau,wenjuanj,jonathanl-telenav,haifeng-z com.telenav.cactus:cactus-maven-plugin:1.5.24:git-pull-request validate

the auth token in the command line is definitely correct (created a new one just to be sure), and the build error is:

[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.24:git-pull-request (default-cli) on project telenav-build: com.telenav.cactus.cli.ProcessFailedException: gh pr list --base develop --json url,title,state,mergeable,body,number,headRefName,baseRefName (in /Users/jonathan/Workspaces/telenav-build/cactus) exited 1
[ERROR] HTTP 401: Bad credentials (https://api.github.com/graphql)
[ERROR] hint: try authenticating with `gh auth login`

[ERROR] Cannot set StandardInputHandler after process launch

this:

 mvn -Dorg.slf4j.simpleLogger.logFile="/var/folders/0c/xn3mx7kd6wl4pdb391brdfy81lpmfl/T/maven-Fri-2022.08.22-15.16-telenav-open-pull-requests.log" -Dorg.slf4j.simpleLogger.defaultLogLevel="info" -Dorg.slf4j.simpleLogger.cacheOutputStream=false -Dcactus.target-branch="feature/interface-stability" -Dcactus.include-root=true -Dcactus.scope=all -Dcactus.authentication-token="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" -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.31:show-prs validate 2>&1

caused this:

[INFO] GithubCommand:RetryWithAuthProcessResultConverter: Not authenticated with GitHub - will authenticate and retry.
[INFO] GithubCommand:RetryWithAuthProcessResultConverter: Auth threw.  Original process exit code was 4
java.lang.IllegalStateException: Cannot set StandardInputHandler after process launch
    at com.telenav.cactus.process.internal.ProcessCallback.withStandardInputHandler (ProcessCallback.java:171)
    at com.telenav.cactus.process.internal.ProcessCallback.withStandardInputHandler (ProcessCallback.java:51)
    at com.telenav.cactus.github.GithubCommand$Auth.onLaunch (GithubCommand.java:342)
    at com.telenav.cactus.cli.CliCommand.lambda$launch$3 (CliCommand.java:197)
    at com.mastfrog.function.throwing.ThrowingFunction.lambda$toNonThrowing$0 (ThrowingFunction.java:63)
    at java.util.Optional.map (Optional.java:260)
    at com.mastfrog.function.optional.ThrowingOptionalWrapper.map (ThrowingOptionalWrapper.java:87)
    at com.mastfrog.function.optional.ThrowingOptionalWrapper.map (ThrowingOptionalWrapper.java:27)
    at com.telenav.cactus.cli.CliCommand.launch (CliCommand.java:162)
    at com.telenav.cactus.cli.CliCommand.lambda$run$0 (CliCommand.java:116)
    at com.mastfrog.concurrent.future.AwaitableCompletionStage.from (AwaitableCompletionStage.java:53)
    at com.telenav.cactus.cli.CliCommand.run (CliCommand.java:114)
    at com.telenav.cactus.github.GithubCommand$RetryWithAuthProcessResultConverter.authenticateAndRetry (GithubCommand.java:254)
    at com.telenav.cactus.github.GithubCommand$RetryWithAuthProcessResultConverter.lambda$onProcessStarted$2 (GithubCommand.java:196)
    at java.util.concurrent.CompletableFuture.uniWhenComplete (CompletableFuture.java:863)
    at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire (CompletableFuture.java:841)
    at java.util.concurrent.CompletableFuture.postComplete (CompletableFuture.java:510)
    at java.util.concurrent.CompletableFuture.complete (CompletableFuture.java:2147)
    at com.telenav.cactus.process.internal.ProcessCallback.lambda$onExit$4 (ProcessCallback.java:231)
    at com.telenav.cactus.process.internal.ProcessCallback.lambda$notifyListeners$5 (ProcessCallback.java:271)
    at com.mastfrog.concurrent.ConcurrentLinkedList.lambda$drain$4 (ConcurrentLinkedList.java:163)
    at com.mastfrog.concurrent.ConcurrentLinkedList$Cell.each (ConcurrentLinkedList.java:246)
    at com.mastfrog.concurrent.ConcurrentLinkedList.drain (ConcurrentLinkedList.java:163)
    at com.telenav.cactus.process.internal.ProcessCallback.notifyListeners (ProcessCallback.java:269)
    at com.telenav.cactus.process.internal.ProcessCallback.onExit (ProcessCallback.java:287)
    at com.zaxxer.nuprocess.internal.BasePosixProcess.onExit (BasePosixProcess.java:317)
    at com.zaxxer.nuprocess.osx.ProcessKqueue.processEvent (ProcessKqueue.java:339)
    at com.zaxxer.nuprocess.osx.ProcessKqueue.process (ProcessKqueue.java:238)
    at com.zaxxer.nuprocess.internal.BaseEventProcessor.run (BaseEventProcessor.java:86)
    at java.lang.Thread.run (Thread.java:833)
[ERROR] Cannot set StandardInputHandler after process launch

BranchCleanupTest fails

[main] ERROR testBranchCleanup() - Cleanup mojo failed ==> expected: <true> but was: <false>
Test testBranchCleanup() failed.
Generated repositories left behind in /var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/RepositoriesGenerator-l79nq2ha-73dqmi
[ERROR] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 13.902 s <<< FAILURE! - in com.telenav.cactus.test.project.generator.BranchCleanupTest
[ERROR] com.telenav.cactus.test.project.generator.BranchCleanupTest.testBranchCleanup  Time elapsed: 13.89 s  <<< FAILURE!
org.opentest4j.AssertionFailedError: Cleanup mojo failed ==> expected: <true> but was: <false>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
	at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:210)
	at com.telenav.cactus.test.project.generator.BranchCleanupTest._testBranchCleanup(BranchCleanupTest.java:152)
	at com.mastfrog.function.throwing.ThrowingRunnable.lambda$toNonThrowing$1(ThrowingRunnable.java:134)
	at com.telenav.cactus.test.project.generator.StarWarsHarness.runTest(StarWarsHarness.java:157)
	at com.telenav.cactus.test.project.generator.StarWarsHarness.lambda$runTest$0(StarWarsHarness.java:142)
	at com.telenav.cactus.maven.log.BuildLog.lambda$run$0(BuildLog.java:217)
	at com.telenav.cactus.maven.log.BuildLog.withLog(BuildLog.java:265)
	at com.telenav.cactus.maven.log.BuildLog.run(BuildLog.java:213)
	at com.telenav.cactus.test.project.generator.StarWarsHarness.runTest(StarWarsHarness.java:140)
	at com.telenav.cactus.test.project.generator.BranchCleanupTest.testBranchCleanup(BranchCleanupTest.java:38)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
	at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
	at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)
	at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)
	at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
	at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)
	at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
	at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)
	at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
	at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
	at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
	at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
	at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
	at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
	at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:55)
	at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:223)
	at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:175)
	at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:139)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:456)
	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:169)
	at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:595)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:581)

Cactus fails to build kivakit-component

After removing all Telenav artifacts from .m2 repository:

mvn -f telenav-superpom/pom.xml clean install
mvn -Dcactus.scope=all -Dcactus.families= -Dmaven.javadoc.skip=true --threads 12 clean install

fails with:

[ERROR] Failed to execute goal on project mesakit-map-utilities-geohash: Could not resolve dependencies for project com.telenav.mesakit:mesakit-map-utilities-geohash:jar:0.9.17-SNAPSHOT: The following artifacts could not be resolved: com.telenav.kivakit:kivakit-component:jar:1.6.3-SNAPSHOT, com.telenav.kivakit:kivakit-data-compression:jar:1.6.3-SNAPSHOT, com.telenav.mesakit:mesakit-map-measurements:jar:0.9.17-SNAPSHOT: com.telenav.kivakit:kivakit-component:jar:1.6.3-SNAPSHOT was not found in https://s01.oss.sonatype.org/content/repositories/snapshots during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of ossrh has elapsed or updates are forced -> [Help 1]

cactus-emitted warnings and errors should go to stderr as well as to the log file

When cactus redirects output to the temporary folder log file, it loses important information. For example, the messages below should really go to both the log file and standard error (or standard out), because the invocation seems to succeed otherwise, when it actually did nothing.

[INFO] --- cactus-maven-plugin:1.5.24:git-pull-request (default-cli) @ telenav-build ---
[INFO] Ignoring matched checkout cactus for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout cactus-assets for pull request - because we are matching the branch feature/testing but it is on the branch publish
[INFO] Ignoring matched checkout kivakit for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout kivakit-assets for pull request - because we are matching the branch feature/testing but it is on the branch publish
[INFO] Ignoring matched checkout kivakit-examples for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout kivakit-extensions for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout kivakit-stuff for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout lexakai for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout lexakai-annotations for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout lexakai-assets for pull request - because we are matching the branch feature/testing but it is on the branch publish
[INFO] Ignoring matched checkout mesakit for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout mesakit-assets for pull request - because we are matching the branch feature/testing but it is on the branch publish
[INFO] Ignoring matched checkout mesakit-examples for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout mesakit-extensions for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Ignoring matched checkout telenav-superpom for pull request - because we are matching the branch feature/testing but it is on the branch develop
[INFO] Will include telenav-build in the pull request set, on branch feature/testing
[WARNING] Every checkout matched already has an open, mergeable PR.  Nothing to do.

idea to improve module-info compiler performance

could we take a hash of all inputs to the module-info compiler and use that as a key to cache the output?

not a high priority issue, but could help build times if it can be implemented down the road.

code cleanup - VersionIndicatingProperties.java

This code is unclear and needs rewriting. Let's remove support for previous and prev and instead use "published"?

            String prop = coords.artifactId() + ".version";
            String prevProp = coords.artifactId() + ".prev.version";
            String prevProp2 = coords.artifactId() + ".previous.version";
            ProjectFamily fam = ProjectFamily.familyOf(coords.groupId());
            String prop2 = fam + "." + prop;
            String prevProp3 = fam + "." + prevProp;
            String prevProp4 = fam + "." + prevProp2;

            String prop3 = dots + ".version";
            String prevProp5 = dots + ".prev.version";
            String prevProp6 = dots + ".previous.version";

[...]

missing submodule

the maven command:

mvn -Dorg.slf4j.simpleLogger.logFile="/var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/maven-Thu-2022.07.31-11.49-telenav-checkout.log" -Dorg.slf4j.simpleLogger.defaultLogLevel="info" -Dorg.slf4j.simpleLogger.cacheOutputStream=false -Dcactus.fetch-first=true -Dcactus.base-branch=develop -Dcactus.target-branch="feature/cors2" -Dcactus.update-root=true -Dcactus.include-root=true -Dcactus.create-branches=true -Dcactus.create-local-branches=true -Dcactus.push=false -Dcactus.permit-local-changes=true -Dcactus.scope=all com.telenav.cactus:cactus-maven-plugin:1.5.26:checkout validate 2>&1

produces this missing submodule error:

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  9.393 s
[INFO] Finished at: 2022-08-31T11:49:48-06:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.26:checkout (default-cli) on project safety-service-uber-bom: java.lang.IllegalArgumentException: Missing submodule -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :safety-service-uber-bom

Unable to create develop-snapshot branch from develop using telenav-build/bin/telenav-checkout.sh

i tried creating a develop-snapshot branch for my telenav-build workspace and it failed to create branches that didn't exist, even though cactus.create-branches and cactus.create-local-branches were both set to true. would expect it would create the branches.

arguments:

    -Dcactus.fetch-first=true \
    -Dcactus.base-branch=develop \
    -Dcactus.target-branch="$branch_name" \
    -Dcactus.update-root=true \
    -Dcactus.include-root=true \
    -Dcactus.create-branches=true \
    -Dcactus.create-local-branches=true \
    -Dcactus.push=false \
    -Dcactus.permit-local-changes=true

errors:

[ERROR] Failed to execute goal com.telenav.cactus:cactus-maven-plugin:1.5.22:checkout (default-cli) on project safety-service-uber-bom: Cannot change all branches to 'develop-snapshot:
[ERROR] No branch named 'develop-snapshot' in : * develop
[ERROR]   remotes/origin/develop
[ERROR] No branch named 'develop-snapshot' in telenav-superpom: * develop
[ERROR]   remotes/origin/develop
[ERROR]   remotes/origin/feature/bumbershoots
[ERROR]   remotes/origin/feature/new-build-scripts
[ERROR]   remotes/origin/feature/relative-to-bug
[ERROR]   remotes/origin/feature/snorkelcheese
[ERROR]   remotes/origin/feature/thread-safe-shutdown-hooks
[ERROR]   remotes/origin/feature/woovlesnorks
[ERROR]   remotes/origin/release/0.9.14
[ERROR]   remotes/origin/release/1.6.0
[ERROR]   release/current
[ERROR]   remotes/origin/release/current
[ERROR]   remotes/origin/release/kivakit-1.6.1_lexakai-1.0.9_mesakit-0.9.15
[ERROR]   remotes/origin/upgrade-kryo

cactus-pull-all-submodules fails

This script fails to pull changes:

[~/Workspaces/telenav-build/kivakit-extensions] git status
On branch develop
Your branch is behind 'origin/develop' by 1 commit, and can be fast-forwarded.
  (use "git pull" to update your local branch)

nothing to commit, working tree clean

into kivakit-extensions and other projects because apparently it skips the mojo according to this output for each project:

[INFO] Skipping PullMojo mojo per policy last-containing-goal

. Without the --quiet switch this is the output:

[~/Workspaces/telenav-build] mvn -Dcactus.scope=ALL -Dcactus.include-root=false com.telenav.cactus:cactus-maven-plugin:1.5.22:pull
[INFO] Scanning for projects...

[snip]

[INFO]
[INFO] -----------------< com.telenav:telenav-root-superpom >------------------
[INFO] Building telenav-root-superpom 1.0.2                             [1/176]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ telenav-root-superpom ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] --------------------< com.telenav:telenav-superpom >--------------------
[INFO] Building telenav-superpom 2.0.3                                  [2/176]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ telenav-superpom ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] ------------< com.telenav:telenav-superpom-project-family >-------------
[INFO] Building telenav-superpom-project-family 2.0.3                   [3/176]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ telenav-superpom-project-family ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] ---------------------< com.telenav.cactus:cactus >----------------------
[INFO] Building cactus 1.5.23                                           [4/176]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] ----------------< com.telenav.cactus:cactus-maven-log >-----------------
[INFO] Building cactus-maven-log 1.5.23                                 [5/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-maven-log ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] -------------------< com.telenav.cactus:cactus-util >-------------------
[INFO] Building cactus-util 1.5.23                                      [6/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-util ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] -------------------< com.telenav.cactus:cactus-cli >--------------------
[INFO] Building cactus-cli 1.5.23                                       [7/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-cli ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] -------------------< com.telenav.cactus:cactus-git >--------------------
[INFO] Building cactus-git 1.5.23                                       [8/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-git ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] -----------------< com.telenav.cactus:cactus-metadata >-----------------
[INFO] Building cactus-metadata 1.5.23                                  [9/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-metadata ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]
[INFO] ----------------< com.telenav.cactus:cactus-maven-xml >-----------------
[INFO] Building cactus-maven-xml 1.5.23                                [10/176]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ cactus-maven-xml ---
[INFO] Skipping PullMojo mojo per policy last-containing-goal
[INFO]

[snip]

[INFO] --- cactus-maven-plugin:1.5.22:pull (default-cli) @ telenav-build ---
[INFO] Nothing to pull. All projects are up to date with remote.
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] telenav-root-superpom 1.0.2 ........................ SUCCESS [  0.120 s]
[INFO] telenav-superpom 2.0.3 ............................. SUCCESS [  0.002 s]
[INFO] telenav-superpom-project-family 2.0.3 .............. SUCCESS [  0.002 s]
[INFO] cactus 1.5.23 ...................................... SUCCESS [  0.001 s]
[INFO] cactus-maven-log 1.5.23 ............................ SUCCESS [  0.001 s]
[INFO] cactus-util 1.5.23 ................................. SUCCESS [  0.002 s]
[INFO] cactus-cli 1.5.23 .................................. SUCCESS [  0.001 s]
[INFO] cactus-git 1.5.23 .................................. SUCCESS [  0.001 s]
[INFO] cactus-metadata 1.5.23 ............................. SUCCESS [  0.001 s]
[INFO] cactus-maven-xml 1.5.23 ............................ SUCCESS [  0.000 s]
[INFO] cactus-maven-model 1.5.23 .......................... SUCCESS [  0.001 s]
[INFO] cactus-scope 1.5.23 ................................ SUCCESS [  0.001 s]
[INFO] cactus-maven-versioning 1.5.23 ..................... SUCCESS [  0.001 s]
[INFO] cactus-codeflowers 1.5.23 .......................... SUCCESS [  0.001 s]
[INFO] cactus-maven-plugin 1.5.23 ......................... SUCCESS [  0.002 s]
[INFO] telenav-superpom-project 2.0.4 ..................... SUCCESS [  0.007 s]
[INFO] telenav-superpom-kivakit 2.0.6 ..................... SUCCESS [  0.015 s]
[INFO] telenav-superpom-mesakit 2.0.6 ..................... SUCCESS [  0.001 s]
[INFO] telenav-superpom-lexakai 2.0.6 ..................... SUCCESS [  0.001 s]
[INFO] telenav-superpom-intermediate-bom 2.0.1 ............ SUCCESS [  0.000 s]
[INFO] telenav-superpom-bom 2.0.1 ......................... SUCCESS [  0.054 s]
[INFO] lexakai-annotations 1.0.5-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-interfaces 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-mixins 1.6.3-SNAPSHOT ...................... SUCCESS [  0.001 s]
[INFO] kivakit-core 1.6.3-SNAPSHOT ........................ SUCCESS [  0.002 s]
[INFO] kivakit-internal-testing 1.6.3-SNAPSHOT ............ SUCCESS [  0.001 s]
[INFO] kivakit-collections 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-conversion 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-extraction 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-validation 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-commandline 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-resource 1.6.3-SNAPSHOT .................... SUCCESS [  0.002 s]
[INFO] kivakit-serialization-core 1.6.3-SNAPSHOT .......... SUCCESS [  0.001 s]
[INFO] kivakit-serialization-properties 1.6.3-SNAPSHOT .... SUCCESS [  0.000 s]
[INFO] kivakit-serialization-kryo 1.6.3-SNAPSHOT .......... SUCCESS [  0.002 s]
[INFO] kivakit-serialization-gson 1.6.3-SNAPSHOT .......... SUCCESS [  0.001 s]
[INFO] kivakit-testing 1.6.3-SNAPSHOT ..................... SUCCESS [  0.001 s]
[INFO] kivakit-serialization-kryo-testing 1.6.3-SNAPSHOT .. SUCCESS [  0.001 s]
[INFO] kivakit-serialization 1.6.3-SNAPSHOT ............... SUCCESS [  0.000 s]
[INFO] kivakit-settings 1.6.3-SNAPSHOT .................... SUCCESS [  0.001 s]
[INFO] kivakit-network-core 1.6.3-SNAPSHOT ................ SUCCESS [  0.001 s]
[INFO] kivakit-network-socket 1.6.3-SNAPSHOT .............. SUCCESS [  0.000 s]
[INFO] kivakit-network-http 1.6.3-SNAPSHOT ................ SUCCESS [  0.002 s]
[INFO] kivakit-network-ftp 1.6.3-SNAPSHOT ................. SUCCESS [  0.015 s]
[INFO] kivakit-network-email 1.6.3-SNAPSHOT ............... SUCCESS [  0.001 s]
[INFO] kivakit-network 1.6.3-SNAPSHOT ..................... SUCCESS [  0.001 s]
[INFO] kivakit-component 1.6.3-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] kivakit-application 1.6.3-SNAPSHOT ................. SUCCESS [  0.000 s]
[INFO] kivakit-internal-tests-core 1.6.3-SNAPSHOT ......... SUCCESS [  0.001 s]
[INFO] kivakit-internal-tests-resource 1.6.3-SNAPSHOT ..... SUCCESS [  0.002 s]
[INFO] kivakit-internal-tests 1.6.3-SNAPSHOT .............. SUCCESS [  0.000 s]
[INFO] kivakit-internal 1.6.3-SNAPSHOT .................... SUCCESS [  0.001 s]
[INFO] kivakit 1.6.3-SNAPSHOT ............................. SUCCESS [  0.000 s]
[INFO] cactus-graph 1.5.23 ................................ SUCCESS [  0.001 s]
[INFO] kivakit-settings-stores-zookeeper 1.6.3-SNAPSHOT ... SUCCESS [  0.001 s]
[INFO] kivakit-settings-stores 1.6.3-SNAPSHOT ............. SUCCESS [  0.000 s]
[INFO] kivakit-logs-file 1.6.3-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] kivakit-logs-email 1.6.3-SNAPSHOT .................. SUCCESS [  0.000 s]
[INFO] kivakit-logs 1.6.3-SNAPSHOT ........................ SUCCESS [  0.000 s]
[INFO] kivakit-web-jetty 1.6.3-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] kivakit-web-wicket 1.6.3-SNAPSHOT .................. SUCCESS [  0.000 s]
[INFO] kivakit-web-jersey 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-web-swagger 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-web 1.6.3-SNAPSHOT ......................... SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-s3fs 1.6.3-SNAPSHOT ............ SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-github 1.6.3-SNAPSHOT .......... SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-java 1.6.3-SNAPSHOT ............ SUCCESS [  0.003 s]
[INFO] kivakit-filesystems 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-metrics-core 1.6.3-SNAPSHOT ................ SUCCESS [  0.001 s]
[INFO] kivakit-metrics-prometheus 1.6.3-SNAPSHOT .......... SUCCESS [  0.000 s]
[INFO] kivakit-metrics 1.6.3-SNAPSHOT ..................... SUCCESS [  0.001 s]
[INFO] kivakit-microservice 1.6.3-SNAPSHOT ................ SUCCESS [  0.047 s]
[INFO] kivakit-extensions 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-examples-application 1.6.3-SNAPSHOT ........ SUCCESS [  0.000 s]
[INFO] kivakit-examples-microservice 1.6.3-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] kivakit-examples-settings 1.6.3-SNAPSHOT ........... SUCCESS [  0.001 s]
[INFO] kivakit-examples-lambda 1.6.3-SNAPSHOT ............. SUCCESS [  0.000 s]
[INFO] kivakit-examples 1.6.3-SNAPSHOT .................... SUCCESS [  0.001 s]
[INFO] kivakit-service-registry 1.6.3-SNAPSHOT ............ SUCCESS [  0.000 s]
[INFO] kivakit-service-client 1.6.3-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] kivakit-logs-server 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-ui-desktop 1.6.3-SNAPSHOT .................. SUCCESS [  0.000 s]
[INFO] kivakit-primitive-collections 1.6.3-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] kivakit-logs-client 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-logs-viewer 1.6.3-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] kivakit-remote-log 1.6.3-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-hdfs-proxy-spi 1.6.3-SNAPSHOT .. SUCCESS [  0.000 s]
[INFO] hadoop-doubly-shaded-protobuf 1.6.3-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-hdfs-proxy 1.6.3-SNAPSHOT ...... SUCCESS [  0.001 s]
[INFO] kivakit-filesystems-hdfs 1.6.3-SNAPSHOT ............ SUCCESS [  0.001 s]
[INFO] kivakit-hdfs-filesystem 1.6.3-SNAPSHOT ............. SUCCESS [  0.002 s]
[INFO] kivakit-math 1.6.3-SNAPSHOT ........................ SUCCESS [  0.002 s]
[INFO] kivakit-security 1.6.3-SNAPSHOT .................... SUCCESS [  0.001 s]
[INFO] kivakit-ui 1.6.3-SNAPSHOT .......................... SUCCESS [  0.001 s]
[INFO] kivakit-data-compression 1.6.3-SNAPSHOT ............ SUCCESS [  0.001 s]
[INFO] kivakit-data-formats-library 1.6.3-SNAPSHOT ........ SUCCESS [  0.001 s]
[INFO] kivakit-data-formats-csv 1.6.3-SNAPSHOT ............ SUCCESS [  0.000 s]
[INFO] kivakit-data-formats-xml 1.6.3-SNAPSHOT ............ SUCCESS [  0.001 s]
[INFO] kivakit-data-formats 1.6.3-SNAPSHOT ................ SUCCESS [  0.001 s]
[INFO] kivakit-data 1.6.3-SNAPSHOT ........................ SUCCESS [  0.000 s]
[INFO] kivakit-service-server 1.6.3-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] kivakit-service-viewer 1.6.3-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] kivakit-service 1.6.3-SNAPSHOT ..................... SUCCESS [  0.000 s]
[INFO] kivakit-stuff 1.6.3-SNAPSHOT ....................... SUCCESS [  0.001 s]
[INFO] lexakai 1.0.11-SNAPSHOT ............................ SUCCESS [  0.000 s]
[INFO] mesakit-core 0.9.17-SNAPSHOT ....................... SUCCESS [  0.001 s]
[INFO] mesakit-map-shapefile 0.9.17-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] mesakit-map-measurements 0.9.17-SNAPSHOT ........... SUCCESS [  0.000 s]
[INFO] mesakit-map-geography 0.9.17-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] mesakit-map-data-library 0.9.17-SNAPSHOT ........... SUCCESS [  0.001 s]
[INFO] mesakit-map-data-formats-pbf 0.9.17-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] mesakit-map-data-formats 0.9.17-SNAPSHOT ........... SUCCESS [  0.000 s]
[INFO] mesakit-map-data 0.9.17-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] mesakit-map-utilities-geojson 0.9.17-SNAPSHOT ...... SUCCESS [  0.001 s]
[INFO] mesakit-map-utilities-geohash 0.9.17-SNAPSHOT ...... SUCCESS [  0.001 s]
[INFO] mesakit-map-utilities-grid 0.9.17-SNAPSHOT ......... SUCCESS [  0.001 s]
[INFO] mesakit-map-utilities 0.9.17-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] mesakit-map-measurements-testing 0.9.17-SNAPSHOT ... SUCCESS [  0.002 s]
[INFO] mesakit-map-geography-testing 0.9.17-SNAPSHOT ...... SUCCESS [  0.002 s]
[INFO] mesakit-map-ui-desktop 0.9.17-SNAPSHOT ............. SUCCESS [  0.001 s]
[INFO] mesakit-map-ui-debug 0.9.17-SNAPSHOT ............... SUCCESS [  0.001 s]
[INFO] mesakit-map-region 0.9.17-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] mesakit-map-road-model 0.9.17-SNAPSHOT ............. SUCCESS [  0.001 s]
[INFO] mesakit-map-region-testing 0.9.17-SNAPSHOT ......... SUCCESS [  0.002 s]
[INFO] mesakit-map-road-name-parser 0.9.17-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] mesakit-map-road-name-standardizer 0.9.17-SNAPSHOT . SUCCESS [  0.001 s]
[INFO] mesakit-map-road 0.9.17-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] mesakit-map-cutter 0.9.17-SNAPSHOT ................. SUCCESS [  0.020 s]
[INFO] mesakit-map-overpass 0.9.17-SNAPSHOT ............... SUCCESS [  0.001 s]
[INFO] mesakit-map-ui 0.9.17-SNAPSHOT ..................... SUCCESS [  0.001 s]
[INFO] mesakit-map 0.9.17-SNAPSHOT ........................ SUCCESS [  0.001 s]
[INFO] mesakit-graph-core 0.9.17-SNAPSHOT ................. SUCCESS [  0.000 s]
[INFO] mesakit-graph-query 0.9.17-SNAPSHOT ................ SUCCESS [  0.001 s]
[INFO] mesakit-graph-world 0.9.17-SNAPSHOT ................ SUCCESS [  0.001 s]
[INFO] mesakit-graph-core-testing 0.9.17-SNAPSHOT ......... SUCCESS [  0.000 s]
[INFO] mesakit-graph-world-testing 0.9.17-SNAPSHOT ........ SUCCESS [  0.001 s]
[INFO] mesakit-graph 0.9.17-SNAPSHOT ...................... SUCCESS [  0.000 s]
[INFO] mesakit-navigation-routing 0.9.17-SNAPSHOT ......... SUCCESS [  0.001 s]
[INFO] mesakit-navigation 0.9.17-SNAPSHOT ................. SUCCESS [  0.000 s]
[INFO] mesakit-internal-map-measurements-unit-tests 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-internal-map-geography-unit-tests 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-internal-map-region-unit-tests 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-internal-graph-core-unit-tests 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-internal 0.9.17-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] mesakit 0.9.17-SNAPSHOT ............................ SUCCESS [  0.000 s]
[INFO] mesakit-geocoding 0.9.17-SNAPSHOT .................. SUCCESS [  0.001 s]
[INFO] mesakit-plugins-josm-library 0.9.17-SNAPSHOT ....... SUCCESS [  0.000 s]
[INFO] mesakit-plugins-josm-geojson 0.9.17-SNAPSHOT ....... SUCCESS [  0.001 s]
[INFO] mesakit-plugins-josm-graph 0.9.17-SNAPSHOT ......... SUCCESS [  0.000 s]
[INFO] mesakit-plugins-josm 0.9.17-SNAPSHOT ............... SUCCESS [  0.005 s]
[INFO] mesakit-plugins 0.9.17-SNAPSHOT .................... SUCCESS [  0.001 s]
[INFO] mesakit-serialization-json 0.9.17-SNAPSHOT ......... SUCCESS [  0.001 s]
[INFO] mesakit-serialization 0.9.17-SNAPSHOT .............. SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-graph-analyzer 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-graph-double-digitized-ways-extractor 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-graph-dumper 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-graph-slicer 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-graph-verifier 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-graph-to-pbf-converter 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-pbf-analyzer 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-pbf-comparator 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-pbf-dumper 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-pbf-metadata 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-pbf-region-extractor 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-pbf-to-graph-converter 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-pbf-world-graph-extractor 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-pbf-filter 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications-codec-generator 0.9.17-SNAPSHOT SUCCESS [  0.001 s]
[INFO] mesakit-tools-applications-region-information 0.9.17-SNAPSHOT SUCCESS [  0.000 s]
[INFO] mesakit-tools-applications 0.9.17-SNAPSHOT ......... SUCCESS [  0.000 s]
[INFO] mesakit-tools-application-launcher 0.9.17-SNAPSHOT . SUCCESS [  0.001 s]
[INFO] mesakit-tools 0.9.17-SNAPSHOT ...................... SUCCESS [  0.000 s]
[INFO] mesakit-extensions 0.9.17-SNAPSHOT ................. SUCCESS [  0.001 s]
[INFO] mesakit-map-examples 0.9.17-SNAPSHOT ............... SUCCESS [  0.000 s]
[INFO] mesakit-examples 0.9.17-SNAPSHOT ................... SUCCESS [  0.001 s]
[INFO] telenav-build 2.0.2 ................................ SUCCESS [  1.594 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  3.032 s
[INFO] Finished at: 2022-08-11T17:31:05-06:00
[INFO] ------------------------------------------------------------------------
[~/Workspaces/telenav-build] cactus-pull-all-submodules

independent project family bumps

it should be easy in a script, or on the command line, to bump each family independently. in the worst case, with our current projects, you might want to release a major version of lexakai, a minor version of mesakit and a dot version of kivakit. not sure how to accomplish that from user input right now. the user is asked what they want to release. they should also be asked for each project family whether it's a major, minor or dot release

ProjectsGeneratorTest fails

Not really sure why this failed the second time I ran it, but not the first...

[ERROR]   ProjectsGeneratorTest.testAutomergeTagsGeneratedByAutoMergeTagMojoWithAutopush:128->_testAutomergeTagsGeneratedByAutoMergeTagMojoWithAutopush:907 Commit failed ==> expected: <true> but was: <false>
[ERROR]   ProjectsGeneratorTest.testAutomergeTagsGeneratedByAutoMergeTagMojoWithExplictPush:136->_testAutomergeTagsGeneratedByAutoMergeTagMojoWithExplictPush:994 Commit failed ==> expected: <true> but was: <false>
[ERROR]   ProjectsGeneratorTest.testAutomergeTagsGeneratedByCommitMojo:121->_testAutomergeTagsGeneratedByCommitMojo:829 Commit did not happen in com.starwarsl79nrx5hzt.wookies:wookies-fur in /var/folders/rm/1qd3sg1n6gx12kbf39xgp73w0000gn/T/RepositoriesGenerator-l79nrx5h-lqpwbe/workspace-clone-1/wookies/anatomy/external/fur ==> expected: not equal but was: <a469e19ff6ff1eb6c80efeab8f913ae73740a4d2>
[ERROR]   ProjectsGeneratorTest.testBranchesArePickedUp:95->_testBranchesArePickedUp:570 expected: <features/stuff> but was: <develop>
[ERROR]   ProjectsGeneratorTest.testCommitMojoWillNotPushIfConflict:101->_testCommitMojoWillNotPushIfConflict:686 Repo status should not be dirty ==> expected: <false> but was: <true>
[ERROR]   ProjectsGeneratorTest.testPushAndPullWithCactus:69->_testPushAndPullWithCactus:255 Commit failed ==> expected: <true> but was: <false>
[ERROR]   ProjectsGeneratorTest.testPushAndPullWithSeparateCommitAndPushUsingCactusAllProjectFamiliesScope:108->_testPushAndPullWithSeparateCommitAndPushUsingCactusAllProjectFamiliesScope:340 Repo should not have untracked files ==> expected: <false> but was: <true>
[ERROR]   ProjectsGeneratorTest.testPushAndPullWithSeparateCommitAndPushUsingCactusFamilyScope:76->_testPushAndPullWithSeparateCommitAndPushUsingCactusFamilyScope:159 Commit failed ==> expected: <true> but was: <false>
[ERROR]   ProjectsGeneratorTest.testPushJustThisReallyPushesJustThis:89->_testPushJustThisReallyPushesJustThis:436 Repo status should not be dirty ==> expected: <false> but was: <true>
[ERROR]   ProjectsGeneratorTest.testSimpleBumpProjectVersion:115->_testSimpleBumpProjectVersion:756 expected: <true> but was: <false>
[INFO]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.