Tags: DefinetlyNotAI/Logicytics
Tags
Bug fixes and v3.3.0 (#176) ## Pull Request Template ### Prerequisites <!-- Take a couple of minutes to help our maintainers work faster by checking of the pre-requisites. --> <!-- To tick the checkboxes replace the space with an 'x', so [ ] becomes [x] . --> - [x] I have [searched](https://github.com/DefinetlyNotAI/Logicytics/pulls) for duplicate or closed issues. - [x] I have read the [contributing guidelines](https://github.com/DefinetlyNotAI/Logicytics/blob/main/CONTRIBUTING.md). - [x] I have followed the instructions in the [wiki](https://github.com/DefinetlyNotAI/Logicytics/wiki) about contributions. - [x] I have updated the documentation accordingly, if required. - [x] I have tested my code with the `--dev` flag, if required. ### PR Type <!-- Take a couple of minutes to help our maintainers work faster by telling us what is the PR guided on. --> <!-- To tick the checkboxes replace the space with an 'x', so [ ] becomes [x] . --> - [x] Bug fix <!-- Non-Breaking Bug Fix - Usually relates to fixing an issue --> - [x] Deprecation Change <!-- Removing a deprecation --> - [x] New feature <!-- Non-Breaking Change that adds a new feature --> - [x] Refactoring <!-- Non-Breaking Change that modifies existing code to refactor it to become more organised --> - [x] Documentation update <!-- Non-Breaking Change that modifies existing documentation to refactor it or add extra comments - either wiki, md files or code is included here --> - [x]⚠️ Breaking change⚠️ <!-- Breaking Bug Fix / New Addition that changes how Logicytics works --> ### Description <!-- REQUIRED: Provide a summary of the PR and what you expected to happen. --> <!-- Made by copilot --> This pull request includes significant changes to the `Logicytics` project, focusing on code refactoring, logging improvements, and the removal of deprecated features. The most important changes include the refactoring of flag handling, the addition of detailed logging, and the cleanup of deprecated features. #### Code Refactoring and Improvements: * [`CODE/Logicytics.py`](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L78-R87): Refactored `get_flags` function to simplify flag retrieval and logging. Removed deprecated features `extra` and `unzip_extra` from `handle_special_actions`. Added the `Logicytics` main function to encapsulate the main process logic. [[1]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L78-R87) [[2]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L138-L145) [[3]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L176-L183) [[4]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L370-R359) [[5]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0R373-R376) #### Logging Enhancements: * [`CODE/_debug.py`](diffhunk://#diff-cddd7a4c003554a2fce729e954458aa39d397bf2910c94cdd093f39747848061R181-R188): Added detailed logging to `python_version` and `debug` functions. [[1]](diffhunk://#diff-cddd7a4c003554a2fce729e954458aa39d397bf2910c94cdd093f39747848061R181-R188) [[2]](diffhunk://#diff-cddd7a4c003554a2fce729e954458aa39d397bf2910c94cdd093f39747848061R222) * [`CODE/_dev.py`](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L50-R51): Enhanced `_prompt_user` function with more user-friendly prompts and added logging to `dev_checks` function. [[1]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L50-R51) [[2]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09R65) [[3]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L90-R106) [[4]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L127-R133) * [`CODE/bluetooth_details.py`](diffhunk://#diff-d15430c77b28ebd438edeec503e4666192dd9e256cc386ebcdc6a5012b398d59L1-R12): Improved logging in `get_bluetooth_device_details` and `_query_bluetooth_devices`. [[1]](diffhunk://#diff-d15430c77b28ebd438edeec503e4666192dd9e256cc386ebcdc6a5012b398d59L1-R12) [[2]](diffhunk://#diff-d15430c77b28ebd438edeec503e4666192dd9e256cc386ebcdc6a5012b398d59L30-R39) [[3]](diffhunk://#diff-d15430c77b28ebd438edeec503e4666192dd9e256cc386ebcdc6a5012b398d59L52-R74) [[4]](diffhunk://#diff-d15430c77b28ebd438edeec503e4666192dd9e256cc386ebcdc6a5012b398d59L97) * [`CODE/bluetooth_logger.py`](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aL1-R4): Added detailed logging and documentation to functions `save_to_file`, `run_powershell_command`, `parse_output`, `get_paired_bluetooth_devices`, and `log_bluetooth`. [[1]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aL1-R4) [[2]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aL12-R23) [[3]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aL24-R47) [[4]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aL38-R95) [[5]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aR117-R128) [[6]](diffhunk://#diff-1876b6113c2e2b1d8fa0dfe09ab9a1b20d3fb52852256fd0bbdd1f8bfc9ce27aR143-R149) #### Deprecated Feature Removal: * [`CODE/Logicytics.py`](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L138-L145): Removed deprecated features `extra` and `unzip_extra` from `handle_special_actions`. [[1]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L138-L145) [[2]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0L176-L183) #### Miscellaneous Changes: * [`.github/ISSUE_TEMPLATE/bug_report.yml`](diffhunk://#diff-637f7b97bba458badb691a1557c3d4648686292e948dbe3e8360564378b653efL47-R49): Renamed `flags` to `flags_list` for consistency. * [`CODE/_dev.py`](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L3-R6): Reorganized imports and added `EXCLUDE_FILES` to `dev_checks` function. [[1]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L3-R6) [[2]](diffhunk://#diff-8789fb31b28e15638e2117ffc4916c7d17b62b207559877dce4b69ffcfcfaa09L90-R106) * [`CODE/cmd_commands.py`](diffhunk://#diff-7422c369c3c1828e52aa953e050cf03d003b07f6f0a244908eb117002bbc4be1R30): Added `__main__` check to execute commands. These changes aim to enhance code readability, improve logging for debugging purposes, and remove outdated features to maintain code quality. ### Motivation and Context <!-- REQUIRED: Why is this PR required? What problem does it solve? Why do you want to do it? --> To move in version 3.3.0 and fix many bugs and improve Logicytics ### Credit <!-- If this PR is a contribution, please mention the contributors here using the appropriate syntax. --> <!-- ### File-Created/CONTRIBUTION by MAIN-Username What you did, created, removed, refactored, fixed, or discovered. - [Your GitHub Username](https://github.com/YourGitHubLink) - [Your GitHub Username](https://github.com/YourGitHubLink) etc... --> _N/A_ ### Issues Fixed <!-- REQUIRED: What issues will be fixed? (Format: "#50, #23" etc.) if none exist type _N/A_ --> _N/A_ <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes for Logicytics v3.3.0 ### New Features - Enhanced flag suggestion system with historical data tracking. - Improved Bluetooth data collection and logging. - Added support for more file types in sensitive data mining. - Expanded system information and memory snapshot capabilities. - New configuration options for user preferences and accuracy settings. - Added a new XML configuration file for CSV file handling. ### Improvements - Refined error handling across multiple modules. - Enhanced logging and debugging mechanisms. - Updated configuration management. - Improved thread-based execution for certain operations. - Streamlined control flow to prevent unintended execution during imports. ### Bug Fixes - Resolved issues with file parsing and system checks. - Improved compatibility with various system configurations. ### Dependency Updates - Added `sentence-transformers` for advanced flag suggestions. - Added `WMI` for improved Windows system interactions. - Restored `scapy` package. - Removed `transformers` and `pathlib` packages. ### Security - Updated supported version statuses. - Enhanced logging for better tracking and debugging. ### Deprecations - Removed some deprecated actions and methods. - Streamlined code structure for better maintainability. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
V3.2 features and deprecation (#172) ## Pull Request Template ### Prerequisites <!-- Take a couple of minutes to help our maintainers work faster by checking of the pre-requisites. --> <!-- To tick the checkboxes replace the space with an 'x', so [ ] becomes [x] . --> - [x] I have [searched](https://github.com/DefinetlyNotAI/Logicytics/pulls) for duplicate or closed issues. - [x] I have read the [contributing guidelines](https://github.com/DefinetlyNotAI/Logicytics/blob/main/CONTRIBUTING.md). - [x] I have followed the instructions in the [wiki](https://github.com/DefinetlyNotAI/Logicytics/wiki) about contributions. - [x] I have updated the documentation accordingly, if required. - [x] I have tested my code with the `--dev` flag, if required. ### PR Type <!-- Take a couple of minutes to help our maintainers work faster by telling us what is the PR guided on. --> <!-- To tick the checkboxes replace the space with an 'x', so [ ] becomes [x] . --> - [ ] Bug fix <!-- Non-Breaking Bug Fix - Usually relates to fixing an issue --> - [x] Deprecation Change <!-- Removing a deprecation --> - [ ] New feature <!-- Non-Breaking Change that adds a new feature --> - [ ] Refactoring <!-- Non-Breaking Change that modifies existing code to refactor it to become more organised --> - [ ] Documentation update <!-- Non-Breaking Change that modifies existing documentation to refactor it or add extra comments - either wiki, md files or code is included here --> - [ ]⚠️ Breaking change⚠️ <!-- Breaking Bug Fix / New Addition that changes how Logicytics works --> ### Description This pull request includes several changes to deprecate outdated features, improve code organization, and update documentation. The most important changes include deprecating the `extra` and `unzip-extra` features, updating the `VulnScan` documentation, and removing the `_extra.py` file. #### Deprecation of outdated features: * [`CODE/Logicytics.py`](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0R138-R147): Deprecated the `extra` and `unzip-extra` features and added warnings for their usage. [[1]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0R138-R147) [[2]](diffhunk://#diff-44a988332704ab86171610dcfe391d08df0f70f8177c3463e6e089aec9c5baa0R179-R186) * [`CODE/logicytics/Flag.py`](diffhunk://#diff-28c69e4247379f685aaf5eb5f582b0641d3247f99db1730a04e10170f6f2497dL134-L148): Moved the `--extra` and `--unzip-extra` flags to a deprecated section and added a method to display the help menu. [[1]](diffhunk://#diff-28c69e4247379f685aaf5eb5f582b0641d3247f99db1730a04e10170f6f2497dL134-L148) [[2]](diffhunk://#diff-28c69e4247379f685aaf5eb5f582b0641d3247f99db1730a04e10170f6f2497dR171-R186) [[3]](diffhunk://#diff-28c69e4247379f685aaf5eb5f582b0641d3247f99db1730a04e10170f6f2497dR277-R284) #### Documentation updates: * [`CODE/VulnScan/README.md`](diffhunk://#diff-334cc7dff881eaa0e3d249719b5478f9970bcd2b865157abc058c0c88f50389aR3-R8): Added a warning about the upcoming move of `VulnScan` to a different repository. #### Code organization: * [`CODE/VulnScan/v3/_generate_data.py`](diffhunk://#diff-954f866569d6c0606ee08ff8d601030d0224e2190aa90761c7b1bed0099082c5R3-R10): Reorganized imports and added a deprecation warning for the `SenseMacro` feature. [[1]](diffhunk://#diff-954f866569d6c0606ee08ff8d601030d0224e2190aa90761c7b1bed0099082c5R3-R10) [[2]](diffhunk://#diff-954f866569d6c0606ee08ff8d601030d0224e2190aa90761c7b1bed0099082c5R188-R192) [[3]](diffhunk://#diff-954f866569d6c0606ee08ff8d601030d0224e2190aa90761c7b1bed0099082c5L195-L200) #### Removal of deprecated files: * [`CODE/_extra.py`](diffhunk://#diff-31b299e38dccd5bfbb4c369ed2336200d55bc112b5d0e46ee7f0e6ad33f2bbccL1-L58): Removed the `_extra.py` file as part of the deprecation process. ### Motivation and Context Removal of many deprecated functions, to reorganise Logicytics ### Credit <!-- If this PR is a contribution, please mention the contributors here using the appropriate syntax. --> <!-- ### File-Created/CONTRIBUTION by MAIN-Username What you did, created, removed, refactored, fixed, or discovered. - [Your GitHub Username](https://github.com/YourGitHubLink) - [Your GitHub Username](https://github.com/YourGitHubLink) etc... --> _N/A_ ### Issues Fixed <!-- REQUIRED: What issues will be fixed? (Format: "#50, #23" etc.) if none exist type _N/A_ --> _N/A_ <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added a checkbox option for "Deprecation Change" in the pull request template. - Introduced a new static method to display the help menu in the Flag class. - **Bug Fixes** - Enhanced error handling for deprecated features and improved logging during script execution. - **Documentation** - Updated VulnScan documentation to include a warning about migration to a different repository. - Made textual and structural improvements in the README.md for clarity. - **Chores** - Removed deprecated files and tasks from the project. - Updated version number in the configuration file. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Quick fix (#171) Removed the fuzzers, dunno why i thought it was a good idea to add them <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Chores** - Removed multiple GitHub Actions workflows related to ClusterFuzzLite, including batch fuzzing, continuous builds, and cron tasks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Update matplotlib requirement from ~=3.8.4 to ~=3.10.0 (#163) Updates the requirements on [matplotlib](https://github.com/matplotlib/matplotlib) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/matplotlib/matplotlib/releases">matplotlib's releases</a>.</em></p> <blockquote> <h2>REL: v3.10.0</h2> <p>Highlights of this release include:</p> <pre><code>- Preliminary support for free-threaded CPython 3.13 - Standard getters/setters for axis inversion state - New more-accessible color cycle - Dark-mode diverging colormaps - Exception handling control - InsetIndicator artist - FillBetweenPolyCollection - Fill between 3D lines - Data in 3D plots can now be dynamically clipped to the axes view limits - Rotating 3d plots with the mouse - Increased Figure limits with Agg renderer - Subfigures no longer provisional - Subfigures are now added in row-major order </code></pre> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/matplotlib/matplotlib/commit/8d64f03a1f501ba0019279bf2f8db3930d1fe33f"><code>8d64f03</code></a> REL: v3.10.0 release</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/d9dfee852191caaf0b12d14c9a387edebc5ef8e6"><code>d9dfee8</code></a> [doc] Fix dead links</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/87a603f17843eabfb4b24016adb016481a1e7f5c"><code>87a603f</code></a> Update release notes for 3.10.0</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/cdecf97555a269c19dc9487860eb7c3ad900861b"><code>cdecf97</code></a> Update github stats for 3.10</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/b8d19bdc9020e2321ceeeacbed4ea86bdb16193e"><code>b8d19bd</code></a> Merge pull request <a href="https://redirect.github.com/matplotlib/matplotlib/issues/29306">#29306</a> from meeseeksmachine/auto-backport-of-pr-29242-on-v...</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/a42d0eda5649da865361e88ad18776909f981e9d"><code>a42d0ed</code></a> Backport PR <a href="https://redirect.github.com/matplotlib/matplotlib/issues/29242">#29242</a>: DOC: Add kwdoc list to scatter() docstring</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/190064044a989e57cf76381f283972d7af7400ca"><code>1900640</code></a> Merge pull request <a href="https://redirect.github.com/matplotlib/matplotlib/issues/29299">#29299</a> from QuLogic/merge-v39x</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/815389c35d03a87409684f07d3df7c29fb76283d"><code>815389c</code></a> Merge branch 'v3.9.x' into v3.10.x</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/73873c072a610a16703980d803be11e144e29e24"><code>73873c0</code></a> DOC: Create release notes for 3.9.4</li> <li><a href="https://github.com/matplotlib/matplotlib/commit/9d17a2bd1013d1f4446c321f3d866206d7972b31"><code>9d17a2b</code></a> DOC: Add Zenodo DOI for 3.9.4</li> <li>Additional commits viewable in <a href="https://github.com/matplotlib/matplotlib/compare/v3.8.4...v3.10.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
PreviousNext