litestream 0.11.0-arm64-darwin → 0.11.1-arm64-darwin

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: a850f6bfd2f697bde5766f2935c8e3dd0e552c3727aa7f622bef0704bd32b9e6
4
- data.tar.gz: c01042dc046cfd684d3aec4abb7b0bd504254c3ceefaec0cbe249afb938648a5
3
+ metadata.gz: fe022c6f74c190a93465702308976df8e3955cc42d183db198b1018df55ea7d5
4
+ data.tar.gz: f8df94d0bec71362e4acc860b3dc8ba63aac5d0d8819dca9aec493024dce2b31
5
5
  SHA512:
6
- metadata.gz: '08d31ca986f4b60fa22cccf3d50e233b9bf8dc0177003a033dd4cf4b287a15de1498971d732ce562bea54b33cb704984596dd505abf3e0eca1c01959029f0f02'
7
- data.tar.gz: ef5963e1f9df8ed7eb299832ac8ce25110732e72a2b5073f813e5a3132179e8c5be24b85114e366e9abef8350f5ce2c8661a5379ed180cbc8af6724efab7e78f
6
+ metadata.gz: 7013b65cfb5110f4272cb5d1362de0f7ac700d551b2a77a226d827ecb38a65da16c28cbb8af7ff90e9cac0cd9104d288f457b24945bb6b0dfb2a89b2bae72199
7
+ data.tar.gz: cf2a72586abdf5f82714ac42ffbcd5eeaad82a80b5c9d78e6bcb5ea2c2f5450b6ef0776a3814e045fe1ff601cbf04433a3f08d1bcfaaa54c26f1acc0718bb500
@@ -3,7 +3,12 @@ module Litestream
3
3
  protect_from_forgery with: :exception
4
4
  around_action :force_english_locale!
5
5
 
6
- http_basic_authenticate_with name: Litestream.username, password: Litestream.password if Litestream.password
6
+ if Litestream.password
7
+ http_basic_authenticate_with(
8
+ name: Litestream.username,
9
+ password: Litestream.password
10
+ )
11
+ end
7
12
 
8
13
  private
9
14
 
@@ -118,11 +118,9 @@ module Litestream
118
118
  end
119
119
 
120
120
  def prepare(command, argv = {}, database = nil)
121
- if Litestream.configuration
122
- ENV["LITESTREAM_REPLICA_BUCKET"] ||= Litestream.configuration.replica_bucket
123
- ENV["LITESTREAM_ACCESS_KEY_ID"] ||= Litestream.configuration.replica_key_id
124
- ENV["LITESTREAM_SECRET_ACCESS_KEY"] ||= Litestream.configuration.replica_access_key
125
- end
121
+ ENV["LITESTREAM_REPLICA_BUCKET"] ||= Litestream.replica_bucket
122
+ ENV["LITESTREAM_ACCESS_KEY_ID"] ||= Litestream.replica_key_id
123
+ ENV["LITESTREAM_SECRET_ACCESS_KEY"] ||= Litestream.replica_access_key
126
124
 
