Skip to content

Commit 3fb04ac

Browse files
authored
Merge pull request #415 from StochasticTree/version-bump-0.4.6-dev
Bump version to 0.4.6.9000
2 parents 2fc312a + bfc8328 commit 3fb04ac

7 files changed

Lines changed: 52 additions & 15 deletions

File tree

DESCRIPTION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Package: stochtree
22
Title: Stochastic Tree Ensembles (XBART and BART) for Supervised Learning and Causal Inference
3-
Version: 0.4.5
3+
Version: 0.4.6.9000
44
Authors@R:
55
c(
66
person("Drew", "Herren", email = "drewherrenopensource@gmail.com", role = c("aut", "cre"), comment = c(ORCID = "0000-0003-4109-6611")),

Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ PROJECT_NAME = "StochTree"
4848
# could be handy for archiving the generated documentation or if some version
4949
# control system is used.
5050

51-
PROJECT_NUMBER = 0.4.5
51+
PROJECT_NUMBER = 0.4.6.9000
5252

5353
# Using the PROJECT_BRIEF tag one can provide an optional one line description
5454
# for a project that appears at the top of each page and should give viewer a

NEWS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# stochtree 0.4.6.9000
2+
13
# stochtree 0.4.5
24

35
## Bug Fixes

RELEASING.md

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ This document describes the end-to-end process for releasing a new version of st
3838
- No empty version section in `NEWS.md` (CRAN will flag this)
3939
- `MANIFEST.in` includes any new C++ dependency header trees added since the last release
4040
- All tests pass locally (`source venv/bin/activate && python -m pytest` and `NOT_CRAN=true Rscript -e "devtools::load_all('.'); testthat::test_dir('test/R/testthat')"`)
41+
- If sampler output changed this cycle, regenerate the reproducibility references under `tools/reproducibility/{R,python}` and confirm the `reproducibility_check` workflow **fails on drift** against the new references. (A stale-reference / lenient-check mismatch caused a post-tag follow-up in 0.4.5.)
4142

4243
---
4344

@@ -81,6 +82,13 @@ git push origin --delete v0.4.2
8182

8283
Then you can start a new draft and pre-release it as above
8384

85+
## Do post-tag fixes need a re-tag?
86+
87+
When a fix lands on `main` after the release tag is cut, decide by what it touches:
88+
89+
- **Re-tag** if it changes anything shipped in the R/Python packages — `R/`, `src/`, `stochtree/`, the version files, or `NEWS.md`.
90+
- **Leave the tag** if it only touches things outside the distributed packages — CI workflows, `tools/reproducibility/` references, benchmarks, docs-site config. The tagged artifact is unchanged, so moving the tag buys nothing. (In 0.4.5, a CI-only reproducibility fix landed post-tag and was correctly left out of the release.)
91+
8492
## Updating a full release (minor fixes after promotion)
8593

8694
For small fixes (doc corrections, man page updates, typos) discovered after promoting to a full release, delete-and-recreate is overkill. Instead, merge the fix to `main` and force-move the tag:
@@ -143,9 +151,36 @@ Review the Actions tab for results. If a check fails, fix the issue on `main`, t
143151
Promoting the pre-release to a full release fires `published`, which:
144152

145153
- **Automatically updates the `r-dev` branch** (via `r-cran-branch.yml`) and tags the R release as `r-x.y.z` (which from 0.4.2-on is a git tag but not a separate github release)
146-
- **Triggers wheel builds** (via `pypi-wheels.yml`); PyPI publication is currently a **manual step** — download the wheel artifacts from the Actions run and upload via `twine upload dist/*`. Setting up [PyPI trusted publishing](https://docs.pypi.org/trusted-publishers/) (OIDC) will automate this and in upcoming release cycles.
154+
- **Triggers wheel builds** (via `pypi-wheels.yml`); PyPI publication is currently a **manual step** — see [PyPI publication](#pypi-publication-manual) below.
155+
156+
**How (UI):** Edit the pre-release → uncheck **"Set as a pre-release"** → click **"Update release"**.
157+
158+
**How (CLI):**
159+
160+
```bash
161+
gh release edit vx.y.z --repo StochasticTree/stochtree --prerelease=false --latest
162+
```
163+
164+
`--latest` forces the "Latest" badge (and `/releases/latest` redirect) onto this release rather than relying on GitHub's auto-detection. A release cannot be both prerelease and latest, so these two flags work together. This does not affect which workflows fire — the `published`/`released` events trigger regardless.
165+
166+
### PyPI publication (manual)
167+
168+
After promotion, the `pypi-wheels.yml` run on the `published` event builds the per-platform **wheels** as artifacts (it does **not** build an sdist). Download the wheels, build the sdist locally, then upload both:
169+
170+
```bash
171+
# 1. download the wheel artifacts from the release run
172+
# find the run id (event=release, workflow "Build Python Wheels for PyPI")
173+
gh run list --repo StochasticTree/stochtree --event release
174+
gh run download <run-id> --repo StochasticTree/stochtree --dir dist_wheels
175+
176+
# 2. build the sdist locally (the CI workflow does not produce one)
177+
rm -rf dist && pipx run build --sdist
178+
179+
# 3. upload wheels + sdist
180+
twine upload dist_wheels/**/*.whl dist/*.tar.gz
181+
```
147182

148-
**How:** Edit the pre-release → uncheck **"Set as a pre-release"** → click **"Update release"**.
183+
Confirm `x.y.z` appears at https://pypi.org/project/stochtree/. Setting up [PyPI trusted publishing](https://docs.pypi.org/trusted-publishers/) (OIDC) will automate this in an upcoming release cycle.
149184

150185
---
151186

configure

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.72 for stochtree 0.4.5.
3+
# Generated by GNU Autoconf 2.72 for stochtree 0.4.6.9000.
44
#
55
#
66
# Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation,
@@ -600,8 +600,8 @@ MAKEFLAGS=
600600
# Identity of this package.
601601
PACKAGE_NAME='stochtree'
602602
PACKAGE_TARNAME='stochtree'
603-
PACKAGE_VERSION='0.4.5'
604-
PACKAGE_STRING='stochtree 0.4.5'
603+
PACKAGE_VERSION='0.4.6.9000'
604+
PACKAGE_STRING='stochtree 0.4.6.9000'
605605
PACKAGE_BUGREPORT=''
606606
PACKAGE_URL=''
607607

@@ -1204,7 +1204,7 @@ if test "$ac_init_help" = "long"; then
12041204
# Omit some internal or obsolete options to make the list less imposing.
12051205
# This message is too long to be a string in the A/UX 3.1 sh.
12061206
cat <<_ACEOF
1207-
'configure' configures stochtree 0.4.5 to adapt to many kinds of systems.
1207+
'configure' configures stochtree 0.4.6.9000 to adapt to many kinds of systems.
12081208
12091209
Usage: $0 [OPTION]... [VAR=VALUE]...
12101210
@@ -1266,7 +1266,7 @@ fi
12661266

12671267
if test -n "$ac_init_help"; then
12681268
case $ac_init_help in
1269-
short | recursive ) echo "Configuration of stochtree 0.4.5:";;
1269+
short | recursive ) echo "Configuration of stochtree 0.4.6.9000:";;
12701270
esac
12711271
cat <<\_ACEOF
12721272
@@ -1334,7 +1334,7 @@ fi
13341334
test -n "$ac_init_help" && exit $ac_status
13351335
if $ac_init_version; then
13361336
cat <<\_ACEOF
1337-
stochtree configure 0.4.5
1337+
stochtree configure 0.4.6.9000
13381338
generated by GNU Autoconf 2.72
13391339
13401340
Copyright (C) 2023 Free Software Foundation, Inc.
@@ -1371,7 +1371,7 @@ cat >config.log <<_ACEOF
13711371
This file contains any messages produced by compilers while
13721372
running configure, to aid debugging if configure makes a mistake.
13731373
1374-
It was created by stochtree $as_me 0.4.5, which was
1374+
It was created by stochtree $as_me 0.4.6.9000, which was
13751375
generated by GNU Autoconf 2.72. Invocation command line was
13761376
13771377
$ $0$ac_configure_args_raw
@@ -2380,7 +2380,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
23802380
# report actual input values of CONFIG_FILES etc. instead of their
23812381
# values after options handling.
23822382
ac_log="
2383-
This file was extended by stochtree $as_me 0.4.5, which was
2383+
This file was extended by stochtree $as_me 0.4.6.9000, which was
23842384
generated by GNU Autoconf 2.72. Invocation command line was
23852385
23862386
CONFIG_FILES = $CONFIG_FILES
@@ -2435,7 +2435,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
24352435
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
24362436
ac_cs_config='$ac_cs_config_escaped'
24372437
ac_cs_version="\\
2438-
stochtree config.status 0.4.5
2438+
stochtree config.status 0.4.6.9000
24392439
configured by $0, generated by GNU Autoconf 2.72,
24402440
with options \\"\$ac_cs_config\\"
24412441

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# https://github.com/microsoft/LightGBM/blob/master/R-package/configure.ac
44

55
AC_PREREQ(2.69)
6-
AC_INIT([stochtree], [0.4.5], [], [stochtree], [])
6+
AC_INIT([stochtree], [0.4.6.9000], [], [stochtree], [])
77
# Note: consider making version number dynamic as in
88
# https://github.com/microsoft/LightGBM/blob/195c26fc7b00eb0fec252dfe841e2e66d6833954/build-cran-package.sh
99

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"
99

1010
[project]
1111
name = "stochtree"
12-
version = "0.4.5"
12+
version = "0.4.6-dev"
1313
dependencies = [
1414
"matplotlib",
1515
"numpy",

0 commit comments

Comments
 (0)