These are notes for developers working on osxphotos. They're mostly to help me remember how to do things in this repo but will be useful to anyone who wants to contribute to osxphotos.
- Clone the repo:
git clone [email protected]:RhetTbull/osxphotos.git
- Create a virtual environment and activate it:
python3 -m venv venv
thensource venv/bin/activate
. I use pyenv with pyenv-virtualenv to manage my virtual environments - Install the requirements:
python3 -m pip install -r requirements.txt
- Install the development requirements:
python3 -m pip install -r dev_requirements.txt
- Install osxphotos:
python3 -m pip install -e .
- Run all tests:
pytest
See the test README.md for more information on running tests.
If you want to contribute to osxphotos, please open a pull request. Here's how to do it:
- Fork the repo on GitHub
- Clone your fork:
git clone [email protected]:YOUR_USERNAME/osxphotos.git
- Create a virtual environment and install osxphotos as described above
- Create a branch for your changes:
git checkout -b my_branch
- Make your changes
- Add tests for your changes
- Run the tests:
pytest
- Format the code:
isort .
thenblack .
- Update the README.md and other files as needed
- Add your changes using
git add
- Commit your changes:
git commit -m "My changes description"
- Push your changes to your fork:
git push origin my_branch
- Open a pull request on GitHub
Note: Do not do this unless you are releasing a new version of osxphotos. This should not be run for normal pull requests. In general, only the maintainer should run the build script.
- Run
./build.sh
to run the build script.
cogapp is used to update the README.md and other files. cog will be called from the build script as needed.