Re: CAY-2842

2024-03-10 Thread Nikita Timofeev
This task is relevant only to Cayenne 5.0 so using features from Java 11 is
ok in general.

As to `var` I have mixed feelings about it. I don't use it myself at all
but that's more a habit. In general I'm ok with it when it is perfectly
clear what type it hides, and even can see where it could improve
readability.
For example in this case it seems better for me to use var, then a real
type:
Map map = ...;
for(var entry : map.entrySet()) {...}

But again I'm totally fine, if we just agree not to use `var` in Cayenne at
all to make life easier.

On Fri, Mar 8, 2024 at 8:24 PM Andrus Adamchik  wrote:

> Nikita might comment on whether this is a 5.0-only task. But I am with
> Michael on "var" in the framework. I use "var" declarations a lot in
> throwaway "scripting" code (usually data tasks with DFLib), but in any code
> that needs to be maintained, hiding variable types does complicate code
> review. That's been a source of frustration for me on various projects. And
> this is especially relevant for Cayenne where you want the code to be clear
> and readable.
>
> Cheers,
> Andrus
>
> > On Mar 7, 2024, at 5:52 PM, Michael Gentry  wrote:
> >
> > Just noticed this merge:
> >
> >
> https://github.com/apache/cayenne/pull/605/commits/99138fbcfe8f23e67805557bfcbca5bb452d8325
> >
> > I noticed there are several "var" variables, such as:
> >
> >var orderDbAttribute = getOrderDbAttribute(nodeBuilder.build());
> >
> > These won't compile with JDK 8 (introduced in 10). Did the minimum JDK
> > change to something higher? The documentation says: Cayenne 4.2 requires
> > JDK 1.8 or newer. Looks like 5.x will require JDK 11, so perhaps that's
> > what this is about?
> >
> > If it is JDK 11+, do we want to allow "var" in the codebase? Makes it
> > harder to do code reviews (IMHO).
> >
> > Thanks,
> > mrg
>
>

-- 
Best regards,
Nikita Timofeev


Re: Web Site / Documentation

2024-02-09 Thread Nikita Timofeev
Hi Michael,

I went ahead and fixed the "DOCUMENTATION" link and system requirements. So
it's off the list :)

On Wed, Jan 10, 2024 at 7:09 PM Andrus Adamchik  wrote:

> Hi Mike,
>
> Thanks for mentioning. There are probably other places across the
> documentation that may need some love. E.g. working with custom functions.
> I guess whoever gets to it first, wins :)
>
> Thanks,
> Andrus
>
>
> > On Jan 10, 2024, at 9:53 AM, Michael Gentry  wrote:
> >
> > Hi,
> >
> > In trying to help Riccardo, I noticed the big "DOCUMENTATION" link in the
> > header of the web site goes to the 4.1 documentation and not the 4.2
> > documentation. Also, the validateForX methods are barely mentioned and
> > otherwise undocumented. Also also, the system requirements table needs
> > updated here:
> > https://cayenne.apache.org/docs/4.2/cayenne-guide/#system-requirements
> >
> > There are probably more, but that's what I noticed offhand. I'll try to
> fix
> > them when I have some time, but it might be a while.
> >
> > Thanks,
> > mrg
>
>

-- 
Best regards,
Nikita Timofeev


Cayenne 5.0 proposals

2023-11-21 Thread Nikita Timofeev
Hi all,

Wanted to share a couple of my thoughts about changes that could be good
for Cayenne. And the first milestone release of Cayenne 5.0 could be a
perfect target for these changes.

1. Get rid of the `server` part in the names everywhere, starting by
renaming our core dependency from `cayenne-server` to just `cayenne`.
As we already removed the `client` counterpart, `server` just doesn't make
sense anymore.

2. Change of the versioning schema we use for the development cycle. A
short version of the proposal: drop BETA versions, keep the version of
snapshot build always the same, and slightly change format to articulate
what is the actual version.

Format would look like `MAJOR.MINOR-QUALIFIER`. Where the qualifier is one
of `SNAPSHOT`, `M` for the milestone or `RC` for the release candidate.

Example for the 5.0:
 - snapshot always stays as 5.0-SNAPSHOT
 - milestones releases are 5.0-M1, 5.0-M2 etc.
 - release candidates are 5.0-RC1, 5.0-RC2, etc.
 - and final release is just 5.0

And here's a reason for that change. It solves two minor problems with the
current schema. The first one is that all systems think that `B` goes
before `M`, so our beta versions always look older than milestones. We are
not that strict about what is beta nor are we enforcing any rules, so there
should be no problems with that.
The second one is that projects using SNAPSHOT versions should update
dependency every time we make a dev release. Again not a big change and
should not affect anything really, as there shouldn't be many projects
brave enough to just use SNAPSHOT.

Note this change does not affect overall versioning, e.g. patch versions
like 5.0.1 or global updates like 5.1.


-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2 release

2023-05-25 Thread Nikita Timofeev
With my +1 vote the result is following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

I will finish this release soon.
Thanks everyone!


On Sat, May 20, 2023 at 11:17 AM Andrus Adamchik  wrote:
>
> Very excited to have 4.2 out, especially with those regressions in RC2. My 
> checklist passes, I am +1.
>
> + MD5/SHA512 matches
> + Signature checks
> + rat passes
> + builds from source
> + Modeler runs on OS X
> + Cross-platform Modeler runs on OS X
> + Upgrade Agrest using the Maven repo.
> + Upgrade LinkMove using the Maven repo.
>
> Andrus
>
>
> > On May 16, 2023, at 1:42 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > The 4.2 GA version is finally here.
> > This release contains some important fixes for issues found in RC2.
> >
> > Release notes: https://github.com/apache/cayenne/blob/4.2/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1052/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2/
> >
> > Please evaluate and cast your votes
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2 release

2023-05-16 Thread Nikita Timofeev
Hi all,

The 4.2 GA version is finally here.
This release contains some important fixes for issues found in RC2.

Release notes: https://github.com/apache/cayenne/blob/4.2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1052/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2/

Please evaluate and cast your votes

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.0.3 release

2023-03-02 Thread Nikita Timofeev
With my a bit lated +1 the result is following:

Andrus Adamchik (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

I will finish this release today.
Thanks everyone!




On Mon, Feb 20, 2023 at 5:36 PM Michael Gentry  wrote:
>
> Checksums: OK
> Signatures: OK
> RAT: OK
> Cayenne Modeler: OK *
> Java 8 Source Build: OK **
>
> +1 for release.
>
> Thanks Nikita!
>
> * I don't have any older models to load, so I didn't test extensively. It
> does run under Java 8, 11, 17, and 19.
> ** Only built it using Java 8. Unit tests pass, etc.
>
>
> On Tue, Feb 14, 2023 at 6:08 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here is the 4.0.3 release that just adds JDK 17 support in the Modeler.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.0.3/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1057/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.3/
> >
> > Please evaluate and cast your votes
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.0.3 release

2023-02-20 Thread Nikita Timofeev
Yeah, 4.0 branch doesn't have full support for 17, it could be built
on Java 8 and 11 (I think).
Runtime should be good on 17 and with this release Modeler should work on 17.

On Sun, Feb 19, 2023 at 9:56 PM Andrus Adamchik  wrote:
>
> Java 17 probably. I was using Java 8 for the local build.
>
> > On Feb 19, 2023, at 7:38 PM, Michael Gentry  wrote:
> >
> > I'm seeing errors when building:
> >
> > [mrg@odin 13:31:49] ~/Projects/Cayenne-Release/cayenne-4.0.3-src > mvn
> > clean verify -Passembly,src,generic,mac
> > [INFO] Scanning for projects...
> > [INFO]
> > 
> > ...
> > [ERROR] Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:
> > 0.001 s <<< FAILURE! - in
> > org.apache.cayenne.remote.hessian.HessianConfigTest
> > [ERROR]
> > testLoadFactoryNoExtensions(org.apache.cayenne.remote.hessian.HessianConfigTest)
> > Time elapsed: 0 s  <<< ERROR!
> > java.lang.NoClassDefFoundError: Could not initialize class
> > com.caucho.hessian.io.ContextSerializerFactory
> > at
> > org.apache.cayenne.remote.hessian.HessianConfigTest.testLoadFactoryNoExtensions(HessianConfigTest.java:36)
> > ...
> > [ERROR] Errors:
> > [ERROR]   ROPServletTest.testInitHessianService:174 » NoClassDefFound Could
> > not initiali...
> > [ERROR]   ROPServletTest.testInitWithExtraModules:142 »
> > ExceptionInInitializer
> > [ERROR]   ROPServletTest.testInitWithLocation:88 » NoClassDefFound Could
> > not initialize ...
> > [ERROR]   ROPServletTest.testInitWithServletName:66 » NoClassDefFound Could
> > not initiali...
> > [ERROR]   ROPServletTest.testInitWithStandardModules:110 » NoClassDefFound
> > Could not ini...
> > [ERROR]   HessianConfigTest.testLoadFactoryNoExtensions:36 »
> > NoClassDefFound Could not i...
> > [ERROR] Tests run: 985, Failures: 0, Errors: 6, Skipped: 0
> >
> > It has been ages since I built 4.0, though, so I'm probably doing it
> > wrongly.
> >
> > [mrg@odin 13:33:59] ~/Projects/Cayenne-Release/cayenne-4.0.3-src > mvn -v
> > Apache Maven 3.9.0 (9b58d2bad23a66be161c4664ef21ce219c2c8584)
> > Maven home: /usr/local/Cellar/maven/3.9.0/libexec
> > Java version: 17.0.6, vendor: Homebrew, runtime:
> > /usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home
> > Default locale: en_US, platform encoding: UTF-8
> > OS name: "mac os x", version: "13.1", arch: "x86_64", family: "mac"
> >
> > Thoughts?
> >
> > On Tue, Feb 14, 2023 at 6:08 AM Nikita Timofeev 
> > wrote:
> >
> >> Hi all,
> >>
> >> Here is the 4.0.3 release that just adds JDK 17 support in the Modeler.
> >>
> >> Release notes:
> >> https://github.com/apache/cayenne/blob/4.0.3/RELEASE-NOTES.txt
> >> Maven repo:
> >> https://repository.apache.org/content/repositories/orgapachecayenne-1057/
> >> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.3/
> >>
> >> Please evaluate and cast your votes
> >>
> >> --
> >> Best regards,
> >> Nikita Timofeev
> >>
>


-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.0.3 release

2023-02-14 Thread Nikita Timofeev
Hi all,

Here is the 4.0.3 release that just adds JDK 17 support in the Modeler.

Release notes: https://github.com/apache/cayenne/blob/4.0.3/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1057/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.3/

Please evaluate and cast your votes

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.RC2 release

2022-12-04 Thread Nikita Timofeev
With my +1 the result is following:

Andrus Adamchik (PMC): +1
John Huss (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

I will finish this release today.
Thanks everyone!


On Fri, Dec 2, 2022 at 10:02 PM Michael Gentry  wrote:
>
> Checksums: OK
> Signatures: OK
> RAT: OK
> Cayenne Modeler: OK (didn't test extensively, but looked alright under Java
> 19)
> Java 8/17 Source Build: OK (unit tests pass, etc)
>
> +1 for release.
>
> Thanks Nikita!
>
>
> On Thu, Dec 1, 2022 at 5:48 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here's a 4.2.RC2 release.
> >
> > It has couple minor fixes that better be tested a bit, so it's next
> > RC. Hope it could be the last before the GA release.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.RC2/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1050/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.RC2/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.RC2 release

2022-12-02 Thread Nikita Timofeev
Hi Jonh.

If you have some time to dig this a bit it would be really great, as I
have no projects with Ant at all. Could you please also check if this
task is working with 4.2.RC1? I just get a quick look through RC1 to
RC2 commits [1] and I don't really see anything that could affect Ant.
And is there any chance that you are using Cayenne 5.0 build in Ant?

[1] https://github.com/apache/cayenne/compare/4.2.RC1...4.2.RC2

On Thu, Dec 1, 2022 at 10:56 PM John Huss  wrote:
>
> All my release checks passed. Also all the unit tests in my own projects
> pass with this release!
>
> I am having a problem with the Ant Cgen task - it doesn't seem to be
> finding the default cgen templates anymore if they are not overridden in
> the ant configuration:
>
> org.apache.velocity.exception.ResourceNotFoundException: Unable to find
> resource 'templates/v4_1/superclass.vm'
>
> at
> org.apache.velocity.runtime.resource.ResourceManagerImpl.loadResource(ResourceManagerImpl.java:462)
>
> at
> org.apache.velocity.runtime.resource.ResourceManagerImpl.getResource(ResourceManagerImpl.java:343)
>
> at
> org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1554)
>
> at
> org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1534)
>
> at
> org.apache.velocity.app.VelocityEngine.getTemplate(VelocityEngine.java:301)
>
> at
> org.apache.cayenne.gen.ClassGenerationAction.getTemplate(ClassGenerationAction.java:326)
>
> at
> org.apache.cayenne.gen.ClassGenerationAction.execute(ClassGenerationAction.java:294)
>
> at
> org.apache.cayenne.gen.ClassGenerationAction.execute(ClassGenerationAction.java:267)
>
> at
> org.apache.cayenne.tools.CayenneGeneratorTask.execute(CayenneGeneratorTask.java:148)
>
> at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
>
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
> at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>
> at
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
>
> at org.apache.tools.ant.Task.perform(Task.java:350)
>
> at org.apache.tools.ant.Target.execute(Target.java:449)
>
> at org.apache.tools.ant.Target.performTasks(Target.java:470)
>
> at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
>
> at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
>
> at
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
>
> at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
>
> at org.apache.tools.ant.Main.runBuild(Main.java:818)
>
> at org.apache.tools.ant.Main.startAnt(Main.java:223)
>
> at org.apache.tools.ant.launch.Launcher.run(Launcher.java:284)
>
> at org.apache.tools.ant.launch.Launcher.main(Launcher.java:101)
>
>
> Should I look into this error more?
>
>
>
> On Thu, Dec 1, 2022 at 6:42 AM Andrus Adamchik  wrote:
>
> > And since my work depends on some of these bug fixes, I just did a quick
> > evaluation:
> >
> >  + MD5/SHA512 matches (using cayenne-release-tools script)
> >  + Signature checks (using cayenne-release-tools script)
> >  + rat passes
> >  + builds from source
> >  + Modeler runs on OS X
> >  + Cross-platform Modeler runs on OS X
> >  + Upgrade AgRest/LinkMove using the Maven repo.
> >
> > Everything looks good. I am +1.
> >
> > Andrus
> >
> >
> > > On Dec 1, 2022, at 11:47 AM, Nikita Timofeev 
> > wrote:
> > >
> > > Hi all,
> > >
> > > Here's a 4.2.RC2 release.
> > >
> > > It has couple minor fixes that better be tested a bit, so it's next
> > > RC. Hope it could be the last before the GA release.
> > >
> > > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.RC2/RELEASE-NOTES.txt
> > > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1050/
> > > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.RC2/
> > >
> > > Please evaluate and cast your votes.
> > >
> > > --
> > > Best regards,
> > > Nikita Timofeev
> >
> >



-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.RC2 release

2022-12-01 Thread Nikita Timofeev
Hi all,

Here's a 4.2.RC2 release.

It has couple minor fixes that better be tested a bit, so it's next
RC. Hope it could be the last before the GA release.

Release notes: https://github.com/apache/cayenne/blob/4.2.RC2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1050/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.RC2/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: 4.3 -> 5.0

2022-11-11 Thread Nikita Timofeev
+1

We already have some changes worth a major version, like dropping many modules.

On Fri, Nov 11, 2022 at 12:08 PM Andrus Adamchik  wrote:
>
> I suggest we switch master to "5.0" release. Some big changes are anticipated 
> to go in this release, so it warrants a major version increase.
>
> Andrus



-- 
Best regards,
Nikita Timofeev


Switching from Travis to GitHub Actions

2022-11-10 Thread Nikita Timofeev
Hi all,

This is just a heads-up. I'll switch our build automation from Travis
to GitHub Actions soon. This is recomendation from Apache as Travis
announced end of unlimited OpenSource support [1]
But I'm personally prefer Actions for quite some time, so I think it's
a good thing.

I've already checked Cayenne builds [2] and it's much faster than on Travis.

[1] 
https://cwiki.apache.org/confluence/pages/viewpage.action?spaceKey=INFRA=Travis+Migrations
[2] https://github.com/apache/cayenne/actions/

-- 
Best regards,
Nikita Timofeev


Re: Ant and eclipse related things in the pom.xml

2022-07-29 Thread Nikita Timofeev
If you are ready to keep it in a somewhat descent shape that would be
wonderful.

On Fri, Jul 29, 2022 at 1:06 AM John Huss  wrote:
>
> On Thu, Jul 28, 2022 at 6:44 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > I'm cleaning up project structure a bit. And I have a question about
> > things that I don't use and don't really know.
> >
> > 1. Ant and vpp dependency. This one is really the last that prevents
> > us from switching to the Maven Central repo instead of the custom one
> > we are using, I want to change a bit this feature and use reflection
> > to get rid of compile-time dependency. Is there anything I need to
> > worry about?
> >
> > 2. We have some sort of eclipse support in the main pom.xml [1] and I
> > don't know if it is still useful in any way and is there anybody
> > willing to support that. I want to just drop it completely, but wanted
> > to be sure.
> >
>
> At the least, this code block prevents eclipse from displaying errors for
> the project saying "Plugin execution not covered by lifecycle
> configuration". I don't believe it does much more than that. I do use
> eclipse, so I find that helpful. But it seems to only be a display issue. I
> don't know much about maven/eclipse integration so I don't know if there is
> another or better way to do this.
>
> If you are going to keep it I can submit a patch to add the 2 phases that
> are currently missing from that block and will try to keep it up to date in
> that way going forward.
>
>
> >
> > [1] https://github.com/apache/cayenne/blob/master/pom.xml#L512
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



-- 
Best regards,
Nikita Timofeev


Ant and eclipse related things in the pom.xml

2022-07-28 Thread Nikita Timofeev
Hi all,

I'm cleaning up project structure a bit. And I have a question about
things that I don't use and don't really know.

1. Ant and vpp dependency. This one is really the last that prevents
us from switching to the Maven Central repo instead of the custom one
we are using, I want to change a bit this feature and use reflection
to get rid of compile-time dependency. Is there anything I need to
worry about?

2. We have some sort of eclipse support in the main pom.xml [1] and I
don't know if it is still useful in any way and is there anybody
willing to support that. I want to just drop it completely, but wanted
to be sure.

[1] https://github.com/apache/cayenne/blob/master/pom.xml#L512

-- 
Best regards,
Nikita Timofeev


Re: Records and result auto-mapping

2022-07-15 Thread Nikita Timofeev
We already have map(Function) method available in both ColumnSelect
and SQLSelect that allows to map result from Object[] to anything via
provided function.
Here is an example from tests [1]:

List result = SQLSelect.columnQuery("SELECT * FROM
ARTIST_CT",
  Integer.class, String.class, LocalDateTime.class)
  .map(ArtistDataWrapper::new)
  .select(context);

And I experimented with simple PojoMapper that does almost exactly
what you are suggesting. Not sure if it's available though.

[1] 
https://github.com/apache/cayenne/blob/336f0e5297fe6ccdc3b1904ab4f6ee2c6d1ab9dc/cayenne-server/src/test/java/org/apache/cayenne/query/SQLSelectIT.java#L273

On Thu, Jul 14, 2022 at 10:52 PM Andrus Adamchik  wrote:
>
> Java 17 "records" create some interesting possibilities as quick DTOs. 
> Mapping complex SQL is still rather painful in Cayenne. You'd get an Object[] 
> as a result and/or need complex scripting within SQL. I think records and 
> some API tweaks can help:
>
> 1. SQL result mapping.
>
> record MyRecord(String lastName, String firstName) {} // non-persistent, not 
> in DataMap
>
> SQLSelect.query("select * from x")
>
>   // new API analogous to "#result" directive but simpler to use
>   // also we can implement some implicit name conversions ("AB_C" -> "abC")
>   .resultColumn(0, "firstName")
>   .resultColumn("LAST_NAME", "lastName")
>
>   // new API - auto-mapping the result to a POJO (record in this case)
>   .selectAs(MyRecord.class, context);
>
>
> 2. Entity result mapping (e.g. a replacement of column and data row queries).
>
> class MyEntity extends _MyEntity {} // Persistent
> record MyEntityDTO(..) {}  // non-persistent, not in DataMap
>
> List result = ObjectSelect(MyEntity.class)
>   .where(MyEntity.NAME.like("Joe"))
>   .prefetch(MyEntity.ANOTHER.joint())
>
>   // new API - auto-mapping the result to a POJO (record in this case)
>   .selectAs(MyEntityDTO.class, context);
>
> It will be faster than fetching MyEntity (without ObjectContext registration, 
> uniquing, merging), and will be a good replacement of column queries API, 
> requiring no explicit column declarations, and producing a specific type 
> instead of Object[]. Prefetches can be auto-mapped to record hierarchies.
>
> Both examples would work with either records or regular POJOs, it is just 
> that record definitions are so easy to create on the spot, that they can be 
> used in a multitude of very narrow contexts.
>
> Andrus
>


-- 
Best regards,
Nikita Timofeev


Re: Cayenne 5.0 - getting rid of legacy

2022-07-07 Thread Nikita Timofeev
Code itself is small and easy to maintain, as it doesn't do much. We
just don't have a proper test suit for it and I'm sure not all Cayenne
modules are compatible with OSGI, at least we have some non-unque
packages (partially this would be resolved once we drop bunch of
deprecated modules),
If we keep it as is, is not much of a problem, I just don't like those
parts with unknown state.

On Thu, Jul 7, 2022 at 7:02 PM Andrus Adamchik  wrote:
>
>
>
> > On Jul 5, 2022, at 2:00 PM, Nikita Timofeev  
> > wrote:
> >
> > Id like to add OSGi support to that removal list as well.
>
> OSGi support was developed in response to a user request (should be somewhere 
> in the mailing list archives). I have no idea if anyone is still using it, 
> and I am generally unclear on the state of OSGi these days. So how hard is it 
> to keep it around?
>
> Andrus



-- 
Best regards,
Nikita Timofeev


Re: Cayenne 5.0 - getting rid of legacy

2022-07-05 Thread Nikita Timofeev
I've rather hipothetical case in my head where one could use callbacks
in the model to generate some project-specific code for the callback
instead of just empty methods (like audit or validation logic).
Maybe that's not an optimal solution for that (especially as we have
listeners for instance). Just thought I should mention that.

As for transition, we should experiment to see if we could generate
annotations, as manual coding could be a real demotivation for the
upgrade.

