Skip to content

Latest commit

 

History

History
83 lines (59 loc) · 2.25 KB

File metadata and controls

83 lines (59 loc) · 2.25 KB

Contributing

Thanks for you interest in contributing to this project.

Main tools used in this repository:

Tool Description
astral/uv Python project and package manager
go-task/task Task Runner
j178/prek pre-commit hook runner
astral/ruff Formatting/Linting/LSP
astral/ty Type Checking

AI Policy

Do NOT use AI to create, generate or draft any direct communication such as Issues, Comments, PR Bodies, etc.

You MUST fully understand and be able to explain what your changes do and how they interact with the codebase.

Development Setup

Clone the repository:

git clone https://github.com/rtuszik/photon-docker
cd photon-docker

Dependencies

The Brewfile can be used in order to install Task and uv with Homebrew on MacOS and Linux

brew bundle

On Windows or for other install methods, refer to the official documentation:

Install Project

# installs python project with uv with dev dependencies and hooks
task install

Making Changes

  1. Create a feature branch from dev.
  2. Make your changes.
  3. Test your changes by building and running the Docker image:
    task rebuild
    Verify that Photon starts successfully and OpenSearch is up.
  4. Run checks:
    task check
    task test
  5. Commit and push to your fork.
  6. Open a pull request to the upstream dev branch.

Code Quality

  • All code must pass checks done through task check.
  • All changes must be tested with Docker.
  • Avoid unnecessary comments in the code.

To list available tasks:

task

Pull Requests

  • Target the dev branch
  • Provide a clear description of changes
  • Ensure all checks pass before requesting review