Commit Graph

55 Commits

Author SHA1 Message Date
37b6c406ac reduce diff 2019-11-21 07:57:32 +00:00
2c9f192baf Merge remote-tracking branch 'upstream/master' into merge 2019-11-19 21:23:47 +00:00
257988b149 Add tests for expressions listed on the docs 2019-10-27 15:15:59 -07:00
777b132a04 Catch small edge-case in parser 2019-10-27 12:58:32 -07:00
b0528f157a Improve timeout tracking for expressions 2019-10-26 16:18:59 -07:00
1ba02c54b7 Completely rewrite the expression parser in ANTLR. 2019-10-18 22:27:31 -07:00
16e24a2400 Created an Item Registry Test (non-functional) 2019-09-19 11:30:22 -04:00
3bcfcd3008 Fixed bug with wands and updated tests 2019-09-18 15:09:04 -04:00
4e49d16505 fix dependencies 2019-08-26 05:45:03 +01:00
f8758994c3 gradle updates 2019-08-15 15:39:20 -04:00
f472c20bfb Memory optimizations (#505)
* Remove LocatedBlock overhead in LBL map

* Add new space-efficient block map, with thourough testing

* Drop ordering property, add full insertion test

* Add licenses

* Fix mocked platform conflicts

* Disable full block map testing for faster builds

* Re-implement BlockMap with fastutil maps

* Re-write chunk batching to be memory efficient

* Make MultiStageReorder use BlockMap

* Increase LBL load factor, fix long-pack limit detection

* Fix infinite loop in chunk batching

* Save memory in history by cleaning up MSR

* Re-implement LocatedBlockList in BlockMap

* Fix data race with BlockType lazy fields

* Make IDs ALWAYS present, only runtime-consistent. Use for memory efficiency in BlockMap

* Remap inner structure of BlockMap for smaller maps

* Remove containedBlocks fields, not very efficient

* Fix minor de-optimizing bug in stage reorder

* Make long packed y signed

* Add extended Y limit configuration option

* Add licenses

* Store 3 ints for unoptimized BV list

* Add final to BitMath

* Correct int-cast for long-packing
2019-08-12 22:06:40 +10:00
3a5170a0e8 Potenially fix quoted string completion 2019-07-27 18:12:18 -07:00
c1f4eecd77 Narrow timeout test exception type 2019-07-15 17:18:10 -07:00
5c5c822f4b Replace try-fail-catch-assert with assertThrows 2019-07-15 16:38:34 -07:00
429d022752 Move Core to JUnit 5 2019-07-15 16:38:33 -07:00
213cadf093 Import cleanup, ensure gradle uses https for deps, bump deps. 2019-06-13 09:17:00 -04:00
aed25fce7c Add license. 2019-05-11 21:36:13 -04:00
a2b67f8ddb Re-write EventBus to be faster 2019-05-10 05:01:01 -07:00
8a3e6a12b9 Implement suggestions for Bukkit + Sponge 2019-05-05 23:06:20 -07:00
ed83ef1aa7 disable transform test for now 2019-04-05 18:20:27 +11:00
94d5d8df8e Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
f361619037 Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
29692f3fbe Migrate to SLF4J 2019-04-02 18:21:02 -04:00
92a7bd5e44 minor tweak for mutable vectors 2019-04-01 03:09:20 +11:00
85bfd16d7c Code cleaning
Most notable change: Remove redundant type parameters and replaced with <>. This is a small step to bring us closer to upstream parity.
2019-03-25 19:55:32 -04:00
d6804737cf Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
de08c8b8c7 Add better control over expression timeouts. (#451)
Add better control over expression timeouts.
* //timeout command can be used to change player's current timeout.
* Config now also has a max timeout, can be bypassed with permission
* Timeout of < 0 will let expressions run indefinitely.
* Said expressions won't run on a separate thread, slightly reducing the
  overhead from context switching. For large //gen commands, for example,
  this can actually increase speed.
2019-03-06 19:58:32 -05:00
db1315e043 Refactor registries to entirely use the platform 2019-02-16 19:35:13 +10:00
45f1de6009 Move the pasting system over to WorldEdit, and add a /we report command. Currently only reports system status and the config. Need to add a platform reporter system. 2019-02-02 11:20:36 -05:00
f74381b93f Merge remote-tracking branch 'refs/remotes/isfawe/new-vector-system' into new-vector-system 2019-01-13 02:00:14 -05:00
4d6045813c Move vectors to static creators, for caching 2019-01-10 07:17:04 -05:00
ab6aed703d Merge current FAWE master (227d6d91) into new-vector-system
Signed-off-by: Byron Marohn <combustible@live.com>
2019-01-09 22:35:26 -08:00
842b1307c7 Current Progress #3 2019-01-09 02:13:44 -05:00
d4157b7e0e Current progress with update 2018-12-23 11:19:33 -05:00
c0fa1602ad Restore the formatting of many things to upstream WorldEdit - no code changes
This patch touches many files but changes absolutely no functionality.
The goal here is to make future merges with worldedit produce fewer
conflicts that have to be resolved.

This patch was made by painstakingly diff'ing files and copying changes
over from the last upstream merge commit (02c6f11b) into this codebase.

Signed-off-by: Byron Marohn <combustible@live.com>
2018-12-20 11:33:56 -08:00
700e41b706 Remove the final stage committer from the MultiStageReorder extent, as it caused issues and no longer appears to be entirely necessary. 2018-12-13 20:30:54 +10:00
2c8b2fe089 Move vectors to static creators, for caching 2018-11-03 23:00:24 -07:00
399e0ad5fa Refactor vector system to be cleaner
- Move Vector, etc. into `.math` package
- Drop many methods that will be auto-promoted anyways, eg. with
`divide(int)` and `divide(double)` the first is now gone.
- Take Block vectors into their own class hierarchy
- Make it clear throughout the API what takes blockvectors
- many more improvements
2018-11-03 23:00:23 -07:00
e16dacc11e Small patches for timed-calc post-1.12-merge 2018-10-11 17:25:06 -07:00
21db86f26b Register a platform for expression tests 2018-10-11 17:18:52 -07:00
bb923aeb59 Attach a configurable timeout to expression evaluation 2018-10-11 17:18:52 -07:00
a629d15c74 Copy paste/merge FAWE classes to this WorldEdit fork
- so certain people can look at the diff and complain about my sloppy code :(

Signed-off-by: Jesse Boyd <jessepaleg@gmail.com>
2018-08-13 00:03:07 +10:00
5f4cc3e694 Cleanup a little bit more code. 2018-08-06 19:08:15 +10:00
1480606b52 Fixed a few more issues found looking over the changeset. 2018-08-04 11:43:42 +10:00
e1c2ea3a3b Update configs, and remove unused BlockData methods. 2018-08-04 11:43:40 +10:00
a48c319e7e package move 2018-08-04 11:43:40 +10:00
b06937d1c8 Setup a legacy mapper system. The file does not exist yet. 2018-08-04 11:43:39 +10:00
282eca7663 Added a category system and refactored registries 2018-08-04 11:43:39 +10:00
e99190225e Further BaseBlock modernisation 2018-08-04 11:43:39 +10:00
b292a39765 Fixed the fuzzy matcher 2018-08-04 11:43:38 +10:00