Release notes Pastell version 4.0.0

[4.0.0] – 2023-03-21

Cette version nécessite une modification de la base de données
Cette version nécessite une mise à jour du générateur SEDA en 1.0.0

Corrections

  • Pour voir les utilisateurs d’une entité, le droit « utilisateur:lecture » est désormais nécessaire
  • Les accents sont pris en compte à la création d’une entité si une erreur survient à la validation du formulaire
  • Il n’est plus possible de créer des entités filles pour une entité désactivée
  • Les valeurs « true » ou « false » ne sont plus remplacées par « 1 » ou « 0 » sur les champs texte
  • Quand un document est supprimé ou mis en état erreur fatale, les jobs associés sont supprimés
  • A l’édition d’un utilisateur, son mot de passe n’est plus écrasé

Ajouts

  • Permettre d’utiliser des jetons d’authentification pour utiliser l’API
  • Connecteur Vitam
  • Contrôle sur les identifiants du connecteur Transformation
  • Onglet de visualisation des transformations après l’étape
  • Choix de l’algorithme de calcul d’empreinte des fichiers pour les connecteurs utilisant le générateur SEDA
  • Création d’un connecteur de générateur SEDA 2.2 pour Asalae
  • Ajout d’un droit de création d’utilisateurs pour différencier de l’édition
  • Ajout de la commande app:module:force-send-ged-and-delete [-i|–includeSubEntities] [–dry-run] [–] [<sourceModule> [<entityId>]]
  • Valeur par défaut disponible (texte, textarea, checkbox et liste déroulante) dans les flux studio
  • Archives composites sur le connecteur de génération SEDA Asalae 2.1
  • Ajout du Pack RH

Évolutions

  • Les extensions doivent charger leurs fichiers PHP dans un fichier autoload.php à la racine de l’application ou via composer avec un fichier vendor/autoload.php
  • Le champ SIREN n’est plus obligatoire sur la définition d’une entité
  • La constante PASSWORD_MIN_ENTROPY passe par défaut à 80 suivant les recommandations de l’ANSSI
  • Studio: La génération du bordereau et de l’archive est indépendant de l’envoi au SAE grâce à un nouvel état intermédiaire : « Paquet d’archive (SIP) généré »
  • La bibliothèque de lecture YAML Spyc est remplacée par la bibliothèque Symfony YAML plus performante. Le script console dev:fix-yaml permet de modifier ce qui était permis (de manière incorrect) par Spyc
  • Possibilité de supprimer ou de désactiver un utilisateur
  • Ajout du connecteur help-url qui permet de définir l’URL dune page d’aide
  • Modification du vocabulaire concernant les transferts au SAE
  • Possibilité de revenir en arrière sur les flux studio sur les étapes non réalisées
  • Possibilité de retamponner les actes et les annexes (flux studio, actes generique et automatique )
  • SAEConnecteur::sendArchive() devient SAEConnecteur:sendSIP()
  • Amélioration de la présentation de l’association des connecteurs
  • Possibilité d’ajouter un fichier database.json dans les extensions pour ajouter des tables sur la base de données Pastell (voir le format sur installation/pastell.json).
  • Lors de la création d’un administrateur, le mot de passe est directement généré par Pastell ce qui garanti un mot de passe fort
  • La base de données par défaut est mariadb version 10.9.3
  • Passage du jeu de caractère par défaut de la base de données à utf8mb4 (possibilité de mettre des caractères UTF8 étendus)
  • Actes et Helios automatique: Lorsque le traitement est terminé, il est possible de modifier le document pour cocher la case envoi_sae et faire l’action « Verser au SAE » (c’était déjà possible via le connecteur de purge)
  • Vérification de la force du mot de passe sur les requêtes API de type POST ou PATCH
  • Un mot de passe est généré automatiquement pour l’exportation d’un connecteur
  • Un mot de passe est généré automatiquement pour l’exportation de la configuration
  • La fréquence des connecteurs passe à 10 minutes par défaut
  • Possibilité de mettre un filtre sur ‘is_active’ dans la recherche des entités sur l’API
  • Possibilité d’activer et de désactiver un compte utilisateur par API
  • Possibilité d’activer et de désactiver une entité par API
  • Possibilité de modifier un flux studio en paramétrant l’état des dossiers associés en erreur fatale
  • Filtre sur les types de fichiers lors de l’upload directement dans le formulaire
  • Le dernier message des travaux programmés est visible et leur ID mène vers leur détail
  • Les droits entite:lecture et journal:lecture sont cochés par défaut à la création d’un rôle
  • Permettre generate-sip en état erreur-envoie-sae
  • Les champs de type date ne sont plus initialisés par défaut à la date du jour
  • Le type de dossier sur le connecteur Glaneur est sélectionnable via une liste déroulante
  • Les fichiers de classe n’ont plus l’extension .class
  • A la création d’une notification, l’utilisateur est redirigé vers sa configuration
  • Les éléments texte (multi-ligne) sont disponibles à la sélection de l’objet pour l’envoi à la préfecture dans le studio
  • Les ancêtres d’une entité sont indiqués dans les rôles de la liste des utilisateurs et les ancêtres restent visibles dans la recherche d’une entité pour l’ajout d’un rôle à un utilisateur
  • La possibilité de se connecter via un certificat X509 client est une fonctionnalité activable désactivée par défaut

