mirror of
https://github.com/Xevion/linkpulse.git
synced 2025-12-06 03:15:35 -06:00
This is really annoying, the docs state nothing about the parameter format; maybe it should be implied, but there are zero examples showing the combined message/AnnotationProperty interface with 2 parameters.
3.6 KiB
3.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- A release checklist to the
CHANGELOG.mdfile, as a reminder for procedure. - An action workflow for invoking
pytest - Pytest coverage report generation in the CI/CD pipeline
- backend:
pwdlib[argon2]for password hashing - backend: provided
LOG_JSON_FORMATandLOG_LEVELenvironment variable defaults inrun.shdevelopment script - backend:
Usermodel,Sessionmodel with migration script - backend:
utc_nowhelper function - backend:
pytest, simple/health&/api/migrationsendpoint tests - frontend: Added
clsxpackage
Changed
- frontend: Updated
eslintto9.x.x,@types/nodeto22.9.x
Removed
- frontend: Removed
@nkzw/eslint-configpackage - backend:
IPAddressModel (definition + DB state via migration) & all related code
[0.2.2] - 2024-11-01
Added
- Added the
orjsonserializer for faster JSON serialization- Used in
structlog'sJSONRendererfor production logging - Used in
fastapi'sResponsefor faster response serialization
- Used in
- Improved documentation in multiple files
__main__.pylogging.pymodels.pyutilities.pymigrate.pyresponses.py
- A
get_dbutility function to retrieve a reference to the database (with type hinting) - Minor
DATABASE_URLcheck inmodels.pyto prevent cryptic connection issues
Changed
- Migration script now uses
structloginstead ofprint- Migration script output is tuned to structlog as well.
- Migration names must be at least 9 characters long
- Unspecified IPv6 addresses are returned without hiding in
utilities.hide_ip - Applied
get_dbutility function in all applicable areas.
Fixed
- Raised level for
apscheduler.schedulerlogger toWARNINGto prevent excessive logging - IPv4 interface bind in production, preventing Railway's Private Networking from functioning
- Reloader mode enabled in production
[0.2.1] - 2024-11-01
Changed
- Mildly reformatted
README.md - A development mode check for the
app.state.ip_pool's initialization (caused application failure in production only)
Fixed
- Improper formatting of blockquote Alerts in
README.md
[0.2.0] - 2024-11-01
Added
- This
CHANGELOG.mdfile - Structured logging with
structlog- Readable
ConsoleRendererfor local development JSONRendererfor production logging
- Readable
- Request-Id Middleware with
asgi-correlation-id - Expanded README.md with more comprehensive instructions for installation & usage
- Repository-wide improved documentation details, comments
- CodeSpell exceptions in VSCode workspace settings
Changed
- Switched from
hypercorntouvicornfor ASGI runtime - Switched to direct module 'serve' command in
backend/run.sh&backend/railway.json - Relocated
.tool-versionsto project root - Massively overhauled run.sh scripts, mostly for backend service
- Improved environment variable access in logging setup
- Root logger now adheres to the same format as the rest of the application
- Hide IP list when error occurs on client
run.shpasses through all arguments, e.g. bpython REPL via./run.sh repl- Use UTC timezone for timestamps, localize human readable strings, fixing 4 hour offset issue
is_developmentavailable globally fromutilitiesmodule
Removed
- Deprecated
startupandshutdownevents - Development-only randomized IP address pool for testing