diaspora_federation 0.2.3 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. checksums.yaml +5 -5
  2. data/Changelog.md +48 -6
  3. data/README.md +9 -4
  4. data/lib/diaspora_federation/discovery/h_card.rb +2 -2
  5. data/lib/diaspora_federation/discovery/host_meta.rb +0 -1
  6. data/lib/diaspora_federation/discovery/web_finger.rb +4 -4
  7. data/lib/diaspora_federation/entities/account_migration.rb +6 -1
  8. data/lib/diaspora_federation/entities/comment.rb +5 -0
  9. data/lib/diaspora_federation/entities/embed.rb +44 -0
  10. data/lib/diaspora_federation/entities/event.rb +5 -0
  11. data/lib/diaspora_federation/entities/event_participation.rb +5 -0
  12. data/lib/diaspora_federation/entities/message.rb +5 -0
  13. data/lib/diaspora_federation/entities/photo.rb +5 -0
  14. data/lib/diaspora_federation/entities/profile.rb +9 -0
  15. data/lib/diaspora_federation/entities/status_message.rb +10 -0
  16. data/lib/diaspora_federation/entities.rb +1 -0
  17. data/lib/diaspora_federation/federation/diaspora_url_parser.rb +1 -1
  18. data/lib/diaspora_federation/parsers/xml_parser.rb +1 -1
  19. data/lib/diaspora_federation/salmon/aes.rb +2 -2
  20. data/lib/diaspora_federation/validators/account_migration_validator.rb +2 -0
  21. data/lib/diaspora_federation/validators/conversation_validator.rb +1 -1
  22. data/lib/diaspora_federation/validators/embed_validator.rb +13 -0
  23. data/lib/diaspora_federation/validators/event_participation_validator.rb +1 -1
  24. data/lib/diaspora_federation/validators/optional_aware_validator.rb +2 -4
  25. data/lib/diaspora_federation/validators/photo_validator.rb +1 -1
  26. data/lib/diaspora_federation/validators/profile_validator.rb +1 -0
  27. data/lib/diaspora_federation/validators.rb +1 -0
  28. data/lib/diaspora_federation/version.rb +1 -1
  29. metadata +12 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 42c68f5013a4c3f538bdf2d0c304d79b42e09ab5
4
- data.tar.gz: a3a21dd08bac81bc602fbee8e9ce7f4f726d7413
2
+ SHA256:
3
+ metadata.gz: 98803be0a780d1fdc7112c28c278550b279ab693e01ecfc268e3a7f43ce77a17
4
+ data.tar.gz: fd0b31783ca8f058ab3f9d9bd1154e3d229f7cbe663000b2dab5f23305f20ae5
5
5
  SHA512:
