pyveil 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pyveil-0.1.0/CLAUDE.md +67 -0
- pyveil-0.1.0/LICENSE +21 -0
- pyveil-0.1.0/MANIFEST.in +19 -0
- pyveil-0.1.0/PKG-INFO +53 -0
- pyveil-0.1.0/README.md +12 -0
- pyveil-0.1.0/docs/README.md +13 -0
- pyveil-0.1.0/examples/basic_usage.py +1 -0
- pyveil-0.1.0/pyproject.toml +159 -0
- pyveil-0.1.0/pyveil/__init__.py +5 -0
- pyveil-0.1.0/pyveil/masker.py +1 -0
- pyveil-0.1.0/pyveil/patterns.py +1 -0
- pyveil-0.1.0/pyveil/utils.py +1 -0
- pyveil-0.1.0/pyveil.egg-info/PKG-INFO +53 -0
- pyveil-0.1.0/pyveil.egg-info/SOURCES.txt +21 -0
- pyveil-0.1.0/pyveil.egg-info/dependency_links.txt +1 -0
- pyveil-0.1.0/pyveil.egg-info/requires.txt +11 -0
- pyveil-0.1.0/pyveil.egg-info/top_level.txt +1 -0
- pyveil-0.1.0/setup.cfg +4 -0
- pyveil-0.1.0/setup.py +12 -0
- pyveil-0.1.0/tests/__init__.py +1 -0
- pyveil-0.1.0/tests/test_masker.py +1 -0
- pyveil-0.1.0/tests/test_patterns.py +1 -0
- pyveil-0.1.0/tests/test_utils.py +1 -0
pyveil-0.1.0/CLAUDE.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
Veil is a Python library for masking sensitive data (PII) - emails, phones, names, and more. The library is in early development stage.
|
|
8
|
+
|
|
9
|
+
## Project Setup
|
|
10
|
+
|
|
11
|
+
This project uses Python 3.11+ with a virtual environment:
|
|
12
|
+
- Virtual environment: `.venv/` (already created)
|
|
13
|
+
- License: MIT
|
|
14
|
+
- Python environment management appears to use standard venv
|
|
15
|
+
|
|
16
|
+
## Expected Architecture
|
|
17
|
+
|
|
18
|
+
Since this is a PII masking library, the typical structure should include:
|
|
19
|
+
- Core masking functions for different data types (email, phone, names, etc.)
|
|
20
|
+
- Pattern detection/recognition for identifying PII in text
|
|
21
|
+
- Configurable masking strategies (partial masking, full masking, tokenization)
|
|
22
|
+
- Support for different locales/regions (phone formats, name patterns vary by country)
|
|
23
|
+
|
|
24
|
+
## Development Guidelines
|
|
25
|
+
|
|
26
|
+
### PII Masking Considerations
|
|
27
|
+
- Ensure masking is irreversible unless explicitly designed for reversible tokenization
|
|
28
|
+
- Support both in-place masking and returning masked copies
|
|
29
|
+
- Consider performance for large-scale text processing
|
|
30
|
+
- Handle edge cases (malformed emails, international phone formats, etc.)
|
|
31
|
+
- Provide clear documentation about what constitutes "masked" vs "anonymized" data
|
|
32
|
+
|
|
33
|
+
### Testing Requirements
|
|
34
|
+
- Test with diverse PII formats across different locales
|
|
35
|
+
- Include negative tests (text without PII should remain unchanged)
|
|
36
|
+
- Test performance with large inputs
|
|
37
|
+
- Verify no PII leakage in edge cases
|
|
38
|
+
|
|
39
|
+
### Security Considerations
|
|
40
|
+
- Never log or expose unmasked PII during processing
|
|
41
|
+
- Ensure no PII appears in error messages or stack traces
|
|
42
|
+
- If implementing reversible masking, secure the key management
|
|
43
|
+
|
|
44
|
+
### Project Structure
|
|
45
|
+
|
|
46
|
+
veil/
|
|
47
|
+
├── veil/ # 메인 패키지 (내용 비움)
|
|
48
|
+
│ ├── __init__.py # __version__ = "0.1.0"만 유지
|
|
49
|
+
│ ├── masker.py # docstring만 유지
|
|
50
|
+
│ ├── patterns.py # docstring만 유지
|
|
51
|
+
│ └── utils.py # docstring만 유지
|
|
52
|
+
├── tests/ # 테스트 (내용 비움)
|
|
53
|
+
│ ├── __init__.py
|
|
54
|
+
│ ├── test_masker.py
|
|
55
|
+
│ ├── test_patterns.py
|
|
56
|
+
│ └── test_utils.py
|
|
57
|
+
├── examples/ # 예제 (내용 비움)
|
|
58
|
+
│ └── basic_usage.py
|
|
59
|
+
├── docs/
|
|
60
|
+
│ └── README.md
|
|
61
|
+
├── pyproject.toml # PyPI 설정 유지
|
|
62
|
+
├── setup.py # 호환성 파일 유지
|
|
63
|
+
├── MANIFEST.in # 배포 설정 유지
|
|
64
|
+
├── README.md # 프로젝트 README 유지
|
|
65
|
+
├── LICENSE # MIT 라이선스 유지
|
|
66
|
+
├── CLAUDE.md # AI 가이드 유지
|
|
67
|
+
└── .gitignore # Git 설정 유지
|
pyveil-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Hyeon Sang Jeon
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
pyveil-0.1.0/MANIFEST.in
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Include documentation
|
|
2
|
+
include README.md
|
|
3
|
+
include LICENSE
|
|
4
|
+
include CLAUDE.md
|
|
5
|
+
|
|
6
|
+
# Include examples
|
|
7
|
+
recursive-include examples *.py
|
|
8
|
+
|
|
9
|
+
# Include tests
|
|
10
|
+
recursive-include tests *.py
|
|
11
|
+
|
|
12
|
+
# Include docs
|
|
13
|
+
recursive-include docs *.md
|
|
14
|
+
|
|
15
|
+
# Exclude unnecessary files
|
|
16
|
+
global-exclude __pycache__
|
|
17
|
+
global-exclude *.py[cod]
|
|
18
|
+
global-exclude .DS_Store
|
|
19
|
+
global-exclude *.so
|
pyveil-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyveil
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A Python library for masking sensitive data (PII) - emails, phones, names, and more
|
|
5
|
+
Author-email: Hyeon Sang Jeon <your.email@example.com>
|
|
6
|
+
Maintainer-email: Hyeon Sang Jeon <your.email@example.com>
|
|
7
|
+
License: MIT
|
|
8
|
+
Project-URL: Homepage, https://github.com/yourusername/pyveil
|
|
9
|
+
Project-URL: Documentation, https://github.com/yourusername/pyveil#readme
|
|
10
|
+
Project-URL: Repository, https://github.com/yourusername/pyveil
|
|
11
|
+
Project-URL: Issues, https://github.com/yourusername/pyveil/issues
|
|
12
|
+
Project-URL: Changelog, https://github.com/yourusername/pyveil/releases
|
|
13
|
+
Keywords: pii,privacy,masking,data-protection,security,anonymization,sensitive-data,gdpr,compliance
|
|
14
|
+
Classifier: Development Status :: 3 - Alpha
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
24
|
+
Classifier: Topic :: Security
|
|
25
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
26
|
+
Classifier: Topic :: Text Processing
|
|
27
|
+
Classifier: Typing :: Typed
|
|
28
|
+
Requires-Python: >=3.8
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: pytest>=7.0.0; extra == "dev"
|
|
33
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
|
|
34
|
+
Requires-Dist: black>=23.0.0; extra == "dev"
|
|
35
|
+
Requires-Dist: ruff>=0.1.0; extra == "dev"
|
|
36
|
+
Requires-Dist: mypy>=1.0.0; extra == "dev"
|
|
37
|
+
Provides-Extra: test
|
|
38
|
+
Requires-Dist: pytest>=7.0.0; extra == "test"
|
|
39
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == "test"
|
|
40
|
+
Dynamic: license-file
|
|
41
|
+
|
|
42
|
+
# pyveil 🎭
|
|
43
|
+
|
|
44
|
+
A Python library for masking sensitive data (PII) - emails, phones, names, and more
|
|
45
|
+
|
|
46
|
+
[](https://opensource.org/licenses/MIT)
|
|
47
|
+
[](https://www.python.org/downloads/)
|
|
48
|
+
|
|
49
|
+
## Overview
|
|
50
|
+
|
|
51
|
+
pyveil helps protect sensitive information by detecting and masking various types of personally identifiable information (PII) in text data. Whether you're handling logs, user data, or any text containing sensitive information, PyVeil provides flexible and easy-to-use tools to protect privacy.
|
|
52
|
+
|
|
53
|
+
## Features
|
pyveil-0.1.0/README.md
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# pyveil 🎭
|
|
2
|
+
|
|
3
|
+
A Python library for masking sensitive data (PII) - emails, phones, names, and more
|
|
4
|
+
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://www.python.org/downloads/)
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
pyveil helps protect sensitive information by detecting and masking various types of personally identifiable information (PII) in text data. Whether you're handling logs, user data, or any text containing sensitive information, PyVeil provides flexible and easy-to-use tools to protect privacy.
|
|
11
|
+
|
|
12
|
+
## Features
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# pyveil Documentation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
pyveil is a Python library designed to mask sensitive personally identifiable information (PII) in text data. It helps protect privacy by detecting and masking various types of sensitive information including emails, phone numbers, credit cards, SSNs, IP addresses, and names.
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pip install veil
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Basic usage examples for the veil library."""
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=61.0", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "pyveil"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "A Python library for masking sensitive data (PII) - emails, phones, names, and more"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.8"
|
|
11
|
+
license = {text = "MIT"}
|
|
12
|
+
authors = [
|
|
13
|
+
{name = "Hyeon Sang Jeon", email = "your.email@example.com"}
|
|
14
|
+
]
|
|
15
|
+
maintainers = [
|
|
16
|
+
{name = "Hyeon Sang Jeon", email = "your.email@example.com"}
|
|
17
|
+
]
|
|
18
|
+
keywords = [
|
|
19
|
+
"pii",
|
|
20
|
+
"privacy",
|
|
21
|
+
"masking",
|
|
22
|
+
"data-protection",
|
|
23
|
+
"security",
|
|
24
|
+
"anonymization",
|
|
25
|
+
"sensitive-data",
|
|
26
|
+
"gdpr",
|
|
27
|
+
"compliance"
|
|
28
|
+
]
|
|
29
|
+
classifiers = [
|
|
30
|
+
"Development Status :: 3 - Alpha",
|
|
31
|
+
"Intended Audience :: Developers",
|
|
32
|
+
"License :: OSI Approved :: MIT License",
|
|
33
|
+
"Operating System :: OS Independent",
|
|
34
|
+
"Programming Language :: Python :: 3",
|
|
35
|
+
"Programming Language :: Python :: 3.8",
|
|
36
|
+
"Programming Language :: Python :: 3.9",
|
|
37
|
+
"Programming Language :: Python :: 3.10",
|
|
38
|
+
"Programming Language :: Python :: 3.11",
|
|
39
|
+
"Programming Language :: Python :: 3.12",
|
|
40
|
+
"Topic :: Security",
|
|
41
|
+
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
42
|
+
"Topic :: Text Processing",
|
|
43
|
+
"Typing :: Typed",
|
|
44
|
+
]
|
|
45
|
+
dependencies = []
|
|
46
|
+
|
|
47
|
+
[project.optional-dependencies]
|
|
48
|
+
dev = [
|
|
49
|
+
"pytest>=7.0.0",
|
|
50
|
+
"pytest-cov>=4.0.0",
|
|
51
|
+
"black>=23.0.0",
|
|
52
|
+
"ruff>=0.1.0",
|
|
53
|
+
"mypy>=1.0.0",
|
|
54
|
+
]
|
|
55
|
+
test = [
|
|
56
|
+
"pytest>=7.0.0",
|
|
57
|
+
"pytest-cov>=4.0.0",
|
|
58
|
+
]
|
|
59
|
+
|
|
60
|
+
[project.urls]
|
|
61
|
+
Homepage = "https://github.com/yourusername/pyveil"
|
|
62
|
+
Documentation = "https://github.com/yourusername/pyveil#readme"
|
|
63
|
+
Repository = "https://github.com/yourusername/pyveil"
|
|
64
|
+
Issues = "https://github.com/yourusername/pyveil/issues"
|
|
65
|
+
Changelog = "https://github.com/yourusername/pyveil/releases"
|
|
66
|
+
|
|
67
|
+
[tool.setuptools]
|
|
68
|
+
packages = ["pyveil"]
|
|
69
|
+
|
|
70
|
+
[tool.setuptools.package-data]
|
|
71
|
+
pyveil = ["py.typed"]
|
|
72
|
+
|
|
73
|
+
[tool.pytest.ini_options]
|
|
74
|
+
testpaths = ["tests"]
|
|
75
|
+
python_files = ["test_*.py"]
|
|
76
|
+
python_classes = ["Test*"]
|
|
77
|
+
python_functions = ["test_*"]
|
|
78
|
+
addopts = [
|
|
79
|
+
"--verbose",
|
|
80
|
+
"--cov=pyveil",
|
|
81
|
+
"--cov-report=term-missing",
|
|
82
|
+
"--cov-report=html",
|
|
83
|
+
]
|
|
84
|
+
|
|
85
|
+
[tool.black]
|
|
86
|
+
line-length = 100
|
|
87
|
+
target-version = ["py38", "py39", "py310", "py311", "py312"]
|
|
88
|
+
include = '\.pyi?$'
|
|
89
|
+
extend-exclude = '''
|
|
90
|
+
/(
|
|
91
|
+
# directories
|
|
92
|
+
\.eggs
|
|
93
|
+
| \.git
|
|
94
|
+
| \.hg
|
|
95
|
+
| \.mypy_cache
|
|
96
|
+
| \.tox
|
|
97
|
+
| \.venv
|
|
98
|
+
| build
|
|
99
|
+
| dist
|
|
100
|
+
)/
|
|
101
|
+
'''
|
|
102
|
+
|
|
103
|
+
[tool.ruff]
|
|
104
|
+
line-length = 100
|
|
105
|
+
target-version = "py38"
|
|
106
|
+
select = [
|
|
107
|
+
"E", # pycodestyle errors
|
|
108
|
+
"W", # pycodestyle warnings
|
|
109
|
+
"F", # pyflakes
|
|
110
|
+
"I", # isort
|
|
111
|
+
"B", # flake8-bugbear
|
|
112
|
+
"C4", # flake8-comprehensions
|
|
113
|
+
"UP", # pyupgrade
|
|
114
|
+
]
|
|
115
|
+
ignore = [
|
|
116
|
+
"E501", # line too long, handled by black
|
|
117
|
+
"B008", # do not perform function calls in argument defaults
|
|
118
|
+
"C901", # too complex
|
|
119
|
+
]
|
|
120
|
+
|
|
121
|
+
[tool.ruff.per-file-ignores]
|
|
122
|
+
"__init__.py" = ["F401"]
|
|
123
|
+
|
|
124
|
+
[tool.mypy]
|
|
125
|
+
python_version = "3.8"
|
|
126
|
+
warn_return_any = true
|
|
127
|
+
warn_unused_configs = true
|
|
128
|
+
disallow_untyped_defs = true
|
|
129
|
+
disallow_incomplete_defs = true
|
|
130
|
+
check_untyped_defs = true
|
|
131
|
+
no_implicit_optional = true
|
|
132
|
+
warn_redundant_casts = true
|
|
133
|
+
warn_unused_ignores = true
|
|
134
|
+
warn_no_return = true
|
|
135
|
+
follow_imports = "normal"
|
|
136
|
+
strict_optional = true
|
|
137
|
+
|
|
138
|
+
[[tool.mypy.overrides]]
|
|
139
|
+
module = "tests.*"
|
|
140
|
+
disallow_untyped_defs = false
|
|
141
|
+
|
|
142
|
+
[tool.coverage.run]
|
|
143
|
+
source = ["pyveil"]
|
|
144
|
+
omit = [
|
|
145
|
+
"*/tests/*",
|
|
146
|
+
"*/test_*.py",
|
|
147
|
+
]
|
|
148
|
+
|
|
149
|
+
[tool.coverage.report]
|
|
150
|
+
exclude_lines = [
|
|
151
|
+
"pragma: no cover",
|
|
152
|
+
"def __repr__",
|
|
153
|
+
"raise AssertionError",
|
|
154
|
+
"raise NotImplementedError",
|
|
155
|
+
"if __name__ == .__main__.:",
|
|
156
|
+
"if TYPE_CHECKING:",
|
|
157
|
+
"class .*\\bProtocol\\):",
|
|
158
|
+
"@(abc\\.)?abstractmethod",
|
|
159
|
+
]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Core masking functionality for PII data."""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Pattern definitions for detecting various types of PII in text."""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Utility functions for the veil package."""
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyveil
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A Python library for masking sensitive data (PII) - emails, phones, names, and more
|
|
5
|
+
Author-email: Hyeon Sang Jeon <your.email@example.com>
|
|
6
|
+
Maintainer-email: Hyeon Sang Jeon <your.email@example.com>
|
|
7
|
+
License: MIT
|
|
8
|
+
Project-URL: Homepage, https://github.com/yourusername/pyveil
|
|
9
|
+
Project-URL: Documentation, https://github.com/yourusername/pyveil#readme
|
|
10
|
+
Project-URL: Repository, https://github.com/yourusername/pyveil
|
|
11
|
+
Project-URL: Issues, https://github.com/yourusername/pyveil/issues
|
|
12
|
+
Project-URL: Changelog, https://github.com/yourusername/pyveil/releases
|
|
13
|
+
Keywords: pii,privacy,masking,data-protection,security,anonymization,sensitive-data,gdpr,compliance
|
|
14
|
+
Classifier: Development Status :: 3 - Alpha
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
24
|
+
Classifier: Topic :: Security
|
|
25
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
26
|
+
Classifier: Topic :: Text Processing
|
|
27
|
+
Classifier: Typing :: Typed
|
|
28
|
+
Requires-Python: >=3.8
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: pytest>=7.0.0; extra == "dev"
|
|
33
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
|
|
34
|
+
Requires-Dist: black>=23.0.0; extra == "dev"
|
|
35
|
+
Requires-Dist: ruff>=0.1.0; extra == "dev"
|
|
36
|
+
Requires-Dist: mypy>=1.0.0; extra == "dev"
|
|
37
|
+
Provides-Extra: test
|
|
38
|
+
Requires-Dist: pytest>=7.0.0; extra == "test"
|
|
39
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == "test"
|
|
40
|
+
Dynamic: license-file
|
|
41
|
+
|
|
42
|
+
# pyveil 🎭
|
|
43
|
+
|
|
44
|
+
A Python library for masking sensitive data (PII) - emails, phones, names, and more
|
|
45
|
+
|
|
46
|
+
[](https://opensource.org/licenses/MIT)
|
|
47
|
+
[](https://www.python.org/downloads/)
|
|
48
|
+
|
|
49
|
+
## Overview
|
|
50
|
+
|
|
51
|
+
pyveil helps protect sensitive information by detecting and masking various types of personally identifiable information (PII) in text data. Whether you're handling logs, user data, or any text containing sensitive information, PyVeil provides flexible and easy-to-use tools to protect privacy.
|
|
52
|
+
|
|
53
|
+
## Features
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
CLAUDE.md
|
|
2
|
+
LICENSE
|
|
3
|
+
MANIFEST.in
|
|
4
|
+
README.md
|
|
5
|
+
pyproject.toml
|
|
6
|
+
setup.py
|
|
7
|
+
docs/README.md
|
|
8
|
+
examples/basic_usage.py
|
|
9
|
+
pyveil/__init__.py
|
|
10
|
+
pyveil/masker.py
|
|
11
|
+
pyveil/patterns.py
|
|
12
|
+
pyveil/utils.py
|
|
13
|
+
pyveil.egg-info/PKG-INFO
|
|
14
|
+
pyveil.egg-info/SOURCES.txt
|
|
15
|
+
pyveil.egg-info/dependency_links.txt
|
|
16
|
+
pyveil.egg-info/requires.txt
|
|
17
|
+
pyveil.egg-info/top_level.txt
|
|
18
|
+
tests/__init__.py
|
|
19
|
+
tests/test_masker.py
|
|
20
|
+
tests/test_patterns.py
|
|
21
|
+
tests/test_utils.py
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pyveil
|
pyveil-0.1.0/setup.cfg
ADDED
pyveil-0.1.0/setup.py
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Setup script for backward compatibility.
|
|
3
|
+
|
|
4
|
+
For modern installation, use pyproject.toml.
|
|
5
|
+
This file is kept for compatibility with older tools.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from setuptools import setup
|
|
9
|
+
|
|
10
|
+
# All configuration is in pyproject.toml
|
|
11
|
+
# This file is here for compatibility with tools that don't support PEP 621
|
|
12
|
+
setup()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for the veil package."""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for the masker module."""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for the patterns module."""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for the utils module."""
|