Skip to content

Release 0.1.9#9

Merged
wachawo merged 3 commits intowachawo:mainfrom
lancalc:main
Aug 19, 2025
Merged

Release 0.1.9#9
wachawo merged 3 commits intowachawo:mainfrom
lancalc:main

Conversation

@wachawo
Copy link
Owner

@wachawo wachawo commented Aug 19, 2025

No description provided.

wachawo and others added 2 commits August 19, 2025 02:07
* Refactor project structure and enhance CLI functionality

* Enhance CIDR detection across platforms and improve IP validation in GUI

* Update README.md

* Refactor network functionality by introducing adapters for IP detection and CIDR handling

* Update README.md

* Add skipping GUI tests in CI without DISPLAY

* Add skipping GUI tests in CI without DISPLAY

* Fix CI tests

* Fix CI tests
@wachawo wachawo self-assigned this Aug 19, 2025
@wachawo wachawo requested a review from Copilot August 19, 2025 01:49
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements release 0.1.9 with a significant architectural refactoring of LanCalc. The primary focus is on modularizing the codebase into distinct CLI and GUI components while adding external IP detection capabilities.

Key changes include:

  • Modular architecture separating core logic, CLI, GUI, and external adapters
  • Added external IP detection with new -e/--external CLI flag
  • Refactored package structure with optional GUI dependencies

Reviewed Changes

Copilot reviewed 15 out of 16 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test_lancalc.py Updated test structure to work with new modular architecture and added network interface detection tests
pytest.ini Added qt_api marker configuration for PyQt5 tests
pyproject.toml Updated dependencies to make PyQt5 required and added nogui optional dependency group
lancalc/main.py Converted to adaptive launcher that detects environment and chooses CLI/GUI mode
lancalc/gui.py New module containing GUI functionality extracted from main.py
lancalc/core.py New module with pure business logic for network calculations
lancalc/cli.py New module handling command-line interface with external IP support
lancalc/adapters.py New module for external system interactions and network detection
lancalc/main.py Added module entry point for python -m lancalc usage
lancalc/init.py Updated to export new modular structure

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@wachawo wachawo merged commit d027250 into wachawo:main Aug 19, 2025
12 checks passed
wachawo added a commit that referenced this pull request Nov 3, 2025
* Refactor project structure and enhance CLI functionality

* Enhance CIDR detection across platforms and improve IP validation in GUI

* Update README.md

* Refactor network functionality by introducing adapters for IP detection and CIDR handling

* Update README.md

* Add skipping GUI tests in CI without DISPLAY

* Add skipping GUI tests in CI without DISPLAY

* Fix CI tests

* Fix CI tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants