Mocodo

Latest version: v4.2.8

Safety actively analyzes 626691 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 6

3.0.5

Les pattes des associations réflexives étaient incorrectement détectées comme se chevauchant.

**Full Changelog**: https://github.com/laowantong/mocodo/compare/3.0.4...3.0.5

3.0.4

Mocodo peut maintenant lever une erreur lorsqu'un chevauchement se produit entre pattes horizontales ou verticales.

![image](https://user-images.githubusercontent.com/3048819/190922949-85b221ed-189c-438c-90ba-f5b9d4ed56f3.png)

L'option correspondante, `--detect_overlaps` est par défaut activée sous Mocodo online, et désactivée en ligne de commande.

[Documentation](https://rawgit.com/laowantong/mocodo/master/doc/fr_refman.html#Interdiction-des-chevauchements).

**Full Changelog**: https://github.com/laowantong/mocodo/compare/3.0.3...3.0.4

3.0.3

**Full Changelog**: https://github.com/laowantong/mocodo/compare/3.0.2...3.0.3

3.0.2

Corrige une régression où toutes les clés étrangères gardaient leur caractère identifiant lors de leur migration dans une table issue de la conversion forcée d'une association de dépendance fonctionnelle, alors que seules celles distinguées par une cardinalité (*, 1) doivent constituer la clé de cette nouvelle table.

**Full Changelog**: https://github.com/laowantong/mocodo/compare/3.0.1...3.0.2

3.0.1

**Full Changelog**: https://github.com/laowantong/mocodo/compare/3.0...3.0.1

3.0

**Full Changelog**: https://github.com/laowantong/mocodo/compare/2.3.9...3.0

Nouvelles fonctionnalités et modifications

- Majeures :
- Visualisation des agrégations (issue 38).
- Héritage/spécialisation (issue 16). Approche moins complète, mais plus simple que celle expérimentée dans la PR 52.
- Génération d'une sortie en PDF ou en PNG (en local, requiert CairoSVG, à installer séparément). Options `--pdf` et `--png` en ligne de commande, onglet « Options » sous Mocodo online.
- Interactivité des SVG : possibilité de faire apparaître progressivement les éléments d'un MCD à des fins pédagogiques.
- Mineures :
- Nouveau serveur pour Mocodo online, même adresse (merci Cyril !).
- Génération d'une version non interactive des SVG (si nécessaire).
- Sous Mocodo online, sous l'onglet Relations, cliquer sur le titre d'une sortie pour la copier dans le presse-papier.
- `pip install mocodo` installe le logiciel et la commande magique associée.
- Sous Jupyter, `%load_ext mocodo` au lieu de `%load_ext mocodo_magic`.
- Les clés primaires sont passées en tête de la liste d'attributs.
- Les clés étrangères sont par défaut préfixées d'un `` dans les sorties HTML et Markdown.
- Sous Mocodo online, les réarrangements obtenus avec et sans <kbd>alt</kbd> sont inversés : sans <kbd>alt</kbd>, aucune contrainte ; avec <kbd>alt</kbd>, réarrangement contraint par les dimensions de la plus petite grille « équilibrée ». Ajout de la combinaison <kbd>alt</kbd> + <kbd>shift</kbd> pour un réarrangement sur la **deuxième** plus petite grille « équilibrée ».
- Les plus petites grilles équilibrées pour 2 et 3 boîtes sont respectivement (2x1 et 3x1) au lieu de 2x2.
- Les caractères accentués sont maintenant autorisés dans le titre du MCD.
- L'ordre des relations est maintenant stable, et ne dépend plus de l'ordre dans lequel sont énumérées les boîtes dans le texte d'entrée.
- Dans la version HTML du schéma relationnel expliqué, les explications sont maintenant divulguées à la demande (balise `<details>`). Quand aucune n'est divulguée, la sortie est équivalente à la version HTML non verbeuse. De ce fait, cette dernière n'est plus proposée dans les options de Mocodo online, tandis que la première est cochée par défaut.
- Les libellés générés lors de l'obfuscation ne peuvent plus être des mots composés et leur longueur est supérieure ou égale à 3.
- Réduire une clé primaire (agrégation) et forcer la conversion d'une association en table se faisaient avec la même syntaxe (en préfixant d'un "/" un nom d'entité). Cette syntaxe ambiguë est remplacée respectivement en préfixant d'un "/" une cardinalité `0N` ou `1N`, et en mettant le nom de l'association entre crochets droits.
- Table des matières latérale ou flottante dans la [documentation](https://rawgit.com/laowantong/mocodo/master/doc/fr_refman.html).

Corrections

- Sous Mocodo online, le texte d'entrée est conservé en cas d'échec du réarrangement (issue 50).
- Possibilité d'appliquer un facteur multiplicatif à la largeur des libellés lorsque celle-ci est incorrecte (peut arriver sous Windows et Linux). Option `--adjust_width` en ligne de commande, onglet « Options » sous Mocodo online.
- L'obfuscation fonctionne pour les MCD mettant en œuvre une réduction de clé primaire.
- L'obfuscation respecte les identifiants composites (p. ex., `POSITION: latitude, _longitude`).
- L'obfuscation respecte l'option `--seed` (ce n'était plus le cas avec Python 3).

Principaux changements internes

- Dans la documentation et le code, ce qui s'appelait « annotation » s'appelle maintenant « note ». L'option `--hide_annotations` devient `--hide_notes`.
- Le SVG est généré directement, et non plus par génération et exécution d'un code Python.
- Tests de génération des relations remplacés par des instantanés ([_snapshot testing_](https://www.sitepen.com/blog/snapshot-testing-benefits-and-drawbacks)).
- Modernisation partielle du code et de sa structure.
- Passage à [Poetry](https://python-poetry.org).
- Mise à jour de la localisation en français.
- Dans le code, le qualificatif `foreign` est désormais réservé aux **clés** étrangères. Les migrations d'attributs non identifiants ou de clés d'entités qui ne donnent pas lieu à une création de table, sont distinguées par le qualificatif `outer`.
- À des fins de débogage, le type interne d'un champ est affiché au survol de la sortie `html_verbose`.

Fonctionnalités retirées

- Support de Python 2.7.
- Support du logiciel macOS Nodebox (option `--image_format`).
- Support de Tkinter pour le calcul de la taille des libellés (option `--tkinter`).
- Réarrangement par résolution d'un programme linéaire (options `--arrange lp` et `--engine [{cplex,gurobi}]`) (issue 55).
- Support du caractère `\` dans le texte-source (sauf pour l'héritage) (issue 57).
- Compression automatique des lignes consécutives réduites à un deux-points.
- Option `--extract`, puisque le fichier de géométrie est maintenant généré systématiquement.
- Option `--obfuscation_max_length`.

Page 4 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.