ledger_sync 1.4.4 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (214) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +64 -1
  3. data/.travis.yml +12 -5
  4. data/Gemfile.lock +67 -65
  5. data/bin/quickbooks_online_oauth_server.rb +1 -1
  6. data/documentation/generators/reference/ledger/generator.rb +2 -0
  7. data/documentation/site/guides/contribute/deployment.md +62 -7
  8. data/documentation/site/guides/contribute/index.md +5 -1
  9. data/ledger_sync.gemspec +13 -11
  10. data/lib/ledger_sync.rb +17 -12
  11. data/lib/ledger_sync/deserializer.rb +2 -2
  12. data/lib/ledger_sync/error.rb +2 -2
  13. data/lib/ledger_sync/error/ledger_errors.rb +1 -2
  14. data/lib/ledger_sync/error/operation_errors.rb +2 -2
  15. data/lib/ledger_sync/error/resource_errors.rb +1 -1
  16. data/lib/ledger_sync/ledger_configuration.rb +16 -12
  17. data/lib/ledger_sync/ledger_configuration_store.rb +16 -7
  18. data/lib/ledger_sync/ledgers/client.rb +123 -108
  19. data/lib/ledger_sync/ledgers/mixins/infer_config_mixin.rb +37 -0
  20. data/lib/ledger_sync/ledgers/mixins/infer_resource_class_mixin.rb +5 -4
  21. data/lib/ledger_sync/ledgers/mixins/infer_serializer_mixin.rb +5 -5
  22. data/lib/ledger_sync/ledgers/mixins/serialization_mixin.rb +2 -2
  23. data/lib/ledger_sync/ledgers/netsuite/check_line_item/deserializer.rb +2 -1
  24. data/lib/ledger_sync/ledgers/netsuite/check_line_item/serializer.rb +2 -1
  25. data/lib/ledger_sync/ledgers/netsuite/client.rb +5 -1
  26. data/lib/ledger_sync/ledgers/netsuite/config.rb +3 -1
  27. data/lib/ledger_sync/ledgers/netsuite/deserializer.rb +1 -1
  28. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_customer_type.rb +2 -0
  29. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_subsidiary_type.rb +2 -0
  30. data/lib/ledger_sync/ledgers/netsuite_soap/client.rb +3 -1
  31. data/lib/ledger_sync/ledgers/netsuite_soap/config.rb +3 -1
  32. data/lib/ledger_sync/ledgers/operation.rb +12 -10
  33. data/lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb +10 -22
  34. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/create.rb +8 -8
  35. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/find.rb +8 -8
  36. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/update.rb +8 -8
  37. data/lib/ledger_sync/ledgers/quickbooks_online/account/serializer.rb +11 -17
  38. data/lib/ledger_sync/ledgers/quickbooks_online/account_based_expense_line_detail/deserializer.rb +21 -0
  39. data/lib/ledger_sync/ledgers/quickbooks_online/account_based_expense_line_detail/serializer.rb +21 -0
  40. data/lib/ledger_sync/ledgers/quickbooks_online/bill/deserializer.rb +20 -24
  41. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/create.rb +9 -9
  42. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/find.rb +9 -9
  43. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/update.rb +9 -9
  44. data/lib/ledger_sync/ledgers/quickbooks_online/bill/serializer.rb +20 -23
  45. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line/deserializer.rb +22 -0
  46. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line/serializer.rb +26 -0
  47. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/deserializer.rb +31 -35
  48. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/create.rb +13 -13
  49. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/find.rb +13 -13
  50. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/update.rb +13 -13
  51. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/serializer.rb +31 -53
  52. data/lib/ledger_sync/ledgers/quickbooks_online/{bill_payment_line_item → bill_payment_line}/deserializer.rb +3 -5
  53. data/lib/ledger_sync/ledgers/quickbooks_online/{bill_payment_line_item → bill_payment_line}/serializer.rb +3 -5
  54. data/lib/ledger_sync/ledgers/quickbooks_online/check_payment/deserializer.rb +17 -0
  55. data/lib/ledger_sync/ledgers/quickbooks_online/check_payment/serializer.rb +17 -0
  56. data/lib/ledger_sync/ledgers/quickbooks_online/client.rb +10 -6
  57. data/lib/ledger_sync/ledgers/quickbooks_online/config.rb +3 -1
  58. data/lib/ledger_sync/ledgers/quickbooks_online/credit_card_payment/deserializer.rb +17 -0
  59. data/lib/ledger_sync/ledgers/quickbooks_online/credit_card_payment/serializer.rb +17 -0
  60. data/lib/ledger_sync/ledgers/quickbooks_online/currency/deserializer.rb +2 -3
  61. data/lib/ledger_sync/ledgers/quickbooks_online/currency/serializer.rb +3 -2
  62. data/lib/ledger_sync/ledgers/quickbooks_online/customer/deserializer.rb +10 -3
  63. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/create.rb +4 -4
  64. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/find.rb +5 -5
  65. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/update.rb +4 -4
  66. data/lib/ledger_sync/ledgers/quickbooks_online/customer/serializer.rb +10 -3
  67. data/lib/ledger_sync/ledgers/quickbooks_online/department/deserializer.rb +7 -13
  68. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/create.rb +5 -5
  69. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/find.rb +5 -5
  70. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/update.rb +5 -5
  71. data/lib/ledger_sync/ledgers/quickbooks_online/department/serializer.rb +9 -17
  72. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/deserializer.rb +16 -19
  73. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/create.rb +7 -7
  74. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/find.rb +7 -7
  75. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/update.rb +7 -7
  76. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/serializer.rb +16 -19
  77. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line/deserializer.rb +22 -0
  78. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line/serializer.rb +26 -0
  79. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_detail/deserializer.rb +34 -0
  80. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_detail/serializer.rb +35 -0
  81. data/lib/ledger_sync/ledgers/quickbooks_online/deserializer.rb +4 -4
  82. data/lib/ledger_sync/ledgers/quickbooks_online/expense/deserializer.rb +20 -25
  83. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/create.rb +10 -10
  84. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/find.rb +10 -10
  85. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/update.rb +10 -10
  86. data/lib/ledger_sync/ledgers/quickbooks_online/expense/serializer.rb +22 -28
  87. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line/deserializer.rb +22 -0
  88. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line/serializer.rb +26 -0
  89. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/deserializer.rb +15 -15
  90. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/create.rb +7 -7
  91. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/find.rb +7 -7
  92. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/update.rb +7 -7
  93. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/serializer.rb +15 -15
  94. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_line/deserializer.rb +21 -0
  95. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_line/serializer.rb +25 -0
  96. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/deserializer.rb +10 -15
  97. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/create.rb +5 -5
  98. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/find.rb +5 -5
  99. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/update.rb +5 -5
  100. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/serializer.rb +10 -15
  101. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line/deserializer.rb +20 -0
  102. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line/serializer.rb +24 -0
  103. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_detail/deserializer.rb +29 -0
  104. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_detail/serializer.rb +29 -0
  105. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/deserializer.rb +9 -13
  106. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/create.rb +5 -5
  107. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/find.rb +5 -5
  108. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/update.rb +5 -5
  109. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/serializer.rb +10 -10
  110. data/lib/ledger_sync/ledgers/quickbooks_online/operation.rb +1 -3
  111. data/lib/ledger_sync/ledgers/quickbooks_online/operation/full_update.rb +1 -3
  112. data/lib/ledger_sync/ledgers/quickbooks_online/payment/deserializer.rb +21 -27
  113. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/create.rb +10 -10
  114. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/find.rb +10 -10
  115. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/update.rb +10 -10
  116. data/lib/ledger_sync/ledgers/quickbooks_online/payment/serializer.rb +21 -27
  117. data/lib/ledger_sync/ledgers/quickbooks_online/{payment_line_item → payment_line}/deserializer.rb +3 -4
  118. data/lib/ledger_sync/ledgers/quickbooks_online/{payment_line_item → payment_line}/serializer.rb +3 -4
  119. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/deserializer.rb +10 -29
  120. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/operations/find.rb +10 -10
  121. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/serializer.rb +10 -29
  122. data/lib/ledger_sync/ledgers/quickbooks_online/primary_email_addr/deserializer.rb +13 -0
  123. data/lib/ledger_sync/ledgers/quickbooks_online/primary_email_addr/serializer.rb +13 -0
  124. data/lib/ledger_sync/ledgers/quickbooks_online/primary_phone/deserializer.rb +13 -0
  125. data/lib/ledger_sync/ledgers/quickbooks_online/primary_phone/serializer.rb +13 -0
  126. data/lib/ledger_sync/ledgers/quickbooks_online/reference/deserializer.rb +13 -0
  127. data/lib/ledger_sync/ledgers/quickbooks_online/reference/serializer.rb +13 -0
  128. data/lib/ledger_sync/ledgers/quickbooks_online/resources/account.rb +12 -8
  129. data/lib/ledger_sync/ledgers/quickbooks_online/resources/account_based_expense_line_detail.rb +16 -0
  130. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill.rb +11 -11
  131. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_line.rb +19 -0
  132. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment.rb +17 -15
  133. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment_line.rb +19 -0
  134. data/lib/ledger_sync/ledgers/quickbooks_online/resources/check_payment.rb +11 -0
  135. data/lib/ledger_sync/ledgers/quickbooks_online/resources/credit_card_payment.rb +11 -0
  136. data/lib/ledger_sync/ledgers/quickbooks_online/resources/currency.rb +7 -3
  137. data/lib/ledger_sync/ledgers/quickbooks_online/resources/customer.rb +4 -3
  138. data/lib/ledger_sync/ledgers/quickbooks_online/resources/department.rb +9 -5
  139. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit.rb +9 -9
  140. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line.rb +19 -0
  141. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line_detail.rb +22 -0
  142. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense.rb +12 -12
  143. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense_line.rb +19 -0
  144. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice.rb +8 -8
  145. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice_line.rb +19 -0
  146. data/lib/ledger_sync/ledgers/quickbooks_online/resources/item.rb +1 -1
  147. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry.rb +7 -7
  148. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line.rb +20 -0
  149. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line_detail.rb +27 -0
  150. data/lib/ledger_sync/ledgers/quickbooks_online/resources/ledger_class.rb +9 -5
  151. data/lib/ledger_sync/ledgers/quickbooks_online/resources/payment.rb +11 -11
  152. data/lib/ledger_sync/ledgers/quickbooks_online/resources/{payment_line_item.rb → payment_line.rb} +4 -4
  153. data/lib/ledger_sync/ledgers/quickbooks_online/resources/preferences.rb +10 -10
  154. data/lib/ledger_sync/ledgers/quickbooks_online/resources/sales_item_line_detail.rb +19 -0
  155. data/lib/ledger_sync/ledgers/quickbooks_online/resources/transfer.rb +7 -7
  156. data/lib/ledger_sync/ledgers/quickbooks_online/resources/vendor.rb +11 -9
  157. data/lib/ledger_sync/ledgers/quickbooks_online/sales_item_line_detail/deserializer.rb +21 -0
  158. data/lib/ledger_sync/ledgers/quickbooks_online/sales_item_line_detail/serializer.rb +21 -0
  159. data/lib/ledger_sync/ledgers/quickbooks_online/serialziation/type/mapping_type.rb +2 -0
  160. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/deserializer.rb +13 -16
  161. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/create.rb +6 -6
  162. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/find.rb +6 -6
  163. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/update.rb +6 -6
  164. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/serializer.rb +13 -16
  165. data/lib/ledger_sync/ledgers/quickbooks_online/util/error_matcher.rb +23 -10
  166. data/lib/ledger_sync/ledgers/quickbooks_online/util/operation_error_parser.rb +1 -1
  167. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/deserializer.rb +12 -10
  168. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/create.rb +7 -7
  169. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/find.rb +7 -7
  170. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/update.rb +7 -7
  171. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/serializer.rb +12 -10
  172. data/lib/ledger_sync/ledgers/quickbooks_online/webhook.rb +1 -1
  173. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_event.rb +6 -6
  174. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_notification.rb +1 -1
  175. data/lib/ledger_sync/ledgers/response.rb +1 -1
  176. data/lib/ledger_sync/ledgers/stripe/client.rb +5 -1
  177. data/lib/ledger_sync/resource.rb +5 -3
  178. data/lib/ledger_sync/resource_adaptor.rb +2 -0
  179. data/lib/ledger_sync/resource_attribute/reference/one.rb +2 -2
  180. data/lib/ledger_sync/resource_attribute_set.rb +4 -3
  181. data/lib/ledger_sync/serialization/type/deserializer_type.rb +2 -0
  182. data/lib/ledger_sync/serialization/type/format_date_type.rb +2 -0
  183. data/lib/ledger_sync/serialization/type/mapping_type.rb +2 -0
  184. data/lib/ledger_sync/serialization/type/parse_date_type.rb +2 -0
  185. data/lib/ledger_sync/serialization/type/serializer_type.rb +2 -0
  186. data/lib/ledger_sync/serializer.rb +2 -2
  187. data/lib/ledger_sync/test/support.rb +71 -0
  188. data/lib/ledger_sync/test/support/factory_bot.rb +157 -0
  189. data/lib/ledger_sync/type/date.rb +10 -0
  190. data/lib/ledger_sync/type/value_mixin.rb +3 -1
  191. data/lib/ledger_sync/util/resource_converter/attribute.rb +1 -1
  192. data/lib/ledger_sync/util/resource_converter/type/resource_converter_type.rb +2 -0
  193. data/lib/ledger_sync/util/signer.rb +2 -2
  194. data/lib/ledger_sync/version.rb +9 -1
  195. metadata +89 -65
  196. data/lib/ledger_sync/ledgers/mixins/infer_client_mixin.rb +0 -28
  197. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line_item/deserializer.rb +0 -25
  198. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line_item/serializer.rb +0 -29
  199. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_item/deserializer.rb +0 -38
  200. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_item/serializer.rb +0 -41
  201. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line_item/deserializer.rb +0 -25
  202. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line_item/serializer.rb +0 -27
  203. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_sales_line_item/deserializer.rb +0 -25
  204. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_sales_line_item/serializer.rb +0 -29
  205. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_item/deserializer.rb +0 -32
  206. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_item/serializer.rb +0 -36
  207. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_line_item.rb +0 -21
  208. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment_line_item.rb +0 -19
  209. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line_item.rb +0 -25
  210. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense_line_item.rb +0 -21
  211. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice_sales_line_item.rb +0 -21
  212. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line_item.rb +0 -29
  213. data/lib/ledger_sync/ledgers/quickbooks_online/resources/subsidiary.rb +0 -12
  214. data/release.sh +0 -26
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fd6a2c51848e4e1e51a7c0870956a23b7e6d81c6eff754554340fd48d350a6a9
4
- data.tar.gz: d632009d62b0f7cfa59edceee5d9e2df57caa27a437197dc324e978dfc71d44c
3
+ metadata.gz: 19414532e2c552b3e17efa9e8dc0315740809c7bbe74124af62f55dbd4bad2d0
4
+ data.tar.gz: a8cf13be61f9ce6a738f4bf0d54774da3b676714a6e982394036fd924503a3e0
5
5
  SHA512:
