Commit graph

137 commits

Author SHA1 Message Date
Benjamin Neff
68df3cf555
Remove support for ruby 2.1, 2.2, 2.3 and 2.4, add 2.6 instead
all older than 2.3 are already EOL and 2.4 will be EOL soon and the next
diaspora major version will already depend on newer versions, so we can
already remove it now.
2019-10-21 03:11:12 +02:00
Benjamin Neff
e0da26c7ee
Add "embed" entity
Fixes #93
2018-10-05 20:26:23 +02:00
Benjamin Neff
cce2c7fe31
Add full_name to profile
This is needed for diaspora/diaspora#3648
2018-04-09 00:58:20 +02:00
Benjamin Neff
0257ba7e59
Merge pull request #94 from SuperTux88/editable-entities
Editable entities
2018-02-17 21:50:05 +01:00
Benjamin Neff
b274cc3dad
Fix some validators for nil values
Using the real entities for the tests also uncovered some bugs where for
example empty strings are converted to nil and the validation wasn't
invalid in this case, but should be.
2018-02-14 01:50:39 +01:00
Benjamin Neff
63f1cbd70a
Add edited_at property to event messages 2018-01-23 03:12:38 +01:00
Benjamin Neff
057ebd69f0
Add edited_at property to the profile message
This is needed so we can make sure to not overwrite newer data by older
one, for example when there are two edits close together and the newer
arrives faster.
2018-01-23 03:12:26 +01:00
Benjamin Neff
8563855be1
Add edited_at property to entities with a text property 2018-01-22 04:26:29 +01:00
cmrd Senya
03d779ef39
Merge pull request #90 from SuperTux88/fix-booleans-for-relayables
Fix when booleans in relayables are false
2018-01-10 16:31:31 +02:00
Benjamin Neff
d9a02119b8
Merge pull request #89 from cmrd-senya/account_migration_changes
Extract singning of AccountMigration to a different module and introduce alternative form for account migration message
2017-12-27 20:03:17 +01:00
cmrd Senya
7e2321d6c9 Introduce alternative form of the account migration message
In the alternative form author can be the new diaspora user
2017-12-27 18:37:49 +02:00
cmrd Senya
69e523abd0 Extract account migration sign feature to a module
This module can be used to compute account migration signature in other
objects besides Entities::AccountMigration. For instance this is to be
used in AccountMigration model of diaspora* web application.
2017-12-27 18:37:48 +02:00
Senya
c8568f7256
Merge pull request #80 from SuperTux88/blocking-flag
Add blocking flag to contact message
2017-12-23 17:08:48 +02:00
Benjamin Neff
7503e9a804
Fix when booleans in relayables are false
This was a problem with dislikes.

It's safe to use `to_s` here, because we have only strings, numbers and
booleans here anyway, because relayables don't support nested entities.
`to_s` is used to generate the `signature_data` string too.
2017-11-05 01:12:19 +01:00
Benjamin Neff
142950c99e
Merge pull request #84 from SuperTux88/reshare-remove-public-flag
Reshare remove public flag
2017-09-23 01:38:11 +02:00
Benjamin Neff
61c00b3596
Use top parent when relaying relayables of relayables 2017-09-22 21:30:09 +02:00
Benjamin Neff
b25e21f980
Add method to get the top entity to RelatedEntity 2017-09-22 21:30:09 +02:00
Benjamin Neff
e663a65c7e
Remove not_nil for diaspora IDs from validators
The diaspora ID validator now is not nil by default.

Also:
* mark root_author as optional for reshares.
* make author for profiles mandatory (I don't remember why this was
optional, we never generate a profile without author and we wouldn't
receive a profile without author anyway, because we validate that the
author is the sender).
* refactor validator specs for diaspora IDs
2017-09-12 23:11:05 +02:00
Benjamin Neff
35efeb8345
Move public flag from status_message to post
This represents the current state of the documentation.
2017-09-12 00:45:59 +02:00
Benjamin Neff
b1b511b6f7
Remove public and provider_display_name from reshare entity
Also don't extend from Post module anymore to represent the future state
of a reshare as it's own type only used to increase the reach of a post.

