lunchmoney 1.4.1 → 1.5.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.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build_and_publish_yard_docs.yml +2 -2
  3. data/.github/workflows/ci.yml +9 -10
  4. data/.github/workflows/rbi-updater.yml +1 -1
  5. data/.github/workflows/release_pipeline.yml +1 -1
  6. data/.rubocop.yml +1 -1
  7. data/.ruby-version +1 -1
  8. data/.toys/.toys.rb +8 -0
  9. data/Gemfile +1 -1
  10. data/Gemfile.lock +76 -60
  11. data/README.md +0 -2
  12. data/SECURITY.md +151 -0
  13. data/bin/check_vcr_version +94 -0
  14. data/lib/lunchmoney/api.rb +25 -38
  15. data/lib/lunchmoney/calls/assets.rb +10 -13
  16. data/lib/lunchmoney/calls/base.rb +59 -7
  17. data/lib/lunchmoney/calls/budgets.rb +22 -25
  18. data/lib/lunchmoney/calls/categories.rb +28 -36
  19. data/lib/lunchmoney/calls/crypto.rb +7 -9
  20. data/lib/lunchmoney/calls/plaid_accounts.rb +7 -9
  21. data/lib/lunchmoney/calls/recurring_expenses.rb +4 -5
  22. data/lib/lunchmoney/calls/tags.rb +3 -4
  23. data/lib/lunchmoney/calls/transactions.rb +28 -36
  24. data/lib/lunchmoney/calls/users.rb +3 -4
  25. data/lib/lunchmoney/configuration.rb +20 -0
  26. data/lib/lunchmoney/objects/object.rb +4 -9
  27. data/lib/lunchmoney/validators.rb +8 -6
  28. data/lib/lunchmoney/version.rb +1 -1
  29. data/lib/lunchmoney.rb +3 -3
  30. data/lunchmoney.gemspec +1 -1
  31. data/sorbet/rbi/annotations/activesupport.rbi +35 -0
  32. data/sorbet/rbi/dsl/active_support/callbacks.rbi +0 -2
  33. data/sorbet/rbi/gems/{activesupport@7.2.2.1.rbi → activesupport@8.0.2.1.rbi} +1369 -989
  34. data/sorbet/rbi/gems/{ast@2.4.2.rbi → ast@2.4.3.rbi} +4 -3
  35. data/sorbet/rbi/gems/{base64@0.2.0.rbi → base64@0.3.0.rbi} +76 -39
  36. data/sorbet/rbi/gems/{benchmark@0.4.0.rbi → benchmark@0.4.1.rbi} +50 -49
  37. data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +275 -0
  38. data/sorbet/rbi/gems/{dotenv@3.1.7.rbi → dotenv@3.1.8.rbi} +9 -9
  39. data/sorbet/rbi/gems/{drb@2.2.1.rbi → drb@2.2.3.rbi} +503 -188
  40. data/sorbet/rbi/gems/{faraday-net_http@3.4.0.rbi → faraday-net_http@3.4.1.rbi} +23 -23
  41. data/sorbet/rbi/gems/{faraday@2.12.2.rbi → faraday@2.13.4.rbi} +468 -141
  42. data/sorbet/rbi/gems/{hashdiff@1.1.2.rbi → hashdiff@1.2.0.rbi} +5 -3
  43. data/sorbet/rbi/gems/{json@2.10.2.rbi → json@2.13.2.rbi} +386 -175
  44. data/sorbet/rbi/gems/{kramdown@2.4.0.rbi → kramdown@2.5.1.rbi} +316 -234
  45. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +240 -0
  46. data/sorbet/rbi/gems/{logger@1.6.6.rbi → logger@1.7.0.rbi} +63 -40
  47. data/sorbet/rbi/gems/{parser@3.3.7.1.rbi → parser@3.3.9.0.rbi} +303 -291
  48. data/sorbet/rbi/gems/{rack@3.1.9.rbi → rack@3.2.1.rbi} +712 -547
  49. data/sorbet/rbi/gems/{rake@13.2.1.rbi → rake@13.3.0.rbi} +238 -227
  50. data/sorbet/rbi/gems/{rbi@0.3.1.rbi → rbi@0.3.6.rbi} +1084 -2521
  51. data/sorbet/rbi/gems/{rbs@3.9.0.rbi → rbs@4.0.0.dev.4.rbi} +1336 -419
  52. data/sorbet/rbi/gems/{regexp_parser@2.10.0.rbi → regexp_parser@2.11.2.rbi} +1044 -956
  53. data/sorbet/rbi/gems/require-hooks@0.2.2.rbi +110 -0
  54. data/sorbet/rbi/gems/{rexml@3.4.1.rbi → rexml@3.4.2.rbi} +302 -292
  55. data/sorbet/rbi/gems/{rubocop-ast@1.38.0.rbi → rubocop-ast@1.46.0.rbi} +802 -1016
  56. data/sorbet/rbi/gems/{rubocop-minitest@0.36.0.rbi → rubocop-minitest@0.38.2.rbi} +129 -93
  57. data/sorbet/rbi/gems/{rubocop-rails@2.29.1.rbi → rubocop-rails@2.33.3.rbi} +575 -230
  58. data/sorbet/rbi/gems/{rubocop-shopify@2.15.1.rbi → rubocop-shopify@2.17.1.rbi} +1 -0
  59. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.7.rbi → rubocop-sorbet@0.10.5.rbi} +761 -83
  60. data/sorbet/rbi/gems/{rubocop@1.71.2.rbi → rubocop@1.80.1.rbi} +6543 -3097
  61. data/sorbet/rbi/gems/{spoom@1.6.1.rbi → spoom@1.7.6.rbi} +1179 -2621
  62. data/sorbet/rbi/gems/{tapioca@0.16.11.rbi → tapioca@0.17.7.rbi} +623 -745
  63. data/sorbet/rbi/gems/{thor@1.3.2.rbi → thor@1.4.0.rbi} +88 -67
  64. data/sorbet/rbi/gems/{unicode-display_width@3.1.4.rbi → unicode-display_width@3.1.5.rbi} +5 -5
  65. data/sorbet/rbi/gems/{vcr@6.3.1.rbi → vcr@6.3.1-ce35c236fe48899f02ddf780973b44cdb756c0ee.rbi} +140 -123
  66. metadata +42 -38
  67. data/sorbet/rbi/gems/bigdecimal@3.1.9.rbi +0 -78
  68. /data/sorbet/rbi/gems/{connection_pool@2.5.0.rbi → connection_pool@2.5.3.rbi} +0 -0
  69. /data/sorbet/rbi/gems/{language_server-protocol@3.17.0.4.rbi → language_server-protocol@3.17.0.5.rbi} +0 -0
  70. /data/sorbet/rbi/gems/{parallel@1.26.3.rbi → parallel@1.27.0.rbi} +0 -0
