====== Évolutions du 03/03/2022 ====== * https://capytale2.ac-paris.fr/web/rest/user/me?_format=json retourne une erreur 403 quand l'utilisateur n'est pas connecté (avant c'était un code 200 avec un contenu vide). ==== Basthon ==== * Support de l'audio dans les notebook. * Les requêtes REST et fichiers sont effectuées en cascade et pas en même temps (c.f. discussion avec Thomas). * Précision des messages d'erreur (lorsque l'utilisateur n'est pas connecté et en cas d'ipynb corrompu). * Sécurisation des notebooks (le javascript dans les cellules de sortie n'est pas exécuté à l'ouverture). ====== API Fichier 17/02/2022 ====== À compléter. Voir [[todo:content-migration|Migration des contenus de la DB vers le FS]] ====== Évolutions : lot du 16/12/2021 ====== ===== Version Complète ===== ===== Upgrade de Drupal 8 à Drupal 9 ===== drush pmu userswitch drush pmu user_restrictions sudo rm sites/default/files/translations/user_restrictions-8.x-1.0-rc1.fr.po drush pmu console sudo chmod 666 web/sites/default/*settings.php sudo chmod 666 web/sites/default/*services.yml sudo chmod 777 web/sites/default ** Modifier dans settings.php le paramétrage du dossier staging d'export conf ** ** copier composer.json et composer.lock ** composer install drush cr git fetch origin git checkout drupal9 drush cr drush updb drush cim sudo chmod 444 web/sites/default/*settings.php sudo chmod 444 web/sites/default/*services.yml sudo chmod 555 web/sites/default ** Désactiver le cron drupal (crontab -e du user www-data) ** drush node-access-rebuild-progressive ** Reactiver le cron drupal ** drush cim * update basthon.tgz * Reconstruire les droits * Ajouter la corbeille à tous * En BDD : consigne -> description si pas de description ** pas nécessaire grâce à twig : (abstract) ? abstract : descritption** * Déplacer /home/nico/capytale_files dans /home/capytale **Romain** - Réécriture complète du kernel de Basthon en TypeScript - Publication des composantes du noyau de Basthon sur npmjs - Réécriture complète de la console en TypeScript - Utilisation de Webpack de bout en bout pour le déploiement - Mise en production de la nouvelle version de la console - Corrections suite à MAJ vers Drupal 9 - Réécriture du notebook en TypeScript pour une intégration en Webpack - Support complet du français dans le notebook - Mise en production du notebook - Réécriture de l'intégration à Capytale en TypeScript - Publication des composantes de l'intégration Basthon-Capytale sur npmjs - Correction d'un problème de chargement de Folium (dû à une MaJ upstream) - Refonte du "A propos" dans le notebook. - Chargement dynamique de tinymce (gain de 400Ko) - Amélioration du confort de chargement des interfaces (disponibilité rapide de l'interface) - Sauvegardes dans l'IndexDB avec checkpoints (l'utilisateur retrouve son travail en cas de plantage de l'interface ou de sa machine) - Support de l'export par l'utilisateur d'une base de donnée (commande .export) - Tests puis mise en production sur Capytale **Nico** - Retour sur "Mes activités" après modifications dans "Gérer mes services" - Refonte complète de la page "Mes activités" - bouton copier le lien de partage fonctionne - unification de tooltips - Affichage arborescent des étiquettes - Traitements en lot (étiquetage, suppression, - Amélioration des informations - Francisation des messages de datatables - Amélioration du système d'étiquettes - l'arbre des tags s'affiche sur la page /edit pour tous les types d'entités - pouvoir retirer le tag corbeille - logo supprimer remplace le logo tag au survol dans la colonne des étiquettes - correction du bug de décalage pour 'arbre des étiquettes (soulevé par Romain) - Refonte complète de la page "Bibliothèque" - Amélioration du temps de chargement - lignes paires et impaires de couleurs différentes - Recherche améliorée - Possibilité d'ordonner par nombre de likes et de copies - Lien de download prêt à ajouter à la bib - Bib : abstract ? abstract : descritption - Pour les admins bugfix affichage cassé en raison des étiquettes trop nombreuses : - pas d'arbre des étiquettes (étiquettes ET étiquetage) - No tags_tree sur /edit pour console et notebook - remplacement des url : - my2->my - my->myold - bibliotheque<->bib **Thomas** - Ajout de PACA - Ajout d'une route pour télécharger un .ipynb ===== Version Courte ===== - Amélioration du système d'étiquettes arborescent (cf. [[etiquettes|étiquettes]]) - Réécriture complète de la page "Mes activités" (cf. [[la_page_mes_activites|Mes activités]]) - Affichage des étiquettes - Traitements en lot (étiquetage, suppression) - Amélioration des informations sur les activités - Réécriture complète de la page "Bibliothèque" - Amélioration du temps de chargement - Recherche améliorée - Possibilité d'ordonner par nombre de likes et de copies - Retour sur "Mes activités" après modifications dans "Gérer mes services" - Basthon : - Utilisation de l'écosystème de développement Web côté client (réécriture complète en TypeScript, publication sur npmjs et déploiement avec Webpack) - Accélération du chargement des interfaces Notebook et Console - Sauvegardes locales régulières (checkpoints) : l'utilisateur retrouve son travail en cas de plantage de l'interface ou de sa machine - Support de l'export par l'utilisateur d'une base de donnée (commande .export) ====== Évolutions : lot du 12/10/2021 ====== - cf message liste Capytale : https://groupes.renater.fr/sympa/arc/capytale/2021-10/msg00020.html - Test du kernel en 3 versions (vieux, récent et moyen) en 64 bits - Scripts de synchro nocturnes prod -> préprod. ===== Opérations ===== - Synchro prod->preprod (fichiers et BDD) : **OK** - Mise à jour de Drupal par ''composer update'' sur préprod + vérif générale : **OK** - modif capytale_pp/web/.htaccess, lignes 6, suppression de ''.*sql|'' : **OK** - Mise à jour de Drupal par ''composer update'' sur prod + vérif générale : **OK** - modif capytale_pp/web/.htaccess, lignes 6, suppression de ''.*sql|'' : **OK** - ''drush cex'' + ''git commit'' puis ''git push'' depuis capytaledev : **OK** - préprod : import des modifs de Nico - ''git pull'' : **OK** - composer require 'drupal/node_access_rebuild_progressive:^2.0' : **OK** - composer require 'drupal/taxonomy_manager:^2.0' : **OK** - composer require 'drupal/term_reference_tree:^1.0' : **OK** - ''drush cr'' : **OK** - ''drush cim'' : **OK** - préprod : import des modifs de Thomas - copie des fichiers modifs à la main : **OK** - ''drush cr'' : **OK** - modification config drupal à la main : **OK** - ''drush cex'' : **OK** - ''git add .'' ''git commit'' : **OK** - vérif complète du fonctionnement de preprod - Vérifier le formulaire édit (tags perso) : **OK** * Il manque des espaces dans la description des notebooks et des activités SQL (voir pièce-jointe). **Corrigé** * problème de CSS un peu partout : sur le bouton "enregistrer" des paramètres, sur la flèche du menu "actions", lors du survol du bouton Go ! **Corrigé** * Les fichiers SQL semblent de nouveau interdits sur la prod et la preprod **Corrigé** - PROD - revert changes pour éviter le git merge : **OK** - ''git pull'' : **OK** - composer require 'drupal/node_access_rebuild_progressive:^2.0' : **OK** - composer require 'drupal/taxonomy_manager:^2.0' : **OK** - composer require 'drupal/term_reference_tree:^1.0' : **OK** - ''drush cr'' : **OK** - ''drush cim'' : **OK** - Ajouter la corbeille à tous les tags perso - vérif complète du fonctionnement ====== Évolutions : lot rentrée 2021 ====== ===== Les élèves peuvent créer des activités en autonomie ===== * La page d'accueil d'un élève lui permet de gérer ses services pour ajouter ou supprimer des types d'activités à créer * Le formulaire de création est simplifié puisqu’un élève n’a pas le droit de partager ni via un code ni dans la bibliothèque. * L'option "Partager avec mon professeur" lui donne droit à la recherche d'associés mais cette recherche est limitée aux associés avec le rôle teacher. ===== Indexation renforcée de la bibliothèque ===== Avec le grand nombre d’activités partagées entre enseignants (plus de 600 début septembre 2021) le système d’indexation a été revu pour être renforcé. Désormais les champs de description d'une activité sont : * Résumé (au moins 50 caractères) obligatoire * Enseignement(s) [Maths, SNT, NSI, ...] obligatoire * Niveau(x) [2e, 1ere Géné, ...] obligatoire * Thème(s) abordé(s) [Boucles, Graphes, ...] (avec une base de plus de 110 mots) obligatoire * Module(s) utilisé(s) (pour les activités Python) ===== Nouveaux modules Python ===== Trois nouveaux modules ont été ajoutés pour les script-consoles et les notebooks : * Module ipythonblocks qui permet de créer des grilles de cases colorées pour visualiser les effets du code représentés de manière colorée et attrayante. * Module lolviz pour visualiser des structures de données. * Module binarytree pour travailler sur les arbres binaires de recherche ===== Système de recette automatique ===== Un système de recette automatique basé sur une batterie de tests selenium a été créé. Il permet de vérifier en quelques secondes le bon fonctionnement de Capytale, notamment après une mise à jour. TODO : Détailler ===== Activité SQL ===== La programmation en langage SQL pour des activités pédagogiques sur les bases de données est disponible. ===== Mise en place de serveurs ===== Le workflow de développement de Capytale fonctionne désormais sur trois serveurs : * dev : https://capytaledev.ac-paris.fr/capytale_pp/web/accueil * preprod : https://capytalepreprod.ac-paris.fr/web/accueil * prod : https://capytale2.ac-paris.fr/web/accueil Préprod et prod sont répliqués à l’identique.