aboutsummaryrefslogtreecommitdiffhomepage
path: root/scripts
AgeCommit message (Collapse)Author
2020-07-27prevent path space splitting in testServer.sh (#4007)blockparole
2020-06-28Improve Legacy Component serialization sizeAikar
Don't constantly send format: false for all formatting options when parent already has it false Fixes #3680
2020-06-27someone left this in?kickash32
2020-06-25even even even even more workSpottedleaf
2020-06-241.16.1 prepAikar
2020-06-24Initial prep for 1.16Aikar
Remove patcehs we know need to go add comment on one im not sure should be dropped go ahead and fix patched repos to turn off gpg signing, as this helps rebase/apply --continue commands not suck. Go ahead and prep the pom file change
2020-05-24Preload important classes such as Logger and JLineAikar
This is for 2 reasons: 1) Ensuring our log4j is mostly loaded at OUR version. I've seen stack traces with line numbers that do not match our version. This means that some plugin has shaded in log4j and their loaded version is mixing with ours.... So by at least trying to load a bunch of log4j classes before we load plugins, we can be more sure mixed versions are not loading. 2) If the jar file is replaced while the server is runnimg class not found errors galore This will preloaod a bunch of classes commonly seen to error during shutdown due to this. The goal here is to help let the server shutdown gracefully as possible. Some plugins will still blow up here if they access a class that hadn't been loaded yet, but goal is to at least stop freezing the shutdown process as it does with JLine and Log4j errors requiring an external kill. Ideally you should not replace jars while the server is running, but it is something that happens in development for testing. Updated test server to do a copy though to avoid this happening in Paper development.
2020-05-22Many fixes and improvements to chunk prioritizationAikar
I believe this brings us back to stable. A lot of complexity was learned about juggling priorities. We were essentially promoting more chunks to urgent than really needed to be urgent. So this commit adds a lot more logic to juggle neighbor priorities and demote their priority once they meet the requirements needed of them. This greatly improves the performance of "urgent" chunks". Fixes #3410 Fixes #3426 Fixes #3425 Fixes #3416
2020-05-20Fix pooled buffer leak resulting in dynmap black spots - Fixes #3386Aikar
Dynmap accessed the raw bytes because it utilized NBT locally, but the NBTTagcompound was garbage collected while the bytes were still being used. This will return getBytes() back to being safe, and add a new PoolSafe method that will prevent the additional allocations for general chunk loading. Also fixed applyPatches for people with paths in their working directory if they have mcdev sources built.
2020-05-06Speed up rebuilding patches and reduce diffMinecrell
2020-04-09Update test server startup scriptAikar
2020-04-02Updated Upstream (Bukkit/CraftBukkit)Aikar
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 122289ff Add FaceAttachable interface to handle Grindstone facing in common with Switches a6db750e SPIGOT-5647: ZombieVillager entity should have getVillagerType() CraftBukkit Changes: bbe3d58e SPIGOT-5650: Lectern.setPage(int) causes a NullPointerException 3075579f Add FaceAttachable interface to handle Grindstone facing in common with Switches 95bd4238 SPIGOT-5647: ZombieVillager entity should have getVillagerType() 4d975ac3 SPIGOT-5617: setBlockData does not work when NotPlayEvent is called by redstone current
2020-03-04[CI-SKIP] Add PAPER_TEST_APP_ARGSShane Freeder
2020-01-27Performance patches prerequisite (#2802)Spottedleaf
Prereq changes for the coming storm of performance patches. Includes optimising incremental saving
2019-12-16Address gen concurrency issue causing crashes (Fixes #2746)Shane Freeder
2019-12-14Prevent TRAP while loading FireballsShane Freeder
2019-08-10[CI-SKIP] The wheel in the sky keeps on turningZach Brown
Add extra another fix for directory names with spaces I missed in last
2019-08-10[CI-SKIP] Fix regression with scripts in directories with spacesZach Brown
Regression introduced with the ability to apply patches directly to upstream patches in ef170ee659bcc902a129cb38981e378b17dc375a
2019-06-16Move presource patches out of work/Zach Brown
I forgot we had a clean command in the paper util
2019-06-08Update upstream B/CB/SZach Brown
--- work/Bukkit Submodule work/Bukkit 6eac6d70..1ef8b9d9: > Add Player#openBook(ItemStack) method --- work/CraftBukkit Submodule work/CraftBukkit 17543ecf..649921e5: > Add Player#openBook(ItemStack) method > SPIGOT-2000: Picking up items to shield slot working inconsistently when inventory is full > SPIGOT-5037: Player.openMerchant does not show merchant level > SPIGOT-5038: Inventory.getHolder returns null for wandering traders --- work/Spigot Submodule work/Spigot baafee91..df0eb250: > SPIGOT-5043: Desync if world is changed in PlayerSpawnLocationEvent > Rebuild patches Implementation developer note: This patch adds a "pre-source" patch system for fixing malformed patches from upstream directly. This seems to keep happening so it's best we have some way to deal with them. This system brings those issues into our domain rather than needing to wait for upstream to fix their malformed files.
2019-05-27Move getTypeIfLoaded and friends to IBlockAccess (#2077)Spottedleaf
2019-04-25Aim towards real 1.14Shane Freeder
2019-04-24More work towards 1.14 pre5Shane Freeder
2019-04-23Initial work on 1.14 pre-5Shane Freeder
2019-04-08[CI-SKIP] Update makemcdevsrc.sh (#1950)Timardo
[Aikar note] we really should figure out a way to skip CI again :(
2019-04-02Improve upstream merge script to rebuild patchesAikar
this will help ensure that upstreams apply as cleanly as it does manually the filtering makes the patches more fragile, but usually not an issue for small updates. this will unfilter, apply the cleanest patches, then the next rebuild will filter out unnecessary changes
2019-04-02Clean upstream before merging to ensure clean stateAikar
2019-03-06[dev] Make init script use different author namesZach Brown
Lets us differentiate whats Vanilla and whats from CB at a glance in IJ.
2019-02-10Fix newline inconsistencies from librariesShane Freeder
2019-02-10fix mcdev nms rootShane Freeder
2019-01-01Updated Upstream (Bukkit/CraftBukkit/Spigot)Shane Freeder
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Warning: this commit contains more mapping changes from upstream, As always, ensure that you have working backups and test this build before deployment; Developers working on paper will, yet again, need to delete their work/Minecraft/1.13.2 folder Bukkit Changes: 7fca5fd4 SPIGOT-4558: Preserve user order in the face of copied defaults in configurations 15c9b1eb Ignore spurious slot IDs sent by client, e.g. in enchanting tables 5d2a10c5 SPIGOT-3747: Add API for force loaded chunks d6dd2bb3 SPIGOT-3538: Add getHitBlockFace for ProjectileHitEvent 771db4aa SPIGOT-794: Call EntityPlaceEvent for Minecart placement 55462509 Add InventoryView#getSlotType 2f3ce5b6 Remove EntityTransformEvent and CustomItemTagContainer from draft API f04ad7b6 Make ProjectileLaunchEvent extend EntitySpawnEvent ccb85808 Define EntitySpawnEvent b8cc3ebe Add PlayerItemDamageEvent 184a495d Ease ClassLoader Deadlocks Where Possible 11ac4728 Expand Boolean Prompt Values in Conversation API aae62d51 Added getAllSessionData() to the Conversation API. 9290ff91 Add InventoryView#getInventory API 995e530f Add API to get / set base arrow damage CraftBukkit Changes: c4a67eed SPIGOT-4556: Fix plugins closing inventory during drop events 5be2ddcb Replace version constants with methods to prevent compiler inlining a5b9c7b3 Use API method to create offset command completions 2bc7d1df SPIGOT-3747: Add API for force loaded chunks a408f375 SPIGOT-3538: Add getHitBlockFace for ProjectileHitEvent b54b9409 SPIGOT-2864: Make Arrow / Item setTicksLived behave like FallingBlock 79ded7a8 SPIGOT-1811: Death message not shown on respawn screen b4a4f15d SPIGOT-943: InventoryCloseEvent called on death regardless of open inventory 0afed592 SPIGOT-794: Call EntityPlaceEvent for Minecart placement 2b2d084a Add InventoryView#getSlotType 01a9959a Do not use deprecated ItemSpawnEvent constructor 9642498d SPIGOT-4547: Call EntitySpawnEvent as general spawn fallback event 963f4a5f Add PlayerItemDamageEvent 63db0445 Add API to get / set base arrow damage 531c25d7 Add CraftMagicNumbers.MAPPINGS_VERSION for use by NMS plugins d05c8b14 Mappings Update bd36e200 SPIGOT-4551: Ignore invalid attribute modifier slots Spigot Changes: 518206a1 Remove redundant trove depend 1959ad21 MC-11211,SPIGOT-4552: Fix placing double slabs at y = 255 29ab5e43 SPIGOT-3661: Allow arguments in restart-script 7cc46316 SPIGOT-852: Growth modifiers for beetroots, potatoes, carrots 82e117e1 Squelch "fatal: Resolve operation not in progress" message 0a1a68e7 Mappings Update & Patch Rebuild
2018-12-17Updated Upstream (Bukkit/CraftBukkit/Spigot)Shane Freeder
Developers!: You will need to clean up your work/Minecraft/1.13.2 folder for this Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: b850a822 SPIGOT-4526: Add conversion time API for Zombie & subclasses CraftBukkit Changes: 38cf676e SPIGOT-4534: CreatureSpawnEvent not being called for CHUNK_GEN b446cb5d SPIGOT-4527: Fix sponges with waterlogged blocks 6ec8ea5c SPIGOT-4526: Add conversion time API for Zombie & subclasses c64fe508 Mappings Update a3c2ec03 Fix missing ServerListPingEvent call for legacy pings Spigot Changes: 1dc156ce Rebuild patches 140f654d Mappings Update
2018-10-26[CI-SKIP] Stop trying to standardize commit hashesZach Brown
This appears to be creating more problems than its actually solving. Oh and put my echo back in here just because I want it there.
2018-10-24Try and make zsh complain lessZach Brown
My turn to make "this cant possibly break" changes to the scripts.
2018-10-24[CI-SKIP] Fix "grep: repetition-operator operand invalid" (#1612)Mark Vainomaa
Some flavours of grep don't like '?' in their expressions (also `.*?` means "match zero or more times or maybe do not match at all" as far as I know).
2018-10-24[CI-SKIP] use cross platform strategy for sed -iAikar
BSD sed can DIAF.
2018-10-24[CI-SKIP] make rebuildPatches support BSD sedAikar
because the world can't be a nice place where all seds are equal
2018-10-23Don't sleep after profile lookups if not neededAikar
Mojang was sleeping even if we had no more requests to go after the current one finished, resulting in 100ms lost per profile lookup
2018-10-23Update for Minecraft 1.13.2Shane Freeder
2018-10-18Remove useless hashes from patchesAikar
This avoids annoying conflicts as well as gets rid of diff noise from clients preferring different hash lengths
2018-10-17[CI-SKIP] Fix build script for version detectionAikar
Apparently grep was being greedy even when it shouldn't. This ensures it doesn't be too greedy.
2018-10-16[CI-SKIP] Remove debug echo statements from lastZach Brown
2018-10-16Fix decompile script json regexZach Brown
When Mojang added 1.13.2-pre2 to their manifest page it exposed a flaw in the way the script's regex was getting the version json manifest. I've tweaked the regex such that it will always first get the version entry and then use that entry to get the json url, rather than trying to do the whole thing in one shot. Fixes GH-1582
2018-10-12Improvements to DataFixers for performanceAikar
Mojang asked me to make some changes, so applied them here.
2018-10-10Fix rebuildPatches and grep colors not reverting junk changesAikar
we've seen some index lines change in length in some PR's, though this script was suppose to ignore those changes already. The only way I can see that not working is if the color mode of grep is breaking the pattern matching, as some people default their grep to use color=always this adds color=none to ensure colors are disabled, should ensure it.
2018-10-08[CI-SKIP] Update checkout-prAikar
Supports usage on any github repo now
2018-10-02[CI-SKIP] Update test server rebuild logicAikar
Many times I've ran paper test trying to SHUTDOWN the existing test server, only for it to see that my target folder is missing (for whatever reason), and it try to build paper to make the jar exists. Well, the patch process will wipe out any uncommitted changes, causing loss of work. Now we will only build patches if your missing your entire Paper-Server folder, and only trigger a mvn compile if the jar is missing.
2018-09-22[CI-SKIP] Add copy of my checkout-pr script for other team membersAikar
2018-09-15Concurrency and Performance Improvements to DataFixersAikar
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-09[CI-SKIP] adjust test server memory flagsAikar