Skip to main content

UNKNOWN

Project description

tha.tagfinder

tha.tagfinder is a library for finding trunks and tags in an svn hierarchy. Including options for not descending into specific directories and so.

More details in src/tha/tagfinder/USAGE.txt .

Usage of tha.tagfinder

The goal of tha.tagfinder is to traverse though an svn structure and return tags and trunks.

Three imports are needed:

>>> from tha.tagfinder import extracter
>>> from tha.tagfinder import finder
>>> from tha.tagfinder import lister

You need a startpoint, which is either an svn url or a directory name. Our test fixture provides an svn repository:

>>> repo_url
'file://.../repo'

Give your startpoint to a lister, in this case an SvnLister, with an optional list of directory names that should be ignored:

>>> startpoint = lister.SvnLister(repo_url, ignore=['sandbox'])

Choose an extractor. Normally the BaseExtracter, but you can subclass it:

>>> info_extracter = extracter.BaseExtracter

Lastly, set up a finder with the startpoint and the extractor. Optionally pass in stop_indicators that, when found in a directory, will stop the finder from recursing in that directory:

>>> info = finder.Finder(startpoint, info_extracter,
...                      stop_indicators=[])

The main usage is to query this info object for the projects it has found:

>>> print(info.projects)
[<tha.tagfinder.extracter.BaseExtracter object at ...,
 <tha.tagfinder.extracter.BaseExtracter object at ...]

Every project object has attributes that are provided by the extracter. So subclass the extracter if you need extra attributes of your own:

>>> project = info.projects[1]
>>> project.name
'project1'
>>> project.location
'file://.../repo/project1'
>>> project.tags
['0.1', '0.2', '0.3-bugfix']
>>> project.tag_location('0.2')
'file://.../repo/project1/tags/0.2'

TODO

  • Nothing at the moment.

Changelog of tha.tagfinder

1.0 (2009-10-06)

  • Working around a difference when running the test from an svn checkout and when running them from a released egg. [reinout]

0.4 (2009-10-06)

  • Fixed test-all setup. [reinout]

  • Added small files to currently-empty directories in the test fixture to prevent them from being omitted in the egg. [reinout]

0.3 (2009-10-05)

  • Preparing for pypi release by removing some internal The Health Agency development tools. [reinout]

0.2 (2009-10-05)

  • Updated documentation with a basic example in USAGE.txt. [reinout]

0.1 (2009-10-05)

  • Copied most of the original tha.taglist code, but cleaned up and tested. [reinout]

  • Initial library skeleton created by thaskel. [reinout]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tha.tagfinder-1.0.tar.gz (13.3 kB view details)

Uploaded Source

File details

Details for the file tha.tagfinder-1.0.tar.gz.

File metadata

  • Download URL: tha.tagfinder-1.0.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tha.tagfinder-1.0.tar.gz
Algorithm Hash digest
SHA256 851b8da95ab7fb0cf4783ae6187c2cc1dd3f4bf98cde7b4a1b9c778acf054230
MD5 612417366a6c31889329dd22256d46e3
BLAKE2b-256 c507197c9f72d575a615011aae3547ccd3af9b8569584df99a85479ad13298a8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page