Commit graph

2093 commits

Author SHA1 Message Date
Benjamin Neff
35711606e4
Remove public and provider_display_name from reshares 2017-09-28 23:04:34 +02:00
Benjamin Neff
a9bb673881
Bump rubocop 2017-09-28 03:15:30 +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
f7cbb20e11
Fix AppConfig.version_string with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
79c2db65d7
Fix Diaspora::Camo.from_markdown with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Steffen van Bergerem
460178ad34
Fix the screenshot tool
closes #7605
2017-09-03 23:53:26 +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
Dennis Schubert
5b1be7d8da
Remove the schema.rb from this repo
Although this is contrary to rails best-practises, we cannot provide a schema.rb that works for both MySQL and PostgreSQL, so we have no choice. Our migrations are maintained, so it should always be possible to get back to a "clean" database schema anyway.
2017-08-12 15:39:26 +02:00
Benjamin Neff
1adb4837ef
Fix OpenID Connect TokenEndpoint when client id is not found 2017-08-12 15:39:24 +02:00
Benjamin Neff
9626c77a1c
Remove skip_fallback from post fetcher 2017-08-12 15:39:23 +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
eb19c327e2
Add ApplicationRecord 2017-08-12 15:39:20 +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
1007b3cdbd
Use Rails.application.assets_manifest.assets instead of json file 2017-07-31 22:56:05 +02:00
Benjamin Neff
7f8108e4ac
Precompile bookmarklet to use in production
`Rails.application.assets` is only available when `config.assets.compile`
is true (which is false in production). So the old way with a separate
rake task doesn't work in production. But we can get the filename of the
precompiled file from `Rails.application.assets_manifest.assets`.
2017-07-31 22:43:28 +02:00
Benjamin Neff
91ec412f14
manifest-*.json is now called .sprockets-manifest-*.json 2017-07-30 04:47:16 +02: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
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
e2a40bb643
Send Relayables with parent author when the parent is local
Needed for diaspora/diaspora_federation#64
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
0f551c7b19
Fix public flag for contact retractions 2017-07-03 03:14:41 +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
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
5e2d063c49
Hash from federation entity now contains the correct data-type 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
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
d0fcdc254e
Only backport mention syntax when the author is local
We don't need to change new to old syntax when we receive a post from a
newer pod, since we can handle the new syntax. This is only needed when
sending it to older pods.

related to #7392
2017-03-25 23:42:19 +01:00
Benjamin Neff
ae687cf1d5
Merge branch 'next-minor' into develop 2017-03-05 00:01:11 +01:00
Benjamin Neff
8e4261100b
Create asterisk.png without digest after precompile
fixes #7317

closes #7322
2017-03-04 23:58:08 +01:00
Benjamin Neff
e82ac2199f
Merge branch 'next-minor' into develop 2017-03-04 22:11:22 +01:00
Benjamin Neff
13f549b2ba
Bump rubocop
And update config for new/updated cops.
2017-03-04 22:09:54 +01: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
Dennis Schubert
96b7c6b429
Merge branch 'next-minor' into develop 2017-01-15 00:13:17 +01:00
Benjamin Neff
8e196a34a1
Hash from federation library now contains strings
closes #7258
2017-01-15 00:13:11 +01:00
Benjamin Neff
b79ccc5207
Add created_at to comments 2017-01-15 00:12:08 +01:00
Steffen van Bergerem
c164dac7a4
Merge branch 'next-minor' into develop 2017-01-07 18:32:15 +01:00
Frédéric Bolvin
7cc4b46d7e
Replaced fileuploader-custom with FineUploader
closes #7083
2017-01-07 18:32:08 +01:00
cmrd Senya
33ad411bbd
Mentions in comments backend changes 2016-11-28 15:56:56 +02: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
cmrd Senya
a80806ca58
Fix ID token issuer field to match discovery data
OpenID Connect spec says:

"The issuer returned by discovery MUST exactly match the value of iss in the ID Token."

https://openid.net/specs/openid-connect-core-1_0.html#IssuerIdentifier

closes #7081
2016-10-27 02:22:27 +02:00
hilkoc
b7791e6c9d Add user setting for default post visibility
fixes #4319

closes #7118
2016-10-26 02:48:11 +02:00
Benjamin Neff
0a264c1fe0
Set redis url for sidekiq cleanup migration task
closes #7125
2016-09-30 01:43:26 +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
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
1d793fcc49 Reused tag stream query for tag pages. 2016-08-15 04:39:11 +02:00
Benjamin Neff
80d1352ba4 Cleanup old rake tasks
* accounts:run_deletions: was added with 0.4.0.0 two years ago for one-time usage.
* db:rebuild: db:reset does basically the same
* db:integration:preprare: the integration environments are not used.
* db:reset: there is a default db:reset, no need to write our own.
* db:drop_integration: the integration environments are not used.
* db:fix_diaspora_handle: really old migration from 2010
* db:move_private_key: also old migration from 2010
* maintenance:clear_carrierwave_temp_uploads: tmp/uploads doesn't exist anymore. And we have CleanCachedFiles as cronjob.
* maintenance:install_logrotate_config: diaspora has built-in logrotate support now, and people who want to use logrotate instead can write their own configs with the values they want.
* migrations:copy_hidden_share_visibilities_to_users: old migration from 2012
* migrations:invitations: legacy invitations were removed with #6976
* migrations:absolutify_image_references: old migration from 2010
* migrations:rewire_uppercase_hashtags: old migration from 2012
* migrations:remove_uppercase_hashtags: old migration from 2012
2016-08-14 19:42:30 +02:00
cmrd Senya
9546fddb9e
[API] don't store ID tokens in DB
fix #6857
2016-08-13 20:09:43 +03:00
Dennis Schubert
3942dca08f
Merge pull request #6972 from jhass/queue_migration
Add rake task to move jobs from any legacy queue to the default queue
2016-08-13 17:31:14 +02:00
Jonne Haß
b2fa3357eb
Merge pull request #6976 from SuperTux88/cleanup-invitations
Cleanup invitations
2016-08-13 14:16:41 +02:00
Steffen van Bergerem
da5aef2b75
Fix charcounter position in publisher 2016-08-13 03:21:40 +02:00
Benjamin Neff
66b7b7e27a Cleanup legacy invitations from code
Fixes #5116
2016-08-13 01:47:27 +02:00
Jonne Haß
5afe582057
Add rake task to move jobs from any legacy queue to the default queue 2016-08-11 22:40:49 +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
89b12345bb Rake task for legacy sidekiq queues 2016-08-10 08:51:22 +00:00
Benjamin Neff
d3edbfd829 remove pending flag from posts 2016-08-08 19:37:10 +02:00
Benjamin Neff
ecd13fc713 cleanup old attributes from code 2016-08-08 19:37:09 +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
081d0167b7 add models for signature data 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
Sam Davarnia
2a2b604a60 move photo extraction to a class
style improvements

new line

applied changes

applied changes
2016-07-18 15:05:44 +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
58c7478133
Remove messagebus_ruby_api gem
Messagebus closed in 2015. See https://web.archive.org/web/20150623093956/https://www.messagebus.com/ for more information.
2016-07-07 18:48:31 +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