On Tue, Jul 5, 2022 at 6:27 PM Andrus Adamchik  wrote:
>
> Cool, let's stay on 11. I suppose it is integration frameworks like Bootique 
> that should take the lead on JDK upgrades. And universal libraries like 
> Cayenne should stay more conservative.
>
>
> I disagree about callbacks though. Callbacks are code (custom logic), and 
> code is better handled in the IDE. Back in the day when we required mapping 
> of "listeners" in the Modeler (listeners are callback counterparts that are 
> not themselves persistent objects), it created extreme tension in the dev 
> workflow. Callbacks are not as bad as listeners, but still bad.
>
> > To me it is easier to see them in the modeler. You don't have to go find 
> > the documentation to learn what is
> > available. Annotations are great, but only if you know them already. Even
> > by-convention is good IMO. Can have an empty onPostLoad() in the superclass
> > and the IDE can help you remember the event/method when you need to
> > override it.
>
> I would agree if we had a superclass that includes *all* callbacks as empty 
> methods with fixed names (which we don't for performance reasons). What we 
> have instead is user-defined (in the Modeler) callback methods with custom 
> names. Two problems with it:
>
> 1. Logical: Most callbacks are meaningless in the context of the mapping. So 
> arguably this is the wrong place for them. (The only case I know of where a 
> callback belongs in the model is setting defaults in PostAdd. Which points to 
> the need to simply add "default" value to ObjAttribute and not use callbacks 
> for this.
> 2. Practical: When I am adding a callback, I am usually in the midst of 
> coding some application function, and don't even have the Modeler open. I 
> have to (1) open the modeler, (2) declare a callback method, (3) regenerate 
> Java classes and (4) override the method in subclass and implement it. Looks 
> wasteful, as I can simply do #4 with annotations.
>
> >> Another idea I got is that having these callback in the model could give 
> >> more synergy with the code generation, especially after we push it's 
> >> usability a bit in the modeler (I've got some prototypes already for this).
>
> Could you elaborate please? In my experience, callback methods that come from 
> the Modeler look "orphaned" and give IDE warnings, as they are not explicitly 
> invoked by any code, and provide no hint as to their specific role in the 
> lifecycle.
>
> >> - dropping callbacks will require substantial effort for the end users
> >> to update their code, so at least we'll need to think how to automate
> >> this process.
>
> I hope it won't be the case. They will just need to revisit the existing 
> methods and annotate them. We can generate a full list during XML upgrade 
> step.
>
> Andrus
>
> > On Jul 5, 2022, at 3:20 PM, Michael Gentry  wrote:
> >
> > I agree with Nikita's JDK 17 comment. I just got people to switch to JDK
> > 11...
> >
> > Also kind of his callbacks comment. To me it is easier to see them in the
> > modeler. You don't have to go find the documentation to learn what is
> > available. Annotations are great, but only if you know them already. Even
> > by-convention is good IMO. Can have an empty onPostLoad() in the superclass
> > and the IDE can help you remember the event/method when you need to
> > override it.
> >
> > Thanks,
> >
> > mrg
> >
> >
> > On Tue, Jul 5, 2022 at 8:01 AM Nikita Timofeev 
> > wrote:
> >
> >> Hi all,
> >>
> >> I'm really looking forward to drop old modules as I don't really sure
> >> if they are still really usable after all major changes to the core we
> >> had for the past years. So this is more than welcomed changed for me.
> >> Id like to add OSGi support to that removal list as well.
> >>
> >> I have some concerns however regarding points 0 and 7.
> >>
> >> - requiring JDK 17 version may limit adoption, as I believe there are
> >> many projects that can't update to Java 17 yet and there are no
> >> immediate benefits that I could see for Cayenne (though I lik

Re: Cayenne 5.0 - getting rid of legacy

2022-07-05 Thread Nikita Timofeev
Hi all,

I'm really looking forward to drop old modules as I don't really sure
if they are still really usable after all major changes to the core we
had for the past years. So this is more than welcomed changed for me.
Id like to add OSGi support to that removal list as well.

I have some concerns however regarding points 0 and 7.

- requiring JDK 17 version may limit adoption, as I believe there are
many projects that can't update to Java 17 yet and there are no
immediate benefits that I could see for Cayenne (though I like the
idea of using fresh Java).
But upgrading to 11 could be good as it will allow to drop some ugly
hacks at least in the Modeler.

- dropping callbacks will require substantial effort for the end users
to update their code, so at least we'll need to think how to automate
this process. Another idea I got is that having these callback in the
model could give more synergy with the code generation, especially
after we push it's usability a bit in the modeler (I've got some
prototypes already for this).

On Sun, Jul 3, 2022 at 2:17 PM Andrus Adamchik  wrote:
>
> 8. Modeler DataNode configuration should be drastically simplified:
>
> * Password encoder should be externalized. If you need a custom password 
> storage mechanism, use your own DataSource, such as Hikari, and write your 
> own code to obtain the password outside Cayenne. E.g. we don't support (nor 
> should we support it) the most common way of modern password resolving - 
> cloud secrets managers.
> * Adapter seclection can probably be moved to the main (and only) tab
> * Get rid of JNDI DataSource (let the users provide it as a custom factory)
> * Only leave the selection of "Provided by Cayenne" and "Custom DataSource"
>
> This is in line with our long-term direction towards CayenneModeler being an 
> OR mapping tool, maximally free of deployment details.
>
> Andrus
>
> > On Jul 1, 2022, at 6:11 PM, Andrus Adamchik  wrote:
> >
> > Hi folks,
> >
> > So with 4.2 being almost GA, it is about time to start discussing the next 
> > major release. I think it should be 5.0 (not 4.3), and we would modernize 
> > things across the board. Let me start with a list of things we can clean 
> > up, and I'll follow up with new feature ideas in a separate thread. So...
> >
> > 0. Switch to Java 17. About time...
> >
> > 1. [Done by Nikita] Remove OpenBaseAdapter
> >
> > 2. [Done by Nikita] Remove cayenne-dbcp2, cayenne-joda
> >
> > 3. Remove ROP (cayenne-client, cayenne-client-jetty, cayenne-protostuff, 
> > cayenne-rop-server, ROP modeler pieces, docs). It is untenable to support 
> > it anymore, and is a constant source of CVE's. Most importantly, from what 
> > I can tell, there are no users left for this particular technology. 
> > Removing it would allow us to collapse ObjectContext inheritance hierarchy 
> > among other things.
> >
> > 4. Remove object clustering transports (cayenne-jgroups, cayenne-jms, 
> > cayenne-xmpp). I don't think anyone uses them. Also these transport 
> > protocols are not particularly popular these days. Whoever needs them, can 
> > easily maintain their own fork.
> >
> > 5. Remove cayenne-web. It provides a very specific recipe for integration 
> > with servlets via ThreadLocals. Kinda old-school. I'd rather see a 
> > SpringBoot example as a separate project somewhere. (And of course we 
> > already have Bootique examples available).
> >
> > 6. Remove deprecated SelectQuery. ObjectSelect is a full replacement. There 
> > are more query improvements that I have in mind, but this one is a no 
> > brainer.
> >
> > 7. Remove entity callbacks from the Modeler and XML. Only annotated 
> > callbacks will be supported.
> >
> > Comments?
> >
> > Andrus
>


-- 
Best regards,
Nikita Timofeev


Switching master branch to 4.3

2022-06-30 Thread Nikita Timofeev
Hi all,

Just a quick heads-up, master is now 4.3 and 4.2 is moved to the
STABLE-4.2 branch.

--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.RC1 release

2022-06-10 Thread Nikita Timofeev
With my +1 the result is following:

Michael Gentry (PMC): +1
Andrus Adamchik (PMC): +1
John Huss (PMC): +1
Nikita Timofeev (PMC): +1

I will finish this release today.
Thanks everyone!

On Mon, Jun 6, 2022 at 6:58 PM John Huss  wrote:
>
> +1
> All my checks passed on the mac with Java 17.
>
> On Mon, Jun 6, 2022 at 10:48 AM Andrus Adamchik  wrote:
>
> > All my checks pass. +1
> >
> > > On Jun 3, 2022, at 2:23 PM, Nikita Timofeev 
> > wrote:
> > >
> > > Hi all,
> > >
> > > Here is a 4.2.RC1 release as promised.
> > >
> > > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.RC1/RELEASE-NOTES.txt
> > > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1049/
> > > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.RC1/
> > >
> > > Please evaluate and cast your votes.
> > >
> > > --
> > > Best regards,
> > > Nikita Timofeev
> >
> >



-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.RC1 release

2022-06-03 Thread Nikita Timofeev
Hi all,

Here is a 4.2.RC1 release as promised.

Release notes: https://github.com/apache/cayenne/blob/4.2.RC1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1049/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.RC1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Release Candidate of the 4.2

2022-05-31 Thread Nikita Timofeev
Hi all,

Looks like it's a good time for the 4.2.RC1 version. No serious
problems were found in B1 and not much happening with 4.2 right now.
So, if there's nothing I'm missing I'll start the release process this week.

--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1.1 release, second try

2021-12-24 Thread Nikita Timofeev
With my +1 the result is following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone and happy holidays!


On Thu, Dec 23, 2021 at 8:34 PM Michael Gentry  wrote:
>
> Outside of the UI artifact issues I mentioned in a different e-mail, which
> I don't believe to be a stopper, I compiled under Java 8, 11, and 14 and
> everything passed.
>
> +1
>
> Thanks!
>
>
> On Tue, Dec 21, 2021 at 3:24 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here is another try of the 4.1.1 release. This time with Gradle
> > upgrade and proper support for the JDK 17 in the Modeler.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1048/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
> >
> > Please evaluate and cast your votes
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


Re[2]: [VOTE] Apache Cayenne 4.1.1 release, second try

2021-12-23 Thread Nikita Timofeev

Yep, I'm using maven for the RAT check, so I'm trying to keep it up. Thursday, 
23 December 2021, 08:33pm +03:00 from Michael Gentry  blackn...@gmail.com :

>Apparently this works much better now: mvn apache-rat:check | grep "Rat
>check"
>
>
>On Thu, Dec 23, 2021 at 11:07 AM Michael Gentry < blackn...@gmail.com> wrote:
>
> Did running rat generate lots of excess reporting? I see *.plist (from
> EOModels) and much showing up in mine. For brevity:
>
> [mrg@odin 11:05:18] ~/Projects/Cayenne-Release/cayenne-4.1.1-src >
> ./rat.sh ~/Projects/apache-rat-0.14-20200227.222922-86.jar | grep -v "^  AL
> " | grep -v "^  N  " | grep -v "^  B  "| fgrep -v /parser/ | wc
> Deleting 'target' dirs...
> Deleting 'build' dirs...
> Running rat, this may take a while...
> Will skip given exclusion '*.plist' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.plist
> ^
> Will skip given exclusion '*.fspec' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.fspec
> ^
> Will skip given exclusion '*.map.xml' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.map.xml
> ^
> Will skip given exclusion '*.graph.xml' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.graph.xml
> ^
> Will skip given exclusion '*.driver.xml' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.driver.xml
> ^
> Will skip given exclusion '*.html' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.html
> ^
> Will skip given exclusion '*.css' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.css
> ^
> Will skip given exclusion '*.jceks' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.jceks
> ^
> Will skip given exclusion '*.iml' due to
> java.util.regex.PatternSyntaxException: Dangling meta character '*' near
> index 0
> *.iml
> ^
> Ignored 0 lines in your exclusion files as comments or empty lines.
> 6145   15745  321365
>
> It used to not generate anywhere near that much output for me, including
> on the recent 4.2 build.
>
>
> On Wed, Dec 22, 2021 at 2:46 AM Andrus Adamchik < aadamc...@gmail.com>
> wrote:
>
>> All checks pass. +1
>>
>>
>>> On Dec 21, 2021, at 10:23 AM, Nikita Timofeev <
>> ntimof...@objectstyle.com> wrote:
>>>
>>> Hi all,
>>>
>>> Here is another try of the 4.1.1 release. This time with Gradle
>>> upgrade and proper support for the JDK 17 in the Modeler.
>>>
>>> Release notes:
>> https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
>>> Maven repo:
>> https://repository.apache.org/content/repositories/orgapachecayenne-1048/
>>> Assemblies:  https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
>>>
>>> Please evaluate and cast your votes
>>>
>>> --
>>> Best regards,
>>> Nikita Timofeev
>>
>>


Re[2]: [VOTE] Apache Cayenne 4.1.1 release, second try

2021-12-23 Thread Nikita Timofeev

Hi, 
That's interesting, thanks for research. Thought it depends on runtime not on 
compile version. Will look into this too.
FYI I'm using Java 11 on Mac and Windows for all recents releases, mainly 
because it produces nicer JavaDoc. Thursday, 23 December 2021, 08:24pm +03:00 
from Michael Gentry  blackn...@gmail.com :

>In case it wasn't known, different Javas create different CM UI artifacts:
>
>https://imgur.com/a/cea5Q7t
>
>For Java 8, there are Dark Mode issues. When I turn Dark Mode off, it looks
>almost like my Java 11/14 builds (with the hard-to-read Entity tab), etc.
>
>I'm not sure what the distribution DMG was built with, but when I double
>click it (about window says I'm running under Java 17), then the Entity tab
>is normal, as well as a few other refinements.
>
>
>On Tue, Dec 21, 2021 at 3:24 AM Nikita Timofeev < ntimof...@objectstyle.com>
>wrote:
>
> Hi all,
>
> Here is another try of the 4.1.1 release. This time with Gradle
> upgrade and proper support for the JDK 17 in the Modeler.
>
> Release notes:
> https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
> Maven repo:
> https://repository.apache.org/content/repositories/orgapachecayenne-1048/
> Assemblies:  https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
>
> Please evaluate and cast your votes
>
> --
> Best regards,
> Nikita Timofeev
>


[VOTE] Apache Cayenne 4.1.1 release, second try

2021-12-21 Thread Nikita Timofeev
Hi all,

Here is another try of the 4.1.1 release. This time with Gradle
upgrade and proper support for the JDK 17 in the Modeler.

Release notes: https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1048/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/

Please evaluate and cast your votes

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1.1 release

2021-12-16 Thread Nikita Timofeev
I'm -1 myself. There's a wrong version of the japp-maven-plugin, so
Windows modeler won't work at all if no JAVA_HOME is set.

So let's fix that and try to upgrade the Gradle plugin as well.
There should be no technical issues, this just requires some time to
backport everything carefully, there are several commits and not many
tests :(

Just as a thought, there should be no problem in using the 4.2 plugin
with the 4.1 runtime.

On Thu, Dec 16, 2021 at 6:26 PM Andrus Adamchik  wrote:
>
> I don't fully understand the LOE or any technical issues arising from Gradle 
> 7 for 4.1, but as a matter of policy I think it is worth supporting 4.1 on 
> Java 17. We set specific thresholds for backwards compatibility, but forward 
> compatibility IMO should be indefinite for any supported release (i.e. 
> currently 4.1 and newer).
>
> I would've still voted +1 for the release (assuming we'd handle Gradle in 
> 4.1.2), but we also have that issue with Modeler (also Java 17 related) I 
> mentioned in another message. So I am -1 for now, unless someone proves me 
> wrong on the Windows Modeler issue :)
>
> Andrus
>
>
> > On Dec 16, 2021, at 1:31 PM, Nikita Timofeev  
> > wrote:
> >
> >
> > There's no general support for the JDK 17 in the 4.1 branch, only Modeler 
> > is updated. Full support for the 17 is in the 4.2 branch.
> > Not sure is it worth the effort to bring everything to the 4.1.
>
>
> > Thursday, 16 December 2021, 02:07pm +03:00 from Aristedes Maniatis  
> > a...@ish.com.au.invalid :
> >
> >> Its just that gradle 7 is needed to work with Java 17. So if an
> >> important set of fixes for 4.1.1 is Java 17 support, that might need to
> >> come along as well.
> >>
> >> Of course, that isn't essential, depending on how quickly we get to the
> >> final 4.2 release.
> >>
> >>
> >> Ari
> >>
> >>
> >> On 16/12/21 7:11pm, Nikita Timofeev wrote:
> >> Hi Ari,
> >>
> >> Gradle 7 fix is in the 4.2 version.
> >>
> >> On Thu, Dec 16, 2021 at 2:53 AM Aristedes Maniatis
> >> < a...@ish.com.au.invalid> wrote:
> >>> Did the fixes to allow cgen to work under gradle 7 come in with this
> >>> release?
> >>>
> >>>
> >>> Ari
> >>>
> >>>
> >>> On 16/12/21 2:22am, Nikita Timofeev wrote:
> >>>> Hi all,
> >>>>
> >>>> Here is the 4.1.1 release. There are some useful fixes, including JDK
> >>>> 17 support in the Modeler.
> >>>>
> >>>> Release notes:  
> >>>> https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
> >>>> Maven repo:  
> >>>> https://repository.apache.org/content/repositories/orgapachecayenne-1047/
> >>>> Assemblies:  https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
> >>>>
> >>>> Please evaluate and cast your votes
> >>>>
> >>>> --
> >>>> Best regards,
> >>>> Nikita Timofeev
> >>
> >>
>


-- 
Best regards,
Nikita Timofeev


Re[2]: [VOTE] Apache Cayenne 4.1.1 release

2021-12-16 Thread Nikita Timofeev

There's no general support for the JDK 17 in the 4.1 branch, only Modeler is 
updated. Full support for the 17 is in the 4.2 branch.
Not sure is it worth the effort to bring everything to the 4.1. Thursday, 16 
December 2021, 02:07pm +03:00 from Aristedes Maniatis  a...@ish.com.au.invalid :

>Its just that gradle 7 is needed to work with Java 17. So if an 
>important set of fixes for 4.1.1 is Java 17 support, that might need to 
>come along as well.
>
>Of course, that isn't essential, depending on how quickly we get to the 
>final 4.2 release.
>
>
>Ari
>
>
>On 16/12/21 7:11pm, Nikita Timofeev wrote:
> Hi Ari,
>
> Gradle 7 fix is in the 4.2 version.
>
> On Thu, Dec 16, 2021 at 2:53 AM Aristedes Maniatis
>< a...@ish.com.au.invalid> wrote:
>> Did the fixes to allow cgen to work under gradle 7 come in with this
>> release?
>>
>>
>> Ari
>>
>>
>> On 16/12/21 2:22am, Nikita Timofeev wrote:
>>> Hi all,
>>>
>>> Here is the 4.1.1 release. There are some useful fixes, including JDK
>>> 17 support in the Modeler.
>>>
>>> Release notes:  
>>> https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
>>> Maven repo:  
>>> https://repository.apache.org/content/repositories/orgapachecayenne-1047/
>>> Assemblies:  https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
>>>
>>> Please evaluate and cast your votes
>>>
>>> --
>>> Best regards,
>>> Nikita Timofeev
>
>


Re: [VOTE] Apache Cayenne 4.1.1 release

2021-12-16 Thread Nikita Timofeev
Hi Ari,

Gradle 7 fix is in the 4.2 version.

On Thu, Dec 16, 2021 at 2:53 AM Aristedes Maniatis
 wrote:
>
> Did the fixes to allow cgen to work under gradle 7 come in with this
> release?
>
>
> Ari
>
>
> On 16/12/21 2:22am, Nikita Timofeev wrote:
> > Hi all,
> >
> > Here is the 4.1.1 release. There are some useful fixes, including JDK
> > 17 support in the Modeler.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1047/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/
> >
> > Please evaluate and cast your votes
> >
> > --
> > Best regards,
> > Nikita Timofeev



-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.1.1 release

2021-12-15 Thread Nikita Timofeev
Hi all,

Here is the 4.1.1 release. There are some useful fixes, including JDK
17 support in the Modeler.

Release notes: https://github.com/apache/cayenne/blob/4.1.1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1047/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.1/

Please evaluate and cast your votes

--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.B1 release, second try

2021-12-06 Thread Nikita Timofeev
With my +1 the result is following:

Michael Gentry (PMC): +1
John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!

On Sun, Dec 5, 2021 at 11:53 AM Andrus Adamchik  wrote:
>
> My checklist passes. Tested the Modeler on Mac[*] and Windows - it works 
> under both Java 11 and 17.
>
> +1 on the release
>
> Andrus
>
> [*] On MacOS under Java 17 the left side of the menu bar is darker than the 
> right side, but everything functions properly.
>
>
> > On Dec 1, 2021, at 6:19 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Here's a new build of 4.2.B1.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1046/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.B1 release, second try

2021-12-02 Thread Nikita Timofeev
Hi Michael,

This is most likely macOS security indeed. And the permission should
be given to JDK, so dialog maybe was shown some time ago.
I had a similar problem, I dismissed this permission request and later
was unable to open anything from the Downloads folder :)


On Thu, Dec 2, 2021 at 4:58 PM Michael Gentry  wrote:
>
> Ran CM from the DMG and attempted to open a model:
>
> CayenneModeler Info
> Version: 4.2.B1
> Build Date: Dec 01 2021 12:53:54
> Exception:
> =
> java.io.FileNotFoundException:
> /Users/mrg/Downloads/cayennetest/src/main/resources/cayenne-test.xml
> (Operation not permitted)
>
> [mrg@odin 08:50:21] ~/Projects/Cayenne-Release > l
> /Users/mrg/Downloads/cayennetest/src/main/resources/cayenne-test.xml
> -rw-r--r--@ 1 mrg  staff   778B Aug 10 18:54
> /Users/mrg/Downloads/cayennetest/src/main/resources/cayenne-test.xml
>
> I suspect this is due to macOS security protecting ~/Downloads, but there
> was no notification about giving access to the folder from the system. Was
> able to open a different model under ~/Projects without issue. Might need a
> release note/etc for that?
>
>
> On Wed, Dec 1, 2021 at 11:19 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here's a new build of 4.2.B1.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1046/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.B1 release, second try

2021-12-02 Thread Nikita Timofeev
Hi John,

Yeah, that's expected. You need manually copy
'cayenne-gradle-plugin/gradle' directory from the git checkout to the
source release.
Can't bundle it with the source code release due to the Apache policies.

On Wed, Dec 1, 2021 at 9:37 PM John Huss  wrote:
>
> Note, I'm using java 17.0.1 on an M1 mac.
>
> On Wed, Dec 1, 2021 at 12:34 PM John Huss  wrote:
>
> > Is there a dependency I need to install first for the gradle plugin to
> > build? I'm getting this error when building:
> >
> > [*INFO*] *--- *exec-maven-plugin:1.6.0:exec *(gradle)* @
> > cayenne-gradle-plugin* ---*
> >
> > Error: Could not find or load main class
> > org.gradle.wrapper.GradleWrapperMain
> >
> > Caused by: java.lang.ClassNotFoundException:
> > org.gradle.wrapper.GradleWrapperMain
> >
> > On Wed, Dec 1, 2021 at 10:19 AM Nikita Timofeev 
> > wrote:
> >
> >> Hi all,
> >>
> >> Here's a new build of 4.2.B1.
> >>
> >> Release notes:
> >> https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
> >> Maven repo:
> >> https://repository.apache.org/content/repositories/orgapachecayenne-1046/
> >> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/
> >>
> >> Please evaluate and cast your votes.
> >>
> >> --
> >> Best regards,
> >> Nikita Timofeev
> >>
> >



-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.B1 release, second try

2021-12-01 Thread Nikita Timofeev
Hi all,

Here's a new build of 4.2.B1.

Release notes: https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1046/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.B1 release

2021-11-30 Thread Nikita Timofeev
Ok, to keep everyone informed.
There's a problem with a plugin we use to create a native executable,
it couldn't use Java on the System path anymore, only JDK from
JAVA_HOME.
So I think we redo this release to fix this issue.
The plugin is already fixed, so we are waiting for it to reach central.

This vote I think could be closed with that. Once I prepare a new
build I'll open the next one.

On Mon, Nov 29, 2021 at 2:36 PM Andrus Adamchik  wrote:
>
> Thanks, this solved it.
>
> Having one more problem - starting Modeler from the Windows assembly. I 
> tested a few cases:
>
> 1. Old Windows 7 VM
>
> 1.1 Java 1.8 - works
> 1.2 Java 17 (Temurin) - shows an error dialog: "No suitable Java version 
> found on your system! The program requires Java 1.8 or later"
>
> 2. Windows 10 VM
>
> 1.1 Java 11 (Temurin) - shows an error dialog: "No suitable Java version 
> found on your system! The program requires Java 1.8 or later"
> CayenneModeler 4.1 starts on this VM with no issues.
>
>
> Andrus
>
>
> > On Nov 29, 2021, at 12:35 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi Andrus,
> >
> > You need manually copy the "gradle" directory with all content from
> > git checkout to the released sources in the "cayenne-gradle-plugin"
> > module.
> > This folder is just dropped completely in the src release to comply
> > with the Apache guidelines.
> > It's mentioned here [1] in the "Releasing Downloadable Assemblies" section.
> >
> > [1] https://cayenne.apache.org/dev/release-guide.html
> >
> > On Mon, Nov 29, 2021 at 1:07 PM Andrus Adamchik  wrote:
> >>
> >> Trying to build from source with Java 8. Getting an error in 
> >> "cayenne-gradle-plugin". I tried with both Gradle 7.3 available on the 
> >> PATH, and without it. Same error. Any ideas?
> >>
> >> Andrus
> >>
> >>
> >> [INFO] --< org.apache.cayenne.plugins:cayenne-gradle-plugin 
> >> >--
> >> [INFO] Building cayenne-gradle-plugin: Cayenne Gradle Plugin 4.2.B1 
> >> [22/59]
> >> [INFO] [ pom 
> >> ]-
> >> [INFO]
> >> [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ 
> >> cayenne-gradle-plugin ---
> >> [INFO]
> >> [INFO] --- maven-dependency-plugin:3.0.1:build-classpath (build-classpath) 
> >> @ cayenne-gradle-plugin ---
> >> [INFO] Skipped writing classpath file 
> >> '/Users/andrus/Desktop/4.2.B1/cayenne-4.2.B1-src/cayenne-gradle-plugin/build/classpath.txt'.
> >>   No changes found.
> >> [INFO]
> >> [INFO] --- exec-maven-plugin:1.6.0:exec (gradle) @ cayenne-gradle-plugin 
> >> ---
> >> Error: Could not find or load main class 
> >> org.gradle.wrapper.GradleWrapperMain
> >> [ERROR] Command execution failed.
> >> org.apache.commons.exec.ExecuteException: Process exited with an error: 1 
> >> (Exit value: 1)
> >>at org.apache.commons.exec.DefaultExecutor.executeInternal 
> >> (DefaultExecutor.java:404)
> >>at org.apache.commons.exec.DefaultExecutor.execute 
> >> (DefaultExecutor.java:166)
> >>at org.codehaus.mojo.exec.ExecMojo.executeCommandLine 
> >> (ExecMojo.java:804)
> >>at org.codehaus.mojo.exec.ExecMojo.executeCommandLine 
> >> (ExecMojo.java:751)
> >>at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:313)
> >>at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> >> (DefaultBuildPluginManager.java:137)
> >>at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> >> (MojoExecutor.java:210)
> >>at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> >> (MojoExecutor.java:156)
> >>at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> >> (MojoExecutor.java:148)
> >>
> >>
> >> [INFO] cayenne-gradle-plugin: Cayenne Gradle Plugin ... FAILURE [  
> >> 1.092 s]
> >>
> >>
> >>
> >>
> >>> On Nov 25, 2021, at 5:32 PM, Nikita Timofeev  
> >>> wrote:
> >>>
> >>> Hi all,
> >>>
> >>> Here is a 4.2.B1 release.
> >>>
> >>> Release notes: 
> >>> https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
> >>> Maven repo: 
> >>> https://repository.apache.org/content/repositories/orgapachecayenne-1045/
> >>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/
> >>>
> >>> Please evaluate and cast your votes.
> >>>
> >>> --
> >>> Best regards,
> >>> Nikita Timofeev
> >>
> >
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.B1 release

2021-11-29 Thread Nikita Timofeev
Hi Andrus,

You need manually copy the "gradle" directory with all content from
git checkout to the released sources in the "cayenne-gradle-plugin"
module.
This folder is just dropped completely in the src release to comply
with the Apache guidelines.
It's mentioned here [1] in the "Releasing Downloadable Assemblies" section.

[1] https://cayenne.apache.org/dev/release-guide.html

On Mon, Nov 29, 2021 at 1:07 PM Andrus Adamchik  wrote:
>
> Trying to build from source with Java 8. Getting an error in 
> "cayenne-gradle-plugin". I tried with both Gradle 7.3 available on the PATH, 
> and without it. Same error. Any ideas?
>
> Andrus
>
>
> [INFO] --< org.apache.cayenne.plugins:cayenne-gradle-plugin 
> >--
> [INFO] Building cayenne-gradle-plugin: Cayenne Gradle Plugin 4.2.B1 
> [22/59]
> [INFO] [ pom 
> ]-
> [INFO]
> [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ 
> cayenne-gradle-plugin ---
> [INFO]
> [INFO] --- maven-dependency-plugin:3.0.1:build-classpath (build-classpath) @ 
> cayenne-gradle-plugin ---
> [INFO] Skipped writing classpath file 
> '/Users/andrus/Desktop/4.2.B1/cayenne-4.2.B1-src/cayenne-gradle-plugin/build/classpath.txt'.
>   No changes found.
> [INFO]
> [INFO] --- exec-maven-plugin:1.6.0:exec (gradle) @ cayenne-gradle-plugin ---
> Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain
> [ERROR] Command execution failed.
> org.apache.commons.exec.ExecuteException: Process exited with an error: 1 
> (Exit value: 1)
> at org.apache.commons.exec.DefaultExecutor.executeInternal 
> (DefaultExecutor.java:404)
> at org.apache.commons.exec.DefaultExecutor.execute 
> (DefaultExecutor.java:166)
> at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:804)
> at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:751)
> at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:313)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:137)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:210)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:156)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:148)
>
>
> [INFO] cayenne-gradle-plugin: Cayenne Gradle Plugin ... FAILURE [  1.092 
> s]
>
>
>
>
> > On Nov 25, 2021, at 5:32 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Here is a 4.2.B1 release.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1045/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.B1 release

2021-11-25 Thread Nikita Timofeev
Hi all,

Here is a 4.2.B1 release.

Release notes: https://github.com/apache/cayenne/blob/4.2.B1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1045/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.B1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Cayenne 4.2.B1 release heads up

2021-11-23 Thread Nikita Timofeev
Hi all,

I think Cayenne 4.2 beta is pretty ready to be released. So I want to
give some heads up and possibly hear back if I miss something
critical. There's been added support for the JDK 17, and everything
should build and run smoothly with a minor hiccup in the protostuff
module (there are test failures due to a stricken modules boundaries
check).
So if everything goes as planned I want to start the release process this week.

-- 
Best regards,
Nikita Timofeev


Re[2]: CI

2021-10-10 Thread Nikita Timofeev

Hi all,
I've read about limitations on the Apache side. It turns out not so great in 
that case. There's only approved actions available and, more important, there's 
limited number of runners available for *all* Apache projects. Ifra warns that 
it could be really slow [1]
[1] 
https://cwiki.apache.org/confluence/plugins/servlet/mobile?contentId=173085013#content/view/173085013
 Sunday, 10 October 2021, 10:10am +03:00 from Andrus Adamchik  
aadamc...@gmail.com :

> 
>[1]  https://github.com/ishgroup/oncourse/actions
>
>
>Nice! FWIW Bootique is using Github Actions for its dozens of modules, 
>including cross-DB tests. A huge improvement over Travis.
>
> However a bit more limited with regard to database choices.
>We can run tests against any database that has a Docker image. SQLServer does. 
>(We should also switch to Testcontainers for managing dockerized tested 
>services, but that's a separate discussion and does not affect a CI/CD choice).
>
>Aurora is cloud-based of course, so we'll need to program provisioning the 
>test DB ourselves, but as long as a build agent has internet access, this 
>should be doable.
>
> Are we limited at all within the Apache project with how we can configure 
> Actions?
>
>Haven't tried it, good question. I hope not and it is all straight GitHub.
>
>Andrus
>
>
> On Oct 10, 2021, at 9:59 AM, Aristedes Maniatis < a...@ish.com.au.INVALID> 
> wrote:
>
> On 10/10/21 5:26pm, Andrus Adamchik wrote:
>> BTW, we should probably move to Github Actions for CI/CD. Much faster than 
>> Travis.
>
> I've got a bit of experience [1] with github actions in some of my other open 
> source projects, and mostly they are very good. Ties in nicely with pull 
> requests as well. However a bit more limited with regard to database choices. 
> Ideally we'd want databases like SQL Server, AWS Aurora, etc in our test 
> suite.
>
> Are we limited at all within the Apache project with how we can configure 
> Actions?
>
> Ari
>
>
> [1]  https://github.com/ishgroup/oncourse/actions
>


Re: Build failure with OpenJDK 11 (amazon corretto)

2021-09-23 Thread Nikita Timofeev
accessed from
> outside package*
>
> [*ERROR*] *import
> org.apache.cayenne.access.translator.select.QualifierTranslator;*
>
> [*ERROR*] *  ^*
>
> [*ERROR*] 
> */Users/john/cayenne/docs/doc/target/sources/org/apache/cayenne/dba/mysql/MySQLQualifierTranslator.java:30:
> error: QualifierTranslator is not public in
> org.apache.cayenne.access.translator.select; cannot be accessed from
> outside package*
>
> [*ERROR*] *class MySQLQualifierTranslator extends QualifierTranslator {*
>
> [*ERROR*] *   ^*
>
> [*ERROR*] 
> */Users/john/cayenne/docs/doc/target/sources/org/apache/cayenne/dba/firebird/FirebirdQualifierTranslator.java:22:
> error: QualifierTranslator is not public in
> org.apache.cayenne.access.translator.select; cannot be accessed from
> outside package*
>
> [*ERROR*] *import
> org.apache.cayenne.access.translator.select.QualifierTranslator;*
>
> [*ERROR*] *  ^*
>
> [*ERROR*] 
> */Users/john/cayenne/docs/doc/target/sources/org/apache/cayenne/dba/firebird/FirebirdQualifierTranslator.java:31:
> error: QualifierTranslator is not public in
> org.apache.cayenne.access.translator.select; cannot be accessed from
> outside package*
>
> [*ERROR*] *public class FirebirdQualifierTranslator extends
> QualifierTranslator {*
>
> [*ERROR*] * ^*
>
> [*ERROR*]
>
> [*ERROR*] *Command line was:
> /Library/Java/JavaVirtualMachines/amazon-corretto-11.jdk/Contents/Home/bin/javadoc
> @options @argfile*
>
> [*ERROR*]
>
> [*ERROR*] *Refer to the generated Javadoc files in
> '/Users/john/cayenne/docs/doc/target/site/apidocs/doc/api' dir.*



-- 
Best regards,
Nikita Timofeev


Cayenne website uses .asf.yaml now

2021-07-29 Thread Nikita Timofeev
Hi all,

Just a quick heads up.
Cayenne website is now uses .asf.yaml [1] for publishing, see official
docs[2] for details.

[1] 
https://github.com/apache/cayenne-website/blob/master/src/main/site/static/.asf.yaml
[2] http://s.apache.org/asfyamlpublishing

-- 
Best regards,
Nikita Timofeev


Re: 4.2.M3 Modeler Error when generating classes

2021-03-30 Thread Nikita Timofeev
Hi Markus,

Thanks for the report!
I see this problem too.
As a workaround, it is possible to run code generation from the
DataMap tab or from the Maven/Gradle plugin.

And here is an issue to track [1]

[1] https://issues.apache.org/jira/browse/CAY-2707

On Tue, Mar 30, 2021 at 10:45 AM Markus Reich  wrote:
>
> Hi,
>
> I have opened a project which was created with 4.1 when I try to generate
> the classes within the modeler I get the following error:
>
> [ERROR] Error generating classes
> org.apache.cayenne.di.DIRuntimeException: DI container has no binding for
> key 
> at
> org.apache.cayenne.di.spi.DefaultInjector.getProvider(DefaultInjector.java:158)
> at
> org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:139)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.value(FieldInjectingProvider.java:103)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.injectMember(FieldInjectingProvider.java:68)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.injectMembers(FieldInjectingProvider.java:59)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.get(FieldInjectingProvider.java:44)
> at
> org.apache.cayenne.di.spi.DefaultScopeProvider.get(DefaultScopeProvider.java:50)
> at
> org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:139)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.value(FieldInjectingProvider.java:103)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.injectMember(FieldInjectingProvider.java:68)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.injectMembers(FieldInjectingProvider.java:59)
> at
> org.apache.cayenne.di.spi.FieldInjectingProvider.get(FieldInjectingProvider.java:44)
> at
> org.apache.cayenne.di.spi.DefaultScopeProvider.get(DefaultScopeProvider.java:50)
> at
> org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:134)
> at
> org.apache.cayenne.modeler.editor.cgen.domain.CgenTabController.runGenerators(CgenTabController.java:71)
> at
> org.apache.cayenne.modeler.editor.GeneratorsTab.lambda$new$0(GeneratorsTab.java:51)
> at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
> at
> javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
> at
> javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
> at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
> at
> javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
> at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
> at java.awt.Component.processMouseEvent(Component.java:6539)
> at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
> at java.awt.Component.processEvent(Component.java:6304)
> at java.awt.Container.processEvent(Container.java:2239)
> at java.awt.Component.dispatchEventImpl(Component.java:4889)
> at java.awt.Container.dispatchEventImpl(Container.java:2297)
> at java.awt.Component.dispatchEvent(Component.java:4711)
> at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
> at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
> at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
> at java.awt.Container.dispatchEventImpl(Container.java:2283)
> at java.awt.Window.dispatchEventImpl(Window.java:2746)
> at java.awt.Component.dispatchEvent(Component.java:4711)
> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
> at java.awt.EventQueue.access$500(EventQueue.java:97)
> at java.awt.EventQueue$3.run(EventQueue.java:709)
> at java.awt.EventQueue$3.run(EventQueue.java:703)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
> at java.awt.EventQueue$4.run(EventQueue.java:733)
> at java.awt.EventQueue$4.run(EventQueue.java:731)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
> at
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
> at
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
> at
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
>
> regards
> Markus



-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.M3 release

2021-03-19 Thread Nikita Timofeev
With my +1 the result is following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!

P.S. Here are issues that Michael have found:
https://issues.apache.org/jira/browse/CAY-2702 (callbacks menu, already fixed)
https://issues.apache.org/jira/browse/CAY-2703 (tabs)





On Thu, Mar 18, 2021 at 3:07 PM Michael Gentry  wrote:
>
> * Checksums valid.
> * Signatures valid.
> * RAT valid.
> * DMG mounts.
> * Cayenne Modeller (only tested macOS version) runs [1,2].
> * Release builds [3].
>
> +1 overall. I'd add a release/announcement note for the UI glitches.
>
> Thanks!
>
> mrg
>
>
> 1: There are a few UI glitches (https://imgur.com/a/ET6yWHb), at least on
> macOS.
> 2: The Callbacks UI glitch appears to be a too-small column. You can resize
> it and make it look better.
> 3: Java 8 and 11 build, Java 14 builds code-wise, but JavaDoc fails.
>
>
> On Sat, Mar 13, 2021 at 10:41 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here is hopefully the last milestone release of the 4.2.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.M3/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1044/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M3/
> >
> > Please evaluate it and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.M3 release

2021-03-13 Thread Nikita Timofeev
Hi all,

Here is hopefully the last milestone release of the 4.2.

Release notes: https://github.com/apache/cayenne/blob/4.2.M3/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1044/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M3/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.M2 release

2020-10-12 Thread Nikita Timofeev
Here is my
+1

And here is the results:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!

On Thu, Oct 8, 2020 at 6:13 PM Andrus Adamchik  wrote:
>
> All good. +1
>
>
> > On Oct 6, 2020, at 9:33 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Here is another milestone release of the 4.2.
> > There are not as many changes in this build as in the first milestone,
> > but I think it's time to move 4.2 further.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.2.M2/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1042/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M2/
> >
> > Please evaluate it and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.M2 release

2020-10-06 Thread Nikita Timofeev
Hi all,

Here is another milestone release of the 4.2.
There are not as many changes in this build as in the first milestone,
but I think it's time to move 4.2 further.

Release notes: https://github.com/apache/cayenne/blob/4.2.M2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1042/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M2/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: JavaDoc Issue

2020-08-03 Thread Nikita Timofeev
Just for the record, the required option is "--no-module-directories".
And moreover, looks like this is fixed in JDK12 [1]

[1] https://bugs.openjdk.java.net/browse/JDK-8215291

On Sun, Aug 2, 2020 at 8:46 PM Michael Gentry  wrote:
>
> Hi Nikita!
>
> I agree, it is probably a magic configuration property somewhere.  I've
> been pretty busy lately and didn't know if I'd have time to look for it, so
> I figured I'd just let the list know for now.
>
> Thanks!
>
> mrg
>
>
> On Fri, Jul 31, 2020 at 2:47 PM Nikita Timofeev 
> wrote:
>
> > Hi Michael!
> >
> > Thanks for noticing this.
> > Will try to fix, looks like we should set some magic property.
> >
> >
> > On Thu, Jul 23, 2020 at 5:17 PM Michael Gentry 
> > wrote:
> > >
> > > If you use the search feature (upper-right corner of the page) in the
> > > JavaDocs, the links are broken.
> > >
> > > URL: https://cayenne.apache.org/docs/4.1/api/
> > > Search: BaseDataObject (click on search result)
> > > 404:
> > >
> > https://cayenne.apache.org/docs/4.1/api/undefined/org/apache/cayenne/BaseDataObject.html
> > >
> > > URL: https://cayenne.apache.org/docs/4.2/api/
> > > <https://cayenne.apache.org/docs/4.1/api/>
> > > Search: BaseDataObject (click on search result)
> > > 404:
> > >
> > https://cayenne.apache.org/docs/4.2/api/undefined/org/apache/cayenne/BaseDataObject.html
> >
> >
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



-- 
Best regards,
Nikita Timofeev


Re: JavaDoc Issue

2020-07-31 Thread Nikita Timofeev
Hi Michael!

Thanks for noticing this.
Will try to fix, looks like we should set some magic property.


On Thu, Jul 23, 2020 at 5:17 PM Michael Gentry  wrote:
>
> If you use the search feature (upper-right corner of the page) in the
> JavaDocs, the links are broken.
>
> URL: https://cayenne.apache.org/docs/4.1/api/
> Search: BaseDataObject (click on search result)
> 404:
> https://cayenne.apache.org/docs/4.1/api/undefined/org/apache/cayenne/BaseDataObject.html
>
> URL: https://cayenne.apache.org/docs/4.2/api/
> <https://cayenne.apache.org/docs/4.1/api/>
> Search: BaseDataObject (click on search result)
> 404:
> https://cayenne.apache.org/docs/4.2/api/undefined/org/apache/cayenne/BaseDataObject.html



--
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1 release

2020-07-21 Thread Nikita Timofeev
Here is my
+1

And here is the results:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Aristedes Maniatis (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!

On Mon, Jul 20, 2020 at 11:34 AM Aristedes Maniatis
 wrote:
>
> +1
>
> My review was on OSX. We have that annoying security alert for Modeler
> which I believe is almost unsolvable for open source projects. I've a
> bit of experience with Apple's codesigning and it is a nightmare. Even
> when you get it working, it breaks until you log into their portal every
> month or two and accept new terms and conditions.
>
> Other that that nonsense everything is looking good. Actually not good,
> brilliant! The documentation is looking better every time I take a look
> at it and the upgrade notes are great.
>
>
> For a laugh I added Cayenne to OSX homebrew. I added 4.0.2, but will
> upgrade that to 4.1 once this is ready.
>
>
> Nikita and everyone else here... very well done indeed. I've had 4.1
> milestones in a commercial project for what feels like years now.
>
> Ari
>
>
>
> On 15/7/20 1:57am, Nikita Timofeev wrote:
> > Hi all,
> >
> > The GA release of Cayenne 4.1 is almost here!
> >
> > Release notes: https://github.com/apache/cayenne/blob/4.1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1040/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1/
> >
> > Please evaluate and cast your votes.
> >



-- 
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.1 release

2020-07-14 Thread Nikita Timofeev
Hi all,

The GA release of Cayenne 4.1 is almost here!

Release notes: https://github.com/apache/cayenne/blob/4.1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1040/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: That warning when combining a joint prefetch with a fetch limit

2020-05-18 Thread Nikita Timofeev
Hi all,

Joint prefetching still gives incorrect result in 4.2. This message
just lost in the process.
I've returned it to the new SelectTranslator. Moreover it's report
toMany relationships only.

On Sat, May 16, 2020 at 1:40 PM Hugi Thordarson  wrote:
>
> Hi Andrus!
>
> The message is "Query uses both limit and joint prefetch, this most probably 
> will lead to incorrect result. Either use disjointById prefetch or get full 
> result set.", logged in the aptly named 
> DefaultselectTranslator.checkLimitAndJointPrefetch().
>
> But. I see now that it's only in 4.1. Seems it was removed with the new 
> SelectTranslator implementation in 4.2 (with Nikita's commit 
> f6b2dac9667343928324cd7ce364ee6e5df17275).
>
> I can't see anything analogous in 4.2… Would be interesting to know if joint 
> prefetching with a fetch limit just works now, or if the potential problem is 
> no longer logged.
>
> - hugi
>
>
> > On 16 May 2020, at 10:12, Andrus Adamchik  wrote:
> >
> > Hi Hugi,
> >
> > I think you are right in general. But I can't seem to find the warning you 
> > are referring to. What is the exact text, so I can search for it in the 
> > code?
> >
> > Andrus
> >
> >> On May 16, 2020, at 11:23 AM, Hugi Thordarson  wrote:
> >>
> >> Hi all,
> >> just wondering; the warning that's logged if a query uses a joint prefetch 
> >> in conjunction with a limit—shouldn't that only apply to to-many 
> >> relationships?
> >>
> >> Cheers,
> >> - hugi



-- 
Best regards,
Nikita Timofeev


Re: 4.2 - DISTINCT in column query

2020-04-23 Thread Nikita Timofeev
Hi all,

Just a quick note, ColumnQuery has methods `distinct()` and
`suppressDistinct()` to override the default logic of DISTINCT in
generated SQL.

On Sat, Apr 18, 2020 at 11:33 AM Andrus Adamchik  wrote:
>
> TL;DR: Cayenne using DISTINCT for column queries in 4.2 affects Agrest 
> algorithms, but is nevertheless correct and should stay around.
>
> 
> When testing M1, I noticed a difference in ordering of the second-level 
> results in Agrest vs 4.0/4.1. Those are generated in Agrest via a SelectQuery 
> with columns roughly looking like this:
>
>   List> properties = new ArrayList<>();
>   properties.add(Property.createSelf(E3.class));
>
>   Expression exp = ExpressionFactory.dbPathExp("e2.id");
>   properties.add(Property.create(exp, Integer.class));
>
>   SelectQuery query = new SelectQuery(E3.class);
>   query.setColumns(properties);
>
> Here "e2" is a to-one relationship. The difference in generated SQL between 
> 4.0 and 4.2 is the DISTINCT keyword added in the latter:
>
> 4.0:
>   SELECT t0.name, t0.e2_id, t0.id_, t1.id_ FROM utest.e3 t0 JOIN utest.e2 t1 
> ON (t0.e2_id = t1.id_)
>
> 4.2:
>   SELECT DISTINCT t0.name, t0.e2_id, t0.id_, t1.id_ FROM utest.e3 t0 JOIN 
> utest.e2 t1 ON t0.e2_id = t1.id_
>
> Both produce the correct result, but since there's no explicit ordering, the 
> actual order of the objects returned by Derby is different. I am less worried 
> about the ordering (this was just an indicator to me that something has 
> changed), but DISTINCT has a performance impact, and now it seems it will 
> affect the main execution path of Agrest.
>
> I suppose Cayenne behavior in 4.2 is correct as with column queries there are 
> no simple rules for when there may be duplicate result rows. Our case doesn't 
> require DISTINCT only because of the special combination (entity and a 
> related to-one id). And we need to fix this on Agrest end (that join is 
> redundant in case of to-one).
>
> Still figured I'd mention...
>
> Andrus
>
>


-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-04-20 Thread Nikita Timofeev
Here is my
+1

And here is the results:

John Huss (PMC): +1
Michael Gentry (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

Non-binding:
Emerson Castañeda: +1

I will finish the release today.
Thanks, everyone!


On Sat, Apr 18, 2020 at 10:56 AM Andrus Adamchik  wrote:
>
> +1
>
> > On Apr 15, 2020, at 3:55 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > I hope this will be the last try for the 4.2.M1.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1039/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.M1 release

2020-04-15 Thread Nikita Timofeev
Hi all,

I hope this will be the last try for the 4.2.M1.

Release notes: https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1039/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-04-15 Thread Nikita Timofeev
I just checked LinkMove with the fixed version, everything seems good to me.
I'll start a new voting thread.

On Tue, Apr 14, 2020 at 7:57 PM Andrus Adamchik  wrote:
>
> > @Andrus: We'll let you test LM first this time?
>
> Be happy to.
>
>
> > On Apr 14, 2020, at 7:48 PM, Michael Gentry  wrote:
> >
> > @John & @Nikita: If easy to fix, let's go ahead and do it just to have a
> > better M1.
> > @Andrus: We'll let you test LM first this time?
> >
> > I guess that makes me more of a -0 now.  I'm still not opposed to releasing
> > as-is, but a better M1 is still desirable.
> >
> >
> > On Tue, Apr 14, 2020 at 5:10 AM Nikita Timofeev 
> > wrote:
> >
> >> That's not a big effort to prepare a fresh release, it getting faster
> >> each time :).
> >> So I think I could do it one more time.
> >>
> >> As for the issue, the fix seems straightforward, so I'll just go for it.
> >>
> >> On Tue, Apr 14, 2020 at 4:30 AM John Huss  wrote:
> >>>
> >>> I would be fine with fixing it up and remaking the release, but I don’t
> >>> know how much of a hassle that is. I can find time to fix AutoAdapter in
> >>> the next two days I think.
> >>>
> >>> On Mon, Apr 13, 2020 at 1:34 PM Andrus Adamchik 
> >>> wrote:
> >>>
> >>>> Been thinking more about this... This breaks basic commit operations
> >> for
> >>>> both Derby and SQLServer, making it a major issue. We've never shipped
> >>>> releases with known bugs like this, even milestones. On the other hand
> >>>> there is a workaround - use an explicit adapter.
> >>>>
> >>>> I am voting -0, which means that I wouldn't release it like that, but I
> >>>> don't want to veto the release either. If the majority decides we
> >> should
> >>>> proceed, so be it.
> >>>>
> >>>> Andrus
> >>>>
> >>>>
> >>>>> On Apr 13, 2020, at 2:53 PM, Michael Gentry 
> >> wrote:
> >>>>>
> >>>>> Hi Andrus,
> >>>>>
> >>>>> Given this is a milestone release, I think it is fine to release
> >> with the
> >>>>> AutoAdapter issue.  These releases aren't required or expected to be
> >>>>> production-ready, although that would certainly be nice.  They are
> >> for
> >>>>> finding issues needing to be addressed, and you have.  :-)
> >>>>>
> >>>>> mrg
> >>>>>
> >>>>>
> >>>>> On Mon, Apr 13, 2020 at 5:24 AM Andrus Adamchik <
> >> and...@objectstyle.org>
> >>>>> wrote:
> >>>>>
> >>>>>> So looks like this will affect users of Derby and SQLServer who are
> >> also
> >>>>>> using the AutoAdapter (don't know if anyone still NOT using the
> >>>>>> AutoAdapter?). I suppose we can still release the M1, though it will
> >>>> not be
> >>>>>> usable for me unfortunately until this is fixed.
> >>>>>>
> >>>>>> Thoughts?
> >>>>>>
> >>>>>> Andrus
> >>>>>>
> >>>>>>> On Apr 13, 2020, at 11:40 AM, Nikita Timofeev <
> >>>> ntimof...@objectstyle.com>
> >>>>>> wrote:
> >>>>>>>
> >>>>>>> Hi Andrus,
> >>>>>>>
> >>>>>>> Yes, LinkMove problems related to batch generated keys. The
> >> problem is
> >>>>>>> with AutoAdapter, it simply doesn't define
> >>>>>>> supportsGeneratedKeysForBatchInserts() method.
> >>>>>>> DerbyAdapter itself works fine.
> >>>>>>>
> >>>>>>> On Sun, Apr 12, 2020 at 11:47 AM Andrus Adamchik <
> >>>> and...@objectstyle.org>
> >>>>>> wrote:
> >>>>>>>>
> >>>>>>>> Still testing the release... As expected 4.2 is no longer a
> >> drop-in
> >>>>>> replacement of 4.0 for either Agrest or LinkMove (because of the
> >>>> Property
> >>>>>> class refactoring). So I made a few tweaks to LM to make it compile
> >> [1].
> >>>>>> Now I am getting the following error on commit in a bun

Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-04-14 Thread Nikita Timofeev
That's not a big effort to prepare a fresh release, it getting faster
each time :).
So I think I could do it one more time.

As for the issue, the fix seems straightforward, so I'll just go for it.

On Tue, Apr 14, 2020 at 4:30 AM John Huss  wrote:
>
> I would be fine with fixing it up and remaking the release, but I don’t
> know how much of a hassle that is. I can find time to fix AutoAdapter in
> the next two days I think.
>
> On Mon, Apr 13, 2020 at 1:34 PM Andrus Adamchik 
> wrote:
>
> > Been thinking more about this... This breaks basic commit operations for
> > both Derby and SQLServer, making it a major issue. We've never shipped
> > releases with known bugs like this, even milestones. On the other hand
> > there is a workaround - use an explicit adapter.
> >
> > I am voting -0, which means that I wouldn't release it like that, but I
> > don't want to veto the release either. If the majority decides we should
> > proceed, so be it.
> >
> > Andrus
> >
> >
> > > On Apr 13, 2020, at 2:53 PM, Michael Gentry  wrote:
> > >
> > > Hi Andrus,
> > >
> > > Given this is a milestone release, I think it is fine to release with the
> > > AutoAdapter issue.  These releases aren't required or expected to be
> > > production-ready, although that would certainly be nice.  They are for
> > > finding issues needing to be addressed, and you have.  :-)
> > >
> > > mrg
> > >
> > >
> > > On Mon, Apr 13, 2020 at 5:24 AM Andrus Adamchik 
> > > wrote:
> > >
> > >> So looks like this will affect users of Derby and SQLServer who are also
> > >> using the AutoAdapter (don't know if anyone still NOT using the
> > >> AutoAdapter?). I suppose we can still release the M1, though it will
> > not be
> > >> usable for me unfortunately until this is fixed.
> > >>
> > >> Thoughts?
> > >>
> > >> Andrus
> > >>
> > >>> On Apr 13, 2020, at 11:40 AM, Nikita Timofeev <
> > ntimof...@objectstyle.com>
> > >> wrote:
> > >>>
> > >>> Hi Andrus,
> > >>>
> > >>> Yes, LinkMove problems related to batch generated keys. The problem is
> > >>> with AutoAdapter, it simply doesn't define
> > >>> supportsGeneratedKeysForBatchInserts() method.
> > >>> DerbyAdapter itself works fine.
> > >>>
> > >>> On Sun, Apr 12, 2020 at 11:47 AM Andrus Adamchik <
> > and...@objectstyle.org>
> > >> wrote:
> > >>>>
> > >>>> Still testing the release... As expected 4.2 is no longer a drop-in
> > >> replacement of 4.0 for either Agrest or LinkMove (because of the
> > Property
> > >> class refactoring). So I made a few tweaks to LM to make it compile [1].
> > >> Now I am getting the following error on commit in a bunch of tests (e.g.
> > >> CreateIT) [2].
> > >>>>
> > >>>> Is this related to 57332e865f5dabb9c7adef4bac9a61137f6828c4 (batch
> > mode
> > >> and PKs on Derby) ?
> > >>>>
> > >>>> (Derby version used in tests is 10.14.2.0 - the latest that supports
> > >> Java 8)
> > >>>>
> > >>>> Andrus
> > >>>>
> > >>>>
> > >>>>> On Apr 7, 2020, at 2:03 PM, Nikita Timofeev <
> > ntimof...@objectstyle.com>
> > >> wrote:
> > >>>>>
> > >>>>> Hi all,
> > >>>>>
> > >>>>> Here is another try for the Cayenne 4.2.M1 release.
> > >>>>>
> > >>>>> Release notes:
> > >> https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
> > >>>>> Maven repo:
> > >>
> > https://repository.apache.org/content/repositories/orgapachecayenne-1038/
> > >>>>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/
> > >>>>>
> > >>>>> Please evaluate and cast your votes.
> > >>>>>
> > >>>>> --
> > >>>>> Best regards,
> > >>>>> Nikita Timofeev
> > >>>>
> > >>>>
> > >>>> [1] https://github.com/nhl/link-move/tree/cayenne-4.2 <
> > >> https://github.com/nhl/link-move/tree/cayenne-4.2>
> > >>>>
> > >>>> [2]  org.apache.cayenne.Cay

Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-04-13 Thread Nikita Timofeev
Hi Andrus,

Yes, LinkMove problems related to batch generated keys. The problem is
with AutoAdapter, it simply doesn't define
supportsGeneratedKeysForBatchInserts() method.
DerbyAdapter itself works fine.

On Sun, Apr 12, 2020 at 11:47 AM Andrus Adamchik  wrote:
>
> Still testing the release... As expected 4.2 is no longer a drop-in 
> replacement of 4.0 for either Agrest or LinkMove (because of the Property 
> class refactoring). So I made a few tweaks to LM to make it compile [1]. Now 
> I am getting the following error on commit in a bunch of tests (e.g. 
> CreateIT) [2].
>
> Is this related to 57332e865f5dabb9c7adef4bac9a61137f6828c4 (batch mode and 
> PKs on Derby) ?
>
> (Derby version used in tests is 10.14.2.0 - the latest that supports Java 8)
>
> Andrus
>
>
> > On Apr 7, 2020, at 2:03 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Here is another try for the Cayenne 4.2.M1 release.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1038/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>
>
> [1] https://github.com/nhl/link-move/tree/cayenne-4.2 
> <https://github.com/nhl/link-move/tree/cayenne-4.2>
>
> [2]  org.apache.cayenne.CayenneRuntimeException: [v.4.2.M1 Apr 07 2020 
> 09:32:02] Mismatching number of generated PKs: expected 2, instead got 1
> at 
> org.apache.cayenne.access.flush.FlushObserver.nextGeneratedRows(FlushObserver.java:77)
> at 
> org.apache.cayenne.access.DataNodeQueryAction$1.nextGeneratedRows(DataNodeQueryAction.java:77)
> at 
> org.apache.cayenne.access.jdbc.BatchAction.processGeneratedKeys(BatchAction.java:288)
> at org.apache.cayenne.access.jdbc.BatchAction.runAsBatch(BatchAction.java:133)
> at 
> org.apache.cayenne.access.jdbc.BatchAction.performAction(BatchAction.java:94)
> at 
> org.apache.cayenne.access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:97)
> at org.apache.cayenne.access.DataNode.performQueries(DataNode.java:273)
> at 
> org.apache.cayenne.access.flush.DefaultDataDomainFlushAction.lambda$executeQueries$6(DefaultDataDomainFlushAction.java:175)
> at java.util.HashMap.forEach(HashMap.java:1288)
> at 
> org.apache.cayenne.access.flush.DefaultDataDomainFlushAction.executeQueries(DefaultDataDomainFlushAction.java:174)
> at 
> org.apache.cayenne.access.flush.DefaultDataDomainFlushAction.flush(DefaultDataDomainFlushAction.java:89)
> at org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:637)
> at org.apache.cayenne.access.DataDomain.onSyncNoFilters(DataDomain.java:609)
> at 
> org.apache.cayenne.access.DataDomain$DataDomainSyncFilterChain.onSync(DataDomain.java:835)
> at 
> org.apache.cayenne.tx.TransactionFilter.lambda$onSync$0(TransactionFilter.java:61)
> at 
> org.apache.cayenne.tx.DefaultTransactionManager$BaseTransactionHandler.performInTransaction(DefaultTransactionManager.java:180)
> at 
> org.apache.cayenne.tx.DefaultTransactionManager$BaseTransactionHandler.performInNewTransaction(DefaultTransactionManager.java:152)
> at 
> org.apache.cayenne.tx.DefaultTransactionManager$NestedTransactionHandler.handle(DefaultTransactionManager.java:95)
> at 
> org.apache.cayenne.tx.DefaultTransactionManager.performInTransaction(DefaultTransactionManager.java:62)
> at 
> org.apache.cayenne.tx.DefaultTransactionManager.performInTransaction(DefaultTransactionManager.java:40)
> at org.apache.cayenne.tx.TransactionFilter.onSync(TransactionFilter.java:61)
> at 
> org.apache.cayenne.access.DataDomain$DataDomainSyncFilterChain.onSync(DataDomain.java:834)
> at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:596)
> at org.apache.cayenne.access.DataContext.flushToParent(DataContext.java:737)
> at org.apache.cayenne.access.DataContext.commitChanges(DataContext.java:686)
> at 
> com.nhl.link.move.runtime.task.create.CreateSegmentProcessor.commitTarget(CreateSegmentProcessor.java:63)
> at 
> com.nhl.link.move.runtime.task.create.CreateSegmentProcessor.process(CreateSegmentProcessor.java:44)
> at 
> com.nhl.link.move.runtime.task.create.CreateTask.lambda$createBatchProcessor$1(CreateTask.java:72)
> at com.nhl.link.move.batch.BatchRunner.run(BatchRunner.java:57)
> at com.nhl.link.move.runtime.task.create.CreateTask.doRun(CreateTask.java:62)
> at com.nhl.link.move.runtime.task.BaseTask.run(BaseTask.java:46)
> at com.nhl.link.move.LmTask.run(LmTask.java:31)
> at com.nhl.link.move.runtime.task.BaseTask.run(BaseTask.java:39)
> at com.nhl.link.m

[VOTE] Apache Cayenne 4.2.M1 release

2020-04-07 Thread Nikita Timofeev
Hi all,

Here is another try for the Cayenne 4.2.M1 release.

Release notes: https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1038/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-04-03 Thread Nikita Timofeev
Hi all,

I've rolled back 4.2.M1 release and will start new voting soon.
Fix for the meaningful FK is committed now [1].
I've also checked that the latest snapshot version of the Apache RAT
[2] is ok with the "https://;, so we could use it.
I'll update docs and also will mention the maven plugin.

John, could you please check again your meaningful FK test case with
the latest cayenne snapshot build?

[1] https://issues.apache.org/jira/browse/CAY-2652
[2] 
https://repository.apache.org/content/repositories/snapshots/org/apache/rat/apache-rat/

On Sat, Mar 28, 2020 at 1:04 AM John Huss  wrote:
>
> Thanks.
>
> I figured out the problem with cgen was that I had velocity-engine-core-2.0
> instead of velocity-engine-core-2.1. Updating the jar fixed the problem.
>
>
> On Thu, Mar 26, 2020 at 12:25 PM Nikita Timofeev 
> wrote:
>
> > Thank you, John, for your thorough testing.
> >
> > 1. Seems like RAT don't like the change from "http://; to "https://;
> > in the license text. I've updated settings for the RAT maven plugin
> > (as I use it to check sources) and that works ok. Need to update
> > config for the standalone script.
> > 2. Cgen + ant. IIRC we had some problems with that and you helped a
> > lot with it. I've tested cgen task in a simple demo project and it
> > works fine for me, but I don't really know much about the Ant.
> > If you can create a demo project or help somehow else, that would be great.
> > 3. I was able to reproduce this one. Primitive type in the meaningful
> > FK really creating problems, so need to fix this.
> >
> > I'll keep this vote open in case something else comes up.
> >
> > On Thu, Mar 26, 2020 at 1:05 AM John Huss  wrote:
> > >
> > > Thanks for all your work on this. 4.2 is going to be a great release! I
> > ran
> > > all my checks on the release and almost everything passed.
> > >
> > > I don't know what changed, but I'm having a RAT problem I haven't seen
> > > before. RAT (both 0.12 and 0.13) show this header:
> > >
> > > Printing headers for text files without a valid license header...
> > >
> > >
> > > then lists basically every source file in the archive, example below.
> > When
> > > I open this file directly the license header is there, but the printout
> > > from RAT doesn't show it.
> > >
> > > =
> > >
> > > == File:
> > >
> > cayenne-4.2.M1-src/cayenne-osgi/src/test/java/org/apache/cayenne/configuration/osgi/OsgiClassLoaderManagerTest.java
> > >
> > > =
> > >
> > > /*
> > >
> > >  *
> > >
> > >  *
> > >
> > >  /
> > >
> > > package org.apache.cayenne.configuration.osgi;
> > >
> > >
> > > import org.junit.Test;
> > >
> > >
> > > import java.util.Collections;
> > >
> > >
> > > import static org.junit.Assert.assertSame;
> > >
> > > import static org.mockito.Mockito.mock;
> > >
> > >
> > > public class OsgiClassLoaderManagerTest {
> > >
> > >
> > >
> > >
> > -
> > > More importantly, I'm seeing some issues with cgen (using ant) not
> > finding
> > > templates. This wasn't happening when I tested 4.2 months ago, so it must
> > > be a more recent change.
> > >
> > > org.apache.velocity.exception.ResourceNotFoundException: Unable to find
> > > resource 'templates/v4_1/superclass.vm'
> > >
> > >
> > > 
> > >
> > >  > >
> > > superpkg="com.myapp.auto"
> > >
> > > createpropertynames="true"
> > >
> > > destDir="src"
> > >
> > > outputPattern="*.java"
> > >
> > > usepkgpath="true"
> > >
> > > encoding="UTF-8"
> > >
> > > mode="all"
> > >
> > > force="true"
> > >
> > > />
> > >
> > > 
> > >
> > >
> > >
> > > The unit tests in my projects are looking nearly perfect. But I did see a
> > > regression in a very specific case. I have an entity wi

Re: [VOTE] Apache Cayenne 4.2.M1 release

2020-03-26 Thread Nikita Timofeev
Thank you, John, for your thorough testing.

1. Seems like RAT don't like the change from "http://; to "https://;
in the license text. I've updated settings for the RAT maven plugin
(as I use it to check sources) and that works ok. Need to update
config for the standalone script.
2. Cgen + ant. IIRC we had some problems with that and you helped a
lot with it. I've tested cgen task in a simple demo project and it
works fine for me, but I don't really know much about the Ant.
If you can create a demo project or help somehow else, that would be great.
3. I was able to reproduce this one. Primitive type in the meaningful
FK really creating problems, so need to fix this.

I'll keep this vote open in case something else comes up.

On Thu, Mar 26, 2020 at 1:05 AM John Huss  wrote:
>
> Thanks for all your work on this. 4.2 is going to be a great release! I ran
> all my checks on the release and almost everything passed.
>
> I don't know what changed, but I'm having a RAT problem I haven't seen
> before. RAT (both 0.12 and 0.13) show this header:
>
> Printing headers for text files without a valid license header...
>
>
> then lists basically every source file in the archive, example below. When
> I open this file directly the license header is there, but the printout
> from RAT doesn't show it.
>
> =
>
> == File:
> cayenne-4.2.M1-src/cayenne-osgi/src/test/java/org/apache/cayenne/configuration/osgi/OsgiClassLoaderManagerTest.java
>
> =
>
> /*
>
>  *
>
>  *
>
>  /
>
> package org.apache.cayenne.configuration.osgi;
>
>
> import org.junit.Test;
>
>
> import java.util.Collections;
>
>
> import static org.junit.Assert.assertSame;
>
> import static org.mockito.Mockito.mock;
>
>
> public class OsgiClassLoaderManagerTest {
>
>
>
> -
> More importantly, I'm seeing some issues with cgen (using ant) not finding
> templates. This wasn't happening when I tested 4.2 months ago, so it must
> be a more recent change.
>
> org.apache.velocity.exception.ResourceNotFoundException: Unable to find
> resource 'templates/v4_1/superclass.vm'
>
>
> 
>
> 
> superpkg="com.myapp.auto"
>
> createpropertynames="true"
>
> destDir="src"
>
> outputPattern="*.java"
>
> usepkgpath="true"
>
> encoding="UTF-8"
>
> mode="all"
>
> force="true"
>
> />
>
> 
>
>
>
> The unit tests in my projects are looking nearly perfect. But I did see a
> regression in a very specific case. I have an entity with a meaningful
> foreign key attribute that is modeled as a primitive (int). The attribute
> is the same column as referenced by a relationship on the same entity. This
> was working in the previous version but isn't working now. The value is
> just always zero for this field now. I'm not sure if this is supposed to be
> supported.
>
>
> On Tue, Mar 24, 2020 at 4:55 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here is a long-awaited 4.2.M1 release.
> > JIRA tells that it has impressive 100 issues resolved.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1037/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.2.M1 release

2020-03-24 Thread Nikita Timofeev
Hi all,

Here is a long-awaited 4.2.M1 release.
JIRA tells that it has impressive 100 issues resolved.

Release notes: https://github.com/apache/cayenne/blob/4.2.M1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1037/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.2.M1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1.RC2 release

2019-10-29 Thread Nikita Timofeev
Here is my +1

The difference in javadocs is because of different JDK versions I used
to build assemblies.

Final results are following:

Andrus Adamchik (PMC): +1
Michael Gentry (PMC): +1
John Huss (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!


On Mon, Oct 28, 2019 at 5:31 PM John Huss  wrote:
>
> +1
>
> 1) verified signatures
> 2) verified archives are basically identical between platforms - *however*,
> there are some differences that haven't been present before - the windows
> version is the only one that includes the *-frame.html files like:
> doc/api/allclasses-frame.html.
> There are a bunch of these.
> 3) RAT indicates no unlicensed files
> 4) compiled from source
> 5) unit tests ran successfully
> 6) macOS specific and Platform-agnostic modelers launch on macOS
>
>
>
> On Fri, Oct 25, 2019 at 7:17 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > Here is 4.1.RC2 release with some critical fixes.
> >
> > Release notes:
> > https://github.com/apache/cayenne/blob/4.1.RC2/RELEASE-NOTES.txt
> > Maven repo:
> > https://repository.apache.org/content/repositories/orgapachecayenne-1035/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.RC2/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.1.RC2 release

2019-10-25 Thread Nikita Timofeev
Hi all,

Here is 4.1.RC2 release with some critical fixes.

Release notes: https://github.com/apache/cayenne/blob/4.1.RC2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1035/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.RC2/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.0.2 release

2019-10-14 Thread Nikita Timofeev
Here is my +1

Final results are following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!



On Thu, Oct 10, 2019 at 3:09 PM Andrus Adamchik  wrote:
>
> My checklist passes. I am +1.
>
> A few small notes:
>
> * Let's change the copyright year for the Modeler to 2019
> * I suggest that we drop md5 signatures completely for all future releases 
> and only keep sha512
>
> Andrus
>
>
> > On Oct 9, 2019, at 12:56 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Here is a maintenance release of Cayenne 4.0 with some bugfixes.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.0.2/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1034/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.2/
> >
> > Please evaluate and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.0.2 release

2019-10-09 Thread Nikita Timofeev
Hi all,

Here is a maintenance release of Cayenne 4.0 with some bugfixes.

Release notes: https://github.com/apache/cayenne/blob/4.0.2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1034/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.2/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1.RC1 release

2019-10-08 Thread Nikita Timofeev
Here is my +1

Final results are following:

Andrus Adamchik (PMC): +1
John Huss (PMC): +1
Nikita Timofeev (PMC): +1

I will finish the release today.
Thanks, everyone!


On Fri, Oct 4, 2019 at 1:13 AM Emerson Castañeda  wrote:
>
> Never mind, I found the release guide that contains answers for most of my
> questions https://cayenne.apache.org/dev/release-guide.html
>
> On Thu, Oct 3, 2019 at 1:15 PM Emerson Castañeda  wrote:
>
> >   - Build from source
> >
> > [INFO]
> > 
> > [INFO] BUILD SUCCESS
> > [INFO]
> > 
> > [INFO] Total time:  12:31 min
> > [INFO] Finished at: 2019-10-03T12:24:54-04:00
> > [INFO]
> > 
> >
> >  - All test passed
> >
> >  - Modeler runs on Windows
> >
> >  - Modeler runs on Linux
> >
> > Some questions:
> >
> > - how do you run/use cayenne-release-tools for checking?
> >
> >  MD5/SHA512
> >  Signature checks
> >
> > - are those tools available in the git repo?
> >
> >  - what jar file(s) do you provided to the rat script?
> >
> > EmeCas
> >
> > On Thu, Oct 3, 2019 at 12:35 PM John Huss  wrote:
> >
> >> +1
> >>
> >> 1) verified checksums
> >> 2) verified signatures
> >> 3) verified archives are basically identical between platforms
> >> 4) RAT indicates no unlicensed files
> >> 5) compiled from source
> >> 6) unit tests ran successfully
> >> 7) Modeler launches on macOS
> >>
> >> On Thu, Oct 3, 2019 at 9:23 AM Nikita Timofeev  >> >
> >> wrote:
> >>
> >> > Hi all,
> >> >
> >> > Here is the 4.1 release candidate.
> >> >
> >> > Release notes:
> >> > https://github.com/apache/cayenne/blob/4.1.RC1/RELEASE-NOTES.txt
> >> > Maven repo:
> >> >
> >> https://repository.apache.org/content/repositories/orgapachecayenne-1032/
> >> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.RC1/
> >> >
> >> > Please evaluate and cast your votes.
> >> >
> >> > --
> >> > Best regards,
> >> > Nikita Timofeev
> >> >
> >>
> >



--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.1.RC1 release

2019-10-03 Thread Nikita Timofeev
Hi all,

Here is the 4.1 release candidate.

Release notes: https://github.com/apache/cayenne/blob/4.1.RC1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1032/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.RC1/

Please evaluate and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: Release sequence

2019-09-05 Thread Nikita Timofeev
Hi John,

Thanks for the reminder and for finding those issues, of course!

I've tested these issues and found that they are not new to 4.2.
They are present in 4.0 and 4.1 (and I believe in 3.x versions as well).
They should be fixed eventually, but I'm not sure we should delay the
4.2 milestone release because of them.

On Wed, Sep 4, 2019 at 5:36 PM John Huss  wrote:
>
> I'm ready for 4.0 and 4.1 any time.
>
> Regarding 4.2, I reported two issues a while back that haven't been
> commented on yet. I'd like to see at least a sentence reply about those
> since they represent test cases that started failing for me starting with
> 4.2.
>
> https://github.com/apache/cayenne/pull/385/commits/144584bd042161ae872cc46a3944076424bb00cc
>
> https://github.com/apache/cayenne/pull/390
>
> Thanks!
>
>
> On Fri, Aug 30, 2019 at 6:16 AM Nikita Timofeev 
> wrote:
>
> > Hi all,
> >
> > We have some changes ready for release in 4.0, and soon 4.1 and 4.2
> > will be ready for release as well. So I have a question, is it better
> > to push it all together for voting or one by one?
> >
> > --
> > Best regards,
> > Nikita Timofeev
> >



-- 
Best regards,
Nikita Timofeev


Release sequence

2019-08-30 Thread Nikita Timofeev
Hi all,

We have some changes ready for release in 4.0, and soon 4.1 and 4.2
will be ready for release as well. So I have a question, is it better
to push it all together for voting or one by one?

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Apache Cayenne 4.1.B2 release

2019-05-13 Thread Nikita Timofeev
Here is my +1

Final results are following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

I will finish release today.
Thanks everyone!








On Fri, May 10, 2019 at 4:54 PM Andrus Adamchik  wrote:
>
> My checklist passes. The only minor thing that I noticed is that the "About 
> CayenneModeler" dialog still has year 2019 as copyright... (Wonder if we 
> should set it dynamically to the Year.now()? )
>
> Anyways, I am +1.
>
> Andrus
>
>
> > On May 4, 2019, at 3:27 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > Since there were some serious issues in B1 (like [1]), think that it
> > is better to release B2 faster and wait some time for the RC.
> >
> > Release notes: 
> > https://github.com/apache/cayenne/blob/4.1.B2/RELEASE-NOTES.txt
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1031/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B2/
> >
> > Please evaluate it and cast your votes.
> >
> > [1] https://issues.apache.org/jira/browse/CAY-2566
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


--
Best regards,
Nikita Timofeev


[VOTE] Apache Cayenne 4.1.B2 release

2019-05-04 Thread Nikita Timofeev
Hi all,

Since there were some serious issues in B1 (like [1]), think that it
is better to release B2 faster and wait some time for the RC.

Release notes: https://github.com/apache/cayenne/blob/4.1.B2/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1031/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B2/

Please evaluate it and cast your votes.

[1] https://issues.apache.org/jira/browse/CAY-2566

-- 
Best regards,
Nikita Timofeev


DataDomainFlushAction redesign

2019-04-23 Thread Nikita Timofeev
Hi all,

For a long time I've worked on this task [1] and now I'm ready to
merge it [2]. As it's a pretty big change in a core part of Cayenne, I
wanted to notify about is as much as I can.

In short this is about mechanics that flushes changes from context to DB.
Currently it's a monolith and private so no extension is effectively
possible and it's hard to fix issues in it.

The idea in a new version is to use intermediate representation of DB
operations [3] and work with it, rather than generate queries directly
from object changes. This potentially allows to modify this new
pipeline endlessly. I.e. to modify sorting of operation without
changing anything else, to customize query generation or even use
custom queries. It even allows to use your own implementation of this
operations.

There are many new ideas I have where we can move from here. It
already fixes issue with flattened attributes update. But right now
this change should not break things. I really hope it won't break a
lot, but there are so many options and Cayenne test suite is not
perfect. So early adopters are welcome :)

Just in case I left the old implementation so you can just connect it via DI.

[1] https://issues.apache.org/jira/browse/CAY-2571
[2] https://github.com/apache/cayenne/pull/377
[3] 
https://github.com/apache/cayenne/blob/f55efff11227671dc89ab2d5561858e9e2e75100/cayenne-server/src/main/java/org/apache/cayenne/access/flush/operation/DbRowOp.java#L32
-- 
Best regards,
Nikita Timofeev


Re: Cayenne 4.2 StringProperty—implement ComparableProperty?

2019-04-10 Thread Nikita Timofeev
Hi,

Missed this thread.
I just didn't imagine that there is a use case for that. But as long
as it is supported by DBs, I think this should be supported by Cayenne
as well.

On Mon, Mar 4, 2019 at 4:24 PM Hugi Thordarson  wrote:
>
> Hi all.
> I've been experimenting a little with Cayenne 4.2. It looks lovely and I 
> can't wait to start using it.
>
> One thing I bumped into is that StringProperty does not implement 
> ComparableProperty. Although I'd personally never design a DB or a system 
> that requires this, I work with a couple of legacy systems that use 
> comparison of string fields ("someString">"otherString" etc.). Doing a little 
> googling seems to show that it's also a bit of a practice and widely 
> supported by DBs.
>
> So… Do you think StringProperty should implement ComparableProperty? I'm torn 
> myself. It feels wrong—but if it's supported by DBs and widely used, perhaps 
> the Cayenne API should allow for that?
>
> Cheers,
> - hugi



-- 
Best regards,
Nikita Timofeev


Re: Allowing property getters without a "get" prefix on DataObjects

2019-04-10 Thread Nikita Timofeev
Thanks for PR, I think I'll have some time in a few days to merge it.
At first glance it seems ok.

On Sat, Apr 6, 2019 at 2:58 PM Hugi Thordarson  wrote:
>
> Thanks Nikita, we are finally well. And yes, I'd agree that the past flu 
> season kind of deserves an R-rated movie :).
>
> I finally submitted a PR with those slight modifications to BeanAccessor to 
> allow for easier subclassing. If you don't see anything wrong with it it 
> would be awesome if it reaches 4.1. I've been using this in production for 
> quite some time without any problems.
>
> https://github.com/apache/cayenne/pull/371 
> <https://github.com/apache/cayenne/pull/371>
>
> Cheers,
> - hugi
>
>
>
> > Hi Hugi,
> >
> > "Flu season in Iceland" sounds like a scary movie :) Hope you are well!
> >
> > I've merged my pull request, so you can do yours. I don't see any
> > problems with adding some flexibility to BeanAccessor while keeping it
> > compatible.
> > And thanks for sharing your use case.
> >
> > On Wed, Feb 6, 2019 at 7:15 PM Hugi Thordarson  wrote:
> >>
> >> Hi Nikita!
> >> Sorry for the late reply. Flu season in Iceland, basically just happy to 
> >> be alive :).
> >>
> >> I'm working with Maik on this and just tried out your solution. It works 
> >> perfectly, so thanks!
> >>
> >> One point though: We would of course prefer to maintain as much of the 
> >> behaviour already present in BeanAccessor, but it's proving a bit 
> >> problematic to implement our own BeanAccessor this way, since the current 
> >> one uses a bit of protected/friendly logic from 
> >> org.apache.cayenne.reflect. This can be worked around by putting our own 
> >> BeanAccessor implementation in a package with that name (or duplicating 
> >> the required logic), but obviously, that's a bit … messy.
> >>
> >> I propose that BeanAccessor gets a new constructor which accepts 
> >> isGetterName, getGetterName and setterName as parameters, that the current 
> >> constructor can invoke with the current values. That way, our new 
> >> non-prefixed BeanAccessor implementation could just subclass BeanAccessor 
> >> and wouldn't have to touch any logic related to reading or setting 
> >> property values, it would only pass in our preferred property name 
> >> structure.
> >>
> >> At least that's one idea. If you agree with this, I'd be more than happy 
> >> to submit a PR with that modification once your PR has been merged.
> >>
> >> Cheers, and thanks again,
> >> - hugi
> >>
> >>
> >>
> >>> On 4 Feb 2019, at 13:12, Nikita Timofeev  
> >>> wrote:
> >>>
> >>> Hi Maik.
> >>>
> >>> As I'm the one researched this, let me answer :) I failed to make
> >>> BeanAccessor pluggable last time because I realized that it's deep
> >>> inside code not managed by Cayenne DI.
> >>> But looking again at it I wonder will this straightforward solution
> >>> [1] solve your problems?
> >>> And I'm really interested what is your use case? Do you perform lots
> >>> of in-memory filtering and/or calculations using Cayenne Expressions?
> >>>
> >>> [1] 
> >>> https://github.com/apache/cayenne/pull/363/files?utf8=✓=unified#diff-4f928c7d2ac0e22cabde0c9732de774fR214
> >>>
> >>> On Thu, Jan 31, 2019 at 7:22 PM Maik Musall  wrote:
> >>>>
> >>>> Hi Andrus,
> >>>>
> >>>> did you have a chance to look at this yet? The reason I ask is that our 
> >>>> application hit the memory limit this week again (-Xmx at 96 GB), and 
> >>>> according to some profiling, almost half of that is used up by HashMap 
> >>>> nodes. So we're really eager to upgrade to Cayenne 4.1 to be able to use 
> >>>> field-based DataObjects, but this is preventing us from going ahead.
> >>>>
> >>>> Thanks
> >>>> Maik
> >>>>
> >>>>
> >>>>
> >>>>> Am 25.09.2018 um 16:23 schrieb Andrus Adamchik :
> >>>>>
> >>>>>> "Should Cayenne by default work without prefixed accessors".
> >>>>>
> >>>>> My answer to this : "By default, no. As a fallback or a custom 
> >>>>> strategy, possibly."
> >>>>>
> >>>>> I actually agree about Java beans. They are al

Re: [VOTE] Cayenne 4.1.B1 release

2019-03-18 Thread Nikita Timofeev
Finally we have required votes.
Here is my +1 for the release.

Final results are following:

Andrus Adamchik (PMC): +1
Aristedes Maniatis (PMC): +1
Nikita Timofeev (PMC): +1

Thanks everyone! That was long, but productive process :)
I'll finalize everything today.

On Mon, Mar 18, 2019 at 9:14 AM Aristedes Maniatis  wrote:
>
> I can't find the cause yet, but it does appear to be specific to the
> Java installed on my machine. Nothing happens and the app just doesn't
> launch at all. There are some entries in the system logs, but nothing
> helpful.
>
> I don't think this should hold up the beta, so I'm +1 on this release.
> I'll see if I can figure out what the cause is for the next beta. To
> avoid the nightmare that is Java on the desktop in this age of
> fragmented Java packages caused by Oracle trying to extract every drop
> of blood, combined with Apple's ever more draconian code signing and
> notarisation... maybe we should think about bundling Java inside the
> Modeler app.
>
> /rant
>
>
> +1 on this release
>
>
> Ari
>
>
> On 15/3/19 6:57pm, Nikita Timofeev wrote:
> >> I cannot launch modeler on my machine with openJDK 11 from the
> >> adoptopenjdk project. Can others reproduce this issue?
> > Tested it on two Macs, seems fine. Found some strange crashes if
> > launching binary
> > file directly on older MacOS version (10.13.6), but in normal case it
> > just works.
> > Maybe you can provide some details? Is Modeler crashes or just nothing 
> > happens?
> > Could you try to launch generic version of the Modeler and some older
> > Mac versions?
> >
> > On Fri, Mar 15, 2019 at 7:58 AM Aristedes Maniatis  
> > wrote:
> >> The maven repo isn't available to me. That URL throws a 404. Is that
> >> just because the folder has no index?
> >>
> >> At any rate, I verified the source and OSX bundles. All looks good
> >> except I cannot launch modeler on my machine with openJDK 11 from the
> >> adoptopenjdk project. Can others reproduce this issue? I spent a while
> >> trying to figure out why it isn't running, but no luck yet.
> >>
> >>
> >> Ari
> >>
> >>
> >> On 8/3/19 12:23am, Nikita Timofeev wrote:
> >>> Uploaded fixed version:
> >>>
> >>> Maven repo: 
> >>> https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> >>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> >>>
> >>> On Thu, Mar 7, 2019 at 1:44 PM Nikita Timofeev
> >>>  wrote:
> >>>> I think I can just redo this release. It's better be safe than sorry.
> >>>>
> >>>> On Thu, Mar 7, 2019 at 6:01 AM John Huss  wrote:
> >>>>> If it's needed at runtime as a dependency it should be bundled. I still
> >>>>> prefer to manually manage jar dependencies most of the time.
> >>>>> On Wed, Mar 6, 2019 at 5:51 PM Aristedes Maniatis  
> >>>>> wrote:
> >>>>>
> >>>>>> What is the general Apache consensus about bundling third party
> >>>>>> libraries? In an age where everyone is accessing libraries from maven
> >>>>>> co-ordinates, is it necessary to include any of them at all? I'd be
> >>>>>> surprised if a single person used them ever from our zip. We aren't
> >>>>>> signing them or providing any oversight of their contents.
> >>>>>>
> >>>>>>
> >>>>>> Ari
> >>>>>>
> >>>>>>
> >>>>>> On 5/3/19 12:18am, Andrus Adamchik wrote:
> >>>>>>> Good catch. I guess since this is a dependency that can be easily
> >>>>>> downloaded from the internet, we can let it slip for now and proceed 
> >>>>>> with
> >>>>>> the release (and fix it in the next release). Does anyone feel strongly
> >>>>>> about this one?
> >>>>>>> Andrus
> >>>>>>>
> >>>>>>>
> >>>>>>>> On Mar 1, 2019, at 7:32 PM, John Huss  wrote:
> >>>>>>>>
> >>>>>>>> The windows zip doesn't include the file
> >>>>>>>> "lib/third-party/slf4j-api-1.7.25.jar" which the mac one does.
> >>>>>>>>
> >>>>>>>> Otherwise it looks good.
> >>>>>>>>
> >>>>>>>> On Fri, Mar 1, 2019 at 5:28 AM Nikita Timofeev <
> >>>>>> ntimof...@objectstyle.com>
> >>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>> Hi all,
> >>>>>>>>>
> >>>>>>>>> Here is long-promised 4.1 beta release with lots of fixes and some
> >>>>>>>>> minor features.
> >>>>>>>>>
> >>>>>>>>> Release notes:
> >>>>>>>>> https://github.com/apache/cayenne/blob/4.1.B1/RELEASE-NOTES.txt
> >>>>>>>>> Maven repo:
> >>>>>>>>>
> >>>>>> https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> >>>>>>>>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> >>>>>>>>>
> >>>>>>>>> Please evaluate it and cast your votes.
> >>>>>>>>>
> >>>>>>>>> --
> >>>>>>>>> Best regards,
> >>>>>>>>> Nikita Timofeev
> >>>>>>>>>
> >>>>
> >>>> --
> >>>> Best regards,
> >>>> Nikita Timofeev
> >>>
> >
> >
> > --
> > Best regards,
> > Nikita Timofeev



--
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.1.B1 release

2019-03-15 Thread Nikita Timofeev
> I cannot launch modeler on my machine with openJDK 11 from the
> adoptopenjdk project. Can others reproduce this issue?

Tested it on two Macs, seems fine. Found some strange crashes if
launching binary
file directly on older MacOS version (10.13.6), but in normal case it
just works.
Maybe you can provide some details? Is Modeler crashes or just nothing happens?
Could you try to launch generic version of the Modeler and some older
Mac versions?

On Fri, Mar 15, 2019 at 7:58 AM Aristedes Maniatis  wrote:
>
> The maven repo isn't available to me. That URL throws a 404. Is that
> just because the folder has no index?
>
> At any rate, I verified the source and OSX bundles. All looks good
> except I cannot launch modeler on my machine with openJDK 11 from the
> adoptopenjdk project. Can others reproduce this issue? I spent a while
> trying to figure out why it isn't running, but no luck yet.
>
>
> Ari
>
>
> On 8/3/19 12:23am, Nikita Timofeev wrote:
> > Uploaded fixed version:
> >
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> >
> > On Thu, Mar 7, 2019 at 1:44 PM Nikita Timofeev
> >  wrote:
> >> I think I can just redo this release. It's better be safe than sorry.
> >>
> >> On Thu, Mar 7, 2019 at 6:01 AM John Huss  wrote:
> >>> If it's needed at runtime as a dependency it should be bundled. I still
> >>> prefer to manually manage jar dependencies most of the time.
> >>> On Wed, Mar 6, 2019 at 5:51 PM Aristedes Maniatis  
> >>> wrote:
> >>>
> >>>> What is the general Apache consensus about bundling third party
> >>>> libraries? In an age where everyone is accessing libraries from maven
> >>>> co-ordinates, is it necessary to include any of them at all? I'd be
> >>>> surprised if a single person used them ever from our zip. We aren't
> >>>> signing them or providing any oversight of their contents.
> >>>>
> >>>>
> >>>> Ari
> >>>>
> >>>>
> >>>> On 5/3/19 12:18am, Andrus Adamchik wrote:
> >>>>> Good catch. I guess since this is a dependency that can be easily
> >>>> downloaded from the internet, we can let it slip for now and proceed with
> >>>> the release (and fix it in the next release). Does anyone feel strongly
> >>>> about this one?
> >>>>> Andrus
> >>>>>
> >>>>>
> >>>>>> On Mar 1, 2019, at 7:32 PM, John Huss  wrote:
> >>>>>>
> >>>>>> The windows zip doesn't include the file
> >>>>>> "lib/third-party/slf4j-api-1.7.25.jar" which the mac one does.
> >>>>>>
> >>>>>> Otherwise it looks good.
> >>>>>>
> >>>>>> On Fri, Mar 1, 2019 at 5:28 AM Nikita Timofeev <
> >>>> ntimof...@objectstyle.com>
> >>>>>> wrote:
> >>>>>>
> >>>>>>> Hi all,
> >>>>>>>
> >>>>>>> Here is long-promised 4.1 beta release with lots of fixes and some
> >>>>>>> minor features.
> >>>>>>>
> >>>>>>> Release notes:
> >>>>>>> https://github.com/apache/cayenne/blob/4.1.B1/RELEASE-NOTES.txt
> >>>>>>> Maven repo:
> >>>>>>>
> >>>> https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> >>>>>>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> >>>>>>>
> >>>>>>> Please evaluate it and cast your votes.
> >>>>>>>
> >>>>>>> --
> >>>>>>> Best regards,
> >>>>>>> Nikita Timofeev
> >>>>>>>
> >>
> >>
> >> --
> >> Best regards,
> >> Nikita Timofeev
> >
> >



--
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.1.B1 release

2019-03-07 Thread Nikita Timofeev
Uploaded fixed version:

Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1028/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/

On Thu, Mar 7, 2019 at 1:44 PM Nikita Timofeev
 wrote:
>
> I think I can just redo this release. It's better be safe than sorry.
>
> On Thu, Mar 7, 2019 at 6:01 AM John Huss  wrote:
> >
> > If it's needed at runtime as a dependency it should be bundled. I still
> > prefer to manually manage jar dependencies most of the time.
> > On Wed, Mar 6, 2019 at 5:51 PM Aristedes Maniatis  wrote:
> >
> > > What is the general Apache consensus about bundling third party
> > > libraries? In an age where everyone is accessing libraries from maven
> > > co-ordinates, is it necessary to include any of them at all? I'd be
> > > surprised if a single person used them ever from our zip. We aren't
> > > signing them or providing any oversight of their contents.
> > >
> > >
> > > Ari
> > >
> > >
> > > On 5/3/19 12:18am, Andrus Adamchik wrote:
> > > > Good catch. I guess since this is a dependency that can be easily
> > > downloaded from the internet, we can let it slip for now and proceed with
> > > the release (and fix it in the next release). Does anyone feel strongly
> > > about this one?
> > > >
> > > > Andrus
> > > >
> > > >
> > > >> On Mar 1, 2019, at 7:32 PM, John Huss  wrote:
> > > >>
> > > >> The windows zip doesn't include the file
> > > >> "lib/third-party/slf4j-api-1.7.25.jar" which the mac one does.
> > > >>
> > > >> Otherwise it looks good.
> > > >>
> > > >> On Fri, Mar 1, 2019 at 5:28 AM Nikita Timofeev <
> > > ntimof...@objectstyle.com>
> > > >> wrote:
> > > >>
> > > >>> Hi all,
> > > >>>
> > > >>> Here is long-promised 4.1 beta release with lots of fixes and some
> > > >>> minor features.
> > > >>>
> > > >>> Release notes:
> > > >>> https://github.com/apache/cayenne/blob/4.1.B1/RELEASE-NOTES.txt
> > > >>> Maven repo:
> > > >>>
> > > https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> > > >>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> > > >>>
> > > >>> Please evaluate it and cast your votes.
> > > >>>
> > > >>> --
> > > >>> Best regards,
> > > >>> Nikita Timofeev
> > > >>>
> > >
>
>
>
> --
> Best regards,
> Nikita Timofeev



-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.1.B1 release

2019-03-07 Thread Nikita Timofeev
I think I can just redo this release. It's better be safe than sorry.

On Thu, Mar 7, 2019 at 6:01 AM John Huss  wrote:
>
> If it's needed at runtime as a dependency it should be bundled. I still
> prefer to manually manage jar dependencies most of the time.
> On Wed, Mar 6, 2019 at 5:51 PM Aristedes Maniatis  wrote:
>
> > What is the general Apache consensus about bundling third party
> > libraries? In an age where everyone is accessing libraries from maven
> > co-ordinates, is it necessary to include any of them at all? I'd be
> > surprised if a single person used them ever from our zip. We aren't
> > signing them or providing any oversight of their contents.
> >
> >
> > Ari
> >
> >
> > On 5/3/19 12:18am, Andrus Adamchik wrote:
> > > Good catch. I guess since this is a dependency that can be easily
> > downloaded from the internet, we can let it slip for now and proceed with
> > the release (and fix it in the next release). Does anyone feel strongly
> > about this one?
> > >
> > > Andrus
> > >
> > >
> > >> On Mar 1, 2019, at 7:32 PM, John Huss  wrote:
> > >>
> > >> The windows zip doesn't include the file
> > >> "lib/third-party/slf4j-api-1.7.25.jar" which the mac one does.
> > >>
> > >> Otherwise it looks good.
> > >>
> > >> On Fri, Mar 1, 2019 at 5:28 AM Nikita Timofeev <
> > ntimof...@objectstyle.com>
> > >> wrote:
> > >>
> > >>> Hi all,
> > >>>
> > >>> Here is long-promised 4.1 beta release with lots of fixes and some
> > >>> minor features.
> > >>>
> > >>> Release notes:
> > >>> https://github.com/apache/cayenne/blob/4.1.B1/RELEASE-NOTES.txt
> > >>> Maven repo:
> > >>>
> > https://repository.apache.org/content/repositories/orgapachecayenne-1028/
> > >>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/
> > >>>
> > >>> Please evaluate it and cast your votes.
> > >>>
> > >>> --
> > >>> Best regards,
> > >>> Nikita Timofeev
> > >>>
> >



-- 
Best regards,
Nikita Timofeev


[VOTE] Cayenne 4.1.B1 release

2019-03-01 Thread Nikita Timofeev
Hi all,

Here is long-promised 4.1 beta release with lots of fixes and some
minor features.

Release notes: https://github.com/apache/cayenne/blob/4.1.B1/RELEASE-NOTES.txt
Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1028/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.B1/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: Cayenne geospacial features

2019-02-24 Thread Nikita Timofeev
> >statement.setString(pos, g.toText());
> >break;
> >}
> >}
> >
> >public Object materializeObject(ResultSet rs, int index, int type) 
> > throws Exception {
> >String wkt = null;
> >switch (type) {
> >case Types.BLOB:
> >wkt = new String(rs.getBytes(index), CHARSET);
> >break;
> >default:
> >wkt = rs.getString(index);
> >break;
> >}
> >if (wkt == null) {
> >return (Geometry) null;
> >}
> >return new WKTReader(new GeometryFactory()).read(wkt);
> >}
> >
> >public Object materializeObject(CallableStatement rs, int index, int 
> > type) throws Exception {
> >String wkt = null;
> >switch (type) {
> >case Types.BLOB:
> >wkt = new String(rs.getBytes(index), CHARSET);
> >break;
> >default:
> >wkt = rs.getString(index);
> >break;
> >}
> >if (wkt == null) {
> >return (Geometry) null;
> >}
> >return new WKTReader(new GeometryFactory()).read(wkt);
> >}
> >
> > }
> >
> >> On 21 Jan 2019, at 08:11, Nikita Timofeev  
> >> wrote:
> >>
> >> Hi All,
> >>
> >> I had an interesting discussion with my colleagues who use PostGIS and
> >> they are really interested in better support from Cayenne. Well,
> >> actually they can’t use Cayenne on that project, as it will be like
> >> using just raw SQL.
> >>
> >> So I was wondering if anyone else actively uses spacial features and
> >> can help to determine missing parts in Cayenne. Maybe we can push this
> >> forward and get some really nice cayenne-spacial module.
> >>
> >> Any feedback is welcome.
> >>
> >> --
> >> Best regards,
> >> Nikita Timofeev
> >>
> >
>


-- 
Best regards,
Nikita Timofeev


Re: Allowing property getters without a "get" prefix on DataObjects

2019-02-07 Thread Nikita Timofeev
Hi Hugi,

"Flu season in Iceland" sounds like a scary movie :) Hope you are well!

I've merged my pull request, so you can do yours. I don't see any
problems with adding some flexibility to BeanAccessor while keeping it
compatible.
And thanks for sharing your use case.

On Wed, Feb 6, 2019 at 7:15 PM Hugi Thordarson  wrote:
>
> Hi Nikita!
> Sorry for the late reply. Flu season in Iceland, basically just happy to be 
> alive :).
>
> I'm working with Maik on this and just tried out your solution. It works 
> perfectly, so thanks!
>
> One point though: We would of course prefer to maintain as much of the 
> behaviour already present in BeanAccessor, but it's proving a bit problematic 
> to implement our own BeanAccessor this way, since the current one uses a bit 
> of protected/friendly logic from org.apache.cayenne.reflect. This can be 
> worked around by putting our own BeanAccessor implementation in a package 
> with that name (or duplicating the required logic), but obviously, that's a 
> bit … messy.
>
> I propose that BeanAccessor gets a new constructor which accepts 
> isGetterName, getGetterName and setterName as parameters, that the current 
> constructor can invoke with the current values. That way, our new 
> non-prefixed BeanAccessor implementation could just subclass BeanAccessor and 
> wouldn't have to touch any logic related to reading or setting property 
> values, it would only pass in our preferred property name structure.
>
> At least that's one idea. If you agree with this, I'd be more than happy to 
> submit a PR with that modification once your PR has been merged.
>
> Cheers, and thanks again,
> - hugi
>
>
>
> > On 4 Feb 2019, at 13:12, Nikita Timofeev  wrote:
> >
> > Hi Maik.
> >
> > As I'm the one researched this, let me answer :) I failed to make
> > BeanAccessor pluggable last time because I realized that it's deep
> > inside code not managed by Cayenne DI.
> > But looking again at it I wonder will this straightforward solution
> > [1] solve your problems?
> > And I'm really interested what is your use case? Do you perform lots
> > of in-memory filtering and/or calculations using Cayenne Expressions?
> >
> > [1] 
> > https://github.com/apache/cayenne/pull/363/files?utf8=✓=unified#diff-4f928c7d2ac0e22cabde0c9732de774fR214
> >
> > On Thu, Jan 31, 2019 at 7:22 PM Maik Musall  wrote:
> >>
> >> Hi Andrus,
> >>
> >> did you have a chance to look at this yet? The reason I ask is that our 
> >> application hit the memory limit this week again (-Xmx at 96 GB), and 
> >> according to some profiling, almost half of that is used up by HashMap 
> >> nodes. So we're really eager to upgrade to Cayenne 4.1 to be able to use 
> >> field-based DataObjects, but this is preventing us from going ahead.
> >>
> >> Thanks
> >> Maik
> >>
> >>
> >>
> >>> Am 25.09.2018 um 16:23 schrieb Andrus Adamchik :
> >>>
> >>>> "Should Cayenne by default work without prefixed accessors".
> >>>
> >>> My answer to this : "By default, no. As a fallback or a custom strategy, 
> >>> possibly."
> >>>
> >>> I actually agree about Java beans. They are almost irrelevant now. And I 
> >>> wish Java gets "data classes" and some transparent form of "properties".
> >>>
> >>> As things stand now though, there's no common established alternative 
> >>> based on a naming convention that we can safely hardcode without causing 
> >>> grief for someone because they didn't expect that their method would be 
> >>> called when evaluating expressions. Hence my preference for a DI fix.
> >>>
> >>> So how about this... Unless someone else steps in by then, let me 
> >>> brainstorm it with Nikita a couple of weeks from now and see if we can do 
> >>> a DI solution. It is not nearly as involved as it appears.
> >>>
> >>> Andrus
> >>>
> >>>
> >>>> On Sep 25, 2018, at 9:59 AM, Hugi Thordarson  wrote:
> >>>>
> >>>> Hi Andrus and thanks for the reply,
> >>>>
> >>>> allowing replacement of the entire reflection strategy is certainly nice 
> >>>> and would allow me to make the customizations I need.
> >>>>
> >>>> However, if it's OK with you, rather than discuss implementation 
> >>>> details, I'd like to take two steps back and revert to the more 
> >>>> philosophical des

Re: Allowing property getters without a "get" prefix on DataObjects

2019-02-04 Thread Nikita Timofeev
gt;> framework.
> >>>>>>>
> >>>>>>> Cheers,
> >>>>>>> - hugi
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>> On 26 Sep 2017, at 12:01, Michael Gentry  wrote:
> >>>>>>>>
> >>>>>>>> Hi Hugi,
> >>>>>>>>
> >>>>>>>> Let me try to sell you on the "get" prefix.  :-)
> >>>>>>>>
> >>>>>>>> (I did a lot of WebObjects/EOF in the past, in Objective-C and Java, 
> >>>>>>>> so I
> >>>>>>>> understand the reluctance.)
> >>>>>>>>
> >>>>>>>> * The "get" prefix is part of the JavaBeans standard/contract.  With 
> >>>>>>>> the
> >>>>>>>> exception of "is" for booleans (with a little "b").
> >>>>>>>>
> >>>>>>>> * There are tons of Java frameworks out there that expect and 
> >>>>>>>> utilize the
> >>>>>>>> JavaBeans contract, so it is great for folding external frameworks 
> >>>>>>>> into
> >>>>>>>> your code.  Or folding Cayenne into other frameworks, such as 
> >>>>>>>> Tapestry.  I
> >>>>>>>> can specify Cayenne object/relationship paths in Tapestry (and other
> >>>>>>>> frameworks) such as
> >>>>>>>> t:value="currentItem.resourceSummary.grossCost.costs.continuingFootnote"
> >>>>>>>> (real example).  Since Tapestry expects the JavaBeans contract and 
> >>>>>>>> Cayenne
> >>>>>>>> provides it, this works flawlessly.
> >>>>>>>>
> >>>>>>>> * In Eclipse (and others, I'm sure) I can do anObject.get[pause or
> >>>>>>>> control-space] and see all the getters associated with that object.
> >>>>>>>> Without the get prefix, they are spread out a-z and therefore you 
> >>>>>>>> can't get
> >>>>>>>> as concise a list.
> >>>>>>>>
> >>>>>>>> mrg
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Tue, Sep 26, 2017 at 7:02 AM, Hugi Thordarson  
> >>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>> Hi all
> >>>>>>>>>
> >>>>>>>>> Touching on an old subject that has now become more important with
> >>>>>>>>> field-based Data Objects.
> >>>>>>>>>
> >>>>>>>>> All of my DataObjects use accessor methods without the 
> >>>>>>>>> "get"-prefix. This
> >>>>>>>>> was fine with Map Based data objects (where a MapAccessor would get
> >>>>>>>>> property values by name), but now that my objects are field based, 
> >>>>>>>>> along
> >>>>>>>>> comes BeanAccessor which is hardcoded to have every getter prefixed.
> >>>>>>>>>
> >>>>>>>>> I propose that BeanAccessor be modified to allow accessor methods 
> >>>>>>>>> without
> >>>>>>>>> the "get"-prefix. Methods with "get" would get precedence, but if 
> >>>>>>>>> no method
> >>>>>>>>> with a "get"-prefix exists, check for the existence of a method 
> >>>>>>>>> with only
> >>>>>>>>> the property name.
> >>>>>>>>>
> >>>>>>>>> Although it's a minimal change in code, I realise it comes with a 
> >>>>>>>>> bit of
> >>>>>>>>> potential baggage WRT testing. But this is not just to scratch a 
> >>>>>>>>> personal
> >>>>>>>>> itch; once Cayenne 4.0 is out I want to start a large scale 
> >>>>>>>>> introduction of
> >>>>>>>>> Cayenne to the EOF world where the get prefix is generally not 
> >>>>>>>>> liked and
> >>>>>>>>> this change would have a big appeal. Besides, I'm not a big fan of 
> >>>>>>>>> the
> >>>>>>>>> get-prefix myself, I find it a bit redundant :).
> >>>>>>>>>
> >>>>>>>>> An alternative would be to adhere to the Bean standard, and make
> >>>>>>>>> BeanAccessor read bean meta information (usually specified in 
> >>>>>>>>> *BeanInfo
> >>>>>>>>> classes) and get names of getter/setter methods from there. But 
> >>>>>>>>> that would
> >>>>>>>>> be a much larger change than just checking for a method with 
> >>>>>>>>> propertyName
> >>>>>>>>> if the getPropertyName method doesn't exist.
> >>>>>>>>>
> >>>>>>>>> What do you think?
> >>>>>>>>>
> >>>>>>>>> Cheers,
> >>>>>>>>> - hugi
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>


-- 
Best regards,
Nikita Timofeev


Cayenne geospacial features

2019-01-20 Thread Nikita Timofeev
Hi All,

I had an interesting discussion with my colleagues who use PostGIS and
they are really interested in better support from Cayenne. Well,
actually they can’t use Cayenne on that project, as it will be like
using just raw SQL.

So I was wondering if anyone else actively uses spacial features and
can help to determine missing parts in Cayenne. Maybe we can push this
forward and get some really nice cayenne-spacial module.

Any feedback is welcome.

--
Best regards,
Nikita Timofeev


Re: New git location

2019-01-16 Thread Nikita Timofeev
Thanks Ari!
Everything works great.

On Wed, Jan 16, 2019 at 8:31 AM Andrus Adamchik  wrote:
>
> > The work is done and you can find web browser views here:
>
> Thanks!
>
> > You can also commit directly to github: https://github.com/apache/cayenne
>
> Nice.
>
> Andrus
>
>
> > On Jan 16, 2019, at 4:03 AM, Aristedes Maniatis  wrote:
> >
> > The work is done and you can find web browser views here:
> >
> >
> > https://gitbox.apache.org/repos/asf?p=cayenne.git
> >
> > https://gitbox.apache.org/repos/asf?p=cayenne-modeler.git
> >
> > https://gitbox.apache.org/repos/asf?p=cayenne-website.git
> >
> >
> > You can also commit directly to github: https://github.com/apache/cayenne
> >
> >
> > To make this work, all committers should first ensure they have 2FA enabled 
> > at github and then go here:
> >
> > https://gitbox.apache.org/setup/
> >
> >
> > I've just tested the whole fork/pull request/merge process and it seems to 
> > work well. https://github.com/apache/cayenne-website/pull/2
> >
> >
> > Ari
> >
>


-- 
Best regards,
Nikita Timofeev


Re: Possible regression (at least for me :D) in 4.2.M1-SNAPSHOT

2019-01-09 Thread Nikita Timofeev
Hi Lon.

Thanks for reporting this!
There is completely new SelectTranslator in 4.2 so there can be some
regressions. Will look at this one.

On Wed, Jan 9, 2019 at 11:49 PM Lon Varscsak  wrote:
>
> I'm experiencing crazy slow query times since I updated to this version.
> The only thing I see is that it's structuring the queries slightly
> differently.  For example:  4.1.M3-SNAPSHOT:
>
> SELECT DISTINCT t0.birthday, t0.contact_id, t0.contact_lead_source,
> t0.contact_status, t0.create_date, t0.glove_user, t0.graduation_date,
> t0.name_first, t0.name_last, t0.name_middle, t0.name_prefix,
> t0.name_salutation, t0.name_tag, t0.national_provider_id, t0.notes,
> t0.professional_designation, t0.specialty FROM customer.dbo.contact t0
> *JOIN* customer.dbo.contact_affiliations t1 ON (t0.contact_id =
> t1.contact_id) WHERE t1.company_id = ? AND t1.contact_id = ?
>
> and now:
>
> SELECT DISTINCT t0.birthday, t0.contact_id, t0.contact_lead_source,
> t0.contact_status, t0.create_date, t0.glove_user, t0.graduation_date,
> t0.name_first, t0.name_last, t0.name_middle, t0.name_prefix,
> t0.name_salutation, t0.name_tag, t0.national_provider_id, t0.notes,
> t0.professional_designation, t0.specialty FROM customer.dbo.contact t0 *LEFT
> JOIN* customer.dbo.contact_affiliations t1 ON t0.contact_id = t1.contact_id
> WHERE *( ( t1.company_id = ? ) AND ( t1.contact_id = ? ) )*
>
> The only thing I can think is that Sybase's (my DB) query optimizer isn't
> happy with the LEFT JOIN.  In DbPathProcessor it's always specifying a
> JoinType.LEFT_OUTER for relationship joins...this doesn't seem right to me,
> but I might be misunderstanding what's going on.
>
> Thoughts?
>
> -Lon



-- 
Best regards,
Nikita Timofeev


[ANN] Apache Cayenne 4.0.1 release

2018-12-28 Thread Nikita Timofeev
I'm glad to announce release of Apache Cayenne 4.0.1

This is a maintenance release of 4.0 branch with some bug fixes and
minor features in Cayenne Modeler. See full change list here [1]

Thanks for using Cayenne and making it better.

[1] https://cayenne.apache.org/2018/12/cayenne-401-released/

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.0.1 release

2018-12-28 Thread Nikita Timofeev
Here is my +1

And final results are following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Nikita Timofeev (PMC): +1

Thanks everyone!


On Fri, Dec 21, 2018 at 10:43 AM Andrus Adamchik  wrote:
>
> All my checks pass. I am +1.
>
> > On Dec 20, 2018, at 4:36 PM, Nikita Timofeev  
> > wrote:
> >
> > Hi all,
> >
> > This is a maintenance release of 4.0 branch with minor features in
> > Modeler (backported from 4.1).
> >
> > Maven repo: 
> > https://repository.apache.org/content/repositories/orgapachecayenne-1027/
> > Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.1/
> >
> > Please evaluate it and cast your votes.
> >
> > --
> > Best regards,
> > Nikita Timofeev
>


--
Best regards,
Nikita Timofeev


[VOTE] Cayenne 4.0.1 release

2018-12-20 Thread Nikita Timofeev
Hi all,

This is a maintenance release of 4.0 branch with minor features in
Modeler (backported from 4.1).

Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1027/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0.1/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: Cayenne 4.2.M1

2018-09-05 Thread Nikita Timofeev
On Mon, Sep 3, 2018 at 10:46 AM, Aristedes Maniatis  wrote:
> Terrific. So a 4.1b1 release then?

Hope so :)

> Interesting. Do you mean a new AST for processing the query string? Or
> something else?

For now it's AST (with builder-style API [1]) for building query
string from SelectQuery object.

[1] https://issues.apache.org/jira/browse/CAY-2466

-- 
Best regards,
Nikita Timofeev


Cayenne 4.2.M1

2018-08-28 Thread Nikita Timofeev
Hi all,

I have some changes [*] that I don't want to push into 4.1 to not delay it.
So I want to push 4.1 into a stable branch and switch master to 4.2.M1 version.
Any thoughts?

[*] here are few I've been working on:
- new select translator
- subqueries
- type-safe property API

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.0 release, second try

2018-08-16 Thread Nikita Timofeev
Great!

We have more than enough votes for this release:

John Huss (PMC): +1
Michael Gentry (PMC): +1
Andrus Adamchik (PMC): +1
Aristedes Maniatis (PMC): +1
Nikita Timofeev (PMC): +1

I'll perform final steps.

Congratulations everyone! We finally have Cayenne 4.0 ready!



On Tue, Aug 14, 2018 at 4:33 AM, Aristedes Maniatis  wrote:
> I'll add to thatthe modeler seems happy on OSX with Java 10. I did a bunch
> of checks on hashes and the content of the source folder. Other than an old
> copyright year in the NOTICE file, everything looks great.
>
> I was unable to test against our commercial product since we are already on
> 4.1 in production.
>
> +1
>
>
> Nice work on the release process Nikita.
>
>
> Ari
>
>
>
> On 14/8/18 4:18am, Andrus Adamchik wrote:
>>
>> Just evaluated the release against my checklist:
>>
>>   MD5/SHA512 matches (using cayenne-release-tools script)
>>   Signature checks (using cayenne-release-tools script)
>>   rat passes
>>   builds from source
>>   Modeler runs on OS X
>>   Cross-platform Modeler runs on OS X
>>   Modeler runs on Windows
>>   Upgrade LinkRest/LinkMove using the Maven repo.
>>
>> Everything passes. I am +1.
>>
>> Andrus
>>
>>
>>> On Aug 6, 2018, at 4:52 PM, Nikita Timofeev 
>>> wrote:
>>>
>>> Hi all,
>>>
>>> Here is a second try of Cayenne 4.0 final release
>>>
>>> Maven repo:
>>> https://repository.apache.org/content/repositories/orgapachecayenne-1026
>>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0/
>>>
>>> Please evaluate it and cast your votes.
>>>
>>> --
>>> Best regards,
>>> Nikita Timofeev



-- 
Best regards,
Nikita Timofeev


[VOTE] Cayenne 4.0 release, second try

2018-08-06 Thread Nikita Timofeev
Hi all,

Here is a second try of Cayenne 4.0 final release

Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1026
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.0 release

2018-08-06 Thread Nikita Timofeev
To not confuse anyone I'm closing this vote and will open new one once
I'll prepare everything.

On Mon, Aug 6, 2018 at 2:27 PM, Nikita Timofeev
 wrote:
> Ok, I'll rollback then and make release with clean docs. Thanks for catch!
>
> On Sun, Aug 5, 2018 at 11:26 AM, Andrus Adamchik  
> wrote:
>> Hi Nikita,
>>
>> I noticed the doc folder contains two files "var.html" and "var.pdf" that 
>> seem like random garbage. This is an issue on all distros. For a milestone 
>> release I'd say this wouldn't have been a blocker. But for the 4.0-final my 
>> vote would be to clean it up.
>>
>> Andrus
>>
>>
>>> On Aug 1, 2018, at 3:32 PM, Nikita Timofeev  
>>> wrote:
>>>
>>> Hi all,
>>>
>>> Here is final version of Cayenne 4.0
>>>
>>> Maven repo: 
>>> https://repository.apache.org/content/repositories/orgapachecayenne-1025/
>>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0/
>>>
>>> Please evaluate it and cast your votes.
>>>
>>> --
>>> Best regards,
>>> Nikita Timofeev
>>
>
>
>
> --
> Best regards,
> Nikita Timofeev



-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.0 release

2018-08-06 Thread Nikita Timofeev
Ok, I'll rollback then and make release with clean docs. Thanks for catch!

On Sun, Aug 5, 2018 at 11:26 AM, Andrus Adamchik  wrote:
> Hi Nikita,
>
> I noticed the doc folder contains two files "var.html" and "var.pdf" that 
> seem like random garbage. This is an issue on all distros. For a milestone 
> release I'd say this wouldn't have been a blocker. But for the 4.0-final my 
> vote would be to clean it up.
>
> Andrus
>
>
>> On Aug 1, 2018, at 3:32 PM, Nikita Timofeev  
>> wrote:
>>
>> Hi all,
>>
>> Here is final version of Cayenne 4.0
>>
>> Maven repo: 
>> https://repository.apache.org/content/repositories/orgapachecayenne-1025/
>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0/
>>
>> Please evaluate it and cast your votes.
>>
>> --
>> Best regards,
>> Nikita Timofeev
>



-- 
Best regards,
Nikita Timofeev


[VOTE] Cayenne 4.0 release

2018-08-01 Thread Nikita Timofeev
Hi all,

Here is final version of Cayenne 4.0

Maven repo: 
https://repository.apache.org/content/repositories/orgapachecayenne-1025/
Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.0/

Please evaluate it and cast your votes.

-- 
Best regards,
Nikita Timofeev


Re: 4.0 final release

2018-07-31 Thread Nikita Timofeev
Seems like I can proceed with 4.0 final release :)


On Tue, Jul 10, 2018 at 6:32 PM, Maik Musall  wrote:
> Hi,
>
> it's been totally stable here in production, so no objection from me.
>
> MAik
>
>
>> Am 10.07.2018 um 17:03 schrieb Nikita Timofeev :
>>
>> Hi all,
>>
>> Is it time for Cayenne 4.0 final release?
>> 4.0.RC is out for couple of months and I haven't seen much feedback
>> (only 6 issues fixed for now).
>> Any thoughts?
>>
>> --
>> Best regards,
>> Nikita Timofeev
>



-- 
Best regards,
Nikita Timofeev


[ANN] Cayenne 3.1.3 and 4.1.M2 releases

2018-07-25 Thread Nikita Timofeev
I'm glad to announce two releases of Apache Cayenne.

3.1.3 - is a maintenance release with a couple of bug fixes [1]

4.1.M2 - is a much more interesting one, with cool new features. With
this release 4.1 version should be stable enough to try it in your
projects (remember to check upgrade notes [2] first).
It introduces completely new Reverse Engineering UI in Modeler,
improved transaction control, minor API additions (like prefetch API
for SQLTemplate and SQLSelect) and numerous other fixes and
improvements.
See release notes [3] for full change list.

Thanks everyone for using Cayenne and making it better!

[1] 
https://github.com/apache/cayenne/blob/3.1.2/docs/doc/src/main/resources/RELEASE-NOTES.txt
[2] https://github.com/apache/cayenne/blob/4.1.M2/UPGRADE.txt
[3] https://github.com/apache/cayenne/blob/4.1.M2/RELEASE-NOTES.txt

-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 3.1.3 release

2018-07-23 Thread Nikita Timofeev
Thanks Ari for the update.
So I think we have everything to close vote and proceed with the release.

Official voting results (with my +1):

Andrus Adamchik (PMC): +1
John Huss (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

Thanks everyone!

I'll perform remaining steps.


On Sun, Jul 22, 2018 at 3:16 PM, Aristedes Maniatis  wrote:
> I've had some work dramas come up which will take all my energy to resolve
> over the next few weeks, so I doubt I'll be able to properly review either
> of these releases properly in a reasonable timeframe.
>
> Ari
>
>
> On 11/7/18 9:38pm, Nikita Timofeev wrote:
>>
>> Hi all.
>>
>> This is a maintenance release of 3.1 version.
>>
>> Maven repo:
>> https://repository.apache.org/content/repositories/orgapachecayenne-1022/
>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/3.1.3/
>>
>> Please evaluate it and cast your votes.
>>
>



-- 
Best regards,
Nikita Timofeev


Re: [VOTE] Cayenne 4.1.M2 release

2018-07-23 Thread Nikita Timofeev
Thanks for another catch :)
I think this is a result of maven-assembly-plugin update to the latest
version. Will dig this later.

Anyway we have everything ready to publish this release.

With my +1 voting results are following:

John Huss (PMC): +1
Andrus Adamchik (PMC): +1
Michael Gentry (PMC): +1
Nikita Timofeev (PMC): +1

Thanks everyone!
I'll perform remaining release steps.

On Sun, Jul 22, 2018 at 4:39 PM, Michael Gentry  wrote:
> Hi Nikita,
>
> I noticed that cayenne-4.1.M2-win.zip doesn't create a cayenne-4.1.M2-win
> directory when you unzip it, unlike cayenne-3.1.3-win.zip, which creates
> a cayenne-3.1.3-win directory to unzip the distribution into.  Is this
> intentional?  I think it would be preferable to create a directory instead
> of cluttering the directory where the zip resides.  This isn't a
> release-stopper, though.
>
> Outside of that, my release checks[1] passed, so +1.
>
> Thanks,
>
> mrg
>
> [1] JDK 8 only and macOS High Sierra only.
>
> On Thu, Jul 12, 2018 at 4:10 AM Nikita Timofeev 
> wrote:
>
>> Hi all,
>>
>> This milestone release of Cayenne 4.1 includes around 60 fixes and new
>> features [1].
>>
>> Maven repo:
>> https://repository.apache.org/content/repositories/orgapachecayenne-1024/
>> Assemblies: https://dist.apache.org/repos/dist/dev/cayenne/4.1.M2/
>>
>> Please evaluate it and cast your votes.
>>
>> [1] https://github.com/apache/cayenne/blob/4.1.M2/RELEASE-NOTES.txt
>>
>> --
>> Best regards,
>> Nikita Timofeev
>>
>
>>



-- 
Best regards,
Nikita Timofeev


  1   2   >