This article is written to help novice developers learn the skills needed to contribute to BlueSpice development.
Why should you contribute?
When you are actively involved in a project you get the opportunity to shape its future. Changes are caused by actions. You will certainly receive a big "thank you" and you will be publicly credited related to your work. Even more, you are helping a lot of users who will thank you quietly or loudly.
Join in[edit | edit source]
Like in every other project there are lots of possibilities to participate. Here a few examples of what you could do in the BlueSpice project.
Improving the code quality[edit | edit source]
- Doc blocs: Write with us documenting blocs in the source code. This helps us to complete the code and check for discrepancies. More about the MediaWiki DocBlocks at wikimedia.
- Coding conventions: Help to enforce coding conventions. We use the Coding Conventions of MediaWiki.
- Security: has high priority. Please help to improve it. Therefore you should have a look at Security for developers.
Bugfixes[edit | edit source]
Look for minor and major bugs. And if you already programmed the solution, well, all the better!
Here you can find some help on debugging in MediaWiki
Code Review[edit | edit source]
Help us to review code contributions. Therefore you have to be familiar with gerrit. Find more information at "setting up a development environment" und "committing changes".
Small addition[edit | edit source]
A lot of the existing extensions want to be developed and provide opportunities to extend the functionality. What we have in mind:
Dashboard Widgets, Statics, Sidebar, Widgets, etc.
Own extensions[edit | edit source]
Of course you can develop your own BlueSpice extensions. Please follow the MediaWiki workflow. You will find a good tutorial on MediaWiki pages like this one MediaWiki developing extensions MediaWiki. These notes should also be consulted for developing BlueSpice. Please create a separate repository in gerrit that is named like this:
Translations[edit | edit source]
Translations are needed all the time. Please contact the community of translatewiki.net.
This is how it works[edit | edit source]
Commit changes[edit | edit source]
There are two possibilities to supply patches.
1. Mail to Hallo Welt!
Send an e-mail with your patch in (git format-patch) to email@example.com. We will commit the change for you in git where it has to go through a standardized process.
2. Actively participating via Git
We follow the procedure that is also common in the MediaWiki developer community:
- Get a developer account for MediaWiki
- Install git-review
- check out the BlueSpice code
- Commit your changes
- Changes are verified in gerrit
- When everything is ok, your changes will be accepted
On MediaWiki.org you will find a short and a extended tutorial.
The BlueSpice code can be found in these repositories:
mediawiki/extensions/BlueSpiceFoundation.git mediawiki/extensions/BlueSpiceExtensions.git mediawiki/skins/BlueSpiceSkin.git
and this is how you check out:
git clone ssh://USERNAME@gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceFoundation.git
In the repositories of BlueSpice it is necessary to have the "+2" or "Merge" permission before you can commit code to the product by yourself. Please ask Markus Glaser if you feel you need this kind of access (firstname.lastname@example.org).
If you want to write own extensions for BlueSpice please ask for an own repository here. Please follow the naming convention.