[project] name = "remove-ai-watermarks" version = "0.1.0" description = "Unified tool for removing visible and invisible AI watermarks from images" readme = "README.md" requires-python = ">=3.10" license = {text = "MIT"} dependencies = [ "pillow>=10.0.0", "piexif>=1.1.3", "numpy>=1.24.0", "opencv-python>=4.8.0", "click>=8.0.0", "rich>=13.0.0", "torch>=2.0.0", "diffusers>=0.25.0", "transformers>=4.35.0", "accelerate>=0.25.0", "controlnet-aux>=0.0.9", "color-matcher", "safetensors", "python-dotenv>=1.0.0", "ultralytics>=8.0.0", "requests>=2.33.0", ] [project.optional-dependencies] dev = [ "pytest>=8.0.0", "pytest-cov>=4.1.0", "ruff>=0.4.0", ] all = ["remove-ai-watermarks[dev]"] [project.scripts] remove-ai-watermarks = "remove_ai_watermarks.cli:main" [project.urls] Repository = "https://github.com/wiltodelta/remove-ai-watermarks" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/remove_ai_watermarks"] [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["src"] addopts = "-v --tb=short" [tool.ruff] target-version = "py310" line-length = 120 [tool.pyright] exclude = ["tests"] reportOptionalMemberAccess = "warning" reportPrivateImportUsage = false reportInvalidTypeForm = false reportOptionalCall = false reportMissingImports = "warning" reportCallIssue = "warning" reportAttributeAccessIssue = "warning" reportArgumentType = "warning" reportPossiblyUnboundVariable = "warning" reportAssignmentType = "warning" reportOperatorIssue = "warning" [tool.ruff.lint] select = ["E", "F", "W", "I", "N", "UP"] ignore = ["E501"]