Overview
A 20,000 Foot View of the Process
The following meta-map of the conversion process may help you to navigate what is, honestly speaking, a fairly complex undertaking.
- Communicating
- Researching
- Replicating
- Converting
- Testing
- Releasing
Click backdrop-port to view all Drupal 7 to Backdrop CMS ports.
Communicating
Let your stakeholders know what you are doing
Before jumping into converting code, do a little public relations work first! It's a great idea to inform everyone of your intentions. The best way to do this is to create two issues:
-
Create an issue in the drupal.org issue queue for the module or theme.
Why: Creating an issue not only notifies the current module maintainers of what you are up to (it's their baby, after all), it also helps other people working on Backdrop to avoid duplicating your work. It gives them a reason to contact you for many reasons: Perhaps they would like to help you port the module; Perhaps they might be interested in co-maintaining the module with you; Perhaps they want to help with testing...if you don't advertise your intentions, you'll never find out!
How: The best way to go about this is to politely announce your intentions and then gently ask if the current maintainer(s) are at all interested in supporting you. Make it clear that you are totally OK with the situation where they decide to porting the module themselves. Nevertheless, you can also make it clear that you are willing to help port the module, help maintain the module once it is ported, or co-maintain the module with them. State clearly that, if they are not interested, you are willing to do all of the above entirely without their input or assistance.
Item Submission Notes:
In the Issue Metadata area, please enter the following information:
Title: Backdrop CMS Port
Project: (leave as is)
Category: Plan
Priority: Normal
Status: Active
Version: (choose the Drupal 7 version)
Component: Code
Assigned: (choose your Drupal username)Issue Tags: backdrop-port
Issue Summary:
I'm creating this issue to let you know that I'm porting the Drupal 7 version of this module to Backdrop CMS. Please let me know if you are interested in supporting a Backdrop version, want to help with the port, or want to co-maintain the Backdrop module once the port is complete. The original creator, all previous maintainers and any sponsors have all been credited in the Backdrop project, which is at: {URL}. Respectfully,
-
Create an issue in the Backdrop contrib group
There you can mention that a specific module is about to be ported, and link to the Drupal issue. This will allow anyone else working on Backdrop to collaborate with you on the port, rather than doing it again. Also, this post can also serve as an application to join the Backdrop Contrib group if you are not already a member.
Example:
Hello. I intend to port a Drupal 7 {Module|Theme} at Drupal.org: {Module|Theme Name} {Module|Theme URL} {Module|Theme Description} I have already contacted the current Maintainers of my intentions, and offered to include them in any capacity they want; they just need to get in touch. My message is at: {Module|Theme Issue Queue URL} If anyone wants to get involved with the porting process, testing or Co-Maintaining the finalized Backdrop CMS Module, please get in touch. Regards,
Researching
Review the Backdrop Change Records Page
The Backdrop Change Records page documents any API changes that have occured between Drupal 7 and Backdrop, along with a discussion of why the decision was made and work-arounds for commonly encountered problems.
It is a very wise idea to be familiar with this resource and how to use it, because that is where you should go if any unexpected errors or failures arise while attempting a module or theme or layout conversion. Most of the time you should be able to find clues in there to help you resolve the problem.
Failing this, it is recommended to open an issue in the queue or ask in the forums.