hive-nectar 0.0.11__tar.gz → 0.1.1__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.

Potentially problematic release.


This version of hive-nectar might be problematic. Click here for more details.

Files changed (375) hide show
  1. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/.gitignore +1 -0
  2. hive_nectar-0.1.1/.pre-commit-config.yaml +15 -0
  3. hive_nectar-0.1.1/.readthedocs.yaml +20 -0
  4. hive_nectar-0.1.1/CHANGELOG.md +84 -0
  5. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/Makefile +8 -3
  6. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/PKG-INFO +12 -11
  7. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/README.md +7 -6
  8. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo.svg +1 -1
  9. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/apidefinitions.rst +35 -35
  10. hive_nectar-0.1.1/docs/changelog.rst +173 -0
  11. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/cli.rst +14 -16
  12. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/conf.py +11 -10
  13. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/configuration.rst +25 -26
  14. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/index.rst +11 -10
  15. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/installation.rst +1 -1
  16. hive_nectar-0.1.1/docs/modules.rst +12 -0
  17. hive_nectar-0.1.1/docs/nectar.account.rst +7 -0
  18. hive_nectar-0.1.1/docs/nectar.amount.rst +7 -0
  19. hive_nectar-0.1.1/docs/nectar.asciichart.rst +7 -0
  20. hive_nectar-0.1.1/docs/nectar.asset.rst +7 -0
  21. hive_nectar-0.1.1/docs/nectar.block.rst +7 -0
  22. hive_nectar-0.1.1/docs/nectar.blockchain.rst +7 -0
  23. hive_nectar-0.1.1/docs/nectar.blockchaininstance.rst +7 -0
  24. hive_nectar-0.1.1/docs/nectar.blockchainobject.rst +7 -0
  25. hive_nectar-0.1.1/docs/nectar.cli.rst +7 -0
  26. hive_nectar-0.1.1/docs/nectar.comment.rst +7 -0
  27. hive_nectar-0.1.1/docs/nectar.community.rst +7 -0
  28. hive_nectar-0.1.1/docs/nectar.constants.rst +7 -0
  29. hive_nectar-0.1.1/docs/nectar.discussions.rst +7 -0
  30. hive_nectar-0.1.1/docs/nectar.exceptions.rst +7 -0
  31. hive_nectar-0.1.1/docs/nectar.hive.rst +7 -0
  32. hive_nectar-0.1.1/docs/nectar.hivesigner.rst +7 -0
  33. hive_nectar-0.1.1/docs/nectar.imageuploader.rst +7 -0
  34. hive_nectar-0.1.1/docs/nectar.instance.rst +7 -0
  35. hive_nectar-0.1.1/docs/nectar.market.rst +7 -0
  36. hive_nectar-0.1.1/docs/nectar.memo.rst +7 -0
  37. hive_nectar-0.1.1/docs/nectar.message.rst +7 -0
  38. hive_nectar-0.1.1/docs/nectar.nodelist.rst +7 -0
  39. hive_nectar-0.1.1/docs/nectar.price.rst +7 -0
  40. hive_nectar-0.1.1/docs/nectar.profile.rst +7 -0
  41. hive_nectar-0.1.1/docs/nectar.rc.rst +7 -0
  42. hive_nectar-0.1.1/docs/nectar.rst +50 -0
  43. hive_nectar-0.1.1/docs/nectar.snapshot.rst +7 -0
  44. hive_nectar-0.1.1/docs/nectar.storage.rst +7 -0
  45. hive_nectar-0.1.1/docs/nectar.transactionbuilder.rst +7 -0
  46. hive_nectar-0.1.1/docs/nectar.utils.rst +7 -0
  47. hive_nectar-0.1.1/docs/nectar.version.rst +7 -0
  48. hive_nectar-0.1.1/docs/nectar.vote.rst +7 -0
  49. hive_nectar-0.1.1/docs/nectar.wallet.rst +7 -0
  50. hive_nectar-0.1.1/docs/nectar.witness.rst +7 -0
  51. hive_nectar-0.1.1/docs/nectarapi.exceptions.rst +7 -0
  52. hive_nectar-0.1.1/docs/nectarapi.graphenerpc.rst +7 -0
  53. hive_nectar-0.1.1/docs/nectarapi.node.rst +7 -0
  54. hive_nectar-0.1.1/docs/nectarapi.noderpc.rst +7 -0
  55. hive_nectar-0.1.1/docs/nectarapi.rpcutils.rst +7 -0
  56. hive_nectar-0.1.1/docs/nectarapi.rst +23 -0
  57. hive_nectar-0.1.1/docs/nectarapi.version.rst +7 -0
  58. hive_nectar-0.1.1/docs/nectarbase.ledgertransactions.rst +7 -0
  59. hive_nectar-0.1.1/docs/nectarbase.memo.rst +7 -0
  60. hive_nectar-0.1.1/docs/nectarbase.objects.rst +7 -0
  61. hive_nectar-0.1.1/docs/nectarbase.objecttypes.rst +7 -0
  62. hive_nectar-0.1.1/docs/nectarbase.operationids.rst +7 -0
  63. hive_nectar-0.1.1/docs/nectarbase.operations.rst +7 -0
  64. hive_nectar-0.1.1/docs/nectarbase.rst +26 -0
  65. hive_nectar-0.1.1/docs/nectarbase.signedtransactions.rst +7 -0
  66. hive_nectar-0.1.1/docs/nectarbase.transactions.rst +7 -0
  67. hive_nectar-0.1.1/docs/nectarbase.version.rst +7 -0
  68. hive_nectar-0.1.1/docs/nectargrapheneapi.rst +10 -0
  69. hive_nectar-0.1.1/docs/nectargraphenebase.account.rst +7 -0
  70. hive_nectar-0.1.1/docs/nectargraphenebase.aes.rst +7 -0
  71. hive_nectar-0.1.1/docs/nectargraphenebase.base58.rst +7 -0
  72. hive_nectar-0.1.1/docs/nectargraphenebase.bip32.rst +7 -0
  73. hive_nectar-0.1.1/docs/nectargraphenebase.bip38.rst +7 -0
  74. hive_nectar-0.1.1/docs/nectargraphenebase.chains.rst +7 -0
  75. hive_nectar-0.1.1/docs/nectargraphenebase.dictionary.rst +7 -0
  76. hive_nectar-0.1.1/docs/nectargraphenebase.ecdsasig.rst +7 -0
  77. hive_nectar-0.1.1/docs/nectargraphenebase.objects.rst +7 -0
  78. hive_nectar-0.1.1/docs/nectargraphenebase.objecttypes.rst +7 -0
  79. hive_nectar-0.1.1/docs/nectargraphenebase.operationids.rst +7 -0
  80. hive_nectar-0.1.1/docs/nectargraphenebase.operations.rst +7 -0
  81. hive_nectar-0.1.1/docs/nectargraphenebase.prefix.rst +7 -0
  82. hive_nectar-0.1.1/docs/nectargraphenebase.rst +34 -0
  83. hive_nectar-0.1.1/docs/nectargraphenebase.signedtransactions.rst +7 -0
  84. hive_nectar-0.1.1/docs/nectargraphenebase.types.rst +7 -0
  85. hive_nectar-0.1.1/docs/nectargraphenebase.unsignedtransactions.rst +7 -0
  86. hive_nectar-0.1.1/docs/nectargraphenebase.version.rst +7 -0
  87. hive_nectar-0.1.1/docs/nectarstorage.base.rst +7 -0
  88. hive_nectar-0.1.1/docs/nectarstorage.exceptions.rst +7 -0
  89. hive_nectar-0.1.1/docs/nectarstorage.interfaces.rst +7 -0
  90. hive_nectar-0.1.1/docs/nectarstorage.masterpassword.rst +7 -0
  91. hive_nectar-0.1.1/docs/nectarstorage.ram.rst +7 -0
  92. hive_nectar-0.1.1/docs/nectarstorage.rst +23 -0
  93. hive_nectar-0.1.1/docs/nectarstorage.sqlite.rst +7 -0
  94. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/quickstart.rst +11 -11
  95. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/tutorials.rst +45 -45
  96. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/account_curation_per_week_and_1k_sp.py +5 -5
  97. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/account_sp_over_time.py +6 -6
  98. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/accout_reputation_by_SP.py +7 -7
  99. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/benchmark_nectar.py +9 -9
  100. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/benchmark_nodes.py +7 -7
  101. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/benchmark_nodes2.py +43 -18
  102. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/blockactivity.py +37 -22
  103. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/blockstats.py +38 -33
  104. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/cache_performance.py +19 -6
  105. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/check_followers.py +1 -1
  106. hive_nectar-0.1.1/examples/hf20_testnet.py +20 -0
  107. hive_nectar-0.1.1/examples/login_app/app.py +61 -0
  108. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/memory_profiler1.py +25 -5
  109. hive_nectar-0.1.1/examples/memory_profiler2.py +81 -0
  110. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/next_witness_block_coundown.py +8 -8
  111. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/op_on_testnet.py +18 -18
  112. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/post_to_html.py +1 -1
  113. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/print_appbase_calls.py +9 -9
  114. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/stream_threading_performance.py +22 -10
  115. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/using_custom_chain.py +7 -7
  116. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/using_steem_offline.py +6 -6
  117. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/watching_the_watchers.py +29 -1
  118. hive_nectar-0.1.1/pyproject.toml +133 -0
  119. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/__init__.py +1 -4
  120. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/account.py +791 -685
  121. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/amount.py +82 -21
  122. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/asset.py +1 -2
  123. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/block.py +49 -23
  124. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/blockchain.py +111 -143
  125. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/blockchaininstance.py +396 -247
  126. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/blockchainobject.py +33 -5
  127. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/cli.py +1058 -1349
  128. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/comment.py +313 -181
  129. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/community.py +39 -43
  130. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/constants.py +1 -14
  131. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/discussions.py +793 -139
  132. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/hive.py +137 -77
  133. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/hivesigner.py +106 -68
  134. hive_nectar-0.1.1/src/nectar/imageuploader.py +81 -0
  135. hive_nectar-0.1.1/src/nectar/instance.py +81 -0
  136. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/market.py +128 -264
  137. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/memo.py +40 -13
  138. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/message.py +23 -10
  139. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/nodelist.py +115 -81
  140. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/price.py +80 -61
  141. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/profile.py +6 -3
  142. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/rc.py +45 -25
  143. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/snapshot.py +285 -163
  144. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/storage.py +16 -5
  145. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/transactionbuilder.py +132 -41
  146. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/utils.py +37 -17
  147. {hive_nectar-0.0.11/src/nectargraphenebase → hive_nectar-0.1.1/src/nectar}/version.py +1 -1
  148. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/vote.py +171 -30
  149. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/wallet.py +26 -19
  150. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/witness.py +153 -54
  151. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/graphenerpc.py +147 -133
  152. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/noderpc.py +12 -6
  153. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/rpcutils.py +12 -6
  154. {hive_nectar-0.0.11/src/nectar → hive_nectar-0.1.1/src/nectarapi}/version.py +1 -1
  155. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/ledgertransactions.py +24 -1
  156. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/objects.py +17 -6
  157. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/operations.py +160 -90
  158. hive_nectar-0.1.1/src/nectarbase/signedtransactions.py +84 -0
  159. {hive_nectar-0.0.11/src/nectarapi → hive_nectar-0.1.1/src/nectarbase}/version.py +1 -1
  160. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/account.py +295 -17
  161. hive_nectar-0.1.1/src/nectargraphenebase/chains.py +14 -0
  162. hive_nectar-0.1.1/src/nectargraphenebase/ecdsasig.py +297 -0
  163. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/types.py +18 -4
  164. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/unsignedtransactions.py +1 -1
  165. {hive_nectar-0.0.11/src/nectarbase → hive_nectar-0.1.1/src/nectargraphenebase}/version.py +1 -1
  166. hive_nectar-0.1.1/tests/debug_ec.py +113 -0
  167. hive_nectar-0.1.1/tests/nectar/nodes.py +19 -0
  168. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_account.py +46 -35
  169. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_amount.py +46 -17
  170. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_asset.py +27 -18
  171. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_base_objects.py +11 -4
  172. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_block.py +20 -15
  173. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_blockchain.py +7 -2
  174. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_blockchain_batch.py +30 -7
  175. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_blockchain_threading.py +18 -8
  176. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_cli.py +42 -21
  177. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_comment.py +2 -2
  178. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_connection.py +11 -7
  179. hive_nectar-0.1.1/tests/nectar/test_constants.py +78 -0
  180. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_discussions.py +29 -17
  181. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_hive.py +22 -23
  182. hive_nectar-0.1.1/tests/nectar/test_hivesigner.py +98 -0
  183. hive_nectar-0.1.1/tests/nectar/test_instance.py +347 -0
  184. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_market.py +36 -45
  185. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_memo.py +2 -2
  186. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_message.py +2 -2
  187. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_nodelist.py +3 -11
  188. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_price.py +4 -4
  189. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_storage.py +16 -16
  190. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_testnet.py +129 -129
  191. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_txbuffers.py +11 -11
  192. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_utils.py +15 -6
  193. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_wallet.py +23 -23
  194. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_witness.py +24 -24
  195. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarapi/test_noderpc.py +21 -19
  196. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarapi/test_rpcutils.py +2 -4
  197. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/test_ledgertransactions.py +9 -3
  198. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/test_memo.py +2 -2
  199. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/test_transactions.py +20 -16
  200. hive_nectar-0.1.1/tests/test_add_basic.py +33 -0
  201. hive_nectar-0.1.1/tests/test_ec_basic.py +62 -0
  202. hive_nectar-0.1.1/tests/test_hivesigner_integration.py +154 -0
  203. hive_nectar-0.1.1/tests/test_tweak_add.py +143 -0
  204. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/uv.lock +172 -14
  205. hive_nectar-0.0.11/CHANGELOG.md +0 -46
  206. hive_nectar-0.0.11/docs/modules.rst +0 -93
  207. hive_nectar-0.0.11/docs/nectar.account.rst +0 -7
  208. hive_nectar-0.0.11/docs/nectar.amount.rst +0 -7
  209. hive_nectar-0.0.11/docs/nectar.asciichart.rst +0 -7
  210. hive_nectar-0.0.11/docs/nectar.asset.rst +0 -7
  211. hive_nectar-0.0.11/docs/nectar.block.rst +0 -7
  212. hive_nectar-0.0.11/docs/nectar.blockchain.rst +0 -7
  213. hive_nectar-0.0.11/docs/nectar.blockchaininstance.rst +0 -7
  214. hive_nectar-0.0.11/docs/nectar.blockchainobject.rst +0 -7
  215. hive_nectar-0.0.11/docs/nectar.comment.rst +0 -7
  216. hive_nectar-0.0.11/docs/nectar.community.rst +0 -7
  217. hive_nectar-0.0.11/docs/nectar.conveyor.rst +0 -7
  218. hive_nectar-0.0.11/docs/nectar.discussions.rst +0 -7
  219. hive_nectar-0.0.11/docs/nectar.exceptions.rst +0 -7
  220. hive_nectar-0.0.11/docs/nectar.hive.rst +0 -7
  221. hive_nectar-0.0.11/docs/nectar.hivesigner.rst +0 -7
  222. hive_nectar-0.0.11/docs/nectar.imageuploader.rst +0 -7
  223. hive_nectar-0.0.11/docs/nectar.instance.rst +0 -7
  224. hive_nectar-0.0.11/docs/nectar.market.rst +0 -7
  225. hive_nectar-0.0.11/docs/nectar.memo.rst +0 -7
  226. hive_nectar-0.0.11/docs/nectar.message.rst +0 -7
  227. hive_nectar-0.0.11/docs/nectar.nodelist.rst +0 -7
  228. hive_nectar-0.0.11/docs/nectar.price.rst +0 -7
  229. hive_nectar-0.0.11/docs/nectar.rc.rst +0 -7
  230. hive_nectar-0.0.11/docs/nectar.snapshot.rst +0 -7
  231. hive_nectar-0.0.11/docs/nectar.steem.rst +0 -7
  232. hive_nectar-0.0.11/docs/nectar.storage.rst +0 -7
  233. hive_nectar-0.0.11/docs/nectar.transactionbuilder.rst +0 -7
  234. hive_nectar-0.0.11/docs/nectar.utils.rst +0 -7
  235. hive_nectar-0.0.11/docs/nectar.vote.rst +0 -7
  236. hive_nectar-0.0.11/docs/nectar.wallet.rst +0 -7
  237. hive_nectar-0.0.11/docs/nectar.witness.rst +0 -8
  238. hive_nectar-0.0.11/docs/nectarapi.exceptions.rst +0 -7
  239. hive_nectar-0.0.11/docs/nectarapi.graphenenerpc.rst +0 -15
  240. hive_nectar-0.0.11/docs/nectarapi.node.rst +0 -7
  241. hive_nectar-0.0.11/docs/nectarapi.noderpc.rst +0 -7
  242. hive_nectar-0.0.11/docs/nectarbase.ledgertransactions.rst +0 -7
  243. hive_nectar-0.0.11/docs/nectarbase.memo.rst +0 -7
  244. hive_nectar-0.0.11/docs/nectarbase.objects.rst +0 -7
  245. hive_nectar-0.0.11/docs/nectarbase.objecttypes.rst +0 -7
  246. hive_nectar-0.0.11/docs/nectarbase.operationids.rst +0 -8
  247. hive_nectar-0.0.11/docs/nectarbase.operations.rst +0 -7
  248. hive_nectar-0.0.11/docs/nectarbase.signedtransactions.rst +0 -7
  249. hive_nectar-0.0.11/docs/nectargraphenebase.account.rst +0 -7
  250. hive_nectar-0.0.11/docs/nectargraphenebase.aes.rst +0 -7
  251. hive_nectar-0.0.11/docs/nectargraphenebase.base58.rst +0 -7
  252. hive_nectar-0.0.11/docs/nectargraphenebase.bip32.rst +0 -7
  253. hive_nectar-0.0.11/docs/nectargraphenebase.bip38.rst +0 -7
  254. hive_nectar-0.0.11/docs/nectargraphenebase.ecdsasig.rst +0 -7
  255. hive_nectar-0.0.11/docs/nectargraphenebase.objects.rst +0 -7
  256. hive_nectar-0.0.11/docs/nectargraphenebase.objecttypes.rst +0 -7
  257. hive_nectar-0.0.11/docs/nectargraphenebase.operations.rst +0 -7
  258. hive_nectar-0.0.11/docs/nectargraphenebase.signedtransactions.rst +0 -7
  259. hive_nectar-0.0.11/docs/nectargraphenebase.unsignedtransactions.rst +0 -7
  260. hive_nectar-0.0.11/docs/nectarstorage.base.rst +0 -7
  261. hive_nectar-0.0.11/docs/nectarstorage.exceptions.rst +0 -7
  262. hive_nectar-0.0.11/docs/nectarstorage.interfaces.rst +0 -7
  263. hive_nectar-0.0.11/docs/nectarstorage.masterpassword.rst +0 -7
  264. hive_nectar-0.0.11/docs/nectarstorage.ram.rst +0 -7
  265. hive_nectar-0.0.11/docs/nectarstorage.sqlite.rst +0 -7
  266. hive_nectar-0.0.11/examples/compare_transactions_speed_with_steem.py +0 -111
  267. hive_nectar-0.0.11/examples/compare_with_steem_python_account.py +0 -101
  268. hive_nectar-0.0.11/examples/hf20_testnet.py +0 -21
  269. hive_nectar-0.0.11/examples/login_app/app.py +0 -40
  270. hive_nectar-0.0.11/examples/memory_profiler2.py +0 -61
  271. hive_nectar-0.0.11/pyproject.toml +0 -130
  272. hive_nectar-0.0.11/src/nectar/blurt.py +0 -562
  273. hive_nectar-0.0.11/src/nectar/conveyor.py +0 -308
  274. hive_nectar-0.0.11/src/nectar/imageuploader.py +0 -71
  275. hive_nectar-0.0.11/src/nectar/instance.py +0 -129
  276. hive_nectar-0.0.11/src/nectar/steem.py +0 -581
  277. hive_nectar-0.0.11/src/nectarbase/signedtransactions.py +0 -48
  278. hive_nectar-0.0.11/src/nectargraphenebase/chains.py +0 -149
  279. hive_nectar-0.0.11/src/nectargraphenebase/ecdsasig.py +0 -321
  280. hive_nectar-0.0.11/tests/nectar/nodes.py +0 -19
  281. hive_nectar-0.0.11/tests/nectar/test_account_blurt.py +0 -246
  282. hive_nectar-0.0.11/tests/nectar/test_account_steem.py +0 -552
  283. hive_nectar-0.0.11/tests/nectar/test_constants.py +0 -88
  284. hive_nectar-0.0.11/tests/nectar/test_conveyor.py +0 -27
  285. hive_nectar-0.0.11/tests/nectar/test_hivesigner.py +0 -60
  286. hive_nectar-0.0.11/tests/nectar/test_instance.py +0 -286
  287. hive_nectar-0.0.11/tests/nectar/test_steem.py +0 -442
  288. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/LICENSE.txt +0 -0
  289. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/Makefile +0 -0
  290. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-icon.png +0 -0
  291. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-icon_bw.png +0 -0
  292. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo.png +0 -0
  293. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo_2.png +0 -0
  294. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo_2.svg +0 -0
  295. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo_bw.png +0 -0
  296. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/_static/nectar-logo_bw.svg +0 -0
  297. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/contribute.rst +0 -0
  298. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/indices.rst +0 -0
  299. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/make.bat +0 -0
  300. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/requirements.txt +0 -0
  301. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/docs/support.rst +0 -0
  302. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/account_rep_over_time.py +0 -0
  303. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/account_vp_over_time.py +0 -0
  304. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/post_to_md.py +0 -0
  305. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/print_comments.py +0 -0
  306. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/print_votes.py +0 -0
  307. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/waitForRecharge.py +0 -0
  308. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/examples/write_blocks_to_file.py +0 -0
  309. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/generate_versions.py +0 -0
  310. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/pytest.ini +0 -0
  311. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/asciichart.py +0 -0
  312. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/exceptions.py +0 -0
  313. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectar/py.typed +0 -0
  314. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/__init__.py +0 -0
  315. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/exceptions.py +0 -0
  316. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/node.py +0 -0
  317. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarapi/py.typed +0 -0
  318. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/__init__.py +0 -0
  319. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/memo.py +0 -0
  320. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/objecttypes.py +0 -0
  321. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/operationids.py +0 -0
  322. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/py.typed +0 -0
  323. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarbase/transactions.py +0 -0
  324. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargrapheneapi/__init__.py +0 -0
  325. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargrapheneapi/py.typed +0 -0
  326. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/__init__.py +0 -0
  327. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/aes.py +0 -0
  328. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/base58.py +0 -0
  329. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/bip32.py +0 -0
  330. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/bip38.py +0 -0
  331. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/dictionary.py +0 -0
  332. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/objects.py +0 -0
  333. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/objecttypes.py +0 -0
  334. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/operationids.py +0 -0
  335. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/operations.py +0 -0
  336. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/prefix.py +0 -0
  337. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/py.typed +0 -0
  338. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectargraphenebase/signedtransactions.py +0 -0
  339. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/__init__.py +0 -0
  340. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/base.py +0 -0
  341. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/exceptions.py +0 -0
  342. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/interfaces.py +0 -0
  343. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/masterpassword.py +0 -0
  344. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/py.typed +0 -0
  345. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/ram.py +0 -0
  346. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/nectarstorage/sqlite.py +0 -0
  347. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/src/py.typed +0 -0
  348. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/__init__.py +0 -0
  349. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/__init__.py +0 -0
  350. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/data/drv-wif-idx100.txt +0 -0
  351. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/data/pubkey.json +0 -0
  352. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_aes.py +0 -0
  353. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_asciichart.py +0 -0
  354. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_objectcache.py +0 -0
  355. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_profile.py +0 -0
  356. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectar/test_vote.py +0 -0
  357. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarapi/__init__.py +0 -0
  358. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarapi/test_node.py +0 -0
  359. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/__init__.py +0 -0
  360. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/test_objects.py +0 -0
  361. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarbase/test_operations.py +0 -0
  362. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/__init__.py +0 -0
  363. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_account.py +0 -0
  364. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_base58.py +0 -0
  365. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_bip32.py +0 -0
  366. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_bip38.py +0 -0
  367. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_ecdsa.py +0 -0
  368. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_key_format.py +0 -0
  369. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_objects.py +0 -0
  370. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_py23.py +0 -0
  371. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectargraphene/test_types.py +0 -0
  372. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarstorage/__init__.py +0 -0
  373. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarstorage/test_keystorage.py +0 -0
  374. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarstorage/test_masterpassword.py +0 -0
  375. {hive_nectar-0.0.11 → hive_nectar-0.1.1}/tests/nectarstorage/test_sqlite.py +0 -0
