Skip to main content

A small example package

Project description

M1-2022-git

Introduction

This repository is a fork from the previous repository. The bugs in the converter have been fixed and now we want to publish our work as a publicly available python package.

Getting started

You should be working from your own repository that is a fork of M1-2022-git-workflow. In order to run this project, you will have to follow these steps.

  1. Clone this project
  2. move into the project folder
cd M1-2022-git-workflow
  1. Set up a virtual environment
  • Create the virtual environment
python -m venv myvenv
  • Activate venv
. venv/bin/activate
  1. Install pytest
pip install -U pytest
  1. Execute main script
python main.py

Instructions

Merge feature branch into dev

Now that the converter has no more bugs, we want to merge our branch feature into the dev branch. We will do a pull request (on your own repo). On GitHub, go to the "Pull requests tab" and click "New pull request". Select base and compare. Remember : we want to merge decimal-binary-converter into dev. Then, Create the pull request. Add some description of the work you have done and publish the Pull Request.

Note : We could have just merge decimal-binary-converter into dev from the command line. However, when working on a real project, you probably won't have the rights to do so. Remember : dev is a public branch. So all the work going down there should be carefully reviewed and tested.

Publish your work

We now have an awesome binary/decimal two ways converter ! It's time to publish it so the rest of the world can enjoy it ! We will publish it on PyPI (Python Package Index) which is a public repository of softwares for Python.

  1. First, you have to create an account on Pypi.org
  2. Then, in your repository, you will find a .github directory
  3. Inside this directory, you will find .yml files that defines workflows (using GitHub actions)
  4. Open the yml files and take time to understand them. Do not hesitate to ask the teacher about them

Hands on !

  1. We want to create a workflow that will, on publish, test our code and if tests succeed, then publish our package on PyPI
  2. In GitHub, click on the Actions tab, then click on new workflow
  3. Choose among the suggestions the template that best suits your use-case and click Configure
  4. You may find some useful informations in the Python documentation
  5. When creating a release on GitHub, do not forget to create a tag corresponding to that release

Pull request

  1. Once the workflow is setup and tested (you have published your package using it) you can open a pull request to the original repository

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paul_mathieu_package-0.0.1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paul_mathieu_package-0.0.1-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file paul_mathieu_package-0.0.1.tar.gz.

File metadata

  • Download URL: paul_mathieu_package-0.0.1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.14

File hashes

Hashes for paul_mathieu_package-0.0.1.tar.gz
Algorithm Hash digest
SHA256 b72c79c6e9872814c5d21231bdd04567c54034f073042f722e3c9bfe51e853d0
MD5 23caca61c34232f8dcb16230d8209317
BLAKE2b-256 74e8ea0daac6736f39d165f700a545551a299c74eb8c307c9c372243173dc5e7

See more details on using hashes here.

File details

Details for the file paul_mathieu_package-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for paul_mathieu_package-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 88a5fc00a58c9794f1c5f13bd105b2e7e167a60933162e078e2d85fd5a7216e6
MD5 4ae1c16036d86dbed0c87b4285030cd7
BLAKE2b-256 d9141a6495b20ec041a1aecd98b340db34b31a1168e255a169e458b51630c428

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page