Repository navigation
Releases: OSN-Development/osn-system-utils
Release list
osn-system-utils v0.0.4
Requirement update
osn-system-utils v0.0.3
osn_system_utils v0.0.2
osn_system_utils v0.0.2 - Refined API, Advanced Process Management, and Enhanced Network Discovery
Version 0.0.2 marks a significant step forward for the library, evolving from a collection of system wrappers into a structured, high-level API for system and network management. This release introduces a powerful process filtering engine, renames the package for better consistency, and refines network port discovery strategies.
Key Improvements in v0.0.2:
- New Process Management API: A comprehensive suite of tools has been added in
osn_system_utils.api.process. You can now check for process existence by PID or name, terminate process trees cross-platform, and retrieve detailed process information using a structured table format. - Advanced Filtering & Nested Lookups: The new
get_process_tablefunction supports sophisticated filtering. You can filter processes using regex, equality, or numerical ranges (above, under, between) even for nested attributes (e.g.,memory_info.rss) using dot-notation paths. - Enhanced Network Port Discovery: The networking API has been refactored for flexibility. The new
get_localhost_free_port_offunction replaces older methods, allowing you to find available ports using different strategies:min,max, orrandom. New helpers likeget_localhost_busy_portsalso provide better visibility into system state. - Strict API Exposure: Every module now implements
__all__exports. This ensures a cleaner developer experience by exposing only intended public functions and constants, preventing internal helper functions from cluttering your IDE's autocomplete. - Refined Package Naming & Documentation: The library has transitioned toward the
osn_system_utilsnaming convention across documentation and installation guides. The README has been completely overhauled with clear examples for process filtering and socket statistics. - Improved Type Safety: Enhanced type hinting, including the use of
Literalfor parameter validation andTYPE_CHECKINGblocks, provides better static analysis and reduced runtime errors.
Putting It All Together:
This update transforms osn_system_utils into a more professional and reliable tool for systems programming. By combining low-level OS wrappers with a high-level, pythonic API for processes and networking, v0.0.2 provides developers with a consistent interface for complex system tasks regardless of whether they are running on Linux or Windows.
osn-system-utils v0.0.2-beta.1
osn-system-utils v0.0.2-beta.1 - Dependency Optimization and API Refactoring
This release marks a significant step in making the library more lightweight and efficient. We have focused on removing heavy external dependencies, refining our internal API structure, and improving the developer experience through better type safety and explicit export controls.
Key Improvements in v0.0.2-beta.1:
- Removal of Pandas Dependency: To ensure a smaller footprint and faster installation, we have completely removed the dependency on
pandas. The library now operates using native Python structures, making it much more suitable for lightweight environments and microservices. - Migration to Iterator-based Process Tables: The
get_process_tablefunction has been refactored. Instead of returning a static DataFrame, it now functions as anIterator[Dict[str, Any]]. This "lazy" approach significantly reduces memory consumption when scanning large numbers of system processes, as data is yielded one process at a time. - Explicit Public API Definition: We have implemented
__all__across all major modules. This clearly defines the public-facing interface of the library, preventing internal helper functions from polluting your IDE’s autocomplete and ensuring a cleaner development workflow. - Enhanced Process Robustness: The process management API now includes handling for
psutil.ZombieProcess. This prevents unexpected crashes when querying system information about processes that are in a defunct state. - Flexible Network Utilities: The
get_localhost_free_port_offunction has been updated to accept anyIterablefor port candidates instead of just aSequence, offering more flexibility when working with generators or sets of port numbers. - Improved Documentation and Examples: The README has been thoroughly updated with corrected installation paths and modernized usage examples that reflect the transition to iterator-based process handling.
Putting It All Together:
Version 0.0.2-beta.1 transforms osn-system-utils into a more specialized, high-performance tool. By stripping away pandas and moving to iterators, we've made the library faster and more memory-efficient while maintaining the same powerful filtering capabilities for system administration and network management.
osn-system-utils v0.0.1
osn-system-utils v0.0.1 - Initial Release of Comprehensive System Management API
Welcome to the first official release of osn-system-utils. This library provides a unified, cross-platform interface for managing system processes, network sockets, and power states on both Linux and Windows environments. By wrapping complex CLI tools and leveraging psutil, we provide a developer-friendly way to interact with the underlying operating system.
Key Improvements in v0.0.1:
- Advanced Process Management Table: Introduced a powerful
get_process_tablefunction that generates a Pandas DataFrame of system processes. It supports deep-nested attribute fetching and a sophisticated filtering system, including regex, range checks (above/under/between), and equality filters. - Flexible Port Allocation: The network API has been overhauled to support a wider port range (up to 65535). The new
get_localhost_free_port_ofutility allows for smart port hunting using "min", "max", or "random" strategies, making it easier to find available ports for local services. - Cross-Platform Power & Process Control: We’ve implemented standardized wrappers for essential system commands. This includes
shutdownandtaskkillfor Windows, andpkill,kill, andss(Socket Statistics) for Linux, ensuring consistent behavior across different environments. - Internal Validation Engine: Added a robust set of internal utility functions to handle nested dictionary/object traversal and parameter validation. This ensures that invalid inputs are caught early with descriptive error messages.
- Standardized Command Execution: Improved the core
run_commandutility to handle subprocess execution with better encoding support and custom exception handling through the newCommandExecutionErrorclass.
Putting It All Together:
This release transforms raw system commands into a structured Python API. Whether you need to monitor localhost PIDs with their associated ports, generate a filtered list of running applications, or safely restart a remote Windows machine, osn-system-utils v0.0.1 provides the necessary tools with type-safe implementations and clear documentation.
osn-system-utils v0.0.0
This is the first release of osn-system-utils