Commit graph

353 commits

Author SHA1 Message Date
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
Chris Anderson
efa3c2e270 remove fm spec 2009-01-08 23:08:21 -08:00
Chris Anderson
88511c6ed0 strip couchapp from couchrest 2009-01-08 23:06:54 -08:00
Chris Anderson
5111cdc78f cleanup gitignore for tmp 2009-01-08 22:20:53 -08:00
Chris Anderson
5d45b8b91b move tmp dir for specs; 2009-01-08 22:18:06 -08:00
Chris Anderson
fb613e7dfb move some couchapp components to couchapp project 2009-01-08 16:48:11 -08:00
Chris Anderson
5d3e684c6a moved app template 2009-01-08 09:50:45 -08:00
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
b28e40bb96 commented out spec for fm:generate app 2009-01-04 22:49:39 -08:00
Matt Lyon
71f5ea2a1b Merge branch 'master' of git://github.com/jchris/couchrest
* 'master' of git://github.com/jchris/couchrest:
  file manager a little better
  update gemspec
  don't error when the given directories don't exist
  change count to limit
2009-01-04 22:44:46 -08:00
Chris Anderson
dcef68e725 file manager a little better 2009-01-04 22:42:36 -08:00
Matt Lyon
d290357c78 don't error when the given directories don't exist 2009-01-04 21:01:32 -08:00
Chris Anderson
7aaffe5d63 change count to limit 2009-01-04 21:00:36 -08:00
Matt Lyon
eca3b06461 don't error when the given directories don't exist 2009-01-04 03:28:08 -08:00
Chris Anderson
0341b039a7 require system 2009-01-02 03:46:26 -08:00
Chris Anderson
ba6caf8d41 deep include 2009-01-02 03:22:28 -08:00
Chris Anderson
7644217add change it to !include 2009-01-02 01:59:33 -08:00
Chris Anderson
b8856771f7 lib not library 2009-01-01 23:33:14 -08:00
Chris Anderson
8733b631e3 more reorg for couchapp 2009-01-01 23:11:01 -08:00
Chris Anderson
cc6039cbd4 modernizing couchapp 2009-01-01 22:45:41 -08:00
Chris Anderson
293e9abad8 simpler mappings 2009-01-01 22:32:50 -08:00
Chris Anderson
a10d902d71 simplyfy couchapp push 2009-01-01 22:29:39 -08:00
Chris Anderson
c180a317e8 merge rafaelss :as patch 2008-12-31 15:40:17 -08:00
Frederik Fix
cae6395007 removed the suffix and duplication when importing views 2008-12-31 15:24:19 -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
ce172cf77b run individual specs without rake 2008-12-19 02:09:20 -08: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
Chris Anderson
12c09085df justin_dz spec for save bug 2008-12-03 12:09:13 -08:00
Chris Anderson
47087507dd got to green - setup out of order... 2008-12-03 12:03:59 -08:00
Chris Anderson
0c91f5d234 fixed merge 2008-11-22 16:12:16 -08:00
Chris Anderson
9a157ab63b made rake spec pass again 2008-11-22 16:09:34 -08:00
Chris Anderson
64d71d3ac4 Merge commit '9399b27f3f58c1e333b6dd5f20bbcd3531fa4b5e' 2008-11-22 16:06:51 -08:00
Chris Anderson
2c63d91a81 added a cleanup_design_docs! method 2008-11-22 15:40:14 -08:00
Chris Anderson
8533520ef9 added couchrest-type back in to model 2008-11-22 14:29:03 -08:00
Chris Anderson
e23ad9876e Merge branch 'design-doc' 2008-11-22 14:15:41 -08:00
Chris Anderson
78534f8ec9 I seem to have all the CR::Model specs passing 2008-11-22 14:15:07 -08:00
Chris Anderson
19a70ffd7d got view queries happening correctly 2008-11-21 16:21:20 -08:00
Chris Anderson
32ffbfe019 more notions 2008-11-20 17:03:06 -08:00
Chris Anderson
1431196c85 gif mime 2008-11-11 14:10:23 -08:00
Chris Anderson
0769c2690f on the road toward design docs 2008-11-08 16:28:58 -08:00
Vinicius Teles
9399b27f3f Added the method update_attributes_without_saving.
To understand the reason, say you have this:

class Post < CouchRest::Model

  key_accessor :title, :body, :author, comments

  cast :author, :as => 'Author'
  cast :comments, :as => ['Comment']

end

comment = post.comments.first

I'd like to do

comment.update_attributes_without_saving hash

because otherwise, it would create a new document for comment, which I don't want in my particular use. I just want to update the internal comment in the post.
2008-11-07 10:36:38 -02:00
Chris Anderson
0ce716518f factor out couchrest::document 2008-11-03 22:52:50 -08:00
Matt Aimonetti
b1315d20f4 added model#save! raising an exception if the document isn't saved properly 2008-11-03 17:45:21 -08:00
Matt Aimonetti
19f587c0d6 added support for model#first 2008-11-03 16:40:19 -08:00
Chris Anderson
b37f6a326b fixed a hash bug 2008-10-28 10:07:57 -07:00
Chris Anderson
b62b77eee5 new capabilities for couchapp script 2008-10-28 09:56:42 -07:00
Chris Anderson
59f81d2d77 removed metaprogramming 2008-10-14 15:30:38 -07:00
Chris Anderson
320f6b99aa whitespace 2008-10-14 15:09:02 -07:00
Chris Anderson
6851c7a2be views accept blocks 2008-10-14 15:08:17 -07:00
Chris Anderson
254eb20161 view blocks flow 2008-10-14 01:07:48 -07:00
Chris Anderson
54a0afdf8e added block yields to db.view 2008-10-13 16:46:48 -07:00
Chris Anderson
b1847cb465 better ducktype specs 2008-10-13 16:37:50 -07:00
Chris Anderson
d13159039a adding ducktype support 2008-10-13 02:01:24 -07:00
Chris Anderson
adcaaaf59a fixed specs when run under rake 2008-10-11 09:55:21 -07:00
Chris Anderson
7a92723260 include-docs support 2008-10-08 12:32:22 -07:00
Chris Anderson
e2f7163816 multi-key support for views, temp-views, and alldocs 2008-10-08 12:19:28 -07:00
Chris Anderson
ba16fb586a update attributes method 2008-10-03 12:58:45 -07:00
Chris Anderson
696d89c45c use strings instead of constants 2008-10-02 23:56:22 -07:00
Chris Anderson
b3db1c797f silence parens warning 2008-10-02 23:44:54 -07:00
Chris Anderson
26059f63f2 added the Model.all view 2008-10-02 23:36:39 -07:00
Chris Anderson
355d408730 move to class_inheritable_accessor 2008-10-02 23:30:41 -07:00
Chris Anderson
c170008deb dont save over an existing design doc 2008-10-02 21:21:48 -07:00
Chris Anderson
9858f85c19 subobject casting 2008-10-02 17:13:59 -07:00
Chris Anderson
03f4169350 couchrest-type 2008-10-02 16:39:06 -07:00
Chris Anderson
8ac6b78170 default values and lambda unique_ids 2008-10-02 14:11:04 -07:00
Chris Anderson
10806b675e added CR::Model#destroy 2008-10-02 11:06:37 -07:00
Chris Anderson
98923843ef converted to Hash subclass 2008-10-02 10:45:08 -07:00
Chris Anderson
2b7e49c9c6 put attachments 2008-09-30 17:22:54 -07:00
Chris Anderson
902e1bed26 moved specs so the autotest filemapping works better 2008-09-30 16:21:28 -07:00
Chris Anderson
2ae79c51a1 cleanup rakefile business 2008-09-29 21:08:52 -07:00
Chris Anderson
b58259ec1a implemented view argument currying 2008-09-29 20:18:18 -07:00
Chris Anderson
6a86a00d21 couchrest model supports custom view definitions 2008-09-29 18:10:07 -07:00
Chris Anderson
4a1de8c1ba couchrest query params passed through by_xxxx views 2008-09-29 17:46:33 -07:00
Chris Anderson
f408dfceb6 compound-key views work 2008-09-29 17:27:41 -07:00
Chris Anderson
5e0cb81ad7 most of the callbacks are installed, adding view generation 2008-09-29 16:28:57 -07:00
Chris Anderson
ce3a3258bc created CouchRest::Model mixin 2008-09-29 09:55:40 -07:00
Chris Anderson
ef3055c222 use url parser to parse database! urls 2008-09-28 16:03:15 -07:00
Chris Anderson
38462375b4 bug fixes in couchapp 2008-09-16 12:10:45 -04:00
Chris Anderson
7f818c2cf1 added attachment uploading 2008-09-16 11:44:02 -04:00
Chris Anderson
baa2c1dd37 ignore spec fixtures 2008-09-16 11:16:27 -04:00
Chris Anderson
e3da7d5c8f specs for couchapp 2008-09-16 11:15:36 -04:00
Chris Anderson
2356df978e file manager pushes apps 2008-09-16 11:14:25 -04:00
Jan Lehnardt
bb8371a718 added url parser tests 2008-09-15 00:49:42 +02:00
Chris Anderson
26d50c8ac1 added a url parser that CouchRest can use throughout (but is not yet using) 2008-09-13 21:07:21 -04:00
Chris Anderson
9e7738fd74 added streamer class 2008-09-07 15:28:20 -07:00
Chris Anderson
54f260173f CouchRest no longer uses POST for doc creation 2008-09-07 13:51:26 -07:00
Chris Anderson
91299f630b added database factory method 2008-09-07 12:54:10 -07:00
Chris Anderson
5d56f1961f added easy method for ensuring databases exist 2008-09-07 12:43:13 -07:00
Chris Anderson
1eac462612 spec the error doc 2008-09-05 14:09:17 -07:00
Chris Anderson
88f83f0742 moved scripts to bin 2008-08-03 12:51:17 -07:00
Chris Anderson
541a3cac74 brought file manager back in as a class 2008-08-02 00:03:54 -07:00
Chris Anderson
93f95741c4 removed version test 2008-07-25 13:47:35 -07:00
Chris Anderson
eecd92a6ef updated rescues for better rest-client 2008-07-19 15:25:02 -04:00
Chris Anderson
f0f25bb7af pager now pages through all_docs view specially 2008-07-14 11:51:15 -07:00
Chris Anderson
5add5b0b5c specs on right server 2008-07-07 00:05:25 -07:00
Chris Anderson
d2de19022e CouchRest::Pager for paging through views 2008-07-04 16:56:37 -07:00
Chris Anderson
915905ca13 upgraded couchrest for 080 2008-07-04 16:56:09 -07:00
Chris Anderson
8641d63533 working towards gem 2008-06-20 12:43:28 -07:00
Chris Anderson
a12ad9c4ea restart etc 2008-06-15 11:43:05 -07:00
Chris Anderson
58c6b7ee8a Merge branch 'mattly/master' 2008-06-12 09:24:07 -07:00
Chris Anderson
82c958606b version numbre spec 2008-06-12 09:16:53 -07:00
Matt Lyon
9954d914c7 PUT attachments as stubs doesnt choke 2008-06-12 08:40:52 -07:00
Chris Anderson
bc7a0ec656 rev spec 2008-06-09 13:18:52 -07:00
Chris Anderson
b350a51963 better attachment api 2008-06-07 09:00:41 -07:00
Chris Anderson
bf1acd8355 document attachments now supported 2008-06-07 08:32:51 -07:00
Chris Anderson
4063210302 update to new Couch, vendor finish 2008-06-01 10:23:24 -07:00
Chris Anderson
85ecf7b076 updated for current revision 2008-05-29 12:32:13 -07:00
Chris Anderson
4cf4b22a75 view round trip specs 2008-05-25 11:49:26 -07:00
Chris Anderson
c776b80ac6 start key and such on all-docs 2008-05-24 17:01:28 -07:00
Chris Anderson
b93f6e7677 JSON.unparse is picky compared to to_json... go figure 2008-05-24 13:17:44 -07:00
Chris Anderson
dc6c9276e5 simplified json include 2008-05-24 12:28:42 -07:00
Chris Anderson
939ecaaf73 just keeping up with the versions 2008-05-23 10:18:09 -07:00
Chris Anderson
ea68f7af85 ability to set keys and count on temp_views 2008-05-22 21:57:21 -07:00
Chris Anderson
ce5bf9ffe8 added handling of view params like count etc 2008-05-22 21:41:52 -07:00
Chris Anderson
1145fc4042 changed the signature of temp_view to match the design document schemas 2008-05-21 14:58:37 -07:00
Chris Anderson
d63f17db85 updated specs for CouchDB version 0.7.3a658733 2008-05-21 11:08:42 -07:00
Chris Anderson
d1ece2c1aa fixed bad constant for localhost name 2008-05-19 14:41:14 -07:00
Chris Anderson
32d96cb634 calling localhost 'localhost' for portability :) 2008-05-17 14:40:45 -07:00
Chris Anderson
80c50ccf8f got reduce support working for javascript views 2008-05-17 13:41:16 -07:00
Chris Anderson
81d27c6f16 updated specs and code to reflect changes in bulk_docs for CouchDB 0.7.3 2008-05-14 17:27:21 -07:00
Chris Anderson
c3b6e3e2d0 get views 2008-03-19 22:38:01 -07:00
Chris Anderson
6995d478c9 temp view 2008-03-19 18:10:16 -07:00
Chris Anderson
7f14458694 bulk save 2008-03-19 16:38:07 -07:00
Chris Anderson
43f51c5490 PUT to update 2008-03-19 16:01:04 -07:00
Chris Anderson
e7ea12f2ae hit a snag with rest-client and query params 2008-03-19 15:21:27 -07:00
Chris Anderson
420168be70 escape get and put ... still need delete 2008-03-19 14:33:41 -07:00
Chris Anderson
99f25bbbfc added document retreival (GET) 2008-03-19 10:17:25 -07:00
Chris Anderson
097ab935c6 getting into view land 2008-03-19 08:57:20 -07:00
Chris Anderson
d356e2356a progress 2008-03-18 23:11:44 -07:00
Chris Anderson
32c01fadad working specy stuff i hope 2008-03-18 11:37:10 -07:00
Chris Anderson
2c42cf1ca5 first check in with one or two specs 2008-03-17 23:07:57 -07:00