Topics

JMRI 4.17.5

Bob Jacobsen
 

I believe that we’re able to make working installers again on Jenkins, so there’s just one remaining thing to resolve before I can create files for JMRI 4.17.5:

Issue #7528 Portals are being renamed when loaded https://github.com/JMRI/JMRI/issues/7528

which is associated with PRs

Move Open Circuit Builder menu #7513 https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528 https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539 https://github.com/JMRI/JMRI/pull/7539

This is marked as “Next Test Release” because the issue (a) changes system names in panel XML files when they’re loaded/stored and (b) is new since 4.17.4; if we let this go, we could have maintenence issues for Really Long Time, even if we fix it in 4.17.6. On the other hand, Pete seems to think that it’s not an issue based on his work with this code.

There are probably larger issues around using the NamedBean pattern for things that are only sort-of NamedBeans, but let’s leave this for another day. What do we do about this immediate set of PRs now?

Bob
--
Bob Jacobsen
@BobJacobsen

Pete Cressman
 

The power just came back on and according to PG&E I will have a few hours of power but no guarantees for Tuesday to Thursday. So I may not be able to carry on an extensive conversation.

I don't know what I can add to what I have already said about Portal system names in panel xml files.  Any such names have never been loaded by OBlockManagerXml.  Also, there has never been any code in JMRI that would allow a user to enter a custom system name for a Portal.  The Portal system names that have appeared in panel xml files are the names generated by PortalManager. My original mistake was in having OBlockManagerXml store these names

In order for this to be an issue some programmer would have to have writen a custom OBlockManageXml or create a new PortalManagerXml to load Portals and also have writen a UI for users to enter custom system names for Portals.  If this unlikely scenario exits, then the solution is for that programmer and his users to continue to use their custom code version of JMRI.

The PR as submitted is both forward and backward compatible.  Old files can be loaded in the new version. File saved by the new version can be loaded by old versions.

Move Open Circuit Builder menu #7513 does not have the Portal system name changes. It does have a change to the test file IndicatorDemoTest.xml since that was the file Bob showed me failing a load&store test.  This could be removed.

If there is a fault with these 2 PR's I'd like to see some evidence.

Pete

On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen <rgj1927@...> wrote:


I believe that we’re able to make working installers again on Jenkins, so there’s just one remaining thing to resolve before I can create files for JMRI 4.17.5:

Issue #7528 Portals are being renamed when loaded  https://github.com/JMRI/JMRI/issues/7528

which is associated with PRs

Move Open Circuit Builder menu #7513 https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528 https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539 https://github.com/JMRI/JMRI/pull/7539

This is marked as “Next Test Release” because the issue (a) changes system names in panel XML files when they’re loaded/stored and (b) is new since 4.17.4; if we let this go, we could have maintenence issues for Really Long Time, even if we fix it in 4.17.6.  On the other hand, Pete seems to think that it’s not an issue based on his work with this code.

There are probably larger issues around using the NamedBean pattern for things that are only sort-of NamedBeans, but let’s leave this for another day.  What do we do about this immediate set of PRs now?

Bob
--
Bob Jacobsen





danielb987
 

PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549

The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.

I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.

Daniel

2019-10-29 01:05 skrev Pete Cressman:

The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged

Bob Jacobsen
 

Thanks. Not storing system names may well be the temporary solution, but it’s not a permanent one: NamedBeans have persistent system names. Period, end of story. If Portal objects for some reason can’t have those, then they shouldn’t be NamedBeans. That’s perfectly OK, not everything needs to be.

In the XML Schema, the <portal> elements seem to be captured by the <oblock> elements. The <portals> are not being separately written by a PortalManager, which is another difference fro the NamedBean pattern.

Is the suggestion to use both Pete’s 7513 and this 7549? Or vice versa? Those give merge conflicts over the system name attribute in test files:

% git merge petecressman/pcMoveCircuitBuilderMenuItem
Auto-merging java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
Auto-merging java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
Automatic merge failed; fix conflicts and then commit the result.

When I fix those (by taking the version in 7549), the file tests pass.

That’s in branch bobjacobsen/7549_and_7513

Bob


On Oct 28, 2019, at 5:47 PM, danielb987 <db123@...> wrote:

PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549

The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.

I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.

Daniel

2019-10-29 01:05 skrev Pete Cressman:
The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged

--
Bob Jacobsen
@BobJacobsen

Bob Jacobsen
 

I’ve combined #7513, #7549 and #7539, fixed the conflicts, and pushed it as PR #7552. Daniel, I’m happy to update that when/if you want.

Bob

On Oct 28, 2019, at 8:46 PM, Bob Jacobsen via Groups.Io <rgj1927=gmail.com@groups.io> wrote:

