[Opensim-dev] proposal: cleanup and break up region modules

Justin Clark-Casey jjustincc at googlemail.com
Thu Jan 29 13:32:35 UTC 2009


Sean Dague wrote:
> MW wrote:
>> Putting aside the optimisations for now, as I think that is a different question. As if we are going to have a dynamic module system then those issues come with it.
>>
>> While I think having every module in a separate dll/project is too much. As Stefan said I think we have just about enough projects in the core as it is. But I can see a case for moving all the modules that are currently in OpenSim.Region.Environment, into a single separate project/dll called something like OpenSim.Region.CoreModules. 
>>
>> And if we could as Justin said, impove the module loading system, so that the operator can turn on and off the loading/usage of any modules in a single dll. 
> 
> Ah, but the problem is then those all need to release at the same time.
>  One of the reasons to get us into seperate dlls per module is so that
> the IRC module could be updated and distributed without pushing out the
> rest of the dll.

I would actually argue that in this particular case the IRC module is not a core module and should be in the forge.

> 
> It would mean that we would easily be able to replace implementations
> for various core modules without needing to touch the rest.  For
> instance, when diva started to tackle the world map issue, she not only
> had to build her own world map, but to change the one in the core to not
> load.  Had we been under this model, she wouldn't have needed to do that.

This would still mean that people would have to move the dll being included in core so that it was no longer loaded by 
the system.  To me, this seems no less of a task than having a configurable list of modules that are loaded.  Having to 
move dlls also means that it isn't easy to pass configuration files around - instead you have to give instructions or 
scripts for moving around modules in the filesystem.

> 
> Don't fear the projects, more projects don't hurt you. :)

But in this case they do, in terms of cluttering up the solution with lots and lots of projects that are all used anyway 
in almost all OpenSim installations and possible in terms of increasing build times (I admit that I may be paranoid on 
this point and there might be ways to fix this via nant changes).  It will also increase the effort required for 
refactoring existing code into modules, since creating a new project takes more time.

-- 
justincc
Justin Clark-Casey
http://justincc.wordpress.com



More information about the Opensim-dev mailing list