Obviously it's nice if PNDs keep working across the different releases of the OS, even if they rely on certain packages or libs. On the other hand, NAND space is limited so it is not feasible to just "keep growing", never removing or replacing components of the OS.
So perhaps we can use this thread to discuss how to make sure that PND packagers know what will be there in the future.
I suggest to flag the components with labels that indicate the certainty that they will stay in .next and future releases. This allows PND packagers to check whether it is likely that the PND will keep working, decide what libraries to use (in case there are several alternatives that can do the job), or even include stuff even though it currently is already there, just to make things future-proof. This is not just about libraries, also things like pre-installed fonts, locations of files, organization of /proc and /sys, etc.
E.g., we could have the following categories:
- green: this will always stay, and even if the upstream version would become backwards-incompatible, we'll keep including the old version for compatibility. For example, things like libc and probably SDL would be in this category.
- yellow: this will stay, but at some point we might upgrade to a backwards-incompatible version and you'll have to rewrite, recompile or otherwise adjust your application.
- orange: this is currently in the release, but it is unlikely that it will remain for a long time; we're seriously considering alternatives. However, the general functionality provided by this component will stay in one way or another.
- red: it is highly unlikely that this component will be in future releases: if we need to make room for new stuff, this is one of the first things that will go.
Would this be a useful thing to do?
So perhaps we can use this thread to discuss how to make sure that PND packagers know what will be there in the future.
I suggest to flag the components with labels that indicate the certainty that they will stay in .next and future releases. This allows PND packagers to check whether it is likely that the PND will keep working, decide what libraries to use (in case there are several alternatives that can do the job), or even include stuff even though it currently is already there, just to make things future-proof. This is not just about libraries, also things like pre-installed fonts, locations of files, organization of /proc and /sys, etc.
E.g., we could have the following categories:
- green: this will always stay, and even if the upstream version would become backwards-incompatible, we'll keep including the old version for compatibility. For example, things like libc and probably SDL would be in this category.
- yellow: this will stay, but at some point we might upgrade to a backwards-incompatible version and you'll have to rewrite, recompile or otherwise adjust your application.
- orange: this is currently in the release, but it is unlikely that it will remain for a long time; we're seriously considering alternatives. However, the general functionality provided by this component will stay in one way or another.
- red: it is highly unlikely that this component will be in future releases: if we need to make room for new stuff, this is one of the first things that will go.
Would this be a useful thing to do?