src/cm/media/js/lib/yui/yui_3.10.3/releasenotes/HISTORY.yui.md
changeset 525 89ef5ed3c48b
equal deleted inserted replaced
524:322d0feea350 525:89ef5ed3c48b
       
     1 YUI Core Change History
       
     2 =======================
       
     3 
       
     4 3.10.3
       
     5 ------
       
     6 
       
     7 * No changes.
       
     8 
       
     9 3.10.2
       
    10 ------
       
    11 
       
    12 * No changes.
       
    13 
       
    14 3.10.1
       
    15 ------
       
    16 
       
    17 * No changes.
       
    18 
       
    19 3.10.0
       
    20 ------
       
    21 
       
    22 * Add ability to filter log messages by threshold [andrewnicols]
       
    23 
       
    24 3.9.1
       
    25 -----
       
    26 
       
    27 * No changes.
       
    28 
       
    29 3.9.0
       
    30 -----
       
    31 
       
    32 * Setup YUI.setLoadHook and its docs  (used for Node.js injection)
       
    33 
       
    34 3.8.1
       
    35 -----
       
    36 
       
    37 * Fixed issue with cssstamp element not being assigned if YUI is loaded twice on the page.
       
    38 
       
    39 3.8.0
       
    40 -----
       
    41 
       
    42 * Added `Y.config.global` as an alias to the global scope
       
    43 
       
    44 3.7.3
       
    45 -----
       
    46 
       
    47 * Adding Y.UA.touchEnabled boolean to use in conditional modules
       
    48 * 2532797 - Added IE10 ua fixing for Windows8 WinJS
       
    49 * 2532675 - Remove the second air property
       
    50 
       
    51 3.7.2
       
    52 -----
       
    53 
       
    54 * No changes.
       
    55 
       
    56 3.7.1
       
    57 -----
       
    58 
       
    59 * No changes.
       
    60 
       
    61 3.7.0
       
    62 -----
       
    63 
       
    64 * Improved the performance of `Y.merge()` by 10 to 40% (depending on the
       
    65   browser). [Ryan Grove]
       
    66 
       
    67 
       
    68 3.6.0
       
    69 -----
       
    70 
       
    71 * Changed the default `throwFail` behavior to act like it sounds, see ticket #2531679
       
    72     If `throwFail` is `true` (default) we will not wrap modules or the use callback in
       
    73     a try catch. If it's `false`, they will be wrapped (the old behavior).
       
    74 
       
    75 * 2528334 YUI configuration to delay use() callback until domready or window load
       
    76 * 2529742 Y[UI()].use() callback's 2nd parameter: 2 issues
       
    77 * 2531647 div is appended precedent to <head> node
       
    78 * 2531679 Module/use callback load errors do not provide useful stacktrace
       
    79 * 2532215 Y.Parallel should push arguments if fn is not specified
       
    80 * 2532344 Missing requirements sometimes return in wrong order
       
    81 * 2532397 Automate Testing for OOP examples
       
    82 
       
    83 
       
    84 
       
    85 3.5.1
       
    86 -----
       
    87 
       
    88 * Added a `Y.UA.compareVersions()` function for performing simple version number
       
    89   comparisons using version-safe logic rather than numerical logic.
       
    90 
       
    91 
       
    92 3.5.0
       
    93 -----
       
    94 
       
    95 * YUI now runs natively on Node.js without a shim. See README.nodejs.md for
       
    96   details.
       
    97 
       
    98 * YUI now detects non-native ES5 shims added to native objects by other
       
    99   libraries and falls back to its own internal shims rather than relying on the
       
   100   potentially broken code from the other library.
       
   101 
       
   102 * Added static YUI.applyConfig to apply config settings to YUI.GlobalConfig in
       
   103   parts instead of in whole. [Ticket #2530970]
       
   104 
       
   105 * Added `Y.getLocation()` which returns the `location` object from the
       
   106   window/frame in which a YUI instance operates. [Ticket #2531608]
       
   107 
       
   108 * Added a `useNativeES5` YUI config option, which is `true` by default. If
       
   109   `false`, certain YUI features that check for native ES5 functionality will
       
   110   always fall back to non-native implementations even in ES5 browsers (useful
       
   111   for testing).
       
   112 
       
   113 * `Y.Array.indexOf()` now supports a `fromIndex` argument for full ES5
       
   114   compatibility. [Based on a patch from Ryuichi Okumura]
       
   115 
       
   116 * `Y.Object.isEmpty()` now casts the given value to an object if it isn't one
       
   117   already, which prevents exceptions when it's given a non-object.
       
   118 
       
   119 * Fixed issue #2531247: Namespace function behaves wrong with multiple
       
   120   arguments.
       
   121 
       
   122 * Fixed issue #2531512: 'debug' parameter missing from the YUI Config object
       
   123   documentation.
       
   124 
       
   125 * 2530970 Should we provide a YUI.applyConfig(), to avoid clobbering of YUI_config in 'mashup' use cases
       
   126 * 2531164 Natively use YUI Gallery Modules form does not submit on [enter]
       
   127 * 2531247 namespace function behaves wrong with multiple arguments
       
   128 * 2531512 'debug' parameter missing from the YUI Config object documentation; the Config object documentation ...
       
   129 * 2531550 Prepare npm package for 3.5.0
       
   130 * 2531551 Add support for Silk in Y.UA
       
   131 * 2531612 Wrong module name in YUI Global Object documentation
       
   132 
       
   133 
       
   134 3.4.1
       
   135 -----
       
   136 
       
   137 * Sparse arrays are now handled correctly in the non-native fallback
       
   138   implementation of `Y.Array.indexOf()`. [Ticket #2530966]
       
   139 
       
   140 * `Y.mix()` will no longer shadow prototype properties on the receiver unless
       
   141   the `overwrite` parameter is true. This was the pre-3.4.0 behavior, but was
       
   142   changed in 3.4.0. We're changing it back to preserve backwards compatibility.
       
   143   [Ticket #2530501]
       
   144 
       
   145 * The non-native fallback implementation of `Y.Object.keys()` now contains a
       
   146   workaround for buggy browsers that treat function `prototype` properties as
       
   147   enumerable in violation of the ES5 spec.
       
   148 
       
   149 * `Y.Object.size()` now returns `0` for non-objects. This was the pre-3.4.0
       
   150   behavior, but regressed in 3.4.0. [Ticket #2531069]
       
   151 
       
   152 
       
   153 3.4.0
       
   154 -----
       
   155 
       
   156 * Added `Y.Array.dedupe()`, which provides an optimized solution for deduping
       
   157   arrays of strings. When you know an array contains only strings, use `dedupe`,
       
   158   since it's faster than `unique`.
       
   159 
       
   160 * `Y.Lang.isArray()` now uses the native ES5 `Array.isArray()` method when
       
   161   possible.
       
   162 
       
   163 * `Y.Object()` now uses the native ES5 `Object.create()` method when possible.
       
   164 
       
   165 * `Y.Object.keys()` now uses the native ES5 `Object.keys()` method when
       
   166   possible.
       
   167 
       
   168 * Sparse arrays are now handled correctly in the non-native fallback
       
   169   implementations of `Y.Array.each`, `Y.Array.hash`, and `Y.Array.some`.
       
   170   [Ticket #2530376]
       
   171 
       
   172 
       
   173 3.3.0
       
   174 -----
       
   175 
       
   176 * Added fast path for repeat calls to `use()` with the same arguments.
       
   177 
       
   178 * Added a `Y.destroy()` method, which destroys the YUI instance.
       
   179 
       
   180 * Added `Y.Lang.now()`, which returns the current time in milliseconds.
       
   181 
       
   182 * Added `YUI.GlobalConfig` to allow three stages of configuration
       
   183   (`YUI.GlobalConfig` --> `YUI_Config` --> instance configs). This is helpful in
       
   184   non-browser environments for supplying a global config for the YUI container.
       
   185 
       
   186 
       
   187 3.2.0
       
   188 -----
       
   189 
       
   190 * Added `Y.Lang.sub()`, which is a very lightweight version of `Y.substitute()`.
       
   191 
       
   192 * `Y.Array.hash()` no longer skips falsy values.
       
   193 
       
   194 * Script errors in module and `use()` callback functions are caught and routed
       
   195   through `Y.error`.
       
   196 
       
   197 * `Y.error` invokations can be monitored with the `errorFn` configuration.
       
   198 
       
   199 * Returning `true` from the `errorFn` will prevent the script error from halting
       
   200   further script execution.
       
   201 
       
   202 * Added UA properties for mobile devices and ensured that UA is only evaluated
       
   203   once.
       
   204 
       
   205 * The YUI global will overwrite itself when included again, while attempting to
       
   206   preserve the global environment of previous instances.
       
   207 
       
   208 * Added a remote loader service submodule.
       
   209 
       
   210 * Added a features submodule.  This is used by the capability-based loader
       
   211   when dispatching to a remote loader service.
       
   212 
       
   213 
       
   214 3.1.1
       
   215 -----
       
   216 
       
   217 * Removed the limit on the number of config objects you can supply to the
       
   218   `YUI` constructor.
       
   219 
       
   220 
       
   221 3.1.0
       
   222 -----
       
   223 
       
   224 * YUI will attempt to fetch newly discovered dependencies after a module is
       
   225   dynamically loaded.
       
   226 
       
   227 * The `documentElement` (`<html>`) is now stamped with a `yui3-js-enabled`
       
   228   classname to indicate that JS is enabled. This allows for the creation of
       
   229   JS-aware CSS style rules that progressively enhance the page.
       
   230 
       
   231 * Added the ability to define a global configuration object (`YUI_config`).
       
   232 
       
   233 * Added `Y.Object.some()` and `Y.some()`, which are analogous to
       
   234   `Y.Array.some()`.
       
   235 
       
   236 * UA refinements for Chrome, Android and other browsers/platforms.
       
   237 
       
   238 * Added `last()` to `Queue` for LIFO support.
       
   239 
       
   240 * Added throttle utility to buffer expensive functions that are called
       
   241   frequently.
       
   242 
       
   243 * The `YUI.add()` callback now gets the module name as the second parameter for
       
   244   generic processing of similar modules.
       
   245 
       
   246 * Added `intl-base` submodule to process the decision tree for selecting
       
   247   language packs when dynamically loading internationalized modules.
       
   248 
       
   249 * `Y.guid()` generates identifiers that are safe to use as HTML attributes.
       
   250 
       
   251 * Improved persistent messaging for missing modules/functionality.
       
   252 
       
   253 * Bootstrapping improved to prevent simultaneous loading of resources when
       
   254   multiple instances are launched at the same moment.
       
   255 
       
   256 * The YUI script source URL is read in order to try to dynamically determine the
       
   257   base path for loading resources on demand.
       
   258 
       
   259 * The core loads without errors in non-browser environments.
       
   260 
       
   261 
       
   262 3.0.0
       
   263 -----
       
   264 
       
   265 * Extracted the loader from the seed file. If loader is not available, but `get`
       
   266   is and dependencies are missing, the loader will be fetched before continuing.
       
   267 
       
   268 * User agent detection is more granular. For example, Firefox 3.5 reports Gecko
       
   269   1.91 rather than 1.9.
       
   270 
       
   271 * Fixed `Y.UA.os`.
       
   272 
       
   273 * Added additional mobile device detection.
       
   274 
       
   275 * Get utility cleans up attribues before purging nodes.
       
   276 
       
   277 * `Y.cached` accepts a parameter to refresh a cached value.
       
   278 
       
   279 * `yui-log` and `yui-later` are now optional modules that are included with
       
   280   `yui.js`.
       
   281 
       
   282 * `queue-base` is no longer a submodule of `queue` -- it's now part of
       
   283   `yui-base`.
       
   284 
       
   285 * All YUI submodules end up in the `yui` build directory.
       
   286 
       
   287 * Dynamic loading can be disabled by setting the `bootstrap` config to `false`.
       
   288 
       
   289 
       
   290 3.0.0 beta 1
       
   291 -----
       
   292 
       
   293 ### Core
       
   294 
       
   295 * `Y.fail` has been renamed to `Y.error` so that `Y.fail` can be used for the
       
   296   assertion engine.
       
   297 
       
   298 * `Y.stamp` now accepts a `readOnly` parameter to be used when you are only
       
   299   interested in reading an existing guid rather than creating a new one.
       
   300 
       
   301 * `Y.stamp` defends against stamping items that can't be stamped.
       
   302 
       
   303 * Added to `Y.Object`: `values()`, `hasKey()`, `hasValue()`, `size()`,
       
   304   `getValue()`, `setValue()` (the latter two are for manipulating nested
       
   305   values).
       
   306 
       
   307 * `Y.use` calls are queued during dynamic loading.
       
   308 
       
   309 * Added `Y.cached` for function memoizing
       
   310 
       
   311 * Added `numericSort` to `Y.Array`.
       
   312 
       
   313 * The `yui:log` event broadcasts globally.
       
   314 
       
   315 ### Lang
       
   316 
       
   317 * Added `Y.Lang.type` (`typeof` abstraction) and refactored some 'is' methods to
       
   318   use it.
       
   319 
       
   320 ### Get
       
   321 
       
   322 * Accepts an attribute collection config to apply to inserted nodes.
       
   323 
       
   324 * `id` attributes are globally unique
       
   325 
       
   326 * Now accepts `purgethreshold` as a config option. This will set the number of
       
   327   transactions required before auto removing nodes from previous transactions
       
   328   (default is 20).
       
   329 
       
   330 ### Loader
       
   331 
       
   332 * `yuitest` renamed to `test`, now requires `collection`.
       
   333 
       
   334 * Lots of new module metadata.
       
   335 
       
   336 * Added `onCSS`.
       
   337 
       
   338 * Loader requests are queued globally.
       
   339 
       
   340 * Accepts `jsAttributes` and `cssAttributes` configs for adding attributes to
       
   341   inserted nodes
       
   342 
       
   343 * Added `force` config.
       
   344 
       
   345 ### UA
       
   346 
       
   347 * Added `secure` property for SSL detection.
       
   348 
       
   349 * Added `os` property for OS detection.
       
   350 
       
   351 * Added Adobe Air and Google Caja detection.
       
   352 
       
   353 
       
   354 3.0.0pr2
       
   355 --------
       
   356 
       
   357 ### Core
       
   358 
       
   359 * The initial dependency calculation should not allow automatic rollup.
       
   360 
       
   361 * `Y.fail` will throw/rethrow errors by default (`throwFail` is now `true`).
       
   362 
       
   363 * `Y.namespace` reverted to scrub `YAHOO` out if included as the first level of
       
   364   the namespace.
       
   365 
       
   366 * `useConsole` config changed to `useBrowserConsole`.
       
   367 
       
   368 
       
   369 ### Array
       
   370 
       
   371 * Added `Y.Array.some()`.
       
   372 
       
   373 
       
   374 ### Get
       
   375 
       
   376 * Protects against trailing commas in the array of files to load.
       
   377 
       
   378 
       
   379 ### Loader
       
   380 
       
   381 * `get` requires `yui-base`.
       
   382 
       
   383 * `loader` requires `get`.
       
   384 
       
   385 * Combo URL build process defends against undefined modules.
       
   386 
       
   387 * Added combo handler support for CSS.
       
   388 
       
   389 * Filters are correctly applied to combo and fullpath URLs.
       
   390 
       
   391 * Added `compat`, `profiler`, `yuitest`, `widget`, `stylesheet`,
       
   392   `classnamemanager`, `overlay`, `plugin`, `slider`, and `console` modules.
       
   393 
       
   394 * Added `io` submodules.
       
   395 
       
   396 * `queue` requires `event`.
       
   397 
       
   398 * Added submodule metadata logic.
       
   399 
       
   400 * Added plugin metadata logic.
       
   401 
       
   402 * Added skin metadata logic.
       
   403 
       
   404 
       
   405 3.0.0pr1
       
   406 --------
       
   407 
       
   408 * Initial release.