----- Original Message ----- > From: "Vojtech Szocs" <vsz...@redhat.com> > To: "devel" <devel@ovirt.org> > Sent: Wednesday, November 9, 2016 8:49:39 PM > Subject: [ovirt-devel] Moving oVirt JavaScript application stack forward > (short and long term) > > Hello, > > regarding oVirt JavaScript applications (like Dashboard), we'd like > to reach a point where we'll be using latest Node.js LTS runtime and > lock down all dependency versions, resulting in reproducible builds. > > Please note that both Node.js and all JS dependencies are needed only > when building oVirt JavaScript applications & corresponding packages. > > The near future items are following: > > 1, patch ovirt-engine-{nodejs,nodejs-modules} to use Node.js v6 (LTS), > refer to https://github.com/nodejs/LTS for more details
Posted patch https://gerrit.ovirt.org/#/c/66471/ > > 2, patch ovirt-engine-nodejs-modules to use Node.js runtime provided > by ovirt-engine-nodejs - revive https://gerrit.ovirt.org/#/c/59898/ > > 3, lock down dependency versions in ovirt-engine-nodejs-modules > via npm-shrinkwrap - finalize https://gerrit.ovirt.org/#/c/61957/ > > From this point, we can proceed with long term items: > > 4, consolidate dependencies across projects: > > 4a, update react-patternfly: > - https://github.com/jtomasek/react-patternfly/ > - add common PatternFly components (e.g. out of Dashboard) > > 4b, update ovirt-ui-components: > - https://github.com/matobet/ovirt-ui-components/ > - depend on react-patternfly > - add oVirt specific components (e.g. out of Dashboard) > > 4c, update ovirt-engine-nodejs-modules: > - depend on ovirt-ui-components > > 4d, update all oVirt JS projects, like Dashboard > - depend on ovirt-ui-components > > *all* oVirt JS projects should depend on ovirt-ui-components. > > react-patternfly exists separately to support non-oVirt cases. > > 5, develop "showcase" webapp as part of react-patternfly repo to > ensure it's well-aligned with PatternFly look'n'feel > > - it would be nice to host the "showcase" webapp somewhere > > 6, address common problems that arise from using npm-shrinkwrap > > - deterministic (predictable) dependency resolution > - checksum verification to ensure integrity of dependencies > - dependency de-duplication (avoid multiple versions) > > Yarn [1][2] addresses all problems mentioned above. It's still > in early development, so I'd wait a bit and see how it matures. > > Note: ManageIQ UI is already using Yarn [3]. > > [1] https://code.facebook.com/posts/1840075619545360 > [2] https://github.com/yarnpkg/yarn > [3] https://github.com/ManageIQ/manageiq-ui-service/pull/296/files > > Feel free to share your thoughts or concerns. > > Regards, > Vojtech > _______________________________________________ > Devel mailing list > Devel@ovirt.org > http://lists.ovirt.org/mailman/listinfo/devel > _______________________________________________ Devel mailing list Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel