Skip to content

Commit 1c721b0

Browse files
Merge from eos/master
2 parents 5a0e79d + f9a3d02 commit 1c721b0

File tree

135 files changed

+6054
-4116
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

135 files changed

+6054
-4116
lines changed

.buildkite/long_running_tests.yml

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -97,17 +97,14 @@ steps:
9797
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
9898
echo "+++ :microscope: Running tests" && \
9999
ln -s "$(pwd)" /data/job && cd /data/job/build && ctest -L long_running_tests --output-on-failure
100-
retry:
101-
automatic:
102-
limit: 1
103100
label: ":darwin: Tests"
104101
agents:
105102
- "role=macos-tester"
106103
artifact_paths:
107104
- "mongod.log"
108105
- "build/genesis.json"
109106
- "build/config.ini"
110-
timeout: 60
107+
timeout: 100
111108
112109
- command: |
113110
echo "--- :arrow_down: Downloading build directory" && \
@@ -117,9 +114,6 @@ steps:
117114
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
118115
echo "+++ :microscope: Running tests" && \
119116
cd /data/job/build && ctest -L long_running_tests --output-on-failure
120-
retry:
121-
automatic:
122-
limit: 1
123117
label: ":ubuntu: Tests"
124118
agents:
125119
- "role=linux-tester"
@@ -131,7 +125,7 @@ steps:
131125
docker#v1.4.0:
132126
image: "eosio/ci:ubuntu"
133127
workdir: /data/job
134-
timeout: 60
128+
timeout: 100
135129
136130
- command: |
137131
echo "--- :arrow_down: Downloading build directory" && \
@@ -141,9 +135,6 @@ steps:
141135
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
142136
echo "+++ :microscope: Running tests" && \
143137
cd /data/job/build && ctest -L long_running_tests --output-on-failure
144-
retry:
145-
automatic:
146-
limit: 1
147138
label: ":ubuntu: 18.04 Tests"
148139
agents:
149140
- "role=linux-tester"
@@ -155,7 +146,7 @@ steps:
155146
docker#v1.4.0:
156147
image: "eosio/ci:ubuntu18"
157148
workdir: /data/job
158-
timeout: 60
149+
timeout: 100
159150
160151
- command: |
161152
echo "--- :arrow_down: Downloading build directory" && \
@@ -165,9 +156,6 @@ steps:
165156
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
166157
echo "+++ :microscope: Running tests" && \
167158
cd /data/job/build && ctest -L long_running_tests --output-on-failure
168-
retry:
169-
automatic:
170-
limit: 1
171159
label: ":fedora: Tests"
172160
agents:
173161
- "role=linux-tester"
@@ -179,7 +167,7 @@ steps:
179167
docker#v1.4.0:
180168
image: "eosio/ci:fedora"
181169
workdir: /data/job
182-
timeout: 60
170+
timeout: 100
183171
184172
- command: |
185173
echo "--- :arrow_down: Downloading build directory" && \
@@ -189,9 +177,6 @@ steps:
189177
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
190178
echo "+++ :microscope: Running tests" && \
191179
cd /data/job/build && ctest -L long_running_tests --output-on-failure
192-
retry:
193-
automatic:
194-
limit: 1
195180
label: ":centos: Tests"
196181
agents:
197182
- "role=linux-tester"
@@ -203,7 +188,7 @@ steps:
203188
docker#v1.4.0:
204189
image: "eosio/ci:centos"
205190
workdir: /data/job
206-
timeout: 60
191+
timeout: 100
207192
208193
- command: |
209194
echo "--- :arrow_down: Downloading build directory" && \
@@ -213,9 +198,6 @@ steps:
213198
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
214199
echo "+++ :microscope: Running tests" && \
215200
cd /data/job/build && ctest -L long_running_tests --output-on-failure
216-
retry:
217-
automatic:
218-
limit: 1
219201
label: ":aws: Tests"
220202
agents:
221203
- "role=linux-tester"
@@ -227,4 +209,4 @@ steps:
227209
docker#v1.4.0:
228210
image: "eosio/ci:amazonlinux"
229211
workdir: /data/job
230-
timeout: 60
212+
timeout: 100

.buildkite/pipeline.yml

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,6 @@ steps:
9797
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
9898
echo "+++ :microscope: Running tests" && \
9999
ln -s "$(pwd)" /data/job && cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
100-
retry:
101-
automatic:
102-
limit: 1
103100
label: ":darwin: Tests"
104101
agents:
105102
- "role=macos-tester"
@@ -117,9 +114,6 @@ steps:
117114
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
118115
echo "+++ :microscope: Running tests" && \
119116
ln -s "$(pwd)" /data/job && cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
120-
retry:
121-
automatic:
122-
limit: 1
123117
label: ":darwin: NP Tests"
124118
agents:
125119
- "role=macos-tester"
@@ -137,9 +131,6 @@ steps:
137131
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
138132
echo "+++ :microscope: Running tests" && \
139133
cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
140-
retry:
141-
automatic:
142-
limit: 1
143134
label: ":ubuntu: Tests"
144135
agents:
145136
- "role=linux-tester"
@@ -161,9 +152,6 @@ steps:
161152
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
162153
echo "+++ :microscope: Running tests" && \
163154
cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
164-
retry:
165-
automatic:
166-
limit: 1
167155
label: ":ubuntu: NP Tests"
168156
agents:
169157
- "role=linux-tester"
@@ -185,9 +173,6 @@ steps:
185173
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
186174
echo "+++ :microscope: Running tests" && \
187175
cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
188-
retry:
189-
automatic:
190-
limit: 1
191176
label: ":ubuntu: 18.04 Tests"
192177
agents:
193178
- "role=linux-tester"
@@ -209,9 +194,6 @@ steps:
209194
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
210195
echo "+++ :microscope: Running tests" && \
211196
cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
212-
retry:
213-
automatic:
214-
limit: 1
215197
label: ":ubuntu: 18.04 NP Tests"
216198
agents:
217199
- "role=linux-tester"
@@ -233,9 +215,6 @@ steps:
233215
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
234216
echo "+++ :microscope: Running tests" && \
235217
cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
236-
retry:
237-
automatic:
238-
limit: 1
239218
label: ":fedora: Tests"
240219
agents:
241220
- "role=linux-tester"
@@ -257,9 +236,6 @@ steps:
257236
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
258237
echo "+++ :microscope: Running tests" && \
259238
cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
260-
retry:
261-
automatic:
262-
limit: 1
263239
label: ":fedora: NP Tests"
264240
agents:
265241
- "role=linux-tester"
@@ -281,9 +257,6 @@ steps:
281257
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
282258
echo "+++ :microscope: Running tests" && \
283259
cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
284-
retry:
285-
automatic:
286-
limit: 1
287260
label: ":centos: Tests"
288261
agents:
289262
- "role=linux-tester"
@@ -305,9 +278,6 @@ steps:
305278
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
306279
echo "+++ :microscope: Running tests" && \
307280
cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
308-
retry:
309-
automatic:
310-
limit: 1
311281
label: ":centos: NP Tests"
312282
agents:
313283
- "role=linux-tester"
@@ -329,9 +299,6 @@ steps:
329299
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
330300
echo "+++ :microscope: Running tests" && \
331301
cd /data/job/build && ctest -j8 -LE _tests --output-on-failure
332-
retry:
333-
automatic:
334-
limit: 1
335302
label: ":aws: Tests"
336303
agents:
337304
- "role=linux-tester"
@@ -353,9 +320,6 @@ steps:
353320
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
354321
echo "+++ :microscope: Running tests" && \
355322
cd /data/job/build && ctest -L nonparallelizable_tests --output-on-failure
356-
retry:
357-
automatic:
358-
limit: 1
359323
label: ":aws: NP Tests"
360324
agents:
361325
- "role=linux-tester"

.buildkite/sanitizers.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
steps:
2+
- command: |
3+
echo "--- :hammer: Building with Undefined Sanitizer" && \
4+
/usr/bin/cmake -GNinja \
5+
-DCMAKE_BUILD_TYPE=Debug \
6+
-DCMAKE_CXX_COMPILER=clang++-4.0 \
7+
-DCMAKE_C_COMPILER=clang-4.0 \
8+
-DBOOST_ROOT="${BOOST_ROOT}" \
9+
-DWASM_ROOT="${WASM_ROOT}" \
10+
-DOPENSSL_ROOT_DIR="${OPENSSL_ROOT_DIR}" \
11+
-DBUILD_MONGO_DB_PLUGIN=true \
12+
-DENABLE_COVERAGE_TESTING=true\
13+
-DBUILD_DOXYGEN=false -DCMAKE_CXX_FLAGS="-fsanitize=undefined -fsanitize-recover=all -g -fno-omit-frame-pointer" \
14+
-DCMAKE_C_FLAGS="-fsanitize=undefined -fsanitize-recover=all -g -fno-omit-frame-pointer" \
15+
-DCMAKE_EXE_LINKER_FLAGS="-fsanitize=undefined -fsanitize-recover=all -rtlib=compiler-rt -lgcc_s -pthread" \
16+
-DCMAKE_MODULE_LINKER_FLAGS="-fsanitize=undefined -fsanitize-recover=all -rtlib=compiler-rt -lgcc_s -pthread" && \
17+
echo "--- :shinto_shrine: Running ninja" && \
18+
/usr/bin/ninja | tee ninja.log && \
19+
echo "--- :compression: Compressing build directory" && \
20+
tar -pczf build.tar.gz *
21+
echo "--- :beers: Done"
22+
label: ":_: Undefined Sanitizer"
23+
agents:
24+
- "role=automation-builder-large"
25+
artifact_paths:
26+
- "build.tar.gz"
27+
- "ninja.log"
28+
plugins:
29+
docker#v1.4.0:
30+
image: "eosio/ci:ubuntu18"
31+
command: ["--privileged"]
32+
workdir: /data/job
33+
mounts:
34+
- /etc/buildkite-agent/config:/config
35+
environment:
36+
- BOOST_ROOT=/root/opt/boost
37+
- OPENSSL_ROOT_DIR=/usr/include/openssl
38+
- WASM_ROOT=/root/opt/wasm
39+
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/opt/wasm/bin
40+
- CI=true
41+
- UBSAN_OPTIONS=print_stacktrace=1
42+
timeout: 60
43+
44+
- wait
45+
46+
- command: |
47+
echo "--- :arrow_down: Downloading build directory" && \
48+
buildkite-agent artifact download "build.tar.gz" . --step ":_: Undefined Sanitizer" && \
49+
tar -zxf build.tar.gz --no-same-owner && \
50+
echo "--- :m: Starting MongoDB" && \
51+
$(which mongod) --fork --logpath "$(pwd)"/mongod.log && \
52+
echo "+++ :microscope: Running tests" && \
53+
ctest -j8 -LE _tests -V -O sanitizer.log
54+
label: ":_: Undefined Sanitizer Tests"
55+
agents:
56+
- "role=automation-builder-large"
57+
artifact_paths:
58+
- "mongod.log"
59+
- "sanitizer.log"
60+
plugins:
61+
docker#v1.4.0:
62+
image: "eosio/ci:ubuntu18"
63+
workdir: /data/job
64+
mounts:
65+
- /etc/buildkite-agent/config:/config
66+
timeout: 120

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!-- PLEASE FILL OUT THE FOLLOWING MARKDOWN TEMPLATE -->
2+
<!-- Give your PR a title that is sufficient to understand what is being changed. -->
3+
4+
**Change Description**
5+
6+
<!-- Describe the change you made, the motivation for it, and the impact it will have. Reference issues or pull requests where possible (use '#XX' or 'GH-XX' where XX is the issue or pull request number). -->
7+
8+
**Consensus Changes**
9+
10+
<!-- If this PR introduces a change to the validation of blocks in the chain or consensus in general, please describe the impact. -->
11+
12+
13+
**API Changes**
14+
15+
<!-- If this PR introduces API changes, please describe the changes here. What will developers need to know before upgrading to this version? -->
16+
17+
18+
**Documentation Additions**
19+
20+
<!-- List all the information that needs to be added to the documentation after merge. -->

CMakeLists.txt

Lines changed: 37 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@ set( CMAKE_CXX_EXTENSIONS ON )
7171
set( CXX_STANDARD_REQUIRED ON)
7272

7373
set(VERSION_MAJOR 1)
74-
set(VERSION_MINOR 3)
75-
set(VERSION_PATCH 0)
74+
set(VERSION_MINOR 4)
75+
set(VERSION_PATCH 1)
7676

7777
set( CLI_CLIENT_EXECUTABLE_NAME cleos )
7878
set( NODE_EXECUTABLE_NAME nodeos )
@@ -262,6 +262,7 @@ if(ENABLE_COVERAGE_TESTING)
262262
find_program( GENHTML_PATH NAMES genhtml)
263263
endif()
264264

265+
include(utils)
265266
add_subdirectory( externals )
266267

267268
set( CORE_SYMBOL_NAME "EOS" )
@@ -282,7 +283,6 @@ endif()
282283
message( STATUS "Using '${EOSIO_ROOT_KEY}' as public key for 'eosio' account" )
283284

284285
include(wasm)
285-
286286
add_subdirectory( libraries )
287287
add_subdirectory( contracts )
288288
add_subdirectory( plugins )
@@ -303,10 +303,38 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/testnet.template ${CMAKE_CURRENT_BINA
303303
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/eosio.version.in ${CMAKE_CURRENT_BINARY_DIR}/eosio.version.hpp)
304304
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eosio.version.hpp DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR})
305305

306-
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/EosioTester.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/EosioTester.cmake @ONLY)
307-
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/EosioTesterBuild.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/EosioTester.cmake @ONLY)
308-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/EosioTester.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/)
309-
310-
include(installer)
311-
306+
set(EOS_ROOT_DIR ${CMAKE_BINARY_DIR})
307+
configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/eosio/eosio-config.cmake @ONLY)
308+
configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTesterBuild.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/eosio/EosioTester.cmake @ONLY)
309+
310+
set(EOS_ROOT_DIR ${CMAKE_INSTALL_PREFIX})
311+
configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/modules/eosio-config.cmake @ONLY)
312+
install(FILES ${CMAKE_BINARY_DIR}/modules/eosio-config.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/eosio)
313+
configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTester.cmake.in ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake @ONLY)
314+
install(FILES ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/eosio)
315+
316+
configure_file(${CMAKE_SOURCE_DIR}/LICENSE
317+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE COPYONLY)
318+
configure_file(${CMAKE_SOURCE_DIR}/libraries/wabt/LICENSE
319+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.wabt COPYONLY)
320+
configure_file(${CMAKE_SOURCE_DIR}/libraries/softfloat/COPYING.txt
321+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.softfloat COPYONLY)
322+
configure_file(${CMAKE_SOURCE_DIR}/libraries/wasm-jit/LICENSE
323+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.wavm COPYONLY)
324+
configure_file(${CMAKE_SOURCE_DIR}/libraries/fc/secp256k1/upstream/COPYING
325+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.secp256k1 COPYONLY)
326+
configure_file(${CMAKE_SOURCE_DIR}/libraries/fc/src/network/LICENSE.go
327+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.go COPYONLY)
328+
configure_file(${CMAKE_SOURCE_DIR}/externals/binaryen/LICENSE
329+
${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.binaryen COPYONLY)
330+
331+
install(FILES LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/)
332+
install(FILES libraries/wabt/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.wabt)
333+
install(FILES libraries/softfloat/COPYING.txt DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.softfloat)
334+
install(FILES libraries/wasm-jit/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.wavm)
335+
install(FILES libraries/fc/secp256k1/upstream/COPYING DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.secp256k1)
336+
install(FILES externals/binaryen/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.binaryen)
337+
install(FILES libraries/fc/src/network/LICENSE.go DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ )
338+
339+
include(package)
312340
include(doxygen)

0 commit comments

Comments
 (0)