Skip to content

Conversation

@knst
Copy link
Collaborator

@knst knst commented Nov 20, 2023

@knst knst added this to the 20.1 milestone Nov 20, 2023
@knst knst force-pushed the bp-v21-p3 branch 5 times, most recently from 8c504f8 to 6143715 Compare November 27, 2023 07:32
@knst knst changed the title backport: bitcoin#18216, #18735, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #19041, #20182, #20413 backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #20182 Nov 27, 2023
@knst knst changed the title backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #20182 backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #19368, #19427, #20182 Nov 27, 2023
@knst knst requested review from PastaPastaPasta and UdjinM6 and removed request for PastaPastaPasta November 27, 2023 11:52
@knst knst marked this pull request as ready for review November 27, 2023 11:52
@knst knst marked this pull request as draft November 30, 2023 09:02
@knst knst force-pushed the bp-v21-p3 branch 2 times, most recently from 323df18 to b76a7dc Compare December 11, 2023 20:27
@knst knst changed the title backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #19368, #19427, #20182 backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19014, #19368, #19427, #20182, partial #19008 Dec 11, 2023
@knst knst changed the title backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19014, #19368, #19427, #20182, partial #19008 backport: bitcoin#18216, #18778, #18799, #18887, #18905, #18929, #19008, #19014, #19368, #19427, partial #20182 Dec 11, 2023
@knst knst marked this pull request as ready for review December 12, 2023 07:21
@knst knst requested a review from UdjinM6 December 12, 2023 10:53
UdjinM6
UdjinM6 previously approved these changes Dec 12, 2023
Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

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

utACK

@knst
Copy link
Collaborator Author

knst commented Dec 26, 2023

ping @PastaPastaPasta

PastaPastaPasta
PastaPastaPasta previously approved these changes Jan 6, 2024
Copy link
Member

@PastaPastaPasta PastaPastaPasta left a comment

Choose a reason for hiding this comment

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

utACK for merging via merge commit; contingent on CI

@knst knst dismissed stale reviews from PastaPastaPasta and UdjinM6 via c3c7154 January 6, 2024 06:13
@knst
Copy link
Collaborator Author

knst commented Jan 6, 2024

@knst knst force-pushed the bp-v21-p3 branch from 4fc5142 to c3c7154

required due to new introduced code with signed/unsiged comparision after rebase.

Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

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

re-utACK

knst and others added 13 commits January 6, 2024 19:30
8c705ff travis: Remove s390x (MarcoFalke)

Pull request description:

  Fixes bitcoin#18868
  Fixes bitcoin#18016

Top commit has no ACKs.

Tree-SHA512: 1007b761c7e01dd2b75aa34e92e01a92a84a100c0a3a53863c755d93b2438a74601e3f2083919b8a9cfc92fb104d0c8415fad3f6c9504c76b02ad2e9712660c0
6853727 build: Enable -Werror=sign-compare (Ben Woosley)
eac6a30 refactor: Rework asmap Interpret to avoid ptrdiff_t (Ben Woosley)
df37377 test: Fix outstanding -Wsign-compare errors (Ben Woosley)

Pull request description:

  Disallowing sign-comparison mismatches can help to prevent the introduction of overflow and interpretation bugs.

  In this case, ~all~ most existing violations are in the tests, and most simply required annotating the literal as unsigned for comparison.

  This was previously prevented by violations in leveldb which were fixed upstream and merged in bitcoin#17398. You can test that by building this branch against: 22d1118 vs 75fb37c

ACKs for top commit:
  fjahr:
    re-ACK 6853727
  practicalswift:
    ACK 6853727

Tree-SHA512: 14b5daa38c496fb51548feb30fb4dd179e6f76a8d355f52bc8e2a18f2f9340f0bc98dcf36d8b3d6521045d013891c3103749a4eda88ceef00202a6a0cf93f73c
a30b0a2 build: enable -Werror=gnu (Vasil Dimov)

Pull request description:

  Stop the build if a warning is emitted due to `-Wgnu` and
  `--enable-werror` has been used. As usual - this would help notice such
  a warning that is about to be introduced in new code.

  This is a followup to
  bitcoin#18088 build: ensure we aren't using GNU extensions

ACKs for top commit:
  practicalswift:
    ACK a30b0a2
  Empact:
    ACK bitcoin@a30b0a2

Tree-SHA512: f81b71cf3ee4db88b6f664c571075e0d30800a604f067f44273f256695a1dea533779db2ac859dd0a4cd8b66289c3e45f4aff1cfadfa160a1c354237167b05e2
fac24de ci: Run functional tests on mac again (MarcoFalke)

Pull request description:

ACKs for top commit:
  hebasto:
    ACK fac24de, verified travis build log.

Tree-SHA512: 406282a7ac03e5c193830b727366c7b1350639f1850aff951bf7ddd4b0c3e3ffb396b950ccb3a64ddc59500fa2739766f3c34806b4d144bc4535bb2bd765b959
fa72a75 ci: Document why tests can not be run on mac (MarcoFalke)

Pull request description:

  Fixes bitcoin#18794

Top commit has no ACKs.

Tree-SHA512: 297652eda412aa8cf7255e20a6f294d22773dad8637a3d7b5204f3b638e911ce5b2e40e85f81395a34c1b5a5b497665944c2d6ea17c70c30c0c9e0ab553f956e
…zz test_runner

cbd6611 Set LD_LIBRARY_PATH consistently in travis tests (Russell Yanofsky)
fa35c34 Remove unused ci configs that have been moved elsewhere (MarcoFalke)
3333cb9 fuzz: Pass down MAKEJOBS to test_runner (MarcoFalke)

Pull request description:

  Just how `MAKEJOBS` is passed down to the functional test `test_runner`, do the same for the fuzz `test_runner`.

  Also includes a commit to remove unused config files, which have been moved elsewhere.

Top commit has no ACKs.

Tree-SHA512: 32557102c9e40599b432aeb004c8427e8fbb07cdf4048050cdc8241d1b029aaad306b1131007eeca8315a4f71c38a7efbb833310e056cd11b835676cd19b8902
faf5521 ci: Set DEBIAN_FRONTEND=noninteractive (MarcoFalke)
fa006ca ci: tsan on clang-9 (MarcoFalke)

Pull request description:

  Bump the compiler runtime library that includes the sanitizers from clang-8 to clang-9 to get a more recent version. Also, bump the system packages from xenial to bionic to test packages closer to what is commonly used in production.

  The second commit is needed to install the `tzdata` package, which is missing on some operating systems. See https://travis-ci.org/github/MarcoFalke/bitcoin-core/jobs/688455828#L1727

ACKs for top commit:
  hebasto:
    ACK faf5521
  practicalswift:
    ACK faf5521 -- patch looks correct and Travis is happy

Tree-SHA512: aa38fdae5f716966a83a21d5f7c121675cf7d663148ab3baa065142c8b3850bcd4bf88526d7da0fa51f5e08f2c317b537f950fcc9eb1e69fdacb0eac8863e1c6
…h test_framework option

fad798b test: Default --previous-releases to false if dir is empty (MarcoFalke)
faf1c3c test: Replace TEST_PREVIOUS_RELEASES env var with test_framework option (MarcoFalke)

