Skip to main content

DMCAed

A command-line tool and a python library to analyze GitHub DMCA takedown notices. It downloads, parses, and indexes takedown data from the GitHub DMCA repository to allow querying which repository URL can be found in takedown requests. Please note that this only means the repository URL might have been subject to takedown requests.

Installation

DMCAed requires at least python 3.11.

pip install dmcaed

CLI

dmcaed [--verbose] [command]

Commands

  • download: Download the latest DMCA notices from GitHub
  • analyze: Parse downloaded notices and extract takedown data
  • db: Rebuild the complete DMCA database (download + analyze)
  • stats: Show statistics about the database content
  • notices <url>: List takedown notices for a specific repository URL

Options

  • --verbose: Enable debug logging
  • -h, --help: Show help message

Library Usage

from dmcaed import DMCAed

dmca = DMCAed()
notices = dmca.notices("https://github.com/user/repo")

if notices:
    print(f"https://github.com/user/repo _might_ be subject to a takedown: {notices}")

How it works

  • Download the latest DMCA notices from GitHub
  • Extract repository URLs (path to files, issues, releases, etc. are truncated) mentioned in takedown notices
  • Build a local SQLite database mapping repository URLs to takedown notices

Build and Release

### Prerequisites

The project uses hatch build system and dynamic CalVer versioning based on the current date.

pip install hatch hatch-calver

Git clone and install DMCAed.

git clone ssh://git@codeberg.org/canarduck/dmcaed.git
pip install -e .

Update the package and publish it on PyPI

You first need to fetch DMCAs and create/update the database.

dmcaed db

Then use hatch to update version number and build the package.

hatch version release
# use `hatch version release,fix` in case you need to fix an already released package

Build the package and publish it on PyPI.

hatch build
hatch publish --user __token__ --auth PYPI_AUTH_TOKEN

Metadata

Release files for dmcaed 2026.4.18.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dmcaed 2026.4.18.1
File Size Uploaded Provenance
dmcaed-2026.4.18.1.tar.gz 6.7 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dmcaed 2026.4.18.1
File Interpreter ABI Platform
dmcaed-2026.4.18.1-py3-none-any.whl Python 3 none any Details

Total release size: 6.7 MB

Release files / dmcaed-2026.4.18.1.tar.gz

Download URL dmcaed-2026.4.18.1.tar.gz
Size 6.7 MB
Tags Source
SHA-256 checksum
How to use checksums
6df6326211c1e950165d39a5212b7cba1b23127fb54ecf557995c70b26acad26
BLAKE2b-256 checksum
How to use checksums
2128fd17f27f2cda9733119b7e19f8d996f87d82f0f8b0193409e8fa94732258
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.16.5 cpython/3.11.11 HTTPX/0.28.1

Release files / dmcaed-2026.4.18.1-py3-none-any.whl

Download URL dmcaed-2026.4.18.1-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
af8322152372b9e80093b9c21a75014b3d936945c0791c597ddd8878d94fbbf2
BLAKE2b-256 checksum
How to use checksums
7bbf14e50876c3e2b55cb03d86508af48d8913b93ac359b678942ba496ff085f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.16.5 cpython/3.11.11 HTTPX/0.28.1

Security for dmcaed 2026.4.18.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

2026.4.18.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page