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

Reply via email to