mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-01 01:07:51 -04:00
parent
35d6f3daa3
commit
8ae4c8eee8
@ -1,23 +1,55 @@
|
||||
# Contributing to Panda3D
|
||||
Thank you for looking into ways to contribute to Panda3D.
|
||||
Most information on how to contribute and get involved already exists in other places.
|
||||
Therefore this page serves as another way to find those resources.
|
||||
|
||||
## Useful Links
|
||||
* [panda3d.org](https://www.panda3d.org)
|
||||
* [Manual](https://docs.panda3d.org/1.10/python/index)
|
||||
Panda3D is an open-source, community-driven project, completely dependent on the
|
||||
contribution of volunteers. As such we highly welcome you to contribute code to
|
||||
the project. This document aims to outline some guidelines for doing so.
|
||||
|
||||
### Getting in Touch With the Community
|
||||
* [Discord](https://discord.gg/UyepRMm)
|
||||
* [IRC](https://www.panda3d.org/manual/?title=The_IRC_Channel)
|
||||
* [Forum](https://discourse.panda3d.org/)
|
||||
If you would like to contribute but aren't sure where to start, please visit the
|
||||
[Get Involved](https://www.panda3d.org/get-involved/) page on our website, or
|
||||
the excellent [Open Source Guide](https://opensource.guide/how-to-contribute/).
|
||||
|
||||
## Before implementing a change
|
||||
|
||||
## Building the Project
|
||||
Information on how to build Panda3D can be found in the [README](https://github.com/panda3d/panda3d#building-panda3d).
|
||||
We highly recommend that you file issues before making a change. Issues are
|
||||
used to track bugs and feature requests but also to get feedback from the other
|
||||
developers about design decisions or a specific implementation strategy.
|
||||
|
||||
## Testing the Project
|
||||
Information on how to test Panda3D can be found in the [README](https://github.com/panda3d/panda3d#running-tests).
|
||||
It is important for acceptance that the change is implemented in a way that fits
|
||||
the general design principles of the Panda3D API, and fits well with the general
|
||||
priorities of the team. Therefore, prior discussion with other developers is
|
||||
critical. Issues can be used to facilitate this, but we also invite you to
|
||||
visit the #development channel on Discord (or #panda3d-devel on FreeNode IRC).
|
||||
|
||||
## Ways to Get Involved
|
||||
Information on various ways to get involved with Panda3D can be found [on the main web site](https://www.panda3d.org/get-involved/).
|
||||
We also recommend that you familiarize yourself with the established coding
|
||||
style and design patterns of Panda3D, to reduce the amount of changes that have
|
||||
to be made during the review process.
|
||||
|
||||
## Submitting a change
|
||||
|
||||
All changes from non-core contributors are made via pull requests. This
|
||||
requires you to fork the Panda3D repository, create a branch for your change,
|
||||
push your changes to this branch, and request that this branch is merged into
|
||||
the upstream branch. Each pull request is reviewed by a maintainer and
|
||||
automatically tested for regressions and unit test coverage. The maintainer
|
||||
will suggest any changes, which you can add by committing more code to the same
|
||||
branch (you can do a force push if necessary). Once the change is deemed
|
||||
acceptable, the maintainer will merge your change into the appropriate branch of
|
||||
the repository.
|
||||
|
||||
To make it easier for the maintainer to review your changes, we highly recommend
|
||||
that you give a clear and concise description of intent (linking to any issues
|
||||
that are resolved by the change), as well as the inclusion of unit tests, which
|
||||
contribute to a high level of confidence that this change does not break any
|
||||
existing behaviours. We also recommend breaking up separate changes into
|
||||
separate PRs, rather than submitting one big PR with several unrelated changes.
|
||||
|
||||
If your change is still a work in progress, please mark the PR as "draft". This
|
||||
will prevent other contributors from receiving an email every time you push a
|
||||
new change to your branch. Draft PRs can also be used to invite early feedback
|
||||
on your change, especially if you are uncertain about whether you are going in
|
||||
the right direction.
|
||||
|
||||
The code in the Panda3D repository is copyrighted to Carnegie Mellon University
|
||||
and licensed under the Modified BSD License. By submitting your changes, you
|
||||
accept that your code becomes placed under the same license. Except in specific
|
||||
agreed-upon cases, we do not accept code contributions under alternate licenses.
|
||||
|
Loading…
x
Reference in New Issue
Block a user