0.14.10, Web and jQuery

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

0.14.10, Web and jQuery

Herby Vojčík
Hi!

There is 0.14.10 out. The number skipped up to 10, because this brings a
bit more infrastructural changes. Some packages were renamed, some
split, some fused.

The one change which is probably of most interest is the change with
what once was amber_core/Web (and even more in the past amber_core/Canvas).

The Web package contains HTMLCanvas and friends to implement
seaside-like API for page content creation. As part of it, #asJQuery was
added to handful of classes to wrap jQuery. It also contained
BrowserInterface, the class that provided implementation for
PlatformInterface in browser context (we still lack such an
implementation for node.js context :-( ).

In 0.14.10, those things are split and moved. The jQuery wrapper in now
in package 'amber-contrib-jquery/Wrappers-JQuery'. BrowserInterface and
two generic methods for use in browser context were moved to
'amber_core/Platform-Browser'. The rest, that is, the Seaside-like
framework for in-page content generation, is now in package
'amber-contrib-web/Web' (both the moved Web and Platform-Browser depend
on Wrappers-JQuery). You are free not to use 'amber-contrib-web/Web' if
you don't want it there - you still have the jQuery wrapping via
Wrappers-JQuery, if you use #asJQuery in a package, include
'amber-contrib-jquery/Wrappers-JQuery' in that package imports.

These shifts and renames needed changes in amber-dev supporting npm
library as well as in helios, so they both promoted to 0.4.0. If you
have troubles migrating, see the wiki page for that.

BTW, amber-contrib-xxx may have their own libraries later, but for the
moment they reside in <amber_dir>/contrib. So note for users of
Gruntfile.js - you should add 'bower_components/amber/contrib/src' to
library_dirs array (now it only contains 'src'). Also, if you do not use
'Web', remove it from libraries array in amberc targets and put
'Wrappers-JQuery' instead.

Herby

--
You received this message because you are subscribed to the Google Groups "amber-lang" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: 0.14.10, Web and jQuery

sebastianconcept
I really like this release because is another step into good modularization of the project.

The only thing that wasn't trivial to upgrade my apps and libraries was the gruntfile.js adjust that required this:
library_dirs: ['src', 'bower_components/amber/contrib/src']
and the use of code like `jQuery xxx` into:  `JQuery current xxx`

For upgrading ongoing projects in 0.14.4 to 0.14.10 I'm copying here for convenience the notes  you can found it in:
https://github.com/amber-smalltalk/amber/wiki/Migration-from-0.14.4-to-0.14.10

0.14.10 brought some restructuralization. As result of this, some work is needed to upgrade.

Get new cli with:

npm install -g amber-cli

Upgrade project with:

bower install "amber#^0.14.10" --save
bower install "helios#^0.4.0" --save-dev
bower install "amber-attic#^0.1.5" --save-dev
npm install "amber-dev@^0.4.0" --save-dev

You project's Gruntfile.js must change

library_dirs: ['src'],

into

library_dirs: ['src', 'bower_components/amber/contrib/src'],

Package 'Web' is not included automatically in 0.14.10. If you want it included unconditionally (it is not needed if it is included as dependency of the existing code, for example you have Widget subclasses in your projects), add 'amber-contrib-web/Web' into your deploy.js.

If you only used #asJQuery fuctionality of the Web package, you do not need to do anything - that functionality is now part of 'Wrappers-JQuery` package, which is included automatically.

As last thing, commit all packages of the project in IDE, so it saves with correct new names of moved packages.



On Wednesday, February 18, 2015 at 9:53:11 AM UTC-2, Herby wrote:
Hi!

There is 0.14.10 out. The number skipped up to 10, because this brings a
bit more infrastructural changes. Some packages were renamed, some
split, some fused.

The one change which is probably of most interest is the change with
what once was amber_core/Web (and even more in the past amber_core/Canvas).

The Web package contains HTMLCanvas and friends to implement
seaside-like API for page content creation. As part of it, #asJQuery was
added to handful of classes to wrap jQuery. It also contained
BrowserInterface, the class that provided implementation for
PlatformInterface in browser context (we still lack such an
implementation for node.js context :-( ).

In 0.14.10, those things are split and moved. The jQuery wrapper in now
in package 'amber-contrib-jquery/Wrappers-JQuery'. BrowserInterface and
two generic methods for use in browser context were moved to
'amber_core/Platform-Browser'. The rest, that is, the Seaside-like
framework for in-page content generation, is now in package
'amber-contrib-web/Web' (both the moved Web and Platform-Browser depend
on Wrappers-JQuery). You are free not to use 'amber-contrib-web/Web' if
you don't want it there - you still have the jQuery wrapping via
Wrappers-JQuery, if you use #asJQuery in a package, include
'amber-contrib-jquery/Wrappers-JQuery' in that package imports.

These shifts and renames needed changes in amber-dev supporting npm
library as well as in helios, so they both promoted to 0.4.0. If you
have troubles migrating, see the wiki page for that.

BTW, amber-contrib-xxx may have their own libraries later, but for the
moment they reside in <amber_dir>/contrib. So note for users of
Gruntfile.js - you should add 'bower_components/amber/contrib/src' to
library_dirs array (now it only contains 'src'). Also, if you do not use
'Web', remove it from libraries array in amberc targets and put
'Wrappers-JQuery' instead.

Herby

--
You received this message because you are subscribed to the Google Groups "amber-lang" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.