127
125
  args = {
128
126
  "--config" => Rails.root.join("config", "litestream.yml").to_s
@@ -18,5 +18,9 @@ module Litestream
18
18
  Litestream.public_send(:"#{name}=", value)
19
19
  end
20
20
  end
21
+
22
+ initializer "deprecator" do |app|
23
+ app.deprecators[:litestream] = Litestream.deprecator
24
+ end
21
25
  end
22
26
  end
@@ -4,7 +4,7 @@
4
4
  # This allows you to configure Litestream using Rails encrypted credentials,
5
5
  # or some other mechanism where the values are only avaialble at runtime.
6
6
 
7
- Litestream.configure do |config|
7
+ Rails.application.configure do
8
8
  # An example of using Rails encrypted credentials to configure Litestream.
9
9
  # litestream_credentials = Rails.application.credentials.litestream
10
10
 
@@ -19,15 +19,15 @@ Litestream.configure do |config|
19
19
  # any SFTP server.
20
20
  # In this example, we are using Rails encrypted credentials to store the URL to
21
21
  # our storage provider bucket.
22
- # config.replica_bucket = litestream_credentials.replica_bucket
22
+ # config.litestream.replica_bucket = litestream_credentials&.replica_bucket
23
23
 
24
24
  # Replica-specific authentication key.
25
25
  # Litestream needs authentication credentials to access your storage provider bucket.
26
26
  # In this example, we are using Rails encrypted credentials to store the access key ID.
27
- # config.replica_key_id = litestream_credentials.replica_key_id
27
+ # config.litestream.replica_key_id = litestream_credentials&.replica_key_id
28
28
 
29
29
  # Replica-specific secret key.
30
30
  # Litestream needs authentication credentials to access your storage provider bucket.
31
31
  # In this example, we are using Rails encrypted credentials to store the secret access key.
32
- # config.replica_access_key = litestream_credentials.replica_access_key
32
+ # config.litestream.replica_access_key = litestream_credentials&.replica_access_key
33
33
  end
@@ -1,3 +1,3 @@
1
1
  module Litestream
2
- VERSION = "0.11.0"
2
+ VERSION = "0.11.1"
3
3
  end
data/lib/litestream.rb CHANGED
@@ -3,11 +3,25 @@
3
3
  require "sqlite3"
4
4
 
5
5
  module Litestream
6
+ VerificationFailure = Class.new(StandardError)
7
+
6
8
  class << self
7
- attr_accessor :configuration
9
+ attr_writer :configuration
10
+
11
+ def configuration
12
+ @configuration ||= Configuration.new
13
+ end
14
+
15
+ def deprecator
16
+ @deprecator ||= ActiveSupport::Deprecation.new("0.12.0", "Litestream")
17
+ end
8
18
  end
9
19
 
10
20
  def self.configure
21
+ deprecator.warn(
22
+ 'Configuring Litestream via Litestream.configure is deprecated. Use Rails.application.configure { config.litestream.* = ... } instead.',
23
+ caller
24
+ )
11
25
  self.configuration ||= Configuration.new
12
26
  yield(configuration)
13
27
  end
@@ -19,11 +33,7 @@ module Litestream
19
33
  end
20
34
  end
21
35
 
22
- VerificationFailure = Class.new(StandardError)
23
-
24
- mattr_writer :username
25
- mattr_writer :password
26
- mattr_writer :queue
36
+ mattr_writer :username, :password, :queue, :replica_bucket, :replica_key_id, :replica_access_key
27
37
 
28
38
  class << self
29
39
  def verify!(database_path)
@@ -55,8 +65,6 @@ module Litestream
55
65
  @username ||= ENV["LITESTREAM_USERNAME"] || @@username || "litestream"
56
66
  end
57
67
 
58
- # use method instead of attr_accessor to ensure
59
- # this works if variable set after Litestream is loaded
60
68
  def password
61
69
  @password ||= ENV["LITESTREAM_PASSWORD"] || @@password
62
70
  end
@@ -65,6 +73,18 @@ module Litestream
65
73
  @queue ||= ENV["LITESTREAM_QUEUE"] || @@queue || "default"
66
74
  end
67
75
 
76
+ def replica_bucket
77
+ @replica_bucket ||= @@replica_bucket || configuration.replica_bucket
78
+ end
79
+
80
+ def replica_key_id
81
+ @replica_key_id ||= @@replica_key_id || configuration.replica_key_id
82
+ end
83
+
84
+ def replica_access_key
85
+ @replica_access_key ||= @@replica_access_key || configuration.replica_access_key
86
+ end
87
+
68
88
  def replicate_process
69
89
  info = {}
70
90
  if !`which systemctl`.empty?
@@ -1,14 +1,9 @@
1
1
  namespace :litestream do
2
2
  desc "Print the ENV variables needed for the Litestream config file"
3
3
  task env: :environment do
4
- if Litestream.configuration.nil?
5
- warn "You have not configured the Litestream gem with any values to generate ENV variables"
6
- next
7
- end
8
-
9
- puts "LITESTREAM_REPLICA_BUCKET=#{Litestream.configuration.replica_bucket}"
10
- puts "LITESTREAM_ACCESS_KEY_ID=#{Litestream.configuration.replica_key_id}"
11
- puts "LITESTREAM_SECRET_ACCESS_KEY=#{Litestream.configuration.replica_access_key}"
4
+ puts "LITESTREAM_REPLICA_BUCKET=#{Litestream.replica_bucket}"
5
+ puts "LITESTREAM_ACCESS_KEY_ID=#{Litestream.replica_key_id}"
6
+ puts "LITESTREAM_SECRET_ACCESS_KEY=#{Litestream.replica_access_key}"
12
7
 
13
8
  true
14
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: litestream
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.11.1
5
5
  platform: arm64-darwin
6
6
  authors:
7
7
  - Stephen Margheim
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-22 00:00:00.000000000 Z
11
+ date: 2024-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logfmt
@@ -38,20 +38,76 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: actionpack
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '7.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '7.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: actionview
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '7.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '7.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: activesupport
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '7.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '7.0'
41
83
  - !ruby/object:Gem::Dependency
42
84
  name: activejob
43
85
  requirement: !ruby/object:Gem::Requirement
44
86
  requirements:
45
87
  - - ">="
46
88
  - !ruby/object:Gem::Version
47
- version: '0'
89
+ version: '7.0'
48
90
  type: :runtime
49
91
  prerelease: false
50
92
  version_requirements: !ruby/object:Gem::Requirement
51
93
  requirements:
52
94
  - - ">="
53
95
  - !ruby/object:Gem::Version
54
- version: '0'
96
+ version: '7.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: railties
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '7.0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '7.0'
55
111
  - !ruby/object:Gem::Dependency
56
112
  name: rubyzip
57
113
  requirement: !ruby/object:Gem::Requirement
@@ -149,7 +205,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
205
  - !ruby/object:Gem::Version
150
206
  version: '0'
151
207
  requirements: []
152
- rubygems_version: 3.5.17
208
+ rubygems_version: 3.5.11
153
209
  signing_key:
154
210
  specification_version: 4
155
211
  summary: Integrate Litestream with the RubyGems infrastructure.