Releases: senseiwells/Arucas
v2.3.0
v2.3.0
What's new?
- Implemented
readonly
keyword. Add this to fields to make them read-only. - Implemented
private
keyword. Add this to fields/methods/constructors to make them only accessible within the declaring class. - Constructors can now be delegated by omitting the parenthesis and arguments:
delegate = new X; delegate();
foreach
now accepts anyIterator
as well asIterable
for iterations.- Added some more methods to
Iterable
andList
classes:<List>.slice(iterable)
, allows you to slice a list.<Iterable>.first(predicate)
, allows you to find the first element that meets a predicate.<Iterable>.has(predicate)
, allows you to check whether the iterable has an element that meets a predicate.<Iterable>.all(predicate)
, allows you to check whether all elements in the iterable meet a predicate.
Bug Fixes:
- Fixed a bug when extended a class with no constructors not initialising the super class properly.
- Fixed a bug where java methods could not be delegated by reference.
- Fixed a bug where shifting operators could not be applied to java values.
- Fixed a bug where type hinting a class declared later than the hint would throw an error.
For Developers:
- Since the last release some minor API changes have been made. Notably the annotation documentation
has changed, the API documentation has been updated to reflect this. The old documentation system
has been deprecated and will be removed in future. - Some classes have been moved around - mostly internal classes which will have no effect on API usage.
- Most notably a lot of the code and API is completely documented with
KDocs
.
Arucas v2.0.3
Make 'launch' identifier a reserved word
Arucas v2.0.2
Update generated documentation
Arucas v1.2.3
- Fixed an issue where using [] on maps could result in Java null propagation
Arucas v1.2.2
- Improved Obfuscation API
Arucas v1.2.1
- Fixed a bug where continues in for loops did not call the final statement.
- Fixed a bug where functions could not be called in the second foreach statement
Arucas v1.2.0
Arucas changes
- Added bitwise operators
- Added enums
- Added importing classes
- Added list unpacking
- Added arbitrary parameter functions
- Added [] access and assigning
- Added hexadecimal number support
- Added Java, Collector, Network, Type, Error, and Set classes
- Readded Json class
- Added the ability to run Java code in aurcas and convert between languages
- Imports will automatically download from the github if not found
- Changed switch statements to evaluate expressions
- Changed function scoping to capture local variables (where the function is defined)
Internal changes
-
Reworked API, includes OutputHandler and added when building context
-
Added Java docs for all Arucas methods -
Implemented ArucasMap that has red-black tree structure
-
Fixed delegating issues with member functions
-
Fixed stopping a thread stopping the whole program
-
Fixed built in delegates being able to be used as strings
-
Added the ability to return own class in wrappers
-
Added the ablility to get the wrapper definition
-
Added a load of tests
-
Added Doc Annotation
-
Added parsers for documentation
-
Reworked all functions (arguments too), including class functions
-
Performance changes, exception traces, not copying functions
-
Wrapper classes can be inherited
-
Added cached thread pool for async operations
-
Made ThreadHandler use Futures
-
Removed Value generic
-
Fixed some scoping issues and some concurrency issues
-
Added more functionality to Value class, more modular
-
Clean up
Arucas v1.1.3
Made Tests run on ArucasThread
Arucas v1.1.2
Minor Changes - NullValue constructor is now private, with static NullValue member - BooleanValue constructor is now private, with static members, added static method `BooleanValue.of()` - Added `stopThread()` - Added `getFileList()` - Also added parameter count check for member functions
Arucas v1.1.1
Added function aliases