1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
=== Importing a new upstream version ===
Upstream's documentation generates contributor information from the git history. As this obviously does not work in a Debian package build, it is patched out with contributor_list_not_in_tarball.patch and replaced with a file debian/contributors_list.txt.
To import a new upstream release and update this file, assuming you have a checkout of the Debian package at ~/Debian/sourcepkgs/pandas and a checkout of upstream's repository at ~/Debian/upstreams/pandas:
#update this: export version=1.5.1
cd ~/Debian/sourcepkgs/pandas
GBP_CONF_FILES=~/.gbp.conf gbp import-orig --upstream-branch=upstream --debian-branch=main --uscan --pristine-tar
echo "Current to version ${version} (generated by git shortlog -ns)" > debian/contributors_list.txt
echo "There may be multiple entries for the same person if they have used more than one (form of their) name" >> debian/contributors_list.txt
echo "https://github.com/pandas-dev/pandas/graphs/contributors" >> debian/contributors_list.txt
echo "" >> debian/contributors_list.txt
cd ~/Debian/upstreams/pandas
git pull
git checkout v${version}
git shortlog -ns >> ~/Debian/sourcepkgs/pandas/debian/contributors_list.txt
git checkout main
cd ~/Debian/sourcepkgs/pandas
echo "" >> debian/contributors_list.txt
echo "Debian packaging" >> debian/contributors_list.txt
git shortlog -ns -- debian >> debian/contributors_list.txt
=== Circular dependencies and bootstrapping ===
pandas build-depends on itself on arch:all (via pyreadstat/statsmodels/xarray), and matplotlib and pandas build-depend on each other on all architectures.
* For Python interpreter version transitions, where the old package is installable but not importable in all Python versions, this should not be a problem as the tests that use it are automatically skipped. I think either ordering of pandas and matplotlib should work, but I'm unsure of that, so if one fails it may be worth trying the other ordering.
* In some other transitions, or after a pandas upload where one of arch:amd64 and arch:all succeeds and the other fails, pandas may become BD-Uninstallable. This can be worked around by building with the nocheck *and* nodoc build profiles. As the resulting pandas will be missing most of python-pandas-doc, please follow this with a normal build.
* In both cases, build pandas before statsmodels.
|