Hi All,
Since the completion of Stage 2, I have been making several tweaks and
improvements before getting on with the rest of Stage 3. Most of these are
minor but noticeable to any visitor of the repository.
Things like this:
- take into consideration of possible modified-date collision in the alternate
versions list. Actually, this should never happen during normal usage. FDRepo
will reject such packages when there is an attempt to add them. However, there
is no such prohibition if a package is simply dropped by hand into the
repository. If/when someone who is managing a repository does something silly
like that, FDRepo will make do the best it can by assigning it a alternate
modified date for management purposes. That alternate date is not written into
the package itself or shown on the web pages.
- some minor CSS improvements mostly for small screens like cellphones. I think
it looks fairly good now on my phone.
- package that do not include a version number a question mark is displayed.
There are a few really old packages that do not include the version number for
some reason.
- Improved sorting of alternate versions and the list of packages in a group.
- some other stuff
The new version of FDRepo verifies the modified-date field in packages. If it
is missing or wrong, it will automatically fix it. The modified date is the
last time the package was modified.
Obviously, FDrepo does not do anything like that for the Entered-Date field.
It has been well known for a long time that the usage of the Entered-date field
in LSM files has been very inconsistent. Sometimes, that data was when the
version was released. Sometimes, it was when it was when the very first time it
added to a repository. Sometimes, it was when the package had any sort of
update. Sometimes, it was when a previous version was added. Sometimes. I have
know idea to what it was referring. It was a mess and just about useless.
While working on that stuff, I realized there was a fairly simple and “easy”
way to fix all those bad Entered-Date fields. So, I spent a little while and
threw together a script to take care of them. This is not built-in or part of
the new version of FDRepo. I am not sure if I want to have it do this or to
provide it as a configuration option.
Basically, the script went through all the packages reading the timestamps of
the files. It excluded the metadata, help, nls and any embedded zip files. The
other files like executable, data, possible sources, etc were used to find the
most recent file in the zip archive. That time was assumed to be “entered-date”
and the LSM was updated accordingly. This basically made the entered-date the
same as the last time the programs were compiled. To me, this seems much more
useful than the random values stored in those packages. However, I am not sure
if this will be permanent or if I will revert to the previous copy of the
packages.
While “correcting” the entered-date, I did notice a few more “broken” packages.
Those “broken” packages were not updated and simply skipped. Primarily, they
were broken for two reasons. First, some contain “illegal” characters which
would be non-english characters in the English metadata. That is not actually
important. It is most likely someone’s name. Second, is actually a more serious
issue. A few old packages contain files in the root directory of the package.
That is a no-no. It will frequently cause file name collisions when there is an
attempt to install a package. The RBE automatically discards such files for
this and a few other reasons. FDVCS can also create “packages” and does this
and several other things to minimize the possibility of install collisions.
At some point, I may fix those package issues. But, FDRepo does not have a
problem with them and they are all older versions. So, it is not a priority.
Also thanks to Berki, both French and Turkish translations for FDrepo are up to
date.
Please note: Not all packages nor all versions of packages have metadata
translations. When a package or a field in the metadata does not have a
translation for the selected language, FDRepo falls back on the English version.
All of these improvements are visible on my server at https://fd.lod.bz/repos
<https://fd.lod.bz/repos>
:-)
Jerome
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel