jayvdb created this task.
jayvdb claimed this task.
jayvdb added a subscriber: jayvdb.
jayvdb added projects: pywikibot-core, Pywikibot-Cosmetic-changes.
jayvdb changed Security from none to none.
TASK DESCRIPTION
Page save uses the cosmetic changes script, which is not packaged in the core library. In T76320, the hard dependency was broken, but the functionality is missing if the script is not packaged as part of the library.
cosmetic_changes.py needs to be split, moving the toolkit into pywikibot, and leaving a script in the scripts package for adhoc usage of the toolkit (or maybe integrated as an option in touch.py?).
TASK DETAIL
https://phabricator.wikimedia.org/T76324
REPLY HANDLER ACTIONS
Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>.
To: jayvdb
Cc: pywikipedia-bugs, jayvdb
jayvdb created this task.
jayvdb added subscribers: Ladsgroup, pywikipedia-bugs, jayvdb, Aklapper.
jayvdb added projects: pywikibot-core, Pywikibot-Cosmetic-changes.
TASK DESCRIPTION
On T85240 I suggested python-stdnum as it is a Debian package.
https://packages.debian.org/search?keywords=python-stdnum
As far as I know, it is the only python package with ISBN functionality that is a debian package.
fwiw, I dont see any Fedora package which provides python isbn functionality, but that is less important as Wikimedia machines use a debian base.
TASK DETAIL
https://phabricator.wikimedia.org/T89996
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, jayvdb, Ladsgroup, pywikipedia-bugs
jayvdb created this task.
jayvdb added a subscriber: jayvdb.
jayvdb added a project: pywikibot-core.
jayvdb changed Security from none to none.
TASK DESCRIPTION
I can reliably produce a badtoken by running the entire test suite on ar.wp or test.wd on this change:
https://gerrit.wikimedia.org/r/178453
TASK DETAIL
https://phabricator.wikimedia.org/T77965
REPLY HANDLER ACTIONS
Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>.
To: jayvdb
Cc: Aklapper, jayvdb, pywikipedia-bugs
jayvdb created this task.
jayvdb added a subscriber: jayvdb.
jayvdb added projects: pywikibot-core, Possible-Tech-Projects.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
There are many features of MediaWiki that are not directly supported in #pywikibot-core.
A list of deployed extensions can be found at [[https://www.mediawiki.org/wiki/Category:Extensions_used_on_Wikimedia|Catego… used on Wikimedia]]. Some of these extensions provide functionality which is mission-critical to some of the projects, and is not yet able to be accessed via Pywikibot.
Flow is new technology which is only deployed in trials, but it will be such a large critical component that Pywikibot needs to commence implementation of it now in order to be ready for when it is deployed. See T67119
Other examples:
* T85656 : Abuse Filter
* Liquid Threads
* T57081 : Flagged Revs
* Proofread Page
* Translate
* PageTriage
* Checkuser
* ULS
* Parsoid
However, before implementing functionality in pywikibot, it is important to gather requirements for how it might be used in an automated manner, if available via pywikibot.
Project goals:
* Talk to the project communities to identify which tasks they could automate if pywikibot supported additional components/extensions.
* Add support for large MediaWiki component/extension.
* Write a bot script which automates a task for a Wikimedia community.
* Skills: Python
* Suggested micro-task:
* Possible mentors: @jayvdb
TASK DETAIL
https://phabricator.wikimedia.org/T89067
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: pywikipedia-bugs, jayvdb, Aklapper, Qgil
XZise created this task.
XZise added a subscriber: XZise.
XZise added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
In Python 3.4.2 when `pywikibot.input(…, password=True)` is done, it doesn't output the text immediately but only after the user has entered something:
```
>>> import pywikibot
>>> x = pywikibot.input('AA', password=True)
AA >>> x
'Ha'
>>>
```
In comparison Python 2.7.8:
```
>>> import pywikibot
>>> x =pywikibot.input('AA', password=True)
AA
>>> x
u'Ha'
```
TASK DETAIL
https://phabricator.wikimedia.org/T90338
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: XZise
Cc: pywikipedia-bugs, Aklapper, XZise, jayvdb
jayvdb created this task.
jayvdb added subscribers: pywikipedia-bugs, jayvdb, XZise.
jayvdb added a project: pywikibot-core.
TASK DESCRIPTION
generating family files can create break site.interwiki .
```
$ python pwb.py generate_family_file.py http://wiki-commons.genealogy.net/Hauptseite genealogy2
Generating family file from http://wiki-commons.genealogy.net/Hauptseite
==================================
api url: http://wiki-commons.genealogy.net/w/api.php
MediaWiki version: 1.14.1
==================================
Determining other languages...de en nl
There are 4 languages available.
Do you want to generate interwiki links? This might take a long time. ([y]es/[N]o/[e]dit)y
Loading wikis...
* de... 'utf8' codec can't decode byte 0xfc in position 26478: invalid start byte
* en... downloaded
* nl... downloaded
* de... in cache
Writing pywikibot/families/genealogy2_family.py...
pywikibot/families/genealogy2_family.py already exists. Overwrite? (y/n)y
[jayvdb@localhost new]$ cat pywikibot/families/genealogy2_family.py
# -*- coding: utf-8 -*-
"""
This family file was auto-generated by $Id: 2dd21e4aaf7a93cf8749be841552881a80684b52 $
Configuration parameters:
url = http://wiki-commons.genealogy.net/Hauptseite
name = genealogy2
Please do not commit this to the Git repository!
"""
from pywikibot import family
class Family(family.Family):
def __init__(self):
family.Family.__init__(self)
self.name = 'genealogy2'
self.langs = {
'nl': 'wiki-nl.genealogy.net',
'de': 'wiki-commons.genealogy.net',
'en': 'wiki-en.genealogy.net',
}
def scriptpath(self, code):
return {
'nl': '/w',
'de': '/w',
'en': '/w',
}[code]
def version(self, code):
return {
'nl': u'1.14.1',
'de': u'1.14.1',
'en': u'1.14.1',
}[code]
```
That family has three different hostnames, and the keys are different to the subdomain. That might be relevant.
When I alter APISite._cache_interwikimap to re-raise the Error it catches, we see
```
$ python -m unittest tests.link_tests.TestFullyQualifiedNoLangFamilyImplicitLinkParser.test_fully_qualified_NS1_family
max_retries reduced from 25 to 1 for tests
======================================================================
ERROR: test_fully_qualified_NS1_family (tests.link_tests.TestFullyQualifiedNoLangFamilyImplicitLinkParser)
Test 'wikidata:testwiki:Talk:Q6' on enwp is namespace 1.
----------------------------------------------------------------------
Traceback (most recent call last):
File "tests/link_tests.py", line 813, in test_fully_qualified_NS1_family
link.parse()
File "pywikibot/page.py", line 4189, in parse
newsite = self._site.interwiki(prefix)
File "pywikibot/site.py", line 692, in interwiki
self._cache_interwikimap()
File "pywikibot/site.py", line 676, in _cache_interwikimap
site = (pywikibot.Site(url=iw['url']), 'local' in iw)
File "pywikibot/__init__.py", line 564, in Site
code = family.from_url(url)
File "pywikibot/family.py", line 1076, in from_url
'\$1'.format(self._get_path_regex()), url)
File "pywikibot/family.py", line 1058, in _get_path_regex
'family.'.format(self.name))
Error: Pywikibot is unable to generate an automatic path regex for the family genealogy2. It is recommended to overwrite "_get_path_regex" in that family.
----------------------------------------------------------------------
Ran 1 test in 2.645s
FAILED (errors=1)
```
TASK DETAIL
https://phabricator.wikimedia.org/T85658
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, jayvdb, XZise, pywikipedia-bugs
Dalba created this task.
Dalba added a subscriber: Dalba.
Dalba added projects: Pywikibot-login.py, pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
Python 3.4.3 win32 while using IDLE and an up-to-date version of pywikibot:
```
>>> import pywikibot as pwb
>>> pwb.Site('fa').login()
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
pwb.Site('fa').login()
File "E:\core\pywikibot\site.py", line 1676, in login
if loginMan.login(retry=True):
File "E:\core\pywikibot\login.py", line 232, in login
password=True)
File "E:\core\pywikibot\bot.py", line 540, in input
data = ui.input(question, password)
File "E:\core\pywikibot\userinterfaces\terminal_interface_base.py", line 212, in input
self.output(question + ' ')
File "E:\core\pywikibot\userinterfaces\terminal_interface_base.py", line 191, in output
self._print(text, targetStream)
File "E:\core\pywikibot\userinterfaces\terminal_interface_base.py", line 132, in _print
self.printColorized(text, targetStream)
File "E:\core\pywikibot\userinterfaces\terminal_interface_win32.py", line 91, in printColorized
targetStream.write(text.encode(self.encoding, 'replace'))
File "C:\Python34\lib\idlelib\PyShell.py", line 1344, in write
raise TypeError('must be str, not ' + type(s).__name__)
TypeError: must be str, not bytes
>>>
```
TASK DETAIL
https://phabricator.wikimedia.org/T91921
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: Dalba
Cc: pywikipedia-bugs, Aklapper, Dalba, jayvdb
Xqt created this task.
Xqt added a subscriber: Xqt.
Xqt added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
```
markiere: [[Spezial:Beiträge/84.128.23.123|84.128.23.123]]
ERROR: Detected MediaWiki API exception Exception; raising
something unexpeted happend, trace:
Traceback (most recent call last):
File ".\scripts\vm-auto-erl-neu.py", line 540, in run
else:
File ".\scripts\vm-auto-erl-neu.py", line 221, in markBlockedusers
vmPage.put(newRawText,
File "C:\pwb\core\pywikibot\page.py", line 1124, in put
**kwargs)
File "C:\pwb\core\pywikibot\tools\__init__.py", line 953, in wrapper
del __kw[old_arg]
File "C:\pwb\core\pywikibot\page.py", line 1043, in save
**kwargs)
File "C:\pwb\core\pywikibot\page.py", line 1054, in _save
watch=watchval, bot=botflag, **kwargs)
File "C:\pwb\core\pywikibot\site.py", line 1059, in callee
return fn(self, *args, **kwargs)
File "C:\pwb\core\pywikibot\site.py", line 4142, in editpage
result = req.submit()
File "C:\pwb\core\pywikibot\data\api.py", line 1679, in submit
raise APIMWException(class_name, info, **result["error"])
TypeError: __init__() got multiple values for keyword argument 'info'```
TASK DETAIL
https://phabricator.wikimedia.org/T97112
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: Xqt
Cc: pywikipedia-bugs, Xqt, Aklapper, jayvdb
jayvdb created this task.
jayvdb added a subscriber: jayvdb.
jayvdb added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
Calling the `help` module on older generators results in a pywikibot `APIError` exception.
http://wiki.linuxgaming.de/api.php?action=help&modules=help&format=json (MW 1.14)
```
{"error":{"code":"help","info":"","*":"\n \n \n ******************************************************************\n ** **\n ** This is an auto-generated MediaWiki API documentation page **\n ** ...."}}
```
```
>>> s = pywikibot.Site('de', 'lgde')
>>> r = pywikibot.data.api.Request(site=s, action='help', modules='help')
>>> r.submit()
Found 1 lgde:de processes running, including this one.
API Error: query=
{'action': [u'help'],
'format': ['json'],
'maxlag': ['5'],
'modules': [u'help']}
response=....
'}}
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "pywikibot/data/api.py", line 1361, in submit
raise APIError(code, info, **result["error"])
APIError: help:
```
Note that the `modules` param for module `help` doesnt work in MW 1.14
TASK DETAIL
https://phabricator.wikimedia.org/T93192
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: pywikipedia-bugs, jayvdb, Aklapper
Xqt created this task.
Xqt added a subscriber: Xqt.
Xqt added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
```
Waiting for 60 seconds,
Loading the allowed licenses...
>> No additional settings found! <<
Skipping the files uploaded less than 60 seconds ago.. 05 Apr 2015 13:23:40 (UTC
)
Traceback (most recent call last):
File "C:\pwb\core\pwb.py", line 213, in <module>
run_python_file(filename, argv, argvu, file_package)
File "C:\pwb\core\pwb.py", line 82, in run_python_file
main_mod.__dict__)
File ".\scripts\checkimages.py", line 1845, in <module>
main()
File ".\scripts\checkimages.py", line 1832, in main
if Bot.checkStep():
File ".\scripts\checkimages.py", line 1608, in checkStep
(license_found, hiddenTemplateFound) = self.smartDetection()
File ".\scripts\checkimages.py", line 1351, in smartDetection
self.templateInList()
File ".\scripts\checkimages.py", line 1293, in templateInList
template.pageAPInfo()
AttributeError: 'Page' object has no attribute 'pageAPInfo'
<type 'exceptions.AttributeError'>
CRITICAL: Waiting for 1 network thread(s) to finish. Press ctrl-c to abort
```
TASK DETAIL
https://phabricator.wikimedia.org/T95306
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: Xqt
Cc: pywikipedia-bugs, Xqt, Aklapper, jayvdb
Wesalius created this task.
Wesalius added a subscriber: Wesalius.
Wesalius added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
From my amateur point of view it is not solely category.py problem, but it occured when trying to move categories on cs.wiki (Category:Bohové zvířat -> Category:Zvířecí božstva), so I am filing it this way.
I am using pywikibot on windows, version.py gives
```
Pywikibot: [https] r-pywikibot-core.git (7a04e89, g5417, 2015/04/27, 23:23:37, n
/a)
Release version: 2.0b3
httplib2 version: 0.9
cacerts: core\externals\httplib2\python2\httplib2
\cacerts.txt
certificate test: not ok
Python: 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)]
unicode test: ok
```
Traceback:
```
ERROR: Traceback (most recent call last):
File "core\pywikibot\data\api.py", line 1555, in
submit
body=body, headers=headers)
File "core\pywikibot\tools\__init__.py", line 949
, in wrapper
return obj(*__args, **__kw)
File "core\pywikibot\comms\http.py", line 269, in
request
r = fetch(baseuri, method, body, headers, **kwargs)
File "core\pywikibot\comms\http.py", line 371, in
fetch
error_handling_callback(request)
File "core\pywikibot\comms\http.py", line 287, in
error_handling_callback
raise request.data
SSLError: [Errno 185090050] _ssl.c:344: error:0B084002:x509 certificate routines
:X509_load_cert_crl_file:system lib
```
TASK DETAIL
https://phabricator.wikimedia.org/T97392
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: Wesalius
Cc: pywikipedia-bugs, Wesalius, Aklapper, jayvdb
Linkrachit created this task.
Linkrachit claimed this task.
Linkrachit added subscribers: Nv1620, Sampadmedda, Aklapper, kruti_c, Diptichavan, Liuxinyu970226, akashagarwal, NiharikaKohli, Dumindux, JeanFred, Legoktm, Evanontario, Sitic, Qgil, Ricordisamoa, Halfak, Krinkle, jayvdb, valhallasw, MZMcBride, csteipp, pywikipedia-bugs, Linkrachit.
Linkrachit added projects: Outreachy-Round-10, Google-Summer-of-Code-2015, Pywikibot-network, Pywikibot-login.py, Possible-Tech-Projects, Google-Code-in-2014, pywikibot-core, Pywikibot-General.
TASK DESCRIPTION
Pywikibot is a collection of tools that automate work on MediaWiki sites. if in case if someone use a stolen password is someone logging in and changing e-mail address, password etc. to lock the user out of their own account.
With OAuth, only a token needs to be stored in the shared environment, and in worst case scenario someone can make a few edits with the token, but it can be revoked at any time, and the malicious user can not lock out the rightful user.
This task is to implement OAuth support in pywikibot. To complete this task, a unit test should be added to the test suite to perform a login and logout using OAuth with assertions that verify APISite._userinfo is correct, and a second unit test should login, edit a userpage, and confirm the edit was performed using the OAuth-authenticated account. The unit test should be configured to run on travis-ci when the secret key is available in the Travis configuration, and skipped when it isnt, able to use the key and secret that you receive when you complete the registration, as long as you approve it using the same mediawiki.org user that you used to register the application.
TASK DETAIL
https://phabricator.wikimedia.org/T95603
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: Linkrachit
Cc: Linkrachit, csteipp, MZMcBride, valhallasw, jayvdb, Krinkle, Halfak, Ricordisamoa, Qgil, Sitic, Evanontario, Legoktm, JeanFred, Dumindux, NiharikaKohli, akashagarwal, Liuxinyu970226, Diptichavan, kruti_c, Aklapper, Sampadmedda, Nv1620, Imaculate, pywikipedia-bugs
rahulch95 created this task.
rahulch95 claimed this task.
rahulch95 added subscribers: Nv1620, Sampadmedda, Aklapper, kruti_c, Diptichavan, Liuxinyu970226, akashagarwal, NiharikaKohli, Dumindux, JeanFred, Legoktm, Evanontario, Sitic, Qgil, Ricordisamoa, Halfak, Krinkle, jayvdb, valhallasw, MZMcBride, csteipp, pywikipedia-bugs, rahulch95.
rahulch95 added projects: Google-Summer-of-Code-2015, Pywikibot-network, Pywikibot-login.py, pywikibot-core, Pywikibot-General.
TASK DESCRIPTION
I would love to work to Implement Support for OAuth! This will be my first time doing Google Summer of Code.
TASK DETAIL
https://phabricator.wikimedia.org/T93848
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: rahulch95
Cc: rahulch95, csteipp, MZMcBride, valhallasw, jayvdb, Krinkle, Halfak, Ricordisamoa, Qgil, Sitic, Evanontario, Legoktm, JeanFred, Dumindux, NiharikaKohli, akashagarwal, Liuxinyu970226, Diptichavan, kruti_c, Aklapper, Sampadmedda, Nv1620, Imaculate, pywikipedia-bugs
NiharikaKohli closed this task as a duplicate of T74065: Pywikibot: Implement support for OAuth.
TASK DETAIL
https://phabricator.wikimedia.org/T93060
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: Sampadmedda, NiharikaKohli
Cc: Legoktm, Halfak, jayvdb, XZise, NiharikaKohli, MZMcBride, Ricordisamoa, Qgil, Aklapper, Sampadmedda, Imaculate, pywikipedia-bugs
putnik created this task.
putnik added a subscriber: putnik.
putnik added a project: pywikibot-compat.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
Russian Wikipedia has no translations for namespaces 446, 447 and 2600.
{F117205}
TASK DETAIL
https://phabricator.wikimedia.org/T96514
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: putnik
Cc: pywikipedia-bugs, putnik, Aklapper, Anshoe
jayvdb created this task.
jayvdb added a subscriber: jayvdb.
jayvdb added a project: pywikibot-core.
Restricted Application added subscribers: Aklapper, pywikipedia-bugs.
TASK DESCRIPTION
linktrail was only exposed in the API in v1.21. We need to determine how we'll support pre v1.21.
TASK DETAIL
https://phabricator.wikimedia.org/T97630
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: pywikipedia-bugs, jayvdb, Aklapper