diff --git a/.circleci/build_win.ps1 b/.circleci/build_win.ps1 index 730bb6319..1b529085c 100644 --- a/.circleci/build_win.ps1 +++ b/.circleci/build_win.ps1 @@ -18,7 +18,7 @@ else { mkdir build cd build $boost_dir=(Resolve-Path $PSScriptRoot\..\deps\boost\lib\cmake\Boost-*) -..\deps\cmake\bin\cmake -G "Visual Studio 16 2019" -DBoost_DIR="$boost_dir\" -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded -DCMAKE_INSTALL_PREFIX="$PSScriptRoot\..\upload" -DUSE_Z3=OFF .. +..\deps\cmake\bin\cmake -G "Visual Studio 17 2022" -DBoost_DIR="$boost_dir\" -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded -DCMAKE_INSTALL_PREFIX="$PSScriptRoot\..\upload" -DUSE_Z3=OFF .. if ( -not $? ) { throw "CMake configure failed." } msbuild solidity.sln /p:Configuration=Release /m:10 /v:minimal if ( -not $? ) { throw "Build failed." } diff --git a/.circleci/config.yml b/.circleci/config.yml index 510341ef5..37e08f01d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -28,7 +28,7 @@ parameters: default: london orbs: - win: circleci/windows@2.2.0 + win: circleci/windows@4.1.1 commands: gitter_notify_unless_pr: @@ -368,18 +368,18 @@ defaults: - base_win_powershell: &base_win_powershell executor: - name: win/default + name: win/server-2022 shell: powershell.exe - base_win_powershell_large: &base_win_powershell_large executor: - name: win/default + name: win/server-2022 shell: powershell.exe size: large - base_win_cmd: &base_win_cmd executor: - name: win/default + name: win/server-2022 shell: cmd.exe - base_osx: &base_osx @@ -783,7 +783,9 @@ jobs: - checkout - run: name: Python unit tests - command: python.exe test/pyscriptTests.py + command: | + pip install requests + python test/pyscriptTests.py - gitter_notify_failure_unless_pr b_ubu: &b_ubu diff --git a/scripts/install_deps.ps1 b/scripts/install_deps.ps1 index e7726993c..b6f3655a0 100644 --- a/scripts/install_deps.ps1 +++ b/scripts/install_deps.ps1 @@ -6,21 +6,21 @@ $progressPreference = "silentlyContinue" if ( -not (Test-Path "$PSScriptRoot\..\deps\boost") ) { New-Item -ItemType Directory -Force -Path "$PSScriptRoot\..\deps" - Invoke-WebRequest -URI "https://github.com/Kitware/CMake/releases/download/v3.18.2/cmake-3.18.2-win64-x64.zip" -OutFile cmake.zip - if ((Get-FileHash cmake.zip).Hash -ne "5f4ec834fbd9b62fbf73bc48ed459fa2ea6a86c403106c90fedc2ac76d51612d") { + Invoke-WebRequest -URI "https://github.com/Kitware/CMake/releases/download/v3.22.3/cmake-3.22.3-windows-x86_64.zip" -OutFile cmake.zip + if ((Get-FileHash cmake.zip).Hash -ne "0018b369f06646d4784fad131a155333c9d59a03dee6390324f81b9df72a2f00") { throw 'Downloaded CMake source package has wrong checksum.' } tar -xf cmake.zip - mv cmake-3.18.2-win64-x64 "$PSScriptRoot\..\deps\cmake" + mv cmake-3.22.3-windows-x86_64 "$PSScriptRoot\..\deps\cmake" # FIXME: The default user agent results in Artifactory treating Invoke-WebRequest as a browser # and serving it a page that requires JavaScript. - Invoke-WebRequest -URI "https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.zip" -OutFile boost.zip -UserAgent "" - if ((Get-FileHash boost.zip).Hash -ne "d2886ceff60c35fc6dc9120e8faa960c1e9535f2d7ce447469eae9836110ea77") { + Invoke-WebRequest -URI "https://boostorg.jfrog.io/artifactory/main/release/1.78.0/source/boost_1_78_0.zip" -OutFile boost.zip -UserAgent "" + if ((Get-FileHash boost.zip).Hash -ne "f22143b5528e081123c3c5ed437e92f648fe69748e95fa6e2bd41484e2986cc3") { throw 'Downloaded Boost source package has wrong checksum.' } tar -xf boost.zip - cd boost_1_77_0 + cd boost_1_78_0 .\bootstrap.bat .\b2 -j4 -d0 link=static runtime-link=static variant=release threading=multi address-model=64 --with-filesystem --with-system --with-program_options --with-test --prefix="$PSScriptRoot\..\deps\boost" install if ( -not $? ) { throw "Error building boost." } diff --git a/test/tools/yulopti.cpp b/test/tools/yulopti.cpp index ad98ab9be..824956199 100644 --- a/test/tools/yulopti.cpp +++ b/test/tools/yulopti.cpp @@ -151,14 +151,18 @@ public: vector> sortedOptions = ranges::views::concat(optimiserSteps, _extraOptions) | - ranges::to>>() | - ranges::actions::sort([](tuple const& _a, tuple const& _b) { + ranges::to>>(); + std::sort( + sortedOptions.begin(), + sortedOptions.end(), + [](tuple const& _a, tuple const& _b) { return ( !boost::algorithm::iequals(get<1>(_a), get<1>(_b)) ? boost::algorithm::lexicographical_compare(get<1>(_a), get<1>(_b), boost::algorithm::is_iless()) : toLower(get<0>(_a)) < toLower(get<0>(_b)) ); - }); + } + ); yulAssert(sortedOptions.size() > 0); size_t rows = (sortedOptions.size() - 1) / _columns + 1;