6
- metadata.gz: 8b09d33912d3bd337a3d84cf05093193dc1a80b1bdc3137f903131d386bb5a38355da76856b72cb55cfa2cdd190ef98c88ba87aeb62b5851beae05bc7aeb1fb9
7
- data.tar.gz: bdc088c4b18661ee9ead64d5877c1e4104a1d9a6f1d39aec8e7d24cfd45f35ca00c3953783f2bfec22f62a7d56cc6cebf8a9e50f09596c272274b61e149cecf1
6
+ metadata.gz: 97a8377503769687b0f4b765ece61bb4fe9b4689adf493e8d41fe3d77fd58f90f53a0c51f6412d3f69221e697ae6c6633a4bb6edd54013cae86022a0c7b683b0
7
+ data.tar.gz: 7a6dfcde809c765cee2faad8f063c321f1baa064ff47cb98e5187042631fa13624b91e7954b729e4ded47ccaabef742b95579dcd5e66e9ef200df7a02fbc817e
@@ -1,7 +1,10 @@
1
1
  inherit_from: .rubocop_todo.yml
2
2
 
3
3
  AllCops:
4
- TargetRubyVersion: 2.6
4
+ Exclude:
5
+ - "documentation/site/_plugins/**/*"
6
+ TargetRubyVersion: 2.5.8
7
+ NewCops: enable
5
8
 
6
9
  Layout/LineLength:
7
10
  Enabled: True
@@ -15,3 +18,63 @@ Style/HashTransformKeys:
15
18
 
16
19
  Style/HashTransformValues:
17
20
  Enabled: True
21
+
22
+ Layout/EmptyLinesAroundAttributeAccessor:
23
+ Enabled: True
24
+
25
+ Layout/SpaceAroundMethodCallOperator:
26
+ Enabled: True
27
+
28
+ Lint/DeprecatedOpenSSLConstant:
29
+ Enabled: True
30
+
31
+ Lint/DuplicateElsifCondition:
32
+ Enabled: True
33
+
34
+ Lint/MixedRegexpCaptureTypes:
35
+ Enabled: True
36
+
37
+ Lint/RaiseException:
38
+ Enabled: True
39
+
40
+ Lint/StructNewOverride:
41
+ Enabled: True
42
+
43
+ Style/AccessorGrouping:
44
+ Enabled: True
45
+
46
+ Style/ArrayCoercion:
47
+ Enabled: True
48
+
49
+ Style/BisectedAttrAccessor:
50
+ Enabled: True
51
+
52
+ Style/CaseLikeIf:
53
+ Enabled: True
54
+
55
+ Style/ExponentialNotation:
56
+ Enabled: True
57
+
58
+ Style/HashAsLastArrayItem:
59
+ Enabled: True
60
+
61
+ Style/HashLikeCase:
62
+ Enabled: True
63
+
64
+ Style/RedundantAssignment:
65
+ Enabled: True
66
+
67
+ Style/RedundantFetchBlock:
68
+ Enabled: True
69
+
70
+ Style/RedundantFileExtensionInRequire:
71
+ Enabled: True
72
+
73
+ Style/RedundantRegexpCharacterClass:
74
+ Enabled: True
75
+
76
+ Style/RedundantRegexpEscape:
77
+ Enabled: True
78
+
79
+ Style/SlicingWithRange:
80
+ Enabled: False
@@ -1,4 +1,3 @@
1
- ---
2
1
  language: ruby
3
2
  cache: bundler
4
3
  rvm:
@@ -9,11 +8,19 @@ rvm:
9
8
  - ruby-head
10
9
  before_install:
11
10
  - gem update --system
12
- - gem install bundler:1.17.3
13
- - gem install overcommit
11
+ - gem install bundler
12
+ - rm Gemfile.lock
13
+ - bundle install
14
14
  script:
15
15
  - bundle exec rspec --order rand
16
- - overcommit --sign && overcommit --run
16
+ - bundle exec overcommit --sign && bundle exec overcommit --run
17
17
  jobs:
18
18
  allow_failures:
19
- - rvm: ruby-head
19
+ - rvm: ruby-head
20
+ deploy:
21
+ - api_key:
22
+ secure: b7Ubc7/+EX4zHJ5zz15xiHntizhuZCU8SKR/jcbrR86wZx1DW8kIABBoVIHMh5CaMvrjF63B1qEoG4HcuovKZWezFLPgj4IQqlwlUle0/Vm0smO1kPMEOuMIv5P3TTgXZ99h1OdnfRQtDgbjxgKGszawMxNcw9Q8mqvVCc8Pmr+Uiw9DOOkHNMfLH+xOl00Ir9ST+K4/GKq19h8Z3glZE0oQAPajt5kgDZdDGD3en+t2g3kafJ9Hv6twKSb5rd5I9BN+VJ0m66OofGxnZFUxM/cb8T+s+6DdPXGWJq4IZ/q9SO108qfl1aTd7EiFa+hVtlLii7QaSMHARrbWT3wMYH3QhgTBPly8Dky92c74ziLkqaDdaxmGfYnzLDVCRVlGmGzUkOLx1ey9XK2kwSods+ud8rJ2pHWaT7NQROzTD4O0YhLHvEAoN6PwtIWm1v78OViBng36PKW0WtAE1rG9CEK1FjhA7ZZoctAsKqSaXWZR39+0xgSv+1axLXru/TG8QLqKNEOgNbE5lqR7sF2cVQgmmUstlMqiEgKMF0cFWWVi1wqR6VNxrgwgWeWtwzHLkchY6T3vhK9sl+cUM6SebfCOCAJHPBxSvHRHtJcrDY8qMqjlfFBSagjaClFt1Uzy//ab4XRzEs8VQcVkz9Yw7S51iOYBdj6135lfE0ZxE1c=
23
+ edge: true
24
+ on:
25
+ all_branches: true
26
+ provider: rubygems
@@ -1,31 +1,31 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ledger_sync (1.4.4)
4
+ ledger_sync (1.5.0)
5
5
  activemodel
6
6
  colorize
7
- coveralls
8
- dotenv
9
- dry-schema
10
- dry-validation
7
+ coveralls (~> 0.8.23)
8
+ dotenv (~> 2.7.6)
9
+ dry-schema (~> 1.5.4)
10
+ dry-validation (~> 1.5.6)
11
11
  faraday
12
12
  faraday-detailed_logger
13
13
  faraday_middleware
14
14
  fingerprintable (>= 1.2.1)
15
- netsuite
15
+ netsuite (~> 0.8.6)
16
16
  nokogiri
17
17
  oauth2
18
18
  pd_ruby
19
19
  resonad
20
20
  simply_serializable (>= 1.5.1)
21
- stripe
21
+ stripe (~> 5.26.0)
22
22
 
23
23
  GEM
24
24
  remote: https://rubygems.org/
25
25
  specs:
26
- activemodel (6.0.3.1)
27
- activesupport (= 6.0.3.1)
28
- activesupport (6.0.3.1)
26
+ activemodel (6.0.3.4)
27
+ activesupport (= 6.0.3.4)
28
+ activesupport (6.0.3.4)
29
29
  concurrent-ruby (~> 1.0, >= 1.0.2)
30
30
  i18n (>= 0.7, < 2)
31
31
  minitest (~> 5.1)
@@ -36,27 +36,26 @@ GEM
36
36
  akami (1.3.1)
37
37
  gyoku (>= 0.4.0)
38
38
  nokogiri
39
- ast (2.4.0)
39
+ ast (2.4.1)
40
40
  awesome_print (1.8.0)
41
41
  builder (3.2.4)
42
42
  bump (0.9.0)
43
43
  byebug (11.1.3)
44
- childprocess (3.0.0)
44
+ childprocess (4.0.0)
45
45
  colorator (1.1.0)
46
46
  colorize (0.8.1)
47
- concurrent-ruby (1.1.6)
47
+ concurrent-ruby (1.1.7)
48
48
  coveralls (0.8.23)
49
49
  json (>= 1.8, < 3)
50
50
  simplecov (~> 0.16.1)
51
51
  term-ansicolor (~> 1.3)
52
52
  thor (>= 0.19.4, < 2.0)
53
53
  tins (~> 1.6)
54
- crack (0.4.3)
55
- safe_yaml (~> 1.0.0)
56
- diff-lcs (1.3)
54
+ crack (0.4.4)
55
+ diff-lcs (1.4.4)
57
56
  docile (1.3.2)
58
- dotenv (2.7.5)
59
- dry-configurable (0.11.5)
57
+ dotenv (2.7.6)
58
+ dry-configurable (0.11.6)
60
59
  concurrent-ruby (~> 1.0)
61
60
  dry-core (~> 0.4, >= 0.4.7)
62
61
  dry-equalizer (~> 0.2)
@@ -67,12 +66,12 @@ GEM
67
66
  concurrent-ruby (~> 1.0)
68
67
  dry-equalizer (0.3.0)
69
68
  dry-inflector (0.2.0)
70
- dry-initializer (3.0.3)
71
- dry-logic (1.0.6)
69
+ dry-initializer (3.0.4)
70
+ dry-logic (1.0.8)
72
71
  concurrent-ruby (~> 1.0)
73
72
  dry-core (~> 0.2)
74
73
  dry-equalizer (~> 0.2)
75
- dry-schema (1.5.1)
74
+ dry-schema (1.5.6)
76
75
  concurrent-ruby (~> 1.0)
77
76
  dry-configurable (~> 0.8, >= 0.8.3)
78
77
  dry-core (~> 0.4)
@@ -87,26 +86,27 @@ GEM
87
86
  dry-equalizer (~> 0.3)
88
87
  dry-inflector (~> 0.1, >= 0.1.2)
89
88
  dry-logic (~> 1.0, >= 1.0.2)
90
- dry-validation (1.5.1)
89
+ dry-validation (1.5.6)
91
90
  concurrent-ruby (~> 1.0)
92
91
  dry-container (~> 0.7, >= 0.7.1)
93
92
  dry-core (~> 0.4)
94
93
  dry-equalizer (~> 0.2)
95
94
  dry-initializer (~> 3.0)
96
- dry-schema (~> 1.5)
97
- em-websocket (0.5.1)
95
+ dry-schema (~> 1.5, >= 1.5.2)
96
+ em-websocket (0.5.2)
98
97
  eventmachine (>= 0.12.9)
99
98
  http_parser.rb (~> 0.6.0)
100
99
  eventmachine (1.2.7)
101
- factory_bot (6.0.1)
100
+ factory_bot (6.1.0)
102
101
  activesupport (>= 5.0.0)
103
- faraday (1.0.1)
102
+ faraday (1.1.0)
104
103
  multipart-post (>= 1.2, < 3)
104
+ ruby2_keywords
105
105
  faraday-detailed_logger (2.3.0)
106
106
  faraday (>= 0.8, < 2)
107
107
  faraday_middleware (1.0.0)
108
108
  faraday (~> 1.0)
109
- ffi (1.13.0)
109
+ ffi (1.13.1)
110
110
  fingerprintable (1.2.1)
111
111
  colorize
112
112
  forwardable-extended (2.6.0)
@@ -114,7 +114,7 @@ GEM
114
114
  builder (>= 2.1.2)
115
115
  hashdiff (1.0.1)
116
116
  http_parser.rb (0.6.0)
117
- httpi (2.4.4)
117
+ httpi (2.4.5)
118
118
  rack
119
119
  socksify
120
120
  i18n (0.9.5)
@@ -142,8 +142,8 @@ GEM
142
142
  sass (~> 3.4)
143
143
  jekyll-watch (2.2.1)
144
144
  listen (~> 3.0)
145
- json (2.3.0)
146
- jwt (2.2.1)
145
+ json (2.3.1)
146
+ jwt (2.2.2)
147
147
  kramdown (1.17.0)
148
148
  liquid (4.0.3)
149
149
  listen (3.2.1)
@@ -151,13 +151,13 @@ GEM
151
151
  rb-inotify (~> 0.9, >= 0.9.10)
152
152
  mercenary (0.3.6)
153
153
  mini_portile2 (2.4.0)
154
- minitest (5.14.1)
155
- multi_json (1.14.1)
154
+ minitest (5.14.2)
155
+ multi_json (1.15.0)
156
156
  multi_xml (0.6.0)
157
157
  multipart-post (2.1.1)
158
- netsuite (0.8.5)
159
- savon (>= 2.3.0)
160
- nokogiri (1.10.9)
158
+ netsuite (0.8.6)
159
+ savon (>= 2.3.0, <= 2.11.1)
160
+ nokogiri (1.10.10)
161
161
  mini_portile2 (~> 2.4.0)
162
162
  nori (2.6.0)
163
163
  oauth2 (1.4.4)
@@ -166,64 +166,65 @@ GEM
166
166
  multi_json (~> 1.3)
167
167
  multi_xml (~> 0.5)
168
168
  rack (>= 1.2, < 3)
169
- overcommit (0.53.0)
170
- childprocess (>= 0.6.3, < 4)
169
+ overcommit (0.57.0)
170
+ childprocess (>= 0.6.3, < 5)
171
171
  iniparse (~> 1.4)
172
- parallel (1.19.1)
173
- parser (2.7.1.3)
174
- ast (~> 2.4.0)
172
+ parallel (1.19.2)
173
+ parser (2.7.2.0)
174
+ ast (~> 2.4.1)
175
175
  pathutil (0.16.2)
176
176
  forwardable-extended (~> 2.6)
177
177
  pd_ruby (0.2.3)
178
178
  colorize
179
- public_suffix (4.0.5)
179
+ public_suffix (4.0.6)
180
180
  rack (2.2.3)
181
181
  rainbow (3.0.0)
182
182
  rake (13.0.1)
183
183
  rb-fsevent (0.10.4)
184
184
  rb-inotify (0.10.1)
185
185
  ffi (~> 1.0)
186
- regexp_parser (1.7.1)
187
- resonad (1.2.0)
186
+ regexp_parser (1.8.2)
187
+ resonad (1.3.0)
188
188
  rexml (3.2.4)
189
- rouge (3.19.0)
189
+ rouge (3.24.0)
190
190
  rspec (3.9.0)
191
191
  rspec-core (~> 3.9.0)
192
192
  rspec-expectations (~> 3.9.0)
193
193
  rspec-mocks (~> 3.9.0)
194
- rspec-core (3.9.2)
194
+ rspec-core (3.9.3)
195
195
  rspec-support (~> 3.9.3)
196
- rspec-expectations (3.9.2)
196
+ rspec-expectations (3.9.3)
197
197
  diff-lcs (>= 1.2.0, < 2.0)
198
198
  rspec-support (~> 3.9.0)
199
199
  rspec-mocks (3.9.1)
200
200
  diff-lcs (>= 1.2.0, < 2.0)
201
201
  rspec-support (~> 3.9.0)
202
- rspec-support (3.9.3)
203
- rubocop (0.85.1)
202
+ rspec-support (3.9.4)
203
+ rubocop (1.0.0)
204
204
  parallel (~> 1.10)
205
- parser (>= 2.7.0.1)
205
+ parser (>= 2.7.1.5)
206
206
  rainbow (>= 2.2.2, < 4.0)
207
- regexp_parser (>= 1.7)
207
+ regexp_parser (>= 1.8)
208
208
  rexml
209
- rubocop-ast (>= 0.0.3)
209
+ rubocop-ast (>= 0.6.0)
210
210
  ruby-progressbar (~> 1.7)
211
211
  unicode-display_width (>= 1.4.0, < 2.0)
212
- rubocop-ast (0.0.3)
213
- parser (>= 2.7.0.1)
212
+ rubocop-ast (1.1.0)
213
+ parser (>= 2.7.1.5)
214
214
  ruby-progressbar (1.10.1)
215
+ ruby2_keywords (0.0.2)
215
216
  safe_yaml (1.0.5)
216
217
  sass (3.7.4)
217
218
  sass-listen (~> 4.0.0)
218
219
  sass-listen (4.0.0)
219
220
  rb-fsevent (~> 0.9, >= 0.9.4)
220
221
  rb-inotify (~> 0.9, >= 0.9.7)
221
- savon (2.12.0)
222
+ savon (2.11.1)
222
223
  akami (~> 1.2)
223
224
  builder (>= 2.1.2)
224
225
  gyoku (~> 1.2)
225
226
  httpi (~> 2.3)
226
- nokogiri (>= 1.8.1)
227
+ nokogiri (>= 1.4.0)
227
228
  nori (~> 2.4)
228
229
  wasabi (~> 3.4)
229
230
  simplecov (0.16.1)
@@ -234,42 +235,43 @@ GEM
234
235
  simply_serializable (1.5.1)
235
236
  fingerprintable (>= 1.2.1)
236
237
  socksify (1.7.1)
237
- stripe (5.22.0)
238
+ stripe (5.26.0)
238
239
  sync (0.5.0)
239
240
  term-ansicolor (1.7.1)
240
241
  tins (~> 1.0)
241
242
  thor (1.0.1)
242
243
  thread_safe (0.3.6)
243
- tins (1.25.0)
244
+ tins (1.26.0)
244
245
  sync
245
246
  tzinfo (1.2.7)
246
247
  thread_safe (~> 0.1)
247
248
  unicode-display_width (1.7.0)
248
249
  vcr (6.0.0)
249
- wasabi (3.5.0)
250
+ wasabi (3.6.1)
251
+ addressable
250
252
  httpi (~> 2.0)
251
253
  nokogiri (>= 1.4.2)
252
- webmock (3.8.3)
254
+ webmock (3.9.3)
253
255
  addressable (>= 2.3.6)
254
256
  crack (>= 0.3.2)
255
257
  hashdiff (>= 0.4.0, < 2.0.0)
256
- zeitwerk (2.3.0)
258
+ zeitwerk (2.4.0)
257
259
 
258
260
  PLATFORMS
259
261
  ruby
260
262
 
261
263
  DEPENDENCIES
262
264
  awesome_print
263
- bump
264
- bundler (~> 1.16)
265
+ bump (~> 0.9.0)
266
+ bundler (~> 2.1)
265
267
  byebug
266
- factory_bot
268
+ factory_bot (~> 6.1.0)
267
269
  jekyll (~> 3.8.4)
268
270
  jekyll-menus (~> 0.6.0)
269
271
  jekyll-paginate (~> 1.1)
270
272
  jekyll-paginate-v2 (~> 1.9)
271
273
  ledger_sync!
272
- overcommit
274
+ overcommit (~> 0.57.0)
273
275
  rake (~> 13.0)
274
276
  rspec (~> 3.2)
275
277
  rubocop
@@ -277,4 +279,4 @@ DEPENDENCIES
277
279
  webmock
278
280
 
279
281
  BUNDLED WITH
280
- 1.17.3
282
+ 2.1.4
@@ -42,7 +42,7 @@ client = LedgerSync::Ledgers::QuickBooksOnline::Client.new_from_env(test: true)
42
42
  puts 'Go to the following URL:'
43
43
  puts client.authorization_url(redirect_uri: base_url)
44
44
 
45
- while (session = server.accept)
45
+ while (session = server.accept) # rubocop:disable Lint/UnreachableLoop
46
46
  request = session.gets
47
47
 
48
48
  puts request
@@ -10,6 +10,8 @@ module Docs
10
10
 
11
11
  def initialize(args = {})
12
12
  @ledger = args.fetch(:ledger)
13
+
14
+ super
13
15
  end
14
16
 
15
17
  def client_class
@@ -1,17 +1,72 @@
1
1
  ---
2
- title: Deployment
2
+ title: New Release
3
3
  layout: guides
4
4
  ---
5
5
 
6
6
  <div class="note"><strong>Note:</strong>
7
- Only contributors can deploy new versions of the gem to RubyGems.org.
7
+ Only owners can release new versions of the gem to RubyGems.org.
8
8
  </div>
9
9
 
10
- To deploy a new version of the gem to RubyGems, you can use the `release.sh` script in the root. The script takes advantage of [the bump gem](https://github.com/gregorym/bump). So you may call the script using any of the following:
10
+ ## 1. Pull latest development
11
+
12
+ ```bash
13
+ git checkout development
14
+ git pull origin development
15
+ ```
16
+
17
+ ## 3. Start release
18
+
19
+ This assumes you are using [the git-flow gem](https://github.com/nvie/gitflow):
20
+
21
+ ```bash
22
+ git flow release start vX.X.X # Replace X.X.X. with new version
23
+ ```
24
+
25
+ ## 2. Update version
26
+
27
+ You can use [the bump gem](https://github.com/gregorym/bump) to easily update the gem version:
11
28
 
12
29
  ```bash
13
30
  # Version Format: MAJOR.MINOR.PATCH
14
- ./release.sh patch # to bump X in 1.1.X
15
- ./release.sh minor # to bump X in 1.X.1
16
- ./release.sh major # to bump X in X.1.1
17
- ```
31
+ # Choose one of the following
32
+ bundle exec bump patch # to bump X in 1.1.X
33
+ bundle exec bump minor # to bump X in 1.X.1
34
+ bundle exec bump major # to bump X in X.1.1
35
+
36
+ git commit -am "Publish version X.X.X"
37
+ ```
38
+
39
+ ## 3. Publish version
40
+
41
+ ```bash
42
+ git flow release publish vX.X.X # Replace X.X.X. with new version
43
+ ```
44
+
45
+ ## 4. Create PR
46
+
47
+ Create a PR in the github repo with `master` as the base.
48
+
49
+ ## 5. Wait for review and tests to pass.
50
+
51
+ All releases should be approved and NOT merged using github.
52
+
53
+ ## 6. Merge release
54
+
55
+ Merge the release using git-flow:
56
+
57
+ ```bash
58
+ git flow release finish vX.X.X # Replace X.X.X. with new version
59
+ git push origin --tags
60
+ ```
61
+
62
+ ## 7. Deploy new version to rubygems
63
+
64
+ ```bash
65
+ git checkout master
66
+ bundle exec build
67
+ bundle exec release
68
+ ```
69
+
70
+ ## That's it!
71
+
72
+ The version will now be available [on rubygems](https://rubygems.org/gems/ledger_sync).