Pull request description:

  The "auto-detection" feature is kept in place, but making it an option allows to properly document it. For example, on my machine I get:

  ```
  $ ./test/functional/wallet_disable.py --help | grep previous-releases
    --previous-releases   Force test of previous releases (default: False)

ACKs for top commit:
  Sjors:
    re-tACK fad798b

Tree-SHA512: a7377d0d5378be0a50be278d76396cc403583617b5fc43467773eee706df698acf3f4e67651491183b9b43a8e1816b052e4c17b90272b7ec4b6ac134ad811400
…h BSD/macOS

3a7e794 test: retry when write to a socket fails on macOS (Ivan Metlushko)
8cf9d15 test: use pgrep for better compatibility (Ivan Metlushko)

Pull request description:

  Rationale: a few minor changes to make experience of running tests on macOS a bit better
  1.`pidof` is not available on BSD/macOS, while `pgrep` is present on BSD, Linux and macOS
  2. Add retry as a workaround for a weird behavior when writing to a socket (https://bugs.python.org/issue33450). Stacktrace attached

  Man pages:
  https://www.freebsd.org/cgi/man.cgi?query=pgrep&apropos=0&sektion=1&manpath=FreeBSD+6.0-RELEASE&arch=default&format=html
  https://man7.org/linux/man-pages/man1/pgrep.1.html

  Related to bitcoin#19281

  Stacktrace example:
  ```
  ...
  33/161 - feature_abortnode.py failed, Duration: 63 s

  stdout:
  2020-06-11T10:46:43.947000Z TestFramework (INFO): Initializing test directory /var/folders/2q/d5w9zh614r7g5c8r74ln3g400000gq/T/test_runner_₿_🏃_20200611_174102/feature_abortnode_128
  2020-06-11T10:46:45.199000Z TestFramework (INFO): Waiting for crash
  2020-06-11T10:47:15.921000Z TestFramework (INFO): Node crashed - now verifying restart fails
  2020-06-11T10:47:47.068000Z TestFramework (INFO): Stopping nodes
  [node 1] Cleaning up leftover process

  stderr:
  Traceback (most recent call last):
    File "/Users/xxx/Projects/bitcoin/test/functional/feature_abortnode.py", line 50, in <module>
      AbortNodeTest().main()
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/test_framework.py", line 142, in main
      exit_code = self.shutdown()
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/test_framework.py", line 266, in shutdown
      self.stop_nodes()
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/test_framework.py", line 515, in stop_nodes
      node.stop_node(wait=wait)
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/test_node.py", line 318, in stop_node
      self.stop(wait=wait)
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/coverage.py", line 47, in __call__
      return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs)
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/authproxy.py", line 142, in __call__
      response, status = self._request('POST', self.__url.path, postdata.encode('utf-8'))
    File "/Users/xxx/Projects/bitcoin/test/functional/test_framework/authproxy.py", line 107, in _request
      self.__conn.request(method, path, postdata, headers)
    File "/Users/xxx/.pyenv/versions/3.5.6/lib/python3.5/http/client.py", line 1107, in request
      self._send_request(method, url, body, headers)
    File "/Users/xxx/.pyenv/versions/3.5.6/lib/python3.5/http/client.py", line 1152, in _send_request
      self.endheaders(body)
    File "/Users/xxx/.pyenv/versions/3.5.6/lib/python3.5/http/client.py", line 1103, in endheaders
      self._send_output(message_body)
    File "/Users/xxx/.pyenv/versions/3.5.6/lib/python3.5/http/client.py", line 936, in _send_output
      self.send(message_body)
    File "/Users/xxx/.pyenv/versions/3.5.6/lib/python3.5/http/client.py", line 908, in send
      self.sock.sendall(data)
  OSError: [Errno 41] Protocol wrong type for socket
  ```

ACKs for top commit:
  laanwj:
    ACK 3a7e794

Tree-SHA512: fefbe40ce94ab29f18bbbed2a434194b1384ffa5279b1d04db7a3708e3dd422bd9e450f1db3f95a1a851fac5a626ab533c6ebcfd7ede96f8ccae9e6f3e9fff92
fa23fbb ci: Run all tests on native mac again (MarcoFalke)

Pull request description:

  They should pass again after f6072e6

ACKs for top commit:
  practicalswift:
    ACK fa23fbb -- Travis is happy and so am I

Tree-SHA512: 49c16b6056d4e67d12a202744e1c56fee2788830213fe4a195955ad44c6b8ecce768a591463ffa0048821959a75b6fad4178629a8866c4a26799c4c8c13e933d
…t, and document exceptions

It does not includes changes that actually enable werror by default.
But this backport is necessary to prevent compilation error on mac such as this one:

    In file included from mapport.cpp:26:
    In file included from /builds/dashpay/dash/depends/x86_64-apple-darwin/include/miniupnpc/miniupnpc.h:14:
    /builds/dashpay/dash/depends/x86_64-apple-darwin/include/miniupnpc/upnpdev.h:27:14: error: zero size arrays are an extension [-Werror,-Wzero-length-array]
            char buffer[0];
Copy link
Member

@PastaPastaPasta PastaPastaPasta left a comment

Choose a reason for hiding this comment

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

utACK for merging via merge commit (rebased to bring to latest develop, no diff)

@PastaPastaPasta PastaPastaPasta merged commit 0e314fe into dashpay:develop Jan 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants