Skip to main content

A simple CLI for anonymizing Python codebases for blind review.

Project description

unname

A simple CLI for anonymizing Python codebases for blind review.

It anonymizes pyproject.toml and README.md in your project (see below for details). If your project is a uv workspace, it anonymizes all workspace members.

Prerequisit

Your project must be a git repository since unname internally uses git ls-files to filter out .gitignored files.

Usage

Using uv:

uvx unname -o <OUTPUT_DIRECTORY>

This will create a anonymized copy of your project in `<OUTPUT_DIRECTORY>.

You can also run grep -r "Your Name" <OUTPUT_DIRECTORY> to verify your name is not accidentaly left in the git repository.

What it does

1. Make a copy of your project

First of all, unname will create a copy of your project in the directory specified by the -o or --output option.

unname only copies git-tracked files so that you don't have to manually filter out irrelevant files such as .venv from your code submission.

2. pyproject.toml anonymization

authors and maintainers fields will be replaced with an empty list (if they exist).

3. README.md anonymization

The content between <!-- begin-unname --> and <!-- end-unname --> will be removed. For example:

Input

# My Awesome Project

Code for the paper "My Awesome Method."

<!-- begin-unname -->
- Authors: Alice & Bob
- arXiv link: https://arxiv.org/abs/1234.56789
<!-- end-unname -->

## Install

...

Output

# My Awesome Project

Code for the paper "My Awesome Method."

## Install

...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unname-0.2.0.tar.gz (2.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

unname-0.2.0-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file unname-0.2.0.tar.gz.

File metadata

  • Download URL: unname-0.2.0.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for unname-0.2.0.tar.gz
Algorithm Hash digest
SHA256 808f3f766edf979804e86ad5a6d1c75cb2ae1741ed4a392038ce0f153b56ea83
MD5 69e354720d90b0f9b0d3b8757e8783a1
BLAKE2b-256 c2a0e3b494e83d1869bf31d77cc19f1f5020f28101c4baa4cd581d5dc518e524

See more details on using hashes here.

File details

Details for the file unname-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: unname-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for unname-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0da56cd8482b5ed8b430954524b17d5a5fcc57718974e9f2e5bb502b2b206663
MD5 5a88a1b88589a6f4e56b97a5be6fa7c6
BLAKE2b-256 fb73a9d9538d236e030f9ac0de2ada6a31c07537040733e952f1b0b2f1a4ef19

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page