Trinity Pointard
5f059c3e98
Fix issues with tags and mentions
...
Fix issue where leading @ or # of a mention/hashtag get duplicated
Fix issue where normal tags were being overwritten by hashtags
2018-12-06 15:10:07 +01:00
Trinity Pointard
39deede935
Verify signature date
...
Fix #286
Remove indexed from post_id search field as it was added by mistake
2018-12-04 00:08:55 +01:00
fdb-hiroshima
74c398d60c
Run cargo clippy on whole project ( #322 )
...
* Run cargo clippy on plume-common
Run clippy on plume-common and adjuste code accordingly
* Run cargo clippy on plume-model
Run clippy on plume-model and adjuste code accordingly
* Reduce need for allocation in plume-common
* Reduce need for allocation in plume-model
add a quick compilation failure if no database backend is enabled
* Run cargo clippy on plume-cli
* Run cargo clippy on plume
2018-11-26 10:21:52 +01:00
fdb-hiroshima
8a4702df92
Add unit tests for main model parts ( #310 )
...
Add tests for following models:
- Blog
- Instance
- Media
- User
2018-11-24 12:44:17 +01:00
KokaKiwi
100f6307a7
Set Content-Type for ActivityPub request to correct value. ( #315 )
2018-11-23 13:18:33 +01:00
Baptiste Gelez
6b2d9d4221
Tests infrastructure for plume-models ( #302 )
...
First step for testing `plume-models`. I only added one test for the moment, but we should add more in future PRs.
2018-11-01 22:23:38 +01:00
Baptiste Gelez
2394ff424b
Add an ApiToken model, and an endpoint to get one
2018-10-30 18:13:49 +01:00
Trinity Pointard
1689813df4
Deduplicate tags and mentions
...
Use set to work on tags and mentions, allowing deduplication of them,
and clearer code
May also help with distinguishing tags and hashtags latter
2018-10-29 20:54:27 +01:00
Baptiste Gelez
fcf911fac9
ActivityPub: don't delete anything if the actor is not authorized
2018-10-22 16:29:25 +01:00
Trinity Pointard
95ea248518
Add support for hashtag on user interface
...
Add migration to fix typo
Add support for linking hashtags with posts
Rework tag search page so it says a nicer message than page not found
when no post use that tag
Add new string to translation
2018-10-20 19:27:49 +02:00
Trinity Pointard
4fa3a0f6ee
Add support for hashtags in md parser
2018-10-20 16:38:16 +02:00
Trinity Pointard
4e6f3209d5
Normalize panic message
...
Change all unwrap to expect
Normalize expect's messages
Don't panic where it could be avoided easily
2018-10-20 08:44:33 +02:00
Trinity Pointard
ed5bafbbc4
Update webfinger and reqwest
...
Update webfinger to 0.3.1
Update reqwest to 0.9
Fix #257
2018-10-11 13:51:45 +02:00
Baptiste Gelez
8fdb55a501
Merge pull request #256 from Plume-org/verify-signature
...
Verify activity's signature
2018-10-10 21:31:11 +01:00
Bat
915b9bb0e5
Use env!("CARGO_PKG_VERSION") instead of hardcoding version when possible
...
See https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-crates
2018-10-06 18:55:30 +01:00
Trinity Pointard
0d6a2af851
Code style improvement
2018-10-06 10:57:37 +02:00
Trinity Pointard
3466e55548
Implement JSON-ld signature verification
...
Implement JSON-ld signature verification
Move signature verification functions to the proper file
2018-10-06 10:06:06 +02:00
Trinity Pointard
62c94ed463
Refactor and verify http signature on personnal inbox
...
Verify signature on personnal inbox
Reduce code duplication
Put Headers in plume-models
2018-10-03 20:48:25 +02:00
Trinity Pointard
0a5d435249
Verify http signatures
2018-10-03 09:31:38 +02:00
Trinity Pointard
d610ed1641
Add verify() to the Signer trait
...
And implement it for Blog and User
2018-09-30 12:08:04 +02:00
Trinity Pointard
eafe1ed490
Add content digest to signed http headers
...
Sign the Digest HTTP header
2018-09-30 12:08:04 +02:00
Bat
8fa83dfe25
Version bump
...
0.1.x was the pre-alpha.
The first Alpha will be 0.2.x
2018-09-11 19:53:14 +01:00
Bat
08cb337df6
Broadcast activities to all known instances
...
We consider everything posted with Plume public (for the moment at least)
2018-09-09 12:19:11 +01:00
Thomas Letan
0ef4717a7f
deps: Update to a more recent rocket and rust toolchain
...
With this patch, Plume will be use a more up-to-date revision of
Rocket, that works with nightly-2018-07-17. It may have been able to
make it work with a more recent revision, but it turns out rocket has
introduced several breaking changes so I’d rather fix those.
Besides updating rocket_i18n and rocket_csrf to use the same revision
than Plume, this patch deals with the new implementation of the
Uri<'_> type. It silents a class of warnings, to deal with a change in
rustc which affects diesel. This latter change should be reverted as
soon as diesel releases a new version of its crate.
2018-09-08 15:51:55 +02:00
Bat
7152d714ae
Add a source property to posts
...
To store the Markdown
2018-09-06 20:00:55 +01:00
Bat
a54d2e9d71
Federate tags
2018-09-06 09:21:08 +01:00
Bat
97c0b533ab
Add Atom feeds for blogs and users
2018-09-01 21:08:26 +01:00
Bat
cea548b821
Add a way to delete articles
...
Fixes #116
2018-09-01 16:28:47 +01:00
Bat
5583029b07
Update the WebFinger crate
...
Fixes an issue with some Mastodon accounts
2018-07-26 21:35:35 +02:00
Bat
6b58dcfda5
Fix a bug in mentions
...
Fixes #98
2018-07-18 19:00:49 +02:00
Bat
16124e890e
Add some test for mentions
2018-07-18 18:35:50 +02:00
Bat
2b04b39f5d
Correctly parse HTTP Accept headers
2018-07-18 16:58:28 +02:00
Bat
3d436c10b1
Accept more content types when making AP requests
2018-07-18 16:25:02 +02:00
Bat
389ad28d14
Don't broadcast activities to local users
...
Fix #80
2018-07-18 15:49:13 +02:00
Bat
b95e384ed7
Use the ApRequest guard for routes that need it + Fix a few issues with its impl
...
Also fixes some Rocket warnings!
2018-07-11 17:30:01 +02:00
Bat
8e47219d82
Add a ApRequest request guard to accept multiple ActivityPub header on one route
2018-07-09 17:24:53 +02:00
Bat
cb0b8297fa
Fix a typo in the signature module
...
Thanks fdb-hiroshima for noticing it
2018-06-27 21:45:36 +02:00
Bat
507d3e6183
Use USE_HTTPS to compute AP URLs
...
Instead of relying on cfg(debug_assertions)
2018-06-26 16:21:58 +02:00
Bat
3bc90e71d4
Clean Cargo.toml files
2018-06-23 17:39:58 +01:00
Bat
68c7aad179
Big repository reorganization
...
The code is divided in three crates:
- plume-common, for the ActivityPub module, and some common utils
- plume-models, for the models and database-related code
- plume, the app itself
This new organization will allow to test it more easily, but also to create other tools that only reuse a little part of
the code (for instance a Wordpress import tool, that would just use the plume-models crate)
2018-06-23 17:36:11 +01:00