nitro 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/ChangeLog +4 -2201
  2. data/ChangeLog.1 +2344 -0
  3. data/README +4 -4
  4. data/RELEASES +22 -0
  5. data/bin/new_app.rb +17 -3
  6. data/bin/proto/README +34 -0
  7. data/bin/proto/apache.conf +1 -0
  8. data/bin/proto/app.rb +20 -0
  9. data/bin/proto/config.rb +77 -0
  10. data/bin/proto/root/index.xhtml +43 -0
  11. data/bin/proto/root/style.css +218 -0
  12. data/bin/proto/root/style.xsl +130 -0
  13. data/examples/blog/app.rb +1 -2
  14. data/examples/blog/config.rb +20 -18
  15. data/examples/blog/env.rb +22 -0
  16. data/examples/blog/lib/blog.rb +43 -15
  17. data/examples/blog/root/entry_form.xhtml +1 -1
  18. data/examples/blog/root/index.xhtml +5 -0
  19. data/examples/blog/root/login.xhtml +2 -0
  20. data/examples/blog/root/m/nitro.gif +0 -0
  21. data/examples/blog/root/style.css +83 -0
  22. data/examples/blog/root/style.xsl +7 -3
  23. data/examples/og/run.rb +41 -2
  24. data/examples/tiny/app.rb +1 -2
  25. data/examples/tiny/root/index.xhtml +8 -2
  26. data/examples/tiny/root/nitro-small.png +0 -0
  27. data/lib/glue.rb +1 -1
  28. data/lib/glue/property.rb +9 -3
  29. data/lib/nitro/application.rb +18 -1
  30. data/lib/nitro/builders/form.rb +84 -0
  31. data/lib/nitro/builders/rss.rb +4 -5
  32. data/lib/nitro/builders/table.rb +23 -0
  33. data/lib/nitro/filters.rb +157 -0
  34. data/lib/nitro/l10n.rb +11 -3
  35. data/lib/nitro/scaffold.rb +1 -1
  36. data/lib/nitro/server/render.rb +101 -4
  37. data/lib/nitro/server/shaders.rb +17 -5
  38. data/lib/nitro/service.rb +5 -5
  39. data/lib/nitro/ui/pager.rb +35 -11
  40. data/lib/nitro/version.rb +2 -2
  41. data/lib/og.rb +25 -17
  42. data/lib/og/backend.rb +15 -3
  43. data/lib/og/backends/mysql.rb +30 -3
  44. data/lib/og/backends/psql.rb +44 -3
  45. data/lib/og/meta.rb +117 -10
  46. data/lib/og/version.rb +1 -1
  47. data/lib/xsl/base.xsl +75 -6
  48. data/lib/xsl/ui.xsl +51 -0
  49. data/test/nitro/ui/tc_pager.rb +6 -0
  50. metadata +23 -2
data/ChangeLog.1 ADDED
@@ -0,0 +1,2344 @@
1
+
2
+ 10-12-2004 George Moschovitis <gm@navel.gr>
3
+
4
+ * lib/nitro/server/render.rb (#load_staticall_included): introduced.
5
+
6
+ * test/*: small fixes to make the tests work again.
7
+
8
+ * lib/og/backend/mysql.rb: (#create_table) added code to auto create
9
+ the join_table.
10
+
11
+ * lib/og/backend/psql.rb: (#create_table) changed join_table code to
12
+ be more compatible with the mysql driver.
13
+
14
+ 09-12-2004 George Moschovitis <gm@navel.gr>
15
+
16
+ * examples/*: included the nitro logo to both examples.
17
+
18
+ * lib/og.rb (#enchant): save returns self to be chainable.
19
+
20
+ * lib/og/meta.rb (#many_to_many): renamed,
21
+ generate enchant methods,
22
+ (#many_to_many): use inflector to find out names,
23
+ add_xxx method, cool, it works,
24
+ del_xxx,
25
+ clear_xxx,
26
+ $og_include_meta_language flag [k.nasis]
27
+
28
+ * lib/og/backends/psql.rb: use key1/key2 in join tables.
29
+
30
+ * lib/og/backend.rb (#join_table): introduced.
31
+
32
+ 08-12-2004 George Moschovitis <gm@navel.gr>
33
+
34
+ * improved comments to various files.
35
+
36
+ * lib/nitro/builders/form.rb: introduced,
37
+ (#render): initial implementation.
38
+
39
+ * lib/nitro/l10n.rb: small improvements.
40
+
41
+ * lib/og/backends/psql.rb (#create_table): create join tables where needed.
42
+
43
+ * lib/og/backend.rb (#self.encode): introduced.
44
+
45
+ * lib/og/meta.rb (#has_and_belongs_to_many): introduced,
46
+ joins_with alias.
47
+
48
+ * examples/blog/lib/blog.rb: (BlogEntry): simple markup for blog entries.
49
+
50
+ * lib/glue/propery.rb (#__add_prop): __force_xxx reuses xxx= to allow
51
+ for easier overrides.
52
+
53
+ * lib/nitro/builders/rss.rb: fixed namespace bug.
54
+
55
+ * examples/blog/root/style.css: added pager.
56
+
57
+ * examples/blog/app.rb: dont add app/lib dir in $LOAD_PATH.
58
+
59
+ * examples/blog/env.rb: environment injection.
60
+
61
+ 07-12-2004 George Moschovitis <gm@navel.gr>
62
+
63
+ * lib/og/meta.rb: implemented has_one relation.
64
+
65
+ * lib/nitro/server/render.rb: initial support for reloading services
66
+ in debug mode.
67
+
68
+ * lib/nitro/service.rb: by default include scaffolding/filtering.
69
+
70
+ * lib/xsl/ui.xsl: introduced new shader,
71
+ (x:pager-prev, x:prev-next, etc: implemeted,
72
+ (x:pager-pages): ULTRACOOL.
73
+
74
+ * lib/og.rb: (#count) new enchant method.
75
+
76
+ * lib/nitro/ui/pager.rb: updated to be compatible with latest code,
77
+ (#offset): added.
78
+
79
+ 06-12-2004 George Moschovitis <gm@navel.gr>
80
+
81
+ * lib/nitro/filters.rb: (gen_filters_call_code): support
82
+ for module filters.
83
+
84
+ * lib/nitro/l10n.rb: (LocalizationFilter): introduced.
85
+
86
+ * lib/nitro/render.rb (#compile_http_method): check if filter chains
87
+ exists,
88
+ (#compile_xml_method): call filter chains.
89
+
90
+ 05-12-2004 George Moschovitis <gm@navel.gr>
91
+
92
+ * yeah, i got some simple filtering working.
93
+
94
+ * examples/blog/lib/blog.rb: no BlockMethods.
95
+
96
+ * lib/nitro/render.rb (#compile_http_method): call filter chains.
97
+
98
+ * lib/nitro/filters.rb: (#prepend/append_aroundfilter): implemented,
99
+ (#gen_filters_call_code): implemented, preevaluates filter callers,
100
+ allow Filter.filter type of filtering.
101
+
102
+ 02-12-2004 George Moschovitis <gm@navel.gr>
103
+
104
+ * lib/nitro/filters.rb: introduced.
105
+
106
+ 29-11-2004 George Moschovitis <gm@navel.gr>
107
+
108
+ * lib/nitro/server/shaders.rb: yeah, added compile time ruby
109
+ code evaluation.
110
+
111
+ 28-11-2004 George Moschovitis <gm@navel.gr>
112
+
113
+ * lib/xsl/base.xsl: updated ob related macros,
114
+ x:ob-write-end.
115
+
116
+ * lib/nitro/render.rb (#ob_start): start output buffer.
117
+ (#ob_end): end output buffer.
118
+ (#ob_write_end): introduced.
119
+
120
+ 26-11-2004 George Moschovitis <gm@navel.gr>
121
+
122
+ * lib/nitro/application.rb: daemonize [fixed by elathan].
123
+
124
+ 25-11-2004 George Moschovitis <gm@navel.gr>
125
+
126
+ * lib/shaders.rb: fix in RubyShader.
127
+
128
+ 24-11-2004 George Moschovitis <gm@navel.gr>
129
+
130
+ * lib/nitro/builders/table.rb: Introduced table builder.
131
+
132
+ * bin/proto: prototype app, introduced.
133
+
134
+ * bin/new_app.rb: implemented,
135
+ better, just cp -R the proto dir.
136
+
137
+ 23-11-2004 George Moschovitis <gm@navel.gr>
138
+
139
+ * --- VERSION 0.5.0 ---
140
+
141
+ * Rakefile: improved.
142
+
143
+ * test/*: fixed directory structure,
144
+ fixed include N.
145
+
146
+ * RELEASES: updated.
147
+
148
+ * lib/nitro/scaffold.rb: add methods to the scaffolded class!
149
+ add view_uri method.
150
+
151
+ * examples/blog/root/style.xsl: added RSS links.
152
+
153
+ * examples/blog/lib/blog.rb (#view_uri): added.
154
+
155
+ * lib/nitro/builders/rss.rb: introduced,
156
+ headers, list, render, default pubDate,
157
+ yeah it works,
158
+ Recoded builder to use the RSS library included in Ruby.
159
+
160
+ * lib/nitro/builders: introduced.
161
+
162
+ * lib/nitro/template.rb: scrapped.
163
+
164
+ 22-11-2004 George Moschovitis <gm@navel.gr>
165
+
166
+ * lib/xsl/base.xsl: rendering-errors.
167
+
168
+ * lib/nitro/server/render.rb (#render): rescue errors, flag with (error),
169
+ introduced rendering_errors,
170
+ (#log_error)
171
+
172
+ 21-11-2004 George Moschovitis <gm@navel.gr>
173
+
174
+ * examples/blog/root/view_entry.xml: just cool :)
175
+
176
+ * lib/nitro/server/dispatcher.rb (#process): removed api check,
177
+ dont set content-type.
178
+
179
+ * lib/nitro/server/webrick.rb (#do_GET): removed api check.
180
+
181
+ * lib/nitro/server/render.rb (#template_for_method): implemented,
182
+ (#transform_template): renamed,
183
+ (RenderUtils#compile_method): catch invlaid methods, raise exception,
184
+ yeah, correctly handle dir/index.xhtml case,
185
+ fixed check for valid methods,
186
+ uses api.
187
+ (RenderUtils#split_path): extracts api.
188
+ (RenderUtils#compile_rest_method): implemented.
189
+ set content-type in render methods.
190
+ ULTRACOOL: the rest dispatcher works.
191
+
192
+
193
+ * lib/nitro/config.rb: $template_ext, $xml_template_ext,
194
+ $index_template.
195
+
196
+ 18-11-2004 George Moschovitis <gm@navel.gr>
197
+
198
+ * lib/nitro/server/dispatcher.rb (#process): support for rpc.
199
+
200
+ * lib/nitro/server/webrick.rb (#referer): no shift,
201
+ (#do_GET): check for ^rpc case.
202
+
203
+ * AUTHORS: updated.
204
+
205
+ * RELEASES.og: written.
206
+
207
+ * README.og: written.
208
+
209
+ * Rakefile: updated to copy glue in the og distribution,
210
+ yeah, the Og distribution works.
211
+
212
+ * lib/nitro/gfx.rb: moved to Gen.
213
+
214
+ * lib/glue: introduced,
215
+ moved many files from lib/nitro/* and lib/nitro/utils/* here.
216
+
217
+ 17-11-2004 George Moschovitis <gm@navel.gr>
218
+
219
+ * README.og: introduced.
220
+ * RELEASES.og: introduced.
221
+ * ChangeLog.og: introduced.
222
+
223
+ * lib/og/version.rb: introduced.
224
+
225
+ * Rakefile: introduced Og GemSpec.
226
+
227
+ 16-11-2004 George Moschovitis <gm@navel.gr>
228
+
229
+ * lib/og/backends/mysql.rb (#create_table): handles sql indices.
230
+
231
+ * lib/og/backends/psql.rb (#create_table): handles sql indices.
232
+
233
+ * lib/og/meta.rb (MetaLanguage#sql_index): introduced.
234
+
235
+ * yeah, scaffolding works!
236
+
237
+ * lib/nitro/utils/inflector.rb: temporarily copied from rails.
238
+
239
+ * lib/nitro/scaffold.rb: introduced,
240
+ (#scaffold): started working on this method,
241
+ cool append_features trick,
242
+ :noindex flag!
243
+
244
+ 15-11-2004 George Moschovitis <gm@navel.gr>
245
+
246
+ * --- VERSION 0.4.1 ---
247
+
248
+ * README: updated.
249
+
250
+ * examples/blog: better documentation.
251
+
252
+ 14-11-2004 George Moschovitis <gm@navel.gr>
253
+
254
+ * improved RDoc in many files.
255
+
256
+ * lib/nitro/logger.rb: show full severity string.
257
+
258
+ 13-11-2004 George Moschovitis <gm@navel.gr>
259
+
260
+ * lib/nitro/parts.rb: deprecated.
261
+
262
+ * lib/og.rb: Og renamed to Database.
263
+
264
+ * MAJOR: moved n dir to nitro dir.
265
+
266
+ * MAJOR: moved og to a separate dir.
267
+
268
+ * lib/p: removed.
269
+
270
+ * lib/n/server/webrick.rb: moved from w, moved alod version
271
+ to .scrap.
272
+
273
+ * lib/n/application.rb (#parse_arguments): improved help text.
274
+
275
+ * lib/n/config.rb: :index by default mounts N:Service.
276
+
277
+ * examples/tiny/*: recoded from scratch to work with the latest
278
+ code.
279
+
280
+ * fixed problematic code from tc_properties.
281
+
282
+ * lib/n/og.rb: introduced N::Unmanageable marker module.
283
+
284
+ * examples/blog/config.rb: more comments,
285
+ $srv_address to make more visible.
286
+
287
+ 12-11-2004 George Moschovitis <gm@navel.gr>
288
+
289
+ * examples/blog/config.rb: moved from webapp.rb.
290
+
291
+ * examples/blog/conf/*: removed.
292
+
293
+ 11-11-2004 George Moschovitis <gm@navel.gr>
294
+
295
+ * Rakefile: use version.
296
+
297
+ * lib/n/version.rb: introduced.
298
+
299
+ * examples/blog/README: introduced.
300
+
301
+ * examples/simple/*: removed.
302
+
303
+ * lib/n/sync/*: moved to gen.
304
+
305
+ * examples/blog/*: implemented many little things.
306
+
307
+ * lib/n/server/shaders.rb (RubyShader#process): MEGA xform <ruby> as
308
+ ruby code marker, usefull in xslts :)
309
+
310
+ * examples/blog/root/style.xsl: improved.
311
+
312
+ * lib/n/server/handlers/*: removed.
313
+
314
+ * session works.
315
+
316
+ * lib/n/server/dispatcher.rb (#process): create session,
317
+ only set content type if not exist,
318
+ (#process): added error reporting code.
319
+
320
+ * lib/n/server/render.rb (#render_referer): implemented,
321
+ (#render): splits the query string,
322
+ (#render): handle the query.
323
+ (#compile_method): by default redirect_referer.
324
+ (#populate): implemented.
325
+ (RenderUtils#create_session): introduced,
326
+ (#redirect): prepend $srv_url if needed.
327
+
328
+ * lib/n/server/w.rb (HTTPRequest#set_query): introduced,
329
+ (HTTPRequest#fill): moved populate here,
330
+ (#do_GET): rationalize cookies,
331
+ (#create_cookie): moved here, optimized and fixed!
332
+
333
+ * examples/blog/lib/blog.rb (#del_comment): implemented,
334
+ (#login): implemented,
335
+ removed Blog,
336
+ (Common): added author.
337
+
338
+ * lib/n/shaders.rb: (RubyShader#process): transform include commands,
339
+ (RubyShader#process): remove <root> elements.
340
+
341
+ * lib/xsl/base.xsl: removed x:vblank, x:hblank, use xsl.
342
+
343
+ * fuckin mega, i can include from xsl.
344
+
345
+ * examples/blog/root/*: created sub pages.
346
+
347
+ * examples/blog/root/index.xhtml: yeah i got an included fragment.
348
+
349
+ * examples/blog/root/entry-form.xhtml: yeah i got an included fragment.
350
+
351
+ 10-11-2004 George Moschovitis <gm@navel.gr>
352
+
353
+ * examples/blog/root/view_entry.xhtml: introduced,
354
+ comments.
355
+
356
+ * n/lib/og/meta.rb (#has_many): generate xxx_count method.
357
+
358
+ * lib/n/og/backends/mysql.rb (#get_int): introduced.
359
+
360
+ * lib/n/og/backends/psql.rb (#get_int): introduced.
361
+
362
+ * lib/n/og/connection.rb (#count): introduced,
363
+ optimized some methods by using directly the backend.
364
+
365
+ * lib/n/server/w.rb (WEBrick::HTTPRequest#referer): added,
366
+ after some fixes, redirect works.
367
+
368
+ * lib/n/server/dispatcher.rb (#process): use begin-ensure.
369
+
370
+ * examples/blog/lib/blog.rb (#del_entry): implemented,
371
+ added relations to the classes,
372
+ (#view_entry): introduced.
373
+
374
+ * lib/n/server/render.rb (#compile_method): dont check if method
375
+ exists, there are other caching tests.
376
+ (#render): honour $reload_scripts,
377
+ (#initialize): @params helper,
378
+ (#redirect): implemented,
379
+ (#redirect_referer): implemented
380
+
381
+ * examples/blog/root/index.xhtml: kinda working :)
382
+
383
+ * examples/blog/root/style.xsl: implemented the xsl,
384
+ css float layout,
385
+ sidebar.
386
+
387
+ * examples/blog/root/style.css: implemented the css.
388
+
389
+ 09-11-2004 George Moschovitis <gm@navel.gr>
390
+
391
+ * examples/blog/root/index.xhtml: introduced.
392
+
393
+ * lib/n/config.rb: 8080 for appserver in debug mode.
394
+
395
+ * yeah, the dispatch system works.
396
+
397
+ * lib/n/server/render.rb (#render): introduced,
398
+ (#split_path): introduced,
399
+ (#render_file): dont recompile,
400
+ (RenderUtils#compile_method): implemented.
401
+ (#render): can be used in method!
402
+
403
+ * lib/n/server/dispatcher.rb (#process): use $services,
404
+ include Render,
405
+ (#process): just delegate to render.
406
+
407
+ * examples/blog/lib/blog.rb: improved service,
408
+ (BlogMethods#new_entry): works.
409
+
410
+ * lib/n/service.rb: introduced.
411
+
412
+ * lib/n/og/backends/psql.rb (#read_prop/#write_prop): rewritten to make
413
+ more general [b.candler]
414
+
415
+ * lib/n/og/backends/mysql.rb (#read_prop/#write_prop): rewritten to make
416
+ more general [b.candler]
417
+
418
+ 08-11-2004 George Moschovitis <gm@navel.gr>
419
+
420
+ * lib/n/server/dispatcher.rb (#process): store request, response,
421
+ (#process): more intelligent control/method decomposition.
422
+
423
+ * lib/n/server/render.rb (#transform): use the shader pipeline,
424
+ yeah xslt is working again.
425
+
426
+ * lib/n/server/filters.rb: cleaned up.
427
+
428
+ * lib/n/server/shaders.rb: moved here,
429
+ (RubyShader): introduced,
430
+ (CompressShader): introduced,
431
+ (#<<): fixed,
432
+ (CompressShader#process): improved compression.
433
+
434
+ * lib/n/shaders.rb: brand new shader system,
435
+ (XSLTShader): introduced.
436
+
437
+ * examples/blog/root/style.xsl: introduced.
438
+
439
+ * examples/blog/root/style.css: introduced.
440
+
441
+ 07-11-2004 George Moschovitis <gm@navel.gr>
442
+
443
+ * lib/n/server/render.rb (#transform): first version,
444
+ yeah, i got an xhtml with multiple code segments rendered,
445
+ (#transform): intelligent compression/obfuscation of inline
446
+ xhtml.
447
+
448
+ * changed many files to use File.xxx methods instead of the
449
+ removed StringUtils methods.
450
+
451
+ * lib/n/utils/string.rb (#filename_from_path): removed,
452
+ (#directory_from_path): removed,
453
+ (#extension_from_path): removed,
454
+ (#unicode_to_iso88597): removed.
455
+
456
+ * test/n/utils/tc_string.rb: removed tests from obsolete methods.
457
+
458
+ 06-11-2004 George Moschovitis <gm@navel.gr>
459
+
460
+ * examples/blog/lib/blog.rb: introduced.
461
+
462
+ * lib/n/server/render.rb: introduced,
463
+ (#render_file): kinda works.
464
+
465
+ * lib/n/server/dispatcher.rb (#process): moved code from w.
466
+
467
+ 05-11-2004 George Moschovitis <gm@navel.gr>
468
+
469
+ * lib/n/server/w.rb (do_GET): simple action synthesizer,
470
+ yeah parameter passing works,
471
+ action synthesis gets cached,
472
+ action with template only works.
473
+
474
+ * use .xhtml as an extension.
475
+
476
+ 04-11-2004 George Moschovitis <gm@navel.gr>
477
+
478
+ * lib/n/server/w.rb (do_GET): implemented.
479
+
480
+ * lib/n/og.rb: check respond_to?(:__props) more fault tolerant.
481
+
482
+ * lib/n/parts.rb: no prop_accessor.
483
+
484
+ * lib/n/server/appserver.rb (AppServerMixin): add default methods
485
+ for initialize.
486
+
487
+ * examples/blog: experiments with layout.
488
+
489
+ 03-11-2004 George Moschovitis <gm@navel.gr>
490
+
491
+ * lib/n/server/w.rb: introduced experimental webrick server.
492
+ (WebrickDispatcher): introduced.
493
+
494
+ * examples/blog: introduced, will rethink layout.
495
+
496
+ * benchmark: introduced.
497
+
498
+ * lib/n/og.rb: MEGA, auto class manager works.
499
+
500
+ * lib/n/og/backends/psql.rb (#write_prop): fixed YAML write when nil.
501
+
502
+ * lib/n/og/backends/mysql.rb (#write_prop): fixed YAML write when nil.
503
+
504
+ * all examples run again.
505
+
506
+ * lib/n/og/meta.rb: changed order of params.
507
+
508
+ * lib/n/properties.rb: changed order of params,
509
+ (#prop): works EXACTLY like attr now.
510
+ (#prop): class == object by default.
511
+
512
+ 02-11-2004 George Moschovitis <gm@navel.gr>
513
+
514
+ * yeah tests pass again.
515
+
516
+ * lib/n/og/backends/psql.rb: updated to use new properties.
517
+
518
+ * lib/n/og/backends/mysql.rb: updated to use new properties.
519
+
520
+ * lib/n/properties.rb (Module): dont include __props by default,
521
+ (Module#prop): implemented new version,
522
+ (Module#__add_prop): renamed, gets reader/writer options.
523
+ (Module#add_meta): removed.
524
+ introduced prop_reader, prop_writer, prop_accessor,
525
+ more strict tests when defining property,
526
+ (Module): excellent, DONT override the standard include.
527
+
528
+ * lib/n/og.rb: $og_auto_manage_classes introduced.
529
+
530
+ 01-11-2004 George Moschovitis <gm@navel.gr>
531
+
532
+ * --- VERSION 0.3.0 ---
533
+
534
+ * removed some dependencies from the Gem.
535
+
536
+ * MAJOR: renamed og get/put to load/save.
537
+
538
+ * lib/n/std.rb: removed most NilClass overrides [b.candler]
539
+
540
+ * lib/n/og/connection.rb (#delete): fixed delete with no descendants,
541
+ og_pre_delete callback.
542
+
543
+ * lib/n/og/backends/psql.rb (#read_prop): fixed YAML bug.
544
+
545
+ * lib/n/og/backends/mysql.rb (#read_prop): fixed YAML bug.
546
+
547
+ * lib/n/og.rb (#enchant): all method,
548
+ (#manage_classes): introduced,
549
+ (#enchant): delete! method,
550
+ (#enchant): klass.save() method.
551
+
552
+ * examples/og/run.rb: totally recoded the example to work with Og,
553
+ yeah the example fully works.
554
+
555
+ * moved db files to .scrap
556
+
557
+ * examples/simple: YEAH works with og.
558
+
559
+ * lib/n/server/webrick.rb (#do_GET): og connection per request.
560
+
561
+ 31-10-2004 George Moschovitis <gm@navel.gr>
562
+
563
+ * lib/n/og/backends/mysql.rb: converted to the new refactored code.
564
+
565
+ * lib/n/og/backend.rb (#eval_og_insert): moves the code here,
566
+ use a custom oid_generator,
567
+ factored out deserialize code,
568
+ pre/post_inser_update.
569
+ (#eval_og_update): generate callbacks.
570
+
571
+ * lib/n/og/backends/psql.rb (#eval_og_insert): if the managed
572
+ object defines pre/post callbacks, insert them,
573
+ (OgUtils::oid_generation_code): introduced.
574
+
575
+ * no __og, just og_xxx.
576
+
577
+ 30-10-2004 George Moschovitis <gm@navel.gr>
578
+
579
+ * lib/n/og/backends/psql.rb (#write_prop): fixed,
580
+ (#initialize): autocreate database if not found,
581
+ made createdb/dropdb class methods.
582
+
583
+ * lib/n/og/backends/mysql.rb (#write_prop): fixed,
584
+ (#initialize): autocreate database if not found,
585
+ made createdb/dropdb class methods,
586
+ no transactions for mysql.
587
+
588
+ * lib/n/og/backend.rb (OgUtils#table): remove leading module,
589
+ (#transaction, #start, #commit, #rollback): working transaction
590
+ support,
591
+ added missing methods from the backend implementations.
592
+
593
+ * lib/n/og/meta.rb: introduced,
594
+ (#belongs_to): mega it works,
595
+ (#has_many): mega it works, INCREDIBLE,
596
+ (OgMetaLanguage): use a separate module,
597
+ (#has_many): correct calculation of linkback property,
598
+ update og_descendants
599
+
600
+ * lib/n/og.rb (#enchant): more enchantments,
601
+ (#create_db!): introduced,
602
+ (#drop_db!): introduced,
603
+ (#pupdate!): enchant.
604
+
605
+ * lib/n/og/connection.rb (#select): added,
606
+ (#select_all): added, can use sql without select,
607
+ (#delete): it fuckin works and deletes descendants too!
608
+ (#transaction, #start, #commit, #rollback): working transaction
609
+ support,
610
+ removed all N::OgUtils.table crap.
611
+
612
+ 29-10-2004 George Moschovitis <gm@navel.gr>
613
+
614
+ * lib/n/og/backends/mysql.rb: introduced,
615
+ create_table works,
616
+ fuckin mega, insert works,
617
+ excellent, deserialize works,
618
+ (#valid?): implemented
619
+
620
+ * lib/n/og/backends/psql.rb: introduced,
621
+ yeah, i got a table created,
622
+ store Array,Hash,Object etc as text,
623
+ yeah, it inserts an object,
624
+ (#eval_og_deserialize): implemented,
625
+ (#map_fields): factored out.
626
+ (#valid?): implemented
627
+
628
+ * lib/n/og/managed.rb: introduced.
629
+
630
+ * lib/n/og/backend.rb: introduced,
631
+ different exec/query/safe_exec/safe_query.
632
+
633
+ * test/n/tc_og.rb: introduced.
634
+
635
+ * lib/n/og/connection.rb: introduced,
636
+ (#update_properties): introduced and works,
637
+ (#getxxxx): get methods work,
638
+ (#get_all): works.
639
+
640
+ * lib/n/og.rb: introduced the new O-R library a hybrid between
641
+ ndb and ActiveRecord,
642
+ (ManagedClassMeta): introduced,
643
+ (#enchant): nice :),
644
+ cool, use capitalize to get the Backend,
645
+ (#get_connection): use a thread-local variable,
646
+ (#put_connection): use a thread-local variable,
647
+ (#wrap_method): uses a connection from Thread.local,
648
+ (#convert): converts a normal object to a managed object,
649
+ (#manage): fixed bug with create_table,
650
+ (#enchant): YEAH, added the first enchantments :)
651
+
652
+ 28-10-2004 George Moschovitis <gm@navel.gr>
653
+
654
+ * lib/n/connection.rb (#create_schema, #drop_schema): removed.
655
+
656
+ * lib/n/managed.rb: fix in __db_read_row.
657
+
658
+ * lib/n/server/appserver.rb: show where app server is listening too.
659
+
660
+ * examples/simple/conf/*: greatly simplified configuration.
661
+
662
+ * lib/n/config.rb: moved many standard configurations
663
+ here.
664
+
665
+ 27-10-2004 George Moschovitis <gm@navel.gr>
666
+
667
+ * lib/n/db.rb: dont require utils and connection by default.
668
+
669
+ * lib/n/db/connection.rb (#count_children): use get_res_value,
670
+ greatly improved the organization and documentation.
671
+
672
+ * lib/n/db/mysql.rb: added latest psql fixes,
673
+ (#calc_fields): reimplemented,
674
+ (#get_res_value): introduced.
675
+
676
+ * test/n/tc_db_mysql.rb: many fixes.
677
+
678
+ * test/n/server/tc_filters.rb: added.
679
+
680
+ * lib/n/db/psql.rb (#retry_query): should raise after retries [b.candler],
681
+ (#retry_query, #next_oid): use //i in error checks [b.candler],
682
+ (#exec, #exec_clear): moved from connection,
683
+ removed PsqlBackend, overload DbConnection instead.
684
+
685
+ * MAJOR: removed the App namespace module from many many files.
686
+
687
+ * bin/new_project.rb: moved from etc/
688
+
689
+ * lib/n/server: renamed from app, more standard naming.
690
+
691
+ * lib/n/app/requestpart.rb: renamed.
692
+
693
+ * lib/n/app/webrick.rb: merged webrick-servlet.rb
694
+
695
+ * lib/n/server/PLAYBACK.txt: removed
696
+
697
+ * lib/n/server/RESEARCH.txt: removed
698
+
699
+ 26-10-2004 George Moschovitis <gm@navel.gr>
700
+
701
+ * lib/n/app/dispatcher.rb: introduced for experiments in design.
702
+
703
+ * lib/n/logger.rb: cleaned up formating with some Ruby magic.
704
+
705
+ * lib/n/shaders.rb (NilShader): name = nil for better dumps.
706
+
707
+ * lib/n/app/webrick-servlet.rb: alias :do_POST.
708
+
709
+ * Rakefile, added builder as required in the Gem.
710
+
711
+ * lib/n/app/handlers/page-handler.rb (#transform_script):
712
+ support <?rb as marker [c.nasis].
713
+
714
+ 25-10-2004 George Moschovitis <gm@navel.gr>
715
+
716
+ * --- VERSION 0.2.0 ---
717
+
718
+ * test cases pass again.
719
+
720
+ * lib/n/app/webrick-servlet.rb: fixed bug with default index,
721
+ better handler selection.
722
+
723
+ * lib/n/db/utils.rb: prepend _ before tables. it was dangerous!
724
+
725
+ * lib/n/db.rb: wrap drop table.
726
+
727
+ * lib/n/db/psql.rb: use Base64.decode64.
728
+
729
+ * examples/ndb/rub.rb: implemented.
730
+
731
+ 23-10-2004 George Moschovitis <gm@navel.gr>
732
+
733
+ * examples/ndb/*: introduced.
734
+
735
+ * lib/n/app/webrick-servlet.rb (#create_request): enforce default
736
+ index if missing.
737
+
738
+ * lib/n/config.rb: index_filename renamed from $srv_default_file.
739
+
740
+ * lib/n/utils/string.rb (#extension_from_path): returns nil if no
741
+ exception.
742
+
743
+ * lib/n/app/server.rb: info msg on start to let the admin know,
744
+ the server has started.
745
+
746
+ * lib/n/app/webrick.rb: extend from App::Server.
747
+
748
+ * examples/tiny/ctl: run without apache.
749
+ * examples/tiny/conf/config.rb: run without apache.
750
+
751
+ * examples/simple/README: improved.
752
+
753
+ 22-10-2004 George Moschovitis <gm@navel.gr>
754
+
755
+ * README: updated.
756
+
757
+ * fixed many file permissions.
758
+
759
+ * examples/simple/conf/config.rb: fixes.
760
+
761
+ * examples/simple/app.rb: fixes.
762
+
763
+ * test/*: copied all tests here,
764
+ too many fixes to list to make all tests pass again.
765
+
766
+ * Rakefile: fixed :install,
767
+ TestTask.
768
+
769
+ * lib/n/tools: removed.
770
+
771
+ * lib/n/app/request.rb: params alias for parameters.
772
+
773
+ * lib/xsl/ce.xsl: removed, not ready.
774
+
775
+ * lib/xsl/localization.xsl: deprecated.
776
+
777
+ * no need for action=#{request.uri} in forms.
778
+
779
+ * improved RDoc documentation to many, many souce files.
780
+
781
+ 21-10-2004 George Moschovitis <gm@navel.gr>
782
+
783
+ * lib/n/db/make-release.sh: removed.
784
+
785
+ * improved RDoc documentation to many, many, many source files.
786
+
787
+ * lib/n/app/user.rb (AnonymousUser#role?): introduced.
788
+
789
+ * lib/n/db/utils.rb (#write_prop): use base64 encoding.
790
+
791
+ * lib/n/db/psql.rb (#read_prop): use base64 encoding.
792
+
793
+ * Rakefile: added dependency for postgres-0.7.1
794
+
795
+ * doc/*: moved many txt files to the gen/doc directory.
796
+
797
+ 21-10-2004 George Moschovitis <gm@navel.gr>
798
+
799
+ * --- VERSION 0.1.2 ---
800
+
801
+ * README: final changes before the release.
802
+
803
+ 20-10-2004 George Moschovitis <gm@navel.gr>
804
+
805
+ * lib/n/server/cluster.rb: removed.
806
+
807
+ * lib/n/tools: cleaned up.
808
+
809
+ * lib/n/ui/pager.rb: removed old N2 stuff.
810
+
811
+ * examples/simple/env.rb: introduced and fixed.
812
+
813
+ * reworked many source files to generate better rdoc.
814
+
815
+ * packaged as a Gem.
816
+
817
+ * Rakefile: read version from config,
818
+ fixed gem spec to include all files.
819
+
820
+ * examples/tiny/*: introduced tiny example.
821
+
822
+ * AUTHORS: introduced.
823
+
824
+ * lib/n/app/handlers/page-handler.rb: FUCKIN INCREDIBLE, the xml
825
+ parser was not needed, removed!!!
826
+
827
+ * lib/n/shaders.rb: converted to use ruby-xslt.
828
+
829
+ * README: started working on it.
830
+
831
+ * MIT-LICENCE: added.
832
+
833
+ 19-10-2004 George Moschovitis <gm@navel.gr>
834
+
835
+ * lib/n/app/webrick-servler.rb (#do_GET): better error handling.
836
+
837
+ * examples/simple/conf/apache.conf: cleaned.
838
+
839
+ * examples/simple/*: working sitemap.
840
+
841
+ * examples/simple/root/comments.si: introduced.
842
+ * examples/simple/root/comments-form.ss: introduced.
843
+
844
+ * lib/xsl/base.xsl: deprecated old stuff,
845
+ removed <x:include> macro.
846
+
847
+ * lib/db/psql.rb (#create_table): always create oid_seq and surpress
848
+ the possible error,
849
+ better error reposritng in methods.
850
+
851
+ * examples/simple/lib/lc-en.rb: introduced.
852
+
853
+ * examples/simple/lib/methods.rb: introduced,
854
+ add_article.
855
+
856
+ * examples/simple/lib/entities.rb: introduced.
857
+
858
+ * lib/n/shaders.rc (NilShader): introduced.
859
+ (Shader): transform alias.
860
+
861
+ * lib/n/app/user.rb: introduced,
862
+ (AnonymousUser): defined.
863
+
864
+ * lib/n/app/handlers/page-handler.rb: use $default_shader,
865
+ (#calc_tag): check if shader exists,
866
+ (#transform_script): added support for nil shader,
867
+ (#transform_script): new ULTRA COOL method macro,
868
+ (#transform_script): mega, resolve dynamic includes too.
869
+
870
+ * examples/simple/ctl: improved.
871
+
872
+ * examples/simple: introduced,
873
+ copied some files from app to build the example,
874
+ use shaders,
875
+ use css.
876
+
877
+ * etc/new-project.rb: introduced.
878
+
879
+ * etc: moved from scripts.
880
+
881
+ 18-10-2004 George Moschovitis <gm@navel.gr>
882
+
883
+ * lib/n/db/connection.rb (#match): use safe query.
884
+
885
+ * lib/n/app/webrick-servlet.rb (#do_GET): even better error log.
886
+
887
+ * lib/n/db.rb: added get_by_oid wrapper.
888
+
889
+ * Rakefile: excellent builds tgs, zip and gem,
890
+ dont include .svn dirs,
891
+ RDocTask.
892
+
893
+ * excellent, the reference app runs again.
894
+
895
+ 18-10-2004 George Moschovitis <gm@navel.gr>
896
+
897
+ * lib/p: introduced
898
+
899
+ * lib/xsl: copied the old shaders directory.
900
+
901
+ * bin/cluster.rb: link to the cluster.
902
+
903
+ 18-10-2004 George Moschovitis <gm@navel.gr>
904
+
905
+ * MAJOR CHANGE: recreated directory structure under /nitro
906
+ to make more compatible with other ruby projects.
907
+
908
+ 17-10-2004 George Moschovitis <gm@navel.gr>
909
+
910
+ * app/conf/debug-config.rb: no error_page when debugging to avoid
911
+ loops.
912
+
913
+ * n/app/webrick-servlet.rb: better default error page,
914
+ greatly improved info on default error page.
915
+
916
+ * documented many source files.
917
+
918
+ * n/sitemap.rb: moved out of UI namespace,
919
+ (SitePage): added extra fields: real_uri, shader, level,
920
+ (SiteMap): fixed to_s, extend from Hash.
921
+
922
+ * n/app/handlers/page-handler.rb (#evaluate_script): dont use
923
+ try_render,
924
+ overload_paths FUCKIN MEGA!
925
+
926
+ * n/app/handlers/page-handler.rb (#evaluate_script): dont use
927
+ try_render,
928
+ overload_paths FUCKIN MEGA!
929
+
930
+ * started using :: for Ruby standard methods everywhere.
931
+
932
+ * Rakefile: introduced.
933
+
934
+ * n/utils/gfx.rb (#grab_exif): implemented.
935
+
936
+ * app/env.rb: require "n/db/tools".
937
+
938
+ * p/pictures/entities.rb (Picture#upload): introduced and improved
939
+ from original code.
940
+
941
+ * p/files/entities.rb: added path prop accessor.
942
+
943
+ * p/pictures/methods.rb: introduced,
944
+ (#upload_picture): implemented.
945
+
946
+ * p/pictures/part.rb: introduced
947
+
948
+ * p/pictures/entities.rb: introduced
949
+
950
+ * p/feeds/part.rb: introduced.
951
+
952
+ * p/feeds: renamed from syndication.
953
+
954
+ 14-10-2004 George Moschovitis <gm@navel.gr>
955
+
956
+ * p/geoloc/entities.rb (#country_code_for_ip): introduced.
957
+
958
+ * p/geoloc/scripts/geoip-to-db.rx: introduced and recoded.
959
+
960
+ * n/db/tools.rb (DbTools): converted to class methods.
961
+ (DbTools#alter_table): improved,
962
+ after many fixes the alter table works even for non entities.
963
+
964
+ 13-10-2004 George Moschovitis <gm@navel.gr>
965
+
966
+ * n/db/managed.rb (Module#manage): dont define update methods
967
+ for classes that do not define a primary key.
968
+
969
+ * p/geoloc/methods.rb (distance): introduced and optimized.
970
+
971
+ * converted all prop_accessors to the latest code.
972
+
973
+ * n/db/psql.rb: create table works with new properties api
974
+
975
+ * n/.tc-properties.rb: introduced.
976
+
977
+ * n/properties.rb: removed sql_type,
978
+ (prop_accessor): changed signature.
979
+
980
+ * n/parts.rb: added documentation,
981
+ added dependencies variable in part.
982
+
983
+ * n/app/webrick-servlet.rb: get correct last_ip
984
+
985
+ 12-10-2004 George Moschovitis <gm@navel.gr>
986
+
987
+ * p/sync: introduced.
988
+
989
+ * p/content/mixins.rb: Permissions -> ContentFlags.
990
+
991
+ * p/files/part.rb: introduced.
992
+
993
+ 12-10-2004 George Moschovitis <gm@navel.gr>
994
+
995
+ * p/*: some fixes to make the mixins work again.
996
+
997
+ 12-10-2004 George Moschovitis <gm@navel.gr>
998
+
999
+ * p/glue/part.rb: correctly require methods.
1000
+
1001
+ * n/mixins/*: removed
1002
+
1003
+ * n/mixins/rankable.rb: moved to scrap.
1004
+
1005
+ * p/content/mixins.rb: introduced copied existing modules.
1006
+
1007
+ * p/glue/mixins.rb: introduced copied existing modules.
1008
+
1009
+ * n/mixins.rb: introduced, one file for all mixins.
1010
+
1011
+ * use module instead of namespace.
1012
+
1013
+ * n/db/psql.rb: use safe_query in create/drop schema.
1014
+
1015
+ * n/db/*: tried to make compatible with mysql, failed.
1016
+
1017
+ * n/db/managed.rb (sql_index): improved.
1018
+
1019
+ 11-10-2004 Elias Athanasopoulos <elathan@navel.gr>
1020
+
1021
+ * n/db/mysql.rb: Db backend for MySQL.
1022
+ * n/.tc-db-mysql.rb: Test Unit for Db's MySQL backend.
1023
+
1024
+ * scrap/fix-geo-sql.rb: New script. It produces an SQL schema for a
1025
+ table with Geographical information about IP addresses.
1026
+ * scrap/geo.csv: New file. Geographical Information about IP
1027
+ address in CSV format.
1028
+
1029
+ 11-10-2004 George Moschovitis <gm@navel.gr>
1030
+
1031
+ * n/properties.rb: prop_accessor alias,
1032
+ no trailing __ in __force methods.
1033
+
1034
+ * p/content/entities.rb (Lockable): introduced,
1035
+ (Versionable): introduced,
1036
+ (Schedulable): introduced.
1037
+
1038
+ 11-10-2004 George Moschovitis <gm@navel.gr>
1039
+
1040
+ * n/db/psql.rb (#create_table): works with new sql_index.
1041
+
1042
+ * n/db/managed.rb (Module#sql_index): redefined, accepts strings
1043
+ and symbols, unique param + extrasql.
1044
+
1045
+ * p/geoloc: introduced geoloc part.
1046
+
1047
+ * app/root/m/msg: message big icons.
1048
+
1049
+ * p/files: introduced part.
1050
+
1051
+ * gems/ndb.gemspec: fixed to include all needed files.
1052
+
1053
+ * n/db/utils.rb (DbUtils#write_prop): support for Object,
1054
+ Array, Hash objects.
1055
+
1056
+ * n/db/psql.rb (DbUtils#read_prop): support for Object, Array,
1057
+ Hash objects.
1058
+
1059
+ 10-10-2004 George Moschovitis <gm@navel.gr>
1060
+
1061
+ * gems: dir introduced.
1062
+
1063
+ * n/README: introduced.
1064
+
1065
+ * cell.gemspec: gemspec for cell engine.
1066
+
1067
+ * ndb.gemspec: gemspec for db.
1068
+
1069
+ * n/parts.rb (#prepared_statements): introduced,
1070
+ added comments.
1071
+
1072
+ * n/db/connection.rb: removed again sibling methods.
1073
+
1074
+ * n/db/psql.rb: EXCELLENT, mixin the backend into DbConnection.
1075
+
1076
+ * n/db.rb: support for multiple backends.
1077
+
1078
+
1079
+ * n/db/mysql.rb: Db backend for MySQL.
1080
+ n/.tc-db-mysql.rb: Test Unit for Db's MySQL backend.
1081
+
1082
+ * scrap/fix-geo-sql.rb: New script. It produces an SQL schema for a table with
1083
+ Geographical information about IP addresses.
1084
+ scrap/geo.csv: New file. Geographical Information about IP address in CSV format.
1085
+
1086
+
1087
+
1088
+ * n/db/mixins.rb: (Entity#__db_pre_insert): use next_oid
1089
+
1090
+ * n/db/README: slightly improved documentation.
1091
+
1092
+ * n/db/managed.rb: removed trailing __ from insert, update,
1093
+ (#__db_eval_db_insert): use retry_query,
1094
+ added more comments.
1095
+
1096
+ * n/utils/time.rb: removed sql related methods.
1097
+
1098
+ * n/db/connection.rb: moved many methods to n/db/psql.rb
1099
+
1100
+ * n/db/psql.rb: introduced,
1101
+ (#initialize),
1102
+ (#retry_query), (#safe_query)
1103
+ (#close): extracted from n/db/connection.rb,
1104
+ (#create_schema), (#drop_schema): introduced,
1105
+ sql time/date methods,
1106
+ (#next_oid): implemented,
1107
+ better error messages
1108
+
1109
+ * n/db/utils.rb (#resolve): removed,
1110
+ moved method implementations to backends.
1111
+ (#sql_table_to_class): removed,
1112
+
1113
+ * n/db/utils.rb: introduced, copied stuff from connection.
1114
+
1115
+ * n/db/connection.rb: cleaned up the code,
1116
+ match? alias.
1117
+
1118
+ * n/db.rb: made wrap_method and rest private,
1119
+ removed unused methods,
1120
+ cleaned up the code.
1121
+
1122
+ * n/db/make-release.sh: make n/Db release.
1123
+
1124
+ * app/root/s/simple/style.css: updated msg styles.
1125
+
1126
+ * yeah, I got comments displayed.
1127
+
1128
+ * n/utils/time.rb (#date_time): copied from old code and simplified.
1129
+
1130
+ * p/users/entities.rb (User): icon -> to_icon
1131
+ (User#to_html): introduced.
1132
+
1133
+ * p/markup/censors.rb: updated.
1134
+
1135
+ * p/markup/part.rb: introduced, copied from def.rb
1136
+ MarkupUtils.
1137
+
1138
+ * app/root/s/simple/shader.xsl (x:footer): correct w3c.validator
1139
+
1140
+ 07-10-2004 George Moschovitis <gm@navel.gr>
1141
+
1142
+ * correct :nodoc: all for test cases.
1143
+
1144
+ * n/db/*: added much more RDoc comments.
1145
+
1146
+ * created n/db distribution.
1147
+
1148
+ * p/messages/def.rb: deleted.
1149
+
1150
+ * n/.tc-db.rb: tests run again.
1151
+
1152
+ 06-10-2004 George Moschovitis <gm@navel.gr>
1153
+
1154
+ * more mass replaces to make older code work.
1155
+
1156
+ * p/messages/*: many many fixes to make it work again.
1157
+
1158
+ * p/messages/methods.rb: introduced.
1159
+
1160
+ 06-10-2004 George Moschovitis <gm@navel.gr>
1161
+
1162
+ * p/messages/part.rb: introduced.
1163
+
1164
+ * app/conf/apache.conf: users redirect.
1165
+
1166
+ * p/users/methods.rb (#register_user): userprofile gets created correctly.
1167
+
1168
+ * n/db/connection.rb (#retry_query): fixed,
1169
+ (DbUtils#sql_write_prop): fixed Time, Date writing
1170
+
1171
+ * n/app/request.rb (Request#get_cookie): fixed unescape bug.
1172
+
1173
+ * app/root/s/simple/shader.xsl: top_ads,
1174
+ introduced debug-options in footer,
1175
+ rss, home link in header.
1176
+
1177
+ * app/root/s/simple/style.css: improved css.
1178
+
1179
+ * n/DOCS/css.txt: introduced, info about centering page.
1180
+
1181
+ 05-10-2004 George Moschovitis <gm@navel.gr>
1182
+
1183
+ * p/users/entities.rb (RoleOwner#add_role): fixed NASTY bug.
1184
+
1185
+ * p/users/methods.rb (#update_roles): introduced,
1186
+ yeah, it works like cooler,
1187
+ handel full clear.
1188
+
1189
+ * p/glue/std.js: intoduced,
1190
+ (cbSetAll): introduced.
1191
+
1192
+ * p/locales/lc-en.rb: added more strings.
1193
+
1194
+ * p/users/roles-form.ss: introduced
1195
+
1196
+ 04-10-2004 George Moschovitis <gm@navel.gr>
1197
+
1198
+ * app/slude/conf/debug-conf.rb: log to STDERR.
1199
+
1200
+ * app/root/s/simple/shader.xsl: use <noscript> to be compatible with
1201
+ links.
1202
+
1203
+ * YEAH, editing with vi :)
1204
+
1205
+ * initialize(*args) for all db mixins.
1206
+
1207
+ * n/app/webrick-servlet.rb: make error page work for .rx pages.
1208
+
1209
+ * n/db.rb (#wrap_method): use an ensure clause, NASTY bug!
1210
+
1211
+ * n/db/connection.rb (#delete): use exec_clear.
1212
+
1213
+ * p/users/entities.rb (RolesOwner): introduced,
1214
+ (RolesOwner): moved level and stuff.
1215
+
1216
+ * n/utils/time.rb (#sql_date): handle nil input.
1217
+
1218
+ * n/parts.rb: $roles, roles().
1219
+
1220
+ * p/content/entities.rb (Category): moved from category.rb
1221
+
1222
+ * n/category.rb: removed compatibility stuff.
1223
+
1224
+ 03-10-2004 George Moschovitis <gm@navel.gr>
1225
+
1226
+ * p/users/methods.rb (#add_role): recoded,
1227
+ (#del_role): recoded.
1228
+
1229
+ * p/users/entities.rb (User#role?): introduced,
1230
+ (Role): use char(16) for name,
1231
+ (User#add_role): introduced,
1232
+ (User#del_role): introduced.,
1233
+ (Role#delete): class method to delete roles,
1234
+ (UserGroup): introduced.
1235
+
1236
+ * n/app/page-handler.rb (#transform_script): encode shader in cached
1237
+ transformed scripts,
1238
+ also check the shader mtime.
1239
+
1240
+ * scripts to prepare db distribution.
1241
+
1242
+ * n/app/webrick-servlet.rb (WEBrick): overload HTTPRequest,
1243
+ (HTTPRequest#parse_uri): overload to add rewrite support.
1244
+ (#__rewrite): temp hack,
1245
+ (#__rewrite): made more flexible.
1246
+
1247
+ * n/DOCS/bugs.txt: introduced.
1248
+
1249
+ * p/users/part.rb: experimental rewrites.
1250
+
1251
+ * n/parts.rb: use title/body like content unit,
1252
+ (Part#initialize): call rewrites on init.
1253
+ introduced $rewrites.
1254
+
1255
+ * n/DOCS/todo.txt: introduced.
1256
+
1257
+ * n/app/page-handler.rb (#transform_script): cache the transformed
1258
+ scripts,
1259
+ calculate super time, invalidate cache from subscripts, MEGA,
1260
+ optimized to avoid loading .ss files for transformed.
1261
+
1262
+ * app/.cache: introduced cache link.
1263
+
1264
+ 01-10-2004 George Moschovitis <gm@navel.gr>
1265
+
1266
+ * n/mixins/permissions.rb: introduced.
1267
+
1268
+ * n/utils/time.rb (#parse_sql_date): handle nils.
1269
+
1270
+ * n/db/connection.rb (#retry_query): dont allow infinite looped,
1271
+ better catch the relation not exists exception.
1272
+
1273
+ * n/ui/date-select.rb: fixes,
1274
+ reverse order if yorder.
1275
+
1276
+ * p/user/methods.rb (#handle_profile): check for .store,
1277
+ grab birthdate,
1278
+ (#birthday_users): introduced,
1279
+ gets multiparams.
1280
+
1281
+ * n/db/connection.rb (#sql_write_prop): handle dates.
1282
+
1283
+ * n/utils/time.rb (#sql_date): introduced,
1284
+ (#parse_sql_date): introduced.
1285
+
1286
+ * n/ui/date-select.rb: introduced.
1287
+
1288
+ * p/users/icon-form.ss: introduced
1289
+ * app/root/users/edit-icon.sx: introduced.
1290
+
1291
+ * n/app/webrick-servlet.rb (#do_GET): ultracool internal redirect
1292
+ to the error page.
1293
+
1294
+ * app/root/glues/errors.sx: styled.
1295
+
1296
+ * app/root/layout.css: static style.
1297
+
1298
+ * p/glue/part.rb: introduced
1299
+ * p/glue/methods.rb: same
1300
+
1301
+ * app/root/glue: moved from system.
1302
+
1303
+ * n/std.rb: removed CVSXXX methods.
1304
+
1305
+ 29-09-2004 George Moschovitis <gm@navel.gr>
1306
+
1307
+ * app/users/emails/reset-password.st: introduced.
1308
+
1309
+ * app/users/emails/register.st: introduced.
1310
+
1311
+ * n/utils/mail.rb (#send): made it work.
1312
+
1313
+ * p/users/methods.rb (#signup_user): use the mail template,
1314
+ (#register_user): send email,
1315
+ (#reset_password): send email
1316
+
1317
+ 29-09-2004 George Moschovitis <gm@navel.gr>
1318
+
1319
+ * n/utils/template.rb: simple templating system.
1320
+
1321
+ 29-09-2004 George Moschovitis <gm@navel.gr>
1322
+
1323
+ * app/conf/apache.conf: moved from n/app.
1324
+
1325
+ * app/conf/config.rb: requires files too.
1326
+
1327
+ * removed $app_ prefix from some conf variables.
1328
+
1329
+ * app/root/users/emails/signup.st: introduced template.
1330
+
1331
+ * n/app/filters/autologin.rb: CHECK the password in the cookie, argh!
1332
+
1333
+ * p/users/methods.rb (#set_password): introduced,
1334
+ (#validate_password): introduced,
1335
+ (#force_login): introduced
1336
+
1337
+ * n/app/request.rb (Request#get): works like delete now.
1338
+
1339
+ 29-09-2004 George Moschovitis <gm@navel.gr>
1340
+
1341
+ * n/app/request-part.rb: introduced, copied functionality from
1342
+ request.
1343
+
1344
+ * app/root/s/shader.xsl: use relative ref to base.xsl.
1345
+
1346
+ * app/conf/config.rb: changed all refs to navel/,
1347
+ removed $app_base_dir.
1348
+
1349
+ 28-09-2004 George Moschovitis <gm@navel.gr>
1350
+
1351
+ * n/db/connection.rb: include DbTools.
1352
+
1353
+ * n/app/request.rb (#delete): rebuild qs only from parmeters with
1354
+ String keys.
1355
+
1356
+ * n/app/webrick-servlet.rb (#create_request): only set valid
1357
+ parameters to avoid having to use param?
1358
+
1359
+ * app/app.rb: moved app stuff to config, removed appsrv.
1360
+ * app/env.rb: updated
1361
+
1362
+ 27-09-2004 George Moschovitis <gm@navel.gr>
1363
+
1364
+ * n/mixins/schedulable.rb: introduced.
1365
+
1366
+ * p/users/methods.rb: _user postfix to methods,
1367
+ (#ban_user): no method check,
1368
+ use kick_user.
1369
+ (#unban_user): no method check,
1370
+ (#close_user): implemented,
1371
+ (#open_user): implemented
1372
+
1373
+ * MEGA, fixed many refs to args()/set_args().
1374
+
1375
+ * n/app/request.rb: removed old apache stuff,
1376
+ removed arg related stuff,
1377
+ (RequestPart): local_path -> body.
1378
+
1379
+ * p/users/methods (#del_user): fixed.
1380
+
1381
+ * n/db/connection.rb (DbConnection#get_by_oid): introduced, used by
1382
+ get.
1383
+
1384
+ * n/app/fragment.rb: updated to be compatible with
1385
+ lru cache changes.
1386
+
1387
+ * n/app/script.rb: updated to be compatible with
1388
+ lru cache changes.
1389
+
1390
+ * n/app/handlers/page-handler.rb: updated to be compatible with
1391
+ lru cache changes.
1392
+
1393
+ * n/utils/cache.rb: incorporated drak's changes,
1394
+ simplified/beautyfied more.
1395
+
1396
+ * n/app/session.rb (Session#login): check if user is banned.
1397
+
1398
+ * n/db/connection.rb: (#get): also accept name.
1399
+
1400
+ * n/db/mixins.rb: created and moved methods from managed.
1401
+
1402
+ * n/db/tools.rb: created and moved methods from connection.
1403
+
1404
+ * ChangeLog: moved to the root of the repository.
1405
+
1406
+ * n/app/request.rb: removed many old apache stuff,
1407
+ (#delete): renamed consume method, se the delete name to make
1408
+ the request compatible with hashes. So more methods are useful
1409
+ from the irb.
1410
+
1411
+ * p/users/methods.rb (#register): create and populate UserData,
1412
+ (#ban): introduced,
1413
+ yeah ban kicks out!
1414
+
1415
+ * n/db.rb: wrap exec, exec_and_clear,
1416
+ more wraps.
1417
+
1418
+ * n/utils/time.rb (#sql_timestamp): pass Time.now by default.
1419
+
1420
+ * p/users/entities.rb (User#login): update userdata,
1421
+ set last_ip.
1422
+ (UserData#intialize): set good defaults,
1423
+ (User): added flags,
1424
+ (User): added magic,
1425
+ (User#banned?): introduced,
1426
+ (User#closed?): introduced
1427
+
1428
+ 23-09-2004 George Moschovitis <gm@navel.gr>
1429
+
1430
+ * yeah, user icons work :)
1431
+
1432
+ * n/app/request.rb (RequestPart#save): return save part.
1433
+
1434
+ * n/utils/gfx.rb (#create_thumbnail): greatly simplified
1435
+
1436
+ * app/root/panel.ss: deleted
1437
+
1438
+ * n/utils/cache.rb: LRU, LRUSentinel -> Item, Sentinel.
1439
+
1440
+ * n/app/fragment.rb: removed old code,
1441
+ extend N::LRU.
1442
+
1443
+ * n/app/script.rb: no defcode, pagecode variables,
1444
+ (#__cache_put): just pass fragment.
1445
+
1446
+ 22-09-2004 George Moschovitis <gm@navel.gr>
1447
+
1448
+ * n/db/connection.rb (DbConnection#child): get one child!
1449
+
1450
+ * n/db/managed.rb (ManagedChild): introduced this common case,
1451
+ (Managed#__db_pk): return string.
1452
+ (Managed#__update): uses __db_pk.
1453
+
1454
+ * p/users/methods.rb (#register): create user profile,
1455
+ create user data,
1456
+ (#handle_profile): yeah, the profile gets updated.
1457
+
1458
+ * p/users/entities.rb (Settings): renamed UIProfile,
1459
+ (Profile): added more props.
1460
+ (BaseProfile): introduced.
1461
+ (User): added extra fields.
1462
+
1463
+ 22-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1464
+
1465
+ * n/application.rb (Application#parse_arguments): Use optparse.
1466
+
1467
+ * app/ctl: Modified for optparse.
1468
+
1469
+ * scrap/user-convert.rb: New script. Convert OG users to DB users.
1470
+ * scrap/user-report.rb: New script. Find users with duplicate emails.
1471
+
1472
+ 22-09-2004 George Moschovitis <gm@navel.gr>
1473
+
1474
+ * n/app/request.rb (Request#set_errors): only set errors unless empty.
1475
+
1476
+ * added many missing files in svn.
1477
+
1478
+ 21-09-2004 George Moschovitis <gm@navel.gr>
1479
+
1480
+ * FUCKIN MEGA, env works PERFECTLY!
1481
+
1482
+ * n/app/cluster.rb: start a drb $sessions.
1483
+
1484
+ * app/env.rb: yeah, use custom drb port, it participates in the cluster
1485
+ now.
1486
+
1487
+ * n/app/server.rb (ServerMixin#initialize): use $drb port form config,
1488
+ connect to dbr $sessions.
1489
+
1490
+ * n/app/filters/autologin.rb: del auth cookie when stale!
1491
+
1492
+ * yeah, login-logout works correctly.
1493
+
1494
+ * n/app/parts.rb: removed PartMethods alltogether.
1495
+
1496
+ * n/app/session.rb (Session#login): call $sessions.logout,
1497
+ no request param, not needed.
1498
+ (Session#logout): fixed cluster update,
1499
+ always del the nauth cookie,
1500
+ no params, made more flexible.
1501
+ (SessionManager): online_users -> online,
1502
+ more simplifications,
1503
+ (SessionManager#session_for_name): fixed.
1504
+ (Session#finalize): removed.
1505
+
1506
+ * n/app/request.rb: renamed :ERRORS to "ERRORS",
1507
+ (Request#redirect): enforce a meaningful deafult url,
1508
+ (Request#set_errors): introduced,
1509
+ pass errors as transaction entities to be more general,
1510
+ (Request#get_cookie): fixed NASTY bug,
1511
+ (Request#errors_to_a): fixed!
1512
+ (Request#get_cookie): fixed get_cookie,
1513
+ (Request#del_cookie): implemented.
1514
+
1515
+ 20-09-2004 George Moschovitis <gm@navel.gr>
1516
+
1517
+ * n/utils/cache.rb: totaly recoded algorithm,
1518
+ yeah seems to work and pass the testcases,
1519
+ extend from Hash to be more flexible,
1520
+ ultracool touch method.
1521
+
1522
+ 20-09-2004 George Moschovitis <gm@navel.gr>
1523
+
1524
+ * made all test cases hidden files!
1525
+
1526
+ 20-09-2004 George Moschovitis <gm@navel.gr>
1527
+
1528
+ * n/app/response.rb: removed
1529
+ * n/server/response.rb: same
1530
+ * n/server/request.rb: same
1531
+ * n/server/worker.rb: same
1532
+ * n/server/protocol.rb: same
1533
+ * n/server/proxy-server.rb: same
1534
+
1535
+ * MAJOR, user the unified requestr everywhere!
1536
+
1537
+ * n/app/webrick-servlet.rb: removed create_response,
1538
+ (#do_GET): updated for unified request/response.
1539
+
1540
+ * n/app/request.rb: removed more unneeded/n2 stuff,
1541
+ use :ERRORS instead of "ERRORS"
1542
+ MAJOR, in/out headers,
1543
+ moved response methods in request,
1544
+ yeah, IT works!,
1545
+ (#update_entity): renamed set_entity!
1546
+
1547
+ * n/mixins/moderated.rb: removed.
1548
+ * n/id.rb: removed
1549
+ * n/std.rb: renamed standard.rb
1550
+
1551
+ 20-09-2004 George Moschovitis <gm@navel.gr>
1552
+
1553
+ * n/web/*: removed the whole directory, YEAH!
1554
+
1555
+ * app/appsrv.rb: updated
1556
+ * app/env.rb: same
1557
+
1558
+ * n/app/webrick-servlet.rb: removed experimental redirect stuff.
1559
+
1560
+ * n/app/http.rb: removed, moved functionality to utils/http.
1561
+
1562
+ * changed namespace in tooo many files to list.
1563
+
1564
+ * n/server/cluster/*: removed from repository.
1565
+
1566
+ * copied all stuff from web/server to appserver.
1567
+
1568
+ * n/web/utils: deleted from repository.
1569
+
1570
+ * n/shaders/*: moved from web.
1571
+
1572
+ 20-09-2004 George Moschovitis <gm@navel.gr>
1573
+
1574
+ * moved scrap outside n.
1575
+
1576
+ 19-09-2004 George Moschovitis <gm@navel.gr>
1577
+
1578
+ * Changed tooo many files to log.
1579
+
1580
+ * app/requires.rb: removed more unneeded requires.
1581
+
1582
+ * n/standard.rb (Object): removed init_modules,
1583
+ (Kernel): pp_exception
1584
+
1585
+ * n/utils/array.rb: N namespace, no n2 compatibility.
1586
+ * n/utils/number.rb: same, ->number
1587
+ * n/utils/time.rb: no n2 compatibility.
1588
+ * n/utils/strings.rb: same
1589
+ * n/utils/graphics.rb: ->gxf.rb, ->GfxUtils, same.
1590
+ * n/utils/io.rb: removed, not needed!
1591
+ * n/utils/probe.rb: removed, moved functionality to standard!
1592
+ * n/utils/uri.rb: copied fromw web/utils, cleaned up.
1593
+ * n/utils/http.rb: copied fromw web/utils, cleaned up.
1594
+
1595
+ * n/appserver/request.rb: introduced,
1596
+ removed unused n2 stuff.
1597
+
1598
+ * app/app.rb: converted Slude to module!
1599
+
1600
+ * n/appserver/server.rb: (AppServerMixin#initialize_app): introduced,
1601
+ (AppServer#initialize): updated.
1602
+
1603
+ * n/appserver/webrick.rb: converted to Module,
1604
+ extend N::Server
1605
+
1606
+ * n/standard.rb: require "pp"
1607
+
1608
+ * app/env.rb: fixed!
1609
+
1610
+ * app/ctl: cool, use the -C.. flag in ruby,
1611
+ run cluster too.
1612
+
1613
+ * app/appsrv.rb: $:.unshift("..") removed.
1614
+
1615
+ * app/env.rb: $:.unshift("..") is more portable.
1616
+
1617
+ * n/appserver/cluster.rb: Implemented as application,
1618
+ it works as daemon, yeah.
1619
+
1620
+ * n/application.rb: removed n2 compatibility,
1621
+ recoded and simplified,
1622
+ suicide -> stop,
1623
+ fixed name-title confusion,
1624
+ recoded restart,
1625
+ no exit!
1626
+
1627
+ * MAJOR CLEANUP of old n2 code in repository:
1628
+
1629
+ * n/calendar.rb: removed
1630
+ * n/index.sx: removed
1631
+ * n/relations.rb: removed
1632
+ * n/og.rb: removed
1633
+ * n/math.rb: removed
1634
+ * n/content.rb: removed
1635
+ * n/web/mixins/*: removed
1636
+ * n/web/sync/*: removed
1637
+ * n/group.rb: removed
1638
+
1639
+ 17-09-2004 George Moschovitis <gm@navel.gr>
1640
+
1641
+ * YEAH, converted all R:: to N::
1642
+
1643
+ * n/parts.rb: module P = namespace for parts,
1644
+ register_part,
1645
+ attr_accessors, props,
1646
+
1647
+ * n/web/server/handlers/page-handler (#transform_script): dont
1648
+ encode *act* in actions.
1649
+
1650
+ * app/logs: symbolic link.
1651
+
1652
+ 17-09-2004 George Moschovitis <gm@navel.gr>
1653
+
1654
+ * app/root/p: relative link!
1655
+
1656
+ * app/logs: removed from repository, use a link instead.
1657
+
1658
+ * app/root/index.sx: updated.
1659
+
1660
+ * app/root/users/index.sx: introduced
1661
+
1662
+ * p/users/lc-en.rb: added many strings.
1663
+
1664
+ * n/web/server/handlers/page-handler: no need for *act*
1665
+
1666
+ * app/root/s/simple/shader.xsl: use sitemap in header.
1667
+
1668
+ * app/app.rb (#initialize_sitemap): cleanup, added users.
1669
+
1670
+ * n/web/server/request.rb (Request#set_arg): value defaults to true
1671
+
1672
+ 16-09-2004 George Moschovitis <gm@navel.gr>
1673
+
1674
+ * app/conf/config.rb: localhost as smtp.
1675
+
1676
+ * n/db/connection (DbConnection#match): introduced.
1677
+
1678
+ * p/users/lc-en.rb: added strings.
1679
+
1680
+ * p/users/def.rb (UsersActions#signup): introduced,
1681
+ (Users#signup): test for reserved emails.
1682
+
1683
+ * app/root/scripts/delta.rx: renamed from rb.
1684
+
1685
+ * n/web/server/request.rb: consume! -> consume.
1686
+
1687
+ * app/root/users/signup.sx: introduced, beautified
1688
+
1689
+ * app/root/s/simple/style.css: introduced,
1690
+ cool links markup,
1691
+ logo,
1692
+ cool navigation bar,
1693
+ cleaned up layout divs.
1694
+
1695
+ * app/root/s/simple/print.css: introduced
1696
+
1697
+ * n/web/server/handlers/page-handler.rb: removed shadermanager ref,
1698
+ dont keep pagecode/defcode in the generated script.
1699
+
1700
+ * n/web/server/handlers/rx-handler.rb: deleted
1701
+ * n/web/server/handlers/html-handler.rb: deleted
1702
+
1703
+ * p/users/signup-form.ss: introduced
1704
+
1705
+ 15-09-2004 George Moschovitis <gm@navel.gr>
1706
+
1707
+ * n/Changelog: more tab friendly.
1708
+
1709
+ 15-09-2004 George Moschovitis <gm@navel.gr>
1710
+
1711
+ * app/app.rb: Cleaned up!
1712
+
1713
+ * n/appserver/server.rb: cleaned up!
1714
+
1715
+ * n/web/server/handlers.rb: (ScriptHandler#compile_script): introduced
1716
+ (ScriptHandler#try_render): temp removed the error code from try render
1717
+ as it was buggy!
1718
+
1719
+ * n/appserver/apache.conf: updated
1720
+
1721
+ * p/locales/def.rb: removed uneeded requires.
1722
+
1723
+ * n/web/server/handlers/page-handler.rb: removed crappy old inject
1724
+ code
1725
+
1726
+ * n/web/server/handlers/code-handler.rb: introduced,
1727
+ after some fixes, it works!
1728
+
1729
+ * n/utils/strings.rb: removed dpe to funnytran(!!),
1730
+ (#to_greeklish): introduced.
1731
+
1732
+ * n/parts.rb (#require_part): use 'p/' as prefix!
1733
+
1734
+ * moved parts in a separate directory!
1735
+
1736
+ * TOTALY CHANGED DIR STRUCTURE, remomoved n1 stuff, and much
1737
+ of the n2 stuff.
1738
+
1739
+ * CONVERTED REPOSITORY TO SUBVERSION!
1740
+
1741
+ * app/conf/config: removed n1 deps,
1742
+ use CodeHandler,
1743
+ no HtmlHandler.
1744
+
1745
+ 14-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1746
+
1747
+ * n/appserver/webrick.rb: Redirect webrick log to /dev/null.
1748
+ * n/utils/graphics.rb (Graphics#create_thumbnail): Support animated GIFs
1749
+ for avatars and for files < 60 KBs.
1750
+
1751
+ * n1/web/utils/html.rb: Do not require n2/web/utils/html.
1752
+
1753
+ 14-09-2004 George Moschovitis <gm@navel.gr>
1754
+
1755
+ * n1/* : changed all refs to n1.
1756
+
1757
+ * app/root/s/deviant/shader.xsl: javascript unescapes cookie!
1758
+
1759
+ * app/root/panel.ss: javascript fix.
1760
+
1761
+ * YEAH, the new session is used!
1762
+
1763
+ * n/web/server/request.rb (#user): updated,
1764
+ (#anonymous): updated
1765
+
1766
+ * n/root/locales/def.rb: use n/l10n.rb now
1767
+
1768
+ * n/l10n.rb: added locales code.
1769
+
1770
+ * n/web/server/session.rb (Session): keep user, extend from Hash,
1771
+ no need for SKIP_AUTOLOGIN,
1772
+ (Session#refresh): cleaned up,
1773
+ yeah implemented all session methods,
1774
+ (#login): implemented,
1775
+ (#logout): implemented
1776
+
1777
+ * n/web/server/handlers/page-handler.rb (#process): dont http cache if
1778
+ $reload_scripts.
1779
+
1780
+ * n/appserver/filters/autologin.rb: cleaned up,
1781
+ use UsersActions.
1782
+
1783
+ * n/root/users/def.rb (UsersActions#logout): use $users_auth_cookie,
1784
+ delete the cookie on logout,
1785
+ (UsersActions#login): implemented,
1786
+ use session login/logout.
1787
+
1788
+ * n/root/users/login.rx: introduced
1789
+
1790
+ * n/db/connection.rb: Array, Hash -> bytea
1791
+
1792
+ 13-09-2004 George Moschovitis <gm@navel.gr>
1793
+
1794
+ * MAJOR: $session_manager -> $sessions.
1795
+
1796
+ * n/appserver/filters/autologin.rb: introduced.
1797
+
1798
+ * n/db/managed.rb (Managed#eval_db_read_row): code to read a TrueClass
1799
+
1800
+ * n/db.rb (Db#initialize): fixed bug in creating connections.
1801
+
1802
+ * YEAH, i got a hello world with only n3 code (Cell).
1803
+
1804
+ * app/conf/config.rb: $log -> app.log
1805
+
1806
+ * app: Recoded directory for clean app (Slude).
1807
+
1808
+ * app/ctl.sh: removed webrick refs.
1809
+
1810
+ * n/root/users/def.rb (User): added fields,
1811
+ (UsersActions#login): added,
1812
+ (AnonymousUser): added, hmmm...
1813
+ (User): Level Enumeration,
1814
+ (User): attributes, hmmm...,
1815
+ (User): first, last, full name.
1816
+
1817
+ * n/db/connection.rb (DbConnection#delete_descendants): correctly handle
1818
+ ParrentClass entities,
1819
+ after many fixes seems to kinda work,
1820
+ (DbUtils): boolean type, types with small cap!
1821
+
1822
+ 12-09-2004 George Moschovitis <gm@navel.gr>
1823
+
1824
+ * n/db/connection.rb (DbConnection): fixed bug in deserialize_one,
1825
+ (DbConnection#transaction): introduced,
1826
+ (DbConnection#delete): deletes descendants,
1827
+ (DbConnection#delete_descendants): introduced
1828
+
1829
+ * n/db.rb (Db#open): fixed nasty deserialize false bug!
1830
+
1831
+ * n/db/managed.rb (Child, ParentClass): removed __parent_class,
1832
+ (Managed): introduced #__ancestors_classes, #__descendants_classes
1833
+
1834
+ * lets SLUDE!
1835
+
1836
+ 11-09-2004 George Moschovitis <gm@navel.gr>
1837
+
1838
+ * app/root/s/deviant/style.css: buttonc.
1839
+
1840
+ * __meta__ -> __meta
1841
+
1842
+ * __props__ -> __props
1843
+
1844
+ * n/root/help/category.si,
1845
+ n/root/help/def.rb: fixes to make it work with latest code.
1846
+
1847
+ * n/web/server/handlers/page-handler.rb (#transform_script): AO, AS action
1848
+ macros,
1849
+ actions requests (*act*) are uncacheable.
1850
+
1851
+ * n/root/db: introduced db part.
1852
+
1853
+ 10-09-2004 George Moschovitis <gm@navel.gr>
1854
+
1855
+ * app/requires.rb: removed unneeded requires.
1856
+
1857
+ * app/root/faq/*: removed from CVS
1858
+ * n/root/faq/*: same
1859
+ * n/web/server/handlers/action-handler.rb: same
1860
+ * n/utils/arrays.rb: same
1861
+
1862
+ * n/root/help/def.rb (HelpPart): update_sitemap.
1863
+
1864
+ * n/root/help: RENAMED faq part to help,
1865
+ after many changes seems to work!
1866
+
1867
+ * n/root/admin/def.rb: introduced
1868
+
1869
+ * use $DBG instead of $DEBUG (used by ruby argh!)
1870
+
1871
+ * n/root/editor/def.rb: Introduced.
1872
+
1873
+ * n/root/editor/js: yeah, use tinyMCE.
1874
+
1875
+ 09-09-2004 George Moschovitis <gm@navel.gr>
1876
+
1877
+ * u/utils/tc-cache.rb: introduced,
1878
+ [], []=, delete, clear,
1879
+ recoded, use included hash.
1880
+
1881
+ * n/utils/cache.rb (LRUCache): implemented an LRUCache.
1882
+
1883
+ * use SafeHash instead of SafeCache everywhere.
1884
+
1885
+ * n/utils/hash.rb: splited from cache.rb, only hash utils.
1886
+
1887
+ * introduced VENDOR, VENDOR_URL metadata for parts.
1888
+
1889
+ * n/root/faq/def.rb (FaqActions): $application -> $lm
1890
+
1891
+ * n/appserver/cluster.rb (Slm#set!): optional lm parameter.
1892
+
1893
+ * app/root/faq/index.sx: restructured to avoid db queries in init
1894
+ phase.
1895
+
1896
+ 08-09-2004 George Moschovitis <gm@navel.gr>
1897
+
1898
+ * n/appserver/webrick: dont include Webrick module in the top scope,
1899
+ use a custom logger!
1900
+
1901
+ * after many many changes it kind works again!
1902
+
1903
+ * use symbols for request args.
1904
+
1905
+ * n/web/server/handlers/page-handler.rb (#transform_script): extract
1906
+ initcode (<?i ... ?>) and define __init_render.
1907
+
1908
+ * n/web/server/scripts.rb (#__calc_tag): introduced,
1909
+ (#__calc_lm): former __last_modified,
1910
+ (#__calc_tag): encode subscript tags too,
1911
+ (#__etag): SUPER hash the etag!
1912
+
1913
+ 08-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1914
+
1915
+ * app/webrick.rb ($DEBUG): New constant.
1916
+ * app/joy.rb ($DEBUG): Use it.
1917
+ * n/(various files): Transform $log.debug "" to $log.debug "" if $DEBUG.
1918
+ * n/db/connection.rb (alter_table): Implement.
1919
+
1920
+ 08-09-2004 George Moschovitis <gm@navel.gr>
1921
+
1922
+ * n/web/server/handlers/page-handler.rb (#transform_script): call
1923
+ __init_render for top level scripts.
1924
+
1925
+ 07-09-2004 George Moschovitis <gm@navel.gr>
1926
+
1927
+ * n/web/server/request.rb: script_hash -> tag.
1928
+
1929
+ * n/appserver/webrick-servlet.rb (#do_GET): dont set response content
1930
+ type if already set!
1931
+
1932
+ * n/web/server/fragment.rb (#initialize): default parameters.
1933
+
1934
+ * n/web/server/handlers/page-handler.rb (#process): dont http-cache
1935
+ in admin mode,
1936
+ (#eval_script): totaly changed fragment caching, memory based!
1937
+
1938
+ * n/web/server/scripts.rb (#__init_render): introduced,
1939
+ (#__last_modified): call sub __last_modifieds,
1940
+ (#__last_modified): take script file last_modified into account.
1941
+ (#__cache?): introduced.
1942
+
1943
+ 07-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1944
+
1945
+ * n/scrap/bot.rb: New file.
1946
+ * n/scrap/xmlize.rb: New file.
1947
+ * n/scrap/adjust-colors.rb: New file.
1948
+
1949
+ 06-09-2004 George Moschovitis <gm@navel.gr>
1950
+
1951
+ * n1/og/backend (#get): Set pid from row data!
1952
+
1953
+ * n/web/server/scripts.rb (#__lm_keys): removed
1954
+ (#__last_modified): uses __lm.
1955
+
1956
+ * removed _lm from lm keys.
1957
+
1958
+ * dont encode the uid in etags, nothing to gain.
1959
+
1960
+ * EXCELLENT: the new Cluster system DRAMATICALLY reduces
1961
+ drb calls!
1962
+
1963
+ * n/root/messages/def.rb (MessagesActions): Use $lm eveywhere
1964
+
1965
+ * n/appserver/server.rb (#initialize): use the brand new cluster
1966
+ functionality.
1967
+
1968
+ * n/appserver/cluster.rb: introduced,
1969
+ CHash, SHash,
1970
+ Clm, Slm,
1971
+ Yeah, kinda works!
1972
+ (CHash#[]=): remove dead servers,
1973
+ after A LOT of changes it now works!
1974
+
1975
+ 05-09-2004 George Moschovitis <gm@navel.gr>
1976
+
1977
+ * app/root/faq/index.sx (#__etag): experimental etag calculation
1978
+
1979
+ * yeah, i got a highlevel lm calculated.
1980
+
1981
+ * n/web/server/handlers/rx-handler.rb (#transform_script): made
1982
+ compatible with new page-handler,
1983
+ cleaned up.
1984
+
1985
+ * n/web/server/request.rb (Request#get_lm): introduced,
1986
+ (Request#set_lm): introduced,
1987
+ save timestamp as integer to optimize drb calls.
1988
+
1989
+ * n/web/server/handlers/page-handler.rb (#process): Only send Etags
1990
+ for cacheable pages,
1991
+ (#get_cached_fragment): fixed bug with fragment_hash.
1992
+
1993
+ 04-09-2004 George Moschovitis <gm@navel.gr>
1994
+
1995
+ * YEAH i got the subscripts calculated.
1996
+
1997
+ * n/web/server/webrick-servlet.rb (#create_request): dont keep
1998
+ $app_root_dir prefix!
1999
+
2000
+ * n/web/server/request.rb (Request): top_script.
2001
+
2002
+ * n/web/server/script.rb (Script): sub_scripts,
2003
+ TOO MANY changes to list.
2004
+
2005
+ * n/appserver/webrick-servlet.rb (#do_GET): use fragment.
2006
+
2007
+ * n/web/server/handlers/page-handler.rb (PageHandler#process): return fragment
2008
+ (PageHandler#sub_process): same
2009
+ (PageHanler#__include): use fragment,
2010
+ YEAH, update sub_scripts,
2011
+ TOO MANY changes to list,
2012
+ transform/compile methods dont need request,
2013
+ (#transform_script): calculate sub_scripts.
2014
+
2015
+ 03-09-2004 George Moschovitis <gm@navel.gr>
2016
+
2017
+ * app/root/panel.ss: dump user from cookie,
2018
+ fully replaced user bar with javascript.
2019
+
2020
+ * app/root/s/deviant/shader.xsl (<x:header>): parse nauth cookie.
2021
+
2022
+ * n/web/server/handlers/page-handler.rb (PageHandler#transform_script):
2023
+ added support for output buffers.
2024
+
2025
+ * n/web/shaders/base.xsl: <x:ob-start />,
2026
+ <x:ob-end />
2027
+
2028
+ * n/web/server/script.rb: cleaned up, comments.
2029
+
2030
+ * JOY.GR 1st birthday.
2031
+
2032
+ 02-09-2004 George Moschovitis <gm@navel.gr>
2033
+
2034
+ * app/root/s/deviant/print.css: fixed ref to simple.css
2035
+
2036
+ * n/appserver/apache.conf: use keepalive,
2037
+ SOS, use expires for images!!,
2038
+ fix for css mime type.
2039
+
2040
+ * COOL, i got not modified returned!
2041
+
2042
+ * n/web/server/response.rb (Response#set_not_modified): yeah!
2043
+
2044
+ * n/web/server/handlers/rx-handler.rb: updated to be compatible with
2045
+ changes.
2046
+
2047
+ * n/web/server/handlers/page-handler.rb:many changes to support HTTP Caching
2048
+ (PageHandler#get_compiled_script): always returns a script (or Exception),
2049
+ compiles the script if not exists.
2050
+ (PageHandler#eval_script): gets passed script,
2051
+ (PageHandler#sub_process): introduced, used in includes!
2052
+
2053
+ * n/appserver/webrick-servlet.rb: added some experimental rewrite
2054
+ code, ignore for the moment.
2055
+
2056
+ * n/web/server/script.rb (Script#__etag): hook to calculate the ETag
2057
+ for this page.
2058
+ (Script#__last_modified): hook to calculate last modified for this
2059
+ script.
2060
+
2061
+ 01-09-2004 George Moschovitis <gm@navel.gr>
2062
+
2063
+ * app/root/s/deviant/shader.xsl: <x:error-log />
2064
+
2065
+ * n/web/server/handlers/page-handler.rb (PageScript#__include):
2066
+ updated to be compatible with latest changes,
2067
+ less noise error report in include
2068
+
2069
+ * n/web/server/handlers/rx-handler.rb (RxScript#__include):
2070
+ updated to be compatible with latest changes.
2071
+
2072
+ * n/web/server/handlers.rb (Handler#try_render): use request.log_error
2073
+
2074
+ * n/web/server/request.rb (Request.log_error): special loging.
2075
+
2076
+ * n/utils/strings.rb: converted to StringUtils.
2077
+
2078
+ * app/fora/index.sx: link to rss.
2079
+ * app/fora/forum.sx: same.
2080
+
2081
+ * app/root/scripts/kick.rb: use session_for_user.
2082
+
2083
+ * n/fora/rss.rx: render fora entities.
2084
+
2085
+ * n/syndication: introduced,
2086
+ (SyndicationPart): same,
2087
+ (RSS): same
2088
+
2089
+ * n/syndication: introduced
2090
+
2091
+ 01-09-2004 Elias Athanasopoulos <elathan@navel.gr>
2092
+
2093
+ * app/scripts/og-to-db.rb (cut_prefix, html_escape): New methods. Used
2094
+ to cut the 'fora_' prefix from Forum#name and escape html tags in message
2095
+ bodies.
2096
+ * app/conf/debug-config.rb: Make $srv_url to point to 127.0.0.1.
2097
+ * n/root/markup/emoticons.rb: Switch 'smiley' with 'angel'.
2098
+
2099
+ * n/ui/sitemap.rb (SitePage#initialize): Inherit realm from
2100
+ parent if exists.
2101
+ * n/ui/sitmap.rb (SiteMap#to_s): New method.
2102
+ * n/ui/tc-sitemap.rb: Add testcase.
2103
+
2104
+ * n/standard.rb (CVSVERSION, CVSDATE): New methods to trim common
2105
+ CVS variables.
2106
+
2107
+ * n/root/fora/def.rb: Use CVSVERSION/CVSDATE.
2108
+ * n/faq/def.rb: Likewise.
2109
+ * n/messages/def.rb: Likewise.
2110
+ * n/users/def.rb: Likewise.
2111
+ * n/root/markup/censors.rb: Add more rules.
2112
+
2113
+ * app/root/scripts/kick.rb: New script to kick out users.
2114
+ * app/community/members/photo.sx: Add star members menu.
2115
+ * app/scripts/og-to-db.rb: Emoticonize, html escape messages and cut 'fora_'
2116
+ prefix fromm fora names.
2117
+ * app/root/scripts/kick.rb: New script to kick out users.
2118
+
2119
+ 31-08-2004 George Moschovitis <gm@navel.gr>
2120
+
2121
+ * n/db/managed.rb (Relation): pclass, tclass => Strings.
2122
+
2123
+ * n/root/fora/list.ss: ultra cool activity link!
2124
+
2125
+ * n/root/fora/fora.si: show moderators.
2126
+
2127
+ * n/root/fora/moderators-form.ss: show moderators.
2128
+
2129
+ * app/root/fora/forum-form.sx: tabs.
2130
+
2131
+ * n/root/locales/lc-en.rb: more locales.
2132
+ * n/root/locales/lc-el.rb: same.
2133
+
2134
+ * app/root/s/deviant/style.css: tabs-frame,
2135
+ button-left
2136
+
2137
+ * n/root/fora/def.rb (Forum#moderators): introduced,
2138
+ (ForaActions#add_moderator): introduced,
2139
+ (ForaActions#del_moderator): introduced
2140
+
2141
+ * n/root/users/def.rb (Role): introduced,
2142
+ (UsersActions#add_role): added, error checking, no dupplicates,
2143
+ (UsersActions#del_role): added
2144
+
2145
+ 31-08-2004 Elias Athanasopoulos <elathan@navel.gr>
2146
+
2147
+ * n/ChangeLog: Formatting.
2148
+
2149
+ 30-08-2004 Elias Athanasopoulos <elathan@navel.gr>
2150
+
2151
+ * n/scrap: New directory.
2152
+ * n/scrap/exif_parser.rb: New script.
2153
+ * n/scrap/faq-parser.rb: New script.
2154
+ * n/scrap/time-descr.rb: New script.
2155
+
2156
+ * app/ctl.sh: Modified to restart only Webrick when it is used
2157
+ with the restart parameter.
2158
+
2159
+ * n/DOCS/pg.txt: Created a PostgreSQL Tips file.
2160
+
2161
+ 30-08-2004 George Moschovitis <gm@navel.gr>
2162
+
2163
+ * n/fora/def.rb (ForumeMessage#__pre_insert): use thread_oid unstead
2164
+ of pid to prepare sql traverse.
2165
+
2166
+ * n/db/connection.rb (DbConnection#exec_and_clear): introduced,
2167
+ (DbConnection#deserialize_all/one): clear resultset.
2168
+
2169
+ * app/scripts/og-to-db.rb: moved from root/scripts,
2170
+ optimized + cleaned code,
2171
+ more fixes and it READS the old fora!,
2172
+ call insert_into_tree,
2173
+ set create_time,
2174
+ set fora/category description.
2175
+
2176
+ * n/root/messages/def.rb: (Message): include ParentClass.
2177
+ * n/category.rb: (Category): same
2178
+
2179
+ * n/db.rb: added more documentation.
2180
+
2181
+ * app/root/scripts/delta.rb: better cleanup.
2182
+
2183
+ * n/db/managed.rb: (Child, Relation, SqlTreeTraversable): pclass
2184
+ is stored as String (the actual class name). was a NASTY BUG!,
2185
+ (Child): use ony pid as index, the combined index wasnt used at all,
2186
+ use class.to_s instead of class.name,
2187
+ (ParentClass): extension to child.
2188
+
2189
+ * n/db/mysql-managed.rb: removed
2190
+ * n/db/mysql-connection.rb: removed
2191
+
2192
+ * app/root/faq/search.sx: use the new search infrastructure.
2193
+
2194
+ * n/root/play: removed part for now.
2195
+
2196
+ * app/root/fora/search.sx: introduced.
2197
+
2198
+ * n/glue/def.rb (PartActions#search_basesql): creates a basesql for
2199
+ searching,
2200
+ (PartActions#search_basesql): pass extrasql,
2201
+ (PartActions#search): search and return matching entities.
2202
+
2203
+ 29-08-2004 George Moschovitis <gm@navel.gr>
2204
+
2205
+ * YEAH, environments mostly work!
2206
+
2207
+ * n/appserver/webrick.rb (WebrickAppServer#initialize): use
2208
+ AppServerMixin.
2209
+
2210
+ * n/appserver/server.rb (AppServerMixin): intorduced
2211
+
2212
+ * app/env.rb: incredible, rails like environment allows full access
2213
+ to the appserver internals.
2214
+
2215
+ * app/webrick.rb: rearranged requires to be more flexible.
2216
+
2217
+ * app/app.rb: use the new more flexible configuration system.
2218
+ * app/conf/live-config.rb: live configuration.
2219
+ * app/conf/debug-config.rb: debug configuration.
2220
+
2221
+ * n/root/messages/def.rb: new setup for message styles, more configurable
2222
+ * n/root/messages/form.ss: same
2223
+
2224
+ * app/conf/config.rb new setup for message styles
2225
+
2226
+ * n/ui/sitemap.rb (SitePage): keep realm for each page.
2227
+
2228
+ 28-08-2004 George Moschovitis <gm@navel.gr>
2229
+
2230
+ * YEAH, favourites work with the new code.
2231
+
2232
+ * n/root/fora/favourites.si: use latest code
2233
+
2234
+ * n/root/fora/list.ss: use option_proc
2235
+
2236
+ * n/db.rb: updated db method wrappers.
2237
+
2238
+ * n/root/users/def.rb (FavouriteRelation): use target methods
2239
+ from base relation.
2240
+
2241
+ * n/db/connection.rb (DbConnection#get_join_fields): introduced,
2242
+ read join fields in deserialize methods,
2243
+ cleaned up code,
2244
+ when calling drop_table on a sequenced entity, drop the sequence too.
2245
+
2246
+ * n/db/managed.rb (Managed#eval_db_read_row): made more fault tolerant
2247
+ when properties change,
2248
+ cleaned up code,
2249
+ add join_fields in every managed object,
2250
+ (Relation#targets_for_parent): cool, sets join_fields!,
2251
+ (Relation#count_targets_for_parent): counts targets,
2252
+ (RelationUtils): introduced, copied the above methods
2253
+
2254
+ * n/root/fora/list.ss: fixed style handling
2255
+ * n/root/messages/list.ss: same
2256
+
2257
+ 27-08-2004 George Moschovitis <gm@navel.gr>
2258
+
2259
+ * YEAH, the new db code seems to work!
2260
+
2261
+ * n/root/fora/msg-list.si: fixed count sql
2262
+ * n/root/messages/list.si: same
2263
+
2264
+ * n/db/managed.rb (Managed#eval_db_read_row): uses fields order,
2265
+ works with PGresult.
2266
+
2267
+ * n/properties: name = str representation of symbols.
2268
+
2269
+ * n/db.rb (Db#entity_from_row): creates an entity from row,
2270
+ added fields safe hash that stores managed class db fields order.
2271
+
2272
+ * n/db/connection.rb (DbUtils#sql_write_prop): handle nil case,
2273
+ use exec(),
2274
+ (DbConnection#calc_fields): calculate fiels order from db,
2275
+ better handle empty results in safe/retry query!
2276
+
2277
+ 27-08-2004 Elias Athanasopoulos <elathan@navel.gr>
2278
+
2279
+ * created grab_exif code helper, to extract photo metadata.
2280
+
2281
+ * created a simple util to handle faqs.
2282
+
2283
+ 27-08-2004 George Moschovitis <gm@navel.gr>
2284
+
2285
+ * app/root/fora/activity.sx: use msg-list and latest code.
2286
+ * n/root/fora/activity.si: removed, use msg-list.si instead.
2287
+
2288
+ * n/db/connection.rb (DbUtils#count): count entities helper.
2289
+
2290
+ * n/root/fora/def.rb (MessagesPart): defined LPKEYS
2291
+ * n/root/messages/def.rb (ForaPart): same
2292
+
2293
+ * n/root/messages/list-panel.ss: recoded to be more flexible
2294
+ * n/root/messages/list.si: same
2295
+
2296
+ * n/web/server/script.rb (Script#__init): Compile time initialization.
2297
+
2298
+ * n/db/connection.rb (DbUtils#sql_write_prop): Escape strings!
2299
+
2300
+ * n/root/messages/def.rb (MessagesUtils#calc_pager) :
2301
+ new class with utils, calculates the pager and extrasql.
2302
+
2303
+ 26-08-2004 Elias Athanasopoulos <elathan@navel.gr>
2304
+
2305
+ * n/root/faq/category.si: Localized.
2306
+ * n/root/faq/search-faq-form.ss: Likewise.
2307
+ * n/root/faq/faq-form.ss: Likewise.
2308
+ * n/root/faq/lc-el.rb: Added new locale entries.
2309
+ * n/root/faq/lc-en.rb: Likewise.
2310
+
2311
+ * n/root/fora/activity.si: Localized.
2312
+ * n/root/fora/admin-panel.ss: Likewise.
2313
+ * n/root/fora/fora.si: Likewise.
2314
+ * n/root/fora/list.ss: Likewise.
2315
+ * n/root/fora/msg-form.ss: Likewise.
2316
+ * n/root/fora/msg-list.si: Likewise.
2317
+ * n/root/fora/panel.ss: Likewise.
2318
+ * n/root/fora/lc-el.rb: Added new locale entries.
2319
+ * n/root/fora/lc-en.rb: Likewise.
2320
+
2321
+ * n/root/messages/list-panel.ss: Localised.
2322
+ * n/root/messages/list.si: Likewise
2323
+ * n/root/messages/list.ss: Liewise.
2324
+ * n/root/messages/lc-el.rb: Added new locale entries.
2325
+ * n/root/messages/lc-en.rb: Likewise.
2326
+
2327
+ * n/web/server/handlers/page-handler.rb (PageHandler#transform_script):
2328
+ Make regular expressions non-greedy.
2329
+
2330
+ 26-08-2004 George Moschovitis <gm@navel.gr>
2331
+
2332
+ * app/root/fora/favourites.sx: fora favourites.
2333
+
2334
+ * n/root/glue/tools.ss: remove fav on click.
2335
+
2336
+ * n/appserver/webrick.rb: webrick version of appserver. Quite incredibly
2337
+ by setting the bind address I got a MAJOR speedup.
2338
+
2339
+ * n/db/managed.rb (SqlTreeTraversable#__db_pre_insert): setup depth,
2340
+ rgt, lft if not allready defined (bug).
2341
+
2342
+ * n/appserver/apache.conf: use navel user, mysql passwd and localhost
2343
+ to make compatible with other devs.
2344
+