Releases: binwiederhier/ntfy
v2.11.0
This is a tiny release that fixes a database index issue that caused performance issues on ntfy.sh. It also fixes a bug in the rate visitor logic that caused rate visitors to be assigned to seemingly random topics. Nothing major this time.
❤️ Quick reminder that if you like ntfy, please consider sponsoring us via GitHub Sponsors and Liberapay, or buying a paid plan via the web app. ntfy will always remain open source.
Bug fixes + maintenance:
v2.10.0
This release adds support for message templating: in the ntfy server, which allows you to include a message and/or title template that will be filled with values from a JSON body (e.g. curl -gd '{"alert":"Disk space low"}' "ntfy.sh/mytopic?tpl=1&m={{.alert}}"
). This is great for services that let you specify a webhook URL but do not let you change the webhook body (such as GitHub, or Grafana).
Features:
- Message templating: You can now include a message and/or title template that will be filled with values from a JSON body (#724, thanks to @wunter8 for implementing)
That's all. Short and sweet.
If you like ntfy, please consider donating via GitHub Sponsors, Liberapay, or by buying a ntfy Pro plan.
v2.9.0
A small release after a long pause (lots of day job work). This release adds for larger messages and longer message delays in scheduled delivery messages. The web app also now supports pasting images from the clipboard. Other than that, only a few bug fixes and documentation updates, and a teeny tiny breaking change 😬.
- The
Rate-Topics
header was removed due to a DoS issue (see #1048). This only affects installations withvisitor-subscriber-rate-limiting: true
, which is not the default and likely very rarely used. Normally I'd never remove a feature, but this is a security issue, and likely affects almost nobody.
Features:
- Support for larger message delays with
message-delay-limit
(see message limits, #1019, thanks to @MrChadMWood for reporting) - Support for larger message body sizes with
message-size-limit
(use at your own risk, see message limits, #836/#1050, thanks to @zhzy0077 for implementing this, and to @nkjshlsqja7331 for reporting) - Web app: You can now paste images into the message bar or publish dialog (#963/#572, thanks to @cmj2002 for implementing, and @rounakdatta for reporting)
Bug fixes + maintenance:
⚠️ RemoveRate-Topics
header due to DoS security issue ifvisitor-subscriber-rate-limiting: true
(#1048)
Documentation:
- Remove
mkdocs-simple-hooks
(#1016, thanks to @Tom-Hubrecht) - Update Watchtower example (#1014, thanks to @lennart-m)
- Fix dead links (#1022, thanks to @DerRockWolf)
- PowerShell file upload example (#1004, thanks to @YMan84)
❤️ Special thanks to @wunter8 for always answering all the questions on Discord/Matrix!
v2.8.0
This release brings a handful of random bug fixes: two unrelated access control list fixes, a fix around web app crashes for languages with underscores in the language code (e.g. zh_Hant
, zh_Hans
, pt_BR
, ...), a workaround for the Priority
header (often used in Cloudflare setups), and support among others support for HTML-only emails (finally), web app crash fixes
Bug fixes + maintenance:
- Support for HTML-only emails (#690/#693, thanks to @teastrainer and @CrazyWolf13 for reporting)
- Fix ACL issue with topic patterns containing underscores (#840, thanks to @Joe-0237 for reporting)
- Fix ACL issue with order of read/write rules (#914/#917, thanks to @sandman7920)
- Re-add
tzdata
to Docker images for amd64 image (#894, #307) - Add special logic to ignore
Priority
header if it resembles an RFC 9218 value (#851/#895, thanks to @gusdleon, see also #351, #353, #461) - PWA: hide install prompt on macOS 14 Safari (#899, thanks to @nihalgonsalves)
- Fix web app crash in Edge for languages with underline in locale (#922/#912/#852, thanks to @imkero)
Additional languages:
- Finnish (thanks to @Seppo)
v2.7.0
This release ships Markdown support for the web app (not in the Android app yet), and adds support for right-to-left languages (RTL) in the web app. It also fixes a few issues around date/time formatting, internationalization support, a CLI auth bug.
Features:
- Add support for Markdown formatting in web app (#310, thanks to @nihalgonsalves)
- Add support for right-to-left languages (RTL) in the web app (#663, thanks to @nimbleghost)
- Fixes issue with access tokens getting deleted (#838)
Bug fixes + maintenance:
- Fix issues with date/time with different locales (#700, thanks to @nimbleghost)
- Re-init i18n on each service worker message to avoid missing translations (#817, thanks to @nihalgonsalves)
- You can now unset the default user:pass/token in
client.yml
for an individual subscription to remove the Authorization header (#829, thanks to @tomeon for reporting and to @wunter8 for fixing)
Documentation:
- Update docs for Apache config (#819, thanks to @nisbet-hubbard)
v2.6.2
With this release, the ntfy web app now contains a progressive web app (PWA) with Web Push support, which means you'll be able to install the ntfy web app on your desktop or phone similar to a native app (even on iOS! 🥳). Installing the PWA gives ntfy web its own launcher, a standalone window, push notifications, and an app badge with the unread notification count.
On top of that, this release also brings dark mode 🧛🌙 to the web app.
🙏 A huge thanks for this release goes to @nimbleghost, for basically implementing the Web Push / PWA and dark mode feature by himself. I'm really grateful for your contributions.
❤️ If you like ntfy, please consider sponsoring us via GitHub Sponsors and Liberapay, or buying a paid plan via the web app (20% off if you use promo code MYTOPIC
). ntfy will always remain open source.
Features:
- The web app now supports Web Push, and is installable as a progressive web app (PWA) on Chrome, Edge, Android, and iOS (#751, thanks to @nimbleghost)
- Support for dark mode in the web app (#206, thanks to @nimbleghost)
Bug fixes:
- Support encoding any header as RFC 2047 (#737, thanks to @cfouche3005 for reporting)
- Do not forward poll requests for UnifiedPush messages (no ticket, thanks to NoName for reporting)
- Fix
ntfy pub %
segfaulting (#760, thanks to @clesmian for reporting) - Newly created access tokens are now lowercase only to fully support
<topic>+<token>@<domain>
email syntax (#773, thanks to gingervitiz for reporting) - The .1 release fixes a few visual issues with dark mode, and other web app updates (#791, #793, #792, thanks to @nimbleghost)
- The .2 release fixes issues with the service worker in Firefox and adds automatic service worker updates (#795, thanks to @nimbleghost)
Maintenance:
- Improved GitHub Actions flow (#745, thanks to @nimbleghost)
- Web: Add JS formatter "prettier" (#746, thanks to @nimbleghost)
- Web: Add eslint with eslint-config-airbnb (#748, thanks to @nimbleghost)
- Web: Switch to Vite (#749, thanks to @nimbleghost)
Changes in tarball/zip naming:
Due to a change in GoReleaser, some of the binary release
archives now have slightly different names. My apologies if this causes issues in the downstream projects that use ntfy:
ntfy_v${VERSION}_windows_x86_64.zip
->ntfy_v${VERSION}_windows_amd64.zip
ntfy_v${VERSION}_linux_x86_64.tar.gz
->ntfy_v${VERSION}_linux_amd64.tar.gz
ntfy_v${VERSION}_macOS_all.tar.gz
->ntfy_v${VERSION}_darwin_all.tar.gz
v2.6.1
(:warning: This release is superseded by v2.6.2)
With this release, the ntfy web app now contains a progressive web app (PWA) with Web Push support, which means you'll be able to install the ntfy web app on your desktop or phone similar to a native app (even on iOS! 🥳). Installing the PWA gives ntfy web its own launcher, a standalone window, push notifications, and an app badge with the unread notification count.
On top of that, this release also brings dark mode 🧛🌙 to the web app.
🙏 A huge thanks for this release goes to @nimbleghost, for basically implementing the Web Push / PWA and dark mode feature by himself. I'm really grateful for your contributions.
❤️ If you like ntfy, please consider sponsoring us via GitHub Sponsors and Liberapay, or buying a paid plan via the web app (20% off if you use promo code MYTOPIC
). ntfy will always remain open source.
Features:
- The web app now supports Web Push, and is installable as a progressive web app (PWA) on Chrome, Edge, Android, and iOS (#751, thanks to @nimbleghost)
- Support for dark mode in the web app (#206, thanks to @nimbleghost)
Bug fixes:
- Support encoding any header as RFC 2047 (#737, thanks to @cfouche3005 for reporting)
- Do not forward poll requests for UnifiedPush messages (no ticket, thanks to NoName for reporting)
- Fix
ntfy pub %
segfaulting (#760, thanks to @clesmian for reporting) - Newly created access tokens are now lowercase only to fully support
<topic>+<token>@<domain>
email syntax (#773, thanks to gingervitiz for reporting) - The .1 release fixes a few visual issues with dark mode, and other web app updates (#791, #793, #792, thanks to @nimbleghost)
v2.6.0
(:warning: This release is superseded by v2.6.2)
With this release, the ntfy web app now contains a progressive web app (PWA) with Web Push support, which means you'll be able to install the ntfy web app on your desktop or phone similar to a native app (even on iOS! 🥳). Installing the PWA gives ntfy web its own launcher, a standalone window, push notifications, and an app badge with the unread notification count.
On top of that, this release also brings dark mode 🧛🌙 to the web app.
🙏 A huge thanks for this release goes to @nimbleghost, for basically implementing the Web Push / PWA and dark mode feature by himself. I'm really grateful for your contributions.
❤️ If you like ntfy, please consider sponsoring us via GitHub Sponsors and Liberapay, or buying a paid plan via the web app (20% off if you use promo code MYTOPIC
). ntfy will always remain open source.
Features:
- The web app now supports Web Push, and is installable as a progressive web app (PWA) on Chrome, Edge, Android, and iOS (#751, thanks to @nimbleghost)
- Support for dark mode in the web app (#206, thanks to @nimbleghost)
Bug fixes:
- Support encoding any header as RFC 2047 (#737, thanks to @cfouche3005 for reporting)
- Do not forward poll requests for UnifiedPush messages (no ticket, thanks to NoName for reporting)
- Fix
ntfy pub %
segfaulting (#760, thanks to @clesmian for reporting) - Newly created access tokens are now lowercase only to fully support
<topic>+<token>@<domain>
email syntax (#773, thanks to gingervitiz for reporting)
v2.5.0
This release brings a number of new features, including support for text-to-speech style phone calls, an admin API to manage users and ACL (currently in beta, and hence undocumented), and support for authorized access to upstream servers via the upstream-access-token
config option.
❤️ If you like ntfy, please consider sponsoring me via GitHub Sponsors and Liberapay, or by buying a paid plan via the web app (20% off if you use promo code MYTOPIC
). ntfy will always remain open source.
Features:
- Support for text-to-speech style phone calls using the
X-Call
header (no ticket) - Admin API to manage users and ACL,
v1/users
+v1/users/access
(intentionally undocumented as of now, #722, thanks to @CreativeWarlock for sponsoring this ticket) - Added
upstream-access-token
config option to allow authorized access to upstream servers (no ticket)
Bug fixes + maintenance:
- Removed old ntfy website from ntfy entirely (no ticket)
- Make emoji lookup for emails more efficient (#725, thanks to @adamantike)
- Fix potential subscriber ID clash (#712, thanks to @peterbourgon for reporting, and @dropdevrahul for fixing)
- Support for
quoted-printable
in incoming emails (#719, thanks to @Aerion) - Attachments with filenames that are downloaded using a browser will now download with the proper filename (#726, thanks to @un99known99 for reporting, and @wunter8 for fixing)
- Fix web app i18n issue in account preferences (#730, thanks to @codebude for reporting)
v2.4.0
This release adds a tiny v1/stats
endpoint to expose how many messages have been published, and adds suport to encode the X-Title
, X-Message
and X-Tags
header as RFC 2047. It's a pretty small release, and mainly enables the release of the new ntfy.sh website.
❤️ If you like ntfy, please consider sponsoring me via GitHub Sponsors and Liberapay, or by buying a paid plan via the web app. ntfy will always remain open source.
Features:
- ntfy CLI (
ntfy publish
andntfy subscribe
only) can now be installed via Homebrew (thanks to @Moulick) - Added
v1/stats
endpoint to expose messages stats (no ticket) - Support RFC 2047 encoded headers (no ticket, honorable mention to mqttwarn and @amotl)
Bug fixes + maintenance:
- Hide country flags on Windows (#606, thanks to @cmeis for reporting, and to @pokej6 for fixing it)
ntfy sub
now uses default auth credentials as defined inclient.yml
(#698, thanks to @CrimsonFez for reporting, and to @wunter8 for fixing it)
Documentation:
Additional languages:
- Swedish (thanks to @hellbown)