Skip to content

Commit 1c290c4

Browse files
dependabot[bot]BobTheBuidlergithub-actions[bot]
authored
ci: bump python-dotenv from 0.16.0 to 1.2.2 (#2245)
* deps: use uv for requirements locking * deps: remove windows requirements split * chore: compile C files for source control * chore: * chore: compile C files for source control --------- Co-authored-by: BobTheBuidler <bobthebuidlerdefi@gmail.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent facf5d3 commit 1c290c4

16 files changed

Lines changed: 4366 additions & 618 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
name: Pip Compile
1+
name: UV Lock
22

33
on:
44
pull_request:
55
branches:
66
- master
7-
7+
88
concurrency:
99
group: ${{ github.workflow }}-${{ github.ref }}
1010
cancel-in-progress: true
1111

1212
jobs:
13-
pip-compile:
13+
uv-lock:
1414
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
1515
runs-on: ubuntu-latest
1616

@@ -24,35 +24,32 @@ jobs:
2424
- name: Set up Python
2525
uses: actions/setup-python@v6
2626
with:
27-
python-version: '3.13'
27+
python-version-file: .python-version
28+
29+
- name: Set up uv
30+
uses: astral-sh/setup-uv@v7
2831

2932
- name: Cache .mypy_cache
3033
uses: actions/cache@v5
3134
with:
3235
path: .mypy_cache
3336
key: mypy-cache-${{ runner.os }}-${{ hashFiles('**/*.py', 'pyproject.toml') }}
3437

35-
- name: Pin pip to <25.0 for pip-tools compatibility
36-
run: pip install "pip<25.0"
38+
- name: Update uv lock
39+
run: uv lock --upgrade
3740

38-
- name: Install Pip Tools
39-
run: pip install -U pip-tools
40-
41-
- name: Run Pip Compile
42-
run: pip-compile -U --no-strip-extras
41+
- name: Export runtime requirements
42+
run: uv export --locked --only-group runtime --no-hashes --output-file requirements.txt
4343

44-
- name: Run Pip Compile for Windows
45-
run: pip-compile -U requirements-windows.in --no-strip-extras
44+
- name: Export dev requirements
45+
run: uv export --locked --only-group dev --no-hashes --output-file requirements-dev.txt
4646

47-
- name: Run Pip Compile for Dev Deps
48-
run: pip-compile -U requirements-dev.in --no-strip-extras
47+
- name: Export test requirements
48+
run: uv export --locked --only-group test --no-hashes --output-file requirements-test.txt
4949

50-
- name: Run Pip Compile for Test Deps
51-
run: pip-compile -U requirements-test.in --no-strip-extras --allow-unsafe
50+
- name: Export docs requirements
51+
run: uv export --locked --only-group docs --no-hashes --output-file requirements-docs.txt
5252

53-
- name: Run Pip Compile for Docs Deps
54-
run: pip-compile -U requirements-docs.in --no-strip-extras
55-
5653
- name: Check for changes
5754
id: changes
5855
run: |
@@ -68,5 +65,5 @@ jobs:
6865
git config --local user.name "github-actions[bot]"
6966
git config --local user.email "github-actions[bot]@users.noreply.github.com"
7067
git add .
71-
git commit -m "chore: \`pip-compile\`"
68+
git commit -m "chore: `uv lock`"
7269
git push

.python-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.10

README.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,10 +93,12 @@ python3 -m venv venv
9393
```
9494

9595
Upgrading the pinned versions of dependencies is easy:
96-
```
97-
./venv/bin/pip-compile --upgrade
98-
./venv/bin/pip-compile --upgrade requirements-dev.in
99-
./venv/bin/pip-compile --upgrade requirements-windows.in
96+
```bash
97+
./venv/bin/uv lock --upgrade
98+
./venv/bin/uv export --locked --only-group runtime --no-hashes --output-file requirements.txt
99+
./venv/bin/uv export --locked --only-group dev --no-hashes --output-file requirements-dev.txt
100+
./venv/bin/uv export --locked --only-group test --no-hashes --output-file requirements-test.txt
101+
./venv/bin/uv export --locked --only-group docs --no-hashes --output-file requirements-docs.txt
100102
```
101103

102104
Even small upgrades of patch versions have broken things in the past, so be sure to run all tests after upgrading things!

build/__native_eth_brownie.c

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -57724,7 +57724,7 @@ CPyL3: ;
5772457724
CPy_INCREF(cpy_r_val);
5772557725
return cpy_r_val;
5772657726
CPyL4: ;
57727-
cpy_r_r1 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* frozenset({'True', 'true', 'on'}) */
57727+
cpy_r_r1 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* frozenset({'true', 'on', 'True'}) */
5772857728
CPy_INCREF(cpy_r_val);
5772957729
if (likely(PyUnicode_Check(cpy_r_val)))
5773057730
cpy_r_r2 = cpy_r_val;
@@ -57744,7 +57744,7 @@ CPyL4: ;
5774457744
cpy_r_r6 = 1 ? Py_True : Py_False;
5774557745
return cpy_r_r6;
5774657746
CPyL8: ;
57747-
cpy_r_r7 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* frozenset({'off', 'false', 'False'}) */
57747+
cpy_r_r7 = CPyStatics[DIFFCHECK_PLACEHOLDER]; /* frozenset({'off', 'False', 'false'}) */
5774857748
CPy_INCREF(cpy_r_val);
5774957749
if (likely(PyUnicode_Check(cpy_r_val)))
5775057750
cpy_r_r8 = cpy_r_val;
@@ -184285,19 +184285,19 @@ CPyL20: ;
184285184285
if (!cpy_r_r41) goto CPyL44;
184286184286
CPyL21: ;
184287184287
cpy_r_r42 = CPySequenceTuple_GetItemUnsafe(cpy_r_r38, cpy_r_r40);
184288-
if (PyLong_Check(cpy_r_r42))
184288+
if (PyUnicode_Check(cpy_r_r42))
184289184289
cpy_r_r43 = cpy_r_r42;
184290184290
else {
184291184291
cpy_r_r43 = NULL;
184292184292
}
184293184293
if (cpy_r_r43 != NULL) goto __LL1108;
184294-
if (PyUnicode_Check(cpy_r_r42))
184294+
if (PyLong_Check(cpy_r_r42))
184295184295
cpy_r_r43 = cpy_r_r42;
184296184296
else {
184297184297
cpy_r_r43 = NULL;
184298184298
}
184299184299
if (cpy_r_r43 != NULL) goto __LL1108;
184300-
CPy_TypeErrorTraceback("brownie/project/compiler/vyper.py", "_convert_to_semver", 525, CPyStatic_vyper___globals, "union[int, str]", cpy_r_r42);
184300+
CPy_TypeErrorTraceback("brownie/project/compiler/vyper.py", "_convert_to_semver", 525, CPyStatic_vyper___globals, "union[str, int]", cpy_r_r42);
184301184301
goto CPyL45;
184302184302
__LL1108: ;
184303184303
cpy_r_r44 = PyObject_Str(cpy_r_r43);
@@ -277439,7 +277439,7 @@ const char * const CPyLit_Str[] = {
277439277439
"\004\017REQUEST_HEADERS\vNetworkType\rNetworkConfig\017ConfigContainer",
277440277440
"\005\022set_active_network\fclear_active\bproperty\016active_network\fnetwork_type",
277441277441
"\a\004mode\006Config\nConfigDict\004once\016filterwarnings\bcategory\017parse_variables",
277442-
"\t\aresolve\004True\002on\003off\005False\aMapping\aTypeVar\boverload\020dotenv.variables",
277442+
"\t\aresolve\002on\004True\003off\005False\aMapping\aTypeVar\boverload\020dotenv.variables",
277443277443
"\006\002_T\r^[-+]\?[0-9]+$\tINT_REGEX\nEthAddress\005Fixed\003Wei",
277444277444
"\005\031brownie.convert.datatypes\ato_bool\bto_bytes\nto_decimal\006to_int",
277445277445
"\a\tto_string\ato_uint\024brownie.convert.main\a__new__\b__hash__\006__lt__\006__le__",
@@ -277515,14 +277515,15 @@ const char * const CPyLit_Str[] = {
277515277515
"\004\002w3\020load_middlewares\"brownie.network.middlewares._setup\f_middlewares",
277516277516
"\004\bget_code\006latest\bcache.db\033CREATE TABLE IF NOT EXISTS ",
277517277517
"\004\031 (method, params, result)\005clear\026loop_exception_handler\reager_caching",
277518-
"\006\tget_block\ttimestamp\006number\vblock_cache\004hash\023eth_uninstallFilter",
277519-
"\003\022web3_clientVersion\030eth_getTransactionByHash\031eth_getTransactionReceipt",
277520-
"\004\022eth_newBlockFilter\023eth_signTransaction\024eth_getFilterChanges\beth_sign",
277521-
"\004\023eth_sendTransaction\026eth_sendRawTransaction\veth_chainId\nseparators",
277522-
"\005\023SELECT result FROM \034 WHERE method=\? AND params=\?\amaxsize\ajsonrpc\0032.0",
277523-
"\006\006result\nsetdefault\fblock_filter\visConnected\tfilter_id\020uninstall_filter",
277524-
"\003\vloop_thread\016current_thread&brownie/network/middlewares/caching.py",
277525-
"\005\nLogReceipt\006Cursor\021brownie.utils.sql\veth_getCode\016LONGTERM_CACHE",
277518+
"\006\tget_block\ttimestamp\006number\vblock_cache\004hash\023eth_signTransaction",
277519+
"\004\023eth_uninstallFilter\022web3_clientVersion\022eth_newBlockFilter\veth_chainId",
277520+
"\003\beth_sign\030eth_getTransactionByHash\031eth_getTransactionReceipt",
277521+
"\003\026eth_sendRawTransaction\023eth_sendTransaction\024eth_getFilterChanges",
277522+
"\004\nseparators\023SELECT result FROM \034 WHERE method=\? AND params=\?\amaxsize",
277523+
"\a\ajsonrpc\0032.0\006result\nsetdefault\fblock_filter\visConnected\tfilter_id",
277524+
"\003\020uninstall_filter\vloop_thread\016current_thread",
277525+
"\003&brownie/network/middlewares/caching.py\nLogReceipt\006Cursor",
277526+
"\003\021brownie.utils.sql\veth_getCode\016LONGTERM_CACHE",
277526277527
"\002 CACHE_FILTER_THREAD_JOIN_TIMEOUT#brownie.network.middlewares.caching",
277527277528
"\a\ttable_key\003cur\004lock\v_stop_event\tis_killed\nlast_block\017last_block_seen",
277528277529
"\004\flast_request\030RequestCachingMiddleware\fWeb3RPCError\017eth_estimateGas",
@@ -277882,9 +277883,9 @@ const int CPyLit_Tuple[] = {
277882277883
2252, 2, 47, 51
277883277884
};
277884277885
const int CPyLit_FrozenSet[] = {
277885-
7, 3, 670, 469, 671, 3, 672, 470, 673, 11, 1043, 1044, 1045, 1046,
277886+
7, 3, 469, 670, 671, 3, 672, 673, 470, 11, 1043, 1044, 1045, 1046,
277886277887
1047, 1048, 1049, 1050, 1051, 1052, 1053, 2, 1086, 1087, 2, 1051,
277887-
1052, 3, 1087, 1051, 1052, 2, 2086, 2087
277888+
1052, 3, 1051, 1087, 1052, 2, 2086, 2087
277888277889
};
277889277890
CPyModule *CPyModule_brownie____c_constants__internal = NULL;
277890277891
CPyModule *CPyModule_brownie____c_constants;

pyproject.toml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,74 @@ requires = [
2929
"web3==7.15.0; platform_system == 'MacOS' or platform_system == 'Linux'",
3030
]
3131

32+
[dependency-groups]
33+
runtime = [
34+
"cchecksum>=0.1.0",
35+
"eip712",
36+
"eth-account",
37+
"eth-event>=1.4.3,<2",
38+
"eth-hash[pycryptodome]",
39+
"eth-typing>=4.2.1,<6",
40+
"faster-eth-abi>=5.2.12",
41+
"faster-eth-utils>=5.3.11",
42+
"faster-hexbytes>=1.3.2,<2",
43+
"hypothesis<6.28.0",
44+
"lazy-object-proxy>=1.6.0,<2",
45+
"prompt-toolkit<4",
46+
"psutil>=5.7.3,<6",
47+
"py>=1.5.0,<2",
48+
"py-solc-ast>=1.2.8,<2",
49+
"py-solc-x>=2.0.5,<3",
50+
"pygments<3",
51+
"pygments-lexer-solidity<1",
52+
"pytest>=8.4.2,<10",
53+
"pytest-xdist>=3.8,<4",
54+
"python-dotenv>=0.16.0,<0.17.0",
55+
"pyyaml>=6,<7",
56+
"requests>=2.25.0,<3",
57+
"rlp",
58+
"semantic-version<3",
59+
"tqdm<5",
60+
"ujson",
61+
"vvm==0.3.2",
62+
"vyper>=0.4.0,<0.5",
63+
"web3>=7,<8",
64+
"wrapt>=1.12.1,<2",
65+
]
66+
test = [
67+
"coverage==7.13.5",
68+
"eth-retry==0.3.5",
69+
"pytest-cov==2.10.1",
70+
"pytest-mock==3.3.1",
71+
"setuptools==80.9.0; python_version >= '3.12'",
72+
]
73+
lint = [
74+
"black>=20.8b1",
75+
"flake8",
76+
"isort",
77+
"pygments-lexer-solidity",
78+
]
79+
dev = [
80+
{ include-group = "lint" },
81+
"bumpversion",
82+
"coverage",
83+
"eth-retry",
84+
"pytest-cov",
85+
"pytest-mock",
86+
"tox",
87+
"twine",
88+
"uv",
89+
"wheel",
90+
]
91+
docs = [
92+
"sphinx",
93+
"sphinx_rtd_theme",
94+
]
95+
96+
[tool.uv]
97+
package = false
98+
required-version = ">=0.11.16,<0.12"
99+
32100
# Brownie configuration for Black.
33101

34102
# NOTE: you have to use single-quoted strings in TOML for regular expressions.

requirements-dev.in

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

0 commit comments

Comments
 (0)