forked from wikimedia/pywikibot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
487 lines (432 loc) · 20.6 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
Release 3.0.20170713 (13 July 2017)
====================================
Bugfixes (core)
---------------
d9d1d02 Manage temporary readonly error (T154011)
e533425 Unbreak wbGeoShape and WbTabularData (T166362)
3834b6c Clean up issue with _WbDataPage (T166362)
b8a9c2f Re-enable xml for WikiStats with py2 (T165830)
461ffb0 Solve httplib.IncompleteRead exception in eventstreams (T168535)
c697bfe Only force input_choise if self.always is given (T161483)
5ed60e0 Add colon when replacing category and file weblink (T127745)
df097a6 API Request: set uiprop only when ensuring 'userinfo' in meta (T169202)
39843e8 Fix TestLazyLoginNotExistUsername test for Stewardwiki (T169458)
Improvements (core)
-------------------
8b74d51 Introduce the new WbUnknown data type for Wikibase (T165961)
461f747 djvu.py: add replace_page() and delete_page()
ee30a68 Build GeoShape and TabularData from shared base class
9aee0e0 Remove non-breaking spaces when tidying up a link (T130818)
aef1b24 Replace private mylang variables with mycode in generate_user_files.py
a5e5a3f FilePage: remove deprecated use of fileUrl
e236757 Make socket_timeout recalculation reusable (T166539)
b022690 FilePage.download(): add revision parameter to download arbitrary revision (T166939)
737b037 Make pywikibot.Error more precise (T166982)
a0a6d16 Implement pywikibot support for adding thanks to normal revisions (T135409)
ed61b0f Implement EventStreams (T158943)
f5f4a60 Add -titleregexnot page filter
eddcc95 Add exception for -namepace option (T167580)
4ea8d38 InteractiveReplace: Allow no replacements by default
633e69a Encode default globe in family file
3321a40 Add on to pywikibot support for thanking normal revisions (T135409)
98783dc Add log entry code for thanks log (T135413)
4be9336 Create superclass for log entries with user targets
f6b0c7b Use relative reference to class attribute
d12f60b Allow pywikibot to authenticate against a private wiki (T153903)
42443c5 Make WbRepresentations hashable (T167827)
Updates (core)
--------------
a6337f7 Update linktails
173becb Update languages_by_size
be75fb9 Update cross_allowed (global bot wikis group)
1fbcccb Add atjwiki to wikipedia family file (T168049)
beacf44 remove closed sites from languages_by_size list
447b045 Update category_redirect_templates for wikipedia and commons Family
7945c4a Update logevent type parameter list
bc01242 Disable cleanUpSectionHeaders on jbo.wiktionary (T168399)
54b4f90 Add kbpwiki to wikipedia family file (T169216)
0679efa Remove anarchopedia family out of the framework (T167534)
Bugfixes (scripts)
------------------
1d8c1bd Fix ResourceWarning in wikimedia_sites.py (T166459)
02dbe77 imagecopy.py: page.site is not callable (T167062)
38d645d weblinkchecker.py: Use https for web.archive.org (T167463)
ea80e13 redirect.py: Adjust _treat_counter (T167254)
f24c082 misspelling.py: Fix comparing template name (T125328)
74f6c36 piper.py: fix bytes/str handling in python3 (T157215)
fa830d6 Enable exceptions from fixes file (T142324)
e229a13 revertbot.py: Don't loop over user contribs (T168666)
e8bdc42 Use correct iterator method in interwikidata.py (T168575)
86f623f Don't fail TestProofreadPageValidSite.test_url_image (T169542)
54d24f7 Fix some of the invalid escape sequences (T164575)
f577676 redirect.py: Handle PageSaveRelatedError exception (T169859)
48431e7 illustratewikidata: rename page_image key in page_image_free (T169447)
2684ffc checkimages: format string must be concatenated first (T170087)
7f2b925 interwikidata: Fix interwiki conflict detection (T168575)
f645523 Fix ResourceWarning in wikimedia_sites.py with python3 (T166459)
Improvements (scripts)
----------------------
3343a7f Port followlive.py to core (T66854)
92f66ff replace.py: allow to edit modified text
4ee7fda Catch KeyboardInterrupt and finally print execution time in checkimages.py
e79af64 proofreadpage.py: raise TypeError, not ValueError
7c5a078 category.py/tidy: Show page title at the bottom of the output (T166468)
8355c22 checkimages: Use site.namespaces.FILE.custom_name instead of "File:"
e2c92e2 weblinkchecker.py: Sorting of carriage returns (T166934)
a78df27 Stopme is done at exit time by default
a360417 standardize spamremove.py
cd5665a replace.py: do not overwrite exceptions given via CLI (T142324)
280f0a9 Create items with interwiki using interwikidata.py (T168575)
c0a879b proofreadpage.py: add support for OCR feature (T159655)
b11c819 Improve maintenance/wikimedia_sites.py
152d798 proofreadpage.py: Fallback to "html.parser" if "lxml" is not available (T169515)
09f56d4 Add support for item without link to harvest_template (T64014)
c586403 Port ndashredir to core (T66875)
5435fd7 Show different message if the page doesn't have an item (T168575)
847cbb3 Merge items in interwikidata.py
Updates (scripts)
-----------------
b4ab2e1 noreferences.py: update frwiki dict
c8d1e66 Remove panoramiopicker.py (Panoramio is no longer available)
b0f0d92 Use bs4 for imageharvest, not BeautifulSoup v3 (T115428)
4c10c17 blockpageschecker: Add serbian localisation (T167599)
b398a93 Update Czech (cs) summary in standardize_interwiki.py (T168798)
2b882ed Update Czech category name in category_redirect.py
f088a04 Remove anarchopedia from wikimedia_sites.py maintenance script (T167534)
9b3a556 Add a French localisation for clean_sandbox
77f42c0 Add Hindi (hi) summary in standardize_interwiki.py
Release 3.0.20170521 (21 Mai 2017)
====================================
Bugfixes (core)
---------------
a79ce64 Increase the default socket_timeout to 75 seconds (T163635)
4c8acd8 use repr() of exceptions to prevent UnicodeDecodeErrors (T120222)
3727717 Handle offset mismatches during chunked upload (T156402)
f4cc5ee Correct _wbtypes equality comparison (T160282)
46dff29 Re-enable getFileVersionHistoryTable() method (T162528)
6f7ecb4 Replaced the word 'async' with 'asynchronous' due to py3.7 (T106230)
ac1d5ed Raise ImportError if no editor is available (T163632)
489741f templatesWithParams: cache and standardise params (T113892)
31eb055 getInternetArchiveURL: Retry http.fetch if there is a ConnectionError (T164208)
6d8c9e7 Remove wikidataquery from pywikibot (T162585)
Improvements (core)
-------------------
345e677 Introduce user_add_claim and allow asynchronous ItemPage.addClaim (T87493)
eade449 Enable private edit summary in specialbots (T162527)
d74cb73 Make a decorator for asynchronous methods
4159a9c Provide options by a separate handler class
ccdb71a Show a warning when a LogEntry type is not known (T135505)
aa74f5c Add Wikibase Client extension requirement to APISite.unconnectedpages()
894d5b9 Update content after editing entity
ae0d3f9 Make WbTime from Timestamp and vice versa (T131624)
feaffb7 Add support for geo-shape Wikibase data type (T161726)
f8fe0a1 Add async parameter to ItemPage.editEntity (T86074)
a7c02e5 Make sparql use Site to access sparql endpoint and entity_url (T159956)
df7ab6d timestripper: search wikilinks to reduce false matches
e54e584 Set Coordinate globe via item
4e824eb use extract_templates_and_params_regex_simple for template validation
e26c9b4 Add _items for WbMonolingualText
c67e069 Allow date-versioned pypi releases from setup.py (T152907)
2b6509f Provide site to WbTime via WbTime.fromWikibase
165adc2 Provide preloading via GeneratorFactory.getCombinedGenerator() (T135331)
f4af75f Accept QuitKeyboardInterrupt in specialbots.Uploadbot (T163970)
a0c75d8 Remove unnecessary description change message when uploading a file (T163108)
b5b721b Add 'OptionHandler' to bot.__all__ tuple
6a56c23 Use FilePage.upload inside UploadRobot
b6962ab Add support for tabular-data Wikibase data type (T163981)
2d9e841 Get thumburl information in FilePage() (T137011)
Updates (core)
--------------
ec33c23 Update languages_by_size in family files
d9b9913 wikisource_family.py: Add "pa" to languages_by_size
6f159c5 Config2: limit the number of retries to 15 (T165898)
Bugfixes (scripts)
------------------
3c3bfb8 Remove comments when parsing template in harvest_template.py (T127691)
b6e5218 Assign object to Tkdialog if it cannot be imported from gui module (T164163)
a8aa142 weblinkchecker.py: Retry get_memento_info if there is a ConnectionError (T164365)
09142d7 newitem.py: Test if the page actually exists (T86491)
Improvements (scripts)
----------------------
d6dad3c use OptionHandler class for PageFromFileReader
b6567e4 Do not use the deprecated pywikibot.setAction() in makecat.py
88bbb2a Update newitem.py to use WikidataBot.user_edit_entity (T87493)
07a4344 Improve redirect.py (T153883)
da9021c use OptionHandler for redirect.RedirectGenerator
bc59339 Enable a new option sdtemplate for customized sd template (T140624)
cfaf7c0 Rewrite claimit.py (T69284)
2487c75 Replace private mylang variables with mycode in misspelling.py
37a4846 Use input_yn in states_redirect.py
0809a60 Use bot classes for table2wiki.py
Updates (scripts)
-----------------
f819ef4 Update cfr templates for cswiki
Release 3.0.20170403 (03 April 2017)
====================================
This is a major release from master branch.
All previous 2.0 branches and tags are deprecated.
The following list shows main changes since 01 January 2017.
Bugfixes (core)
---------------
0319439 Use default summary when summary value does not contain a string (T160823)
303ff08 Enable specialbots.py for PY3 (T161457)
2ddf680 Change tw(n)translate from Site.code to Site.lang dependency (T140624)
dcf7567 Do not use the `imp` module in Python 3 (T158640)
6773f74 Make sure the order of parameters does not change (T161291)
3ff30a0 Use pywikibot.tools.Counter instead of collections.Counter (T160620)
b6919aa Introduce a new site method page_from_repository()
83ef386 Add pagelist tag for replaceExcept (T151940)
c9ade07 logging in python3 when deprecated_args decorator is used (T159077)
2275630 Avoid ResourceWarning using subprocess in python 3.6 (T159646)
52ef3d6 load_pages_from_pageids: do not fail on empty string (T153592)
3f848be Add missing not-equal comparison for wbtypes (T158848)
fb7f54b textlib.getCategoryLinks catch invalid category title exceptions (T154309)
28d6dae Fix html2unicode (T130925)
29111b5 Ignore first letter case on 'first-letter' sites, obey it otherwise (T130917)
7d79fa4 textlib.py: Limit catastrophic backtracking in FILE_LINK_REGEX (T148959)
12987c8 FilePage.get_file_history(): Check for len(self._file_revisions) (T155740)
83c2f9a Fix for positional_arg behavior of GeneratorFactory (T155227)
ca11a4c Fix broken LDAP based login (T90149)
Improvements (core)
-------------------
3e738c0 Simplify User class
b72e977 Renamed isImage and isCategory
ff5ad7a Add -property option to pagegenerators.py
951d079 Add a new site method pages_with_property
5c8d8be Allow retrieval of unit as ItemPage for WbQuantity (T143594)
576d7db return result of userPut with put_current method
7167cb8 Provide a new generator which yields a subclass of Page
a61d3ab Implement FilePage.download()
d107d58 make general function to compute file sha
4e175bc Support adding units to WbQuantity through ItemPage or entity url (T143594)
37c45bf Make PropertyPage.get() return a dictionary
aa74f5c Add Wikibase Client extension requirement to APISite.unconnectedpages()
829637f Make Wikibase Property provide labels data
851daa3 APISite.data_repository(): handle warning with re.match() (T156596)
0c33e28 GeneratorFactory: make getCategory respect self.site (T155687)
b8e7f41 Fix and improve default regexes
Updates (core)
--------------
cbe7ac1 Update linktrails
12e12a1 Update languages_by_size
288e16a Updating global bot wikis, closed wikis and deleted wikis
5927889 Deprecate site.has_transcluded_data
222b919 update plural rules
3f5d316 Correcting month names in date.py for Euskara (eu)
9db741d Linktrail for Euskara
90439d3 Define template documentation subpages for es.wikibooks
72a8a99 self.doc_subpages for Meta-Wiki
575bfe1 Updating Wikibooks projects which allows global bots
c206a52 Updated list of closed projects
161a35d Add 'Bilde' as a namespace alias for file namespace of nn Wikipedia (T154947)
Bugfixes (scripts)
------------------
187a23c archivebot.py:Fix string checking in all functions (T157742)
44d8566 nowcommons.py: ncTemplates is a method not a property (T144690)
8a8d7c2 checkimages.py: Prevent TypeError when self.num_notify is None (T157728)
12117d2 archivebot.py: fix Unicode encodings in py2 and py3 (T157045)
0c6e5ce solve_disambiguation.py: Don't ask for an option when -always is given (T147159)
Improvements (scripts)
----------------------
cc612db Use page_from_repository for category_redirect.py
d2e244e Rewrite setParameters() in checkimages.py
dc23e28 use page_from_repository() method for fixing_redirects.py
6e589e3 Add L10N from wikibase for clean_sandbox.py
e9f4203 remove misleading -force and -showdiff in wikisourcetext.py
fac1801 djvu.py: added features and refactored
545b6cb proofreadpage.py: purge is skipped if redlinks are present
90ae09b checkimages.py: Add a paramater of maximum number of notifications per user per check (T157728)
cf1136d Subclass PiperBot from AutomaticTWSummaryBot
897e2d2 Add [q] option for edit choice in add_text.py (T155045)
Updates (scripts)
-----------------
1bb6204 Localize clean_sandbox.py to Czech
850c7c6 Localize clean_sandbox.py to Wikidata
d17efd6 Localize blockpageschecker.py to Czech
13a731b Add French template in category.py
77d2e87 category_redirect: Add Romanian tracking category
New scripts
-----------
9b1ff42 Add surnames_redirects.py script
03daaa6 Port table2wiki to core (T115104)
TODO: add high level description of changes from pywikibot 2.0rc5
Release 2.0rc5 (17 August 2016)
===============================
Bugfixes
--------
de630d8 Establish the project's name, once and for all
fcca7ad setup.py: Add Python 3.4 and 3.5 to pypi classifiers
e8be996 Remove item count output in page generators
de75825 Test Python 3.5 on Travis
f39c8fa Fix docstring capitalization in return types and behavior
0e9ecb0 Stop reading 'cookieprefix' upon login
65d62ae Fix travis global environment variables
18a1574 Fix notifications building from JSON
c846932 pywikibot: Store ImportError in imported variable
99d789b Use default tox pip install
eba4d95 Add asteroids that are being used as locations
2b95d9e [bugfix] Fix test_translateMagicWords test
76fa79c Fix ID for Rhea
4491ed7 [bugfix] pass User page object to NotEmailableError
ea0c637 Allow pywikibot to run on Windows 10 as well
8864e34 listpages.py: Fix help docstring
697b4f6 pwb.py: make sure pywikibot is correctly loaded before starting a script
c66c463 win32_unicode: force truetype font in console
16d8ff0 Update main copyright year to 2016
ae0ddfc [L10N] add "sco" to redirected category pages
10dc22a date.py: fix Hungarian day-month title
b47b202 Prevent <references.../> from being destroyed
c414088 [FIX] Page: Use repr-like if it can't be encoded
ab2b9cc pywikibot.WARNING -> pywikibot.logging.WARNING
c4f950c Do not expand text by default in getCategoryLinks
435f6c4 Typo fix
2c5944f Prevent AttributeError for when filename is None
02872b7 Split TestUserContribs between user and non-user
Release 2.0rc4 (15 December 2015)
=================================
Bugfixes (core)
---------------
e42891d Remove dependency on pYsearch
ecc39ce Require google>=0.7
fa431a4 Desupport Python 2.6 for Pywikibot 2.0 release branch
b1f6f39 config: Don't crash on later get_base_dir calls
0925c51 cosmetic_changes: merge similar regexes
4bf39f3 Update revId upon claim change
ea11626 Update WOW hostnames
2a5a4fa Mark site.patrol() as a user write action
4f568c5 Fix interwikiFormat support for Link
7cb6962 Changes are wrongly detected in the last langlink
5c5d658 getLanguageLinks: Skip own site
7ee8ec2 fix intersection of sets of namespaces
94b0c43 Import textlib.TimeStripper
584d7c1 Change "PyWikiBot" to "Pywikibot"
1f8d57e Stop crashing item loads due to support of units
c19dcfa __all__ items must be bytes on Python 2
e6aa6ca Omit includeredirects parameter for allpages generator
687ec9e Performance fix for sites using interwiki_putfirst option
28db3d2 Fix Persian Wikipedia configuration
3944f5e rollback: Use Revision instance properly
860af34 Add must_be to DataSite write actions
f8af8e0 Remove unneeded site argument to AutoFamily
bf49a7d Fix ComparableMixin
1d36e45 Deprecate ParamInfo.query_modules_with_limits
e83c6a3 be-x-old is renamed to be-tarask
19bbe7e Correctly identify qualifier from JSON
Bugfixes (scripts)
------------------
4e78c27 checkimages: Expect NoPage exception
fbb6266 interwiki: Optimize/remove unneeded calls to Page.isEmpty()
428420a interwiki: Allow Subject.originPage to be updated
a305d7b interwiki: Allow titletranslate.translate page to be None
a786226 interwiki: '-ignore' parameter throws exception
ab7abf5 interwiki: check for category before emptiness
0db2e87 interwiki: do not automatically log in
47ed5d5 nowcommons: Query at most one users
Release 2.0rc3 (30 September 2015)
==================================
Bugfixes (core)
---------------
6406479 New Wikipedia site: azb
b503a1e Indexes in str.format
d1854f5 MediaWikiVersion: Accept new wmf style
718e4a1 i18n: always follow master
Release 2.0rc2 (9 July 2015)
============================
Bugfixes (scripts)
------------------
8d76870 replace.py: remove line endings when reading from file
bfe60b0 archive.py: Don't ignore "DoNotArchiveUntil" timestamps
0df272b redirect.py: Don't break the script for hidden pages.
9806a7a upload.py: allow all formats allowed by commons
1dcbfd8, 0592360 replace.py: fix handling of addedCat
Small new features (scripts)
----------------------------
a47c0d7 clean_sandbox.py: Use pagegenerators
288b9ce replace.py: Inform about missing user-fixes.py
Configuration updates
---------------------
d721249 Changing the sandbox content template on Fa WP
Family file updates
-------------------
21d6a8d Remove broken wikis from battlestarwiki family
3c2bcc5 Adding euskara and sicilianu languages to Vikidia family
a3a3d53 WOW Wiki subdomains hr, ro & sr deleted
474c786 Add new Wikipedia languages gom and lrc
Bugfixes (core)
---------------
c7a12b5 fix UnicodeDecodeError on api error
ea00683 pwb.py now correctly passes arguments to generate_family_file
3685a24 Fix Win32 config.editor detection
3333251 open_compressed: Wrap BZ2File in Py 2.7
f2309e5 Skip RC entries without a title
ab9fdfb PatrolEntry: Allow cur/prev id to be str
156bdd0, 0b6fda9 Updates to i18n changes
49fc65f Do not use ParamInfo during action=login
796f273 Let pydot encode labels for Python 3 support
3488a4b Fix and test interwiki_graph
ba6b671 textlib: replaceExcept: Handle empty matches
Release 2.0rc1 (25 May 2015)
============================
Major improvements include:
- Sphinx documentation at https://doc.wikimedia.org/pywikibot/
- Initial ProofreadPage support
- Improved diff output, with context
- Batch upload support
- Compat scripts patrol.py and piper.py ported
- isbn.py now supports wikibase
- RecentChanges stream (rcstream) support
Pywikibot API improvements include:
- Python 3 ipaddress support
- Support for Python warning system
- Wikibase:
- added ISBN support
- added redirect support
- Optionally uses external library for improved isbn validation
- Automatically generating user files when -user, -family and -lang are
provided to a script
- Page.content_model added
- Page.contributors() and Page.revision_count() added
- APISite.compare added
- Site.undelete and Page.undelete added
- DataSite.search_entities support
- FilePage.latest_file_info and FilePage.oldest_file_info added
- ItemClaimFilterPageGenerator added
Low-level changes include:
- Switch to JSON-based i18n data format
- Unicode_literals used throughout source code
- API badtoken recovery
- API client side prevention of anonymous writes
- API layer support for boolean and date datatypes
- Improved MediaWiki version detection
Other changes include:
- Python 3 support fixes
- Daemonize support
- Allow pywikibot to load without i18n data
- Appveyor CI Win32 builds
Release 2.0b3 (30 November 2014)
================================
Major changes include:
- Library initialisation no longer connects to servers
- generate_user_files.py rewritten
- API Version 1.14 support
- Support HTTPS for families with certificate validation errors (Python 2 only)
- API HTTP(S) GET support
- API simplified continuation support
- Upload uses a fake filename to avoid various MIME encoding issues
- API class ParamInfo inspects API modules
- Several QueryGenerator efficiency improvements
- Improved 'same title' detection and 'get redirect target' handling
- Site interwiki methods now use dynamic Interwikimap
- Site methods return Namespace object instead of int
- New WikiStats module
- New PatchManager module used for showDiff
- New pagegenerators, including -intersect support
- Several category_redirect.py improvements
- archivebot: support more languages
- reflinks: changed from GPL to MIT
Release 2.0b2 (7 October 2014)
==============================
TODO: add list of major changes
Release 2.0b1 (26 August 2013)
================================
TODO: add high level description of changes from pywikibot 1.0