Skip to content

23.11.11 - 💬 Publishers as plugins, Settings and Installation improvements

Compare
Choose a tag to compare
@jokob-sk jokob-sk released this 11 Nov 01:48
· 1663 commits to main since this release

I wanted to keep this release small and here we are 😅 judge yourself based on the below changes:

I spent a lot of time converting publishers into plugins. This unlocks a granular log of event notifications in the Plugins section with links to the actual report notification via a notification GUID. I rewrote the installation process to make it easier and maintainable. I also fit in quite a few Settings page improvements. There is a new plugin to maintain the log file too.

Thank you @ameer1234567890 (and others) who tested the pi.alert_dev image, I usually am low on energy testing all use cases so this is appreciated 🙏

Thanks to all the contributors who submitted PRs in the past few weeks!

Grateful to @sky4055, @jordantrizz, @kurfuer for their sponsorship 🙏
Sponsorship Goal: Dedicate one full workday a week to this project.

Screenshots

Screen 1 Screen 2 Screen 3
Screen 4 Screen 5 Screen 6

💔 Breaking changes

Sometimes I have to introduce breaking changes - it breaks my heart, but we must move forward

  • There shouldn't be any, however, I implemented a settings rewrite method where I'm rewriting old setting names to new ones generated by the new plugins.

📚Docs updates

⚙Settings

  • Added a new dashboard to give an overview of enabled plugins and most important settings (🆕)
  • Added a warning if Device scanner schedules are not synchronized #462 (🆕,🚑)
  • Updated the UI and added settings sections so you can find the setting you are looking for easier (🆕,🚑)
  • Added icons indicating if a Plugin is enabled (🆕)
  • Triggering ad-hoc actions via Settings is working again #472 (🚑)
  • A new ARPSCAN_ARGS setting to change the parameters of the arp-scan to make it faster if needed #485 (🆕)
  • LISTEN_ADDR docker variable to set a specific IP Address for the listener address for the nginx webserver (web interface). This could be useful when using multiple subnets to hide the web interface from all untrusted networks by @silverbios 🙏 (🆕)

🔌Plugins

  • New Internet speedtest (INTRSPD) plugin (🆕)
  • New maintenance tasks (MAINT) plugin currently including the cleanup of the pialert.log file (🆕)
  • Core functionality rewritten into plugins (🚑):
    • MQTT publisher
    • SMTP (Email) publisher
    • Apprise publisher
    • NTFY publisher
    • Pushsafer publisher
    • Webhook publisher
  • The PIHOLE plugin isn't crashing the app but failing gracefully if misconfigured #479 (🚑)
  • A bugfix by @jhonderson where the DBCLNP plugin would delete all devices marked as new #498 (🚑)

🖼 UI

  • Icon preview by @ScottRoach #476 🙏 (🆕)
  • The 🏳Report section has now a Notification history and an option to show the JSON and Text format (🆕)
  • If the network tree topology contained less than 35 devices the node content would overflow the node box #465 (🚑 )
  • Network topology improvements by @ScottRoach #475 🙏 (🚑)
  • More robust error and input handling so it's easier to configure the Network tree topology #467 (🚑)
  • Showing the nginx/error.log file in Maintenance > Logs to debug server-side errors (such as error 500) #483 (🆕,🚑 )
  • Slightly better optimized mobile experience (🚑 )

💠Core app updates

Internal changes affecting the whole app and usually significant to developers 👩‍💻👨‍💻

  • Rewrote the dockerfile and installation scripts so they are used by the on-HW install option as well as Docker-install option (e.g. for potential Proxmox support 🧪⚠)
  • The devices listing page now uses the JSON API endpoint (causes a slight delay in reflecting DB changes, but minimizes SQL queries and DB load) (🚑,⚠)
  • Pholus name resolution looks up IP matches now as well (name contains (IP match) suffix) (🆕)
  • Boolean values were not initialized correctly (e.g. NEWDEV template initialized all values as True) (🚑)

What's Changed

New Contributors

Full Changelog: jokob-sk/Pi.Alert@v23.10.2...v23.11.11