WordPress / WordPress/wordpress-playground

An invalid plugin slug should not cause following plugins to not be installed

Open
#600 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

[Type] Bug
Dominant language
JavaScript
Stars
2k
Forks
462
Avg merge
18h 44m
Merged PRs (30d)
33

Description

On playground.wordpress.net, if you happen to specify a plugin slug that doesn't exist in the WordPress Plugin directory, it will only install the plugins until it encounters the first inexistant. In the progress screen you can see that theoretically it dowloads them all but then on the Plugins page you can only see the first plugins.

Example: https://playground.wordpress.net/?plugin=activitypub&plugin=inexistant&plugin=biscotti will give you these installed plugins:

Screenshot 2023-07-15 at 17 15 40

If I omit the inexistant plugin it works: https://playground.wordpress.net/?plugin=activitypub&plugin=biscotti

Screenshot 2023-07-15 at 17 16 31

I came to this through the following snippet which, when executed on /wp-admin/plugins.php will give you a Playground URL for all of your plugins:

'https://playground.wordpress.net/?plugin='+Array.from(document.querySelectorAll('table.plugins tr.active')).map(tr => tr.dataset.slug).join('&plugin=')

But if you have custom or premium plugins, it will trip up the Playground.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the behavior with the provided playground URLs and compare it with the URL that omits the invalid slug. Start from the plugin installation flow that handles repeated plugin parameters; done means a nonexistent plugin no longer prevents later valid plugins from being installed, while the progress screen remains accurate.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.