getting-things-gnome / gtg

Getting Things GNOME! trunk
https://wiki.gnome.org/Apps/GTG
GNU General Public License v3.0
552 stars 166 forks source link

Migrate to pipenv (or similar tool) #250

Open liberforce opened 4 years ago

liberforce commented 4 years ago

Right now, pip is used, but it has some drawback. Pip doesn't freeze the exact version of packages used, nor checksum.

Pipenv, while not perfect, allows one to have reproducible installs, which is priceless when you want to understand what has changed and why your tests started failing. This helps reproducing bugs with an exact setup.

The pros:

The cons are:

diegogangl commented 3 years ago

@leio Is this ticket still relevant now that we are on Meson?

nekohayo commented 6 months ago

New efforts going on related to #399 :

picsel2 commented 6 months ago

I've never really used it but it looks like something that uses the pyproject.toml standard(s) is "the cool kid" now. The one modern package manager that I know is poetry.

There is the package meson-python which should be able to connect the python ecosystem with meson.

johannesjh commented 6 months ago

Hi there, I thought I could share my related experience, specifically in the context of building favagtk, which also uses python, meson and flatpak for building and packaging a GTK app. About 1-2 years ago, I found myself in a similar situation: I also needed to somehow integrate flatpak (because that's how most gnome apps are distributed) with meson build (because that's what most gnome apps are built with) with python package management tools such as poetry or pipenv (because I wanted frozen dependencies).

I hope this is of interest for you... and I am interested to see what will be used for GTG.