Re: Continuing discussion of oaf ...



Maciej Stachowiak <mjs eazel com> writes:

> It's a lot easier for two developers working completely independently
> to accidentally pick the same human-readable string name than to
> accidentally pick the same UUID; the latter is more or less impossible
> short of doing it intentionally.

I fully agree with Maciej here - and more than that, if this ever happens -
it is much worse if you get a clash on the OAFIID than on the IDL name.

If you get a clash on the IDL name, this doesn't really make your package
non-functional - for instance, it won't affect binary packages at all as
long as you only use one of them in all applications.

However, if you get a clash on the OAFIDD, you're totally screwed.

> >         We are discussing a namespace; the filenames are clearly a
> > namespace, consequently they should be treated with the same regard for
> > non-conflict as anything else. The logical extent of Maciej's argument is
> > that these should be huge random numbers [ which is at least more logical
> > than 'just some name I made up' which is what we currently have ].   
> 
> I disagree. There are two main reasons filenames are different than
> implementation ID strings.
> 
> 1) A conflict in filenames can be detected at install time, since the
>    filesystem already enforces pathname uniqueness. A conflict in IIDs
>    may not be detected until much later when the system mysteriously
>    malfunctions.
> 
> 2) It's possible for a packager or installer to rename a file or
>    install it in a different prefix to resolve conflicts without
>    adversely affecting anything. However, changing an IID in a package
>    will break all external code that depends on the IID. Thus,
>    filename conflicts can be resolved at the packaging/install phase,
>    but IID conflicts cannot.
> 
> For these two reasons, IIDs must have much stricter uniqueness
> requirements than filenames.

Agreed.
 
> >         OAFIID:GNOME_Vertigo_InstanceFactory:[optional IID]
> >         OAFIID:GNOME_Evolution_Calendar_InstanceFactory:[optional IID]
> >         OAFIID:GNOME_Nautilus_HardwareView_InstanceFactory:[optional IID]
> 
> I am happy to recommend this as well, however, I'm not going to
> declare the UUID portion optional. It will remain a non-optional part
> of the recommendation. Again, I do nothing to enforce IID conformance
> to the recommendation, although I'd hope all core GNOME apps would
> conform.
> 
> You posting the same arguments over and over is not going to change
> anyone's mind. I realize you dislike the UUIDs but we can't all have
> things exactly the way we want.

Well, my opinion about this is in 
http://mail.gnome.org/archives/gnome-components-list/2000-November/msg00179.html
....

-- 
Martin Baulig
martin gnome org (private)
baulig suse de (work)




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]