Commit graph

9 commits

Author SHA1 Message Date
Benedikt Willi
9e48edcfdf Refactor and Update python-markdown-oembed-extension
- **Removed legacy build files**:
  - Deleted obsolete `.travis.yml`, `flake.lock`, and `flake.nix` files that were no longer needed for the current build and dependency management setup.

- **Updated versioning**:
  - Incremented the package version from `0.4.0` to `0.5.0` in `version.py` and made adjustments in `pyproject.toml` to reflect the new versioning mechanism.

- **Refined package structure**:
  - Moved source files from `src/python_markdown_oembed_extension` to `mdx_oembed` and renamed references accordingly for better clarity and organization of the codebase.

- **Enhanced OEmbed functionality**:
  - Added dedicated endpoint handling in the new `endpoints.py`.
  - Refactored the `oembed.py` file to implement a minimal oEmbed consumer, replacing the earlier dependency on `python-oembed`.

- **Improved test coverage**:
  - Transitioned tests from `unittest` to `pytest` framework for better maintainability.
  - Expanded unit tests, including better error handling and validation for various media types.

- **Updated dependency requirements**:
  - Raised minimum Python version from `3.9` to `3.12` in `pyproject.toml`.
  - Removed non-essential dependencies and restructured the dependency declarations to streamline package management.

These changes focus on modernizing the codebase, improving adherence to current Python standards, and enhancing overall functionality and maintainability.
2026-03-03 14:26:52 +01:00
cristoffel
bb5eb5445e use flit packaging tool, write simple test 2023-11-06 18:58:32 +01:00
Benedikt Willi
745056d5e6
Update extension.py 2022-08-16 08:19:59 +02:00
Benedikt Willi
a665517a5d
Update extension.py 2022-08-08 13:18:50 +02:00
Benedikt Willi
cdc3a41260
Update extension.py 2022-08-08 11:33:25 +02:00
Sami Turcotte
e2e29489d7 Allow arbitrary oEmbed endpoints
Before this change, only three hardcoded oEmbed endpoints were available
for users of the extension; youtube, flickr and vimeo. In the
configuration, it was only possible to pass a subset of those 3 oEmbed
endpoints. It was done by passing the names of the allowed endpoints.

With this change, the API has changed. The allowed_endpoints kwarg now
expects to be passed a list of OEmbedEndpoint objects (as opposed to
names). This means the responsibility of creating OEmbedEndpoint objects
has been shifted to the user of the extension. If the allowed_endpoints
kwarg is omitted, the default oEmbed endpoints used will be the same as
before; youtube, flickr and vimeo.

The motivation is to allow arbitrary oEmbed endpoints, without
necessitating anyone to maintain the list of all possible oEmbed
endpoints out there.
2015-04-21 05:18:42 -04:00
Sami Turcotte
c3a4466eca Reconcile with Markdown 2.6
Updated the initialization of OEmbedExtension to be compatible with
Markdown 2.6. See https://pythonhosted.org/Markdown/release-2.6.html
2015-04-02 03:47:33 -04:00
J. Tanner Netterville
2f56c1c11a allow configuring which endpoints to allow 2012-11-13 17:28:04 -06:00
J. Tanner Netterville
e4ec8a72fb initial commit
Functional beta
2012-11-13 15:28:10 -06:00