Sencha Cmd

# Release Notes for Sencha Cmd 6.5.0

Date: May 7, 2017
Version Number: 6.5.0.180
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

- Build (3)
  - SDKTOOLS-1600 Support build process automation for Progress Web Apps
  - SDKTOOLS-1618 Build should provide minifcation/compression of ES6 code without requiring transpiling to ES5
  - SDKTOOLS-1688 Build should automatically include "scss" files found next to included "js" files
- Compiler (2)
  - SDKTOOLS-1592 Sencha Cmd should support ES6 syntax
  - SDKTOOLS-1617 Compiler should support optional language transpiling for compat with non-ES6 browsers
- Fashion (1)
  - SDKTOOLS-1808 Fashion should support the @error directive
- Generator (1)
  - SDKTOOLS-1699 Cmd apps and packages should use build scripts from Cmd install instead of local copy
- Misc (1)
  - SDKTOOLS-1686 Config command should allow management of saved properties ('sencha config --save')
- PackageLoader (1)
  - SDKTOOLS-1698 Apps should be able to use dynamically loadable packages
Total: 9

## Bugs Fixed

- Build (7)
  - SDKTOOLS-1153 Production build incorrectly overwrites development bootstrap
  - SDKTOOLS-1619 Compressor does not support use of reserved words as properties (such as "package" or "class")
  - SDKTOOLS-1635 Cmd should properly handle files with custom character encodings.
  - SDKTOOLS-1657 Font awesome icons are not included in build
  - SDKTOOLS-1658 PhantomJS fails to capture theme image for production and testing build on windows
  - SDKTOOLS-1669 Bootstrap.js contains unevaluated reference to ant property
  - SDKTOOLS-1678 Used packages do not honor save variables files for the appliaction
- Compiler (11)
  - SDKTOOLS-1589 Cmd fails to process app.json on a project with '' in a toolbar items:[]
  - SDKTOOLS-1598 Optimizer produces incorrect do/while loop form
  - SDKTOOLS-1610 ES6 Iterators are not correctly transpiled
  - SDKTOOLS-1611 New style unicode escape characters aren't correctly transpiled from ES6
  - SDKTOOLS-1705 Cmd is stripping out template literals
  - SDKTOOLS-1748 Encoding issue with compressed build
  - SDKTOOLS-1757 Class minification does not insert spaces around class keyword
  - SDKTOOLS-1763 Constructor name in new operator is incorrectly minified
  - SDKTOOLS-1774 Polyfill for Array.prototype.values causes problems with XTemplate
  - SDKTOOLS-1789 Sencha Cmd compressor generates invalid code for catch blocks in IE 8
  - SDKTOOLS-876 Can't build apps that use ES6 Promise.catch()
- Fashion (9)
  - SDKTOOLS-1517 Building theme package with lots of @extend usage takes a long time
  - SDKTOOLS-1526 Fashion incorrectly defaults mixin parameters to null
  - SDKTOOLS-1575 Fashion does not sort some types of references to deprecated variables
  - SDKTOOLS-1633 Using media queries in a mixin and nesting in a selector throws an error
  - SDKTOOLS-1682 Fashion not generating correct output for extend/include combinations
  - SDKTOOLS-1770 Fashion fails to compile files with BOM
  - SDKTOOLS-1775 Null values do not correctly propagate through fashion math functions
  - SDKTOOLS-1807 Fashion live update doesn't work
  - SDKTOOLS-1819 Fashion interprets wrongly named parameters to mixin calls as ordinal parameters
- Generator (7)
  - SDKTOOLS-1334 Unable to set the toolkit via commandline options when generating packages or themes
  - SDKTOOLS-1659 Generating controller/view/model causes build to fail
  - SDKTOOLS-1685 Cmd no longer adds packages generated in app directory as dependency
  - SDKTOOLS-1692 Generated apps that use Ext JS 5 don't include a Main view file
  - SDKTOOLS-1693 Frameworks in workspace aren't registered as in use, when used in application
  - SDKTOOLS-1720 Scaffolded code package has theme overrides
  - SDKTOOLS-1752 sencha app install fails to add missing framework
- Microloader (1)
  - SDKTOOLS-1649 onAppUpdate is no longer fired for 6.2 apps Cmd 6.5
- Misc (7)
  - SDKTOOLS-1327 Cmd may not be using cmd.jvm.args settings
  - SDKTOOLS-1432 Syntax errors in app.json cause Null Pointer exceptions
  - SDKTOOLS-1502 Sencha Cmd fails to run via symbolic links
  - SDKTOOLS-1546 Some commands ignore the --cwd switch
  - SDKTOOLS-1588 Duplicate key "ext" in frameworks array after framework update
  - SDKTOOLS-1653 Error when trying to write to locked bootstrap.js or bootstrap.css
  - SDKTOOLS-1676 The app install command ignores -cwd switch
- PWA (2)
  - SDKTOOLS-1800 Manifest PWA demo application cannot add to homescreen
  - SDKTOOLS-1801 Don't work PWA demo app with disconnect internet connectivity
- PackageLoader (5)
  - SDKTOOLS-1721 Packages inside the framework load an incorrect workspace when built as part of a "uses" dependency
  - SDKTOOLS-1731 Development mode build without ext-all-debug in app.json fails to dynamically load packages
  - SDKTOOLS-1746 Ext.Package.load should be able to deal with packages with empty styling
  - SDKTOOLS-1784 Package Loader package has wrongly named build folder (failed Ant property expansion)
  - SDKTOOLS-1815 Package loader throws 404 errors when a package has no css
- Sass (2)
  - SDKTOOLS-1670 Slicer rules should be excluded from production CSS
  - SDKTOOLS-1788 Unable to build 6.2 SDK
- Service (1)
  - SDKTOOLS-1552 Sencha Cmd service does not kill java process
- Transpiler (1)
  - SDKTOOLS-1621 IE error when transpiling promises
- Upgrade (4)
  - SDKTOOLS-1443 Comments in frameworks list in workspace.json break framework upgrade
  - SDKTOOLS-1675 App upgrade command should detect previously registered frameworks when using relative paths
  - SDKTOOLS-1684 App Upgrade fails with 'Unable to locate .sencha folder'
  - SDKTOOLS-1690 App upgrade command fails to upgrade framework when framework path is given
- Watch (4)
  - SDKTOOLS-1580 Quickly stopping and restarting app watch results in fallback to dynamic port
  - SDKTOOLS-1741 App Watch does not create lock file in correct directory or clean up lock file properly.
  - SDKTOOLS-1754 Exception thrown when killing app watch process
  - SDKTOOLS-1814 App watch does not properly include used packages in the app watch cycle
Total: 61

