-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Guava ImmutableIntArray
/ ImmutableDoubleArray
#157
base: 2.18
Are you sure you want to change the base?
Conversation
Add serde support for ImmutableIntArray and ImmutableDoubleArray.
LGTM, but have you already signed the CLA? |
ImmutableIntArray
/ ImmutableDoubleArray
Ah yes -- happy to help get this reviewed, but before merging will need CLA (if not already sent earlier; only needs to be done once before the first contribution). It's this: https://github.com/FasterXML/jackson/blob/master/contributor-agreement.pdf and the usual way is to print, fill & sign, scan/photo, email to |
Sure, I can get the CLA signed; but also I realized that |
Ok, one immediate problem tho: looks like our CI is still assuming min Guava level of 20, and So: do we want to bump minimum supported Guava to 22 for Jackson 2.18? EDIT: filed #158 |
@kilink One possibility: postpone Guava baseline upgrade to Jackson 2.19, merge this in after 2.18.0 released? This gives us more time. |
I'm fine with that. Not really an urgent need for this, I just saw it as a gap. I can continue just using the custom serializers / deserializers directly for now. |
Would like to proceed with this, wrt merging into 2.19, but need 2 things:
with that, I'd be happy to merge this! |
Add serde support for ImmutableIntArray and ImmutableDoubleArray.
Note that for simplicity, the deserializers currently delegate to the implementations in PrimitiveArrayDeserializers, passing the deserialize primitive arrays to the respective
copyOf
factory methods. The benefit is that all of the various edge cases of reading ints / doubles is handled already in those implementations. The downside is that we make an extra copy of the array when we pass it to thecopyOf
method, but at least there is no waste in the array sizing in this case.