mirror of
https://github.com/spice2x/spice2x.github.io.git
synced 2026-08-01 14:20:42 -07:00
Update CONTRIBUTING.md
This commit is contained in:
@@ -9,6 +9,14 @@ Baseline rules for patch submissions are as follows. Any patches violating the r
|
|||||||
* For a new game that was never supported (not a new version of a game, but rather a new series): please wait 1 year after official AC release in Japan.
|
* For a new game that was never supported (not a new version of a game, but rather a new series): please wait 1 year after official AC release in Japan.
|
||||||
* For new version of an already supported game: proceed with caution and use generally-accepted community guidelines.
|
* For new version of an already supported game: proceed with caution and use generally-accepted community guidelines.
|
||||||
|
|
||||||
|
### Avoiding regressions
|
||||||
|
|
||||||
|
The biggest risk in making code changes to spice is the risk of regressions. There is a **lot** of shared code used by many different games, reaching back game versions that are more than a decade old. It is practically impossible to test all supported games and versions.
|
||||||
|
|
||||||
|
Additionally, there's a lot of code that get exercised on specific hardware - including hardware that you probably don't have access to (e.g., ICCA reader, real cabinet I/O, specific brand of touch screens...)
|
||||||
|
|
||||||
|
Therefore, when making code changes, please by extremely careful about containing / scoping your changes. Make targeted bug fixes scoped to handful of game versions and hardware configuration. When adding new features, make it off by default, unless there is a really good reason to make it the default. If you make a new default, add an option that disables it so that users can opt out as needed.
|
||||||
|
|
||||||
### Code quality requirements
|
### Code quality requirements
|
||||||
|
|
||||||
* Test for regressions, at least in and around the component you are modifying:
|
* Test for regressions, at least in and around the component you are modifying:
|
||||||
|
|||||||
Reference in New Issue
Block a user