jekyll-activity-pub 0.1.0rc14 → 0.1.0rc15

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aaea38dc037b09e85e37555dfcf89e0f974107a0699a600d9c2f8f5f031f6a72
4
- data.tar.gz: fef291e74969a128d2ed950ea9a0f2fda5fc93b5fc45fa851ea8b6f07d15aed9
3
+ metadata.gz: 85320eb7b8fa252e8e66bb733d4ab51478b379f4ebd6211c0fbc6387f425cffc
4
+ data.tar.gz: 122b5349c06408910f743f255112df2acc3318cc0ede289ea5811a030fda3b65
5
5
  SHA512:
6
- metadata.gz: e27745239477eef2a66b1d0dee32af27b4e58219d381e5720abf0d158a38ea31a3e113a9b812b40b4faadbfed48925e0e242c7012d9c4cd428fd725e77f18f07
7
- data.tar.gz: ee3dff54f5c6f549286bc3009063d99513a2d2fc73ffaec6d188f9988866d1c15135dc8662ca0cc1a4b9d9dfc4891546a9391bec7e579ef88481e4f6e6f64176
6
+ metadata.gz: a2111ddfe7cf26d72088b000014c6ac690a731235c392e9d2cb86a7831913a53d1e27a6a6920c599a52218f275eaf29f473dc37b03b561bbc8abe64d0ddafb6c
7
+ data.tar.gz: 5ec690882fbc64d533a1f02741252215e71b9a156d7697228afa5b71bbd927d4bda149d3724f88ca598bd9e58530c21f350ae5c59694e1e1a9cb0256c505be32
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'jekyll/cache'
4
+
5
+ module Jekyll
6
+ module ActivityPub
7
+ class Cache < Jekyll::Cache
8
+ end
9
+ end
10
+ end
@@ -116,10 +116,10 @@ module Jekyll
116
116
 
117
117
  unless response.ok?
118
118
  raise NotificationError,
119
- "Could't fetch public key (#{response.code}: #{response.message})"
119
+ "Could't fetch public key (#{response.code}: #{response.message}). It needs to be available at #{public_key_url} before notifications can work, because it's used for signature verification."
120
120
  end
121
121
 
122
- unless client.private_key.compare? OpenSSL::PKey::RSA.new(response.body)
122
+ unless client.private_key.compare? OpenSSL::PKey::RSA.new(response.parsed_response.dig('publicKey', 'publicKeyPem'))
123
123
  raise NotificationError, "Public key at #{public_key_url} differs from local version"
124
124
  end
125
125
 
@@ -27,14 +27,14 @@ module Jekyll
27
27
 
28
28
  actor.data['publicKey'] = self
29
29
 
30
- Notifier.public_key_url = absolute_url(url)
30
+ Notifier.public_key_url = data['id']
31
31
 
32
32
  trigger_hooks :post_init
33
33
  end
34
34
 
35
35
  def read_yaml(*)
36
36
  self.data = {
37
- 'id' => absolute_url(url),
37
+ 'id' => "#{absolute_url(@actor.url)}#main-key",
38
38
  'owner' => absolute_url(@actor.url),
39
39
  'publicKeyPem' => @public_key.public_to_pem
40
40
  }
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'jekyll/page'
4
+ require_relative 'helper'
5
+
6
+ module Jekyll
7
+ module ActivityPub
8
+ # Represents a removed activity
9
+ class Tombstone < Jekyll::Page
10
+ include Helper
11
+
12
+ # @param :object_id [String]
13
+ attr_reader :object_id
14
+
15
+ # Initialize with default data
16
+ #
17
+ # @param :site [Jekyll::Site]
18
+ # @param :object_id [String]
19
+ def initialize(site, object_id, )
20
+ @context = StubContext.new(registers: { site: site })
21
+ @object_id = object_id
22
+
23
+ dest = Pathname.new(object.destination(site.dest)).relative_path_from(site.dest)
24
+ name = 'tombstone.jsonld'
25
+ dir = File.join(
26
+ File.dirname(dest),
27
+ File.basename(dest, '.jsonld')
28
+ )
29
+
30
+ super(site, '', dir, name)
31
+
32
+ trigger_hooks :post_init
33
+ end
34
+
35
+ def read_yaml(*)
36
+ @data = {
37
+ '@context' => 'https://www.w3.org/ns/activitystreams',
38
+ 'type' => 'Tomsbtone',
39
+ 'id' => absolute_url(object_id),
40
+ 'published' => object.data[DATE_ATTRIBUTE],
41
+ 'to' => object.data['to'],
42
+ 'cc' => object.data['cc'],
43
+ 'object' => object.data,
44
+ 'inReplyTo' => object.data['in_reply_to']
45
+ }
46
+ end
47
+
48
+ # @return [Time]
49
+ def date
50
+ @date ||= Time.parse(object.data[DATE_ATTRIBUTE])
51
+ end
52
+
53
+ private
54
+
55
+ def type
56
+ @type ||= self.class.name.split('::').last
57
+ end
58
+ end
59
+ end
60
+ end
61
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-activity-pub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0rc14
4
+ version: 0.1.0rc15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sutty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-25 00:00:00.000000000 Z
11
+ date: 2023-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: distributed-press-api-client
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.3.0rc3
19
+ version: 0.3.0rc4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.3.0rc3
26
+ version: 0.3.0rc4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: jekyll
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -143,6 +143,7 @@ files:
143
143
  - lib/jekyll/activity_pub.rb
144
144
  - lib/jekyll/activity_pub/activity.rb
145
145
  - lib/jekyll/activity_pub/actor.rb
146
+ - lib/jekyll/activity_pub/cache.rb~
146
147
  - lib/jekyll/activity_pub/commands.rb
147
148
  - lib/jekyll/activity_pub/create.rb
148
149
  - lib/jekyll/activity_pub/delete.rb
@@ -157,6 +158,7 @@ files:
157
158
  - lib/jekyll/activity_pub/outbox.rb
158
159
  - lib/jekyll/activity_pub/property_value.rb
159
160
  - lib/jekyll/activity_pub/public_key.rb
161
+ - lib/jekyll/activity_pub/tomsbtone.rb~
160
162
  - lib/jekyll/activity_pub/update.rb
161
163
  - lib/jekyll/activity_pub/webfinger.rb
162
164
  - lib/jekyll/command_extension.rb