See #83
2017-09-12 00:13:21 +02:00
Benjamin Neff
db1034904d
Add blocking flag to contact message 2017-09-05 01:22:54 +02:00
Benjamin Neff
add5e16abf
Fetch linked entities from received entities with text 2017-09-04 23:48:31 +02:00
Benjamin Neff
b2eda1d812
Remove nilable parameter from guid rule and use OptionalAwareValidator 2017-09-03 20:10:25 +02:00
Benjamin Neff
860aec96b9
Make height and width optional for photos 2017-09-03 20:10:24 +02:00
cmrd Senya
5b12afebed
Allow reshares with no root 2017-08-25 10:33:16 +03:00
Benjamin Neff
bb40d6190d
Only add optional nil values to relayable XML when needed for signature order 2017-07-30 00:32:54 +02:00
Benjamin Neff
af7b6485ac
Mark properties as optional 2017-07-30 00:32:54 +02:00
Benjamin Neff
e26a86c173
Switch PercentLiteralDelimiters to new default
Let's change that to the new rubocop default, which is also the
suggestion in the ruby style guide.

See https://github.com/bbatsov/ruby-style-guide#percent-literal-braces

This was changed in diaspora too, see diaspora/diaspora#7466

It also includes the changes in the code. This was done with
`rubocop --auto-correct` and no we have zero offenses again.
2017-06-30 02:23:44 +02:00
cmrd Senya
5730b88296 Merge pull request #67 from SuperTux88/comments-created_at
Add created_at to comment
2017-06-20 15:59:35 +03:00
Benjamin Neff
c0ea38d258
Improve logging when validation fails
Add guid and author to error messages if available.
2017-06-11 16:01:04 +02:00
Benjamin Neff
5b22d04626
Add created_at to comment
Fixes diaspora/diaspora#4269
2017-06-05 23:58:08 +02:00
Benjamin Neff
92ce4eacf8
Validate the author of the root post for a reshare 2017-06-04 01:44:46 +02:00
Benjamin Neff
8e43c2716d
Add test for RelatedEntity#to_json 2017-06-04 01:39:17 +02:00
Benjamin Neff
c92624d926
Create RelatedEntity.fetch method 2017-06-04 01:36:25 +02:00
Benjamin Neff
a05c6fe6d1
Remove parent_author_signature from json 2017-06-02 01:12:01 +02:00
Benjamin Neff
57edc8baab
Don't check the author_signature when the author is the parent author
The signature from the Magic Envelope is enough for that scenario,
because it's all from the same person.
2017-06-02 01:12:01 +02:00
Benjamin Neff
6817579072
Don't check parent_author_signature for relayables
This isn't needed, but we need to check if the sender of the Magic
Envelope is the parent author (so we have a valid signature from the
parent author there).
2017-06-02 01:12:00 +02:00
Benjamin Neff
deed1c3f3e
Prevent creation of Request entity
Related to #32
2017-05-10 02:39:46 +02:00
Benjamin Neff
71264f90af
Remove hack from EventParticipation
This is not needed anymore, because it generates now the correct xml
by default.
2017-05-10 02:39:46 +02:00
Benjamin Neff
b510ed868f
Rename xml_order to signature_order
Because it's also used for signatures in JSON.
2017-05-10 02:39:45 +02:00
Benjamin Neff
cd3a7abf4d
Remove sign-code from SignedRetraction and RelayableRetraction
Second step of #27
2017-05-10 02:37:24 +02:00
Benjamin Neff
87033e4cd6
Remove legacy signature ordering
Relayables are now ordered by the order of the properties of the entity.

Related to #26, but still compatible with pods older than 0.6.3.0.
2017-05-10 02:37:22 +02:00
Benjamin Neff
41ebe13126
Make Participation entity non-relayable
Fixes #35
2017-05-10 02:36:29 +02:00
Benjamin Neff
b7167b9fde
Make Message entity non-relayable
Related to #36
2017-05-10 02:35:16 +02:00
Benjamin Neff
e81acd0a0f
Add public flag to profile entity 2017-04-23 23:18:17 +02:00
cmrd Senya
73a9b87607 A little fix to signature verification methods doc 2017-03-26 02:18:20 +02:00
cmrd Senya
626e59c68d AccountMigration entity
A new entity to use when diaspora ID of a person has changed for some
reason (e.g. account migration, pod hostname change, etc)
2017-03-26 02:18:20 +02:00
cmrd Senya
f23f4c0ea4 Introduce Signable module
Signable is a module that encapsulate basic signature logic for entities.
2017-03-26 02:18:19 +02:00
cmrd Senya
c58d076c96
Entity JSON serialization/deserialization feature 2017-03-23 13:55:19 +02:00
Benjamin Neff
1f3293a403
Remove "try", because it is a rails feature
Also "&." is only available on ruby >= 2.3 (can be used later)
2017-01-26 02:21:51 +01:00