plu 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -1
- data/LICENSE.txt +1 -1
- data/README.md +22 -24
- data/lib/plu/version.rb +1 -1
- data/lib/plu.rb +6 -13
- metadata +10 -53
- data/plu_codes.csv +0 -1493
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5d522d5c6813065f75cffd798d290167c38f93c821ddd13d8baae7012a734afe
|
4
|
+
data.tar.gz: 67330e92e78f30336a97ffea8874288ba5b6d0aeeb449c9ff743a5af491d8d12
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aeb6d27127f09eb2a03461b64c898b87d4b957df269c97e14e47123339bab25c5d4f7497e964c2e727c23ea8d422e5a874456ef9b3838d3c3e5a7e31fe01fcac
|
7
|
+
data.tar.gz: aefc7630d69c63e237da055f1032567777ad3f2dc8a0bbce6aeb246adbd4fc7003704d2298fd79aeade2cfd18b19168cea6f11c4d47ef02fd5ab8a1a28de9bc8
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,25 @@
|
|
1
|
-
## 0.
|
1
|
+
## 0.3.0 (2023-10-23)
|
2
|
+
|
3
|
+
- Dropped support for Ruby < 3.1
|
4
|
+
|
5
|
+
## 0.2.0 (2022-09-03)
|
6
|
+
|
7
|
+
- Added latest PLU codes
|
8
|
+
- Removed `gm?` method (no longer reserved)
|
9
|
+
- Dropped support for Ruby < 2.7
|
10
|
+
|
11
|
+
## 0.1.0 (2019-10-08)
|
2
12
|
|
3
13
|
- Added latest PLU codes
|
14
|
+
|
15
|
+
## 0.0.3 (2013-12-30)
|
16
|
+
|
17
|
+
- Added `retailer_assigned?` method
|
18
|
+
|
19
|
+
## 0.0.2 (2013-09-20)
|
20
|
+
|
21
|
+
- Added known PLU codes
|
22
|
+
|
23
|
+
## 0.0.1 (2013-09-18)
|
24
|
+
|
25
|
+
- First release
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -6,9 +6,19 @@
|
|
6
6
|
:banana: 4011
|
7
7
|
:grapes: 4023
|
8
8
|
|
9
|
-
|
9
|
+
Data cleaned up from the [International Federation of Produce Standards](https://www.ifpsglobal.com/)
|
10
10
|
|
11
|
-
|
11
|
+
[](https://github.com/ankane/plu/actions)
|
12
|
+
|
13
|
+
## Installation
|
14
|
+
|
15
|
+
Add this line to your application’s Gemfile:
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
gem "plu"
|
19
|
+
```
|
20
|
+
|
21
|
+
## Getting Started
|
12
22
|
|
13
23
|
List known PLUs
|
14
24
|
|
@@ -30,15 +40,13 @@ PLU.new(2000).valid? # false
|
|
30
40
|
|
31
41
|
### 5-Digit PLUs
|
32
42
|
|
33
|
-
For PLUs with 5 digits, the first digit has a special meaning: 9 specifies organic
|
43
|
+
For PLUs with 5 digits, the first digit has a special meaning: 9 specifies organic.
|
34
44
|
|
35
45
|
4011 - Bananas :banana:
|
36
46
|
94011 - Organic bananas :banana:
|
37
|
-
84011 - Genetically modified bananas
|
38
47
|
|
39
48
|
```ruby
|
40
49
|
PLU.new(94011).organic? # true
|
41
|
-
PLU.new(84011).gm? # true
|
42
50
|
```
|
43
51
|
|
44
52
|
### Retailer Assigned
|
@@ -47,24 +55,6 @@ PLU.new(84011).gm? # true
|
|
47
55
|
PLU.new(3170).retailer_assigned? # true
|
48
56
|
```
|
49
57
|
|
50
|
-
## Installation
|
51
|
-
|
52
|
-
Add this line to your Gemfile:
|
53
|
-
|
54
|
-
```ruby
|
55
|
-
gem "plu"
|
56
|
-
```
|
57
|
-
|
58
|
-
And run:
|
59
|
-
|
60
|
-
```sh
|
61
|
-
bundle
|
62
|
-
```
|
63
|
-
|
64
|
-
## Resources
|
65
|
-
|
66
|
-
- [IFPS 2012 Users Guide](http://www.plucodes.com/docs/Users_Guide_July_2012_FINAL.pdf)
|
67
|
-
|
68
58
|
## History
|
69
59
|
|
70
60
|
View the [changelog](https://github.com/ankane/plu/blob/master/CHANGELOG.md)
|
@@ -77,4 +67,12 @@ Everyone is encouraged to help improve this project. Here are a few ways you can
|
|
77
67
|
- Fix bugs and [submit pull requests](https://github.com/ankane/plu/pulls)
|
78
68
|
- Write, clarify, or fix documentation
|
79
69
|
- Suggest or add new features
|
80
|
-
|
70
|
+
|
71
|
+
To get started with development:
|
72
|
+
|
73
|
+
```sh
|
74
|
+
git clone https://github.com/ankane/plu.git
|
75
|
+
cd plu
|
76
|
+
bundle install
|
77
|
+
bundle exec rake test
|
78
|
+
```
|
data/lib/plu/version.rb
CHANGED
data/lib/plu.rb
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
-
|
1
|
+
# stdlib
|
2
|
+
require "json"
|
3
|
+
|
4
|
+
# modules
|
5
|
+
require_relative "plu/version"
|
2
6
|
|
3
7
|
class PLU
|
4
8
|
def initialize(number)
|
@@ -17,23 +21,12 @@ class PLU
|
|
17
21
|
modifier == "9"
|
18
22
|
end
|
19
23
|
|
20
|
-
def gm?
|
21
|
-
modifier == "8"
|
22
|
-
end
|
23
|
-
|
24
24
|
def retailer_assigned?
|
25
25
|
name.to_s.start_with?("Retailer Assigned")
|
26
26
|
end
|
27
27
|
|
28
|
-
# TODO more items
|
29
28
|
def self.all
|
30
|
-
@all ||=
|
31
|
-
all = {}
|
32
|
-
CSV.foreach File.expand_path("../../plu_codes.csv", __FILE__), headers: true do |row|
|
33
|
-
all[row["PLU Code"]] = row["Name"]
|
34
|
-
end
|
35
|
-
all
|
36
|
-
end
|
29
|
+
@all ||= JSON.load_file(File.expand_path("../plu_codes.json", __dir__))
|
37
30
|
end
|
38
31
|
|
39
32
|
protected
|
metadata
CHANGED
@@ -1,59 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: plu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
12
|
-
dependencies:
|
13
|
-
|
14
|
-
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: rake
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ">="
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: minitest
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
|
-
description:
|
56
|
-
email: andrew@chartkick.com
|
11
|
+
date: 2024-10-23 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description:
|
14
|
+
email: andrew@ankane.org
|
57
15
|
executables: []
|
58
16
|
extensions: []
|
59
17
|
extra_rdoc_files: []
|
@@ -63,12 +21,11 @@ files:
|
|
63
21
|
- README.md
|
64
22
|
- lib/plu.rb
|
65
23
|
- lib/plu/version.rb
|
66
|
-
- plu_codes.csv
|
67
24
|
homepage: https://github.com/ankane/plu
|
68
25
|
licenses:
|
69
26
|
- MIT
|
70
27
|
metadata: {}
|
71
|
-
post_install_message:
|
28
|
+
post_install_message:
|
72
29
|
rdoc_options: []
|
73
30
|
require_paths:
|
74
31
|
- lib
|
@@ -76,15 +33,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
76
33
|
requirements:
|
77
34
|
- - ">="
|
78
35
|
- !ruby/object:Gem::Version
|
79
|
-
version: '
|
36
|
+
version: '3.1'
|
80
37
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
81
38
|
requirements:
|
82
39
|
- - ">="
|
83
40
|
- !ruby/object:Gem::Version
|
84
41
|
version: '0'
|
85
42
|
requirements: []
|
86
|
-
rubygems_version: 3.
|
87
|
-
signing_key:
|
43
|
+
rubygems_version: 3.5.16
|
44
|
+
signing_key:
|
88
45
|
specification_version: 4
|
89
46
|
summary: Price look-up codes made easy
|
90
47
|
test_files: []
|