zipmind-cli 0.1.0__tar.gz → 0.1.1__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.
@@ -0,0 +1,13 @@
1
+ Metadata-Version: 2.4
2
+ Name: zipmind-cli
3
+ Version: 0.1.1
4
+ Summary: A CLI tool to clean unwanted folders from zip files
5
+ Author: Senuda Dilvan
6
+ Requires-Python: >=3.8
7
+ License-File: LICENSE
8
+ Provides-Extra: dev
9
+ Requires-Dist: pytest; extra == "dev"
10
+ Requires-Dist: flake8; extra == "dev"
11
+ Requires-Dist: build; extra == "dev"
12
+ Requires-Dist: twine; extra == "dev"
13
+ Dynamic: license-file
@@ -1,7 +1,9 @@
1
1
  # Zip Cleaner 🧹
2
2
 
3
3
  [![Python Version](https://img.shields.io/badge/python-3.8%2B-blue.svg)](https://www.python.org/)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
5
+ [![PyPI Version](https://img.shields.io/pypi/v/zipmind-cli.svg)](https://pypi.org/project/zipmind-cli/)
6
+ [![CI](https://github.com/senuda-d/dev-archive-cleaner/workflows/CI/badge.svg)](https://github.com/senuda-d/dev-archive-cleaner/actions)
5
7
 
6
8
  A lightweight and efficient CLI tool to clean unwanted folders and files from ZIP archives. Perfect for removing build artifacts, temporary folders, or sensitive data before sharing your zip files.
7
9
 
@@ -14,11 +16,19 @@ A lightweight and efficient CLI tool to clean unwanted folders and files from ZI
14
16
 
15
17
  ## 🚀 Installation
16
18
 
17
- You can install Zip Cleaner directly from the source:
19
+ You can install **Zip Cleaner** directly from PyPI:
18
20
 
19
21
  ```bash
20
- git clone https://github.com/senuda-d/zip-cleaner.git
21
- cd zip-cleaner
22
+ pip install zipmind-cli
23
+ ```
24
+
25
+ ### Installation from Source
26
+
27
+ If you prefer to install from source:
28
+
29
+ ```bash
30
+ git clone https://github.com/senuda-d/dev-archive-cleaner.git
31
+ cd dev-archive-cleaner
22
32
  pip install .
23
33
  ```
24
34
 
@@ -30,12 +40,42 @@ Once installed, you can use the `zip-cleaner` command:
30
40
  zip-cleaner <zip_file> --remove <folder1> <folder2> ... [--output <output_file>]
31
41
  ```
32
42
 
43
+ ### 💡 Alternative Usage
44
+ If `zip-cleaner` is not recognized (due to PATH issues), you can run it using:
45
+ ```bash
46
+ python -m zip_cleaner <zip_file> --remove <folder1> <folder2> ...
47
+ ```
48
+
33
49
  ### Options:
34
50
 
35
51
  - `zipfile`: Path to the zip file you want to clean.
36
52
  - `--remove`: One or more folder/file patterns to remove (required).
37
53
  - `--output`: Name of the output zip file (default: `cleaned.zip`).
38
54
 
55
+ ### View Help
56
+
57
+ To see all available options, run:
58
+
59
+ ```bash
60
+ zip-cleaner --help
61
+ ```
62
+
63
+ **Output:**
64
+ ```text
65
+ usage: zip-cleaner [-h] --remove REMOVE [REMOVE ...] [--output OUTPUT] zipfile
66
+
67
+ Clean unwanted folders from zip files
68
+
69
+ positional arguments:
70
+ zipfile Path to the zip file
71
+
72
+ options:
73
+ -h, --help show this help message and exit
74
+ --remove REMOVE [REMOVE ...]
75
+ Folders to remove
76
+ --output OUTPUT Output zip file name
77
+ ```
78
+
39
79
  ### Examples
40
80
 
41
81
  **Remove a single folder:**
@@ -77,9 +117,14 @@ Contributions are welcome! Please feel free to submit a Pull Request.
77
117
  4. Push to the Branch (`git push origin feature/AmazingFeature`)
78
118
  5. Open a Pull Request
79
119
 
120
+ ## 👤 Author
121
+ **Senuda Dilvan**
122
+ - GitHub: [@senuda-d](https://github.com/senuda-d)
123
+ - PyPI: [zipmind-cli](https://pypi.org/project/zipmind-cli/)
124
+
80
125
  ## 📄 License
81
126
 
82
- Distributed under the MIT License. See `LICENSE` for more information.
127
+ Distributed under the MIT License. See [LICENSE](LICENSE) for more information.
83
128
 
84
129
  ---
85
- Created with ❤️ by [Senuda Dilvan](https://github.com/senuda-d)
130
+
@@ -0,0 +1,19 @@
1
+ [project]
2
+ name = "zipmind-cli"
3
+ version = "0.1.1"
4
+ description = "A CLI tool to clean unwanted folders from zip files"
5
+ authors = [
6
+ {name = "Senuda Dilvan"}
7
+ ]
8
+ requires-python = ">=3.8"
9
+
10
+ [project.scripts]
11
+ zip-cleaner = "zip_cleaner.cli:main"
12
+
13
+ [project.optional-dependencies]
14
+ dev = [
15
+ "pytest",
16
+ "flake8",
17
+ "build",
18
+ "twine"
19
+ ]
@@ -0,0 +1,29 @@
1
+ import pytest
2
+ from zip_cleaner.filter import filter_files
3
+
4
+ def test_filter_files_single_folder():
5
+ files = ["main.py", "node_modules/index.js", "src/app.py"]
6
+ remove = ["node_modules"]
7
+ result = filter_files(files, remove)
8
+ assert result == ["main.py", "src/app.py"]
9
+
10
+ def test_filter_files_multiple_folders():
11
+ files = [
12
+ "main.py",
13
+ "node_modules/index.js",
14
+ ".git/config",
15
+ "src/app.py",
16
+ "venv/bin/python"
17
+ ]
18
+ remove = ["node_modules", ".git", "venv"]
19
+ result = filter_files(files, remove)
20
+ assert result == ["main.py", "src/app.py"]
21
+
22
+ def test_filter_files_no_match():
23
+ files = ["main.py", "src/app.py"]
24
+ remove = ["node_modules"]
25
+ result = filter_files(files, remove)
26
+ assert result == ["main.py", "src/app.py"]
27
+
28
+ def test_filter_files_empty_list():
29
+ assert filter_files([], ["node_modules"]) == []
@@ -0,0 +1,4 @@
1
+ from zip_cleaner.cli import main
2
+
3
+ if __name__ == "__main__":
4
+ main()
@@ -0,0 +1,13 @@
1
+ Metadata-Version: 2.4
2
+ Name: zipmind-cli
3
+ Version: 0.1.1
4
+ Summary: A CLI tool to clean unwanted folders from zip files
5
+ Author: Senuda Dilvan
6
+ Requires-Python: >=3.8
7
+ License-File: LICENSE
8
+ Provides-Extra: dev
9
+ Requires-Dist: pytest; extra == "dev"
10
+ Requires-Dist: flake8; extra == "dev"
11
+ Requires-Dist: build; extra == "dev"
12
+ Requires-Dist: twine; extra == "dev"
13
+ Dynamic: license-file
@@ -1,7 +1,9 @@
1
1
  LICENSE
2
2
  README.md
3
3
  pyproject.toml
4
+ tests/test_filter.py
4
5
  zip_cleaner/__init__.py
6
+ zip_cleaner/__main__.py
5
7
  zip_cleaner/cli.py
6
8
  zip_cleaner/filter.py
7
9
  zip_cleaner/reader.py
@@ -10,4 +12,5 @@ zipmind_cli.egg-info/PKG-INFO
10
12
  zipmind_cli.egg-info/SOURCES.txt
11
13
  zipmind_cli.egg-info/dependency_links.txt
12
14
  zipmind_cli.egg-info/entry_points.txt
15
+ zipmind_cli.egg-info/requires.txt
13
16
  zipmind_cli.egg-info/top_level.txt
@@ -0,0 +1,6 @@
1
+
2
+ [dev]
3
+ pytest
4
+ flake8
5
+ build
6
+ twine
@@ -1,8 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: zipmind-cli
3
- Version: 0.1.0
4
- Summary: A CLI tool to clean unwanted folders from zip files
5
- Author: Your Name
6
- Requires-Python: >=3.8
7
- License-File: LICENSE
8
- Dynamic: license-file
@@ -1,11 +0,0 @@
1
- [project]
2
- name = "zipmind-cli"
3
- version = "0.1.0"
4
- description = "A CLI tool to clean unwanted folders from zip files"
5
- authors = [
6
- {name = "Your Name"}
7
- ]
8
- requires-python = ">=3.8"
9
-
10
- [project.scripts]
11
- zip-cleaner = "zip_cleaner.cli:main"
@@ -1,8 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: zipmind-cli
3
- Version: 0.1.0
4
- Summary: A CLI tool to clean unwanted folders from zip files
5
- Author: Your Name
6
- Requires-Python: >=3.8
7
- License-File: LICENSE
8
- Dynamic: license-file
File without changes
File without changes