News
You can stay informed about new releases and other STJS-related announcements by following us on Google+
- planned
- jQuery 1.7 adapter
- add a command line for the generator to be able to use it without Maven
- import existing Javascript projects in Java (STJS compatible) or at least create the corresponding bridge - (not sure a simple solution exists :) )
- add support for Google Closure compiler (or build a similar tool based on Java obfuscation tools)
- add a plugin/bridge site to let people contribute more easier
- add bridge to HTML5 Javascript API
- add bridge to Javascript API for mobile phones
- 14-Feb-2013 - 1.3.1
- Generator
- add exceptions js basic implementation and fix issue #12
- fixed issue #13 - parentheses around typeof
- fixed issue #10 - use topological order iterator to sort dependencies
- fixed issue #9 - instanceof is handled correctly
- 23-Jan-2013 - 1.3.0
- JQuery/DOM bridge
- added minified version of jquery and jquery ui;
- added the sources of jquery ui (1.8.24)
- issue #6 added originalEvent property to jQuery Event
- Test Helper
- Rewrite completely the test driver. Now it runs remote browsers as well as directly the browser in a regular or headless way.
- the location of the config file can now be set via the stjs.test.config system property
- @Test.expected is now supported (with some limitations)
- issue #8: added handling of @Before and @After in test helper
- added @ScriptsBefore and @ScriptsAfter to include scripts for unit tests and deprecate @Scripts
- fix issue #5 - junit assertEquals for double doesn't take into account deltas
- use the sources STJSBridge parameter in test helper;
- Generator
- Generate static initializers correctly, and make sure that their local variables don't bleed into the global scope - Support running the main method from @GlobalScope classes.
- Global scope fields and methods are now handled correctly.
- Do not attempt to generate abstract methods in JS
- added stjs.trunc() around for integer casts and integer divisions
- Properly name constructors of inner types and anonymous classes. This makes debugging in the browser easier because modern browser will use the constructor.name property as type name for all objects.
- Fixed instantiation of Anonymous types
- Do not allow javascript keywords in namespace declarations.
- stjs.ns() statements were not generated when the annotation was placed on Enums.
- Changed the approach on how to do a proper stjs.extend again. We now use an initializer function instead of two initializer object. The new way is more flexible, and looks cleaner too.
- Discovered a problem when a static field is initialized with the value of another static field in the same class.
- skip package-info.java when processing
- fix namespace declaration with extends
- finished to packaging of jar and war and added maven integration tests for that
- fix bug: empty constructor does not call super constructor
- added the copy-js plugin goal that copies the resources to the war file
- added the possibility to pack files in one big file containing all project's js files (correctly ordered)
- put the note you need at least java 6 in the documentation (as per issue #3)
- no longer generate == for x.equals(y), but leave it as is. Added equals only for basic types: Number, String and Boolean.
- Add the equals(Object) method to all stjs base classes that do not override it. This allows .equals() in Java to be translated to .equals() in JavaScript without causing trouble.
- Rolled by the changes that generates "===" and "!==" as a translation for "==" and "!=". This is not backwards compatible, and causes all sorts of problems due to the fact that "undefined == null" and "undefined !== null" are both true.
- 18-Jul-2012 - 1.2.3
- JQuery/DOM bridge
- Document inherits from Node
- Generator
- Added @Template annotation for future support of custom Java -> Javascript method conversion. Only @Template("none") is supported for the moment that leaves the code as-is for special methods
- fix - throw exception when a dead code is detected - the .class of one or more anonymous inner classes is not found
- fix equals method when using interfaces
- fix maven plugin filter to include .java only
- added static initializer
- added minimal source map support
- Server
- fix: ArrayImpl.concat did not included the elements of this array in the resulting concatenated array
- 18-Jul-2012 - 1.2.2
- Buggy version - please ignore it
- Apr-2012
- Several people joined the project to help us add more functionalities: Nicolas, Ariane, Thomas
- We moved the source control to github: https://github.com/st-js/st-js
- 21-Mar-2012 - 1.2.1
- Test Helper
- fix dependencies order
- more style test console
- added url attribute to @HtmlFixture
- added the possibility to refer stjs libs (war or jar) from the unit tests. keep only absolute or url scripts in tests
- JQuery/DOM bridge
- added offset methods
- added extends methods to GlobalJQuery, fix close stream test driver
- fix jquery.ajax return type
- fix Enum.valueOf, fix Element.offsetParent
- Generator
- throw mojo exception
- check final variables used in inner loops
- fix generic types with parameterized type fields
- check if $maps keys are literals
- General
- added jetty:run for examples
- 15-Jan-2012 - 1.2.0
- improve test helper performance
- improve parseJSON performance
- add Javascript compatibility functions for Strings and Numbers. Array.indexOf (inexistent in IE7 was left out because of potential problems with existing code that iterates on arrays that may break)
- improve Eclipse integration - better error reporting
- add automatically hasOwnProperty for array iterations
- add namespacing - @Namespace annotation
- change return type of jQuery.attr to Object instead of String
- added @SyntheticType annotation (instead of @DataType) and handle annotated types better
- added $js(javascriptCode) to output directly a Javascript code
- fix ClassUtils NPE (thank you özhan)
- improved jQuery API to be able to build jQuery widgets using ST-JS (example coming soon)
- 13-Dec-2011 - 1.1.4
- added verification that parent classes don't contain the same fields/methods
- fix vararg method with null bug
- changed some jQuery callbacks from Runnable to Callback1 (using THIS parameter)
- added "type-safe" JSON parsing
- added Javascript function annotation to mark interfaces that should be treated as Javascript functions
- added Mockjax support, improve test helper
- changed jQuery core interface name to JQueryCore and use JQuery for the jQuery core and the plugins together
- for Javascript compatibility, changed Array iterators to String instead of integer
- for Javascript compatibility, map keys forced to string
- clear BCEL cache in the Maven plugin to correctly handle anonymous classes
- 24-Nov-2011 - 1.1.3
- added Jackson deserializers for map, array and date
- fixed anonymous type resolution
- changed Maven groupId from org.stjs to org.st-js to comply with Maven central repository requirements
- 10-Nov-2011 - 1.1.2
- added GSON serializers/deserializers and Jackson serializers for map, array and date
- moved the array and map initializers for both client and server in the shared artifact
- added Console object
- added DOM events
- 7-Nov-2011 - 1.1.1
- added $prototype, $constructor, $castArray
- forbid usage of Java arrays
- change all callbacks to use the CallbackN classes (removed Runnable, AjaxHandler)
- add sources to maven repository
- 1-Nov-2011 - 1.1.0
- include a test helper
- major refactoring of the type resolution module
- split the Javascript library in 4 parts: base, shared, server and jQuery
- 11-Oct-2011 - 1.0.0 - initial release
- May 2011 - start of the development