refactor: extract obikindex crate and remove deprecated CLI commands
Extracted core indexing logic, state tracking, and metadata management into a new `obikindex` crate. Refactored the `index` and `unitig` commands to leverage the `KmerIndex` abstraction and state-driven pipeline transitions. Removed obsolete CLI subcommands (`count`, `fasta`, `longtig`, `partition`) and their associated pipeline steps. Updated FASTA writing utilities for single-line output and deterministic identifiers, and refreshed workspace dependencies.
This commit is contained in:
@@ -1,4 +1,28 @@
|
||||
## Dans OBILayeredMap
|
||||
## Chose à vérifier suite à la commande index
|
||||
|
||||
- Est-ce que CachelineEfVec est vraiment justifier dans notre cas. vu les contraintes sur la distribution des valeurs imposées par CachelineEfVec en terme d'ordre, de grandeur et de dispersion ?
|
||||
- Il semble que le count de kmer soit stocké, ce qui doit-être une possibilité pas une obligation.
|
||||
- partition.meta ne devrait plus exister
|
||||
- les spectrums globaux devrait etre identifier par génome
|
||||
- regrouper dans un sous-dossier spectrums à la racine de l'index avec un nom basé sur le génome
|
||||
- les spectrum patiels ont-ils vocation à être conserver ?
|
||||
- l'étape de déreplication dure quasiment autant de temps que le comptage mais ne laisse aucune trace de progression à l'utilisateur
|
||||
|
||||
## commandes à ajouter
|
||||
|
||||
- merge : pour construire un index à partir d'index existants
|
||||
- deux modes : count et presence/absence. count exige que tous les index mergés soient déjà en mode count. mode presence/absence par defaut. Si passage de mode count à mode presence/absence, par defaut presence = count >= 1. Possibilité de spécifier un seuil personnalisé.
|
||||
|
||||
- filter : produit un nouvel index filtré à partir d'un index existant en verifiant que les kmer présents dans le nouvel index respectent les critères de filtrage spécifiés
|
||||
- quorum de presence en fraction-(min/max) du nombre de génomes, en nombre-(min/max) de génomes, si mode count la présence peut être défini par un seuil personnalisé minimum et maximum
|
||||
|
||||
- aggregate : aggrege toutes les colonnes d'une matrice d'index en une seule colonne.
|
||||
|
||||
- query : scan un fichier de sequences et retourne pour chaque sequence quels kmer sont présents dans l'index et dans quel genomes
|
||||
|
||||
- distance : calcule la matrice de distance entre les genomes
|
||||
- proposer une option pour chaque distance à calculer
|
||||
- un possibité de récuperer la matrice des kmer communs
|
||||
- un possibité de calculer l'arbre nj
|
||||
- les matrices sont sauvegardées en CSV
|
||||
- les arbres NJ sont sauvegardés en Newick avec les longeurs de branche
|
||||
|
||||
- dump : une table csv de l'index avec les kmer et les genomes associés en mode count ou presence/absence avec une option pour forcer le mode presence/absence meme si l'index est en mode count. Par defaut, le mode count est utilisé pour les index en mode count et le mode presence/absence pour les index en mode presence/absence.
|
||||
|
||||
Reference in New Issue
Block a user