- new feature: implement color-less (plane printer) output through
--no-color
flag #253 - new feature: implement display of local IP address and port used to create TCP connections through
--show-local-address
flag #249 - refactor: rename
planePrinter
tocolorPrinter
to match the actual functionality of the function - refactor: complete rewrite of the Makefile thanks to @cyqsimon
- refactor: add containerization section in the Makefile thanks to @cyqsimon
- fix: crash on database writes when hostname includes a hyphen thanks to @pro0o
- documents: add Chinese translation thanks to @edwinjhlee
- documents: add link to X CMD thanks to @edwinjhlee
- tests: add new tests for
printProbeSuccess
andprintProbeFail
thanks to @basil-gray - tests: add tests for
show-local-address
flag - dependencies: bump:
- crypto v0.28.0 => v0.29.0
- exp v0.0.0-20241004190924-225e2abe05e6 => v0.0.0-20241108190413-2d47ceb2692f
- sys v0.26.0 => v0.27.0
- new feature: add
-D
flag to display date and time in probe output by @SYSHIL - new feature: add
-h
flag to show available flags by @karimalzalek - fix: display
second
instead ofseconds
on probe failures that convert to a value more than 1 and less than 1.1 second - refactor: Makefile: Split build section into smaller, distinct targets by @iskiy
- new feature: add
-show-failures-only
flag to omit printing successful probes - new feature: re-add static Linux binary. Thanks to @daniql
- new feature: add support for Linux
arm64
in Makefile. Thanks to @ChrisClarke246 - fix: extra precision for seconds calculation when the value is under a second. Thanks to @daniql
- refactor: migrate to a pure-Go
sqlite
package. Thanks to @wizsk - refactor: user flag handlers
- cleanup: user input functions. Thanks to @friday963
- chore: fix typos
- new feature: add
-i
to specify the interval between sending probes. Thanks to @luca-patrignani - new feature: add
-I
to specify the source interface to use for sending probes. Thanks to @wizsk - new feature: add
-t
to specify a custom timeout for probes. Thanks to @luca-patrignani - new feature: add
--db
to specify the path and file name to store tcping output to sqlite database. e.g.--db /tmp/tcping.db
. Thanks to @wizsk - fix: add
rtt
to JSON output - fix: CI warning thanks to @wizsk
- refactor: remove unnecessary custom types
- refactor: memory align
structs
- refactor: Debian packaging instructions
- new feature: add
-c
or count flag to exit TCPING after a certain amount of probes specified by user thanks to @ravsii - new feature: add BSD support
- new feature: add Debian package to make TCPING
apt installable
- fix: packet loss
NaN
when program terminated too quickly thanks to @ravsii - fix: random IP address selector index out of range bug
- fix: display format of IPv4 embedded in IPv6 addresses
- fix: time report bug. Everything is now accurate
- fix: Enter key detection for Windows machines
- refactor: complete overhaul of time calculation. TCPING now is hack-free when it comes to time handling thanks to @ravsii
- refactor: memory align
structs
- refactor: improve code readability
- refactor: refactor
stats struct
and extract user input to a separatestruct
- refactor: Enter key detection logic
- refactor: name resolution handling. The maximum allowed time to wait for DNS response is now 2 seconds
- refactor: and unify exit points thanks to @ravsii
- tests: add more test special thanks to @ravsii
- enhancement: add dependabot
- docs: improve documentation
- new feature: implement JSON output thanks to @ravsii
- new feature: implement JSON output prettifier thanks to @ravsii
- fix IP version selection bug when
-4
or-6
flags are passed
- make
stats
struct fields' names uniform - add
|
separator to summary report for better visibility
- fix retry resolve logic
- add option to enforce the use of IPv4
-4
or IPv6-6
addresses only - instead of always picking the first, randomly pick an address from the list of resolved IP addresses
- add hostname, IP and port number to summary output
- display stats even if all the probes had failed update version
- update version
- incorporate sha256sum into Makefile
- close
TCP
connections faster to lessen the resource utilization on target
- implement sub-millisecond timing report to make it suitable for Data center and Cloud environments
- refactor
tcping
function and simplify it - fix downtime report miscalculation
- fix picking of go version
- improve build process
- changed
ipAddress
type from string tonetip.Addr
thanks @segfault99 - fix
statsprinter
formats thanks @segfault99 - upgrade actions thanks @wutingfeng
- fix undeclared
statsPrinter
warning - fix code scanning alert - Incorrect conversion between integer types #43
- add
stale
workflow - add new logo
- add Linux brew section
- add docker demo recording
- restructure README file
- update dependencies and bump Go version
- improve Makefile
- fix tag detection on Actions workflow
- add
Go
version toCodeQL
- add
downloads
badge - improve checkUpdate message
- fix go install guide
- fix bug report template
- create SECURITY.md
- improve pull request template
- improve stale workflow
- add preliminary JSON output support thanks @icemint0828 for collaboration
- add Docker container images on Docker Hub and GitHub container registry
- add and optimize GitHub workflows
- small refactoring and cleanups
- add -v flag to show version
- improve code readability
- add logo thanks @code-hyker
- Add
-r
flag to retry resolving the hostname after a certain amount of probe failures (thanks to @icemint0828) - Show statistics if the RTT is less than 1ms (thanks to @icemint0828)
- Show longest uptime similar to longest downtime (thanks to @icemint0828)
- Improve time calculation and display time in reports (thanks to @icemint0828)
- Add initial test cases (thanks to @icemint0828)
- General refactoring, fixes and decrease of resource utilization
- Update dependencies
- Update
Makefile
to includego fmt
command inbuild
- Update
Makefile
to includego test
command inbuild
- Improve time constants for better readability
- Revert successful reply text color
- Memory alignment for rttResults struct
- Make hour format a constant
- Remove sort function to increase performance
- General refactoring to make the code more readable
- Fix longest downtime bug
- Improve memory alignment
- Add display of longest downtime
- Add display of runtime duration
- Add display of last successful and unsuccessful probes
- General improvements and cleanup