@@ -74,3 +74,4 @@ target/
74
74
  __pypackages__/
75
75
  .ruff_cache/
76
76
  .mypy_cache/
77
+ .pre-commit-cache/
@@ -0,0 +1,15 @@
1
+ repos:
2
+ # Scan for hard-coded secrets
3
+ - repo: https://github.com/gitleaks/gitleaks
4
+ rev: v8.28.0
5
+ hooks:
6
+ - id: gitleaks
7
+ # Run ruff
8
+ - repo: https://github.com/astral-sh/ruff-pre-commit
9
+ rev: v0.13.0
10
+ hooks:
11
+ # Run the linter.
12
+ - id: ruff-check
13
+ args: [--fix]
14
+ # Run the formatter.
15
+ - id: ruff-format
@@ -0,0 +1,20 @@
1
+ # Read the Docs configuration file
2
+ # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
3
+ # Required
4
+ version: 2
5
+ # Set the OS, Python version, and other tools you might need
6
+ build:
7
+ os: ubuntu-24.04
8
+ tools:
9
+ python: "3.13"
10
+ # Build documentation in the "docs/" directory with Sphinx
11
+ sphinx:
12
+ configuration: docs/conf.py
13
+ # Optionally, but recommended,
14
+ # declare the Python requirements required to build your documentation
15
+ # See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
16
+ python:
17
+ install:
18
+ - requirements: docs/requirements.txt
19
+ - method: pip
20
+ path: .
@@ -0,0 +1,84 @@
1
+ # Changelog
2
+
3
+ ## 0.1.1 - 2025-09-17
4
+
5
+ - **Fix**: Added support for `only_ops` and `only_virtual_ops` parameters in `Blocks` constructor.
6
+
7
+ ## 0.1.0b - 2025-09-17
8
+
9
+ - **Breaking Change**: Killed everything that was not specifcally HIVE related. If you used this for STEEM and / or Blurt, they are no longer supported.
10
+ - **Fix**: Corrected inverted fallback logic in chain detection to prefer HIVE over STEEM when `blockchain_name` is None.
11
+ - **Fix**: Restored backward compatibility for constructor parameters:
12
+ - `Vote.__init__`: Added support for deprecated `steem_instance` and `hive_instance` kwargs with deprecation warnings.
13
+ - `ActiveVotes.__init__`: Added support for deprecated `steem_instance` and `hive_instance` kwargs with deprecation warnings.
14
+ - `Witness.__init__`: Added `**kwargs` with warnings for unexpected parameters.
15
+ - `Comment_options.__init__`: Added fallback support for deprecated `percent_steem_dollars` parameter.
16
+ - **Improvement**: Removed deprecated websocket support from GrapheneRPC, now only supports HTTP/requests for better reliability and maintainability.
17
+ - **Improvement**: Simplified ecdsasig.py to use only cryptography library, removing complex conditional logic for different secp256k1 implementations. The `tweak_add` operation now raises NotImplementedError when called.
18
+ - **Major Feature**: Implemented pure Python secp256k1 elliptic curve operations for PublicKey.add() method, restoring compatibility with existing code that relies on key derivation. The implementation includes proper validation, error handling, and maintains the same API as before. All unit tests pass successfully.
19
+ - **Fix**: Fixed HiveSigner integration in TransactionBuilder:
20
+ - Updated appendSigner() to restrict permissions to 'posting' when using HiveSigner
21
+ - Fixed sign() method to properly call hivesigner.sign() and attach signatures instead of returning early
22
+ - Fixed broadcast() method to use hivesigner.broadcast() when use_hs is True
23
+ - Added proper error handling and fallbacks for non-HiveSigner flows
24
+ - **Fix**: Fixed HiveSigner.broadcast() call in TransactionBuilder to pass operations list instead of full transaction JSON, and include username when available
25
+ - **Fix**: Fixed Claim_reward_balance operation serialization in nectarbase/operations.py:
26
+ - Removed incorrect mutually-exclusive logic between reward_hive and reward_hbd
27
+ - Updated to always serialize all four fields in canonical order: account, reward_hive, reward_hbd, reward_vests
28
+ - Added proper zero-amount defaults ("0.000 HIVE"/"0.000 HBD") for missing reward fields
29
+ - Updated docstring to reflect correct behavior and field requirements
30
+ - **Fix**: Convert beneficiary weights from `HIVE_100_PERCENT` units (10000) to percentages in `Comment.get_beneficiaries_pct()` to ensure accurate outputs.
31
+ - **Fix**: Improve ECDSA signing to correctly handle prehashed messages and tighten signature canonicalization checks for better interoperability.
32
+ - **Refactor**: Reorder wallet lock verification to run after HiveSigner validation in `TransactionBuilder`, preventing premature lock errors for HiveSigner flows.
33
+ - **Refactor**: Replace implicit stdin default with an explicit blockchain selection in the CLI argument parser to avoid ambiguous behavior.
34
+ - **Refactor**: Update default Hive node configuration to use HTTPS endpoints instead of WSS.
35
+ - **Feature**: Add a pure-Python fallback for public key derivation when the `ecdsa` library is unavailable, improving portability.
36
+
37
+ ## 0.0.11 - 2025-07-25
38
+
39
+ - Fixed handling of missing `community` field in comments (`Comment`) and improved `weighted_score` type check in node list ranking (`NodeList`).
40
+
41
+ ## 0.0.10 - 2025-07-12
42
+
43
+ - Emergency hotfix: lower-case the UTC timestamp suffix during permlink generation (in `derive_permlink`) to resolve validation errors caused by the uppercase `U`.
44
+
45
+ ## 0.0.9 - 2025-07-12
46
+
47
+ - Refactored `nodelist` logic:
48
+ - `update_nodes` now reads authoritative node metadata from `nectarflower` account `json_metadata` only.
49
+ - Uses `weighted_score` directly for ranking and zeroes scores for nodes missing from the report.
50
+ - Dynamically adds new nodes from the report and failing list, ensuring completeness.
51
+ - Removed unused fall-back paths and cleaned up internal code.
52
+
53
+ ## 0.0.8
54
+
55
+ Added new documentation and type hints to community
56
+
57
+ ## 0.0.7
58
+
59
+ Removed all python2 legacy dependencies, drop python3 version requirement to >=3.10
60
+
61
+ ## 0.0.6
62
+
63
+ Updated to more robust error reporting
64
+
65
+ ## 0.0.5
66
+
67
+ More community fixes, including the Community Title Property
68
+
69
+ ## 0.0.4
70
+
71
+ Small community fixes
72
+
73
+ ## 0.0.3
74
+
75
+ Working on bridge api
76
+
77
+ ## 0.0.2
78
+
79
+ Rebranded to Nectar
80
+
81
+ ## 0.0.1
82
+
83
+ - Initial release
84
+ - Beem stops and Nectar starts
@@ -26,7 +26,7 @@ imports:
26
26
  uv run ruff check --select I --fix src
