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

[0.9.2] In progress¶ Fix shutdown operations when initializing np-api-server and setting minpeers/maxpeers, opening a wallet, or changing databases

Minor improvement to network recovery logic when running out of good node addresses

Fix NEP-5 contract detection causing an EventHub exception due to wrong ApplicationEngine initialization

Fix syntax warnings caused by comparing literals with is not , instead of !=

[0.9.1] 2019-09-16¶ Reformat wallet verbose output to include big-endian scripthash

Fix network syncing against neo-cli 2.10.3 clients

clients Update Python requirements

Fix Docker configuration pip issue

Fix parsing prompt command arguments that include spaces (e.g. description tx attributes)

[0.9.0] 2019-08-21¶ Allow override of test invocation return type

Add current wallet height to bottom toolbar

Change class attributes of Transaction into instance attributes and fix constructor

into instance attributes and fix constructor Fix sys_fee calculation in block persist.

Improve testing of “getbalance” RPC method

Support cancelling actions with KeyboardInterrupt

Enhance output of wallet cli command

cli command Fixed size calculation for RegisterTransaction

Support updating np-core to throw exceptions instead of logging errors #888

Fixed size calculation for InvocationTransaction #919

#919 Update Virtual Machine to latest implementation, Add support for running official JSON test vectors #921 #932

Add PICKITEM for ByteArray into VM #923

Improve Connection Failure Handling in NodeLeader #915

Improve transaction coverage and fix PublishTransaction.Size() #929

#929 Align Fixed8 ToString() output with C# #941

output with C# #941 Move from using Twisted to asyncio as event driven framework #934

to as event driven framework #934 Add new networking code

Add IP Filtering

Tighten smart contract storage context validation

Update VM to 2.4.3 (Also updates ApplicationEngine , StateReader and StateMachine )

, and ) Add support for new Ping/Pong network payload

Add neo-vm JSON test support + add new Debugger wrapping class

Various VM performance updates

Various code cleaning updates

Ensure LevelDB iterators are close, ensure all MemoryStream usages go through StreamManger and are closed.

usages go through and are closed. Fix np-import not importing headers ahead of block persisting potentially unexpected VM execution results

not importing headers ahead of block persisting potentially unexpected VM execution results Fix undesired debug statement printing

Add negative bitwise shifting support for BigInteger to match C#

to match C# Include address aliases in wallet command output

command output Fix config maxpeers and update tests

and update tests Fix error while parsing list arguments from prompt for smart contract test invocations

Fix Runtime.GetTrigger and Transaction.GetType syscalls pushing wrong StackItem type

and syscalls pushing wrong StackItem type Update handling of default cause for PICKITEM instruction

instruction Fix InteropService.GetInterface not validating types correctly

not validating types correctly Speed up np-import when appending blocks

when appending blocks Fix BigInteger.ToByteArray() for some negative values to return too many bytes

for some negative values to return too many bytes Implement SimplePolicyPlugin for transactions sent to a node #960

Fix transaction deserialization not setting correct type for ContractTransaction

Fix GetBigInteger() return value of Boolean StackItem to return correct type

return value of to return correct type Add workaround for Neo.Contract.Create SYSCALl accepting invalid ContractParameterType ’s until neo-cli fixes it to keep same state

SYSCALl accepting invalid ’s until neo-cli fixes it to keep same state Fix parsing nested lists #954

Fix clearing storage manipulations on failed invocation transaction execution

Port caching layer from neo-cli

Fix Contract_Migrate syscall

syscall Fix BigInteger modulo for negative divisor values

modulo for negative divisor values Fix GetBoolean() for Array stackitem

for stackitem Fix BigInteger division for negative dividend values

division for negative dividend values Add functionality for RawTransaction class

Fix GetPriceForSysCall() for a Neo.Contract.Create syscall with invalid contract properties

for a syscall with invalid contract properties Updated np-bootstrap to delete the downloaded bootstrap file by default #986

to delete the downloaded bootstrap file by default #986 Fix Remove() behaviour for Map and Array types to be inline with C#

behaviour for and types to be inline with C# Add support for compressed syscalls

Validate SimplePolicy for signed transactions

Fix NEP-5 token send operation in np-prompt to properly handle token decimals /scale #990

to properly handle token /scale #990 Fix NOT VM instruction

VM instruction Fix StackItem deserialization for Boolean VM type

VM type Update CheckDynamicInvoke to operate on snapshots

to operate on snapshots Fix Contract.Destroy not always deleting storage

not always deleting storage Fix Equals() of ByteArray

of Fix max recursion depth exception when counting certain VM StackItems that point to themselves

Fix RIGHT opcode for 0 count edge case

[0.8.4] 2019-02-14¶ Fix incorrect error handling when importing a 1 out of 2 multi-signature address #860

Gracefully handle invalid GET request #863

request #863 Implement tx size network fee calc #869

Fix config maxpeers to disconnect peers if limit is lower than before #878

to disconnect peers if limit is lower than before #878 Implement the ability to attach a priority fee to applicable transactions #880

Fix an invalid list access error during client connection error edge case #882

Fix NetworkAddressWithTime address serialization #897

address serialization #897 Add additional debug logging to help investigate transaction verification failures #898

[0.8.3] 2019-01-16¶ Update getassetstate RPC method to support neo and gas aliases; Cleanup show_contract_state #667

RPC method to support and aliases; Cleanup #667 Add fix to ensure tx is saved to wallet when sent using RPC #680

Disallow Void type input parameters for smart contracts and increase test coverage #690

type input parameters for smart contracts and increase test coverage #690 Fix confirmed tx not being purged from mempool #703

Fix bootstrap thread joining failure on Ubuntu systems #705

Make bootstrap lookup dynamic such that users don’t have to update their configs from here on forward #705

Move some warnings and ‘expected’ errors to DEBUG level to avoid logging to console by default #708

level to avoid logging to console by default #708 Empty VerificationScripts for deployed contracts now work as intended #709

Fix various issues related to signing multi-signature transactions #710

Add GET and OPTIONS request functionality for JSON-RPC servers #712

Fix RPC’s getaccountstate response schema to match neo-cli #714

response schema to match #714 Add bad peers to the getpeers RPC method #715

RPC method #715 Allow a raw tx to be build without an active blockchain db in the environment #718

Introduce Django inspired component loading for REST and RPC server #719

Fix unnecessary default bootstrap warning for mainnet showing. #722

Various updates to the network code to improve stability as well as inspection #723 Added peer health checking to validate that we get the data we requested within a given time threshold Added peer connection monitoring to keep queueing or reset if we have no more valid addresses to connect to. Added extensive logging to improve inspection

Fix gzip failure in current implementation of ExtendedJsonRpcApi #724

failure in current implementation of ExtendedJsonRpcApi #724 Gracefully handle balance query failures of NEP-5 tokens. #744

Fix getcontractstate JSON output to match neo-cli 2.9.2 #746

JSON output to match neo-cli 2.9.2 #746 Fix getrawtransaction JSON output to match neo-cli 2.9.2 #751

JSON output to match neo-cli 2.9.2 #751 Add --to-addr option when claiming gas #755

option when claiming gas #755 Remove ExtendedJsonRpc server from base repo (still available as extension) #756

server from base repo (still available as extension) #756 Fix calculation of asset change value when using multiple alternating asset inputs #803

Refactor CLI to be more user friendly and support better future extensibility #805

Update TestNet seeds #807

Add Reset logic to NodeLeader such that Blockchain fixture testcases reset properly #809

Resolve peewee DeprecationWarning #810

Add VM SafeReadBytes #812

Add gettransactionheight RPC method #813

Update ApplicationEngine methods CheckStackSize and GetPrice #814

methods and #814 Cleanup show nodes output #815

[0.8.2] 2018-10-31¶ Improve Tokens.py and token_send , increase test coverage

, increase test coverage Fix max recursion depth exceeding when network data inflow exceeds processing speed

Add log output control via the new config output_level command. The old config debug command is removed.

command. The old command is removed. Update Readme and Prompt.py help

Update documentation to include new IsPayable contract flag in the examples

contract flag in the examples Fix discrepancy between getpeers RPC call and the maxpeers setting

RPC call and the setting Update CreateAddress functionality and tests

functionality and tests Add VM sanity checks for operations on BigInteger ’s

’s Add raw transaction building examples in \examples\ folder

folder Add ExtendedJsonRpcApi, Add getnodestate RPC extended method, Add gettxhistory RPC extended method

RPC extended method, Add RPC extended method Fix return types of claimGas function.

function. Update compiler version v0.5.6

Add the option -u (unittest-net) to prompt.py

Add fixtures guidelines and add the smart contract source codes (UnitTest-SM.zip) to the fixtures package

Adds sendmany feature to prompt.py, integrates with send feature, and adds provisions for sending with a negative fee and bad from_address

feature to prompt.py, integrates with feature, and adds provisions for sending with a negative fee and bad from_address Fix ExtendedJsonRpcApi

Fix cleaning up tasks for disconnected peers #687

Fix duplicate task starting for requesting blocks

Add getblockheader RPC method

RPC method Remove Neo.Witness.GetInvocationScript

Allow wallets to sync past corrupt blocks

[0.8.1] 2018-10-06¶ Add sendmany and sendfrom RPC methods & tests and integrate with sendtoaddress

and RPC methods & tests and integrate with Updated all the dependencies

Add Neo.Transaction.GetWitnesses , Neo.Witness.GetInvocationScript , Neo.Witness.GetVerificationScript

, , Change notification transfer event format to use string quoted integer

Fix Notification token list to include correct hash for contract and token

Removes all hold and withdraw related functionality from wallet and prompt

and related functionality from wallet and prompt Various updates to inaccuracies in ToJson output of AccountState

output of Add documentation support for Python 3.7

Change execution fail event payload to give more meaningful error messages

[0.8.0] 2018-09-28¶ Implemented sendtoaddress RPC method #556

RPC method #556 Gracefully handle network packet deserialization failures

Implementation Stack Isolation (NEP8)

Fix issue resetting storage between Smart Contract invocations

Default ApplicationConfiguration.AcceptIncomingPeers to False , if config value is not present

to , if config value is not present Update seed list to include NGD nodes

Fix unhandled deferred errors

Fix Blockchain.DeregisterBlockchain not clearing all static variables

not clearing all static variables Disable prompt.py test cases due to high time consumption and unreliable results.

test cases due to high time consumption and unreliable results. Migrate the existing test cases, which depend on BlockchainFixtureTestCase and WalletFixtureTestCase, to a privnet. Reduction of the fixtures’ size to about 7MB. #478

Ensure non-zero send value in prompt.py

Update block importing and exporting functionality.

Add send-zero provision and improved test coverage to sendtoaddress

Update Mainnet bootstrap files

Update to compiler version v0.5.3

[0.7.8] 2018-09-06¶ Prefix vin JSON output format to match C#

JSON output format to match C# Update neo-boa to v0.5.0 for Python 3.7 compatibility

to v0.5.0 for Python 3.7 compatibility Update pexpect to 4.6.0 to be compatible with Python 3.7

to 4.6.0 to be compatible with Python 3.7 Accept incoming node connections, configurable via protocol config file setting (default: OFF)

Fixes vulnerability to RPC invoke functionality that can send node into unclosed loop during ‘test’ invokes

Fix issue with opening recently created wallets

Fix import_blocks.py block hash caching issue

block hash caching issue Update prompt.py: add account to help, update help, update standard completions, add config maxpeers functionality, update configure function arguments to behave as intended

to help, update help, update standard completions, add functionality, update function arguments to behave as intended Add support for multiple requests in one transaction for JSON-RPC

Update docs toctree so all pages are indexed & added instructions for contributing to docs

[0.7.7] 2018-08-23¶ Fix issue with UserWallet.SaveStoredData

Update neo-core to v0.5.1

Add appropriate GAS cost for CHECKMULTISIG for an array

for an array Add appropriate GAS cost for VERIFY

Update test_prompt.py to acheive passing neo-python-core build

Add Seedlist.rst and update Basicusage.rst for API Servers

Add test for np-prompt using pexpect

Add getwalletheight RPC call

Add support for Peewee 3.6.4

Add support for IsPayable flag in prompt.

flag in prompt. Fix Block header problems with block_import.py script

script Sync GAS price calculations with current Neo core

Update bootstrap files for mainnet and testnet

Fix ContextItem JSOn decoding

JSOn decoding Fix sys_fee calculation for certain transaction types

calculation for certain transaction types Fix TransactionAttribute duplication in Transactions

[0.7.6] 2018-08-02¶ Adds ability to attach a fee to a send transaction

transaction Update Node selection mechanism

Store Transactions list items inside a Block in a consistent format.

list items inside a in a consistent format. Improved peer connection maintenance

[0.7.5] 2018-07-19¶ Add CreateAddress Feature

Update NodeLeader peer monitoring system

Add ability to configure size of requests for blocks as well as block processing queue size

Update mainnet bootstrap files

Fix size calculations for all serializable classes

Add size key to JSON output of Block and Transaction

key to JSON output of Block and Transaction add prompt command to split VIN to multiple VOUT

update notification endpoint to include total_pages in output, and allow pagesize paramater to be passed in

in output, and allow paramater to be passed in update seeds for mainnet

[0.7.3] 2018-07-12¶ Updated package requirements, removed pycrypto from all dependencies to fix install error(s) #485

from all dependencies to fix install error(s) #485 Adds option to enter arguments for smart contract in an ‘interactive’ mode, which allows for much better parsing of input, activated by passing the --i flag when invoking.

flag when invoking. Adds ability to not parse address strings such as AeV59NyZtgj5AMQ7vY6yhr2MRvcfFeLWSb when inputting to smart contract by passing the --no-parse flag

flag Changes the structure of items dispatched in SmartContractEvents to use the ContractParameter interface for better type inference and variable usage.

interface for better type inference and variable usage. Fix sending NEP5 tokesn from a multisig address.

Bugfix: np-api-server with open wallet now properly processes new blocks

Update neo-boa to v0.4.8 and neocore to v0.4.11

Add VM support for Neo.Contract.IsPayable

[0.7.2] 2018-06-21¶ When using a custom datadir (with --datadir ), np-prompt will store log and history files there instead of the default directory. Note: if you use a custom datadir that does not yet exist, np-prompt starts without history or logs because those files are just created from scratch in the custom datadir.

), will store log and history files there instead of the default directory. Note: if you use a custom datadir that does not yet exist, starts without history or logs because those files are just created from scratch in the custom datadir. Updated the dependencies

Updated MainNet bootstrap files

Added --wallet flag to the np-api-server command. The server can now open a wallet. #459

flag to the command. The server can now open a wallet. #459 Added a partial implementation of the listaddress RPC method. #459

RPC method. #459 Added getnewaddress method to the JSON RPC API #464

method to the JSON RPC API #464 Added an implementation of the getbalance RPC method. #465

RPC method. #465 updated seed list, change behavior of restarting NodeLeader when connected nodes falls below 2

Add Neo.Blockchain.GetTransactionHeight API

Updating Enumerator API for parity with Neo PR #244

Unifying interop namespace Neo PR #254

Update neo-boa version to v0.4.7 for new Enumerator/Iterator interop methods and additional python opcode support.

version to v0.4.7 for new Enumerator/Iterator interop methods and additional python opcode support. Fixed REST API /status current_height off-by-one #475

[0.7.1] 2018-06-02¶ update FunctionCode Return type parsing

add np-export and np-import commands for importing and exporting of raw block data files

[0.7.0] 2018-06-01¶ fix a bug with smart-contract parameter string parsing #412

fix StateMachine.Contract_Migrate and add tests

and add tests add ability to attach tx attrs to build command and testinvoke. altered tx attr parsing

updated the install instructions present on docs

fix issues with some JSON-RPC properties #418

added support for optionally chunking through GAS claims in prompt #419

support RPC and REST endpoints in parallel #420

Added new command tkn_history to the prompt. It shows the recorded history of transfers of a given NEP5 token, that are related to the open wallet.

to the prompt. It shows the recorded history of transfers of a given NEP5 token, that are related to the open wallet. fix current block lookup during smart contract event processing #426

fixed custom datadir setup for prompt and api-server

added mint smart-contract event to NotificationDB #433

smart-contract event to NotificationDB #433 Allow SmartContract to use a hash with or without 0x prefix

to use a hash with or without 0x prefix update to neo-boa v0.4.4

Update to neo-python-core v0.4.8:

Create wallets with np-utils --create-wallet

BigInteger(0) now is b'\x00'

now is CheckWitness now only accepts 20 or 33 byte addresses,CheckWitness faults VM when input is bad rather than returning False

When creating contracts, ReturnType is now written by ScriptBuilder as a BigInteger

Allow sending of transaction attributes with invocations

Added signing utility np-sign for using a wallet, WIF, or NEP2 to sign an arbitrary message.

[0.6.9] 2018-04-30¶ alter logging

fix issue with dispatching transfer events when from_addr is False

is add TPS monitor to prompt state command

command add check for db schema changes

add support for StorageIterator and Storage.Find from smart contracts

and from smart contracts update to neocore==0.4.6

update VERIFY implementation to match C#

implementation to match C# add check for block tx length when adding to blockchain to address issues #302 and #360

add smart contract storage searching using a prefix.

source code cleanup of imports and class declarations

update to neo-boa==0.4.2

[0.6.8] 2018-04-26¶ add ServiceEnabled boolean to settings to determine whether nodes should send other nodes blocks

boolean to settings to determine whether nodes should send other nodes blocks updated new block retrieval mechanism

fix for token_delete command not removing tokens from wallet file

fixed sc-events and notification DB showing previous block height instead of final block height of event

persist refund() notify events in notification DB

add Runtime.Serialize/Deserialize support for MAP

fix for debug breakpoints not being cleared.

add VERIFY op to ExecutionEngine

Update to neocore 0.4.2

add caching to systemshare and systemcoin creation to help in block persistence.

fix asset amount rounding for very small amounts

fix storage commit routine for failed contract executions

[0.6.7] 2018-04-06¶ Update all the requirements

Networking changes

added --maxpeers option for np-prompt and np-api-server . This allows p2p discovery of new nodes up to the value specified

option for and . This allows p2p discovery of new nodes up to the value specified added --host option for np-api-server in order to specify a hostname for the server

option for in order to specify a hostname for the server added more testing for neo.Network module

module various networking improvements

fix in neo.SmartContract.StateReader ContractMigrate functionality

functionality added check for Python 3.6 on startup

API: Added CORS header Access-Control-Allow-Headers: 'Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With' (fixes Request header field Content-Type is not allowed by Access-Control-Allow-Headers in preflight response )