6
- metadata.gz: d4858c3925cd46cd2adf8097066340445129c7630f6a41c8560edac13cc233c825d7b8ae593f3bc917848003f722f4035dca0bf6716c87edb56f99035ffd4b20
7
- data.tar.gz: 8bca5a011c3bb00cc128ef5cea489fe1e575bcdb6a3a74cede7fa5336f7c86f6b102ed0e3980b2a370eeba42e14d6c0b7d99b29a40ee7673477645420d9c1bc8
6
+ metadata.gz: 57ec25012b75ba2895900923d1b48d9ae066542f2be88a6521d2ac862b24e64a402b75a84c657f89cc75fbc18d80631dbe4b5da29087adf3d27e2526967318fe
7
+ data.tar.gz: 44ef6a752b43a751dc006fa9d0bf7ea62d5ee3fa579549bf9c27598a67811dddc62c775061175f9c26309365ad0a43b5fe2dcc57a5bec23f1211ffc0f6dd6d05
data/Changelog.md CHANGED
@@ -1,19 +1,61 @@
1
+ # 0.2.7
2
+
3
+ ## Features
4
+
5
+ * Add `remote_photo_path` to `AccountMigration` entity [#119](https://github.com/diaspora/diaspora_federation/pull/119)
6
+
7
+ ## Bug fixes
8
+
9
+ * Only parse each nested element name once from the XML [#118](https://github.com/diaspora/diaspora_federation/pull/118)
10
+
11
+ # 0.2.6
12
+
13
+ ## Bug fixes
14
+
15
+ * Make `width` and `height` optional for photos in the JSON schema [#110](https://github.com/diaspora/diaspora_federation/pull/110)
16
+
17
+ # 0.2.5
18
+
19
+ ## Features
20
+
21
+ * Add `full_name` to `Profile` entity [#100](https://github.com/diaspora/diaspora_federation/pull/100)
22
+ * Add `Embed` entity [#101](https://github.com/diaspora/diaspora_federation/pull/101)
23
+
24
+ ## Refactor
25
+
26
+ * Include `web+` prefix in `diaspora://` URL parsing [#108](https://github.com/diaspora/diaspora_federation/pull/108)
27
+
28
+ ## Bug fixes
29
+
30
+ * Various bug fixes in the `federation_entities.json` [#102](https://github.com/diaspora/diaspora_federation/pull/102) [#104](https://github.com/diaspora/diaspora_federation/pull/104) [#107](https://github.com/diaspora/diaspora_federation/pull/107)
31
+ * Allow fetching of entities with dot in the GUID [#106](https://github.com/diaspora/diaspora_federation/pull/106)
32
+
33
+ # 0.2.4
34
+
35
+ ## Features
36
+
37
+ * Make some entities editable and add `edited_at` property [#94](https://github.com/diaspora/diaspora_federation/pull/94)
38
+
39
+ ## Bug fixes
40
+
41
+ * Fix validation of optional properties (for example for WebFinger) [#97](https://github.com/diaspora/diaspora_federation/pull/97)
42
+
1
43
  # 0.2.3
2
44
 
3
45
  ## Features
4
46
 
5
- Add `blocking` flag to `Contact` entity [#80](https://github.com/diaspora/diaspora_federation/pull/80)
6
- Introduce alternative form for `AccountMigration` entity signature [#89](https://github.com/diaspora/diaspora_federation/pull/89)
47
+ * Add `blocking` flag to `Contact` entity [#80](https://github.com/diaspora/diaspora_federation/pull/80)
48
+ * Introduce alternative form for `AccountMigration` entity signature [#89](https://github.com/diaspora/diaspora_federation/pull/89)
7
49
 
8
50
  ## Refactor
9
51
 
10
- Extract signing of `AccountMigration` to a different module [#89](https://github.com/diaspora/diaspora_federation/pull/89)
11
- Remove participants limit for conversations [#91](https://github.com/diaspora/diaspora_federation/pull/91)
52
+ * Extract signing of `AccountMigration` to a different module [#89](https://github.com/diaspora/diaspora_federation/pull/89)
53
+ * Remove participants limit for conversations [#91](https://github.com/diaspora/diaspora_federation/pull/91)
12
54
 
13
55
  ## Bug fixes
14
56
 
15
- Fix when booleans in relayables are false [#90](https://github.com/diaspora/diaspora_federation/pull/90)
16
- Fix relayable signatures for messages with invalid XML characters [#95](https://github.com/diaspora/diaspora_federation/pull/95)
57
+ * Fix when booleans in relayables are false [#90](https://github.com/diaspora/diaspora_federation/pull/90)
58
+ * Fix relayable signatures for messages with invalid XML characters [#95](https://github.com/diaspora/diaspora_federation/pull/95)
17
59
 
18
60
  # 0.2.2
19
61
 
data/README.md CHANGED
@@ -6,7 +6,6 @@
6
6
 
7
7
  [![Code Climate](https://codeclimate.com/github/diaspora/diaspora_federation/badges/gpa.svg)](https://codeclimate.com/github/diaspora/diaspora_federation)
8
8
  [![Test Coverage](https://codeclimate.com/github/diaspora/diaspora_federation/badges/coverage.svg)](https://codeclimate.com/github/diaspora/diaspora_federation/coverage)
9
- [![Dependency Status](https://gemnasium.com/diaspora/diaspora_federation.svg)](https://gemnasium.com/diaspora/diaspora_federation)
10
9
  [![Inline docs](https://inch-ci.org/github/diaspora/diaspora_federation.svg?branch=master)](https://inch-ci.org/github/diaspora/diaspora_federation)
11
10
  [![Gem Version](https://badge.fury.io/rb/diaspora_federation.svg)](https://badge.fury.io/rb/diaspora_federation)
12
11
 
@@ -38,25 +37,31 @@ Configure the engine in ```config/initializers/diaspora_federation.rb```:
38
37
  ```ruby
39
38
  DiasporaFederation.configure do |config|
40
39
  # the pod url
41
- config.server_uri = AppConfig.pod_uri
40
+ config.server_uri = URI("http://localhost:3000")
41
+
42
+ # ... other settings
42
43
 
43
44
  config.define_callbacks do
44
45
  on :fetch_person_for_webfinger do |diaspora_id|
45
46
  person = Person.find_local_by_diaspora_id(diaspora_id)
46
47
  if person
47
48
  DiasporaFederation::Discovery::WebFinger.new(
48
- # ...
49
+ # ... copy person attributes to WebFinger object
49
50
  )
50
51
  end
51
52
  end
52
53
 
53
54
  on :fetch_person_for_hcard do |guid|
54
- # ...
55
+ # ... fetch hcard information
55
56
  end
57
+
58
+ # ... other callbacks
56
59
  end
57
60
  end
58
61
  ```
59
62
 
63
+ The available config settings can be found [here](https://www.rubydoc.info/gems/diaspora_federation/DiasporaFederation#class_attr_details) and the callbacks are listed [here](https://www.rubydoc.info/gems/diaspora_federation/DiasporaFederation#define_callbacks-class_method) in the gem documentation.
64
+
60
65
  ## Contributing
61
66
 
62
67
  See [our contribution guide](/CONTRIBUTING.md) for more information on how to contribute to the diaspora\* federation library.
@@ -48,7 +48,7 @@ module DiasporaFederation
48
48
  # @!attribute [r] nickname
49
49
  # The first part of the diaspora* ID
50
50
  # @return [String] nickname
51
- property :nickname, :string, default: nil
51
+ property :nickname, :string, optional: true
52
52
 
53
53
  # @!attribute [r] full_name
54
54
  # @return [String] display name of the user
@@ -60,7 +60,7 @@ module DiasporaFederation
60
60
  # installations).
61
61
  #
62
62
  # @return [String] link to the pod
63
- property :url, :string, default: nil
63
+ property :url, :string, optional: true
64
64
 
65
65
  # @!attribute [r] public_key
66
66
  # When a user is created on the pod, the pod MUST generate a pgp keypair
@@ -1,4 +1,3 @@
1
-
2
1
  module DiasporaFederation
3
2
  module Discovery
4
3
  # Generates and parses Host Meta documents.
@@ -44,7 +44,7 @@ module DiasporaFederation
44
44
 
45
45
  # @!attribute [r] profile_url
46
46
  # @return [String] link to the users profile
47
- property :profile_url, :string, default: nil
47
+ property :profile_url, :string, optional: true
48
48
 
49
49
  # @!attribute [r] atom_url
50
50
  # This atom feed is an Activity Stream of the user's public posts. diaspora*
@@ -55,18 +55,18 @@ module DiasporaFederation
55
55
  # Note that this feed MAY also be made available through the PubSubHubbub
56
56
  # mechanism by supplying a <link rel="hub"> in the atom feed itself.
57
57
  # @return [String] atom feed url
58
- property :atom_url, :string, default: nil
58
+ property :atom_url, :string, optional: true
59
59
 
60
60
  # @!attribute [r] salmon_url
61
61
  # @note could be nil
62
62
  # @return [String] salmon endpoint url
63
63
  # @see https://cdn.rawgit.com/salmon-protocol/salmon-protocol/master/draft-panzer-salmon-00.html#SMLR
64
64
  # Panzer draft for Salmon, paragraph 3.3
65
- property :salmon_url, :string, default: nil
65
+ property :salmon_url, :string, optional: true
66
66
 
67
67
  # @!attribute [r] subscribe_url
68
68
  # This url is used to find another user on the home-pod of the user in the webfinger.
69
- property :subscribe_url, :string, default: nil
69
+ property :subscribe_url, :string, optional: true
70
70
 
71
71
  # +hcard_url+ link relation
72
72
  REL_HCARD = "http://microformats.org/profile/hcard".freeze
@@ -33,6 +33,11 @@ module DiasporaFederation
33
33
  # @return [String] old identity
34
34
  property :old_identity, :string, default: nil
35
35
 
36
+ # @!attribute [r] remote_photo_path
37
+ # The url to the path of the photos on the new pod. Can be empty if photos weren't migrated.
38
+ # @return [String] remote photo path
39
+ property :remote_photo_path, :string, optional: true
40
+
36
41
  # Returns diaspora* ID of the old person identity.
37
42
  # @return [String] diaspora* ID of the old person identity
38
43
  def old_identity
@@ -43,7 +48,7 @@ module DiasporaFederation
43
48
  # Returns diaspora* ID of the new person identity.
44
49
  # @return [String] diaspora* ID of the new person identity
45
50
  def new_identity
46
- profile.author
51
+ profile.author if profile
47
52
  end
48
53
 
49
54
  # @return [String] string representation of this object
@@ -17,6 +17,11 @@ module DiasporaFederation
17
17
  # Comment entity creation time
18
18
  # @return [Time] creation time
19
19
  property :created_at, :timestamp, default: -> { Time.now.utc }
20
+
21
+ # @!attribute [r] edited_at
22
+ # The timestamp when the comment was edited
23
+ # @return [Time] edited time
24
+ property :edited_at, :timestamp, optional: true
20
25
  end
21
26
  end
22
27
  end
@@ -0,0 +1,44 @@
1
+ module DiasporaFederation
2
+ module Entities
3
+ # This entity is used to specify embed information about an URL that should be embedded.
4
+ #
5
+ # @see Validators::EmbedValidator
6
+ class Embed < Entity
7
+ # @!attribute [r] url
8
+ # URL that should be embedded.
9
+ # @return [String] url
10
+ property :url, :string, optional: true
11
+
12
+ # @!attribute [r] title
13
+ # The title of the embedded URL.
14
+ # @return [String] title
15
+ property :title, :string, optional: true
16
+
17
+ # @!attribute [r] description
18
+ # The description of the embedded URL.
19
+ # @return [String] description
20
+ property :description, :string, optional: true
21
+
22
+ # @!attribute [r] image
23
+ # The image of the embedded URL.
24
+ # @return [String] image
25
+ property :image, :string, optional: true
26
+
27
+ # @!attribute [r] nothing
28
+ # True, if nothing should be embedded.
29
+ # @return [String] nothing
30
+ property :nothing, :boolean, optional: true
31
+
32
+ # @return [String] string representation of this object
33
+ def to_s
34
+ "Embed#{":#{url}" if url}"
35
+ end
36
+
37
+ def validate
38
+ super
39
+
40
+ raise ValidationError, "Either 'url' must be set or 'nothing' must be 'true'" unless nothing ^ url
41
+ end
42
+ end
43
+ end
44
+ end
@@ -16,6 +16,11 @@ module DiasporaFederation
16
16
  # @return [String] guid
17
17
  property :guid, :string
18
18
 
19
+ # @!attribute [r] edited_at
20
+ # The timestamp when the event was edited
21
+ # @return [Time] edited time
22
+ property :edited_at, :timestamp, optional: true
23
+
19
24
  # @!attribute [r] summary
20
25
  # The summary of the event
21
26
  # @return [String] event summary
@@ -14,6 +14,11 @@ module DiasporaFederation
14
14
  # "accepted", "declined" or "tentative"
15
15
  # @return [String] event participation status
16
16
  property :status, :string
17
+
18
+ # @!attribute [r] edited_at
19
+ # The timestamp when the event participation was edited
20
+ # @return [Time] edited time
21
+ property :edited_at, :timestamp, optional: true
17
22
  end
18
23
  end
19
24
  end
@@ -26,6 +26,11 @@ module DiasporaFederation
26
26
  # @return [Time] creation time
27
27
  property :created_at, :timestamp, default: -> { Time.now.utc }
28
28
 
29
+ # @!attribute [r] edited_at
30
+ # The timestamp when the message was edited
31
+ # @return [Time] edited time
32
+ property :edited_at, :timestamp, optional: true
33
+
29
34
  # @!attribute [r] conversation_guid
30
35
  # Guid of a conversation this message belongs to
31
36
  # @see Conversation#guid
@@ -26,6 +26,11 @@ module DiasporaFederation
26
26
  # @return [Time] creation time
27
27
  property :created_at, :timestamp, default: -> { Time.now.utc }
28
28
 
29
+ # @!attribute [r] edited_at
30
+ # The timestamp when the photo was edited
31
+ # @return [Time] edited time
32
+ property :edited_at, :timestamp, optional: true
33
+
29
34
  # @!attribute [r] remote_photo_path
30
35
  # An url of the photo on a remote server
31
36
  # @return [String] remote photo url
@@ -14,6 +14,15 @@ module DiasporaFederation
14
14
  # @return [String] diaspora* ID
15
15
  property :author, :string, alias: :diaspora_id, xml_name: :diaspora_handle
16
16
 
17
+ # @!attribute [r] edited_at
18
+ # The timestamp when the profile was edited
19
+ # @return [Time] edited time
20
+ property :edited_at, :timestamp, optional: true
21
+
22
+ # @!attribute [r] full_name
23
+ # @return [String] display name of the user
24
+ property :full_name, :string, optional: true
25
+
17
26
  # @!attribute [r] first_name
18
27
  # @deprecated We decided to only use one name field, these should be removed
19
28
  # in later iterations (will affect older diaspora* installations).
@@ -11,6 +11,11 @@ module DiasporaFederation
11
11
  # @return [String] text of the status message
12
12
  property :text, :string, xml_name: :raw_message
13
13
 
14
+ # @!attribute [r] edited_at
15
+ # The timestamp when the status message was edited
16
+ # @return [Time] edited time
17
+ property :edited_at, :timestamp, optional: true
18
+
14
19
  # @!attribute [r] photos
15
20
  # Optional photos attached to the status message
16
21
  # @return [[Entities::Photo]] photos
@@ -31,6 +36,11 @@ module DiasporaFederation
31
36
  # @return [Entities::Event] event
32
37
  entity :event, Entities::Event, optional: true
33
38
 
39
+ # @!attribute [r] embed
40
+ # Optional embed information of an URL that should be embedded in the status message
41
+ # @return [Entities::Embed] embed
42
+ entity :embed, Entities::Embed, optional: true
43
+
34
44
  private
35
45
 
36
46
  def validate
@@ -30,6 +30,7 @@ require "diaspora_federation/entities/poll_answer"
30
30
  require "diaspora_federation/entities/poll"
31
31
  require "diaspora_federation/entities/poll_participation"
32
32
 
33
+ require "diaspora_federation/entities/embed"
33
34
  require "diaspora_federation/entities/location"
34
35
 
35
36
  require "diaspora_federation/entities/event"
@@ -6,7 +6,7 @@ module DiasporaFederation
6
6
 
7
7
  # Regex to find diaspora:// URLs
8
8
  DIASPORA_URL_REGEX = %r{
9
- diaspora://
9
+ (?:web\+)?diaspora://
10
10
  (#{Validation::Rule::DiasporaId::DIASPORA_ID_REGEX})/
11
11
  (#{Entity::ENTITY_NAME_REGEX})/
12
12
  (#{Validation::Rule::Guid::VALID_CHARS})
@@ -12,7 +12,7 @@ module DiasporaFederation
12
12
  def parse(root_node)
13
13
  from_xml_sanity_validation(root_node)
14
14
 
15
- hash = root_node.element_children.map {|child|
15
+ hash = root_node.element_children.uniq(&:name).map {|child|
16
16
  xml_name = child.name
17
17
  property = entity_type.find_property_for_xml_name(xml_name)
18
18
  if property
@@ -19,7 +19,7 @@ module DiasporaFederation
19
19
  # @param [String] iv AES initialization vector
20
20
  # @return [String] base64 encoded ciphertext
21
21
  # @raise [ArgumentError] if any of the arguments is missing or not the correct type
22
- def self.encrypt(data, key, iv)
22
+ def self.encrypt(data, key, iv) # rubocop:disable Naming/UncommunicativeMethodParamName
23
23
  raise ArgumentError unless data.instance_of?(String) &&
24
24
  key.instance_of?(String) &&
25
25
  iv.instance_of?(String)
@@ -41,7 +41,7 @@ module DiasporaFederation
41
41
  # @param [String] iv AES initialization vector
42
42
  # @return [String] decrypted plain message
43
43
  # @raise [ArgumentError] if any of the arguments is missing or not the correct type
44
- def self.decrypt(ciphertext, key, iv)
44
+ def self.decrypt(ciphertext, key, iv) # rubocop:disable Naming/UncommunicativeMethodParamName
45
45
  raise ArgumentError unless ciphertext.instance_of?(String) &&
46
46
  key.instance_of?(String) &&
47
47
  iv.instance_of?(String)
@@ -9,6 +9,8 @@ module DiasporaFederation
9
9
  rule :profile, :not_nil
10
10
 
11
11
  rule :old_identity, :diaspora_id
12
+
13
+ rule :remote_photo_path, URI: [:path]
12
14
  end
13
15
  end
14
16
  end
@@ -9,7 +9,7 @@ module DiasporaFederation
9
9
 
10
10
  rule :subject, [:not_empty, length: {maximum: 255}]
11
11
 
12
- rule :participants, diaspora_id_list: {minimum: 2}
12
+ rule :participants, [:not_empty, diaspora_id_list: {minimum: 2}]
13
13
  rule :messages, :not_nil
14
14
  end
15
15
  end
@@ -0,0 +1,13 @@
1
+ module DiasporaFederation
2
+ module Validators
3
+ # This validates a {Entities::Embed}.
4
+ class EmbedValidator < OptionalAwareValidator
5
+ include Validation
6
+
7
+ rule :url, :URI
8
+ rule :title, length: {maximum: 255}
9
+ rule :description, length: {maximum: 65_535}
10
+ rule :image, URI: %i[host path]
11
+ end
12
+ end
13
+ end
@@ -6,7 +6,7 @@ module DiasporaFederation
6
6
 
7
7
  include RelayableValidator
8
8
 
9
- rule :status, regular_expression: {regex: /\A(accepted|declined|tentative)\z/}
9
+ rule :status, [:not_empty, regular_expression: {regex: /\A(accepted|declined|tentative)\z/}]
10
10
  end
11
11
  end
12
12
  end
@@ -13,10 +13,8 @@ module DiasporaFederation
13
13
  private
14
14
 
15
15
  def optional_props
16
- entity_name = self.class.name.split("::").last.sub("Validator", "")
17
- return [] unless Entities.const_defined?(entity_name)
18
-
19
- Entities.const_get(entity_name).optional_props
16
+ return [] unless @obj.class.respond_to?(:optional_props)
17
+ @obj.class.optional_props
20
18
  end
21
19
  end
22
20
  end
@@ -10,7 +10,7 @@ module DiasporaFederation
10
10
 
11
11
  rule :public, :boolean
12
12
 
13
- rule :remote_photo_path, :not_empty
13
+ rule :remote_photo_path, [:not_empty, URI: [:path]]
14
14
 
15
15
  rule :remote_photo_name, :not_empty
16
16
 
@@ -8,6 +8,7 @@ module DiasporaFederation
8
8
 
9
9
  # The name must not contain a semicolon because of mentions.
10
10
  # @{<full_name> ; <diaspora_id>}
11
+ rule :full_name, regular_expression: {regex: /\A[^;]{,70}\z/}
11
12
  rule :first_name, regular_expression: {regex: /\A[^;]{,32}\z/}
12
13
  rule :last_name, regular_expression: {regex: /\A[^;]{,32}\z/}
13
14
 
@@ -46,6 +46,7 @@ require "diaspora_federation/validators/account_migration_validator"
46
46
  require "diaspora_federation/validators/comment_validator"
47
47
  require "diaspora_federation/validators/contact_validator"
48
48
  require "diaspora_federation/validators/conversation_validator"
49
+ require "diaspora_federation/validators/embed_validator"
49
50
  require "diaspora_federation/validators/event_participation_validator"
50
51
  require "diaspora_federation/validators/event_validator"
51
52
  require "diaspora_federation/validators/h_card_validator"
@@ -1,4 +1,4 @@
1
1
  module DiasporaFederation
2
2
  # the gem version
3
- VERSION = "0.2.3".freeze
3
+ VERSION = "0.2.7".freeze
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: diaspora_federation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Neff
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-27 00:00:00.000000000 Z
11
+ date: 2021-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: 0.9.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: 0.15.0
22
+ version: '1.0'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: 0.9.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: 0.15.0
32
+ version: '1.0'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: faraday_middleware
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: 0.10.0
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: 0.13.0
42
+ version: '1.0'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,7 +49,7 @@ dependencies:
49
49
  version: 0.10.0
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: 0.13.0
52
+ version: '1.0'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: nokogiri
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -126,6 +126,7 @@ files:
126
126
  - lib/diaspora_federation/entities/comment.rb
127
127
  - lib/diaspora_federation/entities/contact.rb
128
128
  - lib/diaspora_federation/entities/conversation.rb
129
+ - lib/diaspora_federation/entities/embed.rb
129
130
  - lib/diaspora_federation/entities/event.rb
130
131
  - lib/diaspora_federation/entities/event_participation.rb
131
132
  - lib/diaspora_federation/entities/like.rb
@@ -182,6 +183,7 @@ files:
182
183
  - lib/diaspora_federation/validators/comment_validator.rb
183
184
  - lib/diaspora_federation/validators/contact_validator.rb
184
185
  - lib/diaspora_federation/validators/conversation_validator.rb
186
+ - lib/diaspora_federation/validators/embed_validator.rb
185
187
  - lib/diaspora_federation/validators/event_participation_validator.rb
186
188
  - lib/diaspora_federation/validators/event_validator.rb
187
189
  - lib/diaspora_federation/validators/h_card_validator.rb
@@ -215,7 +217,7 @@ homepage: https://github.com/diaspora/diaspora_federation
215
217
  licenses:
216
218
  - AGPL-3.0
217
219
  metadata: {}
218
- post_install_message:
220
+ post_install_message:
219
221
  rdoc_options: []
220
222
  require_paths:
221
223
  - lib
@@ -230,9 +232,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
230
232
  - !ruby/object:Gem::Version
231
233
  version: '0'
232
234
  requirements: []
233
- rubyforge_project:
234
- rubygems_version: 2.6.14
235
- signing_key:
235
+ rubygems_version: 3.0.9
236
+ signing_key:
236
237
  specification_version: 4
237
238
  summary: diaspora* federation library
238
239
  test_files: []