Commit graph

1342 commits

Author SHA1 Message Date
Kailash Nadh f14df890a4 Update Go deps. 2024-01-27 20:55:50 +05:30
Kailash Nadh f0a3cbd563 Remove redundant SMTP test error toast on the admin UI. 2024-01-27 20:41:07 +05:30
Kailash Nadh 45f4ae190f Add performance/query caching docs. 2024-01-27 20:32:37 +05:30
Kailash Nadh 9adc5e7ce7 Refactor navigation and styling in docs.
Thanks @candidexmedia. Closes #1679.
2024-01-27 17:38:28 +05:30
Kailash Nadh bb1492b882 Merge branch 'query-performance' 2024-01-27 15:56:09 +05:30
Kailash Nadh 5a3664aee2 Add support for caching slow queries on large databases.
- Add materialized views for list -> subscriber counts, dashboard chart,
  and dashboard aggregate stats that slow down significantly on large
  databases (with millions or tens of millions of subscribers). These
  slow queries involve full table scan COUNTS().

- Add a toggle to enable caching slow results in Settings -> Performance.

- Add support for setting a cron string that crons and periodically
  refreshes aggregated stats in materialized views.

Closes #1019.
2024-01-27 15:51:12 +05:30
Gautam Mehta a5b06a8ed8
fixed railway icon and spelling bug (#1696) 2024-01-26 14:03:27 +05:30
MaximilianKohler 9e96649bda
Update schema.sql - change default bounce settings (#1669)
https://github.com/knadh/listmonk/issues/1668#issuecomment-1890768681
2024-01-24 10:19:13 +05:30
Luke Lambert 67bc2ce0fc
Improve SES bounce processing docs (#1676)
* Improve SES bounce processing docs

This update includes complete instructions for configuring Amazon Simple Email Service with listmonk's bounce processing. It also adds instructions for exporting bounces from issue #863.

* Fix minor typo bounces.md

---------

Co-authored-by: Kailash Nadh <kailash@nadh.in>
2024-01-24 10:18:46 +05:30
MaximilianKohler 98fa3e03b6
Update templating.md with command to fetch templates from repo (#1677) 2024-01-24 10:16:15 +05:30
dependabot[bot] e42ab9c135
Bump vite from 5.0.10 to 5.0.12 in /frontend (#1680)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.0.10 to 5.0.12.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.0.12/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.0.12/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-20 12:35:20 +05:30
dependabot[bot] 0935e9c136
Bump follow-redirects from 1.15.3 to 1.15.4 in /frontend (#1664)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 10:26:31 +05:30
cosark 4c5df16ae1
Add deploy template for RepoCloud.io (#1662) 2024-01-11 00:30:13 +05:30
Kailash Nadh 2f487de9f7 Log subscriber id/uuid on failed opt-in message push. Closes #1333. 2024-01-10 22:10:27 +05:30
Kailash Nadh 908173c4e0 Style the 'fix code' buttn on campaign archive tab. 2024-01-10 22:08:13 +05:30
Kailash Nadh d8ca26e747 Add a 'template reference' docs link next to campaign editor. Closes #1405. 2024-01-10 22:07:40 +05:30
Kailash Nadh 9109097aaa Remove incorrect API def from docs. Closes #1658. 2024-01-10 21:47:27 +05:30
MaximilianKohler 7067f05c17
Update listmonk-simple.service - add optional log file (#1640)
https://github.com/knadh/listmonk/pull/1614#issuecomment-1868504363
2024-01-09 23:41:14 +05:30
Kailash Nadh 86771512ce Merge branch 'slug' 2024-01-09 23:34:25 +05:30
Kailash Nadh 0d319ad9fd Add 'slug' (permalink) support for campaign archives. Closes #1394. 2024-01-09 23:34:08 +05:30
mpilnan 78caa35e42
fix: add copying campaign object before sending test message (#1659) 2024-01-09 23:22:01 +05:30
Kailash Nadh 3335171960 Fix (accidentally) broken migration scripts. 2024-01-06 19:55:06 +05:30
Kailash Nadh 3711bed98d Fix clipboard copy prop on template form. 2024-01-06 19:19:27 +05:30
Kailash Nadh bd2990fb02 Add F9 shortcut key for toggling campaign and template previews. 2024-01-06 19:17:27 +05:30
Kailash Nadh 234fd11f13 Fix incorrect label on maintenance UI. Closes #1652. 2024-01-06 12:11:40 +05:30
Kailash Nadh a93031d5e0 Make Makefile accept custom build versions from env for dev builds. 2024-01-06 12:02:44 +05:30
Kailash Nadh fa2c840ddb Rename v2.6.0 migration to v3.0.0, the next major release. 2024-01-06 11:56:08 +05:30
Kailash Nadh a6d55d63b1 Upgrade smtp-pool lib fixing bad conn state issues. 2024-01-04 23:44:45 +05:30
Kailash Nadh 8add9d6f07 Merge branch 'fix-campaign-sent' 2024-01-04 23:36:06 +05:30
MaximilianKohler 9a96134fa9
Update installation.md +tut & minor changes (#1647) 2024-01-03 13:57:34 +05:30
Kailash Nadh 772476c0df Add accurate sent count, last sent subscriber tracking on campaigns.
- Sent count is no longer the batch size fetched from the DB but is
  the actual count of messages sent.
- Pausing and resuming now accurately tracks the last subscriber that
  was processed and resumes from there.
- Fix multiple concurrent campaigns blocking.

Closes #1616. Closes #905. Closes #1496. Closes #1250. Closes #1010.
2024-01-02 14:57:04 +05:30
Kailash Nadh 414c5c0c99 Refactor the core concurrent campaign manager logic.
This commit fully refactors the core campaign manager logic.
It applies a whole new approach to campaign state and lifecycle management.

- Create a new "pipeline" abstraction on top of campaign
  for state management.
- Account for every message processed and end campaigns
  based on the actual count.
- Discard in-queue messages in the pipeline of a paused
  or cancelled campaign.
2024-01-02 14:57:04 +05:30
Kailash Nadh 0c9dc07479 Add a ?v=hash cache breaker (that changes on restart) to static assets. 2023-12-31 22:20:37 +05:30
Kailash Nadh a2629c2c31 Make all ID/UUID labels on the UI onclick -> clipboard copy. 2023-12-31 21:39:19 +05:30
Kailash Nadh b946c33e61 Fix broken chart components. 2023-12-30 23:00:20 +05:30
Kailash Nadh 2feb1b0fb8 Make the name part in from e-mails optional. Closes #1602. 2023-12-30 21:48:12 +05:30
Kailash Nadh b2a5e37ccb Fix incorrect form messages on public re-subscription to double opt-in lists. Closes #1638. 2023-12-30 21:29:34 +05:30
Kailash Nadh bce675870c Fix preconfirm option not working on bulk 'select all' subscriber list management. Closes #1646. 2023-12-30 20:52:14 +05:30
Kailash Nadh 0d74619cac Make providing name in subscriber creation optional and assign internally. Closes #1630. 2023-12-30 15:51:42 +05:30
Kailash Nadh a9a715696a Scroll TinyMCE richtext editor back to caret on dialog close. Closes #1635. 2023-12-29 23:01:51 +05:30
Kailash Nadh db17fa1451 Restore tab selection on campaign page on reload. 2023-12-29 22:51:53 +05:30
Kailash Nadh 49bbf92af5 Merge branch 'upgrade-frontend' 2023-12-29 22:20:59 +05:30
Kailash Nadh ef77a7e10f Replace c3js with chart.js for major dep size reduction. 2023-12-29 22:17:53 +05:30
MaximilianKohler f4b244657b
Update configuration.md +logs section (#1641)
* https://github.com/knadh/listmonk/issues/1462
* https://github.com/knadh/listmonk/issues/13#issuecomment-516259910
2023-12-28 22:13:38 +05:30
Moris 9bd7511952
Update italian translation (#1644)
fixed some grammatical errors
2023-12-28 22:13:16 +05:30
Kailash Nadh af8b420d53 Refactor and upgrade the frontend vue code to work with vite instead of webpack.
- Upgrade eslint and fix a massive number (~2500!) of linting errors from new rules.
- Upgrade babel core frontend dev dependency.
- Upgrade UI lib and other frontend deps.
- Refactor the Vue admin app to use `vite` instead of `webpack`.
- This was an extremely tedious and painstaking, trial-and-error
  alchemy job. My disdain for the Javascript "ecosystem" grows.
- Re-add custom admin appearance endpoints to the refactored Vue page.
- Remove obsolete vue-cli config.
- Re-auto-format all .vue files again to work with new linters.
2023-12-25 19:26:08 +05:30
Kailash Nadh 51af75cfef Add subscription status filter to subscriber list query and admin UI. 2023-12-23 16:43:28 +05:30
Kailash Nadh 8f12c03a8a Fix newly created lists not showing up on other pages automatically. Closes #1589. 2023-12-23 14:59:05 +05:30
Kailash Nadh 01acd386f6 Add tag/type/optin filter options to lists and campaigns APIs. Closes #1631. 2023-12-23 14:45:55 +05:30
Kailash Nadh c468e7ae71 Upgrade Cypress to latest version. 2023-12-23 14:44:50 +05:30