Skip to content

Releases: nebulasio/go-nebulas

V1.0.4

14 Jun 02:18
Compare
Choose a tag to compare

Introduction

In go-nebulas v1.0.4 release, we fix one bug.

  • Set MaxGateWayRecvMsgSize 64M4

V1.0.3

22 May 10:21
Compare
Choose a tag to compare

Fix some bug

V1.0.2

08 May 07:50
Compare
Choose a tag to compare

Introduction

In go-nebulas v1.0.2 release, we bring several exciting features for smart contract and perfect our RPC interfaces.

Change details

New features

  • Added support for Date object, returns timestamp of current block in milliseconds.
  • Added support for Math.random, used to generate verifiable pseudorandom number.
  • Added accept function, make it possible to send a binary transfer to contract address.

RPC improvement

  • Added a new API for querying transaction by contract address.
  • Contract execution result will be included in transaction response now.
  • All Blockchain.transfer events will be recorded now.
  • Refined several interfaces' result.

Others

  • Stability and security enhancement.

v1.0.1

16 Apr 09:17
Compare
Choose a tag to compare

Introduction

In go-nebulas v1.0.1 release, we have optimized and improved performance and security.

Change details

  • Added transaction timeout rules.
  • Replaced the implement of ECC(Elliptic curve cryptography) implement from golang to C language.
  • Enhanced the restriction of the require path in the smart contract to ensure that the smart contract cannot access any file on the mining node disk through requiring illegal path.
  • Compressed network transmission data.
  • Increased the judgment condition when verifying the block: Ensure that the timestamp of the block to be verified must be greater than the timestamp of the current tail block.
  • Increased number of data elements that MAC computation covers to improve encryption mechanism

v1.0.0(Eagle Nebula)

30 Mar 00:36
Compare
Choose a tag to compare

Introduction

We are so excited to release the Go-Nebulas v1.0.0, called "Eagle Nebula".

Features

  • Javascript/Typescript is the first smart contract language supported by Nebulas.
  • Using protobuf for data serialization, i.e. developer-friendly.
  • Using RocksDB, which brings better performance.
  • Introducing PEE (Parallel Execution Environment) to improve performance.
  • Chunk-based Synchronization mechanism, which is more efficient.
  • Optimized address encode/decode.

v0.6.1

28 Feb 03:35
Compare
Choose a tag to compare

Introduction

In go-nebulas v0.6.1 release, we have done some work with test network compatibility so that users can use the latest version to connect to the test network.

Change details

Core

  • Upgrade the storage structure of the block.

v0.6.0

02 Feb 13:56
Compare
Choose a tag to compare

Introduction

We are excited to announce the go-nebulas v0.6.0 release. We focus on improving the stability of our Testnet. We've done some performance optimizations. Besides, we reconstructed our P2P network to improve its stability and readability. And we optimized and redesigned the logic of block synchronous.

Change details

Nebulas Testnet

  • Fixed bugs & improved the performance.
  • Fixed synchronization bugs & improved the performance.

Network

  • Added stream for single connection management.
  • Added streamManager for connections management.
  • Implemented priority message chan.
  • Added route table persistence strategy.
  • Improved strategy to process TCP packet splicing.

Log

  • Added console log(CLog), print logs to console & log files both and help developers to know what’s happening in Neb.
  • Added verbose log(VLog), print logs to log files and help devs to know how Neb works in details.
  • Refactored log printing and completed project log adjustment;

Sync

  • Added new sync logic, using chunk header hash to boost the sync performance.
  • Adjusted the synchronous retry logic and increased the timeout configuration;
  • Fixed bugs in synchronization and added more metrics statistics;

Others

  • Added Local Nodes to run test cases in the local.
  • Added Testnet Nodes to run test cases in Testnet.

v0.5.0

30 Dec 04:24
Compare
Choose a tag to compare

Introduction

We are excited to announce the go-nebulas v0.5.0 release. The first Nebulas TestNet is released with this version.

Change details

Network

Implemented p2p network
Implemented full-sync protocol
Implemented downloader

Core

Implemented crypto algorithm which is compatible with Ethereum
Implemented Nebulas blockchain structures

Consensus

Implemented Dpos, use this consensus algorithm before PoD is fully ready.

Contract

Support javascript & typescript

Api

Implemented rich rpc & http interfaces

v0.4.0

23 Nov 10:48
Compare
Choose a tag to compare
v0.4.0 Pre-release
Pre-release

Introduction

We are excited to announce the go-nebulas v0.4.0 release. NVM progressively improves the compilation and function interfaces. We added execution limits mechanism into the V8 engine. We also implemented more APIs for RPC and REPL, let developers interact with Nebulas more easily. Besides that, we included Metrics Counter into Nebulas, let system admin or operators can use Grafana liked tools to monitor status of Nebulas.

Change details

NVM

Support the standard of CommonJS for native_require & add native instruction counter;
Added executed instruction based limits;
Added cpu/memory resource based limits;
Added more javascript libs in V8, including: bignumber for balance, Blockchain for interact with blockchain data and/or functions, assert.js for testing.

Core

Added Gas and GasPrice fields in Transaction;
Implemented Gas calculation mechanism in Transaction based on NVM Execution limits;
Improved stability;
Added metrics counters, including block height, blockchain tails etc.

Network

Fix sync block in disk storage issue and some other sync bugs.

RPC

Added HTTP-RPC interface for management APIs;
Add nodeInfo rpc api and TransactionReceipt grpc api.

Console

Implemented JavaScript lib neb.js ,which used by web & console;
Neb console add javascript runtime and autocomplete function;
Improved stability of REPL.

v0.3.0

07 Nov 08:27
Compare
Choose a tag to compare
v0.3.0 Pre-release
Pre-release

Introduction

We are excited to announce the go-nebulas v0.3.0 release. We have integrated Chrome V8 into NVM, that means JavaScript is the first Smart Contract Language in Nebulas. And developers can write smart contracts in JavaScript to run on Nebulas.Supporting JavaScript is the first step, we will support more popular high-level languages, such as Python and Ruby, then developers can implement their ideas with the most familiar languages.

Change details

NVM

Implemented Protocol Code execution engine, based on LLVM.
Implemented Smart Contract execution engine, based on Chrome V8.Developers can use TypeScript/JavaScript to write smart contracts.
Implemented storage type in V8 engine.
Implemented smart contract creation & execution in NVM.

Common

Implemented Batch Tree to process batch task in merkle tree, support begin, commit & rollback operations.
Implemented Iterator for merkle trie to traverse leaf nodes in a trie, support traversing a trie with a given key prefix.

Net

Refactor NetService & SyncManager.
Implemented message relay strategy.
Added P2P network streamstore cache & Regularly cleaned.

RPC

Added mapping gRPC to HTTP.
Implemented deploy & call contract by JSON-RPC.

Storage

Implemented disk storage based on LevelDB, supporting cache & bloom filter for fast read.