Hello Groovy
I wonder if what I'm facing (4c below) is working as expected:
1. download Groovy 5.0.2
2. unpack it to some GROOVY_HOME
3. place java/c (17, 21, 25) on PATH
4.
a. use empty directory:
mkdir /tmp/empty && cd /tmp/empty
${GROVY_HOME}/bin/groovysh
This works fine.
b. go to some other directory which is not empty, but with only
several hundred files/directories:
${GROVY_HOME}/bin/groovysh
This works relatively fine.
c. go to some other directory, like $HOME, or even $HOME/.m2 (really
populated) - with a lot of files:
${GROVY_HOME}/bin/groovysh
This is only killable on my machine. (3.0.23 and 4.0.26 at least react
to ^C, 5.0.2 - seems to be unterminatable).
I guess it's something fancy in o.a.g.groovysh.Main or o.c.g.tools.GroovyStarter
https://github.com/pzrep/groovy-startup-time/actions/runs/19046142519/job/54394718799?pr=6
shows it on hardware different than mine:
- with timestamps enabled, time between the last sh's exec and grovysh
prompt increases with number of files
- while with relatively clean CWD - it takes 7 seconds for groovysh to
start, just as few as 8 clones of openjdk/jdk repository make it more
than 1 minute
I find this very surprising.
--
Piotrek