Skip to content

Commit 1e0ae04

Browse files
committed
v5.0.0 - Update README, setup.py, and add examples
1 parent dfdad4d commit 1e0ae04

File tree

14 files changed

+3355
-71
lines changed

14 files changed

+3355
-71
lines changed

.vscode/PythonImportHelper-v2-Completion.json

Lines changed: 1424 additions & 0 deletions
Large diffs are not rendered by default.

CHANGELOG.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [5.0.0] - 2025-07-02
9+
10+
### Added
11+
- **Complete Bitcoin Address Support**: Added support for all major Bitcoin address formats
12+
- P2PKH (Pay-to-Public-Key-Hash) - Legacy addresses starting with '1'
13+
- P2SH (Pay-to-Script-Hash) - Script addresses starting with '3'
14+
- P2WPKH (Pay-to-Witness-Public-Key-Hash) - SegWit addresses starting with 'bc1'
15+
- P2WSH (Pay-to-Witness-Script-Hash) - SegWit script addresses starting with 'bc1'
16+
- **New Bitcoin Class**: Professional Bitcoin wallet class with comprehensive functionality
17+
- **Wallet Generator**: Unified wallet generation for Bitcoin, Ethereum, and Tron
18+
- **Address Validation**: Comprehensive validation for all supported address types
19+
- **Bulk Operations**: Efficient bulk wallet generation capabilities
20+
- **Utility Functions**: Enhanced cryptographic utilities and helpers
21+
- **Type Hints**: Full type annotation support for better development experience
22+
- **Professional API**: Clean, intuitive interface with consistent naming
23+
- **Enhanced Security**: Cryptographically secure random key generation using `secrets` module
24+
25+
### Changed
26+
- **Version Bump**: Updated to 5.0.0 to reflect major new features
27+
- **Dependencies**: Updated minimum dependency versions for security
28+
- **Documentation**: Completely rewritten README with comprehensive examples
29+
- **Code Structure**: Organized code into logical modules (bitcoin.py, wallet.py, utils.py)
30+
31+
### Improved
32+
- **Performance**: Optimized address generation algorithms
33+
- **Security**: Enhanced input validation and error handling
34+
- **Maintainability**: Refactored codebase with better organization
35+
- **Testing**: Added comprehensive test suite
36+
- **Examples**: Added detailed usage examples
37+
38+
### Backward Compatibility
39+
- **Legacy Support**: All previous functions remain available and functional
40+
- **Import Compatibility**: Existing imports continue to work without modification
41+
- **API Stability**: No breaking changes to existing functionality
42+
43+
## [4.3.3] - Previous Release
44+
45+
### Features
46+
- Basic Bitcoin address generation (P2PKH only)
47+
- Ethereum address generation
48+
- Tron address generation
49+
- WIF (Wallet Import Format) support
50+
- Basic cryptographic utilities
51+
52+
---
53+
54+
## Migration Guide
55+
56+
### Upgrading from 4.x to 5.x
57+
58+
The library maintains full backward compatibility. Your existing code will continue to work without any changes.
59+
60+
#### New Features Available
61+
62+
```python
63+
# NEW: Bitcoin class with all address types
64+
from libit import Bitcoin
65+
wallet = Bitcoin("private_key_here")
66+
addresses = wallet.get_all_addresses()
67+
68+
# NEW: Wallet generator
69+
from libit import generate_bitcoin_wallet
70+
wallet = generate_bitcoin_wallet()
71+
72+
# NEW: Address validation
73+
from libit import AddressValidator
74+
validator = AddressValidator()
75+
result = validator.validate_any("address_here")
76+
77+
# OLD: Still works exactly the same
78+
from libit import privatekey_addr
79+
address = privatekey_addr("private_key_here")
80+
```
81+
82+
### What's Next
83+
84+
- HD Wallet support (BIP32/BIP44)
85+
- BIP39 mnemonic phrase support
86+
- QR code generation
87+
- Multi-signature support
88+
- Testnet support
89+
- Additional cryptocurrencies

LICENCE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Libit
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.

MANIFEST.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Manifest file for package data
2+
include README.md
3+
include LICENSE
4+
include examples.py
5+
include tests.py
6+
recursive-include libit *.py
7+
global-exclude __pycache__
8+
global-exclude *.py[co]

0 commit comments

Comments
 (0)