GroupDocs.Metadata for Python via .NET 26.5 Release Notes

This release adds Python 3.14 support and AI agent integration, and ships self-contained wheels for Windows, Linux, and macOS.

Full List of Changes in This Release

KeyCategorySummary
METADATAPYTHON‑33EnhancementRebuilt the Python binding — a typed, per-overload API with bundled .pyi stubs (no runtime __getattr__ proxy)
METADATAPYTHON‑34FeaturePython 3.14 support (Requires-Python is now >=3.5,<3.15)
METADATAPYTHON‑35FeatureShip AGENTS.md inside the package for AI agent / LLM integration
METADATAPYTHON‑36EnhancementUpdated to the GroupDocs.Metadata for .NET 26.5 engine
METADATAPYTHON‑37EnhancementSelf-contained wheels with an embedded .NET runtime for Windows, Linux, and macOS (Intel and Apple Silicon)

Major Features

A modern, typed Python API

Every class, method overload, and enum is emitted explicitly with type hints and .pyi stubs, so editors provide accurate autocomplete and there is no dynamic attribute proxy at runtime. Property search uses plain Python predicates — no Specification objects.

from groupdocs.metadata import Metadata

# Open a file and read all of its detected metadata properties
with Metadata("input.docx") as metadata:
    for prop in metadata.find_properties(lambda p: True):
        print(f"{prop.name} = {prop.value}")

Edit, add, remove, and clean metadata with the same predicate-driven API:

from datetime import datetime
from groupdocs.metadata import Metadata
from groupdocs.metadata.common import PropertyValue
from groupdocs.metadata.tagging import Tags

with Metadata("input.docx") as metadata:
    # set_properties adds or updates every property matching the predicate
    metadata.set_properties(
        lambda p: Tags.time.created in list(p.tags),
        PropertyValue(datetime.now()),
    )
    metadata.save("output.docx")

# Strip every detected property in one call
with Metadata("input.pdf") as metadata:
    removed = metadata.sanitize()
    metadata.save("clean.pdf")

The release covers the full metadata surface: document properties, the EXIF, IPTC IIM, and XMP standards, ID3/Lyrics/APE audio tags, and export of the metadata tree to Excel, CSV, JSON, or XML via ExportManager.

Python 3.14 support

The supported Python range is extended to 3.5 – 3.14. The Requires-Python metadata reads >=3.5,<3.15, and the PyPI page lists classifiers through Python 3.14. The wheel is py3-none-{platform}, so a single build works across all supported interpreters without recompilation.

AGENTS.md — AI Agent and LLM Integration

The groupdocs-metadata-net pip package now ships an AGENTS.md file at groupdocs/metadata/AGENTS.md inside the wheel. AI coding assistants that scan installed packages — such as Claude Code, Cursor, and GitHub Copilot — can automatically discover the API surface, import paths, usage patterns, and troubleshooting tips.

pip show -f groupdocs-metadata-net | grep AGENTS

See the Agents and LLM Integration documentation page for MCP server setup, machine-readable documentation URLs, and example pipelines.

API Overview

MethodReturnsDescription
Metadata(path | stream | uri[, load_options])Open a file by path, binary stream, or URI; optional LoadOptions for a format hint or password
get_root_package()RootMetadataPackageRoot of the metadata tree (document_properties, exif_package, xmp_package, iptc_package, …)
get_document_info()IDocumentInfoFormat, MIME type, page count, size, and encryption state
find_properties(predicate)collectionProperties matching a lambda p: bool
set_properties / add_properties / update_properties / remove_propertiesintAdd/update/remove properties matching a predicate
sanitize()intRemove every detected property
save([path | stream])NoneSave to a new path/stream or back to the original source

Export uses groupdocs.metadata.export.ExportManager(list(properties)).export(path, ExportFormat.X) with ExportFormat of XLSX, CSV, JSON, or XML.

Platform Wheels

PlatformWheel suffix
Windows 64-bitpy3-none-win_amd64.whl
Linux x64 (glibc)py3-none-manylinux1_x86_64.whl
macOS Intelpy3-none-macosx_10_14_x86_64.whl
macOS Apple Siliconpy3-none-macosx_11_0_arm64.whl

Requirements

  • Python: 3.5 through 3.14
  • Platforms: Windows (x64), Linux (x64 glibc), macOS (Intel and Apple Silicon)
  • Optional system dependencies (Linux/macOS, for image and export paths): libgdiplus, libfontconfig1, libicu-dev. See System Requirements.

Evaluation and Licensing

Without a license the library runs in evaluation mode: it reads only the first few properties of each metadata package, and save() raises an “Evaluation only” exception. Apply a license (or set GROUPDOCS_LIC_PATH) to lift both limits. A free 30-day temporary license is available.

Additional Resources

Feedback

If you have any questions, issues, or suggestions, please reach out through the Free Support Forum.