Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-itemadapter for 
openSUSE:Factory checked in at 2026-04-11 22:26:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-itemadapter (Old)
 and      /work/SRC/openSUSE:Factory/.python-itemadapter.new.21863 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-itemadapter"

Sat Apr 11 22:26:32 2026 rev:9 rq:1346060 version:0.13.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-itemadapter/python-itemadapter.changes    
2026-03-30 18:38:14.948489037 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-itemadapter.new.21863/python-itemadapter.changes
 2026-04-11 22:31:45.117587561 +0200
@@ -1,0 +2,13 @@
+Sat Apr 11 11:42:14 UTC 2026 - Dirk Müller <[email protected]>
+
+- add fix-pydantic-tests.patch to fix pydantic tests
+
+-------------------------------------------------------------------
+Tue Apr  7 08:42:36 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 0.13.1:
+  * Fixed `get_json_schema()` to properly format multiline field
+    docstrings using `inspect.cleandoc()`, ensuring consistent
+    indentation and whitespace handling
+
+-------------------------------------------------------------------

Old:
----
  itemadapter-0.13.0.tar.gz

New:
----
  fix-pydantic-tests.patch
  itemadapter-0.13.1.tar.gz

----------(New B)----------
  New:
- add fix-pydantic-tests.patch to fix pydantic tests
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-itemadapter.spec ++++++
--- /var/tmp/diff_new_pack.Mf3xFT/_old  2026-04-11 22:31:45.737612920 +0200
+++ /var/tmp/diff_new_pack.Mf3xFT/_new  2026-04-11 22:31:45.737612920 +0200
@@ -27,12 +27,14 @@
 %endif
 %{?sle15_python_module_pythons}
 Name:           python-itemadapter%{psuffix}
-Version:        0.13.0
+Version:        0.13.1
 Release:        0
 Summary:        Wrapper for data container objects
 License:        BSD-3-Clause
 URL:            https://github.com/scrapy/itemadapter
 Source:         
https://github.com/scrapy/itemadapter/archive/v%{version}.tar.gz#/itemadapter-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM: 
https://github.com/scrapy/itemadapter/commit/e2a28fcfa2b63a596cf26c0eae1a6f04235b348c
+Patch1:         fix-pydantic-tests.patch
 BuildRequires:  %{python_module hatchling}
 BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module wheel}

++++++ fix-pydantic-tests.patch ++++++
++++ 786 lines (skipped)

++++++ itemadapter-0.13.0.tar.gz -> itemadapter-0.13.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/itemadapter-0.13.0/Changelog.md 
new/itemadapter-0.13.1/Changelog.md
--- old/itemadapter-0.13.0/Changelog.md 2025-12-15 16:39:54.000000000 +0100
+++ new/itemadapter-0.13.1/Changelog.md 2026-01-08 18:53:19.000000000 +0100
@@ -1,5 +1,11 @@
 # Changelog
 
