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
# PyPI packaging for the `forgedb` CLI — epic #173 / issue #185.
#
# maturin `bindings = "bin"` wraps the compiled `forgedb` binary (plus the
# bundled `forgedb-lsp`, via `features = ["lsp"]`) into platform wheels, so
# `uv tool install hoodiecollin-forgedb` / `pip install hoodiecollin-forgedb`
# (or `uvx --from hoodiecollin-forgedb forgedb`) deliver the CLI with no Rust
# toolchain. This is the one distribution channel cargo-dist
# can't handle (dist does not publish to PyPI); everything else is driven by
# dist-workspace.toml. The wheel version is read from the crate version in
# Cargo.toml (`dynamic = ["version"]`), keeping this channel in lockstep with the
# `v*` tag that drives all the others.
[]
= ["maturin>=1.7,<2"]
= "maturin"
[]
# The PyPI project is `hoodiecollin-forgedb`: bare `forgedb` is blocked by PyPI's
# similarity guard (the existing `forge-db` normalizes to the same name), so we
# mirror the `@hoodiecollin` npm scope. The installed command is still `forgedb`
# (maturin `bindings = "bin"` ships the cargo binary names, not the project name).
= "hoodiecollin-forgedb"
= "ForgeDB — an application database generator. Compiles a declarative .forge schema into tailored Rust database code, a TypeScript SDK, and a REST API."
= "README.md"
= ">=3.8"
= { = "MIT OR Apache-2.0" }
= [{ = "Collin Kokotas" }]
= ["database", "codegen", "orm", "cli", "generator"]
= [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Rust",
"Topic :: Database",
"Topic :: Software Development :: Code Generators",
]
= ["version"]
[]
= "https://github.com/hoodiecollin/forgedb"
= "https://github.com/hoodiecollin/forgedb"
[]
# Package the crate's binaries (`forgedb` + the feature-gated `forgedb-lsp`) as a
# console wheel rather than a Python extension module.
= "bin"
= ["lsp"]
= "Cargo.toml"
= true