Commit graph

908 commits

Author SHA1 Message Date
Benjamin Neff
cd30a2814d
Bump json-jwt and openid_connect
Fixes CVE-2018-1000539
2018-09-05 03:18:59 +02:00
Benjamin Neff
4c4c3d8bf0
Bump json-jwt and openid_connect
Fixes CVE-2018-1000539
2018-09-05 02:19:34 +02:00
Benjamin Neff
8daf934c45
Remove backporting of mention syntax
fixes #7276, #7392 and #7640
2018-04-15 15:49: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
746ff52256
Fix mention in #newhere message when invited by another person
fixes #7701
closes #7702
2018-02-01 23:35:04 +01:00
Benjamin Neff
e0eb76eb2a
Remove aspect_ids parameter from publisher
closes #7683
2017-12-25 20:54:10 +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
b920ddbff5
Move special and ignored associations to tests 2017-10-17 01:32:14 +02:00
Benjamin Neff
f704f30572
Remove conversation visibilities with standard person associations 2017-10-17 01:32:14 +02:00
Benjamin Neff
f4902421ea
Destroy user and person associations in batches 2017-10-17 01:32:14 +02:00
Benjamin Neff
3fafcd9307
The diaspora ID validator now validates if it is lowercase
Relaying relayables will fail with non-lowercase authors.

closes #7625
2017-09-28 23:08:41 +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
cmrd Senya
ea57fc5d25
Fix mistyped remote person in dispatcher spec 2017-09-26 04:06:43 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Benjamin Neff
9240605ad5
Remove internet explorer version check
This was in all stack traces, which confused people ...

We currently only support IE11, so the version check was already old
again ...

When we break old browser versions, we don't check that for other
browsers. So older IE browser just break, like very other older browser
too.

closes #7557
2017-08-24 14:57:43 +02:00
Benjamin Neff
494518def1
Remove old message parameter from invite mail
closes #7571
2017-08-23 21:55:43 +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
a61d5739d4
Re-add disconnect_contacts in AccountDeleter 2017-08-14 04:52:00 +02:00
Benjamin Neff
7ffd7878d0
Use person for AccountDeleter
Also remove `disconnect_contacts` methods, because contacts are already
removed with aspects memberships in `before_destroy`.
2017-08-13 20:10:07 +02:00
Benjamin Neff
245ad9e04d
Remove diaspora_handle from AccountDeletions and add unique index 2017-08-13 19:43:04 +02:00
Benjamin Neff
33e3e3a14d
Fix person spec, use first(15) instead of slice(0..14) 2017-08-12 15:39:25 +02:00
Benjamin Neff
385ab76077
Refactor OpenID specs to prevent duplicate client names 2017-08-12 15:39:24 +02:00
Benjamin Neff
621fdda197
New syntax for request specs 2017-08-12 15:39:23 +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
a4c26b7464
Exclude ignored people from followed tags when building stream-relation
This improves the main stream when you have less or inactive contacts
and ignored an active person that posts many posts with tags. When the
person is only removed after collecting all post ids, you don't see
posts with tags from other people.
2017-07-23 23:33:43 +02: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
Dennis Schubert
1e06fd786c
Merge branch 'next-minor' into develop 2017-05-21 12:06:41 +02:00
Benjamin Neff
7934c1e969
Add NodeInfo 2.0 support 2017-05-21 12:05:54 +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
Steffen van Bergerem
e186811aed Remove unused contacts link methods
closes #7221
2016-11-26 02:25:29 +01:00
Steffen van Bergerem
1863137161 Use string-direction gem for rtl detection
closes #7181
2016-11-15 22:33:56 +01:00
hilkoc
b7791e6c9d Add user setting for default post visibility
fixes #4319

closes #7118
2016-10-26 02:48:11 +02:00
Benjamin Neff
b8c76a3317
Trigger getting started with backbone 2016-09-28 21:59:08 +02: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
c5ebea5bda
Fix randomly failing interacted_at spec
also remove some unnecessary Timecop.return

closes #7060
2016-09-05 22:44:52 +02:00
Benjamin Neff
4fea926057
Only update interacted_at on new comments
I got feedback from many users, that they don't understand how the "my
activity" stream is sorted, because they have posts on the top, but
don't see why. The user doesn't see if a like was added, and it is also
not imported for the user to see the post again then. And we have
notifications if someone likes a users own posts, so no need to move it on
top of the "my activity" stream here too.

closes #7030
2016-09-04 03:29:59 +02:00
Dennis Schubert
003672f0b1
Merge pull request #7011 from SuperTux88/fix-author-not-lowercase
Use Person.by_account_identifier to find the author
2016-08-21 14:26:20 +02:00
Benjamin Neff
1d5080888f Use Person.by_account_identifier to find the author 2016-08-21 04:01:42 +02:00
Benjamin Neff
8d725160f9 Use https for the pod_uri if require_ssl is true 2016-08-21 01:48:52 +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
CSammy
adc9492bf0 Added tests for various result cardinalities of tag pages. 2016-08-15 04:39:36 +02:00
CSammy
1d793fcc49 Reused tag stream query for tag pages. 2016-08-15 04:39:11 +02:00
Benjamin Neff
66b7b7e27a Cleanup legacy invitations from code
Fixes #5116
2016-08-13 01:47:27 +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
cmrd Senya
4ae26e1ded Upgrade devise to 4.2 2016-08-11 12:25:36 +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
Steffen van Bergerem
ba26175421
Fix duplicate activity stream posts 2016-08-07 02:07:05 +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
Steffen van Bergerem
715cb1bb87
Remove unused translations 2016-07-03 18:14:23 +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
c0ab42fecc check if links is an array in the JRD 2016-06-27 04:04:09 +02:00
Benjamin Neff
2a0e87957f validate NodeInfo json against schema in ConnectionTester 2016-06-27 04:04:09 +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
3b1d113a9a add own posts to activity-stream again 2016-06-26 06:21:03 +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
Benjamin Neff
9dfa8e1442 send retractions for public relayables privately if the parent is remote 2016-06-26 06:21:02 +02:00