[INFO] Suggestions for submitting patches
Posted: Sun Sep 24, 2017 6:08 pm
Hi,
Just some notes for making sure yous patches are applied in a short time:
1) Create patches to be applied to trunk code. Stable code does not usually receive changes, only fixes. Back-porting changes is possible but it has to be evaluated.
2) Make sure your patches are "atomic", each patch should only focus on one change, if needed make more of them. We need to evaluate changes and huge patches make that difficult.
3) Make sure you change is complete, the project maintains a lot of devices, if the patches only address one of them then the integrator is left with a lot of work and that makes things a lot slower. Registry files are a typical example.
4) If you patch requires changes to mcuconf.h, halconf.h or chconf.h then it can be very slow, all files must be updated in all demos and test applications, there hundreds of them. Avoid changes to configuration files if possible.
5) Do not submit patches for unofficial code, most likely we don't maintain that. Better contact the original author.
6) Patches impacting demos or test application must also patch those, all of them.
Things that can slow down the process:
1) Violation of coding rules (tabs, comments etc, see the article regarding those), try to follow our patterns.
2) Breaking APIs. This can be done only on major releases (yyyy.mm.0).
3) Significant changes or features, those has to be discussed on the development forum because it is handled more on an architectural level, this process is for small changes.
4) Contributing things we cannot easily test and maintain, once something is included users expect us to support them. We cannot rely on contributors staying around here and answer questions.
How to submit patches:
- For bug fixes open a new topic in the "Bug Reports" forum.
- For small changes open a new topic in the "Small Changes" forum.
- For proposing big changes it is better to discuss in the "Development" forum before even starting, inclusion is not a given, depending on impact.
Giovanni
Just some notes for making sure yous patches are applied in a short time:
1) Create patches to be applied to trunk code. Stable code does not usually receive changes, only fixes. Back-porting changes is possible but it has to be evaluated.
2) Make sure your patches are "atomic", each patch should only focus on one change, if needed make more of them. We need to evaluate changes and huge patches make that difficult.
3) Make sure you change is complete, the project maintains a lot of devices, if the patches only address one of them then the integrator is left with a lot of work and that makes things a lot slower. Registry files are a typical example.
4) If you patch requires changes to mcuconf.h, halconf.h or chconf.h then it can be very slow, all files must be updated in all demos and test applications, there hundreds of them. Avoid changes to configuration files if possible.
5) Do not submit patches for unofficial code, most likely we don't maintain that. Better contact the original author.
6) Patches impacting demos or test application must also patch those, all of them.
Things that can slow down the process:
1) Violation of coding rules (tabs, comments etc, see the article regarding those), try to follow our patterns.
2) Breaking APIs. This can be done only on major releases (yyyy.mm.0).
3) Significant changes or features, those has to be discussed on the development forum because it is handled more on an architectural level, this process is for small changes.
4) Contributing things we cannot easily test and maintain, once something is included users expect us to support them. We cannot rely on contributors staying around here and answer questions.
How to submit patches:
- For bug fixes open a new topic in the "Bug Reports" forum.
- For small changes open a new topic in the "Small Changes" forum.
- For proposing big changes it is better to discuss in the "Development" forum before even starting, inclusion is not a given, depending on impact.
Giovanni