Yes, yes, sorry, I read Haris's note the other day and was suitably
chastened. It hadn't occurred to me that Ruby wouldn't canonicalize
require paths, although I realize it's a Really Hard Problem when
considering all the edge cases and other platforms.
It would be nice someday to be able to write something like 'require
"textmate/progress", though. Would need to move the lib/support ruby
files into a 'textmate' folder and modify RUBYLIB. I wonder if this
can be accomplished without modifying the TM app binary.
Chris
On Dec 11, 2006, at 5:46 PM, James Edward Gray II wrote:
IMPORTANT NOTE TO BUNDLE DEVELOPERS: Please, refrain from any
$LOAD_PATH ($:) modifications in bundle support files. I realize
it is a more elegant way to write requires, but it creates bugs in a
load system such as we use for the bundles. The problem is that
support libraries often load other libraries and $LOAD_PATH hacking
makes the relative paths look like new files, so Ruby loads the
library more than once. This often triggers redefinition warnings.
When those warnings end up in the output, as they did with Diff
commands before this fix, you break the document format. Stick to
absolute path requires and we won't have this problem anymore.
Thank you.
Changed:
U trunk/Bundles/Subversion.tmbundle/Support/svn_commit.rb
U trunk/Bundles/Subversion.tmbundle/Support/svn_diff.rb
U trunk/Support/lib/progress.rb
_______________________________________________
textmate-dev mailing list
[email protected]
http://lists.macromates.com/mailman/listinfo/textmate-dev