[PROPOSAL] include nqp-rx PIR files in Parrot core distribution
allison at parrot.org
Tue Nov 3 03:06:00 UTC 2009
I have concerns either way.
A) Include generated PIR files in Parrot repository:
- It is nice to have regular expressions easily accessible without
installing a module.
- Shipping generated files when we don't have a copy of the original
source is risky. Parrot might need to fix a small bug, and the external
NQP module may have changed radically, preventing us from merging it in
until a deprecation point. Then we have to track the version of NQP
that's in Parrot, and track any patches we've made to it, and
potentially reapply those patches every time we merge NQP into Parrot.
(I have a module in core Perl, it's bad enough when the whole source of
the module is included in the distro repository.)
- Shipping generated code with difficult access to the original source
(find a particular version of the repository for another project) isn't
entirely in line with the open source philosophy. (Not a technical
B) Use NQP as a purely external module:
- Some tests using Parrot's Test::More 'like' would have to be changed
(the 'make coretest' target was already modified this way).
- Plumage would have a more complex installation process, needing both
Parrot and NQP installed before it can run. (The point of Plumage is to
simplify module installation, and this works against that purpose.)
- Language modules would need to depend on both Parrot and NQP.
The solution for the B.2 and B.3 problems seems to be shipping the
NQP-rx tarball with a 'make install' target (and packaging it, as
Patrick mentioned). I don't have a solution for the A.2 problem.
More information about the parrot-dev