BLS reference dependency on Boo

Coordinator
Jul 11, 2008 at 4:25 PM
There is one feature we have been trying to figure out:

The ability to easily update Boo
http://www.codeplex.com/BooLangStudio/WorkItem/View.aspx?WorkItemId=1682

This is extremely hard because newer (or older) versions of Boo will have a different version number than the assembly referenced by BLS. BLS will not load an assembly other than one with the exact same version number and public key. There are only two solutions to this problem that I can think of:

  1. Cannot support this feature, might as well combine root/bin and BooBinPath then. Updates to Boo will only be able to released with new releases of BLS.
    • This isn't that bad of an idea actually.
    • It would be the best way to guarantee BLS is high quality.
  2. Remove references to Boo.Lang.Compiler.dll and instead load the assembly directly from the BooBinPath using reflection.
    • This will make the intellisense code much harder.
    • Reflection is much slower.
    • Significant changes to Boo will still break this solution.
    • What if multiple projects have different BooBinPaths? Loading an assembly this way should be done in a separate AppDomain, marshalling the results back. This is not a fast operation.
    • It would be effin' sweet.