Metadata-Version: 2.4
Name: ocyan.plugin.wagtail_oscar_integration
Version: 2.0.4rc1
Summary: Integrates Oscar dashboard and catalogue links with Wagtail.
Author-email: Mandel <info@mandelblog.com>
License-Expression: LicenseRef-Proprietary
Project-URL: Homepage, https://git.mandelblog.com/mandel-plugins/ocyan.plugin.wagtail_oscar_integration
Classifier: Framework :: Django
Classifier: Environment :: Plugins
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: <3.14,>=3.12
Description-Content-Type: text/x-rst
License-File: COPYRIGHT
Requires-Dist: ocyan.core<2,>=1.2.13
Requires-Dist: ocyan.plugin.wagtail<3,>=2.0.5
Requires-Dist: ocyan.plugin.wagtail_utils<1,>=0.2.2
Requires-Dist: ocyan.plugin.oscar<3,>=2.0.2
Requires-Dist: ocyan.plugin.oscar_elasticsearch<3,>=2.1.0
Requires-Dist: lxml<7,>=5
Provides-Extra: test
Requires-Dist: ocyan.plugin.testing; extra == "test"
Requires-Dist: wheel; extra == "test"
Requires-Dist: empty_testproject; extra == "test"
Requires-Dist: pylint-django; extra == "test"
Requires-Dist: isort; extra == "test"
Requires-Dist: ruff; extra == "test"
Requires-Dist: vdt.versionplugin.wheel; extra == "test"
Requires-Dist: coverage; extra == "test"
Requires-Dist: beautifulsoup4; extra == "test"
Provides-Extra: coyote
Requires-Dist: ocyan.plugin.coyote<1,>=0.3.2; extra == "coyote"
Dynamic: license-file

Ocyan plugin Wagtail Oscar integration
======================================

About Wagtail Oscar integration
-------------------------------
Ocyan plugin: Wagtail Oscar integration

Installation
------------
Add `ocyan.plugin.wagtail_oscar_integration` to your projects dependencies.

Supported matrix
----------------
The certified foundation profile supports Python 3.12 and 3.13 with Django
5.2, Wagtail 7.x, and Oscar 4.1.x. These bounds come from the installed
certified foundations: ``ocyan.plugin.wagtail`` requires Django 5.2 and
Wagtail 7.x, while ``ocyan.plugin.oscar`` requires Django 5.2 and
``django-oscar>=4.1,<4.2``. The package itself declares the compatible Python
and Ocyan foundation bounds in ``pyproject.toml``. Oscar's current release
documentation also identifies the 4.x line as compatible with Django 5.2;
consumer validation is run against the exact bounded dependency set.

The Wagtail and Oscar foundations are required. Coyote is optional; install
the ``coyote`` extra only when its block extension is configured. Roadrunner
block templates are compatibility adapters for existing consumers and are not
the MandelBlog frontend standard.

Integration lifecycle
---------------------
Run ``manage.py check``, migrations, and ``collectstatic`` after installation.
Removing the package and its documented plugin entry leaves the base project
importable; this package owns no database migrations. Remove Coyote-specific
configuration only when that optional extra is no longer installed.

Security and permissions
------------------------
The dashboard permission bridge grants Django staff status only when a user is
a superuser or has Oscar dashboard permission, using an idempotent scoped
update. Dashboard rewriting is limited to authenticated successful HTML
dashboard responses and skips oversized responses. This package provides no
backup/restore or destructive operation.

Building static
---------------
nvm use
npm install
make css

Release validation builds both a wheel and an sdist and tests imports from
isolated site-packages installations; editable installs are not supported.
