v3.0.0-rc.7
Pre-release
Pre-release
Good news guys, roots is getting lots more stable, it's officially over 1000 commits, and we're quickly nearing the point where it's ready for public release - whoo! 🎉
You can install this release with npm i roots@pre
A bunch of changes in this last release:
- Lots of changes to the roots public api, making it more stable, better tested, and easier to use. All roots methods now return promises, which fulfill, reject, and even emit progress events for long running processes like
new
. - Huge refactor to the CLI, now based on argparse which clears the way for more flexible aliases, provides help docs for every command, and makes the cli much more solid. As a result, the cli is covered by tests at 100%
roots clean
command is now present and working- All code is linted by coffeelint now automatically as part of the test suite. No more little mistakes slipping by over here
- We now have way more stylish badges in the readme as well as a svg logo for extra swag. Top secret roots v3 branding and marketing materials are also in development and on the way
- If you pass a path to the
write_hook
that contains a directory that doesn't exist, it's now automatically created for you. Whoo! - More and better handling for extension errors, clear messaging of almost any mistake you could make when developing extensions and very thorough test coverage for each of these cases
- The long-neglected manpage has been updated to be accurate
- All dependencies updated to the latest versions
project_hooks.after
extension hook added, thanks to @dapetcu21 for this wonderful featurenode_modules
added to watcher ignores, vastly reducing CPU usage onroots watch
- thanks to @Olivier-G for finding this- watcher does not bail if there's a compile error, keeps watching and removes the error message if you fix the error
- charge implemented as roots' new server, adding better test coverage and fantastic capabilities to roots' local server like single page app redirects, tight cache control, and clean urls
- Roots' first ever integration test is now included in the test suite and running on travis, which tests the browser functionality by opening a new project, changing files, and ensuring that the page reloads and errors appear.
- A small bugfix allows extensions to modify locals much more accurately, making the dynamic content extension much more powerful without making anything more complex.