Skip to content

Release Notes: Sprint 36

Peter Flynn edited this page Feb 7, 2014 · 22 revisions

This is a draft!

This document will not be finalized until the end of Sprint 36 -- approximately January 16. Now delayed until roughly February 7 -- see forum post.

What's New in Sprint 36

  • Preferences
    • Project- and file-specific editor settings: Use JSON configuration files to specify different indentation, word wrap, etc. settings for different folders or different file types. (TODO: link to detailed how-to)
  • File System & Performance
    • File/directory watchers: Brackets will detect external modifications to files almost instantly and update the project tree, editor contents, etc. automatically (manually refreshing the tree is no longer needed).
    • File caching: Operations like Find in Files will be much faster when used repeatedly, as the contents of files are now cached in memory.
  • Extensions
    • Extension download counts: We will begin tracking how many times each extension has been installed, and will post the download counts at periodic intervals. This will help extension authors decide where to prioritize their efforts, and will help Brackets developers understand what functionality is most important for our users.
    • "Safe Mode": Choose Debug > Reload Without Extensions to temporarily run Brackets without any extensions loaded for troubleshooting. Extensions are re-enabled when you restart Brackets through any other means.
  • LESS Support
  • CSS Editing
  • Overall UI
  • Linting

Full change logs: brackets and brackets-shell

UI Changes

Scrollbars - Scrollbars on all versions of Windows now have a flatter, Windows-8-style appearance that matches the overall Brackets UI design better.

CSS code hints - When selecting a property name hint, a space is now automatically inserted after the ":".

API Changes

TODO: FileSystem API changes

Linting - The process for registering a linter is unchanged, but it's now possible to register more than one linter per file type. (Except that, as before, the built-in JSLint provider is automatically disabled when any other JS linter is registered).

The result yielded by CodeInspection.inspectFile() has changed: instead of a single linter result, it now returns an array of objects, each containing the result of one specific linter.

CSS tokens - The latest version of CodeMirror parses CSS files differently. If you rely on the raw tokens emitted by CodeMirror, your code will likely need updates; see PR #6268 for notes. However, the Brackets CSSUtils API remains unchanged.

StatusBar - addIndicator() now receives an additional parameter: insertBefore. If specified, the new statusbar indicator is inserted before the indicator with id of insertBefore. If omitted, the indicator will be inserted at the beginning.

Node version - The internal copy of Node.js included in Brackets has been upgraded to 0.10.24 (from 0.10.18).

New/Improved Extensibility APIs

Preferences - Although new preferences APIs have been added, please continue to use the old APIs for now. The old APIs remain unchanged. The new APIs are still undergoing some flux and will not be ready for wider use until Sprint 37.

Node integration - New, simplified NodeDomain API makes connecting to Node from Brackets code easier and less error-prone. Full docs TBD, but details here in the meantime.

Also, Node-side APIs can now send back binary data to Brackets by returning a Buffer, which will show up on the Brackets side as an ArrayBuffer. Read more.

Known Issues

  • Mountain Lion (OS X 10.8) by default will not allow Brackets to run since it's not digitally signed yet. To work around this, right click the Brackets app and choose Open. You only need to do that once -- afterward, launching Brackets the normal way will work also.
  • #2272: Windows Vista may not allow the Brackets installer to run (you may not see any error message). To work around this, right-click the installer file, choose Properties, and click the Unblock button.
  • #3207: If you use a Sprint 21 or earlier build after using this build at least once, a few preferences such as Recent Projects may get reset. (You can back up your cache folder if you're concerned about this).
  • #4362: Slow startup of Brackets and Live Preview on Windows due to Chrome proxy settings. See workaround.
  • Debug > Run Tests is disabled in the installer/DMG distributions of Brackets, because the unit test code is not included. To run unit tests, pull Brackets from GitHub instead.

Community contributions to Brackets

TODO

Pulling source code from Git

  • A new brackets-shell build is required for this sprint.
  • If you have ever built brackets-shell before, delete the brackets-shell\deps\node folder and any Node-related files in brackets-shell\downloads, then re-run grunt setup (this one-time step is required due to a change in the node executable filename).
  • Some submodules were updated this sprint. Run git submodule update to ensure your source tree is fully up to date.

Bugs fixed in Sprint 36

For details on the bugs addressed, please refer to closed sprint 36 bugs. Not all fixed bugs will be caught by this search query, however.

Clone this wiki locally