Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
[build-system]
requires = ["maturin>=1.5,<2"]
build-backend = "maturin"

[project]
name = "dapper-bin"
description = "pip installable dapper binaries"
Copy link

Copilot AI Dec 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The description should capitalize "pip" to "Pip" or use it with a hyphen ("pip-installable") for better grammar and consistency with common Python packaging conventions.

Suggested change
description = "pip installable dapper binaries"
description = "pip-installable dapper binaries"

Copilot uses AI. Check for mistakes.
readme = "README.md"
authors = [{ name = "Ryan Mast", email = "mast9@llnl.gov" }]
license = "MIT"
license-files = ["LICENSE", "NOTICE"]
requires-python = ">=3.8"
keywords = ["source-code-analysis", "c", "c++", "python", "bash", "tree-sitter", "rust"]
classifiers = [
"Programming Language :: Python :: 3",
"Operating System :: MacOS",
Copy link

Copilot AI Dec 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The classifier "Operating System :: MacOS" is incomplete. The correct PyPI classifier should be "Operating System :: MacOS :: MacOS X" according to the PyPI classifier list.

Suggested change
"Operating System :: MacOS",
"Operating System :: MacOS :: MacOS X",

Copilot uses AI. Check for mistakes.
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"Topic :: Database",
"Topic :: Security",
"Topic :: Utilities",
]
Comment on lines +14 to +24
Copy link

Copilot AI Dec 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The classifiers list is missing a license classifier. Consider adding "License :: OSI Approved :: MIT License" to be consistent with the license field and provide better discoverability on PyPI.

Copilot uses AI. Check for mistakes.
dynamic = ["version"]

[project.urls]
Homepage = "https://github.com/LLNL/dapper"
Issues = "https://github.com/LLNL/dapper/issues"

[tool.maturin]
# Build the Rust binary as a Python CLI using maturin's `bindings = "bin"`.
bindings = "bin"
# Point maturin at the crate manifest in the repo root.
manifest-path = "Cargo.toml"
# Name of the exposed module/CLI (sets the wheel name and console script).
module-name = "dapper"
Copy link

Copilot AI Dec 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The module-name configuration may not be necessary or appropriate for bindings = "bin". In bin mode, maturin typically derives the binary name from the Cargo.toml package name. If you need to control the binary/script name, verify this is the correct approach for maturin's bin bindings. The mismatch between project.name = "dapper-bin" and module-name = "dapper" may also cause confusion.

Suggested change
module-name = "dapper"

Copilot uses AI. Check for mistakes.

## No [project.scripts] needed; maturin will generate the console entrypoint in bin mode
Copy link

Copilot AI Dec 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The comment uses double hashes (##) which is inconsistent with the single hash (#) used for other comments in this file (lines 32, 34, 36). Consider using a single # for consistency.

Suggested change
## No [project.scripts] needed; maturin will generate the console entrypoint in bin mode
# No [project.scripts] needed; maturin will generate the console entrypoint in bin mode

Copilot uses AI. Check for mistakes.