vidjil issueshttps://gitlab.inria.fr/vidjil/vidjil/-/issues2018-07-06T12:39:42+02:00https://gitlab.inria.fr/vidjil/vidjil/-/issues/3343Ne pas indiquer la première germline pour les séquences avec zéro kmers2018-07-06T12:39:42+02:00Mathieu GiraudNe pas indiquer la première germline pour les séquences avec zéro kmers@mikael\-s, https://gitlab.inria.fr/vidjil/vidjil/issues/3338#note_103270:
```
>H7P7O:01381:02138 ! @10 @1 IGH UNSEG too few V/J 9.649895e+06 9.465760e+06/1.841356e+05
TGGGACCAGGGTG
```
> je ne comprends pas comment on trouve de l'I...@mikael\-s, https://gitlab.inria.fr/vidjil/vidjil/issues/3338#note_103270:
```
>H7P7O:01381:02138 ! @10 @1 IGH UNSEG too few V/J 9.649895e+06 9.465760e+06/1.841356e+05
TGGGACCAGGGTG
```
> je ne comprends pas comment on trouve de l'IGH dedans
C'est "Always remember the first kseg" : https://gitlab.inria.fr/vidjil/vidjil/blob/dev/algo/core/segment.cpp#L624 et f62ab84ahttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3345La redirection de /vidjil/default/index ne fonctionne pas toujours comme prévu2018-07-06T11:52:48+02:00Ryan HerbertLa redirection de /vidjil/default/index ne fonctionne pas toujours comme prévuDans [views/default/index.html](https://gitlab.inria.fr/vidjil/vidjil/blob/dev/server/web2py/applications/vidjil/views/default/index.html) nous redirigeons l'utilisateur vers le client. L'utilité étant de permettre à l'utilisateur d'acce...Dans [views/default/index.html](https://gitlab.inria.fr/vidjil/vidjil/blob/dev/server/web2py/applications/vidjil/views/default/index.html) nous redirigeons l'utilisateur vers le client. L'utilité étant de permettre à l'utilisateur d'accepter un certificat ssl `self-signed`. Or nous forçons le passage à HTTP pour cette redirection. Ceci ne pose pas de problèmes quand nous utilisons des ports implicites, mais l'utilisation de ports autres que ceux par défaut provoque une erreur `400 Bad Request`
Bug found by @eodushttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3267Filtrage des germlines : le désactiver pour les "petites" germlines ?2018-07-06T11:10:44+02:00Mathieu GiraudFiltrage des germlines : le désactiver pour les "petites" germlines ?Faudrait-il quelque chose pour désactiver le filtrage sur certaines germlines ?
- Un truc en dur qui le ferait que pour les `IGHV` (et éventuellement d'autres pour lesquels on voit une accélération) ? Cela peut être largement suffisa...Faudrait-il quelque chose pour désactiver le filtrage sur certaines germlines ?
- Un truc en dur qui le ferait que pour les `IGHV` (et éventuellement d'autres pour lesquels on voit une accélération) ? Cela peut être largement suffisant dans un premier temps.
- Ou bien plus un truc plus fin, automatique avec la taille de la germline ?
(quand c'est désactivé, pas de construction de l'automate comme dans #3268).
cc @boreechttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3113Performance highlights feature-c/segmenter_highlights2018-07-05T09:37:49+02:00Ryan HerbertPerformance highlights feature-c/segmenter_highlightsPour logger un peu les résultats de mes tests.
Performances de `highlightToString`:
- Sans highlight seq (comportement avant refactor): 0.5-2 ms/clone
- Avec highlight seq (4 highlights à séquence): 5-15 ms/clone
Si on aligne les séquen...Pour logger un peu les résultats de mes tests.
Performances de `highlightToString`:
- Sans highlight seq (comportement avant refactor): 0.5-2 ms/clone
- Avec highlight seq (4 highlights à séquence): 5-15 ms/clone
Si on aligne les séquences, on passe à envviron 30 ms/clone
https://gitlab.inria.fr/vidjil/vidjil/-/issues/2817Export SVG (plot) est incorrect en multi-locus sur une vue par locus2018-07-05T09:23:10+02:00Mikaël SalsonExport SVG (plot) est incorrect en multi-locus sur une vue par locusLorsqu'on est sur un patient avec plusieurs locus ([exemple](http://app.vidjil.org/browser/?set=25736&config=25)), le graph, par défaut, distingue les clones du locus actif et des autres locus.
Or l'export SVG du plot ne conserve pas ce...Lorsqu'on est sur un patient avec plusieurs locus ([exemple](http://app.vidjil.org/browser/?set=25736&config=25)), le graph, par défaut, distingue les clones du locus actif et des autres locus.
Or l'export SVG du plot ne conserve pas cette séparation et les clones des autres locus viennent squatter sur le plot, ce qui le rend en partie illisible.https://gitlab.inria.fr/vidjil/vidjil/-/issues/3323Ne pas accepter d'ajouter un sample avec un seul fichier quand le pre-process...2018-07-04T19:30:07+02:00Mathieu GiraudNe pas accepter d'ajouter un sample avec un seul fichier quand le pre-process en demande deuxOn peut actuellement valider un sample avec un seul fichier, même quand il en faudrait deux.
Au moins un nouvel utilisateur (set 27878 sur app) a ainsi sélectionné "Merge paired-end" mais a uploadé séparément R1 et R2.
Le javascript dev...On peut actuellement valider un sample avec un seul fichier, même quand il en faudrait deux.
Au moins un nouvel utilisateur (set 27878 sur app) a ainsi sélectionné "Merge paired-end" mais a uploadé séparément R1 et R2.
Le javascript devrait interdire cela.
cc @RyanHerbhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3318Quel mode de DP pour les gènes V et J ?2018-07-03T20:09:09+02:00Mathieu GiraudQuel mode de DP pour les gènes V et J ?Actuellement c’est `LocalEndWithSomeDeletions` (c’est à dire `LeftLocal-RightSemiGlobalEndWithSomeDeletions`).
Mais j’ai l’impression qu’on souhaiterait plutôt un `LeftSemiGlobal-RightSemiGlobalEndWithSomeDeletions` (on veut que toute l...Actuellement c’est `LocalEndWithSomeDeletions` (c’est à dire `LeftLocal-RightSemiGlobalEndWithSomeDeletions`).
Mais j’ai l’impression qu’on souhaiterait plutôt un `LeftSemiGlobal-RightSemiGlobalEndWithSomeDeletions` (on veut que toute la partie gauche du read soit retrouvée dans le V). À vrai dire je pensais que c’était déjà le cas. À creuser.
Notons que, si V1 est meilleur que V2 en raison de ce qui est *au début* du V (ou dans l’upstream), le bonus des match de V1 joue déjà même sans cela : dans la plupart des cas on doit donner actuellement la bonne réponse, mais on peut certainement construire des exemples où. Cela va devenir important dès que l’up/downstream jouera plus #3008.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2935Mettre à jour nlohmman json réguilèrement2018-07-03T19:35:06+02:00Mathieu GiraudMettre à jour nlohmman json réguilèrementFait en septembre 2017, 051f32597c, #2615Fait en septembre 2017, 051f32597c, #2615json-export2018-03-01https://gitlab.inria.fr/vidjil/vidjil/-/issues/3278-z 10000 depuis vidjil-algo2018-07-02T17:01:49+02:00Mathieu Giraud-z 10000 depuis vidjil-algoSuite à ~"cpp\-filter\-fine", si on sort plus de clones :
- #3269
- idem pour la sortie standard, pas de clones au-delà d'un certain nombre #3302
- au passage #2120Suite à ~"cpp\-filter\-fine", si on sort plus de clones :
- #3269
- idem pour la sortie standard, pas de clones au-delà d'un certain nombre #3302
- au passage #2120https://gitlab.inria.fr/vidjil/vidjil/-/issues/3317check_and_resolve_overlaps(): utiliser LocalEndWithSomeDeletions plutôt que ...2018-06-28T19:54:17+02:00Mathieu Giraudcheck_and_resolve_overlaps(): utiliser LocalEndWithSomeDeletions plutôt que LocalUtile dès que le V ou le J est beaucoup déleté.
Voir #3315. Probablement mêmes exemples que #3316.Utile dès que le V ou le J est beaucoup déleté.
Voir #3315. Probablement mêmes exemples que #3316.https://gitlab.inria.fr/vidjil/vidjil/-/issues/3319Renommer les modes de DP pour être plus systématique et précis2018-06-28T10:53:27+02:00Mathieu GiraudRenommer les modes de DP pour être plus systématique et précisVoir #3315, #3317.
Soit on garde les appellations « Global » / …, en spécifiant Left/Right dès que nécessaire (Local LeftGlobal-RightSemiGlobal),
Soit on est plus explicite (et ce n'est pas que du ~bikeshedding, mais aussi une manière d...Voir #3315, #3317.
Soit on garde les appellations « Global » / …, en spécifiant Left/Right dès que nécessaire (Local LeftGlobal-RightSemiGlobal),
Soit on est plus explicite (et ce n'est pas que du ~bikeshedding, mais aussi une manière de ~"dev\-refactor" le code pour que ce soit plus clair) :
- Global: `startX = Complete, endX = Complete, startY = Complete, endY = Complete`
- Local:`startX = Partial, endX = Partial, startY = Partial, endY = Partial`
- SemiGlobal: `startX = Complete, endX = Complete, startY = Partial, endY = Partial`
- (actuellement LocalEndWithSomeDeletions) LeftLocal-RightGlobalEndWithSomeDeletions: `startX = Partial, endX = Partial, startY = Partial, endY = CompleteWithSomeDeletions`
- et #3318: `startX = Complete, endX = Partial, startY = Partial, endY = CompleteWithSomeDeletions`
(on pourrait trouver un nom plus sémantique, du genre `ReadAgainstGermline`)
Bref `{start, end}{X,Y} = (Complete / CompleteWithDeletionsEnd / Partial)` qui permettrait de faire n’importe quel alignement sur ces 3^4 modes.
En l’écrivant, je me dis que c’est la bonne solution : avoir ce qu’il faut de générique, ce qui aidera aussi à la lisibilité de `dynprog.cpp`, quitte à maintenir les alias `Global` / `Local` / `SemiGlobal` (et `ReadAgainstGermline`) pour les situations les plus courantes.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2904Dynprog : Une mauvaise résolution de l'overlap conserve une erreur en fin de ...2018-06-28T10:42:59+02:00Mikaël SalsonDynprog : Une mauvaise résolution de l'overlap conserve une erreur en fin de gèneEn corrigeant des tests pour #2851 je tombe là-dessus :
```
# read: GTGTATCTCTGTGCCAGCAGCTTTAGCACAGATACGCAGTATTTTGGCCC
# ||||||||||||||||||||||| ||||||||||||||||||||
# TRBV7-2*02 GTGTATCTCTGTGCCAGCAGCTTAGC
# TRBJ2-3*01...En corrigeant des tests pour #2851 je tombe là-dessus :
```
# read: GTGTATCTCTGTGCCAGCAGCTTTAGCACAGATACGCAGTATTTTGGCCC
# ||||||||||||||||||||||| ||||||||||||||||||||
# TRBV7-2*02 GTGTATCTCTGTGCCAGCAGCTTAGC
# TRBJ2-3*01 AGCACAGATACGCAGTATTT
```
En interdisant les homopolymères (coût par défaut à l'infini), Vidjil me sort quand même un `TRBV7-2*02 2/0/0 TRBJ2-3*01`. Pourquoi Vidjil aligne-t-il le troisième T dans le V ?
Comment est-il possible de débugger cela pour voir ce qui l'a amené à faire ce choix ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/2750Blinder les tests sur les options2018-06-27T19:29:36+02:00Mathieu GiraudBlinder les tests sur les optionsAvant de faire #2732, il faudrait s'assurer que nos tests couvrent le plus d'options possibles, pour éviter des choses type #2748, ou pire sur une option réellement utilisée.
Voir aussi #1696.Avant de faire #2732, il faudrait s'assurer que nos tests couvrent le plus d'options possibles, pour éviter des choses type #2748, ou pire sur une option réellement utilisée.
Voir aussi #1696.Algo -- Importanthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2508Vh pas trouvé, uniquement Dh-Jh2018-06-27T18:53:42+02:00Mathieu GiraudVh pas trouvé, uniquement Dh-JhAurélie ~"LIL-Lille" :
> I have a question on the results I obtain on the following sample: http://app.vidjil.org/?sample_set_id=23852&config=25
>
> Let's look on the following clones:
> >IGHD2-2*02 2/TGA/5 IGHJ5*02 362 nt, 148 52...Aurélie ~"LIL-Lille" :
> I have a question on the results I obtain on the following sample: http://app.vidjil.org/?sample_set_id=23852&config=25
>
> Let's look on the following clones:
> >IGHD2-2*02 2/TGA/5 IGHJ5*02 362 nt, 148 525 reads (10.64%, 53.45% of IGH/IGH+, 2042% of IGH+)
> GGAGTCGGGGGAGGCTTGGTCCAGCCTGGGGGTCCCTGAGACTCTCCTGTGCAGCCTCTGGATTCACCTTCAGTGACTACTACATGAGCTGGGTCCGCCAGGCTCCCGGGAAGGGGCTGGAGTGGGTAGGTTTCATTAGAAACAAAGCTAATGGTGGGACAACAGAATAGACCACGTCTGTGAAAGGCAGATTCACAATCTCAAGAGATGATTCCAAAAGCATCACCTATCTGCAAATGAACAGCCTGAGAGCCGAGGACACGGCCGTGTATCAAGGGGCATTTATTGTAGTAGTACCAGCTGCTAT
>
> ATG
> ATGGTTCGACCCCTGGGGCCAGGGAACCCTGGTCACCGTCTCCTCAGGTAAG
>
>
>
> Bonjour,
>
> Ce clone est mal nommé, il ne reconnaît pas le VH, bien présent puisque nous avons pu merger des clones qui étaient VDJ. Cela m’embête car ce clone étant majoritaire, le merge ne permet pas de corriger la séquence.
>
> Pourriez-vous y regarder et me dire pourquoi le VH n’a pas été reconnu ?
>
> Merci
>
> AurélieAlgo -- Importanthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2987Shorter / shifted w : autoriser de plus grands shifts, mais jusqu'à où ?2018-06-27T18:53:30+02:00Mathieu GiraudShorter / shifted w : autoriser de plus grands shifts, mais jusqu'à où ?Suite à #2913/#1580.
Si je ne trompe pas, le shift peut être d'au plus `-5`/`+5`, tandis que le short peut aller beaucoup plus loin. Autant cela ne me gène pas de raccourcir quand on n'a pas le choix (reads courtes des deux côtés), auta...Suite à #2913/#1580.
Si je ne trompe pas, le shift peut être d'au plus `-5`/`+5`, tandis que le short peut aller beaucoup plus loin. Autant cela ne me gène pas de raccourcir quand on n'a pas le choix (reads courtes des deux côtés), autant je pense qu'on pourrait bénéficier de plus de contenu à gauche quand on le peut.
Spontanément, j'aimerais mettre :
- les shifts testés à `{-1, 1, -2, 2, -3, 3, -4, 4}`, ou au moins `{-1, 1, -2, 2}`
- et/ou une valeur de `DEFAULT_WINDOW_SHIFT` à `10` ou `15`.
Je ne sais pas si on peut arriver à quelque chose de plus rationel. En tout cas :
- un `w50/-10` serait mieux qu'un `w45/-5`
- un `w50/-20` serait mieux qu'un `w35/-5` (?)
- par contre on ne doit pas faire `w50/-30` à la place d'un `w25/-5` qui serait sous le `MINIMAL_WINDOW_LENGTH`
Pour info, les shifts sur `stanford-w100`:
```
913 w100/-5
197 w95/-5
163 w90/-5
63 w85/-5
29 w80/-5
2 w75/-5
1 w60/-5
```Algo -- Importanthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3314Options pour le calcul de la représentative ?2018-06-27T17:09:05+02:00Mathieu GiraudOptions pour le calcul de la représentative ?`ratio_representative` et `max_auditionned` n'ont pas d'options. Utilité ?`ratio_representative` et `max_auditionned` n'ont pas d'options. Utilité ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/3313Déplacer la documentation de Filter2018-06-27T14:14:47+02:00Cyprien BoréeDéplacer la documentation de FilterPour simplifier la lecture de la classe `FilterWithACAutomaton` et pour centraliser les informations sur le code, certains commentaires sur l'explication du fonctionnement de la classe doivent se trouver dans `doc/dev.org`.Pour simplifier la lecture de la classe `FilterWithACAutomaton` et pour centraliser les informations sur le code, certains commentaires sur l'explication du fonctionnement de la classe doivent se trouver dans `doc/dev.org`.Cyprien BoréeCyprien Boréehttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2825Coût du FineSegmenter : est-on trop généreux avec les mismatches ?2018-06-26T10:41:27+02:00Mikaël SalsonCoût du FineSegmenter : est-on trop généreux avec les mismatches ?Il y a certains cas où le nombre de mismatches, proches d'une extrémité semble important par rapport au nombre de matches.Il y a certains cas où le nombre de mismatches, proches d'une extrémité semble important par rapport au nombre de matches.Algo -- Importanthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/3027Sortir partiellement vidjil-h-examples.should-get vers un nouveau stage de test2018-06-26T10:41:01+02:00Mathieu GiraudSortir partiellement vidjil-h-examples.should-get vers un nouveau stage de testDepuis ee762649 / f7c71ba pour #2635, les tests mettent 7 minutes de plus pour se lancer deux fois sur LIL-L4.
J'avais mis dans un premier temps `-x 10000` pour que cela soit plus rapide, mais le but est bien de montrer dans l'aide des...Depuis ee762649 / f7c71ba pour #2635, les tests mettent 7 minutes de plus pour se lancer deux fois sur LIL-L4.
J'avais mis dans un premier temps `-x 10000` pour que cela soit plus rapide, mais le but est bien de montrer dans l'aide des commandes utiles en situation réelle.
Cela pourrait encore s'empirer si on en met dans `doc/algo.org` (ce qui est souhaitable).
Pour %"Algo 2017.11" cela peut aller, mais pour la suite (et surtout pour notre ~"dev-ci" régulière), il faudrait sortir ces choses longues vers un stage appelé rarement comme valgrind.Algo -- Importanthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2249Trop de délétions dans les D : longueur négative2018-06-26T10:41:01+02:00Mikaël SalsonTrop de délétions dans les D : longueur négativeQuand on monte la e-valeur pour la FineSegmentation du D on peut se retrouver avec des D tellement courts qu'ils peuvent être de longueur négative.
Quand on monte la e-valeur pour la FineSegmentation du D on peut se retrouver avec des D tellement courts qu'ils peuvent être de longueur négative.
Algo -- Important