Contributing#

Contributing Guidelines#

Thank you for your interest in contributing to the XPlane Simulator with Data Collector and OpenAI Gym Interface project! We welcome contributions from the community to help improve and enhance this simulator.

Please take a moment to review these guidelines before submitting your contributions.

Code of Conduct#

Before you start, please read and adhere to our Code of Conduct. We expect all contributors to follow these guidelines to ensure a respectful and inclusive environment for everyone.

How to Contribute#

  1. Fork the repository to your GitHub account.

  2. Clone the forked repository to your local machine:

    git clone https://github.com/ub-nsf-hsi/shasta-ub.git
    
  3. Create a new branch for your contribution:

    git checkout -b feature/new-feature
    
  4. Make your changes, improvements, or fixes in your branch.

  5. Commit your changes with clear and descriptive messages:

    git commit -m "Add new feature: description of the feature"
    
  6. Push your changes to your forked repository:

    git push origin feature/new-feature
    
  7. Create a pull request (PR) from your branch to the main branch of the main repository.

    • Ensure the PR title and description clearly explain the purpose of your contribution.

    • Reference any relevant issues if applicable.

  8. Participate in the discussion and address any feedback or review comments related to your PR.

  9. Once your contribution is approved, it will be merged into the main repository.

Tips for Contributing#

  • Check the Issues section for existing issues or features that need attention. You can also create new issues to discuss potential contributions.

  • If you’re adding a new feature or making significant changes, consider discussing your proposal with the community first by creating an issue or reaching out in the existing discussions.

  • Follow the coding style and guidelines used in the project to maintain consistency.

  • Write clear and comprehensive documentation for any new features or changes you introduce.

  • Test your changes thoroughly to ensure they work as expected and do not break existing functionality.

  • Be patient and responsive during the review process. Your contributions are valuable, and feedback helps improve the quality of the project.

Code style#

Adhere to standard Python style guidelines#

All contributions are checked against style guidelines described in PEP 8.

Use consistent variable naming#

Classes should be named using CamelCase. Functions and instances/variables should use snake_case (n_samples rather than nsamples). Avoid single-character variable names, unless inside a comprehension or generator.

We (mostly) follow NumPy style for docstrings#

In most cases you can look at existing docstrings to figure out how yours should be formatted. If you can’t find a relevant example, consult the Numpy docstring style guidelines for examples of more complicated formatting such as embedding example code, citing references, or including rendered mathematics.

Attribution#

By contributing to this project, you agree that your contributions will be licensed under the Apache License along with the rest of the project.

Thank you for considering contributing to the nuplane. Your involvement helps make this project even better!