1

I use conda by building a conda environment and then exporting a yaml file that describes the environment so I can reproduce it. Here is a portion of that yaml file:

  - parquet-cpp=1.5.1=2
  - parse=1.19.0=pyh44b312d_0
  - parse_type=0.6.0=pyhd8ed1ab_1
  - parso=0.8.3=pyhd8ed1ab_0
  - pathspec=0.9.0=pyhd8ed1ab_0
  - pexpect=4.8.0=pyh9f0ad1d_2
  - pickleshare=0.7.5=py_1003
  - pip=22.0.4=pyhd8ed1ab_0

I'm intrigued to know what the thing at the end of each of those packages means. i.e. What do

  • pyhd8ed1ab_0
  • py_1003
  • pyh9f0ad1d_2
  • pyh44b312d_0
  • 2

refer to?

jamiet
  • 10,501
  • 14
  • 80
  • 159

1 Answers1

2

It's the build varient number. Because of CI/CD there are often changes that are so incremental they don't warrant a new version number. However, were you have an issue you could change the build without substantially changing anything major like dependencies.

enter image description here

As you might guess from the above, they're generated by conda and were first implemented in conda 3.0

hrokr
  • 3,276
  • 3
  • 21
  • 39
  • Actually, it is very common to use builds to adjust dependencies. In fact, variants of a package compiled against different dependencies (e.g., specific BLAS implementations) are only distinguished by their build strings. – merv May 20 '22 at 17:39