All notable changes to this project are documented in this file.

[0.6.3-dev] in progress

[0.6.2] 2018-03-21

  • Implementing interop type MAP along with new opcodes NEWMAP HASKEY KEYS VALUES and modify ARRAYSIZE PICKITEM SETITEM REMOVE to support MAP as per PR here <>__
  • Added support for using --from-addr= to specify the address to use for testinvoke in (PR #329)
  • Fixed neo/bin/ to redact WIF keys, nep2 keys and contract metadata from the command history file
  • Added TransactionInvocation.GetScript to
  • Fixed missing uri locations in neo/api/REST/ (PR #342)
  • Fixed privatenet check by fixing the chain path for checks in Settings (PR #341)
  • Fixed neo-privnet.sample.wallet
  • Fix for current block height lag behind other RPC implementations by 1-3 blocks
  • Fixed to use the specified data directory, instead of hard-coded relative paths.
  • Test chains moved to the user data directory, instead of the projects code path.

[0.6.1] 2018-03-16

  • Fixed README reference in

  • Added additional error messages to to help with debugging smart contracts.

  • Changes for Pypi compatibility: - move protocol.*.json to neo/data/ - move and other scripts to neo/bin - default chain data path is now in ~/.neopython/Chains. prompt.log and prompt.history files are also stored there - the following console scripts are now on the venv path after running pip install neo-python or pip install -e . for github based installs:

    • np-prompt
    • np-api-server
    • np-bootstrap
    • np-reencrypt-wallet
    • updated docs for Pypi changes

[0.5.7] 2018-03-14

  • update to neocore==0.3.8
  • Fixed README reference in, add pypi badge to readme
  • Add ability to specify --datadir path for where leveldb directories are stored
  • Tries to auto-create Chains directory in --datadir if it doesnt exist
  • Add scripts to be exported for package install. np_prompt, np_api_server, np_bootstrap, and np_reencrypt_wallet available as commands after pip install
  • add protocol.*.json into data package
  • move neo-privnet.wallet to neo-privnet.sample.wallet and .gitignore neo-privnet.wallet
  • Change to README.rst`

[0.5.4] 2018-03-14

  • All requests to the API that are invalid will now receive a None for results rather than an empty list []
  • update to neo-boa==0.3.7
  • Improved logging setup. See the options with ./ -h
  • Added sc-debug-notify option to the config console command. This preserves smart contract Notify() events when SC execution fails and is intended for SC debugging purposes only.
  • Added VM instruction counter to error messages to indicate the final instruction that failed. Allows for setting conditional breakpoints to support SC debugging.
  • Renamed neo.api.REST.NotificationRestApi to neo.api.REST.RestApi
  • Added -v/--verbose argument to, which makes show smart contract events by default
  • Added vm-log option to the config console command. This enabled logging of VM instructions to vm_instructions.log for debugging purposes.
  • Fix multi-signature contract import to allow using a single signature
  • Fix fund sending from multi-signature contract
  • Added instructions on retrieving NEO TestNet funds
  • Fixed issue with missing notifications/ prefix for addr call in neo/api/REST/
  • Added neo-privnet.wallet to the project root. This is the standard wallet for private networks.
  • When using a privnet with -p, check if chain database is correct. Renamed Chains/Priv_Notif to Chains/privnet_notif (if you need your old privnet notification db, you need to rename it manually).
  • Optionally allow to use custom privnet hosts with -p (PR #312)
  • Added a dependency check to, which verifies that the installed dependencies match those in requirements.txt

[0.5.3] 2018-03-04

  • add documentation for data types in neo-python
  • add intructions on build, build .. test, import contract, and testinvoke to docs
  • BuildNRun results now converted to ContractParameter before printed
  • contract {hash} no longer throws errors when it is not an NEP5 contract
  • Added method AsParameterType to ContractParameter for casting results

[0.5.1] 2018-03-02

  • Documentation and Dockerfile updates for Python 3.6
  • Notification API: include peer count in status
  • Fix token error handling (cedde9ec)
  • Added warning about wallet syncing prior to logging insufficient funds error, added IsSynced method Wallet class to check this (PR #2259)

[0.5.0] 2018-03-01

  • Move to Python 3.6 (PR #270)
    • move to only python 3.6+ support
    • use new version of compiler ( neo-boa==0.3.3 ) based on python 3.6 wordcode
    • full testing of VM and all compiled smart contracts
    • adds new command TestBuild for running tests of compiled contracts
  • Add Notification REST URL prefix (PR #274)
  • Add (PR #271)
  • Fixed script value returned by JSON-RPC invokes (PR #268)
  • Added support for additional JSON-RPC “type” parameters (PR #267)
  • Updating of almost all dependencies (PR #261)
  • Fixed bug with transactions consuming between 9 and 10 GAS (PR #260)
  • Added automatic deploy to pypi (PR #275)
  • Updated Notification REST API URLs with /v1 prefix, and some with /v1/notifications (PR #274)
  • Fixed inconsistencies with JSON-RPC output values (PR #272)

[0.4.9] 2018-02-21

  • wallet sync error and password fixes related to encryption changes (PR #245)
  • import contract_addr and build … test fixes (PR #237)
  • Easy Coznet support(PR #239)
  • ContractParameterContext fix (PR #242)
  • Zero length bytearray in VM fix (PR #244)
  • Wallet Encryption changes (PR #232)
  • Close wallet on quit (PR #226)
  • Bugfix for smart contract storage events (PR #228)

[0.4.8] 2018-02-15

  • Fix Gas Cost Calculation (PR #220)
  • Clarify message for token mint command (PR #212)
  • Troubleshooting osx script (PR #208)
  • Make Contract Search case insensitive (PR #207)
  • implement a more robust CLI command parser
  • added peristence to NotificationDB for NEP5 Tokens
  • upstream neocore update

[0.4.6] 2018-01-24

  • Added support for StateTransaction and StateDescriptors (PR #193)
  • Allow multiple open wallets (PR #185)
  • Added ability to include transaction attributes with the send command. example: send neo APRgMZHZubii29UXF9uFa6sohrsYupNAvx 10 --tx-attr={'usage':241,'data':'My Remark'} (PR #184)
  • Notification REST API (PR #177, examples/
  • Minor cleanups and documentation updates

[0.4.5] 2018-01-18

  • updated neo-boa to 0.2.2, added support for array REMOVE VM opcodes
  • moved core functions to neocore
  • better LevelDB support for OSX
  • dependency udates
  • Makefile with some useful commands
  • ability to claim GAS from SC address
  • lots of documentation
  • various small bugfixes

[0.4.3] 2017-12-21

  • updated neo-boa to 0.2.1
  • added support for array REVERSE and APPEND VM opcodes

[0.4.3] 2017-12-21

  • updated neo-boa to 0.2.1
  • added support for array REVERSE and APPEND VM opcodes

[0.4.2] 2017-12-18

[0.4.1] 2017-12-15

  • added support for runtime notifications from verification contracts
  • added support for checking verification during mintTokens invoke
  • updated prompt help
  • added additional SC Api ( Neo.Runtime.GetTime, Neo.Transaction.GetUnspentCoins, Neo.Header.GetIndex)
  • added support for dynamically defined smart contract execution
  • added ability to alias an address in the wallet