Commit Graph

1356 Commits

Author SHA1 Message Date
jwilson
d8743eeef1 Limit to 31 levels of nested structure.
With the implicit enclosing document this is 32 levels total. The limit
is arbitrary but sufficient - deeper limits yield code that fails with
StackOverflowExceptions during the depth-first traversal.

We were previously broken in JsonWriter on this - the code we added to
support path building was accessing the top of the stack before the
stack had been resized, causing a crash. Because this crash has existed
forever without much outcry we know the limit is likely sufficient for
our existing users.

Closes: https://github.com/square/moshi/issues/189
2016-10-15 13:54:48 -04:00
Jake Wharton
e506abbc78 Merge pull request #201 from square/jwilson.1015.fix_enclosed_types
Fix enclosed types with adapter methods.
2016-10-15 12:29:41 -04:00
jwilson
2b5301f737 Fix enclosed types with adapter methods.
This was broken becase reflection was providing owner types but our
API didn't have a way to specify them.

Closes: https://github.com/square/moshi/issues/148
2016-10-15 10:03:01 -04:00
Jake Wharton
fce8fc6976 Merge pull request #200 from square/jwilson.1014.more_jsonadapter_tests
Test more cases of injecting JsonAdapters.
2016-10-14 10:40:00 -04:00
jwilson
d6b982629d Test more cases of injecting JsonAdapters. 2016-10-14 08:30:25 -04:00
Jesse Wilson
c56370257e Merge pull request #197 from square/jwilson.1013.json_adapter_parameters
Permit JsonAdapters to be injected in toJson(), fromJson() methods.
2016-10-14 08:11:16 -04:00
jwilson
afbaa6a8ef Permit JsonAdapters to be injected in toJson(), fromJson() methods.
Closes: https://github.com/square/moshi/issues/142
2016-10-14 08:05:32 -04:00
Jake Wharton
059e8ef286 Merge pull request #198 from square/jwilson.1013.standard_prefixes
Omit Kotlin and Scala platform types from the class adapter.
2016-10-13 22:16:39 -04:00
Jake Wharton
257d2a0862 Merge pull request #199 from square/jwilson.1013.drop_private_url
Don't link to Google's internal bugtracker.
2016-10-13 22:15:44 -04:00
jwilson
6df7fa4dd5 Don't link to Google's internal bugtracker.
Closes: https://github.com/square/moshi/issues/122
2016-10-13 22:09:19 -04:00
jwilson
10703aae65 Omit Kotlin and Scala platform types from the class adapter.
It's unlikely that these will be stable, or that they'll do anything reasonable.

Closes: https://github.com/square/moshi/issues/185
2016-10-13 22:06:45 -04:00
Jesse Wilson
4847160540 Merge pull request #196 from square/jw/okio
Okio 1.11.0.
2016-10-12 08:25:07 -04:00
Jake Wharton
e01c89cef6 Okio 1.11.0. 2016-10-12 01:09:54 -04:00
Jesse Wilson
56ae2758bf Merge pull request #178 from square/jw/encoding-exception
Differentiate encoding problems with a specific exception.
2016-07-08 22:31:36 -04:00
Jake Wharton
47972ba577 Differentiate encoding problems with a specific exception. 2016-07-08 21:19:55 -04:00
Jesse Wilson
bdacdad6ee Merge pull request #177 from square/jw/latest-okio
Point at the latest Okio.
2016-07-08 18:57:15 -04:00
Jake Wharton
42caa166f4 Point at the latest Okio. 2016-07-08 18:01:08 -04:00
Jesse Wilson
6d54252527 Merge pull request #168 from square/jw/cause
Propagate adapter method exception cause.
2016-06-06 09:08:47 -07:00
Jake Wharton
d5c646f93e Propagate adapter method exception cause. 2016-06-06 01:48:03 -04:00
Jake Wharton
a9d73f27d8 Merge pull request #166 from square/jwilson.0602.invalid_escapes
Fail on invalid escapes.
2016-06-02 10:12:59 -04:00
jwilson
14549725ef Fail on invalid escapes.
Related to https://github.com/google/gson/issues/824
2016-06-02 09:31:32 -04:00
Jesse Wilson
b81d202093 Merge pull request #164 from satoshun/master
Add Override annotation
2016-05-28 22:56:07 -04:00
SatoShun
067077822d Add Override annotation 2016-05-29 02:16:41 +00:00
jwilson
23e6d36a8b [maven-release-plugin] prepare for next development iteration 2016-05-28 14:27:08 -04:00
jwilson
5f0e509b8d [maven-release-plugin] prepare release moshi-parent-1.2.0 2016-05-28 14:27:04 -04:00
jwilson
1537e03b77 Update changelog for Moshi 1.2.0. 2016-05-28 14:25:36 -04:00
Jake Wharton
c4896fdaed Merge pull request #160 from square/jwilson.0502_okio180
Upgrade to Okio 1.8.0.
2016-05-02 01:34:48 -04:00
jwilson
3477c4d743 Upgrade to Okio 1.8.0. 2016-05-02 00:48:36 -04:00
Jake Wharton
c5a8a302dc Merge pull request #158 from square/jw/boxed-boolean
Add writer value overload for boxed booleans.
2016-04-29 17:19:58 -04:00
Jake Wharton
360006b7bf Add writer value overload for boxed booleans.
Autoboxing resolves boxed longs and doubles to value(Number), but a boxed boolean would otherwise resolve to value(boolean) with an implicit call to booleanValue() which has the potential to throw NPEs.
2016-04-29 17:16:52 -04:00
Jake Wharton
23fb01a685 Merge pull request #157 from square/jwilson_0424_more_aggressive_canonicalize
Be more aggressive about canonicalizing types.
2016-04-24 13:15:37 -04:00
jwilson
13ec26a96d Be more aggressive about canonicalizing types.
Unfortunately we shouldn't be relying on equals() and hashCode() of the
default implementations anywhere.
2016-04-24 10:05:03 -04:00
jwilson
d203cf741a Merge branch 'kotucz-android_parametrized_type_workaround'
* kotucz-android_parametrized_type_workaround:
  Workaround for Android ParameterizedType implementation bug
2016-04-24 09:23:10 -04:00
Tomas Kotula
739efea61d Workaround for Android ParameterizedType implementation bug 2016-04-24 09:22:50 -04:00
Jake Wharton
c5d406592d Merge pull request #156 from square/jwilson_0423_track_options_api
Track Okio snapshot API change to Options.
2016-04-23 23:34:41 -04:00
Jesse Wilson
d7bd016614 Merge pull request #149 from xizzhu/support-gingerbread
Added support for pre-Gingerbread.
2016-04-23 23:24:00 -04:00
jwilson
20a64dff7e Track Okio snapshot API change to Options.
Also rename our own Selection class to Options since it's semantically
the same thing.

https://github.com/square/okio/pull/215
2016-04-23 23:20:39 -04:00
Jesse Wilson
53ff73fe6a Merge pull request #153 from square/jwilson_0417_reader_selection
Optimize reading one of several expected values with Selection
2016-04-23 23:16:00 -04:00
jwilson
4925755ffa Optimize reading one of several expected values with Selection
This isn't yet public API.

This relies on an unreleased Okio API.

This has a significant impact on performance. I measured parsing performance
improve from 89k ops/sec to 140k ops/sec on one benchmark.
2016-04-17 20:15:07 -10:00
Xizhi Zhu
5ec289ff9d Added support for pre-Gingerbread. 2016-04-08 14:29:13 +03:00
Jake Wharton
40e323c805 Merge pull request #147 from square/jwilson_0406_small_optimizations
Small optimizations to JSON parsing.
2016-04-06 00:54:57 -04:00
jwilson
69f4a96d5e Small optimizations to JSON parsing.
Prefer LinkedHashMap for maps that will be queried heavily.

Inline a single-line method to refill the buffer.
2016-04-06 00:39:04 -04:00
Jake Wharton
8943bc57cf Merge pull request #144 from ersin-ertan/master
Add java to java-less '''
2016-03-24 18:56:25 -04:00
Ersin Ertan
0c14ad0117 Add java to java-less ''' 2016-03-24 18:51:01 -04:00
jwilson
633a95be62 Notes on transient and no-arguments constructors. 2016-03-22 21:52:02 -04:00
Jake Wharton
827f89adc8 Merge pull request #139 from square/jwilson_0313_promote_unquoted_keys
Confirm Moshi can handle unquoted numeric keys.
2016-03-13 16:01:38 -04:00
jwilson
41730edd4d Confirm Moshi can handle unquoted numeric keys.
See also https://github.com/google/gson/pull/809/files
2016-03-13 15:53:23 -04:00
Jake Wharton
6d5b1e14e2 Merge pull request #138 from johnjohndoe/patch-1
Enable syntax highlighting for code snippets.
2016-03-07 11:58:01 -05:00
Tobias Preuss
c4cc07679c Enable syntax highlighting for code snippets. 2016-03-07 17:57:26 +01:00
Jesse Wilson
33e1fb1bb5 Merge pull request #127 from square/jw/redundant
Remove redundant loop variable.
2016-01-21 16:46:43 -05:00