async-matrix 2.0.1-aarch64-linux → 3.0.0-aarch64-linux

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 (81) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +33 -58
  3. data/lib/async/matrix/3.3/async_matrix_e2ee.so +0 -0
  4. data/lib/async/matrix/3.4/async_matrix_e2ee.so +0 -0
  5. data/lib/async/matrix/4.0/async_matrix_e2ee.so +0 -0
  6. data/lib/async/matrix/api/chain.rb +120 -94
  7. data/lib/async/matrix/api/concat.rb +28 -22
  8. data/lib/async/matrix/api/path_tree.rb +71 -44
  9. data/lib/async/matrix/api.rb +6 -1
  10. data/lib/async/matrix/auth_error.rb +20 -0
  11. data/lib/async/matrix/bad_json_error.rb +20 -0
  12. data/lib/async/matrix/client.rb +142 -110
  13. data/lib/async/matrix/config/vivify.rb +107 -0
  14. data/lib/async/matrix/config.rb +184 -0
  15. data/lib/async/matrix/content.rb +106 -0
  16. data/lib/async/matrix/double_puppet_client.rb +1 -1
  17. data/lib/async/matrix/e2ee.rb +37 -0
  18. data/lib/async/matrix/error.rb +0 -27
  19. data/lib/async/matrix/{application_service/error_response.rb → error_response.rb} +10 -10
  20. data/lib/async/matrix/event.rb +197 -0
  21. data/lib/async/matrix/homeserver_error.rb +20 -0
  22. data/lib/async/matrix/invalid_endpoint_error.rb +20 -0
  23. data/lib/async/matrix/media_client.rb +46 -35
  24. data/lib/async/matrix/not_found_error.rb +20 -0
  25. data/lib/async/matrix/notifier.rb +7 -3
  26. data/lib/async/matrix/response_too_large_error.rb +20 -0
  27. data/lib/async/matrix/schema/registry.rb +367 -340
  28. data/lib/async/matrix/schema/validation_error.rb +221 -214
  29. data/lib/async/matrix/schema.rb +161 -161
  30. data/lib/async/matrix/version.rb +3 -3
  31. data/lib/async/matrix.rb +0 -7
  32. metadata +29 -123
  33. data/lib/async/discord/api/path_tree.rb +0 -127
  34. data/lib/async/discord/api.rb +0 -151
  35. data/lib/async/discord/client.rb +0 -283
  36. data/lib/async/discord/error.rb +0 -84
  37. data/lib/async/discord/gateway.rb +0 -359
  38. data/lib/async/discord.rb +0 -15
  39. data/lib/async/matrix/application_service/bot.rb +0 -232
  40. data/lib/async/matrix/application_service/config/schema/analytics.json +0 -21
  41. data/lib/async/matrix/application_service/config/schema/appservice.json +0 -82
  42. data/lib/async/matrix/application_service/config/schema/backfill.json +0 -91
  43. data/lib/async/matrix/application_service/config/schema/bridge.json +0 -209
  44. data/lib/async/matrix/application_service/config/schema/config.json +0 -61
  45. data/lib/async/matrix/application_service/config/schema/database.json +0 -38
  46. data/lib/async/matrix/application_service/config/schema/direct_media.json +0 -35
  47. data/lib/async/matrix/application_service/config/schema/double_puppet.json +0 -24
  48. data/lib/async/matrix/application_service/config/schema/encryption.json +0 -164
  49. data/lib/async/matrix/application_service/config/schema/homeserver.json +0 -58
  50. data/lib/async/matrix/application_service/config/schema/logging.json +0 -50
  51. data/lib/async/matrix/application_service/config/schema/management_room_texts.json +0 -25
  52. data/lib/async/matrix/application_service/config/schema/matrix.json +0 -45
  53. data/lib/async/matrix/application_service/config/schema/permissions.json +0 -54
  54. data/lib/async/matrix/application_service/config/schema/provisioning.json +0 -23
  55. data/lib/async/matrix/application_service/config/schema/public_media.json +0 -39
  56. data/lib/async/matrix/application_service/config/schema/relay.json +0 -43
  57. data/lib/async/matrix/application_service/config/vivify.rb +0 -109
  58. data/lib/async/matrix/application_service/config.rb +0 -225
  59. data/lib/async/matrix/application_service/dispatcher.rb +0 -185
  60. data/lib/async/matrix/application_service/event.rb +0 -285
  61. data/lib/async/matrix/application_service/server.rb +0 -430
  62. data/lib/async/matrix/application_service/transaction.rb +0 -66
  63. data/lib/async/matrix/application_service/transaction_handler.rb +0 -185
  64. data/lib/async/matrix/application_service/transaction_store.rb +0 -80
  65. data/lib/async/matrix/bridge/discord/db/connection.rb +0 -141
  66. data/lib/async/matrix/bridge/discord/db/file.rb +0 -118
  67. data/lib/async/matrix/bridge/discord/db/guild.rb +0 -120
  68. data/lib/async/matrix/bridge/discord/db/message.rb +0 -160
  69. data/lib/async/matrix/bridge/discord/db/migrations/001_create_users.rb +0 -14
  70. data/lib/async/matrix/bridge/discord/db/migrations/002_create_guilds.rb +0 -14
  71. data/lib/async/matrix/bridge/discord/db/migrations/003_create_portals.rb +0 -23
  72. data/lib/async/matrix/bridge/discord/db/migrations/004_create_puppets.rb +0 -19
  73. data/lib/async/matrix/bridge/discord/db/migrations/005_create_messages.rb +0 -20
  74. data/lib/async/matrix/bridge/discord/db/migrations/006_create_reactions.rb +0 -19
  75. data/lib/async/matrix/bridge/discord/db/migrations/007_create_files.rb +0 -18
  76. data/lib/async/matrix/bridge/discord/db/portal.rb +0 -150
  77. data/lib/async/matrix/bridge/discord/db/puppet.rb +0 -128
  78. data/lib/async/matrix/bridge/discord/db/reaction.rb +0 -165
  79. data/lib/async/matrix/bridge/discord/db/schema.rb +0 -18
  80. data/lib/async/matrix/bridge/discord/db/user.rb +0 -112
  81. data/lib/async/matrix/bridge/discord/db.rb +0 -138
@@ -4,167 +4,167 @@
4
4
  # Copyright, 2026, by General Intelligence Systems.
5
5
 
6
6
  module Async
7
- module Matrix
8
- # Schema-driven validation for Matrix events using the official matrix-org/matrix-spec
9
- # YAML schemas and the json_schemer gem.
10
- #
11
- # Schemas are loaded lazily from data/matrix-spec/event-schemas/schema/ and cached
12
- # for the process lifetime. This ensures validation is always up-to-date with the
13
- # spec -- just re-run `bin/fetch-matrix-schemas` to pull the latest.
14
- #
15
- # # Look up a schema by event type
16
- # Async::Matrix::Schema["m.room.message"] # => JSONSchemer::Schema
17
- #
18
- # # Validate an event hash
19
- # Async::Matrix::Schema.valid?(event_hash) # => true/false
20
- # Async::Matrix::Schema.validate(event_hash) # => [errors]
21
- #
22
- # # List all known event types
23
- # Async::Matrix::Schema.event_types # => ["m.accepted_terms", "m.call.answer", ...]
24
- #
25
- module Schema
26
- class << self
27
- # Look up a schema by Matrix event type.
28
- # @param event_type [String] e.g. "m.room.message"
29
- # @return [JSONSchemer::Schema, nil]
30
- def [](event_type)
31
- Registry.instance[event_type]
32
- end
33
-
34
- # Look up a variant schema.
35
- # @param event_type [String] e.g. "m.room.message"
36
- # @param subtype [String] e.g. "m.text"
37
- # @return [JSONSchemer::Schema, nil]
38
- def variant(event_type, subtype)
39
- Registry.instance.variant(event_type, subtype)
40
- end
41
-
42
- # Validate an event hash against its schema.
43
- # @param event_hash [Hash] the raw event data (string keys)
44
- # @return [Array<Hash>] array of error hashes (empty if valid)
45
- def validate(event_hash)
46
- Registry.instance.validate(event_hash)
47
- end
48
-
49
- # Boolean validation.
50
- # @param event_hash [Hash] the raw event data (string keys)
51
- # @return [Boolean]
52
- def valid?(event_hash)
53
- Registry.instance.valid?(event_hash)
54
- end
55
-
56
- # All known base event types.
57
- # @return [Array<String>] sorted
58
- def event_types
59
- Registry.instance.event_types
60
- end
61
-
62
- # All known variant types as [event_type, subtype] pairs.
63
- # @return [Array<Array(String, String)>]
64
- def variant_types
65
- Registry.instance.variant_types
66
- end
67
-
68
- # Content properties defined by the schema for a given event type.
69
- # @return [Array<String>]
70
- def content_properties(event_type)
71
- Registry.instance.content_properties(event_type)
72
- end
73
-
74
- # Parse a raw event hash into a schema-aware Event.
75
- # @param event_hash [Hash] the raw event data (string keys)
76
- # @return [ApplicationService::Event]
77
- def parse(event_hash)
78
- ApplicationService::Event.new(event_hash)
79
- end
80
-
81
- # Total schemas loaded (base + variants).
82
- # @return [Integer]
83
- def size
84
- Registry.instance.size
85
- end
86
- end
87
- end
88
- end
7
+ module Matrix
8
+ # Schema-driven validation for Matrix events using the official matrix-org/matrix-spec
9
+ # YAML schemas and the json_schemer gem.
10
+ #
11
+ # Schemas are loaded lazily from data/matrix-spec/event-schemas/schema/ and cached
12
+ # for the process lifetime. This ensures validation is always up-to-date with the
13
+ # spec -- just re-run `bin/fetch-matrix-schemas` to pull the latest.
14
+ #
15
+ # # Look up a schema by event type
16
+ # Async::Matrix::Schema["m.room.message"] # => JSONSchemer::Schema
17
+ #
18
+ # # Validate an event hash
19
+ # Async::Matrix::Schema.valid?(event_hash) # => true/false
20
+ # Async::Matrix::Schema.validate(event_hash) # => [errors]
21
+ #
22
+ # # List all known event types
23
+ # Async::Matrix::Schema.event_types # => ["m.accepted_terms", "m.call.answer", ...]
24
+ #
25
+ module Schema
26
+ class << self
27
+ # Look up a schema by Matrix event type.
28
+ # @param event_type [String] e.g. "m.room.message"
29
+ # @return [JSONSchemer::Schema, nil]
30
+ def [](event_type)
31
+ Registry.instance[event_type]
32
+ end
33
+
34
+ # Look up a variant schema.
35
+ # @param event_type [String] e.g. "m.room.message"
36
+ # @param subtype [String] e.g. "m.text"
37
+ # @return [JSONSchemer::Schema, nil]
38
+ def variant(event_type, subtype)
39
+ Registry.instance.variant(event_type, subtype)
40
+ end
41
+
42
+ # Validate an event hash against its schema.
43
+ # @param event_hash [Hash] the raw event data (string keys)
44
+ # @return [Array<Hash>] array of error hashes (empty if valid)
45
+ def validate(event_hash)
46
+ Registry.instance.validate(event_hash)
47
+ end
48
+
49
+ # Boolean validation.
50
+ # @param event_hash [Hash] the raw event data (string keys)
51
+ # @return [Boolean]
52
+ def valid?(event_hash)
53
+ Registry.instance.valid?(event_hash)
54
+ end
55
+
56
+ # All known base event types.
57
+ # @return [Array<String>] sorted
58
+ def event_types
59
+ Registry.instance.event_types
60
+ end
61
+
62
+ # All known variant types as [event_type, subtype] pairs.
63
+ # @return [Array<Array(String, String)>]
64
+ def variant_types
65
+ Registry.instance.variant_types
66
+ end
67
+
68
+ # Content properties defined by the schema for a given event type.
69
+ # @return [Array<String>]
70
+ def content_properties(event_type)
71
+ Registry.instance.content_properties(event_type)
72
+ end
73
+
74
+ # Parse a raw event hash into a schema-aware Event.
75
+ # @param event_hash [Hash] the raw event data (string keys)
76
+ # @return [Event]
77
+ def parse(event_hash)
78
+ Event.new(event_hash)
79
+ end
80
+
81
+ # Total schemas loaded (base + variants).
82
+ # @return [Integer]
83
+ def size
84
+ Registry.instance.size
85
+ end
86
+ end
87
+ end
88
+ end
89
89
  end
90
90
 
91
91
  __END__
92
- describe "Async::Matrix::Schema" do
93
- it "looks up schemas by event type" do
94
- schema = Async::Matrix::Schema["m.room.message"]
95
- schema.should.not.be.nil
96
- schema.should.be.kind_of JSONSchemer::Schema
97
- end
98
-
99
- it "returns nil for unknown event types" do
100
- Async::Matrix::Schema["m.fake.event"].should.be.nil
101
- end
102
-
103
- it "validates event hashes" do
104
- valid_event = {
105
- "type" => "m.room.message",
106
- "content" => {"msgtype" => "m.text", "body" => "hello"},
107
- "event_id" => "$abc123",
108
- "sender" => "@alice:example.org",
109
- "origin_server_ts" => 1234567890,
110
- "room_id" => "!room:example.org"
111
- }
112
- Async::Matrix::Schema.valid?(valid_event).should == true
113
- end
114
-
115
- it "returns errors for invalid events" do
116
- invalid_event = {
117
- "type" => "m.room.message",
118
- "content" => {"msgtype" => "m.text"},
119
- "event_id" => "$abc123",
120
- "sender" => "@alice:example.org",
121
- "origin_server_ts" => 1234567890,
122
- "room_id" => "!room:example.org"
123
- }
124
- errors = Async::Matrix::Schema.validate(invalid_event)
125
- errors.should.not.be.empty
126
- end
127
-
128
- it "lists event types" do
129
- types = Async::Matrix::Schema.event_types
130
- types.should.be.kind_of Array
131
- types.should.include "m.room.message"
132
- types.should.include "m.room.member"
133
- end
134
-
135
- it "lists variant types" do
136
- variants = Async::Matrix::Schema.variant_types
137
- variants.should.not.be.empty
138
- end
139
-
140
- it "looks up variant schemas" do
141
- schema = Async::Matrix::Schema.variant("m.room.message", "m.text")
142
- schema.should.not.be.nil
143
- end
144
-
145
- it "returns content properties" do
146
- props = Async::Matrix::Schema.content_properties("m.room.message")
147
- props.should.include "msgtype"
148
- props.should.include "body"
149
- end
150
-
151
- it "reports total schema count" do
152
- Async::Matrix::Schema.size.should.be > 50
153
- end
154
-
155
- it "parses a raw hash into a schema-aware Event" do
156
- event = Async::Matrix::Schema.parse({
157
- "type" => "m.room.message",
158
- "content" => {"msgtype" => "m.text", "body" => "hello"},
159
- "event_id" => "$abc123",
160
- "sender" => "@alice:example.org",
161
- "origin_server_ts" => 1234567890,
162
- "room_id" => "!room:example.org"
163
- })
164
- event.should.be.kind_of Async::Matrix::ApplicationService::Event
165
- event.type.should == "m.room.message"
166
- event.content.body.should == "hello"
167
- event.valid?.should == true
168
- event.schema.should.not.be.nil
169
- end
170
- end
92
+ describe "Async::Matrix::Schema" do
93
+ it "looks up schemas by event type" do
94
+ schema = Async::Matrix::Schema["m.room.message"]
95
+ schema.should.not.be.nil
96
+ schema.should.be.kind_of JSONSchemer::Schema
97
+ end
98
+
99
+ it "returns nil for unknown event types" do
100
+ Async::Matrix::Schema["m.fake.event"].should.be.nil
101
+ end
102
+
103
+ it "validates event hashes" do
104
+ valid_event = {
105
+ "type" => "m.room.message",
106
+ "content" => {"msgtype" => "m.text", "body" => "hello"},
107
+ "event_id" => "$abc123",
108
+ "sender" => "@alice:example.org",
109
+ "origin_server_ts" => 1234567890,
110
+ "room_id" => "!room:example.org"
111
+ }
112
+ Async::Matrix::Schema.valid?(valid_event).should == true
113
+ end
114
+
115
+ it "returns errors for invalid events" do
116
+ invalid_event = {
117
+ "type" => "m.room.message",
118
+ "content" => {"msgtype" => "m.text"},
119
+ "event_id" => "$abc123",
120
+ "sender" => "@alice:example.org",
121
+ "origin_server_ts" => 1234567890,
122
+ "room_id" => "!room:example.org"
123
+ }
124
+ errors = Async::Matrix::Schema.validate(invalid_event)
125
+ errors.should.not.be.empty
126
+ end
127
+
128
+ it "lists event types" do
129
+ types = Async::Matrix::Schema.event_types
130
+ types.should.be.kind_of Array
131
+ types.should.include "m.room.message"
132
+ types.should.include "m.room.member"
133
+ end
134
+
135
+ it "lists variant types" do
136
+ variants = Async::Matrix::Schema.variant_types
137
+ variants.should.not.be.empty
138
+ end
139
+
140
+ it "looks up variant schemas" do
141
+ schema = Async::Matrix::Schema.variant("m.room.message", "m.text")
142
+ schema.should.not.be.nil
143
+ end
144
+
145
+ it "returns content properties" do
146
+ props = Async::Matrix::Schema.content_properties("m.room.message")
147
+ props.should.include "msgtype"
148
+ props.should.include "body"
149
+ end
150
+
151
+ it "reports total schema count" do
152
+ Async::Matrix::Schema.size.should.be > 50
153
+ end
154
+
155
+ it "parses a raw hash into a schema-aware Event" do
156
+ event = Async::Matrix::Schema.parse({
157
+ "type" => "m.room.message",
158
+ "content" => {"msgtype" => "m.text", "body" => "hello"},
159
+ "event_id" => "$abc123",
160
+ "sender" => "@alice:example.org",
161
+ "origin_server_ts" => 1234567890,
162
+ "room_id" => "!room:example.org"
163
+ })
164
+ event.should.be.kind_of Async::Matrix::Event
165
+ event.type.should == "m.room.message"
166
+ event.content.body.should == "hello"
167
+ event.valid?.should == true
168
+ event.schema.should.not.be.nil
169
+ end
170
+ end
@@ -4,7 +4,7 @@
4
4
  # Copyright, 2026, by General Intelligence Systems.
5
5
 
6
6
  module Async
7
- module Matrix
8
- VERSION = "2.0.1"
9
- end
7
+ module Matrix
8
+ VERSION = "3.0.0"
9
+ end
10
10
  end
data/lib/async/matrix.rb CHANGED
@@ -3,7 +3,6 @@
3
3
  # Released under the Apache License, Version 2.0.
4
4
  # Copyright, 2026, by General Intelligence Systems.
5
5
 
6
- require "bundler/setup"
7
6
  require "async/http"
8
7
 
9
8
  module Async
@@ -12,11 +11,5 @@ module Async
12
11
  end
13
12
 
14
13
  Dir.glob("#{__dir__}/matrix/**/*.rb").sort.each do |path|
15
- next if path.include?("/migrations/")
16
- # The Discord bridge is opt-in — it pulls in Sequel and opens a placeholder
17
- # database at load time. Require "async/matrix/bridge/discord/db" explicitly
18
- # when you need it, so plain Matrix use stays free of that dependency.
19
- next if path.include?("/bridge/")
20
14
  require path
21
15
  end
22
-
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: async-matrix
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 3.0.0
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Nathan Kidd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-09 00:00:00.000000000 Z
11
+ date: 2026-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async
@@ -16,84 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.39'
19
+ version: '2.46'
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: '2.39'
26
+ version: '2.46'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: async-http
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.95'
33
+ version: '0.105'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.95'
41
- - !ruby/object:Gem::Dependency
42
- name: async-websocket
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0.30'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '0.30'
55
- - !ruby/object:Gem::Dependency
56
- name: grape
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '3.3'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '3.3'
40
+ version: '0.105'
69
41
  - !ruby/object:Gem::Dependency
