Skip to content

Modern packaging and deterministic CI #96

Description

@waddell

Objective

Establish a modern packaging and deterministic CI baseline for UrbanAccess before recovering the larger feature set in PR #94.

Tracked under #95. PR #94 remains the source and provenance reference for the broader recovery effort.

Scope

  • Establish and document the supported Python versions and a known-working dependency envelope.
  • Remove Python 2 classifiers, declarations, and compatibility expectations.
  • Add a package-build check.
  • Test the installed package rather than only the source checkout.
  • Separate deterministic required tests from tests that depend on external network services.
  • Add dependency caching where it improves CI runtime without weakening reproducibility.

Acceptance criteria

  • CI runs on the supported Python-version matrix.
  • The source distribution and wheel build successfully.
  • The built artifact installs into a clean environment and passes an import or smoke test.
  • Deterministic tests run as required checks without relying on live external services.
  • Network-dependent tests are separately marked and documented.
  • Package metadata no longer claims Python 2 support.
  • The PR documents the tested dependency envelope and any remaining failures.
  • Contributor provenance from compat for new pandas #94 is preserved or credited wherever work is recovered from it.

Pull request guidance

Open a focused PR against main. Reference #95 and #94 in the PR body without using a closing keyword; these issues cover work beyond this component.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions