Skip to content
This repository has been archived by the owner on Jan 13, 2023. It is now read-only.

PyOTA v2.2.0-beta1 #280

Merged
merged 36 commits into from
Dec 11, 2019
Merged

PyOTA v2.2.0-beta1 #280

merged 36 commits into from
Dec 11, 2019

Conversation

lzpap
Copy link
Member

@lzpap lzpap commented Dec 11, 2019

Feature changes

Documentation changes [#268]

  • 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.

lzpap added 30 commits October 21, 2019 15:55
As part of the extended api (Iota class), this
function takes a tail transaction hash of a bundle
and re-broadcasts the entire bundle.
It does so by fetching and validating the bundle
from the Tangle, and calling broadcast_transactions()
core api.
Implement broadcast_bundle Api Command
Checks if a list of tails can be promoted or not by
calling checkConsistency core API and performing
extra checks on the attachment_timestamp of the
transactions fetched from the Tangle.
Motivation:
Provide the same api calls as in the other iota libs.
The difference between get_bundles and traverse_bundle is
subtle: get_bundles validates the fetched bundle.

Moved previous test cases related to traverse_bundle into
new test file, refactored tests for get_bundles.
Refactor traverse_bundle into Extended Api Command
Implement is_promotable Extended API Command
- Restructured API documentation into 3 parts:
  - API classes
  - Core API commands
  - Extended API commands

- Improve docstrings of API calls and types.
- Introduce autodoc support for shpinx to generate
  documentation from docstrings.
- Add autosectionlabel extension to sphinx.
Add docs build step to Travis CI
The method can insert custom messages or signatures into
transactions in a ProposedBundle object. Must be called
before bundle is finalized.
add_signature_or_message method for ProposedBundle
Two new methods in Address class:

 - add_checksum: appends a valid checksum to
   the Address object.

 - remove_checksum: slices off the checksum from
   an Address object.
Make the response dict consistent with check_consistency.
Delete 'info' key in response if 'promotable' is True.
Support adding/removing address checksums
Fine-tune is_promotable response dictionary
Add a page describing basic IOTA concepts with references to
the official docs site.
docs: add `Basic Concepts` page
 - complete rewerite of types.rst
 - Add/extend/polish docstrings for several type classes
 - small correction in basic_concepts.rst
…new_addresses`

So far only `findTransactions` check was made in the the two
methods above, this changes is needed to achieve identical
behavior with the JS lib.

Based on @pdecol's implementation.
docs: re-write PyOTA types page
Add `wereAddressesSpentFrom` check to used/new address discovery
- add figure depicting address generation
- explain address generation algorithm
- document AddressGenerator
- general improvements in text
docs: improve `Generating Addresses` page
- add more documentation on adapter classes
- add examples on debugging http requests to file or console
- remove sandbox adapter section
- restructure RoutingWrapper section
docs: improve `Adapters and Wrappers` page
- Removed auto command discovery in API class,
  as it was only used in tests.
- Modified test cases.
- Removed custom __getattr__() from API class.
Explain the inner workings of an API command for
advanced users/developers of the the library.
docs: add `Advanced: PyOTA Commands` page & refactoring commands
Sandbox environment not in use anymore.
@lzpap lzpap merged commit 7d0f250 into master Dec 11, 2019
@lzpap lzpap deleted the release/2.2.0b1 branch January 27, 2020 09:33
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant