build: Bump VS minimum supported version to 18.3 #33861

pull hebasto wants to merge 2 commits into bitcoin:master from hebasto:251112-vs18.0 changing 5 files +29 −38
  1. hebasto commented at 3:09 pm on November 12, 2025: member

    The new VS 18.0 release includes numerous bug fixes.

    Bumped to v18.3.0 where this bug in the builtin vcpkg is fixed.

  2. hebasto added the label Refactoring on Nov 12, 2025
  3. hebasto added the label Windows on Nov 12, 2025
  4. hebasto added the label Build system on Nov 12, 2025
  5. DrahtBot commented at 3:10 pm on November 12, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33861.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK maflcko, hodlinator, janb84

    If your review is incorrectly listed, please copy-paste <!–meta-tag:bot-skip–> into the comment that the bot should ignore.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #34500 (ci: Print verbose Windows CI build failure by maflcko)
    • #31974 (Drop testnet3 by Sjors)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  6. fanquake commented at 3:35 pm on November 12, 2025: member
    Seems a bit premature, if this is still waiting for multiple pieces of unreleased software? Could just wait for it to be shown as fixed in a nightly build?
  7. DrahtBot added the label CI failed on Nov 12, 2025
  8. hebasto force-pushed on Nov 30, 2025
  9. hebasto force-pushed on Nov 30, 2025
  10. DrahtBot added the label Needs rebase on Dec 1, 2025
  11. hebasto force-pushed on Dec 1, 2025
  12. in .github/workflows/ci.yml:225 in 58e0680e92
    218@@ -219,10 +219,10 @@ jobs:
    219         include:
    220           - job-type: standard
    221             generate-options: '-DBUILD_BENCH=ON -DBUILD_KERNEL_LIB=ON -DBUILD_UTIL_CHAINSTATE=ON -DWERROR=ON'
    222-            job-name: 'Windows native, VS 2022'
    223+            job-name: 'Windows native, VS 2026'
    224           - job-type: fuzz
    225             generate-options: '-DVCPKG_MANIFEST_NO_DEFAULT_FEATURES=ON -DVCPKG_MANIFEST_FEATURES="wallet" -DBUILD_GUI=OFF -DWITH_ZMQ=OFF -DBUILD_FOR_FUZZING=ON -DWERROR=ON'
    226-            job-name: 'Windows native, fuzz, VS 2022'
    227+            job-name: 'Windows native, fuzz, VS 2026'
    


    maflcko commented at 11:05 am on December 1, 2025:
    could remove the version/year here, as the docs and presets should already be clear on it? (no other ci task is having the version/year in the title)

    hebasto commented at 11:09 am on December 1, 2025:
    Thanks! Updated.
  13. hebasto force-pushed on Dec 1, 2025
  14. DrahtBot removed the label Needs rebase on Dec 1, 2025
  15. hebasto force-pushed on Feb 5, 2026
  16. hebasto marked this as ready for review on Feb 5, 2026
  17. hebasto marked this as a draft on Feb 5, 2026
  18. DrahtBot added the label Needs rebase on Feb 5, 2026
  19. DrahtBot removed the label CI failed on Feb 5, 2026
  20. hebasto force-pushed on Feb 6, 2026
  21. hebasto marked this as ready for review on Feb 6, 2026
  22. in .github/workflows/ci.yml:207 in f9d8763604 outdated
    203@@ -204,7 +204,7 @@ jobs:
    204 
    205   windows-native-dll:
    206     name: ${{ matrix.job-name }}
    207-    runs-on: windows-2022
    208+    runs-on: windows-2025-vs2026
    


    maflcko commented at 8:55 am on February 6, 2026:
    are there any docs on this image?


    maflcko commented at 9:01 am on February 6, 2026:

  23. hebasto commented at 8:56 am on February 6, 2026: member
    Rebased and undrafted.
  24. maflcko commented at 9:32 am on February 6, 2026: member
    lgtm ACK f9d87636044117aa4b73bd417fac1cd2d77712e1
  25. DrahtBot removed the label Needs rebase on Feb 6, 2026
  26. fanquake commented at 12:20 pm on February 6, 2026: member
    I guess there’s no issue here with us assuming everyone compiling/developing on Windows is using an editor that is < 3 months old (https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes#november-update-1800)?
  27. fanquake commented at 12:42 pm on February 6, 2026: member

    Also, according to #34515 this software is broken:

    Also, moving to Visual Studio 2026 (Community edition) is currently not an option, it ships with a unusable vcpkg version.

    but I guess this doesn’t effect us, or at least our usage in CI?

  28. hebasto commented at 5:34 pm on February 6, 2026: member

    Also, according to #34515 this software is broken:

    Also, moving to Visual Studio 2026 (Community edition) is currently not an option, it ships with a unusable vcpkg version.

    but I guess this doesn’t effect us, or at least our usage in CI?

    It affects the builtin vcpkg that is recommended in our docs. The CI uses an alternative vcpkg installation.

    Converted to draft.

  29. hebasto marked this as a draft on Feb 6, 2026
  30. DrahtBot added the label Needs rebase on Feb 9, 2026
  31. hebasto force-pushed on Feb 10, 2026
  32. hebasto commented at 3:42 pm on February 10, 2026: member
    Rebased to resolve a conflict with merged bitcoin/bitcoin#34500.
  33. in doc/build-windows-msvc.md:97 in 88dc11eecd
    96@@ -97,7 +97,7 @@ cmake -B build --preset vs2022-static -DVCPKG_INSTALLED_DIR="C:\path_without_spa
    97 One can skip vcpkg manifest default features to speedup the configuration step.
    


    maflcko commented at 4:34 pm on February 10, 2026:
    speedup -> speed up [verb phrase should be two words ("speed up") rather than the noun "speedup"; the current form is nonstandard in this context and may hinder clarity]
    

    l0rinc commented at 4:45 pm on February 10, 2026:
    https://en.wikipedia.org/wiki/Speedup - though here I’d also write it separately

    maflcko commented at 6:04 pm on February 10, 2026:

    https://en.wikipedia.org/wiki/Speedup - though here I’d also write it separately

    wikipedia article is about the noun, not the verb


    hebasto commented at 9:53 pm on February 10, 2026:
    Fixed.
  34. DrahtBot removed the label Needs rebase on Feb 10, 2026
  35. hebasto force-pushed on Feb 10, 2026
  36. hebasto marked this as ready for review on Feb 10, 2026
  37. hebasto commented at 9:53 pm on February 10, 2026: member
    Undrafted.
  38. hebasto renamed this:
    build: Bump VS minimum supported version to 18.0
    build: Bump VS minimum supported version to 18.3
    on Feb 10, 2026
  39. hebasto commented at 10:07 pm on February 10, 2026: member

    I guess there’s no issue here with us assuming everyone compiling/developing on Windows is using an editor that is < 3 months old (https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes#november-update-1800)?

    It shouldn’t be a blocker, as Visual Studio supports side-by-side installations. Anyone who needs VS 2022 can keep it installed alongside the new version.

  40. build: Bump VS minimum supported version to 18.3 7164a0cab6
  41. refactor: Remove workaround for resolved MSVC bug
    The bug was fixed in Visual Studio 18.0.
    452c743951
  42. hebasto force-pushed on Feb 10, 2026
  43. maflcko commented at 9:08 am on February 11, 2026: member

    review ACK 452c743951fa69f25f09e42239d1e70a0acf5c2b 🍳

    Signature:

    0untrusted comment: signature from minisign secret key on empty file; verify via: minisign -Vm "${path_to_any_empty_file}" -P RWTRmVTMeKV5noAMqVlsMugDDCyyTSbA3Re5AkUrhvLVln0tSaFWglOw -x "${path_to_this_whole_four_line_signature_blob}"
    1RUTRmVTMeKV5npGrKx1nqXCw5zeVHdtdYURB/KlyA/LMFgpNCs+SkW9a8N95d+U4AP1RJMi+krxU1A3Yux4bpwZNLvVBKy0wLgM=
    2trusted comment: review ACK 452c743951fa69f25f09e42239d1e70a0acf5c2b 🍳
    3ZeJCBWwDHyoCA8wRnxzHw3u7Z53n/0v6sSrpFYt2KYUq7pvIQDOFtdDCPfVJGikBk4iLjOMdtgniYCEd9P0ACA==
    
  44. hodlinator approved
  45. hodlinator commented at 9:30 am on February 11, 2026: contributor

    crACK 452c743951fa69f25f09e42239d1e70a0acf5c2b

    Thanks for removing the workaround I added! Searched to see if there are additional places with MSVC/2022 specific exceptions that could be removed but didn’t find any.

  46. maflcko added this to the milestone 31.0 on Feb 11, 2026
  47. janb84 commented at 11:17 am on February 11, 2026: contributor

    ACK 452c743951fa69f25f09e42239d1e70a0acf5c2b

    Successfully build and tested using the (free) Visual Studio 2026 Community edition 18.3 using the new presets.

    Given the changes in chainparams I also validated that a non-windows build still works

    NB. All dependencies (python, git and VS 2026 Community edition ) can be installed with the following 2 winget commands (winget is preinstalled on windows 11).

    0winget install --id Microsoft.VisualStudio.Community `
    1 --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    2 
    3winget install python3
    
  48. fanquake merged this on Feb 11, 2026
  49. fanquake closed this on Feb 11, 2026

  50. hebasto commented at 11:24 am on February 11, 2026: member

    @janb84

    NB. All dependencies (python, git and VS 2026 Community edition ) can be installed with the following 2 winget commands (winget is preinstalled on windows 11). Details

    0winget install --id Microsoft.VisualStudio.Community `
    1 --override "--wait --quiet --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.Git --includeRecommended"
    2 
    3winget install python3
    

    Would you be willing to open a PR for the build docs to include these winget commands? It would help align the Windows instructions with the style of the other platforms.

    I’ll be happy to review it.

  51. hebasto deleted the branch on Feb 11, 2026

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-02-26 03:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me