Comments (15)
Je ne réalise pas de commits immédiats car je souhaite maintenir une vision d'ensemble de tous les changements que j'effectue pour cette issue, sans les diviser en multiples petits commits.
- Effectuer des requêtes en SparkQL pour obtenir les licences des entités Wikidata suggérées à la volée (il serait trop long d'utiliser
api.php
, donc ce n'est pas réalisable en temps réel). - Déterminer si un logiciel est libre en se basant sur l'entité correspondant à sa licence.
- Proposer uniquement les logiciels libres dans l'autocomplétion.
- Prévoir que le formulaire d'ajout de logiciel puisse être initialisé avec une entité Wikidata (lorsque l'utilisateur clique sur "ajouter au SILL" à côté d'un logiciel similaire).
- Inclure dans la liste des logiciels similaires ceux qui n'ont pas d'entité Wikidata #24 (commentaire).
- Ajouter un bouton à côté des logiciels libres similaires qui ne figurent pas encore dans le SILL.
- Corriger une erreur architecturale faisant en sorte que les descriptions des logiciels similaires soient enregistrées dans notre base de données dans la langue de l'utilisateur lors de la déclaration de similarité. Envisager de prendre un raccourci et stocker dans les données compilées les descriptions en français avec un fallback en anglais.
- Tester l'ensemble.
from sill.
Pour la "vision d'ensemble" tu peux faire une branche dédiée à cette fonctionnalité, et un commit pour chaque "petit changement fonctionnel" ? Up to you.
Attention, pour "Déterminer si un logiciel est libre en se basant sur l'entité correspondant à sa licence." il faut comparer avec ce sous-ensemble de licences.
Merci beaucoup de travailler à cette fonctionnalité.
from sill.
Pour la "vision d'ensemble" tu peux faire une branche dédiée à cette fonctionnalité, et un commit pour chaque "petit changement fonctionnel" ? Up to you.
Ben en fait c'est surtout pour avoir "en jaune" tout ce que j'ai changer pour accomoder cette fonctionallité.
C'est pas vraiment la meilleur manière de faire, il vaudrais mieux que je découpe cette feature en plusieurs sous tâche indépendente mais bon, je suis trop loin dans l'implémentation maintneant.
Attention, pour "Déterminer si un logiciel est libre en se basant sur l'entité correspondant à sa licence." il faut comparer avec ce sous-ensemble de licences.
Oui, je considère que c'est un logiciel libre si la license est dans cette liste: https://man.sr.ht/~codegouvfr/logiciels-libres/licences-libres-dinum.md
from sill.
Oui pourquoi pas, c'est une bonne idée!
La question épineuse est la suivante: comment savoir si un logciel est libre a priori? Il nous faut un critère objéctif a partir des donnée fournie par Wikidata.
Les candidate serais:
Instance of: "Free and open source software" (pas toujours renséigné)
La présence d'un dépot de source: Souven renseigné.
Analyse de la license: Pas facil car non standardiser.
Ou alors un des trois critère.
On ne veut surtout pas proposer d'ajouter au sill des logiciels qui ne sont pas libre, ça ferais mauvais genre...
Une optignion?
from sill.
Pour le SILL, un logiciel libre est un logiciel diffusé sous l'une des licences reconnues par la FSF et l'OSI - voir https://man.sr.ht/~codegouvfr/logiciels-libres/licences-libres-dinum.md
from sill.
On pourrait ouvrir licence par licence ?
Dans un premier temps, on autorise les licences « bien connues » et on ajoutera ensuite au cas par cas celles qui le sont moins...
from sill.
Cf. ma réponse au-dessus, le problème est déjà résolu: si la licence est connue dans la fiche Wikidata, on sait si le logiciel peut être ajouté au SILL ou non.
from sill.
Je prend
from sill.
Je vais demander a chatGPT de me sortir tout les antité wikidata correspondant aux logiciels libres et je vais implémenté un filtre que je metrais en place pour savoir ou on peut mettre le boutton "ajouter au sill"
Il faut que je règle ça aussi, ça risque d'être bloquant
#24 (comment)
from sill.
Feature tentaculaire, je devrais la livrer au jour d'hui.
En fait il y avais un moyen de faire ça vite fait mais je me suis dis que si je prenais trop de shortcuts la personne qui allais devoir reprendre dernière n'allais rien comprendre a ce qui se passe.
Bon en tout cas ça sera bien d'avoir de suggestion avec uniquement de logiciel libre dans l'autocomplete notament. Et les descriptions wiki data serons dans la langue de l'interface.
from sill.
Il est regrettable que je découvre seulement maintenant l'API SPARQL, qui est nettement plus performante. Cette API permet de regrouper des requêtes pour plusieurs entités tout en spécifiant les propriétés recherchées. Ainsi, je l'utilise actuellement uniquement pour récupérer les licences à la volée, alors qu'en réalité, j'aurais pu l'exploiter pour tous mes besoins. C'était avant ChatGPT.
from sill.
Only testing is left
from sill.
Enfin
Screen.Recording.2023-07-31.at.09.58.24.mov
PS: Ca ne devrais pas être aussi long le traitement de l'ajout, il y a quellques logiciel qui sont rescrapper a chaque opération il faut que je regarde ce qui se passe.
from sill.
from sill.
Super! Merci beaucoup pour le feedback!
Les profils utilisateurs arrivent! Ca va être cool!
from sill.
Related Issues (20)
- Ajout l'URL du logo dans les données exposées en json HOT 1
- Automatiser les migrations de données lors des déploiements HOT 2
- Permettre un stockage "agnostique" des données des logiciels HOT 1
- Faire évoluer le parcours de saisie utilisateur pour satisfaire les besoins côté saisie de logiciels de recherche
- Modifier le fonctionnement de la redirection de `sill.code.gouv.fr` vers `code.gouv.fr/sill` HOT 2
- Ajouter une documentation qui aide les contributeurs à comprendre le code et les fonctionnalités
- Modifier le type de choix à l'étape 1/4 de la fiche descriptive d'un logiciel HOT 2
- Keycloak theme
- Mise a jour d'un logo ne fonctionne pas. HOT 1
- sill.code.gouv.fr redirects to code.gouv.fr and not code.gouv.fr/sill HOT 1
- Si on ne saisit rien dans le choix RGAA à l'ajout d'un logiciel, la base de donnée se plaint
- Permettre à un administrateur de paramétrer la « vue » de tous les logiciels et d'une fiche logicielle HOT 1
- Expliquer la gouvernance DINUM / MESR autour des développements
- Présenter tous les champs necessaires pour HAL
- Récupérer le détails des auteurs des logicels HAL
- Certains prestataires n'apparaissent pas dans l'onglet "Prestataires de services" HOT 5
- Modification pour affichage de la page d'accueil catalogue recherche HOT 1
- Modification pour affichage de la fiche d'un logiciel catalogue recherche
- Modification pour affichage de la page de la liste des logiciels catalogue recherche
- Faciliter les prises de contact entre utilisateurs et référents
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sill.