Hi there! We’re thrilled that you’d like to contribute to WP Document Revisions. Your help is essential for keeping it great.
WP Document Revisions is an open source project supported by the efforts of an entire community and built one contribution at a time by users like you. We’d love for you to get involved. Whatever your level of skill or however much time you can give, your contribution is greatly appreciated. There are many ways to contribute, from writing tutorials or blog posts, improving the documentation, submitting bug reports and feature requests, helping other users by commenting on issues, or writing code which can be incorporated into WP Document Revisions itself.
Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests.
We’d love to help. Check out the support guidelines.
Think you found a bug? Please check the list of open issues to see if your bug has already been reported. If it hasn’t please submit a new issue.
Here are a few tips for writing great bug reports:
If you find a security vulnerability, do not open an issue. Please email ben@balter.com instead.
If you find yourself wishing for a feature that doesn’t exist in WP Document Revisions, you are probably not alone. There are bound to be others out there with similar needs. Many of the features that WP Document Revisions has today have been added because our users saw the need.
Feature requests are welcome. But take a moment to find out whether your idea fits with the scope and goals of the project. It’s up to you to make a strong case to convince the project’s developers of the merits of this feature. Please provide as much detail and context as possible, including describing the problem you’re trying to solve.
Open an issue which describes the feature you would like to see, why you want it, how it should work, etc.
We’d love for you to contribute to the project. Unsure where to begin contributing to WP Document Revisions? You can start by looking through these “good first issue” and “help wanted” issues:
p.s. Feel free to ask for help; everyone is a beginner at first :smiley_cat:
Here’s a few general guidelines for proposing changes:
At a high level, the process for proposing changes is:
script/bootstrapscript/cibuildgit checkout -b my-branch-nameInteresting in submitting your first Pull Request? It’s easy! You can learn how from this free series How to Contribute to an Open Source Project on GitHub
script/bootstrap
script/cibuild
The plugin uses smalot/pdfparser for PDF text extraction (see issue #514). It is installed via composer install --no-dev and ships unscoped from vendor/ to wordpress.org today.
A plain composer install is enough — both dev tools and production deps land in vendor/, and wp-document-revisions.php boots from vendor/autoload.php.
The deploy workflow (.github/workflows/deploy.yml) runs composer install --no-dev before invoking the WordPress.org deploy action so the release artifact contains only production deps in vendor/. .distignore is set up so vendor/ ships and composer.json / composer.lock do not.
A php-scoper pipeline (composer build:scope, scoper.inc.php, vendor-bin/scoper/) is in place so that production composer deps can be rewritten under WP_Document_Revisions\Vendor\ and avoid namespace collisions with the same library shipped by another wordpress.org plugin. The pipeline runs in CI as a smoke check but is not on the release path yet — php-scoper’s handling of Composer’s own autoload bootstrap needs more work before the scoped output is safe to load. When that work lands, wp-document-revisions.php already prefers vendor-prefixed/ when it exists, and the deploy workflow will switch to running composer build:scope after the production install.
The project uses GitHub Actions for continuous integration and automated security scanning:
CodeQL is configured to analyze only JavaScript since CodeQL does not yet support PHP. The configuration files are:
.github/workflows/codeql.yml - Defines the CodeQL analysis workflow.github/codeql-config.yml - Specifies paths to analyze and excludeRuby is explicitly excluded from analysis as this repository contains no Ruby code.
This project is governed by the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code.
Prefer to use Docker to develop locally?
git clone https://github.com/wp-document-revisions/wp-document-revisions/cd wp-document-revisionsdocker-compose upopen http://localhost:8088