PaperMC/scripts
Aikar 10848b4104
Concurrency and Performance Improvements to DataFixers
Found some more unsafe operations in DataFixers.

Also replaced quite a few bad uses of Map.containsKey

containsKey is a common newbie mistake that "reads" cleaner, but
results in double the performance cost of all map operations as
containsKey in MOST cases where null values are not used is identical to get() == null

Considering how deep datafixers go in call stacks, with tons of map lookups,
this micro optimization could provide some gains.

Additionally, many of the containsKey/get/put style operations were
also a concurrency risk, resulting in multiple computation/insertions.
2018-09-15 13:22:14 -04:00
..
apatch.sh Handle gpg signing better (#1123) 2018-05-24 13:41:50 -05:00
applyPatches.sh [CI-SKIP] Avoid rebuilding Paper-Server if Paper-API did not apply 2018-08-12 11:54:35 -04:00
build.sh Properly forward exit 1 code from the paper root command 2018-07-30 17:37:24 -04:00
decompile.sh [CI-SKIP] Download mojang libraries sources so we can modify them 2018-09-03 20:25:10 -04:00
functions.sh Handle gpg signing better (#1123) 2018-05-24 13:41:50 -05:00
importmcdev.sh Concurrency and Performance Improvements to DataFixers 2018-09-15 13:22:14 -04:00
init.sh Switch to using ForgeFlower for Paper Only mc-dev imports 2018-08-31 23:47:57 -04:00
makemcdevsrc.sh Switch to using ForgeFlower for Paper Only mc-dev imports 2018-08-31 23:47:57 -04:00
paperclip.sh Properly forward exit 1 code from the paper root command 2018-07-30 17:37:24 -04:00
rebuildPatches.sh [CI-SKIP] Avoid rebuilding Paper-Server if Paper-API did not apply 2018-08-12 11:54:35 -04:00
remap.sh Switch to using ForgeFlower for Paper Only mc-dev imports 2018-08-31 23:47:57 -04:00
testServer.sh [CI-SKIP] adjust test server memory flags 2018-09-09 16:59:33 -04:00
upstreamCommit.sh [CI-SKIP] Add script to commit upstream changelogs 2018-08-05 21:31:40 -04:00
upstreamMerge.sh Handle gpg signing better (#1123) 2018-05-24 13:41:50 -05:00