Suppressions

  • Suppression des méthodes magiques __get() et __set() sur la class ObjectInstancier, il convient d’utiliser respectivement getInstance() et setInstance()
  • Suppression de la directive de configuration LIBERSIGN_INSTALLER, Libersign est fourni via un container docker
  • Suppression de documentations et de scripts obsolètes concernant les versions de Pastell inférieures à 4.0.0
  • Suppression du chargement automatique des fichiers PHP des extensions
  • Suppression du endpoint divers/receive-ocre.php et des constantes OCRE_RECEIVE_PASSPHRASE et OCRE_INPUT_DIRECTORY
  • Suppression de la constante NB_ENTITE_BEFORE_COLLAPSE
  • Suppression de l’authentification par certificat au services Chorus Pro
  • Suppression de la constante CONNECTEUR_DROIT. Il faut maintenant ajouter les droits ‘connecteur:lecture’ et ‘connecteur:edition’ afin de gérer les connecteurs et les associations de types de documents!!
  • Suppression de l’authentification OASIS/OPENID
  • Suppression de LastUpstart UPSTART_TIME_SEND_WARNING – Suppression de batch/action-automatique.php et installation/pastell-upstart.conf
  • Suppression de la classe SSH2 et de la dépendance à l’extension php ssh2
  • Suppression des fonctions GEDConnecteur::{send, sendDonneesFormulaire, createFolder, addDocument, getRootFolder, listFolder, getSanitizedFolder, getSanitizedFilename, forceAddDocument, forceCreateFolder}
  • Suppression de la fonction PastellTestCase::loadExtension
  • Suppression du script create-default-horodatage.php
  • Suppression des classes PDFGeneriqueSendGED, PDFGeneriqueSAEVerif, PDFGeneriqueSAEValidation, PDFGeneriqueReceptionIParapheur, PDFGeneriqueEnvoieIParapheur, EnvoieSAEChange, IParapheurEnvoie, SAEVerif, TedetisAnnulation, TedetisRecupAnnulation, TedetisSendReponsePref, TedetisVerifReponsePref, FournisseurCommandeEnvoiGED, FournisseurCommandeEnvoiSAE, GEDEnvoiDocumentASigner, IParapheurEnvoieDocumentASigner, IParapheurRecupDocumentASigner, HeliosEnvoieSAEChange, HeliosGEDEnvoi, HeliosGeneriqueSAEValidation, HeliosGeneriqueSAEVerif, IparapheurEnvoieHelios, PDFGeneriqueRelance, TedetisRecup
  • Suppression de la propriété Controler::lastError
  • La récupération des acquittements du flux pes-marché est standardisé avec les autres flux (modification du nom du fichier de l’acquittement)
  • Suppression de la constante MODE_MUTUALISE. Lors de l’envoi d’un mail sécurisé, mailsec_from prend la valeur de PLATEFORME_MAIL. Il faut lancer la commande app:force-update-field connector mailsec mailsec_reply_to « {% if mailsec_reply_to ==  » %}{{mailsec_from}}{% else %}{{mailsec_reply_to}}{% endif %} » pour reporter l’ancien mailsec_from à mailsec_reply_to (s’il n’est pas déjà renseigné)
  • Suppression de la fonction Controler::exitToIndex
  • Suppression des méthodes magiques ChoiceActionExecutor::__set, Gabarit::__set
  • Suppression des scripts permettant une installation hors d’un environnement Docker. En particulier les scripts de création de connecteurs initiaux et de fréquences sont gérés par la séquence d’initialisation du conteneur.
  • Suppression du modèle Document, remplacé par DocumentSQL
  • Suppression du modèle Utilisateur, remplacé par UtilisateurSQL
  • Suppression du modèle Entite, remplacé par EntiteSQL (suppression du type d’entité « service » et des classes dépréciées AccuserReception, Envoyer)
  • Suppression des fonctions :
    • SAEConnecteur::getAcuseReception
    • SAEConnecteur::getReply
    • SAEConnecteur::getLastErrorCode
    • SAEConnecteur::generateArchive
    • SAEConnecteur::getTransferId
    • SAEConnecteur::getURL
    • SAEConnecteur::getErrorString
  • Suppression de TdtConnecteur::postHelios(), remplacé par TdtConnecteur::sendHelios()
  • Suppression de la méthode magique Controler::__get
  • Suppression de TdtConnecteur::postActes(), remplacé par TdtConnecteur::sendActes()
  • Suppression de SignatureConnecteur::sendDocument() et SignatureConnecteur::sendHeliosDocument(), remplacés par SignatureConnecteur::sendDossier()
  • Suppression de la classe d’action FournisseurCommandeEnvoieIparapheur
  • L’envoi au iparapheur du flux Commande générique est standardisé avec les autres flux
  • Suppression de la plupart des scripts dans batch/ installation/ et script/. Ceux qui restent ne devrait plus être utilisés car ils doivent être remplacés par un script console
  • La méthode SEDAConnecteur::getBordereau() prend la signature de SEDAConnecteur::getBordereauNG() qui est supprimée
  • Suppression de DAEMON_USER, DAEMON_LOG_FILE, PID_FILE
  • Suppression de la fonction util.php::mail_wrapper(), utilisé symfony/mailer à la place
  • Suppression du fichier de sous-type qui ne servait plus dans le connecteur i-Parapheur
  • Suppression de lib/ZenMail, utilisé symfony/mailer à la place
  • Suppression de SMTP_SERVER, SMTP_PORT, SMTP_USER, SMTP_PASSWORD, utilisé MAILER_DSN à la place. Voir https://symfony.com/doc/current/mailer.html#using-built-in-transports
  • Suppression du service versant dans le connecteur asalae
  • Suppression du certificat utilisateur sur le connecteur i-Parapheur ; Suppression du connecteur global i-Parapheur
  • Suppression de AIDE_URL remplacé par le connecteur help-url
  • Suppression de Visionneuse.php, les visionneuses doivent désormais implémenter l’interface Viewer
    • XMLVisionneuse devient Pastell\Viewer\XmlViewer
    • TypologieActesVisionneuse devient Pastell\Viewer\TypologyActesViewer
    • RawVisionneuse devient Pastell\Viewer\RawViewer
    • ReponsePrefectureLinkVisionneuse devient Pastell\Viewer\ReponsePrefectureLinkViewer
    • GedIdDocumentsVisionneuse devient Pastell\Viewer\GedIdDocumentsViewer
  • Suppression de la fonction SEDAConnecteur::getInfoARActes()
  • Suppression du script script/plateform-update/database-update.php, remplacé par un script console app:database:update
  • Suppression du script installation/filedbupdate.php, remplacé par un script console dev:database:update-definition
  • Suppression de la constante DATABASE_FILE
  • Suppression de la possibilité de mettre la règle ‘role_id_e: no-role’ sur les connecteurs. Il faut remplacer par la règle ‘automatique: true’ pour obtenir le même comportement
  • Suppression des éléments relatifs au centre de gestion sur la version standard. Il est possible de les remettre avec la feature flag CDGFeature.
  • Suppression de l’URL dans l’onglet de retour du SAE
  • Suppression du support MySQL. La seule base supportée est MariaDB.
  • Suppression de la création d’une entité par API via PATCH avec le paramètre ‘create’ et suppression du test ‘testCreateWithEditAction()’
  • Suppression de la classe UtilisateurCreator, remplacée par UserCreationService
  • Suppression de la constante AUTHENTICATION_WITH_CLIENT_CERTIFICATE remplacé par la constante TOGGLE_CertificateAuthentication

Limitations

  • Les dates sont enregistrées en heure locale (TIMEZONE), de fait, il n’est pas possible de changer de fuseau horaire après une installation initiale
  • Le connecteur Récupération dossiers iparapheur ne fonctionne qu’avec la version 5.0.7 d’iparapheur.

Dépréciations

  • Le support de la version 0.2 du SEDA est déprécié.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *