vidjil issueshttps://gitlab.inria.fr/vidjil/vidjil/-/issues2021-11-19T11:06:57+01:00https://gitlab.inria.fr/vidjil/vidjil/-/issues/1008Nommer des séquences d'intérêt (super utile pour pool de patients, pour stand...2021-11-19T11:06:57+01:00Vidjil TeamNommer des séquences d'intérêt (super utile pour pool de patients, pour standards, pour clones connus)
***
#1007
***
#1007https://gitlab.inria.fr/vidjil/vidjil/-/issues/1007Uploader un fichier FASTA avec des séquences d'intérêt, les nommer, identifie...2020-12-11T12:55:06+01:00Vidjil TeamUploader un fichier FASTA avec des séquences d'intérêt, les nommer, identifier les manquantesPlutôt que d'avoir un fichier .analysis contenant des fenêtres à mettre en valeur, on pourrait avoir des séquences complètes à mettre en valeur. À l'interface de chercher si elle trouve des fenêtres connues dans les séquences d'intérêt. ...Plutôt que d'avoir un fichier .analysis contenant des fenêtres à mettre en valeur, on pourrait avoir des séquences complètes à mettre en valeur. À l'interface de chercher si elle trouve des fenêtres connues dans les séquences d'intérêt. Ça éviterait de devoir rentrer les fenêtres dans les fichiers .analysis (qui peuvent changer avec des modifs dans l'algo) et ça permet de traîter directement les séquences d'intérêt que nous donnent nos amis bios.
***
scénario : on a un fichier fasta donnant des clones connus pour des patients, pour des standards, et on veut le visualiser rapidement
voir déjà vdj/progs/utils/generate-analysis.py fait par Mikaël (ece856d)
il faudrait faire cela directement dans l'interface, et voir les séquences manquantes par rapport au fichier fourni
***
être aussi capable d'afficher complètement cette séquence dans l'aligneur
***
ces séquences doivent passer au fuse.py, malgré le top
***
À discuter ensemble.
Solution 1:
- server : transformer le .fa en fichier de labels
- c++ : prend ce fichier (-l, existe déjà), marque les séquences ("top: 0" marcherait out-of-the box, mais crade, disons "label")
- fuse.py : traite spécialement les clones "label"
Solution 2:
- server: transformer ce fichier en .analysis (certains
- pas de modif c++
- fuse.py : prend un .analysis en plus, et tient compte de ce qu'il y a dedans
La solution 1 est la plus simple, mais la 2 permettrait de renforcer le rôle central d'un fichier ".analysis" (et on pourrait presque avoir un fuse.py qui fusionnerait deux .analysis).
Dans les deux cas :
- browser : afficher les séquences manquantes
***
Il y avait une tâche doublon "Conserver les séquences d'intérêt dans le fuse" :
- Soit avoir un tag dans le fichier clntab ou data disant qu'on veut conserver la séquence
- Soit avoir un fichier FASTA contenant les séquences d'intérêt à conserver
***
Les deux solutions demandent de toute façon de lancer le c++ sur le .fa pour récupérer les fenêtres. Autant le faire comme pour les autres fichiers.
Solution mixte proposée :
- server : pouvoir rentrer un fichier .fa spécial (soit faire une boite dédiée à cela, soit rajouter un champ aux fichiers .fasta pour qu'ils soient tous soit "reads" soit "known clones")
- c++ : lancé sur le .fa spécial, avec -y all -z all + un flag faisant qu'il prend le nom des fichiers fasta comme "name" dans le .vidjil (et sort "top: 0", ou, mieux, un nouveau flag ?)
- c++ : lancé sur les n fichiers de reads, comme d'habitude
- fuse : prend tous ces .vidjil (mais différencie les "known clones" des "reads")
- browser :devra aussi indiquer les manquantes
***
remarque de Mikaël : il peut y avoir des N dans séquences données.
Bref, la prédiction de fenêtre ne sera peut-être pas la bonne méthode, plutôt une recherche a posteriori comme dans vdj/progs/utils/generate-analysis.py
À rediscuter encore.
***
évoqué aussi hier avec Rennes... Alice a des séquences identifiées comme à enlever, on ne veut pas le faire manuellement...
Déjà si cela taggait automatiquement, ce serait bon.
N'est-ce pas proche de charger un fichier .analysis ?
***
Rando 2016: Marc voit comment faire cela simplement en transformant (côté client ? serveur ?) le fichier FASTA en fichier .analysis.
***
Limite : si la séquence d'intérêt n'est pas dans le top 100 on ne la verra pas (cf. mail de Jona 21/09/2016)
***
#1008, #1009
***
@Duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/5271Removing user/group from a server2024-03-27T14:07:04+01:00Mikaël SalsonRemoving user/group from a serverRemoving an user requires first to disable her/his account #5270.
Then we want to remove the data related to the account:
- all the data if the user is alone in her group
- what should be removed in the case of an user working within co...Removing an user requires first to disable her/his account #5270.
Then we want to remove the data related to the account:
- all the data if the user is alone in her group
- what should be removed in the case of an user working within collaborative groups? not the data, should the logs be removed?https://gitlab.inria.fr/vidjil/vidjil/-/issues/5270Controller to disable account2024-03-27T14:07:05+01:00Mikaël SalsonController to disable accountDiscussed for vdj#1170: we may want to disable account.
At first, just setting an empty password may be enough, but a cleaner status would be better.Discussed for vdj#1170: we may want to disable account.
At first, just setting an empty password may be enough, but a cleaner status would be better.https://gitlab.inria.fr/vidjil/vidjil/-/issues/5246Code formatting2024-02-06T16:22:11+01:00CHESNIN ClementCode formattingPour avoir un code plus homogène / faciliter la lecture, beaucoup de projets utilisent des formatters de code. Pour le moment, ce n'est pas le cas dans vidjil. La problématique de ce genre de discussion est que c'est un peu une question ...Pour avoir un code plus homogène / faciliter la lecture, beaucoup de projets utilisent des formatters de code. Pour le moment, ce n'est pas le cas dans vidjil. La problématique de ce genre de discussion est que c'est un peu une question de "religion" et que chacun·e peut avoir ses habitudes...
Côté python, on pourrait regarder du côté de [black](https://github.com/psf/black) + [isort](https://pycqa.github.io/isort/), [ruff](https://astral.sh/ruff), autopep8, ...
A coupler/réfléchir avec #5245 ? (cf par example ruff)https://gitlab.inria.fr/vidjil/vidjil/-/issues/5245Utiliser SonarQube/un linter pour la qualité python2024-02-15T09:57:21+01:00CHESNIN ClementUtiliser SonarQube/un linter pour la qualité pythonPour le moment, on ne fait pas d'analyse statique de code sur la partie python (c'est par contre le cas pour js).
On pourrait regarder du côté de SonarQube qui est déployé chez Inria (--> cf par exemple https://sonarqube.inria.fr/sonar...Pour le moment, on ne fait pas d'analyse statique de code sur la partie python (c'est par contre le cas pour js).
On pourrait regarder du côté de SonarQube qui est déployé chez Inria (--> cf par exemple https://sonarqube.inria.fr/sonarqube/profiles/show?name=Inria&language=py) ou bien [Flake8](https://flake8.pycqa.org/en/latest/) ou [ruff](https://astral.sh/ruff) par exemple.
Attention, comme on part d'une base de code existante, il faut qu'on puisse être assez permissif sur le code existant et ne pas être noyé·es sous les infos. Un objectif pour être de pouvoir avec les metrics, et avoir des warnings sur le nouveau code pour utiliser les bonnes pratiques.
Peut-être aussi pourra-t-on regarder du côté de https://ozgurozkok.com/pyupgrade-a-modern-syntax-upgrader-for-python/ ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/5193log flash; add a copy to clipboard icon2023-11-09T10:49:36+01:00THONIER Florianlog flash; add a copy to clipboard iconI change a flash message, including now the url called.
I dont' know if it is usefull to include this type of information (server internal error url) in flash message as we should have a ticket on our side with this value.
But is ther...I change a flash message, including now the url called.
I dont' know if it is usefull to include this type of information (server internal error url) in flash message as we should have a ticket on our side with this value.
But is there some case where it can be usefull to user to keep a trace of error ?
Another reason is that if you try to select text in it, it close.https://gitlab.inria.fr/vidjil/vidjil/-/issues/5173Merge clonotype on exact VDJ sequence (excluding primers)2023-10-19T14:34:09+02:00THONIER FlorianMerge clonotype on exact VDJ sequence (excluding primers)In some case, user upload data with primers. We have in these cases mix of primer of various length able to be used for a same clonotype. And in some configuration (no-clustering), we saw 2 clonotypes or more that are an artefact.
As p...In some case, user upload data with primers. We have in these cases mix of primer of various length able to be used for a same clonotype. And in some configuration (no-clustering), we saw 2 clonotypes or more that are an artefact.
As position and size of primer can vary, we can't make only a trimming of it.
Can we make a merge based on sequence but limited to Vstart ?
See case here: [59910-50?clone=27,35,45,81](https://app.vidjil.org/59910-50?clone=27,35,45,81)https://gitlab.inria.fr/vidjil/vidjil/-/issues/5121Mise à jour des germlines sur serveur de prod2023-02-08T14:12:39+01:00Mikaël SalsonMise à jour des germlines sur serveur de prodDans #5120 je m'apperçois que les germlines ne sont pas à jour. Ils sont pris depuis le dossier du repo de docker et ils ne sont pas pris dans le dossier de vidjil-algo.
Autant ceux de vidjil-algo sont à jour, autant il n'y a pas de rai...Dans #5120 je m'apperçois que les germlines ne sont pas à jour. Ils sont pris depuis le dossier du repo de docker et ils ne sont pas pris dans le dossier de vidjil-algo.
Autant ceux de vidjil-algo sont à jour, autant il n'y a pas de raison pour que ceux du repo de docker soient à jour (ou en tout cas il faudrait faire un `make germline`) pour qu'ils le soient.
Utiliser les germlines du vidjil-algo a l'avantage de les avoir à jour mais l'inconvénient c'est qu'on peut moins facilement mettre à disposition des germlines demandées par les utilisateurs (situation qu'on a rencontrée).https://gitlab.inria.fr/vidjil/vidjil/-/issues/5110Fusionner les warnings sur le même clone et plusieurs samples ?2023-01-12T15:29:35+01:00Mathieu GiraudFusionner les warnings sur le même clone et plusieurs samples ?
@flothoni : "mais le message peut être différent"
@flothoni : "mais le message peut être différent"https://gitlab.inria.fr/vidjil/vidjil/-/issues/5107.gitlab-ci.yml : Utiliser workflow, rules ?2022-12-22T17:06:39+01:00Mathieu Giraud.gitlab-ci.yml : Utiliser workflow, rules ?https://docs.gitlab.com/ee/ci/yaml/workflow.html
https://docs.gitlab.com/ee/ci/yaml/#workflow
Pour l'instant nous gérons nos pipelines avec des `only` sur chaque jobs. Mais au final, nous avons bien des workflows bien différents, `featu...https://docs.gitlab.com/ee/ci/yaml/workflow.html
https://docs.gitlab.com/ee/ci/yaml/#workflow
Pour l'instant nous gérons nos pipelines avec des `only` sur chaque jobs. Mais au final, nous avons bien des workflows bien différents, `feature-{csta}`... bien que souvent on en lance plusieurs. J'ai l'impression que, depuis plusieurs releases, gitlab ajoute des fonctionnalités liés à ces `workflow`, notamment avec les `rules`. Est-ce que cela vaudrait le coup d'utiliser cela ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/5099Ignorer des warnings pour certains clones2022-11-23T18:13:16+01:00Mathieu GiraudIgnorer des warnings pour certains clones
depuis... aligneur ? ou vue warning ?
après !1240
depuis... aligneur ? ou vue warning ?
après !1240https://gitlab.inria.fr/vidjil/vidjil/-/issues/5071Lever un nouveau warning si mutation seulement dans les primers ?2022-10-04T16:32:42+02:00Mathieu GiraudLever un nouveau warning si mutation seulement dans les primers ?@flothoni : "ce serait une fonction au retour du calcul des primers"@flothoni : "ce serait une fonction au retour du calcul des primers"https://gitlab.inria.fr/vidjil/vidjil/-/issues/5046API : savoir que c'est l'API qui a envoie certaines requêtes2022-06-24T12:41:15+02:00Mathieu GiraudAPI : savoir que c'est l'API qui a envoie certaines requêtes
Déjà logguer ces accès, peut-être un jour mettre des limites...
@flothoni : "lors du login, avoir un champ qui n'est mis que par le web"
Déjà logguer ces accès, peut-être un jour mettre des limites...
@flothoni : "lors du login, avoir un champ qui n'est mis que par le web"https://gitlab.inria.fr/vidjil/vidjil/-/issues/5038Bookmark clonotypes2022-06-15T11:15:57+02:00Mathieu GiraudBookmark clonotypesIdée de @duez sur #1547:
> Même hue (rouge/chaud), mécanisme standard, on clique et il affecte le premier de disponible. En allant dans le menu, on peut avoir plus de choix, sémantique.
Vu ce qui a été fait dans !1199, on va déjà voir ...Idée de @duez sur #1547:
> Même hue (rouge/chaud), mécanisme standard, on clique et il affecte le premier de disponible. En allant dans le menu, on peut avoir plus de choix, sémantique.
Vu ce qui a été fait dans !1199, on va déjà voir à l'usage comment réagissent les usagers, et on se repose la question dans quelques mois voir si un autre mécansime est nécessaire.https://gitlab.inria.fr/vidjil/vidjil/-/issues/5028À score égal, favoriser les allèles les plus communs2022-05-19T09:40:47+02:00Mathieu GiraudÀ score égal, favoriser les allèles les plus communsEt... est-ce que les *01 sont plus communs que les *02 ou *03 ?
(On pourrait dire "on favorise les mutations à un tel endroit", mais cela signifierait juste de changer le score.)
Cas très particulier: quand les séquences sont identiqu...Et... est-ce que les *01 sont plus communs que les *02 ou *03 ?
(On pourrait dire "on favorise les mutations à un tel endroit", mais cela signifierait juste de changer le score.)
Cas très particulier: quand les séquences sont identiques: #4640.https://gitlab.inria.fr/vidjil/vidjil/-/issues/5026Comment savoir qu'un sample/set est déjà analysé par un humain ?2022-05-20T16:31:12+02:00Thonier FlorianComment savoir qu'un sample/set est déjà analysé par un humain ?Des utilisatrices du workshop me demandaient comment tagger qu'un sample était déjà fait. Idem pour un sample.
Je n'ai pas trouvé de réponse. Il faudrait un champ, une checkbox pour dire que celui-ci est fait.
Demande une réflexion.Des utilisatrices du workshop me demandaient comment tagger qu'un sample était déjà fait. Idem pour un sample.
Je n'ai pas trouvé de réponse. Il faudrait un champ, une checkbox pour dire que celui-ci est fait.
Demande une réflexion.https://gitlab.inria.fr/vidjil/vidjil/-/issues/5019Afficher un échantillon sans l'impact des autres échantillons2023-06-30T11:13:41+02:00Mikaël SalsonAfficher un échantillon sans l'impact des autres échantillonsSuite de #2442.
Demande lors du VW. Certes on a un moyen de faire un "compare sample" sur chaque échantillon, mais ce n'est pas le plus pratique. Les utilisatrices aimeraient voir la même chose en visualisant leur run.
Aurait-on moyen ...Suite de #2442.
Demande lors du VW. Certes on a un moyen de faire un "compare sample" sur chaque échantillon, mais ce n'est pas le plus pratique. Les utilisatrices aimeraient voir la même chose en visualisant leur run.
Aurait-on moyen de restreindre la vue au top X de l'échantillon courant, sans avoir les autres clonotypes, donc ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/4994Gestion flexible des tags2022-04-15T12:00:05+02:00Mathieu GiraudGestion flexible des tagsDonnera-t-on un jour la possibilités aux usagèr·es de créer de nouveaux tags ?Donnera-t-on un jour la possibilités aux usagèr·es de créer de nouveaux tags ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/4991Algo: ne reconnaître des clones que à partir d'une longueur minimale2022-04-08T19:21:16+02:00Mathieu GiraudAlgo: ne reconnaître des clones que à partir d'une longueur minimale
Dans le cadre de #2820/!364, mais aussi d'autres, on peut vouloir limiter la taille des
> On pourrait plutôt faire le filtre au niveau du clone : on ne le considère que si son average read length est suffisant. Comme cela, la détectio...
Dans le cadre de #2820/!364, mais aussi d'autres, on peut vouloir limiter la taille des
> On pourrait plutôt faire le filtre au niveau du clone : on ne le considère que si son average read length est suffisant. Comme cela, la détection continue à bien se faire, mais cela ne fait pas partie des clones sortis
C'est une possibilité, mais on peut même le faire... juste en sortie du KmerSegmenter, ne pas le stocker dans les ReadStorage, ce qui peut alléger encore, surtout dans des cas extrêmes où on voudrait utiliser cette option parce qu'il y aurait
(Bref cela ferait comme quand on a une longueur inférieure à `--window`.)