docs icon indicating copy to clipboard operation
docs copied to clipboard

Improve conan install with RREV usage

Open uilianries opened this issue 3 years ago • 1 comments

The revision feature is the safest way reproduce and use a very same package from machine to machine. So far, we have it documented here: https://docs.conan.io/en/latest/versioning/revisions.html#how-it-works

However, if I want to use it associated to conan install command (https://docs.conan.io/en/latest/reference/commands/consumer/install.html) it's not clear how to execute together, the main option now is using lockfiles.

For instance:

conan install jsoncpp/1.9.5@#536d080aa154e5853332339bf576747c:b5855232fa6dee7d27d2005b789408c1c12da382 -r conancenter

We know this is invalid, but we don't have a reference for valid cases.

I suggest updating conan install section with a new section explaining revisions support.

uilianries avatar Feb 18 '22 08:02 uilianries

yes, I think we need a better reference for reference (sic!) probably extracted from https://docs.conan.io/en/latest/versioning/revisions.html with some additions. I would make some clear distinctions between RREF and PREF formats (recipe reference and package reference), and specify in each command (include install) which formats they can operate on, e.g. we can list something like:

  • RREF1A name/version@username/channel
  • RREF2A name/version@
  • RREF1B name/version@username/channel#rrev
  • RREF2B name/version@#rrev
  • PREF1C name/version@username/channel#rrev:pkgid
  • PREF2C name/version@#rrev:pkgid
  • PREF1D name/version@username/channel#rrev:pkgid#prev
  • PREF2D name/version@#rrev:pkgid#prev

and then conan install can specify it accepts RREF1A/RREF2A/RREF1B/RREF2B only, with a link.

SSE4 avatar Feb 18 '22 09:02 SSE4