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

docs: Add installation of nightly wheels instructions #3080

Merged

Conversation

matthewfeickert
Copy link
Member

  • Add installation instructions for the awkward-cpp and awkward nightly wheels to the contributing / developer documentation under the releases section.

Example of why the multiple steps are needed (until PR #3007 is merged):

  • Trying to install everything in a single command results in download from PyPI
$ docker run --rm -ti python:3.12 /bin/bash
root@114e4c8010d2:/# python -m venv venv && . venv/bin/activate
(venv) root@114e4c8010d2:/# python -m pip --quiet install --upgrade pip wheel
(venv) root@114e4c8010d2:/# python -m pip install --index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple --extra-index-url https://pypi.org/simple awkward
Looking in indexes: https://pypi.anaconda.org/scientific-python-nightly-wheels/simple, https://pypi.org/simple
Collecting awkward
  Downloading awkward-2.6.3-py3-none-any.whl.metadata (7.0 kB)
Collecting awkward-cpp==32 (from awkward)
  Downloading awkward_cpp-32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.2 kB)
Collecting fsspec>=2022.11.0 (from awkward)
  Downloading fsspec-2024.3.1-py3-none-any.whl.metadata (6.8 kB)
Collecting numpy>=1.18.0 (from awkward)
  Downloading numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (61 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.0/61.0 kB 1.2 MB/s eta 0:00:00
Collecting packaging (from awkward)
  Downloading packaging-24.0-py3-none-any.whl.metadata (3.2 kB)
Downloading awkward-2.6.3-py3-none-any.whl (787 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 787.9/787.9 kB 8.0 MB/s eta 0:00:00
Downloading awkward_cpp-32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (707 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 707.2/707.2 kB 57.6 MB/s eta 0:00:00
Downloading fsspec-2024.3.1-py3-none-any.whl (171 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 172.0/172.0 kB 22.8 MB/s eta 0:00:00
Downloading numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.0/18.0 MB 53.4 MB/s eta 0:00:00
Downloading packaging-24.0-py3-none-any.whl (53 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.5/53.5 kB 12.2 MB/s eta 0:00:00
Installing collected packages: packaging, numpy, fsspec, awkward-cpp, awkward
Successfully installed awkward-2.6.3 awkward-cpp-32 fsspec-2024.3.1 numpy-1.26.4 packaging-24.0
(venv) root@114e4c8010d2:/#
  • Getting dependencies first allows for installing from the nightly index
$ docker run --rm -ti python:3.12 /bin/bash
root@3ff6f2d3abac:/# python -m venv venv && . venv/bin/activate
(venv) root@3ff6f2d3abac:/# python -m pip --quiet install --upgrade pip wheel
(venv) root@3ff6f2d3abac:/# python -m pip --quiet install awkward
(venv) root@3ff6f2d3abac:/# python -m pip uninstall --yes awkward awkward-cpp
Found existing installation: awkward 2.6.3
Uninstalling awkward-2.6.3:
  Successfully uninstalled awkward-2.6.3
Found existing installation: awkward-cpp 32
Uninstalling awkward-cpp-32:
  Successfully uninstalled awkward-cpp-32
(venv) root@3ff6f2d3abac:/# python -m pip install --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple awkward
Looking in indexes: https://pypi.org/simple, https://pypi.anaconda.org/scientific-python-nightly-wheels/simple
Collecting awkward
  Downloading https://pypi.anaconda.org/scientific-python-nightly-wheels/simple/awkward/2.6.3/awkward-2.6.3-py3-none-any.whl (788 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 788.1/788.1 kB 3.9 MB/s eta 0:00:00
Collecting awkward-cpp==32 (from awkward)
  Downloading https://pypi.anaconda.org/scientific-python-nightly-wheels/simple/awkward-cpp/32/awkward_cpp-32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (707 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 707.2/707.2 kB 28.9 MB/s eta 0:00:00
Requirement already satisfied: fsspec>=2022.11.0 in /venv/lib/python3.12/site-packages (from awkward) (2024.3.1)
Requirement already satisfied: numpy>=1.18.0 in /venv/lib/python3.12/site-packages (from awkward) (1.26.4)
Requirement already satisfied: packaging in /venv/lib/python3.12/site-packages (from awkward) (24.0)
Installing collected packages: awkward-cpp, awkward
Successfully installed awkward-2.6.3 awkward-cpp-32
(venv) root@3ff6f2d3abac:/# 

* Add installation instructions for the awkward-cpp and awkward nightly
  wheels to the contributing / developer documentation under the releases
  section.
@matthewfeickert matthewfeickert added the docs Improvements or additions to documentation label Apr 11, 2024
@matthewfeickert matthewfeickert self-assigned this Apr 11, 2024
Copy link
Member

@jpivarski jpivarski left a comment

Choose a reason for hiding this comment

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

Thanks! These instructions are helpful, and this is the right part of CONTRIBUTING to put them in.

If you have no other updates, I'll merge this PR.

@matthewfeickert
Copy link
Member Author

If you have no other updates, I'll merge this PR.

Thanks for the fast review, @jpivarski! I think these are the minimal amount of instruction, and the goal is to not get super into the weeds on this, so I don't have any further additions to make. 👍

@jpivarski jpivarski enabled auto-merge (squash) April 11, 2024 19:24
@matthewfeickert
Copy link
Member Author

@jpivarski All the code related CI is in the "Expected -- Waiting for status to be reported" stage, but it doesn't look like they were ever triggered. I'm not sure if this is because I only touched docs related files or if this is something else, but the auto-merge won't fire until all required tests are passed.

@jpivarski
Copy link
Member

That's right—we should probably remove that thing that keeps tests from running if only the documentation has changed, since GitHub's branch protection requirements can't be specified on the same level of granularity.

@jpivarski jpivarski disabled auto-merge April 11, 2024 20:15
@jpivarski jpivarski merged commit a5063f2 into scikit-hep:main Apr 11, 2024
18 checks passed
@matthewfeickert matthewfeickert deleted the docs/add-nightly-wheels-notes branch April 12, 2024 00:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants