1brc icon indicating copy to clipboard operation
1brc copied to clipboard

create_fork.sh: Script to Create a New Fork

Open hundredwatt opened this issue 1 year ago • 5 comments

I was doing this manually a bunch so I could compare changes to my own entry, so created this script. It will also work for new entrants.

Usage: create_fork.sh [-s <source fork>] <fork name>
  -s <source fork>  The name of the fork to copy from (default: baseline)
  <fork name>       The name of the fork to create

meat of it is:

cp prepare_$SOURCE_FORK.sh prepare_$FORK.sh

cp calculate_average_$SOURCE_FORK.sh calculate_average_$FORK.sh
substitute_in_file $SOURCE_FORK $FORK calculate_average_$FORK.sh

if [ $SOURCE_FORK == "baseline" ]; then
  cp src/main/java/dev/morling/onebrc/CalculateAverage.java src/main/java/dev/morling/onebrc/CalculateAverage_$FORK.java
  substitute_in_file CalculateAverage CalculateAverage_$FORK src/main/java/dev/morling/onebrc/CalculateAverage_$FORK.java
else
  cp src/main/java/dev/morling/onebrc/CalculateAverage_$SOURCE_FORK.java src/main/java/dev/morling/onebrc/CalculateAverage_$FORK.java
  substitute_in_file $SOURCE_FORK $FORK src/main/java/dev/morling/onebrc/CalculateAverage_$FORK.java
fi

hundredwatt avatar Jan 10 '24 18:01 hundredwatt

Nice! Wanna add a mention of it in the README, somewhere in "Entering the Challenge"?

gunnarmorling avatar Jan 10 '24 18:01 gunnarmorling

Don't want to poop the party but its just two files really. If we'd have ./forks/<foo>/ structure then it would be just cp -R ./forks/baseline ./forks/<githubid>

AlexanderYastrebov avatar Jan 10 '24 18:01 AlexanderYastrebov

@AlexanderYastrebov, well, the actual Java file couldn't live in that dir?

gunnarmorling avatar Jan 10 '24 19:01 gunnarmorling

@gunnarmorling Yes, indeed - that's another potential improvement change src/main/java/dev/morling/onebrc/CalculateAverage_foo.java to src/main/java/dev/morling/onebrc/foo/CalculateAverage.java. It will give better package isolation and will allow multiple java files avoiding a mess.

AlexanderYastrebov avatar Jan 10 '24 20:01 AlexanderYastrebov

Also by now 57 participants somehow figured it out :)

AlexanderYastrebov avatar Jan 10 '24 20:01 AlexanderYastrebov

@gunnarmorling I updated the README and made a few other tweaks 👍

hundredwatt avatar Jan 11 '24 16:01 hundredwatt

Sweet! Merged, thx.

gunnarmorling avatar Jan 11 '24 20:01 gunnarmorling