Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE] Skeleton for appu2, includes logging, cli mgmt and config var management #87

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

davidpoblador
Copy link

@davidpoblador davidpoblador commented Feb 2, 2025

DO NOT MERGE

This pull request includes several changes to the appu project, focusing on adding new configuration files, updating the README.md, and setting up the new appu2 version with its dependencies and logging system.

Configuration and Setup:

  • Added .mise.toml to manage virtual environments automatically.
  • Added .pre-commit-config.yaml for pre-commit hooks using ruff for linting and formatting.

Documentation Updates:

  • Updated README.md with instructions for the new appu2 version, including pre-requisites, installation steps, and usage. [1] [2] [3] [4] [5] [6]

Project Initialization:

  • Created pyproject.toml for the appu2 project, specifying project metadata, dependencies, and development tools configuration.

Application Code:

  • Added CLI entry point in src/appu2/cli.py using typer with a test command and logging setup.
  • Defined application settings in src/appu2/config.py using pydantic.
  • Implemented logging configuration in src/appu2/logging.py using loguru.DO NOT MERGE

This pull request introduces a new project setup for the appu2 toolkit, which includes configuration files, a CLI interface, logging setup, and project settings. The most important changes include the addition of configuration files, the implementation of a CLI using Typer, and the setup of logging with Loguru.

Project Configuration:

  • .mise.toml: Added project settings for automatic virtual environment management.
  • pyproject.toml: Defined project metadata, dependencies, and scripts for the appu2 toolkit.

CLI Implementation:

  • src/appu2/cli.py: Implemented a CLI using Typer, including a test command and logging level option.

Logging Setup:

  • src/appu2/logging.py: Set up logging using Loguru, including a custom log format and interception of standard logging.

Project Settings:

  • src/appu2/config.py: Added project settings using Pydantic, including a debug mode and environment file configuration.

@ifosch
Copy link
Member

ifosch commented Feb 2, 2025

Looks nice to me! GJ! Thanks!
Is it correct assuming we want all the different steps in the publishing pipeline to be commands of this new appu tool?
If so, I wonder if it's ok to keep the name to just appu, as much as possible. If I understand this PR right, there should not be any conflict.

@ifosch
Copy link
Member

ifosch commented Mar 8, 2025

@davidpoblador I'm trying to split this into parts, some of them directly in main. I'm doing that on the same revamp branch, rebasing everything in the remote, so you'll need to update your local branch.

@ifosch ifosch force-pushed the revamp branch 2 times, most recently from 174485d to dc09a55 Compare March 9, 2025 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants