# Changelog

All notable changes to this project will be documented in this file.

### [4.5.7] - 2024-11-20
#### Added
- **Advanced Mathematical Functions**: Added a suite of advanced functions like `adv_gcd`, `adv_lcm`, `adv_prime_factors`, `adv_is_prime`, `adv_modular_exponentiation`, `adv_is_perfect_square`, `adv_fast_fourier_transform`, `adv_hash_string`, `adv_fast_modular_inverse`, `adv_fibonacci`, `adv_sieve_of_eratosthenes`, `adv_modular_square_root`, `adv_random_prime`, `adv_sum_of_squares`, `adv_calculate_modular_power`, `adv_combinations`, `adv_permutations`.
- **File Operations**: Added functions for advanced file handling such as `get_function_names_from_python_file`, `install_and_setup_nmap`, `check_file_existence`, `create_directory`, `download_file`, `get_file_size`, `get_file_last_modified`, `rename_file`, `delete_file`, `move_file`, `extract_zip`, `compress_files`, `get_url_status`, `fetch_url_content`, `download_files_from_urls`, `get_files_in_directory`, `count_lines_in_file`, `get_current_datetime`, `get_extension`, `get_file_name_without_extension`, `get_file_type`, `move_files_to_directory`.
- **String Operations**: Added new string operations like `str_reverse`, `str_to_upper`, `str_to_lower`, `str_is_palindrome`, `str_count_occurrences`, `str_is_alpha`, `str_is_digit`, `str_find_substring`, `str_replace_substring`, `str_split_words`, `str_strip_spaces`, `str_startswith`, `str_endswith`, `str_isalnum`, `str_isdigit`, `str_title_case`, `str_concat`, `str_join`.
- **List Operations**: Added advanced list manipulation functions like `list_append_item`, `list_remove_item`, `list_insert_item`, `list_pop_item`, `list_find_index`, `list_contains_item`, `list_sort`, `list_reverse`, `list_clear`, `list_copy`, `list_extend`, `list_count`, `list_min`, `list_max`, `list_sum`, `list_mean`, `list_unique`, `list_combine`, `list_difference`, `list_intersection`, `list_is_empty`.
- **Dictionary Operations**: Added enhanced dictionary operations such as `dict_add_key_value`, `dict_remove_key`, `dict_get_value`, `dict_update_value`, `dict_contains_key`, `dict_get_all_keys`, `dict_get_all_values`, `dict_clear`, `dict_copy`, `dict_items`, `dict_pop_item`, `dict_update`, `dict_setdefault`, `dict_fromkeys`, `dict_get_key_with_max_value`, `dict_get_key_with_min_value`.
- **Advanced System Utilities**: New utilities for system tasks, including advanced file and system interactions.
- **Advanced MySQL**: Added `mysql_execute_advanced_mode` for optimized database query handling.

#### Changed
- **Enhanced Performance**: Optimized mathematical and system utility functions for better performance.
- **File Handling**: Improved file extraction, compression, and download capabilities with error handling and added optimizations.
- **System Utilities**: Enhanced features for managing system processes, checking file types, and system info retrieval.

#### Fixed
- **Bug Fixes**: Fixed several issues related to file handling, string operations, and database interactions.
- **Error Handling**: Improved error handling for file operations, network requests, and system commands.

### [4.2.1] - 2024-11-18
#### Added
- **New Nmap Functions**: Added multiple Nmap scanning options for vulnerability assessments.
- **SQLMap Integration**: Expanded SQL injection testing functionalities.
- **Enhanced System Utilities**: New features to execute system commands and retrieve system information.
- **Improved File Handling**: Enhanced operations for various file types.
- **XAMPP Functions**: Added functions for managing XAMPP MySQL and Apache services, and checking PHPMyAdmin accessibility.
- **System Utilities**: Added support for checking Python interpreter path and processor details.

#### Changed
- **General Improvements**: Optimized performance and stability across the module.

#### Fixed
- **Bug Fixes**: Enhanced error handling across file operations and database interactions.

### [3.0.2] - 2024-11-14
#### Added
- Improved XAMPP MySQL Functions.
- Improved MySQL database management functions.
- Enhanced CSV, text, and binary file handling.
- Added support for checking Python interpreter path and processor details.
- Introduced functions for managing XAMPP MySQL and Apache services.

#### Fixed
- Enhanced error handling for file operations and MySQL interactions.

#### Changed
- Updated functions to support the latest MySQL and file management enhancements.

### [2.7.5] - 2024-11-15
#### Added
- Expanded functionality to support CSV and binary file handling, including reading, writing, and checking file types.
- Additional enhancements in error handling for new file handling features.
- Updated documentation to reflect the latest changes.

### [2.7.2] - 2024-11-15
#### Added
- Added pytest and tox for testing.

### [2.6.1] - 2024-11-15
#### Added
- Documentation website.

### [2.6.0] - 2024-11-14
#### Added
- Expanded mathematical functions for prime numbers, Armstrong numbers, and Niven numbers.
- Enhanced text file handling: added functions to copy contents between files, add lines, and read specific lines.
- System utilities to fetch information such as CPU count, operating system details, Python interpreter path, and network connectivity status.
- New MySQL functions for managing and interacting with databases and tables with improved error handling.
- Time management functions: Added functions to get process time, thread time, and monotonic time.

#### Fixed
- Improved error handling for file operations and MySQL interactions.
- Fixed issues with incorrect data type handling in certain mathematical functions.

### [2.5.8]
#### Added
- Error correction methods for better handling.
- Support for returning `False` based on data type validity.

### [2.5.6]
#### Added
- Added Git support.
