Eve Alpha v0.3 preview 5
Corey Montella - 23 Jun 2017
(Eve is a new programming language, and this is our development blog. If you’re new to Eve, start here)
We’re releasing Preview 5 of Eve v0.3 today. This isn’t a huge release, but it contains some critical bug fixes, so if you’re using Preview 4, you’ll want this right away.
What’s New?
Eve Starter
Since more people are using eve-starter
, we’ve implemented two development streams so we don’t break your work inadvertently.
- release - This branch will be in sync with the witheve npm module.
- nightly - We will be actively pushing to
eve-starter/master
, so if you want to work with the bleeding edge of Eve, work from this branch. We’ll warn of breaking changes on the community Slack, but more formal notice of breaking changes will only come when we package a release.
We’ve updated the readme with instructions on how to work with these branches.
Due to changes in the way npm works, if you are updating a current installation of Eve v0.3 (preview 4 or earlier) and you have a package-lock.json
file in your eve-starter
directory, you will need to delete this file in order to upgrade:
rm -r node_modules
rm package-lock.json
If you don’t have this file, you are fine.
New Libraries
We’ve got three new libraries for you today: notify, file, and console.
- notify - Provides a configurable notification banner for displaying info, alerts and errors.
- file - Provides facilities for accessing the filesystem. This library can only be used when Eve is running in headless mode.
- console - Allows you to write messages to console log, warn, and error.
Changelog
Platform
We made a couple fixes to the Eve platform:
- Action lookups in the syntax now support dynamic attributes - [849]
- Fixed an issue with aggregates and grouping, which would cause blocks using them to fail - [856]
- Fixed unterminated record/quote errors - [848]
- Prevent exception from program which parses no code blocks - [850]
- Fixed double-printing first line on error spans that start at the beginning of the block - [848]
- Better error message for non-fixpoint - [847]
- Add a custom error message for values without attributes in a record - [845]
- Allow appendAsEAVs to also handle nested sub-records - [861]
- Export all first party watcher classes - [862]
Renderer
- Enables using
html.addExternalRoot()
to control SVG placement - [846] - Enables mixing SVG into HTML documents - [846]
Library
For the first time, the standard library now has a baseline of documentation. The documented libraries include aggregates, math, strings, HTML, canvas, UI, system, file, and console.
We’ve also changed/added the following:
- added the
math/pow[]
function - [856] - added the
math/convert-base[]
function - [856] - added the
#notify
library - [859] - added the
#file
library - [858] - added the
#console
library - [858] - (BREAKING) - adjusted the attributes on
#system/timer
:
Contributors
Thanks to everyone who contributed to this release!