Skip to content

Latest commit

 

History

History
381 lines (281 loc) · 10.8 KB

CHANGELOG-MANUAL.md

File metadata and controls

381 lines (281 loc) · 10.8 KB

Changelog

[0.7.0] - 2025-01-08

🚀 Features

  • (daemon) Create user in setup #29
  • (common) Impl to_string for Command
  • (analyze) Short outages in general view, add -o option to reader
  • (records) Impl Ord for Check
  • (analyze) Sort outage groups
  • (records) Cut off seconds and nanoseconds
  • (reader) Dump outages
  • (outage) Add serevity struct and creation #44
  • (outage) Impl PartialOrd
  • (outage) Add severity to display #44
  • (outage) Display sorted by outage severity #40

🚜 Refactor

  • (daemon) Confirm takes any display argument
  • (daemon) Ask confirmation and combine setups a bit more
  • (daemon) Remove daemonizing with daemonize crate #26
  • (analyze) Fail_groups now much simpler
  • (analyze) Fail_groups simplistic again
  • (analyze) Outages simplified
  • (analyze) Move outage things to a new module
  • Use error where eprintln was

📚 Documentation

  • (common) Doctest now specifys skip_checks for exec_cmd_for_user example
  • Mention that user creation is part of setup in readme
  • Update readme with tons of small things
  • Update the readme with outage info and storage info
  • Use which for root in readme
  • Remove redundant updating section
  • (records) Adjust TypeIcmp flag
  • (readme) Adjust example reader output
  • (readme) Adjust readme example

⚙️ Miscellaneous Tasks

  • Automatic Rust CI changes
  • Add a small docker test script
  • Automatic Rust CI changes
  • Add debug info for outages
  • Bump to v0.7.0-rc0
  • Automatic Rust CI changes
  • Bump version to v0.7.0-rc1
  • Automatic Rust CI changes
  • Automatic Rust CI changes
  • Automatic Rust CI changes
  • Release v0.7.0-rc1.1
  • Bump version to v0.7.0

🐛 Bug Fixes

  • (daemon) General setup was skipped, loglevel is now info
  • (analyze) Outages were not displayed #34
  • (analyze) Only one outage group was found
  • (analyze) Show last 10 outages
  • (analyze) Now more outage duplicates #35
  • (analyze) Only take actual failed checks into outages
  • (analyze) Split check groups for outage at the right point
  • (analyze) Display off by one
  • (analyze) Fail_groups finally delivers correct results

⚡ Performance

  • (analyze) Fail_groups is now faster

🧪 Testing

  • (analyze) Fail_groups fails so much, I need to test it properly
  • (analyze) Test group_by_time
  • (analyze) Refactor tests

[0.6.1] - 2024-11-13

🚜 Refactor

  • (store) Make checks in separate threads
  • (records) Default enable depends on enabled features

📚 Documentation

  • (api) Fixes and documenting primitive_make_checks with mutlithreading

⚙️ Miscellaneous Tasks

  • Clean up imports in store
  • Automatic Rust CI changes
  • Release v0.6.1

[0.6.0] - 2024-11-12

🚀 Features

  • Use chrono instead of humantime, make times more readable
  • [breaking] Use blake3 for hashes #16
  • (store) Set period for daemon with env var
  • (reader) Rewrite store option
  • (store) Add readonly mode to store
  • (store) Peek version from fs
  • Add a panic handler to netpulse and netpulsed #13

🐛 Bug Fixes

  • (store) Serialization and deserialization of Version enum did not work

🚜 Refactor

  • (records) Remove ip type flag and infer ip type from the stored target
  • (store) Adjust log levels for some messages
  • Use chrono instead of std
  • (store) [breaking] Use i64 for timestamp instead of u64
  • (store) Version is now an enum
  • (store) [breaking] Version is now an enum
  • Move time formatting utils to analyze
  • (reader) Load store as readonly

📚 Documentation

  • (api) Much simplify the documentation for Check::ip_type
  • (api) Fix doc links and old info
  • (api) Fix doc links and old info
  • (api) Fix peek_version adjacent stuff

⚙️ Miscellaneous Tasks

  • Automatic Rust CI changes
  • Release v0.6.0

[0.5.1] - 2024-11-11

🐛 Bug Fixes

  • (analyze) Ip analyze was always done with ipv4

⚙️ Miscellaneous Tasks

  • Release v0.5.1

[0.5.0] - 2024-11-10

🐛 Bug Fixes

  • (checks) Compiler error when not using the ping feature
  • (checks) Don't throw compiler error for disabled features

📚 Documentation

  • (api) Fix examples for no default options

⚙️ Miscellaneous Tasks

  • Adjust headline for icmp analysis
  • Test without default features
  • Docs.rs should show all features
  • Release v0.4.2

[0.4.1] - 2024-11-09

🚀 Features

  • Consider an environment variable when initializing the logging

🐛 Bug Fixes

  • (daemon) Systemctl stop of the service args were in a single arg

🚜 Refactor

  • (common) Move the common module into the library with the "executable" feature
  • (records) [breaking] Consolidate ICMPv4 and ICMPv6 into just ICMP check type

📚 Documentation

  • (api) Fix tests in common module

⚙️ Miscellaneous Tasks

  • Clean up imports in netpulsed
  • Run doctests too in ci
  • Run doctests too in ci
  • Release v0.4.1

[0.4.0] - 2024-11-09