27
27
 
28
28
  test:
29
- python -m pytest -v
29
+ python3 -m pytest -v
30
30
 
31
31
  build: generate-versions
32
32
  uv build
@@ -50,6 +50,11 @@ dist: generate-versions
50
50
  # uv publish
51
51
  # python -m twine upload dist/*
52
52
 
53
+ tag:
54
+ @VERSION=$$(grep -m1 '^version[[:space:]]*=' pyproject.toml | cut -d '"' -f2) && \
55
+ echo "Creating git tag v$$VERSION" && \
56
+ git tag -a "v$$VERSION" -m "Release v$$VERSION"
57
+
53
58
  test-dist: generate-versions
54
59
  uv build
55
60
  uvx uv-publish@latest --repo testpypi
@@ -57,7 +62,7 @@ test-dist: generate-versions
57
62
  # python -m twine upload --repository testpypi dist/* --verbose
58
63
 
59
64
  docs:
60
- # sphinx-apidoc -d 6 -e -f -o docs . *.py tests
65
+ sphinx-apidoc -d 4 -e -f -o docs ./src *.py tests
61
66
  make -C docs clean html
62
67
 
63
- release: clean check dist git
68
+ release: clean check dist tag git
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hive-nectar
3
- Version: 0.0.11
4
- Summary: Unofficial Python library for HIVE
3
+ Version: 0.1.1
4
+ Summary: Hive Blockchain Python Library
5
5
  Project-URL: Homepage, http://www.github.com/thecrazygm/hive-nectar
