Pre-release

@SwiftStudies SwiftStudies released this Sep 2, 2018 · 10 commits to master since this release

Assets 2

The New API Release

OysterKit

There has been a significant amount of refactoring in this release, and a lot of old code disposed of. Only the fully automatically generated (by `stlrc`) `STLR` compiler is now in use (and in the code base). I recommend if you are moving from pre 0.5 you move through 0.5.1, fix depreciation warnings, then move to this release and again fix depreciation warnings as I'll be removing the code from them as I push towards API stability which this release should largely achieve. I've updated the API documentation and added some examples of the new API to the readme. I hope you like it, it was certainly easier to write about than the old one!
Pre-release

@SwiftStudies SwiftStudies released this Aug 25, 2018 · 129 commits to master since this release

Assets 2

Swift 4.2 and new API transition release

In this release I have added significant new capabilities to not only auto-generate the rules for parsing but also the Abstract Syntax Tree implemented as Swift types, and using the Decoding framework of standard Swift to automatically populate that based on the results of parsing with the rules.

In addition I have begun the work of refactoring the rule/token API to make significant optimisation available in the future and to dramatically simplify developing rules directly in Swift.

In this release old API is marked as deprecated, and the next release (0.6) will remove them completely to free me to start to benefit from the new architecture from now on.

This release requires at least Swift 4.2. Please use the swift/4.1 branch if you wish to continue with Swift 4.1 for now, but note only bug-fix pull requests from others will be applied from now on.

Pre-release

@SwiftStudies SwiftStudies released this Jul 17, 2018 · 322 commits to master since this release

Assets 2

Some fairly major changes as we progress towards version 1.0. No changes required by any consumers but Swift IntermediateRepresentation autogeneration has been added. There are some issues at this stage, but for the first time you can parse STLR itself and generate the parsing rules and the IR automatically which can then be used to parse STLR.

The new flatter rule system is also included in this release and is thoroughly tested but is not yet consumed by anything. Existing rule implementers don't need to change anything (and may never need to), but internally ParserRules and ScannerRules will be replaced by this new architecture.

Furthermore creating custom (and therefore potentially highly optimised) rules in Swift is now very easy (see ClosureRule).

If any future changes are required they will be minimal.

Pre-release

@SwiftStudies SwiftStudies released this Jul 10, 2018 · 379 commits to master since this release

Assets 2

Adds support for regular expressions as terminals. This release works with both Swift 4.1 and 4.2.

Pre-release

@SwiftStudies SwiftStudies released this Jun 17, 2018 · 422 commits to master since this release

Assets 2

This version will build and run correctly in both Swift 4.1 and 4.2

Pre-release

@SwiftStudies SwiftStudies released this May 9, 2018 · 435 commits to master since this release

Assets 2

Adds support for Swift 4.1, increases the unit test coverage to over 70%.

May 9, 2018
Merge pull request #60 from SwiftStudies/enhancements/ut-coverage
Enhancements/ut coverage, gets coverage up over 70% 🙂
Pre-release

@SwiftStudies SwiftStudies released this Feb 6, 2018 · 435 commits to master since this release

Assets 2

This is a significant release. The API and underlying implementation have been replaced significantly simplifying both.

The remainder of the releases up to v1.0 will now focus on stabilising the STLR language itself (not bugs, but ensuring there is a solid base to build on in future releases, and that any grammar breaking changes are minimised (I am not aware of any that are required at this point, but I will leave the door open)

May 9, 2018
Merge pull request #60 from SwiftStudies/enhancements/ut-coverage
Enhancements/ut coverage, gets coverage up over 70% 🙂
Feb 6, 2018
Improved API & Engine implemented
Complete re-implementation of parser, ir, and ast framework. Much simpler to use and greatly reduced internal complexity