Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: d1f46eec by tchemit at 2019-05-21T10:35:09Z Impossible de remplir le champ espèces - Closes #1273 - - - - - 8f4cb91c by tchemit at 2019-05-21T10:35:12Z Incohérence date de début date de fin - Closes #1276 - - - - - 1b404166 by tchemit at 2019-05-21T10:35:12Z update pom - - - - - 947f5102 by tchemit at 2019-05-21T10:35:12Z Editeurs d'url non actifs - Closes #1275 - - - - - 14009845 by tchemit at 2019-05-21T10:35:12Z update templates - - - - - b31008c7 by tchemit at 2019-05-21T10:35:12Z Impossible d'éditer nouveau DCP - Closes #1279 - - - - - f6dc60ee by tchemit at 2019-05-21T10:58:58Z Pas d'accès à l'activité de fin de veille - Closes #1281 - - - - - 6a931a52 by tchemit at 2019-05-21T10:58:59Z Ajout d'un test pour mieux comprendre le pb - Erreur création activité - See #1283 - - - - - 24 changed files: - .gitlab/issue_templates/Contrat-SFA-2017-Anomalie.md - .gitlab/issue_templates/Contrat-SFA-2017-Evolution.md - client-core/src/main/java/fr/ird/observe/client/navigation/RouteCloseCallback.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/list/CloseOpenDataFromListUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/list/OpenOpenDataFromListUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/CloseOpenDataUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/CreateOpenDataUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/MoveSingleDataUIActionSupport.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/OpenOpenDataUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/save/SaveFloatingObjectSeineUIAction.java - client-core/src/main/java/fr/ird/observe/client/ui/content/Common.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/table/ContentTableUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/common/TripLonglineUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/content/data/ps/common/TripSeineUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java - client-core/src/main/java/fr/ird/observe/client/ui/util/ObserveValidatorMessageTableRenderer.java - dto/src/main/java/fr/ird/observe/dto/referential/ps/observation/ObjectMaterialDto.java - observe-i18n/src/main/i18n/translations/observe_fr_FR.properties - pom.xml Changes: ===================================== .gitlab/issue_templates/Contrat-SFA-2017-Anomalie.md ===================================== @@ -9,6 +9,6 @@ ``` /label ~"Anomalie" -/label ~"Contrat SFA-2017" -/milestone %"Contrat SFA-2017" +/label ~"IRD-2018-01-V8" +/milestone %"8.0-beta-1" /assign @tchemit \ No newline at end of file ===================================== .gitlab/issue_templates/Contrat-SFA-2017-Evolution.md ===================================== @@ -1,5 +1,5 @@ /label ~"Evolution" -/label ~"Contrat SFA-2017" +/label ~"IRD-2018-01-V8" /milestone %"Contrat SFA-2017" /assign @tchemit \ No newline at end of file ===================================== client-core/src/main/java/fr/ird/observe/client/navigation/RouteCloseCallback.java ===================================== @@ -129,7 +129,7 @@ public class RouteCloseCallback implements ObserveEditNodeCloseCallback { // on selection l'activity de fin de veille et on y reste // donc on ne continue pas la fermeture de la route - throw new CloseEditNodeVetoException("Fermeture abandonnée! TODO Ajouter message plus explicite.", node); + throw new CloseEditNodeVetoException("Fermeture de la route abandonnée (création d'une activité de fin de veille en cours)", node); } } @@ -139,7 +139,7 @@ public class RouteCloseCallback implements ObserveEditNodeCloseCallback { MutableTreeNode routeNode = tree.select(node).orElseThrow(() -> new IllegalStateException("Can't find route node")); - MultipleReferenceContainerNode<ActivitySeineDto, ActivitySeineReference> parentNode = MultipleReferenceContainerNode.upToReferenceContainerNode(ActivitySeineReference.class, routeNode); + MultipleReferenceContainerNode<ActivitySeineDto, ActivitySeineReference> parentNode = MultipleReferenceContainerNode.downToReferenceContainerNode(ActivitySeineReference.class, routeNode); tree.selectSafeNode(parentNode); log.debug("PARENT NODE = " + parentNode); ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/list/CloseOpenDataFromListUIAction.java ===================================== @@ -30,6 +30,8 @@ import fr.ird.observe.client.ui.content.api.ContentUI; import fr.ird.observe.client.ui.content.api.data.list.ContentListUI; import fr.ird.observe.client.ui.util.UIHelper; import fr.ird.observe.navigation.model.edit.CloseEditNodeVetoException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import static io.ultreia.java4all.i18n.I18n.n; @@ -41,6 +43,7 @@ import static io.ultreia.java4all.i18n.I18n.n; */ public class CloseOpenDataFromListUIAction extends AbstractContentUIAction { + private static final Logger log = LogManager.getLogger(CloseOpenDataFromListUIAction.class); public static final String ACTION_NAME = CloseOpenDataFromListUIAction.class.getName(); private static final long serialVersionUID = 1L; @@ -61,7 +64,8 @@ public class CloseOpenDataFromListUIAction extends AbstractContentUIAction { CloseOpenDataUIAction.closeData(((ContentListUI) ui).getModel().getEditNode()); afterClose((ContentListUI) ui); } catch (CloseEditNodeVetoException e1) { - UIHelper.handlingError(e1); + log.error("Could not close data from callback", e1); +// UIHelper.handlingError(e1); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/list/OpenOpenDataFromListUIAction.java ===================================== @@ -28,12 +28,13 @@ import fr.ird.observe.client.ui.actions.content.api.data.open.OpenOpenDataUIActi import fr.ird.observe.client.ui.content.api.ContentUI; import fr.ird.observe.client.ui.content.api.data.list.ContentListUI; import fr.ird.observe.client.ui.tree.navigation.NavigationTree; -import fr.ird.observe.client.ui.util.UIHelper; import fr.ird.observe.dto.reference.DataDtoReference; import fr.ird.observe.navigation.model.edit.CloseEditNodeVetoException; import fr.ird.observe.navigation.model.edit.ObserveEditNode; import fr.ird.observe.navigation.model.select.ObserveSelectNode; import fr.ird.observe.navigation.tree.ReferenceNode; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import static fr.ird.observe.client.ui.content.api.ContentUIHandler.getNavigationTree; import static io.ultreia.java4all.i18n.I18n.n; @@ -47,6 +48,7 @@ import static io.ultreia.java4all.i18n.I18n.n; */ public class OpenOpenDataFromListUIAction extends AbstractContentUIAction { + private static final Logger log = LogManager.getLogger(OpenOpenDataFromListUIAction.class); public static final String ACTION_NAME = OpenOpenDataFromListUIAction.class.getName(); private static final long serialVersionUID = 1L; @@ -74,7 +76,8 @@ public class OpenOpenDataFromListUIAction extends AbstractContentUIAction { OpenOpenDataUIAction.openData(editNode, selectedNode, id); afterOpen(contentListUI, id); } catch (CloseEditNodeVetoException e1) { - UIHelper.handlingError(e1); + log.error("Could not close data from callback", e1); + //UIHelper.handlingError(e1); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/CloseOpenDataUIAction.java ===================================== @@ -102,7 +102,8 @@ public class CloseOpenDataUIAction extends AbstractContentUIAction { //FIXME See what does it means ? getMainUI().getHandler().updateContentSize(); } catch (CloseEditNodeVetoException e1) { - UIHelper.handlingError(e1); + log.error("Could not close data from callback", e1); +// UIHelper.handlingError(e1); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/CreateOpenDataUIAction.java ===================================== @@ -31,6 +31,8 @@ import fr.ird.observe.client.ui.tree.navigation.NavigationTree; import fr.ird.observe.client.ui.util.UIHelper; import fr.ird.observe.navigation.model.edit.CloseEditNodeVetoException; import fr.ird.observe.navigation.tree.MultipleReferenceContainerNode; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** * Created on 11/11/16. @@ -40,6 +42,7 @@ import fr.ird.observe.navigation.tree.MultipleReferenceContainerNode; */ public class CreateOpenDataUIAction extends AbstractContentUIAction { + private static final Logger log = LogManager.getLogger(CreateOpenDataUIAction.class); public static final String ACTION_NAME = CreateOpenDataUIAction.class.getName(); public CreateOpenDataUIAction(ObserveMainUI mainUI) { @@ -51,7 +54,8 @@ public class CreateOpenDataUIAction extends AbstractContentUIAction { CloseOpenDataUIAction.closeData(model.getEditNode()); tree.addUnsavedNode(parentNode); } catch (CloseEditNodeVetoException e1) { - UIHelper.handlingError(e1); + log.error("Could not close data from callback", e1); + //UIHelper.handlingError(e1); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/MoveSingleDataUIActionSupport.java ===================================== @@ -153,7 +153,8 @@ public abstract class MoveSingleDataUIActionSupport<ChildDto extends IdDto, Chil try { closeNode(editNode); } catch (CloseEditNodeVetoException e) { - UIHelper.handlingError(e); + log.error("Could not close data from callback", e); +// UIHelper.handlingError(e); return; } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/OpenOpenDataUIAction.java ===================================== @@ -36,6 +36,8 @@ import fr.ird.observe.navigation.model.edit.ObserveEditModelManager; import fr.ird.observe.navigation.model.edit.ObserveEditNode; import fr.ird.observe.navigation.model.edit.OpenEditNodeRequest; import fr.ird.observe.navigation.model.select.ObserveSelectNode; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import static fr.ird.observe.client.ui.content.api.ContentUIHandler.getNavigationTree; import static io.ultreia.java4all.i18n.I18n.n; @@ -49,6 +51,7 @@ import static io.ultreia.java4all.i18n.I18n.n; */ public class OpenOpenDataUIAction extends AbstractContentUIAction { + private static final Logger log = LogManager.getLogger(OpenOpenDataUIAction.class); public static final String ACTION_NAME = OpenOpenDataUIAction.class.getName(); private static final long serialVersionUID = 1L; @@ -83,7 +86,8 @@ public class OpenOpenDataUIAction extends AbstractContentUIAction { openData(editNode, selectedNode, id); afterOpen(openUI); } catch (CloseEditNodeVetoException e1) { - UIHelper.handlingError(e1); + log.error("Could not close data from callback", e1); + //UIHelper.handlingError(e1); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/save/SaveFloatingObjectSeineUIAction.java ===================================== @@ -28,13 +28,19 @@ import fr.ird.observe.client.ui.ObserveMainUI; import fr.ird.observe.client.ui.actions.content.api.data.edit.SaveEditDataUIActionSupport; import fr.ird.observe.client.ui.content.data.ps.observation.FloatingObjectUI; import fr.ird.observe.client.ui.content.data.ps.observation.FloatingObjectUIModel; +import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport; import fr.ird.observe.dto.data.ps.observation.FloatingObjectDto; import fr.ird.observe.dto.data.ps.observation.FloatingObjectPartDto; import fr.ird.observe.dto.data.ps.observation.FloatingObjectReference; import fr.ird.observe.dto.result.SaveResultDto; import fr.ird.observe.navigation.model.edit.ObserveEditNode; +import fr.ird.observe.navigation.tree.MultipleReferenceContainerNode; +import fr.ird.observe.navigation.tree.ReferenceNode; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.jetbrains.annotations.NotNull; + +import java.util.function.Function; /** * Created by tchemit on 28/09/2018. @@ -68,4 +74,8 @@ public class SaveFloatingObjectSeineUIAction extends SaveEditDataUIActionSupport return true; } + @Override + protected @NotNull Function<FloatingObjectReference, ReferenceNode<FloatingObjectDto, FloatingObjectReference>> getNodeFactory(NavigationTreeNodeSupport parent) { + return ((MultipleReferenceContainerNode) parent)::newChildNode; + } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/Common.jcss ===================================== @@ -43,4 +43,9 @@ BigTextEditor { BeanCheckBox { i18nProperty:""; horizontalTextPosition:{BeanCheckBox.LEFT}; +} + +#bodyScrollPane { + verticalScrollBarPolicy:{JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED}; + horizontalScrollBarPolicy:{JScrollPane.HORIZONTAL_SCROLLBAR_NEVER}; } \ No newline at end of file ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUI.jaxx ===================================== @@ -125,9 +125,7 @@ public void resetEdit() { <JPanel id='contentContainer'> <JXLayer UI='{blockLayerUI}' constraints='BorderLayout.CENTER'> - <JPanel id='body'/> - </JXLayer> <Table id='actions' constraints='BorderLayout.SOUTH'/> ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUI.jcss ===================================== @@ -67,3 +67,7 @@ borderPainted:false; } +#bodyScrollPane { + verticalScrollBarPolicy:{JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED}; + horizontalScrollBarPolicy:{JScrollPane.HORIZONTAL_SCROLLBAR_NEVER}; +} ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUI.jaxx ===================================== @@ -68,13 +68,13 @@ public abstract ContentListUIHandler<E, C, R, U> getHandler(); ]]></script> <JPanel id='body'> - <JScrollPane id='listPane' constraints='BorderLayout.CENTER' onFocusGained='list.requestFocus()' columnHeaderView='{listHeader}'> - <JPanel id='listPanel'> + <JPanel id='listPanel' constraints='BorderLayout.CENTER' > <JLabel id="emptyLabel" constraints='"empty"' styleClass="skipI18n"/> - <JList id='list' genericType='R' constraints='"list"' onMouseClicked='getHandler().onDataSelected(event)'/> + <JScrollPane id='listPane' constraints='"list"' onFocusGained='list.requestFocus()' columnHeaderView='{listHeader}'> + <JList id='list' genericType='R' onMouseClicked='getHandler().onDataSelected(event)'/> + <BeanListHeader id='listHeader' genericType='R'/> + </JScrollPane> </JPanel> - <BeanListHeader id='listHeader' genericType='R'/> - </JScrollPane> </JPanel> <Table id="actions" weightx='1' insets='0' fill="both"> ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUI.jcss ===================================== @@ -30,6 +30,7 @@ #listPane { minimumSize:{new Dimension(10,150)}; + verticalScrollBarPolicy:{JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED}; } #listPanelLayout { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/list/ContentListUIHandler.java ===================================== @@ -125,11 +125,11 @@ public abstract class ContentListUIHandler<D extends IdDto, C extends DataDto, R getUi().getListSelectionModel().clearSelection(); if (!getModel().isEmpty()) { getUi().getListSelectionModel().setSelectionInterval(0, 0); - getUi().getListPane().setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); - } else { - - getUi().getListPane().setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER); +// getUi().getListPane().setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); } +// else { +// getUi().getListPane().setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER); +// } }); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/table/ContentTableUI.jcss ===================================== @@ -136,3 +136,4 @@ verticalAlignment:"center"; horizontalAlignment:"center"; } + ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/common/TripLonglineUI.jaxx ===================================== @@ -80,7 +80,8 @@ protected boolean canEditOcean(java.util.LinkedHashSet<TripLonglineActivityObsDt <!-- formulaire --> <JPanel id="body" layout='{new BorderLayout()}'> - <JTabbedPane id='mainTabbedPane' constraints='BorderLayout.CENTER'> + <JScrollPane id='bodyScrollPane' constraints='BorderLayout.CENTER'> + <JTabbedPane id='mainTabbedPane'> <tab id='generalTab' i18nProperty=""> <Table fill="both"> @@ -335,6 +336,7 @@ protected boolean canEditOcean(java.util.LinkedHashSet<TripLonglineActivityObsDt <TripMapUI id="tripMap"/> </tab> </JTabbedPane> + </JScrollPane> </JPanel> <!-- surcharge des actions (pour appliquer la css specifique) --> ===================================== client-core/src/main/java/fr/ird/observe/client/ui/content/data/ps/common/TripSeineUI.jaxx ===================================== @@ -87,7 +87,8 @@ protected boolean canEditOcean(java.util.LinkedHashSet<RouteStubDto> routes) { <!-- formulaire --> <JPanel id="body" layout='{new BorderLayout()}'> - <JTabbedPane id='mainTabbedPane' constraints='BorderLayout.CENTER'> + <JScrollPane id='bodyScrollPane' constraints='BorderLayout.CENTER'> + <JTabbedPane id='mainTabbedPane'> <tab id='generalTab' i18nProperty=""> <Table insets="0" fill="both" id="formGeneral"> @@ -234,6 +235,7 @@ protected boolean canEditOcean(java.util.LinkedHashSet<RouteStubDto> routes) { <TripMapUI id="tripMap"/> </tab> </JTabbedPane> + </JScrollPane> </JPanel> <!-- surcharge des actions (pour appliquer la css specifique) --> ===================================== client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTree.java ===================================== @@ -404,6 +404,9 @@ public class NavigationTree extends JXTree { if (containerNode == null) { return null; } + if (!((NavigationTreeNodeSupport)containerNode).isLoaded()) { + ((NavigationTreeNodeSupport) containerNode).populateChildren(); + } // got to reference return ReferenceNode.downToReferenceNode(referenceType, editNode.getId(), containerNode); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/util/ObserveValidatorMessageTableRenderer.java ===================================== @@ -36,6 +36,7 @@ import javax.swing.JComponent; import javax.swing.JTable; import java.awt.Color; import java.awt.Component; +import java.util.Objects; import static io.ultreia.java4all.i18n.I18n.t; @@ -59,6 +60,7 @@ public class ObserveValidatorMessageTableRenderer extends SwingValidatorMessageT @Override public String getFieldName(JTable table, String value, int row) { + Objects.requireNonNull(value,"Value can not be null!"); SwingValidatorMessageTableModel tableModel = (SwingValidatorMessageTableModel) table.getModel(); SwingValidatorMessage model = tableModel.getRow(row); JComponent editor = model.getEditor(); ===================================== dto/src/main/java/fr/ird/observe/dto/referential/ps/observation/ObjectMaterialDto.java ===================================== @@ -29,19 +29,19 @@ public class ObjectMaterialDto extends GeneratedObjectMaterialDto { private static final long serialVersionUID = 1L; //FIXME-PROTECTED-ID public boolean isBoolean() { - return objectMaterialType != null && " fr.ird.referential.ps.ObjectMaterialType#0#0".equals(objectMaterialType.getId()); + return objectMaterialType != null && "fr.ird.referential.ps.observation.ObjectMaterialType#0#0".equals(objectMaterialType.getId()); } //FIXME-PROTECTED-ID public boolean isText() { - return objectMaterialType != null && " fr.ird.referential.ps.ObjectMaterialType#0#3".equals(objectMaterialType.getId()); + return objectMaterialType != null && "fr.ird.referential.ps.observation.ObjectMaterialType#0#3".equals(objectMaterialType.getId()); } //FIXME-PROTECTED-ID public boolean isInteger() { - return objectMaterialType != null && " fr.ird.referential.ps.ObjectMaterialType#0#2".equals(objectMaterialType.getId()); + return objectMaterialType != null && "fr.ird.referential.ps.observation.ObjectMaterialType#0#2".equals(objectMaterialType.getId()); } //FIXME-PROTECTED-ID public boolean isFloat() { - return objectMaterialType != null && " fr.ird.referential.ps.ObjectMaterialType#0#1".equals(objectMaterialType.getId()); + return objectMaterialType != null && "fr.ird.referential.ps.observation.ObjectMaterialType#0#1".equals(objectMaterialType.getId()); } public boolean withValidation() { ===================================== observe-i18n/src/main/i18n/translations/observe_fr_FR.properties ===================================== @@ -911,7 +911,7 @@ observe.common.DataDto.captain=Capitaine observe.common.DataDto.dataQuality=Qualité de donnée observe.common.DataDto.departureHarbour=Port de départ observe.common.DataDto.depthRecorder=Enregistreur de profondeur -observe.common.DataDto.endDate=Date de début +observe.common.DataDto.endDate=Date de fin observe.common.DataDto.haulingIdentifier=Virage observe.common.DataDto.hookLost=Hameçon perdu observe.common.DataDto.landingHarbour=Port d'arrivée @@ -921,7 +921,7 @@ observe.common.DataDto.observer=Observateur observe.common.DataDto.program=Programme observe.common.DataDto.settingIdentifier=Filage observe.common.DataDto.speciesFate=Devenir espèce -observe.common.DataDto.startDate=Date de fin +observe.common.DataDto.startDate=Date de début observe.common.DataDto.timer=Horloge observe.common.DataDto.timerTimeOnBoard=Horodatage de montée à bord observe.common.DataDto.traceCutOff=Bas de ligne coupé ===================================== pom.xml ===================================== @@ -26,7 +26,7 @@ <parent> <groupId>io.ultreia.maven</groupId> <artifactId>pom</artifactId> - <version>2019.8.17</version> + <version>2019.8.18</version> </parent> <groupId>fr.ird.observe</groupId> @@ -163,7 +163,7 @@ <!--lib.version.java4all.topia>1.8</lib.version.java4all.topia--> <!--<lib.version.java4all.eugene>3.0-alpha-22</lib.version.java4all.eugene>--> -<!-- <lib.version.java4all.jaxx>3.0-alpha-50</lib.version.java4all.jaxx>--> + <lib.version.java4all.jaxx>3.0-alpha-51</lib.version.java4all.jaxx> <!--<lib.version.java4all.i18n>4.0-beta-3-SNAPSHOT</lib.version.java4all.i18n>--> <!--<lib.version.java4all.config>1.0.8-SNAPSHOT</lib.version.java4all.config>--> <!--<lib.version.nuiton.topia>3.4.2-SNAPSHOT</lib.version.nuiton.topia>--> View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/cb1af8b52cee94c5368e91ac014... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/cb1af8b52cee94c5368e91ac014... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT