Básicamente quiero el mismo comportamiento que correr:
log = client.log(url) oldestEntry = log[-1]
Excepto sin tener que download todo el logging. Sé configurar
limit=1
te permite encontrar la input más nueva. ¿Hay alguna forma de limitar desde el order inverso?
Invierta el order de revision_start
y revision_end
y establezca el limit
en 1:
import pysvn url='http://svn.apache.org/repos/asf/httpd/httpd/trunk/README' epoch = pysvn.Revision(pysvn.opt_revision_kind.number, 0) head = pysvn.Revision(pysvn.opt_revision_kind.head) client = pysvn.Client() # Get all entries l = client.log(url) print len(l), l[0].revision, l[-1].revision # Get most recent entry: l = client.log(url, limit=1) print len(l), l[0].revision # Get most recent entry, again: l = client.log(url, revision_start=head, revision_end=epoch, limit=1) print len(l), l[0].revision # Get least recent entry l = client.log(url, revision_start=epoch, revision_end=head, limit=1) print len(l), l[0].revision
El resultado es:
22 <Revision kind=number 1209505> <Revision kind=number 87470> 1 <Revision kind=number 1209505> 1 <Revision kind=number 1209505> 1 <Revision kind=number 87470>