libbitcoin / libbitcoin-explorer

Bitcoin Command Line Tool
Other
600 stars 176 forks source link

libbitcoin-explorer 3.7.0 build issue #730

Closed chenrui333 closed 1 year ago

chenrui333 commented 1 year ago

libbitcoin-explorer 3.7.0 requires libbitcoin-client >= 3.7.0, but there is no libbitcoin-client 3.7.0 release, did I miss anything?

relates to https://github.com/Homebrew/homebrew-core/pull/139514

cc @kulpreet

evoskuil commented 1 year ago

It seems that the versioning (xml metadata) was also bumped for bx dependencies.

kulpreet commented 1 year ago

We are looking into this with @pmienk

kulpreet commented 1 year ago

@pmienk explained to me that without updating the build output for explorer, it is trying to get the same version number as itself for other libs. This seems to be the behaviour for the past couple of releases.

We have two options:

  1. Rollback v3.7.0 on explorer.
  2. Ship new versions for all other libs to match explorer's version.

I like 1, cause it is less destructive. We can figure out how to decouple versions and/or do 2. later once you are settled in have internet.

evoskuil commented 1 year ago

It’s been a while since I looked at versioning, but I thought we were decoupled and the consistency across repo versions was only a convention (and possibly a default). But if that’s not the case I agree, 1 is less disruptive - just remove the tag until we bump the version.

kulpreet commented 1 year ago

Removed the v3.7.0 release and tag. Posted on the related issue on homebrew-core. Waiting to see if the issue is auto-resolved or @chenrui333 needs to do something to clear that out.

pmienk commented 1 year ago

@kulpreet, @evoskuil - As the last versioned release v3.6.0 across all repositories was performed in 2019, there have been significant changes which will prevent the current master of libbitcoin-explorer from compiling against the previous releases. There are 133 changes from v3.6.0 in libbitcoin-system alone. While many are build tooling changes, there are a significant number of code changes that will prevent building on updated compilers.

For consistency, I would advocate for pushing v3.7.0 across all repositories after poking CI to reconfirm their success.

ZenulAbidin commented 1 year ago

@pmienk explained to me that without updating the build output for explorer, it is trying to get the same version number as itself for other libs. This seems to be the behaviour for the past couple of releases.

We have two options:

  1. Rollback v3.7.0 on explorer.
  2. Ship new versions for all other libs to match explorer's version.

I like 1, cause it is less destructive. We can figure out how to decouple versions and/or do 2. later once you are settled in have internet.

Is it not possible to modify the build system parameters in the long term so that different versions of libbitcoin libraries can be pulled at the same time?

That would avoid dependency hell of synchronizing multiple projects to the same release.

evoskuil commented 1 year ago

One can always pull whatever version he wants, but the libraries must be compatible. The reason for versioning is in part to manage incompatibility.

pmienk commented 1 year ago

Builds verifying version3 HEAD (with explicit dependency upon v3.7.0):

pmienk commented 1 year ago

Issue resolved by coordinated v3.8.0 release.