[0.6.6] 2018-04-02¶ add Neo.Runtime.Serialize and Neo.Runtime.Deserialize for compliance with this (#163)

and for compliance with this (#163) Fixed IsWalletTransaction to make it compare scripts in transactions to scripts (instead of scripthashes) in wallet contracts and scripthashes of transactions (instead of scripts) to scripthashes of watch-only addresses

Python version check in Settings.py : fail if not Python 3.6+ (can be disabled with env var SKIP_PY_CHECK )

[0.6.5] 2018-03-31¶ Changed the eval() call when parsing the –tx-attr param to parse only json. Reduced the surface and options available on the other 2 eval calls to improve security.

call when parsing the param to parse only json. Reduced the surface and options available on the other 2 eval calls to improve security. fix wallet rebuild database lock errors (PR #365)

Fixed synced_watch_only_balances being always zero issue (#209)

being always zero issue (#209) Added ‘getpeers’ to the JSON RPC API (only containing the available functionality)

Updated to neo-boa==0.4.0, which has support for using dictionaries and interactive debugging

Added interactive VM Debugger #367

Added Pause and Resume methods to neo.Core.Blockchain in order to allow for processing to occur without new incoming blocks

and methods to in order to allow for processing to occur without new incoming blocks Fix bug with checking if contract is an NEP5 Token

Update testnet bootstrap files

lowered amount of blocks requested by each thread to prevent hanging connections

[0.6.4] 2018-03-24¶ Add GZIP compression to RPC server responses if the caller supports it.

Change VM fault reporting to only happen when debug logging is enabled

fix engine error states

update mainnet bootstrap files

performance fix for VM engine execution logging (PR #354)

[0.6.3] 2018-03-21¶ update to neocore==0.3.10 to fix ToNeoJsonString() issue identified here

to fix issue identified here make home dir optional for .neopython

performance fix for block update speed

[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 <https://github.com/neo-project/neo-vm/pull/28>__

along with new opcodes and modify to support as Added support for using --from-addr= to specify the address to use for testinvoke in prompt.py . (PR #329)

to specify the address to use for in . (PR #329) Fixed neo/bin/prompt.py to redact WIF keys, nep2 keys and contract metadata from the command history file .prompt.py.history .

to redact WIF keys, nep2 keys and contract metadata from the command history file . Added TransactionInvocation.GetScript to StateReader.py

Fixed missing uri locations in neo/api/REST/RestApi.py (PR #342)

(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 bootstrap.py to use the specified data directory, instead of hard-coded relative paths.

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 MANIFEST.in

Added additional error messages to ExecutionEngine.py to help with debugging smart contracts.

to help with debugging smart contracts. Changes for Pypi compatibility: move protocol.*.json to neo/data/ move prompt.py 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 MANIFEST.in , add pypi badge to readme

, add pypi badge to readme Add ability to specify --datadir path for where leveldb directories are stored

path for where leveldb directories are stored Tries to auto-create Chains directory in --datadir if it doesnt exist

directory in 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

, , , and available as commands after install add protocol.*.json into data package

move neo-privnet.wallet to neo-privnet.sample.wallet and .gitignore neo-privnet.wallet

to and .gitignore Change README.md 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 []

for results rather than an empty list update to neo-boa==0.3.7

api-server.py: Improved logging setup. See the options with ./api-server.py -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.

option to the console command. This preserves smart contract events when SC execution fails and is intended for SC debugging purposes only. Added VM instruction counter to ExecutionEngine.py error messages to indicate the final instruction that failed. Allows for setting conditional breakpoints to support SC debugging.

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

to Added -v/--verbose argument to prompt.py, which makes prompt.py show smart contract events by default

argument to prompt.py, which makes prompt.py 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.

option to the console command. This enabled logging of VM instructions to 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/RestApi.py

prefix for call in Added neo-privnet.wallet to the project root. This is the standard wallet for private networks.

to the project root. This is the standard wallet for private networks. prompt.py: 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).

, check if chain database is correct. Renamed to (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)

(PR #312) Added a dependency check to Settings.py , 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

, , , and to docs BuildNRun results now converted to ContractParameter before printed

results now converted to before printed contract {hash} no longer throws errors when it is not an NEP5 contract

no longer throws errors when it is not an 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.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)

(PR #184) Notification REST API (PR #177, examples/notification-rest-api-server.py)

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

to , added support for array 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

to added support for array REVERSE and APPEND VM opcodes

[0.4.2] 2017-12-18¶ updated neo-boa to 0.2.0

to added support for debug storage