[nem-en] Nemerle for VisualStudio redist.

Paul Bludov pbludov at gmail.com
Sat Dec 30 15:31:40 CET 2006


> In which? I guess it is good to leave dlls in install directory for
> development purposes - easier copying of new versions, but why in
> release? Usually in .NET it is much easier to access assembly in GAC
> than one on disk, because in second case you need to specify full path
> to dll or copy it around.

I think GAC problem comes from assembly versions. Currently them looks like
[assembly: System.Reflection.AssemblyVersion("0.9.3.*")]

The '*' means number of seconds after midnight. It just a random number
between 0 and 29, as coded in ncc\hierarchy\CustomAttribute.n, lines 
505-542.
By the way, it should be the number of seconds after midnight, not just 
seconds.

Anyway, it useless since versions of two builds created in different days
will be just different. For example, yesterday build was 0.9.3.24, but today 
build,
which is more recent, is 0.9.3.8. Revisions can step backward? I don't think 
so.

Much better way is to increment the revision number each build or set it to 
the date
of the build in YYMMDD format. I personally prefer second option as it also
gives a clue on the date when the build was performed.

There is two ways to get the version number in right format:
1. An additional pre-build tas which will create version.n with a single 
line of code.
2. More wildcard characters for AssemblyVersionAttribute or a new type
derived from AssemblyVersionAttribute.
So
[assembly: System.Reflection.AssemblyVersion("0.9.3.#")]
becomes 0.9.3.61230 in every assembly built today and 0.9.3.70101
in the day after tomorrow

-Paul. 




More information about the devel-en mailing list