Here is a proposal for relative priorities of setup TODO items. Opinions welcome.
Max. TODO (ideally for next release): * Don't downgrade if the curr version is <= installed? * Mark versions as prev/curr/test in the GUI when clicking through them. * Remove *empty* directories on uninstalls. (done?) * Correctly overwrite -r--r--r-- files. (done?) * Going back, changing the local cache dir, and going forward again does not correctly reparse inis in the new dir. Reproduction: Choose an incorrect cache dir, go back, correct it. Chooser shows all packages in Misc. * "compress_bz::error called" appears in the log every time a package is installed, even if everything works. * Cancelling during MD5 check just stops the GUI updating until the check completes, and then continues with setup as if Cancel had not been clicked. * Toggling from All Default to All Install takes *way* too long. TODO (longer term): * Chooser scrollbar sometimes lost with odd font sizes. * Make setup.exe available through Add/Remove * Support rpm/deb files for reading the package from. (To allow the maintainers the use of rpm/deb tools to create packages.) * Make a librar(y|ies) for setup and cygcheck to use containing 1) Something to translate POSIX -> native. Currently called "cygpath" in setup, although this is probably a bad choice of name. 2) Something to return the list of installed packages. 3) Something to return the cygwin mount table. Currently, I have implemented a lightweight setmntent and getmntent using the code in **** Can anyone complete the sentence? ---------------------> ^^^^^^^^^^^^^^^^^^ 4) Something to parse a tar file name into package/version or alternatively, return that information from 2) 5) Something to return a list of files associated with a package.