Re: [Freeipa-devel] Less.js for RCUE adoption

2013-10-09 Thread Dmitri Pal
On 10/09/2013 07:36 AM, Petr Vobornik wrote:
 Hi list,

 I've started to work on RCUE adoption [1][2][3][4][5].

 RCUE uses Less CSS [6] so that means that technology for #3875 ([Web
 UI] Use CSS preprocessor (LESS/SASS/Stylus))[6] is pretty much chosen.

 Topic of this mail is to choose Less CSS implementation we will use
 during build.

 First some info. The main implementation of Less CSS is written in
 JavaScript as a Node.js module. There are also official builds for
 Rhino. Rhino versions are working up to version 1.3.3, they are broken
 since version 1.4. There is some upstream effort to make it work
 again. Implementations in different languages exist as well, but they
 may not implement every feature.

 Fedora has a Node.js package (nodejs-less[8]) and Python
 implementation (python-lesscpy[9]). Debian should contain these two as
 well. Problems might come with other targeted distributions.

 I tried to run less-rhino-1.3.3.js[10] in Rhino and python-lesscpy,
 both on RCUE reference implementation. Both tools seems to produce
 functionally equivalent CSS (checked by visual inspection of diff).

 For Fedora:
 - if we want to use the latest and greatest we should use Node.js
 package. Since Node.js reputation is not good I expect that this won't
 be the chosen solution.
 - if we want to avoid Node.js we can bundle less-rhino-1.3.3.js[10] or
 we can use python-lesscpy. python-lesscpy works better with Fedora
 packaging philosophy.

 For others:
 - bundle less-rhino if official package is not present

 Therefore:
 - bundling of less-rhino is universal solution
 - python-lesscpy might be better solution for Fedora

Why it is better?
Because we do not bundle code but rather rely on the external package?
This always makes sense especially for the security project like us.
So if Debian has python-lesscpy package I would use it. Otherwise we
would have to use less-rhino.


 Switching between implementations is easy so it's more political
 decision. I don't have strong option on any. Creating custom patch for
 each platform is a possibility as well.

 Last thing: we could also build and push final CSS during development.
 I expect we don't want to that (will be against Fedora packaging policy).

 [1] https://uxd-rcue.rhcloud.com/
 [2] https://github.com/rhamilto/rcue
 [3] https://fedorahosted.org/freeipa/ticket/3902
 [4] https://fedorahosted.org/freeipa/ticket/3903
 [5] https://fedorahosted.org/freeipa/ticket/3904
 [6] http://lesscss.org/
 [7] https://fedorahosted.org/freeipa/ticket/3875
 [8] http://koji.fedoraproject.org/koji/packageinfo?packageID=15909
 [9] http://koji.fedoraproject.org/koji/packageinfo?packageID=16857
 [10] https://github.com/less/less.js/blob/master/dist/less-rhino-1.3.3.js


-- 
Thank you,
Dmitri Pal

Sr. Engineering Manager for IdM portfolio
Red Hat Inc.


---
Looking to carve out IT costs?
www.redhat.com/carveoutcosts/



___
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel


Re: [Freeipa-devel] Less.js for RCUE adoption

2013-10-09 Thread Petr Viktorin

On 10/09/2013 01:36 PM, Petr Vobornik wrote:

Hi list,

I've started to work on RCUE adoption [1][2][3][4][5].

RCUE uses Less CSS [6] so that means that technology for #3875 ([Web UI]
Use CSS preprocessor (LESS/SASS/Stylus))[6] is pretty much chosen.

Topic of this mail is to choose Less CSS implementation we will use
during build.

First some info. The main implementation of Less CSS is written in
JavaScript as a Node.js module. There are also official builds for
Rhino. Rhino versions are working up to version 1.3.3, they are broken
since version 1.4. There is some upstream effort to make it work again.
Implementations in different languages exist as well, but they may not
implement every feature.

Fedora has a Node.js package (nodejs-less[8]) and Python implementation
(python-lesscpy[9]). Debian should contain these two as well. Problems
might come with other targeted distributions.

I tried to run less-rhino-1.3.3.js[10] in Rhino and python-lesscpy, both
on RCUE reference implementation. Both tools seems to produce
functionally equivalent CSS (checked by visual inspection of diff).

For Fedora:
- if we want to use the latest and greatest we should use Node.js
package. Since Node.js reputation is not good I expect that this won't
be the chosen solution.
- if we want to avoid Node.js we can bundle less-rhino-1.3.3.js[10] or
we can use python-lesscpy. python-lesscpy works better with Fedora
packaging philosophy.


+1 for python-lesscpy, for this reason.


For others:
- bundle less-rhino if official package is not present


This is really up to the other distros, but I don't see why another 
Python dependency should be a problem.


I'm CCing Timo Aaltonen; we'll need some non-Fedora people to answer 
these questions.



Therefore:
- bundling of less-rhino is universal solution
- python-lesscpy might be better solution for Fedora


I'd say bundling is a universally bad solution :)


Switching between implementations is easy so it's more political
decision. I don't have strong option on any. Creating custom patch for
each platform is a possibility as well.

Last thing: we could also build and push final CSS during development. I
expect we don't want to that (will be against Fedora packaging policy).


We can include them in tarballs but make sure they're re-built for 
Fedora. I don't think that would be against policy.



[1] https://uxd-rcue.rhcloud.com/
[2] https://github.com/rhamilto/rcue
[3] https://fedorahosted.org/freeipa/ticket/3902
[4] https://fedorahosted.org/freeipa/ticket/3903
[5] https://fedorahosted.org/freeipa/ticket/3904
[6] http://lesscss.org/
[7] https://fedorahosted.org/freeipa/ticket/3875
[8] http://koji.fedoraproject.org/koji/packageinfo?packageID=15909
[9] http://koji.fedoraproject.org/koji/packageinfo?packageID=16857
[10] https://github.com/less/less.js/blob/master/dist/less-rhino-1.3.3.js



--
PetrĀ³

___
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel


Re: [Freeipa-devel] Less.js for RCUE adoption

2013-10-09 Thread Timo Aaltonen
On 09.10.2013 17:04, Petr Viktorin wrote:
 On 10/09/2013 01:36 PM, Petr Vobornik wrote:
 Hi list,

 I've started to work on RCUE adoption [1][2][3][4][5].

 RCUE uses Less CSS [6] so that means that technology for #3875 ([Web UI]
 Use CSS preprocessor (LESS/SASS/Stylus))[6] is pretty much chosen.

 Topic of this mail is to choose Less CSS implementation we will use
 during build.

 First some info. The main implementation of Less CSS is written in
 JavaScript as a Node.js module. There are also official builds for
 Rhino. Rhino versions are working up to version 1.3.3, they are broken
 since version 1.4. There is some upstream effort to make it work again.
 Implementations in different languages exist as well, but they may not
 implement every feature.

 Fedora has a Node.js package (nodejs-less[8]) and Python implementation
 (python-lesscpy[9]). Debian should contain these two as well. Problems
 might come with other targeted distributions.

 I tried to run less-rhino-1.3.3.js[10] in Rhino and python-lesscpy, both
 on RCUE reference implementation. Both tools seems to produce
 functionally equivalent CSS (checked by visual inspection of diff).

 For Fedora:
 - if we want to use the latest and greatest we should use Node.js
 package. Since Node.js reputation is not good I expect that this won't
 be the chosen solution.
 - if we want to avoid Node.js we can bundle less-rhino-1.3.3.js[10] or
 we can use python-lesscpy. python-lesscpy works better with Fedora
 packaging philosophy.
 
 +1 for python-lesscpy, for this reason.

 For others:
 - bundle less-rhino if official package is not present
 
 This is really up to the other distros, but I don't see why another
 Python dependency should be a problem.
 
 I'm CCing Timo Aaltonen; we'll need some non-Fedora people to answer
 these questions.

as mentioned, python-lesscpy is in Debian/Ubuntu now, so as long as any
bundled solution can be disabled that's enough for me.


-- 
t

___
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel