Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove npm dependency on Ubuntu Xenial #38

Merged
merged 1 commit into from
Nov 13, 2019
Merged

Conversation

amayita
Copy link
Member

@amayita amayita commented Nov 12, 2019

Connects to #31

Copy link
Contributor

@mamedin mamedin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested successfully on Ubuntu Xenial and Bionic.

Copy link
Contributor

@scollazo scollazo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure about this change. If npm is not needed for atom deployments, it should be also removed in all other envs (Bionic and CentOS) . @jraddaoui could you help us? Is npm needed for atom deployments?

@mamedin
Copy link
Contributor

mamedin commented Nov 12, 2019

@scollazo, On Xenial npm command is included in nodejs package:

root@atom25-1604:~# sudo dpkg -S /usr/bin/npm
nodejs: /usr/bin/npm

But it is different in Bionic:

artefactual@tom25-1804:~$ sudo dpkg -S /usr/bin/npm
npm: /usr/bin/npm

artefactual@tom25-1804:~$ sudo dpkg -L nodejs | grep npm
artefactual@tom25-1804:~$ 

@jraddaoui
Copy link
Member

Hi @scollazo,

Yes, we use it to install LESS in the same file at the bottom and it's also needed for Binder (atom_drmc: "yes").

@jraddaoui
Copy link
Member

Although, I think we could remove nodejs from Bionic.

@amayita
Copy link
Member Author

amayita commented Nov 12, 2019

Although, I think we could remove nodejs from Bionic.

Thanks @jraddaoui , I'm about to test a new deploy on Bionic without nodejs package. I'll get back with my findings.

Copy link
Contributor

@scollazo scollazo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mamedin your explanation makes sense about why are we installing npm on bionic but not on xenial, I didn't knew that.

LGTM!

@amayita
Copy link
Member Author

amayita commented Nov 12, 2019

@jraddaoui nodejs was removed for Bionic because npm depends on it, so it will pull it at install.
This is ready for CR again

@amayita amayita requested review from scollazo and mamedin November 12, 2019 13:20
Copy link
Contributor

@scollazo scollazo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's better to be implicit than explicit, so instead of bringing nodejs as an npm dependecy, I would prefer to leave it listed in the role.

This all comes from my lack of knowledge about how npm was packaged in xenial/bionic, but @mamedin explained it.

@amayita
Copy link
Member Author

amayita commented Nov 12, 2019

It's better to be implicit than explicit, so instead of bringing nodejs as an npm dependecy, I would prefer to leave it listed in the role.

The thing is: it doesn't matter. nmp depends on nodejs. If nmp is installed, nodejs will be installed too. Whether you list it or not ,it will be installed.

The same way you don't list all the dependencies for every package you install, I see no need to list nodejs. But I don't care either way. I'm just trying to clarify my motives (and @jraddaoui 's who originally requested this change).

Please let me know, @scollazo if you agree with me now :)

Copy link
Contributor

@scollazo scollazo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My concerns regarding explicit against implicit comes from following 12factor recomendations .

I personally prefer to have the "main" dependencies listed, instead of relying on them being brought as dependencies of other packages, but other than that, I don't have an strong opinion over doing it one way or the other, I leave it up to you.

As curiosity, CentOS nodejs package also carries npm ( https://github.com/artefactual-labs/ansible-atom/blob/master/tasks/deps-rh.yml#L42 )

@amayita amayita merged commit 190c7b7 into master Nov 13, 2019
@amayita amayita changed the title Remove npm depencency on Ubuntu Xenial Remove npm dependency on Ubuntu Xenial Nov 20, 2019
@hakamine hakamine deleted the dev/fix-xenial-npm branch May 10, 2020 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants