jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/586152 )
Change subject: [doc] Restructure HISTORY.rst ......................................................................
[doc] Restructure HISTORY.rst
+ Add new ROADMAP.rst and move current release and decomissions into it from HISTORY.rst - Include new ROADMAP.rst into README.rst - Remove HISTORY.rst from README.rst, leave only a link here - Merge library stuff from ChangeLog to HISTORY.rst - Delete scripts stuff from ChangeLog (last updated in 2017) and delete ChangeLog
Change-Id: I04cd96d83ee186aa4d78d788d219ef396280d2f4 --- M CONTENT.rst D ChangeLog M HISTORY.rst M README.rst A ROADMAP.rst 5 files changed, 347 insertions(+), 520 deletions(-)
Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
diff --git a/CONTENT.rst b/CONTENT.rst index 3bc22d8..89771af 100644 --- a/CONTENT.rst +++ b/CONTENT.rst @@ -4,8 +4,6 @@ +----------------------------------------------------------------------------------+ | README and config files: | +===========================+======================================================+ - | ChangeLog | Log file to keep track of major changes versionwise | - +---------------------------+------------------------------------------------------+ | CODE_OF_CONDUCT.md | Code of conduct reference | +---------------------------+------------------------------------------------------+ | CONTENT.rst | This Content description file | @@ -33,6 +31,8 @@ +---------------------------+------------------------------------------------------+ | requirements.txt | General PIP requirements file | +---------------------------+------------------------------------------------------+ + | ROADMAP.rst | pypi version roadmap file | + +---------------------------+------------------------------------------------------+ | setup.py | Installer script for Pywikibot framework | +---------------------------+------------------------------------------------------+ | tox.ini | Tests config file | diff --git a/ChangeLog b/ChangeLog deleted file mode 100644 index f236a60..0000000 --- a/ChangeLog +++ /dev/null @@ -1,487 +0,0 @@ -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 diff --git a/HISTORY.rst b/HISTORY.rst index 397b33d..226606a 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -1,25 +1,6 @@ Release history ===============
-Current decommissions ---------------------- - -* 3.0.20200405: Site and Page methods deprecated for 10 years or longer will be removed -* 3.0.20200405: Usage of SkipPageError with BaseBot will be removed -* 3.0.20200326: Functions dealing with stars list may be removed -* 3.0.20200306: Support of MediaWiki releases below 1.19 will be dropped (T245350) -* 3.0.20200306: tools.ip will be dropped in favour of tools.is_IP (T243171) -* 3.0.20200306: tools.ip_regexp will be removed in next release -* 3.0.20200111: Support for Python 3.4 will be dropped (T239542) -* 3.0.20190722: test_family will be removed (T228375, T228300) -* 3.0.20190722: Deprecation warning: support for Python 2 will be dropped in 4/2020 (T213287) - -Current release ---------------- - -* Bugfixes and improvements -* Localisation updates - 3.0.20200405 ------------
@@ -394,49 +375,260 @@ 3.0.20170713 ------------
-* Implement server side event client EventStreams -* Add thanks log support -* new ndashredir.py script to create hyphenated redirects -* new followlive.py script to flag new articles -* new WbUnknown data type for Wikibase * Deprecate APISite.newfiles() -* new pagegenerators filter option -titleregexnot * Inverse of pagegenerators -namespace option * Bugfixes and improvements * Localisation updates -* Remove panoramiopicker.py script -* Remove anarchopedia family out of the framework * CODE_OF_CONDUCT included
+Bugfixes +~~~~~~~~ +* Manage temporary readonly error (T154011) +* Unbreak wbGeoShape and WbTabularData (T166362) +* Clean up issue with _WbDataPage (T166362) +* Re-enable xml for WikiStats with py2 (T165830) +* Solve httplib.IncompleteRead exception in eventstreams (T168535) +* Only force input_choise if self.always is given (T161483) +* Add colon when replacing category and file weblink (T127745) +* API Request: set uiprop only when ensuring 'userinfo' in meta (T169202) +* Fix TestLazyLoginNotExistUsername test for Stewardwiki (T169458) + +Improvements +~~~~~~~~~~~~ +* Introduce the new WbUnknown data type for Wikibase (T165961) +* djvu.py: add replace_page() and delete_page() +* Build GeoShape and TabularData from shared base class +* Remove non-breaking spaces when tidying up a link (T130818) +* Replace private mylang variables with mycode in generate_user_files.py +* FilePage: remove deprecated use of fileUrl +* Make socket_timeout recalculation reusable (T166539) +* FilePage.download(): add revision parameter to download arbitrary revision (T166939) +* Make pywikibot.Error more precise (T166982) +* Implement pywikibot support for adding thanks to normal revisions (T135409) +* Implement server side event client EventStreams (T158943) +* new pagegenerators filter option -titleregexnot +* Add exception for -namepace option (T167580) +* InteractiveReplace: Allow no replacements by default +* Encode default globe in family file +* Add on to pywikibot support for thanking normal revisions (T135409) +* Add log entry code for thanks log (T135413) +* Create superclass for log entries with user targets +* Use relative reference to class attribute +* Allow pywikibot to authenticate against a private wiki (T153903) +* Make WbRepresentations hashable (T167827) + +Updates +~~~~~~~ +* Update linktails +* Update languages_by_size +* Update cross_allowed (global bot wikis group) +* Add atjwiki to wikipedia family file (T168049) +* remove closed sites from languages_by_size list +* Update category_redirect_templates for wikipedia and commons Family +* Update logevent type parameter list +* Disable cleanUpSectionHeaders on jbo.wiktionary (T168399) +* Add kbpwiki to wikipedia family file (T169216) +* Remove anarchopedia family out of the framework (T167534) + 3.0.20170521 ------------
-* Replaced the word 'async' with 'asynchronous' due to python 3.7 * Support for Python 2.6 but higher releases are strictly recommended * Bugfixes and improvements * Localisation updates
+Bugfixes +~~~~~~~~ +* Increase the default socket_timeout to 75 seconds (T163635) +* use repr() of exceptions to prevent UnicodeDecodeErrors (T120222) +* Handle offset mismatches during chunked upload (T156402) +* Correct _wbtypes equality comparison (T160282) +* Re-enable getFileVersionHistoryTable() method (T162528) +* Replaced the word 'async' with 'asynchronous' due to py3.7 (T106230) +* Raise ImportError if no editor is available (T163632) +* templatesWithParams: cache and standardise params (T113892) +* getInternetArchiveURL: Retry http.fetch if there is a ConnectionError (T164208) +* Remove wikidataquery from pywikibot (T162585) + +Improvements +~~~~~~~~~~~~ +* Introduce user_add_claim and allow asynchronous ItemPage.addClaim (T87493) +* Enable private edit summary in specialbots (T162527) +* Make a decorator for asynchronous methods +* Provide options by a separate handler class +* Show a warning when a LogEntry type is not known (T135505) +* Add Wikibase Client extension requirement to APISite.unconnectedpages() +* Update content after editing entity +* Make WbTime from Timestamp and vice versa (T131624) +* Add support for geo-shape Wikibase data type (T161726) +* Add async parameter to ItemPage.editEntity (T86074) +* Make sparql use Site to access sparql endpoint and entity_url (T159956) +* timestripper: search wikilinks to reduce false matches +* Set Coordinate globe via item +* use extract_templates_and_params_regex_simple for template validation +* Add _items for WbMonolingualText +* Allow date-versioned pypi releases from setup.py (T152907) +* Provide site to WbTime via WbTime.fromWikibase +* Provide preloading via GeneratorFactory.getCombinedGenerator() (T135331) +* Accept QuitKeyboardInterrupt in specialbots.Uploadbot (T163970) +* Remove unnecessary description change message when uploading a file (T163108) +* Add 'OptionHandler' to bot.__all__ tuple +* Use FilePage.upload inside UploadRobot +* Add support for tabular-data Wikibase data type (T163981) +* Get thumburl information in FilePage() (T137011) + +Updates +~~~~~~~ +* Update languages_by_size in family files +* wikisource_family.py: Add "pa" to languages_by_size +* Config2: limit the number of retries to 15 (T165898) + 3.0.20170403 ------------
* First major release from master branch * requests package is mandatory -* Deprecate previous 2.0 branches +* Deprecate previous 2.0 branches and tags + +Bugfixes +~~~~~~~~ +* Use default summary when summary value does not contain a string (T160823) +* Enable specialbots.py for PY3 (T161457) +* Change tw(n)translate from Site.code to Site.lang dependency (T140624) +* Do not use the "imp" module in Python 3 (T158640) +* Make sure the order of parameters does not change (T161291) +* Use pywikibot.tools.Counter instead of collections.Counter (T160620) +* Introduce a new site method page_from_repository() +* Add pagelist tag for replaceExcept (T151940) +* logging in python3 when deprecated_args decorator is used (T159077) +* Avoid ResourceWarning using subprocess in python 3.6 (T159646) +* load_pages_from_pageids: do not fail on empty string (T153592) +* Add missing not-equal comparison for wbtypes (T158848) +* textlib.getCategoryLinks catch invalid category title exceptions (T154309) +* Fix html2unicode (T130925) +* Ignore first letter case on 'first-letter' sites, obey it otherwise (T130917) +* textlib.py: Limit catastrophic backtracking in FILE_LINK_REGEX (T148959) +* FilePage.get_file_history(): Check for len(self._file_revisions) (T155740) +* Fix for positional_arg behavior of GeneratorFactory (T155227) +* Fix broken LDAP based login (T90149) + +Improvements +~~~~~~~~~~~~ +* Simplify User class +* Renamed isImage and isCategory +* Add -property option to pagegenerators.py +* Add a new site method pages_with_property +* Allow retrieval of unit as ItemPage for WbQuantity (T143594) +* return result of userPut with put_current method +* Provide a new generator which yields a subclass of Page +* Implement FilePage.download() +* make general function to compute file sha +* Support adding units to WbQuantity through ItemPage or entity url (T143594) +* Make PropertyPage.get() return a dictionary +* Add Wikibase Client extension requirement to APISite.unconnectedpages() +* Make Wikibase Property provide labels data +* APISite.data_repository(): handle warning with re.match() (T156596) +* GeneratorFactory: make getCategory respect self.site (T155687) +* Fix and improve default regexes + +Updates +~~~~~~~ +* Update linktrails +* Update languages_by_size +* Updating global bot wikis, closed wikis and deleted wikis +* Deprecate site.has_transcluded_data +* update plural rules +* Correcting month names in date.py for Euskara (eu) +* Linktrail for Euskara +* Define template documentation subpages for es.wikibooks +* self.doc_subpages for Meta-Wiki +* Updating Wikibooks projects which allows global bots +* Updated list of closed projects +* Add 'Bilde' as a namespace alias for file namespace of nn Wikipedia (T154947)
2.0rc5 ------
+*17 August 2016* + * Last stable 2.0 branch
+Bugfixes +~~~~~~~~ +* Establish the project's name, once and for all +* setup.py: Add Python 3.4 and 3.5 to pypi classifiers +* Remove item count output in page generators +* Test Python 3.5 on Travis +* Fix docstring capitalization in return types and behavior +* Stop reading 'cookieprefix' upon login +* Fix travis global environment variables +* Fix notifications building from JSON +* pywikibot: Store ImportError in imported variable +* Use default tox pip install +* Add asteroids that are being used as locations +* [bugfix] Fix test_translateMagicWords test +* Fix ID for Rhea +* [bugfix] pass User page object to NotEmailableError +* Allow pywikibot to run on Windows 10 as well +* listpages.py: Fix help docstring +* pwb.py: make sure pywikibot is correctly loaded before starting a script +* win32_unicode: force truetype font in console +* Update main copyright year to 2016 +* [L10N] add "sco" to redirected category pages +* date.py: fix Hungarian day-month title +* Prevent <references.../> from being destroyed +* [FIX] Page: Use repr-like if it can't be encoded +* pywikibot.WARNING -> pywikibot.logging.WARNING +* Do not expand text by default in getCategoryLinks +* Typo fix +* Prevent AttributeError for when filename is None +* Split TestUserContribs between user and non-user + 2.0rc4 ------
+*15 December 2015* + +Bugfixes +~~~~~~~~ * Remove dependency on pYsearch +* Require google>=0.7 * Desupport Python 2.6 for Pywikibot 2.0 release branch +* config: Don't crash on later get_base_dir calls +* cosmetic_changes: merge similar regexes +* Update revId upon claim change +* Update WOW hostnames +* Mark site.patrol() as a user write action +* Fix interwikiFormat support for Link +* Changes are wrongly detected in the last langlink +* getLanguageLinks: Skip own site +* fix intersection of sets of namespaces +* Import textlib.TimeStripper +* Change "PyWikiBot" to "Pywikibot" +* Stop crashing item loads due to support of units +* __all__ items must be bytes on Python 2 +* Omit includeredirects parameter for allpages generator +* Performance fix for sites using interwiki_putfirst option +* Fix Persian Wikipedia configuration +* rollback: Use Revision instance properly +* Add must_be to DataSite write actions +* Remove unneeded site argument to AutoFamily +* Fix ComparableMixin +* Deprecate ParamInfo.query_modules_with_limits +* be-x-old is renamed to be-tarask +* Correctly identify qualifier from JSON
2.0rc3 ------
+*30 September 2015* + +Bugfixes +~~~~~~~~ +* New Wikipedia site: azb +* Indexes in str.format +* MediaWikiVersion: Accept new wmf style +* i18n: always follow master * Bugfixes * Localisation updates * i18n: always follow master branch @@ -444,6 +636,32 @@ 2.0rc2 ------
+*9 July 2015* + +Configuration updates +~~~~~~~~~~~~~~~~~~~~~ +* Changing the sandbox content template on Fa WP + +Family file updates +~~~~~~~~~~~~~~~~~~~ +* Remove broken wikis from battlestarwiki family +* Adding euskara and sicilianu languages to Vikidia family +* WOW Wiki subdomains hr, ro & sr deleted +* Add new Wikipedia languages gom and lrc + +Bugfixes +~~~~~~~~ +* fix UnicodeDecodeError on api error +* pwb.py now correctly passes arguments to generate_family_file +* Fix Win32 config.editor detection +* open_compressed: Wrap BZ2File in Py 2.7 +* Skip RC entries without a title +* PatrolEntry: Allow cur/prev id to be str +* Updates to i18n changes +* Do not use ParamInfo during action=login +* Let pydot encode labels for Python 3 support +* Fix and test interwiki_graph +* textlib: replaceExcept: Handle empty matches * Bugfixes and improvements * Localisation updates
@@ -451,6 +669,51 @@ 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 * New scripts patrol.py and piper.py ported from old compat branch * isbn.py now supports wikibase * RecentChanges stream (rcstream) support @@ -461,16 +724,42 @@ 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 * Bugfixes and improvements
2.0b2 -----
+*7 October 2014* + * Bugfixes and improvements
2.0b1 -----
+*26 August 2013* + * First stable release branch
1.0 rv 2007-06-19 @@ -489,4 +778,3 @@ * scripts and libraries for standardizing content * tools for making minor modifications * script making interwiki links - diff --git a/README.rst b/README.rst index 97dcf97..73b73e6 100644 --- a/README.rst +++ b/README.rst @@ -76,7 +76,15 @@
* `7za`: To extract 7z files
-.. include:: HISTORY.rst +Roadmap +------- + +.. include:: ROADMAP.rst + +Release history +--------------- + +See https://github.com/wikimedia/pywikibot/blob/stable/HISTORY.rst
Contributing ------------ diff --git a/ROADMAP.rst b/ROADMAP.rst new file mode 100644 index 0000000..10b3c08 --- /dev/null +++ b/ROADMAP.rst @@ -0,0 +1,18 @@ +Current release +~~~~~~~~~~~~~~~ + +* Bugfixes and improvements +* Localisation updates + +Future releases +~~~~~~~~~~~~~~~ + +* 3.0.20200405: Site and Page methods deprecated for 10 years or longer will be removed +* 3.0.20200405: Usage of SkipPageError with BaseBot will be removed +* 3.0.20200326: Functions dealing with stars list may be removed +* 3.0.20200306: Support of MediaWiki releases below 1.19 will be dropped (T245350) +* 3.0.20200306: tools.ip will be dropped in favour of tools.is_IP (T243171) +* 3.0.20200306: tools.ip_regexp will be removed in next release +* 3.0.20200111: Support for Python 3.4 will be dropped (T239542) +* 3.0.20190722: test_family will be removed (T228375, T228300) +* 3.0.20190722: Deprecation warning: support for Python 2 will be dropped in 4/2020 (T213287) \ No newline at end of file
pywikibot-commits@lists.wikimedia.org