Spaces:
Running
Running
| [project] | |
| name = "object_detection_project" | |
| version = "0.1.0" | |
| description = "Default template for PDM package" | |
| authors = [ | |
| {name = "Kittinun Yenyueak", email = "kittinun.yenyueak@lucidinsights.com.au"}, | |
| ] | |
| dependencies = [ | |
| "streamlit>=1.49.1", | |
| "moviepy>=2.2.1", | |
| "pillow>=10.0.0", | |
| "ultralytics>=8.3.0", | |
| "numpy>=2.2.6", | |
| "torch>=2.8.0", | |
| "pandas>=2.3.2", | |
| "opencv-python>=4.12.0.88", | |
| "yt-dlp>=2025.10.22", | |
| "torch>=2.0.1", | |
| "torchvision>=0.15.2", | |
| "faster-coco-eval>=1.6.5", | |
| "PyYAML", | |
| "tensorboard", | |
| "scipy", | |
| "calflops", | |
| "transformers", | |
| "wandb>=0.15.0", | |
| "opencv-python", | |
| "ultralytics", | |
| ] | |
| requires-python = "==3.11.*" | |
| readme = "README.md" | |
| license = {text = "MIT"} | |
| [tool.pdm] | |
| distribution = false | |
| [tool.ruff] | |
| ignore = [ | |
| # (missing public docstrings) These work off of the Python sense of "public", rather than our | |
| # bespoke definition based off of `@public`. When ruff supports custom plugins then we can write | |
| # appropriate rules to require docstrings for `@public`. | |
| "D100", | |
| "D101", | |
| "D102", | |
| "D103", | |
| "D104", | |
| "D105", | |
| "D106", | |
| "D107", | |
| # (docstring imperative mood) Overly restrictive. | |
| "D401", | |
| # (module level import not at top) There are several places where we use e.g. | |
| # warnings.filterwarings calls before imports. | |
| "E402", | |
| # (line too long): This fires for comments, which black won't wrap. | |
| # Disabling until there is an autoformat solution available for comments. | |
| "E501", | |
| # Pandas sometime need `==` for comparison instead of `is` | |
| # Comparision to `None` should be done with `is` rather than `==`. | |
| "E712", | |
| # (no type comparison): There are a few places where we use `== type(None)` which are more clear | |
| # than the equivalent `isinstance` check. | |
| 'E721', | |
| # (bare exception): There are many places where we want to catch a maximally generic exception. | |
| 'E722', | |
| # (no assign lambda): existing code assigns lambdas in a few places. With black formatting | |
| # requiring extra empty lines between defs, disallowing lambda assignment can make code less | |
| # readable. | |
| "E731", | |
| # (try-except-in-loop) we use this pattern in many places and the performance impact is negligible | |
| "PERF203", | |
| # (no concatenation) Existing codebase has many concatentations, no reason to disallow them. | |
| "RUF005", | |
| # (use ClassVar for attr declarations with defaults) This is a good rule for vanilla Python, but | |
| # triggers false positives for many libs that have DSLs that make use of attr defaults. | |
| "RUF012", | |
| ##### TEMPORARY DISABLES | |
| # (assorted docstring rules) There are too many violations of these to enable | |
| # right now, but we should enable after fixing the violations. | |
| "D200", # (one-line docstring should fit) | |
| "D205", # (blank line after summary) | |
| "D417", # (missing arg in docstring) | |
| # (assorted perf rules) We have a lot of violations, enable when autofix is available | |
| "PERF401", # (manual-list-comprehension) | |
| "PERF402", # (manual-list-copy) | |
| ] | |
| # By default, ruff only uses all "E" (pycodestyle) and "F" (pyflakes) rules. | |
| # Here we append to the defaults. | |
| select = [ | |
| # (flake8-builtins) detect shadowing of python builtin symbols by variables and arguments. | |
| # Attributes are OK (which is why A003) is not included here. | |
| "A001", | |
| "A002", | |
| # (useless expression): Expressions that aren't assigned to anything are typically bugs. | |
| "B018", | |
| # (pydocstyle) Docstring-related rules. A large subset of these are ignored by the | |
| # "convention=google" setting, we set under tool.ruff.pydocstyle. | |
| "D", | |
| # (pycodestyle) pycodestyle rules | |
| "E", | |
| # (pyflakes) pyflakes rules | |
| "F", | |
| # (isort) detect improperly sorted imports | |
| "I001", | |
| # (performance) perflint rules | |
| "PERF", | |
| # (pylint) use all pylint rules from categories "Convention", "Error", and "Warning" (ruff | |
| # currently implements only a subset of pylint's rules) | |
| "PLE", | |
| "PLW", | |
| # (no commented out code) keep commented out code blocks out of the codebase | |
| # "ERA001", | |
| # (ruff-specific) Enable all ruff-specific checks (i.e. not ports of | |
| # functionality from an existing linter). | |
| "RUF", | |
| # (private member access) Flag access to `_`-prefixed symbols. By default the various special | |
| # methods on `NamedTuple` are ignored (e.g. `_replace`). | |
| "SLF001", | |
| # (flake8-type-checking) Auto-sort imports into TYPE_CHECKING blocks depending on whether | |
| # they are runtime or type-only imports. | |
| "TCH", | |
| # (f-strings) use f-strings instead of .format() | |
| "UP032", | |
| # (invalid escape sequence) flag errant backslashes | |
| "W605", | |
| ] | |
| [dependency-groups] | |
| dev = [ | |
| "ruff>=0.13.1", | |
| ] | |
| [build-system] | |
| requires = ["pdm-backend"] | |
| build-backend = "pdm.backend" | |