@odino odino released this Jan 26, 2019

ABS 1.0.0 is here!

After loads of sweat and tears, we finally decided it was time to release our first major release to be considered stable. We now exit the preview-n versioning scheme and finally enter semantic versioning, where every ABS release will be versioned according to whether we break backwards compatibility (major, X.y.z), add new features (minor, x.Y.z) or fix bugs (patch, x.y.Z).

Enough with the chatter, let's have a look at what's in ABS 1.0.0!

New features

  • the in operator, used to check whether an element is in an array: 1 in 1..10 # true (#128)
  • else if is now available: we were previously limited to if .. else blocks, while ABS now fully supports if...else if...else if...else (#27)

Bug fixes

  • .json() can now be called on all strings that represent a JSON type, such as "null" or "[1, 2, 3]" (#54)
  • just like in a lot of other major programming languages, ABS strings now support special characters such as \n. If you use double quotes these characters will be converted to their ASCII control codes, whereas if you use single quotes the literal \n will appear. This is implemented for \n, \r and \t. Try it out with [1,2,3].join("\n") (#130)

Deprecations

  • [].contains(x) is now deprecated in favor of the in operator (very similar to Python's in). [].contains will continue to work until the next major release

Thanks

A big thank you to @ntwrick who managed to implement #130 which was pending for quite some time. Without his help, it would have taken a while longer to get 1.0.0 out of the way :)

Assets 12