resolving namespace conflicts via project ? [Re: alternative aliases [Re: [fpc-devel] Re: [fpc-pascal] Re: Ideas for namespace implementation]]
Martin
fpc at mfriebe.de
Tue Jul 27 13:42:06 CEST 2010
Reffering to
http://wiki.lazarus.freepascal.org/Namespaces#Mapping_Namespace_to_each_search_path
From previous mails, a further issue has shown up.
If 2 packages come with the same default namespace (e.g "zip") and
should both be used within the same project, then the user must rename
one of the 2 namespaces.
That however would mean that within this project, the user uses a
different namespace to refer to one of the 2 units.
If the user attempts to compile the project on a different PC (or
publishes it), then the same namespace changes would have to be expected.
It may therefore be desirable to find a way to remap this namespace from
within the project (rather than changing the config of the package.
The problem is to find a way for the project to identify each of the 2
conflicting packages in a safe and unique way, without referring to the
location/install-path of the package (the install path is local to a PC,
and different on others)
Ideas?
-------------
Due to the missing concept of one "package unit", that stores settings
for all units in that directory, there is also a question where to store
such settings.
Currently one way would be to replicate them to each and every unit in
the directory => a real bad idea, because nothing gurantees that the
setting will be equal for the whole package....
If there was one "package unit", that could be used to store setting for
all units, a unit could have a UUID in addition to a namespace => Then
the project could map a new alias to such a UUID.
Martin
More information about the fpc-devel
mailing list