Skip to content
Snippets Groups Projects
Commit a098ab70 authored by Remi  PLANEL's avatar Remi PLANEL
Browse files

simple linter

parent 482eebba
No related branches found
No related tags found
2 merge requests!122Front matter linter,!93Resolve "front-matter linter"
Pipeline #116505 passed
......@@ -4,10 +4,13 @@ from typing_extensions import Annotated
from df_wiki_cli.articles import fetch_articles
from df_wiki_cli.pfam import fetch_pfam
from df_wiki_cli.meilisearch import main
from df_wiki_cli.wiki import main as wikiMain
# from df_wiki_cli.ms import main as ms_main
app = typer.Typer()
app.add_typer(main.app, name="meilisearch")
app.add_typer(wikiMain.app, name="wiki")
@app.callback()
......
import typer
from typing_extensions import Annotated
from typing import Optional, List
from pathlib import Path
from pydantic import BaseModel
from pydantic_yaml import parse_yaml_raw_as, to_yaml_str
import frontmatter
from enum import Enum
app = typer.Typer()
class LayoutEnum(str, Enum):
article = "article"
db = "db"
class TableArticle(BaseModel):
doi: str
class TableColumns(BaseModel):
article: TableArticle
Sensor: str
Activator: str
Effector: str
PFAM: str
class RelevantAbstract(BaseModel):
doi: str
class FrontMatter(BaseModel):
title: str
layout: LayoutEnum
tableColumns: TableColumns
relevantAbstracts: List[RelevantAbstract]
contributors: List[str]
@app.command()
def lint(
file: Annotated[
Path,
typer.Option(
exists=False,
file_okay=True,
writable=True,
),
],
):
with open(file) as f:
metadata, _ = frontmatter.parse(f.read())
# print(metadata)
FrontMatter.model_validate(metadata)
# print(val)
This diff is collapsed.
......@@ -15,6 +15,8 @@ pandas = "^2.1.2"
requests = "^2.31.0"
meilisearch = "^0.28.4"
pydantic = "^2.4.2"
pydantic-yaml = "^1.2.0"
python-frontmatter = "^1.0.1"
[tool.poetry.group.dev.dependencies]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment