[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é.