Background
Currently, the Pywikibot framework is split in two branches: 'core' (formerly 'rewrite') has full API support and is much more up-to-date with new MediaWiki features, while 'compat' (formerly 'trunk') is old and largely based on screen-scraping.
'compat' currently gets no new features, and bug fixes are implemented very slowly. This means compat effectively is deprecated already, but this has not been explicitly pointed out to the community.
Problem
There are several issues with this status quo:
- Documentation is partially still compat-based, confusing newcomers
- Even worse, some newcomers start with compat because of that
- Bug fixes are expected when compat breaks
All in all, many wasted man hours that could have been used more effectively.
Goal
Defining the long-term deprecation status for compat, and communicating this to the community.
What do we mean with 'deprecation'?
- Code:
- Do 'we' no longer provide new features?
- No general bug fixes, but still some important ones (e.g. api access broken)?
- No bug fixes at all?
- Do we still accept 3rd party bug fixes?
- Documentation:
- Just mark documentation as deprecated?
- Move it?
- Remove it?
- Warning for users they should migrate?
Deprecation does *not* mean:
- Actively preventing compat users from using compat
Blocking issues
Before we can deprecate compat, these issues *must* be solved:
- ...
Open questions
- How do we define deprecation? (see above)
- What to do with the large set of scripts that have not been migrated.
- How to communicate the deprecation to the communities
- Do we need more extensive 'porting to core' documentation?
Blocking issues
There is a list of potentially useful things at T57880: Functionality existing in compat but missing from core (tracking), but none of them look blocking to me.
- The open questions above
- Providing good getting started documentation {T???}
Timeframe
- April 2014: original RFC
- May 2015: moved to Phabricator
- mid May 2015: Hackathon discussions on the following subjects:
- ...
Related discussions
- original RFC discussion (apr-sep 2014)
- "Deprecation of compat" mailing list thread (june 2014)