Thanks. Not storing system names may well be the temporary solution, but it’s not a permanent one: NamedBeans have persistent system names. Period, end of story. If Portal objects for some reason can’t have those, then they shouldn’t be NamedBeans. That’s perfectly OK, not everything needs to be.

In the XML Schema, the <portal> elements seem to be captured by the <oblock> elements. The <portals> are not being separately written by a PortalManager, which is another difference fro the NamedBean pattern.

Is the suggestion to use both Pete’s 7513 and this 7549? Or vice versa? Those give merge conflicts over the system name attribute in test files:

% git merge petecressman/pcMoveCircuitBuilderMenuItem
Auto-merging java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
Auto-merging java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
Automatic merge failed; fix conflicts and then commit the result.

When I fix those (by taking the version in 7549), the file tests pass.

That’s in branch bobjacobsen/7549_and_7513

Bob


On Oct 28, 2019, at 5:47 PM, danielb987 <db123@...> wrote:

PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549

The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.

I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.

Daniel

2019-10-29 01:05 skrev Pete Cressman:
The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged

--
Bob Jacobsen
@BobJacobsen





--
Bob Jacobsen
@BobJacobsen

danielb987
 

I see. If so, I suggest not using #7549 at all. I thought it was valid to just remove the system name, but if not, this PR is the wrong solution.

2019-10-29 04:46 skrev Bob Jacobsen:

Thanks. Not storing system names may well be the temporary solution,
but it’s not a permanent one: NamedBeans have persistent system
names. Period, end of story. If Portal objects for some reason can’t
have those, then they shouldn’t be NamedBeans. That’s perfectly OK,
not everything needs to be.
In the XML Schema, the <portal> elements seem to be captured by the
<oblock> elements. The <portals> are not being separately written by
a PortalManager, which is another difference fro the NamedBean
pattern.
Is the suggestion to use both Pete’s 7513 and this 7549? Or vice
versa? Those give merge conflicts over the system name attribute in
test files:
% git merge petecressman/pcMoveCircuitBuilderMenuItem
Auto-merging java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
CONFLICT (content): Merge conflict in
java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
Auto-merging java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
CONFLICT (content): Merge conflict in
java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
Automatic merge failed; fix conflicts and then commit the result.
When I fix those (by taking the version in 7549), the file tests pass.
That’s in branch bobjacobsen/7549_and_7513
Bob

On Oct 28, 2019, at 5:47 PM, danielb987 <db123@...> wrote:
PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549
The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.
I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.
Daniel
2019-10-29 01:05 skrev Pete Cressman:
The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged
--
Bob Jacobsen
@BobJacobsen

danielb987
 

Bob,

Our mails crossed eachother.
Feel free to do what you want. I don't know the best way forward to solve this problem.

Have a nice day!
Daniel

2019-10-29 04:57 skrev Bob Jacobsen:

I’ve combined #7513, #7549 and #7539, fixed the conflicts, and pushed
it as PR #7552. Daniel, I’m happy to update that when/if you want.
Bob

On Oct 28, 2019, at 8:46 PM, Bob Jacobsen via Groups.Io <rgj1927=gmail.com@groups.io> wrote:
Thanks. Not storing system names may well be the temporary solution, but it’s not a permanent one: NamedBeans have persistent system names. Period, end of story. If Portal objects for some reason can’t have those, then they shouldn’t be NamedBeans. That’s perfectly OK, not everything needs to be.
In the XML Schema, the <portal> elements seem to be captured by the <oblock> elements. The <portals> are not being separately written by a PortalManager, which is another difference fro the NamedBean pattern.
Is the suggestion to use both Pete’s 7513 and this 7549? Or vice versa? Those give merge conflicts over the system name attribute in test files:
% git merge petecressman/pcMoveCircuitBuilderMenuItem
Auto-merging java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
Auto-merging java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
CONFLICT (content): Merge conflict in java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
Automatic merge failed; fix conflicts and then commit the result.
When I fix those (by taking the version in 7549), the file tests pass.
That’s in branch bobjacobsen/7549_and_7513
Bob

On Oct 28, 2019, at 5:47 PM, danielb987 <db123@...> wrote:
PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549
The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.
I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.
Daniel
2019-10-29 01:05 skrev Pete Cressman:
The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged
--
Bob Jacobsen
@BobJacobsen
--
Bob Jacobsen
@BobJacobsen

Bob Jacobsen
 

It’s a step in the right direction, certainly. If Portal object become not-NamedBeans, then they don’t need to have system names. That’s not a problem, because (if I understand correctly) Pete says that the system names don’t matter. So removing that load/store is progress. Thanks for doing it.

We can finish the fix later.

So it would be helpful if you could update those two files.

Bob

On Oct 28, 2019, at 8:57 PM, danielb987 <db123@...> wrote:

I see. If so, I suggest not using #7549 at all. I thought it was valid to just remove the system name, but if not, this PR is the wrong solution.

