Commit graph

215 commits

Author SHA1 Message Date
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
cmrd Senya
7374661e2f
Update the user data export archive format.
This commit introduces changes to the user data export archive format.
This extends data set which is included in the archive. This data can be
then imported to other pods when this feature is implemented.

Also the commit adds the archive format json schema. ATM it is used in
automatic tests only, but in future it will also be used to validate
incoming archives.
2017-08-10 09:36:26 +03:00
cmrd Senya
c63493b0d1
New Exporter::NonContactAuthors class
This class is capable of quering a list of people from authors of given posts that are non-contacts of a given
user.
2017-08-09 21:43:31 +03:00
cmrd Senya
c985af1f85
New Exporter::OthersRelayables class
This class implements methods that allow to query relayables (comments, likes, participations,
poll_participations) of other people for posts of the given person.
2017-08-09 18:09:04 +03:00
cmrd Senya
fca6121c6a
Exporter::PostsWithActivity class
This class allows to query posts where a person made any activity (submitted comments,
likes, participations or poll participations).
2017-08-09 18:09:04 +03:00
Benjamin Neff
8942bb98c8
Send and receive public flag for profile 2017-07-23 02:36:29 +02:00
Benjamin Neff
be8a1dfef4
Add tests for ContactRetraction 2017-07-03 03:14:42 +02:00
Benjamin Neff
283722a693
Use build_relayable_federation_entity helper for receive specs 2017-07-03 03:14:41 +02:00
Benjamin Neff
3ab674552f
Rename xml_order to signature_order 2017-07-03 03:14:41 +02:00
Benjamin Neff
0f551c7b19
Fix public flag for contact retractions 2017-07-03 03:14:41 +02:00
Benjamin Neff
a6d7dbf1dd
Send MagicEnvelope as body with correct Content-Type in specs
Related to diaspora/diaspora_federation#30
2017-07-03 03:14:40 +02:00
Benjamin Neff
381c03cfd7
Remove backward-compatibility for Retractions 2017-07-02 23:56:01 +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
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
78c7156e72
Replace FactoryGirl with Fabricate for federation factories 2017-07-02 23:55:59 +02:00
Benjamin Neff
e1bf447aad
Merge branch 'next-minor' into develop 2017-03-04 21:08:18 +01:00
Steffen van Bergerem
12deda1429
Change regexp for hashtags
Fixes #5765, fixes #5815, supersedes #6099.

closes #7350
2017-03-04 21:08:11 +01:00
Benjamin Neff
5c444e62be
Add @ before mentions for mobile and notifications
fixes #7269
2017-02-12 20:10:36 +01:00
Benjamin Neff
2d8d0255dd
Improve handling with new mention syntax without name
* fallback to diaspora ID when person is not found
* fix filter_people when the person is not found
* write some more tests
2017-01-31 20:56:22 +01:00
Benjamin Neff
84e2a131cf
Remove { and } from the name when backporting mentions
Because } is not compatible with the regex.
2017-01-31 20:56:21 +01:00
Benjamin Neff
0e89d60117
Use name of mentioned person in plain text 2017-01-29 03:06:26 +01:00
Benjamin Neff
322f92110a
Backport new mention syntax to old syntax for backward compatibility
See #7276
2017-01-29 03:06:26 +01:00
Benjamin Neff
a0d200d209
Update regex for new mention syntax
See #7276
2017-01-29 03:06:26 +01:00
cmrd Senya
33ad411bbd
Mentions in comments backend changes 2016-11-28 15:56:56 +02:00
Justin Ramos
fa71af71c1 require spec_helper in .rspec
closes #7223
2016-11-27 21:27:12 +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
Jonne Haß
fedd378dcf
Merge pull request #6992 from SuperTux88/4491-fetch-mentioned-people
fetch mentioned people if they don't exist locally yet
2016-08-16 10:41:02 +02:00
Jonne Haß
e70ffebc49 Merge pull request #6805 from cmrd-senya/mention-name-fixup
Fix up the meaning of the name parameter in mention
2016-08-11 13:28:02 +02:00
cmrd Senya
d200e92aeb Fix up the meaning of the name parameter in mentions
The desktop frontend now treats the "name" parameter of mention as
a string to display unconditionally. But the Diaspora::Mentionable
renders mentions the different way: "name" is treated as a fallback
string which is rendered only if the person's name is unavailable.
This reflects on the mobile version ATM. This patch makes it behave
the same way as the current desktop version does.
2016-08-11 13:19:48 +03:00
Benjamin Neff
d3edbfd829 remove pending flag from posts 2016-08-08 19:37:10 +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
cmrd Senya
035a483a7a Fix randomly failing profile federation spec
same as #6913
2016-07-17 13:02:46 +03: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
Steffen van Bergerem
d6fbde3b7f
Fix randomly failing profile federation spec 2016-07-09 19:22:22 +02:00
Benjamin Neff
824201fedc fetch mentioned people if they don't exist locally yet
fixes #4491
2016-06-27 17:04:22 +02:00
Benjamin Neff
9fda255add use the parent author of the target as sender for relayable retractions 2016-06-26 11:05:23 +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
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