David Larlet is sharing code with you

Bitbucket is a code hosting site. Unlimited public and private repositories. Free for small teams.

Don't show this again

david / django-roa http://welldev.org/

Turn your models into remote resources that you can access through Django's ORM. ROA stands for Resource Oriented Architecture.

Clone this repository (size: 579.8 KB): HTTPS / SSH
hg clone https://bitbucket.org/david/django-roa
hg clone ssh://hg@bitbucket.org/david/django-roa

Searching for commits

Mercurial supports a functional language for selecting a set of revisions.

The language supports a number of predicates which are joined by infix operators. Parenthesis can be used for grouping.

Identifiers such as branch names must be quoted with single or double quotes if they contain characters outside of [._a-zA-Z0-9\x80-\xff] or if they match one of the predefined predicates.

Prefix operators

not x
Changesets not in x. Short form is ! x.

Infix operators

x::y

A DAG range, meaning all changesets that are descendants of x and ancestors of y, including x and y themselves. If the first endpoint is left out, this is equivalent to ancestors(y), if the second is left out it is equivalent to descendants(x).

An alternative syntax is x..y.

x:y
All changesets with revision numbers between x and y, both inclusive. Either endpoint can be left out, they default to 0 and tip.
x and y
The intersection of changesets in x and y. Short form is x & y.
x or y
The union of changesets in x and y. There are two alternative short forms: x | y and x + y.
x - y
Changesets in x but not in y.

Predicates

all()
All changesets, the same as 0:tip.
ancestor(single, single)
Greatest common ancestor of the two changesets.
ancestors(set)
Changesets that are ancestors of a changeset in set.
author(string)
Alias for user(string).
bookmark([name])
The named bookmark or all bookmarks.
branch(set)
All changesets belonging to the branches of changesets in set.
children(set)
Child changesets of changesets in set.
closed()
Changeset is closed.
date(interval)
Changesets within the interval, see hg help dates.
descendants(set)
Changesets which are descendants of changesets in set.
file(pattern)
Changesets affecting files matched by pattern.
follow()
An alias for ::. (ancestors of the working copy's first parent).
grep(regex)
Like keyword(string) but accepts a regex. Use grep(r'...') to ensure special escape characters are handled correctly.
head()
Changeset is a named branch head.
heads(set)
Members of set with no children in set.
id(string)
Revision non-ambiguously specified by the given hex string prefix.
keyword(string)
Search commit message, user name, and names of changed files for string.
limit(set, n)
First n members of set.
max(set)
Changeset with highest revision number in set.
merge()
Changeset is a merge changeset.
min(set)
Changeset with lowest revision number in set.
p1([set])
First parent of changesets in set, or the working directory.
p2([set])
Second parent of changesets in set, or the working directory.
parents([set])
The set of all parents for all changesets in set, or the working directory.
present(set)
An empty set, if any revision in set isn't found; otherwise, all revisions in set.
rev(number)
Revision with the given numeric identifier.
roots(set)
Changesets with no parent changeset in set.
tag(name)
The specified tag by name, or all tagged revisions if no name is given.
user(string)
User name is string.

Commits 61–90 of 174

Author Revision Comments Message Labels Date
David Larlet e2fb48432d20 Add some tests for named relations to verify that it works well.
David Larlet a9e848860ab8 Update to py-restclient 1.3.3 (one print statement removed though)
David Larlet ed6f22b19a91 Update to the latest piston's tip
David Larlet 04be5541260b Do not parse Django's error messages if this is not an HTML file (useful for Bad requests and so on)
David Larlet 2d762d71269b RemoteQuerySet.extra is required to handle the "cute trick" in ModelForm (and admin) for unique and date constraints. I'm not proud of this solution, but it works...
David Larlet 3e1f7407f9d4 Add setuptools information, hello pypi
David Larlet 296a913309d2 Added tag 1.3 for changeset 284eed2d8a4b
David Larlet 284eed2d8a4b Getting ready for 1.3 release, open source ftw
Tag
1.3
David Larlet 9cca1050bfdd Retrieve a resource instead of a collection in case of .get(id=X) queryset
David Larlet 037fd359de5d Handle m2m relations in a RESTful way
David Larlet d4582e6ef23b Fix a couple of count-related issues due to the switch to dedicated resource/url
David Larlet c78b9ca46031 Move tests to example application
David Larlet 1e5967d1b63e Convert doctests to unittests
David Larlet 512d6f021f52 Update django-piston to 0.2.1
David Larlet ba4aefa73f09 Added some tests for unicode and forms
David Larlet 710990a31736 Even better with force_unicode
David Larlet f4500f9e03d5 Handle unicode, need tests but switch to unit tests is required before
David Larlet 191e2ca9332e Handle deserialization the right way
David Larlet cb7e669205e4 Custom deserializer of an object allowed
David Larlet 0a19bb6cbc20 Better wording to serialize an object, I thought this method already exist...
David Larlet 4a061244338e Counting no more rely on an HTTP parameter, now it must be set as a new resource with a dedicated URL (get_resource_url_count)
David Larlet 4642469a663c Typo, need tests in main repository
David Larlet 218cb297f6f0 Added the ability to serialize data for POST/PUT requests
David Larlet c8797384a5ff More logging, for parameters
David Larlet 55aa123c5ab9 Added more logging and move configuration in settings
David Larlet db83bd1879cd Add support for custom arguments passed to URLs in settings
David Larlet 38f97c7ca6e9 Add a command to introspect models, useful to create resources on server side
David Larlet d4bcd082a708 Mapping of parameters' names possible in settings
David Larlet e5e66d92e3f1 Use DjangoEmitter from piston's tip, adapted for logging
David Larlet c2ae3a5a551e Refactor Django's emitter to ease subclassing
  1. «
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. »