Date   

Re: Related applications in our help pages

JerryG
 

Bob -

While I don't particularly relish the idea of having to deal with sidebars in two repositories, I do have a question about whether we would need to replicate the Parts directory in the website repository in order to "include" parts files in the HTML of the sidebar.shtml files in the website directory.  If so, I think I can handle this (within my limited skill set...).  Let me know.

Has anyone thought about whether merging the two repositories makes any sense (or is even possible)?  At least for the website and help files, maintenance would certainly be easier.  Or perhaps just keeping the website repository for the manuals (and renaming it).

Thanks, Jerry

P.S. I thought I had already replied to your post, but I"m still on moderator-release so perhaps it is in the queue somewhere.


Re: NetBEans crashes on clean checkout

Andrew Crosland
 

It's sort of working now. It uses 2.5G of memory when compiling (the machine has 8G fitted)  and the "background scanning of projects" issue is even worse in 11, together with "building dictionary, refreshing indices, checking for external changes". There are numerous bug reports against NB over the years but I guess it's an inherent feature that can't be "fixed".

Thank you.

Andrew


--
Andrew Crosland


Re: NetBEans crashes on clean checkout

Randall Wood <rhwood@...>
 

Actually, since you are using NetBeans, stick with Java 8, since NetBeans is configured to always prefer that in this project.

On 11-Jan-2020, at 09:32, Randall Wood via Groups.Io <rhwood@...> wrote:

It’s entirely your choice. Both should work (and both are tested). I personally prefer the JDKs from adoptopenjdk.net and tend to use the latest LTS version (11) with the HotSpot JVM.

On 11-Jan-2020, at 09:29, Andrew Crosland <andrew@...> wrote:

I am a little confused. Should I stick with the latest Java 8 (jdk8_u231)? or switch to Java 11 (jdk11.0.5), or...?

I don't use the JDK for anything else.

Andrew

 
-- 
Andrew Crosland



Re: NetBEans crashes on clean checkout

Randall Wood <rhwood@...>
 

It’s entirely your choice. Both should work (and both are tested). I personally prefer the JDKs from adoptopenjdk.net and tend to use the latest LTS version (11) with the HotSpot JVM.

On 11-Jan-2020, at 09:29, Andrew Crosland <andrew@...> wrote:

I am a little confused. Should I stick with the latest Java 8 (jdk8_u231)? or switch to Java 11 (jdk11.0.5), or...?

I don't use the JDK for anything else.

Andrew

 
--
Andrew Crosland


Re: NetBEans crashes on clean checkout

Andrew Crosland
 

I am a little confused. Should I stick with the latest Java 8 (jdk8_u231)? or switch to Java 11 (jdk11.0.5), or...?

I don't use the JDK for anything else.

Andrew

 
--
Andrew Crosland


Re: NetBEans crashes on clean checkout

Andrew Crosland
 

Ah. Thank you. I was only reading that the other day (for a different reason), but I convinced myself I had the correct tools :(

I now think I may have been checking the run time version.

I will try that...

--
Andrew Crosland


Re: NetBEans crashes on clean checkout

Randall Wood <rhwood@...>
 

Matt beat me to it, but per https://www.jmri.org/help/en/html/doc/Technical/JVMCapabilities.shtml (a different doc), "JMRI development requires Java 8u101 or later.” (u151 is continually tested since that’s the last version that can be installed on Windows XP).

I would also update your NetBeans version to 11.2 (since 8.x is no longer maintained).

On 11-Jan-2020, at 09:06, Matthew Harris <matthew.john.harris@...> wrote:

Andrew,

Based on the start of the error:

> An exception has occurred in the compiler (1.8.0_25)

your JDK probably needs updating as we now use JDK 1.8.0_151 as our earliest supported compiler.

See 
https://www.jmri.org/help/en/html/doc/Technical/TechRoadMap.shtml

Best regards, 

Matt H


Re: NetBEans crashes on clean checkout

Matthew Harris
 

Andrew,

Based on the start of the error:

> An exception has occurred in the compiler (1.8.0_25)

your JDK probably needs updating as we now use JDK 1.8.0_151 as our earliest supported compiler.

See 
https://www.jmri.org/help/en/html/doc/Technical/TechRoadMap.shtml

Best regards, 

Matt H


NetBEans crashes on clean checkout

Andrew Crosland
 

Windows 10, NetBeans 8.0.2

I started having problems on Thursday after fetching the latest upstream/master and merging into my local branch. NetBeans encounters an exception in the compiler when doing a clean and build. I thought I had messed up resolving a conflict, although surprised that could create the issue.

I tried fixing things up in git using both github desktop and command line, all to no avail.

I gave up and cloned JMRI/JMRI master (not my crosland/JMRI fork) into a clean directory and have the same problem. The log is attached below.

I have tried deleting the NB cache. Short of re-installing NB is there anything else I should look at?

Andrew



NM build log
==========
ant -f D:\\JMRI2\\JMRI\\nbproject\\nbjdk.xml clean debug
clean:
JMRI.clean:
JMRI.clean:
debug:
JMRI.init:
Created dir: D:\JMRI2\JMRI\target\classes
Created dir: D:\JMRI2\JMRI\target\classes\resources
Created dir: D:\JMRI2\JMRI\java\tmp\jmri\jmris\srcp\parser
Created dir: D:\JMRI2\JMRI\java\tmp\jmri\jmrix\srcp\parser
JMRI.copyfiles:
Copying 17 files to D:\JMRI2\JMRI\target\classes\resources
Copying 1724 files to D:\JMRI2\JMRI\target\classes
JMRI.jjtree:
Java Compiler Compiler Version 7.0.3 (Tree Builder)
(type "jjtree" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\src\jmri\jmris\srcp\SRCPParser.jjt . . .
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASThandshakecommand.java" does not exist.  Will create one.
File "ASTcommand.java" does not exist.  Will create one.
File "ASTserviceversion.java" does not exist.  Will create one.
File "ASTconnectionmode.java" does not exist.  Will create one.
File "ASTbus.java" does not exist.  Will create one.
File "ASTaddress.java" does not exist.  Will create one.
File "ASTvalue.java" does not exist.  Will create one.
File "ASTcvno.java" does not exist.  Will create one.
File "ASTzeroaddress.java" does not exist.  Will create one.
File "ASTnonzeroaddress.java" does not exist.  Will create one.
File "ASTport.java" does not exist.  Will create one.
File "ASTdevicegroup.java" does not exist.  Will create one.
File "ASTgo.java" does not exist.  Will create one.
File "ASTget.java" does not exist.  Will create one.
File "ASThandshake_set.java" does not exist.  Will create one.
File "ASTprotocollitteral.java" does not exist.  Will create one.
File "ASTconnectionlitteral.java" does not exist.  Will create one.
File "ASTset.java" does not exist.  Will create one.
File "ASTterm.java" does not exist.  Will create one.
File "ASTcheck.java" does not exist.  Will create one.
File "ASTwait_cmd.java" does not exist.  Will create one.
File "ASTinit.java" does not exist.  Will create one.
File "ASTreset.java" does not exist.  Will create one.
File "ASTverify.java" does not exist.  Will create one.
File "ASTgl.java" does not exist.  Will create one.
File "ASTsm.java" does not exist.  Will create one.
File "ASTga.java" does not exist.  Will create one.
File "ASTfb.java" does not exist.  Will create one.
File "ASTtime.java" does not exist.  Will create one.
File "ASTpower.java" does not exist.  Will create one.
File "ASTserver.java" does not exist.  Will create one.
File "ASTsession.java" does not exist.  Will create one.
File "ASTlock.java" does not exist.  Will create one.
File "ASTdescription.java" does not exist.  Will create one.
File "ASTonoff.java" does not exist.  Will create one.
File "ASTzeroone.java" does not exist.  Will create one.
File "ASTdelay.java" does not exist.  Will create one.
File "ASTtimeout.java" does not exist.  Will create one.
File "ASTprogmode.java" does not exist.  Will create one.
File "ASTcv.java" does not exist.  Will create one.
File "ASTcvbit.java" does not exist.  Will create one.
File "ASTreg.java" does not exist.  Will create one.
File "ASTprotocol.java" does not exist.  Will create one.
File "ASTdrivemode.java" does not exist.  Will create one.
File "ASTfunctionmode.java" does not exist.  Will create one.
File "SRCPParserTreeConstants.java" does not exist.  Will create one.
File "SRCPParserVisitor.java" does not exist.  Will create one.
File "SRCPParserDefaultVisitor.java" does not exist.  Will create one.
File "JJTSRCPParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in D:\JMRI2\JMRI\java\tmp\jmri\jmris\srcp\parser\SRCPParser.jj
Java Compiler Compiler Version 7.0.3 (Tree Builder)
(type "jjtree" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\src\jmri\jmrix\srcp\SRCPClientParser.jjt . . .
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASThandshakeresponse.java" does not exist.  Will create one.
File "ASTtimestamp.java" does not exist.  Will create one.
File "ASTserviceversion.java" does not exist.  Will create one.
File "ASTinforesponse.java" does not exist.  Will create one.
File "ASTinfo.java" does not exist.  Will create one.
File "ASTerror.java" does not exist.  Will create one.
File "ASTok.java" does not exist.  Will create one.
File "ASTcommandresponse.java" does not exist.  Will create one.
File "ASTbus.java" does not exist.  Will create one.
File "ASTpower.java" does not exist.  Will create one.
File "ASTzeroaddress.java" does not exist.  Will create one.
File "ASTnonzeroaddress.java" does not exist.  Will create one.
File "ASTport.java" does not exist.  Will create one.
File "ASTdevicegroup.java" does not exist.  Will create one.
File "ASTgl.java" does not exist.  Will create one.
File "ASTsm.java" does not exist.  Will create one.
File "ASTga.java" does not exist.  Will create one.
File "ASTfb.java" does not exist.  Will create one.
File "ASTtime.java" does not exist.  Will create one.
File "ASTserver.java" does not exist.  Will create one.
File "ASTsession.java" does not exist.  Will create one.
File "ASTlock.java" does not exist.  Will create one.
File "ASTdescription.java" does not exist.  Will create one.
File "ASTonoff.java" does not exist.  Will create one.
File "SRCPClientParserTreeConstants.java" does not exist.  Will create one.
File "SRCPClientParserVisitor.java" does not exist.  Will create one.
File "SRCPClientParserDefaultVisitor.java" does not exist.  Will create one.
File "JJTSRCPClientParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in D:\JMRI2\JMRI\java\tmp\jmri\jmrix\srcp\parser\SRCPClientParser.jj
Created dir: D:\JMRI2\JMRI\java\tmp\jmri\jmris\simpleserver\parser
Java Compiler Compiler Version 7.0.3 (Tree Builder)
(type "jjtree" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\src\jmri\jmris\simpleserver\JmriServerParser.jjt . . .
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASTcommand.java" does not exist.  Will create one.
File "ASTpowercmd.java" does not exist.  Will create one.
File "ASTpower.java" does not exist.  Will create one.
File "ASTonoff.java" does not exist.  Will create one.
File "ASTturnoutcmd.java" does not exist.  Will create one.
File "ASTturnout.java" does not exist.  Will create one.
File "ASTturnoutdevice.java" does not exist.  Will create one.
File "ASTthrownclosed.java" does not exist.  Will create one.
File "ASTlightcmd.java" does not exist.  Will create one.
File "ASTlight.java" does not exist.  Will create one.
File "ASTlightdevice.java" does not exist.  Will create one.
File "ASTreportercmd.java" does not exist.  Will create one.
File "ASTreporter.java" does not exist.  Will create one.
File "ASTreporterdevice.java" does not exist.  Will create one.
File "ASTsensorcmd.java" does not exist.  Will create one.
File "ASTsensor.java" does not exist.  Will create one.
File "ASTsensordevice.java" does not exist.  Will create one.
File "ASToperationscmd.java" does not exist.  Will create one.
File "ASToperations.java" does not exist.  Will create one.
File "ASTtrains.java" does not exist.  Will create one.
File "ASTlocations.java" does not exist.  Will create one.
File "ASTterminate.java" does not exist.  Will create one.
File "ASTtraincmd.java" does not exist.  Will create one.
File "ASTattributelist.java" does not exist.  Will create one.
File "ASTattributename.java" does not exist.  Will create one.
File "ASTvalue.java" does not exist.  Will create one.
File "JmriServerParserTreeConstants.java" does not exist.  Will create one.
File "JmriServerParserVisitor.java" does not exist.  Will create one.
File "JmriServerParserDefaultVisitor.java" does not exist.  Will create one.
File "JJTJmriServerParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in D:\JMRI2\JMRI\java\tmp\jmri\jmris\simpleserver\parser\JmriServerParser.jj
JMRI.javacc:
Java Compiler Compiler Version 7.0.3 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\tmp\jmri\jmris\srcp\parser\SRCPParser.jj . . .
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated successfully.
Java Compiler Compiler Version 7.0.3 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\tmp\jmri\jmrix\srcp\parser\SRCPClientParser.jj . . .
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated successfully.
Java Compiler Compiler Version 7.0.3 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file D:\JMRI2\JMRI\java\tmp\jmri\jmris\simpleserver\parser\JmriServerParser.jj . . .
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated successfully.
JMRI.update-template-code:
Copying 1 file to D:\JMRI2\JMRI\java\tmp
JMRI.compile-generated-source:
Compiling 134 source files to D:\JMRI2\JMRI\target\classes
warning: Supported source version 'RELEASE_7' from annotation processor 'org.netbeans.modules.openide.util.ServiceProviderProcessor' less than -source '1.8'
warning: Supported source version 'RELEASE_7' from annotation processor 'org.netbeans.modules.openide.util.NamedServiceProcessor' less than -source '1.8'
2 warnings
Copying 1 file to D:\JMRI2\JMRI\target\classes\jmri
JMRI.compile:
Compiling 4434 source files to D:\JMRI2\JMRI\target\classes
warning: Supported source version 'RELEASE_7' from annotation processor 'org.netbeans.modules.openide.util.ServiceProviderProcessor' less than -source '1.8'
warning: Supported source version 'RELEASE_7' from annotation processor 'org.netbeans.modules.openide.util.NamedServiceProcessor' less than -source '1.8'
An exception has occurred in the compiler (1.8.0_25). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report.  Thank you.
java.lang.AssertionError: isSubClass H
at com.sun.tools.javac.code.Symbol.isSubClass(Symbol.java:447)
at com.sun.tools.javac.code.Symbol.isMemberOf(Symbol.java:456)
at com.sun.tools.javac.code.Symbol$MethodSymbol.overrides(Symbol.java:1469)
at com.sun.tools.javac.code.Types$ImplementationCache.implementationInternal(Types.java:2671)
at com.sun.tools.javac.code.Types$ImplementationCache.get(Types.java:2653)
at com.sun.tools.javac.code.Types.implementation(Types.java:2682)
at com.sun.tools.javac.code.Symbol$MethodSymbol.implementation(Symbol.java:1529)
at com.sun.tools.javac.code.Symbol$MethodSymbol.implementation(Symbol.java:1518)
at com.sun.tools.javac.comp.Resolve.notOverriddenIn(Resolve.java:416)
at com.sun.tools.javac.comp.Resolve.isAccessible(Resolve.java:402)
at com.sun.tools.javac.comp.Resolve.isAccessible(Resolve.java:362)
at com.sun.tools.javac.comp.Resolve.selectBest(Resolve.java:1448)
at com.sun.tools.javac.comp.Resolve.findMethodInScope(Resolve.java:1618)
at com.sun.tools.javac.comp.Resolve.findMethod(Resolve.java:1689)
at com.sun.tools.javac.comp.Resolve.findMethod(Resolve.java:1662)
at com.sun.tools.javac.comp.DeferredAttr$DeferredChecker$2.lookup(DeferredAttr.java:1325)
at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3325)
at com.sun.tools.javac.comp.Resolve.lookupMethod(Resolve.java:3310)
at com.sun.tools.javac.comp.DeferredAttr$DeferredChecker.quicklyResolveMethod(DeferredAttr.java:1333)
at com.sun.tools.javac.comp.DeferredAttr$DeferredChecker.visitApply(DeferredAttr.java:1223)
at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1465)
at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
at com.sun.tools.javac.comp.DeferredAttr$FilterScanner.scan(DeferredAttr.java:901)
at com.sun.tools.javac.comp.DeferredAttr.isDeferred(DeferredAttr.java:1088)
at com.sun.tools.javac.comp.Attr.attribArgs(Attr.java:701)
at com.sun.tools.javac.comp.Attr.visitApply(Attr.java:1834)
at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1465)
at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:607)
at com.sun.tools.javac.comp.Attr.attribExpr(Attr.java:656)
at com.sun.tools.javac.comp.Attr.visitExec(Attr.java:1611)
at com.sun.tools.javac.tree.JCTree$JCExpressionStatement.accept(JCTree.java:1296)
at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:607)
at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:676)
at com.sun.tools.javac.comp.Attr.attribStats(Attr.java:692)
at com.sun.tools.javac.comp.Attr.visitSwitch(Attr.java:1289)
at com.sun.tools.javac.tree.JCTree$JCSwitch.accept(JCTree.java:1087)
at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:607)
at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:676)
at com.sun.tools.javac.comp.Attr.attribStats(Attr.java:692)
at com.sun.tools.javac.comp.Attr.visitBlock(Attr.java:1142)
at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:909)
at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:607)
at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:676)
at com.sun.tools.javac.comp.Attr.visitMethodDef(Attr.java:1035)
at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:778)
at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:607)
at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:676)
at com.sun.tools.javac.comp.Attr.attribClassBody(Attr.java:4342)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:4252)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:4181)
at com.sun.tools.javac.comp.Attr.attrib(Attr.java:4156)
at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1248)
at com.sun.tools.javac.main.JavaCompiler.compile2(JavaCompiler.java:901)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:860)
at com.sun.tools.javac.main.Main.compile(Main.java:523)
at com.sun.tools.javac.main.Main.compile(Main.java:381)
at com.sun.tools.javac.main.Main.compile(Main.java:370)
at com.sun.tools.javac.main.Main.compile(Main.java:361)
at com.sun.tools.javac.Main.compile(Main.java:56)
at com.sun.tools.javac.Main.main(Main.java:42)
D:\JMRI2\JMRI\nbproject\nbjdk.xml:8: The following error occurred while executing this line:
D:\JMRI2\JMRI\build.xml:624: The following error occurred while executing this line:
D:\JMRI2\JMRI\build.xml:594: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 2 minutes 6 seconds)
 




--
Andrew Crosland


Re: Generate Website Components job failing on Jenkins

Matthew Harris
 

Bob,

Latest push should fix this.

Matt H


Build 4.19.2 this weekend?

Bob Jacobsen
 

This coming weekend is our usual time for building the next test release.

I propose to build 4.19.2 from head-of-master sometime Saturday evening or (if needed) early Sunday morning California time.

Let me know if this doesn’t work for you.

Bob

--
Bob Jacobsen
@BobJacobsen


Re: Related applications in our help pages

Bob Jacobsen
 

Thanks for the detailed, thought-through post!

First, a couple details. There’s another repository (JMRI/website at https://github.com/JMRI/website ) that’s meant to hold parts of the web site that don’t need to appear on JMRI’s self-contained help. (That was important a long time ago when JMRI had to stay a smaller download). That has some references to community/connections:

JMRI/projects/website/ % grep -r community/connections .
./index.shtml: <h2><a href="community/connections/XtrkCadReader/index.shtml">XTrackCAD and JMRI</a></h2>
./index.shtml: <a href="community/connections/XtrkCadReader/index.shtml"><img src="images/xtracadreader.png"
./index.shtml: <a href="community/connections/XtrkCadReader/index.shtml">XtrkCadReader</a>
./community/connections/Sidebar: <li><a href="/community/connections/XtrkCadReader/index.shtml">XtrkCadReader</a>
./community/connections/Sidebar: <li><a href="/community/connections/CATS.shtml">CATS</a>
./releasenotes/jmri2.10.shtml:<a href="http://jmri.org/community/connections/XtrkCadReader/index.shtml">XtrkCadReader</a>
./releasenotes/jmri2.9.6.shtml:<a href="http://jmri.org/community/connections/XtrkCadReader/index.shtml">XtrkCadReader</a>


As to the proposal below for handling “things that work with JMRI”, it sounds quite reasonable to me. It makes a simple (!), consistent (!!) and easy-to-maintain and extend (!!!) way to go forward.

Bob



On Jan 9, 2020, at 10:46 AM, JerryG via Groups.Io <jerryg2003=aol.com@groups.io> wrote:

[Apologies for the long post, but I do propose a solution...]

May I add additional issues into the mix: I found a page titled “JMRI Partners” (https://www.jmri.org/community/connections/ ) although I haven’t yet found where it links from. The term “partner” typically implies a relationship, perhaps formalized in an agreement. This page lists XtrkCADReader, Model Railroad Manager, and CATS. Does JMRI have such relationships?

CATS is the only one of these also listed as an Add-On Application (on the JMRI Applications page https://www.jmri.org/help/en/html/apps/index.shtml) where it is listed along with Manifest Creator and TrainCrew (which are not listed as JMRI Partner apps).

So now we have JMRI Partner (applications) and Add-on Applications.

The situation is further muddled in that they link to either (1) pages in JMRI.org/community/connections (2) pages within the main JMRI.org site (e.g. https://www.jmri.org/help/en/html/doc/Technical/CATS.shtml) or (3) external sites. Furthermore, there is no consistency and some applications go to internal pages from one place and external pages from another.

If our goal is to make the website as useful as possible to the model railroad community, then I would suggest that we should clear this up, making sure their is an easy way for an application to get listed for the general interest and have a consistent place to put relevant information. While I am relatively new to the JMRI community, I have been trying to navigate through all its richness so I might propose the following (which I am prepared to implement, over time):

1. Have a section on the JMRI applications page for “additional applications with JMRI connections.” This would replace what is currently called “add on applications.“ A sentence or two about the application can be included here and the name of the application can link either to an external website or to a page in the JMRI.org/community/connections area.

2. Retire the page entitled “JMRI partners” and move the appropriate information to the above.

3. Move information about these additional applications tp JMRI.org/community/connections part of the hierarchy from wherever they exist with JMRI.org today.

4. Update sidebarapplications.shtml part to include a link to the additional applications area listing.

5. Create a new help/en/’part called additionalapplications.shtml that can be included in appropriate sidebars as necessary.

While it is certainly possible to additionally make a distinction between one-way applications and two-way, I’m not sure that would make this listing of additional applications more useful. There is also the issue of commercial applications (some of which have a free version, but ultimately they want money for use of their products) and open source applications. If an application is open source, I would propose to note that next to its name in the additional applications listing.

Adding a new application would now involve three steps:

1. Add its name and a few sentences to /help/en/html/apps/index.shtml. Next

2. If desired, add help pages to jmri.org/community/connections/[name of applications Ken ]. This is where either “we” or “they” can document any special considerations Ken wants “we” and Peter wants “they” to deal with.

3. Link to these or external website off the name.

4. Add a link within additionalapplications.shtml so it will show up in any sidebars that include this part.

Hopefully, this addresses issues of ease of use, ease of maintenance, ownership, etc. and, with a clearly identified place to list additional connected applications, and some visibility via sidebars, perhaps we’ll scare up some more of interest.

If there is general agreement, I’ll start down this path. If not, please propose an alternative.

Jerry

_______________________________

@JerryG


--
Bob Jacobsen
@BobJacobsen


Re: Generate Website Components job failing on Jenkins

Matthew Harris
 

Damn.

These are the same issue and URLs had been changed in a different branch and merged later compared to the one I'd worked off.

Will fix this in the PR.

Thanks for the sanity check. (Dunno how I missed it)


Re: Generate Website Components job failing on Jenkins

Bob Jacobsen
 

Thanks!

I fetch’d that branch, but on my Mac I’m still seeing a crash when doing `ant javadoc-uml`:

javadoc-uml:
[javadoc] Generating Javadoc
[javadoc] Javadoc execution
[javadoc] 2 warnings
[javadoc] javadoc: warning - Error!
[javadoc] javadoc: warning - java.util.regex.PatternSyntaxException: Unclosed character class near index 55
[javadoc] window\.dataLayer = window\.dataLayer || [];\.[^\.]*
[javadoc] ^
[javadoc] java.util.regex.PatternSyntaxException: Unclosed character class near index 55
[javadoc] window\.dataLayer = window\.dataLayer || [];\.[^\.]*
[javadoc] ^
[javadoc] at java.util.regex.Pattern.error(Pattern.java:1955)

When I comment out these two lines:
<link href="https://static.javadoc.io/com.fasterxml.jackson.core/jackson-databind/2.9.8/"/>
<link href="https://static.javadoc.io/org.openlcb/openlcb/0.7.23/"/>

in addition to your changes, then it works again.

I’m using

% java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

Perhaps something has changed on the static.javadoc.io site?

Bob

On Jan 10, 2020, at 6:47 AM, Matthew Harris <@mattharris> wrote:

Bob,

PR https://github.com/JMRI/JMRI/pull/7915

But I'm sure that your hypothesis being that it's related to the PlantUML docklet is correct as the regular `javadoc` target does not exhibit the same issue with javadoc.io hosted sources.

Best regards,

Matt H
--
Bob Jacobsen
@BobJacobsen


Re: Generate Website Components job failing on Jenkins

Matthew Harris
 

Bob,

PR https://github.com/JMRI/JMRI/pull/7915

But I'm sure that your hypothesis being that it's related to the PlantUML docklet is correct as the regular `javadoc` target does not exhibit the same issue with javadoc.io hosted sources.

Best regards,

Matt H


Re: Generate Website Components job failing on Jenkins

Bob Jacobsen
 

Our last emails crossed in the ether, sorry.

Looks like you’ve found a more detailed cause than I have. Excellent. I’ll defer to your PR.

Bob

On Jan 10, 2020, at 5:49 AM, Matthew Harris <@mattharris> wrote:

OK, 99% sure I've found the problem.

Seems to be linked to marking external JavaDoc hosted on javadoc.io as being 'online':

https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba#diff-2cccd7bf48b7a9cc113ff564acd802a8L1988
and
https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba#diff-2cccd7bf48b7a9cc113ff564acd802a8L1989

It seems that the `javadoc` compiler is attempting to parse the injected Google Tag Manager script that's included in the on-line `index.html`

Will update with a suitable PR shortly.

<2020-01-10_14h49_27.png>

--
Bob Jacobsen
@BobJacobsen


Re: Generate Website Components job failing on Jenkins

Bob Jacobsen
 

Thanks for working on this.

The problem seems to be in these external references:

<!-- <link href="https://static.javadoc.io/org.openlcb/openlcb/0.7.23/"/> --> <!-- crashes -->
<!-- <link href="https://static.javadoc.io/com.fasterxml.jackson.core/jackson-databind/2.9.8/"/> --> <!-- crashes -->
<!-- <link href="https://jogamp.org/deployment/jogamp-next/javadoc/joal/javadoc/" packagelistLoc="lib/joal-2.3.1-packagelist"/> --> <!-- error loading packagelist -->
<!-- <link href="https://static.javadoc.io/com.github.purejavacomm/purejavacomm/1.0.1.RELEASE/" packagelistLoc="lib/purejavacomm-1.0.1-package-list"/> --> <!-- crashes -->
<!-- <link href="https://static.javadoc.io/com.alexandriasoftware.swing/jsplitbutton/1.3.1/" packagelistLoc="lib/jsplitbutton-1.3.1-package-list"/> --> <!-- crashes —>

(It took a while to track down, because I hadn’t considered that it could be so many that could independenrtly cause the problem.)

My working hypothesis is that the PlantUML doclet has trouble with (some) external content that’s created by more recent JDKs. This is based on a comment later on:

<!-- The following Javadocs were built with JDK 11+ and can't be directly linked —>

For now, I’m going to shortly PR a change that just comments those out.

Bob




On Jan 10, 2020, at 5:01 AM, Matthew Harris <@mattharris> wrote:

Bob,

Don't know if you got a chance to look at this, but, thanks to `git bisect` I think I've narrowed it down to https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba

The parent commit https://github.com/JMRI/JMRI/commit/293dad5389a82a85396959214f9f04400d003e3b builds fine.

I'm further investigating.

Best regards,

Matt H
--
Bob Jacobsen
@BobJacobsen


Re: Generate Website Components job failing on Jenkins

Matthew Harris
 

OK, 99% sure I've found the problem.

Seems to be linked to marking external JavaDoc hosted on javadoc.io as being 'online':

https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba#diff-2cccd7bf48b7a9cc113ff564acd802a8L1988
and
https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba#diff-2cccd7bf48b7a9cc113ff564acd802a8L1989

It seems that the `javadoc` compiler is attempting to parse the injected Google Tag Manager script that's included in the on-line `index.html`

Will update with a suitable PR shortly.


Re: Generate Website Components job failing on Jenkins

Matthew Harris
 

Bob,

Don't know if you got a chance to look at this, but, thanks to `git bisect` I think I've narrowed it down to https://github.com/JMRI/JMRI/commit/79008b83c51f5e63542f1948b8f4d61c09cd36ba

The parent commit https://github.com/JMRI/JMRI/commit/293dad5389a82a85396959214f9f04400d003e3b builds fine.

I'm further investigating.

Best regards,

Matt H


Re: Manufacturer names

Michael Mosher
 

OK "Möllehem Gårdsproduktion" is good.  Noticed the note in NMRA.xml that decoderIndex.xml is definitive, I copied the "Möllehem Gårdsproduktion" from decoderIndex.xml to the definition files and all is well, it not showing null anymore.  Even thou they looked the same on my monitor that must not have been the same. Just looked at both files with hex editor and the names are different.

Michael Mosher
Member SFRH&MS http://www.atsfrr.net/
DCC Master PVSMR http://www.patcongvalley.com/

On 1/9/2020 2:19 PM, Michael Mosher wrote:
Gentlemen,

I just happened to notice in DP decoder list there was two listings for same make, "DCCconcepts" and "DCC Concepts", extra space and change in capitalization.  The first one's tool tip was CV8 = 36 while the other was CV8 = null.  I changed the mfg tag in xml file to match the name as in NMRA.xml file.  All's Ok now here.

Looked at tooltips of all makes and found some others that where null:
"Kato" changed to "KATO Precision Models" ID 40
"PdP" changed to "PpP Digital" ID 74
"Team Digital" changed to "Team Digital, LLC"  ID 25
"Wekomm" changed to "Wekomm Engineering, GmbH"  ID 86
That all was fine.

The one giving me trouble is
"MGP" changed to "Möllehem Gårdsproduktion"
Googled "Möllehem Gårdsproduktion" found their web site and product seem to match names in DP and the web uses the MGP abbreviation.
Changed the xml files and the make in DP is "Möllehem Gårdsproduktion" but it still shows null for CV8.  Probably because of the non-English characters in the name.  On Windows 7 set to US and Notepad++ I copied the text from NMRA.xml to the definition xml file, but still it does not see the mfg as being ID 126.  Perhaps someone with more multi language aware computer/editor needs to make the change or maybe the Java code is not as multi language aware as it needs to be?  May not really matter thou, since the products from that manufacturer appear to be things not likely to be programmed on program track and therefore not going to need to be determined via Read type from decoder button.  Should I submit the xml files changed to "Möllehem Gårdsproduktion" or just leave "MGP"?

Also there's Harman-DIY (null) and Harman DCC (98), while similar names not sure if same make or not, so did not make any changes here.

I did check, changing the mfg name does not affect the ability to open an existing roster entry saved under the old name.