Commit Graph

1420 Commits

Author SHA1 Message Date
Jordan 465c81d193
Remove hardcoding of heightmap compressed long size (#1668) 2022-03-18 21:28:25 +00:00
Alex 05f80f23b9
refactor!: Don't bundle 1.15.2 adapters anymore (#1656) 2022-03-17 09:41:50 +01:00
renovate[bot] c672d7a0b3
build: Update dependency net.kyori:adventure-nbt to v4.9.3 (#1658)
* build: Update dependency net.kyori:adventure-nbt to v4.10.1

* build: Provide proper adventure version

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2022-03-14 16:14:10 +01:00
renovate[bot] 8afde807b6
build: Drop ProtocolLib dependency (#1659)
* build: Update dependency com.comphenix.protocol:ProtocolLib to v4.8.0

* build: Drop ProtocolLib dependency

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2022-03-14 14:32:27 +01:00
Jordan 1708584e8d
Don't call `ticking_list` on Spigot (#1655)
* ticking_list is paper only

* Update adapters
2022-03-14 11:08:10 +01:00
dordsor21 d8c0f8e3b1
Make sure thread-cached arrays are reset 2022-03-13 01:44:59 +00:00
NotMyFault 95512a4c0b
build: Release 2.1.0 2022-03-10 22:57:23 +01:00
NotMyFault c3cdde9d2e
build: Update paperweight 2022-03-10 22:43:33 +01:00
Jordan e9db749e2f
Add fluid ticking and refactor post-processing a bit (#1554)
* Make postProcessSet a default method and change to void

* Throwable#getMessage is nullable

* Move (re-)ticking to a post-processor per "platform"
 - Add fluid ticking

* chore: Ignore (for us) irrelevant rules

* chore: Fix correct toml syntax?

* Re-add removed method for API-compliance and refactor it to have a use

* Switch to javax annotations

* Switch to recalcBlockCounts for ticking blocks.

* No need to set air count anymore either

* We can still "not tick" in fast mode in 1.17.2

* update adapters

* Let paper create the chunk section if biomes are null

* Adjust notes to settings

* 1.17.2 didn't exist

* Add 1.18.2

* Don't attempt to cache plains biome ID

* Use correct annotation

Co-authored-by: NotMyFault <mc.cache@web.de>
2022-03-10 15:27:25 +01:00
Alex 5d18e15128
Replace JB occurrences with JSR 305 (for now) (#1651)
* refactor: Replace JB occurrences with JSR 305 (for now)

* chore: Update adapter jar
2022-03-10 14:24:44 +01:00
Jordan f59353006a
Update to P2 extended heights (#1581) 2022-03-09 14:21:58 +01:00
Pierre Maurice Schwang 49bc675f51
Fix `//regen -b` on 1.18.2 (#1647)
* fix: adapt correct biome type

* fix: PaperweightPlatformAdapter#adapt should return BiomeType
2022-03-08 18:55:52 +01:00
NotMyFault fb66ba6adf
build: Update paperweight
Closes #1649
2022-03-07 21:20:25 +01:00
Alex 345785a25e
feat: Support for 1.18.2 (#1641)
* feat: Preliminary work for 1.18.2

* Update SpigotNames to 1.18.2 (#1642)

* 1.18.2 / Biome-Holders, regeneration (#1645)

* 1.18.2 / Biome-Holders, regeneration

* fix: reuse old structure sets

* build: Update dev bundles

* fix: Don't log regen world generation

* fix: Run DataConverter with CBT

* fix: Override `#toNativeBinary`

* fix: Exception on regen

Co-Authored-By: Pierre Maurice Schwang <mail@pschwang.eu>

* refactor: Minor cleanup

Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Pierre Maurice Schwang <mail@pschwang.eu>
2022-03-07 15:20:05 +01:00
Pierre Maurice Schwang 668227ee6c
Update Upstream (#1643)
44863cf Don't access PluginClassLoader directly (#2045)
2022-03-05 18:19:58 +01:00
renovate[bot] 4ffea67514
build: Update dependency net.kyori:adventure-nbt to v4.10.0 (#1638)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-04 00:22:01 +01:00
NotMyFault dafcd16a14
Update Upstream
eac5b51 Play dirty because bukkit classloading is bad. (2043)
2022-03-02 20:48:49 +01:00
NotMyFault 7db06061f0
Update upstream
e2ab12c Change the class source validator to use classloaders for detection. (2039)
2022-02-28 15:42:03 +01:00
Alex 340f8dded3
tests: Remove stub server (#1629) 2022-02-28 13:53:08 +01:00
Jordan fc2662e51e
Fix //snapshot in 1.18 and re-implement biome/entity restoration (#1620)
* Re-add "//snap" and "//snapshot"

* Place code in correct method

* Use CompoundBinaryTags in AnvilChunk18 and implement biome/entity restoration

* Address comments

* Fix biome reading

* Fix retrieval of entities from zipped snapshot world

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:33:25 +01:00
Jordan 49d5183685
Load legacy config file before firing PlatformsRegisteredEvent (#1623)
Fixes #1622

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:33:06 +01:00
Jordan 28a0239437
Fix clipboards to allow proper heights by allowing extended CuboidRegion heights (#1624)
* Fix clipboards to allow proper heights by allowing extended CuboidRegion heights
Fixes #1534

* Add @since

* Fix javadoc comment

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:32:45 +01:00
NotMyFault 0a04b0b4cd
tests: Fix StubServer 2022-02-23 11:25:10 +01:00
dordsor21 de4f73997e
Implement missing methods in tests 2022-02-12 13:38:04 +00:00
NotMyFault 15b9b8332c
fix: Make it build again 2022-02-04 11:24:11 +01:00
NotMyFault f0136460ba
Update upstream
ab31481 Use Chunk#getNoiseBiome instead of biome container (2025)
2022-01-30 21:18:40 +01:00
Jordan 178604bbb7
Only call `org.bukkit.World` height methods if they're present (1.17+) (#1551)
* Only call org.bukkit.World height methods if they're present (1.17+)

* Switch to WorldEdit get height methods in GPFeature
2022-01-29 13:12:16 +01:00
Alex 4610688fcb
fix: Debugpaste on 1.17 and lower due GSON incompatibility (#1583) 2022-01-28 22:15:24 +01:00
NotMyFault e309cf8f3c
build: Update PlotSquared 2022-01-27 15:30:18 +01:00
ahdg 806ca62485
fix: GriefDefender filter (#1546)
* Fix: GriefDefender filter

* Update libs.versions.toml

* Now it only work with 2.1.0.
2022-01-23 18:29:01 +01:00
NotMyFault 4d2a34fd21
refactor: Update upstream
0ad3ab1 Remove extra label from bukkit command usage string.
2022-01-17 13:20:16 +01:00
Alex 9e40b972b1
refactor: Put Fawe version information at debugpaste to (#1533) 2022-01-12 01:22:24 +01:00
Alex 6b857b0f58
ci: Cleanup maven repositories (#1526) 2022-01-12 01:21:27 +01:00
NotMyFault f0f201002a
Update adapters 2022-01-09 11:22:00 +01:00
Alex 9ba90d8c83
refactor: Drop custom snakeyaml implementation (#1523)
* refactor: Drop custom snakeyaml implementation

* Merge branch 'main' into chore/main/remove-snakeyaml-wannabe-abstraction
2022-01-09 10:55:16 +01:00
Alex 64442a8051
refactor: Tackle a few Semgrep and ErrorProne violations (#1520)
* refactor: Tackle a few Semgrep and ErrorProne violations

* Address comments
2022-01-07 12:45:53 +01:00
dordsor21 59d4247ddb
Update legacy adapters 2022-01-05 23:53:02 +00:00
dordsor21 d6695d23f0
Replace remaining instances of worldeditregentempworld 2022-01-05 23:42:57 +00:00
NotMyFault f4658cc668
docs: Document a few undocumented annotations 2022-01-04 21:15:45 +01:00
NotMyFault b8399abfe1
refactor: Deprecate tick limiter API for public use 2022-01-04 20:33:05 +01:00
dordsor21 42dacfc7ef
Fix incorrect toNative method in 1.17 adapter 2022-01-04 13:28:29 +00:00
dordsor21 0994ea1e67
Fix issue with offset/origin when pasting a clipboard via API without wrapping into a BlockArrayClipboard 2021-12-30 16:05:16 +00:00
dordsor21 9faacb38ef
Warn user if using small-edit history setting with extended world heights 2021-12-30 16:01:23 +00:00
NotMyFault aaad86cf1d
docs: Drop clarified todos 2021-12-29 18:16:19 +01:00
dordsor21 9e8f0e7325
Refactor: getVersionMin/MaxY -> versionMin/MaxY 2021-12-29 16:44:41 +00:00
dordsor21 8d565b93f7
Compress switch statements a bit using enhanced 2021-12-29 16:39:44 +00:00
dordsor21 867b28d439
Remove remaining keywords frm CachedChanged. IJ doesn't warn? 2021-12-29 16:37:21 +00:00
dordsor21 fd3619f7b5
Merge branch 'major/2.0.0/1.18' of github.com:IntellectualSites/FastAsyncWorldEdit into major/2.0.0/1.18 2021-12-29 16:30:12 +00:00
dordsor21 3a3143065d
Remove/add some more comments 2021-12-29 16:29:55 +00:00
dordsor21 ca5640e89e
Replace CachedChange class with record 2021-12-29 16:16:23 +00:00
dordsor21 e5cbdec67e
Remove unneeded comments 2021-12-29 16:14:13 +00:00
NotMyFault 19de815ab4
chore: Format our loggers properly 2021-12-29 17:13:20 +01:00
dordsor21 e2a1721a5c
Use new language features 2021-12-29 16:12:43 +00:00
dordsor21 0d79d084a5
Rename worldedit to fawe where appropriate 2021-12-29 16:12:16 +00:00
dordsor21 3c2394afa4
Add comments to changed code 2021-12-29 16:06:49 +00:00
dordsor21 f38859237a
Move to BinaryTags where appropriate in adapters 2021-12-29 16:00:49 +00:00
Jordan 177d731957
Add back statically-set reserved IDs for air blocks only, make it clear they're "reserved" (#1502)
* Add back statically-set reserved IDs for air blocks only, make it clear they're "reserved"
Also:
 - Ensure that reserved is never returned in GET block operations
 - "empty" thus doesn't exist in the GET update methods; remove the needless checks
 - Allow GET/SET chunks to determine their own default values for non-present blocks/sections

* Add comments
2021-12-29 16:17:20 +01:00
dordsor21 bca3a1b04d
More precise method names in MinecraftVersion
- Also ensure correct comparisons are made in FaweBukkit and BukkitServerInterface
 - Fixes #1504
2021-12-29 14:46:30 +00:00
dordsor21 d19369401f
Don't force tick limiter enable/disable 2021-12-29 00:18:12 +00:00
dordsor21 f236934a39
Add get default version min/max world height to platform
- Fixes #1500
2021-12-28 22:46:19 +00:00
SirYwell f9ecb449cf read the actual block from ZeroBitStorage 2021-12-27 06:03:01 +01:00
SirYwell 07695786ca return air instead of reserved on get blocks 2021-12-26 19:52:02 +01:00
SirYwell a717df3c5f implement 1.18 regen 2021-12-26 16:20:39 +01:00
SirYwell 4ab140f6a1 use spigot-compatible packet constructor 2021-12-26 10:37:32 +01:00
SirYwell 018042769d use spigot-compatible palette constructor 2021-12-26 09:31:03 +01:00
NotMyFault 7da921e075
refactor: Deprecate `IMP` initializors in favor of builders 2021-12-22 20:58:23 +01:00
dordsor21 34f971c729
Add classes with the correct minor version to the start of the adapter candidates list 2021-12-22 12:19:20 +00:00
dordsor21 d98f626ba6
Reverse a "debug" change to BukkitImplLoader 2021-12-22 11:37:01 +00:00
Jordan 6b6c94556a
refactor! Remove deprecations marked for removal that are not present in upstream (#1483) 2021-12-22 01:53:45 +01:00
NotMyFault a4cec49e89
fix: Fix `/fawe debugpaste` 2021-12-22 00:53:27 +01:00
dordsor21 28f3bc61ea
More verbosely get block data and ensure biome layer isn't null 2021-12-21 18:00:09 +00:00
dordsor21 9ec829eddf
Update adapters jar 2021-12-21 17:59:55 +00:00
NotMyFault 78aff4c81f
build: Update paperweight and add 1.17 again 2021-12-21 11:11:08 +01:00
NotMyFault d6110013b8
tests: Add resource pack methods 2021-12-21 00:42:46 +01:00
Jordan d6e3c331d4
Make 1.18 to be effectively in a usable state (#1452)
* Update swathes of easy-to-update-sort-of-code.
 - Untested
 - Should compile but NMF broken something
 - Several todos:
  - biome history//better support (move to biome sections in core)
  - regen (haha lol no thanks, someone else can do that)
  - probably actually do the palette stuff that probably won't work in PaperweightPlatformAdapter

* ci: Provide basic Jenkinsfile for ghprb pipeline

* build: Update paperweight

* upstream: Update Upstream

de6fa17 Add getBrush helper for use with instanceof pattern matching (1926)

* FAWE will now load on startup

* it....works?

* Begin to allow biome edits (and fix biomes reverting to plains upon editing blocks)

* Add new blocks/block properties

* Only create biome palette if supplies is null

* Fix biome operations

* Finally get removing BlockID done (major version change allows it)

* refactor!: Drop PlotSquared v4

Fawe 2.0.0 and newer requires Java 17, PlotSquared v4 supports 1.13 and 1.14, Fawe wont work on these versions nevertheless and refuses to load due Java version incompatiblities with older versions. Newer versions can use PlotSquared v6.

* docs: Update readme

* Added and removed some comments

* Added and removed some comments

* refactor: Rename worldedit configuration

* build: Re-add 1.17 module

This the a very nasty commit

* chore: Implement missing methods

* build: Update paperweight

* upstream: Update upstream

6df194e Remove finalize, use a Cleaner instead (1943)
9843a4f Fix snapshots in 1.18 (1959)

* ci: Escape workflows

* build: Update paperweight to 1.18.1

* build: Update Paster

* Fix compilation

* Bump to 1.18.1

* Do both 1.18 and 1.18.1

Co-authored-by: Alex <mc.cache@web.de>

* Fix single-block lookups

* Reserve ordinals 0 through 3 for air/"reserved"

* Create block palette data with values

* Fix classpath for testing for starlight

* Correctly use block rather than sky light layer [not used in paper]

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-12-20 21:12:04 +00:00
dordsor21 c697eb8d41
Merge branch 'main' into major/2.0.0/1.18 2021-12-20 20:28:15 +00:00
Alex 9fdff97e29
build: Update paperweight (#1454) 2021-12-10 16:20:15 +01:00
Hannes Greule 5367921496
fix: Use WE PaperweightAdapter for seed replacement (#1440)
* Use WE PaperweightAdapter for seed replacement
also, only replace when necessary

* fix comments

* ci: Provide basic Jenkinsfile for ghprb pipeline (#1451)

Co-authored-by: Alex <mc.cache@web.de>
2021-12-07 12:59:58 +01:00
NotMyFault 6afde13a01
Drop Guava 21 enforcement 2021-11-30 22:13:13 +01:00
NotMyFault 1f975ac044
Update templates, address JEP deprecations and place a few TODOs 2021-11-30 21:30:46 +01:00
NotMyFault d3aaf7acff
Move to Paper 1.18 2021-11-30 18:04:47 +01:00
NotMyFault e296a329c2
Port initial paperweight classes to 1.18 folder structure 2021-11-30 12:35:34 +01:00
NotMyFault 38130f701c
feat: Setup project structure for 1.18 2021-11-30 00:16:19 +01:00
NotMyFault 2a1bef28d0
Merge branch 'main' into major/2.0.0/1.18 2021-11-27 12:21:55 +01:00
Alex 11e25911d5
upstream: Update upstream (#1430)
* upstream: Update upstream

c407471 Re-add class shutter with tweaks. (1947)

* upstream: Update Upstream

29f1c66 If a trace hits the world limit, cancel it (1942)

* upstream: Update upstream

511daa5 Update paperweight dev bundle
2021-11-26 23:31:27 +01:00
NotMyFault 705f580290
build: Update core dependencies
- Drop paranamer, you can access parameter names at runtime with Java 8+ natively
2021-11-22 13:47:59 +01:00
Owen1212055 fc4517fe4c
feat: Sort plugins on debugpaste (#1429)
* Replace plugins with an array and sort them by their name.

Resolves #1428

* Use comparator

Co-authored-by: Alex <mc.cache@web.de>
2021-11-20 16:28:18 +00:00
Alex 4c6e707fcf
fix: Error when setting PS v4's config option (#1427)
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1372
2021-11-19 09:42:33 +00:00
NotMyFault 5604000ae2
style: Don't use spaces before colons in yaml files 2021-11-17 17:58:42 +01:00
NotMyFault 6f33c5223d
build: Update Gradle
Address regression from 3ad2f8b5fa
2021-11-11 22:30:22 +01:00
NotMyFault 3ad2f8b5fa
Update Upstream
bd87665 Update paperweight + userdev bundle. (1930)
2021-11-11 22:22:44 +01:00
dordsor21 95ecb5609d
Check for worldguard bypass permissions 2021-11-05 19:04:15 +00:00
Pierre Maurice Schwang c4d0a4e921
Update adapters (#1394) 2021-11-02 22:05:04 +01:00
renovate[bot] bd8a2a5f2a
chore: Update dependency net.kyori:adventure-nbt to v4.9.3 (#1387)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-01 13:53:20 +01:00
Pierre Maurice Schwang 14cb97d0ad
fix: //regen with custom populators (#1376)
* Refraction + more fixes

* Remove exception debug

* Fix populator issues with //regen

* Fixed code style

* Further simplify

* Update adapters

Co-authored-by: Alex <mc.cache@web.de>
2021-10-25 14:13:02 +00:00
dordsor21 4e6aee6bfb
Don't consider global region for blacklisting WG regions 2021-10-25 14:12:21 +01:00
dordsor21 75be38925f
Fix #1378 2021-10-25 14:11:17 +01:00
NotMyFault ad640532dc
Update Upstream
d48530c Don't allow editing without a Bukkit Impl Adapter. (1920)
2021-10-24 12:21:23 +02:00
NotMyFault c55bc8c05f
refactor: Move update checker to core
feat: Add permission for tracing
2021-10-23 19:36:59 +02:00
dordsor21 ae949d607b
Move paperweight to BinaryTag
- Upstream put paperweight into master branch, which doesn't have BinaryTags
 - Fixes #1374
2021-10-22 16:00:51 +01:00
MrKinau 7b775ca57d
Remove Only-vanilla-biomes restriction (#1373) 2021-10-22 15:34:37 +01:00
NotMyFault c07ba4e88e
Merge branch 'feature/region-blacklist' 2021-10-21 17:13:13 +02:00
NotMyFault 7294e2346e
fix: Update adapters to latest reflection changes 2021-10-21 11:31:12 +02:00
dordsor21 8ed4736066
Add override and correct default method for fromNative
- Fixes #1370
2021-10-20 13:47:55 +01:00
NotMyFault e7a6c3e58c
Merge branch 'chore/main/deprecate-unsafe-utils' 2021-10-19 22:09:01 +02:00
dordsor21 13be5a22ad
Fix #1370
- Actually override toNative in adapter
 - Correctly assign generic-type
 - Better default method for BinaryTag retrieval in adapter
2021-10-19 15:14:25 +01:00
dordsor21 4ee61a93c8
Fix incorrect method params 2021-10-19 14:34:35 +01:00
dordsor21 252abf862b
Add more Refraction 2021-10-19 14:30:51 +01:00
dordsor21 b5479e480d
Don't attempt to run null P2 tasks 2021-10-19 13:35:00 +01:00
NotMyFault bd9476a175
refactor: Address `.editorconfig` violations 2021-10-18 23:09:21 +02:00
NotMyFault f1e8a1a29a
refactor: Move `Unsafe` to reflection class 2021-10-18 22:01:54 +02:00
Pierre Maurice Schwang c7a490fa03
Fix paperweight changes (#1364) 2021-10-18 20:38:43 +01:00
NotMyFault 74486fc8c9
chore: Update adapters 2021-10-17 17:33:48 +02:00
dordsor21 8fe610311d
Comments 2021-10-17 15:53:19 +01:00
dordsor21 c7c00021b2
Cleanup 2021-10-17 15:53:19 +01:00
dordsor21 7d894228d0
Implement region blacklisting 2021-10-17 15:53:04 +01:00
NotMyFault f0880a27a0
feat: Paperweight support (#1362)
* Initial work towards paperweight

* feat: Port Fawe classes to paperweight

- Hide UnsafeUtilities in javadocs
- Fix typo in Regenerator
- Create fawe tmp directory for fawe regen

* Update adapters

* chore: Update MiniMessage

* Address todos

* Fix leftover Tuinity loggers
2021-10-17 16:32:36 +02:00
NotMyFault 27865dc785
chore: Exchange debug log levels & component-ify a few messages (#1342) 2021-10-17 14:50:42 +02:00
NotMyFault 69a85fb068
tests: Update tests to latest Server changes 2021-10-17 10:06:21 +02:00
NotMyFault 5db9a601b1
feat: (Re-) Add update notifications (#1361)
* feat: (Re-) Add update notifications

Fixes #1348

* Move update notification to seperate class

- Add a couple of linebreaks to the chat messages
2021-10-17 09:55:25 +02:00
Pierre Maurice Schwang 546ad86841
fix: Update StubServer.java to the latest spigot changes (#1345) 2021-10-07 18:05:56 +01:00
renovate[bot] 4ffddd8c93
Update dependency net.kyori:adventure-nbt to v4.9.2 (#1338)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-04 17:15:08 +02:00
renovate[bot] f78730e337
Update dependency dev.notmyfault.serverlib:ServerLib to v2.3.1 (#1337)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-04 17:13:41 +02:00
dordsor21 6895234815
Don't allow edits on plots when owner is offline and player is only added (#1313) 2021-10-04 12:34:40 +00:00
dordsor21 c10e48320b
Fix inverted expectFail boolean 2021-09-30 12:35:17 +01:00
dordsor21 e94b85a0fc
Don't load clipboard more than once. Deprecate BukkitPlayer constructors as it's more efficient to use cached players 2021-09-28 14:11:12 +01:00
NotMyFault ca15e93102
refactor: Remove lz4-stream
LZ4-Java contains a modern version & delegate for lz4-java-stream.
2021-09-26 00:48:50 +02:00
dordsor21 268244119f
Update adapters? 2021-09-24 17:05:26 +01:00
dordsor21 4e944052cd
un-transitive some dependencies 2021-09-24 15:49:30 +01:00
NotMyFault a5795461f2
Improve a few dependency scopes 2021-09-22 23:00:12 +02:00
dordsor21 40b024fbba
Set legacy ID when adapter is loaded to enable reading/writing anvil 2021-09-22 16:15:18 +01:00
dordsor21 a3d50585c2
Don't print error message if we're expecting it on biome loading 2021-09-22 15:58:11 +01:00
dordsor21 64036a38cf
Update adapters to 32c896db93 2021-09-22 12:58:09 +01:00
dordsor21 268d8cff49
Apply list of properties everywhere 2021-09-21 18:53:37 +01:00
dordsor21 cf585c48ae
Update adapters 2021-09-21 18:41:01 +01:00
dordsor21 e750e014ab
Properties can have the same string name
Make map of all properties string against list
2021-09-21 18:34:31 +01:00
NotMyFault 3617a29ba8
Address javadoc violations 2021-09-21 17:40:53 +02:00
dordsor21 84b896151f
Lazy fix for #1271 2021-09-21 14:39:14 +01:00
dordsor21 0fcf996c78
Fix #1314 2021-09-20 23:54:26 +01:00
dordsor21 017a28b3dd
Implement getAllProperties to code and adapters 2021-09-20 16:00:50 +01:00
dordsor21 35e0a47beb
Don't have adapters as "dependency" 2021-09-20 15:09:34 +01:00
dordsor21 d5be6940c7
Add default getAllProperties method 2021-09-20 14:46:51 +01:00
Matt 4f68fb0e26
Add tracing feature to EditSessions (Upstream 1301) (#1112)
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-09-19 20:02:41 +00:00
renovate[bot] 8cc93a2255
Update dependency com.sk89q.worldguard:worldguard-bukkit to v7.0.6 (#1305)
* Update dependency com.sk89q.worldguard:worldguard-bukkit to v7.0.6

* Make it compile

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-09-18 21:59:29 +02:00
dordsor21 bd95d5a86d
Adjust mask managers
- Add list of "exclusive" managers to config to aid users in having some sort of prioritisation.
 - Fixes #960 if PlotSquared is added to exclusive managers, otherwise, there's no particularly sane way of adding prioritisation without requiring a treemap be added to YAML config, or for us to decide upon it ourselves
2021-09-18 03:19:27 +01:00
NotMyFault fbbb4ed8fa
Update adapters to f840c74a30b5c5c622080cb9678db58deb7062b9 2021-09-17 19:58:54 +02:00
dordsor21 74697ee312
Fix ZSTD implementation and test-loading. Don't allow disabling of the test on startup 2021-09-17 14:38:28 +01:00
dordsor21 4182d7473c
Slightly improve regen workflow, update adapters to a9c745a600 2021-09-16 17:42:31 +01:00
dordsor21 e4cbd85197
Ensure adapters are up to date 2021-09-15 01:44:00 +01:00
dordsor21 f10dbe7387
Use an object array for synchronising on internal chunk sections rather than the sections array itself.
- Synchronising on full sections synchronises on the global FULL instance (bad)
- Synchronising on empty sections synchronises on the local empty instance (bad)
- Leads to needless thread locking, and raises the possibility of cyclic locks considerably
2021-09-14 20:20:04 -04:00
dordsor21 daa418a287
Fix needless complication of section position methods in CharBlocks children 2021-09-13 18:33:42 +01:00
dordsor21 40a4010041
Add loadIfPresent method for use where the section should definitely exist and be FULL 2021-09-13 12:47:00 +01:00
dordsor21 fc47fd586c
Update adapters
(cherry picked from commit 6f180421e1193b3b97dad18480a6178d5b249a14)
2021-09-13 12:30:05 +01:00
dordsor21 5d31b7034d
Deprecate sponge schematic reader/writer and tell users why (#1287) 2021-09-13 10:51:58 +02:00
dordsor21 2c0c57ec4f
Update adapters 2021-09-11 13:49:06 +01:00
dordsor21 333b9c184e
Go into more detail about tree types not being there because version 2021-09-11 12:54:09 +01:00
dordsor21 c16212e456
Update adapters 2021-09-10 16:54:30 +01:00
dordsor21 f0a6fa13da
Fix serverlib shading 2021-09-10 16:25:31 +01:00
dordsor21 ef62f1e0d9
Fix adapters cos it's just plain wrong..? 2021-09-10 14:13:59 +01:00
dordsor21 195a13a23c
some codestyle application 2021-09-08 16:39:43 +01:00
NotMyFault dc11b74020
Closes #1283 Closes #1284 2021-09-07 10:41:42 +02:00
NotMyFault e08a14b3a7
Renovate
Closes #1267
Closes #1269
Closes #1276
Closes #1270
Closes #1253
2021-09-06 13:38:22 +02:00
NotMyFault d236470df8
Update Upstream
b1c230d Add conditional checking in help command (1888)
b4fbbc9 Move clearable checks for Bukkit to adapters (1887)
2021-09-04 10:31:31 +02:00
dordsor21 4bf2781cd0
Update adapters to ae35e53276 2021-09-02 18:07:08 +01:00
dordsor21 15d888a40c
Updated adapters to 5016d6d295
#1266
2021-09-02 13:47:27 +01:00
NotMyFault 0c9270dbc1
8f8288a96b 2021-08-29 20:25:09 +02:00
dordsor21 0e62760abf
Update adapters to 9c5798ea7d 2021-08-29 10:28:23 +01:00
NotMyFault 81534b3476
Ignore datapacks on 1.15 2021-08-26 10:47:00 +02:00
NotMyFault ee14f7ebb1
Closes #1254 2021-08-25 17:34:42 +02:00
dordsor21 da8289f8ba
Fix #826 2021-08-25 16:19:51 +01:00
dordsor21 46fb0c9418
Add binary tag methods to IDelegateBukkitImplyAdapter 2021-08-25 12:53:37 +01:00
dordsor21 80d99073ec
Remove PluginPreloader 2021-08-25 11:19:31 +01:00
dordsor21 46c96b45fc
Fix build 2021-08-25 11:16:01 +01:00
dordsor21 ddc59809d8
Update adapters to ff01bfd70d 2021-08-23 20:59:29 +01:00
NotMyFault 869a8058cc
Skip checking for custom biomes on 1.15.2 2021-08-23 21:15:41 +02:00
SirYwell df8b2802b2 Support custom world min heights when processing heightmaps 2021-08-21 10:52:45 +02:00
dordsor21 8e899b8524
Skip registering "custom" biome.
Update adapters to 332c1f6bb17d2ded53fe5b09f3f2a4578f3f9bfc
2021-08-20 16:30:51 +01:00
dordsor21 3dd943f961
Avoid paper-only method 2021-08-20 15:53:12 +01:00
dordsor21 cf68caff99
Correct default biome loading method 2021-08-19 14:12:55 +01:00
dordsor21 f412796f28
Load default biomes into registry at earliest convenience, then load custom biomes later. 2021-08-19 13:48:24 +01:00
NotMyFault 73a237d75e
Update adapters 2021-08-17 23:22:03 +02:00
dordsor21 1d9b1a3d5e
Remove hardcoding of world limits (#1199)
* Remove hardcoding of world limits
 - seems to be working fine without the datapack for world height changing
 - particular attention should be given to LocalBlockVectorSet and MathMan changes

* update adapters

* Override getMinY in various classes and ensure selections have a world attached to them

* no message

* Address comments
 - Fix for lighting mode 1

* A few more changes

* Fix LocalBlockVectorSet

* Fix range statement

* Various fixes/comment-addressing
- There's not much point in having a different file name now for history. We've broken it before...
- Fix history read/write
- Fix range on for loops in CharBlocks

* undo bad CharBlocks change

* Fix history y level

* Fix biome history

* Fix lighting

* Fix /up

* Make regen fail not because of these changes

* Fixes for y < 0

* Fix isEmpty where only the uppermost chunksection is edited

* Fix javadocs/FAWE annotations

* Better explain why BiomeMath is removed

* If history task throws an error, it should only be caught and printed if not completing now.

* Min|max world heights for new patterns

* Load biomes from NMS instead of bukkit (#1200)

* Update adapters

* Update adapters

* Don't initialise BlockTypes when biomes aren't set up yet so all BiomeTypes.BIOME are no longer null thanks.

* Address some comments.

* rename layer -> sectionIndex to imply inclusivity

* Javadoctored.

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Hannes Greule <SirYwell@users.noreply.github.com>
2021-08-17 22:13:51 +01:00
NotMyFault 5b2bd45d86
091200e1f80576175cfdf147928583b28275f437 2021-08-17 22:10:37 +02:00
dordsor21 f7161ea890
Update adapters 2021-08-17 18:45:08 +01:00
dordsor21 51eee01eef
Update adapters 2021-08-17 17:52:28 +01:00
dordsor21 da7aca8ef8
Add basic preloading (#1221) 2021-08-16 20:47:09 -04:00
dordsor21 50137b31c4
Update adapters 2021-08-15 15:59:30 +01:00
dordsor21 c287739be7
Minecraft uses the global block palette if there are more than 8 bits per entry in a chunk section
- Fixes #1228
2021-08-14 14:29:57 +01:00
dordsor21 98673b5743
Update adapters 2021-08-13 11:59:24 +01:00
dordsor21 3c75ed7d46
javadoc 2021-08-13 11:51:05 +01:00
dordsor21 c65c72b249
Allow adapters to override World#getEntities to avoid AsyncCatcher
- Even if we access (cache) the entities synchronously, we'd then be doing stuff asynchronously so adapters can override this and either use the world#getEntities normally (pre 1.17) or get entities async anyway.
2021-08-13 11:44:18 +01:00
Pierre Maurice Schwang 7d3a9ff36d
Fixed Unit Tests (BlockVector3.isLongPackable) (#1168)
* Fixed Unit Tests (BlockVector3.isLongPackable)

* Re-enable tests for ci

* Address gh action dependency complaints

* Fix "invalid usage of tag &" for MinecraftVersion.java

* Simple StubServer for BukkitWorldTest.java

* Add parallelgzip to test runtime, fixed javadoc encoding, make gradlew executable and patch StubServer for latest spigot / paper release

* Move Javadoc UTF-8 to PlatformConfig.kt

* Revert "make gradlew executable"
Was required for act to run, but not required for GH actions - Weird behavior

* Mark upstream changes, move class + apply editorconfig

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-08-10 09:31:37 +01:00
dordsor21 31b41235ac
Update adapters 2021-08-09 14:34:39 +01:00
NotMyFault a1e6839cae
Improve jd of MinecraftVersion#getPackageVersion 2021-08-09 11:36:50 +02:00
dordsor21 6562f8adbd
Update adapters 2021-08-08 12:09:05 +01:00
dordsor21 08ebef2905
Break file to make git notice it 2021-08-08 12:08:55 +01:00
dordsor21 c58b143552
Update adapters to 3f6df1adee 2021-08-08 12:03:52 +01:00
dordsor21 346223977d
Add javadoc comments to generateTree 2021-08-07 16:28:41 +01:00
dordsor21 e90b261196
Trees should be generated on the main thread
- Also remove warning when using tree tool
2021-08-07 16:19:41 +01:00
dordsor21 0d84967853
Fixes #1219 2021-08-07 16:12:03 +01:00
Aurélien abaa347ad4
Fix major security bugs (3 brushes + superpickaxe)! (#1213)
* Fix major security bugs (3 brushes + superpickaxe)!
- Due to some recent changes, FAWE could edit everything in the world, no matter other plugin protections such as PS or WG.
- Fix superpickaxe allow to bypass protections => Fix SurvivalModeExtent not taking into account protections plugins due to breaking blocks naturally to get drops.

* Adress requests
- Revert some unsuitabe changes
- Add FAWE diff comments

* Clean imports

* Adress requests

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-08-07 11:09:33 +02:00
Matt 14b3fd2085 Fixed parameter name 2021-08-05 17:38:44 -04:00
NotMyFault c468d22120
Fixes #1208 2021-08-05 15:55:20 +02:00
NotMyFault a5e84dcfea
Switch to version catalogs
- Closes #1204
- Switch to security advisory
- Move fawe-tests to fawe packages
2021-08-01 19:28:51 +02:00
NotMyFault 678fb0a8b3
Fixes #1201 2021-07-30 01:31:25 +02:00
NotMyFault e1d18dc896
(Temporarily) Include datapacks in debugpaste 2021-07-26 20:40:18 +02:00
NotMyFault 39f6a2e17f
Update adapters 2021-07-26 01:14:01 +02:00
NotMyFault f479e32b5f
Update contributing url 2021-07-24 19:28:28 +02:00
dordsor21 8c0195970b
Add and apply .editorconfig from P2 (#1195)
* Consistenty use javax annotations.
 - Unfortunately jetbrains annotations seem to be exposed transitively via core somewhere, but with the correct IDE settings, annotations can be defaulted to javax
 - Cleaning up of import order in #1195
 - Must be merged before #1195

* Add and apply .editorconfig from P2
 - Does not rearrange entries

* Address some comments

* add back some javadoc comments

* Address final comments

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-07-24 16:34:05 +01:00
dordsor21 f2ee2248e0
Consistenty use javax annotations. (#1197)
- Unfortunately jetbrains annotations seem to be exposed transitively via core somewhere, but with the correct IDE settings, annotations can be defaulted to javax
 - Cleaning up of import order in #1195
 - Must be merged before #1195

Co-authored-by: NotMyFault <mc.cache@web.de>
2021-07-24 15:52:08 +02:00
dordsor21 5e9535db41
Re-add shading/relocation of fastutils and add a dumb class because minimise doesn't scan worldedit-adapters 2021-07-24 14:12:59 +01:00
NotMyFault 46f2a202e6
Remove unneeded maven repos 2021-07-24 14:28:35 +02:00
dordsor21 b599d86a1c
Assume it's safe not to shade or relocate fastutils 2021-07-24 13:14:58 +01:00
dordsor21 8f55d3f9a4
update adapters 2021-07-24 13:14:19 +01:00
dordsor21 39defaea5e
and reupdate adapters without a borked jar file because the hash wasn't different the first time round 2021-07-23 21:57:06 +01:00
dordsor21 c37ce767d7
update adapters 2021-07-23 21:54:49 +01:00
dordsor21 4341001a1c
Update adapters 2021-07-23 21:03:02 +01:00
renovate[bot] 0d26dad397
Update dependency com.github.luben:zstd-jni to v1.5.0-4 (#1189)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-23 20:17:43 +02:00
NotMyFault ae9c5f8490
Update adapters 2021-07-23 18:31:18 +02:00
NotMyFault 50ab8ad5c7
Feature/propagate diff and object cleanup (#1190)
* Feature/main/propagate diff annotations (#1187)

* 25% done

* More work

* More work

* 50%

* More work

* 75%

* 100% & cleanup

* Update adapters

* Squish squash, applesauce

commit 275ba9bd84
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Jul 17 01:10:20 2021 +0200

    Update dependency com.comphenix.protocol:ProtocolLib to v4.7.0 (#1173)

    Co-authored-by: Renovate Bot <bot@renovateapp.com>

commit 9fd8984804
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Jul 17 01:09:29 2021 +0200

    Update dependency org.checkerframework:checker-qual to v3.16.0 (#1184)

    Co-authored-by: Renovate Bot <bot@renovateapp.com>

commit 861fb45e5c
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 19:07:02 2021 +0100

    Fix #1075

commit 420c45a29a
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 18:48:21 2021 +0100

    Entity removal should be on the main thread as we're just passing through rather than doing chunk operations
     - Fixes #1164
     - Not working: butcher/remove history

commit 4d4db7dcd0
Author: SirYwell <hannesgreule@outlook.de>
Date:   Fri Jul 16 17:52:44 2021 +0200

    Make sure leaves category is loaded for heightmaps (fixes #1176)

commit c98f6e4f37
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 10:44:52 2021 +0100

    Do not allow generation commands to generate outside selection

commit 2485f5eccc
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 10:43:15 2021 +0100

    EditSession needs to override some Extent methods to ensure block changes are correctly set through the various extents
    Fixes #1152

commit d9418ec8ae
Author: dordsor21 <dordsor21@gmail.com>
Date:   Fri Jul 16 09:52:44 2021 +0100

    Undo part of 41073bb1a0
    Fixes #1178

* Update Upstream

fb1fb84 Fixed typo and grammar

* We don't support custom heights yet

* Casing inconsistency

* Address a few comments

* Address comments

* Don't refactor to AP classpath

* Document annotation style

* Refactoring & shade cleanup

* Address a few comments

* More work

* Resolve comments not being resolved yet

* Feature/main/propagate diff annotations (#1187) (#1194)

* Remove beta package, fix history packages, move classes out of object package

* Resolve comments not being resolved yet

* Remove beta package, fix history packages, move classes out of object package

Co-authored-by: NotMyFault <mc.cache@web.de>

* brushes should be under brush

* More refactoring
 - Filters/processors should be in the same place and are related to extents
 - Transforms are in `extent.transform` in upstream

* Move history classes under history

* Update adapters

Co-authored-by: dordsor21 <dordsor21@gmail.com>
2021-07-23 17:48:51 +02:00
dordsor21 6acd8498b2
Update adapters 2021-07-22 17:59:48 +01:00
dordsor21 e6b18cf230
Run residence permission playerHas check on main thread 2021-07-18 13:18:55 +01:00
renovate[bot] 275ba9bd84
Update dependency com.comphenix.protocol:ProtocolLib to v4.7.0 (#1173)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-17 01:10:20 +02:00
renovate[bot] 9fd8984804
Update dependency org.checkerframework:checker-qual to v3.16.0 (#1184)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-17 01:09:29 +02:00
NotMyFault bcceadee6b
Propagate FAWE diff annotations down the bukkit module
- Minor upstream merge
2021-07-14 14:40:20 +02:00
NotMyFault 6d360db753
Update adapters 2021-07-12 15:48:19 +02:00
NotMyFault 0434b86d8e
Feature/1.17.1 (#1172)
* Update adapters for 1.17.1

* Fixes #1074

* fd10efa56b51d915302d616302145c74c3f079ee

* Fix `//chunkinfo` message

* 9fc85704e9570304f1b336612039afc85bb17064

* 03b4437023

* JitPack decided to work again
2021-07-09 16:07:48 +02:00
NotMyFault dd082d4f39
Fix loading on Java versions prior to 16
- Lazy workaround continuously JitPack outages
2021-07-09 11:34:07 +02:00
NotMyFault 22f11abce8
Remove unneeded maven repos 2021-07-05 22:26:14 +02:00
renovate[bot] af1a3c3ddb
Update dependency net.kyori:adventure-nbt to v4.8.1 (#1161)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-07-01 22:57:52 +02:00
dordsor21 aa3ae63682
Feature/1.17 (#1120)
* start v6

* Update classes to v6 method signatures

* change rootVersion to signify p2v6 compat

* Use 16 as toolchain version but target 11 for build output

* add minimessage as api

* Require v6 and don't attempt to "setup" hook from FAWE

* Address comments

* *address /all/ comments

* FAWE classes should only act as a delegate

* Uppercase logger

* Settings for v6-hook have moved to P2-v6, remove unneeded if statements

* Rename classes to Delegate

* add whenDone task to setCuboids

* Remove bad spaces

* Fix plot swap

* Initial work on 1.17 support

* Remove data versions from the Bukkit adapters (#1507)

* Remove data versions from the Bukkit adapters

* Don't allow saving schematics without an adapter in place on Bukkit.

* Removed confusing line

(cherry picked from commit 2056218b4a8644836b1d127105dfa289e9cdbc1c)

* More progress

* Fix chunk sending

* Repackage from com.boydti to com.fastasyncworldedit.<module> (#1119)

* Preliminary work on repackaging

* Rename build artifacts matching our pattern

* Finish up repackaging

* Fix a few field accesses and old imports

* Dirty fix for chunks container ChunkSections outside of 0-15

* Correctly read from NibbleArrays for lighting

* Fix getSections and BlockMaterial for 1.17

* Fix writing blocks to the world.
 - The issue isn't the presence of a "-1" chunk, it's the constructor for ChunkSection requiring the layer (0 to 15) rather than the y chord

* Fix more field accesses

* More work towards 1.17

* Update Upstream

a57f66f Fix watchdog, add negative y support. (1782)

* Add azalea tree to `/tool tree`

* Don't define toolchain twice

* Repackage GriefDefender

* Relocate under new namespace

* Bye bye ecma left overs

* Add 1.17 to issue templates and instructions

* Move to adventure-nbt (#918)

* Initial work for adventure-nbt

* Some more FAWE specific stuff

* Fix erroneous deprecation check

* Workflow change

* Continued merging all adventure NBT related changes

* Continued merging all adventure NBT related changes

* Made a constructor public again

This needs to be public for BlockTransformExtent.java

* Finished converting all NBT data to adventure.

* Make this compile

* Fix conflicts

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>

* Update adapters to 1.17

* Change build prefix to 1.17

* Move more nms classes to adapters

* Move left over nms classes

* Move Spigot 1.17 class

* Remove unneeded adapter loader code
The loader will find the appropriate class now itself

* Update adapters

* Update adapters

* Lazy fix tests

* Update adapters

* Update Upstream

43da91a Remove method reflection for getMinHeight in BukkitWorld. (1796)

* Relocate adventure-nbt under proper namespace

* Add LazyCompoundTag as a non-version-specific class to be used by adapters

* Better integration between old NBT and Adventure NBT - begin fixing the issues seen recently

* Correctly NBT conversion method

* LazyCompoundTags should actually be overriding and correctly returning a CompoundBinaryTag.

* Update worldedit-adapters
Fixes #1141

* Remove unnecessary massive lag machine

* Refactor apply to applyBlock in subclasses

* applyBlock should be overriden by all subclasses.
Default apply to applyBlock

* Closes #1130 Closes #1132

* Squashed commit of the following:

commit a9bfa1a07c77083c844a0c3ba62f4bd94bed107c
Author: NotMyFault <mc.cache@web.de>
Date:   Sun Jun 27 21:53:21 2021 +0200

    [ci skip] Update gradle wrapper validation

commit aa7471f95317d28a16f62e4b200de8d0fea2fa95
Author: Matthew Miller <mnmiller1@me.com>
Date:   Sat Oct 10 15:49:13 2020 +1000

    Add ^x,y,z relative offset support to the offset parser (#1545)

    * Add ^x,y,z relative offset support to the offset parser

    * Wrap in a try-catch

    (cherry picked from commit 28bdf7ff9254bbc85bb4f5f792b303943a3930a8)

* Add `fawe.error.schematic.not.found` translation key

* Update Upstream

728a152 Skip notify if chunk section doesn't exist (1794)

* Fixed #1157

* Add a null check to prevent NPE in nbt code

* Update adapters

* Update Upstream

fbb047a Optimize legacy schematic loading (1808)

* Hurr durr I don't want to update Java

* Update Upstream

0790e6e Fix CLI Mess (1811)

* Fixes #1160

* Expose minimessage transitively thru PlotSquared

Touches #32

* [ci skip] Remove unneeded maven repository

* Steal tab completion from PlotSquared for P2 related commands

* Don't error on startup when building locally

Co-Authored-By: goldfishapp <8278196+goldfishapp@users.noreply.github.com>

* [ci skip] Update gh actions to Java 16

* Update textures to grab 1.17 jar

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: SirYwell <hannesgreule@outlook.de>
Co-authored-by: Matthew Miller <mnmiller1@me.com>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
Co-authored-by: goldfishapp <8278196+goldfishapp@users.noreply.github.com>
2021-07-01 22:16:25 +02:00
NotMyFault 78acb857da
Closes #1129 Closes #1128 2021-06-19 10:17:43 +02:00
NotMyFault 96ed367420
Closes #1121 2021-06-18 01:01:30 +02:00
NotMyFault 0af60e5680
Added support for GriefDefender (#1123) 2021-06-17 10:37:53 +02:00
dordsor21 d015e6b270
Also synchronise when loading sections forcefully 2021-06-12 15:09:02 +01:00
renovate[bot] 8836d1d75c
Update dependency org.mockito:mockito-core to v3.11.1 (#1118)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-06-11 17:20:24 +02:00
dordsor21 f6c87b6726
Add null check to creating default NBT data 2021-06-10 19:59:17 +01:00
renovate[bot] e11a2d7f6d
Update dependency com.github.luben:zstd-jni to v1.5.0-2 (#1113)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-10 17:37:15 +02:00
dordsor21 7ef8b2f95e
Create default TileEntity data where required.
Fixes #1093
Fixes #1042
2021-06-10 13:39:36 +01:00
dordsor21 dd217fcb70
Don't bother trying to use a clipboard when clearing plots.
Fixes #1088
2021-06-09 17:45:57 +01:00
NotMyFault 09b2cfef56
Closes #1107 2021-06-08 23:53:19 +02:00
renovate[bot] bae592bf91
Update dependency com.sk89q.worldguard:worldguard-bukkit to v7.0.5 (#1108)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-08 23:50:45 +02:00
renovate[bot] 75935f91e9
Update dependency com.github.luben:zstd-jni to v1.5.0-1 (#1106)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-08 23:46:46 +02:00
dordsor21 f6af9925e8
Char block null check (#1030)
**Add a null-check to CharBlocks FULL section layer-retrieval.**
 - It is possible to trim CharBlocks whilst it is attempting to read data due to the batching of chunks to help reduce memory
 - This is done when the number of chunks sitting loaded in memory with having been "submitted" to the queue for writing to disk becomes high
 - Seconday operations such as heightmap processing and lighting will quickly load chunks, meaning many chunks are submitted early
 - This leads to much higher chances of the chunk being submitted and subsequently trimmed given heightmap and light processing is done layer-by-layer over many chunks, rather than chunk-by-chunk - thus leading to NPEs.
 - By adding synchronisation to and around only the specific sections when loading/updating, and not blocking the whole chunk, many access can still be thread-safe without causing deadlocks
 - This allows removal of lots of the needless and very-slowing synchronisation on get**Block** methods

**Remove much of the synchronisation from ChunkHolder**
 - We shouldn't be synchronising with call() and safety should be added elsewhere. (plus it's making edits very very slow when queue target size is hit)
 - Also remove much of synchronisation because we've added the null-check and section-specific synchronisation to CharBlocks
 
**Some QOL/thread-safe data access changes**
- Replaces the Array#clone seen in the get blocks classes with System#arraycopy as deep cloning is not required, and is also slower than arraycopy
- Add System#arraycopy when accessing chunk section data via history to ensure it is not altered whilst being written
- Renaming EMPTY to empty means it is not implied to be a static variable

Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1028
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1025
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1089
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1091
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1097
2021-06-08 14:28:16 +00:00
SirYwell e40a657faf Remove unused imports 2021-06-05 20:38:53 +02:00
SirYwell 798e18ecc2 Look up BlockBase.Info field in actual class instead of subclass 2021-06-05 20:32:09 +02:00
NotMyFault 2bdf6ae18a
Leave a proper warning if you install WE alongside FAWE 2021-06-05 20:01:06 +02:00
NotMyFault 75fbe654ee
Update Upstream
0036e06 Alter the CUI lifecycle to be more consistent and reliable (1633)
2021-06-05 11:27:27 +02:00
NotMyFault d1af6c38e7
Update Upstream
9516002 Register platforms and commands in a more proper way (1766)
2021-06-05 10:27:38 +02:00
renovate[bot] f139088b6e
Update dependency org.mockito:mockito-core to v3.11.0 (#1103)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-04 09:07:50 +02:00