RequireJS

Software Screenshot:
RequireJS
Software Details:
Version: 2.2.0 updated
Upload Date: 26 Jul 16
Distribution Type: Freeware
Downloads: 93

Rating: nan/5 (Total Votes: 0)

RequireJS might sound complex, but after a developer understands what it can do and what are its true capabilities, it will become a de-facto requirement for any project he'll work with.

This small JavaScript library was created to automatically handle JS file dependencies, for controlling when and how a file is loaded, and set the load order of JavaScript files.

The library can work with Rhino, Node.js, jQuery, Dojo, and CommonJS (AMD) modules.

It can be used with regular websites and Web applications, but it can also work with more modern single-page apps, being extremely useful and helping developers control when JavaScript files are loaded, especially since not all of them will be needed at page load.

As you can imagine using RequireJS greatly increases page loading speed and also the overall performance of an application.

What is new in this release:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.22:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.20:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.18:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.17+:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.16:

  • Esprima 2.0 is used by the optimizer when parsing modules for dependencies. This allows some ES6 features to be used. Whatever is parsable by Esprima 2.0 is what is supported (when running in xpcshell, Reflect.parse is still used).
  • The r.js optimizer runs in Nashorn now.
  • Expanded support of some UMD-wrapped files that start with !function(a) {...`. If you use the UMD node package to generate your UMD wrappers, upgrade to umd@3.0.0 or later to get full compatibility with the r.js optimizer.

What is new in version 2.1.14:

  • A couple more regression fixes for 2.1.12.
  • One to fix nested plugin ID normalization, like "pluginA!pluginbB!resource", and one for the optimizer incorrectly detecting UMD wrapped code.

What is new in version 2.1.6:

  • Source map support has been expanded.

What is new in version 2.1.4:

  • Fix:
  • cssPrefix normalization always needs to happen.

What is new in version 2.0.5:

  • Fix for a 'use strict' issue in Safari 6: should only show up in certain non-optimized scenarios.

What is new in version 2.0.4:

  • Same as 2.0.3, but rolled back a change in r.js that caused a logging error.

What is new in version 2.0.1:

  • Fixed require.js issues
  • Fixed r.js optimizer issues

What is new in version 2.0.0:

  • Fixed require.js issues
  • Fixed r.js optimizer issues

What is new in version 1.0.7:

  • Small bug fixes to:
  • require.js
  • r.js optimizer

What is new in version 1.0.3:

  • Small bug fixes to:
  • require.js
  • r.js optimizer

What is new in version 1.0.2:

  • Small bug fixes to:
  • require.js
  • r.js optimizer

What is new in version 1.0.1:

  • Bug fixes:
  • Allowing full URLs for simplified CommonJS wrapped modules.
  • AST parsing of dependencies for modules that use a variable for the factory function.
  • Catching more cases that should have the "namespace" optimizer option applied.

What is new in version 1.0.0:

  • Same as RequireJS 0.27.1 release, with some document updates and a small fix to the optimizer's regular expression for converting CommonJS modules to AMD.

What is new in version 0.27.0:

  • require.ready() has been removed. In its place, use the domReady plugin. This allows better interoperability with other AMD loaders and better separation of concerns.
  • A new wrap config option for the optimizer is available, for wrapping built code in a function. Allows for better API hiding and tiny builds with the almond API shim.
  • The order plugin is improved for IE.
  • Loader plugins can now have dependencies and they will work in the optimizer, as long as the dependencies work in the optimizer environment (Node, Rhino).
  • The namespace config option for the optimizer is more robust.
  • Removed require.def(), use define() instead.
  • Removed module.setExports, use module.exports instead.

What is new in version 0.26.0:

  • UglifyJS in the minifier is updated to 1.0.6. The upside: now has() branch trimming now works with the default minifier.
  • Fixes for running under Node on Windows using the native node.exe builds that are now available in the Node 0.5.x series. Now there is less of a need to use Java to drive the RequireJS Optimizer!
  • Configuration is now done via a require.config({}) call, to get in line with the amdjs require API. The old require({}) method works on the global require() for backwards compatibility, but the suggested API going forward is require.config({}). The API doc has been updated to show proper usage.
  • There is a namespace option now for builds, to allow moving require() and define() calls under a different namespace. This allows you to build an optimized file that uses RequireJS but does not interfere with any other AMD loader on the page, and you can make sure only your modules are loaded in that namespaced object.
  • The default error behavior when a define() factory function throws an error is to not catch it. The catching done in 0.25.0 made it more difficult to debug. However, there are some situations where catching the errors is preferred. Setting the config value catchError.define = true will switch to catching the errors and allow processing via require.onError()
  • Closure Compiler in the optimizer was updated. As a result, the code to invoke Closure Compiler changed, and will likely only work with the latest Closure Compiler release. You can grab a version known to work with the optimizer in the optimizer's lib/closure directory.
  • There is now a pragmasOnSave build option, which is used in the require-cs CoffeeScript loader plugin build profile to strip out the CoffeeScript compiler after a build. The end result: tiny build layers of converted CoffeeScript code.

What is new in version 0.25.0:

  • The loader plugin API changed to allow plugins to create cross-domain-accessible resources. The main use case: you use the text plugin to dynamically load text resources, but you want to deploy those scripts to a CDN. See the text plugin's implementation of writeFile() as an example.
  • There is now a global requirejs() function object that is the same as the old global require() function object. This should allow RequireJS to work better in environments like Mozilla Chromeless, which already have a built-in require() function that does not have full AMD/loader plugin capabilities.
  • It is now possible to specify the precise version of jQuery to allow in a RequireJS context. This is useful if you know of other scripts that load different versions of jQuery on a page.

What is new in version 0.24.0:

  • Support for IE 9. It has a non-conformant script loading behavior that necessitated the change. It would be ideal if IE 9 would change the behavior to be conformant.
  • Changes to jQuery integration.

What is new in version 0.23.0:

  • The r.js adapter now works in Node and Rhino.
  • The config option, baseUrlMatch has been removed, since the data-main baseUrl rule mentioned above removes the need for it.
  • Some important fixes around loader plugins: a fix to allow multiple modules to use the same plugin resources as a common dependency, and to allow loader plugins that use a define() function callback to work in the optimizer.
  • A fix for the use of jQuery's readyWait capability when jQuery is detected and used as a module.
  • Some directory shuffling related to making the rhino and node adapters the same for use in command line tools and in the r.js adapter.

What is new in version 0.22.0:

  • A full plugin API that supports also including plugin loaded artifacts in optimized builds.
  • Robust Node support: now can use npm-installed modules, .node add-ons, and modules on require.paths.
  • Support for has.js optimizations in the optimizer, including dead code branch removal via Closure Compiler.
  • Bug Fixes from 2010-12-21 through 2011-01-05.

What is new in version 0.2.1:

  • Fix issue found with i18n.build.js where paused items were not cleared out fast enough in the sync loading case.

What is new in version 0.2.0:

  • Refactored core.
  • New loader plugin API support.
  • Improved Rhino and Node adapters
  • Bug fixes around loader plugins and the optimizer.
  • require.modify removed.
  • Removed Transport D files.

What is new in version 0.15.0:

  • The bundled jQuery options now use jQuery 1.4.4.
  • The jQuery sample project now includes the ability to use RequireJS plugins.
  • The jsonp! plugin has been removed, since, thanks to work by Kris Zyp, the core loader now supports loading JSONP dependencies by default. The JSONP docs have been updated accordingly.
  • The optimizer can now be run from any directory, not just the directory with the build profile.
  • r.js Node adapter is more robust, and it can handle using more Node-written modules by default now. Thanks to Francois Laberge for a great test case application that lead to improving the robustness of r.js.
  • Initial support for PS3 Netfront browser. Thanks to Chris Warren for investigating the load behavior of the browser. Not all tests pass, but the basic ones do.
  • Miscellaneous fixes, some listed in the issue tracker.

What is new in version 0.14.5:

  • Fix bug where scripts were not loaded from the correct path. Did not affect RequireJS+jQuery builds, but affected other builds. If you do not use a RequireJS+jQuery build, then it is strongly recommended that you upgrade from 0.14.4 to 0.14.5.
  • Added an urlArgs config option to allow for cache busting when servers/browser misbehave during development.

What is new in version 0.14.2:

  • Bug fixes:
  • Fix issue with "module" dependency not correctly assigning exported value if it is not listed as the last dependency.
  • Fix "packages" config option. Its behavior was fixed to match the docs.
  • Fix module-to-name resolution to account for package mappings.

Requirements:

  • JavaScript enabled on client side

Similar Software

Apache Commons JCS
Apache Commons JCS

13 Apr 15

Sizzle
Sizzle

10 Feb 16

soaplib
soaplib

5 Jun 15

Other Software of Developer The Dojo Foundation

Lucid Desktop
Lucid Desktop

21 Jul 15

Dojo
Dojo

28 Feb 15

OpenCoweb
OpenCoweb

6 Jun 15

Comments to RequireJS

Comments not found
Add Comment
Turn on images!