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.

Prerequisite

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 an anonymized copy of your project in <OUTPUT_DIRECTORY>.

You can also run grep -r "Your Name" <OUTPUT_DIRECTORY> to verify your name is not accidentally 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.2.tar.gz (3.5 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.2-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: unname-0.2.2.tar.gz
  • Upload date:
  • Size: 3.5 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.2.tar.gz
Algorithm Hash digest
SHA256 0764cf42863dc81daa235f10d2d04a75beae5df022d7d0e59d2d92f7b2dae88f
MD5 78163e21430fe852558f883e7fdbac37
BLAKE2b-256 f2fc7faf4f48dd640be3f48fb9c25b317bbad2d691fae07846f9dddc14c394b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: unname-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 5.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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 691c4cd4c27b87614f1987c8b8be2015ba2842b632cf069b25b49fdae6358b4c
MD5 2e167acc10e4ada12a0c2500b31ae8ff
BLAKE2b-256 1d4761e7fcdbe262d46795b09846f5191b576bc10351ae4701bd355613c37c36

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