aplteam / Tatin

Tatin is a package manager for Dyalog APL
MIT License
25 stars 6 forks source link

Introduce deprecated packages #76

Closed aplteam closed 1 year ago

aplteam commented 2 years ago

Every piece of software will eventually become superfluous in one way or another.

When that becomes true for a package, there should be a way to mark it as deprecated since we cannot just delete it if the delete policy is "none" or "beta-only".

Other package management systems allow a flag "deprecated" to be set. For a package to become deprecated a new release needs to be published with that flag set.

The consequences:

  1. By default, ListPackages should filter them out
  2. On the web:
    1. Those packages should be marked
    2. There should be a mechanism to filter them out
  3. When a deprecated package is installed or loaded via a user command a warning should be issued
  4. API functions might refuse to process such packages unless an optional flag is set
DavinChurch commented 2 years ago

Good plan!

aplteam commented 2 years ago

When the deprecated flag is set there should also be an additional field "comment" that allows remarks like "See instead package x.y.z" etc.

aplteam commented 1 year ago

Implemented in 0.80.0