History#
v3.2.0#
27 Jun 2023
Features#
Require Python 3.8 or later.
v3.1.0#
24 Nov 2021
Require Python 3.7 or later.
v3.0.0#
07 Oct 2021
Removed legacy aliases wait_for_occupied_port
and wait_for_free_port
.
v2.7.2#
07 Oct 2021
Packaging refresh.
v2.7.1#
13 Feb 2021
#14: Fix host/port order.
v2.7.0#
16 Nov 2020
Refresh package. Require Python 3.6 or later.
2.6#
Package refresh.
2.5#
#10: Fix race condition in occupied
and free
.
2.4#
- #6:
find_available_local_port
now relies on socket.getaddrinfo
to find a suitable address family.
2.3#
Package refresh.
2.2#
Merge with skeleton, including embedded license file.
2.1.2#
Fix README rendering.
2.1.1#
- #5: Restored use of
portend.client_host
during assert_free
check on Windows, fixing check when the bind address is*ADDR_ANY
.
2.1#
Use tempora.timing.Timer from tempora 1.8, replacing boilerplate code in occupied and free functions.
- #1: Removed
portend._getaddrinfo
and its usage in Checker.assert_free
.
Dropped support for Python 2.6.
1.8#
Remove dependency on jaraco.compat
and instead just
copy and reference the total_seconds
compatibility
function for Python 2.6.
1.7.1#
#2: Use tempora, replacing deprecated jaraco.timing.
1.7#
Expose the port check functionality as portend.Checker
class.
1.6.1#
Correct failures on Python 2.6 where
datetime.datetime.total_seconds
and argparse are unavailable.
1.6#
Add support for Python 2.6 (to support CherryPy).
1.5#
Automatically deploy tagged versions via Travis-CI.
1.4#
Moved hosting to Github.
1.3#
Added find_available_local_port
for identifying a local port
available for binding.
1.2#
Only require pytest-runner
when pytest is invoked.
1.1#
Renamed functions:
wait_for_occupied_port: occupied
wait_for_free_port: free
The original names are kept as aliases for now.
Added execution support for the portend module. Invoke with
python -m portend
.
1.0#
Initial release based on utilities in CherryPy 3.5.