Commit Graph

77 Commits

Author SHA1 Message Date
Octavia Togami a23b182de5 Fix vector gen, always enable BlockMap tests
The BlockMap tests got much faster, so there's no need to hide them
behind a flag.

(cherry picked from commit 1e2496af552891e3b43c5703bda8dc4129bbcc5d)
2020-06-12 21:45:49 -04:00
Octavia Togami 8d6db82764 Add licenses for test files
(cherry picked from commit 300aad3530400124d88c0416afa6c5ddb715d717)
2020-06-12 21:45:49 -04:00
Octavia Togami 518f52ea6e Test more of the math/collections, fix VectorPList
Fixes #1291

(cherry picked from commit e0346ff53b8629a368cdbf62cbd347caecfae5fd)
2020-06-12 21:45:49 -04:00
MattBDev 63b81b801b Implement remove on set/iter views of BlockMap
Fixes #1354.

(cherry picked from commit 637da62e34e676015aa7fbad490cf6f033e55b89)
2020-06-12 21:45:48 -04:00
Octavia Togami 415e91b519 Re-apply 374ad99
Accidentally fixed the EntryMaker issue before I pulled 374ad99. Should reflect upstream now.
2020-04-16 20:41:59 -04:00
Octavia Togami ff47e6f717 Cherry-pick to fix EntryMaker issue 2020-04-16 20:26:55 -04:00
Octavia Togami 735a37ffd0 Use custom radix sort for ordering blocks (#1277)
* Use custom radix sort for ordering blocks

* Licenses :P

* Fix ordering, add test for it

* Grant Gradle more memory (thx Fabric)

* Increase (?) / Specify memory for core tests

* Many attempts at fixing OOM

(cherry picked from commit bb013aa89b8457c4649e2546eef0aa94b9fc4020)
2020-04-10 13:42:27 -04:00
Octavia Togami 374ad992a2 Properly close all files when dealing with archives (#1274)
* Properly close all files when dealing with archives

* Move file utils to SafeFiles class

* Licenses

(cherry picked from commit a600266d41151eec4f2239cf90e202bb99fa3a8b)
2020-04-10 13:38:14 -04:00
MattBDev 6275e9298e Modify Tests 2020-03-27 19:09:26 -04:00
Octavia Togami 57154224dc Cover even more cases
(cherry picked from commit b8130eb5dd3a242742cb549f8160a942d9157471)
2020-03-02 19:17:52 -05:00
Octavia Togami 0e4a206f72 Cover many more ops
(cherry picked from commit 3dbaae79cd4aa37724fb8969bbf595180e152f3e)
2020-03-02 19:17:45 -05:00
Octavia Togami a464bde43b Fix not operator
(cherry picked from commit 00c7d3a157d8d859ede501d71282e82fba40e37b)
2020-03-02 19:17:43 -05:00
Octavia Togami e20765beef Fix pre- and post- ops
(cherry picked from commit 0f787a89b8f2b0f29e0e4a2327224a3b0d050171)
2020-03-02 19:17:41 -05:00
Octavia Togami 6d9f30e6a6 Remove non-valued return
(cherry picked from commit 42e515f43523ffbfe0b28c2f3f5c342e4d4b1c1d)
2020-03-02 19:17:33 -05:00
Octavia Togami 8c385b0593 Extract common simple test case method
(cherry picked from commit 910c89be65501e8f6bcb823e819a0a16073db60a)
2020-03-02 19:17:24 -05:00
Octavia Togami eb950bd75e Add more expression test cases, fix bugs
Also added a few more comments + reorganized exceptions that are
invoke-internal.

(cherry picked from commit cbd686548fd62248fabbaab551a6875a14170957)
2020-03-02 19:16:23 -05:00
Octavia Togami cd1948648c Make testEvaluate more compact
(cherry picked from commit b9ba337f38205c79ae70e689d2a6db60f90acc9d)
2020-03-02 19:15:00 -05:00
Octavia Togami eae2c00008 Add more expression test cases, fix bugs
Also added a few more comments + reorganized exceptions that are
invoke-internal.

(cherry picked from commit cbd686548fd62248fabbaab551a6875a14170957)
2020-03-02 19:11:51 -05:00
Octavia Togami e8bc0c0e1f Expression Goodie Bag (#553)
* Remove async expression eval. Implement timeout inline

* Remove static state from expr functions

* Remove now-unused TL stack

* Rework some expr handles

(cherry picked from commit 6bc1d4647cc6892ae4dca9fc0e2d239777903c38)
2020-03-02 19:09:33 -05:00
Octavia Togami 38d5506e18 Generify BlockMap
(cherry picked from commit 7384b6973498084f4082d7e1a805b84b13a3ba44)
2020-01-31 14:42:38 -05:00
NotMyFault b292416496 Upstream and some refactoring
Note: Maybe this doesn't compile, ij is broken af smh, let's give it a try...
2020-01-04 18:34:30 +01:00
Jesse Boyd 6a49b71cf2 Fix compile 2019-12-19 16:19:46 +00:00
NotMyFault 053b1a20d6 More 1.15 wip 2019-12-11 14:45:27 +01:00
Jesse Boyd 37b6c406ac reduce diff 2019-11-21 07:57:32 +00:00
Jesse Boyd 2c9f192baf Merge remote-tracking branch 'upstream/master' into merge 2019-11-19 21:23:47 +00:00
Kenzie Togami 257988b149 Add tests for expressions listed on the docs 2019-10-27 15:15:59 -07:00
Kenzie Togami 777b132a04 Catch small edge-case in parser 2019-10-27 12:58:32 -07:00
Kenzie Togami 1ba02c54b7 Completely rewrite the expression parser in ANTLR. 2019-10-18 22:27:31 -07:00
MattBDev 16e24a2400 Created an Item Registry Test (non-functional) 2019-09-19 11:30:22 -04:00
MattBDev 3bcfcd3008 Fixed bug with wands and updated tests 2019-09-18 15:09:04 -04:00
Jesse Boyd 4e49d16505 fix dependencies 2019-08-26 05:45:03 +01:00
MattBDev f8758994c3 gradle updates 2019-08-15 15:39:20 -04:00
Kenzie Togami 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
Kenzie Togami 3a5170a0e8 Potenially fix quoted string completion 2019-07-27 18:12:18 -07:00
Kenzie Togami c1f4eecd77 Narrow timeout test exception type 2019-07-15 17:18:10 -07:00
Kenzie Togami 5c5c822f4b Replace try-fail-catch-assert with assertThrows 2019-07-15 16:38:34 -07:00
Kenzie Togami 429d022752 Move Core to JUnit 5 2019-07-15 16:38:33 -07:00
wizjany 213cadf093 Import cleanup, ensure gradle uses https for deps, bump deps. 2019-06-13 09:17:00 -04:00
wizjany aed25fce7c Add license. 2019-05-11 21:36:13 -04:00
Kenzie Togami a2b67f8ddb Re-write EventBus to be faster 2019-05-10 05:01:01 -07:00
Kenzie Togami 8a3e6a12b9 Implement suggestions for Bukkit + Sponge 2019-05-05 23:06:20 -07:00
Jesse Boyd ed83ef1aa7 disable transform test for now 2019-04-05 18:20:27 +11:00
Jesse Boyd 94d5d8df8e Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
Jesse Boyd f361619037 Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
matt 29692f3fbe Migrate to SLF4J 2019-04-02 18:21:02 -04:00
Jesse Boyd 92a7bd5e44 minor tweak for mutable vectors 2019-04-01 03:09:20 +11:00
matt 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
Kenzie Togami d6804737cf Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
wizjany 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
Matthew Miller db1315e043 Refactor registries to entirely use the platform 2019-02-16 19:35:13 +10:00