Skip to content

Commit 3080dd9

Browse files
committed
Puppet build (see pyramid::app) needs a requirements.txt, so generate it
1 parent 13b2a4e commit 3080dd9

File tree

5 files changed

+338
-0
lines changed

5 files changed

+338
-0
lines changed

README.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,36 @@ make run # uses pserve
5151

5252
- Login at http://localhost:9090 with [email protected] / test
5353

54+
55+
# Manage dependencies
56+
57+
We use `uv` to manage dependencies
58+
59+
## Regenerate requirements files based on new dependencies
60+
61+
./requirements/compile.sh
62+
63+
## Upgrade dependencies to latest version
64+
65+
Specific dependency:
66+
67+
./requirements/compile.sh -P Pillow
68+
69+
All dependencies:
70+
71+
./requirements/compile.sh -U
72+
73+
## Upgrade local environment
74+
75+
uv pip install -r requirements.txt -r test_requirements.txt
76+
77+
## Sync local environment with CI/Production
78+
79+
This will remove packages that have been manually installed locally
80+
81+
uv pip sync requirements.txt test_requirements.txt
82+
83+
5484
## Miscellaneous
5585
### Javascript dependencies
5686
The project uses [Tom Select](https://github.com/orchidjs/tom-select) for some forms.

makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ ensure_uv: in_virtual_env
2828
# use latest uv
2929
uv pip install --upgrade uv
3030

31+
compile:
32+
@./requirements/compile.sh
33+
3134
run: in_virtual_env
3235
pserve --reload development.ini
3336

requirements.txt

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
# This file was autogenerated by uv via the following command:
2+
# uv pip compile setup.cfg - -o requirements.txt --no-emit-package setuptools
3+
-e .
4+
alembic==1.13.1
5+
# via privatim
6+
apache-libcloud==3.8.0
7+
# via sqlalchemy-file
8+
babel==2.15.0
9+
# via privatim
10+
bcrypt==4.1.3
11+
# via privatim
12+
beaker==1.13.0
13+
# via pyramid-beaker
14+
certifi==2024.2.2
15+
# via
16+
# requests
17+
# sentry-sdk
18+
chameleon==4.5.4
19+
# via pyramid-chameleon
20+
charset-normalizer==3.3.2
21+
# via requests
22+
dnspython==2.6.1
23+
# via email-validator
24+
email-validator==2.1.1
25+
# via privatim
26+
fanstatic==1.4
27+
# via privatim
28+
greenlet==3.0.3
29+
# via sqlalchemy
30+
hupper==1.12.1
31+
# via pyramid
32+
idna==3.7
33+
# via
34+
# email-validator
35+
# requests
36+
mako==1.3.3
37+
# via
38+
# alembic
39+
# pyramid-mako
40+
markdown==3.6
41+
# via privatim
42+
markupsafe==2.1.5
43+
# via
44+
# mako
45+
# privatim
46+
# wtforms
47+
nh3==0.2.17
48+
# via privatim
49+
packaging==24.0
50+
# via zope-sqlalchemy
51+
pastedeploy==3.1.0
52+
# via plaster-pastedeploy
53+
plaster==1.1.2
54+
# via
55+
# plaster-pastedeploy
56+
# pyramid
57+
plaster-pastedeploy==1.0.1
58+
# via
59+
# privatim
60+
# pyramid
61+
psycopg2==2.9.9
62+
# via privatim
63+
pygments==2.18.0
64+
# via pyramid-debugtoolbar
65+
pyramid==2.0.2
66+
# via
67+
# privatim
68+
# pyramid-beaker
69+
# pyramid-chameleon
70+
# pyramid-debugtoolbar
71+
# pyramid-layout
72+
# pyramid-mako
73+
# pyramid-retry
74+
# pyramid-tm
75+
pyramid-beaker==0.9
76+
# via privatim
77+
pyramid-chameleon==0.3
78+
# via privatim
79+
pyramid-debugtoolbar==4.12.1
80+
# via privatim
81+
pyramid-layout==1.0
82+
# via privatim
83+
pyramid-mako==1.1.0
84+
# via pyramid-debugtoolbar
85+
pyramid-retry==2.1.1
86+
# via privatim
87+
pyramid-tm==2.5
88+
# via privatim
89+
pytz==2024.1
90+
# via sedate
91+
requests==2.31.0
92+
# via apache-libcloud
93+
sedate==1.0.3.post1
94+
# via privatim
95+
sentry-sdk==2.1.1
96+
# via privatim
97+
sqlalchemy==2.0.30
98+
# via
99+
# alembic
100+
# privatim
101+
# sqlalchemy-file
102+
# zope-sqlalchemy
103+
sqlalchemy-file==0.6.0
104+
# via privatim
105+
transaction==4.0
106+
# via
107+
# privatim
108+
# pyramid-tm
109+
# zope-sqlalchemy
110+
translationstring==1.4
111+
# via pyramid
112+
typing-extensions==4.11.0
113+
# via
114+
# alembic
115+
# privatim
116+
# sqlalchemy
117+
urllib3==2.2.1
118+
# via
119+
# requests
120+
# sentry-sdk
121+
venusian==3.1.0
122+
# via pyramid
123+
waitress==3.0.0
124+
# via privatim
125+
webob==1.8.7
126+
# via
127+
# fanstatic
128+
# privatim
129+
# pyramid
130+
wtforms==3.1.2
131+
# via privatim
132+
zope-deprecation==5.0
133+
# via
134+
# privatim
135+
# pyramid
136+
zope-event==5.0
137+
# via
138+
# privatim
139+
# zope-schema
140+
zope-interface==6.3
141+
# via
142+
# privatim
143+
# pyramid
144+
# pyramid-retry
145+
# transaction
146+
# zope-schema
147+
# zope-sqlalchemy
148+
zope-schema==7.0.1
149+
# via privatim
150+
zope-sqlalchemy==3.1
151+
# via privatim
152+
153+
# The following packages were excluded from the output:
154+
# setuptools

requirements/compile.sh

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
# change to scripts directory
5+
cd $(dirname "$0")
6+
# change to base directory
7+
cd ..
8+
9+
# make sure virtual env is active
10+
if [ -z "${VIRTUAL_ENV:-}" ]; then
11+
source env/bin/activate
12+
fi
13+
14+
echo "Building requirements.txt"
15+
echo "-e ." | uv pip compile setup.cfg - \
16+
-o requirements.txt \
17+
--no-emit-package setuptools \
18+
"$@"
19+
20+
echo "Building tests_requirements.txt"
21+
uv pip compile setup.cfg \
22+
--extra testing \
23+
--extra typing \
24+
-o tests_requirements.txt \
25+
-c requirements.txt \
26+
"$@"

tests_requirements.txt

Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
# This file was autogenerated by uv via the following command:
2+
# uv pip compile setup.cfg --extra testing --extra typing -o tests_requirements.txt -c requirements.txt
3+
alembic==1.13.1
4+
apache-libcloud==3.8.0
5+
# via sqlalchemy-file
6+
babel==2.15.0
7+
bcrypt==4.1.3
8+
beaker==1.13.0
9+
# via pyramid-beaker
10+
certifi==2024.2.2
11+
# via
12+
# requests
13+
# sentry-sdk
14+
chameleon==4.5.4
15+
# via pyramid-chameleon
16+
charset-normalizer==3.3.2
17+
# via requests
18+
dnspython==2.6.1
19+
# via email-validator
20+
email-validator==2.1.1
21+
fanstatic==1.4
22+
greenlet==3.0.3
23+
# via sqlalchemy
24+
hupper==1.12.1
25+
# via pyramid
26+
idna==3.7
27+
# via
28+
# email-validator
29+
# requests
30+
mako==1.3.3
31+
# via
32+
# alembic
33+
# pyramid-mako
34+
markdown==3.6
35+
markupsafe==2.1.5
36+
# via
37+
# mako
38+
# wtforms
39+
nh3==0.2.17
40+
packaging==24.0
41+
# via zope-sqlalchemy
42+
pastedeploy==3.1.0
43+
# via plaster-pastedeploy
44+
plaster==1.1.2
45+
# via
46+
# plaster-pastedeploy
47+
# pyramid
48+
plaster-pastedeploy==1.0.1
49+
# via pyramid
50+
psycopg2==2.9.9
51+
pygments==2.18.0
52+
# via pyramid-debugtoolbar
53+
pyramid==2.0.2
54+
# via
55+
# pyramid-beaker
56+
# pyramid-chameleon
57+
# pyramid-debugtoolbar
58+
# pyramid-layout
59+
# pyramid-mako
60+
# pyramid-retry
61+
# pyramid-tm
62+
pyramid-beaker==0.9
63+
pyramid-chameleon==0.3
64+
pyramid-debugtoolbar==4.12.1
65+
pyramid-layout==1.0
66+
pyramid-mako==1.1.0
67+
# via pyramid-debugtoolbar
68+
pyramid-retry==2.1.1
69+
pyramid-tm==2.5
70+
pytz==2024.1
71+
# via sedate
72+
requests==2.31.0
73+
# via apache-libcloud
74+
sedate==1.0.3.post1
75+
sentry-sdk==2.1.1
76+
setuptools==69.5.1
77+
# via
78+
# fanstatic
79+
# pyramid
80+
# zope-deprecation
81+
# zope-event
82+
# zope-interface
83+
# zope-schema
84+
# zope-sqlalchemy
85+
sqlalchemy==2.0.30
86+
# via
87+
# alembic
88+
# sqlalchemy-file
89+
# zope-sqlalchemy
90+
sqlalchemy-file==0.6.0
91+
transaction==4.0
92+
# via
93+
# pyramid-tm
94+
# zope-sqlalchemy
95+
translationstring==1.4
96+
# via pyramid
97+
typing-extensions==4.11.0
98+
# via
99+
# alembic
100+
# sqlalchemy
101+
urllib3==2.2.1
102+
# via
103+
# requests
104+
# sentry-sdk
105+
venusian==3.1.0
106+
# via pyramid
107+
waitress==3.0.0
108+
webob==1.8.7
109+
# via
110+
# fanstatic
111+
# pyramid
112+
wtforms==3.1.2
113+
zope-deprecation==5.0
114+
# via pyramid
115+
zope-event==5.0
116+
# via zope-schema
117+
zope-interface==6.3
118+
# via
119+
# pyramid
120+
# pyramid-retry
121+
# transaction
122+
# zope-schema
123+
# zope-sqlalchemy
124+
zope-schema==7.0.1
125+
zope-sqlalchemy==3.1

0 commit comments

Comments
 (0)