Structure et configuration du projet Tabulator-py

Ce document détaille la structure du projet tabulator-py, ses fichiers principaux et ses configurations.

Structure des répertoires

Le projet tabulator-py est organisé comme suit :


tabulator-py/
├── .github/
│   └── workflows/
├── docs/
├── pytabulator/
│   ├── src/
│   └── tests/
├── .gitattributes
├── .gitignore
├── LICENSE
├── README.md
├── _table_options.txt
├── mkdocs.yml
├── package-lock.json
├── package.json
├── poetry.lock
├── pyproject.toml
└── pytest.ini
   

Description des répertoires et fichiers :

  • .github/workflows/ : Contient les configurations des workflows GitHub Actions pour l'automatisation.
  • docs/ : Regroupe la documentation du projet.
  • pytabulator/ : Le cœur du code source et des tests.
    • src/ : Le code source principal de la bibliothèque.
    • tests/ : Les scripts de tests unitaires et d'intégration.
  • .gitattributes : Définit des attributs pour certains chemins du dépôt Git.
  • .gitignore : Spécifie les fichiers et répertoires à ignorer par Git.
  • LICENSE : Le fichier de licence sous lequel le projet est distribué.
  • README.md : Une descirption générale du projet, son objectif et comment l'utiliser.
  • _table_options.txt : Un fichier d'options spécifiques pour la manipulation des tables.
  • mkdocs.yml : Configuration pour MkDocs, un générateur de documentation statique.
  • package-lock.json et package.json : Fichiers de gestion des dépendances Node.js (npm).
  • poetry.lock et pyproject.toml : Fichiers de gestion des dépendances et de configuraton du projet avec Poetry.
  • pytest.ini : Configuration pour le framework de test Pytest.

Point d'entrée du projet

Le fichier exécutable principal du projet est pytabulator/__main__.py. Il sert de point d'ancrage pour lancer l'application.

Extrait du fichier d'entrée :


from pytabulator import main as app_entrypoint

if __name__ == "__main__":
   app_entrypoint()
   

La fonction app_entrypoint() est le cœur de l'initialisation et du lancemetn de l'application Tabulator-py.

Configuration du projet

Plusieurs fichiers de configuration définissent le comportement et la gestion du projet.

Configuration avec Poetry (pyproject.toml)

Ce fichier gère les métadonnées du projet, les dépendances et les outils de build.


[tool.poetry]
name = "tabulator"
version = "1.4.1"
description = "A library to read tabular data from various sources and formats."
authors = ["Frictionless Data <info>"]
license = "MIT"

[tool.poetry.dependencies]
python = "^3.6"
pandas = "^1.0"

[tool.poetry.dev-dependencies]
pytest = "^5.2"

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
   </info>

Configuration des tests avec Pytest (pytest.ini)

Ce fichier configure l'exécution des tests via Pytest, notamment pour la couverture de code.


[pytest]
addopts = --cov=tabulator --cov-report=term-missing
testpaths = tests
   

Configuration de la documentation avec MkDocs (mkdocs.yml)

Ce fichier définit la structure et le contenu de la documentation générée par MkDocs.


site_name: Tabulator-py Documentation
nav:
 - Home: index.md
 - Installation: installation.md
 - Usage: usage.md
 - API Reference: api.md
   

Ces fichiers de configuration sont essentiels pour gérer les dépendances, exécuter les tests et générer la documentation du projet Tabulator-py.

Étiquettes: tabulator-py Python gestion de dépendances poetry pytest

Publié le 15 juillet à 09h08