spree 4.1.0.rc3 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of spree might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +80 -77
- metadata +16 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 90be3eb4305032d3ad80042983a9da4825a9886c0b3a8ae117aebec17749ed31
|
4
|
+
data.tar.gz: a2b73370c5c53b067f7a0a0d5f1e235a7f3c28ad5a3fc79c6e6d0039b1291b9c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60ca0c2de8f2aa01c9b1bb94af5a4d886875e30d556e31409ccc637035691d625828a6c48c981cffd656a6e0e8e03c7b48993d2a31657ea9f244ce7b16a46ae6
|
7
|
+
data.tar.gz: cb6e4bde2a5b020af6465359899f7986c2d7538a8bdd57d5fa1917645de5978a05769d7ed3d42c9ab2aff837f35053ce9122490a36eb5bb9e44d14d0f8c62c29
|
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# Spree Commerce
|
2
|
+
|
1
3
|
<a href="https://guides.spreecommerce.org/release_notes/4_1_0.html"><img src="https://spreecommerce.org/wp-content/uploads/2020/02/Spree-4-1-new-ux-relase-notes.png" /></a>
|
2
4
|
|
3
5
|
* Join our Slack at [slack.spreecommerce.org](http://slack.spreecommerce.org/)
|
@@ -16,44 +18,53 @@
|
|
16
18
|
[![Slack Status](http://slack.spreecommerce.org/badge.svg)](http://slack.spreecommerce.org)
|
17
19
|
|
18
20
|
**Spree** is a complete open source e-commerce solution built with Ruby on Rails. It
|
19
|
-
was
|
21
|
+
was started by Sean Schofield and is now developed by [Spark Solutions](http://sparksolutions.co). We're open to [contributions](#contributing).
|
20
22
|
|
21
|
-
Spree consists of several different gems, each of which are maintained
|
23
|
+
Spree consists of several different gems (modules), each of which are maintained
|
22
24
|
in a single repository and documented in a single set of
|
23
25
|
[online documentation](http://guides.spreecommerce.org/).
|
24
26
|
|
25
|
-
* **spree_api** (
|
26
|
-
* **
|
27
|
-
* **
|
28
|
-
* **
|
29
|
-
* **
|
30
|
-
* **
|
27
|
+
* **spree_api** ([REST API v2](https://guides.spreecommerce.org/api/v2) with [JavaScript / TypeScript SDK](https://github.com/spree/spree-storefront-api-v2-js-sdk) and [REST API v1](https://guides.spreecommerce.org/api/))
|
28
|
+
* **spree_graphql** (GraphQL API - [coming soon](https://github.com/spree/spree/issues/9176))
|
29
|
+
* **spree_frontend** (mobile-first, blazing fast and customizable storefront)
|
30
|
+
* **spree_backend** (feature rich Admin Panel)
|
31
|
+
* **spree_cmd** (command-line tools for developers)
|
32
|
+
* **spree_core** (models, services & mailers, the basic components of Spree)
|
33
|
+
* **spree_sample** (sample data for demo purposes)
|
34
|
+
|
35
|
+
## Demo
|
31
36
|
|
32
|
-
|
37
|
+
Go to: https://demo.spreecommerce.org/
|
33
38
|
|
34
|
-
|
35
|
-
----
|
39
|
+
Or fire your own demo on Heroku:
|
36
40
|
|
37
41
|
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/spree/spree/tree/master)
|
38
42
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
+
Admin Panel credentials (Heroku demo):
|
44
|
+
|
45
|
+
* login: `spree@example.com`
|
46
|
+
* password: `spree123`
|
47
|
+
|
48
|
+
## Installation
|
43
49
|
|
44
|
-
|
50
|
+
### Create new Rails app (optional)
|
45
51
|
|
52
|
+
If you're starting a new application from scrach run:
|
46
53
|
|
47
|
-
|
48
|
-
|
54
|
+
```bash
|
55
|
+
rails new my_store
|
56
|
+
cd my_store
|
57
|
+
```
|
58
|
+
|
59
|
+
You can **add Spree to your existing Rails application** as well.
|
49
60
|
|
50
61
|
### Add Spree gems to your `Gemfile`
|
51
62
|
|
52
63
|
#### Rails 6.0
|
53
64
|
|
54
65
|
```ruby
|
55
|
-
gem 'spree', '~> 4.1
|
56
|
-
gem 'spree_auth_devise', '~> 4.1
|
66
|
+
gem 'spree', '~> 4.1'
|
67
|
+
gem 'spree_auth_devise', '~> 4.1'
|
57
68
|
gem 'spree_gateway', '~> 3.7'
|
58
69
|
```
|
59
70
|
|
@@ -65,26 +76,21 @@ gem 'spree_auth_devise', '~> 3.5'
|
|
65
76
|
gem 'spree_gateway', '~> 3.4'
|
66
77
|
```
|
67
78
|
|
68
|
-
|
79
|
+
To see what rails version are you using run this command:
|
69
80
|
|
70
|
-
```
|
71
|
-
|
72
|
-
gem 'spree_auth_devise', '~> 3.5'
|
73
|
-
gem 'spree_gateway', '~> 3.4'
|
81
|
+
```bash
|
82
|
+
rails -v
|
74
83
|
```
|
75
84
|
|
76
|
-
|
77
|
-
|
78
|
-
```ruby
|
79
|
-
gem 'spree', '~> 3.2.7'
|
80
|
-
gem 'spree_auth_devise', '~> 3.5'
|
81
|
-
gem 'spree_gateway', '~> 3.4'
|
82
|
-
```
|
85
|
+
Older rails versions are also supported: [Rails 5.1](https://guides.spreecommerce.org/release_notes/3_5_0.html), [Rails 5.0](https://guides.spreecommerce.org/release_notes/3_2_0.html), [Rails 4.2](https://guides.spreecommerce.org/release_notes/3_1_0.html)
|
83
86
|
|
84
|
-
###
|
87
|
+
### Install gems
|
85
88
|
|
89
|
+
```bash
|
90
|
+
bundle install
|
91
|
+
```
|
86
92
|
|
87
|
-
**Note**: if you run into `Bundler could not find compatible versions for gem "sprockets":` error message, please run
|
93
|
+
**Note**: if you run into `Bundler could not find compatible versions for gem "sprockets":` error message, please run
|
88
94
|
|
89
95
|
```bash
|
90
96
|
bundle update
|
@@ -98,24 +104,11 @@ rails g spree:auth:install
|
|
98
104
|
rails g spree_gateway:install
|
99
105
|
```
|
100
106
|
|
101
|
-
Installation options
|
102
|
-
----------------------
|
103
|
-
|
104
|
-
Alternatively, if you want to use the bleeding edge version of Spree, add this to your Gemfile:
|
105
|
-
|
106
|
-
```ruby
|
107
|
-
gem 'spree', github: 'spree/spree'
|
108
|
-
gem 'spree_auth_devise', github: 'spree/spree_auth_devise'
|
109
|
-
gem 'spree_gateway', github: 'spree/spree_gateway'
|
110
|
-
```
|
111
|
-
|
112
|
-
**Note: The master branch is not guaranteed to ever be in a fully functioning
|
113
|
-
state. It is unwise to use this branch in a production system you care deeply
|
114
|
-
about.**
|
107
|
+
## Installation options
|
115
108
|
|
116
109
|
By default, the installation generator (`rails g spree:install`) will run
|
117
|
-
migrations as well as adding seed and sample data and will copy
|
118
|
-
for easy customization (if spree_frontend available). This can be disabled using
|
110
|
+
migrations as well as adding seed and sample data and will copy storefront data
|
111
|
+
for easy customization (if `spree_frontend` available). This can be disabled using
|
119
112
|
|
120
113
|
```shell
|
121
114
|
rails g spree:install --migrate=false --sample=false --seed=false --copy_storefront=false
|
@@ -125,32 +118,37 @@ You can always perform any of these steps later by using these commands.
|
|
125
118
|
|
126
119
|
```shell
|
127
120
|
bundle exec rake railties:install:migrations
|
128
|
-
bundle exec
|
129
|
-
bundle exec
|
121
|
+
bundle exec rails db:migrate
|
122
|
+
bundle exec rails db:seed
|
130
123
|
bundle exec rake spree_sample:load
|
124
|
+
bundle exec rails g spree:frontend:copy_storefront
|
131
125
|
```
|
132
126
|
|
133
|
-
|
134
|
-
----------------------
|
127
|
+
### Headless installation
|
135
128
|
|
136
|
-
|
129
|
+
To use Spree in [API-only mode](https://guides.spreecommerce.org/api/overview/) you need to replace `spree` with `spree_api` in your project Gemfile. This will skip Storefront and Admin Panel. If you would want to include the Admin Panel please add `spree_backend` to your Gemfile.
|
137
130
|
|
138
|
-
|
139
|
-
----------------------
|
131
|
+
## Run rails sever
|
140
132
|
|
141
|
-
|
133
|
+
```bash
|
134
|
+
rails s
|
135
|
+
```
|
142
136
|
|
143
|
-
|
137
|
+
## Browse Storefront
|
144
138
|
|
145
|
-
|
146
|
-
----------------------
|
139
|
+
Go to http://localhost:3000
|
147
140
|
|
148
|
-
|
141
|
+
## Browse Admin Panel
|
149
142
|
|
143
|
+
Go to http://localhost:3000/admin
|
144
|
+
|
145
|
+
## Extensions
|
146
|
+
|
147
|
+
Spree Extensions provide additional features not present in the Core system.
|
150
148
|
|
151
149
|
| Extension | Spree 3.2+ support | Description |
|
152
150
|
| --- | --- | --- |
|
153
|
-
| [spree_gateway](https://github.com/spree/spree_gateway) | [![Build Status](https://travis-ci.org/spree/spree_gateway.svg?branch=master)](https://travis-ci.org/spree/spree_gateway) |
|
151
|
+
| [spree_gateway](https://github.com/spree/spree_gateway) | [![Build Status](https://travis-ci.org/spree/spree_gateway.svg?branch=master)](https://travis-ci.org/spree/spree_gateway) | Payment Gateways (Stripe, Apple Pay, Braintree, Authorize.net and many others)
|
154
152
|
| [spree_auth_devise](https://github.com/spree/spree_auth_devise) | [![Build Status](https://travis-ci.org/spree/spree_auth_devise.svg?branch=master)](https://travis-ci.org/spree/spree_auth_devise) | Provides authentication services for Spree, using the Devise gem.
|
155
153
|
| [spree_i18n](https://github.com/spree-contrib/spree_i18n) | [![Build Status](https://travis-ci.org/spree-contrib/spree_i18n.svg?branch=master)](https://travis-ci.org/spree-contrib/spree_i18n) | I18n translation files for Spree Commerce
|
156
154
|
| [spree-multi-domain](https://github.com/spree-contrib/spree-multi-domain) | [![Build Status](https://travis-ci.org/spree-contrib/spree-multi-domain.svg?branch=master)](https://travis-ci.org/spree-contrib/spree-multi-domain) | Multiple Spree stores on different domains - single unified backed for processing orders
|
@@ -174,8 +172,7 @@ Spree Extensions provide additional features not present in the Core system.
|
|
174
172
|
| [spree_avatax_official](https://github.com/spree-contrib/spree_avatax_official) | [![Build Status](https://travis-ci.org/spree-contrib/spree_avatax_official.svg?branch=master)](https://travis-ci.org/spree-contrib/spree_avatax_official) | Improve your Spree store's sales tax decision automation with Avalara AvaTax
|
175
173
|
| [spree_analytics_trackers](https://github.com/spree-contrib/spree_analytics_trackers) | [![Build Status](https://travis-ci.org/spree-contrib/spree_analytics_trackers.svg?branch=master)](https://travis-ci.org/spree-contrib/spree_analytics_trackers) | Adds support for Analytics Trackers (Google Analytics & Segment)
|
176
174
|
|
177
|
-
Performance
|
178
|
-
----------------------
|
175
|
+
## Performance
|
179
176
|
|
180
177
|
You may notice that your Spree store runs slowly in development environment. This can be because in development each asset (css and javascript) is loaded separately. You can disable it by adding the following line to `config/environments/development.rb`.
|
181
178
|
|
@@ -183,14 +180,19 @@ You may notice that your Spree store runs slowly in development environment. Thi
|
|
183
180
|
config.assets.debug = false
|
184
181
|
```
|
185
182
|
|
183
|
+
Also in development caching is disabled by defualt. To turn on caching run:
|
184
|
+
|
185
|
+
```bash
|
186
|
+
rails dev:cache
|
187
|
+
```
|
186
188
|
|
187
|
-
|
188
|
-
|
189
|
+
You will need to restart rails server after this.
|
190
|
+
|
191
|
+
## Developing Spree
|
189
192
|
|
190
193
|
Spree is meant to be run within the context of Rails application and the source code is essentially a collection of gems. You can easily create a sandbox
|
191
194
|
application inside of your cloned source directory for testing purposes.
|
192
195
|
|
193
|
-
|
194
196
|
Clone the Git repo
|
195
197
|
|
196
198
|
```shell
|
@@ -225,11 +227,10 @@ We use [CircleCI](https://circleci.com/) to run the tests for Spree.
|
|
225
227
|
|
226
228
|
You can see the build statuses at [https://circleci.com/gh/spree/spree](https://circleci.com/gh/spree/spree).
|
227
229
|
|
228
|
-
---
|
229
|
-
|
230
230
|
Each gem contains its own series of tests, and for each directory, you need to
|
231
231
|
do a quick one-time creation of a test application and then you can use it to run
|
232
232
|
the tests. For example, to run the tests for the core project.
|
233
|
+
|
233
234
|
```shell
|
234
235
|
cd core
|
235
236
|
BUNDLE_GEMFILE=../Gemfile bundle exec rake test_app
|
@@ -238,26 +239,31 @@ bundle exec rspec spec
|
|
238
239
|
|
239
240
|
If you would like to run specs against a particular database you may specify the
|
240
241
|
dummy app's database, which defaults to sqlite3.
|
242
|
+
|
241
243
|
```shell
|
242
244
|
DB=postgres bundle exec rake test_app
|
243
245
|
```
|
244
246
|
|
245
247
|
If you want to run specs for only a single spec file
|
248
|
+
|
246
249
|
```shell
|
247
250
|
bundle exec rspec spec/models/spree/state_spec.rb
|
248
251
|
```
|
249
252
|
|
250
253
|
If you want to run a particular line of spec
|
254
|
+
|
251
255
|
```shell
|
252
256
|
bundle exec rspec spec/models/spree/state_spec.rb:7
|
253
257
|
```
|
254
258
|
|
255
259
|
You can also enable fail fast in order to stop tests at the first failure
|
260
|
+
|
256
261
|
```shell
|
257
262
|
FAIL_FAST=true bundle exec rspec spec/models/state_spec.rb
|
258
263
|
```
|
259
264
|
|
260
265
|
If you want to run the simplecov code coverage report
|
266
|
+
|
261
267
|
```shell
|
262
268
|
COVERAGE=true bundle exec rspec spec
|
263
269
|
```
|
@@ -276,13 +282,12 @@ Please follow this
|
|
276
282
|
To execute all the tests, you may want to run this command at the
|
277
283
|
root of the Spree project to generate test applications and run
|
278
284
|
specs for all the facets:
|
285
|
+
|
279
286
|
```shell
|
280
287
|
bash build.sh
|
281
288
|
```
|
282
289
|
|
283
|
-
|
284
|
-
Contributing
|
285
|
-
----------------------
|
290
|
+
## Contributing
|
286
291
|
|
287
292
|
Spree is an open source project and we encourage contributions. Please review the
|
288
293
|
[contributing guidelines](https://github.com/spree/spree/blob/master/.github/CONTRIBUTING.md)
|
@@ -302,14 +307,12 @@ Here are some ways **you** can contribute:
|
|
302
307
|
* by reviewing [pull requests](https://github.com/spree/spree/pulls)
|
303
308
|
* by verifying [issues](https://github.com/spree/spree/labels/unverified)
|
304
309
|
|
305
|
-
License
|
306
|
-
----------------------
|
310
|
+
## License
|
307
311
|
|
308
312
|
Spree is released under the [New BSD License](https://github.com/spree/spree/blob/master/license.md).
|
309
313
|
|
314
|
+
## About Spark Solutions
|
310
315
|
|
311
|
-
About Spark Solutions
|
312
|
-
----------------------
|
313
316
|
[![Spark Solutions](http://sparksolutions.co/wp-content/uploads/2015/01/logo-ss-tr-221x100.png)][spark]
|
314
317
|
|
315
318
|
Spree is maintained by [Spark Solutions Sp. z o.o.][spark].
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.1.0
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02
|
11
|
+
date: 2020-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: spree_core
|
@@ -16,84 +16,84 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.1.0
|
19
|
+
version: 4.1.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.1.0
|
26
|
+
version: 4.1.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: spree_api
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 4.1.0
|
33
|
+
version: 4.1.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 4.1.0
|
40
|
+
version: 4.1.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: spree_backend
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 4.1.0
|
47
|
+
version: 4.1.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 4.1.0
|
54
|
+
version: 4.1.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: spree_frontend
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 4.1.0
|
61
|
+
version: 4.1.0
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 4.1.0
|
68
|
+
version: 4.1.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: spree_sample
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 4.1.0
|
75
|
+
version: 4.1.0
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 4.1.0
|
82
|
+
version: 4.1.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: spree_cmd
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 4.1.0
|
89
|
+
version: 4.1.0
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 4.1.0
|
96
|
+
version: 4.1.0
|
97
97
|
description: Spree is an open source e-commerce framework for Ruby on Rails. Join
|
98
98
|
us on http://slack.spreecommerce.org
|
99
99
|
email: sean@spreecommerce.com
|
@@ -119,9 +119,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
119
|
version: 2.5.0
|
120
120
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- - "
|
122
|
+
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: '0'
|
125
125
|
requirements:
|
126
126
|
- none
|
127
127
|
rubygems_version: 3.0.6
|