tarantool / tarantool/tarantool-python

Pack RPM/DEB for obsolete distros

Abierto
#257 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

backlog question
Lenguaje dominante
Python
Estrellas
108
Forks
51
Merge medio
1 d 8 h
PR fusionados (30 d)
1

Descripción

Follows up #248

In PR #248 we had introduced RPM and DEB packages for distros which have Python 3.7 or newer in its package managers by default. Extending package testing and publish matrices is a complicated task. Why is that?

First, the code works with Python 3.6 or newer, so if system doesn't have it one (including our CI) must set it up manually. Second, running code with Python 3.6 requires dataclasses backport package. And here we come to the packages issue.

It seems rather useless to provide a package for a distro if distribution repositories (or some external popular repos like EPEL) don't have its dependencies. And the case is they mostly don't.

RPM with dataclasses backport is available for EPEL 8 only. It is not so hard to rebuild (see https://github.com/tarantool/tarantool-python/wiki/Building-RPMs draft), but we will need to provide and maintain external packages in Tarantool repo. I also haven't seen any DEBs for dataclasses.

dataclasses is not the only one troublesome package. For example, CentOS 7 (including EPEL 7) does not provide any pandas RPM for Python 3. Rebuilding pandas RPM from EPEL 8 on EPEL 7 is rather challenging task. We also shouldn't forget that pandas has many dependencies and it is possible that we would need to rebuild them to.

Distros planed in this ticket:

  • centos:7
  • debian:9
  • ubuntu:18.04 (and possibly 16.04)

centos:8 is EOL so we don't plan to provide a package for it.

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.

Línea de trabajo

Revisa PR #248 y las matrices de pruebas y publicación de paquetes; después, consulta el borrador de la wiki enlazado sobre la compilación de RPMs. Comprueba la disponibilidad de dependencias para CentOS 7, Debian 9 y Ubuntu 18.04 (posiblemente 16.04), incluidos los requisitos de Python 3.6. Se considera terminado cuando los paquetes RPM/DEB compatibles se compilan, prueban y publican para las distribuciones obsoletas seleccionadas con sus dependencias disponibles.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
build-system, release
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.