sqlalchemy-state-machine 1.9.0__tar.gz → 1.11.0__tar.gz

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.
Files changed (18) hide show
  1. sqlalchemy-state-machine-1.11.0/PKG-INFO +99 -0
  2. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/README.md +1 -0
  3. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/setup.py +5 -1
  4. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine/version.py +1 -1
  5. sqlalchemy-state-machine-1.11.0/sqlalchemy_state_machine.egg-info/PKG-INFO +99 -0
  6. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine.egg-info/requires.txt +1 -1
  7. sqlalchemy-state-machine-1.9.0/PKG-INFO +0 -93
  8. sqlalchemy-state-machine-1.9.0/sqlalchemy_state_machine.egg-info/PKG-INFO +0 -93
  9. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/LICENSE +0 -0
  10. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/MANIFEST.in +0 -0
  11. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/pyproject.toml +0 -0
  12. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/setup.cfg +0 -0
  13. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine/__init__.py +0 -0
  14. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine/state_mixin.py +0 -0
  15. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine.egg-info/SOURCES.txt +0 -0
  16. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine.egg-info/dependency_links.txt +0 -0
  17. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine.egg-info/not-zip-safe +0 -0
  18. {sqlalchemy-state-machine-1.9.0 → sqlalchemy-state-machine-1.11.0}/sqlalchemy_state_machine.egg-info/top_level.txt +0 -0
@@ -0,0 +1,99 @@
1
+ Metadata-Version: 2.1
2
+ Name: sqlalchemy-state-machine
3
+ Version: 1.11.0
4
+ Summary: Helper for add transitions functionality in sqlalchemy
5
+ Home-page: https://github.com/bigbag/sqlalchemy-state-machine
6
+ Download-URL: https://pypi.python.org/pypi/sqlalchemy-state-machine
7
+ Author: Pavel Liashkov
8
+ Author-email: pavel.liashkov@protonmail.com
9
+ Maintainer: Pavel Liashkov
10
+ Maintainer-email: pavel.liashkov@protonmail.com
11
+ License: Apache License, Version 2.0
12
+ Platform: POSIX
13
+ Classifier: Development Status :: 5 - Production/Stable
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.7
16
+ Classifier: Programming Language :: Python :: 3.8
17
+ Classifier: Programming Language :: Python :: 3.9
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Operating System :: POSIX
23
+ Classifier: Topic :: Software Development
24
+ Classifier: Topic :: Software Development :: Libraries
25
+ Classifier: Environment :: Console
26
+ Classifier: Intended Audience :: Developers
27
+ Requires-Python: >=3.7
28
+ Description-Content-Type: text/markdown
29
+ License-File: LICENSE
30
+
31
+ # sqlalchemy-state-machine
32
+
33
+
34
+ [![CI](https://github.com/bigbag/sqlalchemy-state-machine/workflows/CI/badge.svg)](https://github.com/bigbag/sqlalchemy-state-machine/actions?query=workflow%3ACI)
35
+ [![codecov](https://codecov.io/gh/bigbag/sqlalchemy-state-machine/branch/main/graph/badge.svg)](https://codecov.io/gh/bigbag/sqlalchemy-state-machine)
36
+ [![pypi](https://img.shields.io/pypi/v/sqlalchemy-state-machine.svg)](https://pypi.python.org/pypi/sqlalchemy-state-machine)
37
+ [![downloads](https://img.shields.io/pypi/dm/sqlalchemy-state-machine.svg)](https://pypistats.org/packages/sqlalchemy-state-machine)
38
+ [![versions](https://img.shields.io/pypi/pyversions/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine)
39
+ [![license](https://img.shields.io/github/license/bigbag/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine/blob/master/LICENSE)
40
+
41
+ **sqlalchemy-state-machine** is a helper for add transitions functionality in sqlalchemy.
42
+
43
+ * [Project Changelog](https://github.com/bigbag/sqlalchemy-state-machine/blob/main/CHANGELOG.md)
44
+
45
+ ## Installation
46
+
47
+ sqlalchemy-state-machine is available on PyPI.
48
+ Use pip to install:
49
+
50
+ $ pip install sqlalchemy-state-machine
51
+
52
+
53
+ ## Basic Usage
54
+
55
+ ```py
56
+ import sqlalchemy as sa
57
+ from sqlalchemy.ext.declarative import declarative_base
58
+ from sqlalchemy_state_machine import StateConfig, StateMixin
59
+
60
+ Base = declarative_base()
61
+
62
+ NEW = "new"
63
+ SENT = "sent"
64
+ FAILED = "failed"
65
+
66
+ class Event(Base, StateMixin):
67
+ __tablename__ = "users"
68
+
69
+ state_config = StateConfig(
70
+ initial=NEW,
71
+ states=[NEW, SENT, FAILED],
72
+ transitions=[
73
+ ["set_sent", NEW, SENT],
74
+ ["set_failed", NEW, FAILED],
75
+ ],
76
+ )
77
+
78
+ id = sa.Column(sa.Integer, primary_key=True)
79
+ name = sa.Column(sa.String)
80
+ status = sa.Column(sa.String(), nullable=False, index=True)
81
+
82
+
83
+ sa.event.listen(Event, "init", Event.init_state_machine)
84
+ sa.event.listen(Event, "load", Event.init_state_machine)
85
+
86
+ event = Event(name="Event1")
87
+
88
+ assert event.status == NEW
89
+ assert event.set_sent()
90
+ assert event.status == SENT
91
+ ```
92
+
93
+ ## License
94
+
95
+ sqlalchemy-state-machine is developed and distributed under the Apache 2.0 license.
96
+
97
+ ## Reporting a Security Vulnerability
98
+
99
+ See our [security policy](https://github.com/bigbag/sqlalchemy-state-machine/security/policy).
@@ -10,6 +10,7 @@
10
10
 
11
11
  **sqlalchemy-state-machine** is a helper for add transitions functionality in sqlalchemy.
12
12
 
13
+ * [Project Changelog](https://github.com/bigbag/sqlalchemy-state-machine/blob/main/CHANGELOG.md)
13
14
 
14
15
  ## Installation
15
16
 
@@ -18,6 +18,10 @@ CLASSIFIERS = [
18
18
  "Programming Language :: Python :: 3.7",
19
19
  "Programming Language :: Python :: 3.8",
20
20
  "Programming Language :: Python :: 3.9",
21
+ "Programming Language :: Python :: 3.10",
22
+ "Programming Language :: Python :: 3.11",
23
+ "Programming Language :: Python :: 3.12",
24
+ "Programming Language :: Python :: 3.13",
21
25
  "Operating System :: POSIX",
22
26
  "Topic :: Software Development",
23
27
  "Topic :: Software Development :: Libraries",
@@ -41,7 +45,7 @@ setup(
41
45
  platforms=["POSIX"],
42
46
  classifiers=CLASSIFIERS,
43
47
  python_requires=">=3.7",
44
- install_requires=["SQLAlchemy>=1.4,<1.5", "transitions>=0.8,<0.10"],
48
+ install_requires=["SQLAlchemy>=1.4,<2.1", "transitions>=0.8,<0.10"],
45
49
  packages=find_packages(),
46
50
  include_package_data=True,
47
51
  zip_safe=False,
@@ -1,3 +1,3 @@
1
1
  __all__ = "VERSION"
2
2
 
3
- VERSION = "1.9.0"
3
+ VERSION = "1.11.0"
@@ -0,0 +1,99 @@
1
+ Metadata-Version: 2.1
2
+ Name: sqlalchemy-state-machine
3
+ Version: 1.11.0
4
+ Summary: Helper for add transitions functionality in sqlalchemy
5
+ Home-page: https://github.com/bigbag/sqlalchemy-state-machine
6
+ Download-URL: https://pypi.python.org/pypi/sqlalchemy-state-machine
7
+ Author: Pavel Liashkov
8
+ Author-email: pavel.liashkov@protonmail.com
9
+ Maintainer: Pavel Liashkov
10
+ Maintainer-email: pavel.liashkov@protonmail.com
11
+ License: Apache License, Version 2.0
12
+ Platform: POSIX
13
+ Classifier: Development Status :: 5 - Production/Stable
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.7
16
+ Classifier: Programming Language :: Python :: 3.8
17
+ Classifier: Programming Language :: Python :: 3.9
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Operating System :: POSIX
23
+ Classifier: Topic :: Software Development
24
+ Classifier: Topic :: Software Development :: Libraries
25
+ Classifier: Environment :: Console
26
+ Classifier: Intended Audience :: Developers
27
+ Requires-Python: >=3.7
28
+ Description-Content-Type: text/markdown
29
+ License-File: LICENSE
30
+
31
+ # sqlalchemy-state-machine
32
+
33
+
34
+ [![CI](https://github.com/bigbag/sqlalchemy-state-machine/workflows/CI/badge.svg)](https://github.com/bigbag/sqlalchemy-state-machine/actions?query=workflow%3ACI)
35
+ [![codecov](https://codecov.io/gh/bigbag/sqlalchemy-state-machine/branch/main/graph/badge.svg)](https://codecov.io/gh/bigbag/sqlalchemy-state-machine)
36
+ [![pypi](https://img.shields.io/pypi/v/sqlalchemy-state-machine.svg)](https://pypi.python.org/pypi/sqlalchemy-state-machine)
37
+ [![downloads](https://img.shields.io/pypi/dm/sqlalchemy-state-machine.svg)](https://pypistats.org/packages/sqlalchemy-state-machine)
38
+ [![versions](https://img.shields.io/pypi/pyversions/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine)
39
+ [![license](https://img.shields.io/github/license/bigbag/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine/blob/master/LICENSE)
40
+
41
+ **sqlalchemy-state-machine** is a helper for add transitions functionality in sqlalchemy.
42
+
43
+ * [Project Changelog](https://github.com/bigbag/sqlalchemy-state-machine/blob/main/CHANGELOG.md)
44
+
45
+ ## Installation
46
+
47
+ sqlalchemy-state-machine is available on PyPI.
48
+ Use pip to install:
49
+
50
+ $ pip install sqlalchemy-state-machine
51
+
52
+
53
+ ## Basic Usage
54
+
55
+ ```py
56
+ import sqlalchemy as sa
57
+ from sqlalchemy.ext.declarative import declarative_base
58
+ from sqlalchemy_state_machine import StateConfig, StateMixin
59
+
60
+ Base = declarative_base()
61
+
62
+ NEW = "new"
63
+ SENT = "sent"
64
+ FAILED = "failed"
65
+
66
+ class Event(Base, StateMixin):
67
+ __tablename__ = "users"
68
+
69
+ state_config = StateConfig(
70
+ initial=NEW,
71
+ states=[NEW, SENT, FAILED],
72
+ transitions=[
73
+ ["set_sent", NEW, SENT],
74
+ ["set_failed", NEW, FAILED],
75
+ ],
76
+ )
77
+
78
+ id = sa.Column(sa.Integer, primary_key=True)
79
+ name = sa.Column(sa.String)
80
+ status = sa.Column(sa.String(), nullable=False, index=True)
81
+
82
+
83
+ sa.event.listen(Event, "init", Event.init_state_machine)
84
+ sa.event.listen(Event, "load", Event.init_state_machine)
85
+
86
+ event = Event(name="Event1")
87
+
88
+ assert event.status == NEW
89
+ assert event.set_sent()
90
+ assert event.status == SENT
91
+ ```
92
+
93
+ ## License
94
+
95
+ sqlalchemy-state-machine is developed and distributed under the Apache 2.0 license.
96
+
97
+ ## Reporting a Security Vulnerability
98
+
99
+ See our [security policy](https://github.com/bigbag/sqlalchemy-state-machine/security/policy).
@@ -1,2 +1,2 @@
1
- SQLAlchemy<1.5,>=1.4
1
+ SQLAlchemy<2.1,>=1.4
2
2
  transitions<0.10,>=0.8
@@ -1,93 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: sqlalchemy-state-machine
3
- Version: 1.9.0
4
- Summary: Helper for add transitions functionality in sqlalchemy
5
- Home-page: https://github.com/bigbag/sqlalchemy-state-machine
6
- Author: Pavel Liashkov
7
- Author-email: pavel.liashkov@protonmail.com
8
- Maintainer: Pavel Liashkov
9
- Maintainer-email: pavel.liashkov@protonmail.com
10
- License: Apache License, Version 2.0
11
- Download-URL: https://pypi.python.org/pypi/sqlalchemy-state-machine
12
- Description: # sqlalchemy-state-machine
13
-
14
-
15
- [![CI](https://github.com/bigbag/sqlalchemy-state-machine/workflows/CI/badge.svg)](https://github.com/bigbag/sqlalchemy-state-machine/actions?query=workflow%3ACI)
16
- [![codecov](https://codecov.io/gh/bigbag/sqlalchemy-state-machine/branch/main/graph/badge.svg)](https://codecov.io/gh/bigbag/sqlalchemy-state-machine)
17
- [![pypi](https://img.shields.io/pypi/v/sqlalchemy-state-machine.svg)](https://pypi.python.org/pypi/sqlalchemy-state-machine)
18
- [![downloads](https://img.shields.io/pypi/dm/sqlalchemy-state-machine.svg)](https://pypistats.org/packages/sqlalchemy-state-machine)
19
- [![versions](https://img.shields.io/pypi/pyversions/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine)
20
- [![license](https://img.shields.io/github/license/bigbag/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine/blob/master/LICENSE)
21
-
22
- **sqlalchemy-state-machine** is a helper for add transitions functionality in sqlalchemy.
23
-
24
-
25
- ## Installation
26
-
27
- sqlalchemy-state-machine is available on PyPI.
28
- Use pip to install:
29
-
30
- $ pip install sqlalchemy-state-machine
31
-
32
-
33
- ## Basic Usage
34
-
35
- ```py
36
- import sqlalchemy as sa
37
- from sqlalchemy.ext.declarative import declarative_base
38
- from sqlalchemy_state_machine import StateConfig, StateMixin
39
-
40
- Base = declarative_base()
41
-
42
- NEW = "new"
43
- SENT = "sent"
44
- FAILED = "failed"
45
-
46
- class Event(Base, StateMixin):
47
- __tablename__ = "users"
48
-
49
- state_config = StateConfig(
50
- initial=NEW,
51
- states=[NEW, SENT, FAILED],
52
- transitions=[
53
- ["set_sent", NEW, SENT],
54
- ["set_failed", NEW, FAILED],
55
- ],
56
- )
57
-
58
- id = sa.Column(sa.Integer, primary_key=True)
59
- name = sa.Column(sa.String)
60
- status = sa.Column(sa.String(), nullable=False, index=True)
61
-
62
-
63
- sa.event.listen(Event, "init", Event.init_state_machine)
64
- sa.event.listen(Event, "load", Event.init_state_machine)
65
-
66
- event = Event(name="Event1")
67
-
68
- assert event.status == NEW
69
- assert event.set_sent()
70
- assert event.status == SENT
71
- ```
72
-
73
- ## License
74
-
75
- sqlalchemy-state-machine is developed and distributed under the Apache 2.0 license.
76
-
77
- ## Reporting a Security Vulnerability
78
-
79
- See our [security policy](https://github.com/bigbag/sqlalchemy-state-machine/security/policy).
80
-
81
- Platform: POSIX
82
- Classifier: Development Status :: 5 - Production/Stable
83
- Classifier: Programming Language :: Python :: 3 :: Only
84
- Classifier: Programming Language :: Python :: 3.7
85
- Classifier: Programming Language :: Python :: 3.8
86
- Classifier: Programming Language :: Python :: 3.9
87
- Classifier: Operating System :: POSIX
88
- Classifier: Topic :: Software Development
89
- Classifier: Topic :: Software Development :: Libraries
90
- Classifier: Environment :: Console
91
- Classifier: Intended Audience :: Developers
92
- Requires-Python: >=3.7
93
- Description-Content-Type: text/markdown
@@ -1,93 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: sqlalchemy-state-machine
3
- Version: 1.9.0
4
- Summary: Helper for add transitions functionality in sqlalchemy
5
- Home-page: https://github.com/bigbag/sqlalchemy-state-machine
6
- Author: Pavel Liashkov
7
- Author-email: pavel.liashkov@protonmail.com
8
- Maintainer: Pavel Liashkov
9
- Maintainer-email: pavel.liashkov@protonmail.com
10
- License: Apache License, Version 2.0
11
- Download-URL: https://pypi.python.org/pypi/sqlalchemy-state-machine
12
- Description: # sqlalchemy-state-machine
13
-
14
-
15
- [![CI](https://github.com/bigbag/sqlalchemy-state-machine/workflows/CI/badge.svg)](https://github.com/bigbag/sqlalchemy-state-machine/actions?query=workflow%3ACI)
16
- [![codecov](https://codecov.io/gh/bigbag/sqlalchemy-state-machine/branch/main/graph/badge.svg)](https://codecov.io/gh/bigbag/sqlalchemy-state-machine)
17
- [![pypi](https://img.shields.io/pypi/v/sqlalchemy-state-machine.svg)](https://pypi.python.org/pypi/sqlalchemy-state-machine)
18
- [![downloads](https://img.shields.io/pypi/dm/sqlalchemy-state-machine.svg)](https://pypistats.org/packages/sqlalchemy-state-machine)
19
- [![versions](https://img.shields.io/pypi/pyversions/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine)
20
- [![license](https://img.shields.io/github/license/bigbag/sqlalchemy-state-machine.svg)](https://github.com/bigbag/sqlalchemy-state-machine/blob/master/LICENSE)
21
-
22
- **sqlalchemy-state-machine** is a helper for add transitions functionality in sqlalchemy.
23
-
24
-
25
- ## Installation
26
-
27
- sqlalchemy-state-machine is available on PyPI.
28
- Use pip to install:
29
-
30
- $ pip install sqlalchemy-state-machine
31
-
32
-
33
- ## Basic Usage
34
-
35
- ```py
36
- import sqlalchemy as sa
37
- from sqlalchemy.ext.declarative import declarative_base
38
- from sqlalchemy_state_machine import StateConfig, StateMixin
39
-
40
- Base = declarative_base()
41
-
42
- NEW = "new"
43
- SENT = "sent"
44
- FAILED = "failed"
45
-
46
- class Event(Base, StateMixin):
47
- __tablename__ = "users"
48
-
49
- state_config = StateConfig(
50
- initial=NEW,
51
- states=[NEW, SENT, FAILED],
52
- transitions=[
53
- ["set_sent", NEW, SENT],
54
- ["set_failed", NEW, FAILED],
55
- ],
56
- )
57
-
58
- id = sa.Column(sa.Integer, primary_key=True)
59
- name = sa.Column(sa.String)
60
- status = sa.Column(sa.String(), nullable=False, index=True)
61
-
62
-
63
- sa.event.listen(Event, "init", Event.init_state_machine)
64
- sa.event.listen(Event, "load", Event.init_state_machine)
65
-
66
- event = Event(name="Event1")
67
-
68
- assert event.status == NEW
69
- assert event.set_sent()
70
- assert event.status == SENT
71
- ```
72
-
73
- ## License
74
-
75
- sqlalchemy-state-machine is developed and distributed under the Apache 2.0 license.
76
-
77
- ## Reporting a Security Vulnerability
78
-
79
- See our [security policy](https://github.com/bigbag/sqlalchemy-state-machine/security/policy).
80
-
81
- Platform: POSIX
82
- Classifier: Development Status :: 5 - Production/Stable
83
- Classifier: Programming Language :: Python :: 3 :: Only
84
- Classifier: Programming Language :: Python :: 3.7
85
- Classifier: Programming Language :: Python :: 3.8
86
- Classifier: Programming Language :: Python :: 3.9
87
- Classifier: Operating System :: POSIX
88
- Classifier: Topic :: Software Development
89
- Classifier: Topic :: Software Development :: Libraries
90
- Classifier: Environment :: Console
91
- Classifier: Intended Audience :: Developers
92
- Requires-Python: >=3.7
93
- Description-Content-Type: text/markdown