Coder Social home page Coder Social logo

thoth-station / template-project Goto Github PK

View Code? Open in Web Editor NEW
7.0 8.0 9.0 86 KB

This is a Template for any Python based project

License: GNU General Public License v3.0

Python 100.00%
thoth aicoe template python3 zuul artificial-intelligence hacktoberfest

template-project's Introduction

template-project

This is a Template for any Python based project, it contains what Project Thoth and the AI CoE need:

  1. GitHub defaults and Templates for issues.
  2. Configuration for Coala and Black (code formating) are done using prow with pre-commit and mypy.
  3. Zuul is no longer suppported. Instead AICOE-CI is used for basic configuration.
  4. We have a public service configuration now accessible for everyone.
  5. If you are writing a Python module, Kebechet could manage the releases of your packages for you.
  6. If credentials are provided, Python module releases could be published to PyPI by Kebechet.

Dependencies should be managed using pipenv (Pipfile, and the Pipfile.lock could be created by thamos advise), pip3 and a requirements.txt files could be used.

template-project's People

Contributors

codificat avatar fridex avatar goern avatar harshad16 avatar mayacostantini avatar saisankargochhayat avatar sesheta avatar tlegen-k avatar vannten avatar xtuchyna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

template-project's Issues

More options for `This should yield a new module release`

<!-- If this change modifies the behavior of the module, specify that it should yield a new minor release. -->

Is the requirement for automation reasons or just a reference for repository maintainers? Nevertheless, wouldn't it be better to also include something like:

<!-- If this change modifies the behavior of the module, leave one of the following options -->
- patch
- minor
- major

?

No dependency management found for the ubi8 environment

No dependency management found for the ubi8 environment. If you want
to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pipenv install --skip-lock --code ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

/kind feature
/priority important-soon

No dependency management found

No dependency management found for this repository. If you want to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pipenv install --skip-lock --code ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

No dependency management found for the ubi8 environment

No dependency management found for the ubi8 environment. If you want
to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pip install --upgrade --user thamos
$ thamos discover --src-path ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

/kind feature
/priority important-soon

No dependency management found

No dependency management found for this repository. If you want to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pipenv install --skip-lock --code ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

`pre-commit` configuration and maintanance throughout `thoth-station`

Problem 1
pre-commit configuration tends to have different forms and norms throughout the projects in thoth-station
Sometimes it is not clear what kind of hooks should repository have and which should be avoided.

P1 Proposal 1
Create standard document with directions on which hooks should maintainer enable/disable according to the project specification and its needs.

P1 Proposal 2
Add all of the possible default hooks to the template project pre-commit configuration file with comments and description similar to those in the standard document. Maintainer can just ignore all of the hooks repository does not need

Problem 2
Right now, the pre-commit-config.yaml is left to be maintained by manual update of repository maintainers.

P2 Proposal
Consider adding new pre-commit update manager to https://github.com/thoth-station/kebechet/tree/master/kebechet/managers that would handle the issue the same as update manager (or possibly make it a part of the update manager).

/kind question
@thoth-station/devs

No dependency management found

No dependency management found for this repository. If you want to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pipenv install --skip-lock --code ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

"

name = "TODO"
description = "TODO"
readme = "README.rst"
requires-python = ">=3.8"
license = {file = "LICENSE"}


This issue was generated by todo based on a TODO comment in c1e52a3. It's been assigned to @goern because they committed the code.

Implement a pre-commit hook that checks for Pipfile/requirements.txt consistency

Is your feature request related to a problem? Please describe.

To avoid issues like this one:

thoth-station/adviser#1572 (comment)
thoth-station/storages#2101

we could develop a pre-commit hook that checks the consistency of these two files. Meaning - requirements in requirements.txt and Pipfile match.

Describe the solution you'd like

Develop a pre-commit hook to check the consistency of requirements.txt and Pipifle.

Describe alternatives you've considered

We have a bot for this - see https://github.com/thoth-station/kebechet/tree/master/kebechet/managers/pipfile_requirements This however, does not work well on PRs. It's more natural to gatet these type of errors in the CI on pull requests. The core logic of kebechet manager can be reused.

No dependency management found

No dependency management found for this repository. If you want to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:"

$ pipenv install --skip-lock --code ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

No dependency management found for the ubi8 environment

No dependency management found for the ubi8 environment. If you want
to keep your dependencies managed, please submit Pipfile or requirements.in or requirements-dev.in file.

To generate a Pipfile, use:

$ pip install --upgrade --user thamos
$ thamos discover --src-path ./
$ git add Pipfile
$ git commit -m 'Add Pipfile for dependency management'

Make sure your Pipfile or requirements.in or requirements-dev.in is placed in the root of your Git repository.

/kind feature
/priority important-soon

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.