## Known Issues

- Build (1)
  - SDKTOOLS-1516 Ext 5.1.3 - Can't build project with Aria theme
Total: 1

# Release Notes for Sencha Cmd 6.2.1

Date: November 21, 2016
Version Number: 6.2.1.29
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## Bugs Fixed

- Compiler (1)
  - SDKTOOLS-1598 Optimizer produces incorrect do/while loop form
- Fashion (2)
  - SDKTOOLS-1517 Building theme package with lots of @extend usage takes a long time
  - SDKTOOLS-1575 Fashion does not sort some types of references to deprecated variables
- Microloader (1)
  - SDKTOOLS-1623 onAppUpdate is no longer fired for 6.2 apps
- Watch (2)
  - SDKTOOLS-1570 Sencha Cmd is incorrectly detecting occupied port Linux / OS X
  - SDKTOOLS-1580 Quickly stopping and restarting app watch results in fallback to dynamic port
Total: 6

# Release Notes for Sencha Cmd 6.2.0

Date: August 18, 2016
Version Number: 6.2.0.103
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

- Build (2)
  - SDKTOOLS-1533 Should provide "app install" command to repopulate Cmd scaffold after pulling from source control
  - SDKTOOLS-1563 Should provide "workspace install" command to repopulate all Cmd apps after pulling from source control
- Fashion (2)
  - SDKTOOLS-1519 Fashion should support a simple mechanism for deprecated variables
  - SDKTOOLS-1565 Fashion should issue a warning when setting a deprecated variable
- Watch (1)
  - SDKTOOLS-1562 App watch should provide a switch to disable the internal web server
- Workspace (1)
  - SDKTOOLS-1515 Add a command that allows a cleanup of old app entries on workspace.json
Total: 6

## Bugs Fixed

- Build (7)
  - SDKTOOLS-1450 Phonegap source file name changed
  - SDKTOOLS-1480 YuiCompressor is still called even if closure is assigned
  - SDKTOOLS-1500 Overrides are not picked up in development. Works in production build.
  - SDKTOOLS-1505 Unable to find microloader element in index file when additional attributes are present in the script
  - SDKTOOLS-1539 Cmd app should be able to run via the File Protocol
  - SDKTOOLS-1549 6.2 Nightlies issue w Ant
  - SDKTOOLS-1567 Adding d3 package to ext/packages directory can break build
- Compiler (2)
  - SDKTOOLS-1498 Preprocessor doesn't always detect close tags
  - SDKTOOLS-1504 Some comment placements inside sub-expressions cause compiled code to be incorrect
- Fashion (3)
  - SDKTOOLS-1487 Fashion compiler produces different output on Win machine than on Mac
  - SDKTOOLS-1547 Cannot use relative viewport units with dynamic
  - SDKTOOLS-1553 Fashion errors do not cause Cmd builds to fail
- Installer (1)
  - SDKTOOLS-1491 Wrong year in the license agreement
- Misc (1)
  - SDKTOOLS-1506 Disabling the microloader creates absolute paths to CSS in prod build
- Upgrade (1)
  - SDKTOOLS-1569 Can't upgrade workspace framework if workspace contains application
- Watch (3)
  - SDKTOOLS-1420 App watch should accept port switch and log dynamic port if specified port is in use
  - SDKTOOLS-1496 Running 'sencha app watch' is changing port unpredictably
  - SDKTOOLS-1499 On some machines localhost can be an unbindable address and breaks app watch
Total: 18

# Release Notes for Sencha Cmd 6.2.0 Beta

Date: June 1, 2016
Version Number: 6.2.0.46
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

- Sass (1)
  - SDKTOOLS-1042 Sass compiler should support automatic inlining of resources like images
Total: 1

## Bugs Fixed

- Fashion (3)
  - SDKTOOLS-1466 Fashion evaluates empty string and 0 as falsy values unlike Sass
  - SDKTOOLS-1467 Fashion loses units when a number is used as an operand with an "and" or "or" operator
  - SDKTOOLS-1476 Style compilation errors in latest Cmd prevents build
- Generator (1)
  - SDKTOOLS-1401 Example files are copied to ext folder when generating new app
- Microloader (1)
  - SDKTOOLS-1451 Incorrect order for files in "css" array of classic.json on Linux
- Misc (1)
  - SDKTOOLS-1356 Unable to modify application base path (app.output.base) in response file
- Package (1)
  - SDKTOOLS-1442 Unable to build a theme package that uses the modern toolkit
- Service (1)
  - SDKTOOLS-1436 Sencha service is unresponsive after app watch
Total: 8

# Release Notes for Sencha Cmd 6.1.3

Date: June 14, 2016
Version Number: 6.1.3.42
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

Total: 0

## Bugs Fixed

- Fashion (1)
  - SDKTOOLS-1476 Style compilation errors in latest Cmd prevents build
- Generator (1)
  - SDKTOOLS-1401 Example files are copied to ext folder when generating new app
- Microloader (1)
  - SDKTOOLS-1451 Incorrect order for files in "css" array of classic.json on Linux
- Misc (1)
  - SDKTOOLS-1356 Unable to modify application base path (app.output.base) in response file
- Package (1)
  - SDKTOOLS-1442 Unable to build a theme package that uses the modern toolkit
- Service (1)
  - SDKTOOLS-1436 Sencha service is unresponsive after app watch
Total: 6

# Release Notes for Sencha Cmd 6.1.2

Date: April 5, 2016
Version Number: 6.1.2.15
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## Bugs Fixed

- Build (2)
  - SDKTOOLS-1404 CSS files below split threshold are not loaded in modern toolkit builds
  - SDKTOOLS-1415 Running multiple instances can cause a socket BindException
- Fashion (2)
  - SDKTOOLS-1297 Indexed pseudo-classes (An+B) should not be evaluated at compile time
  - SDKTOOLS-1417 Generated CSS is missing sass filenames
- Installer (2)
  - SDKTOOLS-1390 Installer does not add Cmd to the PATH if there are no profile scripts on Mac/Linux
  - SDKTOOLS-1396 Command 'sencha switch' doesn't work on linux.
- Service (1)
  - SDKTOOLS-1410 Sencha service doesn't respond - on system with only 2 CPU cores
- Upgrade (2)
  - SDKTOOLS-1414 Failed to update Cmd-generated Ext JS 4 app to Ext JS 5.1.1/5.0.1
  - SDKTOOLS-1419 Duplicate key: 'ext' when upgrading application
Total: 9

# Release Notes for Sencha Cmd 6.1.1

Date: March 3, 2016
Version Number: 6.1.1.76
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## Bugs Fixed

- Microloader (1)
  - SDKTOOLS-1395 Removing framework all.js file from app.json causes exception in loader
- Upgrade (1)
  - SDKTOOLS-1383 app upgrade: cannot satisfy requirements for theme
Total: 2

# Release Notes for Sencha Cmd 6.1.0

Date: February 16, 2016
Version Number: 6.1.0.65
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

- Workspace (1)
  - SDKTOOLS-1300 Workspaces should accommodate multiple framework versions
Total: 0

## Bugs Fixed

- Build (2)
  - SDKTOOLS-1328 Sencha Touch production microloader does not update properly
  - SDKTOOLS-1378 Cannot file file theme-capture.json
- Compiler (1)
  - SDKTOOLS-1371 Optimizer strips platformConfig from class declarations in Touch production builds
- Fashion (2)
  - SDKTOOLS-1379 Fashion does not generate proper CSS when a missing semicolon is encountered
  - SDKTOOLS-1384 @theme-background-image: Theme image not found
- Misc (4)
  - SDKTOOLS-1315 Cmd Installer on OS X overwrites .profile
  - SDKTOOLS-1362 Timed out waiting for sass build completion
  - SDKTOOLS-1375 app upgrade failure: Framework 'ext' is already defined on workspace.json
  - SDKTOOLS-1380 Sencha fashion command is too slow
- Watch (2)
  - SDKTOOLS-1349 Cmd web server should provide -j2ee switch to enable web.xml for JEE application
  - SDKTOOLS-1367 File system changes during app watch can skip an update cycle in some cases
Total: 11

# Release Notes for Sencha Cmd 6.0.2

Date: October 2, 2015
Version Number: 6.0.2.14
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## Bugs Fixed

- Build (2)
  - SDKTOOLS-1283 @require statement not recursively requiring content
  - SDKTOOLS-1309 Building package will duplicate css code
- Fashion (2)
  - SDKTOOLS-1292 Fashion should not perform static checks on 2nd and 3rd arguments of if()
  - SDKTOOLS-1297 Indexed pseudo-classes (An+B) should not be evaluated at compile time
- Upgrade (1)
  - SDKTOOLS-1299 Incompatible local package ext@n.n.n (version range 4.0-n.n.n) when upgrading apps using framework zip
Total: 5

# Release Notes for Sencha Cmd 6.0.1

Date: September 3, 2015
Version Number: 6.0.1.76
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh deb rpm zip
amd64
sh deb rpm zip
All Platforms

## New Features

- Build (2)
  - SDKTOOLS-1059 app.json should allow disabling slicer at the build profile level via "slicer:null"
  - SDKTOOLS-1268 Universal apps should be able to define shared resources in the build output directory
- Generator (3)
  - SDKTOOLS-1196 Package generate command should optionally add new package to current app requires in app.json
  - SDKTOOLS-1218 View generator should allow specifying target folder for universal apps
  - SDKTOOLS-1225 Generating a theme package should set Ext.theme.name
- Installer (1)
  - SDKTOOLS-1231 Unattended mode of upgrade command should provide an -all switch to install all components
- Misc (1)
  - SDKTOOLS-1224 Should provide a switch command to easily switch between installed Cmd versions
- Watch (2)
  - SDKTOOLS-1254 Watch should provide a --inspector switch to automatically connect to Sencha Inspector
  - SDKTOOLS-1269 Watch should provide a --fashion switch to automatically enable Fashion and Live Updates
Total: 9

## Bugs Fixed

- Build (4)
  - SDKTOOLS-1083 MainView config needs to be extended with the plugin requirement in classic
  - SDKTOOLS-1200 Cmd ignores framework.cmd.minver for app generate/builds
  - SDKTOOLS-1204 Toolkit not found for themes generated with Cmd 6.x and Ext JS 5.x
  - SDKTOOLS-1216 Production build doesn't minify "app.js"
- Compiler (2)
  - SDKTOOLS-1239 Optimizer can prevent overriding methods in base classes
  - SDKTOOLS-1272 Optimizer strips platformConfig from class declarations in production builds
- CordovaPhoneGap (2)
  - SDKTOOLS-1234 app.cordova.config.name does not accept spaces
  - SDKTOOLS-1237 .sencha/app/phonegap.defaults.properties missing a '{'
- Fashion (4)
  - SDKTOOLS-1209 Fashion isn't compiling @extend correctly in some cases
  - SDKTOOLS-1259 Complex filters cause fashion to hang
  - SDKTOOLS-1270 Fashion does not correctly compare numbers with differing units for equality or inequality
  - SDKTOOLS-1275 Fashion evalulates all expressions in if() functions but should act like a JavaScript ternary and eval only two
- Generator (1)
  - SDKTOOLS-1230 Universal apps do not get the specified --theme name in their build profiles
- Help (1)
  - SDKTOOLS-1145 Incorrect options displayed in help for "app clean" and "app watch" commands
- Installer (1)
  - SDKTOOLS-1185 Deb and Rpm inataller packages install cmd in the wrong directory
- Microloader (3)
  - SDKTOOLS-1201 Injected scripts should use charset UTF-8 by default (helps iframes in IE)
  - SDKTOOLS-1205 Microloader should cache bust the initial load request for the manifest
  - SDKTOOLS-963 Microloader relies on file extension rather than js/css array to determine asset type
- Misc (1)
  - SDKTOOLS-1206 Launcher should prefer JRE in PATH over other default locations when JRE is not included
- Upgrade (4)
  - SDKTOOLS-1211 The upgrade command is not aware of the new CDN structure (jre, no-jre directories)
  - SDKTOOLS-1217 The upgrade command is not including 32bit/64bit suffix to windows installer name
  - SDKTOOLS-1222 build does not create all.css file in a Touch application that is upgraded to Modern
  - SDKTOOLS-1227 App upgrade fails when upgrading more than one app in a workspace
- Watch (2)
  - SDKTOOLS-1062 sencha app watch fails to start with application that contains it's own web.xml
  - SDKTOOLS-1267 App watch does not properly shutdown PhantomJS child process when killed by CTRL+C
Total: 25

# Release Notes for Sencha Cmd 6.0.0

Date: June 24, 2015
Version Number: 6.0.0.202
Windows:
64-bit 32-bit no_jre zip
Mac OS X:
app no_jre zip
i386
sh zip
amd64
sh zip
All Platforms

## New Features

- Fashion (2)
  - SDKTOOLS-1202 Changes to theme variables should be visible in real-time
  - SDKTOOLS-1203 Building themes should not require Ruby to be installed
- Installer (1)
  - SDKTOOLS-1047 Should provide installer with Java Runtime (JRE) included
- Package (1)
  - SDKTOOLS-1163 Package download and generation paths should be configurable separately
Total: 4

## Bugs Fixed

- Build (1)
  - SDKTOOLS-1159 Cmd deletes the contents of css/js assets if they use file system paths instead of urls
- Documentation (1)
  - SDKTOOLS-1192 Please fix the latest Cmd documentation link
- Fashion (2)
  - SDKTOOLS-1132 Need to incorporate sass-compatibility tests in fashion build
  - SDKTOOLS-1141 Function and mixin arguments do not accept list parameters
- Generator (3)
  - SDKTOOLS-1116 Generating a theme does not produce specified theme name in package.json
  - SDKTOOLS-1165 Cannot generate app using specific framework version
  - SDKTOOLS-1190 Generating an app in an existing app folder overwrites files when using --classic or --modern
- Misc (1)
  - SDKTOOLS-1193 Can not publish universal app to Space
- Package (1)
  - SDKTOOLS-1175 Theme packages cannot use alternateName for base theme
- Upgrade (2)
  - SDKTOOLS-1179 Can't upgrade to 6.0.0.154 from 6.0.0.92 via comand line
  - SDKTOOLS-1187 Upgrading 5.1 app via "sencha app upgrade" throws error until "toolkit" is added
Total: 11

# Release Notes for Sencha Cmd 6.0.0 Beta

Date: May 22, 2015
Version Number: 6.0.0.154
Windows: 32-bit - 64-bit - no_jre - zip
Mac OS X: dmg - no_jre - zip
Linux: i386 (sh, deb, rpm, zip) - amd64 (sh, deb, rpm, zip)

## New Features

- Installer (1)
  - SDKTOOLS-1047 Should provide installer with Java Runtime (JRE) included
- Package (1)
  - SDKTOOLS-1163 Package download and generation paths should be configurable separately
Total: 2

## Bugs Fixed

- Build (1)
  - SDKTOOLS-1155 Build should strip "classic" and "modern" configs from app.json in final manifest
- CordovaPhoneGap (1)
  - SDKTOOLS-1147 ExtJS 6 Modern cordova build does not load the application
- Documentation (1)
  - SDKTOOLS-1105 Typo in error when running CMD 5.1.2.52 with Ext JS 6
- Generator (1)
  - SDKTOOLS-1116 Generating a theme does not produce specified theme name in package.json
- Loader (1)
  - SDKTOOLS-1154 Loader does not respect "exclude" property on js and css assets
- Misc (4)
  - SDKTOOLS-1103 Errors are generated when using the -d debug flag to build the base application
  - SDKTOOLS-1107 Cannot specify build profile to "sencha app build"
  - SDKTOOLS-1111 Theme generated with Cmd6 has the wrong extend value in the package.json
  - SDKTOOLS-1114 Viewport fails to fill entire viewable area on Safari iOS 8.1
- Package (1)
  - SDKTOOLS-1135 Local repository should not append cacheBuster on file protocol remotes
- Sass (7)
  - SDKTOOLS-1115 Generated CSS should not include properties with null values
  - SDKTOOLS-1120 Sass local variables should "hide" dynamic variables by the same name
  - SDKTOOLS-1122 Local variables should be scope to their ruleset (per Sass 3.4)
  - SDKTOOLS-1133 Sass compiler falls back to default value for falsy mixin parameters
  - SDKTOOLS-1134 Lists are both == and != null
  - SDKTOOLS-1140 Required package cannot override theme variables
  - SDKTOOLS-1152 Fashion: Uncaught TypeError: currGlobals.get is not a function when using Sencha Inspector
- Upgrade (1)
  - SDKTOOLS-1093 StarterApp's index.html gets re-evaluated and merged back onto pre-existing index.html when upgrading
- Watch (2)
  - SDKTOOLS-1106 App Watch manifest rebuild is missing loadOrder
  - SDKTOOLS-1160 sencha app watch goes into a compile loop without stopping in some situations
Total: 20

# Release Notes for Sencha Cmd 5.1.3

Date: May 5, 2015
Version Number: 5.1.3.61
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Misc (1)
  - SDKTOOLS-990 Nightly build unable to handle automatically ViewController and ViewModel requires
Total: 1

## Bugs Fixed

- Compiler (1)
  - SDKTOOLS-1052 Incorrect encoding on concatenated JS file on Windows
- CordovaPhoneGap (1)
  - SDKTOOLS-1053 Cannot create a phonegap remote build with Cmd 5.1.1.39 on Windows
- Generator (1)
  - SDKTOOLS-991 Generated views do not require their ViewController and ViewModel
Total: 3

# Release Notes for Sencha Cmd 5.1.2

Date: January 27, 2015
Version Number: 5.1.2.52
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Build (1)
  - SDKTOOLS-1023 Should provide a command to publish application to Sencha Space.
Total: 1

## Bugs Fixed

- Compiler (3)
  - SDKTOOLS-1020 Compiler throws an error on Ext.require call with non-string-literal entries.
  - SDKTOOLS-1028 Code printer escapes file is not respected and required Unicode characters are not escaped
  - SDKTOOLS-1029 Optimizer should not change order of declared xtypes
- Loader (1)
  - SDKTOOLS-1022 Invalid property name used in Boot.js
- Misc (1)
  - SDKTOOLS-1018 Compile concat command ignores --strip-comments
Total: 5

# Release Notes for Sencha Cmd 5.1.1

Date: January 5, 2015
Version Number: 5.1.1.39
Windows - Mac OS X - Linux/64 - Linux/32

## Bugs Fixed

- Ant (1)
  - SDKTOOLS-1009 Running "build" target directly from Ant on Java 8 throws Java exception
- Build (2)
  - SDKTOOLS-1012 Incorrect build warnings when building Sencha Touch application
  - SDKTOOLS-1016 Cmd does not always preserve the order of app.json js entries when includeInBundle set
- Compiler (1)
  - SDKTOOLS-1017 Optimizer consumes too much additional memory
- Documentation (1)
  - SDKTOOLS-1004 Typo in --strict description
- Misc (2)
  - SDKTOOLS-1013 Sencha Cmd v5.1.0.13 does not respect overrides in packages
  - SDKTOOLS-1015 Generate theme command fails
- Upgrade (1)
  - SDKTOOLS-1011 Upgrade should only set framework location in workspace if not already set
Total: 8

# Release Notes for Sencha Cmd 5.1.0

Date: December 10, 2014
Version Number: 5.1.0.26
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Misc (1)
  - SDKTOOLS-597 Should be able to treat warnings as errors (add "sencha --strict")
- Package (1)
  - SDKTOOLS-853 Package repositories should support HTTP authentication credentials
Total: 2

## Bugs Fixed

- AutoDepedency (1)
  - SDKTOOLS-888 Object property names are incorrectly inspected for auto dependencies
- Compiler (4)
  - SDKTOOLS-1000 Semicolons are not retained when compiling certain minified JS source
  - SDKTOOLS-1002 Overrides of mixins are not ordered properly for Ext JS 5.0.0 GA (works for 5.0.1+)
  - SDKTOOLS-1006 Code printer does not escape required Unicode characters
  - SDKTOOLS-987 Class optimizer breaks statics() when combined with "statics" in "privates" declaration in Ext JS 5.0.0
- Documentation (1)
  - SDKTOOLS-927 Cordova / PhoneGap guide shows incorrect placement of "id" property in app.json
- Generator (1)
  - SDKTOOLS-984 A Cmd-generated view omits requires for its viewmodel and viewcontroller
- Misc (1)
  - SDKTOOLS-997 No Sencha Cmd available to be used with nightly build
- Service (1)
  - SDKTOOLS-1007 Cmd 5.1.0.25 does not work in Sencha Architect
- Upgrade (1)
  - SDKTOOLS-998 Running app upgrade on Windows can result in backslashes in sencha.cfg file
Total: 10

# Release Notes for Sencha Cmd 5.1.0 Beta

Date: November 22, 2014
Version Number: 5.1.0.13
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Compiler (1)
  - SDKTOOLS-994 Optimization should inline "baseCSSPrefix" into string literals
Total: 1

## Bugs Fixed

- AutoDepedency (1)
  - SDKTOOLS-992 Configs defined on overrides are not considered for dependency
- Build (1)
  - SDKTOOLS-983 Resources are not copied into build output for Sencha Touch when using Windows
- Compiler (4)
  - SDKTOOLS-972 Optimizer does not properly maintain alternateClassName mappings
  - SDKTOOLS-975 Compiler doesn't always load class overrides early enough
  - SDKTOOLS-981 Compiler does not properly handle when Ext.define is used to define a namespace (should generate a warning)
  - SDKTOOLS-985 Optimizer wrongly warns of a missing callSuper target when used in a class (not an override) in some cases
- CordovaPhoneGap (1)
  - SDKTOOLS-976 Build output from Cordova and PhoneGap does not display by default
- Misc (2)
  - SDKTOOLS-988 Creating an instance of your own class can cause the compiler to hang
  - SDKTOOLS-989 Generated application should require actual className not alternateClassName for Ext.Msg
Total: 9

## Known Issues

Total: 0

# Release Notes for Sencha Cmd 5.0.3

Date: October 16, 2014
Version Number: 5.0.3.324
Windows - Mac OS X - Linux/64 - Linux/32

## Noteworthy

If your html/markup file is located in a folder other than the app's root folder (where app.json resides), the relative paths for dev mode, generated into bootstrap.json, are now going to pick up your changes to indexHtmlPath (see SDKTOOLS-960). With this fix the previous workaround based on editing the "bootstrap" object in app.json is no longer needed. If you have changed the "bootstrap" properties to fix this issue, you should revert to the default which is:

        "bootstrap": {
            "base": "${app.dir}",
            "manifest": "bootstrap.json",
            "microloader": "bootstrap.js",
            "css": "bootstrap.css"
        },

You will also most likely need to deal with the framework's `appFolder` config. In you `Ext.app.Application`-derived class and in your call to `Ext.application` you will need to specify the correct relative path for `appFolder`. This is a framework limitation since the loader path for your application in the bootstrap data is being replaced by that config property.

## Bugs Fixed

- AutoDepedency (1)
  - SDKTOOLS-951 Classes referenced by Ext.app.Profiles are not detected as dependencies
- Build (7)
  - SDKTOOLS-919 Production build is generating malformed URL in remote path
  - SDKTOOLS-921 microloader.js is not minified if app does not embed it in index.html
  - SDKTOOLS-936 Ext.manifest is not populated when microloader is disabled
  - SDKTOOLS-941 Cannot control optimizer settings via app.json in Touch 2.3 apps
  - SDKTOOLS-953 Touch 2.x builds include overrides in json before bootstrap.js
  - SDKTOOLS-960 Paths in dev mode bootstrap do not respect indexHtmlPath in app.json by default
  - SDKTOOLS-962 Package example apps generate invalid loader paths in bootstrap
- Compiler (2)
  - SDKTOOLS-946 Optimizer does not always generate correct form for callSuper or mixinConfig
  - SDKTOOLS-954 Optimizer does not properly inject alternateClassNames for Touch 2.x
- CordovaPhoneGap (1)
  - SDKTOOLS-966 Building native app from Touch examples fails due to incorrect resources path
- Generator (1)
  - SDKTOOLS-952 Generate app does not honor "." for target directory on the command line
- Microloader (1)
  - SDKTOOLS-940 Touch microloader does not eval into global scope properly when delta patching JavaScript
- Misc (5)
  - SDKTOOLS-948 UNC paths on Windows are sometimes handled incorrectly
  - SDKTOOLS-956 JsonP fails in Touch when using the production microloader
  - SDKTOOLS-964 Upgrades do not respect 'ext.dir' for Sencha Cmd 5
  - SDKTOOLS-965 Cannot build native Android Touch 2.4.1 examples
  - SDKTOOLS-968 Sencha app watch not working with named build profiles
- Sass (1)
  - SDKTOOLS-635 compass configs are not being picked up when set in a theme's config.rb (prevents compass' spriting feature from being used)
- Upgrade (1)
  - SDKTOOLS-961 Sencha app upgrade --noframework forces framework version to 5.0.0
Total: 20

# Release Notes for Sencha Cmd 5.0.2

Date: September 9, 2014
Version Number: 5.0.2.270
Windows - Mac OS X - Linux/64 - Linux/32

## Noteworthy

The fix for SDKTOOLS-898 (see below) means that packages with extra content in their `package.json` file built by this version of Sencha Cmd will not be usable by older versions of Sencha Cmd. This is because the extra content is included in the package "signature" hash but is not by older versions. This is only an issue if the `package.json` file contains properties that older versions of Sencha Cmd did not expect.

## New Features

- Microloader (1)
  - SDKTOOLS-878 There should be a way to control cache busting in app.json
Total: 1

## Bugs Fixed

- Build (10)
  - SDKTOOLS-894 Setting output.base in app.json does not properly redirect output in testing builds
  - SDKTOOLS-903 Adding ext-all-debug.js to js array causes duplicate file loading on Ext JS 5
  - SDKTOOLS-907 Running Cmd from a GUI on Mac OS X doesn't load proper environment variables
  - SDKTOOLS-909 Adding ext-*.js files to js array in app.json causes double loading of framework classes
  - SDKTOOLS-911 Default build environment for "sencha app refresh" should be "development" not "production"
  - SDKTOOLS-912 Development build should include all CSS not only what is currently used
  - SDKTOOLS-913 Development builds should skip page, js and slice by default
  - SDKTOOLS-916 Build output should only include stack traces when "--debug" is specified
  - SDKTOOLS-934 Setting enable:false on microloader in output definition does not include Ext.Boot
  - SDKTOOLS-935 Page output does not respect app.json output option for microloader enable:false
