未验证 提交 7a06ee24 编写于 作者: A arhag 提交者: GitHub

Merge pull request #3730 from EOSIO/ChangeVersion

Change to version 1.0.0, also update minimum gcc and clang versions.
cmake_minimum_required( VERSION 3.5 )
# Defines EOS library target.
project( EOS )
project( EOSIO )
enable_testing()
......@@ -13,13 +12,13 @@ include( VersionMacros )
include( SetupTargetMacros )
include( InstallDirectoryPermissions )
set( BLOCKCHAIN_NAME "Eos" )
set( BLOCKCHAIN_NAME "EOSIO" )
set( CMAKE_CXX_STANDARD 14 )
set( CMAKE_CXX_EXTENSIONS ON )
set( CXX_STANDARD_REQUIRED ON)
set(VERSION_MAJOR 4)
set(VERSION_MINOR 2)
set(VERSION_MAJOR 1)
set(VERSION_MINOR 0)
set(VERSION_PATCH 0)
set( CLI_CLIENT_EXECUTABLE_NAME cleos )
......@@ -29,12 +28,12 @@ set( INSTALLER_APP_ID "68ad7005-8eee-49c9-95ce-9eed97e5b347" )
# http://stackoverflow.com/a/18369825
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8)
message(FATAL_ERROR "GCC version must be at least 4.8!")
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.0)
message(FATAL_ERROR "GCC version must be at least 6.0!")
endif()
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.3)
message(FATAL_ERROR "Clang version must be at least 3.3!")
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0)
message(FATAL_ERROR "Clang version must be at least 4.0!")
endif()
endif()
......@@ -42,7 +41,6 @@ endif()
set(CMAKE_EXPORT_COMPILE_COMMANDS "ON")
set(BUILD_DOXYGEN FALSE CACHE BOOL "Build doxygen documentation on every make")
set(BUILD_MONGO_DB_PLUGIN FALSE CACHE BOOL "Build mongo database plugin")
set(EOS_EGENESIS_JSON "${CMAKE_CURRENT_SOURCE_DIR}/genesis.json" )
#set (USE_PCH 1)
......@@ -101,7 +99,7 @@ FIND_PACKAGE(Boost 1.67 REQUIRED COMPONENTS
if( WIN32 )
message( STATUS "Configuring Eos on WIN32")
message( STATUS "Configuring EOSIO on WIN32")
set( DB_VERSION 60 )
set( BDB_STATIC_LIBS 1 )
......@@ -136,11 +134,11 @@ else( WIN32 ) # Apple AND Linux
if( APPLE )
# Apple Specific Options Here
message( STATUS "Configuring Eos on OS X" )
message( STATUS "Configuring EOSIO on OS X" )
set( CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-deprecated-declarations" )
else( APPLE )
# Linux Specific Options Here
message( STATUS "Configuring Eos on Linux" )
message( STATUS "Configuring EOSIO on Linux" )
set( CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall" )
if ( FULL_STATIC_BUILD )
set( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++ -static-libgcc")
......@@ -169,7 +167,7 @@ else( WIN32 ) # Apple AND Linux
endif( WIN32 )
set(ENABLE_COVERAGE_TESTING FALSE CACHE BOOL "Build Eos for code coverage analysis")
set(ENABLE_COVERAGE_TESTING FALSE CACHE BOOL "Build EOSIO for code coverage analysis")
if(ENABLE_COVERAGE_TESTING)
SET(CMAKE_CXX_FLAGS "--coverage ${CMAKE_CXX_FLAGS}")
......@@ -187,7 +185,7 @@ string(TOUPPER ${CORE_SYMBOL_NAME} CORE_SYMBOL_NAME)
string(LENGTH ${CORE_SYMBOL_NAME} CORE_SYMBOL_NAME_LENGTH)
if (CORE_SYMBOL_NAME_LENGTH GREATER 7)
message(FATAL_ERROR "CORE_SYMBOL_NAME lenght must be a between 1 and 7 characters")
message(FATAL_ERROR "CORE_SYMBOL_NAME length must be between 1 and 7 characters")
endif()
message( STATUS "Using '${CORE_SYMBOL_NAME}' as CORE symbol name" )
......@@ -196,7 +194,7 @@ if ("${EOSIO_ROOT_KEY}" STREQUAL "")
set(EOSIO_ROOT_KEY "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV")
endif()
message( STATUS "Using '${EOSIO_ROOT_KEY}' as public key for eosio account" )
message( STATUS "Using '${EOSIO_ROOT_KEY}' as public key for 'eosio' account" )
include(wasm)
......
......@@ -5,7 +5,7 @@ include(FindDoxygen)
if(NOT DOXYGEN_FOUND)
message(STATUS "Doxygen not found. Contract documentation will not be generated.")
else()
set(DOXY_EOS_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}" CACHE INTERNAL "Version string used in PROJECT_NUMBER.")
set(DOXY_EOS_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}" CACHE INTERNAL "Version string used in PROJECT_NUMBER.")
# CMake strips trailing path separators off of variables it knows are paths,
# so the trailing '/' Doxygen expects is embedded in the doxyfile.
set(DOXY_DOC_DEST_DIR "${CMAKE_BINARY_DIR}/docs" CACHE PATH "Path to the doxygen output")
......
......@@ -20,10 +20,10 @@ cd eos/Docker
docker build . -t eosio/eos
```
The above will build off the most recent commit to the master branch by default. If you would like to target a specific branch/tag, you may use a build argument. For example, if you wished to generate a docker image based off of the dawn-v4.0.0 tag, you could do the following:
The above will build off the most recent commit to the master branch by default. If you would like to target a specific branch/tag, you may use a build argument. For example, if you wished to generate a docker image based off of the v1.0.0 tag, you could do the following:
```bash
docker build -t eosio/eos:dawn-v4.0.0 --build-arg branch=dawn-v4.0.0 .
docker build -t eosio/eos:v1.0.0 --build-arg branch=v1.0.0 .
```
By default, the symbol in eosio.system is set to SYS. You can override this using the symbol argument while building the docker image.
......@@ -35,7 +35,7 @@ docker build -t eosio/eos --build-arg symbol=<symbol> .
## Start nodeos docker container only
```bash
docker run --name nodeos -p 8888:8888 -p 9876:9876 -t eosio/eos nodeosd.sh arg1 arg2
docker run --name nodeos -p 8888:8888 -p 9876:9876 -t eosio/eos nodeosd.sh -e arg1 arg2
```
By default, all data is persisted in a docker volume. It can be deleted if the data is outdated or corrupted:
......@@ -49,7 +49,7 @@ $ docker volume rm fdc265730a4f697346fa8b078c176e315b959e79365fc9cbd11f090ea0cb5
Alternately, you can directly mount host directory into the container
```bash
docker run --name nodeos -v /path-to-data-dir:/opt/eosio/bin/data-dir -p 8888:8888 -p 9876:9876 -t eosio/eos nodeosd.sh arg1 arg2
docker run --name nodeos -v /path-to-data-dir:/opt/eosio/bin/data-dir -p 8888:8888 -p 9876:9876 -t eosio/eos nodeosd.sh -e arg1 arg2
```
## Get chain info
......@@ -142,7 +142,7 @@ version: "3"
services:
nodeosd:
image: eosio/eos:latest
command: /opt/eosio/bin/nodeosd.sh
command: /opt/eosio/bin/nodeosd.sh -e
hostname: nodeosd
ports:
- 8888:8888
......@@ -173,28 +173,27 @@ run `docker pull eosio/eos:latest`
run `docker-compose up`
### Dawn 4.2 Testnet
### EOSIO 1.0 Testnet
We can easily set up a Dawn 4.2 local testnet using docker images. Just run the following commands:
We can easily set up a EOSIO 1.0 local testnet using docker images. Just run the following commands:
Note: if you want to use the mongo db plugin, you have to enable it in your `data-dir/config.ini` first.
```
# pull images
docker pull eosio/eos:20180528
docker pull mongo:latest
docker pull eosio/eos:v1.0.0
# create volume
docker volume create --name=nodeos-data-volume
docker volume create --name=keosd-data-volume
docker volume create --name=mongo-data-volume
# start containers
docker-compose -f docker-compose-dawn4.2.yaml up -d
docker-compose -f docker-compose-eosio1.0.yaml up -d
# get chain info
curl http://127.0.0.1:8888/v1/chain/get_info
# get logs
docker-compose logs -f nodeosd
# stop containers
docker-compose -f docker-compose-dawn4.2.yaml down
docker-compose -f docker-compose-eosio1.0.yaml down
```
The `blocks` data are stored under `--data-dir` by default, and the wallet files are stored under `--wallet-dir` by default, of course you can change these as you want.
......
# Track only transactions whose scopes involve the listed accounts. Default is to track all transactions.
# filter_on_accounts =
# the endpoint upon which to listen for incoming connections (eosio::bnet_plugin)
bnet-endpoint = 0.0.0.0:4321
# Limits the maximum time (in milliseconds) processing a single get_transactions call.
get-transactions-time-limit = 3
# the number of threads to use to process network messages (eosio::bnet_plugin)
# bnet-threads =
# File to read Genesis State from
genesis-json = /opt/eosio/bin/data-dir/genesis.json
# remote endpoint of other node to connect to; Use multiple bnet-connect options as needed to compose a network (eosio::bnet_plugin)
# bnet-connect =
# override the initial timestamp in the Genesis State file
# genesis-timestamp =
# this peer will request no pending transactions from other nodes (eosio::bnet_plugin)
bnet-no-trx = false
# the location of the block log (absolute path or relative to application data dir)
block-log-dir = "blocks"
# the location of the blocks directory (absolute path or relative to application data dir) (eosio::chain_plugin)
blocks-dir = "blocks"
# Pairs of [BLOCK_NUM,BLOCK_ID] that should be enforced as checkpoints.
# Pairs of [BLOCK_NUM,BLOCK_ID] that should be enforced as checkpoints. (eosio::chain_plugin)
# checkpoint =
# the location of the chain shared memory files (absolute path or relative to application data dir)
shared-file-dir = "blockchain"
# Override default WASM runtime (eosio::chain_plugin)
# wasm-runtime =
# Minimum size MB of database shared memory file
shared-file-size = 8192
# Maximum size (in MB) of the chain state database (eosio::chain_plugin)
chain-state-db-size-mb = 8192
# The local IP and port to listen for incoming http connections.
http-server-address = 0.0.0.0:8888
# Maximum size (in MB) of the reversible blocks database (eosio::chain_plugin)
reversible-blocks-db-size-mb = 340
# Specify the Access-Control-Allow-Origin to be returned on each request.
# print contract's output to console (eosio::chain_plugin)
contracts-console = false
# Account added to actor whitelist (may specify multiple times) (eosio::chain_plugin)
# actor-whitelist =
# Account added to actor blacklist (may specify multiple times) (eosio::chain_plugin)
# actor-blacklist =
# Contract account added to contract whitelist (may specify multiple times) (eosio::chain_plugin)
# contract-whitelist =
# Contract account added to contract blacklist (may specify multiple times) (eosio::chain_plugin)
# contract-blacklist =
# Track actions which match receiver:action:actor. Actor may be blank to include all. Receiver and Action may not be blank. (eosio::history_plugin)
# filter-on =
# PEM encoded trusted root certificate (or path to file containing one) used to validate any TLS connections made. (may specify multiple times)
# (eosio::http_client_plugin)
# https-client-root-cert =
# true: validate that the peer certificates are valid and trusted, false: ignore cert errors (eosio::http_client_plugin)
https-client-validate-peers = 1
# The local IP and port to listen for incoming http connections; set blank to disable. (eosio::http_plugin)
http-server-address = 127.0.0.1:8888
# The local IP and port to listen for incoming https connections; leave blank to disable. (eosio::http_plugin)
# https-server-address =
# Filename with the certificate chain to present on https connections. PEM format. Required for https. (eosio::http_plugin)
# https-certificate-chain-file =
# Filename with https private key in PEM format. Required for https (eosio::http_plugin)
# https-private-key-file =
# Specify the Access-Control-Allow-Origin to be returned on each request. (eosio::http_plugin)
# access-control-allow-origin =
# Specify the Access-Control-Allow-Headers to be returned on each request.
# Specify the Access-Control-Allow-Headers to be returned on each request. (eosio::http_plugin)
# access-control-allow-headers =
# Specify if Access-Control-Allow-Credentials: true should be returned on each request.
# Specify the Access-Control-Max-Age to be returned on each request. (eosio::http_plugin)
# access-control-max-age =
# Specify if Access-Control-Allow-Credentials: true should be returned on each request. (eosio::http_plugin)
access-control-allow-credentials = false
# The actual host:port used to listen for incoming p2p connections.
# The actual host:port used to listen for incoming p2p connections. (eosio::net_plugin)
p2p-listen-endpoint = 0.0.0.0:9876
# An externally accessible host:port for identifying this node. Defaults to p2p-listen-endpoint.
# An externally accessible host:port for identifying this node. Defaults to p2p-listen-endpoint. (eosio::net_plugin)
# p2p-server-address =
# The public endpoint of a peer node to connect to. Use multiple p2p-peer-address options as needed to compose a network.
# The public endpoint of a peer node to connect to. Use multiple p2p-peer-address options as needed to compose a network. (eosio::net_plugin)
# p2p-peer-address =
# The name supplied to identify this node amongst the peers.
agent-name = "EOS Test Agent"
# Maximum number of client0nodes from any single IP address (eosio::net_plugin)
p2p-max-nodes-per-host = 1
# True to always send full blocks, false to send block summaries
send-whole-blocks = 1
# The name supplied to identify this node amongst the peers. (eosio::net_plugin)
agent-name = "EOS Test Agent"
# Can be 'any' or 'producers' or 'specified' or 'none'. If 'specified', peer-key must be specified at least once. If only 'producers', peer-key is not required. 'producers' and 'specified' may be combined.
# Can be 'any' or 'producers' or 'specified' or 'none'. If 'specified', peer-key must be specified at least once. If only 'producers', peer-key is not required. 'producers' and 'specified' may be combined. (eosio::net_plugin)
allowed-connection = any
# Optional public key of peer allowed to connect. May be used multiple times.
# Optional public key of peer allowed to connect. May be used multiple times. (eosio::net_plugin)
# peer-key =
# Tuple of [PublicKey, WIF private key] (may specify multiple times)
# Tuple of [PublicKey, WIF private key] (may specify multiple times) (eosio::net_plugin)
# peer-private-key =
# Log level: one of 'all', 'debug', 'info', 'warn', 'error', or 'off'
log-level-net-plugin = info
# Maximum number of clients from which connections are accepted, use 0 for no limit
# Maximum number of clients from which connections are accepted, use 0 for no limit (eosio::net_plugin)
max-clients = 25
# number of seconds to wait before cleaning up dead connections
# number of seconds to wait before cleaning up dead connections (eosio::net_plugin)
connection-cleanup-period = 30
# True to require exact match of peer network version.
# True to require exact match of peer network version. (eosio::net_plugin)
network-version-match = 0
# Enable block production, even if the chain is stale.
enable-stale-production = true
# number of blocks to retrieve in a chunk from any individual peer during synchronization (eosio::net_plugin)
sync-fetch-span = 100
# Percent of producers (0-100) that must be participating in order to produce blocks
required-participation = 33
# maximum sizes of transaction or block messages that are sent without first sending a notice (eosio::net_plugin)
max-implicit-request = 1500
# ID of producer controlled by this node (e.g. inita; may specify multiple times)
# Enable block production, even if the chain is stale. (eosio::producer_plugin)
enable-stale-production = false
# Start this node in a state where production is paused (eosio::producer_plugin)
pause-on-startup = false
# Limits the maximum time (in milliseconds) that is allowed a pushed transaction's code to execute before being considered invalid (eosio::producer_plugin)
max-transaction-time = 30
# Limits the maximum age (in seconds) of the DPOS Irreversible Block for a chain this node will produce blocks on (use negative value to indicate unlimited) (eosio::producer_plugin)
max-irreversible-block-age = -1
# ID of producer controlled by this node (e.g. inita; may specify multiple times) (eosio::producer_plugin)
# producer-name =
producer-name = eosio
# (DEPRECATED - Use signature-provider instead) Tuple of [public key, WIF private key] (may specify multiple times) (eosio::producer_plugin)
# private-key =
# Key=Value pairs in the form <public-key>=<provider-spec>
# Where:
# <public-key> is a string form of a vaild EOSIO public key
#
# <provider-spec> is a string in the form <provider-type>:<data>
#
# <provider-type> is KEY, or KEOSD
#
# KEY:<data> is a string form of a valid EOSIO private key which maps to the provided public key
#
# KEOSD:<data> is the URL where keosd is available and the approptiate wallet(s) are unlocked (eosio::producer_plugin)
signature-provider = EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
# Tuple of [public key, WIF private key] (may specify multiple times)
private-key = ["EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"]
# Limits the maximum time (in milliseconds) that is allowd for sending blocks to a keosd provider for signing (eosio::producer_plugin)
keosd-provider-timeout = 5
# Lag in number of blocks from the head block when selecting the reference block for transactions (-1 means Last Irreversible Block) (eosio::txn_test_gen_plugin)
txn-reference-block-lag = 0
# The path of the wallet files (absolute path or relative to application data dir) (eosio::wallet_plugin)
wallet-dir = "."
# Timeout for unlocked wallet in seconds (default 900 (15 minutes)). Wallets will automatically lock after specified number of seconds of inactivity. Activity is defined as any wallet command e.g. list-wallets. (eosio::wallet_plugin)
unlock-timeout = 900
# eosio key that will be imported automatically when a wallet is created. (eosio::wallet_plugin)
# eosio-key =
# Plugin(s) to enable, may be specified multiple times
# plugin =
# Plugin(s) to enable, may be specified multiple times
plugin = eosio::producer_plugin
plugin = eosio::chain_api_plugin
plugin = eosio::wallet_api_plugin
plugin = eosio::history_api_plugin
plugin = eosio::http_plugin
# plugin = eosio::mongo_db_plugin
# Enable block production with the testnet producers
producer-name = eosio
version: "3"
services:
mongo:
image: mongo:latest
hostname: mongo
ports:
- 27017:27017
volumes:
- mongo-data-volume:/data/db
nodeosd:
image: eosio/eos:20180528
command: /opt/eosio/bin/nodeosd.sh --data-dir /opt/eosio/bin/data-dir --delete-all-blocks #--mongodb-uri mongodb://mongo:27017/EOS
image: eosio/eos:v1.0.0
command: /opt/eosio/bin/nodeosd.sh --data-dir /opt/eosio/bin/data-dir -e
hostname: nodeosd
links:
- mongo
ports:
- 8888:8888
- 9876:9876
......@@ -24,7 +14,7 @@ services:
- nodeos-data-volume:/opt/eosio/bin/data-dir
keosd:
image: eosio/eos:20180528
image: eosio/eos:v1.0.0
command: /opt/eosio/bin/keosd --wallet-dir /opt/eosio/bin/data-dir --http-server-address=127.0.0.1:8900
hostname: keosd
links:
......@@ -33,8 +23,6 @@ services:
- keosd-data-volume:/opt/eosio/bin/data-dir
volumes:
mongo-data-volume:
external: true
nodeos-data-volume:
external: true
keosd-data-volume:
......
......@@ -10,7 +10,7 @@ services:
build:
context: .
image: eosio/eos
command: /opt/eosio/bin/nodeosd.sh --data-dir /opt/eosio/bin/data-dir
command: /opt/eosio/bin/nodeosd.sh --data-dir /opt/eosio/bin/data-dir -e
hostname: nodeosd
ports:
- 8888:8888
......
......@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "EOS.IO"
PROJECT_NUMBER = "DAWN ${DOXY_EOS_VERSION}"
PROJECT_NUMBER = "EOSIO ${DOXY_EOS_VERSION}"
PROJECT_BRIEF =
PROJECT_LOGO = eos-logo.png
OUTPUT_DIRECTORY =
......
......@@ -11,7 +11,7 @@
namespace eosio { namespace chain {
genesis_state::genesis_state() {
initial_timestamp = fc::time_point::from_iso_string( "2018-03-02T12:00:00" );
initial_timestamp = fc::time_point::from_iso_string( "2018-06-01T12:00:00" );
initial_key = fc::variant(eosio_root_key).as<public_key_type>();
}
......
......@@ -3,7 +3,7 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Dawn 4.0\n"
"Project-Id-Version: EOSIO 1.0\n"
"Report-Msgid-Bugs-To: https://github.com/EOSIO/eos/issues"
"POT-Creation-Date: 2017-09-28 11:40-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册