2019-10-29 04:46 skrev Bob Jacobsen:
Thanks. Not storing system names may well be the temporary solution,
but it’s not a permanent one: NamedBeans have persistent system
names. Period, end of story. If Portal objects for some reason can’t
have those, then they shouldn’t be NamedBeans. That’s perfectly OK,
not everything needs to be.
In the XML Schema, the <portal> elements seem to be captured by the
<oblock> elements. The <portals> are not being separately written by
a PortalManager, which is another difference fro the NamedBean
pattern.
Is the suggestion to use both Pete’s 7513 and this 7549? Or vice
versa? Those give merge conflicts over the system name attribute in
test files:
% git merge petecressman/pcMoveCircuitBuilderMenuItem
Auto-merging java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
CONFLICT (content): Merge conflict in
java/test/jmri/jmrit/logix/valid/LearnWarrantTest.xml
Auto-merging java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
CONFLICT (content): Merge conflict in
java/test/jmri/jmrit/logix/valid/IndicatorDemoTest.xml
Automatic merge failed; fix conflicts and then commit the result.
When I fix those (by taking the version in 7549), the file tests pass.
That’s in branch bobjacobsen/7549_and_7513
Bob
On Oct 28, 2019, at 5:47 PM, danielb987 <db123@...> wrote:
PR #7549 removes system names from portals in the xml files.
https://github.com/JMRI/JMRI/pull/7549
The schema still allows systemName in the xml file, but the system name is not stored or loaded by OBlockManagerXml.
I have a problem with load/IndicatorDemo-4.17.5.xml and load/WarrantFileIssue3751-4.17.5.xml. The intention with these is to test loading portals that still have system names. But I got an error and I'm not sure how to fix them, so I added the extension ".daniel" to the file names to disable them temporary.
Daniel
2019-10-29 01:05 skrev Pete Cressman:
The power just came back on and according to PG&E I will have a few
hours of power but no guarantees for Tuesday to Thursday. So I may not
be able to carry on an extensive conversation.
I don't know what I can add to what I have already said about Portal
system names in panel xml files. Any such names have never been
loaded by OBlockManagerXml. Also, there has never been any code in
JMRI that would allow a user to enter a custom system name for a
Portal. The Portal system names that have appeared in panel xml files
are the names generated by PortalManager. My original mistake was in
having OBlockManagerXml store these names
__
In order for this to be an issue some programmer would have to have
writen a custom OBlockManageXml or create a new PortalManagerXml to
load Portals and also have writen a UI for users to enter custom
system names for Portals. If this unlikely scenario exits, then the
solution is for that programmer and his users to continue to use their
custom code version of JMRI.
The PR as submitted is both forward and backward compatible. Old
files can be loaded in the new version. File saved by the new version
can be loaded by old versions.
Move Open Circuit Builder menu #7513 does not have the Portal system
name changes. It does have a change to the test file
IndicatorDemoTest.xml since that was the file Bob showed me failing a
load&store test. This could be removed.
__
If there is a fault with these 2 PR's I'd like to see some evidence.
Pete
________________
On Monday, October 28, 2019, 02:22:18 PM PDT, Bob Jacobsen
<@BobJacobsen> wrote:
I believe that we’re able to make working installers again on
Jenkins, so there’s just one remaining thing to resolve before I can
create files for JMRI 4.17.5:
Issue #7528 Portals are being renamed when loaded
https://github.com/JMRI/JMRI/issues/7528
which is associated with PRs
Move Open Circuit Builder menu #7513
https://github.com/JMRI/JMRI/pull/7513
Re-Store xml files containing Portals for Issue #7528
https://github.com/JMRI/JMRI/pull/7537
Add jmri.display load&store tests #7539
https://github.com/JMRI/JMRI/pull/7539
This is marked as “Next Test Release” because the issue (a)
changes system names in panel XML files when they’re loaded/stored
and (b) is new since 4.17.4; if we let this go, we could have
maintenence issues for Really Long Time, even if we fix it in 4.17.6.
On the other hand, Pete seems to think that it’s not an issue based
on his work with this code.
There are probably larger issues around using the NamedBean pattern
for things that are only sort-of NamedBeans, but let’s leave this
for another day. What do we do about this immediate set of PRs now?
Bob
--
Bob Jacobsen
@BobJacobsen
Links:
------
[1] https://jmri-developers.groups.io/g/jmri/message/2158
[2] https://groups.io/mt/39080763/1303822
[3] https://jmri-developers.groups.io/g/jmri/post
[4] https://jmri-developers.groups.io/g/jmri/editsub/1303822
[5] https://jmri-developers.groups.io/g/jmri/leave/defanged
--
Bob Jacobsen
@BobJacobsen

--
Bob Jacobsen
@BobJacobsen