og 0.10.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
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.