Commit graph

94 commits

Author SHA1 Message Date
Chris Anderson
09dcc9e5c2 Revert "Server URI can now include a prefix to the database name"
This reverts commit 14acd95444.
2009-03-31 12:24:04 -07:00
Brian Candler
14acd95444 Server URI can now include a prefix to the database name 2009-03-27 10:27:04 -07:00
Brian Candler
190bd13723 Escape slash in database name 2009-03-27 10:26:54 -07:00
Brian Candler
aabf097e88 Tidying up spec, remove unnecessary assignments to local variable 2009-03-27 11:44:09 +00:00
Brian Candler
ec7848b783 Multiple database support for ExtendedDocument.
New optional parameters are available to select the database:

Mixins::DocumentQueries
  * get <id>, <db>
  * all :database => <db>
  * first :database => <db>

Mixins::Views
  * view <name>, :database => <db>
  * all_design_doc_versions <db>
  * cleanup_design_docs! <db>

Mixins::DesignDoc
  * refresh_design_doc now only updates the design_doc _id and removes _rev
  * call save_design_doc to save and update the design_doc
  * call save_design_doc_on <db> to save the design doc on a given
    database without modifying the model's design_doc object

Design (core/design.rb)
  * new method view_on <db>, ...

Bug fixes:
  * design_doc_slug in mixins/design_doc.rb was using an empty document
    to calculate the slug each time
  * method_missing in core/extended_document.rb now passes a block through
2009-03-27 11:27:37 +00:00
Geoff Buesing
4d8314124b Remove CouchRest.move, CouchRest::Database#move and #move_doc, because these methods are no longer supported by CouchDB
Ref: http://n2.nabble.com/Removing-MOVE-td2490780.html#a2490780
2009-03-18 11:22:49 -05:00
Chris Anderson
36c8bea453 all specs pass against couchdb trunk 2009-03-15 13:00:47 -07:00
Chris Anderson
f8e8686537 fixed db spec 2009-02-27 10:58:48 -08:00
Matt Aimonetti
80317f31a5 fixed the uuid count for the latest version of couchdb
also avoided CONSTANTS warnings, cleaned up the attachment specs, added missing fixtures
2009-02-25 00:22:11 -08:00
Matt Aimonetti
fe489f2d38 removed CouchRest::Model, added more specs and fixed a bug with casted CR::ExtendedDocument 2009-02-24 22:51:13 -08:00
Matt Aimonetti
bc47e72ae0 fixed a bug with the casting of time objects 2009-02-09 15:12:22 -08:00
Matt Aimonetti
890b60cae4 added autovalidation (auto_validate! in your ExtendedDocument) and extracted some extlib stuff so we will soon be able to remove the dependency. 2009-02-05 17:06:12 -08:00
Matt Aimonetti
08c7f2107c moved stuff around and cleaned up some deprecation notices [save/save_doc] 2009-02-02 16:10:07 -08:00
Matt Aimonetti
fa29906900 Rebased
* 'master' of git://github.com/jchris/couchrest:
  all specs pass; refined attachment api
  add mattetti's 5aebd53a93
  fix rebase end balance
  Started on the ExtendedDocument class with features moved to mixins.
  Started on the ExtendedDocument class with features moved to mixins.
  updated readme file
  Started the refactoring work on couchrest.
  added some monkey patches to improve the http connection speed. (by keeping the http connection open)
  slight change of API, CR::Document now uses <action>_doc instead of <action>, also added #create! and #recreate! to Document instances
  Added attachment methods to CouchRest::Document: #put_attachment, #fetch_attachment and #delete_attachment. Note you can overwrite exisitng attachments with #put_attachment.
  - Added Database#delete_attachment, for removing them directly
  documentation for Document#copy and #move, copied from Database
  database replication methods, no conflict resolution provided
2009-02-02 15:40:49 -08:00
Chris Anderson
55cf741859 fix rebase end balance 2009-02-02 14:56:37 -08:00
Matt Aimonetti
83d7341553 Started on the ExtendedDocument class with features moved to mixins.
Properties got added, they define getters, setters and aliases.
They will also be the base of the new validation system.
2009-02-02 14:51:41 -08:00
Matt Aimonetti
d9fe6ba374 Started the refactoring work on couchrest.
* A server can have multiple defined available databases set to be used by documents (think DM repos)
* A server can have a default database so documents can easily share the same db connection
* Let a document class have a default database to use
* Give access to a document uri
* extracted some of the document features to a mixin
2009-02-02 14:51:41 -08:00
Matt Aimonetti
84e2bf94e4 slight change of API, CR::Document now uses <action>_doc instead of <action>, also added #create! and #recreate! to Document instances 2009-02-02 14:50:30 -08:00
Matt Lyon
a4a2b202ae Added attachment methods to CocuhRest::Document: #put_attachment, #fetch_attachment and #delete_attachment. Note you can overwrite exisitng attachments with #put_attachment. 2009-02-02 01:25:14 -08:00
Matt Lyon
b915f7f708 - Added Database#delete_attachment, for removing them directly
- Modified Database#fetch_attachment to take a doc as its first argument +as well as+ a docid, to be consistent with the other attachment methods.
- Refactored the attachment uri generation used by #fetch_attachment, #put_attachment, and #delete_attachment to a common private method, #uri_for_attachment
2009-02-02 01:25:14 -08:00
Matt Lyon
571cd257e0 database replication methods, no conflict resolution provided 2009-02-02 01:25:13 -08:00
Matt Aimonetti
d6665e55ca Started on the ExtendedDocument class with features moved to mixins.
Properties got added, they define getters, setters and aliases.
They will also be the base of the new validation system.
2009-01-29 18:45:01 -08:00
Matt Aimonetti
6b2e5f84ad Started the refactoring work on couchrest.
* A server can have multiple defined available databases set to be used by documents (think DM repos)
* A server can have a default database so documents can easily share the same db connection
* Let a document class have a default database to use
* Give access to a document uri
* extracted some of the document features to a mixin
2009-01-28 22:55:42 -08:00
Matt Aimonetti
fda5be213a slight change of API, CR::Document now uses <action>_doc instead of <action>, also added #create! and #recreate! to Document instances 2009-01-28 18:16:55 -08:00
Matt Lyon
a0a422b779 add move and copy support to CouchRest::Document instances 2009-01-16 11:31:42 -08:00
Matt Lyon
0519fc5765 patch restclient locally instead of hoping/waiting for an upstream patch. 2009-01-16 11:31:42 -08:00
Jonathan S. Katz
3bff23e7c5 added CouchRest::Model#attachment_url for someone to fetch the attachment using other means 2009-01-12 21:06:48 -08:00
Jonathan S. Katz
a79d9b7f90 changed parameter passing for model attachment methods to be more flexible 2009-01-12 21:06:48 -08:00
Jonathan S. Katz
0cf5fbe311 added #has_attachment? method 2009-01-12 21:06:48 -08:00
Jonathan S. Katz
e497fbbab4 Added basic specs for attachment CRUD 2009-01-12 21:06:48 -08:00
Joe Martinez
108ec0a28e Add proxy support 2009-01-12 20:16:22 -08:00
Chris Anderson
6b57357fc0 merge deferred-delete 2009-01-12 20:01:37 -08:00
Chris Anderson
d1f8970c84 fixed ddoc names on get 2009-01-12 19:50:00 -08:00
Antony Blakey
36945d5a13 Add bulk save deferal option to db.delete / doc.destroy, just like on save. 2009-01-09 20:29:08 +10:30
Matt Lyon
9faa9daaca support for couchdb's support for the COPY and MOVE verbs. depends on my commit to RestClient, currently only in b5d75acc68
I have considered adding this to the CouchRest::Document class as well ("@doc.copy new-id" and such) but haven't yet.
2009-01-05 00:44:12 -08:00
Matt Lyon
a2aa4a9a3c Merge branch 'master' of git://github.com/jchris/couchrest
* 'master' of git://github.com/jchris/couchrest:
  Fix up set_default to not munge existing values.
  commented out spec for fm:generate app
2009-01-04 23:01:17 -08:00
Matt Lyon
e15581b1dd fix temp_view -> slow_view stuff for couchdb trunk 2009-01-04 23:00:59 -08:00
Max Aller
f3bc7f8eba Fix up set_default to not munge existing values. 2009-01-04 22:51:08 -08:00
Chris Anderson
7aaffe5d63 change count to limit 2009-01-04 21:00:36 -08:00
Chris Anderson
c180a317e8 merge rafaelss :as patch 2008-12-31 15:40:17 -08:00
Chris Anderson
c488aab338 Merge branch 'janl/master' 2008-12-31 15:16:32 -08:00
Chris Anderson
8b34f083c7 Merge branch 'mattly/master' into mergemattly 2008-12-31 14:54:28 -08:00
Chris Anderson
a3ac5fc4e8 Merge branch 'save-bug' of git://github.com/raycmorgan/couchrest into raycmorgan/save-bug 2008-12-31 14:48:29 -08:00
Rafael Souza
716bc74023 added possibility to cast any key to any type using any method 2008-12-30 11:25:23 -02:00
Matt Lyon
cd53e16eba instantiate Time casts correctly 2008-12-19 02:06:05 -08:00
RayMorgan
b5ec8ba3c3 Fixed the "save bug should fix" spec 2008-12-17 23:09:01 -08:00
Nolan Darilek
84382d8af4 Removed model create/update callbacks and integrated with new bulk save infrastructure. 2008-12-15 10:27:53 -06:00
Nolan Darilek
d8d5645ebd Make bulk saving more flexible.
* Database#save(doc, true) caches the doc in a database-specific bulk
cache.
* Database#save(doc, false), default, saves normally, bulk saving and
emptying the cache if one exists.
* The cache is automatically saved on Database#save if it excedes a
configurable limit, 50 by default.
* Database#bulk_save without arguments saves and clears the bulk save
cache.
2008-12-14 23:17:35 -06:00
Nolan Darilek
dd7f109878 Add support for database compaction. 2008-12-14 17:29:15 -06:00
Jan Lehnardt
7461e3fede s/localhost/127.0.0.1/ 2008-12-14 12:05:02 +01:00