Bug#963761: [Pkg-javascript-devel] Bug#963761: node-node-sass: missing versioned dependency relation?: Sass could not find a binding for your current environment

2020-07-09 Thread merkys
On 2020-07-09 22:29, Jonas Smedegaard wrote:
> Please, Andrius, think twice before repeating the discussion already had 
> about node-iconv and node-expat.
> 
> I urge you to read through that previous thread (if you haven't 
> already), and I recommend that you consider if it is really worth it to 
> look at node-node-sass differently from those other packages.

Pardon my ignorance, I have joined the mailing list only yesterday, so I
have missed the threads on node-iconv [1] and node-expat [2]. Thank you
for pointing me towards them.

> If you find that it is sensible to follow the approach already taken by 
> those other packages, but are uncertain how concretely to implement it, 
> then I can suggest to look at the most recent git commits for the 
> packaging of node-expat: I tried to isolate and minimize the changes 
> made for each commit to hopefully be easy to follow.

I completely agree with taking the same approach for node-node-sass.
However, the current bugreport documents a slightly different situation:
binary package built with older nodejs fails to work with newer nodejs.
I think the following is needed for node-node-sass binary package:

Depends:
nodejs (>= ${NODEJS_VERSION}),
nodejs (<< ${NODEJS_VERSION_NEXT})

where ${NODEJS_VERSION} is the current upstream version of nodejs
package, and ${NODEJS_VERSION_NEXT} is the next major upstream version.
Such relation should signal that rebuilds are needed each time the major
version of nodejs is bumped. Does this make sense?

As for the current bugreport, node-node-sass got rebuilt with nodejs >=
12 in 4.14.1+git20200512.e1fc158+dfsg-1, and no longer breaks
node-grunt-sass autopkgtest in unstable [3], effectively getting out of
the way for the auto-nodejs transition [4].

[1] https://bugs.debian.org/963039
[2] https://bugs.debian.org/963060
[3]
https://ci.debian.net/data/autopkgtest/testing/amd64/n/node-grunt-sass/6204523/log.gz
[4] https://release.debian.org/transitions/html/auto-nodejs.html

Best,
Andrius



signature.asc
Description: OpenPGP digital signature


Bug#963761: [Pkg-javascript-devel] Bug#963761: node-node-sass: missing versioned dependency relation?: Sass could not find a binding for your current environment

2020-07-09 Thread Jonas Smedegaard
Quoting mer...@debian.org (2020-07-09 16:42:32)
> On Fri, 26 Jun 2020 18:27:30 +0200 Paul Gevers  wrote:
> > + grunt sass nodeunit
> > Loading "gruntfile.js" tasks...ERROR
> > >> Error: Missing binding
> >
> /usr/lib/x86_64-linux-gnu/nodejs/node-sass/vendor/linux-x64-72/binding.node
> > >> Node Sass could not find a binding for your current environment:
> > Linux 64-bit with Node.js 12.x
> > >>
> > >> Found bindings for the following environments:
> > >>   - Linux 64-bit with Node.js 10.x
> 
> It seems as if node-node-sass was built with libnode < 72, and is now 
> being executed on machine also having libnode72. While in principle 
> such situations are possible, more than one libnodeX package are very 
> unlikely to be present. It would probably be worth stripping the 
> /linux-x64-72/ part from 
> /usr/lib/x86_64-linux-gnu/nodejs/node-sass/vendor/linux-x64-72/binding.node 
> and disabling the resolving mechanism altogether.

Please, Andrius, think twice before repeating the discussion already had 
about node-iconv and node-expat.

I urge you to read through that previous thread (if you haven't 
already), and I recommend that you consider if it is really worth it to 
look at node-node-sass differently from those other packages.

If you find that it is sensible to follow the approach already taken by 
those other packages, but are uncertain how concretely to implement it, 
then I can suggest to look at the most recent git commits for the 
packaging of node-expat: I tried to isolate and minimize the changes 
made for each commit to hopefully be easy to follow.


 - Jonas

-- 
 * Jonas Smedegaard - idealist & Internet-arkitekt
 * Tlf.: +45 40843136  Website: http://dr.jones.dk/

 [x] quote me freely  [ ] ask before reusing  [ ] keep private

signature.asc
Description: signature