[Clipart] Re: Document-Manager 0.06
bryce at bryceharrington.com
Sun Aug 15 17:11:32 PDT 2004
Okay, version 0.05 and version 0.06 should be available on CPAN shortly.
Changes for version 0.05 are addition of several tests:
For 0.06, there are a number of new features added, and scripts to
New/changed Document::Repository features:
* _init() - creates a new repository
* _iterate_doc_ids() - recursively iterates through docs to run a
user defined function against them
* put() - adds a new revision to existing document
* documents() - now calls _iterate_doc_ids() to retrieve doc_ids
* revisions() - lists revisions for a file; fixed several bugs
* files() - lists files in a given document revision
* repository_path() - removed handling of revisions
* current_revision() - returns the current rev of doc_id
* add() - now calls put() to do the actual file insertion
New admin scripts:
* repo_init - creates a new repository
* repo_put - adds a new revision to an existing document
* repo_ls - lists revisions and files for docs
* repo_export - exports files from selected/all docs from repo
The scripts are all very simple and basically just handle cmdline args,
with the real action being done in corresponding Document::Repository
These changes provide the underlying core functionality for the
Document-Manager package. However, since it does not yet handle
metadata or searching, it's not really useful, so it's not worth
deploying into production. However, now a LOT of the core is in place,
and I can start focusing on Document::Manager properly, and build the
next layer of functionality. :-)
(Yeesh, is it Sunday evening already??)
On Sun, 15 Aug 2004, Bryce Harrington wrote:
> Document-Manager version 0.04 has been uploaded to CPAN and will be
> available there within a few hours. The main change is that it adds a
> 'repo_get' tool for retrieving documents from the system, given their
> On Sun, 15 Aug 2004, Bryce Harrington wrote:
> > I've released a new version of the Document-Manager package to CPAN.
> > It's far from complete but has received a huge amount of development.
> > It should be available on CPAN within a few hours.
> > I've split the original code into two modules: Document::Repository and
> > Document::Manager. The former is the underlying core that performs the
> > low-level operations on the repository and presents a simple API for
> > interacting with it such as add() and get(). Document::Manager will
> > provide a higher level interface that wraps Document::Repository and
> > adds concepts such as locking, properties, and searching.
> > For this release I mainly focused on fleshing out Document::Repository.
> > I also added a script, 'repo_add', that tests out the add() function.
> > It can be used like this:
> > $ mkdir ~/DMS
> > $ echo 'foo' > foo
> > $ repo_add foo -R ~/DMS
> > Created document id '17'
> > Since no access control is available yet, repo_add can be considered an
> > administrative script.
> > The default location for the repository is /var/dms, but it can be
> > overridden by the -R flag as shown above.
> > Document::Repository also includes some other routines: get(),
> > documents(), revisions(), and stats().
> > Bryce
More information about the clipart