jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1221621?usp=email )
Change subject: doc: Update documentation in several files like ROADMAP.rst and
AUTHORS.rst
......................................................................
doc: Update documentation in several files like ROADMAP.rst and AUTHORS.rst
Additional changes:
- force parameter of User.is_partial_blocked(), User.get_block_info()
and APISite.is_partial_blocked() is keyword only.
- update references
Change-Id: Id52809291bde159a3952f4db78a175460a5ba772
---
M AUTHORS.rst
M README.rst
M ROADMAP.rst
M docs/compatibility.rst
M pywikibot/page/_user.py
M pywikibot/site/_apisite.py
M scripts/CHANGELOG.rst
7 files changed, 87 insertions(+), 38 deletions(-)
Approvals:
jenkins-bot: Verified
Xqt: Looks good to me, approved
diff --git a/AUTHORS.rst b/AUTHORS.rst
index d4a6221..04188ba 100644
--- a/AUTHORS.rst
+++ b/AUTHORS.rst
@@ -76,14 +76,17 @@
David Wood
David-Sarah Hopwood
dennisroczek
+ DerIch27
Denny Vrandecic
- DMaggot
Didicodes
+ Dikkulah
Diwanshu Mittal
+ DMaggot
Dmytro Dziuma
Dr03ramos
Draco flavus
DrTrigon
+ Dumbledore
Dvorapa
E
@@ -227,6 +230,7 @@
mjbmr
mloc-gci
Mohamed Magdy
+ MonAx the Developer
Mpaa
murfel
MuhammadShuaib
@@ -321,6 +325,7 @@
Tacsipacsi
+ Tbodt
Tejashxv
Tgr
TheRogueMule
@@ -360,6 +365,7 @@
Warddr
+ WASP-Outis
Wieland Hoffmann
Wikihermit
Wikipedian
diff --git a/README.rst b/README.rst
index d251928..a2ac3c8 100644
--- a/README.rst
+++ b/README.rst
@@ -148,17 +148,6 @@
See https://github.com/wikimedia/pywikibot/blob/stable/HISTORY.rst
-Current Development
-===================
-
-The following features are available in the development version and will be
-included in the next release:
-
-* Add ``is_partial_blocked()`` method to ``User`` and ``APISite`` classes to
detect partial blocks
-* Add ``get_block_info()`` method to ``User`` class to retrieve detailed block
information including block ID, reason, expiry, and restrictions
-
-See `T412613 <https://phabricator.wikimedia.org/T412613>`_ for details.
-
Contributing
============
diff --git a/ROADMAP.rst b/ROADMAP.rst
index 2fbbe04..0905cf3 100644
--- a/ROADMAP.rst
+++ b/ROADMAP.rst
@@ -3,6 +3,16 @@
**Improvements**
+* Add :meth:`User.is_partial_blocked()<pywikibot.User.is_partial_blocked>` and
methods
+
:meth:`APISite.is_partial_blocked()<pywikibot.site._apisite.APISite.is_partial_blocked>`
to detect
+ partial blocks (:phab:`T412613`)
+* Add :meth:`get_block_info()<pywikibot.User.get_block_info>` method to
:class:`pywikibot.User`
+ class to retrieve detailed block information including block ID, reason,
expiry, and restrictions
+ (:phab:`T412613`)
+* Java based GraalPy is supported but Pillow cannot be used (:phab:`T412739`)
+* Free threading Python is supported with some restrictions
+ (:phab:`T408131`, :phab:`T412605`, :phab:`T412624`)
+* i18n updates
* Provide a security policy with Pywikibot (:phab:`T410753`)
* Show a friendly install message with :mod:`pwb<pywikibot.scripts.wrapper>`
wrapper
when mandatory packages are missing (:phab:`T409662`)
diff --git a/docs/compatibility.rst b/docs/compatibility.rst
index 46231db..96c788a 100644
--- a/docs/compatibility.rst
+++ b/docs/compatibility.rst
@@ -10,23 +10,35 @@
Released Pywikibot versions support all actively maintained Python and
MediaWiki
versions at the time of release:
-================= ===================== ==== =================
================
-Pywikibot version Python version PyPy MediaWiki version 1st Release
Date
-================= ===================== ==== =================
================
-11.0+ 3.9–3.15 ✅ 1.31–1.45 2025
-10.0–10.7 3.8–3.14 ✅ 1.31–1.44 2025-03-01
-9.0–9.6.3 3.7–3.13 ✅ 1.27–1.42 2024-03-08
-8.0–8.6 3.6.1–3.12 ✅ 1.27–1.41 2023-01-21
-7.0–7.7.3 3.5.3–3.11 ✅ 1.23–1.39 2022-02-26
-6.0–6.6.5 3.5–3.10 ❌ 1.23–1.37 2021-03-16
-5.0–5.6 3.5–3.10 ❌ 1.19–1.36 2020-10-19
-4.0–4.3 3.5–3.9 ❌ 1.14–1.36 2020-08-04
-3.0.20190301+ 2.7.4–2.7.18, 3.4–3.8 ❌ 1.14–1.33 2019-03-01
-3.0.20180403+ 2.7.2–2.7.18, 3.4–3.8 ❌ 1.14–1.31 2018-04-03
-3.0.20170403+ 2.6–2.7.18, 3.3–3.8 ❌ 1.14–1.29 2017-04-04
-2.0 2.7, 3.3–3.5 ❌ 1.14–1.25 2015-05-25
-1.0 2.5–2.7 ❌ 1.2–1.24 2003–2016
-================= ===================== ==== =================
================
+================= ===================== ====== ==== =======
================= ================
+Pywikibot version Python version No GIL PyPy GraalPy MediaWiki
version 1st Release Date
+================= ===================== ====== ==== =======
================= ================
+11.0+ 3.9–3.15 ⚠️ ✅ ❓ 1.31–1.46
2026
+10.0–10.7.4 3.8–3.14 ❓ ✅ ❌ 1.31–1.44
2025-03-01
+9.0–9.6.3 3.7–3.13 ❓ ✅ ❌ 1.27–1.42
2024-03-08
+8.0–8.6 3.6.1–3.12 ❌ ✅ ❌ 1.27–1.41
2023-01-21
+7.0–7.7.3 3.5.3–3.11 ❌ ✅ ❌ 1.23–1.39
2022-02-26
+6.0–6.6.5 3.5–3.10 ❌ ❌ ❌ 1.23–1.37
2021-03-16
+5.0–5.6 3.5–3.10 ❌ ❌ ❌ 1.19–1.36
2020-10-19
+4.0–4.3 3.5–3.9 ❌ ❌ ❌ 1.14–1.36
2020-08-04
+3.0.20190301+ 2.7.4–2.7.18, 3.4–3.8 ❌ ❌ ❌ 1.14–1.33
2019-03-01
+3.0.20180403+ 2.7.2–2.7.18, 3.4–3.8 ❌ ❌ ❌ 1.14–1.31
2018-04-03
+3.0.20170403+ 2.6–2.7.18, 3.3–3.8 ❌ ❌ ❌ 1.14–1.29
2017-04-04
+2.0 2.7, 3.3–3.5 ❌ ❌ ❌ 1.14–1.25
2015-05-25
+1.0 2.5–2.7 ❌ ❌ ❌ 1.2–1.24
2003–2016
+================= ===================== ====== ==== =======
================= ================
+
+.. admonition:: Version status legend
+
+ **No GIL** – Free-Threading Python build (CPython 3.13+);
+ runs without the Global Interpreter Lock (GIL), allowing true
multithreading (:pep:`703`).
+
+ | ❌ **not available** – functionality does not exist for this version
+ | ❓ **not tested** – has not been verified yet
+ | ⚠️ **unstable** – active development, breaking changes possible
+ | 🧪 **beta** – feature complete, testing phase
+ | ✅ **stable** – production ready
+ | 🛡️ **resilient** – long-term proven, robust operation
.. note::
All versions listed refer to the **stable releases**. Early releases before
diff --git a/pywikibot/page/_user.py b/pywikibot/page/_user.py
index 7753850..e4c0388 100644
--- a/pywikibot/page/_user.py
+++ b/pywikibot/page/_user.py
@@ -150,6 +150,10 @@
def is_blocked(self, force: bool = False) -> bool:
"""Determine whether the user is currently blocked.
+ .. seealso::
+ - :meth:`is_partial_blocked`
+ - :meth:`get_block_info`
+
.. versionchanged:: 7.0
renamed from :meth:`isBlocked` method
.. versionchanged:: 9.0
@@ -159,25 +163,39 @@
"""
return 'blockedby' in self.getprops(force)
- def is_partial_blocked(self, force: bool = False) -> bool:
+ def is_partial_blocked(self, *, force: bool = False) -> bool:
"""Return True if this user is partially blocked, False otherwise.
+ .. seealso::
+ - :meth:`get_block_info`
+ - :meth:`APISite.is_partial_blocked()
+ <pywikibot.site._apisite.APISite.is_partial_blocked>`
+
.. versionadded:: 11.0
+
+ :param force: if True, forces reloading the data from API
"""
return 'blockpartial' in self.getprops(force)
- def get_block_info(self, force: bool = False) -> dict[str, Any] | None:
+ def get_block_info(self, *, force: bool = False) -> dict[str, Any] | None:
"""Return a dictionary of block information if the user is blocked.
Returns None if the user is not blocked.
The returned dictionary contains keys like:
+
- blockid
- blockedby
- blockreason
- blockexpiry
- blockpartial (only if partial block)
+ .. seealso::
+ - :meth:`getprops`
+ - :meth:`is_partial_blocked`
+
.. versionadded:: 11.0
+
+ :param force: if True, forces reloading the data from API
"""
props = self.getprops(force)
if 'blockid' not in props:
diff --git a/pywikibot/site/_apisite.py b/pywikibot/site/_apisite.py
index 91837f5..bbe13aa 100644
--- a/pywikibot/site/_apisite.py
+++ b/pywikibot/site/_apisite.py
@@ -766,12 +766,15 @@
"""Return True when logged in user is blocked.
To check whether a user can perform an action,
- the method has_right should be used.
+ the method :meth:`has_right` should be used.
- .. seealso:: :api:`Userinfo`
+ .. seealso::
+ - :meth:`is_partial_blocked`
+ - :meth:`User.is_blocked()<pywikibot.User.is_blocked>`
+ - :attr:`userinfo`
- .. versionadded:: 7.0
- The `force` parameter
+ .. versionchanged:: 7.0
+ The *force* parameter was added.
:param force: Whether the cache should be discarded.
"""
@@ -779,10 +782,18 @@
del self.userinfo
return 'blockinfo' in self.userinfo
- def is_partial_blocked(self, force: bool = False) -> bool:
+ def is_partial_blocked(self, *, force: bool = False) -> bool:
"""Return True if the logged-in user is partially blocked.
+ .. seealso::
+ - :meth:`is_blocked`
+ - :meth:`User.is_partial_blocked()
+ <pywikibot.User.is_partial_blocked>`
+ - :attr:`userinfo`
+
.. versionadded:: 11.0
+
+ :param force: if True, forces reloading the data from API
"""
if force:
del self.userinfo
@@ -793,6 +804,10 @@
force: bool = False) -> bool:
"""Return True when given user is locked globally.
+ .. seealso::
+ - :meth:`is_blocked`
+ - :attr:`globaluserinfo`
+
.. versionadded:: 7.0
:param user: The user name or user ID. Defaults to the current
diff --git a/scripts/CHANGELOG.rst b/scripts/CHANGELOG.rst
index b075f2c..b296544 100644
--- a/scripts/CHANGELOG.rst
+++ b/scripts/CHANGELOG.rst
@@ -4,6 +4,7 @@
11.0.0
------
+* L10N and i18n updates
* ``create_isbn_edition`` script was removed from scripts package
(:phab:`T398140`)
archivebot
@@ -11,8 +12,6 @@
* respect the ``-namespace`` option with ``-page`` option (:phab:`T409016`)
-
-
10.7.0
------
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1221621?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Id52809291bde159a3952f4db78a175460a5ba772
Gerrit-Change-Number: 1221621
Gerrit-PatchSet: 4
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]