Historique
7.11 Version finale
14 janvier 2021
- Le namespace de Php était absent dans la liste des contextes possibles pour les classes et paquetages, ajouté.
- ${stereotype} n'était pas géré dans l'éditeur d'opération, corrigé.
(voir ${stereotype} non géré dans l'éditeur d'opération).
- Php Generator 5.4.1
Php Reverse 5.4.1
Php Roundtrip 1.2.1
Ajoute la gestion de <<< tag ... tag.
Ajoute la gestion de ... dans la liste des paramètres des opérations.
Ajoute la gestion de ? avant le type d'un paramètre ou le type de retour d'une opération (Php 8).
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.10
18 september 2020
- La gestion des actions concernant les variables était erronnée et proche des
actions de type structural feature
(voir What is the semantics of UML's ReadVariableAction in BoUML?).
Quand vous chargez un projet ces actions concernant les variables sont automatiquement remplacées
par les actions de type structural feature équivalentes.
- Ajoute les variables d'activité, les actions start object behavior, read self, read extent, reclassify object,
read is classified object, start classifier behavior et les bonnes actions read variable value, clear variable value,
add variable value, remove variable value .
- Il est maintenant possible de demander la mise à jour des projets importés comme librairie au lancement de
BOUML via l'option exec ou la référence du plug-out est remplacée par update_imported_libs.
(voir Command line interface).
- State machine generator 5.0.1
Corrige la gestion des do behavior.
(voir Is BoUML's State Machine Generator right when it's calling doActivity just before exit from a state of StateMachine?).
- Plug-out upgrade 6.10
Ajoute la gestion des nouvelles actions et variables d'activité, corrige des erreurs dans la définition en Java
de l'opération
set_AssociatedClasses de la classe UmlBasePort.
Les classes UmlBaseWriteVariableValueAction et UmlWriteVariableValueAction sont détruites.
- Html documentation Generator 6.6
Mis à par plug-out upgrade, gère les nouvelles actions et les variables.
- Plug-out empty
Mis à par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
nl.lang
13 mars 2020
- Mise à jour de la traduction en Néerlandais,
merci beacoup à Johan van Breda.
nl.lang,
(miroir : nl.lang)
7.9.1
1 Mars 2020
7.9
15 juillet 2019
- Lorsque vous ouvriez un projet avec des définitions pour MySql vous pouviez avoir l'erreur noaction is not a MySqlRefOption,
corrigé.
(voir Erreur : noaction is not a MySqlRefOption).
- Dans l'éditeur d'opération pour C++ ajoute les boutons volatile value, const value
et const expr value tous gérés via le mot clé ${typeprefix},
et l'onglet pour spécifier les paramètres formels .
Attention le mot clé ${typeprefix} est seulement
présent par défaut dans les modèles créés
à partir de cette version de Bouml. Si vous le souhaitez dans vos projets existants
vous devez l'ajouter dans la déclaration/définition par défaut des
opération en C++ via les options de compilation et dans les déclaration/définition
des opérations existantes.
(voir C++ function/member templates).
- C++ Generator 5.4
C++ Reverse 5.5
C++ Roundtrip 5.5
Gère les nouvelles fonctionnalités pour C++
- Plug-out upgrade 6.9
Ajoute les opérations isCppVolatileValue, set_isCppVolatileValue, isCppConstValue,
set_isCppConstValue, isCppConstExprValue, set_isCppConstExprValue, formals, removeFormal,
addFormal et replaceFormal à la classe UmlBaseOperation.
- Html documentation Generator 6.5
Mis à jour par plug-out upgrade.
- Plug-out empty
Mis à jour par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.8
23 octobre 2018
- Quand vous importez un projet en tant que librairie ou mettez à jour
un projet déjà importé en tant que librairie,
le chemin du projet est sauvé/mis à jour pour être
proposé à la prochaine mise à jour.
(voir Improve importing libraries).
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.7.1
28 juillet 2018
- Lorsque vous éditiez une instance de classe ayant au moins un sous diagramme composite ou une instance de partie/rôle,
le menu associé au bouton class: ne contenait pas l'entrée select in browser, corrigé.
- Les étiquettes associées aux ports dans un diagramme de classe disparaissaient après un placement automatique
jusqu'à ce que vous demandiez label default position sur chaque port, corrigé.
- Dans un diagramme si vous déplaciez un port sur un autre coté de son support et que vous annuliez le déplacement
via crtl-z, les étiquettes du port ne suivaient plus le port lors de ses prochains déplacements
et si vous demandiez label default position sur ce port ses étiquettes étaient dupliquées, corrigé.
7.7
19 juillet 2018
- Ajoute l'édition du stéréotype par défaut des diagrammes d'objet composites.
- Dans l'explorateur permet de réorganiser les diagrammes de classes composites dans les classes,
les instances de part/role et diagrammes d'objets composites dans les instances de classe,
les ports dans les parts/roles et instances de part/role instances,
les connecteurrs dans les parts/roles et instances de part/role instances et instances de port.
- Permet de tirer (drag) un port de l'explorateur et de le déposer (drop) dans un diagramme de classes composite,
principalement pour le réafficher après l'avoir retiré.
- Ajoute remove from diagram dans le menu d'une référence de port dans un diagramme composite.
- Il n'est plus possible de retirer un port dans un diagramme de classe, ceci était incohérent
avec l'option de dessin hide ports
- Les ports/roles/parts/connecteurrs/diagrammes composites sont maintenant gérés
via les plug-outs
- Plug-out upgrade 6.8
Ajoute les classes UmlBasePort, UmlPort, UmlBasePortRef, UmlPortRef,
UmlBaseRolePart, UmlRolePart, UmlBaseRolePartInstance, UmlRolePartInstance,
UmlBaseConnector, UmlConnector, UmlBaseClassCompositeDiagram, UmlClassCompositeDiagram,
UmlBaseObjectCompositeDiagram, UmlBaseCompositeDiagram, UmlConnectable et UmlPortRefOwner.
- Html documentation Generator 6.4
Mis à jour par plug-out upgrade,
produit les ports/roles/parts/connecteurrs/diagrammes composites.
- Plug-out empty
Mis à jour par plug-out upgrade,
gère les ports/roles/parts/connecteurrs/diagrammes composites.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.6
12 juin 2018
- Editer un profile non modifiable produisait un plantage, corrigé.
(voir Crash selecting "Edit" on imported libary pkg).
- Editer des messages dans un diagramme de communication alors qu'au moins l'un d'eux était un message explicite (non associé à
une opération) produisait un plantage, corrigé.
- Le nom d'un sujet doit être écrit dans le coin en haut à gauche et nom centré en haut, corrigé.
(voir Use case diagram - where is system boundary?).
- Ajoute les roles/parties, connecteurs et diagrammes composites.
Un diagramme composite peut aussi être cloné dans le compartiment dédié d'une classe
ou une instance de classe.
- Les ports/roles/parties/connecteurs et diagrammes composites ne sont pas encore
gérés par les plug-outs et la documentation n'est pas encore mise à jour.
(suivez BOUML sur @_BoUML_)
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.5
16 avril 2018
- Ayant une relation entre les classes A et B cette relation étant une classe-association où la classe est B, lorsque vous détruisiez B cela provoquait un plantage, corrigé.
(voir Diagramme de classes : destruction d'une classe ).
- Avec la version précédente il n'était pas possible d'éditer une relation directionnelle vers une classe en lecture seule, corrigé.
(voir Can't modify dependencies to library class ou
New lock/unlock bugged feature).
- Une classe peut maintenant avoir des ports. Ajoute l'option de dessin hide ports pour les classes pour cacher/montrer les ports, par défaut ils sont montrés.
Lorsque vous éditez un port la liste par défaut des classes fournies/requises est établie lorsque vous changez le type du port ou en utilisant le bouton
default list dans l'onglet correspondant.
Par défaut les interfaces réalisées sont le type du port lorsqu'il est une interface et les interfaces héritées (via des généralisations
ou réalisations), et les interfaces utilisées sont les interfaces désignées par le type du port via des dépendances stéréotypées
use.
Si le port n'est pas conjugué les classes réalisées sont fournies et les classes utilisées sont requises, sinon c'est l'inverse.
Par défaut les noms des classes fournies/requises sont écrits sur une même ligne, mais c'est une zone de texte et vous pouvez donc la redimensionner.
Via les onglets Used classes et Realized classes la liste des classes utilisées/réalisées peut être modifiée.
Attention, ces listes ne sont pas mises à jour lorsque vous modifiez les héritages ou le stéréotype des classes,
vous devez le faire vous même si besoin.
Actuellement les ports ne peuvent pas accéder aux ports.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.4
10 mars 2018
- Ajoute un verrou sur les classes et artéfacts. Un élément verrouillé ne peut être modifié
par édition ni par roundtrip, et il n'y a pas de génération de code pour lui.
Quand vous verrouillez/déverrouillez une classe il en est de même pour ses sous classes
et son artéfact associé et les autres classes associées à l'artéfact et leur sous classes.
Quand vous verrouillez/déverrouillez un artéfact il en est de même pour les classes associées et leur
sous classes. Il est également possible de verrouiller/déverrouiller récursivement à partir
d'un paquetage ou d'une vue de classes ou de déploiement..
(voir lock classe/artifact).
- Ajoute une option dans le menu global Divers pour modifier le zoom avec la roulette dans un diagramme,
par défaut la roulette agit sur la barre de défilement verticale.
Comme pour les anciennes versions lorsque la souris est sur une barre de défilement ou l'indication de zoom
la roulette agit dessus.
(see zomm sur molette plutôt que déplacement).
- C++ Generator 5.3
C Generator 1.2
Java Generator 5.4
Idl Generator 5.2
Python Generator 5.2
Php Generator 5.4
MySQL Generator 1.3
C++ Rountrip 5.4
Java Catalog 5.4
Java Roundtrip 5.4
Php Roundtrip 1.2
Invalide la génération de code et roundtrip pour les classes/artéfacts verrouillés.
- C++ Reverse 5.4
Java Reverse 5.4
Php Reverse 5.4
Dans les anciennes versions vous indiquiez le ou les répertoires et tous les fichiers ayant les bonnes
extensions etaient reversés. Maintenant vous pouvez indiquer les fichiers à reverser, et seuls ces fichiers
le seront, les fichiers doivent être sélectionnés dans le même répertoire
sauf pour C++ pour lequel vous sélectionnez séparément thes fichiers d'en-tête et les
fichiers source leur permettant d'être dans deux répertoires différents.
Quand vous appliquez le reverse pour fichiers sur un paquetage spécifiant le(s) répertoire(s) pour le langage correspondant,
ce(s) répertoire(s) seront proposés par défaut par l'explorateur de fichiers. POur C++ cela concerne
le répertoire pour les fichiers d'en-tête et le répertoire pour les fichiers source.
Contrairement au reverse de répertoire(s) et au roundtrip le paquetage n'est pas mis à jour pour positionner
la ou les indications de répertoire pour le langage.
- Roundtrip body 5.2
Dans les anciennes versions roundtrip body ne s'appliquait qu'aux artéfacts, ou aux sous artéfacts
quand il était lancé à partir d'un paquetage ou une vue de déploiement, et les opératoins de toutes
les classes associées aux artéfacts atteinds étaient mis à jour.
Maintenant vous pouvez aussi le lancer à partir d'une classe ou d'une vue de classes.
Lorsque vous l'appliquez à une classe ayant un artéfact associé the corps des opérations de cette classes et de
ses sous classes sont mis à jour.
Lorsque vous l'appliquez a une vue de classes le corps des opérations des sous classes et de leurs sous classes sont mis à jour.
Maintenant lorsque vous l'appliquez à un paquetage le corps des opérations des classes associées aux sous artéfacts et leurs sous
classes, de même que celui des classes atteintes récursivement.
(see permettre le roundtrip body dans la définition des classes).
- Plug-out upgrade 6.7
AJoute l'opération isLocked aux classes UmlBaseClass et UmlBaseArtifact.
- Plug-out empty
Mis à jour par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.3
25 décembre 2017
- Ajoute la gestion des trait.
Une classe stéréotypée trait produit un trait au lieu d'une
classe standard.
Une généralisation vers un trait à partie d'une classe/trait
produit une forme use lors de la génération de ${member},
au lieu d'un extend/implement standard. Vous pouvez éditer la définition de la
généralisation typiquement pour ajouter des formes insteadof ou
as.
(voir PHP Traits).
- Dans les précédentes versions le menu Add inherited operation filtrait
les opérations statiques, ce n'est plus le cas, pour distinguer ces dernières
elles sont écrites soulignées.
(voir Inherited functions in PHP).
- Php Generator 5.3
Php Reverse 5.3
Php Roundtrip 1.1
Gère les trait
- Plug-out upgrade 6.6
Ajoute les opérations traitDecl et set_TraitDecl à la classe
PhpSettings.
- Html documentation Generator 6.5
Mis à jour par Plug-out upgrade.
- Plug-out empty
Mis à jour par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.2
20 novembre 2017
- Pour plusieurs types d'élément dans l'explorateur des entrées de menu étaient
manquantes lorsque l'entrée Selectionner dans le diagramme actif n'était pas proposée,
typiquement les entrées associées aux marques, corrigé.
(voir "move marked into" ne fonctionne plus pour les packages).
- Ajoute les options de dessin personalisées pour les classes dans les diagrammes de classes.
Pour sauver les options de dessin utilisées par la représentation d'une classe
dans un diagramme de classes faites un clic souris droit sur elle et choisissez l'entrée
sauvez sous dans le sous menu Options de dessin personnalisées, puis entrez
le nom via la boite de dialogue.
Pour appliquer une option de dessin personnalisée à une classe dans un diagramme de classes
faites un clic souris droit sur elle et choisissez l'entrée corespondante dans le sous menu
Options de dessin personnalisées.
Pour appliquer une option de dessin personnalisée à plusieurs classes dans un même diagramme
de classe selectionnez les puis faites un clic souris droit et choisissez l'entrée corespondante dans le sous menu
Options de dessin personnalisées.
(voir Custom Drawing Settings).
- C++ Reverse 5.3.2
C++ Roundtrip 5.3.2
Corrige deux bugs
(voir Not gernerated in C++ lost after a "Roundtrip" and
How to modify parameter passing type)
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.1.4
25 octobre 2017
- En Php la définition d'une dépendance stéréotypée use ou use-as XYZ
entre classes est maintenant éditable, typiquement pour vous permettre d'ajouter un commentaire
directement et/ou via un alias(@{...}).
- Php Generator 5.2.1
Dans la précedante version le chemin dans les formes use et use-as
pouvait être relatif, ceci est incorrect car le chemin doit être absolu, corrigé.
Gère les formes libres avec peut être des alias (@{...}) dans la définition des
dépendances stéréotypées use ou use-as XYZ entre classes.
7.1.3
21 octobre 2017
- En Php la définition d'un artéfact a le nouveau mot clé ${use}
pour générer les formes use définies via
des dépendances entre classes.
Pour l'artéfact associé à la classe A, une dépendance
stéréotypée use de A vers la classe B et ayant une
définition contenant ${type} en Php produit use B; (B peut être
préfixé par son namespace comme pour n'importe qu'elle autre
référence dans le code généré).
Pour l'artéfact associé à la classe A, une dépendance
stéréotypée use-as XYZ de A vers la classe B et ayant une
définition contenant ${type} en Php produit use B as XYZ; (B peut être
préfixé par son namespace comme pour n'importe qu'elle autre
référence dans le code généré).
Attention, le mot clé ${use} est seulement
présent par défaut dans les modèles créés
à partir de cette version de Bouml. Dans les autres cas pour que les
formes use soient générées vous devez
ajouter ce mot clé dans la définition par défaut des
artéfacts dans les options de génération et les
définitions des artéfacts.
(voir PHP use and namespaces).
- Php Generator 5.2.1
Génère les formes use.
Lorsque force namespace prefix generation n'est pas positionné via
les options de génération, le namespace n'est pas géné
pour les classes ayant une forme use produite à partir des dépendances,
de plus l'alias est utilisé pour les classes ayant une forme use-as
générée via une dépendance.
Le générateur vérifie que les formes use produites par les
dépendences ne sont pas déjà présentes dans la définition
textuelle des artéfacts ou déjà produites par une autre dépendances,
pour ne pas les générer plusieurs fois.
7.1.2
22 septembre 2017
- Php permet à une opération d'être à la fois static et abstract
mais cela n'est pas autorisé dans Bouml pour lequel ces indicateurs sont exclusifs.
Le nouveau bouton à cocher static&abstract est ajouté
dans l'onglet Php de l'éditeur d'opération, il met l'opération
static (permettant de voir son nom souligné) et remplace le mot clé
${abstract} par abstract dans sa définition en Php,
permettant de générer le code source voulu.
Les changements inverses sont effectués lorsque le bouton est décoché.
Attention, cocher ou décocher le bouton
abstract dans ce cas n'a pas d'impact sur le code généré
tant que la définition en Php de l'opération contient abstract
à la place d'${abstract}.
- Php Reverse 5.2.2
Php Roundtrip 1.0.1
Maintenant lorsqu'une opération est simultanément static et abstract
le reverse et roundtrip positionnent static et dans la définition pur Php
de l'opération le mot clé ${abstract} est remplacé par abstract
7.1.1
14 septembre 2017
- Lorsqu'un élement était associé à un diagramme
(permettant d'ouvrir le diagramme associé en double cliquant sur l'élément
au lieu de l'éditer) et que vous détruisiez le diagramme puis sauviez le projet
sans aucun changement dans le paquetage contenant l'élément (ce qui suppose
que l'élément et le diagramme ne sont pas sous le même paquetage),
uncrash se produisait plus tard dans une autre session de Bouml utilisant le projet
lorsque vous double cliquiez sur l'élément ou que vous sauviez
le projet alors qu'un changement avait eu lieu dans le paquetage contenant
l'élément. Fixed.
- Plusieurs entrées de menu n'étaient pas traduite en Français, corrigé.
- Bouml peut maintenant être utilisé en Néerlandais,
merci beacoup à Johan van Breda pour les traductions,
pour cela indiquez le fichier nl.lang en positionnant l'environnement
via le menu global Divers puis relancer Bouml.
Bouml peut maintenant être utilisé en Espagnol,
merci beacoup à Federico Bernoldi pour les traductions,
pour cela indiquez le fichier es.lang en positionnant l'environnement
via le menu global Divers puis relancer Bouml.
- C++ Reverse 5.3.1
C++ Rountrip 5.3.1
Le reverse/roundtrip pouvait entrer dans une boucle infinie lorsque la dernière
forme d'un fichier n'était pas une forme C++ mais par exemple un
identificateur/macro du préprocesseur. Corrigé.
- Php Reverse 5.2.1
Dans les précédentes versions une forme use dans une définition de classe
produisait une erreur de syntaxe et interrompait le reverse de la classe, maintenant elles sont
gérées et supportées par des membres de classe externes.
Pour indiquer le répertoire des sources Php au niveau des paquetages uml crées lors
du reverse, essaye d'utiliser un chemin relatif au répertoire racine si celui-ci est défini
via les options de génération.
- Php Roundtrip 1.0
Un roundtrip Php est maintenant disponible.
Comme pour les autres roundtrips il a besoin de connaître au niveau des paquetages uml
le chemin du répertoire de génération Php.
Parce que ce chemin n'était pas positionné par les précédentes version du reverse,
si votre projet a été créé par uen de ces anciennes version du reverse Php
vous devez indiquer au moins le répertoire racine via les options de génération
ou le paquetage uml racine contenant le résultat du reverse.
Si au moin un paquetage uml ne spécifie pas de répertoire Php une boite de dialogue
apparaitra vous demandant de confirmer le reverse de tous les fichiers sous le répertoire et
ses sous répertoires.
7.1
15 aout 2017
- Quand vous éditiez une relation ou un attribut déclaré static
ce mot clé n'était pas produit dans la prévisualisation C++, corrigé.
(voir le mot clé static n'apparait pas en c++).
- Ajoute les définition externes pour les artéfacts, elles sont pour les artéfacts
ce que sont les membres externes pour les classes, elles permettent donc aux artéfacts
de produire des définitions/déclarations autres que des classes parmis les classes.
Dans l'arbre des éléments les définitions externes pour les artéfacts
sont des enfants des artéfacts, et sont toujours associées à ces derniers.
L'éditeur d'artéfact permet de changer l'ordre de génération des
dé externesfinitions parmi les classes, mais vous ne pouvez pas les dissocier.
(voir PHP Roundtrip).
- Modifie l'éditeur des options de reverse/roundtrip settingspour séparer les parties filtrage
et extensions afin de rentre les choses plus claires.
- C++ Generator 5.2
C Generator 1.1
Java Generator 5.3
Idl Generator 5.1
Python Generator 5.1
Php Generator 5.2
MySQL Generator 1.2
Gère les définitions externes d'artéfact.
Bien-sûr suit la nouvelle interface.
- C++ Reverse 5.3
C++ Rountrip 5.3
Java Reverse 5.3
Java Catalog 5.3
Java Roundtrip 5.3
Mysql Reverse 1.2
Roundtrip body 5.1
Suit la nouvelle interface, ces reverse/roundtrip ne créent ni ne modifient
les définitions externes d'artéfact
- Php Reverse 5.2
Les classes reversées peuvent maintenant être séparées par d'autres formes
grâce aux définitions externes d'artéfact.
Les formes uses placées avant la première définition de classe étaient
prises en compte mais pas produites dans la définition de l'artéfact, maintenant elles
sont présentes.
Les interfaces inconnues sont maintenant stéréotypées interface.
Bien-sûr suit la nouvelle interface.
- Plug-out upgrade 6.5
Ajoute les classes UmlBaseExtraArtifactDefinition et UmlExtraArtifactDefinition
avec leur membres et artéfact associés.
Dans la classe UmlBaseArtifact l'opération associatedClasses
est renommée associatedElements et l'opération set_AssociatedClasses
est renommée set_AssociatedElements, ces opérations utilisent maintenant un
vecteur d'UmlItem au lieu de UmlClass pour gérer les
UmlClass et UmlExtraArtifactDefinition au lieu des seules UmlClass.
- Html documentation Generator 6.4
Mis à jour par Plug-out upgrade. Gère les définitions externes d'artéfact
- Plug-out empty
Mis à jour par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
7.0.1
29 juin 2017
- Cette version n'existe que sous Windows.
- C++ Roundtrip 5.2.1
Sous Windows lorsque vous lanciez le roundtrip C++ à partir d'un
paquetage où le répertoire est spécifié
(peut être via les options de génération)
et fini par un \ , le roundtrip n'était pas capable de trouver les fichiers source, corrigé.
Voir Roudtrip impossible sous windows
7.0
May 31 2017
- BOUML redevient libre d'utilisation
Cette version est identique à la version
6.12 sauf qu'il n'y a plus de gestion de licence, ni serveur de licence ni viewer.
- Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
- Attention
nouveaux dépôts pour Debian et Ubuntu, voir Téléchargement
6.12
12 Mars 2017
- Lors du déplacement d'un paquetage ou autre conteneur dans un diagramme des points de rupture de lignes
placés dans le conteneur n'étaient pas déplacés,
ils sont déplacés maintenant.
(voir Line breaks will not be moved when moving packages).
- Des extentions complémentaires pour les fichiers d'en-tête et source peuvent être
ajoutées pour le reverse et roundtrip C++ via Editer les options de reverse/roundtrip.
(voir Multiple C++ header file extensions).
- C++ Reverse 5.2
C++ Roundtrip 5.2
Gère les extensions complémentaires
- Plug-out upgrade 6.4
Ajoute les opérations headerAdditionalExtensions, set_HeaderAdditionalExtensions,
sourceAdditionalExtensions et set_SourceAdditionalExtensions dans la classe CppSettings
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.11.4
1 Novembre 2016
- Lorsque vous sauviez le contenu de la fenêtre de trace via le bouton
Save le résultat était invalide à moins
que vous ayez préalablement fermé puis réouvert
cette fenêtre, corrigé.
- Corrige des libélés dans la version anglaise.
- C++ Reverse 5.1.8
C++ Roundtrip 5.1.7
Corrige des libélés dans les traces
6.11.3
18 septembre 2016
6.11.2
28 aout 2016
- Depuis la version 6.11 lorsque vous venez juste de créer un nouveau projet et vous créez
un diagramme et ajoutez des éléments ceux-ci n'apparaissent pas.
Ce problème disparait lorsque vous changez le format
(IsoA4 par défaut) ou vous sauvez puis rechargez le projet. Corrigé
6.11.1
4 juin 2016
6.11
29 mai 2016
- Il est maintenant possible de donner une taille personnalisée aux diagrammes, entre 400 et 40000 pour la largeur et la hauteur.
(voir Custom paper size).
- XMI2 Export 5.1
L'encodage (UTF8 ou Latin1/ISO-8859-1) était mal géré, corrigé.
- Html documentation Generator 6.3
Il est maintenant possible de spécifier si l'export est fait en UTF8 ou Latin1/ISO-8859-1.
Après les options non obligatoires -flat et -avg vous pouvez maintenant utiliser l'option -utf8 ou -latin1
pour indiquer l'encodage, sans cette option l'encodage est demandé.
L'encodage est uniquement géré par la version C++ version du générateur Html
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.10.1
18 mars 2016
- Pour un utilisateur de Bouml sous Windows 10 les boutons explorer ne font rien lorsqu'ils
s'appliquent à un répertoire, ce qui est par exemple le cas dans l'onglet
Répertoire du dialogue des options de génération.
Je ne comprends pas pourquoi pour cet utilisateur QFileDialog::getExistingDirectory ne marche pas
dans le mode par défaut utilisant le dialogue natif (ici celui de Windows 10).
Pour contourner ce problème et pouvoir choisir d'utiliser le dialogue de Qt à la place
du dialogue natif de l'OS, une nouvelle option est ajoutée dans l'environnement, voir Dialogue de répertoire
dans l'éditeur d'environnement, appelé via l'entrée Etablir l'environnement
du menu global Divers.
Rappel, les options de l'environnement sont associées aux utilisateurs, et sauvées dans leur fichier .boumlrc,
elles ne sont pas sauvées dans les fichiers projet.
(voir saisie d'un répertoire).
- Lorsque vous choisissiez une police de caractères de grande taille via l'entrée Taille de police de caractères
du menu global Divers, dans certaines tables comme par exemple dans l'éditeur d'outils
les cellules pouvaient être trop petites pour écrire les caractères ou icones correctement,
corrigé.
(voir saisie d'un répertoire)
- C++ Reverse 5.1.7
Java Catalog 5.2.1
Java reverse 5.2.1
Php Reverse 5.1.1
Pour utiliser les dialogues de Qt pour choisir un répertoire, suivant l'option d'environnement associée.
6.10
4 janvier 2016
- Ajoute la gestion des sous classes statiques en Java.
Lorsque vous chargez un projet fait par une version plus ancienne de Bouml le mot clef
${static} est automatiquement ajouté à la définition par
défaut des classes en Java (y compris les interfaces et enums) dans les options
de génération et dans la définition Java des classes existantes
(y compris les interfaces et enums), mais cela n'est bien-sûr vraiment utile
que pour les classes définies dans d'autres.
- Java Generator 5.2
Java Catalog 5.2
Java reverse 5.2
Java roundtrip 5.2
Gestion des sous classes statiques.
- Plug-out upgrade 6.3
Ajoute les opérations isJavaStatic et set_isJavaStatic à la classe UmlBaseClass
- Html documentation Generator 6.2
Mis à jour par Plug-out upgrade. Gère les sous classes statiques en Java.
- Plug-out empty
Mis à jour par Plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.9.2
15 décembre 2015
- Le menu d'une classe stéréotypée table
dans un diagramme de classes était erroné, corrigé.
(voir Context menu in diagrams)
6.9.1
30 octobre 2015
- Quand Php est le seul langage positionné via le menu global Languages et que
vous ajoutez un nouveau paramètre à une opération donnant
son nom mais pas son type, the mot clé ${v<i>} était inséré
deux fois dans la définition par défaut, corrigé.
Cette erreur fut introduite dans la version 6.9.
(voir PHP function)
6.9
18 octobre 2015
- Ajoute deux nouvelles options de génération pour Php :
- les paramètres sont typés : si positionné '${t<n>}' est ajouté
par défaut dans la définition des paramètres des opérations.
- les paramètres out/inout sont des références : si positionné un '&' est ajouté
dans la définition des paramètres de direction in ou inout
(voir PHP function)
- Dans les projets existants ces deux options sont mises a faux par défaut,
quand vous créé un nouveau projet ces options sont mises à vrai par défaut.
- Gère deux nouvelles fonctionnalités de PHP 7 :
- le type de retour des opérations peut être indiqué, pour produire ce type
ajouter ${type} apràs ${)} (il est possible de placer des espaces/tabs/return
entre ces deux formes). Par défaut lorsque vous créez un nouveau projet
${type} est présent dans la définition par défaut des
opérations via les options de générations pour Php, vous
avez à l'ajouter si besoin dans les projets existants.
- le groupage dans les formes use, cela ne concerne que le reverse Php
- Php Generator 5.1
Php Reverse 5.1
Html documentation Generator 6.1
Prise en compte des nouvelles fonctionnalités
- Plug-out upgrade 6.2
Ajoute les opérations isParametersTyped, set_IsParametersTyped, isOutInoutParametersByReference
et set_IsOutInoutParametersByReference à la classe PhpSettings
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.8.8
27 aout 2015
- Idl Generator 5.0.5
Lorsqu'un typedef est basé sur un type textuel ce dernier n'était pas traduit
si besoin dans le type IDL, par exemple ulong était produit à la place de
unsigned long, corrigé.
(voir la seconde partie de IDL typedef generation fails)
6.8.7
23 aout 2015
6.8.6
21 juin 2015
- Dans certains cas comme par exemple l'ajout dans un diagramme d'un élément
ayant un stéréotype faisant parti d'un profil sans une image dédiée,
l'erreur doesn't exist or is not a know image format se produit. Corrigé.
(see icone obligatoire si steréotype sur une classe)
6.8.5
9 mai 2015
6.8.4
11 avril 2015
- XMI2 Export 5.0.3
annotatedElement était manquant dans la génération des commentaires, corrigé.
(voir XMI comment generation)
- XMI2 Import 5.0.6
Importe les commentaires avec (ou sans) annotatedElement.
(voir XMI comment generation)
6.8.3
22 mars 2015
6.8.2
19 mars 2015
- Cette version n'existe que pour MacOS X et n'est utile que sous Yosemite (10.10.2)
Sous Yosemite (10.10.2) la fonction C setenv est erronée et ne permet pas de modifier la variable d'environement PATH.
A cause de cela lorsque vous vouliez exécuter un plug-out comme par exemple un générateur
de code rien ne se passait et vous aviez un message d'erreur connexion timeout après quelques secondes.
Cette version permet de passer outre ce problème.
(voir os-x plugout)
6.8.1
7 mars 2015
- En Php la définition des getter/setter était fausse lorsque
l'attribut/relation associé est static, corrigé.
(voir PHP code generation error)
6.8
22 février 2015
- Les images placées dans les diagrammes via le bouton
peuvent maintenant être redimentionnées, même si elles furent
ajoutées dans les diagrammes par une ancienne version de Bouml.
Quand une image est redimentionnée son rapport hauteur/largeur et la position
de son centre sont inchangés.
Quand vous déplacez la souris seule la composante horizontale est prise
en compte pour calculer la nouvelle taille de l'image.
Sur une sélection multiple, lorsque vous demandez que les éléments
prennent seulement la hauteur du premier élément sélectionné,
les images sont inchangées. Sur une sélection multiple, lorsque vous demandez
que les éléments prennent seulement la largeur du premier élément
sélectionné, la hauteur des images sélectionnées est aussi modifiée
si leur largeur l'est.
Pour qu'une image reprenne sa taille initiale, éditez la (par exemple via un double
clic souris sur elle), et validez.
(voir Resize Image )
- Contient la version corrigée du plug-out 'empty'
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
plug-out 'Empty'
8 février 2015
- Le code généré à partir de ce plug-out
ne peut être compilé ni en C++ ni en Java car quelques définitions
sont erronnées.
L'archive empty.tar.gz
contient une définition corrigée du plug-out.
6.7.2
7 février 2015
- Avec les versions précédentes lorsque vous exportez un diagramme
via un plug-out (par exemple le générateur HTML)
et que ce diagramme est ouvert et que vous avez fait des modifications,
l'image produite ne prends pas en compte ces modifications. De plus après cela
si vous ne fermer pas le diagramme vous pouvez l'ouvrir une seconde fois (par exemple
via un double clic sur sa représentation dans le browser
), puis si vous ne fermez qu'une des deux occurrences du
diagramme ouvert un plantage peut se produire plus tard. Corrigé.
(voir images not present in docuementation HTML)
6.7.1
10 janvier 2015
- XMI2 Export 5.0.2
Les constraintes des attributs et relations étaient à tord
produites dans la définition des attributs/relations, corrigé.
(voir Small bug in XMI 2.x generation)
- XMI2 Import 5.0.5
Importe les contraintes des attributs et relation en dehors de leur définition.
Les contraintes placées dans la définition des attributs/relations
sont toujours importées pour être compatible avec les
anciennes versions du générateur.
(voir Small bug in XMI 2.x generation)
6.7
December 7th 2014
- Dans un diagramme de séquence/communication un message peut maintenant être
également le constructor/destructeur d'une classe directement héritée
par la classe de l'instance, et n'importe laquelle des autres opérations
des classes héritées par la classe de l'instance indépendamment
du fait qu'elles soient redéfinies ou non.
Pour distinguer les opérations quand vous éditez un message, la classe
où est définie une opération est indiquée dans la liste
des opérations proposées, sauf pour les opérations de l'instance.
La nouvelle option de dessin montrer la classe des opérations permet de montrer
le nom de la classe où une opération est définie dans les messages
d'un diagramme de séquence/communication. Cette option est sans effet tant que
montrer la définition complète des opérations n'est pas positionné.
Lorsqu'il est indiqué le nom d'une classe est suivi par '.' avant le nom de l'opération
quand l'option de dessin montrer le contexte des message est Java or Python,
sinon il est suivi de '::'.
Voir Gestion des héritages dans les diagrammes de sequence
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.6.4
16 Octobre 2014
6.6.3
21 septembre 2014
- Sous Windows the répertoire courant est forcé en interne au répertoire
de l'executable. Cela permet d'associé bouml.exe à
l'extension prj et de lancer Bouml en double cliquant sur un fichier projet
sans devoir passer par un fichier bat comme avant.
Voir You don't have a licence message
- C++ Generator 5.1.7
Dans la définition d'un artefact ${namespace} produit maintenant le nom du namespace
courant (une chaine de caractères vide en dehors d'un namespace) également dans le fichier
source (c'était déjà le cas dans le fichier d'en-tête),
${NAMESPACE} fait de même mais en majuscule.
Voir ${namespace} substitution not done in generated file
6.6.2
23 août 2014
- Java Catalog 5.1.1
Java reverse 5.1.1
Java roundtrip 5.1.1
Les extends dans une définition de générique
n'eacute;taient pas positionnés, par exemple I2 était manquant
dans la forme interface I1<T extends I2> ..., corrigé.
Une ',' ou '}' indésirable était présente
dans les définitions d'éléments d'énumération,
corrigé.
6.6.1
10 août 2014
- C++ Generator 5.1.6
C++ Reverse 5.1.6
C++ Roundtrip 5.1.6
Les mots clé override et final ne sont pas présents
dans une définition d'opération en dehors de sa classe.
- C++ Reverse 5.1.6
C++ Roundtrip 5.1.6
Des classes pouvaient être par erreur placées dans un
namespace dans le cas où un répertoire reversé
contient à la fois des classes dans un namespace et des classes
hors namespace, corrigé.
Ajoute la gestion des initialisations C++11 utilisant des { }.
- C++ roundtrip 5.1.6
Lors d'un roundtrip au niveau d'une classe et non son artéfact
ou vue/paquetage et que l'artéfact gère plusieurs classes,
le roundtrip pouvait indiquer par erreur une fin de fichier indésirable,
corrigé.
6.6
7 juillet 2014
- Un plantage pouvait se produire lors de l'utilisation du langage C,
corrigé.
- Essaye d'accéder à la documentation en ligne lorsque la
documentation n'est pas installée ou n'est pas spécifiée
dans l'environement via le menu Divers. Si le navigateur n'est pas
spécifié essaye d'utiliser firefox, sous Windows
si firefox n'est pas installé essaye d'utiliser internet
explorer.
Voir Help (F1) should just go to online location
- Les options de dessins permettent maintenant de modifier la couleurs des
héritages tracés dans les diagrammes de classes, voir
Can we modify the colours of lines?
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.5
1 mars 2014
- ${extends} était manquant dans la déclaration par défaut d'une interface en Php, corrigé.
- Quelques opérations comme sélectionner tout, changer le zoom et le placement automatique, écrivait en
séquence la documentation des éléments considérés ralentissant l'opération,
corrigé.
- Ajoute la génération C, voir C Generator
- Ajoute la gestion des opérations static et default des interfaces de Java 8.
- C++ reverse 5.1.5
C++ roundtrip 5.1.5
Le reverse et roundtrip pouvaient boucler indéfiniment lors de la lecture de >> (sans espace entre les deux >)
dans un template imbriqué, corrigé.
- Project control 5.0.2
L'indications modifié par pouvait être fausse, corrigé.
- XMI2 Import 5.0.3
Pour importer les formes <uml:Package xmi:type="uml:Package" ...
- Java Generator 5.1
Java Catalog 5.1
Java reverse 5.1
Java roundtrip 5.1
Ajoute la gestion des opérations static et default des interfaces de Java 8.
- Plug-out upgrade 6.1
Ajoute les opérations isJavaDefault et set_isJavaDefault sur la classe UmlBaseOperation
- Plug-out empty
Mis à jour parplug-out upgrade.
- licServer
AJoute k'option -d, si elle est utilisée elle doit être suivi par le chemin absolut du répertoire
contenant le fichier de licence. Utile pour lancer le serveur de licences comme un démon.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.4.7
20 mai 2013
6.4.6
7 avril 2013
- La éfinition des setter/getter contenait à tord le mot clef
${thread_local} lorsque la définition de l'attribut/relation
associé contenait ce mot clef, corrigé.
(voir thread local)
6.4.5
24 mars 2013
- Un plantage pouvait se produire pendant un après un update imported library,
ce bug a été introduit en version 5.0 lors du portage en Qt4, corrigé.
(voir Update imported library)
6.4.4
17 mars 2013
- Dans les précédentes version lors d'un drag&drop d'une relation dans un diagramme
liant des élémenets dessinés plusieurs fois dans le diagramme il n'était pas
possible de décider entre quels éléments la relation devait être tracée.
Maintenant si les extrémités de la relation a tracer sont séléectionnées
la relation est faite entre celles-ci, sinon un message vous invite à sélectionner
les extrémités voulues.
(voir Relations)
- C++ generator 5.1.5
Java Generator 5.0.3
Idl Generator 5.0.3
Php Generator 5.0.3
Python Generator 5.0.3
MySQL generator 1.1.2
Les formes @{xxx} étaient mal gérées, corrigé.
(voir User properties)
- XMI2 Import 5.0.2
Les identificateur xmi peuvent contenir des points..
(voir Import XMI)
- licServer
Sous Linux gère le cas ou la variable d'environnement DISPLAY n'est pas définie
lorsque le fichier de requête de licence doit être produit, indiquant qu'il n'y a pas de serveur X.
6.4.3
26 janvier 2013
- C++ reverse 5.1.4
C++ roundtrip 5.1.4
Des opérations pouvaient être déclarées inline ou dupliquées
par erreur dans des classes template, corrigé.
(voir inline indiscipliné?)
- C++ generator 5.1.4
Dans les précédentes versions la déclaration C++
des membres de classe externes était toujours produite dans les fichiers
d'en-tête lorsque la classe était une classe template
ou une sous classe d'une classe template.
Ce n'est plus le cas maintenant et l'indication inline est suivi sans
restriction.
(voir Membre externe)
- Java Catalog 5.0.3
Java reverse 5.0.2
Java roundtrip 5.0.2
Les paramètres d'opération étant un tableau multi dimensionnel ([]...[])
étaient reversés comme des tableaux à une dimension ([]), corrigé.
Positionne également la multiplicité.
- File Control 6.0
Les diagrammes d'objects et activité n'étaient pas gérés,
corrigé.
6.4.2
1er janvier 2013
- C++ reverse 5.1.2
C++ roundtrip 5.1.2
Les paramètres formels des classes template étaient mal reversés lorsque leur type
n'était pas class, produisant un type vide, corrigé.
(voir Génération des opérations template)
- licServer
Sous Linux gère le cas ou la variable d'environnement DISPLAY n'est pas définie
indiquant qu'il n'y a pas de serveur X.
6.4.1
15 décembre 2012
- Depuis au moins Qt 4.8.1 dans un éditeur multi-lignes la position du curseur était
erronée pour les grosses polices de caractères et ne correspondait pas
à la position où les caractères étaient insérés
ou retirés, évité. Cela concernait Ubuntu Quantal Precise et Oneiric,
Debian Wheezy et MacOS X.
(voir Effets du changement de taille de police)
- Dans un diagramme d'activité/état un clic souris droit sur le nom
d'un flux/transition contenant au moins un espace et 10 caractères
vous propose d'imposer une largeur maximale (en
nombre de caractères). Le nom est écrit sur plusieurs lignes
si besoin et coupé au niveau des espaces pour tenter de respecter
la largeur maximale.
(voir Allow to put the connector line names in several lines)
- Le menu d'une instance de classe dans un diagramme de communication
a les sous menus
Add related modeled instance et Add related instance
contenant les classes référencées par la classe
de l'instance courante via une relation (sauf héritage)
y compris les relations héritées. Bien-sûr si vous choisissez
une des ces classes une instance (modélisée)
de cette classe sera ajoutée
(voir Communication)
- Le menu d'une instance de classe dans un diagramme d'objets
a le sous menu Add related modeled instance
contenant les classes référencées par la classe
de l'instance courante via une relation (sauf héritage)
y compris les relations héritées. Bien-sûr si vous choisissez
une des ces classes une instance (modélisée)
de cette classe sera ajoutée
(voir Communication)
- C++ generator 5.1.3
Java Generator 5.0.2
Idl Generator 5.0.2
Php Generator 5.0.2
Python Generator 5.0.2
MySQL generator 1.1.1
Depuis l'utilisation d'au moins Qt 4.8.1 les générateurs de code
ne produisaient pas les caractères accentés, corrigé.
Cela concernait Ubuntu Quantal Precise et Oneiric,
Debian Wheezy, Open Suse 12.2 et MacOS X.
(voir Accentuées et génération de code)
6.4
2 décember 2012
- Sous Ubuntu, lorsque le thème/apparence utilisé est KDE Plasma
les aides (tooltips) étaient totalement noires, force le fond en jaune.
(Voir Black popup help on Ubuntu 12.04 Precise)
- Dans les précédentes versions les opérations des classes
paramétrées étaient forcément inline en C++,
ce n'est plus le cas même si elle le reste par défaut.
(Voir templates et définitions)
- C++ reverse 5.1.2
C++ roundtrip 5.1.2
un && dans la définition d'un paramètre d'une opération
provoquait une erreur de syntaxe, corrigé.
(Voir Retro ingeniering c++11)
Les opérations des classes paramétrées ne sont plus
forcément inline.
(Voir templates et définitions)
- C++ generator 5.1.2
Les opérations des classes paramétrées ne sont plus
forcément inline.
(Voir templates et définitions)
- Html documentation Generator 6.0.1
Ajoute l'option -tag_all, elle est similaire à l'option -tag
introduite dans BOUML 6.2 mais elle s'applique partout et non seulement aux
descriptions.
Lorsque les options -tag et -tag_all ne sont pas utilisées
vous pouvez demander explicitement à ne pas protéger une séquence
de caractères en plaçant ceux-ci entre <html> et </html>.
(Voir
HTML doc generator -- embedded html in desciption)
- Pour forcer les opérations des classes paramètre à être
inline lorsqu'elles ont été modélisées
par les précédentes versions de BOUML il est nécessaire
de modifier le numéro de format des fichiers. A cause de cela
les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.3
November 2th 2012
- Un fichier SVG produit pour un diagramme par un plug-out via l'opération
UmlBaseDiagram::saveIn pouvait avoir une mauvaise définition, corrigé.
- Dans le sous menu add inherited operation du menu d'une classe the opérations
abstraites étaient remplcées par une ligne vide, corrigé.
(Voir Affichage des menus sous Ubuntu)
- La nouvelle option de dessin color gradient permet d'avoir un gradient diagonal,
vertical ou horizontal pour colorer les éléments dans un diagramme.
Par défaut il n'y a pas de gradient de couleur.
(Voir dégradés de couleur et ombres dans les diagrammes)
- Il est maintenant possible de demander de distribuer automatiquement les éléments
dans un diagramme pour voir le même distance horizontale ou verticale entre eux.
(Voir Améliorations positionnement)
- Via le menu global miscellaneous vous pouvez maintenant demander l'affichage d'une grille
dans les diagrammes.
(Voir Améliorations positionnement)
- Ajoute l'option de génération
a type used by value in an operation profile forces its include in header
pour C++ (premier onglet de l'éditeur). Positionné par défaut
à vrai pour les anciens projets et à faux lorsque vous creez un nouveau
projet. Pour anciennes versions des compilateurs C++ un type utilisé par valeur
dans le profile d'une opération devait être connu, ce n'est plus le cas.
(Voir Génération des liens de dépendance sous C++)
- C++ generator 5.1.1
Dans les précédentes versions lorsque vous utilisiez BOUML en
Fraçais ou Espagnol une dépendance produisait toujours
un #include dans l'en-tête même si vous demandiez
sa production dans le fichier source. Corrigé
Gére la nouvelle option de génération
a type used by value in an operation profile forces its include in header.
(Voir Génération des liens de dépendance sous C++)
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.2
14 octobre 2012
- Un plantage se produisait en utilisant la flèche gauche en étant sur
le menu global project ou la flèche droite en étant sur
le menu global help, corrigé.
(voir Stepping outside the main menu crashes Bouml 6.0.2)
- Sous Ubuntu, suivant le thème/apparence du bureau les menus
de Bouml pouvaient ne pas être visibles. Par exemple le
thème par défaut Ambiance produisait un
très mauvais résultat alors qu'il n'y avait pas
de problème avec Clearlooks. Evité.
Sur les versions récentes d'Ubuntu les boutons
ouvrir / sauver / imprimer / chercher et les flèches d'historique
n'étaient pas visibles, ils le sont maintenant en n'utilisant
plus la barre de menu native d'Ubuntu.
- Sous MacOS X dans les versions précédentes le fichier de licence
devait être placé parmi les exécutables dans le
sous répertoire bouml.app/Contents/MacOS, à cause
de cela chaque fois que vous remplaciez votre version de BOUML par une autre
vous deviez replacer le fichier de licence dans le bon répertoire.
Maintenant sous MacOS X le fichier de licence peut être mis dans
le répertoire contenant bouml.app
(c'est à dire le répertoire /Applications/bouml
si vous avez créé le répertoire bouml
sous /Applications comme je le conseille dans cette
vidéo),
vous permettant de remplacer une version de BOUML par une autre
sans faire attention au fichier de licence.
- Les touches F1..F12, flèches, suppr/delete etc ne marchaient
pas depuis la version 5.0, corrigé. Notez que les flèches
peuvent être utilisées pour déplacer lentement
les éléments sélectionnés dans un diagramme,
et suppr/delete retire les éléments sélectionnés
du diagramme courant (pas du modèle).
- Dans un diagramme de cas d'utilisation un clic droit sur le nom d'un cas d'utilisation
contenant au moins un espace et 10 caractères vous propose d'imposer une largeur maximale (en
nombre de caractères). Le nom est écrit sur plusieurs lignes
si besoin et coupé au niveau des espaces pour tenter de respecter
la largeur maximale.
(voir Retour charriot dans les diagrammes des cas d'utilisation)
- MySQL generator 1.1
MySQL reverse 1.1
Prise en compte de modification dans l'API des plug-out
concernant MySQL.
- Plug-out upgrade 6.0
Ajoute principalement les fonctionnalités liées à
MySQL et C++11. Seuls les plug-outs créés
depuis une version 5.0 peuvent être mis à jour.
- Genpro 5.0.1
La première fois que vous appliquez gpro sur un artifact
stéréotypé executable le pied est positionné
par défaut à QT += network qt3support et
WITHMYSQL est ajouté aux symboles définis.
- Html documentation Generator 6.0
Mis à jour par plug-out upgrade.
Les références des classes étaient erronnées,
corrigé.
Prise en compte des ajouts de C++11, génère les définitions
MySQL.
Dans les version précédentes les descriptions étaient
générées en protégant les caractères
spéciaux comme <, c'est à dire que < dans une description
produisait <. Maintenant si vous utilisez l'option -tag
les caractères spéciaux comme < ne sont plus protégés,
c'est à dire que < est produit inchangé et non via <.
Les formes comme ${name} sont toujours remplacées même
lorsque l'option -tag est utilisée.
Par défaut l'option -tag n'est pas présente,
vous devez l'ajouter si vous le souhaitez via l'entrée tools settings
du menu global tools, cette option doit être placée
après les options -flat et -svg. (voir
HTML doc generator -- embedded html in desciption)
- Deploy 6.0
Pour gérer MySQL.
- Plug-out empty
Mis à jour par plug-out upgrade.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.1
23 septembre 2012
- Des plantages aléatoires pouvaient se produire sous MacOS X,
corrigé
- Qt utilise 96 dpi sous Linux et Windows mais seulement
72 sous MacOS X, ainsi les textes sont plus petits sous
MacOS X dans les diagrammes, et c'est aussi le cas pour les
eléments comme par exemple les classes dont la taille
par défaut dépend de la taille de leur textes
interne. A cause de cela les diagrammes créés/
modifiés sous Linux/Windows ont une mauvaise apparence
lorsque vous les regarder sous MacOS X, et l'inverse est aussi
vrai. Pour éviter ce problème vous pouvez maintenant
forcer le nombre le dpi via le sous menu Diagram font dpi
du menu global Miscellaneous.
Par défaut un projet créé sous Linux/Windows
utilisera 96 dpi, et 72 dpi s'il est créé sous MacOS X.
Le dpi n'est pas positionné pour les
projects créés avec des anciennes versions, si besoin
vous devez choisir la bonne valeur de dpi, suivant le fait que
les diagrammes ont été principalement fait sous
Linux/Windows ou MacOS X.
- Ajoute la gestion des licenses flottantes.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
6.0.2
23 août 2012
- Une erreur se produisait lorsque vous chargiez un projet contenant
une clef MySQL sur plusieurs colonnes,
corrigé.
- Sous CentOS et distributions similaires, suivant la configuration
de Qt la largeur calculée pour un élément
comme une classe dans un diagramme de classe est trop petite et
son nom, stéréotype ou ses membres peuvent être
tronquées. Dans les précédentes versions je vous
proposais de lancer Bouml et le viewer avec une indication de
police de caractères invalide pour éviter ce
problème. Maintenant sous Linux si vous ne spécifiez
pas une police de caractères via l'option -fn ou
-font cette option est ajoutée avec le nom de police
inexistante qwerty, vous évitant de devoir le faire
par vous même.
- Lorsque vous éditiez un attribut, le résultat après
subsitution dans l'onglet Java était toujours vide, corrigé.
- MySQL generator 1.0.1
Les clefs primaires étaient par erreur générées
comme des clefs nommées, corrigé.
Ajoute la gestion de ` et " au sein des identificateur,
et génère les noms des colonnes et clefs et contraintes
entre `.
- MySQL reverse 1.0
Première version du reverse pour MySQL.
Le reverse est applicable sur un paquetage, il vous demande de sélectionner
la liste des fichiers à reverser (contrairement aux reverses des
autres langages demandant un répertoire un une liste
de répertoires à reverser recursivement).
Les fichiers reversés doivent définir des tables au sein d'une
même database.
Les fichiers reversés peuvent aussi définir la database,
dans ce cas l'artéfact crée associé aux tables reversées
défini la database, sinon l'artéfact ne défini que les tables
(mais vous pouvez changer cela et l'éditant ultérieurement).
Le reverse ne considère que les formes create database, create schema
et create table, les autres formes sont écartées.
Si besoin le reverse renomme des clefs afin de respecter l'unicité du nom
des attributs / rôle.
can'ts s
6.0.1
14 août 2012
- Cette version n'existe que pour CentOS 6 x86_64 (également utilisée
pour Fedora 16 et 17 x86_64) et openSUSE 11.1 x86_64
afin de palier à une erreur de constitution du paquetage de la 6.0.
6.0
12 août 2012
- Ajoute la gestion de MySQL
- Le menu global languages propose maintenant MySQL,
vous devez positionner MySQL pour voir les entrées
spécifiques à MySQL dans les menus et dialogues.
- Les databases sont supportées par les artéfact stéréotypés
databases, l'extension des fichiers générés/
reversés pour ces artéfacts est sql, elle peut être changée
via les options de génération.
Un artéfact stéréotypé database
ne peut avoir de définition pour les autres langages, et un artéfact
non stéréoté database ne peut avoir de définition
pour MySQL. Les artéfacts précédemment stéréotypés
database sont modifiés pourt être stéréotypé
_database.
- Une table est une classe stéréotypée table,
pour générer son code vous devez lui assigner
un artéfact comme pour les classes.
Une classe stéréotypée table ne peut
voir de définition pour les autres langages, et une classes
non stéréotypée table ne peut avoir de
définition pour MySQL. Les classes précédemment
stéréotypées table sont modifiées
pour être stéréotypées _table.
- Les colonnes et les clefs non étrangères
sont supportées par des attributs.
- Les clefs étrangères sont supportées
par des associations/compositions/aggregations unidirectionnelles.
Les stéréotypes full, partial et simple
sont ajoutés et utilisés pour spécifier
le match. Le nom optionnel des clefs est supporté
par le nom du rôle.
- Lorsque vous positionniez la couleur des texte via votre environement
les textes et lignes dans les diagrammes suivaient cette couleur ou étaient
aléatoirement noirs, force le noir.
- En fonction du zoom la sauvegarde d'un diagramme en SVG pouvait produire une
figure vide, corrigé.
- C++ reverse 5.1.1
C++ roundtrip 5.1.1
Une erreur de syntaxe était détectée par erreur lorsqu'un constructeur
en appelait un autre utilisant une forme template (par exemple C1() : C2<int>() {}),
corrigé.
- MySQL generator 1.0
Générateur de code pour MySQL.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
5.1.4p1
14 juin 2012
- Cette version n'existe que pour Windows, lorsque le chemin du projet
courant contenait au moins un espace le placement automatique produisait
l'erreur truncated gml file, corrigé.
5.1.4
9 juin 2012
- Ajoute un placement automatique dans les diagrammes de classes (utilise
OGDF).
Cette possibilité est disponible dans le menu apparaissant sur un clic
droit en dehors de tout élément dans un diagramme de classes.
Notez qu'actuellement l'emplacement relatif des éléments entre eux
est seulement calculé en fonction des relations/liaisons les reliant,
par exemple si des classes sont placées dans un paquetage avant le placement automatique
(par exemple pour montrer qu'elles sont définis dans ce paquetage),
il n'en sera plus de même après.
- Java Catalog 5.0.2
Java reverse 5.0.1
Java roundtrip 5.0.1
Leur exécution s'arrétait immédiatement à leur lancement
lorsque le répertoire racine pour Java dans les options de
génération était relatif au projet,
bug introduit lors du passage à Qt4, corrigé.
5.1.3
26 mai 2012
- Un crash se produisait lorsque vous entriez dans l'onglet C++
lors de l'édition d'un élément d'une énumération, fixed.
- Le manuel de référence est à jour.
5.1.2
17 mai 2012
- Un crash se produisait lorsque vous demandiez de traduire les menus/dialogues, corrigé.
- Indique via un message que la licence est absente/invalide/expirée.
5.1.1
8 Mai 2012
- Cette version n'existe que pour Ubuntu 12.04.
La réception d'événements
invalides pendant l'initialisation se produit également
sous Ubuntu 12.04 & Qt4.8.1, produisant un crash, contourné. (voir
BoUML 5.0 - Segmentation Fault)
5.1
26 avril 2012
- La sortie de Bouml pouvait provoquer un crash, corrigé.
- Les caractères non latin-1 peuvent maintenant être utilisés
dans la valeur par défaut des attributs ainsi que des rôles
des relations. (voir
Problem with Cyrillic strings)
- Prise en compte de C++11.
Les nouvelles fonctionnalités impactant le modeleur sont :
&&, thread_local (avec le nouveau mot-clef ${thread_local}
pour les attributs et relations), enum class (associé au nouveau
stéréotype enum_class, rien de spécial n'est fait
pour les enum struct au niveau du modeleur, mais enum struct
est géré par le reverse/roundtrip),
initialisation dans les classes des membres non statiques,
opérations deleted et defaulted (le rôle
de ${abstract} est étendu pour les gérer),
constexpr (le rôle de ${const} est étendu
pour les attributs et relations pour les gérer),
template typedef (associé au nouveau stéréotype
template_typedef),
override et final (le rôle de ${const} est étendu
pour les opérations pour les gérer), noexcept
(au niveau d'une opération, et via les options de génération
vous pouvez demander de produire noexcept pour toutes les opérations
sans exception ayant ${throw} dans leur déclaration/définition),
Les fonctionnalités comme decltype impactent seulement
le génerateur/reverse/roundtrip.
Attention, les définitions dans les projets
existants cont inchangées, c'est à dire que par exemple
le nouveau mot-clef ${thread_local} n'est pas ajouté
dans la définition C++ des attributs ni des relations dans les options
de générations, ni dans la définition C++
des attributs et relations existants.
Cependant la définition des nouvelles fonctionnalités
est ajoutée, par exemple la définition par défaut d'une
enum class.
- Dans l'explorateur le menu des paquetages propose la nouvelle entrée
New class and deployment views pour créer une vue de classes
avec sa vue de deploiement associée, elles ont le même nom.
- Il est maintenant possible d'avoir une géométrie par défaut
pour les héritages (generalisation et réalization), dépendances,
autres relations entre classes, flux et transitions. Cette géométrie
est utilisée lorsque vous créez un flux/relation/transition
ou parce qu'il est automatiquement ajouté dans un diagramme grace à l'option
draw all relation. La modification de la géométrie par défaut
n'affecte pas les relations/transitions/flux déjà tracés.
Les géométries pas défaut sont globales au projet et sont
éditées via l'entrée Edit default geometries du menu du projet
dans l'explorateur.
(voir
Default geometry for relationships, at least inheritance)
- La gestion des écrans multiples est simplifiée. Via la boite de dialogue
de l'environement vous devez juste indiquer l'écran à utiliser
et non plus fournir ses coordonnées.
- Java Generator 5.0.1
Idl Generator 5.0.1
Php Generator 5.0.1
Python Generator 5.0.1
La définition des classes déclarées external
ayant un artéfact associé était mal générée
au niveau de l'artéfact, corrigé
(ce bug venant des versions 4.x).
- C++ Generator 5.1
La définition des classes déclarées external
ayant un artéfact associé était mal générée
au niveau de l'artéfact, corrigé
(ce bug venant des versions 4.x).
Prise en compte de C++11.
- C++ reverse 5.1
C++ roundtrip 5.1
Les versions antétieures indiquaient une erreur de syntaxe lorsque plusieurs
attributs sont définis dans une unique forme (par exemple int i, j;),
ce cas est maintenant correctement géré.
Prise en compte de C++11.
- XMI2 Export 5.0.1
Corrige l'export des DataTypes / PrimitiveTypes pour UML 2.1 et versions supérieures.
(voir XMI 2.x not working)
- XMI2 Import 5.0.1
L'xmi:id n'est plus obligatoire au niveau modèle.
(voir XMI 2.x not working)
- Java Catalog 5.0.1
Project control 5.0.1
Project synchro 5.0.1
Utilise l'écran par défaut indiqué au niveau
de vôtre système dans le cas d'une configuration à plusieurs écrans.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
5.0.1
11 mars 2012
- Lorsque utilisez votre gestionnaire de fenêtre
pour fermer le modeleur et que le projet est modifié un
dialogue apparait vous permettant de sauver le projet (et sortir),
ne pas sauver le projet (et sortir) ou annuler la sortie.
Dans la version 5.0 l'annulation ne marche pas et l'exécution
s'interrompt sans sauvegarde, vous perdez votre travail., corrigé.
- Sous Ubuntu 11.10 & Qt 4.7.4 le modeleur crash
lorsque vous le lancer sans fichier de licence. Avec un fichier de licence
l'explorateur de fichier demandant l'ouverture d'un projet apparait sans raison
lorsque vous lancer le modeleur ou le viewer. Ces problèmes
sont liés à la réception d'événements
invalides pendant l'initialisation. Ceci est spécifique à
Ubuntu 11.10, ces problèmes n'arrivent pas sous Windows ni
Debian Wheezy avec la même version 4.7.4 de Qt, contourné. (voir
BoUML 5.0 - Segmentation Fault)
- Les modifications faites dans un contenu multi-lignes d'une cellule de tableau
sont immédiatement perdues à la sortie de la cellule, corrigé.
C'était par exemple le cas lorsque vous modifiez la valeur d'un propriété
dans l'onglet Properties des dialogues de pratiquement tout les types d'
élément.
- Lorsque vous éditiez une opération pour positionner ou modifier
la direction ou le nom ou le type d'une paramètre avec seulement C++
positionné dans la liste des langages cibles, la forme
${v<n>} produisant la valeur par défaut du paramètre
était retirée de la déclaration C++, corrigé.
(ce bug est issue des versions 4.x).
5.0
22 février 2012
- Première version non libre de BOUML, elle est identique à la
version 4.23 patch 7, sauf principalement :
- Son implémentation est basée sur Qt4 plutôt que
Qt3 pour plusieurs raisons dont la non obsolescence.
- Lorsque vous démarrer BOUML sans fichier de licence (valide)
une boîte de dialogue apparait vous proposant de sauver
un fichier de préparation de licence correspondant
à la machine en cours d'utilisation
(voir pricing).
Puis l'exécution s'arrête.
- Un viewer est ajouté, il est libre d'utilisation et ne
nécessite pas de fichier de licence
(voir features).
- Un crash pouvait se produire avec les anciennes versions
lors de l'import d'un projet ou un import as lib ou un
update from lib, corrigé.
- La complétion dans une liste de choix (combo boxes)
différencie maintenant les majuscules et minuscules.
- Le style motif n'existe plus, mais les styles
platique, windows vista, windows xp, windows ce, clean look,
s60 et proxy sont ajoutés, cependant leur disponibilité
dépend de du système d'exploitation que vous utilisez.
- Plugout upgrade est actuellement retiré de la distribution.
Il est de votre responsabilité de passer vos plug-outs à Qt4,
mais cela n'est pas obligatoire car il n'y a pas de rupture de compatibilité.
- En dehors de BOUML lui-même les outils sont libre d'utilisation, merci de vous référer
aux mentions légales
pour plus de détails.
- Les précédentes versions de BOUML ne peuvent pas lire un projet
produit ou modifié par cette version car le format des
fichiers de sauvegarde est modifié. Bien évidemment
cette version peut lire un projet issus d'une version antérieure.
Versions précédentes
Historique des 208 versions précédentes distribuées depuis 2005