When Michael Peyton Jones attended the Working group meeting on Nov 1 to discuss future GHC support, the question was brought about communicating deprecations to users. Currently the IOG ecosystem (and the broader ecosystem as a whole) does not have a consistent system for communicating deprecations to developers either ahead of time or upon release.
After some high level research at options, I've arrived at the following suggestions
Github releases for deprecations in the CURRENT commit (as MPJ suggested, they can be followed via RSS feeds)
Pre-emptively creating a github issue to disclose the deprecation (and as a resource that can be linked directly from the below options)
keep a section in the readme on upcoming major changes (with a link to the pre-emptive issue)
DEPRECATED Pragmas (in the case of GHC support, this can be combined with CPP)
This would allow developers to be notified of the deprecation when looking through issues, at build time, or when investigating the repo directly, which is MUCH better than nothing, and i think all that could be asked.
I'd like to discuss this a bit more at the next Developer experience meeting, but this seems sound and reasonable to me.
When Michael Peyton Jones attended the Working group meeting on Nov 1 to discuss future GHC support, the question was brought about communicating deprecations to users. Currently the IOG ecosystem (and the broader ecosystem as a whole) does not have a consistent system for communicating deprecations to developers either ahead of time or upon release.
After some high level research at options, I've arrived at the following suggestions
DEPRECATED
Pragmas (in the case of GHC support, this can be combined with CPP)This would allow developers to be notified of the deprecation when looking through issues, at build time, or when investigating the repo directly, which is MUCH better than nothing, and i think all that could be asked.
I'd like to discuss this a bit more at the next Developer experience meeting, but this seems sound and reasonable to me.