6
- Project-URL: Download, https://github.com/thecrazygm/hive-nectar/tarball/0.0.7
6
+ Project-URL: Download, https://github.com/thecrazygm/hive-nectar/tarball/0.1.0b
7
7
  Project-URL: Bug Tracker, https://github.com/thecrazygm/hive-nectar/issues
8
8
  Author-email: Michael Garcia <thecrazygm@gmail.com>
9
9
  Maintainer-email: Michael Garcia <thecrazygm@gmail.com>
@@ -49,6 +49,7 @@ Requires-Dist: appdirs
49
49
  Requires-Dist: asn1crypto
50
50
  Requires-Dist: click
51
51
  Requires-Dist: click-shell
52
+ Requires-Dist: cryptography
52
53
  Requires-Dist: diff-match-patch
53
54
  Requires-Dist: ecdsa
54
55
  Requires-Dist: prettytable
@@ -56,13 +57,12 @@ Requires-Dist: pycryptodomex
56
57
  Requires-Dist: requests
57
58
  Requires-Dist: ruamel-yaml
58
59
  Requires-Dist: scrypt
59
- Requires-Dist: types-requests>=2.32.0.20250328
60
- Requires-Dist: websocket-client
60
+ Requires-Dist: types-requests
61
61
  Description-Content-Type: text/markdown