70
42
  name: json_schemer
71
43
  requirement: !ruby/object:Gem::Requirement
72
44
  requirements:
73
45
  - - "~>"
74
46
  - !ruby/object:Gem::Version
75
- version: '2.0'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '2.0'
83
- - !ruby/object:Gem::Dependency
84
- name: sequel
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '5.0'
47
+ version: '2.5'
90
48
  type: :runtime
91
49
  prerelease: false
92
50
  version_requirements: !ruby/object:Gem::Requirement
93
51
  requirements:
94
52
  - - "~>"
95
53
  - !ruby/object:Gem::Version
96
- version: '5.0'
54
+ version: '2.5'
97
55
  - !ruby/object:Gem::Dependency
98
56
  name: string_builder
99
57
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +80,6 @@ dependencies:
122
80
  - - "~>"
123
81
  - !ruby/object:Gem::Version
124
82
  version: '1.0'
125
- - !ruby/object:Gem::Dependency
126
- name: falcon
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '0.55'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: '0.55'
139
83
  - !ruby/object:Gem::Dependency
140
84
  name: logger
141
85
  requirement: !ruby/object:Gem::Requirement
@@ -151,35 +95,36 @@ dependencies:
151
95
  - !ruby/object:Gem::Version
152
96
  version: '0'
153
97
  - !ruby/object:Gem::Dependency
154
- name: sqlite3
98
+ name: rake-compiler
155
99
  requirement: !ruby/object:Gem::Requirement
156
100
  requirements:
157
- - - ">="
101
+ - - "~>"
158
102
  - !ruby/object:Gem::Version
159
- version: '0'
103
+ version: '1.3'
160
104
  type: :development
161
105
  prerelease: false
162
106
  version_requirements: !ruby/object:Gem::Requirement
163
107
  requirements:
164
- - - ">="
108
+ - - "~>"
165
109
  - !ruby/object:Gem::Version
166
- version: '0'
110
+ version: '1.3'
167
111
  - !ruby/object:Gem::Dependency
168
- name: rake-compiler
112
+ name: lefthook
169
113
  requirement: !ruby/object:Gem::Requirement
170
114
  requirements:
171
115
  - - "~>"
172
116
  - !ruby/object:Gem::Version
173
- version: '1.2'
117
+ version: '2.2'
174
118
  type: :development
175
119
  prerelease: false
176
120
  version_requirements: !ruby/object:Gem::Requirement
177
121
  requirements:
178
122
  - - "~>"
179
123
  - !ruby/object:Gem::Version
180
- version: '1.2'
124
+ version: '2.2'
181
125
  description: Async-native Matrix protocol primitives built on the Socketry async ecosystem.
182
- Provides well-known discovery, event notification, and application service models.
126
+ Provides a Client-Server API client, schema-validated events, media and end-to-end
127
+ encryption.
183
128
  email:
184
129
  - nathankidd@hey.com
185
130
  executables: []
@@ -484,12 +429,6 @@ files:
484
429
  - data/matrix-spec/event-schemas/schema/m.sticker.yaml
485
430
  - data/matrix-spec/event-schemas/schema/m.tag.yaml
486
431
  - data/matrix-spec/event-schemas/schema/m.typing.yaml
487
- - lib/async/discord.rb
488
- - lib/async/discord/api.rb
489
- - lib/async/discord/api/path_tree.rb
490
- - lib/async/discord/client.rb
491
- - lib/async/discord/error.rb
492
- - lib/async/discord/gateway.rb
493
432
  - lib/async/matrix.rb
494
433
  - lib/async/matrix/3.3/async_matrix_e2ee.so
495
434
  - lib/async/matrix/3.4/async_matrix_e2ee.so
@@ -498,58 +437,25 @@ files:
498
437
  - lib/async/matrix/api/chain.rb
499
438
  - lib/async/matrix/api/concat.rb
500
439
  - lib/async/matrix/api/path_tree.rb
501
- - lib/async/matrix/application_service/bot.rb
502
- - lib/async/matrix/application_service/config.rb
503
- - lib/async/matrix/application_service/config/schema/analytics.json
504
- - lib/async/matrix/application_service/config/schema/appservice.json
505
- - lib/async/matrix/application_service/config/schema/backfill.json
506
- - lib/async/matrix/application_service/config/schema/bridge.json
507
- - lib/async/matrix/application_service/config/schema/config.json
508
- - lib/async/matrix/application_service/config/schema/database.json
509
- - lib/async/matrix/application_service/config/schema/direct_media.json
510
- - lib/async/matrix/application_service/config/schema/double_puppet.json
511
- - lib/async/matrix/application_service/config/schema/encryption.json
512
- - lib/async/matrix/application_service/config/schema/homeserver.json
513
- - lib/async/matrix/application_service/config/schema/logging.json
514
- - lib/async/matrix/application_service/config/schema/management_room_texts.json
515
- - lib/async/matrix/application_service/config/schema/matrix.json
516
- - lib/async/matrix/application_service/config/schema/permissions.json
517
- - lib/async/matrix/application_service/config/schema/provisioning.json
518
- - lib/async/matrix/application_service/config/schema/public_media.json
519
- - lib/async/matrix/application_service/config/schema/relay.json
520
- - lib/async/matrix/application_service/config/vivify.rb
521
- - lib/async/matrix/application_service/dispatcher.rb
522
- - lib/async/matrix/application_service/error_response.rb
523
- - lib/async/matrix/application_service/event.rb
524
- - lib/async/matrix/application_service/server.rb
525
- - lib/async/matrix/application_service/transaction.rb
526
- - lib/async/matrix/application_service/transaction_handler.rb
527
- - lib/async/matrix/application_service/transaction_store.rb
528
- - lib/async/matrix/bridge/discord/db.rb
529
- - lib/async/matrix/bridge/discord/db/connection.rb
530
- - lib/async/matrix/bridge/discord/db/file.rb
531
- - lib/async/matrix/bridge/discord/db/guild.rb
532
- - lib/async/matrix/bridge/discord/db/message.rb
533
- - lib/async/matrix/bridge/discord/db/migrations/001_create_users.rb
534
- - lib/async/matrix/bridge/discord/db/migrations/002_create_guilds.rb
535
- - lib/async/matrix/bridge/discord/db/migrations/003_create_portals.rb
536
- - lib/async/matrix/bridge/discord/db/migrations/004_create_puppets.rb
537
- - lib/async/matrix/bridge/discord/db/migrations/005_create_messages.rb
538
- - lib/async/matrix/bridge/discord/db/migrations/006_create_reactions.rb
539
- - lib/async/matrix/bridge/discord/db/migrations/007_create_files.rb
540
- - lib/async/matrix/bridge/discord/db/portal.rb
541
- - lib/async/matrix/bridge/discord/db/puppet.rb
542
- - lib/async/matrix/bridge/discord/db/reaction.rb
543
- - lib/async/matrix/bridge/discord/db/schema.rb
544
- - lib/async/matrix/bridge/discord/db/user.rb
440
+ - lib/async/matrix/auth_error.rb
441
+ - lib/async/matrix/bad_json_error.rb
545
442
  - lib/async/matrix/client.rb
443
+ - lib/async/matrix/config.rb
444
+ - lib/async/matrix/config/vivify.rb
546
445
  - lib/async/matrix/connection.rb
446
+ - lib/async/matrix/content.rb
547
447
  - lib/async/matrix/double_puppet_client.rb
548
448
  - lib/async/matrix/e2ee.rb
549
449
  - lib/async/matrix/endpoint.rb
550
450
  - lib/async/matrix/error.rb
451
+ - lib/async/matrix/error_response.rb
452
+ - lib/async/matrix/event.rb
453
+ - lib/async/matrix/homeserver_error.rb
454
+ - lib/async/matrix/invalid_endpoint_error.rb
551
455
  - lib/async/matrix/media_client.rb
456
+ - lib/async/matrix/not_found_error.rb
552
457
  - lib/async/matrix/notifier.rb
458
+ - lib/async/matrix/response_too_large_error.rb
553
459
  - lib/async/matrix/schema.rb
554
460
  - lib/async/matrix/schema/registry.rb
555
461
  - lib/async/matrix/schema/validation_error.rb