gap-packages/PackageManager

Remove InstallPackageFrom* from documentation

Closed this issue · 2 comments

Since the beginning of the package manager, we've had a single InstallPackage function that takes a package name, archive URL, PackageInfo.g file or VC repo link, and handles it smartly, dispatching to one of the following functions as appropriate:

  • InstallPackageFromName
  • InstallPackageFromInfo
  • InstallPackageFromArchive
  • InstallPackageFromGit
  • InstallPackageFromHg

For some reason we made all 5 of these functions "public", with their own documentation. This seems pointless, since InstallPackage is a simpler and easier entry point that does very little overhead in selecting a function anyway.

Maintaining the 5 InstallPackageFrom* functions as part of the API is becoming a headache, since they all support slightly different sets of arguments and options, and all need to do argument-checking that is likely being done in InstallPackage anyway. Changing them also requires hacks for backwards compatibility, documentation changes and so on.

I suggest we remove these 5 functions from the package documentation now, thereby nudging users away from relying on them. Later on we can remove argument-checking from them, and (perhaps in a 2.0 release) prepend PKGMAN_ to their names to make them truly internal.

Sounds good to me.

Done in 1.6