Skip to content

Commit 0bcfbcb

Browse files
qqiao2024kulgan
andauthored
DEV 2863 standardize structure (#292)
* use setup.cfg * add pyproject.toml * move bin/gdc-client -> src/gdc_client/cli.py * fix console_scripts --------- Co-authored-by: Rowland Ogwara <rogwara@uchicago.edu>
1 parent 8d96475 commit 0bcfbcb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+171
-99
lines changed

.gitlab-ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ include:
55
file:
66
- templates/artifacts/python-library.yaml
77

8+
variables:
9+
LANGUAGE_VERSION: python3.8
810

911
tox:
1012
parallel:

bin/package

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@ cd ..
7373
python -m pip install --upgrade pip
7474
python -m pip install --no-deps -r requirements.txt
7575
python -m pip install --no-deps .
76-
python setup.py install
7776

7877
# go back go the ./gdc_client/bin dir
7978
cd bin
@@ -100,7 +99,8 @@ pyinstaller \
10099
--noconfirm \
101100
--onefile \
102101
--copy-metadata gdc-client \
103-
-c gdc-client
102+
--name gdc-client \
103+
-c ../src/gdc_client/cli.py
104104

105105
echo "Testing produced binary..."
106106
./dist/$BINARY_NAME --help

dev-requirements.in

Lines changed: 0 additions & 14 deletions
This file was deleted.

dev-requirements.txt

Lines changed: 46 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
# This file is autogenerated by pip-compile with Python 3.8
33
# by the following command:
44
#
5-
# pip-compile dev-requirements.in
5+
# pip-compile --extra=dev --output-file=dev-requirements.txt
66
#
77
atomicwrites==1.4.1
88
# via pytest
99
attrs==22.1.0
1010
# via pytest
1111
aws-sam-translator==1.11.0
1212
# via
13-
# -r dev-requirements.in
1413
# cfn-lint
14+
# gdc-client (pyproject.toml)
1515
aws-xray-sdk==2.11.0
1616
# via moto
1717
boto==2.49.0
@@ -27,31 +27,26 @@ botocore==1.19.63
2727
# moto
2828
# s3transfer
2929
certifi==2024.7.4
30-
# via
31-
# -c requirements.txt
32-
# requests
30+
# via requests
3331
cffi==1.15.1
34-
# via
35-
# -c requirements.txt
36-
# cryptography
32+
# via cryptography
3733
cfn-lint==0.21.6
3834
# via
39-
# -r dev-requirements.in
35+
# gdc-client (pyproject.toml)
4036
# moto
4137
chardet==3.0.4
42-
# via
43-
# -c requirements.txt
44-
# requests
38+
# via requests
4539
click==8.1.7
4640
# via
47-
# -r dev-requirements.in
4841
# flask
49-
coverage==5.5
42+
# gdc-client (pyproject.toml)
43+
coverage[toml]==7.6.0
5044
# via pytest-cov
5145
cryptography==43.0.0
5246
# via
53-
# -c requirements.txt
47+
# gdc-client (pyproject.toml)
5448
# moto
49+
# pyopenssl
5550
# python-jose
5651
# sshpubkeys
5752
docker==4.4.4
@@ -62,18 +57,19 @@ ecdsa==0.14.1
6257
# python-jose
6358
# sshpubkeys
6459
flask==1.0.4
65-
# via -r dev-requirements.in
60+
# via gdc-client (pyproject.toml)
6661
httmock==1.3.0
67-
# via -r dev-requirements.in
62+
# via gdc-client (pyproject.toml)
6863
idna==2.8
6964
# via
70-
# -c requirements.txt
7165
# moto
7266
# requests
7367
importlib-metadata==7.0.1
7468
# via
75-
# -c requirements.txt
69+
# gdc-client (pyproject.toml)
7670
# pytest
71+
intervaltree==3.0.2
72+
# via gdc-client (pyproject.toml)
7773
itsdangerous==1.1.0
7874
# via flask
7975
jinja2==2.11.3
@@ -92,9 +88,11 @@ jsonpointer==2.3
9288
# via jsonpatch
9389
jsonschema==2.6.0
9490
# via
95-
# -c requirements.txt
9691
# aws-sam-translator
9792
# cfn-lint
93+
# gdc-client (pyproject.toml)
94+
lxml==4.4.3
95+
# via gdc-client (pyproject.toml)
9896
markupsafe==1.1.1
9997
# via
10098
# jinja2
@@ -106,56 +104,65 @@ more-itertools==8.14.0
106104
# moto
107105
# pytest
108106
moto==1.3.16
109-
# via -r dev-requirements.in
107+
# via gdc-client (pyproject.toml)
108+
ndg-httpsclient==0.5.1
109+
# via gdc-client (pyproject.toml)
110110
packaging==20.9
111111
# via pytest
112112
pluggy==0.13.1
113113
# via pytest
114+
progressbar2==4.4.2
115+
# via gdc-client (pyproject.toml)
114116
py==1.11.0
115117
# via pytest
116118
pyasn1==0.4.8
117119
# via
118-
# -c requirements.txt
120+
# gdc-client (pyproject.toml)
121+
# ndg-httpsclient
119122
# python-jose
120123
# rsa
121124
pycparser==2.21
125+
# via cffi
126+
pyopenssl==24.2.1
122127
# via
123-
# -c requirements.txt
124-
# cffi
128+
# gdc-client (pyproject.toml)
129+
# ndg-httpsclient
125130
pyparsing==2.4.7
126131
# via packaging
127132
pytest==4.6.2
128133
# via
129-
# -r dev-requirements.in
134+
# gdc-client (pyproject.toml)
130135
# pytest-cov
131-
pytest-cov==2.7.1
132-
# via -r dev-requirements.in
136+
pytest-cov==5.0.0
137+
# via gdc-client (pyproject.toml)
133138
python-dateutil==2.8.2
134139
# via
135140
# botocore
136141
# moto
137142
python-jose[cryptography]==3.2.0
138143
# via
139-
# -r dev-requirements.in
144+
# gdc-client (pyproject.toml)
140145
# moto
146+
python-utils==3.8.2
147+
# via progressbar2
141148
pytz==2022.7.1
142149
# via moto
143150
pyyaml==5.3.1
144151
# via
145-
# -c requirements.txt
146152
# cfn-lint
153+
# gdc-client (pyproject.toml)
147154
# moto
148155
requests==2.22.0
149156
# via
150-
# -c requirements.txt
151157
# cfn-lint
152158
# docker
159+
# gdc-client (pyproject.toml)
153160
# httmock
154161
# moto
155162
# requests-mock
156163
# responses
157164
requests-mock==1.5.2
158-
# via -r dev-requirements.in
165+
# via gdc-client (pyproject.toml)
159166
responses==0.17.0
160167
# via moto
161168
rsa==4.7.2
@@ -164,7 +171,6 @@ s3transfer==0.3.7
164171
# via boto3
165172
six==1.16.0
166173
# via
167-
# -c requirements.txt
168174
# aws-sam-translator
169175
# cfn-lint
170176
# docker
@@ -177,11 +183,18 @@ six==1.16.0
177183
# requests-mock
178184
# responses
179185
# websocket-client
186+
sortedcontainers==2.4.0
187+
# via intervaltree
180188
sshpubkeys==3.3.1
181189
# via moto
190+
termcolor==1.1.0
191+
# via gdc-client (pyproject.toml)
192+
tomli==2.0.1
193+
# via coverage
194+
typing-extensions==4.12.2
195+
# via python-utils
182196
urllib3==1.25.11
183197
# via
184-
# -c requirements.txt
185198
# botocore
186199
# requests
187200
# responses
@@ -199,7 +212,6 @@ xmltodict==0.13.0
199212
# via moto
200213
zipp==3.17.0
201214
# via
202-
# -c requirements.txt
203215
# importlib-metadata
204216
# moto
205217

pyproject.toml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
[build-system]
2+
requires = ["setuptools>=64", "setuptools_scm>=8"]
3+
build-backend = "setuptools.build_meta"
4+
5+
[project]
6+
name = "gdc-client"
7+
dynamic = [
8+
"version",
9+
"description",
10+
"readme",
11+
"requires-python",
12+
"license",
13+
"authors",
14+
"maintainers",
15+
"keywords",
16+
"classifiers",
17+
"urls",
18+
"scripts",
19+
"gui-scripts",
20+
"entry-points",
21+
"dependencies",
22+
"optional-dependencies"
23+
]
24+
25+
[tool.coverage.html]
26+
title = "gdc-client coverage report"
27+
directory = "docs/htmlcov"
28+
show_contexts = true
29+
30+
[tool.coverage.run]
31+
branch = true
32+
context = "unit tests"
33+
source = ["gdc_client"]
34+
35+
[tool.isort]
36+
extend_skip = [".md", ".json"]
37+
known_first_party = ["gdc_client"]
38+
py_version = 38
39+
skip = [".gitignore", ".dockerignore"]
40+
41+
[tool.setuptools_scm]
42+
local_scheme = "dirty-tag"

requirements.txt

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,46 +12,46 @@ chardet==3.0.4
1212
# via requests
1313
cryptography==43.0.0
1414
# via
15-
# gdc_client (setup.py)
15+
# gdc-client (pyproject.toml)
1616
# pyopenssl
1717
idna==2.8
1818
# via requests
1919
importlib-metadata==7.0.1
20-
# via gdc_client (setup.py)
20+
# via gdc-client (pyproject.toml)
2121
intervaltree==3.0.2
22-
# via gdc_client (setup.py)
22+
# via gdc-client (pyproject.toml)
2323
jsonschema==2.6.0
24-
# via gdc_client (setup.py)
24+
# via gdc-client (pyproject.toml)
2525
lxml==4.4.2
26-
# via gdc_client (setup.py)
26+
# via gdc-client (pyproject.toml)
2727
ndg-httpsclient==0.5.0
28-
# via gdc_client (setup.py)
29-
progressbar2==3.43.1
30-
# via gdc_client (setup.py)
28+
# via gdc-client (pyproject.toml)
29+
progressbar2==3.55.0
30+
# via gdc-client (pyproject.toml)
3131
pyasn1==0.4.8
3232
# via
33-
# gdc_client (setup.py)
33+
# gdc-client (pyproject.toml)
3434
# ndg-httpsclient
3535
pycparser==2.21
3636
# via cffi
3737
pyopenssl==24.2.1
3838
# via
39-
# gdc_client (setup.py)
39+
# gdc-client (pyproject.toml)
4040
# ndg-httpsclient
4141
python-utils==2.7.1
4242
# via progressbar2
4343
pyyaml==5.3.1
44-
# via gdc_client (setup.py)
44+
# via gdc-client (pyproject.toml)
4545
requests==2.22.0
46-
# via gdc_client (setup.py)
46+
# via gdc-client (pyproject.toml)
4747
six==1.16.0
4848
# via
4949
# progressbar2
5050
# python-utils
5151
sortedcontainers==2.4.0
5252
# via intervaltree
5353
termcolor==1.1.0
54-
# via gdc_client (setup.py)
54+
# via gdc-client (pyproject.toml)
5555
urllib3==1.25.11
5656
# via requests
5757
zipp==3.17.0

0 commit comments

Comments
 (0)