diff --git a/CMakeLists.txt b/CMakeLists.txt index f4ee0d6f74..5d6964de42 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required( VERSION 3.8 ) -project( mandel ) +project( leap ) include(CTest) # suppresses DartConfiguration.tcl error enable_testing() @@ -9,7 +9,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules") include( GNUInstallDirs ) include( MASSigning ) -set( BLOCKCHAIN_NAME "EOSIO" ) set( CMAKE_CXX_STANDARD 17 ) set( CMAKE_CXX_EXTENSIONS ON ) set( CXX_STANDARD_REQUIRED ON) @@ -71,7 +70,7 @@ if(ENABLE_OC AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32) # can be created with the exact version found find_package(LLVM REQUIRED CONFIG) if(LLVM_VERSION_MAJOR VERSION_LESS 7 OR LLVM_VERSION_MAJOR VERSION_GREATER_EQUAL 12) - message(FATAL_ERROR "EOSIO requires an LLVM version 7 through 11") + message(FATAL_ERROR "Leap requires an LLVM version 7 through 11") endif() endif() endif() @@ -105,12 +104,12 @@ find_package(Boost 1.67 REQUIRED COMPONENTS program_options unit_test_framework if( APPLE AND UNIX ) # Apple Specific Options Here - message( STATUS "Configuring EOSIO on macOS" ) + message( STATUS "Configuring Leap on macOS" ) set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-deprecated-declarations" ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-deprecated-declarations" ) else() # Linux Specific Options Here - message( STATUS "Configuring EOSIO on Linux" ) + message( STATUS "Configuring Leap on Linux" ) set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" ) set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall" ) if ( FULL_STATIC_BUILD ) @@ -124,13 +123,13 @@ else() endif() endif() -option(EOSIO_ENABLE_DEVELOPER_OPTIONS "enable developer options for EOSIO" OFF) +option(EOSIO_ENABLE_DEVELOPER_OPTIONS "enable developer options for Leap" OFF) # based on http://www.delorie.com/gnu/docs/gdb/gdb_70.html # uncomment this line to tell GDB about macros (slows compile times) # set( CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -gdwarf-2 -g3" ) -set(ENABLE_COVERAGE_TESTING FALSE CACHE BOOL "Build EOSIO for code coverage analysis") +set(ENABLE_COVERAGE_TESTING FALSE CACHE BOOL "Build Leap for code coverage analysis") if(ENABLE_COVERAGE_TESTING) SET(CMAKE_C_FLAGS "--coverage ${CMAKE_C_FLAGS}") @@ -162,7 +161,7 @@ message( STATUS "Using '${EOSIO_ROOT_KEY}' as public key for 'eosio' account" ) find_package( Gperftools QUIET ) if( GPERFTOOLS_FOUND ) - message( STATUS "Found gperftools; compiling EOSIO with TCMalloc") + message( STATUS "Found gperftools; compiling Leap with TCMalloc") #if doing this by the book, simply link_libraries( ${GPERFTOOLS_TCMALLOC} ) here. That will #give the performance benefits of tcmalloc but since it won't be linked last #the heap profiler & checker may not be accurate. This here is rather undocumented behavior @@ -192,44 +191,54 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/eosio.version.in ${CMAKE_CURRENT_BINA install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eosio.version.hpp DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR} COMPONENT dev EXCLUDE_FROM_ALL) set(EOS_ROOT_DIR "${CMAKE_BINARY_DIR}/lib") +# legacy eosio CMake files configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/eosio/eosio-config.cmake @ONLY) -configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/eosio/mandel-config.cmake @ONLY) configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTesterBuild.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/eosio/EosioTester.cmake @ONLY) +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioCheckVersion.cmake ${CMAKE_BINARY_DIR}/lib/cmake/eosio/EosioCheckVersion.cmake COPYONLY) +# new leap CMake files +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/leap-config.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/leap/leap-config.cmake @ONLY) +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTesterBuild.cmake.in ${CMAKE_BINARY_DIR}/lib/cmake/leap/EosioTester.cmake @ONLY) +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioCheckVersion.cmake ${CMAKE_BINARY_DIR}/lib/cmake/leap/EosioCheckVersion.cmake COPYONLY) set(EOS_ROOT_DIR "${CMAKE_INSTALL_FULL_LIBDIR}") +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTester.cmake.in ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake @ONLY) +# legacy eosio CMake files configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/modules/eosio-config.cmake @ONLY) -configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/eosio-config.cmake.in ${CMAKE_BINARY_DIR}/modules/mandel-config.cmake @ONLY) install(FILES ${CMAKE_BINARY_DIR}/modules/eosio-config.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/eosio COMPONENT dev EXCLUDE_FROM_ALL) -install(FILES ${CMAKE_BINARY_DIR}/modules/mandel-config.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/mandel COMPONENT dev EXCLUDE_FROM_ALL) -configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/EosioTester.cmake.in ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake @ONLY) install(FILES ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/eosio COMPONENT dev EXCLUDE_FROM_ALL) +install(FILES ${CMAKE_SOURCE_DIR}/CMakeModules/EosioCheckVersion.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/eosio COMPONENT dev EXCLUDE_FROM_ALL) +# new leap CMake files +configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/leap-config.cmake.in ${CMAKE_BINARY_DIR}/modules/leap-config.cmake @ONLY) +install(FILES ${CMAKE_BINARY_DIR}/modules/leap-config.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/leap COMPONENT dev EXCLUDE_FROM_ALL) +install(FILES ${CMAKE_BINARY_DIR}/modules/EosioTester.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/leap COMPONENT dev EXCLUDE_FROM_ALL) +install(FILES ${CMAKE_SOURCE_DIR}/CMakeModules/EosioCheckVersion.cmake DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/leap COMPONENT dev EXCLUDE_FROM_ALL) configure_file(${CMAKE_SOURCE_DIR}/LICENSE - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/softfloat/COPYING.txt - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.softfloat COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.softfloat COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/wasm-jit/LICENSE - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.wavm COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.wavm COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/fc/secp256k1/secp256k1/COPYING - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.secp256k1 COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.secp256k1 COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/fc/include/fc/crypto/webauthn_json/license.txt - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.rapidjson COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.rapidjson COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/fc/src/network/LICENSE.go - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.go COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.go COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/yubihsm/LICENSE - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.yubihsm COPYONLY) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.yubihsm COPYONLY) configure_file(${CMAKE_SOURCE_DIR}/libraries/eos-vm/LICENSE - ${CMAKE_BINARY_DIR}/licenses/eosio/LICENSE.eos-vm COPYONLY) - -install(FILES LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ COMPONENT base) -install(FILES libraries/softfloat/COPYING.txt DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.softfloat COMPONENT base) -install(FILES libraries/wasm-jit/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.wavm COMPONENT base) -install(FILES libraries/fc/secp256k1/secp256k1/COPYING DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.secp256k1 COMPONENT base) -install(FILES libraries/fc/include/fc/crypto/webauthn_json/license.txt DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.rapidjson COMPONENT base) -install(FILES libraries/fc/src/network/LICENSE.go DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ COMPONENT base) -install(FILES libraries/yubihsm/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.yubihsm COMPONENT base) -install(FILES libraries/eos-vm/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.eos-vm COMPONENT base) -install(FILES libraries/fc/libraries/ff/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/eosio/ RENAME LICENSE.libff COMPONENT base) + ${CMAKE_BINARY_DIR}/licenses/leap/LICENSE.eos-vm COPYONLY) + +install(FILES LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ COMPONENT base) +install(FILES libraries/softfloat/COPYING.txt DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.softfloat COMPONENT base) +install(FILES libraries/wasm-jit/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.wavm COMPONENT base) +install(FILES libraries/fc/secp256k1/secp256k1/COPYING DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.secp256k1 COMPONENT base) +install(FILES libraries/fc/include/fc/crypto/webauthn_json/license.txt DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.rapidjson COMPONENT base) +install(FILES libraries/fc/src/network/LICENSE.go DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ COMPONENT base) +install(FILES libraries/yubihsm/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.yubihsm COMPONENT base) +install(FILES libraries/eos-vm/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.eos-vm COMPONENT base) +install(FILES libraries/fc/libraries/ff/LICENSE DESTINATION ${CMAKE_INSTALL_FULL_DATAROOTDIR}/licenses/leap/ RENAME LICENSE.libff COMPONENT base) add_custom_target(dev-install COMMAND "${CMAKE_COMMAND}" --build "${CMAKE_BINARY_DIR}" diff --git a/CMakeModules/EosioCheckVersion.cmake b/CMakeModules/EosioCheckVersion.cmake new file mode 100644 index 0000000000..ffd2856194 --- /dev/null +++ b/CMakeModules/EosioCheckVersion.cmake @@ -0,0 +1,90 @@ +function(EXTRACT_MAJOR_MINOR_FROM_VERSION version success major minor) + string(REGEX REPLACE "^([0-9]+)\\..+$" "\\1" _major "${version}") + if("${_major}" STREQUAL "${version}") + set(${success} FALSE PARENT_SCOPE) + return() + endif() + + string(REGEX REPLACE "^[0-9]+\\.([0-9]+)(\\..*)?$" "\\1" _minor "${version}") + if("${_minor}" STREQUAL "${version}") + set(success FALSE PARENT_SCOPE) + return() + endif() + + set(${major} ${_major} PARENT_SCOPE) + set(${minor} ${_minor} PARENT_SCOPE) + set(${success} TRUE PARENT_SCOPE) +endfunction(EXTRACT_MAJOR_MINOR_FROM_VERSION) + +function(EOSIO_CHECK_VERSION output version hard_min soft_max hard_max) # optional 6th argument for error message + set(${output} "INVALID" PARENT_SCOPE) + + EXTRACT_MAJOR_MINOR_FROM_VERSION("${version}" success major minor) + if(NOT success) + if(${ARGC} GREATER 5) + set(${ARGV5} "version '${version}' is invalid" PARENT_SCOPE) + endif() + return() + endif() + + EXTRACT_MAJOR_MINOR_FROM_VERSION("${hard_min}" success hard_min_major hard_min_minor) + if(NOT success) + if(${ARGC} GREATER 5) + set(${ARGV5} "hard minimum version '${hard_min}' is invalid" PARENT_SCOPE) + endif() + return() + endif() + + if( "${major}.${minor}" VERSION_LESS "${hard_min_major}.${hard_min_minor}" ) + set(${output} "MISMATCH" PARENT_SCOPE) + if(${ARGC} GREATER 5) + set(${ARGV5} "version '${version}' does not meet hard minimum version requirement of ${hard_min_major}.${hard_min_minor}" PARENT_SCOPE) + endif() + return() + endif() + + if(NOT hard_max STREQUAL "") + EXTRACT_MAJOR_MINOR_FROM_VERSION("${hard_max}" success hard_max_major hard_max_minor) + if(NOT success) + if(${ARGC} GREATER 5) + set(${ARGV5} "hard maximum version '${hard_max}' is invalid" PARENT_SCOPE) + endif() + return() + endif() + + if( "${major}.${minor}" VERSION_GREATER "${hard_max_major}.${hard_max_minor}" ) + set(${output} "MISMATCH" PARENT_SCOPE) + if(${ARGC} GREATER 5) + set(${ARGV5} "version '${version}' does not meet hard maximum version requirement of ${hard_max_major}.${hard_max_minor}" PARENT_SCOPE) + endif() + return() + endif() + endif() + + EXTRACT_MAJOR_MINOR_FROM_VERSION("${soft_max}" success soft_max_major soft_max_minor) + if(NOT success) + set(${output} "MISMATCH" PARENT_SCOPE) + if(${ARGC} GREATER 5) + set(${ARGV5} "soft maximum version '${soft_max}' is invalid" PARENT_SCOPE) + endif() + return() + endif() + + if( ${major} GREATER ${soft_max_major} ) + set(${output} "MISMATCH" PARENT_SCOPE) + if(${ARGC} GREATER 5) + set(${ARGV5} "version '${version}' must have the same major version as the soft maximum version (${soft_max_major})" PARENT_SCOPE) + endif() + return() + endif() + + if( "${major}.${minor}" VERSION_GREATER "${soft_max_major}.${soft_max_minor}" ) + set(${output} "WARN" PARENT_SCOPE) + if(${ARGC} GREATER 5) + set(${ARGV5} "version '${version}' matches requirements but is greater than the soft maximum version of ${soft_max_major}.${soft_max_minor}" PARENT_SCOPE) + endif() + return() + endif() + + set(${output} "MATCH" PARENT_SCOPE) +endfunction(EOSIO_CHECK_VERSION) diff --git a/CMakeModules/eosio-config.cmake.in b/CMakeModules/eosio-config.cmake.in index 345dd5c648..8382df053b 100644 --- a/CMakeModules/eosio-config.cmake.in +++ b/CMakeModules/eosio-config.cmake.in @@ -6,94 +6,4 @@ else() list(APPEND CMAKE_MODULE_PATH ${EOSIO_ROOT}/lib64/cmake/eosio) endif() include(EosioTester) - -function(EXTRACT_MAJOR_MINOR_FROM_VERSION version success major minor) - string(REGEX REPLACE "^([0-9]+)\\..+$" "\\1" _major "${version}") - if("${_major}" STREQUAL "${version}") - set(${success} FALSE PARENT_SCOPE) - return() - endif() - - string(REGEX REPLACE "^[0-9]+\\.([0-9]+)(\\..*)?$" "\\1" _minor "${version}") - if("${_minor}" STREQUAL "${version}") - set(success FALSE PARENT_SCOPE) - return() - endif() - - set(${major} ${_major} PARENT_SCOPE) - set(${minor} ${_minor} PARENT_SCOPE) - set(${success} TRUE PARENT_SCOPE) -endfunction(EXTRACT_MAJOR_MINOR_FROM_VERSION) - -function(EOSIO_CHECK_VERSION output version hard_min soft_max hard_max) # optional 6th argument for error message - set(${output} "INVALID" PARENT_SCOPE) - - EXTRACT_MAJOR_MINOR_FROM_VERSION("${version}" success major minor) - if(NOT success) - if(${ARGC} GREATER 5) - set(${ARGV5} "version '${version}' is invalid" PARENT_SCOPE) - endif() - return() - endif() - - EXTRACT_MAJOR_MINOR_FROM_VERSION("${hard_min}" success hard_min_major hard_min_minor) - if(NOT success) - if(${ARGC} GREATER 5) - set(${ARGV5} "hard minimum version '${hard_min}' is invalid" PARENT_SCOPE) - endif() - return() - endif() - - if( "${major}.${minor}" VERSION_LESS "${hard_min_major}.${hard_min_minor}" ) - set(${output} "MISMATCH" PARENT_SCOPE) - if(${ARGC} GREATER 5) - set(${ARGV5} "version '${version}' does not meet hard minimum version requirement of ${hard_min_major}.${hard_min_minor}" PARENT_SCOPE) - endif() - return() - endif() - - if(NOT hard_max STREQUAL "") - EXTRACT_MAJOR_MINOR_FROM_VERSION("${hard_max}" success hard_max_major hard_max_minor) - if(NOT success) - if(${ARGC} GREATER 5) - set(${ARGV5} "hard maximum version '${hard_max}' is invalid" PARENT_SCOPE) - endif() - return() - endif() - - if( "${major}.${minor}" VERSION_GREATER "${hard_max_major}.${hard_max_minor}" ) - set(${output} "MISMATCH" PARENT_SCOPE) - if(${ARGC} GREATER 5) - set(${ARGV5} "version '${version}' does not meet hard maximum version requirement of ${hard_max_major}.${hard_max_minor}" PARENT_SCOPE) - endif() - return() - endif() - endif() - - EXTRACT_MAJOR_MINOR_FROM_VERSION("${soft_max}" success soft_max_major soft_max_minor) - if(NOT success) - set(${output} "MISMATCH" PARENT_SCOPE) - if(${ARGC} GREATER 5) - set(${ARGV5} "soft maximum version '${soft_max}' is invalid" PARENT_SCOPE) - endif() - return() - endif() - - if( ${major} GREATER ${soft_max_major} ) - set(${output} "MISMATCH" PARENT_SCOPE) - if(${ARGC} GREATER 5) - set(${ARGV5} "version '${version}' must have the same major version as the soft maximum version (${soft_max_major})" PARENT_SCOPE) - endif() - return() - endif() - - if( "${major}.${minor}" VERSION_GREATER "${soft_max_major}.${soft_max_minor}" ) - set(${output} "WARN" PARENT_SCOPE) - if(${ARGC} GREATER 5) - set(${ARGV5} "version '${version}' matches requirements but is greater than the soft maximum version of ${soft_max_major}.${soft_max_minor}" PARENT_SCOPE) - endif() - return() - endif() - - set(${output} "MATCH" PARENT_SCOPE) -endfunction(EOSIO_CHECK_VERSION) +include(EosioCheckVersion) \ No newline at end of file diff --git a/CMakeModules/leap-config.cmake.in b/CMakeModules/leap-config.cmake.in new file mode 100644 index 0000000000..8f83bd5b50 --- /dev/null +++ b/CMakeModules/leap-config.cmake.in @@ -0,0 +1,3 @@ +list(APPEND CMAKE_MODULE_PATH @EOS_ROOT_DIR@/cmake/leap) +include(EosioTester) +include(EosioCheckVersion) \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ed9e32eaab..405c9b9bc2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,4 +1,4 @@ -# Contributing to mandel +# Contributing to Leap Interested in contributing? That's awesome! Here are some guidelines to get started quickly and easily: @@ -6,7 +6,7 @@ Interested in contributing? That's awesome! Here are some guidelines to get star - [Bug Reports](#bug-reports) - [Feature Requests](#feature-requests) - [Change Requests](#change-requests) -- [Working on mandel](#working-on-mandel) +- [Working on Leap](#working-on-leap) - [Feature Branches](#feature-branches) - [Submitting Pull Requests](#submitting-pull-requests) - [Testing and Quality Assurance](#testing-and-quality-assurance) @@ -16,7 +16,7 @@ Interested in contributing? That's awesome! Here are some guidelines to get star ## Reporting An Issue -If you're about to raise an issue because you think you've found a problem with mandel, or you'd like to make a request for a new feature in the codebase, or any other reason… please read this first. +If you're about to raise an issue because you think you've found a problem with Leap, or you'd like to make a request for a new feature in the codebase, or any other reason… please read this first. The GitHub issue tracker is the preferred channel for [bug reports](#bug-reports), [feature requests](#feature-requests), and [submitting pull requests](#submitting-pull-requests), but please respect the following restrictions: @@ -34,12 +34,12 @@ Guidelines for bug reports: reported. 1. **Check if the issue has been fixed** — look for [closed issues in the - current milestone](https://github.com/eosnetworkfoundation/mandel/issues?q=is%3Aissue+is%3Aclosed) or try to reproduce it + current milestone](https://github.com/AntelopeIO/leap/issues?q=is%3Aissue+is%3Aclosed) or try to reproduce it using the latest `main` branch. A good bug report shouldn't leave others needing to chase you up for more information. Be sure to include the details of your environment and relevant tests that demonstrate the failure. -[Report a bug](https://github.com/eosnetworkfoundation/mandel/issues/new?title=Bug%3A) +[Report a bug](https://github.com/AntelopeIO/leap/issues/new?title=Bug%3A) ### Feature Requests @@ -51,15 +51,15 @@ Feature requests are welcome. Before you submit one be sure to have: ### Change Requests -Change requests cover both architectural and functional changes to how mandel works. If you have an idea for a new or different dependency, a refactor, or an improvement to a feature, etc - please be sure to: +Change requests cover both architectural and functional changes to how Leap works. If you have an idea for a new or different dependency, a refactor, or an improvement to a feature, etc - please be sure to: 1. **Use the GitHub search** and check someone else didn't get there first 1. Take a moment to think about the best way to make a case for, and explain what you're thinking. Are you sure this shouldn't really be a [bug report](#bug-reports) or a [feature request](#feature-requests)? Is it really one idea or is it many? What's the context? What problem are you solving? Why is what you are suggesting better than what's already there? -## Working on mandel +## Working on Leap -Code contributions are welcome and encouraged! If you are looking for a good place to start, check out the [good first issue](https://github.com/eosnetworkfoundation/mandel/labels/good%20first%20issue) label in GitHub issues. +Code contributions are welcome and encouraged! If you are looking for a good place to start, check out the [good first issue](https://github.com/AntelopeIO/leap/labels/good%20first%20issue) label in GitHub issues. Also, please follow these guidelines when submitting code: @@ -67,8 +67,8 @@ Also, please follow these guidelines when submitting code: To get it out of the way: -- **[main](https://github.com/eosnetworkfoundation/mandel/tree/main)** is the development branch. All work on the next release happens here so you should generally branch off `main`. Do **NOT** use this branch for a production site. -- **release/** branches contain stable releases of mandel. Some of these branches may be obsolete, a prerelease (release candidate), or designated as stable and ready for use in production. Generally do **NOT** use these branches to work on mandel's source unless you are working on a defect or change that would apply to a current stable release or release candidate. If in doubt, branch off of `main` and a mandel maintainer will chime in if you should switch to a release branch. +- **[main](https://github.com/AntelopeIO/leap/tree/main)** is the development branch. All work on the next release happens here so you should generally branch off `main`. Do **NOT** use this branch for a production site. +- **release/** branches contain stable releases of Leap. Some of these branches may be obsolete, a prerelease (release candidate), or designated as stable and ready for use in production. Generally do **NOT** use these branches to work on Leap's source unless you are working on a defect or change that would apply to a current stable release or release candidate. If in doubt, branch off of `main` and a Leap maintainer will chime in if you should switch to a release branch. ### Submitting Pull Requests @@ -78,7 +78,7 @@ Pull requests are awesome. If you're looking to raise a PR for something which d Never underestimate just how useful quality assurance is. If you're looking to get involved with the code base and don't know where to start, checking out and testing a pull request is one of the most useful things you could do. -Essentially, [check out the main branch](#working-on-mandel), take it for a spin, and if you find anything odd, please follow the [bug report guidelines](#bug-reports) and let us know! +Essentially, [check out the main branch](#working-on-leap), take it for a spin, and if you find anything odd, please follow the [bug report guidelines](#bug-reports) and let us know! ## Conduct diff --git a/LICENSE b/LICENSE index b4bf2190e2..c6ad6eef22 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -eosnetworkfoundation/mandel +AntelopeIO/leap Copyright (c) 2021-2022 EOS Network Foundation (ENF) and its contributors. All rights reserved. This ENF software is based upon: diff --git a/README.md b/README.md index 768e178cc4..2c63f9d923 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,14 @@ -# Mandel +# Leap -Home of the official [EOS Network Foundation](https://eosnetwork.com/) blockchain node software. +Home of the official [EOS Network Foundation](https://eosnetwork.com/) blockchain node software, a C++ implementation of the Antelope protocol. ## Repo Organization -`main` branch is the development branch: do not use this for production. Refer to the [release page](https://github.com/eosnetworkfoundation/mandel/releases) for current information on releases, pre-releases, and obsolete releases as well as the corresponding tags for those releases. +`main` branch is the development branch: do not use this for production. Refer to the [release page](https://github.com/AntelopeIO/leap/releases) for current information on releases, pre-releases, and obsolete releases as well as the corresponding tags for those releases. ## Software Installation -Visit the [release page](https://github.com/eosnetworkfoundation/mandel/releases) for Ubuntu binaries. This is the fastest way to get started with the software. +Visit the [release page](https://github.com/AntelopeIO/leap/releases) for Ubuntu binaries. This is the fastest way to get started with the software. ### Building From Source @@ -20,16 +20,16 @@ Recent Ubuntu LTS releases are the only Linux distributions that we fully suppor A few other common libraries are tools also required such as openssl 1.1+, libcurl, curl, libusb, GMP, Python 3, and zlib. -**A Warning On Parallel Compilation Jobs (`-j` flag)**: When building C/C++ software often the build is performed in parallel via a command such as `make -j $(nproc)` which uses the number of CPU cores as the number of compilation jobs to perform simultaneously. However, be aware that some compilation units (.cpp files) in mandel are extremely complex and will consume nearly 4GB of memory to compile. You may need to reduce the level of parallelization depending on the amount of memory on your build host. e.g. instead of `make -j $(nproc)` run `make -j2`. Failures due to memory exhaustion will typically but not always manifest as compiler crashes. +**A Warning On Parallel Compilation Jobs (`-j` flag)**: When building C/C++ software often the build is performed in parallel via a command such as `make -j $(nproc)` which uses the number of CPU cores as the number of compilation jobs to perform simultaneously. However, be aware that some compilation units (.cpp files) in Leap are extremely complex and will consume nearly 4GB of memory to compile. You may need to reduce the level of parallelization depending on the amount of memory on your build host. e.g. instead of `make -j $(nproc)` run `make -j2`. Failures due to memory exhaustion will typically but not always manifest as compiler crashes. -Generally we recommend performing what we refer to as a "pinned build" which ensures the compiler and boost version remain the same between builds of different mandel versions (mandel requires these versions remain the same otherwise its state needs to be repopulated from a portable snapshot). +Generally we recommend performing what we refer to as a "pinned build" which ensures the compiler and boost version remain the same between builds of different Leap versions (Leap requires these versions remain the same otherwise its state needs to be repopulated from a portable snapshot). #### Building Pinned Build Binary Packages -In the directory `/scripts` you will find the two scripts `install_deps.sh` and `pinned_build.sh`. If you haven't installed build dependencies then run `install_deps.sh`. Then run `pinned_build.sh `. +In the directory `/scripts` you will find the two scripts `install_deps.sh` and `pinned_build.sh`. If you haven't installed build dependencies then run `install_deps.sh`. Then run `pinned_build.sh `. The dependencies directory is where the script will pull the C++ dependencies that need to be built with the pinned compiler for building the pinned binaries for binary packaging. -The binary package will be produced in the mandel build directory that was supplied. +The binary package will be produced in the Leap build directory that was supplied. #### Manual (non "pinned") Build Instructions diff --git a/libraries/appbase b/libraries/appbase index 9d4c34d0b2..39379e50b3 160000 --- a/libraries/appbase +++ b/libraries/appbase @@ -1 +1 @@ -Subproject commit 9d4c34d0b2f22331a8ec7a41bb17a6e8fb924a92 +Subproject commit 39379e50b3028b7ae913fae1129b065552d3286f diff --git a/libraries/chain/deep_mind.cpp b/libraries/chain/deep_mind.cpp index db20aa2de8..cc90fac1fe 100644 --- a/libraries/chain/deep_mind.cpp +++ b/libraries/chain/deep_mind.cpp @@ -48,7 +48,7 @@ namespace eosio::chain { void deep_mind_handler::on_startup(chainbase::database& db, uint32_t head_block_num) { // FIXME: We should probably feed that from CMake directly somehow ... - fc_dlog(_logger, "DEEP_MIND_VERSION mandel 13 0"); + fc_dlog(_logger, "DEEP_MIND_VERSION leap 13 0"); fc_dlog(_logger, "ABIDUMP START ${block_num} ${global_sequence_num}", ("block_num", head_block_num) diff --git a/libraries/chain/include/eosio/chain/chain_snapshot.hpp b/libraries/chain/include/eosio/chain/chain_snapshot.hpp index 5f02f08fb7..6df92ea3f8 100644 --- a/libraries/chain/include/eosio/chain/chain_snapshot.hpp +++ b/libraries/chain/include/eosio/chain/chain_snapshot.hpp @@ -22,7 +22,7 @@ struct chain_snapshot_header { * - Configurable wasm limits * 5: Updated for v3.0.0 eos features: * - chain_config update - * 6: Updated for v3.1.0 eos mandel release + * 6: Updated for v3.1.0 release */ static constexpr uint32_t minimum_compatible_version = 2; diff --git a/libraries/chainbase b/libraries/chainbase index 6b9d73577e..dcd2a34391 160000 --- a/libraries/chainbase +++ b/libraries/chainbase @@ -1 +1 @@ -Subproject commit 6b9d73577e50f0ff109db9252881a0d4568a6517 +Subproject commit dcd2a34391a7a831caaaa6e99d4b947f59603d4d diff --git a/libraries/eos-vm b/libraries/eos-vm index a0eafe5d9e..48146791f7 160000 --- a/libraries/eos-vm +++ b/libraries/eos-vm @@ -1 +1 @@ -Subproject commit a0eafe5d9ed4d13519d660e14bd34fbe7158e520 +Subproject commit 48146791f7cd8c7fa3934150249c093db83736d0 diff --git a/libraries/fc b/libraries/fc index 3b3762ea6b..35144b5563 160000 --- a/libraries/fc +++ b/libraries/fc @@ -1 +1 @@ -Subproject commit 3b3762ea6bc594c29590cfb500dee688120c5e5d +Subproject commit 35144b556328020bed905374a799748a1ca98d0e diff --git a/package.cmake b/package.cmake index f2d3149645..f738636c7c 100644 --- a/package.cmake +++ b/package.cmake @@ -25,22 +25,22 @@ string(APPEND CPACK_PACKAGE_FILE_NAME "-${CMAKE_SYSTEM_PROCESSOR}") set(CPACK_PACKAGE_CONTACT "EOS Network Foundation") set(CPACK_PACKAGE_VENDOR "EOS Network Foundation") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Mandel blockchain protocol") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "C++ implementation of the Antelope protocol") set(CPACK_COMPONENT_BASE_DESCRIPTION "daemon and CLI tools including ${NODE_EXECUTABLE_NAME}, ${CLI_CLIENT_EXECUTABLE_NAME}, and ${KEY_STORE_EXECUTABLE_NAME}") set(CPACK_COMPONENT_DEV_DESCRIPTION "headers and libraries for native contract unit testing") -set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/eosnetworkfoundation/mandel") +set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/AntelopeIO/leap") set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) set(CPACK_DEBIAN_BASE_PACKAGE_SECTION "utils") -set(CPACK_DEBIAN_PACKAGE_CONFLICTS "eosio") -set(CPACK_RPM_PACKAGE_CONFLICTS "eosio") +set(CPACK_DEBIAN_PACKAGE_CONFLICTS "eosio" "mandel") +set(CPACK_RPM_PACKAGE_CONFLICTS "eosio" "mandel") #only consider "base" and "dev" components for per-component packages get_cmake_property(CPACK_COMPONENTS_ALL COMPONENTS) list(REMOVE_ITEM CPACK_COMPONENTS_ALL "Unspecified") -#enable per component packages for .deb; ensure main package is just "mandel", not "mandel-base", and make the dev package have "mandel-dev" at the front not the back +#enable per component packages for .deb; ensure main package is just "leap", not "leap-base", and make the dev package have "leap-dev" at the front not the back set(CPACK_DEB_COMPONENT_INSTALL ON) set(CPACK_DEBIAN_BASE_PACKAGE_NAME "${CMAKE_PROJECT_NAME}") set(CPACK_DEBIAN_BASE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}.deb") diff --git a/plugins/net_plugin/net_plugin.cpp b/plugins/net_plugin/net_plugin.cpp index 0053b32392..d69135d74e 100644 --- a/plugins/net_plugin/net_plugin.cpp +++ b/plugins/net_plugin/net_plugin.cpp @@ -423,9 +423,9 @@ namespace eosio { constexpr uint16_t proto_heartbeat_interval = 4; // eosio 2.1: supports configurable heartbeat interval constexpr uint16_t proto_dup_goaway_resolution = 5; // eosio 2.1: support peer address based duplicate connection resolution constexpr uint16_t proto_dup_node_id_goaway = 6; // eosio 2.1: support peer node_id based duplicate connection resolution - constexpr uint16_t proto_mandel_initial = 7; // mandel client, needed because none of the 2.1 versions are supported + constexpr uint16_t proto_leap_initial = 7; // leap client, needed because none of the 2.1 versions are supported - constexpr uint16_t net_version_max = proto_mandel_initial; + constexpr uint16_t net_version_max = proto_leap_initial; /** * Index by start_block_num @@ -2902,7 +2902,7 @@ namespace eosio { }); // we don't support the 2.1 packed_transaction & signed_block, so tell 2.1 clients we are 2.0 - if( protocol_version >= proto_pruned_types && protocol_version < proto_mandel_initial ) { + if( protocol_version >= proto_pruned_types && protocol_version < proto_leap_initial ) { sent_handshake_count = 0; net_version = proto_explicit_sync; send_handshake(); diff --git a/scripts/pinned_build.sh b/scripts/pinned_build.sh index bae29d9576..b07964ed46 100755 --- a/scripts/pinned_build.sh +++ b/scripts/pinned_build.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -echo "Mandel Pinned Build" +echo "Leap Pinned Build" if [[ "$(uname)" == "Linux" ]]; then if [[ -e /etc/os-release ]]; then @@ -18,15 +18,15 @@ fi if [ $# -eq 0 ] || [ -z "$1" ] then - echo "Please supply a directory for the build dependencies to be placed and a directory for mandel build and a value for the number of jobs to use for building." - echo "The binary packages will be created and placed into the mandel build directory." - echo "./pinned_build.sh <1-100>" + echo "Please supply a directory for the build dependencies to be placed and a directory for leap build and a value for the number of jobs to use for building." + echo "The binary packages will be created and placed into the leap build directory." + echo "./pinned_build.sh <1-100>" exit -1 fi CORE_SYM=EOS DEP_DIR=$1 -MANDEL_DIR=$2 +LEAP_DIR=$2 JOBS=$3 CLANG_VER=11.0.1 BOOST_VER=1.70.0 @@ -125,10 +125,10 @@ install_boost ${DEP_DIR}/boost_${BOOST_VER//\./_} # go back to the directory where the script starts popdir ${START_DIR} -pushdir ${MANDEL_DIR} +pushdir ${LEAP_DIR} -# build Mandel -echo "Building Mandel ${SCRIPT_DIR}" +# build Leap +echo "Building Leap ${SCRIPT_DIR}" try cmake -DCMAKE_TOOLCHAIN_FILE=${SCRIPT_DIR}/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=${LLVM_DIR}/lib/cmake -DCMAKE_PREFIX_PATH=${BOOST_DIR}/bin ${SCRIPT_DIR}/.. try make -j${JOBS} @@ -145,4 +145,4 @@ echo "| ||_____||_____|| || ||____| |____|| || ||_____|\____| | || | |________. echo "| | | || | | || | | || | | || | | || | | |"; echo "| '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' |"; echo " '----------------' '----------------' '----------------' '----------------' '----------------' '----------------' "; -echo "Mandel has successfully built and constructed its packages. You should be able to find the packages at ${MANDEL_DIR}. Enjoy!!!" +echo "Leap has successfully built and constructed its packages. You should be able to find the packages at ${LEAP_DIR}. Enjoy!!!" diff --git a/tests/abieos b/tests/abieos index bd01a83dba..5c7312ef1c 160000 --- a/tests/abieos +++ b/tests/abieos @@ -1 +1 @@ -Subproject commit bd01a83dba5b8f0abae42f879008ba74a6235091 +Subproject commit 5c7312ef1ca43ddd9edf802bccba98e74e3476ca diff --git a/tutorials/bios-boot-tutorial/README.md b/tutorials/bios-boot-tutorial/README.md index f1f2aad06f..970bcf8df4 100644 --- a/tutorials/bios-boot-tutorial/README.md +++ b/tutorials/bios-boot-tutorial/README.md @@ -2,7 +2,7 @@ The `bios-boot-tutorial.py` script simulates the bios boot sequence. -``Prerequisites``: +## Prerequisites 1. Python 3.x 2. CMake @@ -15,40 +15,37 @@ The `bios-boot-tutorial.py` script simulates the bios boot sequence. 9. jq 10. psmisc +## Steps -``Steps``: +1. Install Leap 3.1 binaries by following the steps provided in the [Leap README](https://github.com/AntelopeIO/leap/tree/release/3.1#software-installation). -1. Install mandel binaries by following the steps outlined in below tutorial -[Install mandel binaries](https://github.com/eosnetworkfoundation/mandel/tree/release/3.0.x#Building). +2. Install CDT 3.0 binaries by following the steps provided in the [CDT README](https://github.com/AntelopeIO/cdt/tree/release/3.0#binary-releases). -2. Install mandel.cdt version 1.8.1 binaries by following the steps outlined in below tutorial -[Install mandel.cdt binaries](https://github.com/eosnetworkfoundation/mandel.cdt/tree/v1.8.1#binary-releases). - -3. Compile `mandel-contracts` version 3.0.x +3. Compile EOS System Contracts 3.1: ```bash $ cd ~ -$ git clone https://github.com/eosnetworkfoundation/mandel-contracts mandel.contracts-3.0.x -$ cd ./mandel.contracts-3.0.x/ -$ git checkout release/3.0.x -$ ./build.sh -$ cd ./build/contracts/ +$ git clone https://github.com/eosnetworkfoundation/mandel-contracts system-contracts-3.1 +$ cd ./system-contracts-3.1/ +$ git checkout release/3.1 +$ mkdir build +$ cd ./build +$ cmake -DCMAKE_BUILD_TYPE=Release .. +$ make -j $(nproc) +$ cd ./contracts/ $ pwd - ``` -4. Make note of the directory where the contracts were compiled -The last command in the previous step printed on the bash console the contracts' directory, make note of it, we'll reference it from now on as `CONTRACTS_DIRECTORY` +4. Make note of the path where the contracts were compiled +The last command in the previous step printed the contracts directory. Make note of it; we will reference it from now on as the environment variable `CONTRACTS_DIRECTORY`. -5. Launch the `bios-boot-tutorial.py` script. -The command line to launch the script, make sure you replace `CONTRACTS_DIRECTORY` with the actual directory path. +5. Launch the `bios-boot-tutorial.py` script: ```bash $ cd ~ -$ git clone https://github.com/eosnetworkfoundation/mandel -$ cd ./mandel/tutorials/bios-boot-tutorial/ -$ python3 bios-boot-tutorial.py --cleos=cleos --nodeos=nodeos --keosd=keosd --contracts-dir="CONTRACTS_DIRECTORY" -w -a - +$ git clone https://github.com/AntelopeIO/leap +$ cd ./leap/tutorials/bios-boot-tutorial/ +$ python3 bios-boot-tutorial.py --cleos=cleos --nodeos=nodeos --keosd=keosd --contracts-dir="${CONTRACTS_DIRECTORY}" -w -a ``` See [Developer Portal: Bios Boot Sequence](https://developers.eos.io/welcome/latest/tutorials/bios-boot-sequence) for additional information. diff --git a/unittests/deep-mind/deep-mind.log b/unittests/deep-mind/deep-mind.log index 04b17ca318..87d63409ab 100644 --- a/unittests/deep-mind/deep-mind.log +++ b/unittests/deep-mind/deep-mind.log @@ -17,7 +17,7 @@ DMLOG RLIMIT_OP ACCOUNT_USAGE INS \{"owner":"eosio\.prods","net_usage":\{"last_o DMLOG RAM_OP 0 eosio\.prods account add newaccount eosio\.prods 2656 2656 DMLOG PERM_OP INS 0 7 \{"usage_id":6,"parent":6,"owner":"eosio\.prods","name":"prod\.major","last_updated":"2020-01-01T00:00:00\.000","auth":\{"threshold":1,"keys":\[\],"accounts":\[\{"permission":\{"actor":"eosio","permission":"active"\},"weight":1\}\],"waits":\[\]\}\} DMLOG PERM_OP INS 0 8 \{"usage_id":7,"parent":7,"owner":"eosio\.prods","name":"prod\.minor","last_updated":"2020-01-01T00:00:00\.000","auth":\{"threshold":1,"keys":\[\],"accounts":\[\{"permission":\{"actor":"eosio","permission":"active"\},"weight":1\}\],"waits":\[\]\}\} -DMLOG DEEP_MIND_VERSION mandel 13 0 +DMLOG DEEP_MIND_VERSION leap 13 0 DMLOG ABIDUMP START 1 0 DMLOG ABIDUMP ABI eosio DmVvc2lvOjphYmkvMS4wBwxhY2NvdW50X25hbWUEbmFtZQ9wZXJtaXNzaW9uX25hbWUEbmFtZQthY3Rpb25fbmFtZQRuYW1lCnRhYmxlX25hbWUEbmFtZRN0cmFuc2FjdGlvbl9pZF90eXBlC2NoZWNrc3VtMjU2DWJsb2NrX2lkX3R5cGULY2hlY2tzdW0yNTYLd2VpZ2h0X3R5cGUGdWludDE2FhBwZXJtaXNzaW9uX2xldmVsAAIFYWN0b3IMYWNjb3VudF9uYW1lCnBlcm1pc3Npb24PcGVybWlzc2lvbl9uYW1lBmFjdGlvbgAEB2FjY291bnQMYWNjb3VudF9uYW1lBG5hbWULYWN0aW9uX25hbWUNYXV0aG9yaXphdGlvbhJwZXJtaXNzaW9uX2xldmVsW10EZGF0YQVieXRlcwlleHRlbnNpb24AAgR0eXBlBnVpbnQxNgRkYXRhBWJ5dGVzEnRyYW5zYWN0aW9uX2hlYWRlcgAGCmV4cGlyYXRpb24OdGltZV9wb2ludF9zZWMNcmVmX2Jsb2NrX251bQZ1aW50MTYQcmVmX2Jsb2NrX3ByZWZpeAZ1aW50MzITbWF4X25ldF91c2FnZV93b3Jkcwl2YXJ1aW50MzIQbWF4X2NwdV91c2FnZV9tcwV1aW50OAlkZWxheV9zZWMJdmFydWludDMyC3RyYW5zYWN0aW9uEnRyYW5zYWN0aW9uX2hlYWRlcgMUY29udGV4dF9mcmVlX2FjdGlvbnMIYWN0aW9uW10HYWN0aW9ucwhhY3Rpb25bXRZ0cmFuc2FjdGlvbl9leHRlbnNpb25zC2V4dGVuc2lvbltdDHByb2R1Y2VyX2tleQACDXByb2R1Y2VyX25hbWUMYWNjb3VudF9uYW1lEWJsb2NrX3NpZ25pbmdfa2V5CnB1YmxpY19rZXkRcHJvZHVjZXJfc2NoZWR1bGUAAgd2ZXJzaW9uBnVpbnQzMglwcm9kdWNlcnMOcHJvZHVjZXJfa2V5W10MYmxvY2tfaGVhZGVyAAkJdGltZXN0YW1wBnVpbnQzMghwcm9kdWNlcgxhY2NvdW50X25hbWUJY29uZmlybWVkBnVpbnQxNghwcmV2aW91cw1ibG9ja19pZF90eXBlEXRyYW5zYWN0aW9uX21yb290C2NoZWNrc3VtMjU2DGFjdGlvbl9tcm9vdAtjaGVja3N1bTI1NhBzY2hlZHVsZV92ZXJzaW9uBnVpbnQzMg1uZXdfcHJvZHVjZXJzEnByb2R1Y2VyX3NjaGVkdWxlPxFoZWFkZXJfZXh0ZW5zaW9ucwtleHRlbnNpb25bXQprZXlfd2VpZ2h0AAIDa2V5CnB1YmxpY19rZXkGd2VpZ2h0C3dlaWdodF90eXBlF3Blcm1pc3Npb25fbGV2ZWxfd2VpZ2h0AAIKcGVybWlzc2lvbhBwZXJtaXNzaW9uX2xldmVsBndlaWdodAt3ZWlnaHRfdHlwZQt3YWl0X3dlaWdodAACCHdhaXRfc2VjBnVpbnQzMgZ3ZWlnaHQLd2VpZ2h0X3R5cGUJYXV0aG9yaXR5AAQJdGhyZXNob2xkBnVpbnQzMgRrZXlzDGtleV93ZWlnaHRbXQhhY2NvdW50cxlwZXJtaXNzaW9uX2xldmVsX3dlaWdodFtdBXdhaXRzDXdhaXRfd2VpZ2h0W10KbmV3YWNjb3VudAAEB2NyZWF0b3IMYWNjb3VudF9uYW1lBG5hbWUMYWNjb3VudF9uYW1lBW93bmVyCWF1dGhvcml0eQZhY3RpdmUJYXV0aG9yaXR5B3NldGNvZGUABAdhY2NvdW50DGFjY291bnRfbmFtZQZ2bXR5cGUFdWludDgJdm12ZXJzaW9uBXVpbnQ4BGNvZGUFYnl0ZXMGc2V0YWJpAAIHYWNjb3VudAxhY2NvdW50X25hbWUDYWJpBWJ5dGVzCnVwZGF0ZWF1dGgABAdhY2NvdW50DGFjY291bnRfbmFtZQpwZXJtaXNzaW9uD3Blcm1pc3Npb25fbmFtZQZwYXJlbnQPcGVybWlzc2lvbl9uYW1lBGF1dGgJYXV0aG9yaXR5CmRlbGV0ZWF1dGgAAgdhY2NvdW50DGFjY291bnRfbmFtZQpwZXJtaXNzaW9uD3Blcm1pc3Npb25fbmFtZQhsaW5rYXV0aAAEB2FjY291bnQMYWNjb3VudF9uYW1lBGNvZGUMYWNjb3VudF9uYW1lBHR5cGULYWN0aW9uX25hbWULcmVxdWlyZW1lbnQPcGVybWlzc2lvbl9uYW1lCnVubGlua2F1dGgAAwdhY2NvdW50DGFjY291bnRfbmFtZQRjb2RlDGFjY291bnRfbmFtZQR0eXBlC2FjdGlvbl9uYW1lC2NhbmNlbGRlbGF5AAIOY2FuY2VsaW5nX2F1dGgQcGVybWlzc2lvbl9sZXZlbAZ0cnhfaWQTdHJhbnNhY3Rpb25faWRfdHlwZQdvbmVycm9yAAIJc2VuZGVyX2lkB3VpbnQxMjgIc2VudF90cngFYnl0ZXMHb25ibG9jawABBmhlYWRlcgxibG9ja19oZWFkZXIKAECemiJkuJoKbmV3YWNjb3VudAAAAABAJYqywgdzZXRjb2RlAAAAAAC4Y7LCBnNldGFiaQAAQMvaqGxS1Qp1cGRhdGVhdXRoAABAy9qorKJKCmRlbGV0ZWF1dGgAAAAALWsDp4sIbGlua2F1dGgAAEDL2sDp4tQKdW5saW5rYXV0aAAAvIkqRYWmQQtjYW5jZWxkZWxheQAAAADg0nvVpAdvbmVycm9yAAAAAAAiGs\+kB29uYmxvY2sAAAAAAAA= DMLOG ABIDUMP END diff --git a/wasm-spec-tests b/wasm-spec-tests index c3eb00d156..dd680a2f39 160000 --- a/wasm-spec-tests +++ b/wasm-spec-tests @@ -1 +1 @@ -Subproject commit c3eb00d156a35797166bc66a5c48832628804faf +Subproject commit dd680a2f397c1d9b0f24aa810b0ebdc48004ab4e