$ sudo yum update Loaded plugins: langpacks, presto, refresh-packagekit Resolving Dependencies --> Running transaction check ---> Package nodejs-form-data.noarch 0:0.0.10-1.fc18 will be updated --> Processing Dependency: npm(form-data) < 0.1 for package: nodejs-request-2.25.0-1.fc18.noarch ---> Package nodejs-form-data.noarch 0:0.1.0-1.fc18 will be an update ---> Package nodejs-hawk.noarch 0:0.15.0-1.fc18 will be updated --> Processing Dependency: npm(hawk) < 0.16 for package: nodejs-request-2.25.0-1.fc18.noarch ---> Package nodejs-hawk.noarch 0:1.0.0-1.fc18 will be an update --> Finished Dependency Resolution Error: Package: nodejs-request-2.25.0-1.fc18.noarch (@updates) Requires: npm(form-data) < 0.1 Removing: nodejs-form-data-0.0.10-1.fc18.noarch (@updates) npm(form-data) = 0.0.10 Updated By: nodejs-form-data-0.1.0-1.fc18.noarch (updates) npm(form-data) = 0.1.0 Error: Package: nodejs-request-2.25.0-1.fc18.noarch (@updates) Requires: npm(hawk) < 0.16 Removing: nodejs-hawk-0.15.0-1.fc18.noarch (@updates) npm(hawk) = 0.15.0 Updated By: nodejs-hawk-1.0.0-1.fc18.noarch (updates) npm(hawk) = 1.0.0 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
nodejs-request-2.25.0-3.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/nodejs-request-2.25.0-3.fc18
Package nodejs-request-2.25.0-3.fc18: * should fix your issue, * was pushed to the Fedora 18 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing nodejs-request-2.25.0-3.fc18' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2013-15010/nodejs-request-2.25.0-3.fc18 then log in and leave karma (feedback).
This failed for me. $ sudo yum update -y --enablerepo=updates-testing nodejs-request Loaded plugins: langpacks, presto, refresh-packagekit Resolving Dependencies --> Running transaction check ---> Package nodejs-request.noarch 0:2.25.0-1.fc18 will be updated ---> Package nodejs-request.noarch 0:2.25.0-3.fc18 will be an update --> Processing Dependency: npm(hawk) >= 1.0 for package: nodejs-request-2.25.0-3.fc18.noarch --> Running transaction check ---> Package nodejs-hawk.noarch 0:0.15.0-1.fc18 will be updated ---> Package nodejs-hawk.noarch 0:1.0.0-1.fc18 will be an update --> Finished Dependency Resolution Dependencies Resolved =================================================================================================================================================================================================================== Package Arch Version Repository Size =================================================================================================================================================================================================================== Updating: nodejs-request noarch 2.25.0-3.fc18 updates-testing 27 k Updating for dependencies: nodejs-hawk noarch 1.0.0-1.fc18 updates 105 k Transaction Summary =================================================================================================================================================================================================================== Upgrade 1 Package (+1 Dependent package) Total download size: 132 k Downloading Packages: Setting up and reading Presto delta metadata (1/2): nodejs-request-2.25.0-3.fc18.noarch.rpm | 27 kB 00:00:00 (2/2): nodejs-hawk-1.0.0-1.fc18.noarch.rpm | 105 kB 00:00:00 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 432 kB/s | 132 kB 00:00 Running Transaction Check Running Transaction Test Transaction Test Succeeded Running Transaction Updating : nodejs-hawk-1.0.0-1.fc18.noarch 1/4 Error unpacking rpm package nodejs-hawk-1.0.0-1.fc18.noarch error: unpacking of archive failed on file /usr/lib/node_modules/hawk/node_modules/boom: cpio: rename Updating : nodejs-request-2.25.0-3.fc18.noarch 2/4 Error unpacking rpm package nodejs-request-2.25.0-3.fc18.noarch error: nodejs-hawk-1.0.0-1.fc18.noarch: install failed error: unpacking of archive failed on file /usr/lib/node_modules/request/node_modules/aws-sign: cpio: rename Verifying : nodejs-request-2.25.0-3.fc18.noarch 1/4 nodejs-hawk-0.15.0-1.fc18.noarch was supposed to be removed but is not! Verifying : nodejs-hawk-0.15.0-1.fc18.noarch 2/4 Verifying : nodejs-hawk-1.0.0-1.fc18.noarch 3/4 nodejs-request-2.25.0-1.fc18.noarch was supposed to be removed but is not! Verifying : nodejs-request-2.25.0-1.fc18.noarch 4/4 Failed: nodejs-hawk.noarch 0:0.15.0-1.fc18 nodejs-hawk.noarch 0:1.0.0-1.fc18 nodejs-request.noarch 0:2.25.0-1.fc18 nodejs-request.noarch 0:2.25.0-3.fc18 Complete!
Hmmm, did you try and install hawk from npm to work around the original error? If you install something from npm over something installed by rpm, rpm gets confused when it tries to go update it and it results in errors like these. To fix it, just `sudo rm -rf /usr/lib/node_modules/hawk/node_modules` and then `sudo yum --enablerepo=updates-testing update nodejs-hawk nodejs-request` again.
Thanks, this now works. I had to use your suggestion for both hawk and request. It is possible that npm was used to update parts of the system. I used npm to install bower <http://bower.io/> as it is not available in the Fedora repository. It is possible that an install/update to bower pulled in hawk or request. Or perhaps I did an update to npm itself which pulled those in. I am not sure. Regardless, Thanks!
nodejs-request-2.25.0-3.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.
(In reply to T.C. Hollingsworth from comment #4) > Hmmm, did you try and install hawk from npm to work around the original > error? If you install something from npm over something installed by rpm, > rpm gets confused when it tries to go update it and it results in errors > like these. > > To fix it, just `sudo rm -rf /usr/lib/node_modules/hawk/node_modules` and > then `sudo yum --enablerepo=updates-testing update nodejs-hawk > nodejs-request` again. So, if you have installed npm and nodejs-* packages by using yum, you must not execute "sudo npm -g update" (or must do that workaround every time executing yum update)? That doesn't sound very rational to me.
Well, using two different package managers to update the same code isn't very rational, either. ;-) If I were to update npm, and isaacs releases a new version between the time I push an update and it hits the Fedora repos, you could end up upgrading npm with `npm -g update` and then downgrading it when you `yum update`! This issue isn't specific to nodejs, either. If you ran a straight `pip update` all kinds of Python stuff will blow up too. I'm going to figure out a way to paper over the `yum update` failure eventually, but that won't do anything about the little issues that can crop up by having two package managers fighting over updating the same chunk of code. Really, if you want to use npm to update npm, just install it with npm instead of yum: curl https://npmjs.org/install.sh | sh It's fully supported by us to just use our "nodejs" package and have your modules completely managed by npm. Alternatively, if you want `npm [install|update] -g` to work with a different directory and leave the yum installed modules alone, do something like: npm -g config set prefix /usr/local I thought long and hard about doing something like the latter by default, but that would break the install a binary node module and `npm link` it so you don't have to compile it trick, which is really the biggest benefit of having node modules in the distro IMHO. I hate being forced to have compilers installed on servers. :-( Otherwise, you'll just have to `npm update` modules individually. It would be nice if `npm -g update` had an exclusion mechanism. Then it would be pretty easy to configure it to ignore yum-installed modules. But, unfortunately it doesn't.
That's a great informative guide. I'll go with https://npmjs.org/install.sh instead of yum. Thank you.