Commit graph

72 commits

Author SHA1 Message Date
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
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
35711606e4
Remove public and provider_display_name from reshares 2017-09-28 23:04:34 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
cmrd Senya
45619cb153
Account migration model and message support
This commit introduces support for AccountMigration federation message
receive. It covers the cases when the new home pod for a user is remote
respective to the recepient pod of the message. It also allows to initiate
migration locally by a podmin from the rails console. This will give the
pods a possibility to understand the account migration event on the
federation level and thus future version which will implement migration
will be backward compatible with the pods starting from this commit.
2017-08-15 01:32:34 +03:00
Benjamin Neff
245ad9e04d
Remove diaspora_handle from AccountDeletions and add unique index 2017-08-13 19:43:04 +02:00
Benjamin Neff
b8ebb778bf
Refactor federation mappings
The hashes don't work properly with rails 5, there are different classes
loaded when called from the rails engine with missing inheritance.

Also the hashes never worked well with spring.
2017-08-12 15:39:21 +02:00
Benjamin Neff
d0b634852b
Fix belongs_to, it is now required by default 2017-08-12 15:39:20 +02:00
Benjamin Neff
8942bb98c8
Send and receive public flag for profile 2017-07-23 02:36:29 +02:00
Benjamin Neff
a931bee319
Make Participation entity non-relayable 2017-07-03 03:14:42 +02:00
cmrd Senya
c2b9b8ab54
Use ContactRetraction for stop sharing with someone 2017-07-03 03:14:42 +02:00
Benjamin Neff
3ab674552f
Rename xml_order to signature_order 2017-07-03 03:14:41 +02:00
Benjamin Neff
b6b0aac969
Send only Retractions
Related to diaspora/diaspora_federation#27
2017-07-02 23:56:00 +02:00
Benjamin Neff
e907b3eb18
Send Contact entity for start/stop sharing
Related to diaspora/diaspora_federation#32
2017-07-02 23:56:00 +02:00
Benjamin Neff
f6dc809e29
Send new MagicEnvelope and EncryptedMagicEnvelope
Related to diaspora/diaspora_federation#30
2017-07-02 23:56:00 +02:00
Benjamin Neff
95def40c55
Make Message entity non-relayable
Related to #36
2017-07-02 23:56:00 +02:00
Benjamin Neff
5e3ea249a9
Replace additional_xml_elements with additional_data for relayables 2017-07-02 23:55:59 +02:00
Benjamin Neff
b79ccc5207
Add created_at to comments 2017-01-15 00:12:08 +01:00
Benjamin Neff
fe5811bb65
Don't federate to pods that are offline for more than two weeks
Also fix a case where offline_since can be nil.

fixes #6220

closes #7120
2016-09-25 03:20:41 +02:00
Benjamin Neff
fe071aa2a2
Deliver to each recipient only once
closes #7071
2016-09-20 04:25:04 +02:00
Benjamin Neff
1d5080888f Use Person.by_account_identifier to find the author 2016-08-21 04:01:42 +02:00
Benjamin Neff
1d8ce00bef save signature data on receive 2016-08-08 18:56:37 +02:00
Benjamin Neff
2a6ca1b831 use signature data for federation 2016-08-08 18:56:37 +02:00
Benjamin Neff
2cd831f94e also validate remote posts
all data is included in the federated status_message, so we can validate
on receive. add the photos to the status_message before save.
2016-07-17 01:40:00 +02:00
Benjamin Neff
df9874b73a remove raw_message
This was only an alias for "text", and "raw_message" is also not used
for federation anymore, so we can drop it.
2016-07-17 01:40:00 +02:00
Benjamin Neff
32cc0951bb bump diaspora_federation 2016-07-15 02:02:55 +02:00
Jonne Haß
5d318400c9
Diaspora::Federation::Receive::ignore_existing_guid returns nil when
ignoring the error message

Previously it returned the return value of Logging::Logger#warn, which
is true for loggers that log the warn level. However
Diaspora::Federation::Receive::receive_relayable checks the return value
for truthiness in order to decide whether to attempt to relay it,
resulting in a NoMethodError: undefined method `parent' for
true:TrueClass in Diaspora::Federation::Receive::relay_relayable

This change is cosmetic as the exception raised prevented any action
that shouldn't happen anyway, so there's no actual logic change.
2016-06-26 17:01:33 +02:00
Benjamin Neff
7241b1c054 use the parent author as salmon sender, if the parent author is local 2016-06-26 10:28:32 +02:00
Benjamin Neff
e08306dab4 remove participation parent author check
the check that the participation parent author is local is now done in
the diaspora_federation gem
2016-06-26 06:21:03 +02:00
Benjamin Neff
65f03b2d08 extract mappings between diaspora and the federation gem 2016-06-26 06:21:02 +02:00
Benjamin Neff
7bdf4921fd use private_class_method with returned symbol of def 2016-06-26 06:21:02 +02:00
Benjamin Neff
bb0d7e46dc add #object_to_receive to Diaspora::Federated::Base 2016-06-26 06:21:02 +02:00
Benjamin Neff
a81bdac38c don't send relayables back to sender pod
send retraction for relayable to target author if retracted by parent author
2016-06-26 06:21:02 +02:00
Benjamin Neff
f58167c154 disconnect when receiving a Contact with sharing=false 2016-06-26 06:21:02 +02:00
Benjamin Neff
b39f3ccc74 relay relayables after receive
also refactored relayable specs to use `let`
2016-06-26 06:21:02 +02:00
Benjamin Neff
91c6c74ca0 retract relayables if the author is ignored by the parent author 2016-06-26 06:21:02 +02:00
Benjamin Neff
c15babdc9f allow to dispatch to specific subscribers 2016-06-26 06:21:02 +02:00
Benjamin Neff
03123f1c4d remove more unused code and cleanup 2016-06-26 06:21:01 +02:00
Benjamin Neff
2476b74dbe refactoring delete from services 2016-06-26 06:21:01 +02:00
Benjamin Neff
dee8bc6f0e write specs for dispatcher 2016-06-26 06:21:01 +02:00
Benjamin Neff
645034800d deliver public posts to relay 2016-06-26 06:21:01 +02:00
Benjamin Neff
902d7faca4 relay retractions for relayables 2016-06-26 06:21:01 +02:00
Benjamin Neff
42995cacc0 deliver retractions to services 2016-06-26 06:21:01 +02:00
Benjamin Neff
65ba573a3b Contact retraction 2016-06-26 06:21:00 +02:00
Benjamin Neff
89fbcf7c56 federate retractions 2016-06-26 06:21:00 +02:00