meta-pytorch / meta-pytorch/data

Tracker for DevInfra Improvement

Open
#253 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Better Engineering
Dominant language
Python
Stars
1.3k
Forks
179
Avg merge
6d 1h
Merged PRs (30d)
2

Description

🚀 The feature

This issue is used to track TODOs in my mind for DevInfra:

CI
  • Compare released git_version with the commit on the top of branch
  • Auto doc gen for RC release
  • Add conda upload
  • Make official release working on tag
  • Add bash script to help build release for both wheel and conda in case changing CI/CD system
  • Turn on nightly release
  • Turn on nightly doc (currently used main branch )
  • Make sure previous nightly releases are removed from conda
  • Add retry for both wheel and conda upload (Will be covered by DevInfra's Nova project)
  • Add retry for conda nightly to wait until new PyTorch nightly uploaded (Will be covered by DevInfra's Nova project)
  • Make RC release daily on release branch (Safer than manual) (Will be covered by DevInfra's Nova project)
  • Change torch from test channel not from nightly for CI tests on release branch
  • Add GPU enabled runners (maybe via linux.8xlarge.nvidia.gpu) for CI
  • Add M1 enabled runners for releases
    • Change to use default conda from the runner rather than downloading.
  • Modify the logic here to determine PyTorch version per platform. (Will be covered by DevInfra's Nova project)
  • Update conda package to use corresponding pytorch nightly version in here
  • Update lint workflow to determine to use nightly pytorch or RC pytorch
  • Add a mechanism to automatically disable a few tests.
  • Add python3.11 support
  • Remove python 3.7 support https://github.com/pytorch/data/issues/971
  • Replace python setup.py bdist_wheel by pip wheel -w dist .
  • #1088
  • Enforce hiding symbols from OpenSSL https://github.com/pytorch/data/issues/972
  • Add platform-agnostic releases: https://github.com/pytorch/data/issues/973
Release note:
  • Update release note scripts to support gdoc rather than quip
  • Add contributors' names to the release notes via git shortlog -s v0.6.0..v0.5.1 | cut -f2-
Others

After compilation matrix is enabled:

  • Turn on matrix when s3 is landed
  • Add artifacts upload and download. The wheels can be sent to a single job and uploaded at one time. (https://github.com/actions/upload-artifact, https://github.com/actions/download-artifact)
  • Make build workflow as the dependent job for test/doc_gen using needs
  • Add cache
  • Trigger conda/wheel nightly at different time. (Will be covered by DevInfra's Nova project)
    • Conda release requires pytorch nightly being uploaded to conda nightly successfully, which is always impossible for a certain platforms like windows. See https://anaconda.org/pytorch-nightly/torchvision/files.
    • We need to wait for torchdata conda nightly until pytorch nightly releases are uploaded to conda successfully. However, for downstream libraries, they need wheel nightly ASAP for CI testing. Then, we have to trigger these two releases separately.
  • Append license from third_party to the license file for sdist_wheel or wheel
  • Revamp: Support auto-generation of workflows (Will be covered by DevInfra's Nova project)
Motivation, pitch

Improvement for releng

Alternatives

No response

Additional context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

This is a broad tracker rather than a single actionable change. Start by choosing one unchecked CI or release item, then inspect packaging/pkg_helpers.bash where referenced and the relevant GitHub Actions configuration; run the affected workflow or release checks. Done requires completing one clearly scoped checklist item and updating its status.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, github-actions, python
Domain
build-system, ci-cd, devops, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.