Releases: smkrv/mikrotik-domain-filter-script
v1.0.6
Version 1.0.6 Release Notes:
Improvements:
- Enhanced and upgraded filtration mechanisms
Full Changelog: v1.0.5...v1.0.6
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
v1.0.5
Version 1.0.5 Release Notes:
Improvements:
- Enhanced MD5 source validation for more reliable change detection
- Upgraded filtration mechanisms
- Fixed ShellCheck errors
Full Changelog: v1.0.4...v1.0.5
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
v1.0.4
Version 1.0.4 Release Notes:
Improvements:
- Improved Clash list filtering
Full Changelog: v1.0.3...v1.0.4
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
v1.0.3
Version 1.0.3 Release Notes:
Improvements:
- Improved Clash list filtering
- Improved domain processing
- Improved whitelist handling
- Enhanced MD5 source validation for more reliable change detection
- Upgraded logging mechanisms
Full Changelog: v1.0.2...v1.0.3
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
v1.0.2
Version 1.0.2 Release Notes:
BREAKING CHANGES:
- Removed external gist update scripts (
update_gist.sh
andupdate_gist_special.sh
) - Added direct GitHub Gist API integration
Features:
- Added built-in GitHub Gist update functionality
- Added support for environment variables via .env file
- Added new configuration options for GitHub Gist integration:
EXPORT_GISTS
- enables/disables Gist updates (default:false
)GITHUB_TOKEN
- GitHub Personal Access TokenGIST_ID_MAIN
- Gist ID for main domain listGIST_ID_SPECIAL
- Gist ID for special domain list
Improvements:
- Reduced dependencies by removing external scripts
- Added proper error handling for Gist updates
- Added detailed logging for Gist operations
- Added support for both hardcoded and environment variables
- Improved security by supporting
.env
file for sensitive data
Configuration:
Variables can be set either in .env
file or as environment variables:
EXPORT_GISTS=true
GITHUB_TOKEN="your-github-token"
GIST_ID_MAIN="your-main-gist-id"
GIST_ID_SPECIAL="your-special-gist-id"
Technical details:
- All changes comply with ShellCheck
- Maintains existing code style and logging format
- Added proper error handling and validation
- Improved security by supporting environment variables
- Added checks for required additional tools (
jq
)
Migration guide:
- Remove external
update_gist.sh
andupdate_gist_special.sh
scripts - Create
.env
file with required GitHub configuration - Set
EXPORT_GISTS=true
to enable Gist updates - Ensure
curl
andjq
are installed
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
Full Changelog: v1.0.1...v1.0.2
v1.0.1
Version 1.0.1 Release Notes:
Major Changes:
1. process_domains()
Function Improvements:
- Enhanced domain processing logic
- Fixed ShellCheck compliance issues
- Added proper validation checks
2. File Handling Enhancement:
- Added file existence checks in
apply_whitelist()
andload_lists()
functions - Implemented proper error messages for missing files
- Added script termination on critical errors
3. Error Handling Improvements:
- Added comprehensive error messages
- Implemented graceful exit on failures
- Improved script reliability
4. Technical Improvements:
- Added input validation
- Enhanced error reporting
- Fixed ShellCheck warnings
- Improved code documentation
These changes make the script more robust and reliable by preventing errors
related to missing files and improving overall error handling.
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS script tested on ROS 6.17 Stable and ROS 7.17 Stable
Benchmarking:
Environment: Amazon Lightsail (512 MB RAM, 2 vCPUs, 20 GB SSD, Debian 12.8)
Processing: 86K domains + 12K whitelist + 2.7K special → 1,970 unique (main) + 431 unique (special)
Performance: 24 min processing time, 42% peak CPU
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
Full Changelog: v1.0.0...v1.0.1
Version 1.0.0
Version 1.0.0 — Initial Release
Testing Environment:
- Bash scripts validated on Ubuntu 22.04 and Debian 12
- Mikrotik RouterOS scripts tested on ROS 6.17 Stable and ROS 7.17 Stable
- Performance verified with input lists up to 100K domains and output lists up to 5K domains
Production Status:
- This is a production-ready version, but please proceed with caution! 🚀
Important Notes:
- Before deploying to production, test thoroughly with a smaller dataset in your environment
- Always maintain proper backups before making any changes
- While the code is production-ready, you're using it at your own risk
Support Policy: Please note that this is a community project - the author doesn't provide individual support or consulting. Feel free to modify the code according to the license terms, but make sure to test your changes thoroughly.
Remember: Test first, backup always, deploy confidently! 🛡️