state_machine_enum 0.1.0 → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c62f9ef7d3062c2cfec2c914d2b4bdcb8dbd38621e7317af107d0ce65edf88ef
4
- data.tar.gz: 98f294f99cb3943dd145874afef82add8533816a863a35411511cc32a7447826
3
+ metadata.gz: 4902a42140176efda107ea4e5caef0b4bd3f8e64554b2fde61f3507e51e80d96
4
+ data.tar.gz: 9f85490534c6667640cd050e13eeaf7ce202bbd5757e7ade6cd4d6cb4c191b90
5
5
  SHA512:
6
- metadata.gz: 213b039f7fe5b20f9a68306f17ae10d044bf56107d33d4cd0ad0c03c86d3c01a3bb963df8ccc117b3dda9a1cfe324dc5647adb77da0c0f33c57f293153a079ec
7
- data.tar.gz: 490ec1ce157ce84481dd36e0973fa2601cc1638503b2769f04d60010527b81db4c9f208b1d6dfe285b81e65e143cfbaec802e55b8b6ee047af9a672bd0bedc3d
6
+ metadata.gz: 10ae6f605953606f563a80aa15b9cc7a70eedc73593d152aba3d5ab773b0243002dc13b0f66888e83008d6c0a341bee762a5bdbde61712e2310833b1345bc067
7
+ data.tar.gz: 8b7c7b452a1e0b962b9ef2f643dcdd220597474c87269dc4565bb5a8974af000e78bed0f2c41f8da40adf663a51bcdd21d0a6b7bb9bb3bab0f8a597c36d90032
data/CHANGELOG.md ADDED
@@ -0,0 +1,24 @@
1
+ # Changelog
2
+ All notable changes to this project will be documented in this file.
3
+
4
+ This format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5
+
6
+ ## 0.1.2
7
+
8
+ ### Added
9
+
10
+ - basic tests for a library
11
+
12
+ ### Changed
13
+
14
+ - #ensure_<attribute>_may_transition_to! method now actually verifies that an attribute can transition to a new state.
15
+
16
+ ## 0.1.1
17
+
18
+ ### Added
19
+
20
+ - Provide real authorts of this gem.
21
+
22
+ ## 0.1.0
23
+
24
+ - Initial release
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module StateMachineEnum
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.2"
5
5
  end
@@ -114,6 +114,7 @@ module StateMachineEnum
114
114
  define_method(:"ensure_#{attribute_name}_may_transition_to!") do |next_state|
115
115
  val = self[attribute_name]
116
116
  raise InvalidState, "#{attribute_name} already is #{val.inspect}" if next_state.to_s == val
117
+ raise InvalidState, "#{attribute_name} may not transition from #{val.inspect} to #{next_state.inspect}" unless collector.may_transition?(val, next_state)
117
118
  end
118
119
 
119
120
  define_method(:"#{attribute_name}_may_transition_to?") do |next_state|
metadata CHANGED
@@ -1,38 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: state_machine_enum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
+ - Julik Tarkhanov
8
+ - Sebastian van Hesteren
7
9
  - Stanislav Katkov
8
10
  autorequire:
9
- bindir: exe
11
+ bindir: bin
10
12
  cert_chain: []
11
- date: 2024-06-07 00:00:00.000000000 Z
13
+ date: 2024-06-18 00:00:00.000000000 Z
12
14
  dependencies:
13
15
  - !ruby/object:Gem::Dependency
14
16
  name: activesupport
15
17
  requirement: !ruby/object:Gem::Requirement
16
18
  requirements:
17
- - - ">="
19
+ - - "~>"
18
20
  - !ruby/object:Gem::Version
19
- version: '6.0'
21
+ version: '7'
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
23
25
  requirements:
24
- - - ">="
26
+ - - "~>"
25
27
  - !ruby/object:Gem::Version
26
- version: '6.0'
28
+ version: '7'
29
+ - !ruby/object:Gem::Dependency
30
+ name: sqlite3
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - "~>"
34
+ - !ruby/object:Gem::Version
35
+ version: '1.4'
36
+ type: :development
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.4'
43
+ - !ruby/object:Gem::Dependency
44
+ name: activerecord
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '7'
50
+ type: :development
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '7'
27
57
  description: Concern that makes it easy to define and enforce possibe state transitions
28
58
  for a field/object
29
59
  email:
60
+ - julik@cheddar.me
61
+ - sebastian@cheddar.me
30
62
  - skatkov@cheddar.me
31
63
  executables: []
32
64
  extensions: []
33
65
  extra_rdoc_files: []
34
66
  files:
35
67
  - ".standard.yml"
68
+ - CHANGELOG.md
36
69
  - LICENSE.txt
37
70
  - README.md
38
71
  - Rakefile
@@ -45,6 +78,7 @@ licenses:
45
78
  metadata:
46
79
  homepage_uri: https://cheddar.me
47
80
  source_code_uri: https://github.com/cheddar-me/state_machine_enum
81
+ changelog_uri: https://github.com/cheddar-me/state_machine_enum/blob/main/CHANGELOG.md
48
82
  post_install_message:
49
83
  rdoc_options: []
50
84
  require_paths:
@@ -60,7 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
60
94
  - !ruby/object:Gem::Version
61
95
  version: '0'
62
96
  requirements: []
63
- rubygems_version: 3.5.3
97
+ rubygems_version: 3.5.9
64
98
  signing_key:
65
99
  specification_version: 4
66
100
  summary: Define possible state transitions for a field