Commit Graph

1830 Commits

Author SHA1 Message Date
Pieter Wuille c0a555b2ae Bugfix: pass SECP_CONFIG_DEFINES to bench compilation 2022-12-29 15:31:55 -05:00
Tim Ruffing 01b819a8c7
Merge bitcoin-core/secp256k1#1158: Add a secp256k1_i128_to_u64 function.
d216475205 test secp256k1_i128_to_i64 (Russell O'Connor)
4bc429019d Add a secp256k1_i128_to_u64 function. (Russell O'Connor)

Pull request description:

  I wanted to experiment with what would be required to split up `secp256k1_i128_to_i64` between those cases when a signed 64 bit value is being demoted, versus an unsigned 64 bit value is being extracted from the lower bits, and this is the result.

  I'm not sure this is a useful PR, so feel free to close it.  However, since it is already written, I figured it is worth at least discussing.

ACKs for top commit:
  sipa:
    utACK d216475205
  real-or-random:
    ACK d216475205

Tree-SHA512: 41dbb1d33b3078bee8e71a838cfad6f1859c0bba602ae061259add8e9e8ea5aa482daa41de79dbd7433ddbef4a0bc52757f3c45d63acc9c0eb05aa3ca891b922
2022-12-21 17:25:07 +01:00
Jonas Nick eacad90f69
Merge bitcoin-core/secp256k1#1171: Change ARG_CHECK_NO_RETURN to ARG_CHECK_VOID which returns (void)
a49e0940ad docs: Fix typo (Tim Ruffing)
2551cdac90 tests: Fix code formatting (Tim Ruffing)
c635c1bfd5 Change ARG_CHECK_NO_RETURN to ARG_CHECK_VOID which returns (void) (Tim Ruffing)
cf66f2357c refactor: Add helper function secp256k1_context_is_proper() (Tim Ruffing)

Pull request description:

ACKs for top commit:
  sipa:
    utACK a49e0940ad
  jonasnick:
    ACK a49e0940ad

Tree-SHA512: 0fd4ee88510f2de0de96378ae69ce6e610a446000bb78597026c5924803e1ce5a4f76303fc6446233a6129f9c42dce1b1549f93bef935131101e47b5a69cdf2f
2022-12-21 15:28:10 +00:00
Jonas Nick 3f57b9f774
Merge bitcoin-core/secp256k1#1177: Some improvements to the changelog
c30b889f17 Clarify that the ABI-incompatible versions are earlier (Pieter Wuille)
881fc33d0c Consistency in naming of modules (Pieter Wuille)
9ecf8149a1 Reduce font size in changelog (Pieter Wuille)
2dc133a67f Add more changelog entries (Pieter Wuille)
ac233e181a Add links to diffs to changelog (Pieter Wuille)
cee8223ef6 Mention semantic versioning in changelog (Pieter Wuille)

Pull request description:

ACKs for top commit:
  real-or-random:
    ACK c30b889f17
  jonasnick:
    ACK c30b889f17

Tree-SHA512: 0f753eae0ea4d65035bfbcd81b90169111ea030cf7196dd072fb1ccc8aac1437768031f3fcef431584028da68b66873204e16e03bcde4a6ae96b08ab7f97a480
2022-12-20 19:43:06 +00:00
Pieter Wuille c30b889f17 Clarify that the ABI-incompatible versions are earlier 2022-12-20 11:09:37 -05:00
Pieter Wuille 881fc33d0c Consistency in naming of modules 2022-12-20 11:09:13 -05:00
Pieter Wuille 665ba77e79
Merge bitcoin-core/secp256k1#1178: Drop `src/libsecp256k1-config.h`
9c5a4d21bb Do not define unused `HAVE_VALGRIND` macro (Hennadii Stepanov)
ad8647f548 Drop no longer relevant files from `.gitignore` (Hennadii Stepanov)
b627ba7050 Remove dependency on `src/libsecp256k1-config.h` (Hennadii Stepanov)

Pull request description:

  Cherry-picked the first commit from #1142 and addressed a [comment](https://github.com/bitcoin-core/secp256k1/pull/1142#issuecomment-1295099597).

ACKs for top commit:
  sipa:
    utACK 9c5a4d21bb
  real-or-random:
    utACK 9c5a4d21bb

Tree-SHA512: c6f268261fc5edee855a7e69fdf9f6c5f4b859eb1e078e3c44c3ee4c9c445738af3de9fc2fbcca90db9b9e38681da8217faaeb0735201052b16ea397a7817db9
2022-12-19 22:43:47 -05:00
Tim Ruffing 75d7b7f5ba
Merge bitcoin-core/secp256k1#1154: ci: set -u in cirrus.sh to treat unset variables as an error
7a74688201 ci: add missing CFLAGS & CPPFLAGS variable to print_environment (Jonas Nick)
c2e0fdadeb ci: set -u in cirrus.sh to treat unset variables as an error (Jonas Nick)

Pull request description:

  This PR is supposed to prevent accidental misuse of cirrus.sh. Maybe there is a way to check if `CC`, `AR` and `NM` are set within the loop that deals with the other variables, but so far I did not come up with one (that's POSIX shell compliant).

ACKs for top commit:
  real-or-random:
    ACK 7a74688201
  hebasto:
    re-ACK 7a74688201

Tree-SHA512: 91e42b3f1192fbf86e6fb43942713e78b2bee977ddd95256ea7448f84324369399d31ec4eedd47af595bf994bbc9396e26bb5c93bdb7f58c4310b5d3d5d66731
2022-12-19 14:57:55 +01:00
Jonas Nick 7a74688201
ci: add missing CFLAGS & CPPFLAGS variable to print_environment 2022-12-19 13:22:28 +00:00
Jonas Nick c2e0fdadeb
ci: set -u in cirrus.sh to treat unset variables as an error 2022-12-19 13:22:18 +00:00
Hennadii Stepanov 9c5a4d21bb
Do not define unused `HAVE_VALGRIND` macro 2022-12-15 20:06:55 +00:00
Hennadii Stepanov ad8647f548
Drop no longer relevant files from `.gitignore` 2022-12-15 10:56:29 +00:00
Hennadii Stepanov b627ba7050
Remove dependency on `src/libsecp256k1-config.h`
This change eases the use of alternate build systems by moving
the variables in `src/libsecp256k1-config.h` to compiler macros
for each invocation, preventing duplication of these variables
for each build system.

Co-authored-by: Ali Sherief <ali@notatether.com>
2022-12-15 10:56:16 +00:00
Pieter Wuille 9ecf8149a1 Reduce font size in changelog 2022-12-13 12:06:42 -05:00
Pieter Wuille 2dc133a67f Add more changelog entries 2022-12-13 12:05:10 -05:00
Pieter Wuille ac233e181a Add links to diffs to changelog 2022-12-13 11:53:50 -05:00
Pieter Wuille cee8223ef6 Mention semantic versioning in changelog 2022-12-13 11:50:32 -05:00
Jonas Nick 9a8d65f07f
Merge bitcoin-core/secp256k1#1174: release cleanup: bump version after 0.2.0
02ebc290f7 release cleanup: bump version after 0.2.0 (Jonas Nick)
b6b360efaf doc: improve message of cleanup commit (Jonas Nick)

Pull request description:

ACKs for top commit:
  sipa:
    ACK 02ebc290f7

Tree-SHA512: b887e31a531f7d21025558ed0a64ff5f68dee6feff8288478f7eb023189ceb20e5ca8baf0434ebd2ee49488d35d7aebc1b837888ff8c6e6420e6b86cc2f99cb1
2022-12-12 22:21:26 +00:00
Jonas Nick 02ebc290f7
release cleanup: bump version after 0.2.0 2022-12-12 22:08:22 +00:00
Jonas Nick b6b360efaf
doc: improve message of cleanup commit 2022-12-12 22:08:13 +00:00
Pieter Wuille 21ffe4b22a
Merge bitcoin-core/secp256k1#1055: Prepare initial release
e025ccdf74 release: prepare for initial release 0.2.0 (Jonas Nick)
6d1784a2e2 build: add missing files to EXTRA_DIST (Jonas Nick)
13bf1b6b32 changelog: make order of change types match keepachangelog.com (Jonas Nick)
b1f992a552 doc: improve release process (Jonas Nick)
ad39e2dc41 build: change package version to 0.1.0-dev (Jonas Nick)
90618e9263 doc: move CHANGELOG from doc/ to root directory (Jonas Nick)

Pull request description:

  Based on #964

ACKs for top commit:
  sipa:
    ACK e025ccdf74

Tree-SHA512: b9ab71d7362537d383a32b5e321ef44069f00e3e92340375bcd662267bc5a60c2bad60222998e6602cfac24ad65efb23d772eac37c86065036b90ef090b54c49
2022-12-12 17:01:25 -05:00
Jonas Nick e025ccdf74
release: prepare for initial release 0.2.0
There are plenty of unreleased variants of libsecp256k1 version 0.1.0
(libsecp256k1.so.0.0.0) in the wild. We choose a new version number to allow a
clear distinction.

There are variants of 0.1.0 that are incompatible with the initial release,
hence we increase the minor version to arrive at version number 0.2.0. For the
same reason, we increase the LIB_VERSION_CURRENT and keep AGE at 0.

The changelog for 0.2.0 consists of the relevant changes since 2021-12-25, which
is the date when the initial release process PR was merged (and the library
version was set to a pre-release, see 423b6d19d3).
This is somewhat arbitrary but at least points readers to relevant changes.
2022-12-12 21:26:36 +00:00
Jonas Nick 6d1784a2e2
build: add missing files to EXTRA_DIST 2022-12-12 21:26:32 +00:00
Jonas Nick 8c949f56da
Merge bitcoin-core/secp256k1#1173: Don't use compute credits for now
7e5b22684f Don't use compute credits for now (Pieter Wuille)

Pull request description:

ACKs for top commit:
  real-or-random:
    ACK 7e5b22684f

Tree-SHA512: 5f37521dede4270151f4f1ed59e021f78e39b7e3362f4c16ecf2b7733dd1d49306466cc4e9b7837be10769c86799905fb1305cb35fe5cae0366a7f7861e6e9df
2022-12-12 20:10:04 +00:00
Jonas Nick 13bf1b6b32
changelog: make order of change types match keepachangelog.com 2022-12-12 19:53:36 +00:00
Jonas Nick b1f992a552
doc: improve release process
- make version on master always equal to latest release with patch+1
- separate regular from maintenance releases
- add more git commands to prevent accidents
- mention that one needs to somehow deal with release dates
- _LIB_VERSIONS_ -> _LIB_VERSION_
- don't push all tags in step 4
- add required message to git tag
- add suggested commit messages
2022-12-12 19:53:27 +00:00
Pieter Wuille 7e5b22684f Don't use compute credits for now 2022-12-12 08:35:36 -05:00
Tim Ruffing a49e0940ad docs: Fix typo 2022-12-08 16:31:00 +01:00
Tim Ruffing 2551cdac90 tests: Fix code formatting 2022-12-08 16:30:26 +01:00
Tim Ruffing c635c1bfd5 Change ARG_CHECK_NO_RETURN to ARG_CHECK_VOID which returns (void) 2022-12-08 16:30:26 +01:00
Tim Ruffing cf66f2357c refactor: Add helper function secp256k1_context_is_proper() 2022-12-08 16:30:26 +01:00
Jonas Nick ad39e2dc41
build: change package version to 0.1.0-dev
The suffix -dev is slightly clearer.

Also, since the package version follows semantic versioning, rename
VERSION_BUILD to VERSION_PATCH for clarity.
2022-12-07 22:07:05 +00:00
Tim Ruffing 5c789dcd73
Merge bitcoin-core/secp256k1#1168: Replace deprecated context flags with NONE in benchmarks and tests
d6dc0f4ae3 tests: Switch to NONE contexts in module tests (Jonas Nick)
0c8a5caddd tests: Switch to NONE contexts in tests.c (Jonas Nick)
86540e9e1f tests: add test for deprecated flags and rm them from run_context (Jonas Nick)
caa0ad631e group: add gej_eq_var (Jonas Nick)
37ba744f5b tests: Switch to NONE contexts in exhaustive and ctime tests (Jonas Nick)
8d7a9a8eda benchmarks: Switch to NONE contexts (Jonas Nick)

Pull request description:

  Based on #1126.

ACKs for top commit:
  real-or-random:
    ACK d6dc0f4ae3 diff looks good and tests pass locally
  sipa:
    utACK d6dc0f4ae3

Tree-SHA512: 1fb1dc1336409b52827787a03c791a21ee1d6b1bdc388d1fa126600572f348ba16865a01d29bac67b36b8f29f30cda117d82913e2044ccb9d073f5d04338ac9f
2022-12-07 16:32:12 +01:00
Jonas Nick d6dc0f4ae3
tests: Switch to NONE contexts in module tests 2022-12-07 10:54:50 +00:00
Jonas Nick 0c8a5caddd
tests: Switch to NONE contexts in tests.c 2022-12-07 10:54:50 +00:00
Jonas Nick 86540e9e1f
tests: add test for deprecated flags and rm them from run_context 2022-12-07 10:54:50 +00:00
Jonas Nick caa0ad631e
group: add gej_eq_var 2022-12-07 10:54:50 +00:00
Jonas Nick 37ba744f5b
tests: Switch to NONE contexts in exhaustive and ctime tests 2022-12-07 10:54:50 +00:00
Jonas Nick 8d7a9a8eda
benchmarks: Switch to NONE contexts 2022-12-07 10:54:43 +00:00
Jonas Nick 90618e9263
doc: move CHANGELOG from doc/ to root directory 2022-12-06 15:29:50 +00:00
Jonas Nick e3f84777eb
Merge bitcoin-core/secp256k1#1126: API cleanup with respect to contexts
4386a2306c examples: Switch to NONE contexts (Tim Ruffing)
7289b51d31 docs: Use doxygen style if and only if comment is user-facing (Tim Ruffing)
e7d0185c90 docs: Get rid of "initialized for signing" terminology (Tim Ruffing)
06126364ad docs: Tidy and improve docs about contexts and randomization (Tim Ruffing)
e02d6862bd selftest: Expose in public API (Tim Ruffing)
e383fbfa66 selftest: Rename internal function to make name available for API (Tim Ruffing)
d2c6d48de3 tests: Use new name of static context (Tim Ruffing)
53796d2b24 contexts: Rename static context (Tim Ruffing)
72fedf8a6c docs: Improve docs for static context (Tim Ruffing)
316ac7625a contexts: Deprecate all context flags except SECP256K1_CONTEXT_NONE (Tim Ruffing)
1a553ee8be docs: Change signature "validation" to "verification" (Tim Ruffing)
ee7341fbac docs: Never require a verification context (Tim Ruffing)

Pull request description:

ACKs for top commit:
  sipa:
    utACK 4386a2306c
  jonasnick:
    ACK 4386a2306c

Tree-SHA512: 7bf07dfae0ecbf7de1418de64ef743a23dc5f244aeba2c1cf3ecbdc117d6ac12bb6c8f17f739605566074a9b901765ee4a32288b6edc6f9a0040a70cb472f6ee
2022-12-06 08:15:03 +00:00
Tim Ruffing 4386a2306c examples: Switch to NONE contexts 2022-12-05 11:26:44 +01:00
Tim Ruffing 7289b51d31 docs: Use doxygen style if and only if comment is user-facing
and improve phrasing slightly.
2022-12-05 11:26:44 +01:00
Tim Ruffing e7d0185c90 docs: Get rid of "initialized for signing" terminology 2022-12-05 11:26:44 +01:00
Tim Ruffing 06126364ad docs: Tidy and improve docs about contexts and randomization 2022-12-05 11:26:44 +01:00
Tim Ruffing e02d6862bd selftest: Expose in public API 2022-12-05 11:26:44 +01:00
Tim Ruffing e383fbfa66 selftest: Rename internal function to make name available for API 2022-12-05 11:26:44 +01:00
Tim Ruffing d2c6d48de3 tests: Use new name of static context 2022-12-05 11:26:44 +01:00
Tim Ruffing 53796d2b24 contexts: Rename static context 2022-12-05 11:26:44 +01:00
Tim Ruffing 72fedf8a6c docs: Improve docs for static context 2022-12-05 11:26:39 +01:00