[aerogear-dev] AeroGear.js without jQuery Discussion

Lucas Holmquist lholmqui at redhat.com
Mon Mar 24 19:46:00 EDT 2014


On Mar 24, 2014, at 5:09 PM, Miiguel Lemos <miguel21op at gmail.com> wrote:

> Meanwhile: there are several possibilities to build a customized (smaller) jQuery library.
> For instance:
> 
> http://projects.jga.me/jquery-builder/

yup,  and since we don't package jQuery with our JS libs,  you could use that to build a smaller build

> 
> Enviado do meu iPad
> 
> No dia 24/03/2014, às 17:11, Lucas Holmquist <lholmqui at redhat.com> escreveu:
> 
>> 
>> On Mar 24, 2014, at 12:11 PM, Sebastien Blanc <scm.blanc at gmail.com> wrote:
>> 
>>> That's why I mentioned When.js  for an eventual 2.0 fallback lib 
>>> "When.js is a rock solid, battle-tested Promises/A+ and when() implementation, including a complete ES6 Promise shim"
>> 
>> if we do it right,  a user could use any promise lib that is to spec
>> 
>>> 
>>> 
>>> On Mon, Mar 24, 2014 at 5:07 PM, Lucas Holmquist <lholmqui at redhat.com> wrote:
>>> 
>>> On Mar 24, 2014, at 12:01 PM, Lucas Holmquist <lholmqui at redhat.com> wrote:
>>> 
>>>> 
>>>> On Mar 24, 2014, at 11:55 AM, Sebastien Blanc <scm.blanc at gmail.com> wrote:
>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> On Mon, Mar 24, 2014 at 4:26 PM, Matthias Wessendorf <matzew at apache.org> wrote:
>>>>> 
>>>>> 
>>>>> 
>>>>> On Mon, Mar 24, 2014 at 4:14 PM, Sebastien Blanc <scm.blanc at gmail.com> wrote:
>>>>> 
>>>>> 
>>>>> 
>>>>> On Mon, Mar 24, 2014 at 4:05 PM, Lucas Holmquist <lholmqui at redhat.com> wrote:
>>>>> 
>>>>> On Mar 24, 2014, at 10:10 AM, tolis emmanouilidis <tolisemm at gmail.com> wrote:
>>>>> 
>>>>>> 2014-03-24 15:39 GMT+02:00 Matthias Wessendorf <matzew at apache.org>:
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On Mon, Mar 24, 2014 at 2:03 PM, Lucas Holmquist <lholmqui at redhat.com> wrote:
>>>>>>> I agree that it would be nice to implement AGJS-70 (Investigate removing jQuery requirement). Meanwhile, there is an open source project on GitHub that claims to offer a custom builder for jQuery in order to include only the modules needed [1] [2]. I haven't tried it yet but maybe we could create a custom jQuery build which includes only the parts currently needed in AeroGear. This would mean a smaller size of the jQuery dependency. 
>>>>>> 
>>>>>> The AG lib depends on a few parts of jQuery, the biggest being jQuery.Ajax and the promise implementation.
>>>>>> 
>>>>>> i know we can make custom builds of jQuery pretty easily( building from source ),  but i don't really want to bundle it within our lib.
>>>>>> 
>>>>>> and i don't think with bower we can do this easily. although they did just add a post install hook, so perhaps that could be something to look at.
>>>>>> 
>>>>>> Datamanager only uses the promise implementation of jQuery( and some random thing for the filter method,  which could probably be updated ).   
>>>>>> 
>>>>>>  
>>>>>> Promises are starting to become available natively in browsers and jQuery doesn't use the Promise/A+ spec,  so it could be harder to fallback without a shim of some kind
>>>>>> 
>>>>>> Good to know. Thanks for providing this info.
>>>>>>  
>>>>>> 
>>>>>> sounds reasonable to 'wait' on the promise side of things, and use that bit in the datamanager
>>>>>> 
>>>>>> +1
>>>>> 
>>>>> there are other promise implementations that we could use, that are to spec,  such as Q and RSVP,  here is the link to the HTML5 rocks article  
>>>>> http://www.html5rocks.com/en/tutorials/es6/promises/
>>>>> 
>>>>> These last days I have been playing with the library When provided by Cujo, it's maybe also worth looking https://github.com/cujojs/when
>>>>> 
>>>>> not sure I see value in using a different library as a temporary thing. Once the API is part of the browser platform, the need for [yet another js lib] goes away.
>>>>> I know but I'm more concerned about  "Once the API is part of the browser platform" When will that happen and does it match with our roadmap ? Was also to offer a polyfill for older browser if we want to keep supporting them.
>>>>> 
>>>> i will have to update the roadmap.
>>>> 
>>>> 2.0 would be a nice time to "fully" switch,  but we can start experimenting now and maybe for 1.5 can have some implemenation for data manager only.
>>>> 
>>>> Current Chrome has Promise's enable by default and it looks like FireFox 29( next version ) will too.  Safari and IE are in dev i believe
>>>> 
>>>> for fallback we can still make use of jQuery i think because of this method here  "Promise.cast",  
>>> 
>>> please strike this comment from the record,  i'm an idiot :)
>>> 
>>>> although the closest lib to the spec is RSVP( maybe this could be the 2.0 fallback if we remove jQuery from the whole lib )
>>>> 
>>>> 
>>>> 
>>>>> 
>>>>>  
>>>>>  
>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> while i don't really want to reinvent the wheel in terms of Ajax,  it might be interesting to take a look.
>>>>>> 
>>>>>> Yeah, IMO worth to look there, for reducing dependencies
>>>>>> 
>>>>>> -M
>>>>>> 
>>>>>>  
>>>>>> 
>>>>>>  
>>>>>>  I think in a previous ML thread about what 2.0 looked like,  that Pipeline would maybe just be a JSON only thing, with exception for multipart
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> @Lucas Thanks for making things clear
>>>>>>  
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> aerogear-dev mailing list
>>>>>> aerogear-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> -- 
>>>>>> Matthias Wessendorf 
>>>>>> 
>>>>>> blog: http://matthiaswessendorf.wordpress.com/
>>>>>> sessions: http://www.slideshare.net/mwessendorf
>>>>>> twitter: http://twitter.com/mwessendorf
>>>>>> 
>>>>>> _______________________________________________
>>>>>> aerogear-dev mailing list
>>>>>> aerogear-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>>> 
>>>>>> _______________________________________________
>>>>>> aerogear-dev mailing list
>>>>>> aerogear-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> aerogear-dev mailing list
>>>>> aerogear-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> aerogear-dev mailing list
>>>>> aerogear-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> Matthias Wessendorf 
>>>>> 
>>>>> blog: http://matthiaswessendorf.wordpress.com/
>>>>> sessions: http://www.slideshare.net/mwessendorf
>>>>> twitter: http://twitter.com/mwessendorf
>>>>> 
>>>>> _______________________________________________
>>>>> aerogear-dev mailing list
>>>>> aerogear-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>> 
>>>>> _______________________________________________
>>>>> aerogear-dev mailing list
>>>>> aerogear-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>> 
>>>> _______________________________________________
>>>> aerogear-dev mailing list
>>>> aerogear-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>> 
>>> 
>>> _______________________________________________
>>> aerogear-dev mailing list
>>> aerogear-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>> 
>>> _______________________________________________
>>> aerogear-dev mailing list
>>> aerogear-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>> 
>> _______________________________________________
>> aerogear-dev mailing list
>> aerogear-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/aerogear-dev/attachments/20140324/43db995d/attachment-0001.html 


More information about the aerogear-dev mailing list