- Compiler (1)
  - SDKTOOLS-915 Compiler throws a ClassCastException given a numeric property key in a class body
- CordovaPhoneGap (1)
  - SDKTOOLS-901 Cordova/Phonegap JS resources are not being loaded before the framework
- Generator (2)
  - SDKTOOLS-902 Framework init for workspaces doesn't copy built ext-* files for Ext JS 5
  - SDKTOOLS-933 The "ext" folder created when generating an app or workspace is missing licenses files (breaks "sencha ant js" rebuild of framework)
- Loader (1)
  - SDKTOOLS-908 Dynamic loader defaults to Ext.globalEval but should use script element injection
- Microloader (1)
  - SDKTOOLS-910 Microloader should not use synchronous ajax request to load the manifest
- Misc (2)
  - SDKTOOLS-900 Resources listed in app.json are copied to wrong directory (resources/resources)
  - SDKTOOLS-906 Delta patching and appCache should be disabled by default for all Ext JS app builds
- Package (1)
  - SDKTOOLS-898 Certain contents of package.json such as sass namespace are not included in build pkg file
Total: 19

# Release Notes for Sencha Cmd 5.0.1

Date: August 5, 2014
Version Number: 5.0.1.231
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Build (1)
  - SDKTOOLS-868 Build process should provide comprehensive control of output locations from app.json
- Compiler (2)
  - SDKTOOLS-327 Sencha Touch applications should be able to use optimizer
  - SDKTOOLS-382 Properties that control page file location need to work with sencha app refresh
Total: 3

## Bugs Fixed

- Build (12)
  - SDKTOOLS-345 app build doesn't copy theme resources.
  - SDKTOOLS-633 Generated apps do not start with an app.overrides value
  - SDKTOOLS-824 Senca app build does not properly handle the "destination" argument
  - SDKTOOLS-835 Package build isn't properly excluding configured files from packages
  - SDKTOOLS-837 Builds using resolve phase fail due to missing script file "resolver.js"
  - SDKTOOLS-845 CSS splitter can produce too many rules for IE if the limit is reached in the middle of a "selector group"
  - SDKTOOLS-849 Relative metadata paths for manifest are not adjustable
  - SDKTOOLS-856 The order of JS Files is reversed in all-classes.js when using marking form
  - SDKTOOLS-865 ext-theme-neptune-all.css includes *-debug parts
  - SDKTOOLS-871 Apps do not have their overrides path set by default
  - SDKTOOLS-872 Configuring appcache in app.json does not result in html manifest attribute in output markup for Ext JS 5 apps
  - SDKTOOLS-882 build.ruby.path is ignored
- Compiler (1)
  - SDKTOOLS-836 Unused namespaces included in generated JS output
- Documentation (1)
  - SDKTOOLS-879 Documentation for generating a package should not use "-sdk" switch
- Generator (2)
  - SDKTOOLS-800 Default theme not getting applied w/ sencha generate app
  - SDKTOOLS-823 app upgrade -ext tries to download framework when framework is already in the workspace
- Microloader (2)
  - SDKTOOLS-767 Loader should use ajax/eval when async:false is unsupported
  - SDKTOOLS-848 Add an overrides config to app.json
- Misc (3)
  - SDKTOOLS-855 App watch not detecting changes in dependent packages
  - SDKTOOLS-857 Cmd error when upgrading a 4.2 project to 5.0
  - SDKTOOLS-881 Compass error messages not showing
- Sass (2)
  - SDKTOOLS-842 Trailing comma in sass/example/render.js
  - SDKTOOLS-886 After building a package, cache_path in config.rb points to absolute path
- Service (1)
  - SDKTOOLS-873 Background compass not shutting down properly on Windows
- Slicer (1)
  - SDKTOOLS-883 Slicer page fails to load on Windows due to backslashes in some manifest URLs
- Watch (3)
  - SDKTOOLS-854 App Watch does not continue tracking new files under some conditions
  - SDKTOOLS-870 App watch sometimes misses file changes when multiple changes occur rapidly
  - SDKTOOLS-877 Mac OSX: sencha app watch consumes 100% cpu
Total: 28

# Release Notes for Sencha Cmd 5.0.0

Date: May 29, 2014
Version Number: 5.0.0.160
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Generator (1)
  - SDKTOOLS-770 Sencha generate view should optionally generate ViewController and ViewModel
- Misc (1)
  - SDKTOOLS-694 Have app watch monitor the app.json file
- Watch (1)
  - SDKTOOLS-769 App Watch needs an option to select the desired build profile
Total: 3

## Bugs Fixed

- Build (1)
  - SDKTOOLS-759 CSS resources not copied from packages during build in markup mode
- Compiler (1)
  - SDKTOOLS-784 Compiler doesn't detect dependencies on trigger configs for fields
- Documentation (1)
  - SDKTOOLS-513 sencha -sdk ext generate theme
- Generator (2)
  - SDKTOOLS-802 Generate app does not recognize ext.dir in existing workspace using -ext switch
  - SDKTOOLS-830 -ext flag not working when trying to generate new app
- Service (2)
  - SDKTOOLS-821 Using service layer, App Watch will not stop
  - SDKTOOLS-822 Memory leaks with app watch and the service layer
Total: 7

# Release Notes for Sencha Cmd 5.0.0 Beta

Date: April 1, 2014
Version Number: 5.0.0.116
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Build (3)
  - SDKTOOLS-709 Iterative build definition for application builds similar to KitchenSink
  - SDKTOOLS-748 Build should support iterating over multiple flavors (such as theme and locale) in one command
  - SDKTOOLS-771 App Build should support automatically downloading the framework
- Compiler (1)
  - SDKTOOLS-706 Compiler needs to export full metadata for classes and packages to allow loader in dev mode to match build
- Generator (1)
  - SDKTOOLS-776 Generate app should support getting the framework from the package repo
- Microloader (2)
  - SDKTOOLS-704 Microloader should be usable on all devices
  - SDKTOOLS-705 Microloader should allow user to extend platform "tags" that drive platform filtering and platformConfig
- StarterApp (1)
  - SDKTOOLS-712 Ext JS 5 default app templates should be microloader-enabled
- Upgrade (1)
  - SDKTOOLS-773 App Upgrade should support framework download

## Bugs Fixed

- Build (1)
  - SDKTOOLS-793 Remote css entries have trailing '/' in output json file
- Compiler (4)
  - SDKTOOLS-754 Packages metadata in manifest should include the leaf package
  - SDKTOOLS-756 Manifest metadata should not contain info for pseudo class definitions from Ext.application calls
  - SDKTOOLS-760 Compiler does not respect options to disable removal of requires/uses or unquoting of classnames used by the Loader
  - SDKTOOLS-781 Compiler is not detecting all dependencies (like new operator or auto dependency properties)
- Misc (4)
  - SDKTOOLS-753 App Watch should verify java version requirements before executing
  - SDKTOOLS-755 Boot.js recurses too frequently during synchronous request processing
  - SDKTOOLS-788 Package build skips framework packages in dependencies
  - SDKTOOLS-789 Items arrays on charts are being picked up by cmd as "widget." items
- Package (1)
  - SDKTOOLS-797 Download progress sometimes shows ANSI color codes
- Slicer (1)
  - SDKTOOLS-751 Slicer sometimes fails due to missing generateSlicerManifest function (race condition)
- Watch (2)
  - SDKTOOLS-761 App Watch does not properly detect dependency changes in js code
  - SDKTOOLS-787 App Watch should be based on testing build not production

# Release Notes for Sencha Cmd 4.0.4

Date: April 2, 2014
Version Number: 4.0.4.84
Windows - Mac OS X - Linux/64 - Linux/32

## Bugs Fixed

- CordovaPhoneGap (1)
  - SDKTOOLS-790 Cordova/PhoneGap config.xml file location had been changed
- MobilePackage (1)
  - SDKTOOLS-740 Apps built for AppStore are rejected with "bundle is invalid" reason

# Release Notes for Sencha Cmd 4.0.3

Date: February 11, 2014
Version Number: 4.0.3.74
Windows - Mac OS X - Linux/64 - Linux/32

## Bugs Fixed

- Misc (1)
  - SDKTOOLS-726 skip.slice defaults to "1" for newly generated theme packages
- Package (1)
  - SDKTOOLS-729 *sencha package build* strips "architect" from package.json
Total: 2

# Release Notes for Sencha Cmd 4.0.2

Date: December 20, 2013
Version Number: 4.0.2.67
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Installer (1)
  - SDKTOOLS-671 Upgrade PhantomJs to version 1.9.2
Total: 1

## Bugs Fixed

- Build (5)
  - SDKTOOLS-650 document.head is undefined in IE before IE9
  - SDKTOOLS-691 Delta patch checksums need to be in code form to bypass comment removal
  - SDKTOOLS-692 Js file checksum function names must be valid js identifiers
  - SDKTOOLS-693 Cache manifest not properly updated when referenced content changes
  - SDKTOOLS-696 App build duplicates checksum headers during production microloader builds
- Misc (3)
  - SDKTOOLS-669 Microloader not minified after build process
  - SDKTOOLS-676 Typo in warning to upgrade packages
  - SDKTOOLS-689 Resource names that do not end in ".js" or ".css" are not included
- Package (1)
  - SDKTOOLS-634 sencha package build runs theme capture / slice phase for non-theme packages causing build to fail
Total: 9

# Release Notes for Sencha Cmd 4.0.1

Date: November 7, 2013
Version Number: 4.0.1.45
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Build (1)
  - SDKTOOLS-598 Should be able change the Sass output folder independently of build.dir - need a compass.working.dir property
- Compiler (1)
  - SDKTOOLS-600 Compiler should support detection of Ext.syncRequire in addition to Ext.require
- Misc (2)
  - SDKTOOLS-583 App and package builds should be able to specify the Ruby path
  - SDKTOOLS-646 Add switch to disable "app refresh" step of "sencha generate app"
Total: 4

## Bugs Fixed

- Build (3)
  - SDKTOOLS-557 java Version Assertion Fails on beta/sub releases
  - SDKTOOLS-617 Resources included in app.json don't include a version when building for production
  - SDKTOOLS-667 First build does not pick up application code from markup file
- Compiler (2)
  - SDKTOOLS-615 Loader path metadata command does not use unix paths on windows
  - SDKTOOLS-655 Extending Ext.app.Application causes app refresh and app build to fail
- Generator (1)
  - SDKTOOLS-593 Generate app command does not validate appName
- Misc (6)
  - SDKTOOLS-587 sencha compile cannot parse ext-dev.js
  - SDKTOOLS-599 Package builds should not optimize / remove "uses" and "requires" statements
  - SDKTOOLS-624 Production build application needs to add a check for version.length
  - SDKTOOLS-648 App.json buildOptions don't get mapped cleanly into Ant property space - should map to "build.options"
  - SDKTOOLS-653 web app will not update if using update:full in app.json
  - SDKTOOLS-658 Sencha Cmd package version upgrade problem
- MobilePackager (1)
  - SDKTOOLS-654 Cordova plugin not initializing when using "sencha cordova init"
- Sass (1)
  - SDKTOOLS-643 Bundled version of Sass is not compatible with Ruby 2.0+
- Slicer (1)
  - SDKTOOLS-663 Slicer fails when trying to slice images that need more than 256 colors
- Upgrade (1)
  - SDKTOOLS-652 App upgrade only applies framework-specific updates if Cmd version is also changing
Total: 16

# Release Notes for Sencha Cmd 4.0.0

Date: September 24, 2013
Version Number: 4.0.0.203
Windows - Mac OS X - Linux/64 - Linux/32

## New Features

- Misc (1)
  - SDKTOOLS-543 Integrate Cordova support into Touch apps
Total: 1

## Bugs Fixed

- Build (2)
  - SDKTOOLS-442 Offline machines throw a catalog error when trying to reach catalog.json
  - SDKTOOLS-601 Resource copy fails on non-existing paths
- Compiler (3)
  - SDKTOOLS-581 Compiler does not recognize mixins with quoted keys in the object literal
  - SDKTOOLS-588 Deeply nested components in JSON form cause compiler to slow or hang
  - SDKTOOLS-592 sencha compile page command fails to resolve path for html file in some cases
- Misc (2)
  - SDKTOOLS-589 App.json resources list is not always copied to build folder
  - SDKTOOLS-603 Touch app upgrade overwrites app icons with default app icons
- Slicer (1)
  - SDKTOOLS-590 Slicer produces warnings in some cases that it should not
Total: 8

# Release Notes for Sencha Cmd 4.0.0 RC

Date: September 9, 2013
Version Number: 4.0.0.161
Windows - Mac OS X - Linux/64 - Linux/32

## Build Process

