Fix a crash when using Subvertpy 0.11.

Review Request #11725 — Created July 15, 2021 and submitted — Latest diff uploaded

Information

Review Board
release-4.0.x

Reviewers

Subvertpy 0.11 introduced some new logic in client.propget() that
normalizes a path to an absolute path. This in turn triggers an eventual
assertion failure in libsvn, which checks to make sure a full repository
URL wasn't passed in (somewhere). This was not a problem in Subvertpy
0.10 (which also didn't have this path normalization).

The problem applies only to propget(), and thankfully does not apply
to proplist(). To work around this crash, we're now calling
proplist() and filtering results from that. This method avoids the
path normalization that broke us, and provides the same results.

The Subvertpy bug is tracked at: https://github.com/jelmer/subvertpy/issues/35

Unit tests pass on Python 2 and 3, against Subverpty 0.10 and 0.11.

Diff Revision 1

This is not the most recent revision of the diff. The latest diff is revision 2. See what's changed.

orig
1
2

Commits

First Last Summary ID Author
Fix a crash when using Subvertpy 0.11.
Subvertpy 0.11 introduced some new logic in `client.propget()` that normalizes a path to an absolute path. This in turn triggers an eventual assertion failure in libsvn, which checks to make sure a full repository URL wasn't passed in (somewhere). This was not a problem in Subvertpy 0.10 (which also didn't have this path normalization). The problem applies only to `propget()`, and thankfully does not apply to `proplist()`. To work around this crash, we're now calling `proplist()` and filtering results from that. This method avoids the path normalization that broke us, and provides the same results. The Subvertpy bug is tracked at: https://github.com/jelmer/subvertpy/issues/35
4193461aae1cbe32f65bbe957efc601f7defe509 Christian Hammond
reviewboard/scmtools/svn/subvertpy.py
Loading...