This release succeeds v0.2.8, which was released 15 July, 2016. There are no backwards-incompatible changes, but certain default behaviors have changed (see changes below). Support continues for ECMAScript 3+.
About GNU ease.js ----------------- GNU ease.js is a classical object-oriented framework for JavaScript, intended to eliminate boilerplate code and "ease" the transition into JavaScript from other object-oriented languages. Features include simple and intuitive class definitions; classical inheritance; abstract classes and methods; traits as mixins; interfaces; public, protected, and private access modifiers; static and constant members; and more. Please see the comprehensive documentation at <https://www.gnu.org/s/easejs/manual.html> for more information, examples, and implementation details. Changes between 0.2.8 and 0.2.9 ------------------------------- * Class constructors are now virtual by default. The manual has been updated with information about this change. * Method overrides are now implicitly virtual. This is consistent with other object-oriented languages and solves the problem with breaking stackable traits if the author forgets to supply `virtual' to an overridden (intended-to-be-stackable) method. The manual has been updated. * New methods `Class.assertInstanceOf' and its alias `Class.assertIsA' have been added to eliminate boilerplate of enforcing polymorphism. They are like `Cass.isInstanceOf' and `Class.isA' respectively, but will fail by throwing a TypeError. The manual has been updated to include these two methods, along with some rewording of the containing section. * `Class.extend(Base)', where `Base' is a class, will now assume that you forgot the class definition and throw an error rather than trying to use `Base' as the definition object. * [bugfix] Using `#constructor' (alias of `#__construct') in Error subtypes will no longer complain about an attempt to redefined `#__construct'. * `Constructors' section of manual has been reworded and references to poor practices (static classes, Singletons) have been removed. * Manual (and website) examples modernized to use ECMAScript 6 syntax. Users must still write ES3 syntax if they want to use ease.js in ES3 environments, of course. * INSTALL file added to repository (removed from .gitignore). This was previously (and unintentionally) only available in the distribution archives. * Copyright years updated on combined and minified distributions. This release contains a number of bugfixes for traits, which is stable but still under development: * [bugfix] Methods of trait class supertypes now apply with the correct context. (Feature added in 0.2.7) * [bugfix] Traits extending classes may now be named using the `Trait('Name').extend(C, dfn)' notation. (Feature added in 0.2.7) * [bugfix] Can now mix in traits with class supertypes that define constructors. (Feature added in 0.2.7) * [bugfix] `this.__inst' in traits now correctly references the object mixed into; previously, this was `undefined'. I apologize for the (extreme) delay in this release: the process was stalled for many months while waiting for certain legal documents after my employer was purchased by another company. Release notes for past releases are available at: https://www.gnu.org/software/easejs/release-notes.html More information, including an online manual, can be found on GNU's website: https://gnu.org/software/easejs Getting GNU ease.js ------------------- Here are the compressed sources and a GPG detached signature[*]: https://ftp.gnu.org/gnu/easejs/easejs-0.2.9.tar.gz https://ftp.gnu.org/gnu/easejs/easejs-0.2.9.tar.gz.sig Alternative download options are available at: http://www.gnu.org/software/easejs/download.html [*] Use a .sig file to verify that the corresponding file (without the .sig suffix) is intact. First, be sure to download both the .sig file and the corresponding tarball. Then, run a command like this: gpg --verify easejs-0.2.9.tar.gz.sig If that command fails because you don't have the required public key, then run this command to import it: gpg --keyserver keys.gnupg.net --recv-keys D6E9B930028A6C38F43B2388FEF635745E6F6D05 and rerun the 'gpg --verify' command. Free Your JavaScript! --------------------- http://www.gnu.org/software/easejs/whyfreejs.html Explore why online freedoms are of practical importance with my LibrePlanet 2016 talk: https://media.libreplanet.org/u/libreplanet/collection/restore-online-freedom/ -- Mike Gerwitz Free Software Hacker+Activist | GNU Maintainer & Volunteer GPG: D6E9 B930 028A 6C38 F43B 2388 FEF6 3574 5E6F 6D05 https://mikegerwitz.com
signature.asc
Description: PGP signature
-- If you have a working or partly working program that you'd like to offer to the GNU project as a GNU package, see https://www.gnu.org/help/evaluation.html.