On 03/10/2016 06:32 AM, Stephen Gallagher wrote:
> On Mar 10, 2016, at 4:43 AM, Tom Hughes <tom(a)compton.nu> wrote:
>
>> On 08/03/16 21:32, Stephen Gallagher wrote:
>>
>> I put together a COPR that all of the Node.js SIG member have access to at
>>
https://copr.fedorainfracloud.org/coprs/g/nodejs-sig/nodejs-latest/
>>
>> Right now it has packages that should install on F23, F24 and Rawhide/F25 and
>> will replace the npm package.
>
> So two immediate observations after installing it in an F23 VM:
>
> - It happily installs without forcing a libuv update and then doesn't
> work with missing uv_ symbols, so a better libuv require is needed
>
Ok, that was an oversight.
I can't explain why, but it apparently worked fine in my testing with libuv
1.7.5, but I updated libuv and set the minimum to 1.8.0 anyway.
> - The npm doesn't work at all because all the bundled modules are in
> the node_modules.bundled directory and node_modules is empty - moving
> them fixes it
Hmm, that's odd; it's supposed to contain symlinks to the bundled libraries.
That's because the old NPM package had unbundled lobs symlinked in there and RPM
can't replace a symlink with a directory. I'll look into it this morning.
Aaand I forgot that in my testing I made this an "echo" statement instead of
real symlinks. Oddly enough, `npm install <foo>` was working for me locally. I
have no idea how...
I've just pushed a new update to the repository that also includes Node.js 5.8.0
(released yesterday). Of course, since the minor version jumped, binary packages
may need a rebuild.
If we're going to look into supporting the rapidly-updating 5.x branch in F25, I
wonder if we should modify the automatic dependency-generation to do:
Requires: nodejs(abi) >= %{abi_major}.%{abi_minor}
Conflicts: nodejs(abi) >= %{abi_major+1}
Of course, I have no idea how this automatic dependency is created, so I don't
know how complicated it will be to fix. But I think we have to, since 5.x seems
to bump minor versions at least once every couple months. Assuming it's properly
following semantic versioning, the rebuild shouldn't actually be needed unless
we bump the major version.