Skip to content

Release Notes: Sprint 33

Peter Flynn edited this page Oct 30, 2013 · 34 revisions

What's New in Sprint 33

Full change logs: brackets and brackets-shell

UI Changes

Dialogs - Modal Dialogs are now auto-centered both horizontally and vertically over the Brackets Window.

Inline editors - An "x" Close button is now automatically created for all inline editors.

API Changes

Lo-Dash - added as a third-party dependency. The following conversions and deprecations were made:

  • Converted Array.slice(0) to _.clone()
  • Converted Async.whenIdle to _.debounce.
  • Converted NumberUtils.getRandomNumber() to _.random and removed NumberUtils.js
  • Converted StringUtils.htmlEscape to ._escape and deprecated it.
  • Converted CollectionUtils.indexOf to _.findIndex and deprecated it.
  • Converted CollectionUtils.forEach to _.forEach and deprecated it.
  • Converted CollectionUtils.some to _.some and deprecated it.
  • Converted CollectionUtils.hasProperty to _.has and deprecated it.

Functions are deprecated by adding a @deprecated annotation, and by replacing their implementation with the corresponding Lo-Dash function and a console.warn message.

Image files - The Preview Images Spec describes the API changes for the new Preview Images feature.

Inline editors - InlineTextEditor.editors (array of editors) was removed and replaced with InlineTextEditor.editor (single editor). With current usage, there was never more than a single element in the array anyway, so this simplifies the API.

Files - usage of trailing-"/" was cleaned up.

The "canonical" folder path format used in DirectoryEntry.fullPath includes a trailing "/". However, we have some Brackets code that requires or generates paths in the opposite format. Several of those cases were cleaned up:

  • Renamed FileUtils.canonicalizeFolderPath() to stripTrailingSlash() since it actually makes paths not canonical. Old API was deprecated since it's still used by several extensions.
  • Added warning to docs for these APIs that return non-canonical paths: FileUtils.getNativeBracketsDirectoryPath() and FileUtils.getNativeModuleDirectoryPath().
  • Documented that ProjectManager._loadProject() and openProject() support receiving non-canonical paths
  • Fixed several ProjectManager APIs that used to return and/or receive non-canonical paths: getInitialProjectPath(), _getWelcomeProjectPath(), and updateWelcomeProjectPath(). No extensions were found that use these APIs.

New/Improved Extensibility APIs

Lo-Dash - utility library is now available in Brackets.

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.
  • #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

Pulling source code from Git

  • A new brackets-shell build is required for this sprint (API change on Mac, Dark Shell fixes on Windows). Be sure to rerun grunt setup before building.
  • Some submodules were updated this sprint. Run git submodule update to ensure your source tree is fully up to date.

Bugs fixed in Sprint 33

For details on the bugs addressed, please refer to closed sprint 33 bugs. A few of the fixed bugs might not be caught by this search query, however.

Clone this wiki locally