Commit Graph

173 Commits (main)

Author SHA1 Message Date
Manos Pitsidianakis acfa9212f3
Update h2 dependency to 0.3.24
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-02-04 15:27:02 +02:00
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 4bc606236f
web: wrap names with <bdi> to support bidi user names
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdi

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-01-26 15:50:31 +02:00
Manos Pitsidianakis 374e2d8aa5
Cargo.lock: update dependencies
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-01-16 10:58:49 +02:00
Manos Pitsidianakis f7039e1997
web: don't panic when calculating list posts
When going through a list's root messages, use filter_map() instead of
map() to avoid panicking in case the Envelope cannot be parsed or
there's a bug in the thread calculation.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2024-01-10 11:30:54 +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 a9a50f4659
add TO_ADDRESS as an environment variable for sendmail command
This fixes a bug where when using the sendmail command the server sends mail
to the mailing list address rather than subscribers of the list. Additionally
if the sendmail command exits with a non-zero exit code mpot will now output
stderr for diagnostic purposes.
2024-01-10 11:30:17 +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 23fb0f924c
Add rustfmt.toml symbolic links to each crate
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-12-18 20:50:17 +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 7d36ec045e
web: add link anchors to posts
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-09 08:27:48 +02:00
Manos Pitsidianakis 5fb850bd71
web: fix topic tags spacing
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-06 09:27:58 +02:00
Manos Pitsidianakis 11e3d893c3
web: fix invalid html markup
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-05 17:47:11 +02:00
Manos Pitsidianakis a46b5b315d
.github: replace ~ with /home/runner
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-02 15:22:40 +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 c470a6129d
web: add in-memory ssh sig verification with ssh-key crate
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-11-02 14:11:20 +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 250eb0a2ab
web: fix glob re-export clippy lint
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-30 18:43:23 +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 9620b4e21c
web: show active sub requests in edit list page
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 13:51:17 +02:00
Manos Pitsidianakis bedb47981b
web: add accept sub request option
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 13:30:08 +02:00
Manos Pitsidianakis 19e8b626ca
web: fix clippy lints
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 12:39:54 +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 57eeb1fe77
web: fix invalid column name in list edit page
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-29 11:55:46 +02:00
Manos Pitsidianakis 91b1cc2abe
Update --help output in README.md
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2023-10-19 10:35:39 +03: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 8e8bf19f67
web: Fix some list listing CSS 2023-06-13 19:42:54 +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 7d563ea34a web: add searching for topic tags 2023-06-09 16:36:23 +03:00
Manos Pitsidianakis 2238b75c45 web: fix list tag text padding 2023-06-09 16:36:08 +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