lunchmoney 1.2.0 → 1.3.0

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: ade3f058472ad8a1675c50523464337634c50eecb05eac449ab10d6eddd741c1
4
- data.tar.gz: 5aad397a6fd0f9d05caf81ba54e12e4abf0ae06c46a23dcb37587b91dd4f5cb6
3
+ metadata.gz: 6a73b1519cb5c9bf6a380532ad096247e2ee3207f25ea4dde1340622ac430524
4
+ data.tar.gz: 9672889ae2f05b4d7318ac6e7b27bed03167ae702bc40564581472ccb7bfb4ef
5
5
  SHA512:
6
- metadata.gz: 71204a77261c3820cfd769fc212a1665f370e2fce8602b74321c98bd4740d3b359ed54ee6b4988efdffc554c63d1fd65f4f458a67301e3c74d0f5a0403873f6e
7
- data.tar.gz: 5455912322a61badb7c849ce1a47af1372d89f8ac6fb00eb3c2aa73f2ed0ab1f6b7fa1e70b84cc6ee1c37ee1a1475d990237bd8c42b6575eccbf167fa876b6d5
6
+ metadata.gz: 7f7eb6658f6a7248760ca874cb8758dc503d3c614f649b12cef3d02ec0894a780d642417bccca1d79a4de281341af18d3be3df3d722f193096055836310bfa37
7
+ data.tar.gz: 7404fedca96ad83227865f6e23ab3a87451a650dc4562c5511e8fe97e8f580e2ccd04cd0c3a1ad3b9e3e4ce1bf6805dcbc047089dc1df74973da2f6aee6ae8aa
@@ -35,7 +35,7 @@ jobs:
35
35
  run: yard doc -o doc
36
36
 
37
37
  - name: Setup Github Pages
38
- uses: actions/configure-pages@v4
38
+ uses: actions/configure-pages@v5
39
39
 
40
40
  - name: Upload Artifact
41
41
  uses: actions/upload-pages-artifact@v3
@@ -13,12 +13,12 @@ on:
13
13
  jobs:
14
14
  update-rbis:
15
15
  name: RBI Updater
16
- uses: ./.github/workflows/dependabot-rbi-updater.yml
16
+ uses: ./.github/workflows/rbi-updater.yml
17
17
  secrets: inherit
18
18
 
19
19
  ci:
20
20
  needs: update-rbis
21
- if: always() && contains(needs.*.result, 'skipped')
21
+ if: always() && contains(needs.*.result, 'success')
22
22
  name: "CI"
23
23
  uses: ./.github/workflows/ci.yml
24
24
  secrets: inherit
@@ -51,7 +51,7 @@ jobs:
51
51
  -
52
52
  name: Run Tests (With Remote Calls & Coverage Report)
53
53
  if: ${{ endsWith(matrix.ruby-version, '3.3') }}
54
- uses: paambaati/codeclimate-action@v5.0.0
54
+ uses: paambaati/codeclimate-action@v6.0.0
55
55
  env:
56
56
  CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
57
57
  REMOTE_TESTS_ENABLED: ${{ vars.REMOTE_TESTS_ENABLED }}
@@ -1,11 +1,10 @@
1
- name: Dependabot RBI Updater
1
+ name: RBI Updater
2
2
  on:
3
3
  workflow_call:
4
4
 
5
5
  jobs:
6
6
  update-rbis:
7
7
  runs-on: ubuntu-latest
8
- if: ${{ github.triggering_actor == 'dependabot[bot]' }}
9
8
 
10
9
  steps:
11
10
  -
@@ -26,7 +25,7 @@ jobs:
26
25
  -
27
26
  name: Commit RBIs
28
27
  run: |
29
- git config --local user.name "Dependabot RBI Updater"
28
+ git config --local user.name "RBI Updater"
30
29
  git config --local user.email action@github.com
31
30
  git add sorbet/*
32
31
  git diff-index --cached --quiet HEAD || git commit -m "[dependabot skip] Update RBIs"
data/Gemfile CHANGED
@@ -8,7 +8,7 @@ gemspec
8
8
  # Specify development dependencies here
9
9
  gem "toys"
10
10
  gem "minitest", "~> 5.22", require: false
11
- gem "mocha", "~> 2.1.0", require: false
11
+ gem "mocha", "~> 2.2.0", require: false
12
12
  gem "webmock", require: false
13
13
  gem "vcr", require: false
14
14
  gem "pry-sorbet", "~> 0.2", require: false
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lunchmoney (1.2.0)
4
+ lunchmoney (1.3.0)
5
5
  activesupport (>= 6.1)
6
6
  faraday (>= 1.0.0)
7
7
  sorbet-runtime (>= 0.5)
@@ -37,7 +37,7 @@ GEM
37
37
  bigdecimal
38
38
  rexml
39
39
  docile (1.4.0)
40
- dotenv (3.1.0)
40
+ dotenv (3.1.2)
41
41
  drb (2.2.1)
42
42
  erubi (1.12.0)
43
43
  faraday (2.9.0)
@@ -47,7 +47,7 @@ GEM
47
47
  hashdiff (1.1.0)
48
48
  i18n (1.14.4)
49
49
  concurrent-ruby (~> 1.0)
50
- json (2.7.1)
50
+ json (2.7.2)
51
51
  kramdown (2.4.0)
52
52
  rexml
53
53
  kramdown-parser-gfm (1.1.0)
@@ -66,18 +66,17 @@ GEM
66
66
  tomlrb
67
67
  mixlib-shellout (3.2.7)
68
68
  chef-utils
69
- mocha (2.1.0)
69
+ mocha (2.2.0)
70
70
  ruby2_keywords (>= 0.0.5)
71
71
  mutex_m (0.2.0)
72
72
  net-http (0.4.1)
73
73
  uri
74
74
  netrc (0.11.0)
75
75
  parallel (1.24.0)
76
- parser (3.3.0.5)
76
+ parser (3.3.1.0)
77
77
  ast (~> 2.4.1)
78
78
  racc
79
- prettier_print (1.2.1)
80
- prism (0.24.0)
79
+ prism (0.29.0)
81
80
  pry (0.14.2)
82
81
  coderay (~> 1.1)
83
82
  method_source (~> 1.0)
@@ -88,12 +87,12 @@ GEM
88
87
  rack (3.0.10)
89
88
  rainbow (3.1.1)
90
89
  rake (13.1.0)
91
- rbi (0.1.9)
92
- prism (>= 0.18.0, < 0.25)
90
+ rbi (0.1.13)
91
+ prism (>= 0.18.0, < 1.0.0)
93
92
  sorbet-runtime (>= 0.5.9204)
94
- regexp_parser (2.9.0)
93
+ regexp_parser (2.9.1)
95
94
  rexml (3.2.6)
96
- rubocop (1.62.1)
95
+ rubocop (1.63.5)
97
96
  json (~> 2.3)
98
97
  language_server-protocol (>= 3.17.0)
99
98
  parallel (~> 1.10)
@@ -104,8 +103,8 @@ GEM
104
103
  rubocop-ast (>= 1.31.1, < 2.0)
105
104
  ruby-progressbar (~> 1.7)
106
105
  unicode-display_width (>= 2.4.0, < 3.0)
107
- rubocop-ast (1.31.2)
108
- parser (>= 3.3.0.4)
106
+ rubocop-ast (1.31.3)
107
+ parser (>= 3.3.1.0)
109
108
  rubocop-minitest (0.35.0)
110
109
  rubocop (>= 1.61, < 2.0)
111
110
  rubocop-ast (>= 1.31.1, < 2.0)
@@ -116,7 +115,7 @@ GEM
116
115
  rubocop-ast (>= 1.31.1, < 2.0)
117
116
  rubocop-shopify (2.15.1)
118
117
  rubocop (~> 1.51)
119
- rubocop-sorbet (0.8.0)
118
+ rubocop-sorbet (0.8.3)
120
119
  rubocop (>= 0.90.0)
121
120
  ruby-progressbar (1.13.0)
122
121
  ruby2_keywords (0.0.5)
@@ -126,22 +125,20 @@ GEM
126
125
  simplecov_json_formatter (~> 0.1)
127
126
  simplecov-html (0.12.3)
128
127
  simplecov_json_formatter (0.1.4)
129
- sorbet (0.5.11305)
130
- sorbet-static (= 0.5.11305)
131
- sorbet-runtime (0.5.11305)
132
- sorbet-static (0.5.11305-universal-darwin)
133
- sorbet-static (0.5.11305-x86_64-linux)
134
- sorbet-static-and-runtime (0.5.11305)
135
- sorbet (= 0.5.11305)
136
- sorbet-runtime (= 0.5.11305)
137
- spoom (1.2.4)
128
+ sorbet (0.5.11372)
129
+ sorbet-static (= 0.5.11372)
130
+ sorbet-runtime (0.5.11372)
131
+ sorbet-static (0.5.11372-universal-darwin)
132
+ sorbet-static (0.5.11372-x86_64-linux)
133
+ sorbet-static-and-runtime (0.5.11372)
134
+ sorbet (= 0.5.11372)
135
+ sorbet-runtime (= 0.5.11372)
136
+ spoom (1.3.2)
138
137
  erubi (>= 1.10.0)
138
+ prism (>= 0.19.0)
139
139
  sorbet-static-and-runtime (>= 0.5.10187)
140
- syntax_tree (>= 6.1.1)
141
140
  thor (>= 0.19.2)
142
- syntax_tree (6.2.0)
143
- prettier_print (>= 1.2.0)
144
- tapioca (0.13.1)
141
+ tapioca (0.14.1)
145
142
  bundler (>= 2.2.25)
146
143
  netrc (>= 0.11.0)
147
144
  parallel (>= 1.21.0)
@@ -181,7 +178,7 @@ DEPENDENCIES
181
178
  lunchmoney!
182
179
  mdl
183
180
  minitest (~> 5.22)
184
- mocha (~> 2.1.0)
181
+ mocha (~> 2.2.0)
185
182
  pry-sorbet (~> 0.2)
186
183
  rubocop-minitest
187
184
  rubocop-rails
@@ -21,16 +21,19 @@ module LunchMoney
21
21
  user_email: String,
22
22
  account_id: Integer,
23
23
  budget_name: String,
24
+ primary_currency: String,
24
25
  api_key_label: T.nilable(String),
25
26
  ).void
26
27
  end
27
- def initialize(user_id:, user_name:, user_email:, account_id:, budget_name:, api_key_label: nil)
28
+ def initialize(user_id:, user_name:, user_email:, account_id:, budget_name:, primary_currency:,
29
+ api_key_label: nil)
28
30
  super()
29
31
  @user_id = user_id
30
32
  @user_name = user_name
31
33
  @user_email = user_email
32
34
  @account_id = account_id
33
35
  @budget_name = budget_name
36
+ @primary_currency = primary_currency
34
37
  @api_key_label = api_key_label
35
38
  end
36
39
  end
@@ -3,5 +3,5 @@
3
3
 
4
4
  module LunchMoney
5
5
  # Current version of the gem
6
- VERSION = "1.2.0"
6
+ VERSION = "1.3.0"
7
7
  end
@@ -4,6 +4,7 @@
4
4
  # This is an autogenerated file for dynamic methods in `ActiveSupport::Callbacks`.
5
5
  # Please instead update this file by running `bin/tapioca dsl ActiveSupport::Callbacks`.
6
6
 
7
+
7
8
  module ActiveSupport::Callbacks
8
9
  include GeneratedInstanceMethods
9
10
 
@@ -6,30 +6,30 @@
6
6
 
7
7
  # Shim to load environment variables from `.env files into `ENV`.
8
8
  #
9
- # source://dotenv//lib/dotenv/substitutions/variable.rb#3
9
+ # source://dotenv//lib/dotenv/version.rb#1
10
10
  module Dotenv
11
11
  extend ::Dotenv
12
12
 
13
13
  # Returns the value of attribute instrumenter.
14
14
  #
15
- # source://dotenv//lib/dotenv.rb#14
15
+ # source://dotenv//lib/dotenv.rb#15
16
16
  def instrumenter; end
17
17
 
18
18
  # Sets the attribute instrumenter
19
19
  #
20
20
  # @param value the value to set the attribute instrumenter to.
21
21
  #
22
- # source://dotenv//lib/dotenv.rb#14
22
+ # source://dotenv//lib/dotenv.rb#15
23
23
  def instrumenter=(_arg0); end
24
24
 
25
25
  # Loads environment variables from one or more `.env` files. See `#parse` for more details.
26
26
  #
27
- # source://dotenv//lib/dotenv.rb#17
27
+ # source://dotenv//lib/dotenv.rb#18
28
28
  def load(*filenames, overwrite: T.unsafe(nil), ignore: T.unsafe(nil)); end
29
29
 
30
30
  # Same as `#load`, but raises Errno::ENOENT if any files don't exist
31
31
  #
32
- # source://dotenv//lib/dotenv.rb#26
32
+ # source://dotenv//lib/dotenv.rb#27
33
33
  def load!(*filenames); end
34
34
 
35
35
  # Modify `ENV` for the block and restore it to its previous state afterwards.
@@ -39,27 +39,27 @@ module Dotenv
39
39
  #
40
40
  # @param env [Hash] Hash of keys and values to set in `ENV`
41
41
  #
42
- # source://dotenv//lib/dotenv.rb#112
42
+ # source://dotenv//lib/dotenv.rb#116
43
43
  def modify(env = T.unsafe(nil), &block); end
44
44
 
45
45
  # same as `#load`, but will overwrite existing values in `ENV`
46
46
  #
47
- # source://dotenv//lib/dotenv.rb#31
47
+ # source://dotenv//lib/dotenv.rb#32
48
48
  def overload(*filenames); end
49
49
 
50
50
  # same as `#overwrite`, but raises Errno::ENOENT if any files don't exist
51
51
  #
52
- # source://dotenv//lib/dotenv.rb#37
52
+ # source://dotenv//lib/dotenv.rb#38
53
53
  def overload!(*filenames); end
54
54
 
55
55
  # same as `#load`, but will overwrite existing values in `ENV`
56
56
  #
57
- # source://dotenv//lib/dotenv.rb#31
57
+ # source://dotenv//lib/dotenv.rb#32
58
58
  def overwrite(*filenames); end
59
59
 
60
60
  # same as `#overwrite`, but raises Errno::ENOENT if any files don't exist
61
61
  #
62
- # source://dotenv//lib/dotenv.rb#37
62
+ # source://dotenv//lib/dotenv.rb#38
63
63
  def overwrite!(*filenames); end
64
64
 
65
65
  # Parses the given files, yielding for each file if a block is given.
@@ -70,12 +70,12 @@ module Dotenv
70
70
  # @param block [Proc] Block to yield for each parsed `Dotenv::Environment`
71
71
  # @return [Hash] parsed key/value pairs
72
72
  #
73
- # source://dotenv//lib/dotenv.rb#49
73
+ # source://dotenv//lib/dotenv.rb#50
74
74
  def parse(*filenames, overwrite: T.unsafe(nil), ignore: T.unsafe(nil), &block); end
75
75
 
76
76
  # @raise [MissingKeys]
77
77
  #
78
- # source://dotenv//lib/dotenv.rb#122
78
+ # source://dotenv//lib/dotenv.rb#126
79
79
  def require_keys(*keys); end
80
80
 
81
81
  # Restore `ENV` to a given state
@@ -83,12 +83,12 @@ module Dotenv
83
83
  # @param env [Hash] Hash of keys and values to restore, defaults to the last saved state
84
84
  # @param safe [Boolean] Is it safe to modify `ENV`? Defaults to `true` in the main thread, otherwise raises an error.
85
85
  #
86
- # source://dotenv//lib/dotenv.rb#76
86
+ # source://dotenv//lib/dotenv.rb#77
87
87
  def restore(env = T.unsafe(nil), safe: T.unsafe(nil)); end
88
88
 
89
89
  # Save the current `ENV` to be restored later
90
90
  #
91
- # source://dotenv//lib/dotenv.rb#66
91
+ # source://dotenv//lib/dotenv.rb#67
92
92
  def save; end
93
93
 
94
94
  # Update `ENV` with the given hash of keys and values
@@ -96,12 +96,12 @@ module Dotenv
96
96
  # @param env [Hash] Hash of keys and values to set in `ENV`
97
97
  # @param overwrite [Boolean] Overwrite existing `ENV` values
98
98
  #
99
- # source://dotenv//lib/dotenv.rb#94
99
+ # source://dotenv//lib/dotenv.rb#98
100
100
  def update(env = T.unsafe(nil), overwrite: T.unsafe(nil)); end
101
101
 
102
102
  private
103
103
 
104
- # source://dotenv//lib/dotenv.rb#130
104
+ # source://dotenv//lib/dotenv.rb#134
105
105
  def instrument(name, payload = T.unsafe(nil), &block); end
106
106
  end
107
107
 
@@ -263,7 +263,7 @@ Dotenv::Parser::LINE = T.let(T.unsafe(nil), Regexp)
263
263
 
264
264
  # An internal monitor to synchronize access to ENV in multi-threaded environments.
265
265
  #
266
- # source://dotenv//lib/dotenv.rb#11
266
+ # source://dotenv//lib/dotenv.rb#12
267
267
  Dotenv::SEMAPHORE = T.let(T.unsafe(nil), Monitor)
268
268
 
269
269
  # source://dotenv//lib/dotenv/substitutions/variable.rb#4
@@ -298,3 +298,6 @@ module Dotenv::Substitutions::Variable
298
298
  def substitute(match, variable, env); end
299
299
  end
300
300
  end
301
+
302
+ # source://dotenv//lib/dotenv/version.rb#2
303
+ Dotenv::VERSION = T.let(T.unsafe(nil), String)