og 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/AUTHORS CHANGED
@@ -1,7 +1,7 @@
1
1
  MAIN DEVELOPER:
2
2
 
3
3
  * George Moschovitis <gm@navel.gr>
4
- Project Leader, Architecture and Design, main coder,
4
+ Project leader, architecture and design, code,
5
5
  documentation, maintainer.
6
6
 
7
7
  IDEAS, ADDITIONAL CODING, SUPPORT:
@@ -9,6 +9,9 @@ IDEAS, ADDITIONAL CODING, SUPPORT:
9
9
  * Michael Neumann <mneumann@ntecs.de>
10
10
  Design, additional coding and bug reports.
11
11
 
12
+ * Matt Bowen <matt.bowen@farweststeel.com>
13
+ Additional code and documentation.
14
+
12
15
  * Anastasios Koutoumanos <ak@navel.gr>
13
16
  Design, additional coding.
14
17
 
data/ChangeLog CHANGED
@@ -1,5 +1,288 @@
1
+ 28-02-2005 George Moschovitis <gm@navel.gr>
2
+
3
+ * lib/nitro/controller.rb (#action_method_arguments): implemented.
4
+
5
+ * lib/nitro.rb: added resolve_action_arguments,
6
+ define Nitro before requiring.
7
+
8
+ * lib/nitro/render.rb: added a simple check for ParseTree.
9
+
10
+ * Rakefile: no ParseTree dependency,
11
+ include og_config/og_tutorial in the docs.
12
+
13
+ * use 127.0.0.1 as default address Windows gets fucked with 0.0.0.0
14
+
15
+ * lib/nitro/simple.rb: hack fix for SimpleController problem.
16
+
17
+ * lib/og/adapters/oracle.rb: small fixes [mbowen].
18
+
19
+ * lib/og/adapter.rb: fixed DEFAULT NOT NULL to make oracle compaible [mbowen].
20
+
21
+ * doc/og_tutorial.txt: more fixes [james_b],
22
+ made more compatible with RDoc.
23
+
24
+ 27-02-2005 George Moschovitis <gm@navel.gr>
25
+
26
+ * lib/nitro/adapters/xhtml.rb (#submit): introduced.
27
+
28
+ * lib/nitro/request.rb (#path_info): introduced.
29
+
30
+ * lib/nitro/adapters/webrick.rb (#start): check for Conf instead of Flexob.
31
+
32
+ * examples/why_wiki/run.rb: introduced the wiki example from
33
+ redhanded.hobix.com (btw, why_ fuckin RULEZ!),
34
+ converted to use the programmatic render,
35
+ more fixes, now fully working, better than why_'s original.
36
+
37
+ * many small fixes to make tests pass again.
38
+
39
+ * lib/controller.rb (#action_methods): temp fix for pretty_print
40
+ methods, argh!
41
+
42
+ * examples/*: added apache configuration to all examples,
43
+ updated fcgi.rb in examples.
44
+
45
+ * examples/blog/conf/apache.conf: pass -rubygems -I.. to make compatible
46
+ with lhttpd.
47
+
48
+ * Rakefile: added ParseTree requirement,
49
+ fixed test without og test-cases.
50
+
51
+ * RELEASES: updated.
52
+
53
+ * doc/og_tutorial.tx: more fixes.
54
+
55
+ 27-02-2005 Matt Bowen <matt.bowen@farweststeel.com>
56
+
57
+ * doc/og_tutorial.txt: many, many fixes to this text.
58
+
59
+ 26-02-2005 George Moschovitis <gm@navel.gr>
60
+
61
+ * lib/glue/*: cleaned up various files.
62
+
63
+ * doc/og_tutorial.txt: small fixes [marioh].
64
+
65
+ * test/tc_og.rb: a bit more flexible, fixes.
66
+
67
+ * lib/og/adapters/oracle.rb: small fixes to the adapter.
68
+
69
+ 26-02-2005 Matt Bowen <matt.bowen@farweststeel.com>
70
+
71
+ * lib/og/meta.rb (#many_to_many): don't use AS in join queries
72
+ to make more compatible with Oracle.
73
+
74
+ * lib/og/adapters/oracle.rb: many fixes to the adapter.
75
+
76
+ 25-02-2005 George Moschovitis <gm@navel.gr>
77
+
78
+ * vendor/: added ParseTree files,
79
+ copied latest breakpointer files.
80
+
81
+ * lib/nitro/render.rb: some guarding code for ParseTree, argh.
82
+
83
+ * lib/nitro/runner.rb: clearly show where the application is
84
+ listening.
85
+
86
+ * lib/nitro/conf.rb: use 0.0.0.0 by default to make the app accessible both
87
+ localy and remotely,
88
+ use 9999 as default port, easier to remember.
89
+
90
+ * doc/og_config.txt: wrote first version.
91
+
92
+ * doc/og_tutorial.txt: wrote first version.
93
+
94
+ 24-02-2005 George Moschovitis <gm@navel.gr>
95
+
96
+ * test/tc_og.rb: added extra checks.
97
+
98
+ * lib/og/adapter.rb (#create_fields): set default value,
99
+ (#parse_timestamp): handle nil strings.
100
+
101
+ * lib/og/adapters/*: better default values (NULL) [mneumann]
102
+
103
+ * lib/og/adapters/mysql.rb: fixed props_for_insert.
104
+
105
+ * lib/og/adapters/oracle.rb: worked on this.
106
+ removed write_prop/read_prop.
107
+
108
+ * lib/nitro/render.rb (#o): convienience method.
109
+
110
+ * lib/nitro/builders/*: render -> build,
111
+ recoded abstract builders.
112
+
113
+ * lib/nitro/builders/form: introduced mixin.
114
+
115
+ * lib/nitro/context.rb: use the output buffer.
116
+
117
+ * lib/nitro/output.rb (OutputBuffer): introduced.
118
+
119
+ * lib/nitro/builders/rss: introduced mixin.
120
+
121
+ * lib/og/meta.rb (Relation): added foreign_class alias.
122
+
123
+ * doc/*: cleaned up.
124
+
125
+ * doc/configuration_params.txt: introduced.
126
+
127
+ * RELEASES: updated.
128
+
129
+ * README: updated.
130
+
131
+ 23-02-2005 George Moschovitis <gm@navel.gr>
132
+
133
+ * test/og/tc_meta.rb: implemented.
134
+
135
+ * lib/og/enchant.rb (#properties_and_relations): added.
136
+
137
+ * lib/og/typemacros.rb: introduced, copied code from meta.
138
+
139
+ * lib/og/meta.rb: added more metainfo in relations to facilitate
140
+ even more advanced scaffoliding [mneumann],
141
+ encapsulated type macros in Og namespace [mneumann],
142
+ define Relation classes as extension to properties [mneumann],
143
+ use meta[:descendants] to store cascading delete metadata.
144
+
145
+ * lib/glue/property.rb: added property alias for prop_accessor. [mneumann],
146
+ added more comments.
147
+ (#meta): *val packs arguments in array.
148
+ also keep properties in meta[:properties_and_relations]
149
+
150
+ * lib/og.rb: added 'create_schema' configuration variable, when
151
+ set to false, the applications start much faster.
152
+
153
+ 22-02-2005 George Moschovitis <gm@navel.gr>
154
+
155
+ * yeah, fastcgi works better on lhttpd and apache.
156
+
157
+ * lib/nitro/request.rb (#referer): fixed NASTY bug in non-webrick mode.
158
+
159
+ * lib/nitro/adapters/cgi.rb (#response_headers): added Date to headers,
160
+ after some changes, I got apache to kinda work,
161
+ proto parameter, fixes apache.
162
+
163
+ * lib/nitro/dispatcher.rb: correct handling of default api.
164
+
165
+ * lib/nitro/context.rb (#initialize): init status.
166
+
167
+ * test/nitro/builders/tc_table.rb: introduced.
168
+
169
+ * lib/og/adapters/odbc.rb: introduced.
170
+
171
+ * lib/nitro/builders/table.rb (TableBuilderMixin): introduced,
172
+ (TableBuilder): implemented.
173
+ (#render_table): implemented simple version.
174
+
175
+ * example/wee_style/run.rb: use components.
176
+
177
+ 21-02-2005 George Moschovitis <gm@navel.gr>
178
+
179
+ * lib/og/adapter.rb (#table): use og prefix to be compatible with oracle [mbowen],
180
+ (#join_table): use og prefix instead of '_' [mbowen].
181
+
182
+ * lib/glue/property.rb (#meta): fix, should call enchant(self).
183
+
184
+ * test/tc_og.rb: added more tests to check new feature and
185
+ fixes,
186
+ added test for many_to_many relations.
187
+
188
+ * lib/og/meta.rb: removed uneeded extra parameter from
189
+ some meta_methods.
190
+ (#many_to_many): allow yield block in add_xxx,
191
+ save target_objects!,
192
+
193
+ * lib/og/adapters/oracle.rb: cleanup.
194
+
195
+ 21-02-2005 Michael Neumann <mneumann@ntecs.de>
196
+
197
+ * lib/og/meta.rb: (#has_many): allow yield block in add_xxx,
198
+ added some standard typemacros.
199
+
200
+ 20-02-2005 Matt Bowen <matt.bowen@farweststeel.com>
201
+
202
+ * lib/og/adapters/oracle.rb: introduced, and initial implementation.
203
+
204
+ 20-02-2005 George Moschovitis <gm@navel.gr>
205
+
206
+ * examples/blog/conf/apache.rb: implemented, mostly works!
207
+
208
+ * experimented with method injection, it can be done!!
209
+
210
+ * lib/nitro/render.rb: added ParseTree/SexpProcessor,
211
+ (#compile_action): handle action with parameters and
212
+ automatically lookup request parameters.
213
+ (#compile_action): added sync to be more thread safe.
214
+
215
+ * experimented with ParseTree, this lib is ultracool.
216
+
217
+ 19-02-2005 George Moschovitis <gm@navel.gr>
218
+
219
+ * lib/nitro/runner.rb: no duplicate lhttpd,
220
+ added apache option,
221
+ fixed parameter passing to apachectl.
222
+
223
+ * lib/og/*: converted Og to a Module to be includeable.
224
+
225
+ * Rakefile: put RDoc files in doc/rdoc.
226
+
227
+ * doc/*: moved some files from root dir here.
228
+
229
+ * lib/og/adapters/*: small changes.
230
+
231
+ * lib/og/adapters/filesys.rb: introduced,
232
+ (#db_dir): added.
233
+ create class 'tables' and sequence.
234
+ (#load/#save): temp hacks, but this works!!
235
+ This kinda works :)
236
+
237
+ 18-02-2005 George Moschovitis <gm@navel.gr>
238
+
239
+ * doc/apache.txt: introduced.
240
+
241
+ * doc/tutorial.txt: started working on this.
242
+
243
+ * lib/nitro/session/drb.rb: yeah, distributed session
244
+ works correctly.
245
+
246
+ * lib/nitro/context.rb: removed sessions attribute,
247
+ (#close): implemented.
248
+
249
+ * lib/nitro/session.rb: added ctime, mtime, atime and
250
+ aliases,
251
+ (#touch!): introduced.
252
+ collection -> store.
253
+
254
+ * lib/nitro/session/drbserver.rb: added debug mode.
255
+
256
+ 17-02-2005 George Moschovitis <gm@navel.gr>
257
+
258
+ * lib/nitro/session/memory.rb: implemented.
259
+
260
+ * YEAH, i got drb sessions working again.
261
+
262
+ * lib/nitro/session/drb.rb: implemented.
263
+
264
+ * lib/nitro/session.rb: added store configuration parameter,
265
+ FIX: use SafeHash for session collections.
266
+
267
+ * lib/nitro/session/drbserver.rb: implemented,
268
+ added command line parameters.
269
+
270
+ * lib/glue/hash.rb: cleaned up.
271
+
272
+ * lib/nitro/component.rb: introduced.
273
+
274
+ 16-02-2005 George Moschovitis <gm@navel.gr>
275
+
276
+ * lib/nitro/render.rb: SECURITY FIX: only render action_methods.
277
+
278
+ * test/nitro/tc_controller.rb: fixes, more tests.
279
+
280
+ * lib/nitro/controller.rb (#action_methods): introduced.
281
+
1
282
  15-02-2005 George Moschovitis <gm@navel.gr>
2
283
 
284
+ * --- VERSION 0.10.0 ---
285
+
3
286
  * INSTALL: added some text for manual installation.
4
287
 
5
288
  * examples/no_xsl_blog/*: misc fixes.
@@ -127,7 +410,7 @@
127
410
 
128
411
  * test/tc_og.rb: added test for override db.
129
412
 
130
- * lib/og/adapters/*: dont use entity,
413
+ * lib/og/adapters/*: don't use entity,
131
414
  (#calc_field_index): ensure res.close in
132
415
  (#create_table): use conn.store to avoid catching the errors.
133
416
 
@@ -234,7 +517,7 @@
234
517
 
235
518
  * cleaned up docs in many files.
236
519
 
237
- * test/tc_og.rb: dont use global ($og),
520
+ * test/tc_og.rb: don't use global ($og),
238
521
  run tests for all backends.
239
522
 
240
523
  * lib/og/*: small cleanups.
@@ -487,7 +770,7 @@
487
770
  (#redirect): fixed.
488
771
  (#render): raise when no controller found.
489
772
  (#render): fixed template extension selection,
490
- (#compile_action): dont set content_type.
773
+ (#compile_action): don't set content_type.
491
774
 
492
775
  * lib/nitro/controller.rb: include Scaffolding, Filtering.
493
776
 
@@ -664,7 +947,7 @@
664
947
 
665
948
  * lib/nitro/filters: introduced.
666
949
 
667
- * lib/nitro/server/dispatcher.rb: dont use $og.
950
+ * lib/nitro/server/dispatcher.rb: don't use $og.
668
951
 
669
952
  * lib/nitro/adaptors/webrick: new implementation.
670
953
  (WebrickAdaptor): introduced.
@@ -900,7 +1183,7 @@
900
1183
 
901
1184
  * lib/og/*: converted to new code.
902
1185
 
903
- * lib/og/meta.rb: dont use $og. [mneumann]
1186
+ * lib/og/meta.rb: don't use $og. [mneumann]
904
1187
 
905
1188
  * lib/og.rb: made Og a class,
906
1189
  removed $og_xx_xx options, use class methods [mneumann]
@@ -933,7 +1216,7 @@
933
1216
 
934
1217
  * --- VERSION 0.7.0 ---
935
1218
 
936
- * lib/og/mock.rb: fix, dont wrap methods.
1219
+ * lib/og/mock.rb: fix, don't wrap methods.
937
1220
 
938
1221
  * Rakefile: fix.
939
1222
 
@@ -1113,4 +1396,4 @@
1113
1396
 
1114
1397
  * final preparations for release.
1115
1398
 
1116
- * ChangeLog: branched.
1399
+ * ChangeLog: branched from 'doc/ChangeLog.1'.
data/README.og CHANGED
@@ -1,4 +1,4 @@
1
- = Og 0.10.0
1
+ = Og 0.11.0
2
2
 
3
3
  Nitro integrates the Og (ObjectGraph) object-relational mapping
4
4
  library. Og provides transparent serialization of object graphs to a RDBMS
@@ -30,7 +30,6 @@ The library provides the following features:
30
30
  + Multiple backend adapters (PostgreSQL, MySQL, SQLite).
31
31
  + ActiveRecord-style meta language and db aware methods.
32
32
  + Automatially generates join-tables for many_to_many relations.
33
- + Deserialize to Ruby Objects or ResultSets.
34
33
  + Deserialize sql join queries to Ruby Objects.
35
34
  + Serialize arbitrary ruby object graphs through YAML.
36
35
  + Connection pooling.
@@ -105,8 +104,8 @@ mailto:gm@navel.gr.
105
104
  Copyright (c) 2004-2005, George 'tml' Moschovitis.
106
105
  Copyright (c) 2004-2005, Navel Ltd (http://www.navel.gr)
107
106
 
108
- Og (http://www.navel.gr/og) is copyrighted free software
109
- created and maintained by George Moschovitis (mailto:gm@navel.gr)
107
+ Og (http://www.rubyforge.com/projects/nitro) is copyrighted free
108
+ software created and maintained by George Moschovitis (mailto:gm@navel.gr)
110
109
  and released under the standard BSD Licence. For details consult
111
110
  the file LICENCE.
112
111
 
@@ -1,3 +1,51 @@
1
+ == Version 0.11.0 was released on 28/02/2005.
2
+
3
+ The platform continues to evolve and now supports the
4
+ the Oracle database out of the box. This version features
5
+ improved documentation, important bug fixes and many subtle
6
+ improvements to make programming even more enjoyable. Many
7
+ thanks to Matt Bowen for his help with this release.
8
+
9
+ Most notable additions:
10
+
11
+ * Documentation (doc/og_tutorial.txt, doc/og_config.txt)
12
+
13
+ * Og Oracle adapter.
14
+
15
+ * Og provides advanced metadata for the managed objects
16
+
17
+ class Article
18
+ property :title, String
19
+ property :body, String
20
+ has_many :comments, Comment
21
+ end
22
+
23
+ par = Article.properties_and_relations
24
+ => [Property(:title), Property(:body), Og::HasMany(:comments)]
25
+
26
+ par[2].klass
27
+ => Comment
28
+
29
+ par[2].meta[:linkback]
30
+ => :article_oid
31
+
32
+ * Og Typemacros, here is an example:
33
+
34
+ def VarChar(size)
35
+ return String, :sql => "NOT NULL VARCHAR(#{size})"
36
+ end
37
+
38
+ property :title, VarChar(30)
39
+
40
+ * Option for faster startup, skip schema check.
41
+
42
+ * Many small Og improvements and fixes.
43
+
44
+ WARNING: If you used an earlier version of Og you
45
+ may need to drop your database and let Og recreated it
46
+ automatically.
47
+
48
+
1
49
  == Version 0.10.0 was released on 15/02/2005.
2
50
 
3
51
  An important release.
@@ -89,6 +137,7 @@ Most notable additions:
89
137
  * new automatically generated methods in Og.
90
138
  * MockDatabase leverages the FlexMock object for easier unit testing.
91
139
 
140
+
92
141
  == Version 0.6 was released on 13/12/2004.
93
142
 
94
143
  This is a preview release, the api for the new features is not
@@ -100,6 +149,7 @@ Most notable additions:
100
149
  * Og many_to_many relations with auto generation of the join table.
101
150
  * Og has_one relation.
102
151
 
152
+
103
153
  == Version 0.5.0 was released on 21/11/2004.
104
154
 
105
155
  New standalone version. SQL indices can be defined again.