Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Include extra dependency groups 'systemd' and 'cache_memory' in debian packages #12640

Merged
merged 4 commits into from
May 5, 2022
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion debian/build_virtualenv
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,12 @@ python3 -m venv "$TEMP_VENV"
source "$TEMP_VENV/bin/activate"
pip install -U pip
pip install poetry==1.2.0b1
poetry export --extras all --extras test -o exported_requirements.txt
poetry export \
--extras all \
--extras test \
--extras systemd \
--extras cache_memory \
Copy link
Member

@richvdh richvdh May 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't help but wonder if this is the right fix, or if we should go back to having all include, well, all the extras. (Or, most of them.)

(this used to be included via this code and this code).

Copy link
Member Author

@anoadragon453 anoadragon453 May 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is a good point. As it stands, the docker images also don't look to include pympler:

RUN /root/.local/bin/poetry export --extras all -o /synapse/requirements.txt

Copy link
Member Author

@anoadragon453 anoadragon453 May 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm assuming that dependencies for an experimental config option (cache.track_memory_usage) are in fact something that we'd like to include in Debian and Docker images, as they would allow people using those distribution methods to actually test the option.

In that case, including them in all sounds sensible.

I'm not sure if this was clear during the poetry switch, as they seem to have been purposely omitted during the switch:

synapse/pyproject.toml

Lines 236 to 239 in cc76560

# omitted:
# - cache_memory: this is an experimental option
# - test: it's useful to have this separate from dev deps in the olddeps job
# - systemd: this is a system-based requirement

Copy link
Member Author

@anoadragon453 anoadragon453 May 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to push this PR through and get 1.58.1 out as that's preventing some .deb installations from starting, if that sounds sensible? Then we can look at clearing up this situation, and allowing testing of the experimental config option on docker.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sgtm

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't help but wonder if this is the right fix, or if we should go back to having all include, well, all the extras. (Or, most of them.)

(this used to be included via this code and this code).

By my reading, the first link explicitly excludes systemd from all. I can't remember why I didn't include pympler; maybe just an oversight.

-o exported_requirements.txt
deactivate
rm -rf "$TEMP_VENV"

Expand Down
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
matrix-synapse-py3 (1.58.0+nmu1) UNRELEASED; urgency=medium

* Re-include python dependencies from the `systemd` and `cache_memory` extras package groups.
anoadragon453 marked this conversation as resolved.
Show resolved Hide resolved

-- Synapse Packaging team <packages@matrix.org> Thu, 05 May 2022 12:26:36 +0100

matrix-synapse-py3 (1.58.0) stable; urgency=medium

* New Synapse release 1.58.0.
Expand Down