update version to 2.0.1
This commit is contained in:
parent
566b53ab04
commit
6a5b54e125
@ -1,186 +1,36 @@
|
|||||||
%global _empty_manifest_terminate_build 0
|
%global _empty_manifest_terminate_build 0
|
||||||
Name: python-warlock
|
Name: python-warlock
|
||||||
Version: 1.3.3
|
Version: 2.0.1
|
||||||
Release: 1
|
Release: 1
|
||||||
Summary: Python object model built on JSON schema and JSON patch.
|
Summary: Python object model built on JSON schema and JSON patch.
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
URL: http://github.com/bcwaldon/warlock
|
URL: http://github.com/bcwaldon/warlock
|
||||||
Source0: https://files.pythonhosted.org/packages/c2/36/178b26a338cd6d30523246da4721b1114306f588deb813f3f503052825ee/warlock-1.3.3.tar.gz
|
Source0: https://files.pythonhosted.org/packages/de/cf/ba9ac96d09b797c377e2c12c0eb6b19565f3b2a2efb55932d319e319b622/warlock-2.0.1.tar.gz
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Warlock — self-validating Python objects using JSON schema
|
Warlock — self-validating Python objects using JSON schema
|
||||||
|
|
||||||
|
|
||||||
%package -n python3-warlock
|
%package -n python3-warlock
|
||||||
Summary: Python object model built on JSON schema and JSON patch.
|
Summary: Python object model built on JSON schema and JSON patch.
|
||||||
Provides: python-warlock
|
Provides: python-warlock
|
||||||
|
Requires: python3-jsonpatch
|
||||||
|
Requires: python3-jsonschema
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
BuildRequires: python3-setuptools
|
BuildRequires: python3-setuptools
|
||||||
|
|
||||||
%description -n python3-warlock
|
%description -n python3-warlock
|
||||||
# Warlock — self-validating Python objects using JSON schema
|
Warlock — self-validating Python objects using JSON schema
|
||||||
|
|
||||||
[][warlock]
|
|
||||||
[][warlock]
|
|
||||||
[][pypistats]
|
|
||||||
|
|
||||||
[][ci-builds]
|
|
||||||
[][coveralls]
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
Warlock is [available on PyPI][warlock]:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
pip install warlock
|
|
||||||
```
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
1) Create your schema
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> schema = {
|
|
||||||
'name': 'Country',
|
|
||||||
'properties': {
|
|
||||||
'name': {'type': 'string'},
|
|
||||||
'abbreviation': {'type': 'string'},
|
|
||||||
'population': {'type': 'integer'},
|
|
||||||
},
|
|
||||||
'additionalProperties': False,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
2) Create a model
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> import warlock
|
|
||||||
>>> Country = warlock.model_factory(schema)
|
|
||||||
```
|
|
||||||
|
|
||||||
3) Create an object using your model
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden = Country(name='Sweden', abbreviation='SE')
|
|
||||||
```
|
|
||||||
|
|
||||||
4) Let the object validate itself
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden.name = 5
|
|
||||||
Traceback (most recent call last):
|
|
||||||
File "<stdin>", line 1, in <module>
|
|
||||||
File "warlock/core.py", line 53, in __setattr__
|
|
||||||
raise InvalidOperation(msg)
|
|
||||||
warlock.core.InvalidOperation: Unable to set 'name' to '5'
|
|
||||||
|
|
||||||
>>> sweden.overlord = 'Bears'
|
|
||||||
Traceback (most recent call last):
|
|
||||||
File "<stdin>", line 1, in <module>
|
|
||||||
File "warlock/core.py", line 53, in __setattr__
|
|
||||||
raise InvalidOperation(msg)
|
|
||||||
warlock.core.InvalidOperation: Unable to set 'overlord' to 'Bears'
|
|
||||||
```
|
|
||||||
|
|
||||||
5) Generate a [JSON Patch document](http://tools.ietf.org/html/draft-ietf-appsawg-json-patch) to track changes
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden.population=9453000
|
|
||||||
>>> sweden.patch
|
|
||||||
'[{"path": "/population", "value": 9453000, "op": "add"}]'
|
|
||||||
```
|
|
||||||
|
|
||||||
[warlock]: https://pypi.org/project/warlock/
|
|
||||||
[pip]: https://pip.pypa.io/en/stable/
|
|
||||||
[ci-builds]: https://travis-ci.org/bcwaldon/warlock
|
|
||||||
[coveralls]: https://coveralls.io/github/bcwaldon/warlock?branch=master
|
|
||||||
[pypistats]: https://pypistats.org/packages/warlock
|
|
||||||
|
|
||||||
%package help
|
%package help
|
||||||
Summary: Development documents and examples for warlock
|
Summary: Development documents and examples for warlock
|
||||||
Provides: python3-warlock-doc
|
Provides: python3-warlock-doc
|
||||||
|
|
||||||
%description help
|
%description help
|
||||||
# Warlock — self-validating Python objects using JSON schema
|
Warlock — self-validating Python objects using JSON schema
|
||||||
|
|
||||||
[][warlock]
|
|
||||||
[][warlock]
|
|
||||||
[][pypistats]
|
|
||||||
|
|
||||||
[][ci-builds]
|
|
||||||
[][coveralls]
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
Warlock is [available on PyPI][warlock]:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
pip install warlock
|
|
||||||
```
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
1) Create your schema
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> schema = {
|
|
||||||
'name': 'Country',
|
|
||||||
'properties': {
|
|
||||||
'name': {'type': 'string'},
|
|
||||||
'abbreviation': {'type': 'string'},
|
|
||||||
'population': {'type': 'integer'},
|
|
||||||
},
|
|
||||||
'additionalProperties': False,
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
2) Create a model
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> import warlock
|
|
||||||
>>> Country = warlock.model_factory(schema)
|
|
||||||
```
|
|
||||||
|
|
||||||
3) Create an object using your model
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden = Country(name='Sweden', abbreviation='SE')
|
|
||||||
```
|
|
||||||
|
|
||||||
4) Let the object validate itself
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden.name = 5
|
|
||||||
Traceback (most recent call last):
|
|
||||||
File "<stdin>", line 1, in <module>
|
|
||||||
File "warlock/core.py", line 53, in __setattr__
|
|
||||||
raise InvalidOperation(msg)
|
|
||||||
warlock.core.InvalidOperation: Unable to set 'name' to '5'
|
|
||||||
|
|
||||||
>>> sweden.overlord = 'Bears'
|
|
||||||
Traceback (most recent call last):
|
|
||||||
File "<stdin>", line 1, in <module>
|
|
||||||
File "warlock/core.py", line 53, in __setattr__
|
|
||||||
raise InvalidOperation(msg)
|
|
||||||
warlock.core.InvalidOperation: Unable to set 'overlord' to 'Bears'
|
|
||||||
```
|
|
||||||
|
|
||||||
5) Generate a [JSON Patch document](http://tools.ietf.org/html/draft-ietf-appsawg-json-patch) to track changes
|
|
||||||
|
|
||||||
```python
|
|
||||||
>>> sweden.population=9453000
|
|
||||||
>>> sweden.patch
|
|
||||||
'[{"path": "/population", "value": 9453000, "op": "add"}]'
|
|
||||||
```
|
|
||||||
|
|
||||||
[warlock]: https://pypi.org/project/warlock/
|
|
||||||
[pip]: https://pip.pypa.io/en/stable/
|
|
||||||
[ci-builds]: https://travis-ci.org/bcwaldon/warlock
|
|
||||||
[coveralls]: https://coveralls.io/github/bcwaldon/warlock?branch=master
|
|
||||||
[pypistats]: https://pypistats.org/packages/warlock
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n warlock-1.3.3
|
%autosetup -n warlock-%{version}
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%py3_build
|
%py3_build
|
||||||
@ -220,5 +70,9 @@ mv %{buildroot}/doclist.lst .
|
|||||||
%{_docdir}/*
|
%{_docdir}/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Nov 01 2022 wangjunqi <wangjunqi@kylinos.cn> - 2.0.1-1
|
||||||
|
- Update package to version 2.0.1
|
||||||
|
|
||||||
* Mon Nov 23 2020 Python_Bot <Python_Bot@openeuler.org>
|
* Mon Nov 23 2020 Python_Bot <Python_Bot@openeuler.org>
|
||||||
- Package Spec generated
|
- Package Spec generated
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
BIN
warlock-2.0.1.tar.gz
Normal file
BIN
warlock-2.0.1.tar.gz
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user