Releases: iotaledger/iota.py
PyOTA 3.1.0-beta1
Changes
Compatibility with IRI 1.8.6:
- Remove
getTips
command. #318 - Remove
threshold
parameter fromget_ balances
. #315 - Remove
get_latest_inclusion_states
command. #288 - Remove
tips
parameter fromget_inclusion_states
. #288
Additional changes:
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
- PyOTA-3.1.0b1.tar.gz: 7e2bd201ecbf9f4ada462a92226c76d5ed826529f7bf3aa87ead9b8dbfc4cdc1
- PyOTA-3.1.0b1-py2.py3-none-any.whl: 5e57a6f80345a4a8a1cf16a192922b7b4afb15fe44badc93a8b7b7247bc6d629
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
:warning::construction: **The IOTA client libraries (including PyOTA) are not considered production ready yet. Use them with care in production environments.**:construction::warning:
# Changes
Compatibility with IRI 1.8.6:
- - Remove `getTips` command. #318
- - Remove `threshold` parameter from `get_ balances`. #315
- - Remove `get_latest_inclusion_states` command. #288
- - Remove `tips` parameter from `get_inclusion_states`. #288
Additional changes:
- - Add `is_confirmed` alias for `get_inclusion_states`. #320
- - Update response filter of `get_node_info`. #334
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.py/issues/) as soon as possible.
* PyOTA-3.1.0b1.tar.gz: 7e2bd201ecbf9f4ada462a92226c76d5ed826529f7bf3aa87ead9b8dbfc4cdc1
* PyOTA-3.1.0b1-py2.py3-none-any.whl: 5e57a6f80345a4a8a1cf16a192922b7b4afb15fe44badc93a8b7b7247bc6d629
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl7YxzcACgkQgxYDHL9a
D3IPqxAAjw7sPNp5nH2BKGW32hPY1v50+XI/88K7mHRlcKOubzleWmzdk9qUelKW
ADaEpjv0Y4hdM3jGsxaxJGjydVMxpWPwRwmBo+yV07HscwGSnxRIzSaqBU/onzEf
Nj0HmnAjoW+ArR/lZrFEtYIVuFiUuy7xVgoaYt8uzSnfy6YZfOYAjVzgTTVsjRA8
RIoKZM5UoHONSiC0Wk77ijA5qHWdCw1w29sS1gjRNNIHTBXr0Mk87RMGNxBa2Bif
sdtU6d2m8nwCSq62u85hhXwo2ovu7C0ysgWGAHgDwFl2lzGi7jyuOc24IX0NPJRQ
TPz6AroZpHaD9DEkLur5OQwD74jE9AsWF5bE0UeMu6rORISemRTfnRQSvGFUYJP/
pLFTdt7ItH9VT269yz3DXrVBhEXrpuD0kCMpBQxeF38SI5kL8NtPExB4JD7PxsXA
j9exCHwXGn9yJ3qRPZNWYoaTzQOa1AST0hKhOh4Cw73YqX3/oGNkAVXyvQgrIEwJ
db2EVhAVYFKhvw7tpIYcDaqwitRLDhoN6EKPrgZfIRFvuq3lvvnXDxOM4tR/S1su
hp5TnRikStuyO21Djgf+7GAnkUwxip5FjzhG/U4aGiK2mnKt4UaC/mpiRGkX33li
ZLa/dLZcA4NWIkxpYrYpBKn8lZ+nm0Dob+dqTayrBYdi317IY+g=
=XcoV
-----END PGP SIGNATURE-----
PyOTA 3.0.0-beta2
Documentation changes
- Update typo in documentation example code. #325
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
- PyOTA-3.0.0b2.tar.gz: 7f00c678557daa58d849cb5d32ad6b86533653706e270a88f756ae2d900753a6
- PyOTA-3.0.0b2-py2.py3-none-any.whl: b9995091b4da3600975b948f25cf9c9800c06275841fea93ce401a3b84583de1
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
:warning::construction: **The IOTA client libraries (including PyOTA) are not considered production ready yet. Use them with care in production environments.**:construction::warning:
# Documentation changes
- - Update typo in documentation example code. #325
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.py/issues/) as soon as possible.
* PyOTA-3.0.0b2.tar.gz: 7f00c678557daa58d849cb5d32ad6b86533653706e270a88f756ae2d900753a6
* PyOTA-3.0.0b2-py2.py3-none-any.whl: b9995091b4da3600975b948f25cf9c9800c06275841fea93ce401a3b84583de1
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl6oFsEACgkQgxYDHL9a
D3J7Og/5AclLrbOhC2VScYnpgag9pnW/g3CoOZO7dpisc+lNb10MN+elpNLNmL4m
/jmi+gSyNc58cySUWWeI1dJ01IKRtuPoN61NPZb7xDGv5gukO3anyWkFRBzl5f++
3yCHdSA1cTCmcU0xOfR8Ksjyz39tH5MurcH6+bJ8oBPrYJURp2unCMBDuhQanvyA
w68Uqt3h+lwAQ1bRt50QTUFAmUX70/uZ5Eh0ZAHjVRLniZtaJy0vydYv2f+fNxxS
U7h6f8ekRsGmU702KMAaKU10+gbo3tTowqB6WOOggFzCn4d6uuCqRpo5azfOTitm
x1DC+eeLaimtsoAEqQv/1ZB7EQ3GvxVi928WSbtmjHRl1F8Y5UCv3ggLAcZ0gr3f
TW/csbJoDx6ApNGzx7dp6f2q1/XwQ4nIK0MD3QYMrQnvKqIyJpabGn9L0pRIkO8q
FjeMcd/lmmyCPj10nKJ9ItjvzNIw6UotR1Jm0nbW738kTKi1FR6pOF/vQ1sq17nw
5/zA2VkURnkZcWT5eiBlQ8c5RR3oyWplJfLYf5ZhdX9SnkwDES//TSBWWyBFiT1d
IISxuwtauOm1Fxt0wnybfj2gIvWyEpW9lydXCU1MqwxbHHJ/+cNOceQSA1k/U+HK
2fQuvlWYC6GtDoGX9KHm/6sqhqySLGqCgJvoenWmo9cFPcVMhbQ=
=I80N
-----END PGP SIGNATURE-----
PyOTA v3.0.0-beta1
❗❗❗
This release contains several breaking changes, in particular dropping support for Python versions older than 3.6.0. This includes Python 2!
❗❗❗
What's new?
-
⚠️ Remove Python 2 support! From now on, PyOTA is ONLY compatible with Python 3.6+!⚠️ -
Refactor API for asynchronous operation, new APIs:
AsyncIota
andAsyncStrictIota
. User can choose between synchronousIota
api and asynchronousAsyncIota
api. #301 -
Rewrite networking layer for async with
httpx
, improve networking with connection pooling. #301 -
Make underlying PyOTA commands coroutines, speedups for synchronous API calls as well. #301
-
Python 2 code clean-up, adjust coding style to Python 3 conventions. #317
-
Python 3 style type annotations to make source code more readable and maintainable. #321
-
Remove old dependencies:
requests
,six
, etc. #301 -
Rename
testnet
todevnet
. #298 -
Fix error message in
promote_transaction
API call. #313
Documentation changes
- Update docs about dropping Python 2 support. #304
- Update docs with asynchronous capabilities. #304
- New tutorial: Tutorial 8: Async Send and Monitor. #312
- Add section Creating Transfers with infographic. #316
- Update contributing guidelines, add github templates for issues and pull requests. #319 thx @JakeSCahill !
- Fix bug in Tutorial 7. #303
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
- PyOTA-3.0.0b1.tar.gz: fea8eab71bba34d5d47e98c4d0e8c2ba76c197a5585cb64a17d7b142ea2dca27
- PyOTA-3.0.0b1-py2.py3-none-any.whl: 56ec7bf9ce9b49b2c3551a704ee2cdb652a7465f4523b5db0cbd874c2fdff458
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
:warning::construction: **The IOTA client libraries (including PyOTA) are not considered production ready yet. Use them with care in production environments.**:construction::warning:
:heavy_exclamation_mark::heavy_exclamation_mark::heavy_exclamation_mark:
**This release contains several breaking changes and deprecate support for Python versions older, than 3.6.0.**
:heavy_exclamation_mark::heavy_exclamation_mark::heavy_exclamation_mark:
# What's new?
- - :warning: **Remove Python 2 support! From now on, PyOTA is ONLY compatible with Python 3.6+!** :warning:
- - Refactor API for asynchronous operation, new APIs: `AsyncIota` and `AsyncStrictIota`. User can choose between synchronous `Iota` api and asynchronous `AsyncIota` api. #301
- - Rewrite networking layer for async with `httpx`, improve networking with connection pooling. #301
- - Make underlying PyOTA commands coroutines, speedups for synchronous API calls as well. #301
- - Python 2 code clean-up, adjust coding style to Python 3 conventions. #317
- - Python 3 style type annotations to make source code more readable and maintainable. #321
- - Remove old dependencies: `requests`, `six`, etc. #301
- - Rename `testnet` to `devnet`. #298
- - Fix error message in `promote_transaction` API call. #313
# Documentation changes
- - Update docs about dropping Python 2 support. #304
- - Update docs with [asynchronous capabilities](https://pyota.readthedocs.io/en/latest/api.html). #304
- - New tutorial: [Tutorial 8: Async Send and Monitor](https://pyota.readthedocs.io/en/latest/tutorials.html#send-and-monitor-concurrently). #312
- - Add section [Creating Transfers](https://pyota.readthedocs.io/en/latest/transfers.html) with infographic. #316
- - Update contributing guidelines, add github templates for issues and pull requests. #319 thx @JakeSCahill !
- - Fix bug in Tutorial 7. #303
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.py/issues/) as soon as possible.
* PyOTA-3.0.0b1.tar.gz: fea8eab71bba34d5d47e98c4d0e8c2ba76c197a5585cb64a17d7b142ea2dca27
* PyOTA-3.0.0b1-py2.py3-none-any.whl: 56ec7bf9ce9b49b2c3551a704ee2cdb652a7465f4523b5db0cbd874c2fdff458
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl50wUIACgkQgxYDHL9a
D3JKTRAArbPjbkKtg38H9OMMq5jS6K4a6qQieurF7rb0mEsYQnmQ6JM6dZVkmHxU
ZGIOuHiFflzHe82vSI3TnF8ccwV5bTKAhrsMeKq5biNJweR5/+C6b7dp7lobQT1I
ZaFnjDQ6YbTeR6DU8qETeJEhJR1y4R2AZeuAIJwM04kh+P/rYbk21/Di9XxxDIXg
On9yj0KhDRKLpaEUekAACLMWD43xO9JhRp+0/NsHdkSpTVYsbPlC/cvZr4/U5XJS
wf3M/NyPRglmPCi18HhojlCcIOm1CHXFuw0hOgH0r3U2BhyEfkfki+rQ8Egn37J7
2TRxSY7YVO3sdnYbQ1TULdqDfVDqx+X1Wzk6AUjFidAy91oOffLj5x9jVOtbRdPA
Dbbb3BJLTygFaqx06ZsWEIwaxXQLQad//UbUNFmYhr+dNeVUv4k3AkLDGqUhIQq/
TvcVykU8Cn/GwMXhukdLlTCYemsFguKH4Cjq1J1raF4xoQRMOhf7CzaQhvp6XIwP
3UWiqpgoiQbiKMBEwye1+hR9jt9adBezQKa1FS2iPMDAj66jYnMxMj8ibwWFjYs0
8KFZLsJ1zr/7l1E64PSG+iYKBFGuSvg8A4FDUidMUI/kUjxbVJnmgGv8bABK+7HP
e3mgnkPFSHbR7oTqgFNMKWb6FlgTGpJbCXDYsyHpsIfSG1FojIg=
=Vjim
-----END PGP SIGNATURE-----
PyOTA v2.3.0-beta1
Feature Changes
- Subclasses of
TryteString
generate appropriate length withrandom()
. [#166] (thx @rpitonak for the original implementation! ) traverse_bundle
(andget_bundles
) extended API command throws error when can't fetch transactions in the bundle from the node. [#291]get_bundles
can now return multiple bundles when called with multiple tail transaction hashes. [#250] Note, that input argument changes from a single transaction hash to a list of transaction hashes!
Documentation Changes
- New README file with unified IOTA library header on GitHUb landing page. (thx @JakeSCahill)
- Updates on how to handle snapshots. [#46]
- New page
Tutorials
in PyOTA documentation with step-by-step walk through examples. [#284]
Check out the new Tutorials here!
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
- PyOTA-2.3.0b1.tar.gz: 3a5c3c82b4b3dfab91ec1c4214594894c70ca44044179381af9aedda58d628e1
- PyOTA-2.3.0b1-py2.py3-none-any.whl: aceaf7ed8a27fa5201e5bfd85b1d3b078c469ecc66ea61c319ccb614f52271d7
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
:warning::construction: **The IOTA client libraries (including PyOTA) are not considered production ready yet. Use them with care in production environments.**:construction::warning:
# Feature Changes
- - Subclasses of `TryteString` generate appropriate length with `random()`. [#166] (thx @rpitonak for the original implementation! )
- - `traverse_bundle` (and `get_bundles`) extended API command throws error when can't fetch transactions in the bundle from the node. [#291]
- - `get_bundles` can now return multiple bundles when called with multiple tail transaction hashes. [#250] **Note, that input argument changes from a single transaction hash to a list of transaction hashes!**
# Documentation Changes
- - New README file with unified IOTA library header on GitHUb landing page. (thx @JakeSCahill)
- - Updates on how to handle snapshots. [#46]
- - New page `Tutorials` in PyOTA documentation with step-by-step walk through examples. [#284]
[Check out the new Tutorials here!](https://pyota.readthedocs.io/en/latest/tutorials.html#)
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.3.0b1.tar.gz: 3a5c3c82b4b3dfab91ec1c4214594894c70ca44044179381af9aedda58d628e1
* PyOTA-2.3.0b1-py2.py3-none-any.whl: aceaf7ed8a27fa5201e5bfd85b1d3b078c469ecc66ea61c319ccb614f52271d7
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl4uvlgACgkQgxYDHL9a
D3JlIxAAn3fHGFe7ouy/6nBjUq1aXvBF7UkQA2FdLmJ+px3LRUCC4M6W9b1b5NJS
Wah3sXJ2ERdBlzTvtNKy6VkbYuTTT9i3tvslKYwWA19iJgFJTITmpdve2Z31vK1H
qZ9EQqWqhl0g0CMzJ92Gh0yCN/5ad9j5ndwCKtdBx/b2ppZ4MBo7Hpz4tAjsaB9P
zGjNB6a7zks5BkST9X0ld8OgLJRYGoHWRKr117JHxwCrZwP35X9eqU1KXJG9F4sy
/tI5Vb+q4jZpkENeyQMxr7kHZ3zKtxLJy/2dLnSFSB7R/abptJJZRe8a6iy7+tg+
6BvmAOoia+pUBezc3g9wYN5dDEPO6Ck+eurh1UBszM9Rno1ZdQP1GAjxlhx2X2Cp
3WZJr9retys0XERQmv9NW+bXujouBQx7l753+cvIKUee+D01CKkMND099z9HFl/5
A+/LqKOK/cX2FldgQxviTuVsnSjOQDO1L22CK2w7oFf1udiC49Na5duEKil9P1Kw
HhEEaI4zqdt8u29/zPwOkDgnJEwUhlbWpyC6L9hF7Ervp+JGNVeD24EtC/6pIYp0
7psZ+MGYCngVMltasgnJUS31XR/g308YH5Edp7B2JtHOXbpDC5Li/xDRyb2kRJCc
hbCJ+RurX8CxuoINHzhKgvtVhlVQkBBUvPBbHs6h5cB87AAOjSY=
=pd2Q
-----END PGP SIGNATURE-----
PyOTA v2.2.0-beta1
Feature Changes
-
New
broadcast_bundle
extended API command. [#246]- As part of the extended api
Iota
class, this function takes a tail transaction hash of a bundle and re-broadcasts the entire bundle.
- As part of the extended api
-
New
is_promotable
extended API command. [#25pof the transactions fetched from the Tangle with
getTrytes`.- If all tails are promotable, the returned
dict
contains only apromotable
key andTrue
value. If any of the tails are not promotable,promotable
isFalse
and theinfo
key contains information about what went wrong.
- If all tails are promotable, the returned
-
Refactor, new
traverse_bundle
extended API command. [#252]- Given a tail transaction hash, fetches the bundle from the Tangle.
- The difference between
get_bundles
andtraverse_bundle
is subtle:get_bundles
also validates the fetched bundle.
-
New
add_signature_or_message
method forProposedBundle
class. [#253]- The method can insert custom messages or signatures into transactions in a ProposedBundle object. Must be called before finalization of the bundle.
-
New
add_checksum
andremove_checksum
methods forAddress
class. [#254]add_checksum
: Appends a valid checksum to theAddress
object.Address.checksum
attribute is updated and checksum trytes are appended to internal tryte buffer.remove_checksum
: Slices off the checksum from anAddress
object.Address.checksum
attribute is updated (to valueNone
) and internal tryte buffer is modified to hold only the 81 original address trytes.
-
Expose
Seed
in top leveliota
package.- Simply use
from iota import Seed
.
- Simply use
-
Add
were_addresses_spent_from
check toiter_used_addresses
andget_new_addresses
. [#244] thx @pdecol!-
So far only
findTransactions
check was made initer_used_addresses
andget_new_addresses
. -
With these changes, a used address becomes:
- an address that has transaction(s) associated with it on the Tangle,
- OR was ever spent from.
-
A new address becomes:
- an address that has no transaction(s) associated with it on the Tangle,
- AND was never spent from.
-
-
Code cleanup and refactoring of
commands
. [#275] -
Remove support for
SandboxAdapter
. [#273]
Documentation Changes [#268]
Check out the new documentation at: https://pyota.readthedocs.io/en/latest/
- Introduce
autodoc
support for Sphinx. - Restructure and rewrite public API documentation:
- API classes,
- Core API methods,
- Extended API methods.
- Build docs during Travis CI build to catch possible errors.
- Add
Basic Concepts
page to docs. - Complete rewrite of
PyOTA Types
page. - Improve
Generating Addresses
page, add figure and more info. - Improve
Adapters and Wrappers
page. - Add
PyOTA Commands
page, intended for advanced users/developers of the lib.
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
- PyOTA-2.2.0b1.tar.gz: f67645e94d66316d4e7cfb96e3749828cf321aaabbae04e0ce368224ab4ed7bd
- PyOTA-2.2.0b1-py2.py3-none-any.whl: 2d1760a29464237c02b69bf08d0d5723645206158159730f9cd0c4db55c70e0a
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
:warning::construction: **The IOTA client libraries (including PyOTA) are not considered production ready yet. Use them with care in production environments.**:construction::warning:
# Feature Changes
- - New `broadcast_bundle` extended API command. [#246]
- As part of the extended api `Iota` class, this function takes a tail transaction hash of a bundle and re-broadcasts the entire bundle.
- - New `is_promotable` extended API command. [#25p` of the transactions fetched from the Tangle with `getTrytes`.
- If **all** tails are promotable, the returned `dict` contains only a `promotable` key and `True` value. If **any** of the tails are not promotable, `promotable` is `False` and the `info` key contains information about what went wrong.
- - Refactor, new `traverse_bundle` extended API command. [#252]
- Given a tail transaction hash, fetches the bundle from the Tangle.
- The difference between `get_bundles` and `traverse_bundle` is subtle: `get_bundles` also validates the fetched bundle.
- - New `add_signature_or_message` method for `ProposedBundle` class. [#253]
- The method can insert custom messages or signatures into transactions in a ProposedBundle object. Must be called before finalization of the bundle.
- - New `add_checksum` and `remove_checksum` methods for `Address` class. [#254]
- ``add_checksum``: Appends a valid checksum to the ``Address`` object. ``Address.checksum`` attribute is updated and checksum trytes are appended to internal tryte buffer.
- ``remove_checksum``: Slices off the checksum from an ``Address`` object. ``Address.checksum`` attribute is updated (to value ``None``) and internal tryte buffer is modified to hold only the 81 original address trytes.
- - Expose `Seed` in top level `iota` package.
- Simply use `from iota import Seed`.
- - Add `were_addresses_spent_from` check to `iter_used_addresses` and `get_new_addresses`. [#244] thx @pdecol!
- So far only `findTransactions` check was made in `iter_used_addresses` and `get_new_addresses`.
- With these changes, a **used address** becomes:
- an address that has transaction(s) associated with it on the Tangle,
- OR was ever spent from.
- A **new address** becomes:
- an address that has no transaction(s) associated with it on the Tangle,
- AND was never spent from.
- - Code cleanup and refactoring of `commands`. [#275]
- - Remove support for `SandboxAdapter`. [#273]
# Documentation Changes [#268]
### Check out the new documentation at: https://pyota.readthedocs.io/en/latest/
- - Introduce `autodoc` support for Sphinx.
- - Restructure and rewrite public API documentation:
- API classes,
- Core API methods,
- Extended API methods.
- - Build docs during Travis CI build to catch possible errors.
- - Add `Basic Concepts` page to docs.
- - Complete rewrite of `PyOTA Types` page.
- - Improve `Generating Addresses` page, add figure and more info.
- - Improve `Adapters and Wrappers` page.
- - Add `PyOTA Commands` page, intended for advanced users/developers of the lib.
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.2.0b1.tar.gz: f67645e94d66316d4e7cfb96e3749828cf321aaabbae04e0ce368224ab4ed7bd
* PyOTA-2.2.0b1-py2.py3-none-any.whl: 2d1760a29464237c02b69bf08d0d5723645206158159730f9cd0c4db55c70e0a
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl3w9tAACgkQgxYDHL9a
D3JnhQ/+I8+ZQHy3O54WSUNxkwnBnbV9HETTPcWFPR+3ZyFJ0C4hRnopr8/wpf2P
t7QeRuSnxWAktJbRZ+mEp8PRQAA8NQLbONBKEWuQeiTTA1URLnQxlc+2qu7hU7+D
SxvblDD1dFX1+XpLys1JUhXfvxonhFFWoJP3Vzo+9GH85DfIKJGgnEmOgRguifa+
Nbl8vOUedYHiqt4ZU4qCTvtx/jvtm8qAWtNvWp/qVMtGZNJOpaCVb8QhZ8axmgIs
uzC488OvuA+Cau+QadyHj6pvleeN8M1DTkwMytofsUcQuy/IWJb20Eh+52GJsSJl
JNGcW+4Vt8+1uM2RgBVjAfdazgncg+BE4P2tX363NuZ99N+eTVwc5fpA1if3hfTk
yls+23mboBBKZohgUQJJqQxI5kjiZUblcVRPFBF+BHFWrI2QIIyLDZhF4W77Kivb
HtfzcxvUeKGVfYnj4ukmJwyHk+f0zBY5q5MGodZuygwsrVMBgVtYpepFfLG3aKoH
u/rvbajprW8gCnIdQz43BfmBHtBm/J2/WEhhbmgS/luMS9lYliZ2dTNqKsrwtf/7
V3/WqBk4nE0AaxzFOsNSVwR3/qjUEYBwKzwFjRlgfCtKERwdKXEo+An7BxWqPsfY
sNB+y5QWZFww+CxbBr/ol1npcbAXSaFaMcxOapT25VEYnYp93mM=
=ILD9
-----END PGP SIGNATURE-----
PyOTA 2.1.0
- Rename repo to iota.py
- Update links in documentation
- Refactored repeated filter logic into macro (thanks @todofixthis )
- [#241] New extended API command: get_transaction_objects
- [#139 #228] Introduce Local Proof-of-Work calculation via PyOTA-PoW
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
- - Rename repo to iota.py
- - Update links in documentation
- - Refactored repeated filter logic into macro (thanks @todofixthis )
- - [#241] New extended API command: get_transaction_objects
- - [#139 #228] Introduce Local Proof-of-Work calculation via iotaledger/ccurl.interface.py
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.1.0.tar.gz: 7da3b479fbe5421d28324ddd106808c27805a415c92b302d037185ad4d3547f6
* PyOTA-2.1.0-py2.py3-none-any.whl: b943c81855b476dd19f149a05e3db7da822c66f1bbc990c9c1a0aa96f347271f
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl2tgYwACgkQgxYDHL9a
D3JERg/8Dx9/Uta4dHzu/1iN3Pag3BXRy36RSFWSHbXafGggHcmo0MEFTxwBLGsS
xbIi9tkhAkQ7tNe/sDEUoHicA8oRwOI7NiMbz8m/p+P9r1SxwLqNxR3eljEpciiq
dutwa1itqLky7rQ6wswLjetlGBw2si4THSCVPEzWUgL91dR9FZHUdNr2L41rMQIY
jDOJZpTWZKbXohhif4PvbWYqrMqge91DXaZbVPgb+CBm2as/AhPRQrpkAW27bGjF
eL7AzJqO8xCZeiHI76CFp6+Qqa8ynNPYXsO6ddOgNduXF5DEdW39UowVHfn+vZgK
cqDRpSMfvNuv6B3yg4HABTvMAf0WQxv3vtdHgfMo8TB1SEH+Pk0S2OWC3M1gwXz5
SZQJROAsPCqIYj3PbrXlR6miomxMo+SyFK1WDHILhJrDg6xw6RjsJEyNjabug5ds
NCp9f+qWVxJ//KHh6Z/9CLbcsxwP49Jqv9Iq8sEjCyvGXSSChBZlLU1A91XB7x7v
wv+9qwqDAJN98xU2BirtkJ//5E0CVqmuvMmX5wN6hYvO2jamJmJpSoIkhcQksPVq
HIswczXMzQ9tbi4UPZmnkHp5wLyGyZGZHS238+LwXCVr/uSwYcIC1p1fT2K9c9Fn
Q8nwZpuQjf1sqCFrvIC2IERqc6x5Fp+0XeO16K4ECJ5YCwWnWXc=
=WB9Z
-----END PGP SIGNATURE-----
PyOTA 2.0.9
- Update documentation for AddressGenerator (thanks @ttw225 for the commit)
- [#232] Deprecate detox, use tox instead (thanks @pdecol for the quick help)
- [#99] Implement findTransactionObjects command to match the JS library method (thanks @pdecol for the implementation)
- [#235] Update core commands to match IRI 1.8.1. New commands: getNodeAPIConfiguration and getMissingTransactions, fixed missing parameters
tips
in getBalances andreferences
in getTransactionsToApprove (thx @pdecol for noticing and implementing the changes) - Remove response filters except for transactions and bundles. Consistency with other libs. (thx @pdecol)
- Fix broken links in documentation (thx @pdecol)
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
- - Update documentation for AddressGenerator (thanks @ttw225 for the commit)
- - [#232] Deprecate detox, use tox instead (thanks @pdecol for the quick help)
- - [#99] Implement **findTransactionObjects** command to match the JS library method (thanks @pdecol for the implementation)
- - [#235] Update core commands to match IRI 1.8.1. New commands: **getNodeAPIConfiguration** and **getMissingTransactions**, fixed missing parameters `tips` in **getBalances** and `references` in **getTransactionsToApprove** (thx @pdecol for noticing and implementing the changes)
- - Remove response filters except for transactions and bundles. Consistency with other libs. (thx @pdecol)
- - Fix broken links in documentation (thx @pdecol)
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.0.9.tar.gz: d0394d1ef90996b59c3f8de62c84193a270ea62515ca06ff8c86bb71c3f887b6
* PyOTA-2.0.9-py2.py3-none-any.whl: 50d134b2178e9d500b573b5160b6993b4bcf67e44594eb3cda606c4309ff5f3a
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEELOz4ULwji23aAzOQgxYDHL9aD3IFAl2TEr8ACgkQgxYDHL9a
D3JIsBAAk4s/sJet4Iz0Aj9mLvYZ2OgiTWIeDr+WduhEZSDAjsiyXuL5QL2z4aiO
j+TdxxnVT6yolkSPvo9JQtSZdEtUcBfMME+1N9etaQHs4zHpZmmNXHgv2u3pxAZs
ax4ptVfVwGgJoemdV3a04XxvIrRWqpY2vBN1RMdoxfdLDX+yCagF2ByfYXtJEktR
kcXmp701doShft+IHfvLAjwt9LVc+TKt5QhxLEZFMVHCip24OjVNTU4aAjCWCkKf
QMqSH+SxEvy2Ls+tg0up9onNZdITlU22dC/CgHx7KptM5t6tkrpZBdyHWjKyewA/
CgOe5PlXbOcmWH0ZAQoA3uTmro4GRxvlNteBFnE9h5foLas96YyapXZr6BoT5EZy
r4xHz8CvQny2f3OQQgLEkObDz405WlO1qshjBfwtMMrA0PPcPo1Zyl3s2J57NoZh
lZD/lG7WnItEGWKwtjVnX+ofQjcBv4V12jHiya1jKM/ptdHBlQxRK98EVCBmrY1B
SNK7iaBtjxQ/0RwXuKKvlkTAl72H7gEmtV2Hhjy/Y3A2+ftTnlSbgmrxsiQ1N/OK
yvvmdWTSktYzIaWMnqDl3aWAq14k9DqccZlKUPSx3eoRyOUmT5+sI2E2U4+pUKsu
qKxpSEDyTh0fBc9abFtO3I3mMQyuK/um//zN3m8lADYWYnPA62c=
=2Jdu
-----END PGP SIGNATURE-----
PyOTA v2.0.8
- [#226] Added support for Python 3.7 (thanks @Nitrooo for reporting and @pdecol for implementing!).
- [#162] Added missing documentation for API methods (thanks @scottbelden for reporting and @wusyong for fixing!).
- Fixed obsolete references to forum/Slack in documentation (thanks @pdecol!).
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# PyOTA v2.0.8
* [#226] Added support for Python 3.7 (thanks @Nitrooo for reporting and @pdecol for implementing!).
* [#162] Added missing documentation for API methods (thanks @scottbelden for reporting and @wusyong for fixing!).
* Fixed obsolete references to forum/Slack in documentation (thanks @pdecol!).
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.0.8.tar.gz: d39d107d340d9b2dfb121d900bec4b0e27017ebdacfbeb340d7e2785f1e57035
* PyOTA-2.0.8-py2.py3-none-any.whl: fbec712133e61a2705ab32504aef8b5ab79c761e0f6117ac81bf4182ed012eac
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEc9vOP4UernObqSUWjIY/jl7U00MFAl16ttIACgkQjIY/jl7U
00OONxAAj1G/trnJFM/qZ4KXp+iF04Kdv5TRisF/MwWZfqfy6sV3blXpzBa4q6xo
LAsPRQS0NmgmFtsomy3yrof7TZ+hcQmmxzBnnYBWyDNWjHBA2/p9PrxtwA4czQcf
JADXFwTkpqm7fXm2wxBSPax5pD0J9YsH1enOsrVAsQ5XU+6HVliQF5znTQSbftky
37YlthZiKTzkMZRvAv2PNJN8UT1laxvYVllVtEyWw3HDkMi0fLcDgyezQeciMXzX
IkMjEwQ43JsDUWxV5Gz4RgGIxHON5clMpr+mHVxqXvchWaLgn9RO+mMjdux6gNWm
yOnlzfbbqBNNuy7UT+iKim9CE+yyvkqYgX1aGKfTb8wMrQ0om264oFEM589fmPzA
C4dfpKLh1LYKDLjI0MwQApPwOpEGur4pLDfX6mkZoAWrS85tCTsRxSFLqSVpvBgJ
OcL7q5UJxO89DeqUycsfBv5LeOgwQ6Wr4g9fP8VLMs1BAdH9M0Eh1bVIKNvz5pHx
pXVf5bbQU9laae7ifM0rQxUKLFBilUQ54T2hx/UezooW2WACaQuPlqqeaLaPFF4g
MyvETZcMZxoUke/akm4A3pU7BehhAqrnMb0xmYiU05fXSPDPxmSiJIw+KUwCjs+/
LzuOmVG/SNvynu7MArcKyir+xXVU75EkHKT8YiCAvx6VZposjrc=
=ejTq
-----END PGP SIGNATURE-----
PyOTA v2.0.7
- [#181]
Iota.get_account_data()
now accepts optionalsecurity_level
argument (thanks @linuxMengfan for reporting and @oskyk for fixing!). - [#191][#195] Default value for
depth
now set to 3 (thanks @Hribek25, @EmbeddedAndroid, and @redondo-mk!). - [#186] Fixed incorrect parameter for
find_transactions()
; was "bundles", but should have been "transactions" (thanks @oskyk!). - [#206] Fixed exception when adding an
Iota
instance to an abstract class (thanks @timohe for reporting!). - [#184] Removed unused
MAX_SECURITY_LEVEL
constant . - [#145][WIP] Progressive PEP-8 migration.
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# PyOTA v2.0.7
* [#181] `Iota.get_account_data()` now accepts optional `security_level` argument (thanks @linuxMengfan for reporting and @oskyk for fixing!).
* [#191][#195] Default value for `depth` now set to 3 (thanks @Hribek25, @EmbeddedAndroid, and @redondo-mk!).
* [#186] Fixed incorrect parameter for `find_transactions()`; was "bundles", but should have been "transactions" (thanks @oskyk!).
* [#206] Fixed exception when adding an `Iota` instance to an abstract class (thanks @timohe for reporting!).
* [#184] Removed unused `MAX_SECURITY_LEVEL` constant .
* [#145][WIP] Progressive PEP-8 migration.
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.0.7-py2.py3-none-any.whl: 1cb79a4182c9de2bd8c17b78e5a5cd145017acd84e57d769329398349e012f47
* PyOTA-2.0.7.tar.gz: 0e443a0417f9b6d35c9b8b0139e962741948de72316c9e8a83c289b2b8968275
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEc9vOP4UernObqSUWjIY/jl7U00MFAlveWYwACgkQjIY/jl7U
00MpTA//UZN7NhPa7iN8TOFdYg3OwxfzqpBIClE0VlRRU2I/UdH+4PpFjFvaBQ+b
uUkBrCC121WxcOioEwxPpo9ufthUDsCqC7SWBhtULr5NXQudCZnBHMXbalqW/86M
ivcWvzIXDCsl5hYRtdnSq3ppWCU0XZR1Qz/16agjbEsPZC0A/MpWli54Ymm1Ow55
xIN7lX7qJLghFWtvWnFjSKQDK57CIHNSlefoRSW2iF49X3H9Ait0i29yPQzjGLuf
NmqYL67+KkbUYccTeEHqSbWuLTRa1+uUre2Tpv/ydJq/NfkDRQ0n/VStB2pOu8Cd
vPAowrWfhBBMDri0F6gP7br4gXRZ+GfCV3T2vr+oLYu60SHsKlFxVu0gBNc9FPeo
BuTN/w6mt6/c/NRaIox/d/c2goRFJl6RlBt80E/BtQaPsyQkOO6OkPtDI9rhLKuK
0H55Yq2C00TOT4z+qai9i/n7iofnTfEVQQV3725vtWm/7UUqYzsg7nSOD2xtXm8O
oxPZ38TDlJHZzJS4QJzoLLKnXv+AitKDdsVfYfceLORwg4d0KE3nSqEcjSzLrhbn
atQbavqlq78LBn+I903MA3tV6ssOoIbo8oczXPFy3GRaTgX/HRWhK2rnXBZu0Ow+
UMorg3uEQelnslRMLUGhyXm1WUZ8CNx4nnxeyGHkIyWHvir79oQ=
=lGhZ
-----END PGP SIGNATURE-----
PyOTA v2.0.6
- [#172] Added
security_level
parameter toget_inputs()
,prepare_transfer()
andsend_transfer()
(thanks @lunfardo314!). - [#176] Introduced
iota.filters.SecurityLevel
. - [#171] Fixed incorrect documentation for
get_new_addresses()
(thanks @maxmbed for reporting and @rckey for fixing!). - [#156] Fixed incorrect docstring for
is_reattachable()
(thanks @ribhu97!). - Fixed ambiguous reference in
send_transfer.py
example (thanks @msti!). - [#145][WIP] Progressive PEP-8 migration.
Thanks to the following individuals for their contributions to PyOTA v2.0.6:
Binary Distribution Checksums
Instructions: Download the source (*.tar.gz
) or wheel (*.whl
) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using sha256sum
(macOS/Linux) or CertUtil
(Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please do not use the downloaded file! Report any checksum problems on the PyOTA Bug Tracker as soon as possible.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# PyOTA v2.0.6
* [#172] Added `security_level` parameter to `get_inputs()`, `prepare_transfer()` and `send_transfer()` (thanks @lunfardo314!).
* [#176] Introduced `iota.filters.SecurityLevel`.
* [#171] Fixed incorrect documentation for `get_new_addresses()` (thanks @maxmbed for reporting and @rckey for fixing!).
* [#156] Fixed incorrect docstring for `is_reattachable()` (thanks @ribhu97!).
* Fixed ambiguous reference in `send_transfer.py` example (thanks @msti!).
* [#145][WIP] Progressive PEP-8 migration.
Thanks to the following individuals for their contributions to PyOTA v2.0.6:
* @lunfardo314
* @maxmbed
* @msti
* @rckey
* @ribhu97
# Binary Distribution Checksums
**Instructions:** Download the source (`*.tar.gz`) or wheel (`*.whl`) distribution (see links at the bottom of the release notes) and compute the SHA-256 hash of the downloaded file using [`sha256sum`](https://linux.die.net/man/1/sha256sum) (macOS/Linux) or [`CertUtil`](https://superuser.com/a/898377) (Windows).
Compare your SHA-256 hash against the value posted in the gray box below. If the value is different, please **do not use the downloaded file!** Report any checksum problems on the [PyOTA Bug Tracker](https://github.com/iotaledger/iota.lib.py/issues/) as soon as possible.
* PyOTA-2.0.6-py2.py3-none-any.whl: 6dcdc21aa166ff319cfc77d839271d4730b4602573aede6ea102e2e26cbf9aff
* PyOTA-2.0.6.tar.gz: 9a6eb2604aaee92e0fb04bbb63660564e0854c74cd1e593cd24c4d71b513f5b2
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEc9vOP4UernObqSUWjIY/jl7U00MFAlscRzEACgkQjIY/jl7U
00Mhpw//Rz4TBe7zM1oyjsdpfXghulcowCwXqwUVwf5gR3EjiDUqERzwgstHIjiU
rOzeXjowZGnrvZnZEmPKfSlTW62VyHvVdiGHhGD5zB8cO8grQI5Rwi1ZiWjJs/ce
CE0AUUt82tsTMl4f64AC5HsIzpIOh98pZYI7a4XjNlWVddN26vaxNDNdXA/QV2Fi
rOui5lcSPhIWXWxFGU09/SuATLxi/udB8POhzi9p2itfhaWj09eXLpj0hbn+WitD
HIcohf8CMCkq3b4XzYLi0sCTJTWH29mNqdxUYghwRRqgZcMP/aSBbqwM/ByToT0D
k2w69f/x6gjYt9nGlWQGrnXRAnNq/ii6AOdutnCd/QGoLMERnkzWs31AYxqEUCP9
3WVai9sMEeBy6xyZWa9M4VNNQs9iq/aRx5jduUyszVg0GF7TNi5B1NHsbbxSe9sJ
i/8+ih9GQIhOpREGGJcD4jo+TPHvjSaPVyC5FOm12qALNitNWxQAWgu9t5OGbP4x
MmaKfb6Xvt4J+kCvLs7JFxdQBBAdESkVS2wJMgwRR5hsWCKV3E4ck74tQmt/nbrt
Mg6iu2No5nteu08+KJLDwb9FQN6gV69Oz8B3/iJxiIx4hTmGKWXO4DkV2toNzXv3
JK0RFWCwBhFLX/N/TYoMlqvnvAlR4hPwPVzpXtG2pXvKatJLODQ=
=NskR
-----END PGP SIGNATURE-----