+### 0.13.1 (2026-01-08)
+
+Fixed `get_json_schema()` to properly format multiline field docstrings using
+`inspect.cleandoc()`, ensuring consistent indentation and whitespace handling
+([#115](https://github.com/scrapy/itemadapter/pull/115)).
+
 ### 0.13.0 (2025-12-15)
 
 Added support for Python 3.14 and removed support for [PyPy](https://pypy.org/)
@@ -35,10 +41,10 @@
 
 Removed functions deprecated in 0.5.0:
 
-* `itemadapter.utils.is_attrs_instance()`
-* `itemadapter.utils.is_dataclass_instance()`
-* `itemadapter.utils.is_pydantic_instance()`
-* `itemadapter.utils.is_scrapy_item()`
+- `itemadapter.utils.is_attrs_instance()`
+- `itemadapter.utils.is_dataclass_instance()`
+- `itemadapter.utils.is_pydantic_instance()`
+- `itemadapter.utils.is_scrapy_item()`
 
 ([#93](https://github.com/scrapy/itemadapter/pull/93)).
 
@@ -84,7 +90,6 @@
 ([#77](https://github.com/scrapy/itemadapter/pull/77),
 [#80](https://github.com/scrapy/itemadapter/pull/80)).
 
-
 ### 0.8.0 (2023-03-30)
 
 Dropped Python 3.6 support, and made Python 3.11 support official
@@ -100,43 +105,36 @@
 Improved type hint support
 ([#67](https://github.com/scrapy/itemadapter/pull/67)).
 
-
 ### 0.7.0 (2022-08-02)
 
 ItemAdapter.get_field_names_from_class
 ([#64](https://github.com/scrapy/itemadapter/pull/64))
 
-
 ### 0.6.0 (2022-05-12)
 
 Slight performance improvement
 ([#62](https://github.com/scrapy/itemadapter/pull/62))
 
-
 ### 0.5.0 (2022-03-18)
 
 Improve performance by removing imports inside functions
 ([#60](https://github.com/scrapy/itemadapter/pull/60))
 
-
 ### 0.4.0 (2021-08-26)
 
 Added `ItemAdapter.is_item_class` and `ItemAdapter.get_field_meta_from_class`
 ([#54](https://github.com/scrapy/itemadapter/pull/54))
 
-
 ### 0.3.0 (2021-07-15)
 
 Added built-in support for `pydantic` models 
([#53](https://github.com/scrapy/itemadapter/pull/53))
 
-
 ### 0.2.0 (2020-11-06)
 
 Adapter interface: added the ability to support arbitrary types,
 by implementing a MutableMapping-based interface.
 By way of this change, now any type can be used as a Scrapy item.
 
-
 ### 0.1.1 (2020-09-28)
 
 Dropped support for Python 3.5 (#38).
@@ -150,7 +148,6 @@
 
 Minor improvement to the release process (#37), and cleanup of test warnings 
(#40).
 
-
 ### 0.1.0 (2020-06-10)
 
 Added `ItemAdapter.asdict`, which allows converting an item and all of its
@@ -159,14 +156,12 @@
 Improved `ItemAdapter` performance by reducing time complexity for lookups and
 traversals for dataclass and attrs items (#28).
 
-
 ### 0.0.8 (2020-05-22)
 
 `ItemAdapter.field_names` now returns a `KeysView` instead of a `list`.
 
 Minor CI and test changes.
 
-
 ### 0.0.7 (2020-05-22)
 
 `ItemAdapter.get_field_meta` now returns an empty `MappingProxyType` object for
@@ -177,7 +172,6 @@
 Provided full test coverage, and refactored CI configuration, test
 configuration and tests themselves.
 
-
 ### 0.0.6 (2020-05-09)
 
 Added support for Scrapy’s `BaseItem`.
@@ -186,22 +180,18 @@
 
 Code style and documentation fixes.
 
-
 ### 0.0.5 (2020-04-28)
 
 Removed support for `MutableMapping`.
 
-
 ### 0.0.4 (2020-04-28)
 
 Removed metadata support for arbitrary mutable mappings.
 
-
 ### 0.0.3 (2020-04-27)
 
 Rebuild for the Python Package Index.
 
-
 ### 0.0.2 (2020-04-27)
 
 Split the implementation into several files for better code organization, and
@@ -209,7 +199,6 @@
 
 Also improved the README.
 
-
 ### 0.0.1 (2020-04-25)
 
 Initial release.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/itemadapter-0.13.0/itemadapter/__init__.py 
new/itemadapter-0.13.1/itemadapter/__init__.py
--- old/itemadapter-0.13.0/itemadapter/__init__.py      2025-12-15 
16:39:54.000000000 +0100
+++ new/itemadapter-0.13.1/itemadapter/__init__.py      2026-01-08 
18:53:19.000000000 +0100
@@ -1,7 +1,7 @@
 from .adapter import ItemAdapter
 from .utils import get_field_meta_from_class, is_item
 
-__version__ = "0.13.0"
+__version__ = "0.13.1"
 
 __all__ = [
     "ItemAdapter",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/itemadapter-0.13.0/itemadapter/_json_schema.py 
new/itemadapter-0.13.1/itemadapter/_json_schema.py
--- old/itemadapter-0.13.0/itemadapter/_json_schema.py  2025-12-15 
16:39:54.000000000 +0100
+++ new/itemadapter-0.13.1/itemadapter/_json_schema.py  2026-01-08 
18:53:19.000000000 +0100
@@ -299,7 +299,7 @@
         if "description" not in prop:
             doc = get_inherited_attr_docstring(item_class, attr_name)
             if doc:
-                prop["description"] = doc
+                prop["description"] = inspect.cleandoc(doc)
 
 
 def base_json_schema_from_item_class(item_class: type) -> dict[str, Any]:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/itemadapter-0.13.0/pyproject.toml 
new/itemadapter-0.13.1/pyproject.toml
--- old/itemadapter-0.13.0/pyproject.toml       2025-12-15 16:39:54.000000000 
+0100
+++ new/itemadapter-0.13.1/pyproject.toml       2026-01-08 18:53:19.000000000 
+0100
@@ -61,7 +61,7 @@
 ]
 
 [tool.bumpversion]
-current_version = "0.13.0"
+current_version = "0.13.1"
 commit = true
 tag = true
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/itemadapter-0.13.0/tests/test_json_schema.py 
new/itemadapter-0.13.1/tests/test_json_schema.py
--- old/itemadapter-0.13.0/tests/test_json_schema.py    2025-12-15 
16:39:54.000000000 +0100
+++ new/itemadapter-0.13.1/tests/test_json_schema.py    2026-01-08 
18:53:19.000000000 +0100
@@ -516,6 +516,37 @@
         }
         check_schemas(actual, expected)
 
+    def test_field_docstring_cleandoc(self):
+        """Test that field docstrings are properly dedented and trimmed."""
+
+        @dataclass
+        class TestItem:
+            foo: str
+            """
+            This is a multiline docstring.
+
+            It has multiple paragraphs and indentation
+            that should be cleaned up.
+            """
+
+        actual = ItemAdapter.get_json_schema(TestItem)
+        expected = {
+            "type": "object",
+            "additionalProperties": False,
+            "properties": {
+                "foo": {
+                    "type": "string",
+                    "description": (
+                        "This is a multiline docstring.\n\n"
+                        "It has multiple paragraphs and indentation\n"
+                        "that should be cleaned up."
+                    ),
+                },
+            },
+            "required": ["foo"],
+        }
+        check_schemas(actual, expected)
+
 
 class CrossNestingTestCase(unittest.TestCase):
     """Test item nesting across different item types, with all supported types

Reply via email to