Giter Club home page Giter Club logo

capsula's People

Contributors

github-actions[bot] avatar renovate[bot] avatar shunichironomura avatar

Watchers

 avatar

capsula's Issues

Improve release process

Capsula uses tbump to bump the version and release to GitHub and to PyPI. Because the Git tag and the GitHub release are not in the main branch, it may lead to inconsistency with the main branch (although very unlikely).

GitHub Action could be a better option.

Add older Python versions

Capsula currently supports only Python 3.11. We should add support for Python 3.8-3.10. (Python 3.7 and older reached end-of-life. See Status of Python Versions.)

Tasks (draft):

  • Add typing-extension dependency
  • Add tox test

Roadmap

Roadmap

This issue is for brainstorming (not promising) on Capsula's roadmap.

Capsula has three core functions:

  1. Context capture
  2. Execution monitoring
  3. Context reproduction

Context capture

  • Python version
  • Platform
  • Python dependencies and their versions
  • Output of a command
  • Environment variables (that are explicitly specified)
  • Git commit hash
  • Git diff (if the dirty state is allowed. as a patch file)
  • Hash of specified files
  • Add .gitignore file in the vault subdirectory
  • Allow to add a custom context item

Execution monitoring

General

  • Execution start time, end time, and duration
  • Working directory
  • Custom callback (e.g., Slack notification on completion)
  • Hash of output files

CLI

  • Comment line arguments
  • stdout and stderr
  • Exit code

Decorator

  • Python function name, file, and line number
  • Python function arguments
  • Custom key-value pairs (added inside the function to run)
  • Raised exception
  • Logging output
  • Custom logging insertion using module-level function

Context reproduction

  • Git checkout and patch apply
  • Checks hash of specified files

Miscellaneous

  • capsula init command to generate capsula.toml file
  • #109
  • #15
  • #28
  • capsula hash command to get the hash of a file

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/bump-version.yml
  • actions/checkout v4
  • actions/setup-python v5
  • EndBug/add-and-commit v9
  • actions/checkout v4
.github/workflows/release.yml
  • actions/checkout v4
  • actions/setup-python v5
  • actions/checkout v4
  • actions/setup-python v5
  • actions/checkout v4
  • actions/setup-python v5
.github/workflows/test.yml
  • actions/checkout v4
  • chartboost/ruff-action v1
  • actions/checkout v4
  • actions/setup-python v5
  • abatilo/actions-poetry v2
  • actions/checkout v4
  • actions/setup-python v5
  • actions/upload-artifact v3
  • actions/checkout v4
  • actions/setup-python v5
  • actions/download-artifact v3
  • EndBug/add-and-commit v9
poetry
pyproject.toml
  • python >=3.8
  • click >=8.1.3
  • pydantic >=2.0.2
  • py-cpuinfo >=9.0.0
  • gitpython >=3.1.31
  • tomli >=2.0.1
  • typing-extensions >=4.7.1
  • ruff >=0.0.275
  • black >=23.3.0
  • mypy >=1.4.0
  • pre-commit >=3.3.3
  • pytest >=7.4.0
  • coverage >=7.2.7
  • genbadge >=1.1.0
  • tomli-w >=1.0.0
  • numpy >=1.24.0
  • matplotlib >=3.7.1

  • Check this box to trigger a request for Renovate to run again on this repository

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.