Commit graph

777 commits

Author SHA1 Message Date
Benjamin Neff
536c96f217
Escape mentions before parsing message with markdown
Usernames that contained underscores were parsed by markdown first. This
broke the diaspora IDs and also added weird html at places where it
wasn't needed. Escaping them before sending the message through the
markdown parser fixes this issue.

As underscores are the only allowed character that can be used for
markdown that is also allowed inside a diaspora ID, this escaping can be
kept pretty simple.

This only fixes it for the mobile UI at the moment, for the desktop UI
it's probably better to fix it in markdown-it.

Related to #7975
2022-10-06 00:45:50 +02:00
cmrd Senya
61d7eb100a post fetch: use warn not debug for exception logging 2022-09-05 23:22:26 +03:00
cmrd Senya
f3c01d5a46 post fetch: remove check for type to allow fetching reshares 2022-09-04 23:28:43 +03:00
cmrd Senya
93d61c7f21 Use federation code for fetching public posts on search 2022-09-04 23:15:30 +03:00
Benjamin Neff
d4079070ed
Merge branch 'next-minor' into develop 2022-07-20 21:34:39 +02:00
Benjamin Neff
3bb9b9a18d
Fix deprecation warnings for rails 6.1 2022-07-20 21:27:41 +02:00
Benjamin Neff
b5a46cf7bb
Fix deprecation warnings for rails 6.0 2022-07-20 21:26:58 +02:00
Benjamin Neff
5669ba6b48
Merge branch 'next-minor' into develop 2022-07-16 04:44:59 +02:00
Benjamin Neff
dd3bc39c97
Render markdown to html for notifications 2022-07-16 04:34:07 +02:00
Benjamin Neff
41633fcea9
Don't autoload PeopleHelper during initialization
this is for future rails versions with zeitwerk autoloader where this
isn't allowed anymore
2022-07-16 04:22:51 +02:00
Benjamin Neff
1b2270572b
Merge branch 'next-minor' into develop 2022-06-29 13:28:02 +02:00
Benjamin Neff
739fc780c3
Manually stringify keys to fix sidekiq 7.0 deprecation warning
closes #8359
2022-06-29 13:27:37 +02:00
Benjamin Neff
e9f7bf382e
Send new remote_photo_path in migration message 2021-11-24 01:18:07 +01:00
Benjamin Neff
4902a35972
Merge branch 'next-minor' into develop 2021-11-23 00:56:41 +01:00
Benjamin Neff
1570e3fb9a
Migrate remote_photo_path and cleanup old photo uploads
If the migration contains a new remote_photo_path migrate all photos of
the old person to this path. If the person was local before, cleanup old
uploaded files of the photos.

closes #8314
2021-11-23 00:43:56 +01:00
Benjamin Neff
95c0bb9ef2
Merge branch 'next-minor' into develop 2021-10-25 03:46:48 +02:00
Benjamin Neff
5714e83ab2
Store signatures of AccountMigrations if the old person is local
That way it can be re-used when sending the AccountMigrations to other
pods again if a message for the migrated account is received.

fixes #7902
closes #8309
2021-10-25 03:40:16 +02:00
Benjamin Neff
3cb1e470a4
Resend AccountMigration or AccountDeletion for closed recipients 2021-10-25 03:34:03 +02:00
Benjamin Neff
750186319e
Merge branch 'next-minor' into develop 2021-09-18 19:24:20 +02:00
Thorsten Claus
8f9ac33649
Using shared markdown options for plain text
fixes #7960
closes #8277
2021-09-18 19:22:27 +02:00
Thorsten Claus
c71caa5cb8
#7960 Add support for Markdown footnote syntax in Mobile view
Splitting stripdown and markdownify options, because the footnote option seems to let the Redcarpet::Render::StripDown function crash
2021-09-18 19:19:02 +02:00
Thorsten Claus
61de6e117d 8192 drop relay example and implementation 2021-05-12 23:23:46 +02:00
Benjamin Neff
4139ae2549
Merge branch 'next-minor' into develop 2020-02-12 00:13:19 +01:00
Dennis Schubert
35da56109f
Create a dup string from the return value of .truncate.
Due to a bug in Rails, .truncate returns a frozen string if the string actually changed, but not if there are no changes. This leads to inconsistent behaviour, and broken tests.

This was fixed upstream, see https://github.com/rails/rails/pull/36109, but the fix did not make it into 5.2.x, so we have to work around for the time being.
2020-02-11 23:53:14 +01:00
Benjamin Neff
d5b7c6d779
Don't relay others relayable on archive import 2019-05-21 23:08:34 +02:00
cmrd Senya
f85f167f50 Implement archive import backend
This implements archive import feature.

The feature is divided in two main subfeatures: archive validation and archive import.

Archive validation performs different validation on input user archive. This can be
used without actually running import, e.g. when user wants to check the archive
before import from the frontend. Validators may add messages and modify the archive.

Validators are separated in two types: critical validators and non-critical validators.

If validations by critical validators fail it means we can't import archive.

If non-critical validations fail, we can import archive, but some warning messages
are rendered.

Also validators may change archive contents, e.g. when some entity can't be
imported it may be removed from the archive.

Validators' job is to take away complexity from the importer and perform the validations
which are not implemented in other parts of the system, e.g. DB validations or
diaspora_federation entity validations.

Archive importer then takes the modified archive from the validator and imports it.

In order to incapsulate high-level migration logic a MigrationService is
introduced. MigrationService links ArchiveValidator, ArchiveImporter and
AccountMigration.

Also here is introduced a rake task which may be used by podmins to run archive
import.
2019-04-26 18:41:27 +03:00
Benjamin Neff
0c2cd2ef1b
Merge branch 'next-minor' into develop 2018-11-04 03:07:50 +01:00
Benjamin Neff
2c56e447ed
Ignore invalid URLs for camo
When people only write `https://` as image URL, this would fail with
`Addressable::URI::InvalidURIError: Absolute URI missing hierarchical segment: 'https://'`.

closes #7922
2018-11-04 03:06:21 +01:00
Dennis Schubert
883eb54ecf
Merge branch 'next-minor' into develop 2018-09-30 18:00:57 +02:00
Benjamin Neff
d765b34018
Make sure URLs are encoded before sending them to camo
Otherwise camo crashes with:
TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters

closes #7871
2018-09-30 18:00:49 +02:00
Benjamin Neff
dcbdb69e22
Merge branch 'next-minor' into develop 2018-07-11 01:35:50 +02:00
cmrd Senya
6f812a5b8f
Add LinksController
LinksController redirects requests for provided diaspora:// links to
respective entities urls.
2018-07-11 01:24:28 +02:00
Benjamin Neff
8daf934c45
Remove backporting of mention syntax
fixes #7276, #7392 and #7640
2018-04-15 15:49:23 +02:00
Benjamin Neff
9171f6b5ef
Revert "Revert "Bump twitter-text""
Bump twitter-text on develop branch again

This reverts commit 15ff67499b.
2018-04-12 04:01:52 +02:00
Benjamin Neff
15ff67499b
Revert "Bump twitter-text"
This adds a new dependency (`libidn11-dev` on debian, I'm not sure about
other distros).

This reverts commit 070e4caa57.
2018-04-12 04:00:41 +02:00
Benjamin Neff
070e4caa57
Bump twitter-text 2018-04-12 02:40:23 +02:00
Steffen van Bergerem
4aec9fbb42
Fix mention syntax backport for two immediately consecutive mentions
Fixes #7695.

closes #7777
2018-04-12 01:44:44 +02:00
Benjamin Neff
602a1dcd55
Store edited_at for relayables in additional_data
closes #7718
2018-02-25 04:33:03 +01:00
Benjamin Neff
0b4b3515a5
Start sending updated_at timestamp as edited_at for profiles
This can be used in later diaspora versions to order the profile updates
so we don't overwrite a newer profile with older data.
2018-02-25 04:32:19 +01:00
Benjamin Neff
5e157dc9c3
Send participation after receiving a public post
This is to let the author of the post know, that this pod is interested
in updates about this post.

The sending user is only used to verify that the participation was sent
from this pod, but lets use an admin/podmin account if available.

closes #7708
2018-02-01 23:40:51 +01:00
Benjamin Neff
b9787cc632
Start sending the blocking flag 2018-02-01 23:35:35 +01:00
Benjamin Neff
70410d1691
Ignore invalid diaspora:// links
Fixes #7651

closes #7652
2017-10-27 02:26:52 +02:00
Benjamin Neff
a36d22d72b
Handle duplicate account migrations
closes #7641
2017-10-17 01:36:25 +02:00
Benjamin Neff
6d5647ec11
Handle duplicate account deletions 2017-10-17 01:32:14 +02:00
Benjamin Neff
84b89d5594
Relay likes for comments 2017-09-28 23:04:35 +02:00
Benjamin Neff
5f5d8c5e13
Replace diaspora:// links in the text 2017-09-28 23:04:35 +02:00
Benjamin Neff
35711606e4
Remove public and provider_display_name from reshares 2017-09-28 23:04:34 +02:00
cmrd Senya
c6ed850a85
Memory usage optimization for archive export
- Removed posts and non contacts from other's data
- Collections are exported in batches to lower memory footprint
- In base exporters create User object instead of keeping instance because it caches all associations

closes #7627
2017-09-26 04:07:18 +02:00
Benjamin Neff
84d553555e
Remove unneeded .freeze
closes #7595
2017-09-17 19:32:45 +02:00
Benjamin Neff
79c2db65d7
Fix Diaspora::Camo.from_markdown with frozen strings 2017-09-17 19:29:16 +02:00