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

Bump tmp dependency to tmp-0.0.31. #14

Merged
merged 1 commit into from
Jan 2, 2017

Conversation

binki
Copy link
Contributor

@binki binki commented Jan 2, 2017

Unfortunately, as discussed at raszi/node-tmp#75 ,
the tmp dependency only has an 0.x release. This means this library
has to manually bump and release for every upstream release to get
fixes and improvements.

Unfortunately, as discussed at raszi/node-tmp#75 ,
the tmp dependency only has an 0.x release. This means this library
has to manually bump and release for every upstream release to get
fixes and improvements.
@benjamingr
Copy link
Owner

The tmp dependency isn't careted so it will install the latest version on every install (at least on npm).

That said, still a good idea to have this merged, thanks.

@benjamingr benjamingr merged commit ecfcd64 into benjamingr:master Jan 2, 2017
@binki
Copy link
Contributor Author

binki commented Jan 2, 2017

Well, it wasn’t careted, but it also wasn’t a range either. I’m pretty sure uncareted means it requires the exact version, dsiallowing later ones. Installing tmp-promisify was causing npm to install tmp-0.0.28 as its dependency instead of tmp-0.0.31 for me before this change. To permit npm to use later versions, would need to use a dependency expression like ">=0.0.28 <1" e.g. to permit anything but the MAJOR version to change. Maybe some other version dependency operator would do that more concisely, not sure.

However, until tmp releases a 1.x it’s probably safer to just go with depending on exact versions because, with how the docs describe 0.0.x versions, they’re “allowed” to make breaking changes for every release.

@benjamingr
Copy link
Owner

uncareted typically means "install the last patch version given the careted major and minor"

@binki
Copy link
Contributor Author

binki commented Jan 2, 2017

Ah, I figured you mean “without a caret” which I understand as meaning “without ^ (caret)” which causes npm to install the exact version:

ohnobinki@gibby ~ $ mkdir proj
ohnobinki@gibby ~ $ cd proj
ohnobinki@gibby ~/proj $ echo '{"dependencies": {"tmp-promise": "1.0.0"}}' > package.json
ohnobinki@gibby ~/proj $ npm install
/home/ohnobinki/proj
└─┬ tmp-promise@1.0.0
  ├── bluebird@3.4.7
  └─┬ tmp@0.0.28
    └── os-tmpdir@1.0.2

npm WARN proj No description
npm WARN proj No repository field.
npm WARN proj No license field.
ohnobinki@gibby ~/proj $ grep -e version node_modules/tmp-promise/package.json
        "type": "version"
    "type": "version"
  "version": "1.0.0"

Careted (with ^ (caret)) in my current understanding:

ohnobinki@gibby ~ $ mkdir proj
ohnobinki@gibby ~ $ cd proj
ohnobinki@gibby ~/proj $ echo '{"dependencies": {"tmp-promise": "^1.0.0"}}' > package.json
ohnobinki@gibby ~/proj $ npm install
/home/ohnobinki/proj
└─┬ tmp-promise@1.0.2
  ├── bluebird@3.4.7
  └─┬ tmp@0.0.28
    └── os-tmpdir@1.0.2

npm WARN proj No description
npm WARN proj No repository field.
npm WARN proj No license field.
ohnobinki@gibby ~/proj $ grep -e version node_modules/tmp-promise/package.json
  "version": "1.0.2"

Can you point me to some examples of people using “uncareted” with the definition you’re using or clarify? I’d like to avoid misunderstanding people regarding this topic in the future. Thanks!

Oh, maybe perhaps you’re referring to how people sometimes call > and < carets?

@binki binki deleted the bump-tmp0_0_31 branch January 2, 2017 15:46
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.

None yet

2 participants