cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "mck (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-14563) Add animalsniffer to build to ensure runtime jdk compatbility
Date Sun, 29 Jul 2018 06:32:00 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-14563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16561032#comment-16561032
] 

mck edited comment on CASSANDRA-14563 at 7/29/18 6:31 AM:
----------------------------------------------------------

By "compile-time" i was thinking about local compile-time before the developer does a 'git
push'.

 - Providing a CircleCI build job provides support compiling Cassandra-2.2 with jdk1.7.
 - Using AnimalSniffer in the ant build ensures we support runing Cassandra-2.2 with jdk1.7.

These are not the same thing. And the later is the specific requirement here.

While using CircleCI does solve both, it is a slower feedback loop for developers. Developers
don't typically remember to *also* compile with jdk1.7 locally before pushing their patch.

AnimalSniffer solves just the second problem, and provides a faster feedback loop for developers.


And we do not need to support compiling with jdk1.7, and we do not cut releases with jdk1.7
afaik. 
With the use of AnimalSniffer we could altogether forbid building Cassandra-2.2 with jdk1.7,
making life simpler for us by taking a variable out of the building environment.

[~jasobrown], having added support for java11, what are you thoughts here? Should we be trying
to make life simpler for ourselves by focusing on what runtime java versions we support while
narrowing which versions we support building with?


was (Author: michaelsembwever):
By "compile-time" i was thinking about local compile-time before the developer does a 'git
push'.

 - Providing a CircleCI build job provides support compiling Cassandra-2.2 with jdk1.7.
 - Using AnimalSniffer in the ant build ensures we support runing Cassandra-2.2 with jdk1.7.

These are not the same thing. And the later is the specific requirement here.

While using CircleCI does solve both, it is a slower feedback loop for developers. Developers
don't typically remember to *also* compile with jdk1.7 locally before pushing their patch.

AnimalSniffer solves just the second problem, and provides a faster feedback loop for developers.


And we do not need to support compiling with jdk1.7, and we do no cut releases with jdk1.7
afaik. 
With the use of AnimalSniffer we could altogether forbid building Cassandra-2.2 with jdk1.7,
making life simpler for us by taking a variable out of the building environment.

[~jasobrown], having added support for java11, what are you thoughts here? Should we be trying
to make life simpler for ourselves by focusing on what runtime java versions we support while
narrowing which versions we support building with?

> Add animalsniffer to build to ensure runtime jdk compatbility
> -------------------------------------------------------------
>
>                 Key: CASSANDRA-14563
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14563
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Build
>            Reporter: mck
>            Assignee: Sumanth Pasupuleti
>            Priority: Minor
>              Labels: lhf
>
> Cassandra-2.2 still supports running on JDK1.7
> No tests check this though, as all build and test with JDK1.8
> Adding the ant animalsniffer task can check that jdk1.8 classes or methods are not used
accidentally.
> ref: http://www.mojohaus.org/animal-sniffer/animal-sniffer/index.html



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


Mime
View raw message