@@ -0,0 +1,110 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `require-hooks` gem.
5
+ # Please instead update this file by running `bin/tapioca gem require-hooks`.
6
+
7
+
8
+ # source://require-hooks//lib/require-hooks/api.rb#3
9
+ module RequireHooks
10
+ class << self
11
+ # Define a block to wrap the code loading.
12
+ # The return value MUST be a result of calling the passed block.
13
+ # For example, you can use such hooks for instrumentation, debugging purposes.
14
+ #
15
+ # RequireHooks.around_load do |path, &block|
16
+ # puts "Loading #{path}"
17
+ # block.call.tap { puts "Loaded #{path}" }
18
+ # end
19
+ #
20
+ # source://require-hooks//lib/require-hooks/api.rb#71
21
+ def around_load(patterns: T.unsafe(nil), exclude_patterns: T.unsafe(nil), &block); end
22
+
23
+ # source://require-hooks//lib/require-hooks/api.rb#107
24
+ def context_for(path); end
25
+
26
+ # This hook should be used to manually compile byte code to be loaded by the VM.
27
+ # The arguments are (path, source = nil), where source is only defined if transformations took place.
28
+ # Otherwise, you MUST read the source code from the file yourself.
29
+ #
30
+ # The return value MUST be either nil (continue to the next hook or default behavior) or a platform-specific bytecode object (e.g., RubyVM::InstructionSequence).
31
+ #
32
+ # RequireHooks.hijack_load do |path, source|
33
+ # source ||= File.read(path)
34
+ # if defined?(RubyVM::InstructionSequence)
35
+ # RubyVM::InstructionSequence.compile(source)
36
+ # elsif defined?(JRUBY_VERSION)
37
+ # JRuby.compile(source)
38
+ # end
39
+ # end
40
+ #
41
+ # source://require-hooks//lib/require-hooks/api.rb#103
42
+ def hijack_load(patterns: T.unsafe(nil), exclude_patterns: T.unsafe(nil), &block); end
43
+
44
+ # Returns the value of attribute print_warnings.
45
+ #
46
+ # source://require-hooks//lib/require-hooks/api.rb#61
47
+ def print_warnings; end
48
+
49
+ # Sets the attribute print_warnings
50
+ #
51
+ # @param value the value to set the attribute print_warnings to.
52
+ #
53
+ # source://require-hooks//lib/require-hooks/api.rb#61
54
+ def print_warnings=(_arg0); end
55
+
56
+ # Define hooks to perform source-to-source transformations.
57
+ # The return value MUST be either String (new source code) or nil (indicating that no transformations were performed).
58
+ #
59
+ # NOTE: The second argument (`source`) MAY be nil, indicating that no transformer tried to transform the source code.
60
+ #
61
+ #
62
+ # RequireHooks.source_transform do |path, source|
63
+ # end
64
+ #
65
+ # source://require-hooks//lib/require-hooks/api.rb#85
66
+ def source_transform(patterns: T.unsafe(nil), exclude_patterns: T.unsafe(nil), &block); end
67
+ end
68
+ end
69
+
70
+ # source://require-hooks//lib/require-hooks/api.rb#8
71
+ class RequireHooks::Context
72
+ # @return [Context] a new instance of Context
73
+ #
74
+ # source://require-hooks//lib/require-hooks/api.rb#9
75
+ def initialize(around_load, source_transform, hijack_load); end
76
+
77
+ # @return [Boolean]
78
+ #
79
+ # source://require-hooks//lib/require-hooks/api.rb#15
80
+ def empty?; end
81
+
82
+ # @return [Boolean]
83
+ #
84
+ # source://require-hooks//lib/require-hooks/api.rb#23
85
+ def hijack?; end
86
+
87
+ # source://require-hooks//lib/require-hooks/api.rb#37
88
+ def perform_source_transform(path); end
89
+
90
+ # source://require-hooks//lib/require-hooks/api.rb#27
91
+ def run_around_load_callbacks(path); end
92
+
93
+ # @return [Boolean]
94
+ #
95
+ # source://require-hooks//lib/require-hooks/api.rb#19
96
+ def source_transform?; end
97
+
98
+ # source://require-hooks//lib/require-hooks/api.rb#49
99
+ def try_hijack_load(path, source); end
100
+ end
101
+
102
+ # source://require-hooks//lib/require-hooks/mode/load_iseq.rb#4
103
+ module RequireHooks::LoadIseq
104
+ # source://require-hooks//lib/require-hooks/mode/load_iseq.rb#5
105
+ def load_iseq(path); end
106
+ end
107
+
108
+ class RubyVM::InstructionSequence
109
+ extend ::RequireHooks::LoadIseq
110
+ end