Skip to content

Latest commit

 

History

History
28 lines (28 loc) · 3.06 KB

CONTRIBUTING.md

File metadata and controls

28 lines (28 loc) · 3.06 KB

First of all,thank you for checking out and deciding to contribute to the tmf project. All contributions are greatly appreciated.

Before submitting a pull request

  1. Ensure that all tests still pass
  2. Run cargo clippy to see any lint suggestions
  3. Run cargo fmt to ensure your code is formatted like the rest of the project
  4. Run cargo doc to ensure documentation has not been accidentally broken.

For functionality changes

  1. compare size of suzan.tmf, which appears after tests in target/test_res with previous version, and include this size in the pull request message.
  2. Import suzan_ftmf.obj from target/test_res into blender and ensure it sill looks OK.

What can you contribute?

Low hanging fruits

There is some work that, while not world-changing and glamorous, is requires almost no experience, and can ins some cases be tackled by someone who does not even know how to write code at all.

Fixing/Rewording

While the documentation is in a pretty good place ATM and is perfectly usable, there may be some grammatical/spelling mistakes dotted around. I have dyslexia and am not a native speaker, so those kinds of errors can easily slip trough. Pull requests regarding fixes to those kinds of mistakes should be accepted pretty quickly (they are easy to evaluate and will not set the entire project on fire in case of an error). They should be almost always accepted, unless the mistake is just a different, accepted spelling (colour vs color), or the change has some different problems (unintentionally changes meaning of documentation).

Expanding documentation.

While each and every function in documentation has a short description and an example, this can still be greatly improved.

Slightly more complex stuff

Refactoring

As time goes on, the amount of code in need of refactoring grows. This can cause issues down the line, so refactoring is greatly appreciated. Because this work requires more skill and time to do, more strict checking of pull requests is needed, and accepting/rejecting them may take more time.

Any optimisations, bug fixes and other changes that do not make the file format incompatible or change the API

For optimizations, as long as all tests still pass, there should be no problems with merging. Additionally, some more test regarding the impact on file sizes should be done. Bug fixes and other changes will be put under more scrutiny. But once again, keep in mind that accepting/rejecting the request may take more time.

Very Complex Stuff

API/Format changes

I am fairly open to API additions/changes, as long as a reason for inclusion is given(This change will make this easier) and the change is backward-compatible.

New features

Any feature that adds anything to the file format will be placed under extreme scrutiny. The TMF project tries to be backward compatible as much as possible, so I want to avoid rolling a feature out only to deprecate it in favour of something way better.

More questions?

If you have any more questions, feel free to DM me on reddit, or write me an email. I will gladly answer any questions.