Skip to content

codecov/shared

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

91ab80e · Mar 12, 2024
Nov 2, 2020
Feb 28, 2024
Feb 28, 2024
Mar 12, 2024
Mar 11, 2024
Jun 11, 2021
Nov 29, 2023
Oct 11, 2023
Apr 29, 2021
Feb 27, 2024
Oct 28, 2020
Feb 28, 2024
Feb 28, 2024
Feb 27, 2024
Jun 9, 2023
Jun 9, 2023
Feb 28, 2024
Oct 28, 2020
Nov 29, 2023
Nov 29, 2023
Nov 8, 2021
Feb 28, 2024

Repository files navigation

shared

Shared CI codecov

Shared is a place for code that is common to multiple python repositories on codecov.

We believe that everyone should have access to quality software (like Sentry), that’s why we have always offered Codecov for free to open source maintainers.

By making our code public, we’re not only joining the community that’s supported us from the start — but also want to make sure that every developer can contribute to and build on the Codecov experience.

How does shared get into production

shared is a repository of its own, so it needs to be installed as a dependency on the repositories that might use it.

The current repositories using shared are codecov/worker and codecov/codecov-api.

Whenever getting new code into shared, one needs to wait for a new version to be released (or release it themselves, see below), and update the requirements.in file in codecov/worker and codecov/codecov-api to use the newly released version of shared.

Getting started

To get started, ensure that you have:

  1. Docker installed on your machine
  2. Run
docker compose up

Releasing a new version on shared

To release a new version, you need to:

  1. Check what the next version should be.
  2. Create a new PR:
  1. Merge that PR
  2. Create a new release on https://github.com/codecov/shared/releases/new

Running tests

In order to run tests from within your docker container, run:

make test

Managing shared dependencies

As a normal python package, shared can include dependencies of its own.

Updating them should be done at the setup.py file.

Remember to add dependencies as loosely as possible. Only make sure to include what the minimum version is, and only include a maximum version if you do know that higher versions will break.

Remember that multiple packages, on different contexts of their own requirements, will have to install this. So keeping the requirements loose allow them to avoid version clashes and eases upgrades whenever they need to.

Contributing

This repository, like all of Codecov's repositories, strives to follow our general Contributing guidlines. If you're considering making a contribution to this repository, we encourage review of our Contributing guidelines first.