go-libwebp

Experimental translation from libwebp to Go source.
Log | Files | Refs | README | LICENSE

CONTRIBUTING.md (2650B)


      1 # How to Contribute
      2 
      3 We'd love to accept your patches and contributions to this project. There are
      4 just a few small guidelines you need to follow.
      5 
      6 ## Contributor License Agreement
      7 
      8 Contributions to this project must be accompanied by a Contributor License
      9 Agreement. You (or your employer) retain the copyright to your contribution;
     10 this simply gives us permission to use and redistribute your contributions as
     11 part of the project. Head over to <https://cla.developers.google.com/> to see
     12 your current agreements on file or to sign a new one.
     13 
     14 You generally only need to submit a CLA once, so if you've already submitted one
     15 (even if it was for a different project), you probably don't need to do it
     16 again.
     17 
     18 ## Code reviews
     19 
     20 All submissions, including submissions by project members, require review. We
     21 use a [Gerrit](https://www.gerritcodereview.com) instance hosted at
     22 https://chromium-review.googlesource.com for this purpose.
     23 
     24 ## Sending patches
     25 
     26 The basic git workflow for modifying libwebp code and sending for review is:
     27 
     28 1.  Get the latest version of the repository locally:
     29 
     30     ```sh
     31     git clone https://chromium.googlesource.com/webm/libwebp && cd libwebp
     32     ```
     33 
     34 2.  Copy the commit-msg script into ./git/hooks (this will add an ID to all of
     35     your commits):
     36 
     37     ```sh
     38     curl -Lo .git/hooks/commit-msg https://chromium-review.googlesource.com/tools/hooks/commit-msg && chmod u+x .git/hooks/commit-msg
     39     ```
     40 
     41 3.  Modify the local copy of libwebp. Make sure the code
     42     [builds successfully](https://chromium.googlesource.com/webm/libwebp/+/HEAD/doc/building.md#cmake).
     43 
     44 4.  Choose a short and representative commit message:
     45 
     46     ```sh
     47     git commit -a -m "Set commit message here"
     48     ```
     49 
     50 5.  Send the patch for review:
     51 
     52     ```sh
     53     git push https://chromium-review.googlesource.com/webm/libwebp HEAD:refs/for/main
     54     ```
     55 
     56     Go to https://chromium-review.googlesource.com to view your patch and
     57     request a review from the maintainers.
     58 
     59 See the
     60 [WebM Project page](https://www.webmproject.org/code/contribute/submitting-patches/)
     61 for additional details.
     62 
     63 ## Code Style
     64 
     65 The C code style is based on the
     66 [Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html) and
     67 `clang-format --style=Google`, though this project doesn't use the tool to
     68 enforce the formatting.
     69 
     70 CMake files are formatted with
     71 [cmake-format](https://cmake-format.readthedocs.io/en/latest/). `cmake-format
     72 -i` can be used to format individual files, it will use the settings from
     73 `.cmake-format.py`.
     74 
     75 ## Community Guidelines
     76 
     77 This project follows
     78 [Google's Open Source Community Guidelines](https://opensource.google.com/conduct/).