Skip to content

Conversation

@halostatue
Copy link
Contributor

@halostatue halostatue commented Dec 25, 2025

MDEx 0.10 has a few breaking changes which should have minimal impact on Tableau, but the larger change is that there is explicit support for plugins in MDEx, using the similar patterns as Req does.

To simplify the use of plugins in Tableau, I have added a plugins key to config.markdown.mdex which is extracted and used to attach MDEx plugin modules prior to calling MDEx.to_html!().

This could be implemented as a separate key config.mdex_plugins, but since it's part of the markdown converter, this felt more natural to me. If MDEx or one of its plugins adds a plugins option, this will break that -- but I think it's low probability.

MDEx 0.10 has a few breaking changes which should have minimal impact on
Tableau, but the larger change is that there is explicit support for
plugins in MDEx, using the similar patterns as Req does.

To simplify the use of plugins in Tableau, I have added a `plugins` key
to `config.markdown.mdex` which is extracted and used to attach MDEx
plugin modules prior to calling `MDEx.to_html!()`.

This _could_ be implemented as a separate key `config.mdex_plugins`, but
since it's part of the markdown converter, this felt more natural to me.
If MDEx or one of its plugins adds a `plugins` option, this will break
that -- but I think it's low probability.
@halostatue halostatue changed the title feat!: Update to MDEx 0.10 feat!: update to MDEx 0.10 Dec 25, 2025
Refactor `MDExConverter.markdown/2` and `MDExConverter.convert/4` functions to use Keyword.pop for plugins.

`MDExConverter.markdown/2` no longer tries to *merge* `:plugins`.
Ensure that the code is loaded before trying to call `mod.attach/1`.
@halostatue
Copy link
Contributor Author

Everything should be ready. I don't know if you use a ff-only/rebase merge process or a squash merge process, but if you prefer I can update the commits to be cleaner this evening.

@mhanberg
Copy link
Collaborator

mhanberg commented Jan 8, 2026

I only use squash merging

@mhanberg mhanberg merged commit 25edb37 into elixir-tools:main Jan 8, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants