Adapt bootstrap / conventions to use `pylock.toml`

Abierto
#54 1 comentario 0 reacciones 2 asignados Ver en GitHub

@rgaudin ya está trabajando en esto.

Desde el 18/7/2025.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

enhancement

In many projects we are building (scrapers, zimfarm, ... all besides libraries like python-scraperlib), we use pinned dependencies versions to ensure reproducible builds.

But now the ecosystem has changed and pylock.toml format has landed (see https://packaging.python.org/en/latest/specifications/pylock-toml/)

This file would allow to specify range of versions in pyproject.toml for all projects, and use the pylock.toml to have reproducible builds.

This would allow to simplify significantly dependency upgrades since one will just have to update the pylock.toml to most recent version matching pyproject.toml ranges. This is currently done manually and is quite a pain.

Currently, hatch does not support this pylock.toml file, see e.g. https://github.com/pypa/hatch/issues/749

We could:

  • wait for hatch to support it, and help if possible
    • downside: not ready
  • consider migrating from hatch to uv
    • downside1 : hatch-openzim plugin will not work anymore ... but could probably easily be adapted for uv +
    • downside2: uv uses its own "proprietary" lock file, which is not really future-proof)

I would clearly prefer to wait for hatch support (and contribute to it as much as possible).

WDYT?

Lenguaje dominante
Python
Estrellas
1
Forks
2
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de openzim/_python-bootstrap

Todos los issues de openzim/_python-bootstrap

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.