ruby_ex 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. data/ChangeLog +693 -0
  2. data/NEWS +74 -0
  3. data/SPEC.dyn.yml +6 -6
  4. data/SPEC.gemspec +14 -0
  5. data/SPEC.yml +4 -4
  6. data/lib/abstract.rb +2 -4
  7. data/lib/abstract_node.rb +1 -2
  8. data/lib/algorithms/simulated_annealing.rb +50 -29
  9. data/lib/attributed_class.rb +50 -21
  10. data/lib/auto_object.rb +102 -0
  11. data/lib/blank_slate.rb +102 -0
  12. data/lib/cache.rb +1 -2
  13. data/lib/choose.rb +165 -163
  14. data/lib/commands.rb +2 -3
  15. data/lib/commands/command.rb +47 -20
  16. data/lib/commands/datas.rb +1 -1
  17. data/lib/commands/datas/composite.rb +5 -1
  18. data/lib/commands/datas/data.rb +102 -5
  19. data/lib/commands/datas/factory.rb +13 -6
  20. data/lib/commands/datas/temp.rb +3 -5
  21. data/lib/commands/factory.rb +1 -1
  22. data/lib/commands/helpers.rb +1 -1
  23. data/lib/commands/pipe.rb +10 -1
  24. data/lib/commands/runners.rb +1 -1
  25. data/lib/commands/runners/exec.rb +1 -1
  26. data/lib/commands/runners/fork.rb +3 -16
  27. data/lib/commands/runners/mock.rb +67 -0
  28. data/lib/commands/runners/runner.rb +5 -3
  29. data/lib/commands/runners/system.rb +1 -1
  30. data/lib/commands/seq.rb +2 -1
  31. data/lib/config_file.rb +10 -2
  32. data/lib/const_regexp.rb +1 -2
  33. data/lib/{dlogger.rb → d_logger.rb} +1 -2
  34. data/lib/daemon.rb +1 -2
  35. data/lib/diff.rb +1 -2
  36. data/lib/drb/drb_observable.rb +1 -2
  37. data/lib/drb/drb_observable_pool.rb +2 -2
  38. data/lib/drb/drb_service.rb +1 -2
  39. data/lib/drb/drb_undumped_attributes.rb +1 -2
  40. data/lib/drb/drb_undumped_indexed_object.rb +1 -2
  41. data/lib/drb/insecure_protected_methods.rb +1 -2
  42. data/lib/drb_ex.rb +2 -2
  43. data/lib/file_type.rb +466 -0
  44. data/lib/generate_id.rb +12 -6
  45. data/lib/genpasswd.rb +22 -0
  46. data/lib/hash_eval.rb +83 -0
  47. data/lib/histogram.rb +1 -2
  48. data/lib/hookable.rb +3 -4
  49. data/lib/hooker.rb +1 -3
  50. data/lib/html_encode.rb +191 -0
  51. data/lib/indexed_node.rb +0 -1
  52. data/lib/io_marshal.rb +4 -2
  53. data/lib/ioo.rb +3 -2
  54. data/lib/kill_all.rb +46 -0
  55. data/lib/labeled_node.rb +0 -1
  56. data/lib/logger_observer.rb +8 -4
  57. data/lib/md5sum.rb +3 -3
  58. data/lib/meta_factory.rb +99 -0
  59. data/lib/method_call.rb +87 -0
  60. data/lib/mocks.rb +12 -0
  61. data/lib/mocks/assertions.rb +50 -0
  62. data/lib/mocks/method_logger.rb +40 -0
  63. data/lib/mocks/mock.rb +64 -0
  64. data/lib/mocks/object.rb +47 -0
  65. data/lib/mocks/observer.rb +38 -0
  66. data/lib/module/autoload_tree.rb +30 -29
  67. data/lib/module/hierarchy.rb +176 -171
  68. data/lib/module/instance_method_visibility.rb +39 -38
  69. data/lib/node.rb +0 -1
  70. data/lib/object_monitor.rb +1 -2
  71. data/lib/object_monitor_activity.rb +1 -2
  72. data/lib/observable.rb +1 -2
  73. data/lib/observable_pool.rb +1 -2
  74. data/lib/{orderedhash.rb → ordered_hash.rb} +41 -5
  75. data/lib/pp_hierarchy.rb +7 -2
  76. data/lib/r_path.rb +307 -0
  77. data/lib/random_generators.rb +7 -20
  78. data/lib/random_generators/random_generator.rb +2 -4
  79. data/lib/random_generators/ruby.rb +4 -2
  80. data/lib/regex_path.rb +124 -0
  81. data/lib/ruby_ex.rb +28 -98
  82. data/lib/safe_eval.rb +1 -2
  83. data/lib/sendmail.rb +14 -17
  84. data/lib/service_manager.rb +1 -2
  85. data/lib/shuffle.rb +6 -2
  86. data/lib/spring.rb +1 -2
  87. data/lib/spring_set.rb +1 -2
  88. data/lib/{symtbl.rb → sym_tbl.rb} +90 -5
  89. data/lib/sym_tbl_gsub.rb +227 -0
  90. data/lib/{synflow.rb → syn_flow.rb} +1 -2
  91. data/lib/text.rb +218 -0
  92. data/lib/timeout_ex.rb +1 -2
  93. data/lib/trace.rb +9 -8
  94. data/lib/uri/druby.rb +1 -2
  95. data/lib/uri/file.rb +1 -1
  96. data/lib/uri/ftp_ex.rb +1 -1
  97. data/lib/uri/http_ex.rb +1 -1
  98. data/lib/uri/mysql.rb +121 -0
  99. data/lib/uri/pgsql.rb +19 -38
  100. data/lib/uri/svn.rb +1 -2
  101. data/lib/uri_ex.rb +45 -3
  102. data/lib/verbose_object.rb +181 -38
  103. data/lib/yaml/chop_header.rb +19 -11
  104. data/lib/yaml/transform.rb +17 -11
  105. data/lib/yaml/yregexpath.rb +11 -5
  106. data/test/algorithms/simulated_annealing_test.rb +2 -2
  107. data/test/resources/foo.tar.gz +0 -0
  108. data/test/resources/tar.gz.log +49 -0
  109. data/test/sanity-suite.yml +5 -7
  110. data/test/sanity/multiple-requires.yml +17 -7
  111. data/test/sanity/single-requires.yml +38 -20
  112. data/test/stress-tests/threads_and_exceptions.yml +13 -0
  113. data/test/test-unit-setup.rb +3 -1
  114. data/test/unit-suite.yml +7 -8
  115. metadata +42 -31
  116. data/lib/algorithms.rb +0 -12
  117. data/lib/ask.rb +0 -100
  118. data/lib/checkout.rb +0 -12
  119. data/lib/dumpable_proc.rb +0 -57
  120. data/lib/filetype.rb +0 -229
  121. data/lib/thread_mutex.rb +0 -11
  122. data/lib/yaml/basenode_ext.rb +0 -63
data/ChangeLog CHANGED
@@ -1,3 +1,696 @@
1
+ 2005-09-16 Nicolas Pouillard <ertai@lrde.epita.fr>
2
+
3
+ Bump RubyEx to 0.2.
4
+
5
+ * SPEC.dyn.yml: Update to 0.2.0.
6
+ * core_ex/README: Update to 0.3.
7
+ * NEWS: Add the 0.2 section.
8
+ * lib/commands/datas/data.rb: Add clean.
9
+
10
+ 2005-09-16 Nicolas Pouillard <ertai@lrde.epita.fr>
11
+
12
+ Various fixes.
13
+
14
+ * lib/thread_mutex.rb: Remove (useless).
15
+ * lib/text.rb: Fix a bug with the last \n.
16
+ * lib/sendmail.rb: Add (y/n) to the question.
17
+ * lib/ruby_ex.rb: Update the require process.
18
+ * SPEC.yml: Update dependencies.
19
+
20
+ 2005-09-16 Nicolas Pouillard <ertai@lrde.epita.fr>
21
+
22
+ Commands: Kill forked process at exit.
23
+
24
+ * lib/commands/datas/data.rb: Add D::Data#kill, D::Data.clean_all and
25
+ call clean_all at exit.
26
+ * lib/commands/datas/composite.rb: Add kill.
27
+ * lib/commands/runners/fork.rb: Call fork_init in the son.
28
+
29
+ 2005-09-16 Nicolas Pouillard <ertai@lrde.epita.fr>
30
+
31
+ * core_ex/SPEC.dyn.yml: CoreEx bump to 0.3.1.
32
+
33
+ 2005-09-16 Nicolas Pouillard <ertai@lrde.epita.fr>
34
+
35
+ Some other fixes.
36
+
37
+ * core_ex/lib/core_ex/object/instance_eval_with_args.rb,
38
+ * core_ex/lib/core_ex/module/mix_in_with_args.rb:
39
+ No more overload instance_eval but use instance_eval_with_args.
40
+ * core_ex/lib/yaml_extension.rb: Use suppress.
41
+
42
+ 2005-09-15 Nicolas Pouillard <ertai@lrde.epita.fr>
43
+
44
+ CoreEx bump to 0.3.
45
+
46
+ * core_ex/SPEC.dyn.yml: Bump to 0.3.0.
47
+ * core_ex/lib/core_ex/module/mix_in_with_args.rb: Disable tests when
48
+ ruby_ex is unavailable.
49
+ * core_ex/NEWS: Add the 0.3 section.
50
+ * vcs/ruby_ex.rb: Remove.
51
+ * vcs/HOWTO: Remove.
52
+ * vcs/vcs_ruby_ex.rb: New. Support of Vcs 0.3.
53
+
54
+ 2005-09-15 Nicolas Pouillard <ertai@lrde.epita.fr>
55
+
56
+ Add an automated vendor directory support.
57
+
58
+ * core_ex/lib/core_ex/rakefile_base.rf: Add vendor, revendor,
59
+ clobber_vendor, and tarballs.
60
+ * core_ex/lib/core_ex.rb: Add core_ex_vendor_require,
61
+ core_ex_gem_require, core_ex_require, core_ex_debug,
62
+ and core_ex_register_vendor.
63
+ * core_ex/SPEC.yml: Update dependencies.
64
+
65
+ 2005-09-14 Nicolas Pouillard <ertai@lrde.epita.fr>
66
+
67
+ Some fixes before the release.
68
+
69
+ * core_ex/lib/test/unit/u_i/yaml/test_runner.rb: No more use strings
70
+ to match exceptions.
71
+ * core_ex/lib/temp_path.rb: Clean up singleton methods, make
72
+ TempPath.init more complete, and add TempPath.fork_init that must be
73
+ called in child of a fork.
74
+ * core_ex/lib/core_ex/rakefile_base.rf: Import commands.
75
+ * core_ex/lib/core_ex/pathname.rb: Make Pathname#ext return a path.
76
+ * core_ex/lib/core_ex.rb: Require the activesupprt gem.
77
+
78
+ 2005-09-12 Nicolas Pouillard <ertai@lrde.epita.fr>
79
+
80
+ Some fixes and improvements of the Text class.
81
+
82
+ * lib/text.rb: Rename crop_width to crop and crop_long to clip.
83
+ Fix some bug with the \n handling. Add identity, and mask, to_text and
84
+ String#to_text.
85
+
86
+ 2005-09-12 Nicolas Pouillard <ertai@lrde.epita.fr>
87
+
88
+ Add MetaFactory.
89
+
90
+ * lib/meta_factory.rb: New. This class help to produce objects that,
91
+ share the same initializion step.
92
+
93
+ 2005-09-12 Nicolas Pouillard <ertai@lrde.epita.fr>
94
+
95
+ Fix a bug in our camelize version.
96
+
97
+ * core_ex/lib/core_ex.rb: Remove _s before /s.
98
+
99
+ 2005-09-09 Nicolas Pouillard <ertai@lrde.epita.fr>
100
+
101
+ Release in approach ...
102
+
103
+ * test/stress-tests/threads_and_exceptions.yml: New. It's not a real
104
+ stress test for now. But it shows how ruby (at least on my box) can
105
+ be nondeterminisc with threads and exceptions (perhaps a bug).
106
+ * test/test-unit-setup.rb: Use run_embedded_test_sections.
107
+ * SPEC.yml: Update the dependency version.
108
+ * lib/sendmail.rb: Import instead of require.
109
+ * lib/yaml/chop_header.rb: Add an accessor to the loaded document.
110
+
111
+ 2005-09-09 Nicolas Pouillard <ertai@lrde.epita.fr>
112
+
113
+ Add a little text manipulation class.
114
+
115
+ * lib/text.rb: New. Support things like justification, spliting,
116
+ croping, and clipping.
117
+
118
+ 2005-09-09 Nicolas Pouillard <ertai@lrde.epita.fr>
119
+
120
+ Update the rakefile and make the rake check works.
121
+
122
+ * core_ex/test/test-unit-setup.rb: Use run_embedded_test_sections.
123
+ * core_ex/lib/core_ex/rakefile_base.rf: Add ttk, vcs version checking.
124
+ Update :check and :distcheck.
125
+ * core_ex/lib/core_ex/module/mix_in_with_args.rb: Require 'ruby_ex'.
126
+ * core_ex/lib/core_ex/embedded_tests.rb: Add run_embedded_test_sections,
127
+ add @@embedded_test_blocks and rename @@files to @@embedded_test_files.
128
+
129
+ 2005-09-08 Nicolas Pouillard <ertai@lrde.epita.fr>
130
+
131
+ More imports, less requires.
132
+
133
+ * lib/commands/datas/factory.rb, lib/drb_ex.rb, lib/mocks/mock.rb.
134
+ * lib/mocks.rb: Use import! instead of require.
135
+
136
+ 2005-09-08 Nicolas Pouillard <ertai@lrde.epita.fr>
137
+
138
+ Minors updates on RubyEx.
139
+
140
+ * lib/thread_mutex.rb: Remove the :raise method because the new was
141
+ not loaded.
142
+ * lib/commands/datas/temp.rb, lib/commands/datas/factory.rb:
143
+ Remove some requires.
144
+ * lib/commands/datas/data.rb: Remove bad rescue blocks.
145
+ * lib/commands/runners/runner.rb: Include Abstract manually.
146
+ * lib/drb_ex.rb, lib/commands.rb, lib/abstract.rb: Use import! instead
147
+ of require for AutoloadTree, InstanceMethodVisibility.
148
+ * lib/ruby_ex.rb: Rename import! to import_all.
149
+ * lib/hookable.rb: Use suppress instead of rescue nil.
150
+ * lib/mocks.rb: Remove requires.
151
+ * lib/syn_flow.rb: Layout.
152
+
153
+ 2005-09-08 Nicolas Pouillard <ertai@lrde.epita.fr>
154
+
155
+ Minor updates on CoreEx.
156
+
157
+ * core_ex/lib/core_ex/rakefile_base.rf: Typo s/supress/suppress.
158
+ * core_ex/lib/core_ex/yaml.rb: Remove useless <<.
159
+ * core_ex/lib/core_ex/string.rb: Add `width' which take in account the
160
+ with of a tabulation..
161
+ * core_ex/lib/core_ex.rb: Fix the rescue block.
162
+
163
+ 2005-09-07 Nicolas Pouillard <ertai@lrde.epita.fr>
164
+
165
+ Turn warnings on.
166
+
167
+ * lib/commands/pipe.rb, lib/commands/command.rb, lib/commands/seq.rb:
168
+ Initialize @input, @output, and @error.
169
+ * lib/hookable.rb: Handle undefined @stack.
170
+ * lib/generate_id.rb: Choose a defferent name for the second test.
171
+ * lib/file_type.rb: Layout.
172
+ * SPEC.yml: No more use auto_require, and update dependencies.
173
+
174
+ 2005-09-07 Nicolas Pouillard <ertai@lrde.epita.fr>
175
+
176
+ Update tests.
177
+
178
+ * test/unit-suite.yml,
179
+ * test/sanity/multiple-requires.yml,
180
+ * test/sanity/single-requires.yml,
181
+ * test/test-unit-setup.rb,
182
+ * test/sanity-suite.yml:
183
+ Iterate instead of Glob, !S::Strat syntax, and lazy loading.
184
+
185
+ 2005-09-07 Nicolas Pouillard <ertai@lrde.epita.fr>
186
+
187
+ Many many changes and new things for RubyEx.
188
+
189
+ Remove many requires which are now useless, many are not yet
190
+ suppressed.
191
+
192
+ Renaming to follow the camelize/underscore convention.
193
+
194
+ * lib/rpath.rb: Rename to ...
195
+ * lib/r_path.rb: ... this.
196
+ And move new assertions to RPath::Assertions.
197
+ * lib/synflow.rb: Rename to ...
198
+ * lib/syn_flow.rb: ... this.
199
+ * lib/filetype.rb: Rename to ...
200
+ * lib/file_type.rb: ... this.
201
+ * lib/dlogger.rb: Rename to ...
202
+ * lib/d_logger.rb: ... this.
203
+ * lib/killall.rb: Rename to ...
204
+ * lib/kill_all.rb: ... this.
205
+ * lib/symtbl.rb: Rename to ...
206
+ * lib/sym_tbl.rb: ... this.
207
+ * lib/orderedhash.rb: Rename to ...
208
+ * lib/ordered_hash.rb: ... this.
209
+ * lib/symtbl_gsub.rb: Rename to ...
210
+ * lib/sym_tbl_gsub.rb: ... this. And modulize have_pretty_inspect.
211
+
212
+ New section.
213
+ * lib/blank_slate.rb: New. For method_missing based classes.
214
+ * lib/method_call.rb: New. A method name, arguments, and a block.
215
+ * lib/mocks.rb: New.
216
+ * lib/mocks/mock.rb: New. Abstract mock.
217
+ * lib/mocks/object.rb: New. Save all method calls.
218
+ * lib/mocks/observer.rb: New. Respond to update.
219
+ * lib/mocks/assertions.rb: New. Helpers for unit tests which use these
220
+ classes.
221
+ * lib/mocks/method_logger.rb: New. Respond to log and treat arguments
222
+ as a method call.
223
+ * lib/verbose_object.rb: New implementation, objects returned by a
224
+ method call on a verbose object are verbosified.
225
+ * lib/auto_object.rb: New. It's like a verbose object but without real
226
+ object inside.
227
+ * lib/html_encode.rb: New. Support accent encoding for the iso latin1
228
+ charset.
229
+
230
+ * lib/shuffle.rb,
231
+ * lib/genpasswd.rb,
232
+ * lib/pp_hierarchy.rb,
233
+ * lib/choose.rb,
234
+ * lib/ioo.rb,
235
+ * lib/module/hierarchy.rb,
236
+ * lib/module/autoload_tree.rb,
237
+ * lib/module/instance_method_visibility.rb,
238
+ * lib/yaml/yregexpath.rb,
239
+ * lib/yaml/chop_header.rb,
240
+ * lib/yaml/transform.rb,
241
+ * lib/generate_id.rb,
242
+ * lib/logger_observer.rb: Make a module of a class.
243
+
244
+ * lib/thread_mutex.rb: Add tests.
245
+
246
+ * lib/attributed_class.rb: Improve default handling, and add a draft
247
+ of a to_form method.
248
+ * lib/config_file.rb: Suppress warnings during tests.
249
+ * lib/uri_ex.rb: Use it to have all uri extentions.
250
+ * lib/commands/datas/data.rb: Make it a YamlExtension.
251
+ * lib/random_generators/ruby.rb: Set the default random generator.
252
+ * lib/random_generators.rb: require random_generators/ruby.
253
+ * lib/random_generators/random_generator.rb: Update abstract usage.
254
+
255
+ * lib/indexed_node.rb,
256
+ * lib/labeled_node.rb,
257
+ * lib/spring.rb,
258
+ * lib/algorithms/simulated_annealing.rb,
259
+ * lib/abstract_node.rb,
260
+ * lib/md5sum.rb,
261
+ * lib/object_monitor.rb,
262
+ * lib/observable.rb,
263
+ * lib/safe_eval.rb,
264
+ * lib/node.rb,
265
+ * lib/hash_eval.rb,
266
+ * lib/histogram.rb,
267
+ * lib/const_regexp.rb,
268
+ * lib/commands.rb,
269
+ * lib/daemon.rb,
270
+ * lib/abstract.rb,
271
+ * lib/diff.rb,
272
+ * lib/timeout_ex.rb,
273
+ * lib/hooker.rb,
274
+ * lib/object_monitor_activity.rb,
275
+ * lib/trace.rb,
276
+ * lib/cache.rb,
277
+ * lib/spring_set.rb,
278
+ * lib/observable_pool.rb,
279
+ * lib/io_marshal.rb,
280
+ * lib/uri/druby.rb,
281
+ * lib/uri/svn.rb,
282
+ * lib/hookable.rb,
283
+ * lib/regex_path.rb,
284
+ * lib/drb/drb_undumped_attributes.rb,
285
+ * lib/drb/drb_undumped_indexed_object.rb,
286
+ * lib/drb/drb_service.rb,
287
+ * lib/drb/insecure_protected_methods.rb,
288
+ * lib/drb/drb_observable.rb,
289
+ * lib/service_manager.rb: Just remove useless requires.
290
+
291
+ * lib/sendmail.rb: Update to HighLine and some other things.
292
+
293
+ * lib/ruby_ex.rb: Update to make it works these big changes.
294
+
295
+ Remove section.
296
+ * lib/yaml/basenode_ext.rb, lib/ask.rb, lib/algorithms.rb,
297
+ * lib/checkout.rb: Remove. Useless and/or deprecated.
298
+
299
+ 2005-09-07 Nicolas Pouillard <ertai@lrde.epita.fr>
300
+
301
+ Update tests and packaging of CoreEx.
302
+
303
+ * core_ex/test/check-core_ex.yml,
304
+ * core_ex/test/unit-suite.yml,
305
+ * core_ex/test/sanity/multiple-requires.yml,
306
+ * core_ex/test/sanity/single-requires.yml,
307
+ * core_ex/test/check-pkg-core_ex.yml,
308
+ * core_ex/test/sanity-suite.yml:
309
+ Update to the !S::Strat style, use Iterate, and check lazy loading.
310
+ * core_ex/test/test-unit-setup.rb: Update.
311
+ * core_ex/lib/core_ex/rakefile_base.rf: No more use `ask' but HighLine.
312
+ * core_ex/SPEC.yml: No more auto_require, and update the
313
+ activesupport version to ~> 1.1.1.
314
+
315
+ 2005-09-06 Nicolas Pouillard <ertai@lrde.epita.fr>
316
+
317
+ Update the importing/requiring/loading system.
318
+
319
+ * core_ex/lib/core_ex/rakefile_base.rf,
320
+ * core_ex/lib/core_ex/module/import.rb: s/import/import!.
321
+ * core_ex/lib/core_ex/pathname.rb: Add import!, split_with_load_path,
322
+ and load_path!.
323
+ * core_ex/lib/core_ex/time.rb: Import DTime for the test suite.
324
+ * core_ex/lib/core_ex/yaml.rb: No inline by default, the option become
325
+ Inline instead of NoInline.
326
+ * core_ex/lib/core_ex/dependencies_ext/constant_load_path.rb: New.
327
+ * core_ex/lib/core_ex.rb: Update to make the require happy.
328
+ * core_ex/lib/path_list.rb: Add load_path!. Fix a bug in the
329
+ globbing to regexp. s/import/import! and s/import_items/import
330
+
331
+ 2005-09-04 Nicolas Pouillard <ertai@lrde.epita.fr>
332
+
333
+ Update CoreEx packaging.
334
+
335
+ * core_ex/test/test-unit-setup.rb: Don't requires files which can be
336
+ loaded automatically.
337
+ * core_ex/SPEC.yml: Need activesupport.
338
+
339
+ 2005-09-04 Nicolas Pouillard <ertai@lrde.epita.fr>
340
+
341
+ Many chnages to the CoreEx architecture.
342
+
343
+ * core_ex/lib/core_ex/try_dup.rb: New.
344
+ * core_ex/lib/core_ex/proc.rb: New.
345
+ * core_ex/lib/core_ex/yaml.rb: Redispatch some parts into some files.
346
+ * core_ex/lib/yaml_extension.rb: New.
347
+
348
+ * core_ex/lib/core_ex/test/unit/ui/yaml/testrunner.rb: Rename to ...
349
+ * core_ex/lib/test/unit/u_i/yaml/test_runner.rb: ... this to follow
350
+ the same link between the camelcase name and the pathname.
351
+ * core_ex/lib/core_ex/temp_path.rb: Rename to ...
352
+ * core_ex/lib/temp_path.rb: ... this and update.
353
+ * core_ex/lib/core_ex/dtime.rb: Rename to ...
354
+ * core_ex/lib/d_time.rb: ... this and update.
355
+ * core_ex/lib/core_ex/dumpable_proc.rb: Rename to ...
356
+ * core_ex/lib/dumpable_proc.rb: ... this and update.
357
+ * core_ex/lib/core_ex/fileutils.rb: Rename to ...
358
+ * core_ex/lib/core_ex/file_utils.rb: ... this and update.
359
+ * core_ex/lib/core_ex/version.rb: Rename to ...
360
+ * core_ex/lib/version.rb: ... this and update.
361
+ * core_ex/lib/core_ex/pathlist.rb: Rename to ...
362
+ * core_ex/lib/path_list.rb: ... this and update.
363
+
364
+ * core_ex/lib/core_ex/enumerable.rb: Minor changes.
365
+ * core_ex/lib/core_ex/rakefile_base.rf: Use stringify.
366
+ * core_ex/lib/core_ex/require.rb: Remove everything but a comment.
367
+
368
+ * core_ex/lib/core_ex/pathname.rb, core_ex/lib/core_ex/time.rb,
369
+ * core_ex/lib/core_ex/exception.rb, core_ex/lib/core_ex/string.rb,
370
+ * core_ex/lib/core_ex/embedded_tests.rb,
371
+ * core_ex/lib/core_ex.rb: Update to the new project layout.
372
+
373
+ 2005-09-04 Nicolas Pouillard <ertai@lrde.epita.fr>
374
+
375
+ Add 3 modules extensions.
376
+
377
+ * core_ex/lib/core_ex/attr_once.rb: Rename to ...
378
+ * core_ex/lib/core_ex/module/attr_once.rb: ... this and update.
379
+ * core_ex/lib/core_ex/module/mix_in_with_args.rb: New. Provides `mixin'
380
+ which is like `include' but can receive arguments. A module can aslo
381
+ be setup by two blocks `setup' and `teardown'. Which are run in the
382
+ class context, before and after the real inclusion.
383
+ * core_ex/lib/core_ex/module/import.rb: New. Allow to write
384
+ MyFavoriteModule.import to load or require a module managed by
385
+ Dependencies of activesupport.
386
+
387
+ 2005-09-04 Nicolas Pouillard <ertai@lrde.epita.fr>
388
+
389
+ Add 3 extensions of Object.
390
+
391
+ * core_ex/lib/core_ex/object/instance_eval_with_args.rb: New.
392
+ Make the instance_eval method of Object support arguments.
393
+ * core_ex/lib/core_ex/object/the_first_time.rb: New.
394
+ This method takes a block. It ensures that the code will be
395
+ run only once. You can use this method only once per file.
396
+ * core_ex/lib/core_ex/object/singleton_class.rb: New. Provides an
397
+ access to the singleton class of an object. Also provides
398
+ singleton_class_eval, undef_singleton_method, define_singleton_method.
399
+
400
+ 2005-07-27 Nicolas Pouillard <ertai@lrde.epita.fr>
401
+
402
+ Better option handling in yaml extensions.
403
+
404
+ * core_ex/lib/core_ex/yaml.rb: Also update is_complex_yaml? and tests.
405
+
406
+ 2005-07-24 Nicolas Pouillard <ertai@lrde.epita.fr>
407
+
408
+ Fix a bug in PathList.
409
+
410
+ * core_ex/lib/core_ex/pathlist.rb: Make PathAndMatchData inherits from
411
+ Pathname.
412
+
413
+ 2005-07-24 Nicolas Pouillard <ertai@lrde.epita.fr>
414
+
415
+ Handle end anchored regexp paths.
416
+
417
+ * lib/regex_path.rb: Use \Z to end you regex_path, add final?.
418
+
419
+ 2005-07-23 Nicolas Pouillard <ertai@lrde.epita.fr>
420
+
421
+ Improve PathList#each, and support aliases in Yaml.
422
+
423
+ * core_ex/lib/core_ex/pathlist.rb: Handle parenthesis in a pathlist,
424
+ which capture and give you during a `each' call.
425
+ * core_ex/lib/core_ex/yaml.rb: Support aliases.
426
+ * core_ex/lib/core_ex/test/unit/ui/yaml/testrunner.rb: Quote the test
427
+ name.
428
+
429
+ 2005-07-23 Nicolas Pouillard <ertai@lrde.epita.fr>
430
+
431
+ * lib/rpath.rb: Convert the regex_path argument only if needed.
432
+
433
+ 2005-07-23 Nicolas Pouillard <ertai@lrde.epita.fr>
434
+
435
+ Improve the Yaml extension type handling.
436
+
437
+ * core_ex/lib/core_ex/yaml.rb: The to_yaml method is bind to the old
438
+ one if to_yaml_string is unavailable. Remove the prepending "!" for
439
+ the Yaml type definition.
440
+
441
+ 2005-07-20 Nicolas Pouillard <ertai@lrde.epita.fr>
442
+
443
+ Add inspect and pretty_print.
444
+
445
+ * lib/orderedhash.rb: There is now a specific display for OHash,
446
+ two tests added.
447
+
448
+ 2005-07-20 Nicolas Pouillard <ertai@lrde.epita.fr>
449
+
450
+ Inline little hashs and arrays.
451
+
452
+ * core_ex/lib/core_ex/yaml.rb:
453
+ Extend {Array,Hash}#{to_yaml,is_complex_yaml?}, update tests
454
+ accordingly. Use the NoInline option to disable this feature.
455
+
456
+ 2005-07-12 Nicolas Pouillard <ertai@lrde.epita.fr>
457
+
458
+ Fix bugs with open_mode and Commands.
459
+
460
+ * lib/regex_path.rb: Add a require 'ruby_ex'.
461
+ * lib/commands/command.rb: Make make open_mode writeable, and fix
462
+ tests.
463
+ * lib/commands/datas/data.rb: Ensure open_mode is :w or :a.
464
+ * lib/commands/runners/runner.rb: Change the default open_mode to :w.
465
+
466
+ 2005-07-07 Nicolas Despr�s <nicolas.despres@gmail.com>
467
+
468
+ * core_ex/lib/core_ex/test/unit/ui/yaml/testrunner.rb: Remove a FIXME.
469
+
470
+ 2005-07-07 Yannick Lacaute <patathor42@free.fr>
471
+
472
+ * lib/rpath.rb: Fix some explanations and fix a forgotten argument
473
+ in Object#rpath.
474
+
475
+ 2005-07-07 Nicolas Pouillard <ertai@lrde.epita.fr>
476
+
477
+ Add a support to catch match data in RPath.
478
+
479
+ * lib/rpath.rb: Add rpath_find(:first | :all), rpath_select_match_data,
480
+ match data support, and add tests.
481
+
482
+ 2005-07-06 Nicolas Pouillard <ertai@lrde.epita.fr>
483
+
484
+ * core_ex/lib/core_ex/rakefile_base.rf: Clean the gem spec with the gem file.
485
+
486
+ 2005-07-06 Nicolas Pouillard <ertai@lrde.epita.fr>
487
+
488
+ * core_ex/lib/core_ex/pathname.rb: Prefer symbols for the open_mode.
489
+
490
+ 2005-07-06 Nicolas Pouillard <ertai@lrde.epita.fr>
491
+
492
+ Change the ouput mode handling.
493
+
494
+ * lib/commands/command.rb,
495
+ * lib/commands/datas/composite.rb,
496
+ * lib/commands/datas/temp.rb,
497
+ * lib/commands/datas/factory.rb,
498
+ * lib/commands/datas/data.rb,
499
+ * lib/commands/runners/runner.rb: Update.
500
+
501
+ 2005-07-06 Nicolas Pouillard <ertai@lrde.epita.fr>
502
+
503
+ * lib/sendmail.rb: Change the default encoding in mime attachments.
504
+
505
+ 2005-07-06 Nicolas Pouillard <ertai@lrde.epita.fr>
506
+
507
+ Add RPath, a basic way to search your ruby data..
508
+
509
+ * lib/rpath.rb: New.
510
+ * lib/regex_path.rb: New.
511
+
512
+ 2005-07-01 Nicolas Pouillard <ertai@lrde.epita.fr>
513
+
514
+ * lib/commands/command.rb: Skip output if nil.
515
+ * lib/commands/datas/data.rb: Add yaml support.
516
+ * lib/commands/runners/fork.rb: Use D::Data#to_yaml.
517
+
518
+ 2005-06-29 Nicolas Pouillard <ertai@lrde.epita.fr>
519
+
520
+ * test/algorithms/simulated_annealing_test.rb: Update to the new
521
+ output format.
522
+
523
+ 2005-06-27 Nicolas Pouillard <ertai@lrde.epita.fr>
524
+
525
+ * lib/algorithms/simulated_annealing.rb: Now display the mean of
526
+ changes, and count progessions (up, down, and same).
527
+
528
+ 2005-06-27 Nicolas Pouillard <ertai@lrde.epita.fr>
529
+
530
+ * lib/killall.rb: New.
531
+
532
+ 2005-06-27 Nicolas Pouillard <ertai@lrde.epita.fr>
533
+
534
+ * lib/uri/mysql.rb: New.
535
+ * lib/uri_ex.rb: Factor here some common code.
536
+ * lib/uri/pgsql.rb: Update.
537
+
538
+ 2005-06-24 Nicolas Pouillard <ertai@lrde.epita.fr>
539
+
540
+ * core_ex/NEWS: Set the release date.
541
+
542
+ 2005-06-24 Nicolas Pouillard <ertai@lrde.epita.fr>
543
+
544
+ * core_ex/SPEC.dyn.yml: Minor release: 0.2.
545
+ * core_ex/doc: New.
546
+ * doc: New.
547
+
548
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
549
+
550
+ * test/unit-suite.yml: Use input instead of unit_file.
551
+ * test/resources/tar.gz.log: New.
552
+ * test/resources/foo.tar.gz: New.
553
+ * lib/ruby_ex.rb: Update.
554
+ * lib/hash_eval.rb: Require 'ruby_ex'.
555
+ * SPEC.yml: Update pkg_list, add autorequire, ttk_version.
556
+ * vcs/ruby_ex.rb: Remove the question.
557
+ * NEWS: Add a Symtbl entry.
558
+
559
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
560
+
561
+ * lib/module/hierarchy.rb:
562
+ Use a set instead of an array to stock sub_classes in the recursive
563
+ call and avoid duplications, the resulting function is now
564
+ significantly speeder.
565
+
566
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
567
+
568
+ * lib/filetype.rb:
569
+ Use the Commands module.
570
+ Add extractable? and installable? methods.
571
+ Add priorities for extensions.
572
+ Clean the declaration syntax for extensions.
573
+ Add many unit tests.
574
+ Add gem filetype support (with the install method).
575
+
576
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
577
+
578
+ * lib/symtbl.rb:
579
+ Symtbl.new: Merge with the local hash when father is a hash.
580
+ Symtbl#key_convert: Systematically convert keys into symbols.
581
+ Symtbl#new_child: Make a new symtbl as a child of self.
582
+ * lib/symtbl_gsub.rb: New. Aims to provide a substitution method over
583
+ any ruby objects, with light weight design, and extensions pretty to
584
+ write.
585
+
586
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
587
+
588
+ * lib/commands/pipe.rb: Protect from some methods only available in
589
+ Command.
590
+ * lib/commands/command.rb: Handle meta arguments %i, %e and %o for
591
+ input, error, and output streams.
592
+ * lib/commands/datas/data.rb: Protect from empty Data instances.
593
+ * lib/commands/runners/fork.rb: Protect from empty Data instances.
594
+ * lib/commands/runners/runner.rb: Instanciate arguments.
595
+ * lib/commands/runners/mock.rb: New. A simple mock runner.
596
+
597
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
598
+
599
+ * core_ex/lib/core_ex/rakefile_base.rf:
600
+ Use PathLists instead of FileLits, improve the ttk task, simplify and
601
+ active gems for distcheck.
602
+ * core_ex/test/unit-suite.yml: Simplify.
603
+ * core_ex/lib/core_ex.rb: Update.
604
+ * core_ex/test/test-unit-setup.rb: Update.
605
+ * core_ex/SPEC.yml: Set ttk version and autorequire file.
606
+ * core_ex/NEWS: Add entries for Yaml, PathList, and DumpbleProc.
607
+
608
+ 2005-06-23 Nicolas Pouillard <ertai@lrde.epita.fr>
609
+
610
+ * core_ex/lib/core_ex/yaml.rb: Add options (i,x,m) to the Yaml
611
+ support of regexps.
612
+
613
+ 2005-06-19 Nicolas Pouillard <ertai@lrde.epita.fr>
614
+
615
+ * lib/dumpable_proc.rb: Rename to ...
616
+ * core_ex/lib/core_ex/dumpable_proc.rb: ... this, and adapt.
617
+
618
+ 2005-06-18 Nicolas Pouillard <ertai@lrde.epita.fr>
619
+
620
+ * core_ex/lib/core_ex/embedded_tests.rb: Use EMBEDDED_TEST_MODE to
621
+ set the test_mode safely.
622
+
623
+ 2005-06-18 Nicolas Pouillard <ertai@lrde.epita.fr>
624
+
625
+ * core_ex/lib/core_ex/require.rb: Fix tests and improve the $"
626
+ handling.
627
+
628
+ 2005-06-18 Nicolas Pouillard <ertai@lrde.epita.fr>
629
+
630
+ * core_ex/lib/core_ex/yaml.rb: Clean up and improve, add class method
631
+ to help the Yaml extension, and add unit tests for each class.
632
+
633
+ 2005-06-18 Nicolas Pouillard <ertai@lrde.epita.fr>
634
+
635
+ * core_ex/lib/core_ex/filelist.rb: Rename to ...
636
+ * core_ex/lib/core_ex/pathlist.rb: ... this, fix the block argument in
637
+ *sub*, add to_yaml, and to_strings.
638
+
639
+ 2005-06-14 Nicolas Despr�s <nicolas.despres@gmail.com>
640
+
641
+ * lib/genpasswd.rb: New. Add a password generator.
642
+
643
+ 2005-06-13 Nicolas Despr�s <nicolas.despres@gmail.com>
644
+
645
+ * lib/hash_eval.rb: Eval nested block using HashEval too in order to
646
+ allow nested hash.
647
+
648
+ 2005-06-12 Nicolas Despr�s <nicolas.despres@gmail.com>
649
+
650
+ * lib/hash_eval.rb: New. Provides a block in which methods name are
651
+ keys and arguments/blocks are values.
652
+
653
+
654
+ 2005-06-11 Nicolas Despr�s <nicolas.despres@gmail.com>
655
+
656
+ * lib/attributed_class.rb: Generated getters may allow an argument or a
657
+ block. In this case they behave as a setter.
658
+
659
+ 2005-06-11 Nicolas Despr�s <nicolas.despres@gmail.com>
660
+
661
+ * core_ex/lib/core_ex/version.rb: Typo.
662
+
663
+ 2005-06-11 Nicolas Despr�s <nicolas.despres@gmail.com>
664
+
665
+ * core_ex/lib/core_ex/version.rb: Do not convert the object to an array
666
+ when performing object comparision because it is less efficient. Add
667
+ Version#inspect.
668
+
669
+ 2005-06-11 Nicolas Despr�s <nicolas.despres@gmail.com>
670
+
671
+ * lib/symtbl.rb: Add has_local_key? and fix typos.
672
+
673
+ 2005-06-10 Nicolas Despr�s <nicolas.despres@gmail.com>
674
+
675
+ * core_ex/lib/core_ex/temp_path.rb: Typos.
676
+
677
+ 2005-06-10 Nicolas Despr�s <nicolas.despres@gmail.com>
678
+
679
+ * lib/symtbl.rb: Add the merge!, merge and has_key? method in order to
680
+ make the SymTbl behaves more like a Hash.
681
+
682
+ 2005-06-06 Nicolas Pouillard <ertai@lrde.epita.fr>
683
+
684
+ * SPEC.dyn.yml: Build Release 0.1.2.
685
+ * test/test-unit-setup.rb: Make it executable.
686
+ * lib/cache.rb: No more need to explicitly return.
687
+
688
+ 2005-06-06 Nicolas Pouillard <ertai@lrde.epita.fr>
689
+
690
+ * core_ex/lib/core_ex/temp_path.rb: Fix a bug which was introduced in
691
+ the last one. No more clean the entire temporary directory but just
692
+ the file. This patch will also be present 0.1.3.
693
+
1
694
  2005-06-05 Nicolas Pouillard <ertai@lrde.epita.fr>
2
695
 
3
696
  * core_ex/SPEC.dyn.yml: Release 0.1.3.