Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple instances of the same plugin #3027

Merged
merged 4 commits into from Nov 1, 2022
Merged

Support multiple instances of the same plugin #3027

merged 4 commits into from Nov 1, 2022

Conversation

oprypin
Copy link
Contributor

@oprypin oprypin commented Oct 29, 2022

E.g.:

plugins:
  - blog:
      blog_dir: blog
  - blog:
      blog_dir: tutorial

Depending on what a plugin does, say if it "adds a thing" into the site, it can be reasonable to allow it to be specified multiple times in the plugins: list, so it can "add multiple things". Previously such a use case was completely not predicted in MkDocs, so it silently passes but is bugged - the plugin runs twice but with only one of the configs both times.

So, this PR addresses that by registering a plugin - foo: as 'foo', and then if another plugin - foo: appears, it gets registered as 'foo #2' (the name affects primarily just how it's referred to in warnings and errors).

By default, a warning will appear from MkDocs anyway, unless the plugin adds a class variable supports_multiple_instances = True.

@oprypin oprypin added this to the 1.4.2 milestone Oct 29, 2022
@oprypin oprypin marked this pull request as ready for review November 1, 2022 15:29
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.

None yet

1 participant