Commit graph

4877 commits

Author SHA1 Message Date
Noah Leal
ad91dddd63
Issue #8119 - Add length validation to a profile's gender field.
closes #8127
2020-06-13 23:31:03 +02:00
Jonne Haß
60a50c881d update will_paginate to 3.3.0 2020-03-20 20:03:42 +01:00
Dennis Schubert
e40a07f204
Replace be_success with be_successful in specs.
be_success is deprecated and will be removed in Rails 6.
2020-02-11 23:53:14 +01:00
Jonne Haß
6a7e937d90 Update open_graph_reader to 0.7.0
This should fix undefined method `og' for #<OpenGraphReader::Base:0x00007f73c53f2308 @bases={}>
for sites that have OpenGraph tags of other namespaces but no actual OpenGraph core tags
2019-09-01 02:42:11 +02:00
Benjamin Neff
b42c9896bc
Migrate pending profile photos and fix upload to unpend profile photos
fixes #8043

closes #8044
2019-07-04 02:29:17 +02:00
Benjamin Neff
df4e79b842
Cleanup pending photos which were never posted with cronjob
Only delete photos older than a day, so we don't delete photos for posts
which were uploaded 10 minutes ago and the author is still writing the
post for it.

closes #8041
2019-07-03 13:24:27 +02:00
Jonne Haß
1227f34b2a Pass normalized URI to OpenGraphReader
This ensures the hostname is downcase and thus subsequent third party library
assumptions hold, namely http-cookie (pulled through faraday-cookie_jar) doesn't
raise

closes #8021
2019-05-24 22:43:08 +02:00
flaburgan
4feab5219e
Use a partial to share code between mobile and desktop, add the new route to the RegistrationController, drop flash message for closed registrations 2019-05-12 00:25:36 +02:00
alebor-5
469983a623
Improve communication about signing up on closed pods
fixes #7767
2019-05-12 00:25:08 +02:00
Benjamin Neff
165b8f4f6e
Don't encrypt the OTP secret
It doesn't add any security to have this encrypted, but it adds
complexity for podmins, because they need to backup the key.

closes #8014
2019-05-12 00:06:28 +02:00
Benjamin Neff
54fd4846c0
Use password to disable 2FA instead of a token
Using token doesn't make much sense when you can generate new tokens
right below.

closes #8006
2019-04-30 22:51:51 +02:00
Benjamin Neff
607659939d
Enable paranoid mode for devise
fixes #8001

closes #8003
2019-04-30 00:21:00 +02:00
lislis
9d5b981809 Two factor authentication (#7751) 2019-04-28 23:24:40 +02:00
Benjamin Neff
17af65e22c
Allow links with only the diaspora ID to link to a profile
closes #8000
2019-04-28 16:48:31 +02:00
Benjamin Neff
91aae4d755
Fix 500er when calling protocol handler with invalid URL 2019-04-28 16:44:29 +02:00
Jonne Haß
d443401361
Stabilize Diaspora::Federation::Entities.build.builds a comment with edited_at
closes #7994
2019-04-26 17:41:25 +02:00
Jonne Haß
a38a93523d
Stabilize Diaspora::Federation::Receive.comment.saves the signature data 2019-04-26 17:40:48 +02:00
Benjamin Neff
2894984f57
Fix order of posts on tags-stream for tags including 'activity'
closes #7959
2019-01-13 02:17:15 +01:00
Benjamin Neff
6fb1e1f524
Bump jwt 2018-11-17 21:05:42 +01:00
Benjamin Neff
de5e22a543
Bump faraday 2018-11-17 21:04:37 +01:00
Benjamin Neff
25a9f5d5d7
Merge branch 'master' into next-minor 2018-11-08 20:58:22 +01:00
Benjamin Neff
32cd764786
Fix XSS via OpenGraph on mobile 2018-11-08 20:41:50 +01:00
Hank Grabowski
cab0e0100b
7841 Post Unlike sets status icon correctly
closes #7882
fixes #7841
2018-11-08 05:06:34 +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
Benjamin Neff
fc6893d4fc
Remove facebook integration
Facebook removed the API and facebook integration is broken now, so lets
remove it.

closes #7874
2018-10-08 02:50:25 +02:00
Benjamin Neff
44452749bc
Don't depend on the database content when loading the tests
closes #7872
2018-09-30 21:44:44 +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
Dennis Schubert
65a2b8da12
Include PostsHelper in NotifierHelper
Fixes #7852

closes #7853
2018-09-06 02:33:33 +02:00
Benjamin Neff
cd30a2814d
Bump json-jwt and openid_connect
Fixes CVE-2018-1000539
2018-09-05 03:18:59 +02:00
Benjamin Neff
08e108d3d8
Fix comment notification subject for posts without text
Fixes #7854
2018-09-05 03:17:58 +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
HankG
5a8bdc1e71
Facebook plugin always appends (via D* post URL) to cross-posts
fixes #7770

closes #7774
2018-06-20 00:47:12 +02:00
cmrd Senya
87968284ba
Support fetching StatusMessage by Poll guid
When public fetch is requested with Poll guid, return parent
StatusMessage for it, which includes the Poll in its turn.

closes #7815
2018-06-16 04:36:05 +02:00
cmrd Senya
a3378ae744
Account merging: handle duplicates for TagFollowing
I missed it in #7803

closes #7807
2018-05-16 00:54:16 +02:00
cmrd Senya
cb294fd3f4
Add completed_at to account_migrations
Use completed_at datetime field as an indication of a performed migration

closes #7805
2018-05-03 21:31:29 +02:00
cmrd Senya
e9f6dbdffd
Add unique index to poll participations on author_id and poll_id
Previously we had only a Rails validation which ensured poll participation
uniqueness but this adds uniqueness control to the database level, so that
uniqueness is guaranteed even when changing data with avoiding Rails
validations.

closes #7798
2018-05-03 21:28:38 +02:00
cmrd Senya
8680b24a2e
Account merging support
Adds support for merging accounts with account migration by eliminating
duplicate data in favor of the target user's data.

closes #7803
2018-04-30 22:06:34 +02:00
HankG
211e5cd1bc
Bugfix 7714 twitter char overflow
closes #7791
2018-04-23 20:33:07 +02:00
Benjamin Neff
9a661177f1
Replace rails-assets-perfect-scrollbar with rails-assets-utatti-perfect-scrollbar
closes #7772
2018-04-12 02:44:43 +02:00
Benjamin Neff
0e526f9221
Bump jasmine
Disable random tests for now, many tests fail when this is true (which
is now default)
2018-04-12 02:41:56 +02:00
Benjamin Neff
b8094544a0
Bump faraday 2018-04-12 02:41:54 +02:00
Benjamin Neff
686310fb8e
Simplify /podmin redirect
Some podmins were confuse how they can disable this redirect and I think
the rule with two users can actually be a little confusing. I think the
main goal of this page to give the podmin a little start and I think
after they configured everything, the pod works and they found the link
to the wiki to make themself an admin, it is OK to remove the redirect.

Also it's bad for single-user pods where this page always stays active,
even if they are an admin, but have only one user. It's more useful for
single-user pods to have the login on the home page.

closes #7783
2018-04-12 01:55:46 +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
Steffen van Bergerem
01ae004518
Make public stream accessible for logged out users
Fixes #6564.

closes #7775
2018-04-12 01:42:17 +02:00
Benjamin Neff
7d6623d069
Remove contacts page on profiles
closes #7769
2018-04-12 01:40:49 +02:00
Benjamin Neff
4fa92c1823
Remove flag for contacts visible to each other
This feature only worked on the same pod and was more confusing than
useful.
2018-04-12 01:39:11 +02:00
Benjamin Neff
9b83df9646
Merge branch 'master' into next-minor 2018-04-10 01:57:56 +02:00
Benjamin Neff
f4ea138a64
Don't return a SafeString after truncate 2018-04-10 01:54:29 +02:00
cmrd Senya
e0e40f73c3
Spec for post creation bad aspects_ids issue 2018-03-25 08:28:59 +02:00
kas70
40fc175d6e
only include mutual sharing contacts in conversations form on contacts page
fixes #7377
2018-03-22 23:15:24 +01:00
Dennis Schubert
3643612b1c
Back to Top: Make sure to re-check the visibility after the scrolling is done
If a user scrolls just below the 1000px threshold and clicks the back-to-top button within 250ms, we'll never hide the button as the scroll event gets throttled away. That's rather inconvenient.

closes #7729
2018-03-07 00:39:36 +01:00
Benjamin Neff
4e5ee36675
Keep order of profile tags
closes #7724
2018-02-27 00:48:42 +01:00
Benjamin Neff
4cd8de5327
Refactor taggable tests to use let 2018-02-27 00:48:08 +01:00
Benjamin Neff
beeb073dbe
Fix followed tags posts in stream for posts with multiple tags
When there were posts with many followed tags they were returned
multiple times, resulting in less than 15 unique posts. That resulted in
some posts to be missed in the stream.

Fixes #4503

closes #7715
2018-02-25 04:35:49 +01:00
Benjamin Neff
f0aca56c8f
Don't retry for PublicKeyNotFound
We only return `nil` when we know the person, but don't know the key or
the key is invalid, so it doesn't make sense to retry in this case. When
the person isn't known and can't be fetched we raise a DiscoveryError
which will be retried.

Also the errors were moved to the `Signable` module in the last release.

closes #7717
2018-02-25 04:34:04 +01: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
c89b2ad809
Prevent duplicate mention notifications when the post is received twice
closes #7721
2018-02-22 00:49:21 +01:00
cmrd Senya
b32c844314
Support for embedding HTML5 media links
Use markdown-it-html5-embed plugin so user can embed audio and
video using the markdown link syntax []() in the HTML5 way.
2018-02-17 19:21:10 +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
6c5b8b73af
Fix post_message for posts without text
fixes #7700
closes #7706
2018-02-01 23:39:18 +01:00
Benjamin Neff
a32cac06ab
Retry Contact messages 20 time (about two weeks)
closes #7705
2018-02-01 23:37:53 +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
Brad Koehn
1a3c16eb6e
update to support 280 character Twitter
closes #7694
closes #7662
fixes #7661
2018-01-09 00:05:33 +01:00
Janakas
0347507b20
Delete archive files when closing an account
closes #7684
2018-01-08 21:15:41 +01:00
Janakas
d4e5d13a8f
Remove old export archives after 2 weeks
Fixes #5727
2018-01-08 21:14:06 +01:00
Benjamin Neff
c135ace407
Fix notifications when people remove their birthday date
Some people may remove their birthday date after the notification was
sent, which then breaks the notification page for other users. Let's
just display the date when the notification was created, and not display
the users updated birthday date. When users update from date A to B it
always looks weird anyway, when we display the same new date B twice on
different days, or display two different dates for the same user.

We could remove notifications when users change or remove their
birthday, but that would be way more complex and also we usually don't
remove notifications (not even for deleted posts).

Fixes #7689

closes #7691
2018-01-05 01:50:11 +01:00
Benjamin Neff
e0eb76eb2a
Remove aspect_ids parameter from publisher
closes #7683
2017-12-25 20:54:10 +01:00
Rete2
fc33a2ac5d
Create birthday notification and mailer
closes #7624

fixes #1649
2017-12-18 04:34:35 +01:00
Benjamin Neff
70410d1691
Ignore invalid diaspora:// links
Fixes #7651

closes #7652
2017-10-27 02:26:52 +02:00
cmrd Senya
ad025850ce
Forbid user destruction 2017-10-17 01:38:36 +02:00
cmrd Senya
973e9d98c6
Raise sensible error message when user is missing
That's for the case when podmin has messed up the database
2017-10-17 01:38:36 +02:00
cmrd Senya
f212b51f7f
Check for user existence on aspect membership destruction 2017-10-17 01:38:36 +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
fd36517dee
Limit the number of parallel exports that are allowed to run
closes #7629
2017-09-28 23:11:46 +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
4a994b0a48
Creates references for linked posts after create 2017-09-28 23:04:34 +02:00
Benjamin Neff
c82e891c03
Add reference source and target behaviour 2017-09-28 23:04:34 +02:00
Benjamin Neff
28d3271933
Create refereces model 2017-09-28 23:04:34 +02:00
Benjamin Neff
35711606e4
Remove public and provider_display_name from reshares 2017-09-28 23:04:34 +02:00
Benjamin Neff
95fbd3fc66
Don't change the filename of the export everytime the user is touched
closes #7622
2017-09-28 03:28:15 +02:00
Benjamin Neff
ac39e920c8
Add camo to NodeInfo
closes #7617
2017-09-28 03:20:31 +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
cmrd Senya
9f0b74ebbb
Memory usage test for archive export
It is not included into the main test suite, because it has :performance tag.

One can run this test using command:
$ bin/rspec --tag performance spec/integration/export/memory_usage_spec.rb

This test creates additional fixtures set to speed up repeated runs.
2017-09-26 04:06:43 +02:00
cmrd Senya
265a7ee253
Don't force fixtures rebuild on each rspec run
Main purpose of fixtures for us is to speed up test runs. Rebuilding
fixtures each run makes them pointless. They will be rebuilt automatically
if some of "files_to_check" are changed, so we're protected from the case
when fixtures are outdated and don't load properly.
2017-09-26 04:06:43 +02:00
cmrd Senya
9ee9dbe969
Fix local migration run without old private key
It was possible to run migration locally without providing old private
key. This way migration was performed but not dispatched, which obviously
leads to desynchronization of the federation state so let's validate sender
before performing any actual actions.

closes #7558
2017-09-26 04:06:16 +02:00
Benjamin Neff
655fe2a912
Cleanup invalid polls without status message
closes #7614
2017-09-18 03:24:52 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Benjamin Neff
44ebc7375a
Remove unused spec-doc.rb
closes #7594
2017-09-17 19:27:47 +02:00
Steffen van Bergerem
b77ecd482a
Replace aspect_membership_dropdown with aspect-membership-dropdown 2017-08-31 02:44:54 +02:00
Steffen van Bergerem
473cc2518b
Replace comment_box with comment-box 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
7729635485
Replace publisher_textarea_wrapper with publisher-textarea-wrapper 2017-08-31 02:44:53 +02:00