Benjamin Neff
6f936caddf
Add abstract OptionalAwareValidator class
...
This improves validation of optional fields and respects the `optional`
option of properties
2017-09-03 20:10:24 +02:00
Benjamin Neff
458d0f2215
Always raise a DiscoveryError when something with the discovery fails
2017-09-01 01:51:36 +02:00
cmrd Senya
69996319e1
Minor change PhotoValidator#status_message_guid spec
...
Use new "a nilable guid validator" shared behavior
2017-08-25 10:41:22 +03:00
cmrd Senya
5b12afebed
Allow reshares with no root
2017-08-25 10:33:16 +03:00
Benjamin Neff
8efb368a96
Merge pull request #71 from SuperTux88/optional-properties
...
Don't add optional properties to generated XML and JSON when nil
2017-08-07 23:18:56 +02:00
Benjamin Neff
93e18e1a79
Add DiasporaFederation::Schemas to access JSON schema
2017-08-01 20:17:55 +02: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
f5ff4a71e6
Only add optional properties to generated XML and JSON when not nil
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
0a770918b2
Bump rubocop
2017-06-04 02:35:21 +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
6e51ae536b
Replace legacy webfinger with new route from .well-known
2017-05-29 00:43:39 +02:00
Benjamin Neff
12cd5b0090
Add route for RFC-7033 webfinger
2017-05-29 00:43:38 +02:00
Benjamin Neff
ea00874c93
Add JSON support to WebFinger
2017-05-23 02:13:45 +02:00
Benjamin Neff
51f73b86fc
Merge pull request #62 from SuperTux88/protocol-next-step
...
Next step for the new protocol
2017-05-12 03:40:58 +02:00
Benjamin Neff
9f3291f281
Refactor comment integration specs
2017-05-10 02:39:46 +02:00
Benjamin Neff
deed1c3f3e
Prevent creation of Request entity
...
Related to #32
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
ba01882cb2
Remove generation code for legacy salmon slap from library
...
Create legacy_helper.rb to still generate old XMLs for the tests.
Related to #30
2017-05-10 02:37:25 +02:00
Benjamin Neff
18a23df8d5
Use Nokogiri::XML() instead of Nokogiri::XML::Document.parse()
2017-05-10 02:37:25 +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
e5b2ef71e8
Send MagicEnvelope as body with correct Content-Type
...
Related to #30
2017-05-10 02:37:24 +02:00
Benjamin Neff
1f99518706
Remove additional MagicEnvelope wrapper with diaspora header
...
Related to #30
2017-05-10 02:37:24 +02:00
Benjamin Neff
221d87d7fe
Send unwrapped entities
...
Remove the <XML><post>...</post></XML> wrapper.
Second step of #28
2017-05-10 02:37:24 +02:00
Benjamin Neff
52a8c89d4c
Send new property names in XML
...
Second step of #29
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
1b9dfc812e
Allow to generate WebFinger with additional data
...
This allows projects to use this library to generate the WebFinger
document when they already need WebFinger for other elements.
Also removed the explicit alias_url, aliases can now be added with
{aliases: [alias_url]} as second parameter.
2017-05-02 22:30:19 +02:00
Benjamin Neff
5fef7633c3
Make optional properties optional when generating webfinger
2017-04-27 02:37:55 +02:00
Benjamin Neff
83a6434c32
Merge pull request #60 from SuperTux88/cleanup-webfinger-deprecations
...
Cleanup webfinger deprecations
2017-04-27 01:55:38 +02:00
Benjamin Neff
b788fbdad1
Remove more backward-compatibility code for discovery
...
This was needed for pods older than 0.5.2.0
2017-04-24 02:37:06 +02:00
Benjamin Neff
a3ad1ea7e4
Remove deprecated guid and public key from webfinger
...
Closes #39
This breaks compatibility with pods older than 0.5.3.0
2017-04-24 02:36:36 +02:00
Benjamin Neff
e81acd0a0f
Add public flag to profile entity
2017-04-23 23:18:17 +02:00
Benjamin Neff
e238edf4ec
Don't use hash.transform_values
...
It's only available in ruby >= 2.4
2017-04-05 03:37:20 +02:00
Benjamin Neff
e6e9893c1f
Make rspec work without rails dependency
2017-04-05 02:02:04 +02:00
Benjamin Neff
1f067c62a7
Generate default users only once and reset db after each test
2017-04-05 00:36:53 +02:00
Benjamin Neff
696f50f40d
Replace String#indent from activesupport with helper method
2017-04-05 00:36:53 +02:00
Benjamin Neff
40919b4c69
Create change_time helper method
...
Time#change is an activesupport feature
Also: Use seconds instead of Numeric#minute and Numeric#hour
2017-04-05 00:36:53 +02:00
Benjamin Neff
ccd4b7eceb
Extract helper methods
2017-04-05 00:36:52 +02:00
Benjamin Neff
3ce908e713
Fix typo in rspec-persistence.txt
2017-04-05 00:36:52 +02:00