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

Tatu Saloranta edited comment on CASSANDRA-15248 at 10/12/21, 5:03 PM:
-----------------------------------------------------------------------

Looking at incompatibilities, alas, it gets tricky.

The immediate problem is `Futures.transform()` (used in 2 non-test and 1 test 
class): while it translates to un-deprecated `Futures.transformAsync()`, latter 
is only introduced in 19.0 but former immediately deleted from 20.0 (thanks 
Guava).

Further, something somewhere in tests refers to `FutureFallback` which is also 
removed from 20.0. That would also need to be patched.

So maybe my idea of small changes to allow `cassandra-all` to work with newer 
versions (even if not upgrading dependency to require) is unworkable.

Added notes just in case it helps anyone figure out a way. It would definitely 
be nice if Guava version dependency was not as strict as it now is.

 EDIT:

`FutureFallback` likely comes via "cassandra-driver-core", version 3.0.1: 
upgrading this would likely resolve it. There is a small compilation problem 
from a test class if upgrading that dependency, likely simple to resolve (i.e. 
this one would not be a blocker).

Looks like "cassandra-driver-core" 3.2.0 does resolve these, see – 
[https://datastax-oss.atlassian.net/browse/JAVA-1328] – but whether using that 
version otherwise works seems unsure. Based on version it'd make sense it did 
but...

EDIT2:

To replace `CharMatcher.DIGIT` (removed from guava 26?) one could use 
`CharMatcher.digit()` added in 19.0. So even that relatively small improvement 
would require small bump to Guava version.

 


was (Author: cowtowncoder):
Looking at incompatibilities, alas, it gets tricky.

The immediate problem is `Futures.transform()` (used in 2 non-test and 1 test 
class): while it translates to un-deprecated `Futures.transformAsync()`, latter 
is only introduced in 19.0 but former immediately deleted from 20.0 (thanks 
Guava).

Further, something somewhere in tests refers to `FutureCallback` which is also 
removed from 20.0. That would also need to be patched.

So maybe my idea of small changes to allow `cassandra-all` to work with newer 
versions (even if not upgrading dependency to require) is unworkable.

Added notes just in case it helps anyone figure out a way. It would definitely 
be nice if Guava version dependency was not as strict as it now is.

 EDIT:

`FutureCallback` likely comes via "cassandra-driver-core", version 3.0.1: 
upgrading this would likely resolve it. There is a small compilation problem 
from a test class if upgrading that dependency, likely simple to resolve (i.e. 
this one would not be a blocker).

Looks like "cassandra-driver-core" 3.2.0 does resolve these, see – 
[https://datastax-oss.atlassian.net/browse/JAVA-1328] – but using that version 
otherwise works seems unsure. Based on version it'd make sense it did but...

EDIT2:

To replace `CharMatcher.DIGIT` (removed from guava 26?) one could use 
`CharMatcher.digit()` added in 19.0. So even that relatively small improvement 
would require small bump to Guava version.





 

> Upgrade Guava to latest on master branch
> ----------------------------------------
>
>                 Key: CASSANDRA-15248
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15248
>             Project: Cassandra
>          Issue Type: Task
>          Components: Build, Dependencies, Packaging
>            Reporter: Abhijit Sarkar
>            Priority: Normal
>
> Upgrade Guava to latest on master branch. See 
> https://issues.apache.org/jira/browse/CASSANDRA-15245.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to