62
62
 
63
- # nectar - Unofficial Python Library for HIVE
63
+ # nectar - Python Library for HIVE
64
64
 
65
- nectar is an unofficial python library for HIVE, which is
65
+ nectar is a python library for HIVE, which is
66
66
  created from the remains of [beem](https://github.com/holgern/beem) which was derived from [python-bitshares](https://github.com/xeroc/python-bitshares)
67
67
  The library name is derived from a nectar of a flower.
68
68
 
@@ -72,14 +72,15 @@ nectar includes [python-graphenelib](https://github.com/xeroc/python-graphenelib
72
72
 
73
73
  [![Python Versions](https://img.shields.io/pypi/pyversions/hive-nectar.svg)](https://pypi.python.org/pypi/hive-nectar/)
74
74
 
75
+ [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/TheCrazyGM/hive-nectar)
76
+
75
77
  ## Current build status
76
78
 
77
79
  # Support & Documentation
78
80
 
79
- You may find help in the [nectar-discord-channel](). The discord channel can also be used to discuss things about nectar.
81
+ You may find help in the nectar-discord. The discord channel can also be used to discuss things about nectar.
80
82
 
81
- A complete library documentation is available at
82
- [temporary]()
83
+ A complete library documentation is available at [ReadTheDocs](https://hive-nectar.readthedocs.io/en/latest/)
83
84
 
84
85
  # About hive-nectar
85
86
 
@@ -97,7 +98,7 @@ A complete library documentation is available at
97
98
 
98
99
  # Installation
99
100
 
100
- The minimal working python version is 3.12.x
101
+ The minimal working Python version is >=3.10
101
102
 
102
103
  nectar can be installed parallel to beem.
103
104
 
@@ -1,6 +1,6 @@
1
- # nectar - Unofficial Python Library for HIVE
1
+ # nectar - Python Library for HIVE
2
2
 
3
- nectar is an unofficial python library for HIVE, which is
3
+ nectar is a python library for HIVE, which is
4
4
  created from the remains of [beem](https://github.com/holgern/beem) which was derived from [python-bitshares](https://github.com/xeroc/python-bitshares)
5
5
  The library name is derived from a nectar of a flower.
6
6
 
@@ -10,14 +10,15 @@ nectar includes [python-graphenelib](https://github.com/xeroc/python-graphenelib
10
10
 
11
11
  [![Python Versions](https://img.shields.io/pypi/pyversions/hive-nectar.svg)](https://pypi.python.org/pypi/hive-nectar/)
12
12
 
13
+ [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/TheCrazyGM/hive-nectar)
14
+
13
15
  ## Current build status
14
16
 
15
17
  # Support & Documentation
16
18
 
17
- You may find help in the [nectar-discord-channel](). The discord channel can also be used to discuss things about nectar.
19
+ You may find help in the nectar-discord. The discord channel can also be used to discuss things about nectar.
18
20
 
19
- A complete library documentation is available at
20
- [temporary]()
21
+ A complete library documentation is available at [ReadTheDocs](https://hive-nectar.readthedocs.io/en/latest/)
21
22
 
22
23
  # About hive-nectar
23
24
 
@@ -35,7 +36,7 @@ A complete library documentation is available at
35
36
 
36
37
  # Installation
37
38
 
38
- The minimal working python version is 3.12.x
39
+ The minimal working Python version is >=3.10
39
40
 
40
41
  nectar can be installed parallel to beem.
41
42
 
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" style="height: 512px; width: 512px;"><path d="M0 0h512v512H0z" fill="#ffffff" fill-opacity="1"></path><g class="" transform="translate(0,0)" style=""><path d="M254.7 32.45c-14.6 15.09-28.7 29.9-39.2 44.31-12.1 16.49-19.3 32.24-19.3 46.14 0 24.3 2.1 48.4 7.2 67.7 17.1 12 31.4 26.4 42.3 43.7v-77h18V235c12.6-17.5 27.6-31.9 44.7-44 5.1-19.4 7.3-43.7 7.3-68.2 0-13.9-7.2-29.55-19.3-46.04-10.5-14.41-26.5-29.22-41.7-44.31zM109.6 172.4c-9.79.2-21.86 2.5-34.03 6.6-17 5.7-35.64 14.6-54.58 24 9.68 18.4 19.36 36.3 29.71 50.7 11.85 18.9 24.5 30.5 38.07 34.8 24.33 7.6 45.73 12.2 65.73 13.3 18-12.5 37.4-21.6 57.3-26.5l-74.7-26 5.6-17.2 75.4 23.8c3.1-5.1 7.1-9.6 11.9-13-20.6-32.6-55.4-52.9-104.1-68.2-5-1.7-10.4-2.4-16.3-2.3zm290.8.3c-5.1.1-9.8.8-14.1 2.2-49.5 15.3-83.3 35.4-104 67.9 4.9 3.5 9.1 8 12.1 13.2l72.5-23.6 6.7 17.2-73.5 26c.1 1.5.2 2.9.2 4.4 0 4.6-.8 9.1-2.2 13.3 35.7 14.2 76.1 10.7 124.3-4.7 13.3-4.1 25.6-15.8 37.2-34.8 10.2-14.3 21.7-32.3 31.4-50.6-20.9-9.4-39.1-18.3-55.7-24-11.9-4.1-22.9-6.5-32.7-6.6zm-145.4 80c-13.8 0-24.8 13.5-24.8 27.3s11 24.8 24.8 24.8c14.4 0 27.2-11 27.2-24.8s-12.8-27.3-27.2-27.3zM214.2 293c-38 9.6-69.5 35.6-98.6 78.1-8.2 11.2-11.3 27.8-11 48 .3 17.5 3.2 37.6 6.4 60.5 20.3-3.3 40.3-6.8 57.6-11.9 21.2-8.5 36-16.6 44.2-27.8 14.4-19.9 25.5-38.9 32.7-57.6-6.7-22.3-9.7-42.3-8.3-62.7l-44.6 63.9-15.3-10.7 45.8-64.5c-4-4.3-7-9.7-8.9-15.3zm76 16.6l44 63.1-14.6 10.6-46.1-64.2c-5.9 2.4-12.3 3.7-18.5 3.7h-.1c-2.4 38.7 13.6 77 44.6 116.9 8.1 11.3 22.9 19.4 42.2 27.8 16.7 5.2 38.8 8.6 59.5 11.9 3.2-22.9 6.2-43 6.4-60.5.3-20.1-2.8-36.7-11-47.9-14.4-22.2-31.2-38.5-46.6-51.1-20.9.4-40.8-2.8-59.8-10.3z" fill="#000000" fill-opacity="1"></path></g></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" style="height: 512px; width: 512px;"><path d="M0 0h512v512H0z" fill="#ffffff" fill-opacity="1"></path><g class="" transform="translate(0,0)" style=""><path d="M254.7 32.45c-14.6 15.09-28.7 29.9-39.2 44.31-12.1 16.49-19.3 32.24-19.3 46.14 0 24.3 2.1 48.4 7.2 67.7 17.1 12 31.4 26.4 42.3 43.7v-77h18V235c12.6-17.5 27.6-31.9 44.7-44 5.1-19.4 7.3-43.7 7.3-68.2 0-13.9-7.2-29.55-19.3-46.04-10.5-14.41-26.5-29.22-41.7-44.31zM109.6 172.4c-9.79.2-21.86 2.5-34.03 6.6-17 5.7-35.64 14.6-54.58 24 9.68 18.4 19.36 36.3 29.71 50.7 11.85 18.9 24.5 30.5 38.07 34.8 24.33 7.6 45.73 12.2 65.73 13.3 18-12.5 37.4-21.6 57.3-26.5l-74.7-26 5.6-17.2 75.4 23.8c3.1-5.1 7.1-9.6 11.9-13-20.6-32.6-55.4-52.9-104.1-68.2-5-1.7-10.4-2.4-16.3-2.3zm290.8.3c-5.1.1-9.8.8-14.1 2.2-49.5 15.3-83.3 35.4-104 67.9 4.9 3.5 9.1 8 12.1 13.2l72.5-23.6 6.7 17.2-73.5 26c.1 1.5.2 2.9.2 4.4 0 4.6-.8 9.1-2.2 13.3 35.7 14.2 76.1 10.7 124.3-4.7 13.3-4.1 25.6-15.8 37.2-34.8 10.2-14.3 21.7-32.3 31.4-50.6-20.9-9.4-39.1-18.3-55.7-24-11.9-4.1-22.9-6.5-32.7-6.6zm-145.4 80c-13.8 0-24.8 13.5-24.8 27.3s11 24.8 24.8 24.8c14.4 0 27.2-11 27.2-24.8s-12.8-27.3-27.2-27.3zM214.2 293c-38 9.6-69.5 35.6-98.6 78.1-8.2 11.2-11.3 27.8-11 48 .3 17.5 3.2 37.6 6.4 60.5 20.3-3.3 40.3-6.8 57.6-11.9 21.2-8.5 36-16.6 44.2-27.8 14.4-19.9 25.5-38.9 32.7-57.6-6.7-22.3-9.7-42.3-8.3-62.7l-44.6 63.9-15.3-10.7 45.8-64.5c-4-4.3-7-9.7-8.9-15.3zm76 16.6l44 63.1-14.6 10.6-46.1-64.2c-5.9 2.4-12.3 3.7-18.5 3.7h-.1c-2.4 38.7 13.6 77 44.6 116.9 8.1 11.3 22.9 19.4 42.2 27.8 16.7 5.2 38.8 8.6 59.5 11.9 3.2-22.9 6.2-43 6.4-60.5.3-20.1-2.8-36.7-11-47.9-14.4-22.2-31.2-38.5-46.6-51.1-20.9.4-40.8-2.8-59.8-10.3z" fill="#000000" fill-opacity="1"></path></g></svg>
@@ -50,7 +50,7 @@ get_account_history
50
50
  .. code-block:: python
51
51
 
52
52
  from nectar.account import Account
53
- acc = Account("steemit")
53
+ acc = Account("thecrazygm")
54
54
  for h in acc.get_account_history(1,0):
55
55
  print(h)
56
56
 
@@ -145,9 +145,9 @@ get_chain_properties
145
145
 
146
146
  .. code-block:: python
147
147
 
148
- from nectar import Steem
149
- stm = Steem()
150
- print(stm.get_chain_properties())
148
+ from nectar import Hive
149
+ hv = Hive()
150
+ print(hv.get_chain_properties())
151
151
 
152
152
  get_comment_discussions_by_payout
153
153
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -164,9 +164,9 @@ get_config
164
164
 
165
165
  .. code-block:: python
166
166
 
167
- from nectar import Steem
168
- stm = Steem()
169
- print(stm.get_config())
167
+ from nectar import Hive
168
+ hv = Hive()
169
+ print(hv.get_config())
170
170
 
171
171
  get_content
172
172
  ~~~~~~~~~~~
@@ -207,9 +207,9 @@ get_current_median_history_price
207
207
 
208
208
  .. code-block:: python
209
209
 
210
- from nectar import Steem
211
- stm = Steem()
212
- print(stm.get_current_median_history())
210
+ from nectar import Hive
211
+ hv = Hive()
212
+ print(hv.get_current_median_history())
213
213
 
214
214
 
215
215
  get_discussions_by_active
@@ -267,7 +267,7 @@ get_discussions_by_comments
267
267
  .. code-block:: python
268
268
 
269
269
  from nectar.discussions import Query, Discussions_by_comments
270
- q = Query(limit=10, start_author="steemit", start_permlink="firstpost")
270
+ q = Query(limit=10, start_author="thecrazygm", start_permlink="firstpost")
271
271
  for h in Discussions_by_comments(q):
272
272
  print(h)
273
273
 
@@ -287,7 +287,7 @@ get_discussions_by_feed
287
287
  .. code-block:: python
288
288
 
289
289
  from nectar.discussions import Query, Discussions_by_feed
290
- q = Query(limit=10, tag="steem")
290
+ q = Query(limit=10, tag="hive")
291
291
  for h in Discussions_by_feed(q):
292
292
  print(h)
293
293
 
@@ -297,7 +297,7 @@ get_discussions_by_hot
297
297
  .. code-block:: python
298
298
 
299
299
  from nectar.discussions import Query, Discussions_by_hot
300
- q = Query(limit=10, tag="steem")
300
+ q = Query(limit=10, tag="hive")
301
301
  for h in Discussions_by_hot(q):
302
302
  print(h)
303
303
 
@@ -307,7 +307,7 @@ get_discussions_by_promoted
307
307
  .. code-block:: python
308
308
 
309
309
  from nectar.discussions import Query, Discussions_by_promoted
310
- q = Query(limit=10, tag="steem")
310
+ q = Query(limit=10, tag="hive")
311
311
  for h in Discussions_by_promoted(q):
312
312
  print(h)
313
313
 
@@ -317,7 +317,7 @@ get_discussions_by_trending
317
317
  .. code-block:: python
318
318
 
319
319
  from nectar.discussions import Query, Discussions_by_trending
320
- q = Query(limit=10, tag="steem")
320
+ q = Query(limit=10, tag="hive")
321
321
  for h in Discussions_by_trending(q):
322
322
  print(h)
323
323
 
@@ -336,9 +336,9 @@ get_dynamic_global_properties
336
336
 
337
337
  .. code-block:: python
338
338
 
339
- from nectar import Steem
340
- stm = Steem()
341
- print(stm.get_dynamic_global_properties())
339
+ from nectar import Hive
340
+ hv = Hive()
341
+ print(hv.get_dynamic_global_properties())
342
342
 
343
343
  get_escrow
344
344
  ~~~~~~~~~~
@@ -383,9 +383,9 @@ get_feed_history
383
383
 
384
384
  .. code-block:: python
385
385
 
386
- from nectar import Steem
387
- stm = Steem()
388
- print(stm.get_feed_history())
386
+ from nectar import Hive
387
+ hv = Hive()
388
+ print(hv.get_feed_history())
389
389
 
390
390
  get_follow_count
391
391
  ~~~~~~~~~~~~~~~~
@@ -421,9 +421,9 @@ get_hardfork_version
421
421
 
422
422
  .. code-block:: python
423
423
 
424
- from nectar import Steem
425
- stm = Steem()
426
- print(stm.get_hardfork_properties()["hf_version"])
424
+ from nectar import Hive
425
+ hv = Hive()
426
+ print(hv.get_hardfork_properties()["hf_version"])
427
427
 
428
428
  get_key_references
429
429
  ~~~~~~~~~~~~~~~~~~
@@ -461,9 +461,9 @@ get_next_scheduled_hardfork
461
461
 
462
462
  .. code-block:: python
463
463
 
464
- from nectar import Steem
465
- stm = Steem()
466
- print(stm.get_hardfork_properties())
464
+ from nectar import Hive
465
+ hv = Hive()
466
+ print(hv.get_hardfork_properties())
467
467
 
468
468
  get_open_orders
469
469
  ~~~~~~~~~~~~~~~
@@ -563,7 +563,7 @@ get_replies_by_last_update
563
563
  .. code-block:: python
564
564
 
565
565
  from nectar.discussions import Query, Replies_by_last_update
566
- q = Query(limit=10, start_author="steemit", start_permlink="firstpost")
566
+ q = Query(limit=10, start_author="thecrazygm", start_permlink="firstpost")
567
567
  for h in Replies_by_last_update(q):
568
568
  print(h)
569
569
 
@@ -585,9 +585,9 @@ get_reward_fund
585
585
 
586
586
  .. code-block:: python
587
587
 
588
- from nectar import Steem
589
- stm = Steem()
590
- print(stm.get_reward_funds())
588
+ from nectar import Hive
589
+ hv = Hive()
590
+ print(hv.get_reward_funds())
591
591
 
592
592
  get_savings_withdraw_from
593
593
  ~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -670,7 +670,7 @@ get_trending_tags
670
670
  .. code-block:: python
671
671
 
672
672
  from nectar.discussions import Query, Trending_tags
673
- q = Query(limit=10, start_tag="steemit")
673
+ q = Query(limit=10, start_tag="hive")
674
674
  for h in Trending_tags(q):
675
675
  print(h)
676
676
 
@@ -729,9 +729,9 @@ get_witness_schedule
729
729
 
730
730
  .. code-block:: python
731
731
 
732
- from nectar import Steem
733
- stm = Steem()
734
- print(stm.get_witness_schedule())
732
+ from nectar import Hive
733
+ hv = Hive()
734
+ print(hv.get_witness_schedule())
735
735
 
736
736
  get_witnesses
737
737
  ~~~~~~~~~~~~~
@@ -0,0 +1,173 @@
1
+ Changelog
2
+ =========
3
+
4
+ 0.1.1 - 2025-09-17
5
+ ------------------
6
+
7
+ - **Fix**: Added support for ``only_ops`` and ``only_virtual_ops``
8
+ parameters in ``Blocks`` constructor.
9
+
10
+ 0.1.0b - 2025-09-17
11
+ -------------------
12
+
13
+ - **Breaking Change**: Killed everything that was not specifcally HIVE
14
+ related. If you used this for STEEM and / or Blurt, they are no
15
+ longer supported.
16
+ - **Fix**: Corrected inverted fallback logic in chain detection to
17
+ prefer HIVE over STEEM when ``blockchain_name`` is None.
18
+ - **Fix**: Restored backward compatibility for constructor parameters:
19
+
20
+ - ``Vote.__init__``: Added support for deprecated ``steem_instance``
21
+ and ``hive_instance`` kwargs with deprecation warnings.
22
+ - ``ActiveVotes.__init__``: Added support for deprecated
23
+ ``steem_instance`` and ``hive_instance`` kwargs with deprecation
24
+ warnings.
25
+ - ``Witness.__init__``: Added ``**kwargs`` with warnings for
26
+ unexpected parameters.
27
+ - ``Comment_options.__init__``: Added fallback support for
28
+ deprecated ``percent_steem_dollars`` parameter.
29
+
30
+ - **Improvement**: Removed deprecated websocket support from
31
+ GrapheneRPC, now only supports HTTP/requests for better reliability
32
+ and maintainability.
33
+ - **Improvement**: Simplified ecdsasig.py to use only cryptography
34
+ library, removing complex conditional logic for different secp256k1
35
+ implementations. The ``tweak_add`` operation now raises
36
+ NotImplementedError when called.
37
+ - **Major Feature**: Implemented pure Python secp256k1 elliptic curve
38
+ operations for PublicKey.add() method, restoring compatibility with
39
+ existing code that relies on key derivation. The implementation
40
+ includes proper validation, error handling, and maintains the same
41
+ API as before. All unit tests pass successfully.
42
+ - **Fix**: Fixed HiveSigner integration in TransactionBuilder:
43
+
44
+ - Updated appendSigner() to restrict permissions to ‘posting’ when
45
+ using HiveSigner
46
+ - Fixed sign() method to properly call hivesigner.sign() and attach
47
+ signatures instead of returning early
48
+ - Fixed broadcast() method to use hivesigner.broadcast() when use_hs
49
+ is True
50
+ - Added proper error handling and fallbacks for non-HiveSigner flows
51
+ - **Fix**: Fixed HiveSigner.broadcast() call in TransactionBuilder
52
+ to pass operations list instead of full transaction JSON, and
53
+ include username when available
54
+
55
+ - **Fix**: Fixed Claim_reward_balance operation serialization in
56
+ nectarbase/operations.py:
57
+
58
+ - Removed incorrect mutually-exclusive logic between reward_hive and
59
+ reward_hbd
60
+ - Updated to always serialize all four fields in canonical order:
61
+ account, reward_hive, reward_hbd, reward_vests
62
+ - Added proper zero-amount defaults (“0.000 HIVE”/“0.000 HBD”) for
63
+ missing reward fields
64
+ - Updated docstring to reflect correct behavior and field
65
+ requirements
66
+
67
+ - **Fix**: Convert beneficiary weights from ``HIVE_100_PERCENT`` units
68
+ (10000) to percentages in ``Comment.get_beneficiaries_pct()`` to
69
+ ensure accurate outputs.
70
+ - **Fix**: Improve ECDSA signing to correctly handle prehashed messages
71
+ and tighten signature canonicalization checks for better
72
+ interoperability.
73
+ - **Refactor**: Reorder wallet lock verification to run after
74
+ HiveSigner validation in ``TransactionBuilder``, preventing premature
75
+ lock errors for HiveSigner flows.
76
+ - **Refactor**: Replace implicit stdin default with an explicit
77
+ blockchain selection in the CLI argument parser to avoid ambiguous
78
+ behavior.
79
+ - **Refactor**: Update default Hive node configuration to use HTTPS
80
+ endpoints instead of WSS.
81
+ - **Feature**: Add a pure-Python fallback for public key derivation
82
+ when the ``ecdsa`` library is unavailable, improving portability.
83
+
84
+ .. _section-1:
85
+
86
+ 0.0.11 - 2025-07-25
87
+ -------------------
88
+
89
+ - Fixed handling of missing ``community`` field in comments
90
+ (``Comment``) and improved ``weighted_score`` type check in node list
91
+ ranking (``NodeList``).
92
+
93
+ .. _section-2:
94
+
95
+ 0.0.10 - 2025-07-12
96
+ -------------------
97
+
98
+ - Emergency hotfix: lower-case the UTC timestamp suffix during permlink
99
+ generation (in ``derive_permlink``) to resolve validation errors
100
+ caused by the uppercase ``U``.
101
+
102
+ .. _section-3:
103
+
104
+ 0.0.9 - 2025-07-12
105
+ ------------------
106
+
107
+ - Refactored ``nodelist`` logic:
108
+
109
+ - ``update_nodes`` now reads authoritative node metadata from
110
+ ``nectarflower`` account ``json_metadata`` only.
111
+ - Uses ``weighted_score`` directly for ranking and zeroes scores for
112
+ nodes missing from the report.
113
+ - Dynamically adds new nodes from the report and failing list,
114
+ ensuring completeness.
115
+ - Removed unused fall-back paths and cleaned up internal code.
116
+
117
+ .. _section-4:
118
+
119
+ 0.0.8
120
+ -----
121
+
122
+ Added new documentation and type hints to community
123
+
124
+ .. _section-5:
125
+
126
+ 0.0.7
127
+ -----
128
+
129
+ Removed all python2 legacy dependencies, drop python3 version
130
+ requirement to >=3.10
131
+
132
+ .. _section-6:
133
+
134
+ 0.0.6
135
+ -----
136
+
137
+ Updated to more robust error reporting
138
+
139
+ .. _section-7:
140
+
141
+ 0.0.5
142
+ -----
143
+
144
+ More community fixes, including the Community Title Property
145
+
146
+ .. _section-8:
147
+
148
+ 0.0.4
149
+ -----
150
+
151
+ Small community fixes
152
+
153
+ .. _section-9:
154
+
155
+ 0.0.3
156
+ -----
157
+
158
+ Working on bridge api
159
+
160
+ .. _section-10:
161
+
162
+ 0.0.2
163
+ -----
164
+
165
+ Rebranded to Nectar
166
+
167
+ .. _section-11:
168
+
169
+ 0.0.1
170
+ -----
171
+
172
+ - Initial release
173
+ - Beem stops and Nectar starts