juneau-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Gregory <garydgreg...@gmail.com>
Subject Re: Breaking changes in 7.2.0. Plans for 7.2.1, 8.0.0
Date Tue, 16 Oct 2018 19:29:25 GMT
Oh, I see, your test fixtures use hardwired line-endings, obvious not
portable. Instead you should do something like this:


On Tue, Oct 16, 2018 at 1:02 PM Gary Gregory <garydgregory@gmail.com> wrote:

> Hi James and all:
>
> For org.apache.juneau.marshall.N3Test.write1(), m.toString("foo") is:
>
>  (java.lang.String) @prefix jp:      <http://www.apache.org/juneaubp/> .
> @prefix j:       <http://www.apache.org/juneau/> .
>
> []    j:value "foo" .
>
> Gary
>
> On Tue, Oct 16, 2018 at 9:11 AM James Bognar <jamesbognar@apache.org>
> wrote:
>
>> Hi Gary,
>>
>> It's hard to read the output.  Is the difference "]    j:value "foo" .]"
>> vs "[]    j:value "foo" .]"?
>>
>> I've had problems in the past writing unit tests for the RDF languages
>> because the output is sometimes not consistent.  For example, triples are
>> not guaranteed to be serialized in the same order each time, so I've had to
>> use tricks such as sorting results before comparison.  Our code does not
>> have control over how Jena serialized the RDF model.
>>
>> This is a basic sanity test.  I'm surprised it's causing an issue.  It is
>> a new test in 7.2.0 though.  Could you tell me what the output is from the
>> call to m.toString("foo")?
>>
>> I'm not an RDF expert, so maybe Peter Haumer can chime in?
>>
>> On Mon, Oct 15, 2018 at 9:20 PM Gary Gregory <garydgregory@gmail.com>
>> wrote:
>>
>>> On Mon, Oct 15, 2018 at 6:40 PM James Bognar <jamesbognar@gmail.com>
>>> wrote:
>>>
>>>> I’ll continue work on number 2.
>>>>
>>>
>>> Thank you James!
>>>
>>> I tried to build Juneau git master locally with:
>>>
>>> Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe;
>>> 2018-06-17T12:33:14-06:00)
>>> Maven home: C:\Java\apache-maven-3.5.4\bin\..
>>> Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: C:\Program
>>> Files\Java\jdk1.8.0_181\jre
>>> Default locale: en_US, platform encoding: Cp1252
>>> OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
>>>
>>> but I got:
>>>
>>> [INFO] Running org.apache.juneau.xml.XmlTest
>>> [INFO] Tests run: 27, Failures: 0, Errors: 0, Skipped: 0, Time elapsed:
>>> 0.015 s - in org.apache.juneau.xml.XmlTest
>>> [INFO]
>>> [INFO] Results:
>>> [INFO]
>>> [ERROR] Failures:
>>> [ERROR]   N3Test.toString1:45 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [ERROR]   N3Test.write1:33 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [ERROR]   N3Test.write2:40 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [ERROR]   TurtleTest.toString1:45 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [ERROR]   TurtleTest.write1:33 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [ERROR]   TurtleTest.write2:40 expected:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> []    j:value "foo" .]
>>> > but was:<...che.org/juneaubp/> .[
>>> @prefix j:       <http://www.apache.org/juneau/> .
>>>
>>> ]]    j:value "foo" .
>>> >
>>> [INFO]
>>> [ERROR] Tests run: 18397, Failures: 6, Errors: 0, Skipped: 1
>>> [INFO]
>>>
>>>
>>> Any ideas? This is not urgent.
>>>
>>> Gary
>>>
>>>>
>>>>
>>>> On Mon, Oct 15, 2018 at 8:38 PM Gary Gregory <garydgregory@gmail.com>
>>>> wrote:
>>>>
>>>>> Looking at sources, it seems to me the choices are:
>>>>>
>>>>> 1) Do nothing and break all existing apps; obviously not acceptable.
>>>>> 2) Update the whole code base so that both old and new annotation are
>>>>> handled. I see > 400 references to the Query annotation for example,
so,
>>>>> yikes; granted some of those references are in Javadocs.
>>>>> 3) "Disown" 7.2.0 and move the annotations back to their original
>>>>> locations for 7.2.1. Not good either since that would break BC for 7.2.0
>>>>> apps; see 1) above. Note that it does not matter how recently 7.2.0 was
>>>>> released.
>>>>>
>>>>> It seems that the only sensible solution is 2)
>>>>>
>>>>> Thoughts?
>>>>>
>>>>> Gary
>>>>>
>>>>> On Mon, Oct 15, 2018 at 5:50 PM Gary Gregory <garydgregory@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> It looks like org.apache.juneau.rest.RestContext.findParams() does
>>>>>> not take into account the deprecated annotations...
>>>>>>
>>>>>> Gary
>>>>>>
>>>>>> On Mon, Oct 15, 2018 at 4:54 PM Gary Gregory <garydgregory@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hm... on startup, I get:
>>>>>>>
>>>>>>> Running class 'RestMicroservice' using config file
>>>>>>> 'src\main\config\admin-microservice.cfg'.
>>>>>>> 2018-10-15 16:51:22,216 INFO
>>>>>>> [com.rs.seagull.httpmonitor.test.NHttpReverseProxyTestRule$1][]
Logging
>>>>>>> initialized @4407ms to org.apache.logging.log4j.appserver.jetty.Log4j2Logger
>>>>>>> Server started on port 1103
>>>>>>> Servlet init error on class
>>>>>>> 'com.rs.seagull.httpmonitor.admin.AdminRootResources'
>>>>>>> java.lang.RuntimeException:
>>>>>>> org.apache.juneau.rest.RestServletException: Problem occurred
trying to
>>>>>>> serialize methods on class
>>>>>>> com.rs.seagull.httpmonitor.admin.AdminRootResources,
>>>>>>> methods=['shutdown,PUT,/shutdown','resume,PUT,/resume','reset,PUT,/reset','getStatus,GET,/status','getConfiguration,GET,/configuration','getInfo,GET,/info','reconfigure,POST,/reconfigure']
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContextBuilder.build(RestContextBuilder.java:262)
>>>>>>> at org.apache.juneau.rest.RestServlet.init(RestServlet.java:53)
>>>>>>> at
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:670)
>>>>>>> at
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:519)
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.installProxy(NHttpReverseProxy.java:1867)
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.installAdmin(NHttpReverseProxy.java:1823)
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.goLoop(NHttpReverseProxy.java:1533)
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.test.NHttpReverseProxyTestRule$1.lambda$0(NHttpReverseProxyTestRule.java:191)
>>>>>>> at java.lang.Thread.run(Thread.java:748)
>>>>>>> Caused by: org.apache.juneau.rest.RestServletException: Problem
>>>>>>> occurred trying to serialize methods on class
>>>>>>> com.rs.seagull.httpmonitor.admin.AdminRootResources,
>>>>>>> methods=['shutdown,PUT,/shutdown','resume,PUT,/resume','reset,PUT,/reset','getStatus,GET,/status','getConfiguration,GET,/configuration','getInfo,GET,/info','reconfigure,POST,/reconfigure']
>>>>>>> at org.apache.juneau.rest.RestContext.<init>(RestContext.java:3303)
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContextBuilder.build(RestContextBuilder.java:258)
>>>>>>> ... 8 more
>>>>>>> *Caused by: org.apache.juneau.rest.RestServletException: Invalid
>>>>>>> parameter specified for method
>>>>>>> 'com.rs.seagull.httpmonitor.admin.AdminRootResources.reconfigure(String,Reader)'
>>>>>>> at index position 0*
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContext.findParams(RestContext.java:4613)
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestJavaMethod$Builder.<init>(RestJavaMethod.java:394)
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestJavaMethod.<init>(RestJavaMethod.java:92)
>>>>>>> at org.apache.juneau.rest.RestContext.<init>(RestContext.java:3236)
>>>>>>> ... 9 more
>>>>>>> 2018-10-15 16:51:23,700 WARN
>>>>>>> [com.rs.seagull.httpmonitor.test.NHttpReverseProxyTestRule$1][o.e.j.s.h.C.ROOT]
>>>>>>> unavailable
>>>>>>> java.lang.RuntimeException:
>>>>>>> org.apache.juneau.rest.RestServletException: Problem occurred
trying to
>>>>>>> serialize methods on class
>>>>>>> com.rs.seagull.httpmonitor.admin.AdminRootResources,
>>>>>>> methods=['shutdown,PUT,/shutdown','resume,PUT,/resume','reset,PUT,/reset','getStatus,GET,/status','getConfiguration,GET,/configuration','getInfo,GET,/info','reconfigure,POST,/reconfigure']
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContextBuilder.build(RestContextBuilder.java:262)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at org.apache.juneau.rest.RestServlet.init(RestServlet.java:53)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:670)
>>>>>>> ~[jetty-servlet-9.4.12.v20180830.jar:9.4.12.v20180830]
>>>>>>> at
>>>>>>> org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:519)
>>>>>>> ~[jetty-servlet-9.4.12.v20180830.jar:9.4.12.v20180830]
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.installProxy(NHttpReverseProxy.java:1867)
>>>>>>> ~[classes/:?]
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.installAdmin(NHttpReverseProxy.java:1823)
>>>>>>> ~[classes/:?]
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.NHttpReverseProxy.goLoop(NHttpReverseProxy.java:1533)
>>>>>>> ~[classes/:?]
>>>>>>> at
>>>>>>> com.rs.seagull.httpmonitor.test.NHttpReverseProxyTestRule$1.lambda$0(NHttpReverseProxyTestRule.java:191)
>>>>>>> ~[test-classes/:?]
>>>>>>> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_181]
>>>>>>> Caused by: org.apache.juneau.rest.RestServletException: Problem
>>>>>>> occurred trying to serialize methods on class
>>>>>>> com.rs.seagull.httpmonitor.admin.AdminRootResources,
>>>>>>> methods=['shutdown,PUT,/shutdown','resume,PUT,/resume','reset,PUT,/reset','getStatus,GET,/status','getConfiguration,GET,/configuration','getInfo,GET,/info','reconfigure,POST,/reconfigure']
>>>>>>> at org.apache.juneau.rest.RestContext.<init>(RestContext.java:3303)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContextBuilder.build(RestContextBuilder.java:258)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> ... 8 more
>>>>>>> Caused by: org.apache.juneau.rest.RestServletException: Invalid
>>>>>>> parameter specified for method
>>>>>>> 'com.rs.seagull.httpmonitor.admin.AdminRootResources.reconfigure(String,Reader)'
>>>>>>> at index position 0
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContext.findParams(RestContext.java:4613)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestJavaMethod$Builder.<init>(RestJavaMethod.java:394)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestJavaMethod.<init>(RestJavaMethod.java:92)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at org.apache.juneau.rest.RestContext.<init>(RestContext.java:3236)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> at
>>>>>>> org.apache.juneau.rest.RestContextBuilder.build(RestContextBuilder.java:258)
>>>>>>> ~[juneau-rest-server-7.2.1-SNAPSHOT.jar:7.2.1-SNAPSHOT]
>>>>>>> ... 8 more
>>>>>>>
>>>>>>> Thoughts?
>>>>>>>
>>>>>>> Gary
>>>>>>>
>>>>>>> On Mon, Oct 15, 2018 at 9:12 AM Gary Gregory <garydgregory@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Yep, it compiles, trying the runtime now...
>>>>>>>>
>>>>>>>> Gary
>>>>>>>>
>>>>>>>> On Mon, Oct 15, 2018 at 7:42 AM James Bognar <
>>>>>>>> jamesbognar@apache.org> wrote:
>>>>>>>>
>>>>>>>>> Fixed.  You can try again.
>>>>>>>>>
>>>>>>>>> On Sun, Oct 14, 2018 at 10:07 PM Gary Gregory <
>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hi James:
>>>>>>>>>>
>>>>>>>>>> Using 7.2.1-SNAPSHOT, I only have one (1) compiler
error:
>>>>>>>>>>
>>>>>>>>>> The import org.apache.juneau.xml.XmlSchemaDocSerializer
cannot be
>>>>>>>>>> resolved.
>>>>>>>>>>
>>>>>>>>>> Gary
>>>>>>>>>>
>>>>>>>>>> On Sun, Oct 14, 2018 at 1:38 PM Gary Gregory <
>>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Thank you, I should be home to take a look tonight...
>>>>>>>>>>>
>>>>>>>>>>> Gary
>>>>>>>>>>>
>>>>>>>>>>> On Sat, Oct 13, 2018, 17:36 James Bognar <jamesbognar@apache.org>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Gary.  Just delivered the changes.  You
can try them out now.
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, Oct 12, 2018 at 6:19 PM James Bognar
<
>>>>>>>>>>>> jamesbognar@apache.org> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I'm going to need a couple of days to
make those changes.
>>>>>>>>>>>>> I'll announce when they're ready.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Oct 12, 2018 at 4:25 PM Gary
Gregory <
>>>>>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Oct 11, 2018 at 11:32 AM
Gary Gregory <
>>>>>>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Oct 11, 2018 at 11:28
AM James Bognar <
>>>>>>>>>>>>>>> jamesbognar@apache.org> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Yes, I will try my best to
try to add in backwards
>>>>>>>>>>>>>>>> compatibility in 7.2.1.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Great and thank you, I can test
a SNAPSHOT version when you
>>>>>>>>>>>>>>> give the go ahead.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> May you please indicate a time-frame
for which I should set
>>>>>>>>>>>>>> aside some time for testing a SNAPSHOT?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thank you,
>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Thu, Oct 11, 2018 at 1:21
PM Gary Gregory <
>>>>>>>>>>>>>>>> garydgregory@gmail.com>
wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Thu, Oct 11, 2018
at 11:17 AM James Bognar <
>>>>>>>>>>>>>>>>> jamesbognar@apache.org>
wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Yea I can do that.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Hi James,
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> My goal, which I hope
you share is:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> - Update from 7.1.0 to
7.2.1 as a drop-in replacement
>>>>>>>>>>>>>>>>> (skipping 7.2.0 altogether.)
>>>>>>>>>>>>>>>>> - Follow the @deprecated
warnings and update my source
>>>>>>>>>>>>>>>>> code.
>>>>>>>>>>>>>>>>> - Update to the next
release, whenever that is, as a drop
>>>>>>>>>>>>>>>>> in replacement. Would
that then be 8.0?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Is that how you see it?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Thu, Oct 11, 2018
at 1:15 PM Gary Gregory <
>>>>>>>>>>>>>>>>>> garydgregory@gmail.com>
wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On Thu, Oct 11,
2018 at 10:47 AM James Bognar <
>>>>>>>>>>>>>>>>>>> jamesbognar@apache.org>
wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> In hindsight,
Juneau 7.2.0 should have been released as
>>>>>>>>>>>>>>>>>>>> Juneau 8
due to breaking changes.  Particularly, the server and client side
>>>>>>>>>>>>>>>>>>>> annotations
were merged into a single set of annotations.  I'm now getting
>>>>>>>>>>>>>>>>>>>> negative
feedback for that decision (rightly so).
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> My plan to
fix this is to revert the changes made in
>>>>>>>>>>>>>>>>>>>> 7.2.0 and
to re-release 7.1.1 as 7.2.1.  Then release Juneau 8 with the
>>>>>>>>>>>>>>>>>>>> latest bug
fixes included.  Given the significant changes made in 7.2.0, I
>>>>>>>>>>>>>>>>>>>> do not believe
it's possible to fix backwards compatibility (just unmerging
>>>>>>>>>>>>>>>>>>>> those annotations
would explode the code complexity).
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Thank you for
that. But will there be @deprecated
>>>>>>>>>>>>>>>>>>> comments so that
we can move to the new code?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>

Mime
View raw message