Skip to content

Conversation

@CallMeMisterOwl
Copy link
Contributor

@CallMeMisterOwl CallMeMisterOwl commented Oct 5, 2021

Added a function that parses version information from configure.ac into build_msvc/bitcoin_config.h. This is done by default in msvc-autogen.py, so manual changing of build_msvc/bitcoin_config.h is no longer required.
In addition to that I updated the Release Process doc.

Following values are updated:

-CLIENT_VERSION_BUILD
-CLIENT_VERSION_IS_RELEASE
-CLIENT_VERSION_MAJOR
-CLIENT_VERSION_MINOR
-COPYRIGHT_YEAR
-PACKAGE_STRING
-PACKAGE_VERSION

fixes #23073

@CallMeMisterOwl
Copy link
Contributor Author

Sorry for the second pull request, I tried to squash the commits but something went wrong and it ended up with a lot of other commits. This is the fixed version now, hope this works.

@fanquake fanquake changed the title build: fixes #23073 Parse version information in msvc-autogen.py build: Parse version information in msvc-autogen.py Oct 6, 2021
@fanquake
Copy link
Member

fanquake commented Oct 6, 2021

In future, please don't open new Pull Requests for the same change. You should be able to recover your branch. Please combine the change from #23195 into this PR. You'll also need to sqaush your commits here, and write a more cohesive commit message. See the update PR description for an example.

@fanquake fanquake requested a review from sipsorcery October 6, 2021 00:32
@sipsorcery
Copy link
Contributor

@CallMeMisterOwl thx for the PR.

Am I correct that its purpose is to update the version fields in the build_msvc/bitcoin_config.h file with the matching values in configure.ac? If so it would be worth adding that to your PR description. It's a bit light at the moment.

@maflcko
Copy link
Member

maflcko commented Oct 6, 2021

Please squash your commits according to https://github.com/bitcoin/bitcoin/blob/master/CONTRIBUTING.md#squashing-commits

@CallMeMisterOwl
Copy link
Contributor Author

In future, please don't open new Pull Requests for the same change. You should be able to recover your branch.

Got it

Please combine the change from #23195 into this PR. You'll also need to sqaush your commits here, and write a more cohesive commit message. See the update PR description for an example.

Done

@maflcko
Copy link
Member

maflcko commented Oct 6, 2021

The instructions to squash don't work when there are merge commit. You can use something like this instead:

git checkout branch_name
git fetch origin 113b863f0773999497f952daa6539a03a66a9de3
git merge        113b863f0773999497f952daa6539a03a66a9de3
git reset --soft 113b863f0773999497f952daa6539a03a66a9de3
git commit -m 'commit message'
git push origin branch_name -f

@CallMeMisterOwl
Copy link
Contributor Author

Did it work ?

@maflcko
Copy link
Member

maflcko commented Oct 6, 2021

No, you'll need to rebase on latest master now.

Also, you can remove the "Fixes #..." prefix from the commit message and put it into the GitHub pull request description.

@maflcko
Copy link
Member

maflcko commented Oct 6, 2021

Again, a rebase it not possible with merge commits in between (I think), you'll have to repeat the steps of #23198 (comment) with the commit hash of the latest master.

Copy link
Contributor

@sipsorcery sipsorcery left a comment

Choose a reason for hiding this comment

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

Works correctly for me.

@sipsorcery
Copy link
Contributor

The change in this PR works correctly and makes sense. But...

I'm 50-50 on the concept of the Python pre-build script for the msvc build. The original goal of the msvc build was to provide a quick and easy way for Windows devs to build and debug Bitcoin Core, adding the build to the CI was an added benefit. The dilemna is as the Python pre-build script is slowly morphing into a mini build system. It causes me a vague sesne of unease to see the script grow.

That concern noted, I've can only recall seeing two issues over nearly 4 years with devs griping about running the script so it doesn't seem to have translated into a pain point so far. This PR removes a manual step in the Bitcoin Core release process and therefore is a good idea.

tACK 8be91af6315b1d8b09a80fa35154ff453fbc9595.

@maflcko
Copy link
Member

maflcko commented Oct 13, 2021

Concept ACK. Seems ok to simplify the release process without complicating other steps.

@maflcko
Copy link
Member

maflcko commented Oct 13, 2021

@laanwj As you opened the issue, do you think this is ready for merge?

@laanwj
Copy link
Member

laanwj commented Oct 27, 2021

It causes me a vague sesne of unease to see the script grow.

I would agree in general. We definitely don't want to invent yet another meta-build system. But for this specifically it's quite an annoyance for every release to have to update these things manually. The reason it's not forgotten more often is because I wrote another python script (https://github.com/bitcoin-core/bitcoin-maintainer-tools/blob/master/make-tag.py) to check everything before making a tag. Most of that script can go after this, so I definitely see this as progress.

@CallMeMisterOwl CallMeMisterOwl force-pushed the auto_gen_issue branch 2 times, most recently from cffc379 to 1876c69 Compare November 14, 2021 13:54
@laanwj
Copy link
Member

laanwj commented Nov 15, 2021

Code review and lightly tested ACK 410f99f
Thank you!

@laanwj laanwj merged commit 2efc8c0 into bitcoin:master Nov 15, 2021
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Nov 15, 2021
@CallMeMisterOwl
Copy link
Contributor Author

Thank you!

Pleasure contributing to this beautiful project 😉

@CallMeMisterOwl CallMeMisterOwl deleted the auto_gen_issue branch November 15, 2021 17:42
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Nov 16, 2021
laanwj added a commit to bitcoin-core/bitcoin-maintainer-tools that referenced this pull request Mar 1, 2022
The MSVC check is no longer necessary as of bitcoin/bitcoin#23198,
which generates the version information by parsing `configure.ac`.

(we like want to backport that 22.1 as well, before the next
minor release there, to avoid needing three variants of the make-tag
script)
laanwj added a commit to bitcoin-core/bitcoin-maintainer-tools that referenced this pull request Mar 22, 2022
e4ba90f make-tag: Remove MSVC check (laanwj)

Pull request description:

  The MSVC check is no longer necessary as of bitcoin/bitcoin#23198, which generates the version information by parsing `configure.ac`.

  (we likely want to backport that to 22.1 as well, to avoid needing three variants of the make-tag script)

Top commit has no ACKs.

Tree-SHA512: 408e3cad8da718b9c57f68756183c7cfb38883b266402d13d25abc8da8b18e849d84b1dcf4ae45b4c5e2ae66fca4aa288a0e1c3f7439b75a8205adbaf8648263
@bitcoin bitcoin locked and limited conversation to collaborators Nov 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Auto-generate MSVC version information

6 participants