57 lines
4.5 KiB
Markdown
57 lines
4.5 KiB
Markdown
<!-- Note that the headers in this file are being linked to via bitly.com. In case the headers change these links must be changed, too. Just ping kghbln on changes. -->
|
|
There are different ways to make a contribution to [Semantic MediaWiki][smw] (SMW) while a few guidelines are necessary to keep the workflow and review process most efficient.
|
|
|
|
### Report bugs
|
|
|
|
A bug is the occurrence of an unintended or unanticipated behaviour that causes a vulnerability or fatal error.
|
|
|
|
* You may help us by reporting bugs via the [issue tracker][smw-issues]. See the help page on [reporting bugs (environment, reproducing)][smw-bugs1] as well as on [identifying bugs (stack-trace)][smw-bugs2] for information on how to do this best. Please remember to always provide information about your environment as well as a stack-trace.
|
|
* You may help us to do [pre-release testing][smw-testing] by joining the [team of testers][smw-testers] on GitHub.
|
|
|
|
### Request features
|
|
|
|
A feature request is a new, or altered behaviour of an existing functionality. You may describe them via the [issue tracker][smw-issues].
|
|
|
|
A request should contain a detailed description of the expected behaviour in order to avoid misconceptions in the process of an implementation. The following notes are provided to aid the process and help prioritize a request for project members.
|
|
|
|
* Why is the feature requested or relevant?
|
|
* What does the feature solve? (e.g. it addresses a generalizable behaviour, it solves a specific use case etc.)
|
|
* Examples demonstrate the expected behaviour by:
|
|
* Being simple, clear, and targeted towards the feature and not rely on any other external functionality (such as other parser functions or extensions).
|
|
* In case of a modified behaviour, examples demonstrate the old and new behaviour together with an explanation of the expected difference
|
|
* In case of a new behaviour, examples are written down to outline the expected new behaviour (best practice is a step-by-step description) together with a [use case](https://en.wikipedia.org/wiki/Use_case)
|
|
* Examples made available via the [sandbox](https://sandbox.semantic-mediawiki.org).
|
|
* Examples should be adaptable so they can be used as part of an [integration test](https://www.semantic-mediawiki.org/wiki/Help:Integration_tests).
|
|
|
|
### Improve documentation
|
|
|
|
Documenting the software is an important part of the work to make the software usable. You may help us by creating, updating or amending the documentation of the software on [Semantic-MediaWiki.org][smw].
|
|
|
|
### Provide translations
|
|
|
|
* You may help us by providing software translations via [translatewiki.net][twn]. See their [progress-statistics][twn-smw] to find out if there is still work to do for your language.
|
|
* You may also help up provide translations for important pages on the Semantic MediaWiki homepage. See the [info page][smw-trans] for further information
|
|
|
|
### Provide patches
|
|
|
|
You may help us by providing patches or additional features via a pull request but in order to swiftly co-ordinate your code contribution, the following should suffice:
|
|
|
|
* Please ensure that pull requests are based on the current master. See also the [developer documentation overview][smw-ddo] for further information.
|
|
* Code should be easily readable (see [NPath complexity][smw-npath], `if else` nesting etc.) and if necessary be put into separate components (or classes)
|
|
* Newly added features should not alter existing tests but instead provide additional test coverage to verify the expected new behaviour. For a description on how to write and run PHPUnit test, please consult the [manual][mw-testing].
|
|
|
|
Thank you for contributing to Semantic MediaWiki!
|
|
|
|
[smw]: https://github.com/SemanticMediaWiki/SemanticMediaWiki
|
|
[smw-issues]: https://github.com/SemanticMediaWiki/SemanticMediaWiki/issues
|
|
[smw-bugs1]: https://www.semantic-mediawiki.org/wiki/Help:Reporting_bugs
|
|
[smw-bugs2]: https://www.semantic-mediawiki.org/wiki/Help:Identifying_bugs
|
|
[smw-testing]: https://www.semantic-mediawiki.org/wiki/Help:Reporting_bugs#Pre-release_testing
|
|
[smw-testers]: https://github.com/orgs/SemanticMediaWiki/teams/testers
|
|
[twn]: https://translatewiki.net/
|
|
[twn-smw]: https://translatewiki.net/wiki/Special:MessageGroupStats?group=mwgithub-semanticmediawiki&suppressempty=1&x=D
|
|
[smw-trans]: https://www.semantic-mediawiki.org/wiki/semantic-mediawiki.org:Translating_content
|
|
[smw-ddo]: https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/docs/technical/README.md
|
|
[mw-testing]: https://www.mediawiki.org/wiki/Manual:PHP_unit_testing
|
|
[smw-npath]: https://www.semantic-mediawiki.org/wiki/Code_coverage#NPath_complexity
|