🚀 Features

  • (analyze) Print the store version of in memory store
  • (analyze) Show size of store in mem and fs + ratio
  • (analyze) Dump the entire store (it's checks) #8
  • (reader) Dump all and dump only failed
  • (daemon) Reload the store on SIGHUP
  • Use logging with tracing for everything in the library and set it up for the executables #5
  • (daemon) Have setup ask to execute the systemd stuff for the user
  • (setup) Stop the netpulsed service at the start of setup
  • Consider an environment variable when initializing the logging

🐛 Bug Fixes

  • (setup) Stop the running service first
  • (daemon) Stop_requested was initialized with true
  • (setup) Args need to be split
  • Logging in common/netpulsed

🚜 Refactor

  • (analyze) Improve display functions
  • (records) Display_groups moved to records, better display
  • (bins) Share some code in the new common module
  • (daemon) Better error handling in main
  • (setup) More debug prints for the systemd setup

📚 Documentation

  • (api) Fix test

⚙️ Miscellaneous Tasks

  • Automatic Rust CI changes
  • Automatic Rust CI changes
  • Fix pedantic warnings
  • Automatic Rust CI changes
  • Automatic Rust CI changes
  • Release v0.4.0

[0.3.0] - 2024-11-09

🚀 Features

  • (daemon) Add setup flag and make the daemon flag official
  • (systemd) Add netpulsed.service file
  • (systemd) Install service file
  • (systemd) Only remove pidfile if it's a manual daemon
  • (systemd) Copy the netpulsed to /usr/local/bin/ in the setup
  • (store) Return the new checks from make_checks and let the daemon print them
  • Default enable icmp again, as CAP_NET_RAW is okay with systemd

🐛 Bug Fixes

  • (daemon) Setup copy was missing the bin name
  • (analyze) Check for ip flag needs to be inverted

🚜 Refactor

  • (daemon) Consolidate setup and setup-systemd into just setup
  • (analyze) Make analyze functions more generic and add more parts
  • Rename DaemonError to RunError and print netpulse -t data with group_display
  • Refactor logs, primitive_make_checks

📚 Documentation

  • Add setup and update sections for the daemon to the readme

⚙️ Miscellaneous Tasks

  • Remove unused import
  • Automatic Rust CI changes
  • Release v0.3.0

[0.2.0] - 2024-11-08

🚀 Features

  • (checks) Ip_type and get_hash
  • (error) Add AmbiguousFlags and MissingFlags errors
  • (analyze) Add ipv4 and ipv6 section

🐛 Bug Fixes

  • (daemon) Daemon paniced when loading failed
  • Show source for errors
  • (store) Chown store directory after creating it
  • (cli) Don't panic when a bad option is passed
  • (store) Setperms fails, print more info
  • (store) Chown instead of chmod
  • (cli) Print usage when bad options are given

🚜 Refactor

  • (daemon) Cleanup when store load does not work
  • (store) Print additional err messages in store create
  • (store) Add a setup function so that the setup can run as root
  • (cli) Remove daemon --fail

📚 Documentation

  • (api) Fix Store::setup example

⚙️ Miscellaneous Tasks

  • Automatic Rust CI changes
  • Release v0.1.1

[0.1.0] - 2024-11-08

🚀 Features

  • (records) Add record datastructures for checks
  • (store) Store load, create and save logic
  • (store) Add_check function
  • (store) [breaking] Use zstd compression
  • (daemon) First daemon app with made up checks
  • (reader) Very basic reader
  • (ctl) Make netpulsed into netpulsectl, a program that starts and stops the daemon
  • (ctl) Stop the daemon
  • (ctl) End now kills after a timeout and removes the pid file if it remains
  • (daemon) Actually make pings
  • (reader) Add check tester
  • (checks) Do the pinging
  • Improved cli, less panics
  • (checks) Add ping feature nodefault and add http check
  • (reader) Show target in display
  • (reader) Analysis of HTTP, analyzis module, outages
  • (analyze) Check if any outages exist before analyzing for them
  • (analyze) Add hash to store metadata
  • (store) Store version checks

🐛 Bug Fixes

  • (daemon) Daemon high cpu usage because of incorrect flow control
  • (daemon) Daemon did not exit unless the cleanup had an error
  • (ctl) Info was only checking for pidfile, not process
  • (checks) Add icmpv6 to the all checks
  • (checks) Use the latency for icmp
  • Remove old capabilities code
  • (http) Url formatting for ipv6
  • (checks) Http check did not use timeout

🚜 Refactor

  • (records) Remove noflags variant and add more trait derives
  • (daemon) Mock daemon has failing checks sometimes now
  • Use different error types
  • Don't automatically use all check types, just the enabled ones
  • Remove icmp from default_enabled check types, because of CAP_NET_RAW missing from the daemon
  • Rename ping module to checks
  • Feature fixes and targets are now always ips
  • Use specific targets per check type
  • (analyze) Clean up code in analyze
  • (analyze) Own less things
  • (analyze) Refactor and generalize analyze outputs
  • (analyze) Check if checks are totally empty
  • (store) Make create function public
  • (store) Do not save on loading an older version
  • Use Self::new for version from u8

📚 Documentation

  • Addres CAP_NET_RAW
  • Readme and repo adjustment
  • Add targets note to readme
  • (api) Tons of api docs with llm help
  • (api) Fix examples
  • (api) Checks with examples and extensive docs
  • (api) Document the error module
  • (api) Store module documentations
  • (api) Analyze module and small fixes
  • (api) Fix all doc warnings
  • (api) Dont generate docs for the bins, that conflicts with the lib

⚙️ Miscellaneous Tasks

  • Remove scripts dir
  • Add deps and rename from base template
  • Remove unused dependencies
  • Automatic Rust CI changes
  • Automatic Rust CI changes
  • Script for cap_net_raw
  • Add a build script that adds the caps
  • Less curl features
  • Automatic Rust CI changes
  • Remove build script
  • Automatic Rust CI changes
  • Set the period_seconds to the production value
  • Changelog
  • Release v0.1.0