You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 77 Next »

rubin-env conda metapackage

Most of the Science Pipelines third-party dependencies are obtained from conda-forge via the rubin-env metapackage.  This applies to both C++ and Python libraries.  Packages included in rubin-env are intended to be the minimal set that is necessary and appropriate for use in all environments, including production, development, and the Rubin Science Platform.  Each of those environments can add additional packages as needed for its users.

Packages linked to from C++ are pinned to ensure binary compatibility, usually via the conda_build_config file.  This is usually at the major version level assuming semantic versioning is used.  Some packages pin at the minor or exact version level due to their versioning practices.

The following packages have unusual version constraints due to recognized incompatibilities or other reasons.  Rows in light blue are present for Rubin development standardization reasons.  Rows highlighted in light green seem eligible for removal in future releases of the metapackage.  Jira issues blocking constraint removal are listed where known.  Constraints that eliminate only particular versions that were incompatible but do not constrain future versions (!=) as well as minimum constraints imposed by the package's use in LSST code (>=) are not listed.

Historic information for old pins may be found in previous versions of this page.

PackageConstraintReasonLast Checked
flake8= 4.0Define a syntax standard; avoid "blind-siding" caused by new rulesN/A
sysroot_linux-64= 2.17Obtain CentOS 7-compatible libraries; enables CLOCK_TAI
boost= 1.74

Recommendation is to pin only at even versions less than or equal to what is in the global pinnings

2021-03-04
coverage>=3.6,!=6.3,<7Coverage 6.3.0 is breaking for us and others with multi-process testing, but later patches appear to be OK.  coverage 7 breaks with + characters in pathnames; a limited fix is in 7.0.1, but it may still have other problems.2022-12-22
lmfit<1.0.3

Unknown change in 1.0.3 broke ip_diffim dipole fitting.  DM-32406 - Getting issue details... STATUS

2021-10-29
parsl=1.2Parsl seems to be releasing on a weekly cadence now with no guarantees of compatibility from one to the next, so we have to do an = pin at what we've tested.2023-02-01
python= 3.10Officially supported versionN/A
sqlalchemy< 2

Still using APIs that will go away in 2.0.  DM-30178 - Getting issue details... STATUS and DM-31589 - Getting issue details... STATUS

2021-09-10

Third-party packages in eups

There are two kinds of third-party packages distributed via eups: tarball-and-patch (TaP) packages and source code packages based on forks with lsst-dev  branches.  We have eliminated all of the TaP packages, replacing them with conda-forge packages.

These packages are under active development by Rubin developers, so we distribute them as forked source code packages:

  • fgcm
  • kht 
  • proxmin 
  • scarlet 
  • scarlet_extensions
  • spectractor 

rubin-env-rsp

This package includes all dependencies that can be installed by conda/mamba from conda-forge for the Rubin Science Platform containers.

PackageConstraintReasonLast Checked
ginga>=3,<4

astrowidgets incompatibility.  DM-37456 - Getting issue details... STATUS

2023-01-06
jupyterlab>=3,<4Protect against potential future incompatibility.

rubin-env-developer

This package includes all dependencies that can be installed by conda/mamba from conda-forge for developer installations such as the "shared stack" at the USDF.

"Extras" packages

Additional packages beyond those needed by batch production jobs are added to a conda-forge metapackage output called rubin-env-extras.  This metapackage is not intended to be installed anywhere, but it ensures that there are compatible packages available when subsets are installed in other contexts: Rubin Science Platform container images, the "shared stack" developer installation, and the rubin-sim conda environment.  The packages below have constraints in rubin-env-extras due to lack of ARM builds.

PackageSourceConstraintCommentLast Checked
astrowidgetssciplat-labnot aarch64
2022-05-18
ciso8601sciplat-labnot aarch64
2022-05-18
jupyter-dashsciplat-labnot aarch64
2022-05-18
pdbppdevelopernot aarch64fancycompleter2022-11-09
rubin-simsimsnot aarch64 and not osx-arm64openorb, palpy2022-05-18
  • No labels