solidus_subscriptions 1.0.0 → 1.0.1
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 +4 -4
- data/.circleci/config.yml +57 -9
- data/.github/dependabot.yml +7 -0
- data/.rubocop.yml +3 -0
- data/CHANGELOG.md +201 -169
- data/Gemfile +14 -1
- data/README.md +17 -7
- data/app/controllers/solidus_subscriptions/api/v1/subscriptions_controller.rb +24 -0
- data/app/controllers/spree/admin/subscriptions_controller.rb +32 -4
- data/app/decorators/models/solidus_subscriptions/spree/wallet_payment_source/report_default_change_to_subscriptions.rb +2 -2
- data/app/jobs/solidus_subscriptions/create_subscription_job.rb +11 -0
- data/app/jobs/solidus_subscriptions/process_installment_job.rb +1 -1
- data/app/models/solidus_subscriptions/subscription.rb +75 -31
- data/app/subscribers/solidus_subscriptions/churn_buster_subscriber.rb +1 -0
- data/app/subscribers/solidus_subscriptions/event_storage_subscriber.rb +1 -0
- data/app/subscribers/solidus_subscriptions/order_subscriber.rb +16 -0
- data/app/views/spree/admin/shared/_subscription_actions.html.erb +27 -8
- data/app/views/spree/admin/shared/_subscription_sidebar.html.erb +2 -0
- data/app/views/spree/admin/subscriptions/_state_pill.html.erb +3 -2
- data/app/views/spree/admin/subscriptions/index.html.erb +50 -13
- data/bin/sandbox +1 -6
- data/config/locales/en.yml +16 -0
- data/config/routes.rb +9 -3
- data/db/migrate/20210905145955_add_paused_to_subscriptions.rb +5 -0
- data/lib/decorators/api/controllers/solidus_subscriptions/spree/api/line_items_controller/create_subscription_line_items.rb +14 -0
- data/lib/generators/solidus_subscriptions/install/install_generator.rb +16 -0
- data/lib/generators/solidus_subscriptions/install/templates/app/controllers/concerns/create_subscription.rb +17 -0
- data/lib/generators/solidus_subscriptions/install/templates/app/views/cart_line_items/_subscription_fields.html.erb +30 -0
- data/lib/generators/solidus_subscriptions/install/templates/initializer.rb +3 -1
- data/lib/solidus_subscriptions/configuration.rb +29 -6
- data/lib/solidus_subscriptions/dispatcher/payment_failed_dispatcher.rb +2 -2
- data/lib/solidus_subscriptions/dispatcher/success_dispatcher.rb +2 -2
- data/lib/solidus_subscriptions/engine.rb +28 -0
- data/lib/solidus_subscriptions/permission_sets/default_customer.rb +1 -1
- data/lib/solidus_subscriptions/processing_error_handlers/rails_logger.rb +25 -0
- data/lib/solidus_subscriptions/subscription_generator.rb +6 -0
- data/lib/solidus_subscriptions/version.rb +1 -1
- data/solidus_subscriptions.gemspec +6 -6
- data/spec/controllers/spree/api/line_items_controller_spec.rb +63 -28
- data/spec/controllers/spree/api/users_controller_spec.rb +3 -0
- data/spec/decorators/controllers/solidus_subscriptions/spree/orders_controller/create_subscription_line_items_spec.rb +4 -4
- data/spec/decorators/models/solidus_subscriptions/spree/variant/auto_delete_from_subscriptions_spec.rb +2 -2
- data/spec/features/admin/subscriptions_spec.rb +13 -3
- data/spec/jobs/solidus_subscriptions/create_subscription_job_spec.rb +20 -0
- data/spec/jobs/solidus_subscriptions/process_installment_job_spec.rb +17 -0
- data/spec/lib/solidus_subscriptions/dispatcher/payment_failed_dispatcher_spec.rb +3 -3
- data/spec/lib/solidus_subscriptions/dispatcher/success_dispatcher_spec.rb +3 -3
- data/spec/lib/solidus_subscriptions/subscription_generator_spec.rb +1 -1
- data/spec/models/solidus_subscriptions/installment_spec.rb +1 -1
- data/spec/models/solidus_subscriptions/subscription_spec.rb +893 -16
- data/spec/models/spree/wallet_payment_source_spec.rb +3 -3
- data/spec/requests/api/v1/subscriptions_spec.rb +229 -0
- data/spec/subscribers/solidus_subscriptions/churn_buster_subscriber_spec.rb +8 -8
- data/spec/subscribers/solidus_subscriptions/order_subscriber_spec.rb +13 -0
- metadata +24 -17
- data/app/decorators/models/solidus_subscriptions/spree/order/finalize_creates_subscriptions.rb +0 -25
- data/config/initializers/subscribers.rb +0 -9
- data/spec/decorators/models/solidus_subscriptions/spree/order/finalize_creates_subscriptions_spec.rb +0 -32
- /data/{app → lib}/views/spree/frontend/products/_subscription_line_item_fields.html.erb +0 -0
data/CHANGELOG.md
CHANGED
@@ -1,196 +1,228 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
## [v1.0.
|
3
|
+
## [v1.0.1](https://github.com/solidusio/solidus_subscriptions/tree/v1.0.1) (2023-03-01)
|
4
4
|
|
5
|
-
[Full Changelog](https://github.com/solidusio
|
5
|
+
[Full Changelog](https://github.com/solidusio/solidus_subscriptions/compare/a8a92654ba21b22bd3f8d07c3ae25e3604e7942a...v1.0.1)
|
6
6
|
|
7
7
|
**Breaking changes:**
|
8
8
|
|
9
|
-
- Improve description for promotion rules [\#205](https://github.com/solidusio
|
10
|
-
- Improve dispatchers API [\#155](https://github.com/solidusio
|
11
|
-
- Streamline event emission and tracking [\#154](https://github.com/solidusio
|
12
|
-
- Remove references to subscriptions only having one line item [\#123](https://github.com/solidusio
|
13
|
-
- Retrieve payment method from payment source [\#121](https://github.com/solidusio
|
14
|
-
- Use subscription's `end_date` in `Subscription#can_be_deactivated?` [\#112](https://github.com/solidusio
|
9
|
+
- Improve description for promotion rules [\#205](https://github.com/solidusio/solidus_subscriptions/issues/205)
|
10
|
+
- Improve dispatchers API [\#155](https://github.com/solidusio/solidus_subscriptions/pull/155) ([aldesantis](https://github.com/aldesantis))
|
11
|
+
- Streamline event emission and tracking [\#154](https://github.com/solidusio/solidus_subscriptions/pull/154) ([aldesantis](https://github.com/aldesantis))
|
12
|
+
- Remove references to subscriptions only having one line item [\#123](https://github.com/solidusio/solidus_subscriptions/pull/123) ([aldesantis](https://github.com/aldesantis))
|
13
|
+
- Retrieve payment method from payment source [\#121](https://github.com/solidusio/solidus_subscriptions/pull/121) ([aldesantis](https://github.com/aldesantis))
|
14
|
+
- Use subscription's `end_date` in `Subscription#can_be_deactivated?` [\#112](https://github.com/solidusio/solidus_subscriptions/pull/112) ([aldesantis](https://github.com/aldesantis))
|
15
15
|
|
16
16
|
**Implemented enhancements:**
|
17
17
|
|
18
|
-
-
|
19
|
-
-
|
20
|
-
-
|
21
|
-
-
|
22
|
-
-
|
23
|
-
-
|
24
|
-
-
|
25
|
-
-
|
26
|
-
-
|
27
|
-
- Allow
|
28
|
-
-
|
29
|
-
-
|
30
|
-
-
|
31
|
-
-
|
32
|
-
-
|
33
|
-
-
|
34
|
-
-
|
35
|
-
-
|
36
|
-
-
|
37
|
-
-
|
38
|
-
-
|
39
|
-
-
|
40
|
-
-
|
41
|
-
-
|
42
|
-
- Allow
|
43
|
-
-
|
44
|
-
-
|
45
|
-
-
|
46
|
-
-
|
47
|
-
-
|
48
|
-
-
|
18
|
+
- Free trials [\#231](https://github.com/solidusio/solidus_subscriptions/issues/231)
|
19
|
+
- Allow managing individual orders [\#219](https://github.com/solidusio/solidus_subscriptions/issues/219)
|
20
|
+
- Validate payment source ownership [\#208](https://github.com/solidusio/solidus_subscriptions/issues/208)
|
21
|
+
- Prepare Solidus Subscriptions for Solidus 3.0 [\#194](https://github.com/solidusio/solidus_subscriptions/issues/194)
|
22
|
+
- Process each subscription in a separate background job [\#190](https://github.com/solidusio/solidus_subscriptions/issues/190)
|
23
|
+
- Skip ActiveJob retrying for ProcessInstallmentsJob [\#175](https://github.com/solidusio/solidus_subscriptions/issues/175)
|
24
|
+
- Installment.unfulfilled is a drag on performance [\#171](https://github.com/solidusio/solidus_subscriptions/issues/171)
|
25
|
+
- Simplify subscription processing logic [\#170](https://github.com/solidusio/solidus_subscriptions/issues/170)
|
26
|
+
- Add currency to subscriptions [\#138](https://github.com/solidusio/solidus_subscriptions/issues/138)
|
27
|
+
- Allow marking the master variant as subscribable [\#130](https://github.com/solidusio/solidus_subscriptions/issues/130)
|
28
|
+
- Show orders generated by a subscription [\#129](https://github.com/solidusio/solidus_subscriptions/issues/129)
|
29
|
+
- Allow creating a subscription via the API [\#122](https://github.com/solidusio/solidus_subscriptions/issues/122)
|
30
|
+
- Load factories using the new standard [\#203](https://github.com/solidusio/solidus_subscriptions/pull/203) ([kennyadsl](https://github.com/kennyadsl))
|
31
|
+
- Add maximum\_reprocessing\_attempts preference [\#160](https://github.com/solidusio/solidus_subscriptions/pull/160) ([aldesantis](https://github.com/aldesantis))
|
32
|
+
- Enable authorization via guest tokens [\#158](https://github.com/solidusio/solidus_subscriptions/pull/158) ([aldesantis](https://github.com/aldesantis))
|
33
|
+
- Reformat sample configuration file [\#153](https://github.com/solidusio/solidus_subscriptions/pull/153) ([aldesantis](https://github.com/aldesantis))
|
34
|
+
- Integrate Churn Buster [\#152](https://github.com/solidusio/solidus_subscriptions/pull/152) ([aldesantis](https://github.com/aldesantis))
|
35
|
+
- Implement a `LineItem#subscribable` association [\#149](https://github.com/solidusio/solidus_subscriptions/pull/149) ([aldesantis](https://github.com/aldesantis))
|
36
|
+
- Installation and configuration updates [\#148](https://github.com/solidusio/solidus_subscriptions/pull/148) ([aldesantis](https://github.com/aldesantis))
|
37
|
+
- Add order association to subscriptions [\#147](https://github.com/solidusio/solidus_subscriptions/pull/147) ([nirebu](https://github.com/nirebu))
|
38
|
+
- Improve event tracking [\#142](https://github.com/solidusio/solidus_subscriptions/pull/142) ([aldesantis](https://github.com/aldesantis))
|
39
|
+
- Subscription events [\#141](https://github.com/solidusio/solidus_subscriptions/pull/141) ([aldesantis](https://github.com/aldesantis))
|
40
|
+
- Use Spree.user\_class instead of Spree::User to allow for custom user classes [\#140](https://github.com/solidusio/solidus_subscriptions/pull/140) ([marcrohloff](https://github.com/marcrohloff))
|
41
|
+
- Update default permitted attributes [\#136](https://github.com/solidusio/solidus_subscriptions/pull/136) ([aldesantis](https://github.com/aldesantis))
|
42
|
+
- Allow admins to make master variants subcribable [\#131](https://github.com/solidusio/solidus_subscriptions/pull/131) ([aldesantis](https://github.com/aldesantis))
|
43
|
+
- Store payment method and source on subscriptions [\#127](https://github.com/solidusio/solidus_subscriptions/pull/127) ([aldesantis](https://github.com/aldesantis))
|
44
|
+
- Allow setting subscription interval and end date via the API [\#125](https://github.com/solidusio/solidus_subscriptions/pull/125) ([aldesantis](https://github.com/aldesantis))
|
45
|
+
- Allow setting a billing address on the subscription [\#119](https://github.com/solidusio/solidus_subscriptions/pull/119) ([aldesantis](https://github.com/aldesantis))
|
46
|
+
- Improve installment visualization and sorting [\#111](https://github.com/solidusio/solidus_subscriptions/pull/111) ([aldesantis](https://github.com/aldesantis))
|
47
|
+
- Add subscription details to backend [\#109](https://github.com/solidusio/solidus_subscriptions/pull/109) ([aldesantis](https://github.com/aldesantis))
|
48
|
+
- Add shipping address to backend subscription form [\#108](https://github.com/solidusio/solidus_subscriptions/pull/108) ([aldesantis](https://github.com/aldesantis))
|
49
|
+
- Allow admins to remove subscription line items [\#107](https://github.com/solidusio/solidus_subscriptions/pull/107) ([aldesantis](https://github.com/aldesantis))
|
50
|
+
- Allow admins to add subscription items when editing subscription [\#103](https://github.com/solidusio/solidus_subscriptions/pull/103) ([aldesantis](https://github.com/aldesantis))
|
49
51
|
|
50
52
|
**Fixed bugs:**
|
51
53
|
|
52
|
-
-
|
53
|
-
-
|
54
|
-
-
|
55
|
-
-
|
56
|
-
-
|
57
|
-
-
|
58
|
-
-
|
59
|
-
-
|
60
|
-
- Fix
|
61
|
-
- Fix
|
62
|
-
- Fix
|
63
|
-
- Fix
|
64
|
-
- Fix
|
65
|
-
- Fix
|
54
|
+
- N+1 in admin when loading subscription line items [\#274](https://github.com/solidusio/solidus_subscriptions/issues/274)
|
55
|
+
- Set default currency when creating subscription from admin panel [\#207](https://github.com/solidusio/solidus_subscriptions/issues/207)
|
56
|
+
- skip\_count is never incremented [\#146](https://github.com/solidusio/solidus_subscriptions/issues/146)
|
57
|
+
- FailureDispatcher is not compatible with Solidus v2.11 [\#135](https://github.com/solidusio/solidus_subscriptions/issues/135)
|
58
|
+
- Handle subscriptions with deleted products [\#133](https://github.com/solidusio/solidus_subscriptions/issues/133)
|
59
|
+
- Fix double creation of subscription line items [\#132](https://github.com/solidusio/solidus_subscriptions/issues/132)
|
60
|
+
- \#Interval incorrectly builds interval [\#44](https://github.com/solidusio/solidus_subscriptions/issues/44)
|
61
|
+
- Bugfix update column when pausing [\#245](https://github.com/solidusio/solidus_subscriptions/pull/245) ([FrancescoAiello01](https://github.com/FrancescoAiello01))
|
62
|
+
- Fix skip counters to handle skip limits [\#188](https://github.com/solidusio/solidus_subscriptions/pull/188) ([AlessioRocco](https://github.com/AlessioRocco))
|
63
|
+
- Fix legacy unsubscribable subscriptions not being processed [\#173](https://github.com/solidusio/solidus_subscriptions/pull/173) ([aldesantis](https://github.com/aldesantis))
|
64
|
+
- Fix automatic cancellation in case of subscription failure [\#168](https://github.com/solidusio/solidus_subscriptions/pull/168) ([aldesantis](https://github.com/aldesantis))
|
65
|
+
- Fix `ActiveRecord::ReadOnlyRecord` when updating subscriptions [\#166](https://github.com/solidusio/solidus_subscriptions/pull/166) ([aldesantis](https://github.com/aldesantis))
|
66
|
+
- Fix DefaultCustomer permission set giving guests access to admin [\#161](https://github.com/solidusio/solidus_subscriptions/pull/161) ([aldesantis](https://github.com/aldesantis))
|
67
|
+
- Fix default permission set breaking accessible\_by [\#159](https://github.com/solidusio/solidus_subscriptions/pull/159) ([aldesantis](https://github.com/aldesantis))
|
68
|
+
- Fix foreign key type for MySQL [\#151](https://github.com/solidusio/solidus_subscriptions/pull/151) ([aldesantis](https://github.com/aldesantis))
|
69
|
+
- Fix "Store must exist" when creating a subscription via the backend [\#102](https://github.com/solidusio/solidus_subscriptions/pull/102) ([aldesantis](https://github.com/aldesantis))
|
66
70
|
|
67
71
|
**Deprecated:**
|
68
72
|
|
69
|
-
- Deprecate nested subscription attributes from user [\#193](https://github.com/solidusio
|
70
|
-
- Update admin UI to match new backend guidelines [\#99](https://github.com/solidusio
|
71
|
-
- Fix deprecated call to `SolidusSupport.solidus_gem_version` [\#97](https://github.com/solidusio
|
73
|
+
- Deprecate nested subscription attributes from user [\#193](https://github.com/solidusio/solidus_subscriptions/pull/193) ([luca-landa](https://github.com/luca-landa))
|
74
|
+
- Update admin UI to match new backend guidelines [\#99](https://github.com/solidusio/solidus_subscriptions/pull/99) ([aldesantis](https://github.com/aldesantis))
|
75
|
+
- Fix deprecated call to `SolidusSupport.solidus_gem_version` [\#97](https://github.com/solidusio/solidus_subscriptions/pull/97) ([aldesantis](https://github.com/aldesantis))
|
72
76
|
|
73
77
|
**Removed:**
|
74
78
|
|
75
|
-
- Remove nested subscription attributes from User [\#124](https://github.com/solidusio
|
76
|
-
- Remove time component from actionable\_date columns [\#174](https://github.com/solidusio
|
77
|
-
- Remove subscription\_repopulated event [\#157](https://github.com/solidusio
|
78
|
-
- Remove checks on unsupported Solidus versions [\#101](https://github.com/solidusio
|
79
|
-
- Remove legacy sidebar and form [\#100](https://github.com/solidusio
|
79
|
+
- Remove nested subscription attributes from User [\#124](https://github.com/solidusio/solidus_subscriptions/issues/124)
|
80
|
+
- Remove time component from actionable\_date columns [\#174](https://github.com/solidusio/solidus_subscriptions/pull/174) ([aldesantis](https://github.com/aldesantis))
|
81
|
+
- Remove subscription\_repopulated event [\#157](https://github.com/solidusio/solidus_subscriptions/pull/157) ([aldesantis](https://github.com/aldesantis))
|
82
|
+
- Remove checks on unsupported Solidus versions [\#101](https://github.com/solidusio/solidus_subscriptions/pull/101) ([aldesantis](https://github.com/aldesantis))
|
83
|
+
- Remove legacy sidebar and form [\#100](https://github.com/solidusio/solidus_subscriptions/pull/100) ([aldesantis](https://github.com/aldesantis))
|
80
84
|
|
81
85
|
**Closed issues:**
|
82
86
|
|
83
|
-
-
|
84
|
-
-
|
85
|
-
-
|
86
|
-
-
|
87
|
-
-
|
88
|
-
-
|
89
|
-
-
|
90
|
-
-
|
91
|
-
-
|
92
|
-
-
|
93
|
-
- Dependabot can't resolve your Ruby dependency files [\#
|
94
|
-
-
|
95
|
-
-
|
96
|
-
-
|
97
|
-
-
|
98
|
-
- Dependabot
|
99
|
-
-
|
100
|
-
-
|
101
|
-
-
|
102
|
-
- Dependabot can't resolve your Ruby dependency files [\#
|
103
|
-
- Dependabot can't resolve your Ruby dependency files [\#
|
104
|
-
-
|
105
|
-
-
|
106
|
-
-
|
107
|
-
-
|
108
|
-
-
|
109
|
-
-
|
110
|
-
-
|
111
|
-
-
|
87
|
+
- The extension should be tested on all supported ruby versions [\#280](https://github.com/solidusio/solidus_subscriptions/issues/280)
|
88
|
+
- Allow guest orders to manage subscriptions via API [\#279](https://github.com/solidusio/solidus_subscriptions/issues/279)
|
89
|
+
- Fix broken link to API docs [\#271](https://github.com/solidusio/solidus_subscriptions/issues/271)
|
90
|
+
- Add endpoint to list all subscriptions for a user [\#272](https://github.com/solidusio/solidus_subscriptions/issues/272)
|
91
|
+
- Link to API docs in README is broken [\#266](https://github.com/solidusio/solidus_subscriptions/issues/266)
|
92
|
+
- I can't get rid of sollidus\_subscription [\#265](https://github.com/solidusio/solidus_subscriptions/issues/265)
|
93
|
+
- Subscription appears on all product pages. [\#264](https://github.com/solidusio/solidus_subscriptions/issues/264)
|
94
|
+
- Stop decorating `order#finalize!` to create subscriptions [\#260](https://github.com/solidusio/solidus_subscriptions/issues/260)
|
95
|
+
- Allow overriding `Checkout` with a custom class [\#238](https://github.com/solidusio/solidus_subscriptions/issues/238)
|
96
|
+
- Method to filter out line\_items that are associated with a subscription [\#227](https://github.com/solidusio/solidus_subscriptions/issues/227)
|
97
|
+
- Dependabot can't resolve your Ruby dependency files [\#226](https://github.com/solidusio/solidus_subscriptions/issues/226)
|
98
|
+
- Fix sandbox generation [\#196](https://github.com/solidusio/solidus_subscriptions/issues/196)
|
99
|
+
- Dependabot can't resolve your Ruby dependency files [\#187](https://github.com/solidusio/solidus_subscriptions/issues/187)
|
100
|
+
- Dependabot can't resolve your Ruby dependency files [\#186](https://github.com/solidusio/solidus_subscriptions/issues/186)
|
101
|
+
- Dependabot can't resolve your Ruby dependency files [\#185](https://github.com/solidusio/solidus_subscriptions/issues/185)
|
102
|
+
- Dependabot can't resolve your Ruby dependency files [\#184](https://github.com/solidusio/solidus_subscriptions/issues/184)
|
103
|
+
- Avoid reprocessing installments with cancelled subscriptions [\#180](https://github.com/solidusio/solidus_subscriptions/issues/180)
|
104
|
+
- Minimum cancellation date is always +1 day from what you set it to [\#177](https://github.com/solidusio/solidus_subscriptions/issues/177)
|
105
|
+
- Unable to edit or disable admin links [\#163](https://github.com/solidusio/solidus_subscriptions/issues/163)
|
106
|
+
- Dependabot can't resolve your Ruby dependency files [\#144](https://github.com/solidusio/solidus_subscriptions/issues/144)
|
107
|
+
- Dependabot can't resolve your Ruby dependency files [\#143](https://github.com/solidusio/solidus_subscriptions/issues/143)
|
108
|
+
- Retrieve payment method from the payment source [\#120](https://github.com/solidusio/solidus_subscriptions/issues/120)
|
109
|
+
- Cannot update interval or end date via API [\#118](https://github.com/solidusio/solidus_subscriptions/issues/118)
|
110
|
+
- Add billing address to subscriptions [\#117](https://github.com/solidusio/solidus_subscriptions/issues/117)
|
111
|
+
- Store payment details on subscription [\#116](https://github.com/solidusio/solidus_subscriptions/issues/116)
|
112
|
+
- Dependabot couldn't find a Gemfile-local for this project [\#91](https://github.com/solidusio/solidus_subscriptions/issues/91)
|
113
|
+
- Dependabot can't resolve your Ruby dependency files [\#90](https://github.com/solidusio/solidus_subscriptions/issues/90)
|
114
|
+
- Dependabot can't resolve your Ruby dependency files [\#88](https://github.com/solidusio/solidus_subscriptions/issues/88)
|
115
|
+
- Dependabot can't resolve your Ruby dependency files [\#87](https://github.com/solidusio/solidus_subscriptions/issues/87)
|
116
|
+
- Dependabot can't resolve your Ruby dependency files [\#86](https://github.com/solidusio/solidus_subscriptions/issues/86)
|
117
|
+
- Dependabot can't resolve your Ruby dependency files [\#85](https://github.com/solidusio/solidus_subscriptions/issues/85)
|
118
|
+
- Dependabot can't resolve your Ruby dependency files [\#84](https://github.com/solidusio/solidus_subscriptions/issues/84)
|
119
|
+
- Dependabot can't resolve your Ruby dependency files [\#82](https://github.com/solidusio/solidus_subscriptions/issues/82)
|
120
|
+
- Unable to seed dummy store [\#22](https://github.com/solidusio/solidus_subscriptions/issues/22)
|
121
|
+
- Solidus Subscriptions incompatible with solidus 2.3 [\#14](https://github.com/solidusio/solidus_subscriptions/issues/14)
|
122
|
+
- Promo codes? [\#8](https://github.com/solidusio/solidus_subscriptions/issues/8)
|
123
|
+
- Default store subscription field views [\#7](https://github.com/solidusio/solidus_subscriptions/issues/7)
|
124
|
+
- There is no subscribable toggle for master variants [\#6](https://github.com/solidusio/solidus_subscriptions/issues/6)
|
125
|
+
- What is the plan? [\#1](https://github.com/solidusio/solidus_subscriptions/issues/1)
|
112
126
|
|
113
127
|
**Merged pull requests:**
|
114
128
|
|
115
|
-
-
|
116
|
-
-
|
117
|
-
-
|
118
|
-
- Fix
|
119
|
-
-
|
120
|
-
-
|
121
|
-
-
|
122
|
-
-
|
123
|
-
-
|
124
|
-
-
|
125
|
-
-
|
126
|
-
-
|
127
|
-
-
|
128
|
-
-
|
129
|
-
-
|
130
|
-
-
|
131
|
-
-
|
132
|
-
-
|
133
|
-
-
|
134
|
-
-
|
135
|
-
- Fix
|
136
|
-
-
|
137
|
-
-
|
138
|
-
-
|
139
|
-
- Update
|
140
|
-
-
|
141
|
-
-
|
142
|
-
-
|
143
|
-
-
|
144
|
-
-
|
145
|
-
-
|
146
|
-
-
|
147
|
-
-
|
148
|
-
-
|
149
|
-
-
|
150
|
-
-
|
151
|
-
-
|
152
|
-
-
|
153
|
-
-
|
154
|
-
-
|
155
|
-
-
|
156
|
-
-
|
157
|
-
-
|
158
|
-
-
|
159
|
-
-
|
160
|
-
-
|
161
|
-
- Fix
|
162
|
-
-
|
163
|
-
-
|
164
|
-
-
|
165
|
-
-
|
166
|
-
-
|
167
|
-
-
|
168
|
-
-
|
169
|
-
-
|
170
|
-
-
|
171
|
-
-
|
172
|
-
-
|
173
|
-
-
|
174
|
-
-
|
175
|
-
-
|
176
|
-
-
|
177
|
-
-
|
178
|
-
-
|
179
|
-
-
|
180
|
-
-
|
181
|
-
-
|
182
|
-
-
|
183
|
-
-
|
184
|
-
-
|
185
|
-
-
|
186
|
-
-
|
187
|
-
-
|
188
|
-
- Fix
|
189
|
-
-
|
190
|
-
-
|
191
|
-
-
|
192
|
-
-
|
193
|
-
-
|
129
|
+
- Allow updating subscription information in cart [\#282](https://github.com/solidusio/solidus_subscriptions/pull/282) ([kennyadsl](https://github.com/kennyadsl))
|
130
|
+
- Run specs on Ruby 2.7, 3.0 and 3.1 [\#281](https://github.com/solidusio/solidus_subscriptions/pull/281) ([FrancescoAiello01](https://github.com/FrancescoAiello01))
|
131
|
+
- Support the new starter frontend installation [\#276](https://github.com/solidusio/solidus_subscriptions/pull/276) ([kennyadsl](https://github.com/kennyadsl))
|
132
|
+
- Fix filtering by line item in admin [\#275](https://github.com/solidusio/solidus_subscriptions/pull/275) ([nirebu](https://github.com/nirebu))
|
133
|
+
- Update README links [\#273](https://github.com/solidusio/solidus_subscriptions/pull/273) ([elia](https://github.com/elia))
|
134
|
+
- Restore running specs for solidus master [\#262](https://github.com/solidusio/solidus_subscriptions/pull/262) ([elia](https://github.com/elia))
|
135
|
+
- Create order finalized subscriber/job for subscription creation [\#261](https://github.com/solidusio/solidus_subscriptions/pull/261) ([FrancescoAiello01](https://github.com/FrancescoAiello01))
|
136
|
+
- Update to use forked solidus\_frontend when needed [\#259](https://github.com/solidusio/solidus_subscriptions/pull/259) ([waiting-for-dev](https://github.com/waiting-for-dev))
|
137
|
+
- Make the subscription generator a configurable class [\#258](https://github.com/solidusio/solidus_subscriptions/pull/258) ([elia](https://github.com/elia))
|
138
|
+
- Fix CI for broken solidus master [\#257](https://github.com/solidusio/solidus_subscriptions/pull/257) ([elia](https://github.com/elia))
|
139
|
+
- Added a way for admins to filter subscriptions by line item [\#256](https://github.com/solidusio/solidus_subscriptions/pull/256) ([styrken](https://github.com/styrken))
|
140
|
+
- Compare GemVersions to GemVersions instead of string [\#255](https://github.com/solidusio/solidus_subscriptions/pull/255) ([styrken](https://github.com/styrken))
|
141
|
+
- Support Rails 7 and Solidus 3.2 [\#252](https://github.com/solidusio/solidus_subscriptions/pull/252) ([waiting-for-dev](https://github.com/waiting-for-dev))
|
142
|
+
- Link to the user in the subscription details sidebar [\#251](https://github.com/solidusio/solidus_subscriptions/pull/251) ([nirebu](https://github.com/nirebu))
|
143
|
+
- support ruby 3 [\#246](https://github.com/solidusio/solidus_subscriptions/pull/246) ([ccarruitero](https://github.com/ccarruitero))
|
144
|
+
- Add ability to pause/resume subscriptions [\#244](https://github.com/solidusio/solidus_subscriptions/pull/244) ([FrancescoAiello01](https://github.com/FrancescoAiello01))
|
145
|
+
- Log installments errors by default [\#235](https://github.com/solidusio/solidus_subscriptions/pull/235) ([kennyadsl](https://github.com/kennyadsl))
|
146
|
+
- Introduce Installment OrderCreator configuration [\#229](https://github.com/solidusio/solidus_subscriptions/pull/229) ([cesartalves](https://github.com/cesartalves))
|
147
|
+
- Upgrade to GitHub-native Dependabot [\#228](https://github.com/solidusio/solidus_subscriptions/pull/228) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
148
|
+
- Update solidus\_core requirement from \>= 2.0.0, \< 3 to \>= 2.0.0, \< 4 [\#225](https://github.com/solidusio/solidus_subscriptions/pull/225) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
149
|
+
- Fix Api Subscription Permitted LineItem Attributes [\#223](https://github.com/solidusio/solidus_subscriptions/pull/223) ([cesartalves](https://github.com/cesartalves))
|
150
|
+
- Fix Spree::OrdersController decoration [\#221](https://github.com/solidusio/solidus_subscriptions/pull/221) ([cesartalves](https://github.com/cesartalves))
|
151
|
+
- Reload order during finalize action [\#220](https://github.com/solidusio/solidus_subscriptions/pull/220) ([seand7565](https://github.com/seand7565))
|
152
|
+
- Update specs to conform with rubocop [\#217](https://github.com/solidusio/solidus_subscriptions/pull/217) ([seand7565](https://github.com/seand7565))
|
153
|
+
- Update promotion rule names on db [\#216](https://github.com/solidusio/solidus_subscriptions/pull/216) ([luca-landa](https://github.com/luca-landa))
|
154
|
+
- Improve promotion rules names [\#215](https://github.com/solidusio/solidus_subscriptions/pull/215) ([luca-landa](https://github.com/luca-landa))
|
155
|
+
- Validate payment\_source ownership on the subscription [\#214](https://github.com/solidusio/solidus_subscriptions/pull/214) ([ChristianRimondi](https://github.com/ChristianRimondi))
|
156
|
+
- Add missing permissions sets for Solidus v2.11 [\#213](https://github.com/solidusio/solidus_subscriptions/pull/213) ([elia](https://github.com/elia))
|
157
|
+
- Require a version of solidus\_support that autoloads subscribers [\#212](https://github.com/solidusio/solidus_subscriptions/pull/212) ([elia](https://github.com/elia))
|
158
|
+
- Remove variant from subscriptions on soft deletion [\#211](https://github.com/solidusio/solidus_subscriptions/pull/211) ([luca-landa](https://github.com/luca-landa))
|
159
|
+
- Set default config currency to subscription [\#210](https://github.com/solidusio/solidus_subscriptions/pull/210) ([luca-landa](https://github.com/luca-landa))
|
160
|
+
- Skip ActiveJob retrying for ProcessInstallmentJob [\#206](https://github.com/solidusio/solidus_subscriptions/pull/206) ([ikraamg](https://github.com/ikraamg))
|
161
|
+
- Cleanup the duplicated fields on subscription creation [\#202](https://github.com/solidusio/solidus_subscriptions/pull/202) ([blocknotes](https://github.com/blocknotes))
|
162
|
+
- Move subscription processing to its own background job [\#201](https://github.com/solidusio/solidus_subscriptions/pull/201) ([nirebu](https://github.com/nirebu))
|
163
|
+
- Use `name` in customer serializer [\#200](https://github.com/solidusio/solidus_subscriptions/pull/200) ([nvandoorn](https://github.com/nvandoorn))
|
164
|
+
- Setup the subcription create endpoint [\#199](https://github.com/solidusio/solidus_subscriptions/pull/199) ([blocknotes](https://github.com/blocknotes))
|
165
|
+
- Add currency to subscriptions [\#198](https://github.com/solidusio/solidus_subscriptions/pull/198) ([luca-landa](https://github.com/luca-landa))
|
166
|
+
- Fix sandbox creation error [\#197](https://github.com/solidusio/solidus_subscriptions/pull/197) ([blocknotes](https://github.com/blocknotes))
|
167
|
+
- Fix duplicated line items creation [\#195](https://github.com/solidusio/solidus_subscriptions/pull/195) ([igorbp](https://github.com/igorbp))
|
168
|
+
- Admin: expose the subscription orders [\#192](https://github.com/solidusio/solidus_subscriptions/pull/192) ([blocknotes](https://github.com/blocknotes))
|
169
|
+
- Improve "unfulfilled" scope by adding subquery [\#191](https://github.com/solidusio/solidus_subscriptions/pull/191) ([AlessioRocco](https://github.com/AlessioRocco))
|
170
|
+
- Remove "canonical-rails" from the Gemfile [\#189](https://github.com/solidusio/solidus_subscriptions/pull/189) ([AlessioRocco](https://github.com/AlessioRocco))
|
171
|
+
- Update permissions check on user subscription tab [\#183](https://github.com/solidusio/solidus_subscriptions/pull/183) ([seand7565](https://github.com/seand7565))
|
172
|
+
- Add Installment Details association to Order [\#182](https://github.com/solidusio/solidus_subscriptions/pull/182) ([seand7565](https://github.com/seand7565))
|
173
|
+
- Avoid processing installments with cancelled subscriptions [\#181](https://github.com/solidusio/solidus_subscriptions/pull/181) ([seand7565](https://github.com/seand7565))
|
174
|
+
- Update cancel method on subscription to respect minimum date [\#178](https://github.com/solidusio/solidus_subscriptions/pull/178) ([seand7565](https://github.com/seand7565))
|
175
|
+
- Fix typo in subscription admin notifications [\#176](https://github.com/solidusio/solidus_subscriptions/pull/176) ([igorbp](https://github.com/igorbp))
|
176
|
+
- Processor and Checkout refactoring [\#172](https://github.com/solidusio/solidus_subscriptions/pull/172) ([aldesantis](https://github.com/aldesantis))
|
177
|
+
- Move maximum reprocessing retries to a time based criterion [\#167](https://github.com/solidusio/solidus_subscriptions/pull/167) ([nirebu](https://github.com/nirebu))
|
178
|
+
- Add config to ignore past unfulfilled installments [\#165](https://github.com/solidusio/solidus_subscriptions/pull/165) ([nirebu](https://github.com/nirebu))
|
179
|
+
- Add Subscriptions tab to User page in Admin [\#162](https://github.com/solidusio/solidus_subscriptions/pull/162) ([igorbp](https://github.com/igorbp))
|
180
|
+
- Track additional events for subscription updates [\#156](https://github.com/solidusio/solidus_subscriptions/pull/156) ([aldesantis](https://github.com/aldesantis))
|
181
|
+
- Update shoulda-matchers requirement from ~\> 3.1 to ~\> 4.4 [\#145](https://github.com/solidusio/solidus_subscriptions/pull/145) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
182
|
+
- Use parent strategy when building associations in factories [\#134](https://github.com/solidusio/solidus_subscriptions/pull/134) ([aldesantis](https://github.com/aldesantis))
|
183
|
+
- Move service objects to `app/services` [\#110](https://github.com/solidusio/solidus_subscriptions/pull/110) ([aldesantis](https://github.com/aldesantis))
|
184
|
+
- Convert API documentation into OpenAPI [\#106](https://github.com/solidusio/solidus_subscriptions/pull/106) ([aldesantis](https://github.com/aldesantis))
|
185
|
+
- Add github\_changelog\_generator configuration [\#105](https://github.com/solidusio/solidus_subscriptions/pull/105) ([aldesantis](https://github.com/aldesantis))
|
186
|
+
- Reorganize and clean up readme [\#104](https://github.com/solidusio/solidus_subscriptions/pull/104) ([aldesantis](https://github.com/aldesantis))
|
187
|
+
- Fix unsupported `around(:all)` RSpec configuration [\#98](https://github.com/solidusio/solidus_subscriptions/pull/98) ([aldesantis](https://github.com/aldesantis))
|
188
|
+
- Update to the latest solidus\_dev\_support [\#96](https://github.com/solidusio/solidus_subscriptions/pull/96) ([aldesantis](https://github.com/aldesantis))
|
189
|
+
- Relax solidus\_support dependency [\#95](https://github.com/solidusio/solidus_subscriptions/pull/95) ([kennyadsl](https://github.com/kennyadsl))
|
190
|
+
- Fix Dependabot looking for Gemfile-local [\#92](https://github.com/solidusio/solidus_subscriptions/pull/92) ([aldesantis](https://github.com/aldesantis))
|
191
|
+
- Update solidus\_dev\_support [\#89](https://github.com/solidusio/solidus_subscriptions/pull/89) ([blocknotes](https://github.com/blocknotes))
|
192
|
+
- Adopt solidus\_extension\_dev\_tools [\#81](https://github.com/solidusio/solidus_subscriptions/pull/81) ([aldesantis](https://github.com/aldesantis))
|
193
|
+
- Fix CI on Rails 6 [\#71](https://github.com/solidusio/solidus_subscriptions/pull/71) ([aldesantis](https://github.com/aldesantis))
|
194
|
+
- Fixes admin sorting on fields without a natural order [\#70](https://github.com/solidusio/solidus_subscriptions/pull/70) ([mdesantis](https://github.com/mdesantis))
|
195
|
+
- Perform maintenance tasks [\#69](https://github.com/solidusio/solidus_subscriptions/pull/69) ([mdesantis](https://github.com/mdesantis))
|
196
|
+
- Run specs with CircleCI [\#68](https://github.com/solidusio/solidus_subscriptions/pull/68) ([kennyadsl](https://github.com/kennyadsl))
|
197
|
+
- Fix broken factories associations [\#67](https://github.com/solidusio/solidus_subscriptions/pull/67) ([aitbw](https://github.com/aitbw))
|
198
|
+
- Remove Solidus v2.3 from Travis config \(EOL\) [\#66](https://github.com/solidusio/solidus_subscriptions/pull/66) ([aitbw](https://github.com/aitbw))
|
199
|
+
- Add Solidus v2.8 to Travis config [\#65](https://github.com/solidusio/solidus_subscriptions/pull/65) ([aitbw](https://github.com/aitbw))
|
200
|
+
- Do not run rubocop on Travis [\#64](https://github.com/solidusio/solidus_subscriptions/pull/64) ([aitbw](https://github.com/aitbw))
|
201
|
+
- Update rubocop to fix vulnerability CVE-2017-8418 [\#63](https://github.com/solidusio/solidus_subscriptions/pull/63) ([aitbw](https://github.com/aitbw))
|
202
|
+
- Fix deprecations warnings and failing specs [\#61](https://github.com/solidusio/solidus_subscriptions/pull/61) ([aitbw](https://github.com/aitbw))
|
203
|
+
- Change api url in documentation [\#58](https://github.com/solidusio/solidus_subscriptions/pull/58) ([jacobeubanks](https://github.com/jacobeubanks))
|
204
|
+
- Fix factory girl dependency for Solidus \< 2.5 [\#57](https://github.com/solidusio/solidus_subscriptions/pull/57) ([jacobherrington](https://github.com/jacobherrington))
|
205
|
+
- Add Solidus 2.7 to .travis.yml [\#56](https://github.com/solidusio/solidus_subscriptions/pull/56) ([jacobherrington](https://github.com/jacobherrington))
|
206
|
+
- Change static factory attrs to dynamic [\#55](https://github.com/solidusio/solidus_subscriptions/pull/55) ([fastjames](https://github.com/fastjames))
|
207
|
+
- Update factory\_girl to factory\_bot [\#50](https://github.com/solidusio/solidus_subscriptions/pull/50) ([fastjames](https://github.com/fastjames))
|
208
|
+
- Update solidus version for travis [\#46](https://github.com/solidusio/solidus_subscriptions/pull/46) ([fastjames](https://github.com/fastjames))
|
209
|
+
- Fix typos in comments [\#39](https://github.com/solidusio/solidus_subscriptions/pull/39) ([swcraig](https://github.com/swcraig))
|
210
|
+
- Add ffaker dependency to gemspec [\#35](https://github.com/solidusio/solidus_subscriptions/pull/35) ([swcraig](https://github.com/swcraig))
|
211
|
+
- Small UI change to canceling in the admin [\#28](https://github.com/solidusio/solidus_subscriptions/pull/28) ([seantaylor](https://github.com/seantaylor))
|
212
|
+
- Authorize subscriptions admin sidebar link [\#23](https://github.com/solidusio/solidus_subscriptions/pull/23) ([qr8r](https://github.com/qr8r))
|
213
|
+
- Subs track their own interval now [\#21](https://github.com/solidusio/solidus_subscriptions/pull/21) ([qr8r](https://github.com/qr8r))
|
214
|
+
- Fix/the broken admin [\#20](https://github.com/solidusio/solidus_subscriptions/pull/20) ([qr8r](https://github.com/qr8r))
|
215
|
+
- Allow destroying nested line items [\#18](https://github.com/solidusio/solidus_subscriptions/pull/18) ([isaacfreeman](https://github.com/isaacfreeman))
|
216
|
+
- Update Readme to correct repo [\#17](https://github.com/solidusio/solidus_subscriptions/pull/17) ([asecondwill](https://github.com/asecondwill))
|
217
|
+
- Support Rails 5.1 [\#16](https://github.com/solidusio/solidus_subscriptions/pull/16) ([jhawthorn](https://github.com/jhawthorn))
|
218
|
+
- Allows for subscription checkout to accommodate a more flexible checko… [\#15](https://github.com/solidusio/solidus_subscriptions/pull/15) ([joeljackson](https://github.com/joeljackson))
|
219
|
+
- Only load permitted attributes once [\#11](https://github.com/solidusio/solidus_subscriptions/pull/11) ([qr8r](https://github.com/qr8r))
|
220
|
+
- Fix duplicated docs [\#10](https://github.com/solidusio/solidus_subscriptions/pull/10) ([qr8r](https://github.com/qr8r))
|
221
|
+
- Add Subcription inputs to product page [\#9](https://github.com/solidusio/solidus_subscriptions/pull/9) ([qr8r](https://github.com/qr8r))
|
222
|
+
- Fixes for Solidus 2.2 [\#5](https://github.com/solidusio/solidus_subscriptions/pull/5) ([jhawthorn](https://github.com/jhawthorn))
|
223
|
+
- Allow Failed installments to not be reprocessed [\#4](https://github.com/solidusio/solidus_subscriptions/pull/4) ([qr8r](https://github.com/qr8r))
|
224
|
+
- Lock travis bundler version [\#3](https://github.com/solidusio/solidus_subscriptions/pull/3) ([qr8r](https://github.com/qr8r))
|
225
|
+
- Group subscriptions by subscription configurations [\#2](https://github.com/solidusio/solidus_subscriptions/pull/2) ([qr8r](https://github.com/qr8r))
|
194
226
|
|
195
227
|
|
196
228
|
|
data/Gemfile
CHANGED
@@ -4,7 +4,13 @@ source 'https://rubygems.org'
|
|
4
4
|
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
5
5
|
|
6
6
|
branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
|
7
|
-
|
7
|
+
solidus_git, solidus_frontend_git = if (branch == 'master') || (branch >= 'v3.2')
|
8
|
+
%w[solidusio/solidus solidusio/solidus_frontend]
|
9
|
+
else
|
10
|
+
%w[solidusio/solidus] * 2
|
11
|
+
end
|
12
|
+
gem 'solidus', github: solidus_git, branch: branch
|
13
|
+
gem 'solidus_frontend', github: solidus_frontend_git, branch: branch
|
8
14
|
|
9
15
|
# Needed to help Bundler figure out how to resolve dependencies,
|
10
16
|
# otherwise it takes forever to resolve them.
|
@@ -25,6 +31,13 @@ end
|
|
25
31
|
|
26
32
|
gemspec
|
27
33
|
|
34
|
+
if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3')
|
35
|
+
# Fix for Rails 7+ / Ruby 3+, see https://stackoverflow.com/a/72474475
|
36
|
+
gem 'net-imap', require: false
|
37
|
+
gem 'net-pop', require: false
|
38
|
+
gem 'net-smtp', require: false
|
39
|
+
end
|
40
|
+
|
28
41
|
# Use a local Gemfile to include development dependencies that might not be
|
29
42
|
# relevant for the project or for other contributors, e.g. pry-byebug.
|
30
43
|
#
|