Commit Graph

112 Commits (main)

Author SHA1 Message Date
Manos Pitsidianakis 757c068dd4
Update stderrlog, tempfile dependencies
- Update stderrlog dependency to 0.6.0
- Update tempfile dependency to 3.9

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-02-04 13:50:15 +02:00
Manos Pitsidianakis acb26c52da
web: don't use carets (<,>) in URLs
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-01-26 16:13:40 +02:00
Manos Pitsidianakis 05333385a8
Fix new clippy lints.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-01-10 11:30:54 +02:00
Kevin Schoon 0007bb30c5
add ability to export lists in mbox format
This adds the ability to export mailing lists, threads, or individual messages
in the mboxcl2 format directly from the database.
2024-01-10 11:30:54 +02:00
Kevin Schoon 0216cc1276
bump melib dependency to a modern version
This updates the melib dependency from an old version it was pinned to and
updates the associated code and tests.
2024-01-10 11:30:53 +02:00
Kevin Schoon 3a515c2718
move thread listing to core 2024-01-10 11:27:15 +02:00
Kevin Schoon 27dd84e1ff bump rusqlite to v0.30.0 2023-12-29 15:57:07 +00:00
Manos Pitsidianakis 88c587485e
core: minor fixes
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-12-26 00:59:48 +02:00
Manos Pitsidianakis 300b125c02
Fix clippy lints
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-12-18 20:48:11 +02:00
Manos Pitsidianakis dbbaeda2fb
core/templates: add more info to SUBSCRIPTION_REQUEST_NOTICE_OWNER
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-12-18 20:39:06 +02:00
Manos Pitsidianakis 284fba9436
Fix warning for rust-lang/rust/issues/115010
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-28 14:18:16 +02:00
Manos Pitsidianakis e7ca77aa8a
core/config.rs: add context for I/O errors
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-02 15:09:01 +02:00
Manos Pitsidianakis 6f13cd1e31
core: split commands in their own module
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-31 00:38:22 +02:00
Manos Pitsidianakis 1eb8d7ad22
cli: add command to send subscription confirmation manually
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-30 18:36:24 +02:00
Manos Pitsidianakis 7491ebf6fb
core/tests: fix hardcoded include path
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 12:39:36 +02:00
Manos Pitsidianakis 99e424f76e
core/posts: fix approval_needed in subscription request
Checking if approval is needed for a subscription request was done from
the post policy instead of the subscription policy (ugh...)

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 12:38:38 +02:00
Manos Pitsidianakis f5e21634de
cli: add possible_values for QueueValueParser
--help did not display possible values for --queue argument, so it was
not possible for the user to figure it out without looking at the source
code.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 12:37:21 +02:00
Manos Pitsidianakis 585bee1bc2
cli: add sub req list and accept commands
There was no way to accept subscription requests, which was dumb. So add
one.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 12:36:23 +02:00
Manos Pitsidianakis 7e7d59fb10
core: move build module to build/ subdirectory
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-19 10:32:28 +03:00
Manos Pitsidianakis ad63687c22
core/build.rs: set user_version PRAGMA in generated schema.sql
The generated schema did not include the `user_version` which tracks
which migration is the latest one. This made the README.md example of
creating a database manually fail because it would be initialized with a
`user_version` of 0 and then `mailpot` would attempt to apply migrations
to it.

```shell
$ sqlite3 /path/to/db < ./core/src/schema.sql
$ cargo run --bin mpot -- [some command]
ERROR - 1 no such table: templates in "
ALTER TABLE templates RENAME TO template;"
[1] Error returned from sqlite3 no such table: templates.
```

Fixes #1

https://git.meli.delivery/meli/mailpot/issues/1

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-19 10:27:31 +03:00
Manos Pitsidianakis 0a0aa04677
core: replace error_chain with thiserror
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-09-16 15:08:24 +03:00
Manos Pitsidianakis 89059c1411
core: Add MimeReject filter stub 2023-07-29 10:59:29 +03:00
Manos Pitsidianakis e82eb8fe84
workflows: download new sqlite3 version 2023-06-18 19:40:37 +03:00
Manos Pitsidianakis 8d7c567d5e
rustdoc: add unstable features rustdoc-scrape-examples and rustdoc-map 2023-06-18 12:43:23 +03:00
Manos Pitsidianakis 9b625e7c4c core: implement message filter settings, use them in ArchivedAtLink filter 2023-06-09 16:36:40 +03:00
Manos Pitsidianakis 38ae3798f6 core: add data kind of migrations 2023-06-09 16:36:37 +03:00
Manos Pitsidianakis 73a7abab98 core,web: move StripCarets trait to core 2023-06-09 16:36:34 +03:00
Manos Pitsidianakis 62b8e3b990 core: add list_settings_json and settings_json_schema tables 2023-06-09 16:36:31 +03:00
Manos Pitsidianakis 43098af2c8 core: add separate message filter for subject list tag prefixes 2023-06-09 16:36:27 +03:00
Manos Pitsidianakis d499c67eb4 web: make list description string safe for html if any owner is an admin 2023-06-09 16:33:49 +03:00
Manos Pitsidianakis 211700ad9a
core/schema: add trigger that sorts topics alphabetically 2023-05-19 12:01:25 +03:00
Manos Pitsidianakis 657b58c4ae
core: add migration test 2023-05-18 13:57:51 +03:00
Manos Pitsidianakis e8120c75db
core: Add topics field to MailingList 2023-05-18 10:34:00 +03:00
Manos Pitsidianakis 243f4af198
core: add sqlite savepoints 2023-05-10 16:31:37 +03:00
Manos Pitsidianakis 828bbfe071
grcov: increase coverage with rustdoc tests 2023-05-09 17:14:03 +03:00
Manos Pitsidianakis f8cc3852bb
web: add urlize() and heading() template filters 2023-05-09 14:17:41 +03:00
Manos Pitsidianakis f0bf147a0d
cli: add import from mailman3 rest api 2023-05-09 11:04:19 +03:00
Manos Pitsidianakis 5698cb2bcb
core: add doc examples 2023-05-05 17:00:30 +03:00
Manos Pitsidianakis d5fc2d8e75
core: add database migrations 2023-05-05 15:40:10 +03:00
Manos Pitsidianakis 9eaa580af4
core: reorganise old module hierarchy 2023-05-03 11:46:25 +03:00
Manos Pitsidianakis fedb766942
core: attach archive databases in transaction 2023-05-03 10:35:49 +03:00
Manos Pitsidianakis ca8f899446
Bump version to 0.1.1 2023-04-29 18:29:16 +03:00
Manos Pitsidianakis a37851b108
cli: add repair command with some lints 2023-04-29 18:14:14 +03:00
Manos Pitsidianakis a2b8a65c33
core: add more template replies tests 2023-04-29 13:49:28 +03:00
Manos Pitsidianakis 451e48d788
core: add post rejection tests 2023-04-29 13:33:02 +03:00
Manos Pitsidianakis c29a545326
Bump version to 0.1.0 2023-04-28 20:46:04 +03:00
Manos Pitsidianakis cfd55d3e4a
Tidy up rustdocs 2023-04-25 17:08:30 +03:00
Manos Pitsidianakis 21c9fb9586
core/db/subscriptions.rs: add subscr ops tests 2023-04-25 14:52:59 +03:00
Manos Pitsidianakis 0bb08a1b08
core/db/queue.rs: add delete_from_queue() test 2023-04-25 12:45:27 +03:00
Manos Pitsidianakis 154ea631c6
core/db/policies.rs: test optional policy fetch 2023-04-25 02:12:15 +03:00