One of the major updates in this beta is the unification and consolidation of the build scripts used for generated applications. In previous releases of Sencha Cmd, applications had distinct and somewhat different build scripts based on the framework and version in use. This made it difficult at times to account for the differences in build process (for example, when upgrading frameworks or switching between apps for different frameworks).

### Build Scripts

The `.sencha/app/build-impl.xml` file contains the root of the generated build script (as it always has for a Sencha Cmd generated app). This file, however, has been refactored into several smaller scripts. This makes understanding the build process much simpler compared to the single, large XML file in previous releases.

NOTE: While you do not need to read these scripts in order to build your application, skimming through them can be very helpful to understand how you can tune the build process to better suit your needs.

### New Build Steps

The build script is basically a sequence of build steps called "targets". New to this set of targets are refresh and resolve.

#### `refresh`

The sencha app refresh command now routes to the new refresh target and this target is automatically invoked by the build. This means you no longer need to run sencha app refresh and sencha app build to get your app ready for "dev mode". In other words, sencha app refresh is just a subset of a full build and you can run that command if all you need to do is update metadata such as loader paths or class aliases.

#### `resolve`

A new feature of the build process is the ability to include a dynamic dependency resolution step (called resolve) that uses a headless WebKit (PhantomJS) to load your application and extract the dynamic loader's history. This is in essence the method used by SDK Tools v2 to determine dependencies and can help if your application does not fully declare its dependencies using requires and/or uses statements.

This extra build step (unlike all of the other build steps) is disabled by default because it adds several seconds to the build time. To enable this build step, add the following to `.sencha/app/build.properties`:

    skip.resolve=0

CAUTION: If your application dynamically loads classes based on the browser/platform this method will not necessarily produce a build that will have the classes you need.

### Build Properties

The properties for the build are much more completely listed and documented in `.sencha/app/defaults.properties`. You can override these in `.sencha/app/build.properties` or, depending on build environment, `.sencha/app/production.properties` or `.sencha/app/testing.properties`.

#### Use of JSON Files

Both applications and packages have controlling JSON definition files: `app.json` and `package.json` respectively. In this release, the properties of these files are imported into builds using "dot" notation. For example, you can set the app's theme in `app.json` as shown below:

    {
        "theme": "ext-theme-neptune"
    }

The above is equivalent to using `.sencha/app/sencha.cfg` and adding:

    app.theme=ext-theme-neptune

Any properties set in both locations will have the value defined in the JSON file.

Property expansion has also been enabled for app.json properties, so the following style of property reference is now supported:

    {
        "js": [{
            "path": "${framework.dir}/sencha-touch.js"
        },{
            "path": "${app.dir}/app.js"
        }]
    }

#### Build Environment

One key change in the set of build properties in this release is the concept of "build environment" such as "production" or "testing". This is now controlled by the build.environment property. In the past this as an argument from the command-line and was passed in as args.environment but this was not always being set.

#### Build Folder

The new build.environment property is now used to formulate the default build directory as follows:

    build.dir=${workspace.dir}/${build.environment}/${app.name}

This only applies to newly generated applications but is a better strategy by default than previous releases because it can more closely preserve the relative path between applications. In other words, the old structure of the build folder was:

    build/
        App1/
            production/
                index.html
            testing/
                index.html
        App2/
            production/
                index.html
            testing/
                index.html

The new structure (again just the default) is:

    build/
        production/
            App1/
                index.html
            App2/
                index.html
        testing/
            App1/
                index.html
            App2/
                index.html

It is trivial to have your own build folder structure by setting build.dir to be whatever you desire.

## New Features

- Build (2)
  - SDKTOOLS-561 Compiler needs to export package versions via Ext.setVersion calls
  - SDKTOOLS-579 Build should have a property to specify the slicer example.css location
Total: 2

## Bugs Fixed

- Build (3)
  - SDKTOOLS-519 Some classes are removed from build incorrectly
  - SDKTOOLS-539 sencha app resolve fails in some cases
  - SDKTOOLS-575 The 'whitespace' arg in the x-strip-js target in antlib is misspelled: whitespcae
- Compiler (2)
  - SDKTOOLS-535 Compiler does not filter out duplicate files if folders appear multiple times in classpath
  - SDKTOOLS-560 Dynamic requires statement causes build failure
- Misc (5)
  - SDKTOOLS-545 Ext JS builds include extra files in all-classes.js
  - SDKTOOLS-546 Ext JS app example scss file needs to be in a temp directory
  - SDKTOOLS-547 Optimizer generates namespaces for classes not included in build
  - SDKTOOLS-548 Touch 2.3 workspace generation doesn't copy framework packages
  - SDKTOOLS-563 Sencha Cmd should support install paths with spaces on mac / linux
- Upgrade (1)
  - SDKTOOLS-569 App upgrade for touch apps with architect integration fails
Total: 11

# Release Notes for Sencha Cmd 4.0.0 Beta 1

Date: July 18, 2013
Version Number: 4.0.0.126
Windows - Mac OS X - Linux/64 - Linux/32

With this release we have done considerable internal refactoring to support the the latest Sencha Touch beta as well as add Cordova integration and the new sencha app watch command.

Using the following command:

      sencha app watch

Your app build will run and then Cmd then will pause waiting for any changes you might make. When changes are detected only the minimum amount of work necessary is performed to bring your app and its CSS up to date, saving you from having to manually run sencha app refresh or rebuilding your Sass.

NOTE: This command requires Java 7. All other features of Cmd continue to work with Java 6.

## New Features

- Misc (2)
  - SDKTOOLS-541 Implement sencha app watch to replace compass watch
  - SDKTOOLS-542 Support frameworks as first class packages
Total: 2

## Bugs Fixed

- Build (2)
  - SDKTOOLS-516 Need to add 'controllers' to the implicit list of class dependencies for the Ext.app.Controller class
  - SDKTOOLS-520 Touch applications do not support app refresh
- Compiler (3)
  - SDKTOOLS-512 Dependencies are not detected from model or proxy configs for Ext.data.TreeStore
  - SDKTOOLS-515 App resource inheritance uses absolute path to package when it should use package name
  - SDKTOOLS-523 Overrides file cannot require code from src folder
- Generator (1)
  - SDKTOOLS-524 Generate app into existing workspace fails if framework is not already present
- Misc (5)
  - SDKTOOLS-507 When building a theme package it does not inherit overrides from its parent theme
  - SDKTOOLS-522 Theme package overrides are included before base theme overrides
  - SDKTOOLS-532 Touch app upgrades can leave app with no app.cmd.version set
  - SDKTOOLS-537 Sencha watch not picking up new directory changes
  - SDKTOOLS-544 Build help target lists all targets not just those with descriptions
Total: 11