~james-w/desktopcouch/0.4.1

« back to all changes in this revision

Viewing changes to README

  • Committer: Bazaar Package Importer
  • Author(s): Ken VanDine, Ken VanDine, Elliot Murphy, Martin Pitt
  • Date: 2009-08-27 15:32:11 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20090827153211-oi7m8c1yj918u082
Tags: 0.3-0ubuntu1
[ Ken VanDine ]
* New upstream release (LP: #416591)
  - added unit tests for couchwidget, and then fixed bug #412266
  - Change to freedesktop URL for record type spec.
  - First version of the contacts picker, based on CouchWidget
  - Adding the desktopcouch.contacts module.
  - Use subprocess.Popen and ourselves to the wait()ing, 
    since subprocess.call() is buggy.  There's still an EINTR bug 
    in subprocess, though.
  - Occasionally stop couchdb in tests, so we exercise the automatic 
    starting code.  This will lead to spurious errors because of the 
    aforementioned subprocess bug, but it's the right thing to do.
  - Abstract away some of the linuxisms and complain if we're run on 
    an unsupported OS.
  - Fix a race condition in the process-testing code.
  - Replace the TestCase module with one that doesn't complain of dirty 
    twisted reactors.
  - Add a means of stopping the desktop couchdb daemon.
  - Add an additional check that a found PID and process named correctly 
    is indeed a process that this user started, so we don't try to talk 
    to other local users' desktop couchdbs.
  - Get the port at function-call time, instead of storing a port at
    start-time and giving that back. The info can be stale, the old
    way.
  - Don't create a view per record-type; instead, call the standard 
    return-all-records-keyed-by-record-type and use slice notation on 
    the viewresults to only get back the records with that type, 
    which does the same thing but more elegantly.
  - Remove the unused/invalid "utils" import from test_server
  - Change the name of a function tested to be what actually exists in 
    the code.
  - Refactored server.py by renaming server.get_records_and_type to 
    server.get_records. Also modified the function to take a record 
    type param if desired to only create records of that type and 
    optionally create a view name "get_"+ record_type. (LP: #411475)
* debian/control
  - Make python-desktopcouch depend on python-gtk2 and python-gnomekeyring
  - Make python-desktopcouch-records depend on python-gtk2, 
    python-gnomekeyring, and python-oauth.
  - Remove depends for python-distutils-extra
  - Fixed Vcs-Browser tag

[Elliot Murphy]
* debian/control: added build-dep on python-setuptools


[ Martin Pitt ]
* debian/control: Fix Vcs-* links.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
This is desktopcouch.
 
1
This is Desktop Couch, an infrastructure to place a CouchDB on every desktop
 
2
and provide APIs and management tools for applications to store data within
 
3
it and share that data between computers and to the cloud.
 
4
 
 
5
= Technical notes =
 
6
 
 
7
== Creating databases, design documents, and views ==
 
8
 
 
9
Desktop Couch will automatically create databases and design documents for you
 
10
on startup by inspecting the filesystem, meaning that you do not need to check
 
11
in your application whether your views exist. It is of course possible to create
 
12
views directly through the Records API, but having them created via the 
 
13
filesystem allows managing of the view definitions more easily (they are
 
14
in separately editable files, which helps with version control) and packaging
 
15
(the files can be separately stored in a distribution package and installed
 
16
into the system-level XDG_DATA_DIR rather than the user-level folder).
 
17
 
 
18
=== To create a database ===
 
19
 
 
20
Create a file $XDG_DATA_DIR/desktop-couch/databases/YOUR_DB_NAME/database.cfg
 
21
 
 
22
This file can currently be empty (in future it may contain database setup and
 
23
configuration information). 
 
24
 
 
25
=== To create a design document ===
 
26
 
 
27
Create a file 
 
28
$XDG_DATA_DIR/desktop-couch/databases/YOUR_DB_NAME/_design/DESIGN_DOC_NAME/views/VIEW_NAME/map.js
 
29
containing the map function from your view.
 
30
If you also require a reduce function for your view, create a file 
 
31
$XDG_DATA_DIR/desktop-couch/databases/YOUR_DB_NAME/_design/DESIGN_DOC_NAME/views/VIEW_NAME/reduce.js.
 
32
 
 
33
This is compatible with the filesystem view structure from CouchApp and 
 
34
CouchDBKit.
 
35