Skip to content

ci: Fix exiting from ci.sh on error#1660

Merged
real-or-random merged 1 commit intobitcoin-core:masterfrom
real-or-random:202503-fix-ci-exit
Mar 13, 2025
Merged

ci: Fix exiting from ci.sh on error#1660
real-or-random merged 1 commit intobitcoin-core:masterfrom
real-or-random:202503-fix-ci-exit

Conversation

@real-or-random
Copy link
Contributor

Fixes the following bash error when make fails:
./ci/ci.sh: line 100: return: can only `return' from a function or
sourced script

Fixes the following bash error when make fails:
    ./ci/ci.sh: line 100: return: can only `return' from a function or
    sourced script
Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK d87c3bc

@real-or-random real-or-random merged commit e56716a into bitcoin-core:master Mar 13, 2025
117 checks passed
hebasto added a commit to hebasto/bitcoin that referenced this pull request Mar 17, 2025
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 70f149b9a1bf4ed3266f97774d0ae9577534bf40
josibake added a commit to josibake/bitcoin that referenced this pull request Apr 4, 2025
324ba7d9cc docs: update README
1719790169 ci: enable silentpayments module
f9aa16e715 tests: add constant time tests
094fe7bfa4 tests: add BIP-352 test vectors
bfa4e18a48 silentpayments: add benchmarks for scanning
36f818b993 silentpayments: add examples/silentpayments.c
793a1a42c0 silentpayments: receiving
3aaaa5a135 silentpayments: recipient label support
eb2e69584d silentpayments: sending
8f69297215 build: add skeleton for new silentpayments (BIP352) module
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 324ba7d9cc2f33a3be89e6d7c733c776f43382e2
josibake added a commit to josibake/bitcoin that referenced this pull request Apr 8, 2025
fd18d38de0 docs: update README
8c6028f235 ci: enable silentpayments module
16ec6901fc tests: add constant time tests
9a39d3ad9c tests: add BIP-352 test vectors
fa9adb7b64 silentpayments: add benchmarks for scanning
7477acc315 silentpayments: add examples/silentpayments.c
6411bde6fd silentpayments: receiving
43fb6d15ca silentpayments: recipient label support
7649d0e9bc silentpayments: sending
8f69297215 build: add skeleton for new silentpayments (BIP352) module
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: fd18d38de07566a6ddd87520430088ae93f6f5df
hebasto added a commit to hebasto/bitcoin that referenced this pull request May 8, 2025
13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb03276 gitignore: Add Python cache files
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 13906b7154c07699320fc4fe99779a8bb4f34ad4
hebasto added a commit to hebasto/bitcoin that referenced this pull request May 13, 2025
4187a46649 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11ae tests: Add Wycheproof ECDH vectors
13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb03276 gitignore: Add Python cache files
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 4187a4664914dc6f6fb6a619c6b85c854fc33033
fanquake added a commit to bitcoin/bitcoin that referenced this pull request May 13, 2025
josibake added a commit to josibake/bitcoin that referenced this pull request May 14, 2025
c0db6509bd docs: update README
8339232b7e ci: enable silentpayments module
635745fc3a tests: add constant time tests
b1de2ee2f7 tests: add BIP-352 test vectors
aea372837f silentpayments: add benchmarks for scanning
1ec7857aed silentpayments: add examples/silentpayments.c
c9bec084eb silentpayments: receiving
28fd17d7c4 silentpayments: recipient label support
065e8b7793 silentpayments: sending
a6d8b11754 build: add skeleton for new silentpayments (BIP352) module
6274359346 bench: add ellswift to bench help output
0258186573 configure: Show exhaustive tests in summary
53b578d10b include: remove WARN_UNUSED_RESULT for functions always returning 1
f75c985604 ci: Fix exiting from ci.sh on error
947761b842 tests: remove unused uncounting_illegal_callback_fn
5d01f375c6 build: Drop no longer needed  `-fvisibility=hidden` compiler option
dbf1e95d2a ci: Run `tools/symbol-check.py`
8174c88f47 test: Add `tools/symbol-check.py`
8a287f9a32 Introduce `SECP256K1_LOCAL_VAR` macro
7106544a16 Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
1e2da62eff gha: Print all *.log files, in a separate action
REVERT: 4187a46649 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
REVERT: e266ba11ae tests: Add Wycheproof ECDH vectors
REVERT: 13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
REVERT: c1bcb03276 gitignore: Add Python cache files
REVERT: 70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
REVERT: 6b3fe51fb6 bench: add ellswift to bench help output
REVERT: d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
REVERT: 3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
REVERT: 20b05c9d3f configure: Show exhaustive tests in summary
REVERT: e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
REVERT: d87c3bc58f ci: Fix exiting from ci.sh on error
REVERT: 1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
REVERT: 2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
REVERT: 51907fa918 tests: remove unused uncounting_illegal_callback_fn
REVERT: a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
REVERT: 13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
REVERT: d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
REVERT: 8ed1d83d92 ci: Run `tools/symbol-check.py`
REVERT: 41d32ab2de test: Add `tools/symbol-check.py`
REVERT: 88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
REVERT: 03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
REVERT: 59860bcc24 gha: Print all *.log files, in a separate action
REVERT: 37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases

git-subtree-dir: src/secp256k1
git-subtree-split: c0db6509bd2cb0777ce0d335e2582f74364fb8ec
vmta added a commit to umkoin/umkoin that referenced this pull request May 22, 2025
9fab42525 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377f bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d3 Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed9947 tests: update wycheproof files
4187a4664 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11a tests: Add Wycheproof ECDH vectors
13906b715 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb0327 gitignore: Add Python cache files
70f149b9a Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb bench: add ellswift to bench help output
d84bb83e2 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1 Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3 configure: Show exhaustive tests in summary
e56716a3b Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58 ci: Fix exiting from ci.sh on error
1b6e08153 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b03 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa91 tests: remove unused uncounting_illegal_callback_fn
a7a511714 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65d Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d9 ci: Run `tools/symbol-check.py`
41d32ab2d test: Add `tools/symbol-check.py`
88548058b Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c61 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc2 gha: Print all *.log files, in a separate action
4ba1ba2af Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a8 musig: Fix clearing of pubnonces
318608238 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39daf Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60be Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac5770 Make static context const
1b1fc0934 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629 CONTRIBUTING: mention that `EXIT_` codes should be used
c85558172 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fce examples: use `EXIT_...` constants for `main` return values
2e3bf1365 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf8 README: add instructions for verifying GPG signatures
00774d072 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb8 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd ci: Add new "Windows (clang-cl)" job
84c0bd1f7 cmake: Adjust diagnostic flags for clang-cl
f79f46c70 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c doc: Improve cmake instructions in README
182359476 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
64228a648 musig: Use _ge_set_all_gej for own public nonces
300aab1c0 tests: Improve _ge_set_all_gej(_var) tests
365f274ce group: Simplify secp256k1_ge_set_all_gej
d3082ddea group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 9fab4252567661574cc9f6f97a057884f8129ff2
josibake added a commit to josibake/bitcoin that referenced this pull request Jul 10, 2025
6264c3d093 docs: update README
f825d34260 ci: enable silentpayments module
b821a467e2 tests: add constant time tests
b5b73bcd99 tests: add BIP-352 test vectors
eabeedb752 silentpayments: add benchmarks for scanning
1de8b7e854 silentpayments: add examples/silentpayments.c
ed3a44b10a silentpayments: receiving
3c9362dd6a silentpayments: recipient label support
70e20b7145 silentpayments: sending
cf44324b5e build: add skeleton for new silentpayments (BIP352) module
ad60ef7ea7 Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c498779096 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
0dfe387dbe cmake: support the use of launchers in ctest -S scripts
89096c234d Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6fd cmake: configure libsecp256k1.pc during install
29e73f4ba5 Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b141 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa5c Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d374735 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e101 ci: Bump GCC snapshot major version to 16
004f57fcd8 ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc30f ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a8b ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346b9 ci: Add `arm64` architecture to `docker_cache` job
b77aae9226 ci: Rename Docker image tag to reflect architecture
145ae3e28d cmake: add a helper for linking into static libs
819210974b README: add link to musig example, generalize module enabling hint
95db29b144 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b5c cmake: Emulate Libtool's behavior on FreeBSD
f24b838bed Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43e0 doc: Promote "Building with CMake" to standard procedure
6f67151ee2 cmake: Use `PUBLIC_HEADER` target property
c32715b2a0 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f06 Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987a8 cmake: Bump minimum required CMake version to 3.22
92394476e9 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448cb4 Assert field magnitude at control-flow join
9fab425256 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377f4 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d39 Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed99479 tests: update wycheproof files
4187a46649 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11ae tests: Add Wycheproof ECDH vectors
13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb03276 gitignore: Add Python cache files
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
REVERT: c0db6509bd docs: update README
REVERT: 8339232b7e ci: enable silentpayments module
REVERT: 635745fc3a tests: add constant time tests
REVERT: b1de2ee2f7 tests: add BIP-352 test vectors
REVERT: aea372837f silentpayments: add benchmarks for scanning
REVERT: 1ec7857aed silentpayments: add examples/silentpayments.c
REVERT: c9bec084eb silentpayments: receiving
REVERT: 28fd17d7c4 silentpayments: recipient label support
REVERT: 065e8b7793 silentpayments: sending
REVERT: a6d8b11754 build: add skeleton for new silentpayments (BIP352) module
REVERT: 6274359346 bench: add ellswift to bench help output
REVERT: 0258186573 configure: Show exhaustive tests in summary
REVERT: 53b578d10b include: remove WARN_UNUSED_RESULT for functions always returning 1
REVERT: f75c985604 ci: Fix exiting from ci.sh on error
REVERT: 947761b842 tests: remove unused uncounting_illegal_callback_fn
REVERT: 5d01f375c6 build: Drop no longer needed  `-fvisibility=hidden` compiler option
REVERT: dbf1e95d2a ci: Run `tools/symbol-check.py`
REVERT: 8174c88f47 test: Add `tools/symbol-check.py`
REVERT: 8a287f9a32 Introduce `SECP256K1_LOCAL_VAR` macro
REVERT: 7106544a16 Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
REVERT: 1e2da62eff gha: Print all *.log files, in a separate action

git-subtree-dir: src/secp256k1
git-subtree-split: 6264c3d0939f2ab11ba8c92f3cb521f9c89c8596
janus pushed a commit to BitgesellOfficial/bitgesell that referenced this pull request Sep 7, 2025
4187a46649 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11ae tests: Add Wycheproof ECDH vectors
13906b7154 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb03276 gitignore: Add Python cache files
70f149b9a1 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51fb6 bench: add ellswift to bench help output
d84bb83e26 Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c1b Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d3f configure: Show exhaustive tests in summary
e56716a3bc Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc58f ci: Fix exiting from ci.sh on error
1b6e081538 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b034 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa918 tests: remove unused uncounting_illegal_callback_fn
a7a5117144 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65dc Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763a5 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d92 ci: Run `tools/symbol-check.py`
41d32ab2de test: Add `tools/symbol-check.py`
88548058b3 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c615 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc24 gha: Print all *.log files, in a separate action
4ba1ba2af9 Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054a1 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a83 musig: Fix clearing of pubnonces
3186082387 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39dafb Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60bec Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac57705 Make static context const
1b1fc09341 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480fbb Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d389629a CONTRIBUTING: mention that `EXIT_` codes should be used
c855581728 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fcea examples: use `EXIT_...` constants for `main` return values
2e3bf13653 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf84 README: add instructions for verifying GPG signatures
00774d0723 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb85 schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73dd9 ci: Add new "Windows (clang-cl)" job
84c0bd1f72 cmake: Adjust diagnostic flags for clang-cl
f79f46c703 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558c4 doc: Improve cmake instructions in README
1823594761 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b33 Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450eb Fix some misspellings
ec329c2501 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f594 release cleanup: bump version after 0.6.0
64228a648f musig: Use _ge_set_all_gej for own public nonces
300aab1c05 tests: Improve _ge_set_all_gej(_var) tests
365f274ce3 group: Simplify secp256k1_ge_set_all_gej
d3082ddead group: Add constant-time secp256k1_ge_set_all_gej

git-subtree-dir: src/secp256k1
git-subtree-split: 4187a4664914dc6f6fb6a619c6b85c854fc33033
real-or-random added a commit to BlockstreamResearch/secp256k1-zkp that referenced this pull request Feb 23, 2026
…59, 1657, 1660, 1659, 1661

4dda312 ci: Use Python virtual environment in x86_64-macos-native job (mllwchrry)
795f19a ci: Switch to macOS 15 Sequoia Intel-based image (Hennadii Stepanov)
2f057a1 ci: Don't hardcode ABI version (Tim Ruffing)
17ad196 schnorrsig_halfagg: Fix symbol visibility for internal function (mllwchrry)
ec343f0 Port bitcoin-core/secp256k1#1642 to zkp-specific code (mllwchrry)
20b05c9 configure: Show exhaustive tests in summary (Tim Ruffing)
1b6e081 include: remove WARN_UNUSED_RESULT for functions always returning 1 (Jonas Nick)
d87c3bc ci: Fix exiting from ci.sh on error (Tim Ruffing)
51907fa tests: remove unused uncounting_illegal_callback_fn (Jonas Nick)
d147876 build: Drop no longer needed  `-fvisibility=hidden` compiler option (Hennadii Stepanov)
8ed1d83 ci: Run `tools/symbol-check.py` (Hennadii Stepanov)
41d32ab test: Add `tools/symbol-check.py` (Hennadii Stepanov)
8854805 Introduce `SECP256K1_LOCAL_VAR` macro (Hennadii Stepanov)
37d2c60 Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases (Sebastian Falbesoner)
59860bc gha: Print all *.log files, in a separate action (Tim Ruffing)
4c50d73 ci: Add new "Windows (clang-cl)" job (Hennadii Stepanov)
84c0bd1 cmake: Adjust diagnostic flags for clang-cl (Hennadii Stepanov)
961ec25 musig: Fix clearing of pubnonces (Tim Ruffing)
64228a6 musig: Use _ge_set_all_gej for own public nonces (Tim Ruffing)
300aab1 tests: Improve _ge_set_all_gej(_var) tests (Tim Ruffing)
365f274 group: Simplify secp256k1_ge_set_all_gej (Tim Ruffing)
d3082dd group: Add constant-time secp256k1_ge_set_all_gej (Tim Ruffing)
432ac57 Make static context const (Daniel Pfeifer)
1823594 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize` (Sebastian Falbesoner)

Pull request description:

  Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
  Merge bitcoin-core/secp256k1#1639: Make static context const
  Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
  Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
  Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
  Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
  Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
  Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
  Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
  Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
  Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
  Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary

  This PR can be recreated with `./contrib/sync-upstream.sh -b master range d84bb83`.

  Tips:
   * Use `git show --remerge-diff <pr-branch>` to show the conflict resolution in the merge commit.
   * Use `git read-tree --reset -u <pr-branch>` to replay these resolutions during the conflict resolution stage when recreating the PR branch locally.
     Be aware that this may discard your index as well as the uncommitted changes and untracked files in your worktree.

  Additional fixes:
  * schnorrsig_halfagg: Added `static` to internal helper function to pass `symbol-check.py` introduced in bitcoin-core/secp256k1#1359.
  * ci: Cherry-picked bitcoin-core/secp256k1@f67b0ac1 to fix hardcoded DLL version in symbol-check (zkp produces `libsecp256k1-0.dll`, not `-5.dll`)

ACKs for top commit:
  real-or-random:
    ACK 4dda312

Tree-SHA512: 56c6a7dc977fec9cd57330db2a4513b82ee2284e905b70f83d50e9b84f4606b83f695be8eece653ffd88b9852f0a7903662f8ab215434c56c7d3bf3062a3ed16
github-actions bot pushed a commit to 21-DOT-DEV/swift-secp256k1 that referenced this pull request Mar 1, 2026
42ae776d Merge BlockstreamResearch/secp256k1-zkp#327: Upstream PRs 1711, 1688, 1717, 1720, 1722, 1726, 1725, 1729, 1731, 1681, 1737, 1738
01b1b916 modules: Port bitcoin-core/secp256k1#1725 to zkp-specific code
38284aa0 Merge commits '2c076d90 20e3b447 74b8068c e523e4f9 d5997141 d2dcf520 f36afb8b 8113671f d93380fb 03fb60ad 4985ac0f 36e76952 ' into temp-merge-1738
a3733f33 Merge BlockstreamResearch/secp256k1-zkp#325: Upstream PRs 1685, 1692, 1687, 1689, 1694, 1699, 1704, 1696, 1705, 1702, 1706, 1707, 1708
9dcd857d Merge commits '29e73f4b 89096c23 c4987790 ad60ef7e 943479a7 cbbbf3bd 73a69595 7c338042 5e74086d 6037833c 020ee604 a660a497 b9313c6e ' into temp-merge-1708
64316eac Merge BlockstreamResearch/secp256k1-zkp#324: Upstream PRs 1662, 1669, 1492, 1670, 1668, 1673, 1675, 1680, 1679, 1690, 1683, 1678
cc4a92b5 Merge commits '70f149b9 13906b71 4187a466 bb597b3d 9fab4252 92394476 201b2b8f f24b838b 95db29b1 2a9d3747 a28c2ffa 746e36b1 ' into temp-merge-1678
6e071d18 Merge BlockstreamResearch/secp256k1-zkp#323: Upstream PRs 1642, 1639, 1614, 1656, 1647, 1655, 1593, 1359, 1657, 1660, 1659, 1661
4dda3122 ci: Use Python virtual environment in x86_64-macos-native job
795f19af ci: Switch to macOS 15 Sequoia Intel-based image
2f057a14 ci: Don't hardcode ABI version
17ad1960 schnorrsig_halfagg: Fix symbol visibility for internal function
ec343f0b Port bitcoin-core/secp256k1#1642 to zkp-specific code
79953d07 Merge commits '1b1fc093 6c2a39da 31860823 abd25054 4ba1ba2a 03bbe8c6 13ed6f65 a7a51171 2abb35b0 e56716a3 3f54ed8c d84bb83e ' into temp-merge-1661
2d30d398 Merge BlockstreamResearch/secp256k1-zkp#322: Upstream PRs 1579, 1631, 1633, 1634, 1641, 1650, 1646, 1654
e3bddfa7 modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
913be29e Merge commits 'b161bffb 0cdc758a ec329c25 8deef00b f79f46c7 00774d07 2e3bf136 c0d9480f ' into temp-merge-1654
8aa05cb3 Merge BlockstreamResearch/secp256k1-zkp#320: Upstream PRs 1603, 1599, 1616, 1553, 1620, 1595, 1619, 1624, 1625, 1582, 1581, 1628
a8e6a3cc Port bitcoin-core/secp256k1#1628 to zkp public API
347d6adf Merge commits 'a88aa935 01b58933 18f9b967 e59158b6 1fae76f5 f0868a9b 68b55209 9b7c59cb 1464f15c 9a8db52f 7d48f5ed a38d879a ' into temp-merge-1628
7acd4a1f Merge BlockstreamResearch/secp256k1-zkp#319: Upstream PR 1479
8c7c24eb docs: simplify README description, fix musig docs
8d443b80 musig: Re-add adaptor signatures support
248358f2 Merge commit '3660fe5e' into temp-merge-1479
21c24fdc musig: Remove module in preparation for upstream merge
211323d6 Merge BlockstreamResearch/secp256k1-zkp#318: Upstream PRs 1574, 1576, 1575, 1577, 1578, 1583, 1586, 1600, 1604, 1554
551b5dd4 Merge commits 'fded437c cdf08c1a 642c885b f8c1b0e0 3fdf146b b3076144 19888550 2f2ccc46 472faaa8 4c57c7a5 ' into temp-merge-1554
4ae7cb4f Merge BlockstreamResearch/secp256k1-zkp#317: Upstream PRs 1529, 1548, 1545, 1550, 1546, 1543, 1535, 1555, 1565, 1564, 1563, 1551
d0dde4aa Merge commits '35c0fdc 5dd637f 69b2192 d7ae25c d403eea f473c95 4af241b a526937 fcc5d73 ca06e58 ea2d5f0 0055b86 ' into temp-merge-1551
84ca3b33 Merge BlockstreamResearch/secp256k1-zkp#316: Upstream PRs 1533
513e550e Merge commits '4392f0f7 ' into temp-merge-1533
0fb0eac9 Merge BlockstreamResearch/secp256k1-zkp#314: Upstream PRs 1522, 1523, 1525, 1524, 1526, 1528, 1517, 1532, 1488
91b2deab ci: Add zkp modules to arm64-macos-native job
f5e9804e Merge remote-tracking branch 'zkp/master' into temp-merge-1488
e34dc812 Merge BlockstreamResearch/secp256k1-zkp#315: ci: Backport LLVM apt signature fix
040673bd ci, docker: Fix LLVM repository signature failure
c946b097 Merge commits 'e3a885d4 d7f6613d 7d0bc087 7712a530 4155e62f 06bff6de 1791f6fc 4b8d5eea bedffd53 ' into temp-merge-1488
1cdc3e0f Merge BlockstreamResearch/secp256k1-zkp#311: sync-upstream: Extend git usage tips
d176205d Merge BlockstreamResearch/secp256k1-zkp#313: Upstream PR 1518
ca68d088 Merge BlockstreamResearch/secp256k1-zkp#312: scalar: Add SECP256K1_SCALAR_VERIFY to zkp-specific function
2cb2e312 extrakeys: Migrate to bitcoin-core/secp256k1#1518 secp256k1_ec_pubkey_sort
3291b021 Merge commits 'bb528cf ' into temp-merge-1518
96a415b1 scalar: Port bitcoin-core/secp256k1#1393 to zkp-specific code
41cead8a sync-upstream: Extend git usage tips
36a7b874 Merge BlockstreamResearch/secp256k1-zkp#310: Upstream PRs 1058
9a57e3c6 Merge commits 'da515074 ' into temp-merge-1058
7e460db4 Merge BlockstreamResearch/secp256k1-zkp#307: Upstream PRs 1484, 1483, 1486, 1496, 1489, 1490, 1507, 1512, 1515
f9cf003d scalar: Port bitcoin-core/secp256k1#1512 to zkp-specific code
8c72644a Merge commits '5ad3aa3 2483627 0653a25 d926510 cdc9a62 427e86b 05bfab6 4b77fec d831168 ' into temp-merge-1515
797e2ed6 Merge BlockstreamResearch/secp256k1-zkp#306: sync-upstream: improve help text
db8750de sync-upstream: improve help text
36e76952 Merge bitcoin-core/secp256k1#1738: check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
4985ac0f Merge bitcoin-core/secp256k1#1737: doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
7ebaa134 check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
806de38b doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
03fb60ad Merge bitcoin-core/secp256k1#1681: doc: Recommend clang-cl when building on Windows
d93380fb Merge bitcoin-core/secp256k1#1731: schnorrsig: Securely clear buf containing k or its negation
8113671f Merge bitcoin-core/secp256k1#1729: hash: Use size_t instead of int for RFC6979 outlen copy
325d65a8 Rename and clear var containing k or -k
960ba5f9 Use size_t instead of int for RFC6979 outlen copy
73791243 ci: Add more tests for clang-cl
7379a5be doc: Recommend clang-cl when building on Windows
f36afb8b Merge bitcoin-core/secp256k1#1725: tests: refactor tagged hash verification
5153cf1c tests: refactor tagged hash tests
d2dcf520 Merge bitcoin-core/secp256k1#1726: docs: fix broken link to Tromer's cache.pdf paper
489a43d1 docs: fix broken link to eprint cache.pdf paper
d5997141 Merge bitcoin-core/secp256k1#1722: docs: Exclude modules' `bench_impl.h` headers from coverage report
0458def5 doc: Add `--gcov-ignore-parse-errors=all` option to `gcovr` invocations
1aecce59 doc: Add `--merge-mode-functions=separate` option to `gcovr` invocations
106a7cbf doc: Exclude modules' `bench_impl.h` headers from coverage report
a9e955d3 autotools, docs: Adjust help string for `--enable-coverage` option
e523e4f9 Merge bitcoin-core/secp256k1#1720: chore(ci): Fix typo in Dockerfile comment
24ba8ff1 chore(ci): Fix typo in Dockerfile comment
74b8068c Merge bitcoin-core/secp256k1#1717: test: update wycheproof test vectors
c25c3c8a test: update wycheproof test vectors
20e3b447 Merge bitcoin-core/secp256k1#1688: cmake: Avoid contaminating parent project's cache with `BUILD_SHARED_LIBS`
2c076d90 Merge bitcoin-core/secp256k1#1711: tests: update Wycheproof
7b07b229 cmake: Avoid contaminating parent project's cache with BUILD_SHARED_LIBS
5433648c Fix typos and spellings
9ea54c69 tests: update Wycheproof files
b9313c6e Merge bitcoin-core/secp256k1#1708: release cleanup: bump version after 0.7.0
a660a497 Merge bitcoin-core/secp256k1#1707: release: Prepare for 0.7.0
7ab8b0cc release cleanup: bump version after 0.7.0
a3e742d9 release: Prepare for 0.7.0
f67b0ac1 ci: Don't hardcode ABI version
020ee604 Merge bitcoin-core/secp256k1#1706: musig/tests: initialize keypair
cde41308 musig/tests: initialize keypair
6037833c Merge bitcoin-core/secp256k1#1702: changelog: update
40b4a065 changelog: update
5e74086d Merge bitcoin-core/secp256k1#1705: musig/test: Remove dead code
7c338042 Merge bitcoin-core/secp256k1#1696: build: Refactor visibility logic and add override
8d967a60 musig/test: Remove dead code
983711cd musig/tests: Refactor vectors_signverify
73a69595 Merge bitcoin-core/secp256k1#1704: cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
bf082221 cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
c82d84bb build: add CMake option for disabling symbol visibility attributes
ce792387 build: Add SECP256K1_NO_API_VISIBILITY_ATTRIBUTES
e5297f6d build: Refactor visibility logic
cbbbf3bd Merge bitcoin-core/secp256k1#1699: ci: enable musig module for native macOS arm64 job
943479a7 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
3352f9d6 ci: enable musig module for native macOS arm64 job
ad60ef7e Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c4987790 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
44b205e9 Revert "cmake: configure libsecp256k1.pc during install"
0dfe387d cmake: support the use of launchers in ctest -S scripts
89096c23 Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6 cmake: configure libsecp256k1.pc during install
29e73f4b Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b1 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d3747 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e1 ci: Bump GCC snapshot major version to 16
004f57fc ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc3 ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346 ci: Add `arm64` architecture to `docker_cache` job
b77aae92 ci: Rename Docker image tag to reflect architecture
145ae3e2 cmake: add a helper for linking into static libs
81921097 README: add link to musig example, generalize module enabling hint
95db29b1 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b cmake: Emulate Libtool's behavior on FreeBSD
f24b838b Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43 doc: Promote "Building with CMake" to standard procedure
6f67151e cmake: Use `PUBLIC_HEADER` target property
c32715b2 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987 cmake: Bump minimum required CMake version to 3.22
92394476 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448c Assert field magnitude at control-flow join
9fab4252 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed994 tests: update wycheproof files
4187a466 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11 tests: Add Wycheproof ECDH vectors
13906b71 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb032 gitignore: Add Python cache files
70f149b9 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51f bench: add ellswift to bench help output
d84bb83e Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d configure: Show exhaustive tests in summary
e56716a3 Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc5 ci: Fix exiting from ci.sh on error
1b6e0815 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b0 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa9 tests: remove unused uncounting_illegal_callback_fn
a7a51171 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65 Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d ci: Run `tools/symbol-check.py`
41d32ab2 test: Add `tools/symbol-check.py`
88548058 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c6 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc gha: Print all *.log files, in a separate action
4ba1ba2a Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a musig: Fix clearing of pubnonces
31860823 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39da Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60b Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac577 Make static context const
1b1fc093 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480f Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d38962 CONTRIBUTING: mention that `EXIT_` codes should be used
c8555817 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fc examples: use `EXIT_...` constants for `main` return values
2e3bf136 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf README: add instructions for verifying GPG signatures
00774d07 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73d ci: Add new "Windows (clang-cl)" job
84c0bd1f cmake: Adjust diagnostic flags for clang-cl
f79f46c7 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558 doc: Improve cmake instructions in README
18235947 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450 Fix some misspellings
ec329c25 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f5 release cleanup: bump version after 0.6.0
0cdc758a Merge bitcoin-core/secp256k1#1631: release: prepare for 0.6.0
39d5dfd5 release: prepare for 0.6.0
df2eceb2 build: add ellswift.md and musig.md to release tarball
a306bb7e tools: fix check-abi.sh after cmake out locations were changed
145868a8 Do not export `secp256k1_musig_nonce_gen_internal`
b161bffb Merge bitcoin-core/secp256k1#1579: Clear sensitive memory without getting optimized out (revival of #636)
64228a64 musig: Use _ge_set_all_gej for own public nonces
300aab1c tests: Improve _ge_set_all_gej(_var) tests
365f274c group: Simplify secp256k1_ge_set_all_gej
d3082dde group: Add constant-time secp256k1_ge_set_all_gej
a38d879a Merge bitcoin-core/secp256k1#1628: Name public API structs
7d48f5ed Merge bitcoin-core/secp256k1#1581: test, ci: Lower default iteration count to 16
694342fd Name public API structs
0f73caf7 test, ci: Lower default iteration count to 16
9a8db52f Merge bitcoin-core/secp256k1#1582: cmake, test: Add `secp256k1_` prefix to test names
765ef533 Clear _gej instances after point multiplication to avoid potential leaks
349e6ab9 Introduce separate _clear functions for hash module
99cc9fd6 Don't rely on memset to set signed integers to 0
97c57f42 Implement various _clear() functions with secp256k1_memclear()
9bb368d1 Use secp256k1_memclear() to clear stack memory instead of memset()
e3497bbf Separate between clearing memory and setting to zero in tests
d79a6ccd Separate secp256k1_fe_set_int( . , 0 ) from secp256k1_fe_clear()
1c081262 Add secp256k1_memclear() for clearing secret data
1464f15c Merge bitcoin-core/secp256k1#1625: util: Remove unused (u)int64_t formatting macros
980c08df util: Remove unused (u)int64_t formatting macros
9b7c59cb Merge bitcoin-core/secp256k1#1624: ci: Update macOS image
096e3e23 ci: Update macOS image
e7d38448 Don't clear secrets in pippenger implementation
68b55209 Merge bitcoin-core/secp256k1#1619: musig: ctimetests: fix _declassify range for generated nonce points
f0868a9b Merge bitcoin-core/secp256k1#1595: build: 45839th attempt to fix symbol visibility on Windows
1fae76f5 Merge bitcoin-core/secp256k1#1620: Remove unused scratch space from API
8be3839f Remove unused scratch space from API
57eda3ba musig: ctimetests: fix _declassify range for generated nonce points
87384f5c cmake, test: Add `secp256k1_` prefix to test names
e59158b6 Merge bitcoin-core/secp256k1#1553: cmake: Set top-level target output locations
18f9b967 Merge bitcoin-core/secp256k1#1616: examples: do not retry generating seckey randomness in musig
5bab8f6d examples: make key generation doc consistent
e8908221 examples: do not retry generating seckey randomness in musig
70b6be18 extrakeys: improve doc of keypair_create (don't suggest retry)
01b58933 Merge bitcoin-core/secp256k1#1599: #1570 improve examples: remove key generation loop
cd4f84f3 Improve examples/documentation: remove key generation loops
a88aa935 Merge bitcoin-core/secp256k1#1603: f can never equal -m
3660fe5e Merge bitcoin-core/secp256k1#1479: Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
168c9201 build: allow enabling the musig module in cmake
f411841a Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
0be79660 util: add constant-time is_zero_array function
c8fbdb1b group: add ge_to_bytes_ext and ge_from_bytes_ext
ef7ff034 f can never equal -m
c232486d Revert "cmake: Set `ENVIRONMENT` property for examples on Windows"
26e4a7c2 cmake: Set top-level target output locations
4c57c7a5 Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
447334cb include: Avoid visibility("default") on Windows
472faaa8 Merge bitcoin-core/secp256k1#1604: doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
292310fb doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
2f2ccc46 Merge bitcoin-core/secp256k1#1600: cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
421ed1b4 cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
85e224dd group: add ge_to_bytes and ge_from_bytes
19888550 Merge bitcoin-core/secp256k1#1586: fix: remove duplicate 'the' from header file comment
b3076144 Merge bitcoin-core/secp256k1#1583: ci: Bump GCC_SNAPSHOT_MAJOR to 15
fa67b675 refactor: Use array initialization for unterminated strings
9b0f37bf fix: remove duplicate 'the' from header file comment
e34b4767 ci: Bump GCC_SNAPSHOT_MAJOR to 15
3fdf146b Merge bitcoin-core/secp256k1#1578: ci: Silent Homebrew's noisy reinstall warnings
f8c1b0e0 Merge bitcoin-core/secp256k1#1577: release cleanup: bump version after 0.5.1
7057d3c9 ci: Silent Homebrew's noisy reinstall warnings
c3e40d75 release cleanup: bump version after 0.5.1
642c885b Merge bitcoin-core/secp256k1#1575: release: prepare for 0.5.1
cdf08c1a Merge bitcoin-core/secp256k1#1576: doc: mention `needs-changelog` github label in release process
40d87b8e release: prepare for 0.5.1
57702261 changelog: clarify CMake option
759bd4bb doc: mention `needs-changelog` github label in release process
fded437c Merge bitcoin-core/secp256k1#1574: Fix compilation when extrakeys module isn't enabled
763d938c ci: only enable extrakeys module when schnorrsig is enabled
af551ab9 tests: do not use functions from extrakeys module
0055b867 Merge bitcoin-core/secp256k1#1551: Add ellswift usage example
ea2d5f0f Merge bitcoin-core/secp256k1#1563: doc: Add convention for defaults
ca06e58b Merge bitcoin-core/secp256k1#1564: build, ci: Adjust the default size of the precomputed table for signing
e2af4912 ci: Switch to the new default value of the precomputed table for signing
d94a9273 build: Adjust the default size of the precomputed table for signing
fcc5d738 Merge bitcoin-core/secp256k1#1565: cmake: Bump CMake minimum required version up to 3.16
9420eece cmake: Bump CMake minimum required version up to 3.16
16685649 doc: Add convention for defaults
a5269373 Merge bitcoin-core/secp256k1#1555: Fixed O3 replacement
b8fe3333 cmake: Fixed O3 replacement
7c987ec8 cmake: Call `enable_testing()` unconditionally
6aa57651 cmake: Delete `CTest` module
31f84595 Add ellswift usage example
fe4fbaa7 examples: fix case typos in secret clearing paragraphs (s/, Or/, or/)
4af241b3 Merge bitcoin-core/secp256k1#1535: build: Replace hardcoded "auto" value with default one
f473c959 Merge bitcoin-core/secp256k1#1543: cmake: Do not modify build types when integrating by downstream project
d403eea4 Merge bitcoin-core/secp256k1#1546: cmake: Rename `SECP256K1_LATE_CFLAGS` and switch to Bitcoin Core's approach
d7ae25ce Merge bitcoin-core/secp256k1#1550: fix: typos in secp256k1.c
0e2fadb2 fix: typos in secp256k1.c
69b2192a Merge bitcoin-core/secp256k1#1545: cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
5dd637f3 Merge bitcoin-core/secp256k1#1548: README: mention ellswift module
7454a537 README: mention ellswift module
4706be2c cmake: Reimplement `SECP256K1_APPEND_CFLAGS` using Bitcoin Core approach
c2764dbb cmake: Rename `SECP256K1_LATE_CFLAGS` to `SECP256K1_APPEND_CFLAGS`
f87a3589 cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
158f9e5e cmake: Do not modify build types when integrating by downstream project
35c0fdc8 Merge bitcoin-core/secp256k1#1529: cmake: Fix cache issue when integrating by downstream project
4392f0f7 Merge bitcoin-core/secp256k1#1533: tests: refactor: tidy up util functions (#1491)
bedffd53 Merge bitcoin-core/secp256k1#1488: ci: Add native macOS arm64 job
4b8d5eea Merge bitcoin-core/secp256k1#1532: cmake: Disable eager MSan in ctime_tests
f55703ba autotools: Delete unneeded compiler test
396e8858 autotools: Align MSan checking code with CMake's implementation
abde59f5 cmake: Report more compiler details in summary
7abf979a cmake: Disable `ctime_tests` if build with `-fsanitize=memory`
4d9645be cmake: Remove "AUTO" value of `SECP256K1_ECMULT_GEN_KB` option
a06805ee cmake: Remove "AUTO" value of `SECP256K1_ECMULT_WINDOW_SIZE` option
1791f6fc Merge bitcoin-core/secp256k1#1517: autotools: Disable eager MSan in ctime_tests
26b94ee9 autotools: Remove "auto" value of `--with-ecmult-gen-kb` option
122dbaeb autotools: Remove "auto" value of `--with-ecmult-window` option
e73f6f8f tests: refactor: drop `secp256k1_` prefix from testrand.h functions
0ee7453a tests: refactor: add `testutil_` prefix to testutil.h functions
0c6bc76d tests: refactor: move `random_` helpers from tests.c to testutil.h
0fef8479 tests: refactor: rename `random_field_element_magnitude` -> `random_fe_magnitude`
59db007f tests: refactor: rename `random_group_element_...` -> `random_ge_...`
ebfb82ee ci: Add job with -fsanitize-memory-param-retval
e1bef096 configure: Move "experimental" warning to bottom
55e5d975 autotools: Disable eager MSan in ctime_tests
06bff6de Merge bitcoin-core/secp256k1#1528: tests: call `secp256k1_ecmult_multi_var` with a non-`NULL` error callback
ec4c002f cmake: Simplify `PROJECT_IS_TOP_LEVEL` emulation
cae9a7ad cmake: Do not set emulated PROJECT_IS_TOP_LEVEL as cache variable
4155e62f Merge bitcoin-core/secp256k1#1526: cmake: Fix `check_arm32_assembly` when using as subproject
9554362b tests: call secp256k1_ecmult_multi_var with a non-NULL error callback
9f4c8cd7 cmake: Fix `check_arm32_assembly` when using as subproject
7712a530 Merge bitcoin-core/secp256k1#1524: check-abi: explicitly provide public headers
7d0bc087 Merge bitcoin-core/secp256k1#1525: changelog: Correct 0.5.0 release date
d45d9b74 changelog: Correct 0.5.0 release date
d7f6613d Merge bitcoin-core/secp256k1#1523: release cleanup: bump version after 0.5.0
2f05e2da release cleanup: bump version after 0.5.0
e3a885d4 Merge bitcoin-core/secp256k1#1522: release: prepare for 0.5.0
dd695563 check-abi: explicitly provide public headers
c0e4ec3f release: prepare for 0.5.0
bb528cfb Merge bitcoin-core/secp256k1#1518: Add secp256k1_pubkey_sort
7d2591ce Add secp256k1_pubkey_sort
da515074 Merge bitcoin-core/secp256k1#1058: Signed-digit multi-comb ecmult_gen algorithm
4c341f89 Add changelog entry for SDMC
a0439402 Permit COMB_BITS < 256 for exhaustive tests
39b2f2a3 Add test case for ecmult_gen recoded = {-1,0,1}
644e86de Reintroduce projective blinding
07810d9a Reduce side channels from single-bit reads
a0d32b59 Optimization: use Nx32 representation for recoded bits
e03dcc44 Make secp256k1_scalar_get_bits support 32-bit reads
5005abee Rename scalar_get_bits -> scalar_get_bits_limb32; return uint32_t
6247f485 Optimization: avoid unnecessary doublings in precomputation
15d0cca2 Optimization: first table lookup needs no point addition
7a33db35 Optimization: move (2^COMB_BITS-1)/2 term into ctx->scalar_offset
ed2a056f Provide 3 configurations accessible through ./configure
5f7be9f6 Always generate tables for current (blocks,teeth) config
fde1dfcd Signed-digit multi-comb ecmult_gen algorithm
486518b3 Make exhaustive tests's scalar_inverse(&x,&x) work
ab45c3e0 Initial gej blinding -> final ge blinding
aa00a6b8 Introduce CEIL_DIV macro and use it
d8311688 Merge bitcoin-core/secp256k1#1515: ci: Note affected clangs in comment on ASLR quirk
a85e2233 ci: Note affected clangs in comment on ASLR quirk
4b77fec6 Merge bitcoin-core/secp256k1#1512: msan: notate more variable assignments from assembly code
f7f0184b msan: notate more variable assignments from assembly code
a6133914 change inconsistent array param to pointer
05bfab69 Merge bitcoin-core/secp256k1#1507: ci: Add workaround for ASLR bug in sanitizers
a5e8ab24 ci: Add sanitizer env variables to debug output
84a93de4 ci: Add workaround for ASLR bug in sanitizers
427e86b9 Merge bitcoin-core/secp256k1#1490: tests: improve fe_sqr test (issue #1472)
2028069d doc: clarify input requirements for secp256k1_fe_mul
11420a7a tests: improve fe_sqr test
cdc9a625 Merge bitcoin-core/secp256k1#1489: tests: add missing fe comparison checks for inverse field test cases
d926510c Merge bitcoin-core/secp256k1#1496: msan: notate variable assignments from assembly code
31ba4049 msan: notate variable assignments from assembly code
e7ea32e3 msan: Add SECP256K1_CHECKMEM_MSAN_DEFINE which applies to memory sanitizer and not valgrind
e7bdddd9 refactor: rename `check_fe_equal` -> `fe_equal`
00111c9c tests: add missing fe comparison checks for inverse field test cases
218f0cc9 ci: Add native macOS arm64 job
0653a25d Merge bitcoin-core/secp256k1#1486: ci: Update cache action
94a14d52 ci: Update cache action
24836272 Merge bitcoin-core/secp256k1#1483: cmake: Recommend native CMake commands in README
5ad3aa3d Merge bitcoin-core/secp256k1#1484: tests: Drop redundant _scalar_check_overflow calls
51df2d9a tests: Drop redundant _scalar_check_overflow calls
3777e3f3 cmake: Recommend native CMake commands in README

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42ae776d3b49f27f2a1edd5ec62c023e05b93607
github-actions bot pushed a commit to 21-DOT-DEV/swift-secp256k1 that referenced this pull request Mar 1, 2026
42ae776d Merge BlockstreamResearch/secp256k1-zkp#327: Upstream PRs 1711, 1688, 1717, 1720, 1722, 1726, 1725, 1729, 1731, 1681, 1737, 1738
01b1b916 modules: Port bitcoin-core/secp256k1#1725 to zkp-specific code
38284aa0 Merge commits '2c076d90 20e3b447 74b8068c e523e4f9 d5997141 d2dcf520 f36afb8b 8113671f d93380fb 03fb60ad 4985ac0f 36e76952 ' into temp-merge-1738
a3733f33 Merge BlockstreamResearch/secp256k1-zkp#325: Upstream PRs 1685, 1692, 1687, 1689, 1694, 1699, 1704, 1696, 1705, 1702, 1706, 1707, 1708
9dcd857d Merge commits '29e73f4b 89096c23 c4987790 ad60ef7e 943479a7 cbbbf3bd 73a69595 7c338042 5e74086d 6037833c 020ee604 a660a497 b9313c6e ' into temp-merge-1708
64316eac Merge BlockstreamResearch/secp256k1-zkp#324: Upstream PRs 1662, 1669, 1492, 1670, 1668, 1673, 1675, 1680, 1679, 1690, 1683, 1678
cc4a92b5 Merge commits '70f149b9 13906b71 4187a466 bb597b3d 9fab4252 92394476 201b2b8f f24b838b 95db29b1 2a9d3747 a28c2ffa 746e36b1 ' into temp-merge-1678
6e071d18 Merge BlockstreamResearch/secp256k1-zkp#323: Upstream PRs 1642, 1639, 1614, 1656, 1647, 1655, 1593, 1359, 1657, 1660, 1659, 1661
4dda3122 ci: Use Python virtual environment in x86_64-macos-native job
795f19af ci: Switch to macOS 15 Sequoia Intel-based image
2f057a14 ci: Don't hardcode ABI version
17ad1960 schnorrsig_halfagg: Fix symbol visibility for internal function
ec343f0b Port bitcoin-core/secp256k1#1642 to zkp-specific code
79953d07 Merge commits '1b1fc093 6c2a39da 31860823 abd25054 4ba1ba2a 03bbe8c6 13ed6f65 a7a51171 2abb35b0 e56716a3 3f54ed8c d84bb83e ' into temp-merge-1661
2d30d398 Merge BlockstreamResearch/secp256k1-zkp#322: Upstream PRs 1579, 1631, 1633, 1634, 1641, 1650, 1646, 1654
e3bddfa7 modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
913be29e Merge commits 'b161bffb 0cdc758a ec329c25 8deef00b f79f46c7 00774d07 2e3bf136 c0d9480f ' into temp-merge-1654
8aa05cb3 Merge BlockstreamResearch/secp256k1-zkp#320: Upstream PRs 1603, 1599, 1616, 1553, 1620, 1595, 1619, 1624, 1625, 1582, 1581, 1628
a8e6a3cc Port bitcoin-core/secp256k1#1628 to zkp public API
347d6adf Merge commits 'a88aa935 01b58933 18f9b967 e59158b6 1fae76f5 f0868a9b 68b55209 9b7c59cb 1464f15c 9a8db52f 7d48f5ed a38d879a ' into temp-merge-1628
7acd4a1f Merge BlockstreamResearch/secp256k1-zkp#319: Upstream PR 1479
8c7c24eb docs: simplify README description, fix musig docs
8d443b80 musig: Re-add adaptor signatures support
248358f2 Merge commit '3660fe5e' into temp-merge-1479
21c24fdc musig: Remove module in preparation for upstream merge
211323d6 Merge BlockstreamResearch/secp256k1-zkp#318: Upstream PRs 1574, 1576, 1575, 1577, 1578, 1583, 1586, 1600, 1604, 1554
551b5dd4 Merge commits 'fded437c cdf08c1a 642c885b f8c1b0e0 3fdf146b b3076144 19888550 2f2ccc46 472faaa8 4c57c7a5 ' into temp-merge-1554
4ae7cb4f Merge BlockstreamResearch/secp256k1-zkp#317: Upstream PRs 1529, 1548, 1545, 1550, 1546, 1543, 1535, 1555, 1565, 1564, 1563, 1551
d0dde4aa Merge commits '35c0fdc 5dd637f 69b2192 d7ae25c d403eea f473c95 4af241b a526937 fcc5d73 ca06e58 ea2d5f0 0055b86 ' into temp-merge-1551
84ca3b33 Merge BlockstreamResearch/secp256k1-zkp#316: Upstream PRs 1533
513e550e Merge commits '4392f0f7 ' into temp-merge-1533
0fb0eac9 Merge BlockstreamResearch/secp256k1-zkp#314: Upstream PRs 1522, 1523, 1525, 1524, 1526, 1528, 1517, 1532, 1488
91b2deab ci: Add zkp modules to arm64-macos-native job
f5e9804e Merge remote-tracking branch 'zkp/master' into temp-merge-1488
e34dc812 Merge BlockstreamResearch/secp256k1-zkp#315: ci: Backport LLVM apt signature fix
040673bd ci, docker: Fix LLVM repository signature failure
c946b097 Merge commits 'e3a885d4 d7f6613d 7d0bc087 7712a530 4155e62f 06bff6de 1791f6fc 4b8d5eea bedffd53 ' into temp-merge-1488
1cdc3e0f Merge BlockstreamResearch/secp256k1-zkp#311: sync-upstream: Extend git usage tips
d176205d Merge BlockstreamResearch/secp256k1-zkp#313: Upstream PR 1518
ca68d088 Merge BlockstreamResearch/secp256k1-zkp#312: scalar: Add SECP256K1_SCALAR_VERIFY to zkp-specific function
2cb2e312 extrakeys: Migrate to bitcoin-core/secp256k1#1518 secp256k1_ec_pubkey_sort
3291b021 Merge commits 'bb528cf ' into temp-merge-1518
96a415b1 scalar: Port bitcoin-core/secp256k1#1393 to zkp-specific code
41cead8a sync-upstream: Extend git usage tips
36a7b874 Merge BlockstreamResearch/secp256k1-zkp#310: Upstream PRs 1058
9a57e3c6 Merge commits 'da515074 ' into temp-merge-1058
7e460db4 Merge BlockstreamResearch/secp256k1-zkp#307: Upstream PRs 1484, 1483, 1486, 1496, 1489, 1490, 1507, 1512, 1515
f9cf003d scalar: Port bitcoin-core/secp256k1#1512 to zkp-specific code
8c72644a Merge commits '5ad3aa3 2483627 0653a25 d926510 cdc9a62 427e86b 05bfab6 4b77fec d831168 ' into temp-merge-1515
797e2ed6 Merge BlockstreamResearch/secp256k1-zkp#306: sync-upstream: improve help text
db8750de sync-upstream: improve help text
36e76952 Merge bitcoin-core/secp256k1#1738: check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
4985ac0f Merge bitcoin-core/secp256k1#1737: doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
7ebaa134 check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
806de38b doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
03fb60ad Merge bitcoin-core/secp256k1#1681: doc: Recommend clang-cl when building on Windows
d93380fb Merge bitcoin-core/secp256k1#1731: schnorrsig: Securely clear buf containing k or its negation
8113671f Merge bitcoin-core/secp256k1#1729: hash: Use size_t instead of int for RFC6979 outlen copy
325d65a8 Rename and clear var containing k or -k
960ba5f9 Use size_t instead of int for RFC6979 outlen copy
73791243 ci: Add more tests for clang-cl
7379a5be doc: Recommend clang-cl when building on Windows
f36afb8b Merge bitcoin-core/secp256k1#1725: tests: refactor tagged hash verification
5153cf1c tests: refactor tagged hash tests
d2dcf520 Merge bitcoin-core/secp256k1#1726: docs: fix broken link to Tromer's cache.pdf paper
489a43d1 docs: fix broken link to eprint cache.pdf paper
d5997141 Merge bitcoin-core/secp256k1#1722: docs: Exclude modules' `bench_impl.h` headers from coverage report
0458def5 doc: Add `--gcov-ignore-parse-errors=all` option to `gcovr` invocations
1aecce59 doc: Add `--merge-mode-functions=separate` option to `gcovr` invocations
106a7cbf doc: Exclude modules' `bench_impl.h` headers from coverage report
a9e955d3 autotools, docs: Adjust help string for `--enable-coverage` option
e523e4f9 Merge bitcoin-core/secp256k1#1720: chore(ci): Fix typo in Dockerfile comment
24ba8ff1 chore(ci): Fix typo in Dockerfile comment
74b8068c Merge bitcoin-core/secp256k1#1717: test: update wycheproof test vectors
c25c3c8a test: update wycheproof test vectors
20e3b447 Merge bitcoin-core/secp256k1#1688: cmake: Avoid contaminating parent project's cache with `BUILD_SHARED_LIBS`
2c076d90 Merge bitcoin-core/secp256k1#1711: tests: update Wycheproof
7b07b229 cmake: Avoid contaminating parent project's cache with BUILD_SHARED_LIBS
5433648c Fix typos and spellings
9ea54c69 tests: update Wycheproof files
b9313c6e Merge bitcoin-core/secp256k1#1708: release cleanup: bump version after 0.7.0
a660a497 Merge bitcoin-core/secp256k1#1707: release: Prepare for 0.7.0
7ab8b0cc release cleanup: bump version after 0.7.0
a3e742d9 release: Prepare for 0.7.0
f67b0ac1 ci: Don't hardcode ABI version
020ee604 Merge bitcoin-core/secp256k1#1706: musig/tests: initialize keypair
cde41308 musig/tests: initialize keypair
6037833c Merge bitcoin-core/secp256k1#1702: changelog: update
40b4a065 changelog: update
5e74086d Merge bitcoin-core/secp256k1#1705: musig/test: Remove dead code
7c338042 Merge bitcoin-core/secp256k1#1696: build: Refactor visibility logic and add override
8d967a60 musig/test: Remove dead code
983711cd musig/tests: Refactor vectors_signverify
73a69595 Merge bitcoin-core/secp256k1#1704: cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
bf082221 cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
c82d84bb build: add CMake option for disabling symbol visibility attributes
ce792387 build: Add SECP256K1_NO_API_VISIBILITY_ATTRIBUTES
e5297f6d build: Refactor visibility logic
cbbbf3bd Merge bitcoin-core/secp256k1#1699: ci: enable musig module for native macOS arm64 job
943479a7 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
3352f9d6 ci: enable musig module for native macOS arm64 job
ad60ef7e Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c4987790 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
44b205e9 Revert "cmake: configure libsecp256k1.pc during install"
0dfe387d cmake: support the use of launchers in ctest -S scripts
89096c23 Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6 cmake: configure libsecp256k1.pc during install
29e73f4b Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b1 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d3747 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e1 ci: Bump GCC snapshot major version to 16
004f57fc ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc3 ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346 ci: Add `arm64` architecture to `docker_cache` job
b77aae92 ci: Rename Docker image tag to reflect architecture
145ae3e2 cmake: add a helper for linking into static libs
81921097 README: add link to musig example, generalize module enabling hint
95db29b1 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b cmake: Emulate Libtool's behavior on FreeBSD
f24b838b Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43 doc: Promote "Building with CMake" to standard procedure
6f67151e cmake: Use `PUBLIC_HEADER` target property
c32715b2 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987 cmake: Bump minimum required CMake version to 3.22
92394476 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448c Assert field magnitude at control-flow join
9fab4252 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed994 tests: update wycheproof files
4187a466 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11 tests: Add Wycheproof ECDH vectors
13906b71 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb032 gitignore: Add Python cache files
70f149b9 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51f bench: add ellswift to bench help output
d84bb83e Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d configure: Show exhaustive tests in summary
e56716a3 Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc5 ci: Fix exiting from ci.sh on error
1b6e0815 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b0 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa9 tests: remove unused uncounting_illegal_callback_fn
a7a51171 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65 Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d ci: Run `tools/symbol-check.py`
41d32ab2 test: Add `tools/symbol-check.py`
88548058 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c6 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc gha: Print all *.log files, in a separate action
4ba1ba2a Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a musig: Fix clearing of pubnonces
31860823 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39da Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60b Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac577 Make static context const
1b1fc093 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480f Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d38962 CONTRIBUTING: mention that `EXIT_` codes should be used
c8555817 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fc examples: use `EXIT_...` constants for `main` return values
2e3bf136 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf README: add instructions for verifying GPG signatures
00774d07 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73d ci: Add new "Windows (clang-cl)" job
84c0bd1f cmake: Adjust diagnostic flags for clang-cl
f79f46c7 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558 doc: Improve cmake instructions in README
18235947 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450 Fix some misspellings
ec329c25 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f5 release cleanup: bump version after 0.6.0
0cdc758a Merge bitcoin-core/secp256k1#1631: release: prepare for 0.6.0
39d5dfd5 release: prepare for 0.6.0
df2eceb2 build: add ellswift.md and musig.md to release tarball
a306bb7e tools: fix check-abi.sh after cmake out locations were changed
145868a8 Do not export `secp256k1_musig_nonce_gen_internal`
b161bffb Merge bitcoin-core/secp256k1#1579: Clear sensitive memory without getting optimized out (revival of #636)
64228a64 musig: Use _ge_set_all_gej for own public nonces
300aab1c tests: Improve _ge_set_all_gej(_var) tests
365f274c group: Simplify secp256k1_ge_set_all_gej
d3082dde group: Add constant-time secp256k1_ge_set_all_gej
a38d879a Merge bitcoin-core/secp256k1#1628: Name public API structs
7d48f5ed Merge bitcoin-core/secp256k1#1581: test, ci: Lower default iteration count to 16
694342fd Name public API structs
0f73caf7 test, ci: Lower default iteration count to 16
9a8db52f Merge bitcoin-core/secp256k1#1582: cmake, test: Add `secp256k1_` prefix to test names
765ef533 Clear _gej instances after point multiplication to avoid potential leaks
349e6ab9 Introduce separate _clear functions for hash module
99cc9fd6 Don't rely on memset to set signed integers to 0
97c57f42 Implement various _clear() functions with secp256k1_memclear()
9bb368d1 Use secp256k1_memclear() to clear stack memory instead of memset()
e3497bbf Separate between clearing memory and setting to zero in tests
d79a6ccd Separate secp256k1_fe_set_int( . , 0 ) from secp256k1_fe_clear()
1c081262 Add secp256k1_memclear() for clearing secret data
1464f15c Merge bitcoin-core/secp256k1#1625: util: Remove unused (u)int64_t formatting macros
980c08df util: Remove unused (u)int64_t formatting macros
9b7c59cb Merge bitcoin-core/secp256k1#1624: ci: Update macOS image
096e3e23 ci: Update macOS image
e7d38448 Don't clear secrets in pippenger implementation
68b55209 Merge bitcoin-core/secp256k1#1619: musig: ctimetests: fix _declassify range for generated nonce points
f0868a9b Merge bitcoin-core/secp256k1#1595: build: 45839th attempt to fix symbol visibility on Windows
1fae76f5 Merge bitcoin-core/secp256k1#1620: Remove unused scratch space from API
8be3839f Remove unused scratch space from API
57eda3ba musig: ctimetests: fix _declassify range for generated nonce points
87384f5c cmake, test: Add `secp256k1_` prefix to test names
e59158b6 Merge bitcoin-core/secp256k1#1553: cmake: Set top-level target output locations
18f9b967 Merge bitcoin-core/secp256k1#1616: examples: do not retry generating seckey randomness in musig
5bab8f6d examples: make key generation doc consistent
e8908221 examples: do not retry generating seckey randomness in musig
70b6be18 extrakeys: improve doc of keypair_create (don't suggest retry)
01b58933 Merge bitcoin-core/secp256k1#1599: #1570 improve examples: remove key generation loop
cd4f84f3 Improve examples/documentation: remove key generation loops
a88aa935 Merge bitcoin-core/secp256k1#1603: f can never equal -m
3660fe5e Merge bitcoin-core/secp256k1#1479: Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
168c9201 build: allow enabling the musig module in cmake
f411841a Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
0be79660 util: add constant-time is_zero_array function
c8fbdb1b group: add ge_to_bytes_ext and ge_from_bytes_ext
ef7ff034 f can never equal -m
c232486d Revert "cmake: Set `ENVIRONMENT` property for examples on Windows"
26e4a7c2 cmake: Set top-level target output locations
4c57c7a5 Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
447334cb include: Avoid visibility("default") on Windows
472faaa8 Merge bitcoin-core/secp256k1#1604: doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
292310fb doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
2f2ccc46 Merge bitcoin-core/secp256k1#1600: cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
421ed1b4 cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
85e224dd group: add ge_to_bytes and ge_from_bytes
19888550 Merge bitcoin-core/secp256k1#1586: fix: remove duplicate 'the' from header file comment
b3076144 Merge bitcoin-core/secp256k1#1583: ci: Bump GCC_SNAPSHOT_MAJOR to 15
fa67b675 refactor: Use array initialization for unterminated strings
9b0f37bf fix: remove duplicate 'the' from header file comment
e34b4767 ci: Bump GCC_SNAPSHOT_MAJOR to 15
3fdf146b Merge bitcoin-core/secp256k1#1578: ci: Silent Homebrew's noisy reinstall warnings
f8c1b0e0 Merge bitcoin-core/secp256k1#1577: release cleanup: bump version after 0.5.1
7057d3c9 ci: Silent Homebrew's noisy reinstall warnings
c3e40d75 release cleanup: bump version after 0.5.1
642c885b Merge bitcoin-core/secp256k1#1575: release: prepare for 0.5.1
cdf08c1a Merge bitcoin-core/secp256k1#1576: doc: mention `needs-changelog` github label in release process
40d87b8e release: prepare for 0.5.1
57702261 changelog: clarify CMake option
759bd4bb doc: mention `needs-changelog` github label in release process
fded437c Merge bitcoin-core/secp256k1#1574: Fix compilation when extrakeys module isn't enabled
763d938c ci: only enable extrakeys module when schnorrsig is enabled
af551ab9 tests: do not use functions from extrakeys module
0055b867 Merge bitcoin-core/secp256k1#1551: Add ellswift usage example
ea2d5f0f Merge bitcoin-core/secp256k1#1563: doc: Add convention for defaults
ca06e58b Merge bitcoin-core/secp256k1#1564: build, ci: Adjust the default size of the precomputed table for signing
e2af4912 ci: Switch to the new default value of the precomputed table for signing
d94a9273 build: Adjust the default size of the precomputed table for signing
fcc5d738 Merge bitcoin-core/secp256k1#1565: cmake: Bump CMake minimum required version up to 3.16
9420eece cmake: Bump CMake minimum required version up to 3.16
16685649 doc: Add convention for defaults
a5269373 Merge bitcoin-core/secp256k1#1555: Fixed O3 replacement
b8fe3333 cmake: Fixed O3 replacement
7c987ec8 cmake: Call `enable_testing()` unconditionally
6aa57651 cmake: Delete `CTest` module
31f84595 Add ellswift usage example
fe4fbaa7 examples: fix case typos in secret clearing paragraphs (s/, Or/, or/)
4af241b3 Merge bitcoin-core/secp256k1#1535: build: Replace hardcoded "auto" value with default one
f473c959 Merge bitcoin-core/secp256k1#1543: cmake: Do not modify build types when integrating by downstream project
d403eea4 Merge bitcoin-core/secp256k1#1546: cmake: Rename `SECP256K1_LATE_CFLAGS` and switch to Bitcoin Core's approach
d7ae25ce Merge bitcoin-core/secp256k1#1550: fix: typos in secp256k1.c
0e2fadb2 fix: typos in secp256k1.c
69b2192a Merge bitcoin-core/secp256k1#1545: cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
5dd637f3 Merge bitcoin-core/secp256k1#1548: README: mention ellswift module
7454a537 README: mention ellswift module
4706be2c cmake: Reimplement `SECP256K1_APPEND_CFLAGS` using Bitcoin Core approach
c2764dbb cmake: Rename `SECP256K1_LATE_CFLAGS` to `SECP256K1_APPEND_CFLAGS`
f87a3589 cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
158f9e5e cmake: Do not modify build types when integrating by downstream project
35c0fdc8 Merge bitcoin-core/secp256k1#1529: cmake: Fix cache issue when integrating by downstream project
4392f0f7 Merge bitcoin-core/secp256k1#1533: tests: refactor: tidy up util functions (#1491)
bedffd53 Merge bitcoin-core/secp256k1#1488: ci: Add native macOS arm64 job
4b8d5eea Merge bitcoin-core/secp256k1#1532: cmake: Disable eager MSan in ctime_tests
f55703ba autotools: Delete unneeded compiler test
396e8858 autotools: Align MSan checking code with CMake's implementation
abde59f5 cmake: Report more compiler details in summary
7abf979a cmake: Disable `ctime_tests` if build with `-fsanitize=memory`
4d9645be cmake: Remove "AUTO" value of `SECP256K1_ECMULT_GEN_KB` option
a06805ee cmake: Remove "AUTO" value of `SECP256K1_ECMULT_WINDOW_SIZE` option
1791f6fc Merge bitcoin-core/secp256k1#1517: autotools: Disable eager MSan in ctime_tests
26b94ee9 autotools: Remove "auto" value of `--with-ecmult-gen-kb` option
122dbaeb autotools: Remove "auto" value of `--with-ecmult-window` option
e73f6f8f tests: refactor: drop `secp256k1_` prefix from testrand.h functions
0ee7453a tests: refactor: add `testutil_` prefix to testutil.h functions
0c6bc76d tests: refactor: move `random_` helpers from tests.c to testutil.h
0fef8479 tests: refactor: rename `random_field_element_magnitude` -> `random_fe_magnitude`
59db007f tests: refactor: rename `random_group_element_...` -> `random_ge_...`
ebfb82ee ci: Add job with -fsanitize-memory-param-retval
e1bef096 configure: Move "experimental" warning to bottom
55e5d975 autotools: Disable eager MSan in ctime_tests
06bff6de Merge bitcoin-core/secp256k1#1528: tests: call `secp256k1_ecmult_multi_var` with a non-`NULL` error callback
ec4c002f cmake: Simplify `PROJECT_IS_TOP_LEVEL` emulation
cae9a7ad cmake: Do not set emulated PROJECT_IS_TOP_LEVEL as cache variable
4155e62f Merge bitcoin-core/secp256k1#1526: cmake: Fix `check_arm32_assembly` when using as subproject
9554362b tests: call secp256k1_ecmult_multi_var with a non-NULL error callback
9f4c8cd7 cmake: Fix `check_arm32_assembly` when using as subproject
7712a530 Merge bitcoin-core/secp256k1#1524: check-abi: explicitly provide public headers
7d0bc087 Merge bitcoin-core/secp256k1#1525: changelog: Correct 0.5.0 release date
d45d9b74 changelog: Correct 0.5.0 release date
d7f6613d Merge bitcoin-core/secp256k1#1523: release cleanup: bump version after 0.5.0
2f05e2da release cleanup: bump version after 0.5.0
e3a885d4 Merge bitcoin-core/secp256k1#1522: release: prepare for 0.5.0
dd695563 check-abi: explicitly provide public headers
c0e4ec3f release: prepare for 0.5.0
bb528cfb Merge bitcoin-core/secp256k1#1518: Add secp256k1_pubkey_sort
7d2591ce Add secp256k1_pubkey_sort
da515074 Merge bitcoin-core/secp256k1#1058: Signed-digit multi-comb ecmult_gen algorithm
4c341f89 Add changelog entry for SDMC
a0439402 Permit COMB_BITS < 256 for exhaustive tests
39b2f2a3 Add test case for ecmult_gen recoded = {-1,0,1}
644e86de Reintroduce projective blinding
07810d9a Reduce side channels from single-bit reads
a0d32b59 Optimization: use Nx32 representation for recoded bits
e03dcc44 Make secp256k1_scalar_get_bits support 32-bit reads
5005abee Rename scalar_get_bits -> scalar_get_bits_limb32; return uint32_t
6247f485 Optimization: avoid unnecessary doublings in precomputation
15d0cca2 Optimization: first table lookup needs no point addition
7a33db35 Optimization: move (2^COMB_BITS-1)/2 term into ctx->scalar_offset
ed2a056f Provide 3 configurations accessible through ./configure
5f7be9f6 Always generate tables for current (blocks,teeth) config
fde1dfcd Signed-digit multi-comb ecmult_gen algorithm
486518b3 Make exhaustive tests's scalar_inverse(&x,&x) work
ab45c3e0 Initial gej blinding -> final ge blinding
aa00a6b8 Introduce CEIL_DIV macro and use it
d8311688 Merge bitcoin-core/secp256k1#1515: ci: Note affected clangs in comment on ASLR quirk
a85e2233 ci: Note affected clangs in comment on ASLR quirk
4b77fec6 Merge bitcoin-core/secp256k1#1512: msan: notate more variable assignments from assembly code
f7f0184b msan: notate more variable assignments from assembly code
a6133914 change inconsistent array param to pointer
05bfab69 Merge bitcoin-core/secp256k1#1507: ci: Add workaround for ASLR bug in sanitizers
a5e8ab24 ci: Add sanitizer env variables to debug output
84a93de4 ci: Add workaround for ASLR bug in sanitizers
427e86b9 Merge bitcoin-core/secp256k1#1490: tests: improve fe_sqr test (issue #1472)
2028069d doc: clarify input requirements for secp256k1_fe_mul
11420a7a tests: improve fe_sqr test
cdc9a625 Merge bitcoin-core/secp256k1#1489: tests: add missing fe comparison checks for inverse field test cases
d926510c Merge bitcoin-core/secp256k1#1496: msan: notate variable assignments from assembly code
31ba4049 msan: notate variable assignments from assembly code
e7ea32e3 msan: Add SECP256K1_CHECKMEM_MSAN_DEFINE which applies to memory sanitizer and not valgrind
e7bdddd9 refactor: rename `check_fe_equal` -> `fe_equal`
00111c9c tests: add missing fe comparison checks for inverse field test cases
218f0cc9 ci: Add native macOS arm64 job
0653a25d Merge bitcoin-core/secp256k1#1486: ci: Update cache action
94a14d52 ci: Update cache action
24836272 Merge bitcoin-core/secp256k1#1483: cmake: Recommend native CMake commands in README
5ad3aa3d Merge bitcoin-core/secp256k1#1484: tests: Drop redundant _scalar_check_overflow calls
51df2d9a tests: Drop redundant _scalar_check_overflow calls
3777e3f3 cmake: Recommend native CMake commands in README

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42ae776d3b49f27f2a1edd5ec62c023e05b93607
github-actions bot pushed a commit to 21-DOT-DEV/swift-secp256k1 that referenced this pull request Mar 1, 2026
42ae776d Merge BlockstreamResearch/secp256k1-zkp#327: Upstream PRs 1711, 1688, 1717, 1720, 1722, 1726, 1725, 1729, 1731, 1681, 1737, 1738
01b1b916 modules: Port bitcoin-core/secp256k1#1725 to zkp-specific code
38284aa0 Merge commits '2c076d90 20e3b447 74b8068c e523e4f9 d5997141 d2dcf520 f36afb8b 8113671f d93380fb 03fb60ad 4985ac0f 36e76952 ' into temp-merge-1738
a3733f33 Merge BlockstreamResearch/secp256k1-zkp#325: Upstream PRs 1685, 1692, 1687, 1689, 1694, 1699, 1704, 1696, 1705, 1702, 1706, 1707, 1708
9dcd857d Merge commits '29e73f4b 89096c23 c4987790 ad60ef7e 943479a7 cbbbf3bd 73a69595 7c338042 5e74086d 6037833c 020ee604 a660a497 b9313c6e ' into temp-merge-1708
64316eac Merge BlockstreamResearch/secp256k1-zkp#324: Upstream PRs 1662, 1669, 1492, 1670, 1668, 1673, 1675, 1680, 1679, 1690, 1683, 1678
cc4a92b5 Merge commits '70f149b9 13906b71 4187a466 bb597b3d 9fab4252 92394476 201b2b8f f24b838b 95db29b1 2a9d3747 a28c2ffa 746e36b1 ' into temp-merge-1678
6e071d18 Merge BlockstreamResearch/secp256k1-zkp#323: Upstream PRs 1642, 1639, 1614, 1656, 1647, 1655, 1593, 1359, 1657, 1660, 1659, 1661
4dda3122 ci: Use Python virtual environment in x86_64-macos-native job
795f19af ci: Switch to macOS 15 Sequoia Intel-based image
2f057a14 ci: Don't hardcode ABI version
17ad1960 schnorrsig_halfagg: Fix symbol visibility for internal function
ec343f0b Port bitcoin-core/secp256k1#1642 to zkp-specific code
79953d07 Merge commits '1b1fc093 6c2a39da 31860823 abd25054 4ba1ba2a 03bbe8c6 13ed6f65 a7a51171 2abb35b0 e56716a3 3f54ed8c d84bb83e ' into temp-merge-1661
2d30d398 Merge BlockstreamResearch/secp256k1-zkp#322: Upstream PRs 1579, 1631, 1633, 1634, 1641, 1650, 1646, 1654
e3bddfa7 modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
913be29e Merge commits 'b161bffb 0cdc758a ec329c25 8deef00b f79f46c7 00774d07 2e3bf136 c0d9480f ' into temp-merge-1654
8aa05cb3 Merge BlockstreamResearch/secp256k1-zkp#320: Upstream PRs 1603, 1599, 1616, 1553, 1620, 1595, 1619, 1624, 1625, 1582, 1581, 1628
a8e6a3cc Port bitcoin-core/secp256k1#1628 to zkp public API
347d6adf Merge commits 'a88aa935 01b58933 18f9b967 e59158b6 1fae76f5 f0868a9b 68b55209 9b7c59cb 1464f15c 9a8db52f 7d48f5ed a38d879a ' into temp-merge-1628
7acd4a1f Merge BlockstreamResearch/secp256k1-zkp#319: Upstream PR 1479
8c7c24eb docs: simplify README description, fix musig docs
8d443b80 musig: Re-add adaptor signatures support
248358f2 Merge commit '3660fe5e' into temp-merge-1479
21c24fdc musig: Remove module in preparation for upstream merge
211323d6 Merge BlockstreamResearch/secp256k1-zkp#318: Upstream PRs 1574, 1576, 1575, 1577, 1578, 1583, 1586, 1600, 1604, 1554
551b5dd4 Merge commits 'fded437c cdf08c1a 642c885b f8c1b0e0 3fdf146b b3076144 19888550 2f2ccc46 472faaa8 4c57c7a5 ' into temp-merge-1554
4ae7cb4f Merge BlockstreamResearch/secp256k1-zkp#317: Upstream PRs 1529, 1548, 1545, 1550, 1546, 1543, 1535, 1555, 1565, 1564, 1563, 1551
d0dde4aa Merge commits '35c0fdc 5dd637f 69b2192 d7ae25c d403eea f473c95 4af241b a526937 fcc5d73 ca06e58 ea2d5f0 0055b86 ' into temp-merge-1551
84ca3b33 Merge BlockstreamResearch/secp256k1-zkp#316: Upstream PRs 1533
513e550e Merge commits '4392f0f7 ' into temp-merge-1533
0fb0eac9 Merge BlockstreamResearch/secp256k1-zkp#314: Upstream PRs 1522, 1523, 1525, 1524, 1526, 1528, 1517, 1532, 1488
91b2deab ci: Add zkp modules to arm64-macos-native job
f5e9804e Merge remote-tracking branch 'zkp/master' into temp-merge-1488
e34dc812 Merge BlockstreamResearch/secp256k1-zkp#315: ci: Backport LLVM apt signature fix
040673bd ci, docker: Fix LLVM repository signature failure
c946b097 Merge commits 'e3a885d4 d7f6613d 7d0bc087 7712a530 4155e62f 06bff6de 1791f6fc 4b8d5eea bedffd53 ' into temp-merge-1488
1cdc3e0f Merge BlockstreamResearch/secp256k1-zkp#311: sync-upstream: Extend git usage tips
d176205d Merge BlockstreamResearch/secp256k1-zkp#313: Upstream PR 1518
ca68d088 Merge BlockstreamResearch/secp256k1-zkp#312: scalar: Add SECP256K1_SCALAR_VERIFY to zkp-specific function
2cb2e312 extrakeys: Migrate to bitcoin-core/secp256k1#1518 secp256k1_ec_pubkey_sort
3291b021 Merge commits 'bb528cf ' into temp-merge-1518
96a415b1 scalar: Port bitcoin-core/secp256k1#1393 to zkp-specific code
41cead8a sync-upstream: Extend git usage tips
36a7b874 Merge BlockstreamResearch/secp256k1-zkp#310: Upstream PRs 1058
9a57e3c6 Merge commits 'da515074 ' into temp-merge-1058
7e460db4 Merge BlockstreamResearch/secp256k1-zkp#307: Upstream PRs 1484, 1483, 1486, 1496, 1489, 1490, 1507, 1512, 1515
f9cf003d scalar: Port bitcoin-core/secp256k1#1512 to zkp-specific code
8c72644a Merge commits '5ad3aa3 2483627 0653a25 d926510 cdc9a62 427e86b 05bfab6 4b77fec d831168 ' into temp-merge-1515
797e2ed6 Merge BlockstreamResearch/secp256k1-zkp#306: sync-upstream: improve help text
db8750de sync-upstream: improve help text
36e76952 Merge bitcoin-core/secp256k1#1738: check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
4985ac0f Merge bitcoin-core/secp256k1#1737: doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
7ebaa134 check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
806de38b doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
03fb60ad Merge bitcoin-core/secp256k1#1681: doc: Recommend clang-cl when building on Windows
d93380fb Merge bitcoin-core/secp256k1#1731: schnorrsig: Securely clear buf containing k or its negation
8113671f Merge bitcoin-core/secp256k1#1729: hash: Use size_t instead of int for RFC6979 outlen copy
325d65a8 Rename and clear var containing k or -k
960ba5f9 Use size_t instead of int for RFC6979 outlen copy
73791243 ci: Add more tests for clang-cl
7379a5be doc: Recommend clang-cl when building on Windows
f36afb8b Merge bitcoin-core/secp256k1#1725: tests: refactor tagged hash verification
5153cf1c tests: refactor tagged hash tests
d2dcf520 Merge bitcoin-core/secp256k1#1726: docs: fix broken link to Tromer's cache.pdf paper
489a43d1 docs: fix broken link to eprint cache.pdf paper
d5997141 Merge bitcoin-core/secp256k1#1722: docs: Exclude modules' `bench_impl.h` headers from coverage report
0458def5 doc: Add `--gcov-ignore-parse-errors=all` option to `gcovr` invocations
1aecce59 doc: Add `--merge-mode-functions=separate` option to `gcovr` invocations
106a7cbf doc: Exclude modules' `bench_impl.h` headers from coverage report
a9e955d3 autotools, docs: Adjust help string for `--enable-coverage` option
e523e4f9 Merge bitcoin-core/secp256k1#1720: chore(ci): Fix typo in Dockerfile comment
24ba8ff1 chore(ci): Fix typo in Dockerfile comment
74b8068c Merge bitcoin-core/secp256k1#1717: test: update wycheproof test vectors
c25c3c8a test: update wycheproof test vectors
20e3b447 Merge bitcoin-core/secp256k1#1688: cmake: Avoid contaminating parent project's cache with `BUILD_SHARED_LIBS`
2c076d90 Merge bitcoin-core/secp256k1#1711: tests: update Wycheproof
7b07b229 cmake: Avoid contaminating parent project's cache with BUILD_SHARED_LIBS
5433648c Fix typos and spellings
9ea54c69 tests: update Wycheproof files
b9313c6e Merge bitcoin-core/secp256k1#1708: release cleanup: bump version after 0.7.0
a660a497 Merge bitcoin-core/secp256k1#1707: release: Prepare for 0.7.0
7ab8b0cc release cleanup: bump version after 0.7.0
a3e742d9 release: Prepare for 0.7.0
f67b0ac1 ci: Don't hardcode ABI version
020ee604 Merge bitcoin-core/secp256k1#1706: musig/tests: initialize keypair
cde41308 musig/tests: initialize keypair
6037833c Merge bitcoin-core/secp256k1#1702: changelog: update
40b4a065 changelog: update
5e74086d Merge bitcoin-core/secp256k1#1705: musig/test: Remove dead code
7c338042 Merge bitcoin-core/secp256k1#1696: build: Refactor visibility logic and add override
8d967a60 musig/test: Remove dead code
983711cd musig/tests: Refactor vectors_signverify
73a69595 Merge bitcoin-core/secp256k1#1704: cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
bf082221 cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
c82d84bb build: add CMake option for disabling symbol visibility attributes
ce792387 build: Add SECP256K1_NO_API_VISIBILITY_ATTRIBUTES
e5297f6d build: Refactor visibility logic
cbbbf3bd Merge bitcoin-core/secp256k1#1699: ci: enable musig module for native macOS arm64 job
943479a7 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
3352f9d6 ci: enable musig module for native macOS arm64 job
ad60ef7e Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c4987790 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
44b205e9 Revert "cmake: configure libsecp256k1.pc during install"
0dfe387d cmake: support the use of launchers in ctest -S scripts
89096c23 Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6 cmake: configure libsecp256k1.pc during install
29e73f4b Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b1 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d3747 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e1 ci: Bump GCC snapshot major version to 16
004f57fc ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc3 ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346 ci: Add `arm64` architecture to `docker_cache` job
b77aae92 ci: Rename Docker image tag to reflect architecture
145ae3e2 cmake: add a helper for linking into static libs
81921097 README: add link to musig example, generalize module enabling hint
95db29b1 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b cmake: Emulate Libtool's behavior on FreeBSD
f24b838b Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43 doc: Promote "Building with CMake" to standard procedure
6f67151e cmake: Use `PUBLIC_HEADER` target property
c32715b2 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987 cmake: Bump minimum required CMake version to 3.22
92394476 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448c Assert field magnitude at control-flow join
9fab4252 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed994 tests: update wycheproof files
4187a466 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11 tests: Add Wycheproof ECDH vectors
13906b71 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb032 gitignore: Add Python cache files
70f149b9 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51f bench: add ellswift to bench help output
d84bb83e Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d configure: Show exhaustive tests in summary
e56716a3 Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc5 ci: Fix exiting from ci.sh on error
1b6e0815 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b0 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa9 tests: remove unused uncounting_illegal_callback_fn
a7a51171 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65 Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d ci: Run `tools/symbol-check.py`
41d32ab2 test: Add `tools/symbol-check.py`
88548058 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c6 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc gha: Print all *.log files, in a separate action
4ba1ba2a Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a musig: Fix clearing of pubnonces
31860823 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39da Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60b Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac577 Make static context const
1b1fc093 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480f Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d38962 CONTRIBUTING: mention that `EXIT_` codes should be used
c8555817 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fc examples: use `EXIT_...` constants for `main` return values
2e3bf136 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf README: add instructions for verifying GPG signatures
00774d07 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73d ci: Add new "Windows (clang-cl)" job
84c0bd1f cmake: Adjust diagnostic flags for clang-cl
f79f46c7 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558 doc: Improve cmake instructions in README
18235947 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450 Fix some misspellings
ec329c25 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f5 release cleanup: bump version after 0.6.0
0cdc758a Merge bitcoin-core/secp256k1#1631: release: prepare for 0.6.0
39d5dfd5 release: prepare for 0.6.0
df2eceb2 build: add ellswift.md and musig.md to release tarball
a306bb7e tools: fix check-abi.sh after cmake out locations were changed
145868a8 Do not export `secp256k1_musig_nonce_gen_internal`
b161bffb Merge bitcoin-core/secp256k1#1579: Clear sensitive memory without getting optimized out (revival of #636)
64228a64 musig: Use _ge_set_all_gej for own public nonces
300aab1c tests: Improve _ge_set_all_gej(_var) tests
365f274c group: Simplify secp256k1_ge_set_all_gej
d3082dde group: Add constant-time secp256k1_ge_set_all_gej
a38d879a Merge bitcoin-core/secp256k1#1628: Name public API structs
7d48f5ed Merge bitcoin-core/secp256k1#1581: test, ci: Lower default iteration count to 16
694342fd Name public API structs
0f73caf7 test, ci: Lower default iteration count to 16
9a8db52f Merge bitcoin-core/secp256k1#1582: cmake, test: Add `secp256k1_` prefix to test names
765ef533 Clear _gej instances after point multiplication to avoid potential leaks
349e6ab9 Introduce separate _clear functions for hash module
99cc9fd6 Don't rely on memset to set signed integers to 0
97c57f42 Implement various _clear() functions with secp256k1_memclear()
9bb368d1 Use secp256k1_memclear() to clear stack memory instead of memset()
e3497bbf Separate between clearing memory and setting to zero in tests
d79a6ccd Separate secp256k1_fe_set_int( . , 0 ) from secp256k1_fe_clear()
1c081262 Add secp256k1_memclear() for clearing secret data
1464f15c Merge bitcoin-core/secp256k1#1625: util: Remove unused (u)int64_t formatting macros
980c08df util: Remove unused (u)int64_t formatting macros
9b7c59cb Merge bitcoin-core/secp256k1#1624: ci: Update macOS image
096e3e23 ci: Update macOS image
e7d38448 Don't clear secrets in pippenger implementation
68b55209 Merge bitcoin-core/secp256k1#1619: musig: ctimetests: fix _declassify range for generated nonce points
f0868a9b Merge bitcoin-core/secp256k1#1595: build: 45839th attempt to fix symbol visibility on Windows
1fae76f5 Merge bitcoin-core/secp256k1#1620: Remove unused scratch space from API
8be3839f Remove unused scratch space from API
57eda3ba musig: ctimetests: fix _declassify range for generated nonce points
87384f5c cmake, test: Add `secp256k1_` prefix to test names
e59158b6 Merge bitcoin-core/secp256k1#1553: cmake: Set top-level target output locations
18f9b967 Merge bitcoin-core/secp256k1#1616: examples: do not retry generating seckey randomness in musig
5bab8f6d examples: make key generation doc consistent
e8908221 examples: do not retry generating seckey randomness in musig
70b6be18 extrakeys: improve doc of keypair_create (don't suggest retry)
01b58933 Merge bitcoin-core/secp256k1#1599: #1570 improve examples: remove key generation loop
cd4f84f3 Improve examples/documentation: remove key generation loops
a88aa935 Merge bitcoin-core/secp256k1#1603: f can never equal -m
3660fe5e Merge bitcoin-core/secp256k1#1479: Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
168c9201 build: allow enabling the musig module in cmake
f411841a Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
0be79660 util: add constant-time is_zero_array function
c8fbdb1b group: add ge_to_bytes_ext and ge_from_bytes_ext
ef7ff034 f can never equal -m
c232486d Revert "cmake: Set `ENVIRONMENT` property for examples on Windows"
26e4a7c2 cmake: Set top-level target output locations
4c57c7a5 Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
447334cb include: Avoid visibility("default") on Windows
472faaa8 Merge bitcoin-core/secp256k1#1604: doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
292310fb doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
2f2ccc46 Merge bitcoin-core/secp256k1#1600: cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
421ed1b4 cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
85e224dd group: add ge_to_bytes and ge_from_bytes
19888550 Merge bitcoin-core/secp256k1#1586: fix: remove duplicate 'the' from header file comment
b3076144 Merge bitcoin-core/secp256k1#1583: ci: Bump GCC_SNAPSHOT_MAJOR to 15
fa67b675 refactor: Use array initialization for unterminated strings
9b0f37bf fix: remove duplicate 'the' from header file comment
e34b4767 ci: Bump GCC_SNAPSHOT_MAJOR to 15
3fdf146b Merge bitcoin-core/secp256k1#1578: ci: Silent Homebrew's noisy reinstall warnings
f8c1b0e0 Merge bitcoin-core/secp256k1#1577: release cleanup: bump version after 0.5.1
7057d3c9 ci: Silent Homebrew's noisy reinstall warnings
c3e40d75 release cleanup: bump version after 0.5.1
642c885b Merge bitcoin-core/secp256k1#1575: release: prepare for 0.5.1
cdf08c1a Merge bitcoin-core/secp256k1#1576: doc: mention `needs-changelog` github label in release process
40d87b8e release: prepare for 0.5.1
57702261 changelog: clarify CMake option
759bd4bb doc: mention `needs-changelog` github label in release process
fded437c Merge bitcoin-core/secp256k1#1574: Fix compilation when extrakeys module isn't enabled
763d938c ci: only enable extrakeys module when schnorrsig is enabled
af551ab9 tests: do not use functions from extrakeys module
0055b867 Merge bitcoin-core/secp256k1#1551: Add ellswift usage example
ea2d5f0f Merge bitcoin-core/secp256k1#1563: doc: Add convention for defaults
ca06e58b Merge bitcoin-core/secp256k1#1564: build, ci: Adjust the default size of the precomputed table for signing
e2af4912 ci: Switch to the new default value of the precomputed table for signing
d94a9273 build: Adjust the default size of the precomputed table for signing
fcc5d738 Merge bitcoin-core/secp256k1#1565: cmake: Bump CMake minimum required version up to 3.16
9420eece cmake: Bump CMake minimum required version up to 3.16
16685649 doc: Add convention for defaults
a5269373 Merge bitcoin-core/secp256k1#1555: Fixed O3 replacement
b8fe3333 cmake: Fixed O3 replacement
7c987ec8 cmake: Call `enable_testing()` unconditionally
6aa57651 cmake: Delete `CTest` module
31f84595 Add ellswift usage example
fe4fbaa7 examples: fix case typos in secret clearing paragraphs (s/, Or/, or/)
4af241b3 Merge bitcoin-core/secp256k1#1535: build: Replace hardcoded "auto" value with default one
f473c959 Merge bitcoin-core/secp256k1#1543: cmake: Do not modify build types when integrating by downstream project
d403eea4 Merge bitcoin-core/secp256k1#1546: cmake: Rename `SECP256K1_LATE_CFLAGS` and switch to Bitcoin Core's approach
d7ae25ce Merge bitcoin-core/secp256k1#1550: fix: typos in secp256k1.c
0e2fadb2 fix: typos in secp256k1.c
69b2192a Merge bitcoin-core/secp256k1#1545: cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
5dd637f3 Merge bitcoin-core/secp256k1#1548: README: mention ellswift module
7454a537 README: mention ellswift module
4706be2c cmake: Reimplement `SECP256K1_APPEND_CFLAGS` using Bitcoin Core approach
c2764dbb cmake: Rename `SECP256K1_LATE_CFLAGS` to `SECP256K1_APPEND_CFLAGS`
f87a3589 cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
158f9e5e cmake: Do not modify build types when integrating by downstream project
35c0fdc8 Merge bitcoin-core/secp256k1#1529: cmake: Fix cache issue when integrating by downstream project
4392f0f7 Merge bitcoin-core/secp256k1#1533: tests: refactor: tidy up util functions (#1491)
bedffd53 Merge bitcoin-core/secp256k1#1488: ci: Add native macOS arm64 job
4b8d5eea Merge bitcoin-core/secp256k1#1532: cmake: Disable eager MSan in ctime_tests
f55703ba autotools: Delete unneeded compiler test
396e8858 autotools: Align MSan checking code with CMake's implementation
abde59f5 cmake: Report more compiler details in summary
7abf979a cmake: Disable `ctime_tests` if build with `-fsanitize=memory`
4d9645be cmake: Remove "AUTO" value of `SECP256K1_ECMULT_GEN_KB` option
a06805ee cmake: Remove "AUTO" value of `SECP256K1_ECMULT_WINDOW_SIZE` option
1791f6fc Merge bitcoin-core/secp256k1#1517: autotools: Disable eager MSan in ctime_tests
26b94ee9 autotools: Remove "auto" value of `--with-ecmult-gen-kb` option
122dbaeb autotools: Remove "auto" value of `--with-ecmult-window` option
e73f6f8f tests: refactor: drop `secp256k1_` prefix from testrand.h functions
0ee7453a tests: refactor: add `testutil_` prefix to testutil.h functions
0c6bc76d tests: refactor: move `random_` helpers from tests.c to testutil.h
0fef8479 tests: refactor: rename `random_field_element_magnitude` -> `random_fe_magnitude`
59db007f tests: refactor: rename `random_group_element_...` -> `random_ge_...`
ebfb82ee ci: Add job with -fsanitize-memory-param-retval
e1bef096 configure: Move "experimental" warning to bottom
55e5d975 autotools: Disable eager MSan in ctime_tests
06bff6de Merge bitcoin-core/secp256k1#1528: tests: call `secp256k1_ecmult_multi_var` with a non-`NULL` error callback
ec4c002f cmake: Simplify `PROJECT_IS_TOP_LEVEL` emulation
cae9a7ad cmake: Do not set emulated PROJECT_IS_TOP_LEVEL as cache variable
4155e62f Merge bitcoin-core/secp256k1#1526: cmake: Fix `check_arm32_assembly` when using as subproject
9554362b tests: call secp256k1_ecmult_multi_var with a non-NULL error callback
9f4c8cd7 cmake: Fix `check_arm32_assembly` when using as subproject
7712a530 Merge bitcoin-core/secp256k1#1524: check-abi: explicitly provide public headers
7d0bc087 Merge bitcoin-core/secp256k1#1525: changelog: Correct 0.5.0 release date
d45d9b74 changelog: Correct 0.5.0 release date
d7f6613d Merge bitcoin-core/secp256k1#1523: release cleanup: bump version after 0.5.0
2f05e2da release cleanup: bump version after 0.5.0
e3a885d4 Merge bitcoin-core/secp256k1#1522: release: prepare for 0.5.0
dd695563 check-abi: explicitly provide public headers
c0e4ec3f release: prepare for 0.5.0
bb528cfb Merge bitcoin-core/secp256k1#1518: Add secp256k1_pubkey_sort
7d2591ce Add secp256k1_pubkey_sort
da515074 Merge bitcoin-core/secp256k1#1058: Signed-digit multi-comb ecmult_gen algorithm
4c341f89 Add changelog entry for SDMC
a0439402 Permit COMB_BITS < 256 for exhaustive tests
39b2f2a3 Add test case for ecmult_gen recoded = {-1,0,1}
644e86de Reintroduce projective blinding
07810d9a Reduce side channels from single-bit reads
a0d32b59 Optimization: use Nx32 representation for recoded bits
e03dcc44 Make secp256k1_scalar_get_bits support 32-bit reads
5005abee Rename scalar_get_bits -> scalar_get_bits_limb32; return uint32_t
6247f485 Optimization: avoid unnecessary doublings in precomputation
15d0cca2 Optimization: first table lookup needs no point addition
7a33db35 Optimization: move (2^COMB_BITS-1)/2 term into ctx->scalar_offset
ed2a056f Provide 3 configurations accessible through ./configure
5f7be9f6 Always generate tables for current (blocks,teeth) config
fde1dfcd Signed-digit multi-comb ecmult_gen algorithm
486518b3 Make exhaustive tests's scalar_inverse(&x,&x) work
ab45c3e0 Initial gej blinding -> final ge blinding
aa00a6b8 Introduce CEIL_DIV macro and use it
d8311688 Merge bitcoin-core/secp256k1#1515: ci: Note affected clangs in comment on ASLR quirk
a85e2233 ci: Note affected clangs in comment on ASLR quirk
4b77fec6 Merge bitcoin-core/secp256k1#1512: msan: notate more variable assignments from assembly code
f7f0184b msan: notate more variable assignments from assembly code
a6133914 change inconsistent array param to pointer
05bfab69 Merge bitcoin-core/secp256k1#1507: ci: Add workaround for ASLR bug in sanitizers
a5e8ab24 ci: Add sanitizer env variables to debug output
84a93de4 ci: Add workaround for ASLR bug in sanitizers
427e86b9 Merge bitcoin-core/secp256k1#1490: tests: improve fe_sqr test (issue #1472)
2028069d doc: clarify input requirements for secp256k1_fe_mul
11420a7a tests: improve fe_sqr test
cdc9a625 Merge bitcoin-core/secp256k1#1489: tests: add missing fe comparison checks for inverse field test cases
d926510c Merge bitcoin-core/secp256k1#1496: msan: notate variable assignments from assembly code
31ba4049 msan: notate variable assignments from assembly code
e7ea32e3 msan: Add SECP256K1_CHECKMEM_MSAN_DEFINE which applies to memory sanitizer and not valgrind
e7bdddd9 refactor: rename `check_fe_equal` -> `fe_equal`
00111c9c tests: add missing fe comparison checks for inverse field test cases
218f0cc9 ci: Add native macOS arm64 job
0653a25d Merge bitcoin-core/secp256k1#1486: ci: Update cache action
94a14d52 ci: Update cache action
24836272 Merge bitcoin-core/secp256k1#1483: cmake: Recommend native CMake commands in README
5ad3aa3d Merge bitcoin-core/secp256k1#1484: tests: Drop redundant _scalar_check_overflow calls
51df2d9a tests: Drop redundant _scalar_check_overflow calls
3777e3f3 cmake: Recommend native CMake commands in README

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42ae776d3b49f27f2a1edd5ec62c023e05b93607
0x000000000019d6689c085ae165831e934ff76 pushed a commit to 21-DOT-DEV/swift-secp256k1 that referenced this pull request Mar 2, 2026
42ae776d Merge BlockstreamResearch/secp256k1-zkp#327: Upstream PRs 1711, 1688, 1717, 1720, 1722, 1726, 1725, 1729, 1731, 1681, 1737, 1738
01b1b916 modules: Port bitcoin-core/secp256k1#1725 to zkp-specific code
38284aa0 Merge commits '2c076d90 20e3b447 74b8068c e523e4f9 d5997141 d2dcf520 f36afb8b 8113671f d93380fb 03fb60ad 4985ac0f 36e76952 ' into temp-merge-1738
a3733f33 Merge BlockstreamResearch/secp256k1-zkp#325: Upstream PRs 1685, 1692, 1687, 1689, 1694, 1699, 1704, 1696, 1705, 1702, 1706, 1707, 1708
9dcd857d Merge commits '29e73f4b 89096c23 c4987790 ad60ef7e 943479a7 cbbbf3bd 73a69595 7c338042 5e74086d 6037833c 020ee604 a660a497 b9313c6e ' into temp-merge-1708
64316eac Merge BlockstreamResearch/secp256k1-zkp#324: Upstream PRs 1662, 1669, 1492, 1670, 1668, 1673, 1675, 1680, 1679, 1690, 1683, 1678
cc4a92b5 Merge commits '70f149b9 13906b71 4187a466 bb597b3d 9fab4252 92394476 201b2b8f f24b838b 95db29b1 2a9d3747 a28c2ffa 746e36b1 ' into temp-merge-1678
6e071d18 Merge BlockstreamResearch/secp256k1-zkp#323: Upstream PRs 1642, 1639, 1614, 1656, 1647, 1655, 1593, 1359, 1657, 1660, 1659, 1661
4dda3122 ci: Use Python virtual environment in x86_64-macos-native job
795f19af ci: Switch to macOS 15 Sequoia Intel-based image
2f057a14 ci: Don't hardcode ABI version
17ad1960 schnorrsig_halfagg: Fix symbol visibility for internal function
ec343f0b Port bitcoin-core/secp256k1#1642 to zkp-specific code
79953d07 Merge commits '1b1fc093 6c2a39da 31860823 abd25054 4ba1ba2a 03bbe8c6 13ed6f65 a7a51171 2abb35b0 e56716a3 3f54ed8c d84bb83e ' into temp-merge-1661
2d30d398 Merge BlockstreamResearch/secp256k1-zkp#322: Upstream PRs 1579, 1631, 1633, 1634, 1641, 1650, 1646, 1654
e3bddfa7 modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
913be29e Merge commits 'b161bffb 0cdc758a ec329c25 8deef00b f79f46c7 00774d07 2e3bf136 c0d9480f ' into temp-merge-1654
8aa05cb3 Merge BlockstreamResearch/secp256k1-zkp#320: Upstream PRs 1603, 1599, 1616, 1553, 1620, 1595, 1619, 1624, 1625, 1582, 1581, 1628
a8e6a3cc Port bitcoin-core/secp256k1#1628 to zkp public API
347d6adf Merge commits 'a88aa935 01b58933 18f9b967 e59158b6 1fae76f5 f0868a9b 68b55209 9b7c59cb 1464f15c 9a8db52f 7d48f5ed a38d879a ' into temp-merge-1628
7acd4a1f Merge BlockstreamResearch/secp256k1-zkp#319: Upstream PR 1479
8c7c24eb docs: simplify README description, fix musig docs
8d443b80 musig: Re-add adaptor signatures support
248358f2 Merge commit '3660fe5e' into temp-merge-1479
21c24fdc musig: Remove module in preparation for upstream merge
211323d6 Merge BlockstreamResearch/secp256k1-zkp#318: Upstream PRs 1574, 1576, 1575, 1577, 1578, 1583, 1586, 1600, 1604, 1554
551b5dd4 Merge commits 'fded437c cdf08c1a 642c885b f8c1b0e0 3fdf146b b3076144 19888550 2f2ccc46 472faaa8 4c57c7a5 ' into temp-merge-1554
4ae7cb4f Merge BlockstreamResearch/secp256k1-zkp#317: Upstream PRs 1529, 1548, 1545, 1550, 1546, 1543, 1535, 1555, 1565, 1564, 1563, 1551
d0dde4aa Merge commits '35c0fdc 5dd637f 69b2192 d7ae25c d403eea f473c95 4af241b a526937 fcc5d73 ca06e58 ea2d5f0 0055b86 ' into temp-merge-1551
84ca3b33 Merge BlockstreamResearch/secp256k1-zkp#316: Upstream PRs 1533
513e550e Merge commits '4392f0f7 ' into temp-merge-1533
0fb0eac9 Merge BlockstreamResearch/secp256k1-zkp#314: Upstream PRs 1522, 1523, 1525, 1524, 1526, 1528, 1517, 1532, 1488
91b2deab ci: Add zkp modules to arm64-macos-native job
f5e9804e Merge remote-tracking branch 'zkp/master' into temp-merge-1488
e34dc812 Merge BlockstreamResearch/secp256k1-zkp#315: ci: Backport LLVM apt signature fix
040673bd ci, docker: Fix LLVM repository signature failure
c946b097 Merge commits 'e3a885d4 d7f6613d 7d0bc087 7712a530 4155e62f 06bff6de 1791f6fc 4b8d5eea bedffd53 ' into temp-merge-1488
1cdc3e0f Merge BlockstreamResearch/secp256k1-zkp#311: sync-upstream: Extend git usage tips
d176205d Merge BlockstreamResearch/secp256k1-zkp#313: Upstream PR 1518
ca68d088 Merge BlockstreamResearch/secp256k1-zkp#312: scalar: Add SECP256K1_SCALAR_VERIFY to zkp-specific function
2cb2e312 extrakeys: Migrate to bitcoin-core/secp256k1#1518 secp256k1_ec_pubkey_sort
3291b021 Merge commits 'bb528cf ' into temp-merge-1518
96a415b1 scalar: Port bitcoin-core/secp256k1#1393 to zkp-specific code
41cead8a sync-upstream: Extend git usage tips
36a7b874 Merge BlockstreamResearch/secp256k1-zkp#310: Upstream PRs 1058
9a57e3c6 Merge commits 'da515074 ' into temp-merge-1058
7e460db4 Merge BlockstreamResearch/secp256k1-zkp#307: Upstream PRs 1484, 1483, 1486, 1496, 1489, 1490, 1507, 1512, 1515
f9cf003d scalar: Port bitcoin-core/secp256k1#1512 to zkp-specific code
8c72644a Merge commits '5ad3aa3 2483627 0653a25 d926510 cdc9a62 427e86b 05bfab6 4b77fec d831168 ' into temp-merge-1515
797e2ed6 Merge BlockstreamResearch/secp256k1-zkp#306: sync-upstream: improve help text
db8750de sync-upstream: improve help text
36e76952 Merge bitcoin-core/secp256k1#1738: check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
4985ac0f Merge bitcoin-core/secp256k1#1737: doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
7ebaa134 check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
806de38b doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
03fb60ad Merge bitcoin-core/secp256k1#1681: doc: Recommend clang-cl when building on Windows
d93380fb Merge bitcoin-core/secp256k1#1731: schnorrsig: Securely clear buf containing k or its negation
8113671f Merge bitcoin-core/secp256k1#1729: hash: Use size_t instead of int for RFC6979 outlen copy
325d65a8 Rename and clear var containing k or -k
960ba5f9 Use size_t instead of int for RFC6979 outlen copy
73791243 ci: Add more tests for clang-cl
7379a5be doc: Recommend clang-cl when building on Windows
f36afb8b Merge bitcoin-core/secp256k1#1725: tests: refactor tagged hash verification
5153cf1c tests: refactor tagged hash tests
d2dcf520 Merge bitcoin-core/secp256k1#1726: docs: fix broken link to Tromer's cache.pdf paper
489a43d1 docs: fix broken link to eprint cache.pdf paper
d5997141 Merge bitcoin-core/secp256k1#1722: docs: Exclude modules' `bench_impl.h` headers from coverage report
0458def5 doc: Add `--gcov-ignore-parse-errors=all` option to `gcovr` invocations
1aecce59 doc: Add `--merge-mode-functions=separate` option to `gcovr` invocations
106a7cbf doc: Exclude modules' `bench_impl.h` headers from coverage report
a9e955d3 autotools, docs: Adjust help string for `--enable-coverage` option
e523e4f9 Merge bitcoin-core/secp256k1#1720: chore(ci): Fix typo in Dockerfile comment
24ba8ff1 chore(ci): Fix typo in Dockerfile comment
74b8068c Merge bitcoin-core/secp256k1#1717: test: update wycheproof test vectors
c25c3c8a test: update wycheproof test vectors
20e3b447 Merge bitcoin-core/secp256k1#1688: cmake: Avoid contaminating parent project's cache with `BUILD_SHARED_LIBS`
2c076d90 Merge bitcoin-core/secp256k1#1711: tests: update Wycheproof
7b07b229 cmake: Avoid contaminating parent project's cache with BUILD_SHARED_LIBS
5433648c Fix typos and spellings
9ea54c69 tests: update Wycheproof files
b9313c6e Merge bitcoin-core/secp256k1#1708: release cleanup: bump version after 0.7.0
a660a497 Merge bitcoin-core/secp256k1#1707: release: Prepare for 0.7.0
7ab8b0cc release cleanup: bump version after 0.7.0
a3e742d9 release: Prepare for 0.7.0
f67b0ac1 ci: Don't hardcode ABI version
020ee604 Merge bitcoin-core/secp256k1#1706: musig/tests: initialize keypair
cde41308 musig/tests: initialize keypair
6037833c Merge bitcoin-core/secp256k1#1702: changelog: update
40b4a065 changelog: update
5e74086d Merge bitcoin-core/secp256k1#1705: musig/test: Remove dead code
7c338042 Merge bitcoin-core/secp256k1#1696: build: Refactor visibility logic and add override
8d967a60 musig/test: Remove dead code
983711cd musig/tests: Refactor vectors_signverify
73a69595 Merge bitcoin-core/secp256k1#1704: cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
bf082221 cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
c82d84bb build: add CMake option for disabling symbol visibility attributes
ce792387 build: Add SECP256K1_NO_API_VISIBILITY_ATTRIBUTES
e5297f6d build: Refactor visibility logic
cbbbf3bd Merge bitcoin-core/secp256k1#1699: ci: enable musig module for native macOS arm64 job
943479a7 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
3352f9d6 ci: enable musig module for native macOS arm64 job
ad60ef7e Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c4987790 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
44b205e9 Revert "cmake: configure libsecp256k1.pc during install"
0dfe387d cmake: support the use of launchers in ctest -S scripts
89096c23 Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6 cmake: configure libsecp256k1.pc during install
29e73f4b Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b1 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d3747 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e1 ci: Bump GCC snapshot major version to 16
004f57fc ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc3 ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346 ci: Add `arm64` architecture to `docker_cache` job
b77aae92 ci: Rename Docker image tag to reflect architecture
145ae3e2 cmake: add a helper for linking into static libs
81921097 README: add link to musig example, generalize module enabling hint
95db29b1 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b cmake: Emulate Libtool's behavior on FreeBSD
f24b838b Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43 doc: Promote "Building with CMake" to standard procedure
6f67151e cmake: Use `PUBLIC_HEADER` target property
c32715b2 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987 cmake: Bump minimum required CMake version to 3.22
92394476 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448c Assert field magnitude at control-flow join
9fab4252 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed994 tests: update wycheproof files
4187a466 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11 tests: Add Wycheproof ECDH vectors
13906b71 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb032 gitignore: Add Python cache files
70f149b9 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51f bench: add ellswift to bench help output
d84bb83e Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d configure: Show exhaustive tests in summary
e56716a3 Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc5 ci: Fix exiting from ci.sh on error
1b6e0815 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b0 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa9 tests: remove unused uncounting_illegal_callback_fn
a7a51171 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65 Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d ci: Run `tools/symbol-check.py`
41d32ab2 test: Add `tools/symbol-check.py`
88548058 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c6 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc gha: Print all *.log files, in a separate action
4ba1ba2a Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a musig: Fix clearing of pubnonces
31860823 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39da Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60b Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac577 Make static context const
1b1fc093 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480f Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d38962 CONTRIBUTING: mention that `EXIT_` codes should be used
c8555817 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fc examples: use `EXIT_...` constants for `main` return values
2e3bf136 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf README: add instructions for verifying GPG signatures
00774d07 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73d ci: Add new "Windows (clang-cl)" job
84c0bd1f cmake: Adjust diagnostic flags for clang-cl
f79f46c7 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558 doc: Improve cmake instructions in README
18235947 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450 Fix some misspellings
ec329c25 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f5 release cleanup: bump version after 0.6.0
0cdc758a Merge bitcoin-core/secp256k1#1631: release: prepare for 0.6.0
39d5dfd5 release: prepare for 0.6.0
df2eceb2 build: add ellswift.md and musig.md to release tarball
a306bb7e tools: fix check-abi.sh after cmake out locations were changed
145868a8 Do not export `secp256k1_musig_nonce_gen_internal`
b161bffb Merge bitcoin-core/secp256k1#1579: Clear sensitive memory without getting optimized out (revival of #636)
64228a64 musig: Use _ge_set_all_gej for own public nonces
300aab1c tests: Improve _ge_set_all_gej(_var) tests
365f274c group: Simplify secp256k1_ge_set_all_gej
d3082dde group: Add constant-time secp256k1_ge_set_all_gej
a38d879a Merge bitcoin-core/secp256k1#1628: Name public API structs
7d48f5ed Merge bitcoin-core/secp256k1#1581: test, ci: Lower default iteration count to 16
694342fd Name public API structs
0f73caf7 test, ci: Lower default iteration count to 16
9a8db52f Merge bitcoin-core/secp256k1#1582: cmake, test: Add `secp256k1_` prefix to test names
765ef533 Clear _gej instances after point multiplication to avoid potential leaks
349e6ab9 Introduce separate _clear functions for hash module
99cc9fd6 Don't rely on memset to set signed integers to 0
97c57f42 Implement various _clear() functions with secp256k1_memclear()
9bb368d1 Use secp256k1_memclear() to clear stack memory instead of memset()
e3497bbf Separate between clearing memory and setting to zero in tests
d79a6ccd Separate secp256k1_fe_set_int( . , 0 ) from secp256k1_fe_clear()
1c081262 Add secp256k1_memclear() for clearing secret data
1464f15c Merge bitcoin-core/secp256k1#1625: util: Remove unused (u)int64_t formatting macros
980c08df util: Remove unused (u)int64_t formatting macros
9b7c59cb Merge bitcoin-core/secp256k1#1624: ci: Update macOS image
096e3e23 ci: Update macOS image
e7d38448 Don't clear secrets in pippenger implementation
68b55209 Merge bitcoin-core/secp256k1#1619: musig: ctimetests: fix _declassify range for generated nonce points
f0868a9b Merge bitcoin-core/secp256k1#1595: build: 45839th attempt to fix symbol visibility on Windows
1fae76f5 Merge bitcoin-core/secp256k1#1620: Remove unused scratch space from API
8be3839f Remove unused scratch space from API
57eda3ba musig: ctimetests: fix _declassify range for generated nonce points
87384f5c cmake, test: Add `secp256k1_` prefix to test names
e59158b6 Merge bitcoin-core/secp256k1#1553: cmake: Set top-level target output locations
18f9b967 Merge bitcoin-core/secp256k1#1616: examples: do not retry generating seckey randomness in musig
5bab8f6d examples: make key generation doc consistent
e8908221 examples: do not retry generating seckey randomness in musig
70b6be18 extrakeys: improve doc of keypair_create (don't suggest retry)
01b58933 Merge bitcoin-core/secp256k1#1599: #1570 improve examples: remove key generation loop
cd4f84f3 Improve examples/documentation: remove key generation loops
a88aa935 Merge bitcoin-core/secp256k1#1603: f can never equal -m
3660fe5e Merge bitcoin-core/secp256k1#1479: Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
168c9201 build: allow enabling the musig module in cmake
f411841a Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
0be79660 util: add constant-time is_zero_array function
c8fbdb1b group: add ge_to_bytes_ext and ge_from_bytes_ext
ef7ff034 f can never equal -m
c232486d Revert "cmake: Set `ENVIRONMENT` property for examples on Windows"
26e4a7c2 cmake: Set top-level target output locations
4c57c7a5 Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
447334cb include: Avoid visibility("default") on Windows
472faaa8 Merge bitcoin-core/secp256k1#1604: doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
292310fb doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
2f2ccc46 Merge bitcoin-core/secp256k1#1600: cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
421ed1b4 cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
85e224dd group: add ge_to_bytes and ge_from_bytes
19888550 Merge bitcoin-core/secp256k1#1586: fix: remove duplicate 'the' from header file comment
b3076144 Merge bitcoin-core/secp256k1#1583: ci: Bump GCC_SNAPSHOT_MAJOR to 15
fa67b675 refactor: Use array initialization for unterminated strings
9b0f37bf fix: remove duplicate 'the' from header file comment
e34b4767 ci: Bump GCC_SNAPSHOT_MAJOR to 15
3fdf146b Merge bitcoin-core/secp256k1#1578: ci: Silent Homebrew's noisy reinstall warnings
f8c1b0e0 Merge bitcoin-core/secp256k1#1577: release cleanup: bump version after 0.5.1
7057d3c9 ci: Silent Homebrew's noisy reinstall warnings
c3e40d75 release cleanup: bump version after 0.5.1
642c885b Merge bitcoin-core/secp256k1#1575: release: prepare for 0.5.1
cdf08c1a Merge bitcoin-core/secp256k1#1576: doc: mention `needs-changelog` github label in release process
40d87b8e release: prepare for 0.5.1
57702261 changelog: clarify CMake option
759bd4bb doc: mention `needs-changelog` github label in release process
fded437c Merge bitcoin-core/secp256k1#1574: Fix compilation when extrakeys module isn't enabled
763d938c ci: only enable extrakeys module when schnorrsig is enabled
af551ab9 tests: do not use functions from extrakeys module
0055b867 Merge bitcoin-core/secp256k1#1551: Add ellswift usage example
ea2d5f0f Merge bitcoin-core/secp256k1#1563: doc: Add convention for defaults
ca06e58b Merge bitcoin-core/secp256k1#1564: build, ci: Adjust the default size of the precomputed table for signing
e2af4912 ci: Switch to the new default value of the precomputed table for signing
d94a9273 build: Adjust the default size of the precomputed table for signing
fcc5d738 Merge bitcoin-core/secp256k1#1565: cmake: Bump CMake minimum required version up to 3.16
9420eece cmake: Bump CMake minimum required version up to 3.16
16685649 doc: Add convention for defaults
a5269373 Merge bitcoin-core/secp256k1#1555: Fixed O3 replacement
b8fe3333 cmake: Fixed O3 replacement
7c987ec8 cmake: Call `enable_testing()` unconditionally
6aa57651 cmake: Delete `CTest` module
31f84595 Add ellswift usage example
fe4fbaa7 examples: fix case typos in secret clearing paragraphs (s/, Or/, or/)
4af241b3 Merge bitcoin-core/secp256k1#1535: build: Replace hardcoded "auto" value with default one
f473c959 Merge bitcoin-core/secp256k1#1543: cmake: Do not modify build types when integrating by downstream project
d403eea4 Merge bitcoin-core/secp256k1#1546: cmake: Rename `SECP256K1_LATE_CFLAGS` and switch to Bitcoin Core's approach
d7ae25ce Merge bitcoin-core/secp256k1#1550: fix: typos in secp256k1.c
0e2fadb2 fix: typos in secp256k1.c
69b2192a Merge bitcoin-core/secp256k1#1545: cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
5dd637f3 Merge bitcoin-core/secp256k1#1548: README: mention ellswift module
7454a537 README: mention ellswift module
4706be2c cmake: Reimplement `SECP256K1_APPEND_CFLAGS` using Bitcoin Core approach
c2764dbb cmake: Rename `SECP256K1_LATE_CFLAGS` to `SECP256K1_APPEND_CFLAGS`
f87a3589 cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
158f9e5e cmake: Do not modify build types when integrating by downstream project
35c0fdc8 Merge bitcoin-core/secp256k1#1529: cmake: Fix cache issue when integrating by downstream project
4392f0f7 Merge bitcoin-core/secp256k1#1533: tests: refactor: tidy up util functions (#1491)
bedffd53 Merge bitcoin-core/secp256k1#1488: ci: Add native macOS arm64 job
4b8d5eea Merge bitcoin-core/secp256k1#1532: cmake: Disable eager MSan in ctime_tests
f55703ba autotools: Delete unneeded compiler test
396e8858 autotools: Align MSan checking code with CMake's implementation
abde59f5 cmake: Report more compiler details in summary
7abf979a cmake: Disable `ctime_tests` if build with `-fsanitize=memory`
4d9645be cmake: Remove "AUTO" value of `SECP256K1_ECMULT_GEN_KB` option
a06805ee cmake: Remove "AUTO" value of `SECP256K1_ECMULT_WINDOW_SIZE` option
1791f6fc Merge bitcoin-core/secp256k1#1517: autotools: Disable eager MSan in ctime_tests
26b94ee9 autotools: Remove "auto" value of `--with-ecmult-gen-kb` option
122dbaeb autotools: Remove "auto" value of `--with-ecmult-window` option
e73f6f8f tests: refactor: drop `secp256k1_` prefix from testrand.h functions
0ee7453a tests: refactor: add `testutil_` prefix to testutil.h functions
0c6bc76d tests: refactor: move `random_` helpers from tests.c to testutil.h
0fef8479 tests: refactor: rename `random_field_element_magnitude` -> `random_fe_magnitude`
59db007f tests: refactor: rename `random_group_element_...` -> `random_ge_...`
ebfb82ee ci: Add job with -fsanitize-memory-param-retval
e1bef096 configure: Move "experimental" warning to bottom
55e5d975 autotools: Disable eager MSan in ctime_tests
06bff6de Merge bitcoin-core/secp256k1#1528: tests: call `secp256k1_ecmult_multi_var` with a non-`NULL` error callback
ec4c002f cmake: Simplify `PROJECT_IS_TOP_LEVEL` emulation
cae9a7ad cmake: Do not set emulated PROJECT_IS_TOP_LEVEL as cache variable
4155e62f Merge bitcoin-core/secp256k1#1526: cmake: Fix `check_arm32_assembly` when using as subproject
9554362b tests: call secp256k1_ecmult_multi_var with a non-NULL error callback
9f4c8cd7 cmake: Fix `check_arm32_assembly` when using as subproject
7712a530 Merge bitcoin-core/secp256k1#1524: check-abi: explicitly provide public headers
7d0bc087 Merge bitcoin-core/secp256k1#1525: changelog: Correct 0.5.0 release date
d45d9b74 changelog: Correct 0.5.0 release date
d7f6613d Merge bitcoin-core/secp256k1#1523: release cleanup: bump version after 0.5.0
2f05e2da release cleanup: bump version after 0.5.0
e3a885d4 Merge bitcoin-core/secp256k1#1522: release: prepare for 0.5.0
dd695563 check-abi: explicitly provide public headers
c0e4ec3f release: prepare for 0.5.0
bb528cfb Merge bitcoin-core/secp256k1#1518: Add secp256k1_pubkey_sort
7d2591ce Add secp256k1_pubkey_sort
da515074 Merge bitcoin-core/secp256k1#1058: Signed-digit multi-comb ecmult_gen algorithm
4c341f89 Add changelog entry for SDMC
a0439402 Permit COMB_BITS < 256 for exhaustive tests
39b2f2a3 Add test case for ecmult_gen recoded = {-1,0,1}
644e86de Reintroduce projective blinding
07810d9a Reduce side channels from single-bit reads
a0d32b59 Optimization: use Nx32 representation for recoded bits
e03dcc44 Make secp256k1_scalar_get_bits support 32-bit reads
5005abee Rename scalar_get_bits -> scalar_get_bits_limb32; return uint32_t
6247f485 Optimization: avoid unnecessary doublings in precomputation
15d0cca2 Optimization: first table lookup needs no point addition
7a33db35 Optimization: move (2^COMB_BITS-1)/2 term into ctx->scalar_offset
ed2a056f Provide 3 configurations accessible through ./configure
5f7be9f6 Always generate tables for current (blocks,teeth) config
fde1dfcd Signed-digit multi-comb ecmult_gen algorithm
486518b3 Make exhaustive tests's scalar_inverse(&x,&x) work
ab45c3e0 Initial gej blinding -> final ge blinding
aa00a6b8 Introduce CEIL_DIV macro and use it
d8311688 Merge bitcoin-core/secp256k1#1515: ci: Note affected clangs in comment on ASLR quirk
a85e2233 ci: Note affected clangs in comment on ASLR quirk
4b77fec6 Merge bitcoin-core/secp256k1#1512: msan: notate more variable assignments from assembly code
f7f0184b msan: notate more variable assignments from assembly code
a6133914 change inconsistent array param to pointer
05bfab69 Merge bitcoin-core/secp256k1#1507: ci: Add workaround for ASLR bug in sanitizers
a5e8ab24 ci: Add sanitizer env variables to debug output
84a93de4 ci: Add workaround for ASLR bug in sanitizers
427e86b9 Merge bitcoin-core/secp256k1#1490: tests: improve fe_sqr test (issue #1472)
2028069d doc: clarify input requirements for secp256k1_fe_mul
11420a7a tests: improve fe_sqr test
cdc9a625 Merge bitcoin-core/secp256k1#1489: tests: add missing fe comparison checks for inverse field test cases
d926510c Merge bitcoin-core/secp256k1#1496: msan: notate variable assignments from assembly code
31ba4049 msan: notate variable assignments from assembly code
e7ea32e3 msan: Add SECP256K1_CHECKMEM_MSAN_DEFINE which applies to memory sanitizer and not valgrind
e7bdddd9 refactor: rename `check_fe_equal` -> `fe_equal`
00111c9c tests: add missing fe comparison checks for inverse field test cases
218f0cc9 ci: Add native macOS arm64 job
0653a25d Merge bitcoin-core/secp256k1#1486: ci: Update cache action
94a14d52 ci: Update cache action
24836272 Merge bitcoin-core/secp256k1#1483: cmake: Recommend native CMake commands in README
5ad3aa3d Merge bitcoin-core/secp256k1#1484: tests: Drop redundant _scalar_check_overflow calls
51df2d9a tests: Drop redundant _scalar_check_overflow calls
3777e3f3 cmake: Recommend native CMake commands in README

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42ae776d3b49f27f2a1edd5ec62c023e05b93607
csjones added a commit to 21-DOT-DEV/swift-secp256k1 that referenced this pull request Mar 2, 2026
* chore: clean stale extractions for secp256k1-zkp

* Squashed 'Vendor/secp256k1-zkp/' content from commit 42e75b61

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42e75b613bc2c6b23d1ff75de49b9011f542baee

* Squashed 'Vendor/secp256k1-zkp/' changes from 42e75b61..42ae776d

42ae776d Merge BlockstreamResearch/secp256k1-zkp#327: Upstream PRs 1711, 1688, 1717, 1720, 1722, 1726, 1725, 1729, 1731, 1681, 1737, 1738
01b1b916 modules: Port bitcoin-core/secp256k1#1725 to zkp-specific code
38284aa0 Merge commits '2c076d90 20e3b447 74b8068c e523e4f9 d5997141 d2dcf520 f36afb8b 8113671f d93380fb 03fb60ad 4985ac0f 36e76952 ' into temp-merge-1738
a3733f33 Merge BlockstreamResearch/secp256k1-zkp#325: Upstream PRs 1685, 1692, 1687, 1689, 1694, 1699, 1704, 1696, 1705, 1702, 1706, 1707, 1708
9dcd857d Merge commits '29e73f4b 89096c23 c4987790 ad60ef7e 943479a7 cbbbf3bd 73a69595 7c338042 5e74086d 6037833c 020ee604 a660a497 b9313c6e ' into temp-merge-1708
64316eac Merge BlockstreamResearch/secp256k1-zkp#324: Upstream PRs 1662, 1669, 1492, 1670, 1668, 1673, 1675, 1680, 1679, 1690, 1683, 1678
cc4a92b5 Merge commits '70f149b9 13906b71 4187a466 bb597b3d 9fab4252 92394476 201b2b8f f24b838b 95db29b1 2a9d3747 a28c2ffa 746e36b1 ' into temp-merge-1678
6e071d18 Merge BlockstreamResearch/secp256k1-zkp#323: Upstream PRs 1642, 1639, 1614, 1656, 1647, 1655, 1593, 1359, 1657, 1660, 1659, 1661
4dda3122 ci: Use Python virtual environment in x86_64-macos-native job
795f19af ci: Switch to macOS 15 Sequoia Intel-based image
2f057a14 ci: Don't hardcode ABI version
17ad1960 schnorrsig_halfagg: Fix symbol visibility for internal function
ec343f0b Port bitcoin-core/secp256k1#1642 to zkp-specific code
79953d07 Merge commits '1b1fc093 6c2a39da 31860823 abd25054 4ba1ba2a 03bbe8c6 13ed6f65 a7a51171 2abb35b0 e56716a3 3f54ed8c d84bb83e ' into temp-merge-1661
2d30d398 Merge BlockstreamResearch/secp256k1-zkp#322: Upstream PRs 1579, 1631, 1633, 1634, 1641, 1650, 1646, 1654
e3bddfa7 modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
913be29e Merge commits 'b161bffb 0cdc758a ec329c25 8deef00b f79f46c7 00774d07 2e3bf136 c0d9480f ' into temp-merge-1654
8aa05cb3 Merge BlockstreamResearch/secp256k1-zkp#320: Upstream PRs 1603, 1599, 1616, 1553, 1620, 1595, 1619, 1624, 1625, 1582, 1581, 1628
a8e6a3cc Port bitcoin-core/secp256k1#1628 to zkp public API
347d6adf Merge commits 'a88aa935 01b58933 18f9b967 e59158b6 1fae76f5 f0868a9b 68b55209 9b7c59cb 1464f15c 9a8db52f 7d48f5ed a38d879a ' into temp-merge-1628
7acd4a1f Merge BlockstreamResearch/secp256k1-zkp#319: Upstream PR 1479
8c7c24eb docs: simplify README description, fix musig docs
8d443b80 musig: Re-add adaptor signatures support
248358f2 Merge commit '3660fe5e' into temp-merge-1479
21c24fdc musig: Remove module in preparation for upstream merge
211323d6 Merge BlockstreamResearch/secp256k1-zkp#318: Upstream PRs 1574, 1576, 1575, 1577, 1578, 1583, 1586, 1600, 1604, 1554
551b5dd4 Merge commits 'fded437c cdf08c1a 642c885b f8c1b0e0 3fdf146b b3076144 19888550 2f2ccc46 472faaa8 4c57c7a5 ' into temp-merge-1554
4ae7cb4f Merge BlockstreamResearch/secp256k1-zkp#317: Upstream PRs 1529, 1548, 1545, 1550, 1546, 1543, 1535, 1555, 1565, 1564, 1563, 1551
d0dde4aa Merge commits '35c0fdc 5dd637f 69b2192 d7ae25c d403eea f473c95 4af241b a526937 fcc5d73 ca06e58 ea2d5f0 0055b86 ' into temp-merge-1551
84ca3b33 Merge BlockstreamResearch/secp256k1-zkp#316: Upstream PRs 1533
513e550e Merge commits '4392f0f7 ' into temp-merge-1533
0fb0eac9 Merge BlockstreamResearch/secp256k1-zkp#314: Upstream PRs 1522, 1523, 1525, 1524, 1526, 1528, 1517, 1532, 1488
91b2deab ci: Add zkp modules to arm64-macos-native job
f5e9804e Merge remote-tracking branch 'zkp/master' into temp-merge-1488
e34dc812 Merge BlockstreamResearch/secp256k1-zkp#315: ci: Backport LLVM apt signature fix
040673bd ci, docker: Fix LLVM repository signature failure
c946b097 Merge commits 'e3a885d4 d7f6613d 7d0bc087 7712a530 4155e62f 06bff6de 1791f6fc 4b8d5eea bedffd53 ' into temp-merge-1488
1cdc3e0f Merge BlockstreamResearch/secp256k1-zkp#311: sync-upstream: Extend git usage tips
d176205d Merge BlockstreamResearch/secp256k1-zkp#313: Upstream PR 1518
ca68d088 Merge BlockstreamResearch/secp256k1-zkp#312: scalar: Add SECP256K1_SCALAR_VERIFY to zkp-specific function
2cb2e312 extrakeys: Migrate to bitcoin-core/secp256k1#1518 secp256k1_ec_pubkey_sort
3291b021 Merge commits 'bb528cf ' into temp-merge-1518
96a415b1 scalar: Port bitcoin-core/secp256k1#1393 to zkp-specific code
41cead8a sync-upstream: Extend git usage tips
36a7b874 Merge BlockstreamResearch/secp256k1-zkp#310: Upstream PRs 1058
9a57e3c6 Merge commits 'da515074 ' into temp-merge-1058
7e460db4 Merge BlockstreamResearch/secp256k1-zkp#307: Upstream PRs 1484, 1483, 1486, 1496, 1489, 1490, 1507, 1512, 1515
f9cf003d scalar: Port bitcoin-core/secp256k1#1512 to zkp-specific code
8c72644a Merge commits '5ad3aa3 2483627 0653a25 d926510 cdc9a62 427e86b 05bfab6 4b77fec d831168 ' into temp-merge-1515
797e2ed6 Merge BlockstreamResearch/secp256k1-zkp#306: sync-upstream: improve help text
db8750de sync-upstream: improve help text
36e76952 Merge bitcoin-core/secp256k1#1738: check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
4985ac0f Merge bitcoin-core/secp256k1#1737: doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
7ebaa134 check-abi: remove support for obsolete CMake library output location (src/libsecp256k1.so)
806de38b doc: mention ctx requirement for `_ellswift_create` (not secp256k1_context_static)
03fb60ad Merge bitcoin-core/secp256k1#1681: doc: Recommend clang-cl when building on Windows
d93380fb Merge bitcoin-core/secp256k1#1731: schnorrsig: Securely clear buf containing k or its negation
8113671f Merge bitcoin-core/secp256k1#1729: hash: Use size_t instead of int for RFC6979 outlen copy
325d65a8 Rename and clear var containing k or -k
960ba5f9 Use size_t instead of int for RFC6979 outlen copy
73791243 ci: Add more tests for clang-cl
7379a5be doc: Recommend clang-cl when building on Windows
f36afb8b Merge bitcoin-core/secp256k1#1725: tests: refactor tagged hash verification
5153cf1c tests: refactor tagged hash tests
d2dcf520 Merge bitcoin-core/secp256k1#1726: docs: fix broken link to Tromer's cache.pdf paper
489a43d1 docs: fix broken link to eprint cache.pdf paper
d5997141 Merge bitcoin-core/secp256k1#1722: docs: Exclude modules' `bench_impl.h` headers from coverage report
0458def5 doc: Add `--gcov-ignore-parse-errors=all` option to `gcovr` invocations
1aecce59 doc: Add `--merge-mode-functions=separate` option to `gcovr` invocations
106a7cbf doc: Exclude modules' `bench_impl.h` headers from coverage report
a9e955d3 autotools, docs: Adjust help string for `--enable-coverage` option
e523e4f9 Merge bitcoin-core/secp256k1#1720: chore(ci): Fix typo in Dockerfile comment
24ba8ff1 chore(ci): Fix typo in Dockerfile comment
74b8068c Merge bitcoin-core/secp256k1#1717: test: update wycheproof test vectors
c25c3c8a test: update wycheproof test vectors
20e3b447 Merge bitcoin-core/secp256k1#1688: cmake: Avoid contaminating parent project's cache with `BUILD_SHARED_LIBS`
2c076d90 Merge bitcoin-core/secp256k1#1711: tests: update Wycheproof
7b07b229 cmake: Avoid contaminating parent project's cache with BUILD_SHARED_LIBS
5433648c Fix typos and spellings
9ea54c69 tests: update Wycheproof files
b9313c6e Merge bitcoin-core/secp256k1#1708: release cleanup: bump version after 0.7.0
a660a497 Merge bitcoin-core/secp256k1#1707: release: Prepare for 0.7.0
7ab8b0cc release cleanup: bump version after 0.7.0
a3e742d9 release: Prepare for 0.7.0
f67b0ac1 ci: Don't hardcode ABI version
020ee604 Merge bitcoin-core/secp256k1#1706: musig/tests: initialize keypair
cde41308 musig/tests: initialize keypair
6037833c Merge bitcoin-core/secp256k1#1702: changelog: update
40b4a065 changelog: update
5e74086d Merge bitcoin-core/secp256k1#1705: musig/test: Remove dead code
7c338042 Merge bitcoin-core/secp256k1#1696: build: Refactor visibility logic and add override
8d967a60 musig/test: Remove dead code
983711cd musig/tests: Refactor vectors_signverify
73a69595 Merge bitcoin-core/secp256k1#1704: cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
bf082221 cmake: Make `secp256k1_objs` inherit interface defines from `secp256k1`
c82d84bb build: add CMake option for disabling symbol visibility attributes
ce792387 build: Add SECP256K1_NO_API_VISIBILITY_ATTRIBUTES
e5297f6d build: Refactor visibility logic
cbbbf3bd Merge bitcoin-core/secp256k1#1699: ci: enable musig module for native macOS arm64 job
943479a7 Merge bitcoin-core/secp256k1#1694: Revert "cmake: configure libsecp256k1.pc during install"
3352f9d6 ci: enable musig module for native macOS arm64 job
ad60ef7e Merge bitcoin-core/secp256k1#1689: ci: Convert `arm64` Cirrus tasks to GHA jobs
c4987790 Merge bitcoin-core/secp256k1#1687: cmake: support the use of launchers in ctest -S scripts
44b205e9 Revert "cmake: configure libsecp256k1.pc during install"
0dfe387d cmake: support the use of launchers in ctest -S scripts
89096c23 Merge bitcoin-core/secp256k1#1692: cmake: configure libsecp256k1.pc during install
7106dce6 cmake: configure libsecp256k1.pc during install
29e73f4b Merge bitcoin-core/secp256k1#1685: cmake: Emulate Libtool's behavior on FreeBSD
746e36b1 Merge bitcoin-core/secp256k1#1678: cmake: add a helper for linking into static libs
a28c2ffa Merge bitcoin-core/secp256k1#1683: README: add link to musig example
2a9d3747 Merge bitcoin-core/secp256k1#1690: ci: Bump GCC snapshot major version to 16
add146e1 ci: Bump GCC snapshot major version to 16
004f57fc ci: Move Valgrind build for `arm64` from Cirrus to GHA
5fafdfc3 ci: Move `gcc-snapshot` build for `arm64` from Cirrus to GHA
e814b79a ci: Switch `arm64_debian` from QEMU to native `arm64` Docker image
bcf77346 ci: Add `arm64` architecture to `docker_cache` job
b77aae92 ci: Rename Docker image tag to reflect architecture
145ae3e2 cmake: add a helper for linking into static libs
81921097 README: add link to musig example, generalize module enabling hint
95db29b1 Merge bitcoin-core/secp256k1#1679: cmake: Use `PUBLIC_HEADER` target property in installation logic
37dd422b cmake: Emulate Libtool's behavior on FreeBSD
f24b838b Merge bitcoin-core/secp256k1#1680: doc: Promote "Building with CMake" to standard procedure
3f31ac43 doc: Promote "Building with CMake" to standard procedure
6f67151e cmake: Use `PUBLIC_HEADER` target property
c32715b2 cmake, move-only: Move module option processing to `src/CMakeLists.txt`
201b2b8f Merge bitcoin-core/secp256k1#1675: cmake: Bump minimum required CMake version to 3.22
3af71987 cmake: Bump minimum required CMake version to 3.22
92394476 Merge bitcoin-core/secp256k1#1673: Assert field magnitude at control-flow join
3a4f448c Assert field magnitude at control-flow join
9fab4252 Merge bitcoin-core/secp256k1#1668: bench_ecmult: add benchmark for ecmult_const_xonly
05445377 bench_ecmult: add benchmark for ecmult_const_xonly
bb597b3d Merge bitcoin-core/secp256k1#1670: tests: update wycheproof files
d73ed994 tests: update wycheproof files
4187a466 Merge bitcoin-core/secp256k1#1492: tests: Add Wycheproof ECDH vectors
e266ba11 tests: Add Wycheproof ECDH vectors
13906b71 Merge bitcoin-core/secp256k1#1669: gitignore: Add Python cache files
c1bcb032 gitignore: Add Python cache files
70f149b9 Merge bitcoin-core/secp256k1#1662: bench: add ellswift to bench help output
6b3fe51f bench: add ellswift to bench help output
d84bb83e Merge bitcoin-core/secp256k1#1661: configure: Show exhaustive tests in summary
3f54ed8c Merge bitcoin-core/secp256k1#1659: include: remove WARN_UNUSED_RESULT for functions always returning 1
20b05c9d configure: Show exhaustive tests in summary
e56716a3 Merge bitcoin-core/secp256k1#1660: ci: Fix exiting from ci.sh on error
d87c3bc5 ci: Fix exiting from ci.sh on error
1b6e0815 include: remove WARN_UNUSED_RESULT for functions always returning 1
2abb35b0 Merge bitcoin-core/secp256k1#1657: tests: remove unused uncounting_illegal_callback_fn
51907fa9 tests: remove unused uncounting_illegal_callback_fn
a7a51171 Merge bitcoin-core/secp256k1#1359: Fix symbol visibility issues, add test for it
13ed6f65 Merge bitcoin-core/secp256k1#1593: Remove deprecated `_ec_privkey_{negate,tweak_add,tweak_mul}` aliases from API
d1478763 build: Drop no longer needed  `-fvisibility=hidden` compiler option
8ed1d83d ci: Run `tools/symbol-check.py`
41d32ab2 test: Add `tools/symbol-check.py`
88548058 Introduce `SECP256K1_LOCAL_VAR` macro
03bbe8c6 Merge bitcoin-core/secp256k1#1655: gha: Print all *.log files, in a separate action
59860bcc gha: Print all *.log files, in a separate action
4ba1ba2a Merge bitcoin-core/secp256k1#1647: cmake: Adjust diagnostic flags for `clang-cl`
abd25054 Merge bitcoin-core/secp256k1#1656: musig: Fix clearing of pubnonces
961ec25a musig: Fix clearing of pubnonces
31860823 Merge bitcoin-core/secp256k1#1614: Add _ge_set_all_gej and use it in musig for own public nonces
6c2a39da Merge bitcoin-core/secp256k1#1639: Make static context const
37d2c60b Remove deprecated _ec_privkey_{negate,tweak_add,tweak_mul} aliases
432ac577 Make static context const
1b1fc093 Merge bitcoin-core/secp256k1#1642: Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
c0d9480f Merge bitcoin-core/secp256k1#1654: use `EXIT_` constants over magic numbers for indicating program execution status
13d38962 CONTRIBUTING: mention that `EXIT_` codes should be used
c8555817 test, bench, precompute_ecmult: use `EXIT_...` constants for `main` return values
965393fc examples: use `EXIT_...` constants for `main` return values
2e3bf136 Merge bitcoin-core/secp256k1#1646: README: add instructions for verifying GPG signatures
b682dbcf README: add instructions for verifying GPG signatures
00774d07 Merge bitcoin-core/secp256k1#1650: schnorrsig: clear out masked secret key in BIP-340 nonce function
a82287fb schnorrsig: clear out masked secret key in BIP-340 nonce function
4c50d73d ci: Add new "Windows (clang-cl)" job
84c0bd1f cmake: Adjust diagnostic flags for clang-cl
f79f46c7 Merge bitcoin-core/secp256k1#1641: doc: Improve cmake instructions in README
2ac9f558 doc: Improve cmake instructions in README
18235947 Verify `compressed` argument in `secp256k1_eckey_pubkey_serialize`
8deef00b Merge bitcoin-core/secp256k1#1634: Fix some misspellings
39705450 Fix some misspellings
ec329c25 Merge bitcoin-core/secp256k1#1633: release cleanup: bump version after 0.6.0
c97059f5 release cleanup: bump version after 0.6.0
0cdc758a Merge bitcoin-core/secp256k1#1631: release: prepare for 0.6.0
39d5dfd5 release: prepare for 0.6.0
df2eceb2 build: add ellswift.md and musig.md to release tarball
a306bb7e tools: fix check-abi.sh after cmake out locations were changed
145868a8 Do not export `secp256k1_musig_nonce_gen_internal`
b161bffb Merge bitcoin-core/secp256k1#1579: Clear sensitive memory without getting optimized out (revival of #636)
64228a64 musig: Use _ge_set_all_gej for own public nonces
300aab1c tests: Improve _ge_set_all_gej(_var) tests
365f274c group: Simplify secp256k1_ge_set_all_gej
d3082dde group: Add constant-time secp256k1_ge_set_all_gej
a38d879a Merge bitcoin-core/secp256k1#1628: Name public API structs
7d48f5ed Merge bitcoin-core/secp256k1#1581: test, ci: Lower default iteration count to 16
694342fd Name public API structs
0f73caf7 test, ci: Lower default iteration count to 16
9a8db52f Merge bitcoin-core/secp256k1#1582: cmake, test: Add `secp256k1_` prefix to test names
765ef533 Clear _gej instances after point multiplication to avoid potential leaks
349e6ab9 Introduce separate _clear functions for hash module
99cc9fd6 Don't rely on memset to set signed integers to 0
97c57f42 Implement various _clear() functions with secp256k1_memclear()
9bb368d1 Use secp256k1_memclear() to clear stack memory instead of memset()
e3497bbf Separate between clearing memory and setting to zero in tests
d79a6ccd Separate secp256k1_fe_set_int( . , 0 ) from secp256k1_fe_clear()
1c081262 Add secp256k1_memclear() for clearing secret data
1464f15c Merge bitcoin-core/secp256k1#1625: util: Remove unused (u)int64_t formatting macros
980c08df util: Remove unused (u)int64_t formatting macros
9b7c59cb Merge bitcoin-core/secp256k1#1624: ci: Update macOS image
096e3e23 ci: Update macOS image
e7d38448 Don't clear secrets in pippenger implementation
68b55209 Merge bitcoin-core/secp256k1#1619: musig: ctimetests: fix _declassify range for generated nonce points
f0868a9b Merge bitcoin-core/secp256k1#1595: build: 45839th attempt to fix symbol visibility on Windows
1fae76f5 Merge bitcoin-core/secp256k1#1620: Remove unused scratch space from API
8be3839f Remove unused scratch space from API
57eda3ba musig: ctimetests: fix _declassify range for generated nonce points
87384f5c cmake, test: Add `secp256k1_` prefix to test names
e59158b6 Merge bitcoin-core/secp256k1#1553: cmake: Set top-level target output locations
18f9b967 Merge bitcoin-core/secp256k1#1616: examples: do not retry generating seckey randomness in musig
5bab8f6d examples: make key generation doc consistent
e8908221 examples: do not retry generating seckey randomness in musig
70b6be18 extrakeys: improve doc of keypair_create (don't suggest retry)
01b58933 Merge bitcoin-core/secp256k1#1599: #1570 improve examples: remove key generation loop
cd4f84f3 Improve examples/documentation: remove key generation loops
a88aa935 Merge bitcoin-core/secp256k1#1603: f can never equal -m
3660fe5e Merge bitcoin-core/secp256k1#1479: Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
168c9201 build: allow enabling the musig module in cmake
f411841a Add module "musig" that implements MuSig2 multi-signatures (BIP 327)
0be79660 util: add constant-time is_zero_array function
c8fbdb1b group: add ge_to_bytes_ext and ge_from_bytes_ext
ef7ff034 f can never equal -m
c232486d Revert "cmake: Set `ENVIRONMENT` property for examples on Windows"
26e4a7c2 cmake: Set top-level target output locations
4c57c7a5 Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
447334cb include: Avoid visibility("default") on Windows
472faaa8 Merge bitcoin-core/secp256k1#1604: doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
292310fb doc: fix typos in `secp256k1_ecdsa_{recoverable_,}signature` API description
2f2ccc46 Merge bitcoin-core/secp256k1#1600: cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
421ed1b4 cmake: Introduce `SECP256K1_APPEND_LDFLAGS` variable
85e224dd group: add ge_to_bytes and ge_from_bytes
19888550 Merge bitcoin-core/secp256k1#1586: fix: remove duplicate 'the' from header file comment
b3076144 Merge bitcoin-core/secp256k1#1583: ci: Bump GCC_SNAPSHOT_MAJOR to 15
fa67b675 refactor: Use array initialization for unterminated strings
9b0f37bf fix: remove duplicate 'the' from header file comment
e34b4767 ci: Bump GCC_SNAPSHOT_MAJOR to 15
3fdf146b Merge bitcoin-core/secp256k1#1578: ci: Silent Homebrew's noisy reinstall warnings
f8c1b0e0 Merge bitcoin-core/secp256k1#1577: release cleanup: bump version after 0.5.1
7057d3c9 ci: Silent Homebrew's noisy reinstall warnings
c3e40d75 release cleanup: bump version after 0.5.1
642c885b Merge bitcoin-core/secp256k1#1575: release: prepare for 0.5.1
cdf08c1a Merge bitcoin-core/secp256k1#1576: doc: mention `needs-changelog` github label in release process
40d87b8e release: prepare for 0.5.1
57702261 changelog: clarify CMake option
759bd4bb doc: mention `needs-changelog` github label in release process
fded437c Merge bitcoin-core/secp256k1#1574: Fix compilation when extrakeys module isn't enabled
763d938c ci: only enable extrakeys module when schnorrsig is enabled
af551ab9 tests: do not use functions from extrakeys module
0055b867 Merge bitcoin-core/secp256k1#1551: Add ellswift usage example
ea2d5f0f Merge bitcoin-core/secp256k1#1563: doc: Add convention for defaults
ca06e58b Merge bitcoin-core/secp256k1#1564: build, ci: Adjust the default size of the precomputed table for signing
e2af4912 ci: Switch to the new default value of the precomputed table for signing
d94a9273 build: Adjust the default size of the precomputed table for signing
fcc5d738 Merge bitcoin-core/secp256k1#1565: cmake: Bump CMake minimum required version up to 3.16
9420eece cmake: Bump CMake minimum required version up to 3.16
16685649 doc: Add convention for defaults
a5269373 Merge bitcoin-core/secp256k1#1555: Fixed O3 replacement
b8fe3333 cmake: Fixed O3 replacement
7c987ec8 cmake: Call `enable_testing()` unconditionally
6aa57651 cmake: Delete `CTest` module
31f84595 Add ellswift usage example
fe4fbaa7 examples: fix case typos in secret clearing paragraphs (s/, Or/, or/)
4af241b3 Merge bitcoin-core/secp256k1#1535: build: Replace hardcoded "auto" value with default one
f473c959 Merge bitcoin-core/secp256k1#1543: cmake: Do not modify build types when integrating by downstream project
d403eea4 Merge bitcoin-core/secp256k1#1546: cmake: Rename `SECP256K1_LATE_CFLAGS` and switch to Bitcoin Core's approach
d7ae25ce Merge bitcoin-core/secp256k1#1550: fix: typos in secp256k1.c
0e2fadb2 fix: typos in secp256k1.c
69b2192a Merge bitcoin-core/secp256k1#1545: cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
5dd637f3 Merge bitcoin-core/secp256k1#1548: README: mention ellswift module
7454a537 README: mention ellswift module
4706be2c cmake: Reimplement `SECP256K1_APPEND_CFLAGS` using Bitcoin Core approach
c2764dbb cmake: Rename `SECP256K1_LATE_CFLAGS` to `SECP256K1_APPEND_CFLAGS`
f87a3589 cmake: Do not set `CTEST_TEST_TARGET_ALIAS`
158f9e5e cmake: Do not modify build types when integrating by downstream project
35c0fdc8 Merge bitcoin-core/secp256k1#1529: cmake: Fix cache issue when integrating by downstream project
4392f0f7 Merge bitcoin-core/secp256k1#1533: tests: refactor: tidy up util functions (#1491)
bedffd53 Merge bitcoin-core/secp256k1#1488: ci: Add native macOS arm64 job
4b8d5eea Merge bitcoin-core/secp256k1#1532: cmake: Disable eager MSan in ctime_tests
f55703ba autotools: Delete unneeded compiler test
396e8858 autotools: Align MSan checking code with CMake's implementation
abde59f5 cmake: Report more compiler details in summary
7abf979a cmake: Disable `ctime_tests` if build with `-fsanitize=memory`
4d9645be cmake: Remove "AUTO" value of `SECP256K1_ECMULT_GEN_KB` option
a06805ee cmake: Remove "AUTO" value of `SECP256K1_ECMULT_WINDOW_SIZE` option
1791f6fc Merge bitcoin-core/secp256k1#1517: autotools: Disable eager MSan in ctime_tests
26b94ee9 autotools: Remove "auto" value of `--with-ecmult-gen-kb` option
122dbaeb autotools: Remove "auto" value of `--with-ecmult-window` option
e73f6f8f tests: refactor: drop `secp256k1_` prefix from testrand.h functions
0ee7453a tests: refactor: add `testutil_` prefix to testutil.h functions
0c6bc76d tests: refactor: move `random_` helpers from tests.c to testutil.h
0fef8479 tests: refactor: rename `random_field_element_magnitude` -> `random_fe_magnitude`
59db007f tests: refactor: rename `random_group_element_...` -> `random_ge_...`
ebfb82ee ci: Add job with -fsanitize-memory-param-retval
e1bef096 configure: Move "experimental" warning to bottom
55e5d975 autotools: Disable eager MSan in ctime_tests
06bff6de Merge bitcoin-core/secp256k1#1528: tests: call `secp256k1_ecmult_multi_var` with a non-`NULL` error callback
ec4c002f cmake: Simplify `PROJECT_IS_TOP_LEVEL` emulation
cae9a7ad cmake: Do not set emulated PROJECT_IS_TOP_LEVEL as cache variable
4155e62f Merge bitcoin-core/secp256k1#1526: cmake: Fix `check_arm32_assembly` when using as subproject
9554362b tests: call secp256k1_ecmult_multi_var with a non-NULL error callback
9f4c8cd7 cmake: Fix `check_arm32_assembly` when using as subproject
7712a530 Merge bitcoin-core/secp256k1#1524: check-abi: explicitly provide public headers
7d0bc087 Merge bitcoin-core/secp256k1#1525: changelog: Correct 0.5.0 release date
d45d9b74 changelog: Correct 0.5.0 release date
d7f6613d Merge bitcoin-core/secp256k1#1523: release cleanup: bump version after 0.5.0
2f05e2da release cleanup: bump version after 0.5.0
e3a885d4 Merge bitcoin-core/secp256k1#1522: release: prepare for 0.5.0
dd695563 check-abi: explicitly provide public headers
c0e4ec3f release: prepare for 0.5.0
bb528cfb Merge bitcoin-core/secp256k1#1518: Add secp256k1_pubkey_sort
7d2591ce Add secp256k1_pubkey_sort
da515074 Merge bitcoin-core/secp256k1#1058: Signed-digit multi-comb ecmult_gen algorithm
4c341f89 Add changelog entry for SDMC
a0439402 Permit COMB_BITS < 256 for exhaustive tests
39b2f2a3 Add test case for ecmult_gen recoded = {-1,0,1}
644e86de Reintroduce projective blinding
07810d9a Reduce side channels from single-bit reads
a0d32b59 Optimization: use Nx32 representation for recoded bits
e03dcc44 Make secp256k1_scalar_get_bits support 32-bit reads
5005abee Rename scalar_get_bits -> scalar_get_bits_limb32; return uint32_t
6247f485 Optimization: avoid unnecessary doublings in precomputation
15d0cca2 Optimization: first table lookup needs no point addition
7a33db35 Optimization: move (2^COMB_BITS-1)/2 term into ctx->scalar_offset
ed2a056f Provide 3 configurations accessible through ./configure
5f7be9f6 Always generate tables for current (blocks,teeth) config
fde1dfcd Signed-digit multi-comb ecmult_gen algorithm
486518b3 Make exhaustive tests's scalar_inverse(&x,&x) work
ab45c3e0 Initial gej blinding -> final ge blinding
aa00a6b8 Introduce CEIL_DIV macro and use it
d8311688 Merge bitcoin-core/secp256k1#1515: ci: Note affected clangs in comment on ASLR quirk
a85e2233 ci: Note affected clangs in comment on ASLR quirk
4b77fec6 Merge bitcoin-core/secp256k1#1512: msan: notate more variable assignments from assembly code
f7f0184b msan: notate more variable assignments from assembly code
a6133914 change inconsistent array param to pointer
05bfab69 Merge bitcoin-core/secp256k1#1507: ci: Add workaround for ASLR bug in sanitizers
a5e8ab24 ci: Add sanitizer env variables to debug output
84a93de4 ci: Add workaround for ASLR bug in sanitizers
427e86b9 Merge bitcoin-core/secp256k1#1490: tests: improve fe_sqr test (issue #1472)
2028069d doc: clarify input requirements for secp256k1_fe_mul
11420a7a tests: improve fe_sqr test
cdc9a625 Merge bitcoin-core/secp256k1#1489: tests: add missing fe comparison checks for inverse field test cases
d926510c Merge bitcoin-core/secp256k1#1496: msan: notate variable assignments from assembly code
31ba4049 msan: notate variable assignments from assembly code
e7ea32e3 msan: Add SECP256K1_CHECKMEM_MSAN_DEFINE which applies to memory sanitizer and not valgrind
e7bdddd9 refactor: rename `check_fe_equal` -> `fe_equal`
00111c9c tests: add missing fe comparison checks for inverse field test cases
218f0cc9 ci: Add native macOS arm64 job
0653a25d Merge bitcoin-core/secp256k1#1486: ci: Update cache action
94a14d52 ci: Update cache action
24836272 Merge bitcoin-core/secp256k1#1483: cmake: Recommend native CMake commands in README
5ad3aa3d Merge bitcoin-core/secp256k1#1484: tests: Drop redundant _scalar_check_overflow calls
51df2d9a tests: Drop redundant _scalar_check_overflow calls
3777e3f3 cmake: Recommend native CMake commands in README

git-subtree-dir: Vendor/secp256k1-zkp
git-subtree-split: 42ae776d3b49f27f2a1edd5ec62c023e05b93607

* chore(deps): update subtree secp256k1-zkp to 42ae776d

* refactor(musig): remove libsecp256k1_zkp conditional compilation for pubkey sorting

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: csjones <csjones@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants