-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
75 lines (70 loc) · 2.34 KB
/
Copy pathpyproject.toml
File metadata and controls
75 lines (70 loc) · 2.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#
# provide-workspace/pyproject.toml
#
# Development workspace bootstrapper for the provide.io ecosystem.
#
# Usage:
# Clone provide-workspace, then clone all 12 repos into the repos/ subdirectory:
# cd provide-workspace
# git clone git@github.com:provide-io/pyvider.git repos/pyvider
# # ... etc
# uv sync
#
# `uv sync` resolves every dependency above from its repos/ checkout, not
# PyPI (see [tool.uv.workspace] / [tool.uv.sources] below). To test a
# combination of branches, commits, or unpublished changes across these
# packages, check each repos/<name> out to whatever ref you want to test
# and re-run `uv sync` -- no publishing required for any of them.
#
[build-system]
requires = ["setuptools>=75.0"]
build-backend = "setuptools.build_meta"
[project]
name = "provide-workspace"
version = "0.4.0"
description = "Development workspace bootstrapper for the provide.io ecosystem"
requires-python = ">=3.11"
license = "Apache-2.0"
authors = [
{ name = "Tim Perkins", email = "code@tim.life" },
]
maintainers = [
{ name = "provide.io", email = "code@provide.io" },
]
dependencies = [
"flavorpack>=0.4.6",
"plating>=0.6.1",
"provide-foundation>=0.4.3",
"provide-foundry>=0.4.1",
"provide-testkit>=0.4.4",
"pyvider>=0.6.2",
"pyvider-components>=0.6.1",
"pyvider-cty>=0.5.3",
"pyvider-hcl>=0.6.3",
"pyvider-rpcplugin>=0.4.2",
"supsrc>=0.4.0",
"tofusoup>=0.6.1",
]
[tool.setuptools]
packages = []
[tool.uv.workspace]
members = ["repos/*"]
# Redirects each dependency above to its checkout under repos/ instead of
# PyPI, so `uv sync` tests whatever combination of branches/commits is on
# disk -- published or not. All 12 must be cloned into repos/ (uv errors on
# a workspace source with no matching member, it does not fall back to
# PyPI) -- the "combination" under test is which branch/commit each one is
# checked out to, not which subset is present.
[tool.uv.sources]
flavorpack = { workspace = true }
plating = { workspace = true }
provide-foundation = { workspace = true }
provide-foundry = { workspace = true }
provide-testkit = { workspace = true }
pyvider = { workspace = true }
pyvider-components = { workspace = true }
pyvider-cty = { workspace = true }
pyvider-hcl = { workspace = true }
pyvider-rpcplugin = { workspace = true }
supsrc = { workspace = true }
tofusoup = { workspace = true }