Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build(deps): update secp256k1-zkp #1248

Merged
merged 3 commits into from
Aug 24, 2023

Commits on Aug 8, 2023

  1. Squashed 'src/secp256k1/' changes from 7a30cb0c9d..b911b3cbd5

    b911b3cbd5 Merge BlockstreamResearch/secp256k1-zkp#265: bppp: Fix test for invalid sign byte again
    5bf57590bf bppp: Fix test for invalid sign byte again
    b2ccc8d9fd Merge BlockstreamResearch/secp256k1-zkp#260: Finish sync to upstream
    395e65e9f1 Merge branch 'master' into sync-upstream
    394e09ee84 musig: change test vector generation code shebang from python to python3
    aa3edea119 scalar: Remove unused secp256k1_scalar_chacha20
    167194bede rangeproof: Use util functions for writing big endian
    82777bba34 bppp: Fix test for invalid sign byte
    54b37db953 build: Fix linkage of extra binaries in -zkp modules
    9e96a2e9d8 hsort tests: Don't call secp256k1_testrand_int(0)
    80187089ff Merge commits '4494a369 3aef6ab8 0fa84f86 249c81ea 7966aee3 fb758fe8 3fc1de5c 0aacf643 9e6d1b0e 332af315 afd7eb4a c9ebca95 cc557575 0f7657d5 907a6721 b40e2d30 c545fdc3 2bd5f3e6 0e00fc7d c734c642 26392da2 ' into temp-merge-1386
    50e20fa7d4 Merge BlockstreamResearch/secp256k1-zkp#257: Upstream PRs 1314, 1317, 1318, 1316, 1327, 1310, 1328, 1333, 1330, 1334, 1337, 1341, 1339, 1350, 1349, 1338, 1129, 1347, 1336, 1295, 1354, 1355, 1356
    525b661f83 bppp/build: Fix linkage of benchmark
    4c70cc9bf5 Suppress wrong/buggy warning in MSVC <19.33
    579999b425 scalar: adjust muladd2 to new int128 interface
    b160486766 ecdsa_adaptor: add missing include
    74d9073414 Merge commits '83186db3 e9e4526a 5f7903c7 d373a721 09df0bfb 20a5da5f 908e02d5 d75dc59b debf3e5c bf29f8d0 60556c9f cb1a5927 67214f5f 45c5ca76 30574f22 0702ecb0 705ce7ed 3c1a0fd3 10836832 926dd3e9 ac43613d fd491ea1 799f4eec ' into temp-merge-1356
    26392da2fb Merge bitcoin-core/secp256k1#1386: ci: print $ELLSWIFT in cirrus.sh
    4692478853 ci: print $ELLSWIFT in cirrus.sh
    c734c64278 Merge bitcoin-core/secp256k1#1384: build: enable ellswift module via SECP_CONFIG_DEFINES
    78ca880788 build: enable ellswift module via SECP_CONFIG_DEFINES
    0e00fc7d10 Merge bitcoin-core/secp256k1#1383: util: remove unused checked_realloc
    b097a466c1 util: remove unused checked_realloc
    e593ed5685 musig: ensure point_load output is normalized
    7a07f3d33f Merge commits '3bab71cf 4258c54f 566faa17 9ce9984f 04bf3f67 5be353d6 2e035af2 5b0444a3 a6f4bcf6 5ec1333d f6bef03c 1f33bb2b 1c895367 6b7e5b71 596b336f 4b84f4bf 024a4094 222ecaf6 4b0f711d 3c818388 f30c7486 1cf15ebd 24c768ae 341cc197 c63ec88e 54d34b6c 073d98a0 9eb6934f ab5a9171 fb3a8063 006ddc1f 3353d3c7 b54a0672 7d4f86d2 e8295d07 3e3d125b acf5c55a ' into temp-merge-1312
    2bd5f3e618 Merge bitcoin-core/secp256k1#1382: refactor: Drop unused cast
    a9a5c24de2 Merge commits '56582094 427bc3cd 0cf2fb91 9c8c4f44 70be3cad f16a709f 464a9115 1d8f3675 afd8b23b 2bca0a5c 2d51a454 4e682626 a0f4644f 145078c4 7b7503da ec98fced 346a053d ' into temp-merge-1269
    4f8c5bd761 refactor: Drop unused cast
    bfeae121fb Merge BlockstreamResearch/secp256k1-zkp#255: musig: change test vector generation code shebang from python to python3
    ea478beec6 musig: change test vector generation code shebang from python to python3
    d47e4d40ca Merge BlockstreamResearch/secp256k1-zkp#252: Upstream PRs 1113, 1225, 1227, 1229, 1223
    dc733595b0 Merge commits 'df323b5c 3295aa14 ef4f8bd0 90b513aa bdf39000 ' into temp-merge-1223
    3937cefce6 Merge BlockstreamResearch/secp256k1-zkp#249: Upstream PRs 1160, 1193, 1169, 1190, 1192, 1194, 1196, 1195, 1170, 1172, 1200, 1199, 1203, 1201, 1206, 1078, 1209, 979, 1212, 1218, 1217, 1221, 1222
    897c765a49 Merge BlockstreamResearch/secp256k1-zkp#251: Update sync-upstream with master
    53bc63f9f9 Merge BlockstreamResearch/secp256k1-zkp#245: scalar: Remove unused secp256k1_scalar_chacha20
    860360eed4 scalar: Remove unused secp256k1_scalar_chacha20
    3970a7292a rangeproof: Use util functions for writing big endian
    afe7e649ee Merge BlockstreamResearch/secp256k1-zkp#248: bppp: Fix and improve test for invalid sign byte
    1a6d93f8b6 Merge BlockstreamResearch/secp256k1-zkp#250: ci: Always define EXPERIMENTAL variable
    3372993060 bppp: Fix test for invalid sign byte
    7e9193666f ci: Always define EXPERIMENTAL variable
    0d540ec942 Merge commits '88e80722 ff8edf89 f29a3270 a7a7bfaf a01a7d86 b1579cf5 ad7433b1 233822d8 5fbff5d3 2b77240b 1bff2005 e1817a6f 5596ec5c 8ebe5c52 1cca7c17 1b21aa51 cbd25559 09b1d466 57573187 8962fc95 9d1b458d eb8749fc 6048e6c0 ' into temp-merge-1222
    7aa9887128 Merge pull request ElementsProject#246 from jonasnick/temp-merge-1187
    304fc88557 Merge commits '9a8d65f0 75d7b7f5 665ba77e 3f57b9f7 eacad90f 01b819a8 31ed5386 2a39ac16 0eb30004 cbe41ac1 cc3b8a4f ' into temp-merge-1187
    58e27bc2d2 Merge BlockstreamResearch/secp256k1-zkp#244: sync-upstream.sh: Add "git show --remerge-diff" tip
    c545fdc374 Merge bitcoin-core/secp256k1#1298: Remove randomness tests
    0a99156871 sync-upstream.sh: Add "git show --remerge-diff" tip
    6c54db1987 Merge commits '2286f809 751c4354 477f02c4 e3f84777 5c789dcd 8c949f56 21ffe4b2 ' into temp-merge-1055
    30fc9d6551 Merge BlockstreamResearch/secp256k1-zkp#242: sync-upstream.sh: Fix position of "-b" option in reproduce command
    9b6a1c384d sync-upstream.sh: Fix position of "-b" option in reproduce command
    b40e2d30b7 Merge bitcoin-core/secp256k1#1378: ellswift: fix probabilistic test failure when swapping sides
    e996d076da Merge commits '44916ae9 86e3b38a ddf2b291 6138d73b e40fd277 ' into temp-merge-1156
    533571d6cf Merge BlockstreamResearch/secp256k1-zkp#239: sync-upstream: allows providing the local branch via cli
    05b207e969 sync-upstream: allows providing the local branch via cli
    64717a7b16 Merge commits '8b013fce 485f608f 44c2452f cd470333 accadc94 43756da8 af65d30c 63a3565e 6a873cc4 3efeb9da 9f8a13dc 694ce8fb a43e982b e13fae48 c2ee9175 ' into temp-merge-1146
    9a981068ce Merge commits '8b013fce 485f608f 44c2452f cd470333 accadc94 43756da8 ' into temp-merge-1115
    c424e2fb43 ellswift: fix probabilistic test failure when swapping sides
    907a67212e Merge bitcoin-core/secp256k1#1313: ci: Test on development snapshots of GCC and Clang
    0f7657d59c Merge bitcoin-core/secp256k1#1366: field: Use `restrict` consistently in fe_sqrt
    cc55757552 Merge bitcoin-core/secp256k1#1340: clean up in-comment Sage code (refer to secp256k1_params.sage, update to Python3)
    600c5adcd5 clean up in-comment Sage code (refer to secp256k1_params.sage, update to Python3)
    981e5be38c ci: Fix typo in comment
    e9e9648219 ci: Reduce number of macOS tasks from 28 to 8
    609093b387 ci: Add x86_64 Linux tasks for gcc and clang snapshots
    1deecaaf3b ci: Install development snapshots of gcc and clang
    b79ba8aa4c field: Use `restrict` consistently in fe_sqrt
    c9ebca95f9 Merge bitcoin-core/secp256k1#1363: doc: minor ellswift.md updates
    afd7eb4a55 Merge bitcoin-core/secp256k1#1371: Add exhaustive tests for ellswift (with create+decode roundtrip)
    2792119278 Add exhaustive test for ellswift (create+decode roundtrip)
    c7d900ffd1 doc: minor ellswift.md updates
    332af315fc Merge bitcoin-core/secp256k1#1344: group: save normalize_weak calls in `secp256k1_ge_is_valid_var`/`secp256k1_gej_eq_x_var`
    9e6d1b0e9b Merge bitcoin-core/secp256k1#1367: build: Improvements to symbol visibility logic on Windows (attempt 3)
    0aacf64352 Merge bitcoin-core/secp256k1#1370: Corrected some typos
    b6b9834e8d small fixes
    07c0e8b82e group: remove unneeded normalize_weak in `secp256k1_gej_eq_x_var`
    3fc1de5c55 Merge bitcoin-core/secp256k1#1364: Avoid `-Wmaybe-uninitialized` when compiling with `gcc -O1`
    fb758fe8d6 Merge bitcoin-core/secp256k1#1323: tweak_add: fix API doc for tweak=0
    c6cd2b15a0 ci: Add task for static library on Windows + CMake
    020bf69a44 build: Add extensive docs on visibility issues
    0196e8ade1 build: Introduce `SECP256k1_DLL_EXPORT` macro
    9f1b1904a3 refactor: Replace `SECP256K1_API_VAR` with `SECP256K1_API`
    ae9db95cea build: Introduce `SECP256K1_STATIC` macro for Windows users
    7966aee31d Merge bitcoin-core/secp256k1#1369: ci: Print commit in Windows container
    a7bec34231 ci: Print commit in Windows container
    249c81eaa3 Merge bitcoin-core/secp256k1#1368: ci: Drop manual checkout of merge commit
    98579e297b ci: Drop manual checkout of merge commit
    5b9f37f136 ci: Add `CFLAGS: -O1` to task matrix
    a6ca76cdf2 Avoid `-Wmaybe-uninitialized` when compiling with `gcc -O1`
    0fa84f869d Merge bitcoin-core/secp256k1#1358: tests: introduce helper for non-zero `random_fe_test()` results
    5a95a268b9 tests: introduce helper for non-zero `random_fe_test` results
    304421d57b tests: refactor: remove duplicate function `random_field_element_test`
    3aef6ab8e1 Merge bitcoin-core/secp256k1#1345: field: Static-assert that int args affecting magnitude are constant
    4494a369b6 Merge bitcoin-core/secp256k1#1357: tests: refactor: take use of `secp256k1_ge_x_on_curve_var`
    799f4eec27 Merge bitcoin-core/secp256k1#1356: ci: Adjust Docker image to Debian 12 "bookworm"
    c862a9fb49 ci: Adjust Docker image to Debian 12 "bookworm"
    a1782098a9 ci: Force DWARF v4 for Clang when Valgrind tests are expected
    7d8d5c86df tests: refactor: take use of `secp256k1_ge_x_on_curve_var`
    8a7273465b Help the compiler prove that a loop is entered
    fd491ea1bb Merge bitcoin-core/secp256k1#1355: Fix a typo in the error message
    ac43613d25 Merge bitcoin-core/secp256k1#1354: Add ellswift to CHANGELOG
    67887ae65c Fix a typo in the error message
    926dd3e962 Merge bitcoin-core/secp256k1#1295: abi: Use dllexport for mingw builds
    10836832e7 Merge bitcoin-core/secp256k1#1336: Use `__shiftright128` intrinsic in `secp256k1_u128_rshift` on MSVC
    7c7467ab7f Refer to ellswift.md in API docs
    c32ffd8d8c Add ellswift to CHANGELOG
    3c1a0fd37f Merge bitcoin-core/secp256k1#1347: field: Document return value of fe_sqrt()
    705ce7ed8c Merge bitcoin-core/secp256k1#1129: ElligatorSwift + integrated x-only DH
    0702ecb061 Merge bitcoin-core/secp256k1#1338: Drop no longer needed `#include "../include/secp256k1.h"`
    5779137457 field: Document return value of fe_sqrt()
    90e360acc2 Add doc/ellswift.md with ElligatorSwift explanation
    4f091847c2 Add ellswift testing to CI
    1bcea8c57f Add benchmarks for ellswift module
    2d1d41acf8 Add ctime tests for ellswift module
    df633cdeba Add _prefix and _bip324 ellswift_xdh hash functions
    9695deb351 Add tests for ellswift module
    c47917bbd6 Add ellswift module implementing ElligatorSwift
    79e5b2a8b8 Add functions to test if X coordinate is valid
    a597a5a9ce Add benchmark for key generation
    30574f22ea Merge bitcoin-core/secp256k1#1349: Normalize ge produced from secp256k1_pubkey_load
    45c5ca7675 Merge bitcoin-core/secp256k1#1350: scalar: introduce and use `secp256k1_{read,write}_be64` helpers
    f1652528be Normalize ge produced from secp256k1_pubkey_load
    7067ee54b4 tests: add tests for `secp256k1_{read,write}_be64`
    740528caad scalar: use newly introduced `secp256k1_{read,write}_be64` helpers (4x64 impl.)
    be8ff3a02a field: Static-assert that int args affecting magnitude are constant
    efa76c4bf7 group: remove unneeded normalize_weak in `secp256k1_ge_is_valid_var`
    67214f5f7d Merge bitcoin-core/secp256k1#1339: scalar: refactor: use `secp256k1_{read,write}_be32` helpers
    cb1a59275c Merge bitcoin-core/secp256k1#1341: docs: correct `pubkey` param descriptions for `secp256k1_keypair_{xonly_,}pub`
    f3644287b1 docs: correct `pubkey` param descriptions for `secp256k1_keypair_{xonly_,}pub`
    887183e7de scalar: use `secp256k1_{read,write}_be32` helpers (4x64 impl.)
    52b84238de scalar: use `secp256k1_{read,write}_be32` helpers (8x32 impl.)
    e449af6872 Drop no longer needed `#include "../include/secp256k1.h"`
    5b7bf2e9d4 Use `__shiftright128` intrinsic in `secp256k1_u128_rshift` on MSVC
    60556c9f49 Merge bitcoin-core/secp256k1#1337: ci: Fix error D8037 in `cl.exe` (attempt 2)
    db29bf220c ci: Remove quirk that runs dummy command after wineserver
    c7db4942b3 ci: Fix error D8037 in `cl.exe`
    7dae115861 Revert "ci: Move wine prefix to /tmp to avoid error D8037 in cl.exe"
    bf29f8d0a6 Merge bitcoin-core/secp256k1#1334: fix input range comment for `secp256k1_fe_add_int`
    605e07e365 fix input range comment for `secp256k1_fe_add_int`
    debf3e5c08 Merge bitcoin-core/secp256k1#1330: refactor: take use of `secp256k1_scalar_{zero,one}` constants
    d75dc59b58 Merge bitcoin-core/secp256k1#1333: test: Warn if both `VERIFY` and `COVERAGE` are defined
    ade5b36701 tests: add checks for scalar constants `secp256k1_scalar_{zero,one}`
    e83801f5db test: Warn if both `VERIFY` and `COVERAGE` are defined
    654246c635 refactor: take use of `secp256k1_scalar_{zero,one}` constants
    908e02d596 Merge bitcoin-core/secp256k1#1328: build: Bump MSVC warning level up to W3
    1549db0ca5 build: Level up MSVC warnings
    20a5da5fb1 Merge bitcoin-core/secp256k1#1310: Refine release process
    05873bb6b1 tweak_add: fix API doc for tweak=0
    ad84603297 release process: clarify change log updates
    6348bc7eee release process: fix process for maintenance release
    79fa50b082 release process: mention targeted release schedule
    165206789b release process: add sanity checks
    09df0bfb23 Merge bitcoin-core/secp256k1#1327: ci: Move wine prefix to /tmp to avoid error D8037 in cl.exe
    27504d5c94 ci: Move wine prefix to /tmp to avoid error D8037 in cl.exe
    d373a7215b Merge bitcoin-core/secp256k1#1316: Do not invoke fe_is_zero on failed set_b32_limit
    6433175ffe Do not invoke fe_is_zero on failed set_b32_limit
    5f7903c73c Merge bitcoin-core/secp256k1#1318: build: Enable -DVERIFY for precomputation binaries
    e9e4526a4e Merge bitcoin-core/secp256k1#1317: Make fe_cmov take max of magnitudes
    5768b50229 build: Enable -DVERIFY for precomputation binaries
    31b4bbee1e Make fe_cmov take max of magnitudes
    ff33018fe7 Merge BlockstreamResearch/secp256k1-zkp#232: Backports from libsecp256k1 v0.3.2
    39407c3f59 Mark stack variables as early clobber for technical correctness
    56a5d41429 Bugfix: mark outputs as early clobber in scalar x86_64 asm
    c8c0f55a11 ct: Be cautious and use volatile trick in more "conditional" paths
    3e94289966 ct: Use volatile trick in scalar_cond_negate
    83186db34a Merge bitcoin-core/secp256k1#1314: release cleanup: bump version after 0.3.2
    95448ef2f8 release cleanup: bump version after 0.3.2
    acf5c55ae6 Merge bitcoin-core/secp256k1#1312: release: Prepare for 0.3.2
    d490ca2046 release: Prepare for 0.3.2
    3e3d125b83 Merge bitcoin-core/secp256k1#1309: changelog: Catch up
    e8295d07ab Merge bitcoin-core/secp256k1#1311: Revert "Remove unused scratch space from API"
    697e1ccf4a changelog: Catch up
    3ad1027a40 Revert "Remove unused scratch space from API"
    76b43f3443 changelog: Add entry for ElementsProject#1303
    7d4f86d242 Merge bitcoin-core/secp256k1#1307: Mark more assembly outputs as early clobber
    b54a0672ef Merge bitcoin-core/secp256k1#1304: build: Rename arm to arm32 and check if it's really supported
    c6bb29b303 build: Rename `64bit` to `x86_64`
    8c9ae37a5a Add release note
    edcba04c28 Merge BlockstreamResearch/secp256k1-zkp#231: musig: add note about missing verification to partial_sign to doc
    03246457a8 autotools: Add `SECP_ARM32_ASM_CHECK` macro
    ed4ba238e2 cmake: Add `check_arm32_assembly` function
    350b4bd6e6 Mark stack variables as early clobber for technical correctness
    0c729ba70d Bugfix: mark outputs as early clobber in scalar x86_64 asm
    3353d3c753 Merge bitcoin-core/secp256k1#1207: Split fe_set_b32 into reducing and normalizing variants
    4ab4ec38a0 musig: add note about missing verification to partial_sign to doc
    f50ad76004 musig: update version number of BIP
    5b32602295 Split fe_set_b32 into reducing and normalizing variants
    006ddc1f42 Merge bitcoin-core/secp256k1#1306: build: Make tests work with external default callbacks
    1907f0f166 build: Make tests work with external default callbacks
    fb3a806365 Merge bitcoin-core/secp256k1#1133: schnorrsig: Add test vectors for variable-length messages
    cd54ac7c1c schnorrsig: Improve docs of schnorrsig_sign_custom
    28687b0312 schnorrsig: Add BIP340 varlen test vectors
    97a98bed1e schnorrsig: Refactor test vector code to allow varlen messages
    ab5a917128 Merge bitcoin-core/secp256k1#1303: ct: Use more volatile
    9eb6934f69 Merge bitcoin-core/secp256k1#1305: Remove unused scratch space from API
    073d98a076 Merge bitcoin-core/secp256k1#1292: refactor: Make 64-bit shift explicit
    17fa21733a ct: Be cautious and use volatile trick in more "conditional" paths
    5fb336f9ce ct: Use volatile trick in scalar_cond_negate
    712e7f8722 Remove unused scratch space from API
    54d34b6c24 Merge bitcoin-core/secp256k1#1300: Avoid normalize conditional on VERIFY
    c63ec88ebf Merge bitcoin-core/secp256k1#1066: Abstract out and merge all the magnitude/normalized logic
    7fc642fa25 Simplify secp256k1_fe_{impl_,}verify
    4e176ad5b9 Abstract out verify logic for fe_is_square_var
    4371f98346 Abstract out verify logic for fe_add_int
    89e324c6b9 Abstract out verify logic for fe_half
    283cd80ab4 Abstract out verify logic for fe_get_bounds
    d5aa2f0358 Abstract out verify logic for fe_inv{,_var}
    3167646072 Abstract out verify logic for fe_from_storage
    76d31e5047 Abstract out verify logic for fe_to_storage
    1e6894bdd7 Abstract out verify logic for fe_cmov
    be82bd8e03 Improve comments/checks for fe_sqrt
    6ab35082ef Abstract out verify logic for fe_sqr
    4c25f6efbd Abstract out verify logic for fe_mul
    e179e651cb Abstract out verify logic for fe_add
    7e7ad7ff57 Abstract out verify logic for fe_mul_int
    65d82a3445 Abstract out verify logic for fe_negate
    144670893e Abstract out verify logic for fe_get_b32
    f7a7666aeb Abstract out verify logic for fe_set_b32
    ce4d2093e8 Abstract out verify logic for fe_cmp_var
    7d7d43c6dd Improve comments/check for fe_equal{,_var}
    c5e788d672 Abstract out verify logic for fe_is_odd
    d3f3fe8616 Abstract out verify logic for fe_is_zero
    c701d9a471 Abstract out verify logic for fe_clear
    19a2bfeeea Abstract out verify logic for fe_set_int
    864f9db491 Abstract out verify logic for fe_normalizes_to_zero{,_var}
    6c31371120 Abstract out verify logic for fe_normalize_var
    e28b51f522 Abstract out verify logic for fe_normalize_weak
    b6b6f9cb97 Abstract out verify logic for fe_normalize
    7fa5195559 Bugfix: correct SECP256K1_FE_CONST mag/norm fields
    e5cf4bf3ff build: Rename `arm` to `arm32`
    b29566c51b Merge magnitude/normalized fields, move/improve comments
    97c63b9039 Avoid normalize conditional on VERIFY
    341cc19726 Merge bitcoin-core/secp256k1#1299: Infinity handling: ecmult_const(infinity) works, and group verification
    6ec3731e8c Simplify test PRNG implementation
    bbc834467c Avoid secp256k1_ge_set_gej_zinv with uninitialized z
    0a2e0b2ae4 Make secp256k1_{fe,ge,gej}_verify work as no-op if non-VERIFY
    f20266722a Add invariant checking to group elements
    a18821d5b1 Always initialize output coordinates in secp256k1_ge_set_gej
    3086cb90ac Expose secp256k1_fe_verify to other modules
    a0e696fd4d Make secp256k1_ecmult_const handle infinity
    24c768ae09 Merge bitcoin-core/secp256k1#1301: Avoid using bench_verify_data as bench_sign_data; merge them
    2e65f1fdbc Avoid using bench_verify_data as bench_sign_data; merge them
    fb5bfa4eed Add static test vector for Xoshiro256++
    1cf15ebd94 Merge bitcoin-core/secp256k1#1296: docs: complete interface description for `secp256k1_schnorrsig_sign_custom`
    4eab2c2fd8 Merge BlockstreamResearch/secp256k1-zkp#230: norm arg: add prove test vectors
    723e8ca8f7 Remove randomness tests
    bc7c8db179 abi: Use dllexport for mingw builds
    149c41cee1 docs: complete interface description for `secp256k1_schnorrsig_sign_custom`
    f30c74866b Merge bitcoin-core/secp256k1#1270: cmake: Fix library ABI versioning
    d1e48e5474 refactor: Make 64-bit shift explicit
    b2e29e43d0 ci: Treat all compiler warnings as errors in "Windows (VS 2022)" task
    3c81838856 Merge bitcoin-core/secp256k1#1289: cmake: Use full signature of `add_test()` command
    755629bc03 cmake: Use full signature of `add_test()` command
    bef448f9af cmake: Fix library ABI versioning
    4b0f711d46 Merge bitcoin-core/secp256k1#1277: autotools: Clean up after adding Wycheproof
    222ecaf661 Merge bitcoin-core/secp256k1#1284: cmake: Some improvements using `PROJECT_IS_TOP_LEVEL` variable
    71f746c057 cmake: Include `include` directory for subtree builds
    024a409484 Merge bitcoin-core/secp256k1#1240: cmake: Improve and document compiler flag checks
    a8d059f76c cmake, doc: Document compiler flags
    6ece1507cb cmake, refactor: Rename `try_add_compile_option` to `try_append_cflags`
    19516ed3e9 cmake: Use `add_compile_options()` in `try_add_compile_option()`
    4b84f4bf0f Merge bitcoin-core/secp256k1#1239: cmake: Bugfix and other improvements after bumping CMake up to 3.13
    596b336ff6 Merge bitcoin-core/secp256k1#1234: cmake: Add dev-mode
    6b7e5b717d Merge bitcoin-core/secp256k1#1275: build: Fix C4005 "macro redefinition" MSVC warnings in examples
    1c89536718 Merge bitcoin-core/secp256k1#1286: tests: remove extra semicolon in macro
    c4062d6b5d debug: move helper for printing buffers into util.h
    f3126fdfec norm arg: remove prove edge tests which are now covered by vectors
    847ed9ecb2 norm arg: add verification to prove vectors
    7e977b3c50 autotools: Take VPATH builds into account when generating testvectors
    2418d3260a autotools: Create src/wycheproof dir before creating file in it
    8764034ed5 autotools: Make all "pregenerated" targets .PHONY
    e1b9ce8811 autotools: Use same conventions for all pregenerated files
    cf797ed2a4 norm arg: add prove test vectors
    095c1e749c norm arg: add prove_const to tests
    ce18267b66 Merge BlockstreamResearch/secp256k1-zkp#229: musig: Fix nits left open in ElementsProject#211
    78ed0e09ca Merge BlockstreamResearch/secp256k1-zkp#227: Use relative #include paths and tidy header guards (as in upstream)
    3858bad2c6 tests: remove extra semicolon in macro
    1f33bb2b1c Merge bitcoin-core/secp256k1#1205: field: Improve docs +tests of secp256k1_fe_set_b32
    e7fc61ff16 Merge BlockstreamResearch/secp256k1-zkp#228: Simple dedicated -zkp README
    162da73e9a tests: Add debug helper for printing buffers
    e9fd3dff76 field: Improve docs and tests of secp256k1_fe_set_b32
    a0b51afc01 musig: VERIFY_CHECK preconditions of _musig_keyaggcoef_internal()
    da7702844e extrakeys: Clarify comparison order of compare/sort functions
    f6bef03c0a Merge bitcoin-core/secp256k1#1283: Get rid of secp256k1_fe_const_b
    5431b9decd cmake: Make `SECP256K1_INSTALL` default depend on `PROJECT_IS_TOP_LEVEL`
    5ec1333d4f Merge bitcoin-core/secp256k1#1285: bench: Make sys/time.h a system include
    4d9d8f92d4 Simple dedicated -zkp README
    e444d24bca Fix include guards: No _ prefix/suffix but _H suffix (as in upstream)
    0eea7d97ab Use relative #include paths in tests (as in upstream)
    c690d6df70 Use relative #include paths in benchmarks (as in upstream)
    c565827c1a Use relative #include paths in ctime_test (as in upstream)
    4eca406f4c Use relative #include paths in library (as in upstream)
    68b16a1662 bench: Make sys/time.h a system include
    162608cc98 cmake: Emulate `PROJECT_IS_TOP_LEVEL` for CMake<3.21
    69e1ec0331 Get rid of secp256k1_fe_const_b
    bf7bf8a64f norm arg: split norm_arg_zero into prove_edge and verify_zero_len
    a70c4d4a8a norm arg: add test vector for |n| = 0
    f5e4b16f0f norm arg: add test vector for sign bit malleability
    c0de361fc5 norm arg: allow X and R to be the point at infinity
    f22834f202 norm arg: add verify vector for n = [0], l = [0]
    d8e7f3763b musig: move ge_{serialize,parse}_ext to module-independent file
    050d9b2912 Merge BlockstreamResearch/secp256k1-zkp#226: bppp: align terminology with paper
    ce5ba9e24d gitignore: Add CMakeUserPresets.json
    0a446a312f cmake: Add dev-mode CMake preset
    a6f4bcf6e1 Merge bitcoin-core/secp256k1#1231: Move `SECP256K1_INLINE` macro definition out from `include/secp256k1.h`
    a273d74b2e cmake: Improve version comparison
    6a58b483ef cmake: Use `if(... IN_LIST ...)` command
    2445808c02 cmake: Use dedicated `GENERATOR_IS_MULTI_CONFIG` property
    9f8703ef17 cmake: Use dedicated `CMAKE_HOST_APPLE` variable
    8c2017035a cmake: Use recommended `add_compile_definitions` command
    04d4cc071a cmake: Add `DESCRIPTION` and `HOMEPAGE_URL` options to `project` command
    8a8b6536ef cmake: Use `SameMinorVersion` compatibility mode
    5b0444a3b5 Merge bitcoin-core/secp256k1#1263: cmake: Make installation optional
    47ac3d63cd cmake: Make installation optional
    2e035af251 Merge bitcoin-core/secp256k1#1273: build: Make `SECP_VALGRIND_CHECK` preserve `CPPFLAGS`
    5be353d658 Merge bitcoin-core/secp256k1#1279: tests: lint wycheproof's python script
    08f4b1632d autotools: Move code around to tidy Makefile
    2c63d17c1e bppp: align terminology with paper (gamma)
    dbf2e4d3e1 bppp: align terminology with paper (mu, rho)
    04bf3f6778 Merge bitcoin-core/secp256k1#1230: Build: allow static or shared but not both
    9ce9984f32 Merge bitcoin-core/secp256k1#1265: Remove bits argument from secp256k1_wnaf_const{_xonly}
    566faa17d3 Merge bitcoin-core/secp256k1#1267: doc: clarify process for patch releases
    ef49a11d29 build: allow static or shared but not both
    f4dd0419aa Merge BlockstreamResearch/secp256k1-zkp#225: sync-upstream: Use --autostash to handle uncommitted changes
    35ada3b954 tests: lint wycheproof's python script
    4258c54f4e Merge bitcoin-core/secp256k1#1276: autotools: Don't regenerate Wycheproof header automatically
    529b54d922 autotools: Move Wycheproof header from EXTRA_DIST to noinst_HEADERS
    06c67dea9f autotools: Don't regenerate Wycheproof header automatically
    dc0657c762 build: Fix C4005 "macro redefinition" MSVC warnings in examples
    1ecb94ebe9 build: Make `SECP_VALGRIND_CHECK` preserve `CPPFLAGS`
    13c438cdee sync-upstream: Use --autostash to handle uncommitted changes
    6ec1ff6040 Merge BlockstreamResearch/secp256k1-zkp#224: Backport of "ct: Use volatile "trick" in all fe/scalar cmov implementations"
    96f4853850 ct: Use volatile "trick" in all fe/scalar cmov implementations
    3bab71cf05 Merge bitcoin-core/secp256k1#1268: release cleanup: bump version after 0.3.1
    656c6ea8d8 release cleanup: bump version after 0.3.1
    346a053d4c Merge bitcoin-core/secp256k1#1269: changelog: Fix link
    6a37b2a5ea changelog: Fix link
    ec98fcedd5 Merge bitcoin-core/secp256k1#1266: release: Prepare for 0.3.1
    1b6fb5593c doc: clarify process for patch releases
    898e1c676e release: Prepare for 0.3.1
    1d9a13fc26 changelog: Remove inconsistent newlines
    0e091669a1 changelog: Catch up in preparation of 0.3.1
    7b7503dac5 Merge bitcoin-core/secp256k1#1245: tests: Add Wycheproof ECDSA vectors
    a575339c02 Remove bits argument from secp256k1_wnaf_const (always 256)
    145078c418 Merge bitcoin-core/secp256k1#1118: Add x-only ecmult_const version with x specified as n/d
    e5de454609 tests: Add Wycheproof ECDSA vectors
    0f8642079b Add exhaustive tests for ecmult_const_xonly
    4485926ace Add x-only ecmult_const version for x=n/d
    a0f4644f7e Merge bitcoin-core/secp256k1#1252: Make position of * in pointer declarations in include/ consistent
    4e682626a3 Merge bitcoin-core/secp256k1#1226: Add CMake instructions to release process
    2d51a454fc Merge bitcoin-core/secp256k1#1257: ct: Use volatile "trick" in all fe/scalar cmov implementations
    4a496a36fb ct: Use volatile "trick" in all fe/scalar cmov implementations
    3d1f430f9f Make position of * in pointer declarations in include/ consistent
    2bca0a5cbf Merge bitcoin-core/secp256k1#1241: build: Improve `SECP_TRY_APPEND_DEFAULT_CFLAGS` macro
    afd8b23b27 Merge bitcoin-core/secp256k1#1244: Suppress `-Wunused-parameter` when building for coverage analysis
    1d8f367515 Merge bitcoin-core/secp256k1#1250: No need to subtract 1 before doing a right shift
    3e43041be6 No need to subtract 1 before doing a right shift
    3addb4c1e8 build: Improve `SECP_TRY_APPEND_DEFAULT_CFLAGS` macro
    0c07c82834 Add CMake instructions to release process
    464a9115b4 Merge bitcoin-core/secp256k1#1242: Set ARM ASM symbol visibility to `hidden`
    f16a709fd6 Merge bitcoin-core/secp256k1#1247: Apply Checks only in VERIFY mode.
    70be3cade5 Merge bitcoin-core/secp256k1#1246: Typo
    4ebd82852d Apply Checks only in VERIFY mode.
    d1e7ca192d Typo
    36b0adf1b9 build: remove warning until it's reproducible
    5bb03c2911 Replace `SECP256K1_ECMULT_TABLE_VERIFY` macro by a function
    9c8c4f443c Merge bitcoin-core/secp256k1#1238: build: bump CMake minimum requirement to 3.13
    0cf2fb91ef Merge bitcoin-core/secp256k1#1243: build: Ensure no optimization when building for coverage analysis
    fd2a408647 Set ARM ASM symbol visibility to `hidden`
    4429a8c218 Suppress `-Wunused-parameter` when building for coverage analysis
    8e79c7ed11 build: Ensure no optimization when building for coverage analysis
    96dd062511 build: bump CMake minimum requirement to 3.13
    427bc3cdcf Merge bitcoin-core/secp256k1#1236: Update comment for secp256k1_modinv32_inv256
    647f0a5cb1 Update comment for secp256k1_modinv32_inv256
    8e142ca410 Move `SECP256K1_INLINE` macro definition out from `include/secp256k1.h`
    77445898a5 Remove `SECP256K1_INLINE` usage from examples
    5658209459 Merge bitcoin-core/secp256k1#1228: release cleanup: bump version after 0.3.0
    bdf39000b9 Merge bitcoin-core/secp256k1#1223: release: prepare for 0.3.0
    28e63f7ea7 release cleanup: bump version after 0.3.0
    b40adf2360 release: prepare for 0.3.0
    90b513aada Merge bitcoin-core/secp256k1#1229: cmake: Rename project to "libsecp256k1"
    8be82d4362 cmake: Rename project to "libsecp256k1"
    ef4f8bd025 Merge bitcoin-core/secp256k1#1227: readme: Use correct build type in CMake/Windows build instructions
    756b61d451 readme: Use correct build type in CMake/Windows build instructions
    3295aa149b Merge bitcoin-core/secp256k1#1225: changelog: Add entry for CMake
    92098d84cf changelog: Add entry for CMake
    df323b5c14 Merge bitcoin-core/secp256k1#1113: build: Add CMake-based build system
    e1eb33724c ci: Add "x86_64: Windows (VS 2022)" task
    10602b0030 cmake: Export config files
    5468d70964 build: Add CMake-based build system
    6048e6c03e Merge bitcoin-core/secp256k1#1222: Remove redundant checks.
    eb8749fcd0 Merge bitcoin-core/secp256k1#1221: Update Changelog
    5d8f53e312 Remove redudent checks.
    9d1b458d5f Merge bitcoin-core/secp256k1#1217: Add secp256k1_fe_add_int function
    d232112fa7 Update Changelog
    8962fc95bb Merge bitcoin-core/secp256k1#1218: Update overflow check
    2ef1c9b387 Update overflow check
    1d25608900 Merge BlockstreamResearch/secp256k1-zkp#223: musig: Update to BIP v1.0.0-rc.4 (Check pubnonce in NonceGen vectors)
    d23c23e24d musig: Update to BIP v1.0.0-rc.4 (Check pubnonce in NonceGen vectors)
    c4862f6869 Merge BlockstreamResearch/secp256k1-zkp#215: musig: include pubkey in secnonce and compare when signing
    a1ec2bb67b musig: add test for signing with wrong secnonce for a keypair
    bd57a017aa musig: include pubkey in secnonce and compare when signing
    5757318782 Merge bitcoin-core/secp256k1#1212: Prevent dead-store elimination when clearing secrets in examples
    b081f7e4cb Add secp256k1_fe_add_int function
    4f57024d86 Merge BlockstreamResearch/secp256k1-zkp#211: Update musig module to BIP MuSig2 v1.0.0-rc.3
    5660c13755 prevent optimization in algorithms
    09b1d466db Merge bitcoin-core/secp256k1#979: Native jacobi symbol algorithm
    ce3cfc78a6 doc: Describe Jacobi calculation in safegcd_implementation.md
    6be01036c8 Add secp256k1_fe_is_square_var function
    1de2a01c2b Native jacobi symbol algorithm
    04c6c1b181 Make secp256k1_modinv64_det_check_pow2 support abs val
    5fffb2c7af Make secp256k1_i128_check_pow2 support -(2^n)
    8ec6d111c8 Merge BlockstreamResearch/secp256k1-zkp#205: Bulletproofs++: Norm argument
    cbd2555934 Merge bitcoin-core/secp256k1#1209: build: Add SECP256K1_API_VAR to fix importing variables from DLLs
    1b21aa5175 Merge bitcoin-core/secp256k1#1078: group: Save a normalize_to_zero in gej_add_ge
    d7fb25c8ca Make sure that bppp_log2 isn't called with value 0
    e5a01d12c6 Rename buletproof_pp* to bppp*
    c983186872 transcript: add tests
    73edc75528 norm arg: add verification vectors
    13ad32e814 norm arg: add tests for zero length and zero vectors
    34c4847a6a ci: add bulletproofs
    2574516483 Add testcases for bulletproofs++ norm arugment
    46c7391154 Add norm argument verify API
    b43dd83b43 musig: add missing static keyword to function
    068e6a036a musig: add test vectors from BIP MuSig
    36621d13be musig: update to BIP v1.0.0-rc.2 "Add ''pk'' arg to ''NonceGen''"
    d717a4980b musig: update to BIP v0.8 "Switch from X-only to plain pk inputs."
    304f1bc96d extrakeys: add pubkey_sort test vectors from BIP MuSig2
    ae89051547 extrakeys: replace xonly_sort with pubkey_sort
    98242fcdd9 extrakeys: add secp256k1_pubkey_cmp
    73d5b6654d musig: update to BIP v0.7.0 (NonceGen)
    060887e9d7 musig: update to BIP v0.5.1 "Rename ordinary tweaking to plain"
    d9145455bb Add bulletproofs++ norm argument prove API
    8638f0e0ce Add internal BP++ commit API
    412f8f66a0 Add utility functions required in norm argument
    420353d7da Add utilities for log2
    17417d44f3 Add utilities from uncompressed Bulletproofs PR
    48563c8c79 bulletproofs: add API functionality to generate a large set of generators
    048f9f8642 bulletproofs: add new empty module
    6162d577fe generator: cleanups in Pedersen/generator code
    e4330341bd ci: Shutdown wineserver whenever CI script exits
    9a5a611a21 build: Suppress stupid MSVC linker warning
    739c53b19a examples: Extend sig examples by call that uses static context
    914276e4d2 build: Add SECP256K1_API_VAR to fix importing variables from DLLs
    1cca7c1744 Merge bitcoin-core/secp256k1#1206: build: Add -Wreserved-identifier supported by clang
    8c7e0fc1de build: Add -Wreserved-identifier supported by clang
    ca92a35d01 field: Simplify code in secp256k1_fe_set_b32
    d93f62e369 field: Verify field element even after secp256k1_fe_set_b32 fails
    8ebe5c5205 Merge bitcoin-core/secp256k1#1201: ci: Do not set git's `user.{email,name}` config options
    5596ec5c2c Merge bitcoin-core/secp256k1#1203: Do not link `bench` and `ctime_tests` to `COMMON_LIB`
    ef39721ccc Do not link `bench` and `ctime_tests` to `COMMON_LIB`
    9b60e3148d ci: Do not set git's `user.{email,name}` config options
    e1817a6f54 Merge bitcoin-core/secp256k1#1199: ci: Minor improvements inspired by Bitcoin Core
    1bff200588 Merge bitcoin-core/secp256k1#1200: Drop no longer used Autoheader macros
    9b7d18669d Drop no longer used Autoheader macros
    c2415866c7 ci: Don't fetch git history
    0ecf318851 ci: Use remote pull/merge ref instead of local git merge
    0a6006989f Revert "Remove unused scalar_sqr"
    87373f5145 MOVE ONLY: move Pedersen commitment stuff to generator module from rangeproof module
    b1f1675375 Merge BlockstreamResearch/secp256k1-zkp#214: sync-upstream: Fix $REPRODUCE_COMMAND for "select"
    cbe2815633 musig: update to BIP v0.4 "Allow the output of NonceAgg to be inf"
    206017d67d musig: update to BIP v0.3 (NonceGen)
    d800dd55db musig: remove test vectors
    a58c7d29bd Merge BlockstreamResearch/secp256k1-zkp#213: Update macOS image for CI
    e04c660b11 sync-upstream: Fix $REPRODUCE_COMMAND for "select"
    3b2c675955 Update macOS image for CI
    2b77240b3b Merge bitcoin-core/secp256k1#1172: benchmarks: fix bench_scalar_split
    eb6bebaee3 scalar: restrict split_lambda args, improve doc and VERIFY_CHECKs
    7f49aa7f2d ci: add test job with -DVERIFY
    620ba3d74b benchmarks: fix bench_scalar_split
    5fbff5d348 Merge bitcoin-core/secp256k1#1170: contexts: Forbid destroying, cloning and randomizing the static context
    233822d849 Merge bitcoin-core/secp256k1#1195: ctime_tests: improve output when CHECKMEM_RUNNING is not defined
    ad7433b140 Merge bitcoin-core/secp256k1#1196: Drop no longer used variables from the build system
    e39d954f11 tests: Add CHECK_ILLEGAL(_VOID) macros and use in static ctx tests
    2cd4e3c0a9 Drop no longer used `SECP_{LIBS,INCLUDE}` variables
    613626f94c Drop no longer used `SECP_TEST_{LIBS,INCLUDE}` variables
    61841fc9ee contexts: Forbid randomizing secp256k1_context_static
    4b6df5e33e contexts: Forbid cloning/destroying secp256k1_context_static
    b1579cf5fb Merge bitcoin-core/secp256k1#1194: Ensure safety of ctz_debruijn implementation.
    8f51229e03 ctime_tests: improve output when CHECKMEM_RUNNING is not defined
    d6ff738d5b Ensure safety of ctz_debruijn implementation.
    a01a7d86dc Merge bitcoin-core/secp256k1#1192: Switch to exhaustive groups with small B coefficient
    a7a7bfaf3d Merge bitcoin-core/secp256k1#1190: Make all non-API functions (except main) static
    f29a327092 Merge bitcoin-core/secp256k1#1169: Add support for msan instead of valgrind (for memcheck and ctime test)
    ff8edf89e2 Merge bitcoin-core/secp256k1#1193: Add `noverify_tests` to `.gitignore`
    ce60785b26 Introduce SECP256K1_B macro for curve b coefficient
    4934aa7995 Switch to exhaustive groups with small B coefficient
    d4a6b58df7 Add `noverify_tests` to `.gitignore`
    88e80722d2 Merge bitcoin-core/secp256k1#1160: Makefile: add `-I$(top_srcdir)/{include,src}` to `CPPFLAGS` for precomputed
    0f088ec112 Rename CTIMETEST -> CTIMETESTS
    74b026f05d Add runtime checking for DECLASSIFY flag
    5e2e6fcfc0 Run ctime test in Linux MSan CI job
    18974061a3 Make ctime tests building configurable
    5048be17e9 Rename valgrind_ctime_test -> ctime_tests
    6eed6c18de Update error messages to suggest msan as well
    8e11f89a68 Add support for msan integration to checkmem.h
    8dc64079eb Add compile-time error to valgrind_ctime_test
    0db05a770e Abstract interactions with valgrind behind new checkmem.h
    4f1a54e41d Move valgrind CPPFLAGS into SECP_CONFIG_DEFINES
    cc3b8a4f40 Merge bitcoin-core/secp256k1#1187: refactor: Rename global variables in tests
    9a93f48f50 refactor: Rename STTC to STATIC_CTX in tests
    3385a2648d refactor: Rename global variables to uppercase in tests
    e03ef86559 Make all non-API functions (except main) static
    cbe41ac138 Merge bitcoin-core/secp256k1#1188: tests: Add noverify_tests which is like tests but without VERIFY
    203760023c tests: Add noverify_tests which is like tests but without VERIFY
    e862c4af0c Makefile: add -I$(top_srcdir)/src to CPPFLAGS for precomputed
    0eb3000417 Merge bitcoin-core/secp256k1#1186: tests: Tidy context tests
    39e8f0e3d7 refactor: Separate run_context_tests into static vs proper contexts
    a4a09379b1 tests: Clean up and improve run_context_tests() further
    fc90bb5695 refactor: Tidy up main()
    f32a36f620 tests: Don't use global context for context tests
    ce4f936c4f tests: Tidy run_context_tests() by extracting functions
    18e0db30cb tests: Don't recreate global context in scratch space test
    b19806122e tests: Use global copy of secp256k1_context_static instead of clone
    2a39ac162e Merge bitcoin-core/secp256k1#1185: Drop `SECP_CONFIG_DEFINES` from examples
    2f9ca284e2 Drop `SECP_CONFIG_DEFINES` from examples
    31ed5386e8 Merge bitcoin-core/secp256k1#1183: Bugfix: pass SECP_CONFIG_DEFINES to bench compilation
    c0a555b2ae Bugfix: pass SECP_CONFIG_DEFINES to bench compilation
    01b819a8c7 Merge bitcoin-core/secp256k1#1158: Add a secp256k1_i128_to_u64 function.
    eacad90f69 Merge bitcoin-core/secp256k1#1171: Change ARG_CHECK_NO_RETURN to ARG_CHECK_VOID which returns (void)
    3f57b9f774 Merge bitcoin-core/secp256k1#1177: Some improvements to the changelog
    c30b889f17 Clarify that the ABI-incompatible versions are earlier
    881fc33d0c Consistency in naming of modules
    665ba77e79 Merge bitcoin-core/secp256k1#1178: Drop `src/libsecp256k1-config.h`
    75d7b7f5ba Merge bitcoin-core/secp256k1#1154: ci: set -u in cirrus.sh to treat unset variables as an error
    7a74688201 ci: add missing CFLAGS & CPPFLAGS variable to print_environment
    c2e0fdadeb ci: set -u in cirrus.sh to treat unset variables as an error
    9c5a4d21bb Do not define unused `HAVE_VALGRIND` macro
    ad8647f548 Drop no longer relevant files from `.gitignore`
    b627ba7050 Remove dependency on `src/libsecp256k1-config.h`
    9ecf8149a1 Reduce font size in changelog
    2dc133a67f Add more changelog entries
    ac233e181a Add links to diffs to changelog
    cee8223ef6 Mention semantic versioning in changelog
    9a8d65f07f Merge bitcoin-core/secp256k1#1174: release cleanup: bump version after 0.2.0
    02ebc290f7 release cleanup: bump version after 0.2.0
    b6b360efaf doc: improve message of cleanup commit
    21ffe4b22a Merge bitcoin-core/secp256k1#1055: Prepare initial release
    e025ccdf74 release: prepare for initial release 0.2.0
    6d1784a2e2 build: add missing files to EXTRA_DIST
    8c949f56da Merge bitcoin-core/secp256k1#1173: Don't use compute credits for now
    13bf1b6b32 changelog: make order of change types match keepachangelog.com
    b1f992a552 doc: improve release process
    7e5b22684f Don't use compute credits for now
    a49e0940ad docs: Fix typo
    2551cdac90 tests: Fix code formatting
    c635c1bfd5 Change ARG_CHECK_NO_RETURN to ARG_CHECK_VOID which returns (void)
    cf66f2357c refactor: Add helper function secp256k1_context_is_proper()
    ad39e2dc41 build: change package version to 0.1.0-dev
    5c789dcd73 Merge bitcoin-core/secp256k1#1168: Replace deprecated context flags with NONE in benchmarks and tests
    d6dc0f4ae3 tests: Switch to NONE contexts in module tests
    0c8a5caddd tests: Switch to NONE contexts in tests.c
    86540e9e1f tests: add test for deprecated flags and rm them from run_context
    caa0ad631e group: add gej_eq_var
    37ba744f5b tests: Switch to NONE contexts in exhaustive and ctime tests
    8d7a9a8eda benchmarks: Switch to NONE contexts
    90618e9263 doc: move CHANGELOG from doc/ to root directory
    e3f84777eb Merge bitcoin-core/secp256k1#1126: API cleanup with respect to contexts
    4386a2306c examples: Switch to NONE contexts
    7289b51d31 docs: Use doxygen style if and only if comment is user-facing
    e7d0185c90 docs: Get rid of "initialized for signing" terminology
    06126364ad docs: Tidy and improve docs about contexts and randomization
    e02d6862bd selftest: Expose in public API
    e383fbfa66 selftest: Rename internal function to make name available for API
    d2c6d48de3 tests: Use new name of static context
    53796d2b24 contexts: Rename static context
    72fedf8a6c docs: Improve docs for static context
    316ac7625a contexts: Deprecate all context flags except SECP256K1_CONTEXT_NONE
    477f02c4de Merge bitcoin-core/secp256k1#1165: gitignore: Add *.sage.py files autogenerated by sage [skip ci]
    092be61c5e gitignore: Add *.sage.py files autogenerated by sage
    1a553ee8be docs: Change signature "validation" to "verification"
    ee7341fbac docs: Never require a verification context
    751c4354d5 Merge bitcoin-core/secp256k1#1152: Update macOS image for CI
    2286f80902 Merge bitcoin-core/secp256k1#993: Enable non-experimental modules by default
    d216475205 test secp256k1_i128_to_i64
    4bc429019d Add a secp256k1_i128_to_u64 function.
    e40fd277b7 Merge bitcoin-core/secp256k1#1156: Followups to int128_struct arithmetic
    99bd335599 Make int128 overflow test use secp256k1_[ui]128_mul
    a8494b02bf Use compute credits for macOS jobs
    3afce0af7c Avoid signed overflow in MSVC AMR64 secp256k1_mul128
    c0ae48c995 Update macOS image for CI
    9b5f589d30 Heuristically decide whether to use int128_struct
    63ff064d2f int128: Add test override for testing __(u)mulh on MSVC X64
    f2b7e88768 Add int128 randomized tests
    6138d73be4 Merge bitcoin-core/secp256k1#1155: Add MSan CI jobs
    ddf2b2910e Merge bitcoin-core/secp256k1#1000: Synthetic int128 type.
    86e3b38a4a Merge bitcoin-core/secp256k1#1149: Remove usage of CHECK from non-test file
    00a42b91b3 Add MSan CI job
    44916ae915 Merge bitcoin-core/secp256k1#1147: ci: print env to allow reproducing the job outside of CI
    c2ee9175e9 Merge bitcoin-core/secp256k1#1146: ci: prevent "-v/--version: not found" irrelevant error
    e13fae487e Merge bitcoin-core/secp256k1#1150: ci: always cat test_env.log
    a340d9500a ci: add int128_struct tests
    dceaa1f579 int128: Tidy #includes of int128.h and int128_impl.h
    2914bccbc0 Simulated int128 type.
    6a965b6b98 Remove usage of CHECK from non-test file
    5c9f1a5c37 ci: always cat all logs_snippets
    49ae843592 ci: mostly prevent "-v/--version: not found" irrelevant error
    4e54c03153 ci: print env to allow reproducing the job outside of CI
    a43e982bca Merge bitcoin-core/secp256k1#1144: Cleanup `.gitignore` file
    f5039cb66c Cleanup `.gitignore` file
    798727ae1e Revert "Add test logs to gitignore"
    d22774e248 Merge BlockstreamResearch/secp256k1-zkp#203: MuSig doc fixes
    dd83e72d52 Add ordinary tweak info
    d26100cab2 Exclude nonce_process from pre-processing steps
    b7607f93f2 Fix reference to xonly_tweak_add
    f7e9a8544f Merge BlockstreamResearch/secp256k1-zkp#201: rangeproof: add secp256k1_rangeproof_max_size function to estimate rangeproof size
    6b6ced9839 rangeproof: add more max_size tests
    34876ecb5f rangeproof: add more static test vectors
    310e517061 rangeproof: add a bunch more testing
    f1410cb67a rangeproof: add secp256k1_rangeproof_max_size function to estimate rangeproof size
    c137ddbdff Merge BlockstreamResearch/secp256k1-zkp#200: build: automatically enable module dependencies
    0202d839fb Merge BlockstreamResearch/secp256k1-zkp#199: surjectionproof: make sure that n_used_pubkeys > 0 in generate
    5ac8fb035e surjectionproof: make sure that n_used_pubkeys > 0 in generate
    7ff446df8b Merge BlockstreamResearch/secp256k1-zkp#198: rangeproof: add a test for all-zero blinding factors
    5a40f3d99b replace memcmp with secp256k1_memcmp_var throughout the codebase
    92820d944b rangeproof: add a test for all-zero blinding factors
    171b294a1c build: improve error message if --enable-experimental is missed
    58ab152bb4 build: move all output concerning enabled modules at single place
    1493113e61 build: automatically enable module dependencies
    4fd7e1eabd Merge BlockstreamResearch/secp256k1-zkp#197: fix include paths in all the -zkp modules
    347f96d94a fix include paths in all the -zkp modules
    41e8704b48 build: Enable some modules by default
    694ce8fb2d Merge bitcoin-core/secp256k1#1131: readme: Misc improvements
    88b00897e7 readme: Fix line break
    78f5296da4 readme: Sell "no runtime dependencies"
    ef48f088ad readme: Add IRC channel
    d1d6e47c17 Merge BlockstreamResearch/secp256k1-zkp#196: surjectionproof: fail to generate proofs when an input equals the output
    d1175d265d surjectionproof: use secp256k1_memcmp_var rather than bare memcmp
    bf18ff5a8c surjectionproof: fix generation to fail when any input == the output
    4ff6e4274d surjectionproof: add test for existing behavior on input=output proofs
    9f8a13dc8e Merge bitcoin-core/secp256k1#1128: configure: Remove pkgconfig macros again (reintroduced by mismerge)
    cabe085bb4 configure: Remove pkgconfig macros again (reintroduced by mismerge)
    71a206fa5b Merge BlockstreamResearch/secp256k1-zkp#194: extrakeys: rename swap/swap64 to fix OpenBSD 7.1 compilation
    db648478c3 extrakeys: rename swap/swap64 to fix OpenBSD 7.1 compilation
    3efeb9da21 Merge bitcoin-core/secp256k1#1121: config: Set preprocessor defaults for ECMULT_* config values
    6a873cc4a9 Merge bitcoin-core/secp256k1#1122: tests: Randomize the context with probability 15/16 instead of 1/4
    17065f48ae tests: Randomize the context with probability 15/16 instead of 1/4
    c27ae45144 config: Remove basic-config.h
    da6514a04a config: Introduce DEBUG_CONFIG macro for debug output of config
    63a3565e97 Merge bitcoin-core/secp256k1#1120: ecmult_gen: Skip RNG when creating blinding if no seed is available
    d0cf55e13a config: Set preprocessor defaults for ECMULT_* config values
    55f8bc99dc ecmult_gen: Improve comments about projective blinding
    7a86955800 ecmult_gen: Simplify code (no observable change)
    4cc0b1b669 ecmult_gen: Skip RNG when creating blinding if no seed is available
    af65d30cc8 Merge bitcoin-core/secp256k1#1116: build: Fix #include "..." paths to get rid of further -I arguments
    40a3473a9d build: Fix #include "..." paths to get rid of further -I arguments
    43756da819 Merge bitcoin-core/secp256k1#1115: Fix sepc256k1 -> secp256k1 typo in group.h
    069aba8125 Fix sepc256k1 -> secp256k1 typo in group.h
    accadc94df Merge bitcoin-core/secp256k1#1114: `_scratch_destroy`: move `VERIFY_CHECK` after invalid scrach space check
    cd47033335 Merge bitcoin-core/secp256k1#1084: ci: Add MSVC builds
    1827c9bf2b scratch_destroy: move VERIFY_CHECK after invalid scrach space check
    49e2acd927 configure: Improve rationale for WERROR_CFLAGS
    8dc4b03341 ci: Add a C++ job that compiles the public headers without -fpermissive
    51f296a46c ci: Run persistent wineserver to speed up wine
    3fb3269c22 ci: Add 32-bit MinGW64 build
    9efc2e5221 ci: Add MSVC builds
    2be6ba0fed configure: Convince autotools to work with MSVC's archiver lib.exe
    bd81f4140a schnorrsig bench: Suppress a stupid warning in MSVC
    44c2452fd3 Merge bitcoin-core/secp256k1#1105: Don't export symbols in static libraries
    6f6cab9989 abi: Don't export symbols in static Windows libraries
    485f608fa9 Merge bitcoin-core/secp256k1#1104: Fix the false positive of `SECP_64BIT_ASM_CHECK`
    8b013fce51 Merge bitcoin-core/secp256k1#1056: Save negations in var-time group addition
    7efc9835a9 Fix the false positive of `SECP_64BIT_ASM_CHECK`
    2f984ffc45 Save negations in var-time group addition
    09f3d71c51 configure: Add a few CFLAGS for MSVC
    3b4f3d0d46 build: Reject C++ compilers in the preprocessor
    1cc0941414 configure: Don't abort if the compiler does not define __STDC__
    cca8cbbac8 configure: Output message when checking for valgrind
    1a6be5745f bench: Make benchmarks compile on MSVC
    e089eecc1e group: Further simply gej_add_ge
    ac71020ebe group: Save a normalize_to_zero in gej_add_ge
    
    git-subtree-dir: src/secp256k1
    git-subtree-split: b911b3cbd5814aed69d97144eb3093fa806d3a7f
    delta1 committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    3f32c20 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0aa5344 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2023

  1. Configuration menu
    Copy the full SHA
    048984a View commit details
    Browse the repository at this point in the history