Remove fix against memory leaks in development mode as it killed development performance on large applications (2-3s stall on Basecamp). Octopod is working on a better fix.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1752 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
David Heinemeier Hansson
2005-07-07 06:39:13 +00:00
parent f8be47a6a3
commit ce31eae3ee
2 changed files with 14 additions and 5 deletions

View File

@@ -1,5 +1,10 @@
*SVN*
* Remove fix against memory leaks in development mode as it killed development performance on large applications (2-3s stall on Basecamp). Octopod is working on a better fix.
*1.1.0*
* Fixed conflict with Glue gem #1606 [Rick Olson]
* Added new rules to the Inflector to deal with more unusual plurals mouse/louse => mice/lice, information => information, ox => oxen, virus => viri, archive => archives #1571, #1583, #1490, #1599, #1608 [foamdino@gmail.com/others]

View File

@@ -1,14 +1,18 @@
class Object #:nodoc:
def remove_subclasses_of(superclass)
subclasses_of(superclass).each do |subclass|
ObjectSpace.each_object(Class) do |k|
if k.to_s == subclass
k.instance_variables.each { |v| k.send(:remove_instance_variable, v) }
end
end
# remove_instance_variables_of(klass)
Object.send(:remove_const, subclass) rescue nil
end
end
def remove_instance_variables_of(klass)
ObjectSpace.each_object(Class) do |k|
if k.to_s == klass
k.instance_variables.each { |v| k.send(:remove_instance_variable, v) }
end
end
end
def subclasses_of(superclass)
subclasses = []