I think it might make sense to go modular first, I'm a long way along that path 
already with JGDMS.  I could use some help.

It's worth remembering the qa and jtreg test suites combined, are very 
comprehensive as these, like java, were designed to test specification 
compliance of third party code.  If we separate out the test suite, it can also 
check binary compatibility.  The jtreg suite has additional coverage over the 
qa test suite.  JTReg is not included in Maven Central, although the library is 
mavenised, I think this would encourage it's use.

Your documented investigation of TaskManager's use was very instructive in its 
replacement with ExecutorService.

I suspect reasons people aren't more involved are related to the monolithic 
build, there's just too much to digest all at once, the build scripts are long 
and unconventional (use of classdep to build jars that contain duplicate 
classes) and jtreg requires the library to be downloaded and installed 
manually.  This leads to uncertainty, which leads to fear of test coverage.

I reccommend people start by focusing on a small section of code or 
functionality.

Also confirming I've now removed river from the url link and deleted a fork 
named River.

The code can now be found at:

https://pfirmstone.github.io/JGDMS/

I will go over the files contained within the repository in the near future to 
ensure compliance.

Regards,

Peter.

Sent from my Samsung device.
 
  Include original message
---- Original message ----
From: Patricia Shanahan <p...@acm.org>
Sent: 17/01/2017 10:40:49 pm
To: dev@river.apache.org
Subject: Re: Summary of my external work

I think integrating back as you go along would make more sense, but the  
real issue is getting more people actively involved in the development.  
I am not the right person for that - not knowing enough about  
River-in-practice. Indeed, I would be very happy to turn over the PMC chair. 

On an unrelated but important issue, there is a big discussion of  
trademarks on the board@ list. This is probably not the right time to  
have a PMC member using "river" in a URL. It makes it look as though the  
River PMC is not policing the trademark correctly. 

On 1/17/2017 4:28 AM, Peter wrote: 
> Which changes (a subset) would you consider voting for in an Apache Release?  
>Is it possible more of these features could be integrated over time? 
> 
> Regards, 
> 
> Peter. 
> 
> 
> Sent from my Samsung device. 
> 
>   Include original message 
> ---- Original message ---- 
> From: Patricia Shanahan <p...@acm.org> 
> Sent: 12/01/2017 02:17:40 am 
> To: dev@river.apache.org 
> Subject: Re: Summary of my external work 
> 
> How do you envisage the future of this work? 
> 
> Personally, given the volume of changes outside svn, without any review 
> or commit messages, I am not sure I would vote for an Apache release 
> based on this code. Do you have a quorum of PMC members who do feel 
> comfortable with this process? 
> 
> On 1/11/2017 3:43 AM, Peter Firmstone wrote: 
>>  Forked from River trunk just before 3.0 release. 
>> 
>>     * Security focused: 
>> 
>>           o Supports updated modern cyphers, support for vulnerable 
>>             cypers removed. 
>>           o Reimplementation of serialization, includes input validation 
>>             and defensive programming. 
>>           o Additional SafeServiceRegistrar interface with lookup method 
>>             that allows clients to authenticate services prior to 
>>             downloading. 
>>           o ServiceDiscoveryManager configured to use new lookup method, 
>>             without changes to API. 
>>           o proxy jar files can contain META-INF permissions.perm files 
>>             with advisory permissions (same format as OSGi local 
>>             permissions). 
>>           o New secure multicast discovery providers that dynamically 
>>             grant download and deserialization permission for 
>>             authenticated lookup services. 
>>           o Phoenix now supports using TLS sockets for Registry. 
>>           o LookupLocator now supports https unicast discovery for 
>>             firewall/proxy traversal. 
>>     * IPv6 Multicast discovery support 
>>     * Better support for Java 9, no longer accessing sun jvm 
>>       implementation packages 
>>           o Phoenix uses RMI Registry now instead of RegistrySunExporter 
>>           o KerberosServerEndpoint reflectively accesses 
>>             com.sun.security.jgss.GSSUtil.createSubject, but only when 
>>             using client token delegation.  Delegation not supported on 
>>             other vendors jvm's. 
>>     * Deprecated: 
>>           o RegistrySunExporter 
>>           o SunJRMPExporter 
>>           o ProxyTrust 
>> 
>>  Currently working on a Modular Maven based build. 
>> 
>>     * Uniting packages and removing some dependencies to assist OSGi 
>>       developers (like some package changes for non api org.apache.river 
>>       namspaces). 
>>           o org.apache.river.reggie.proxy 
>>           o org.apache.river.reggie.service 
>>     * OSGi bundles with package based dependencies. 
>> 
>> 
>>  Looking forward to donating this code to River. 
>> 
>>  [INFO] 
>>  ------------------------------------------------------------------------ 
>>  [INFO] Reactor Summary: 
>>  [INFO] 
>>  [INFO] JGDMS Project .................................... SUCCESS [ 
>>  0.712 s] 
>>  [INFO] Module :: JGDMS Collection ........................ SUCCESS [ 
>>  18.139 s] 
>>  [INFO] Module :: JGDMS Jini Platform ..................... SUCCESS 
>>  [01:17 min] 
>>  [INFO] Module :: JGDMS Loader ............................ SUCCESS [ 
>>  18.179 s] 
>>  [INFO] Module :: JGDMS Extensible Remote Invocation ....... SUCCESS [ 
>>  45.867 s] 
>>  [INFO] Module :: JGDMS Resources ........................... SUCCESS [ 
>>  0099 s] 
>>  [INFO] Module :: JGDMS URL providers and Integrity ....... SUCCESS [ 
>>  17.804 s] 
>>  [INFO] Module :: JGDMS Activation Platform ............... SUCCESS [ 
>>  23.309 s] 
>>  [INFO] Module :: JGDMS Service DL Library ................ SUCCESS [ 
>>  18.373 s] 
>>  [INFO] Module :: JGDMS Lookup Discovery Providers ........ SUCCESS [ 
>>  17.094 s] 
>>  [INFO] Module :: JGDMS Service Library ................... SUCCESS [ 
>>  22.786 s] 
>>  [INFO] Module :: JGDMS Service Starter .................... SUCCESS [ 
>>  27.622 s] 
>>  [INFO] Module :: JGDMS SharedGroup Destroy ................ SUCCESS [ 
>>  22.416 s] 
>>  [INFO] Module :: JGDMS IIOP ............................... SUCCESS [ 
>>  13.330 s] 
>>  [INFO] Module :: JGDMS JRMP ............................... SUCCESS [ 
>>  13.663 s] 
>>  [INFO] Module :: JGDMS Service DL Library UI Factory ...... SUCCESS [ 
>>  21.488 s] 
>>  [INFO] Module :: Jini 2.1 compatibility .................. SUCCESS [ 
>>  16.572 s] 
>>  [INFO] Module :: Outrigger ............................... SUCCESS [ 
>>  0.017 s] 
>>  [INFO] Module :: Outrigger Service Download classes ....... SUCCESS [ 
>>  15.488 s] 
>>  [INFO] Module :: Outrigger Service Implementation ......... SUCCESS [ 
>>  27.113 s] 
>>  [INFO] Module :: Outrigger Snaplogstore ................... SUCCESS [ 
>>  16.609 s] 
>>  [INFO] Module :: Lookup Service ........................... SUCCESS [ 
>>  0.014 s] 
>>  [INFO] Module :: Reggie Service Download classes .......... SUCCESS [ 
>>  14.048 s] 
>>  [INFO] Module :: Reggie Service Implementation ............ SUCCESS [ 
>>  23.095 s] 
>>  [INFO] Module :: Mahalo .................................. SUCCESS [ 
>>  0.014 s] 
>>  [INFO] Module :: Mahalo Service Download classes ......... SUCCESS [ 
>>  13.727 s] 
>>  [INFO] Module :: Mahalo Service Implementation ........... SUCCESS [ 
>>  22.967 s] 
>>  [INFO] Module :: Mercury the Event Mailbox ............... SUCCESS [ 
>>  0.014 s] 
>>  [INFO] Module :: Mercury Service Download classes ......... SUCCESS [ 
>>  21.990 s] 
>>  [INFO] Module :: Mercury Service Implementation ........... SUCCESS [ 
>>  16.790 s] 
>>  [INFO] Module :: Norm .................................... SUCCESS [ 
>>  0.014 s] 
>>  [INFO] Module :: Norm Service Download classes ............ SUCCESS [ 
>>  20.415 s] 
>>  [INFO] Module :: Norm Service Implementation .............. SUCCESS [ 
>>  23257 s] 
>>  [INFO] Module :: Group ................................... SUCCESS [ 
>>  0.018 s] 
>>  [INFO] Module :: Group Service Download classes ........... SUCCESS [ 
>>  12.737 s] 
>>  [INFO] Module :: Group Service Implementation ............. SUCCESS [ 
>>  16.827 s] 
>>  [INFO] Module :: Fiddler the LookupDiscoveryService ...... SUCCESS [ 
>>  0.018 s] 
>>  [INFO] Module :: Fiddler LookupDiscoveryService Download classes SUCCESS 
>>  [ 21.747 s] 
>>  [INFO] Module :: Fiddler LookupDiscoveryService Implementation SUCCESS [ 
>>  20.474 s] 
>>  [INFO] Module :: Tools .................................. SUCCESS [ 
>>  0.018 s] 
>>  [INFO] Tool :: Check ConfigurationFile ................... SUCCESS [ 
>>  0098 s] 
>>  [INFO] Tool :: Check serialversionUid .................... SUCCESS [ 
>>  0.105 s] 
>>  [INFO] Tool :: ClassDep ................................... SUCCESS [ 
>>  0.145 s] 
>>  [INFO] Tool :: Class Server ............................... SUCCESS [ 
>>  0.084 s] 
>>  [INFO] Tool :: Compute message digest ..................... SUCCESS [ 
>>  0.115 s] 
>>  [INFO] Tool :: Compute httpmd codebase .................... SUCCESS [ 
>>  0.144 s] 
>>  [INFO] Tool :: Environment Check .......................... SUCCESS [ 
>>  0.169 s] 
>>  [INFO] Tool :: Jar wrapper ............................... SUCCESS [ 
>>  0.100 s] 
>>  [INFO] Tool :: Preferred classes list generator .......... SUCCESS [ 
>>  0.123 s] 
>>  [INFO] Module :: DebugDyanamicPolicyProvider and SecurityPolicyWriter 
>>  SUCCESS [  0.109 s] 
>>  [INFO] Module :: Phoenix Activation ...................... SUCCESS [ 
>>  0015 s] 
>>  [INFO] Module :: Phoenix Download ........................ SUCCESS [ 
>>  13.895 s] 
>>  [INFO] Module :: Phoenix Common .......................... SUCCESS [ 
>>  30.621 s] 
>>  [INFO] Module :: Phoenix .................................. SUCCESS [ 
>>  19.214 s] 
>>  [INFO] Module :: Phoenix Group ............................ SUCCESS [ 
>>  22.284 s] 
>>  [INFO] Module :: Phoenix Init ............................. SUCCESS [ 
>>  12.605 s] 
>>  [INFO] Module :: Groovy Configuration ..................... SUCCESS [ 
>>  6.050 s] 
>>  [INFO] JGDMS Distribution ................................ SUCCESS [ 
>>  16.285 s] 
>>  [INFO] Module :: JGDMS Service Browser .................... SUCCESS [ 
>>  4.288 s] 
>>  [INFO] Module :: JGDMS Extra service utilities ........... SUCCESS [ 
>>  22.972 s] 
>>  [INFO] 
>>  ------------------------------------------------------------------------ 
>>  [INFO] BUILD SUCCESS 
>>  [INFO] 
>>  ------------------------------------------------------------------------ 
>>  [INFO] Total time: 13:33 min 
>>  [INFO] Finished at: 2017-01-11T21:36:17+10:00 
>>  [INFO] Final Memory: 38M/173M 
>>  [INFO] 
>>  ------------------------------------------------------------------------ 
>> 
>>  C:\Users\peter\Documents\NetBeansProjects\river-internet\modularize\JGDMS> 
>> 
>>  Examples of OSGi manifests: 
>> 
>>  Manifest-Version: 1.0 
>>  Bnd-LastModified: 1484132752995 
>>  Bundle-ManifestVersion: 2 
>>  Bundle-Name: Module :: Reggie Service Implementation 
>>  Bundle-SymbolicName: reggie-service 
>>  Bundle-Version: 3.0.0.201701111105 
>>  Created-By: 1.8.0 (Oracle Corporation) 
>>  Import-Package: javax.net,javax.security.auth,javax.security.auth.logi 
>>   n,net.jini.activation;version="[3.0,4)",net.jini.config;version="[3.0 
>>   ,4)",net.jini.constraint;version="[3.0,4)",net.jini.core.constraint;v 
>>   ersion="[3.0,4)",net.jini.core.discovery;version="[3.0,4)",net.jini.c 
>>   ore.entry;version="[3.0,4)",net.jini.core.event;version="[30,4)",net 
>>   .jini.core.lease;version="[3.0,4)",net.jini.core.lookup;version="[3.0 
>>   ,4)",net.jini.discovery;version="[3.0,4)",net.jini.export;version="[3 
>>   .0,4)",net.jini.id;version="[3.0,4)",net.jini.io;version="[3.0,4)",ne 
>>   t.jini.jeri;version="[3.0,4)",net.jini.jeri.tcp;version="[3.0,4)",net 
>>   .jini.lease;version="[3.0,4)",net.jini.lookup;version="[3.0,4)",net.j 
>>   ini.lookup.entry;version="[3.0,4)",net.jini.security;version="[3.0,4) 
>>   ",net.jini.security.proxytrust;version="[3.0,4)",org.apache.river.api 
>>   .io;version="[3.0,4)",org.apache.river.api.util;version="[3.0,4)",org 
>>   .apache.river.config;version="[3.0,4)",org.apache.river.constants;ver 
>>   sion="[3.0,4)",org.apache.river.discovery;version="[3.0,4)",org.apach 
>>   e.river.logging;version="[3.0,4)",org.apache.river.lookup.entry;versi 
>>   on="[3.0,4)",org.apache.river.proxy;version="[3.0,4)",org.apache.rive 
>>   r.reggie.proxy;version="[3.0,4)",org.apache.river.reliableLog;version 
>>   ="[3.0,4)",org.apache.river.start.lifecycle;version="[3.0,4)",org.apa 
>>   che.river.thread;version="[3.0,4)" 
>>  Private-Package: org.apache.river.reggie.service 
>>  Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))" 
>>  Tool: Bnd-32.0.201605172007 
>> 
>>  <======================================> 
>> 
>>  Manifest-Version: 1.0 
>>  Bnd-LastModified: 1484132485762 
>>  Bundle-ManifestVersion: 2 
>>  Bundle-Name: Module :: JGDMS Service DL Library 
>>  Bundle-SymbolicName: jgdms-jsk-lib-dl 
>>  Bundle-Version: 3.0.0.201701111101 
>>  Created-By: 1.8.0 (Oracle Corporation) 
>>  Export-Package: net.jini.admin;uses:="net.jini.core.discovery,netjini 
>>   .core.entry";version="3.0.0",net.jini.entry;uses:="net.jini.core.entr 
>>   y,org.apache.river.api.io";version="3.0.0",net.jini.event;uses:="net 
>>   jini.core.event,net.jini.core.lease";version="3.0.0",net.jini.lease;u 
>>   ses:="net.jini.config,net.jini.core.event,net.jini.core.lease,org.apa 
>>   che.river.api.io";version="3.0.0",net.jini.lookup;uses:="net.jini.con 
>>   fig,net.jini.core.entry,net.jini.core.event,net.jini.core.lookup,net. 
>>   jini.discovery,net.jini.io,net.jini.lease,orgapache.river.api.io";ve 
>>   rsion="3.0.0",net.jini.lookup.entry;uses:="net.jini.core.entry,net.ji 
>>   ni.entry";version="3.0.0",net.jini.lookup.entry.jmx;uses:="net.jini.e 
>>   ntry";version="3.0.0",net.jini.lookup.ui;version="3.00",net.jini.loo 
>>   kup.ui.attribute;version="3.0.0",net.jini.space;uses:="net.jini.core. 
>>   entry,net.jini.core.event,net.jini.core.lease,net.jini.core.transacti 
>>   on,net.jini.entry,org.apache.river.api.io";version="3.0.0",org.apache 
>>   .river.admin;version="3.0.0",org.apache.river.landlord;uses:="net.jin 
>>   i.core.constraint,net.jini.core.lease,net.jini.id,net.jini.security,o 
>>   rg.apache.river.api.io,org.apache.river.lease";version="3.0.0",org.ap 
>>   ache.river.lease;uses:="net.jini.core.lease,net.jini.io,net.jini.leas 
>>   e,org.apache.river.api.io";version="3.0.0",org.apache.river.lookup.en 
>>   try;uses:="net.jini.core.entry,net.jini.lookup.entry";version="3.0.0" 
>>   ,orgapache.river.lookup.util;uses:="orgapache.river.api.io";version 
>>   ="3.0.0",org.apache.river.start.group;version="3.0.0",net.jinilookup 
>>   .ui.factory;version="3.0.0" 
>>  Import-Package: net.jiniconfig;version="[3.0,4)",net.jini.constraint; 
>>   version="[3.0,4)",net.jini.core.constraint;version="[3.0,4)",net.jini 
>>   .core.discovery;version="[3.0,4)",net.jini.core.entry;version="[3.0,4 
>>   )",net.jini.core.event;version="[30,4)",net.jini.core.lease;version= 
>>   "[3.0,4)",netjini.core.lookup;version="[3.0,4)",net.jini.core.transa 
>>   ction;version="[3.0,4)",net.jini.discovery;version="[3.0,4)",net.jini 
>>   .entry,net.jini.export;version="[3.0,4)",net.jini.id;version="[3.0,4) 
>>   ",net.jini.io;version="[3.0,4)",net.jini.io.context;version="[3.0,4)" 
>>   ,net.jini.jeri;version="[3.0,4)",net.jini.jeri.tcp;version="[3.0,4)", 
>>   net.jini.loader;version="[3.0,4)",net.jini.lookup.entry,net.jini.secu 
>>   rity;version="[3.0,4)",net.jini.security.proxytrust;version="[3.0,4)" 
>>   ,org.apache.river.action;version="[3.0,4)",org.apacheriver.api.io;ve 
>>   rsion="[3.0,4)",org.apache.river.concurrent;version="[3.0,4)",org.apa 
>>   che.river.config;version="[3.0,4)",org.apache.river.constants;version 
>>   ="[3.0,4)",org.apache.river.logging;version="[3.0,4)",org.apache.rive 
>>   r.lookup.entry,org.apache.river.lookup.util,org.apache.river.thread;v 
>>   ersion="[3.0,4)",org.apache.river.thread.wakeup;version="[3.0,4)" 
>>  Private-Package: org.apache.river.proxy 
>>  Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.5))" 
>>  Tool: Bnd-3.2.0.201605172007 
>> 
>> 
> 
> 

Reply via email to