facets 2.2.1 → 2.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +6 -0
- data/NOTES +14 -1
- data/Rakefile +26 -0
- data/demo/bench/general/bench_calls.rb +74 -0
- data/demo/bench/general/bench_includes.rb +25 -0
- data/demo/bench/general/bench_methods.rb +17 -0
- data/demo/bench/general/bench_pathname.rb +24 -0
- data/demo/bench/general/bench_range.rb +64 -0
- data/demo/bench/general/bench_return.rb +56 -0
- data/demo/bench/general/bench_yeild.rb +75 -0
- data/lib/{more → class}/facets/association.rb +0 -0
- data/lib/{more → class}/facets/autoarray.rb +0 -0
- data/lib/{more → class}/facets/basicobject.rb +0 -0
- data/lib/{more → class}/facets/buildingblock.rb +0 -44
- data/lib/{more → class}/facets/cachedelegator.rb +3 -0
- data/lib/{more → class}/facets/coroutine.rb +0 -56
- data/lib/{more → class}/facets/dictionary.rb +0 -0
- data/lib/{more → class}/facets/downloader.rb +0 -0
- data/lib/{more → class}/facets/filelist.rb +0 -0
- data/lib/{more → class}/facets/fileshell.rb +0 -0
- data/lib/{more → class}/facets/hashbuilder.rb +0 -0
- data/lib/{more → class}/facets/heap.rb +0 -0
- data/lib/{more → class}/facets/infinity.rb +0 -46
- data/lib/{more → class}/facets/interval.rb +0 -0
- data/lib/{more → class}/facets/ioredirect.rb +0 -0
- data/lib/{more → class}/facets/linkedlist.rb +0 -42
- data/lib/{more → class}/facets/lrucache.rb +0 -23
- data/lib/{more → class}/facets/minitar.rb +0 -0
- data/lib/{more → class}/facets/nackclass.rb +0 -0
- data/lib/{more → class}/facets/nullclass.rb +0 -0
- data/lib/{more → class}/facets/opencascade.rb +0 -70
- data/lib/{more → class}/facets/opencollection.rb +0 -0
- data/lib/class/facets/openhash.rb +41 -0
- data/lib/{more → class}/facets/openobject.rb +0 -121
- data/lib/{more → class}/facets/orderedhash.rb +0 -0
- data/lib/{more → class}/facets/pathlist.rb +0 -0
- data/lib/{more → class}/facets/pool.rb +0 -0
- data/lib/{more → class}/facets/pqueue.rb +0 -0
- data/lib/{more → class}/facets/progressbar.rb +0 -0
- data/lib/{more → class}/facets/recorder.rb +0 -40
- data/lib/{more → class}/facets/reference.rb +0 -0
- data/lib/{more → class}/facets/rwdelegator.rb +0 -0
- data/lib/{more → class}/facets/semaphore.rb +0 -0
- data/lib/{more → class}/facets/syncarray.rb +0 -24
- data/lib/{more → class}/facets/synchash.rb +1 -25
- data/lib/{more → class}/facets/timer.rb +0 -62
- data/lib/{more → class}/facets/tuple.rb +0 -60
- data/lib/{more → class}/facets/version.rb +0 -0
- data/lib/core/facets/dir/multiglob.rb +20 -5
- data/lib/core/facets/enumerable/cartesian.rb +2 -2
- data/lib/core/facets/enumerable/combination.rb +9 -1
- data/lib/core/facets/kernel/object.rb +1 -1
- data/lib/{more → mixin}/facets/binreadable.rb +0 -62
- data/lib/{more → mixin}/facets/buildable.rb +0 -48
- data/lib/mixin/facets/cloneable.rb +90 -0
- data/lib/{more → mixin}/facets/enumerablepass.rb +0 -81
- data/lib/{more → mixin}/facets/expirable.rb +0 -0
- data/lib/{more → mixin}/facets/fileable.rb +0 -0
- data/lib/{more → mixin}/facets/instantiable.rb +0 -30
- data/lib/{more → mixin}/facets/multiton.rb +0 -0
- data/lib/{more → mixin}/facets/registerable.rb +0 -0
- data/lib/mixin/facets/tasksystem.rb +350 -0
- data/lib/{more → mixin}/facets/uninheritable.rb +1 -39
- data/lib/{more → mixin}/facets/validation.rb +0 -0
- data/lib/more/facets/arguments.rb +0 -66
- data/lib/more/facets/attributes.rb +0 -35
- data/lib/more/facets/bbcode.rb +1 -31
- data/lib/more/facets/bytes.rb +0 -80
- data/lib/more/facets/class_extension.rb +0 -66
- data/lib/more/facets/classmethods.rb +0 -64
- data/lib/more/facets/compare_on.rb +0 -52
- data/lib/more/facets/curry.rb +0 -29
- data/lib/more/facets/cut.rb +0 -27
- data/lib/more/facets/date.rb +0 -54
- data/lib/more/facets/dependency.rb +0 -70
- data/lib/more/facets/elementor.rb +0 -67
- data/lib/more/facets/getoptlong.rb +0 -30
- data/lib/more/facets/{hash_keyize.rb → hash/keyize.rb} +0 -0
- data/lib/more/facets/inheritor.rb +0 -150
- data/lib/more/facets/instantise.rb +0 -41
- data/lib/more/facets/let.rb +0 -20
- data/lib/more/facets/memoize.rb +0 -45
- data/lib/more/facets/multipliers.rb +0 -110
- data/lib/more/facets/ostruct.rb +0 -124
- data/lib/more/facets/random.rb +0 -153
- data/lib/more/facets/rbconfig.rb +55 -0
- data/lib/more/facets/set.rb +27 -0
- data/lib/more/facets/snapshot.rb +0 -30
- data/lib/more/facets/stylize.rb +0 -147
- data/lib/more/facets/times.rb +0 -98
- data/lib/more/facets/tracepoint.rb +194 -0
- data/lib/more/facets/typecast.rb +0 -63
- data/lib/more/facets/ziputils.rb +7 -0
- data/log/Changelog-0.txt +239 -0
- data/log/Changelog-1.txt +450 -0
- data/log/Changelog.txt +841 -0
- data/log/Fixme.txt +18 -0
- data/log/Testlog.txt +188 -0
- data/log/Todo.txt +326 -0
- data/meta/MANIFEST +1 -1
- data/meta/VERSION +1 -0
- data/meta/authors +48 -0
- data/meta/description +8 -0
- data/meta/project.yaml +11 -5
- data/task/install +4 -2
- data/task/rdoc +5 -0
- data/task/test +40 -0
- data/test/{unit → class}/test_association.rb +0 -0
- data/test/{unit → class}/test_autoarray.rb +0 -0
- data/test/{unit → class}/test_basicobject.rb +0 -0
- data/test/{unit → class}/test_buildingblock.rb +1 -0
- data/test/{unit → class}/test_coroutine.rb +0 -0
- data/test/{unit → class}/test_dictionary.rb +0 -0
- data/test/{unit → class}/test_infinity.rb +0 -0
- data/test/{unit → class}/test_interval.rb +0 -0
- data/test/{unit → class}/test_linkedlist.rb +1 -1
- data/test/{unit → class}/test_lrucache.rb +3 -0
- data/test/{unit → class}/test_opencascade.rb +0 -0
- data/test/{unit → class}/test_openobject.rb +0 -0
- data/test/{unit → class}/test_recorder.rb +0 -1
- data/test/{unit → class}/test_syncarray.rb +2 -4
- data/test/{unit → class}/test_synchash.rb +2 -4
- data/test/{unit → class}/test_timer.rb +0 -1
- data/test/{unit → class}/test_tuple.rb +0 -0
- data/test/{unit → core}/array/test_delete.rb +0 -0
- data/test/{unit → core}/array/test_indexable.rb +0 -0
- data/test/{unit → core}/array/test_merge.rb +0 -0
- data/test/{unit → core}/array/test_only.rb +0 -0
- data/test/{unit → core}/array/test_pad.rb +0 -0
- data/test/{unit → core}/array/test_rotate.rb +0 -0
- data/test/{unit → core}/array/test_select.rb +0 -0
- data/test/{unit → core}/array/test_stackable.rb +0 -0
- data/test/{unit/binding/test_cflow.rb → core/binding/test_caller.rb} +2 -2
- data/test/{unit → core}/binding/test_defined.rb +0 -0
- data/test/{unit → core}/binding/test_eval.rb +0 -0
- data/test/{unit → core}/binding/test_here.rb +0 -0
- data/test/{unit → core}/binding/test_self.rb +0 -0
- data/test/{unit → core}/binding/test_vars.rb +0 -0
- data/test/{unit → core}/class/test_descendents.rb +0 -0
- data/test/{unit → core}/class/test_initializer.rb +0 -0
- data/test/{unit → core}/class/test_remove_descendents.rb +0 -0
- data/test/{unit → core}/comparable/test_bound.rb +0 -0
- data/test/{unit → core}/comparable/test_cmp.rb +0 -0
- data/test/{unit → core}/dir/test_parent.rb +0 -0
- data/test/{unit → core}/dir/test_recurse.rb +0 -0
- data/test/{unit → core}/dir/test_traverse.rb +0 -0
- data/test/{unit → core}/enumerable/test_cartesian.rb +0 -0
- data/test/{unit → core}/enumerable/test_collect.rb +0 -0
- data/test/{unit → core}/enumerable/test_combination.rb +0 -0
- data/test/{unit → core}/enumerable/test_count.rb +0 -0
- data/test/{unit → core}/enumerable/test_each.rb +0 -0
- data/test/{unit → core}/enumerable/test_mash.rb +0 -0
- data/test/{unit → core}/enumerable/test_permutation.rb +0 -0
- data/test/{unit → core}/enumerable/test_probability.rb +0 -0
- data/test/{unit → core}/enumerable/test_split.rb +0 -0
- data/test/{unit → core}/exception/test_detail.rb +0 -0
- data/test/{unit → core}/file/test_null.rb +0 -0
- data/test/{unit → core}/file/test_read.rb +0 -0
- data/test/{unit → core}/file/test_sanitize.rb +0 -0
- data/test/{unit → core}/file/test_split_all.rb +0 -0
- data/test/{unit → core}/file/test_write.rb +0 -0
- data/test/{unit → core}/filetest/test_root.rb +0 -0
- data/test/{unit → core}/hash/test_alias.rb +0 -0
- data/test/{unit → core}/hash/test_at.rb +0 -0
- data/test/{unit → core}/hash/test_autonew.rb +0 -0
- data/test/core/hash/test_collate.rb +33 -0
- data/test/{unit → core}/hash/test_delete.rb +0 -0
- data/test/{unit → core}/hash/test_each_with_key.rb +0 -0
- data/test/{unit → core}/hash/test_has_keys.rb +0 -0
- data/test/{unit → core}/hash/test_insert.rb +0 -0
- data/test/{unit → core}/hash/test_inverse.rb +0 -0
- data/test/{unit → core}/hash/test_op.rb +0 -0
- data/test/{unit → core}/hash/test_rekey.rb +0 -0
- data/test/{unit → core}/hash/test_reverse_merge.rb +0 -0
- data/test/{unit → core}/hash/test_select.rb +0 -0
- data/test/{unit → core}/hash/test_swap.rb +0 -0
- data/test/{unit → core}/hash/test_traverse.rb +0 -0
- data/test/{unit → core}/hash/test_update.rb +0 -0
- data/test/{unit → core}/hash/test_weave.rb +0 -0
- data/test/{unit → core}/hash/test_zipnew.rb +0 -0
- data/test/{unit → core}/integer/test_bitmask.rb +0 -0
- data/test/{unit → core}/integer/test_factorial.rb +0 -0
- data/test/{unit → core}/integer/test_multiple.rb +0 -0
- data/test/{unit → core}/integer/test_of.rb +0 -0
- data/test/{unit → core}/kernel/test_callstack.rb +0 -0
- data/test/{unit → core}/kernel/test_constant.rb +0 -0
- data/test/{unit → core}/kernel/test_deepcopy.rb +0 -0
- data/test/{unit → core}/kernel/test_instance.rb +0 -0
- data/test/{unit → core}/kernel/test_metaid.rb +0 -0
- data/test/{unit → core}/kernel/test_object.rb +1 -1
- data/test/{unit → core}/kernel/test_populate.rb +0 -0
- data/test/{unit → core}/kernel/test_report.rb +0 -0
- data/test/{unit → core}/kernel/test_returning.rb +0 -0
- data/test/{unit → core}/kernel/test_silence.rb +0 -0
- data/test/{unit → core}/kernel/test_super.rb +0 -0
- data/test/{unit → core}/kernel/test_tap.rb +0 -0
- data/test/{unit → core}/kernel/test_val.rb +0 -0
- data/test/{unit → core}/kernel/test_withattr.rb +0 -0
- data/test/{unit → core}/matchdata/test_match.rb +0 -0
- data/test/{unit → core}/matchdata/test_matchset.rb +0 -0
- data/test/{unit → core}/module/test_abstract.rb +0 -0
- data/test/{unit → core}/module/test_alias.rb +0 -0
- data/test/{unit → core}/module/test_cattr.rb +0 -0
- data/test/{unit → core}/module/test_clone.rb +0 -0
- data/test/{unit → core}/module/test_include.rb +0 -0
- data/test/{unit → core}/module/test_modify.rb +0 -0
- data/test/{unit → core}/module/test_name.rb +0 -0
- data/test/{unit → core}/module/test_traits.rb +0 -0
- data/test/{unit → core}/numeric/test_round.rb +0 -0
- data/test/{unit → core}/proc/test_bind.rb +0 -0
- data/test/{unit → core}/proc/test_compose.rb +0 -0
- data/test/{unit → core}/range/test_combine.rb +0 -0
- data/test/{unit → core}/range/test_overlap.rb +0 -0
- data/test/{unit → core}/regexp/test_arity.rb +0 -0
- data/test/{unit → core}/string/test_align.rb +0 -0
- data/test/{unit → core}/string/test_blank.rb +0 -0
- data/test/{unit → core}/string/test_bracket.rb +0 -0
- data/test/{unit → core}/string/test_case.rb +0 -0
- data/test/{unit → core}/string/test_crypt.rb +0 -0
- data/test/{unit → core}/string/test_filter.rb +0 -0
- data/test/{unit → core}/string/test_indexable.rb +0 -0
- data/test/{unit → core}/string/test_interpolate.rb +0 -0
- data/test/{unit → core}/string/test_natcmp.rb +0 -0
- data/test/{unit → core}/string/test_nchar.rb +0 -0
- data/test/{unit → core}/string/test_op.rb +0 -0
- data/test/{unit → core}/string/test_partitions.rb +0 -0
- data/test/{unit → core}/string/test_range.rb +0 -0
- data/test/{unit → core}/string/test_regesc.rb +0 -0
- data/test/{unit → core}/string/test_scan.rb +0 -0
- data/test/{unit → core}/string/test_stackable.rb +0 -0
- data/test/{unit → core}/string/test_tabs.rb +0 -0
- data/test/{unit → core}/string/test_wrap.rb +0 -0
- data/test/{unit → core}/symbol/test_chomp.rb +0 -0
- data/test/{unit → core}/symbol/test_generate.rb +0 -0
- data/test/{unit → core}/symbol/test_not.rb +0 -0
- data/test/{unit → core}/symbol/test_shadow.rb +0 -0
- data/test/{unit → core}/symbol/test_succ.rb +0 -0
- data/test/{unit → core}/symbol/test_to_proc.rb +0 -0
- data/test/{unit → core}/test_1stclassmethod.rb +0 -0
- data/test/{unit → core}/test_boolean.rb +0 -0
- data/test/{unit → core}/test_conversion.rb +0 -0
- data/test/{unit → core}/test_functor.rb +0 -0
- data/test/{unit → core}/time/test_change.rb +0 -0
- data/test/{unit → core}/time/test_elapse.rb +0 -0
- data/test/{unit → core}/time/test_stamp.rb +0 -0
- data/test/{unit → mixin}/test_binreadable.rb +0 -0
- data/test/{unit → mixin}/test_buildable.rb +1 -0
- data/test/mixin/test_cloneable.rb +41 -0
- data/test/{unit → mixin}/test_enumerablepass.rb +0 -0
- data/test/{unit → mixin}/test_instantiable.rb +2 -1
- data/test/{unit → mixin}/test_multiton.rb +0 -0
- data/test/{unit → mixin}/test_uninheritable.rb +1 -2
- data/test/{unit → more/hash}/test_keyize.rb +1 -1
- data/test/{unit → more}/test_advice.rb +0 -0
- data/test/{unit → more}/test_annotations.rb +0 -0
- data/test/{unit → more}/test_ansicode.rb +0 -0
- data/test/{unit → more}/test_aop.rb +0 -0
- data/test/{unit → more}/test_arguments.rb +1 -0
- data/test/{unit → more}/test_attributes.rb +2 -2
- data/test/{unit → more}/test_bbcode.rb +1 -0
- data/test/{unit → more}/test_bytes.rb +1 -0
- data/test/{unit → more}/test_class_extension.rb +2 -1
- data/test/{unit → more}/test_classmethods.rb +2 -1
- data/test/{unit → more}/test_compare_on.rb +0 -1
- data/test/{unit → more}/test_continuation.rb +0 -0
- data/test/{unit → more}/test_crypt.rb +0 -0
- data/test/{unit → more}/test_curry.rb +1 -0
- data/test/{unit → more}/test_cut.rb +2 -1
- data/test/{unit → more}/test_date.rb +1 -1
- data/test/{unit → more}/test_dependency.rb +2 -2
- data/test/{unit → more}/test_elementor.rb +1 -1
- data/test/{unit → more}/test_getoptlong.rb +1 -0
- data/test/{unit → more}/test_inheritor.rb +1 -1
- data/test/{unit → more}/test_instantise.rb +2 -1
- data/test/{unit → more}/test_interface.rb +0 -0
- data/test/{unit → more}/test_let.rb +0 -1
- data/test/{unit → more}/test_memoize.rb +2 -3
- data/test/{unit → more}/test_multipliers.rb +1 -1
- data/test/{unit → more}/test_namespace.rb +0 -0
- data/test/{unit → more}/test_ostruct.rb +0 -0
- data/test/{unit → more}/test_overload.rb +0 -0
- data/test/{unit → more}/test_paramix.rb +0 -0
- data/test/{unit → more}/test_prototype.rb +0 -0
- data/test/more/test_random.rb +146 -0
- data/test/{unit → more}/test_snapshot.rb +0 -3
- data/test/{unit → more}/test_stylize.rb +1 -2
- data/test/{unit → more}/test_thread.rb +0 -0
- data/test/{unit → more}/test_times.rb +2 -2
- data/test/{unit → more}/test_typecast.rb +0 -3
- metadata +1117 -1098
- data/lib/more/facets/cloneable.rb +0 -75
- data/log/changelog.txt +0 -0
- data/meta/facets.roll +0 -4
- data/meta/google_ad.html +0 -15
- data/meta/icli.yaml +0 -17
- data/task/changes +0 -29
- data/task/clean +0 -17
- data/task/clobber/package +0 -10
- data/task/log +0 -17
- data/task/prepare +0 -7
- data/task/publish +0 -43
- data/task/release +0 -10
- data/task/stamp +0 -33
- data/task/stats +0 -138
- data/task/test/cross +0 -309
- data/task/test/each +0 -42
- data/task/test/load +0 -30
- data/task/test/pairs +0 -50
- data/task/test/solo +0 -294
- data/task/test/syntax +0 -31
- data/task/test/whole +0 -34
- data/test/unit/hash/test_collate.rb +0 -31
- data/test/unit/test_random.rb +0 -149
data/lib/more/facets/typecast.rb
CHANGED
@@ -228,69 +228,6 @@ class Time
|
|
228
228
|
end
|
229
229
|
end
|
230
230
|
|
231
|
-
|
232
|
-
# _____ _
|
233
|
-
# |_ _|__ ___| |_
|
234
|
-
# | |/ _ \/ __| __|
|
235
|
-
# | | __/\__ \ |_
|
236
|
-
# |_|\___||___/\__|
|
237
|
-
#
|
238
|
-
=begin test
|
239
|
-
|
240
|
-
require 'test/unit'
|
241
|
-
|
242
|
-
class TestClass
|
243
|
-
attr_accessor :my_var
|
244
|
-
def initialize(my_var); @my_var = my_var; end
|
245
|
-
|
246
|
-
def to_string(options={})
|
247
|
-
@my_var
|
248
|
-
end
|
249
|
-
|
250
|
-
class << self
|
251
|
-
def from_string(string, options={})
|
252
|
-
self.new( string )
|
253
|
-
end
|
254
|
-
end
|
255
|
-
end
|
256
|
-
|
257
|
-
class TC_TypeCast < Test::Unit::TestCase
|
258
|
-
|
259
|
-
def setup
|
260
|
-
@test_string = "this is a test"
|
261
|
-
@test_class = TestClass.new(@test_string)
|
262
|
-
end
|
263
|
-
|
264
|
-
def test_to_string
|
265
|
-
assert_equal( '1234', 1234.cast_to(String) )
|
266
|
-
end
|
267
|
-
|
268
|
-
def test_custom_to_string
|
269
|
-
assert_equal( @test_string, @test_class.cast_to(String) )
|
270
|
-
end
|
271
|
-
|
272
|
-
def test_custom_from_string
|
273
|
-
assert_equal( @test_class.my_var, @test_string.cast_to(TestClass).my_var )
|
274
|
-
end
|
275
|
-
|
276
|
-
def test_string_to_class
|
277
|
-
assert_equal( Test::Unit::TestCase, "Test::Unit::TestCase".cast_to(Class) )
|
278
|
-
end
|
279
|
-
|
280
|
-
def test_string_to_time
|
281
|
-
assert_equal( "Mon Oct 10 00:00:00 2005", "2005-10-10".cast_to(Time).strftime("%a %b %d %H:%M:%S %Y") )
|
282
|
-
end
|
283
|
-
|
284
|
-
def test_no_converter
|
285
|
-
"sfddsf".cast_to( ::Regexp )
|
286
|
-
assert(1+1==3, 'should not get here')
|
287
|
-
rescue TypeCastException => ex
|
288
|
-
assert_equal(TypeCastException, ex.class)
|
289
|
-
end
|
290
|
-
end
|
291
|
-
|
292
|
-
=end
|
293
|
-
|
294
231
|
# Author:: Jonas Pfenniger
|
295
232
|
# Copyright:: Copyright (c) 2004 Jonas Pfenniger
|
296
233
|
# License:: Ruby License
|
data/lib/more/facets/ziputils.rb
CHANGED
@@ -90,6 +90,13 @@ module ZipUtils
|
|
90
90
|
end
|
91
91
|
alias_method :tar_z, :tar_gzip
|
92
92
|
|
93
|
+
#
|
94
|
+
|
95
|
+
def tgz(folder, file=nil, options={})
|
96
|
+
file ||= File.basename(File.expand_path(folder)) + '.tgz'
|
97
|
+
tar_gzip(folder, file, options)
|
98
|
+
end
|
99
|
+
|
93
100
|
# Untar Gzip
|
94
101
|
|
95
102
|
def untar_gzip(file, options={})
|
data/log/Changelog-0.txt
ADDED
@@ -0,0 +1,239 @@
|
|
1
|
+
= Facets ChangeLog 0.x.x (Alpha Series)
|
2
|
+
|
3
|
+
== 0.10.30 Halloween
|
4
|
+
* Change OrderedHash (ohash.rb) to Dictionary (dictionary.rb).
|
5
|
+
* Change BlankSlate (blankslate.rb) to BasicObject (basicobject.rb).
|
6
|
+
* Old versions of the above should still work, but throw warnings
|
7
|
+
and will stop working come next version.
|
8
|
+
* 1.rb has been renamed to one.rb (I know, two more characters,
|
9
|
+
but you can do it! ;)
|
10
|
+
* Methods enumerable/op_mod (%) and enumerable/eF are deprecated.
|
11
|
+
Use #every or #ew instead.
|
12
|
+
|
13
|
+
== 0.10.11 Palapable
|
14
|
+
* Merged Mega into Facets. I put the old Mega ChangeLog at
|
15
|
+
the bottom of this document.
|
16
|
+
* This represents the One-Point-Oh realease (albeit RC1) of
|
17
|
+
Facets, but from now on I'll be using date versioning
|
18
|
+
--if you look at the versions below you may understand why.
|
19
|
+
The versioning sequence has no real rationality.
|
20
|
+
Instead I will use this simple Rational Versioning Policy:
|
21
|
+
* If YYYY-MM-DD it's a development release.
|
22
|
+
* If YYYY-MM it's an official release.
|
23
|
+
* If just YYYY it's hella stable.
|
24
|
+
One might argue this is not as robust as a compatability
|
25
|
+
significant point-based versioning system, but I'd say that's
|
26
|
+
all well and good in theory, now give me something that actually
|
27
|
+
works in practice.
|
28
|
+
|
29
|
+
== 0.9.5 Rebirth
|
30
|
+
* Rebirth of Facets! As cool as the name Nano is, it became clear
|
31
|
+
that most people are drawn toward the name Facets. So we are
|
32
|
+
reverting back. Nonetheless Nano will remain a viable alias for
|
33
|
+
Facets.
|
34
|
+
* Must now use <code>require 'facets'</code> prior to using
|
35
|
+
other Facets. This does two things. First it loads the
|
36
|
+
base methods, which ensures that all programs have them
|
37
|
+
readibly available when using Facets. Secondly it supplements
|
38
|
+
#require to handle aliases. In essence, require 'facet/...',
|
39
|
+
require 'facets/...' and require 'nano/...' all point to the
|
40
|
+
same place(s). (NOTE This is a precursor to a more universal
|
41
|
+
system that will handle aliasing automatically.)
|
42
|
+
* kernel/require_esc has been removed. #require_nano will be also
|
43
|
+
in the next release. These will no longer be needed thanks to
|
44
|
+
the aliasing system.
|
45
|
+
|
46
|
+
== 0.9.2 Littles
|
47
|
+
* Added string/starts_with? and string/ends_with?
|
48
|
+
* Fixed module/memoize to cache on a per class/module bases.
|
49
|
+
* Added module/is as an alias for /include.
|
50
|
+
* Added module/shadow_method and shadow_all.
|
51
|
+
* Renamed module/superup (which was module/supers) to module/as. And defined a new
|
52
|
+
method called /superior which is like /super but skips to a sepecified ancestor.
|
53
|
+
* Renamed module/super_send to module/send_as.
|
54
|
+
|
55
|
+
== 0.9.1 Wraps
|
56
|
+
* Added module/nesting (not to be confused with the class method Module::nesting).
|
57
|
+
* Thanks goes to Gavien Kistner for new string/word_wrap methods
|
58
|
+
(with additioanl thanks to Dyane Borderson for his suggestions).
|
59
|
+
* Added hash/each_with_key and each_with_index, as well as array/each_with_key;
|
60
|
+
increasing polymorphism between the two classes.
|
61
|
+
* Moved array/each_pair to enumerable/each_pair and changed how it worked to
|
62
|
+
what one might expect.
|
63
|
+
|
64
|
+
== 0.9.0 NotUorI
|
65
|
+
* Deprecated object#special_class, which was a method for (class<<self;self;end).
|
66
|
+
Already have too many aliases for this, and though the name is fitting, the simpler
|
67
|
+
method #own is better (alternative: #singleton).
|
68
|
+
* Fixed enumerable/uniq_by file which was misnamed 'unique_by.rb'.
|
69
|
+
* BIG CHANGE! Got rid of URI encoding on file names and sub'd a converson table
|
70
|
+
of english readable names. Thanks Jeff Wood, Florain Gross, Dav Burt,
|
71
|
+
Gavin Kistner, James Edward Gray II, Brian Schröder, Mauricio Fernández,
|
72
|
+
David A. Black, Gavin Sinclair, Nikolai Weibull and Christian Neukirchen.
|
73
|
+
|
74
|
+
== 0.8.3 UorI
|
75
|
+
* Added kernel/uri and kernel/unuri
|
76
|
+
* (Good idea?) removed methods module/sattr, sattr_reader, &c. Instead created object/meta
|
77
|
+
in which attr, attr_reader, &c. are made public. So, sattr -> meta.attr.
|
78
|
+
* Added array/unzip
|
79
|
+
* Added logger/format and logger/format_message (stub).
|
80
|
+
* Added string/dequote.
|
81
|
+
* Class method file names now begin with '::' to separate them from instance methods.
|
82
|
+
|
83
|
+
== 0.8.2 Nano Revolution
|
84
|
+
* Name Change! What was Ruby Facets is now Nano Methods!
|
85
|
+
* New minor version as there has been a change of plans with the integration of what was Carats.
|
86
|
+
The classes and modules have been reseperated into their own project called Mega Modules.
|
87
|
+
* Modified the #firstxxx/#lastxxx methods to be more congruent and comprehensible.
|
88
|
+
* Renamed object/supers to object/superup. Better!
|
89
|
+
* Got rid ot symbol/gen. Use object/generate_method_name or module#generate_instance_method_name
|
90
|
+
instead ( Is that the longest non-foo method name ever? :)
|
91
|
+
* The file 1st.rb has moved to object/method. This modifies #method to persist the returned
|
92
|
+
Method object. The original non-persitent version of #method is aliased to #original_method.
|
93
|
+
(This arrangement is not set in stone though, and is still be considered.)
|
94
|
+
* Added module/clone_using, module/clone_ranaming and module/clone_removing.
|
95
|
+
* Added module/integrate (I love this one!)
|
96
|
+
* Added many new enumerable methods: #filter_map, #compact_map, #commonality, #frequency,
|
97
|
+
#probability and #find_collisions.
|
98
|
+
* Moved some methods from array to enumerable: #each_permutation, #each_combination,
|
99
|
+
#each_unique_pair and the class method ::combinations.
|
100
|
+
* Added string/bytes per ruby-dev summary 26385-26467.
|
101
|
+
* Moved #cattr_reader, #cattr_writer and #cattr_accessor from Class to Module.
|
102
|
+
* Renamed numeric/octet_units to numeric/bytes_to_s and added a #bits_to_s as well.
|
103
|
+
* Added class/descendants (alias subclasses) and class/remove_descendents, as well as
|
104
|
+
object/descendents_of and object/remove_descendents_of.
|
105
|
+
* Added methods to comparable: #cap, #clip. There are also #at_least and
|
106
|
+
#at_most, although FYI #cap and #clip handle the same functionality.
|
107
|
+
* Removed string/table_name and string/class_name (they were too Rails specific).
|
108
|
+
Note: A new module has been added to Mega Modules, called orm-inflect.rb. It contains numerous
|
109
|
+
methods for doing this sort of thing.
|
110
|
+
* Added numeric/ceil_multiple (not sure about name though, perhaps a better name like "ceil_to"?).
|
111
|
+
* Added string/soundex for calculating the soundex code of a word/name.
|
112
|
+
* Added io/expect. I thought Ruby already had this but can't find it, so here it is for now.
|
113
|
+
* Placed Florian's binding-of-caller.rb in binding/of_caller. Makes more sense there.
|
114
|
+
* Fixed bug with Continuation::create (it wasn't defined as a class method and should have been).
|
115
|
+
* Fixed bug with string/capitalized? which wasn't always giving the correct result.
|
116
|
+
|
117
|
+
== v0.7.2 George II
|
118
|
+
* Added a class method dir/recurse which allows one to loop through a dir and all its
|
119
|
+
subdirs, etc. It also has an alias #ls_r. Thanks goes to George Maschovitis for this.
|
120
|
+
* Changed array/permute to array/each_permutation.
|
121
|
+
|
122
|
+
== v0.7.1 Quick George
|
123
|
+
* Added facet.rb, although expiremental it makes it possible to use atomic methods without
|
124
|
+
specificaly requiring them. It uses Object#method_missing to require them as needed.
|
125
|
+
* Improved on "molecules", i.e. files that require numerous related atoms in a single go.
|
126
|
+
These will see a great deal of continued improvement in the future.
|
127
|
+
|
128
|
+
== v0.7.0 Georgian Transform
|
129
|
+
* All methods with names containing non-alphanumeric characters now have facet
|
130
|
+
files without those special characters. This removes some incompatibilites with
|
131
|
+
certain systems (including Windows). All such symbols have been replaced with
|
132
|
+
CGI escape sequences, for instance 'in?.rb' becomes 'in%3F.rb'. To avoid having
|
133
|
+
to use these "ugly" names, a new method has been added, kernel/require_facet.
|
134
|
+
* Methods that were grouped together in the same file have been separated
|
135
|
+
into their own files. Pure Atomicity has been achieved!
|
136
|
+
* The method array/put has been dropped in favor of array/top (as a better alias for #unshift).
|
137
|
+
* Methods #matchdata/post_match_from and #matchdata/pre_match_from have deprecated
|
138
|
+
in favor of more generalized methods that serves the same purposes,
|
139
|
+
matchdata/matchtree and matchdata/matchset.
|
140
|
+
* Added module/include_as.
|
141
|
+
* Added array/permute.
|
142
|
+
|
143
|
+
== 0.6.3 Gemstone
|
144
|
+
* Gem is now avaliable!
|
145
|
+
* Added kernel/require_all which allows one to require a pattern of files,
|
146
|
+
making it easy to require every file in a directory.
|
147
|
+
* Added hash/traverse and hash/traverse!, which takes a block and iterates over
|
148
|
+
each key-value pair descending into subhash values and applying the block.
|
149
|
+
(Thanks goes to Ara T. Howard and robert for their help.)
|
150
|
+
* Added hash/collect. This uses enumerable/graph so that
|
151
|
+
hash/collect will return a hash rather then an array.
|
152
|
+
* Added numeric/before and numeric/after in place of #ago and #since
|
153
|
+
and aliased #ago and #since to them, per the suggestions of
|
154
|
+
Francis Hwang.
|
155
|
+
* Added "poor man's profiler", time/elapse. (Thanks goes to Hal Fulton).
|
156
|
+
* Changed enumerable/build_hash to enumerable/graph. The method #build_hash
|
157
|
+
has been aliased to #graph for the time being for backward compatability.
|
158
|
+
* Added array/last_index. (Thanks goes to Jabari)
|
159
|
+
|
160
|
+
== 0.6.2 Refinement I
|
161
|
+
* Added kernel/resc as a shortcut for Regexp.escape.
|
162
|
+
* Renamed hash/keys_to_string to hash/key_to_s and
|
163
|
+
hash/keys_to_symbol to hash/keys_to_sym to be more consistant
|
164
|
+
with other methods and what these methods specifically do.
|
165
|
+
The old names have been deprecated.
|
166
|
+
* Added hash/has_keys?, which allows for checking mutliple keys at once.
|
167
|
+
Also includes #has_only_keys?
|
168
|
+
* Added Rail's Time and Byte modules for Numeric with
|
169
|
+
numeric/times.rb and numeric/bytes.rb (I've been informed that
|
170
|
+
thanks go to Richard Kilmer for this. Thanks!)
|
171
|
+
* Added numeric/octet_unit which utilizes numeric/bytes.
|
172
|
+
(The name of this method may change in the future though.)
|
173
|
+
* Added enumerable/uniq_by.
|
174
|
+
* Added module/abstract.
|
175
|
+
* Added module/redirect which is similar to alias, but does not
|
176
|
+
copy the method, but rather wraps it. It also takes a hash so
|
177
|
+
multiple methods can be redirected all at once.
|
178
|
+
* Added string/shatter which is similar to split but includes
|
179
|
+
the matched portions of text.
|
180
|
+
|
181
|
+
== 0.6.1 Florian's Mixes
|
182
|
+
* Updated the current set of mix files which were still from
|
183
|
+
version 0.5.0. (2004-12-31)
|
184
|
+
|
185
|
+
== 0.6.0 Florian's Onslaught
|
186
|
+
* Major revisions made by Florian's onslaught. (2004-12-28)
|
187
|
+
* First general public release.
|
188
|
+
|
189
|
+
== 0.5.0 Fit for First
|
190
|
+
* This is the beginning of offical releases. (2004-12-23)
|
191
|
+
* Now called Facets.
|
192
|
+
* Changed layout to be completely atomic! (2004-10-30)
|
193
|
+
|
194
|
+
== 0.4.0 Raspberry
|
195
|
+
* Scoured the Ruby world for useful additions.
|
196
|
+
* Changed name again from A.B.C. to Raspberry.
|
197
|
+
I can't seem to settle on a name. Even the new
|
198
|
+
subsections have changed five times. (2004-08-08)
|
199
|
+
* Adjusted Tuple to use Tuple::[*args] instead of ::new, which now takes
|
200
|
+
a single argument instead, either an Array or a String which it splits.
|
201
|
+
* Removed services.rb unitl in gets fixed and a better name.
|
202
|
+
|
203
|
+
== 0.3.3 Mega2
|
204
|
+
* Added inheritable.rb, a lib for creating class vars inherit from ancestors
|
205
|
+
* Addes annotations.rb, a lightweight metadata system good for annotating
|
206
|
+
methods esspecially. It is built on top of inheritable.rb.
|
207
|
+
|
208
|
+
== 0.3.2 Mega
|
209
|
+
* Added services.rb, a lib for managing methods as first class objects
|
210
|
+
* Fixed/cleaned-up orm_supprt.rb
|
211
|
+
|
212
|
+
== 0.3.0 ABC
|
213
|
+
* Reorganinzed all of this together in a nice neat way.
|
214
|
+
* Changed name of library from Succ to A.B.C.
|
215
|
+
which stands for All Base Common. (2004-02-02)
|
216
|
+
* Name change to Mega Modules!
|
217
|
+
* Added a few important files: multipliers.rb, binary_multipliers.rb,
|
218
|
+
time_in_english.rb and orm_inlectors.rb.
|
219
|
+
* Each one of these is a "Methods Module", i.e. They are a collection of
|
220
|
+
closely related methods that modify one or more core classes/modules.
|
221
|
+
Individually these methods could have very well ended up in Nano Methods,
|
222
|
+
but given there quantity and interrelation they were more suitable to a
|
223
|
+
module, and thus placed here.
|
224
|
+
|
225
|
+
== 0.3.1
|
226
|
+
* Aliased #autoload_classes with #autorequire.
|
227
|
+
* Added #strfbits and #strfbytes to binary_multiplers.rb.
|
228
|
+
|
229
|
+
== 0.2.0 Succ
|
230
|
+
* A number of new methods added.
|
231
|
+
* Renamed it Succ for "successor". (2003-05-31)
|
232
|
+
* Initial public release
|
233
|
+
|
234
|
+
== 0.1.0 Carats
|
235
|
+
* Early Development as Ruby Carats
|
236
|
+
|
237
|
+
== 0.0.0 TomsLib
|
238
|
+
* Tomslib's just a few useful methods. (2002-07-01)
|
239
|
+
|
data/log/Changelog-1.txt
ADDED
@@ -0,0 +1,450 @@
|
|
1
|
+
= Facets ChangeLog 1.x.x (Beta Series)
|
2
|
+
|
3
|
+
== 1.8.54
|
4
|
+
* added reqiure to ostruct.rb test
|
5
|
+
* fix to command.rb's initializer
|
6
|
+
* Fixed all bug reports from rubyforge tracker *except rdoc issue
|
7
|
+
** fixed bug with times.rb beginning_of_year and beginning_of_month
|
8
|
+
** replaced pqueue and heap with new working class (thanks to Olivier Renaud)
|
9
|
+
** fixed bug in ormsupport.rb (this will be moved out of facets in next release)
|
10
|
+
** added empty? to dictionary (removed old subclass of Hash)
|
11
|
+
* significant improvements to command.rb thanks to Tyler Rick
|
12
|
+
* added tests to elementwise and tap
|
13
|
+
* fixed test for elementwise and op_tilde_self
|
14
|
+
* added enumerable/map_send
|
15
|
+
* added thread_map and thread_map_send thanks to greg
|
16
|
+
* added operator "~@" for enumerable/elementwise
|
17
|
+
* added more/consoleutils.rb
|
18
|
+
* added string/cleave
|
19
|
+
* added capitalize_all thanks to Richard Laugesen
|
20
|
+
* cartesian_product is an alias of enumerable/cart
|
21
|
+
* added array pad thanks to Richard Laugesen
|
22
|
+
* added kernel/tap
|
23
|
+
* fixed test/unit load issues
|
24
|
+
* converted facet/ requires to facets/core or facets/more as needed
|
25
|
+
* further improvements to arguments.rb (looking good!)
|
26
|
+
* improved symbol/self/generate
|
27
|
+
* bug fix kernel/autoreload arguments needed to be in opposite order
|
28
|
+
* add to_xoxo
|
29
|
+
* removed bad character codes in multiplier.rb
|
30
|
+
* used yaml to allow json.rb to work for all object in general
|
31
|
+
* improvements to functor (note: is to_a and to_proc okay?)
|
32
|
+
* add test to string/bytes.rb
|
33
|
+
* bug fix to nilclass/op_cmp
|
34
|
+
* fixed enumerable/op_pow to use enumerable/cart
|
35
|
+
* added array/op_div
|
36
|
+
* adjustments to xmlbuilder and htmlbuilder dur to buildingblock changes
|
37
|
+
* improved buildingblock.rb
|
38
|
+
* simplified interface of arguments.rb (still a little more to do)
|
39
|
+
* improvements/simplifications to Dir.multiglob
|
40
|
+
* added new authors to list
|
41
|
+
* fixed misspelling of behavior.rb (was bahvior.rb)
|
42
|
+
* removed #own from base list in facets.rb (really need a standard for "singleton class")
|
43
|
+
* minor adjustments to uploadutils
|
44
|
+
* fixed bug in aspects.rb that would not handle args of wrapped method
|
45
|
+
* Symbol#to_s optimization, had to remove freeze
|
46
|
+
* updates to fileutils/stage (stage worth keeping?)
|
47
|
+
* update to credits
|
48
|
+
* fix bug in kernel/ask, returns more than one character
|
49
|
+
* cleanup of enumerbale/graph (no effective change)
|
50
|
+
* new super fast enumerable/cart by Thomas Hafner (replaces #cross)
|
51
|
+
* improved multiglob rountines (accept '+' and '-' prefixes)
|
52
|
+
* No longer will track project file via scm until it settles
|
53
|
+
* fixed bug in attr_tester, thanks Dov!
|
54
|
+
* added weekdays to times.rb thanks to Ryan Platte and Dave Hoover
|
55
|
+
* improvements to dictionary.rb (no longer a subclass of Hash) thanks Jan!
|
56
|
+
* re-replace openhash with openobject
|
57
|
+
* improvements to ann.rb and ann_attr.rb. works, yea!
|
58
|
+
* fixed bug in string/singular.rb
|
59
|
+
* changed enumerable/cross into enumerable/cart and cartesian_product
|
60
|
+
* openobject returns (openhash was a bad name, thanks george)
|
61
|
+
* moved enumerable/cross to enumerable/cart (cartesian_product)
|
62
|
+
|
63
|
+
== 1.8
|
64
|
+
* added buildingblock.rb, replaced builderobject.rb
|
65
|
+
* adjust require for "yored" files
|
66
|
+
* HtmlBuilder and XMLBuilder aer now based on BuildingBlock
|
67
|
+
* bug fix for command.rb
|
68
|
+
* minor improvements to basic object (object_self to access kernel methods)
|
69
|
+
* ostuct adjustment, use #instance_delegate to get underneth the open access
|
70
|
+
* module/include_as is now based on module/namespace (thanks Pit!)
|
71
|
+
* minor adjustments to methods for (class<<self;self;end)
|
72
|
+
* fixed enumerable/partition_by
|
73
|
+
* further updates to project info file (need to stop versioning this)
|
74
|
+
* deprecated (yored) builderobject.rb (poor implementation)
|
75
|
+
* added hash/insert; like store but only if key isn't already present
|
76
|
+
* added module/include_and_extend
|
77
|
+
* facets.rb now references facets/sys.rb
|
78
|
+
* added facets/automatic -- very cool, albiet expiremental way to load core methods automatically!
|
79
|
+
* added File::mulitglob_sum; accumulates file patterns, and accepts '+' and '-' prefixes
|
80
|
+
* added module/module_method; like module_function but makes method public
|
81
|
+
* added module/include_function_module; attempts to properly include one function_module into another
|
82
|
+
* kernel/yaml convenience method for YAML::load
|
83
|
+
* added kernel/supress; supress errors while executing a block (nice DHH!)
|
84
|
+
* added symbol/chomp, like string#chomp
|
85
|
+
* added proc/to_h; converts an assignment proc into a hash
|
86
|
+
* proc/bind; bind a proc to an object, returning a method
|
87
|
+
* added module/prepend; provides dyanamic method wraps for modules, and static wraps for classes
|
88
|
+
* added module/new; use a module as if it were a class
|
89
|
+
* added module/alias_accessor
|
90
|
+
* renamed #superior to #super_at
|
91
|
+
* kernel/instance_class; yet anouther meta_class name, but a more sensicle name this one
|
92
|
+
* added kernel/populate; populates an object's inst. vars from a hash or assingment block
|
93
|
+
* added kernel/daemonize; one last thanks to DHH!
|
94
|
+
* added enumerable/injecting; like inject but automatically returns the memo from the block
|
95
|
+
* added kernel/object_send, a true public-only send method
|
96
|
+
* added kernel/silence_stream; output to null device; thanks DHH!
|
97
|
+
* added kernel/instance_values, thanks DHH!
|
98
|
+
* added Config:inspect for rbconfig
|
99
|
+
* added hash/pairs_at (aking to values_at)
|
100
|
+
* added _why's metaid methods (meta_class, meta_eval, etc.)
|
101
|
+
* added kernel/enable_warnings to complement silence_warinings
|
102
|
+
* added integer/to_roman
|
103
|
+
* added logical operators for hash (and/or)
|
104
|
+
* array/to_path convert ans array to a path string
|
105
|
+
* array/index takes a block
|
106
|
+
* added fileutils/compress; very simple convenience methods for archiving folders
|
107
|
+
* added fileutils/stage adn staged, a means of transfering files accoring to preset rules
|
108
|
+
* had to remove taskable.rb for now (implementation won't work as toplevel include)
|
109
|
+
* added kernel/ask, simply command to get console input
|
110
|
+
* moved deprecated #facet_require to yore lib
|
111
|
+
* deprecated (yored) kernel/own, yet another term for the singleton class
|
112
|
+
* renamed quaclass to qua_class
|
113
|
+
* added populate.rb, mixin for classes that need on a basic initializer
|
114
|
+
* added version_number.rb (a specialized tuple)
|
115
|
+
* OpenObject = OpenHash (OpenObject will eventually be deprecated)
|
116
|
+
* added uploadutils.rb
|
117
|
+
* added Joel VanderWerf's great script.rb script
|
118
|
+
* added Austin's minitar.rb --it's just too damn useful!
|
119
|
+
* added htmlfilter.rb very nice html escape class
|
120
|
+
* added dependency.rb, allwos method to have dependend execution (like rake tasks)
|
121
|
+
* added arguments.rb this is for parsing console command arguments
|
122
|
+
* add new version of annotations: ann.rb and ann_attr.rb
|
123
|
+
* memoize should now work at toplevel
|
124
|
+
* removed dataobject.rb (was never used)
|
125
|
+
* minor doc change to instance_intercept.rb
|
126
|
+
* doc change to methodfilter.rb (maybe deprecat in future)
|
127
|
+
* deprecated (yored!) module/inject; what a silly method
|
128
|
+
* added File::yaml? to roughly detect if a file is a yaml file
|
129
|
+
* deprecated kernel/require_facet (no longer needed)
|
130
|
+
* moved old module/namespace implementation to yore
|
131
|
+
* adjust old annotation.rb (now in yore) to use openhash
|
132
|
+
* moved plugin.rb to ratchets/library project
|
133
|
+
* renamed openobject to openhash !!!
|
134
|
+
* proper credit for multiton goes to Ara T. Howard!!!! Also improvements.
|
135
|
+
* remove library.rb (move to ratchets/library project)
|
136
|
+
* minor bug fix to httpaccess
|
137
|
+
* updated autovivify.rb to use openhash
|
138
|
+
* improvement to command.rb
|
139
|
+
* imporved time/stamp
|
140
|
+
* reimplemented proc/to_method for more sensible behavior
|
141
|
+
* reimplemented module/namespace, very clever thanks to pit captain
|
142
|
+
* added module_load and module_require, e.g. load into and require into
|
143
|
+
* reimplemented instance_exec, should be much improved
|
144
|
+
* doc updates to inflect.rb
|
145
|
+
* updates to Hash op_add, reverse_merge, and rekey
|
146
|
+
* each_slice is now just an alias via enumerator & fixes to partition_by
|
147
|
+
* minor adjusment to multiglob
|
148
|
+
* modified all.rb (not recommended!) to require facets/sys
|
149
|
+
* modifications to project information file (should this be versioned?)
|
150
|
+
* created yore lib to store deprecated features (good idea!)
|
151
|
+
* modified PROJECT info file
|
152
|
+
* added module class/module_load and _require
|
153
|
+
* remove facet/ redirect lib from darcs repository
|
154
|
+
* OpenObject is now OpenHash (OpenObject still exist for backcompat)
|
155
|
+
* kernel/returning is a stub for kernel/with
|
156
|
+
* added proc/update as alias for #call per Tim Pease use of Proc as Observable
|
157
|
+
* added behavior.rb by Nobuyoshi Nakada (plan to improve)
|
158
|
+
* rewrote taskable.rb using classes to represent tasks; it is much improved
|
159
|
+
* openobject.rb doc updates
|
160
|
+
* major update to functor which is now a subclass of Proc (should be faster)
|
161
|
+
* improvements to dictionary.rb to go along with additions of first and last
|
162
|
+
* small improvements to command.rb
|
163
|
+
* removed uses of __class__ for object_class and solidified usaged of #as in basicobject.rb
|
164
|
+
* deprecated ostruct shadow methods (i.e __table__) in favor of #instance methods
|
165
|
+
* added test to module/alias_method_chain
|
166
|
+
* imporvements to instance_exec thanks to Mauricio Fernandez
|
167
|
+
* improvements to kernel/send_as
|
168
|
+
* improvements to kernel/as
|
169
|
+
* minor doc addition to kernel/as
|
170
|
+
* fixed syntax in hash/op_add.rb
|
171
|
+
* imporvements to hash/partition_by thanks to Gregory of Laurel
|
172
|
+
* added Mauricio Fernandez to authors
|
173
|
+
* added addtional work library lore
|
174
|
+
* moved "calibre" project information files
|
175
|
+
* moved a number of "in the works" libs to ToadCode project
|
176
|
+
* removed predicate.rb, an expiremental logic system, and moved to ToadCode
|
177
|
+
* Added plugin.rb, an indirect require mechinism, ie. a plugin system
|
178
|
+
* remove one.rb and moved to ToadCode project, this was just silly/fun library
|
179
|
+
* Added library.rb which is a library ledger system (used to be roll.rb)
|
180
|
+
* added kernel/with which instance_eval's a block on with's subject
|
181
|
+
* rekey is an improved version of normalize_keys (ie. the basis of symbolize_keys)
|
182
|
+
* multiglob is like glob but handles a list of patterns
|
183
|
+
* proper access to openstruct's underlying table
|
184
|
+
* minor adjustment to taskable.rb
|
185
|
+
* minor adjustment to #dresner docs
|
186
|
+
* minor adjustment to #as
|
187
|
+
* simple doc addition to setup.rb
|
188
|
+
* doc fixes and losening toplevel constraint to Object in taskable
|
189
|
+
* made OpenObject #update and #merge public; added to_hash
|
190
|
+
* minor "public" fix to main_as_object
|
191
|
+
* removed unorder_store and store_only; added first/last to dictionary
|
192
|
+
* continued improvements to command.rb
|
193
|
+
added some new callbacks such as option_missing;
|
194
|
+
also handles method_missing properly now
|
195
|
+
* minor adjustments to module::@+
|
196
|
+
* added string/rewrite
|
197
|
+
* test fixes to module/include_as
|
198
|
+
* documentation fix for class_extension
|
199
|
+
* minor edit to supermethod (also finish #superior removal)
|
200
|
+
* cleanup kernel/set_with code
|
201
|
+
* update kernel/metaclass can now take a block
|
202
|
+
* added hash#+ and hash#- (op_add and op_sub)
|
203
|
+
* added cache to enumerable/every
|
204
|
+
* minor updates to facets.rb
|
205
|
+
* removed kernel/superior (silly name)
|
206
|
+
* minor modifications ot PROJECT file
|
207
|
+
* [add] more/autovivify.rb expiremental lib.
|
208
|
+
* [update] Minor fix to command.rb to not use Kernel methods as subcommands.
|
209
|
+
* [update] Work on annotation.rb to improve support for :self.
|
210
|
+
* [deprecate] enumerable/permute.rb (replaced by permutation) and minor test fix to linkedlist.rb
|
211
|
+
* [added] linkedlist.rb (thanks Kirk Haines!)
|
212
|
+
* [added] enumerable/sum (thanks to Gavin Kistner)
|
213
|
+
* [added] array/each_combo and combos (Eunumerable.combinations will be deprecated eventually)
|
214
|
+
* [rename] changed enumerable/permute to permutation
|
215
|
+
* [update] annotation.rb, fixed :self key
|
216
|
+
* [added] pathname/op_div
|
217
|
+
* [deprecated] hash/each.rb
|
218
|
+
* [removed] hash/each.rb, this variation of Hash#each is too "dangerous" in practice
|
219
|
+
* [update] module/self/op_add.rb: fixed inclusion order
|
220
|
+
* annotation.rb, return annotations of self when key is :self [updated]
|
221
|
+
* module/self/op_add.rb and op_sub.rb - traits like features [added]
|
222
|
+
* minor improvemtns to module/clone_using and integrate
|
223
|
+
* command.rb: minor change to docs [update]
|
224
|
+
* openobject.rb (added NilClass#to_openobject) [update]
|
225
|
+
* enumerable/each_slice.rb [replace]
|
226
|
+
Ruby already has #each_slice if you require 'enumerator'. And for 1.9,
|
227
|
+
I believe, this will be present automatically. So Facets' each_slice
|
228
|
+
has been replaced with a simple redirection to require 'enumerator'.
|
229
|
+
Ruby's version is slightly different in that it won't check arity if
|
230
|
+
a slice count is not given. For this, use enumerable/each_by.
|
231
|
+
* array/delete_at.rb [removed]
|
232
|
+
Ruby's Array class already has a #delete_at method,
|
233
|
+
although this is another method at odds with Hash.
|
234
|
+
Use #delete_values_at instead.
|
235
|
+
* moved File.bitbucket to File.null (but bitbucket was so "fun"! ;)
|
236
|
+
* added nilclass/to_path
|
237
|
+
* added kernel/load_local
|
238
|
+
* added kernel/callee
|
239
|
+
* added enumerable/eachn, integer/each and integer/of
|
240
|
+
* re-added array/delete_values_at
|
241
|
+
* added filetest/self/root
|
242
|
+
* added cache.rb
|
243
|
+
* moved Dir.bitbucket to File.bitbucket
|
244
|
+
* removed task file in favor of sake based util/
|
245
|
+
* added main_as_module
|
246
|
+
* added doublemetaphone (Thanks Lawrence Philps!)
|
247
|
+
* rewrote taskable.rb
|
248
|
+
* minor doc fix to association.rb
|
249
|
+
* added symbol/to_s which caches the result for speed up
|
250
|
+
* additions and adjusments related to hash/delete_at
|
251
|
+
* added Dir.bitbucket
|
252
|
+
* update to array/op_fetch to include op_store
|
253
|
+
* updated docs and util tasks
|
254
|
+
* minor changes
|
255
|
+
* added filesystem.rb
|
256
|
+
* taskable should now work at the toplevel too
|
257
|
+
* still working the organization as Reap/Sake change
|
258
|
+
* started setting project tasks up for sake
|
259
|
+
* updates to enumerable each_slice
|
260
|
+
* updated names of meta files
|
261
|
+
* updates to READMEs
|
262
|
+
* added trace to command.rb
|
263
|
+
* organizational changes
|
264
|
+
|
265
|
+
== 1.7
|
266
|
+
* fix to inifinty.rb
|
267
|
+
* comment on cut.rb needed a quick fix
|
268
|
+
* updated infinity
|
269
|
+
* added tkxml.rb
|
270
|
+
* allow tasks to to arguments (all dependent tasks must take same args)
|
271
|
+
* update infinity.rb to conform more with common standards
|
272
|
+
* error catch added to command.rb (thanks Jonas)
|
273
|
+
* added singleton annotations
|
274
|
+
* minor improvement to wrap_method and proc/compose
|
275
|
+
* added more/infinity.rb
|
276
|
+
* major improvement to String#singular and plural
|
277
|
+
* update normalize_keys to take a proc instead of a "send" parameter
|
278
|
+
* projectinfo backups change
|
279
|
+
* added cuts implimentation
|
280
|
+
* separated integer/op_mul from compose, op_mul now composes and Integer#of
|
281
|
+
* wrap_method, no need to undef method before redefining it
|
282
|
+
* move calibre files (will we do ever use?) to work/pore/meta
|
283
|
+
* added work dir to repo
|
284
|
+
* fix instance_interception test
|
285
|
+
* doc cleanup
|
286
|
+
* added hash/op_div and array/op_div to BASE.
|
287
|
+
* remove kernel/called and fixed callee,__callee__ and __method__.
|
288
|
+
* just about prefected OpenObject
|
289
|
+
* keys_to_sym to symbolize_keys usage
|
290
|
+
* remove explore dir, perhaps better to do without midstage
|
291
|
+
* added to_a to OpenObject
|
292
|
+
* minor touchup to opencascade
|
293
|
+
|
294
|
+
== 1.6
|
295
|
+
* PrivateAccess expiremental class
|
296
|
+
* added reverse_merge (from Active Support)
|
297
|
+
* adjustments to stringify_keys, record normalize_keys
|
298
|
+
* work on other Hash subclasses Dictionary, OpenCascade, and Hash#having_fallback features
|
299
|
+
* added some core methods enumerable#divide, array and hash op_div, kernel/meta
|
300
|
+
* deprecated generate_method_name and generate_instance_method_name
|
301
|
+
* Hash methods keys_to_s and keys_to_sym to stringify_keys and symbolize_keys
|
302
|
+
Both now depend on normalize_keys
|
303
|
+
* rewrote openobject as a subclass of Hash with a method filter
|
304
|
+
* rewrote annotation.rb and moved into more/
|
305
|
+
* add meta docs to darcs
|
306
|
+
* added Jan Molic's Debugger(Logger) to explore
|
307
|
+
* calibre task (worth the effort?)
|
308
|
+
* added Symbol::generate
|
309
|
+
* remove generate_method_name methods
|
310
|
+
** removed kernel/generate_method_name
|
311
|
+
** removed moodule/generate_instance_method_name
|
312
|
+
Neither were thread safe.
|
313
|
+
* new implementation of openobject cont.
|
314
|
+
* updated dictionary class
|
315
|
+
1. created subclass AutoDictionary, now used by Dictionary.auto
|
316
|
+
2. deprecated ::key_new and :value_new, use ::new.by_key and ::new.by_value instead.
|
317
|
+
3. Retained ::alpha but changed ::auto_key to ::auto_alpha.
|
318
|
+
* new implementation of openobject in Facets/EXPLORE
|
319
|
+
* Added deep_clone (thanks Jan Molic)
|
320
|
+
* project metadata work adjustments
|
321
|
+
* minor update to tagiterator.rb
|
322
|
+
* add _darcs expection to FileList
|
323
|
+
* fix to nilclass#status (accept single parameter)
|
324
|
+
* added Hash.auto (thanks Jan Molic)
|
325
|
+
* remove blankslate alias to basicobject
|
326
|
+
* added annotation and instance_intercept to Facets/EXPLORE
|
327
|
+
* added Kernel#to_data
|
328
|
+
* add Daniel Berger's Hash#to_stuct
|
329
|
+
* moved ValueHolder in snapshot.rb to Snapshot::ValueHolder
|
330
|
+
* minor bug fix to alias_method_chain
|
331
|
+
* fix compatiblity with Reap
|
332
|
+
* improved Proc#to_method and Kernel#instance_exec
|
333
|
+
* added instance_exec (duh)
|
334
|
+
* added object_clone and object_dup
|
335
|
+
object_ methods are intended as non-overridable (although you cna if you must).
|
336
|
+
* no Configuration alias for Settings
|
337
|
+
* added facets/explore libs
|
338
|
+
* added settings.rb from glue
|
339
|
+
* openobject uses self[] instead of @table[]
|
340
|
+
also update proj/infp to start 1.5 series
|
341
|
+
* deprecate BaasicObject
|
342
|
+
|
343
|
+
== 1.4.5
|
344
|
+
* move ProjectInfo to proj/info
|
345
|
+
* better arrangment of repository
|
346
|
+
* Added nil#status, module#alias_method_chain and enumerable#cascade.
|
347
|
+
nil#status - Allows a messgae to be passed through a failure chain.
|
348
|
+
module#alias_method_chain - from rails this is clever idiom for
|
349
|
+
module-based method wrapping. A limited solution, but since
|
350
|
+
there's no standard solution as of yet, well support til then.
|
351
|
+
enumerable#cascade - cascade a list of action on each element
|
352
|
+
of an enumerable.
|
353
|
+
* method missing in htmlbuilder effected by basic object fix
|
354
|
+
* minor update to functor.rb
|
355
|
+
* change WebAgent to Web
|
356
|
+
* Removed hash/keys_to_iv b/c it is a poor name. Since the alternative of
|
357
|
+
keys_to_instance_variables conveys the wrong idea, decided to just get
|
358
|
+
rid of this. Instead use the Rails compatibile hash/variablize_keys.
|
359
|
+
* 1.4RC3
|
360
|
+
* initial import
|
361
|
+
|
362
|
+
== 1.4.4
|
363
|
+
* added nil#status - Allows a messgae to be passed through
|
364
|
+
a failure chain.
|
365
|
+
* added module#alias_method_chain - from rails this is clever
|
366
|
+
idiom for module-based method wrapping. A limited
|
367
|
+
solution, but since there's no standard solution as
|
368
|
+
of yet, well support til then.
|
369
|
+
* added enumerable#cascade - cascade a list of actions on each
|
370
|
+
element of an enumerable. Better name for this?
|
371
|
+
* method missing in htmlbuilder effected by BasicObject fix
|
372
|
+
(use __self__.method instead of __metod__)
|
373
|
+
* minor update to functor.rb. Added @self = function.binding.self.
|
374
|
+
Still tweaking for best meta informatin access.
|
375
|
+
* change WebAgent to Web
|
376
|
+
* Removed hash/keys_to_iv b/c it is a poor name. Since the alternative
|
377
|
+
of #keys_to_instance_variables conveys the wrong idea, decided to just
|
378
|
+
get rid of this. Instead use the hash#variablize_keys which is also
|
379
|
+
Rails compatibile.
|
380
|
+
|
381
|
+
===1.4.2
|
382
|
+
* Started using Darcs --finally!
|
383
|
+
* Transition to Darcs has interupted ChangeLog though :(
|
384
|
+
* Mostly minor fixes in prepeartion for official 1.4 release.
|
385
|
+
* Adjusted BasicObject slightly, further reducing unhidden methods.
|
386
|
+
Among them __object__, __method__ and #as. Also added method_missing
|
387
|
+
that detects shadow methods and rebinds them to Object. Keep in mind
|
388
|
+
that woun't help you if you override method_missing which is
|
389
|
+
typical for this class.
|
390
|
+
* Fixed bug in BasicObject#__self__.
|
391
|
+
|
392
|
+
== 1.4.0
|
393
|
+
* Added Cookie, HTTP and HTTPAccess of ...'s library.
|
394
|
+
* OpenObject's __get__ and __set__ methods have been changed
|
395
|
+
to __fetch__ and __store__ to correspond to the Hash methods.
|
396
|
+
* Added OpenCascade, which is like OpenObject but chains access.
|
397
|
+
* Added ...'s lazy.rb which include's Future and Promise classes.
|
398
|
+
* Added task.rb, which provides a Rake interface compatible task
|
399
|
+
system, but that can be used in any code.
|
400
|
+
* Improved Hash#traverse (it now does all traversing before yielding).
|
401
|
+
* kernel/me, kernel/methodname and kernel/method_name have all been
|
402
|
+
deprecated in favor of the 1.9 standard kernel/__method__ and
|
403
|
+
kernel/__callee__.
|
404
|
+
* Console::Application is deprecated and is no longer an alias for
|
405
|
+
Console::Command.
|
406
|
+
* Console::Command also now supports run-on flags (eg. -xvzf).
|
407
|
+
* More's classinherit.rb has been removed, and classmethods.rb will be
|
408
|
+
too in another version or two. You should transition all uses of
|
409
|
+
these to core/module/class_extension.rb.
|
410
|
+
* Updated tuple.rb so that when a string is converted to a Tuple (#to_t)
|
411
|
+
the values wll be made integers if they are composed of only numbers.
|
412
|
+
If you need all strings you can use a block since the block bypasses
|
413
|
+
this auto coercement, eg. to_t{ |v| v }.
|
414
|
+
|
415
|
+
== 1.3.1
|
416
|
+
* Deprecated string/to_arr, and slightly adjusted string#to_a.
|
417
|
+
(Not commonly used so not a major change.)
|
418
|
+
* Minor bug fixes.
|
419
|
+
|
420
|
+
== 1.3.0
|
421
|
+
* Ported parts of Nitro's Glue library to Facets.
|
422
|
+
* more/aspects.rb
|
423
|
+
* core/module/on_included.rb
|
424
|
+
* core/module/expirable.rb
|
425
|
+
* core/enumerable/accumulate.rb
|
426
|
+
* Added xoxo.rb, json.rb and rtals.rb.
|
427
|
+
* Repaired missing data files for units.rb.
|
428
|
+
* Moved cattr methods from module/ to class/.
|
429
|
+
* mattr methods are in limbo at the moment.
|
430
|
+
(They were aliases for cattr.)
|
431
|
+
|
432
|
+
== 1.2.1
|
433
|
+
* kernel/meta has been renamed to kernel/instance
|
434
|
+
|
435
|
+
== 1.2.0
|
436
|
+
* Added zimba.tm's string/modulize, pathize and methodize.
|
437
|
+
* Added some Gem methods, self/active?, self/gemspec, self/gempath.
|
438
|
+
|
439
|
+
== 1.0.3
|
440
|
+
* A last ditch attempt to keep facets and calibre as one project.
|
441
|
+
|
442
|
+
== 1.0.2
|
443
|
+
* Added _why's Array modulo.
|
444
|
+
|
445
|
+
== 1.0.0
|
446
|
+
* Sped up string#similarity.
|
447
|
+
* By popular protest deprecated usage of "AClass.use Facets, :amethod".
|
448
|
+
* Created nicer layout of facets/support, /group, /english (one day /method).
|
449
|
+
* Odd sets of facets have been move to facets/group/, eg. facets/group/inflect.
|
450
|
+
* All is now well preped for a Rolls release shoud that come about.
|