jayvdb added a comment.
@Tgr, yes, that is about it.
pywikibot currently has two main site concepts: 'BaseSite' and subclass 'APISite'. We have a FilePage class, and instances may be local or shared files. As an absolute minimum, we need to be able to:
1. determine if a FilePage is for a local or non-local file. and 2. get the URL of the original file, or at least fetch the original file
However it would be much nicer if we could obtain an APISite object for the site which hosts the actual file and a FilePage. e.g. if the FilePage for a shared file needs to be edited, it likely needs to be edited on the shared host, not on the local site.
So ideally we have a method like FilePage(enwp, 'File:Logo.png').get_shared() that returns a FilePage(commons, 'File:Logo.png'). And we need to do the same for any foreign repo.
See https://phabricator.wikimedia.org/T74847 - fileIsShared only works with Wikimedia and Wikitravel shared repository and https://gerrit.wikimedia.org/r/#/c/181416/ - Get shared FilePage and make checks semi-dynamic
TASK DETAIL https://phabricator.wikimedia.org/T85153
REPLY HANDLER ACTIONS Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>.
EMAIL PREFERENCES https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: jayvdb Cc: Aklapper, XZise, Anomie, jayvdb, Tgr, Legoktm, pywikipedia-bugs