David Renshaw
ddd43a491b
throw exception on negative segment sizes
2021-10-01 21:56:49 -04:00
David Renshaw
f3e66a6e0b
update versions to 0.1.11-SNAPSHOT
2021-08-27 21:23:00 -04:00
David Renshaw
b1a197be75
prepare for 0.1.10 release
2021-08-27 21:13:49 -04:00
Vaci Koblizek
4fc6ffdce5
try fixing jdk version to 11
2021-08-19 10:05:52 +01:00
Vaci Koblizek
b24a362d58
Merge from upstream
2021-08-19 09:50:28 +01:00
paxel
9e114cf26d
made runtime build for JDK8 under all JDKs (8++) ( #109 )
...
* Update pom.xml
made runtime build for JDK8 under all JDKs (8++)
* Update runtime/pom.xml
use more-standard syntax
Co-authored-by: David Renshaw <dwrenshaw@gmail.com>
2021-08-18 10:02:33 -04:00
David Renshaw
1966572eca
update version numbers to 0.1.10-SNAPSHOT
2021-07-16 11:38:03 -04:00
David Renshaw
80f5b0447a
prepare for 0.1.9 release
2021-07-16 11:10:45 -04:00
David Renshaw
b8a5a99ef6
try adding maven.compiler.release flag ( #104 )
2021-07-14 15:41:56 -04:00
David Renshaw
f98e0fc6ef
bump version to 0.1.9-SNAPSHOT
2021-05-31 08:45:24 -04:00
David Renshaw
01cf6c0ebf
release v0.1.8
2021-05-31 08:33:52 -04:00
David Renshaw
a55b869305
implement MessageBuilder.unsafeConstructFromMessageReader()
2021-05-24 13:06:42 -04:00
David Renshaw
a078df7e4d
add support for directly serializing a MessageReader
...
Previously, you would need to copy the message into a MessageBuilder first.
2021-05-24 11:49:20 -04:00
David Renshaw
d310db1e88
Prevent potential integer overflow in BuilderArena.allocate().
2021-05-13 17:49:01 -04:00
David Renshaw
754184fd74
bump version numbers to 0.1.8-SNAPSHOT
2021-05-12 21:00:16 -04:00
David Renshaw
5bf2c368e3
0.1.7 release
2021-05-12 20:57:00 -04:00
David Renshaw
4ec14e39f9
be more careful about integer overflow in Serialize.read()
...
Previously, we were attempting to read the entire message
in one call to fillBuffer(). This was doomed to fail
if the message had more than Integer.MAX_VALUE bytes.
After this diff, we will call fillBuffer() separately for each
segment. This approach turns out to be simpler, too.
It might imply a small performance hit for messages with
many small segments, but such messages are discouraged anyway.
This diff also adds more overflow checking in the surrounding
logic.
2021-05-12 20:13:52 -04:00
David Renshaw
a6c5240790
bump version numbers to 0.1.7-SNAPSHOT
2021-05-11 21:49:54 -04:00
David Renshaw
ee7e9a0d07
publish 0.1.6
2021-05-11 21:46:25 -04:00
David Renshaw
8dbd5cf25f
make new unit test less memory intensive
2021-05-11 21:12:10 -04:00
David Renshaw
eb73990798
fix potential overflow in DefaultAllocator
...
Fixes a bug where the allocator's `nextSize` variable could overflow
and become negative, causing more segments to be allocated than expected.
Also removes a duplicate `this.nextSize += size` statement that
likely made the problem worse.
2021-05-11 21:07:37 -04:00
David Renshaw
07e47d4104
add some documentation about the new 'no limit' option
2021-05-09 14:53:54 -04:00
Wim Dumon
cc4fa2bbc8
Offer option to disable traversalLimitInWords
...
Use case: large trusted input data file, mapped in memory by
MappedByteBuffer, which is often re-queried so a sensible
limit cannot be set.
2021-04-28 17:47:58 +02:00
Vaci Koblizek
950ba824b9
use java11 switches and completablefutures
2021-04-05 11:05:52 +01:00
Vaci Koblizek
1bf1228756
revert to java version 11
2021-04-05 11:05:52 +01:00
Vaci Koblizek
22e5ab34a9
Merge remote-tracking branch 'sandstorm/master'
2020-12-07 19:35:51 +00:00
Vaci Koblizek
c7621d1de3
whenMoreResolved should return null when resolved
2020-12-07 18:55:54 +00:00
David Renshaw
cf62cd4a58
Fix build on Fedora 33
2020-12-06 20:47:53 -05:00
Vaci Koblizek
21d3eba0e5
remove CompletableFutureWrapper
2020-12-05 14:55:28 +00:00
Vaci Koblizek
25c50b105d
moar capTable context maintenance
2020-12-03 15:06:35 +00:00
Vaci Koblizek
196b82515c
ensure StructBuilders and StructLists maintain capTable context
2020-12-03 14:25:15 +00:00
Vaci Koblizek
f74ad80dea
remove cancellation completion for now
2020-12-03 14:25:15 +00:00
Vaci Koblizek
53eeed97e2
make direct call if QueuedClient has resolved
2020-12-01 17:12:49 +00:00
Vaci Koblizek
3b1f5f416c
use lists for queued calls, clean up on resolution
2020-12-01 17:08:27 +00:00
Vaci Koblizek
837f1b324c
add AnyList
2020-11-30 20:22:36 +00:00
Vaci Koblizek
2b5bf0eb21
tidy up branding and implement QueuedClient,getBrand() correctly
2020-11-30 18:52:28 +00:00
Vaci Koblizek
c04bdb8088
add clienthook commentary
2020-11-30 18:42:04 +00:00
Vaci Koblizek
d02e460f06
tidy up response and pipeline construction
2020-11-30 17:47:37 +00:00
Vaci Koblizek
66ee9471f9
replace Integers with FileDescriptors
2020-11-28 09:55:53 +00:00
Vaci Koblizek
ab44843b12
QueuedClient should stop queuing calls once it has resolved
2020-11-27 15:24:41 +00:00
Vaci Koblizek
789d2df6e4
replace PipelineOp[] with short[]
2020-11-27 13:30:35 +00:00
Vaci Koblizek
a53f7db25e
remove extraneous ArrayList wrapper from ops key
2020-11-27 11:30:12 +00:00
Vaci Koblizek
250f14e2f4
simplify QueuedPipeline promise
2020-11-27 11:25:39 +00:00
Vaci Koblizek
6e5bcc62ae
replace typeless requests with anonymous implementations
2020-11-27 10:19:06 +00:00
Vaci Koblizek
585a21259e
remove unused AnyRequest.send()
2020-11-27 09:50:26 +00:00
Vaci Koblizek
a3837e6010
message loop exit logging level as FINE
2020-11-26 16:09:07 +00:00
Vaci Koblizek
a2a17ea3cb
remove CapabilityServerSetBase, add test case
2020-11-26 16:03:13 +00:00
Vaci Koblizek
772108ff12
add testEmbargoNull test
...
throw RpcExceptions rather than RuntimeExceptions
2020-11-26 15:06:20 +00:00
Vaci Koblizek
e3d52a0bbd
use gather writes for AsynchronousSocketChannels
2020-11-26 14:22:13 +00:00
Vaci Koblizek
de85613570
consistent naming of factories
2020-11-26 13:07:28 +00:00
Vaci Koblizek
07f8f22acd
implement call blocking stack
2020-11-25 19:43:18 +00:00
Vaci Koblizek
941a254e41
by default, streaming calls fal back to regular calls
2020-11-25 15:53:25 +00:00
Vaci Koblizek
2d072a6b12
implement streaming requests
2020-11-25 15:47:02 +00:00
Vaci Koblizek
594e5e3a28
reduce visibility of cap contexts
2020-11-24 17:48:08 +00:00
Vaci Koblizek
5a27b4b860
tidy up Builder refs in AnyPointer.Pipeline
2020-11-24 15:38:07 +00:00
Vaci Koblizek
9465ffde5b
add default getBrand to RequestHook
2020-11-24 15:37:28 +00:00
Vaci Koblizek
119a682d4d
memoise queuespipeline caps. use queues to order queuedclient resolution
2020-11-23 19:56:54 +00:00
Vaci Koblizek
1cadca604e
add releaseCall to delay call execution
2020-11-20 17:07:45 +00:00
Vaci Koblizek
e314d26ab3
use sendInternal rather than calling hook directly
2020-11-20 16:35:38 +00:00
Vaci Koblizek
d3e639eaee
add capability tail call test
2020-11-20 16:32:42 +00:00
Vaci Koblizek
1366e28fd5
simplify conversion to CompletableFuture<Void>
2020-11-19 17:36:48 +00:00
Vaci Koblizek
68edac583b
remove unused getVatIdFactory()
2020-11-19 15:26:21 +00:00
Vaci Koblizek
ad17a4c148
refactor connection and disconnection
2020-11-13 17:57:49 +00:00
Vaci Koblizek
c0a57d304f
merge resolveTask into constructor
2020-11-13 08:10:59 +00:00
Vaci Koblizek
69a045deec
make requests autoclosable and cleanup disconnection
2020-11-12 22:15:07 +00:00
Vaci Koblizek
4e9e7f4068
cancellation
2020-11-12 21:27:44 +00:00
Vaci Koblizek
f3bb329e96
generalise AnyPointer setAs AnyPointer
2020-11-10 11:42:23 +00:00
Vaci Koblizek
91a93734e1
generalise AnyPointer setAs AnyPointer
2020-11-10 11:34:26 +00:00
Vaci Koblizek
dcd9eb37c7
add override to set clients from completablefutures
2020-11-09 21:43:32 +00:00
Vaci Koblizek
cefd8eaaa2
add AnyStruct
2020-11-09 18:08:56 +00:00
Vaci Koblizek
f2df5c2191
implement rpc tail calls
2020-11-09 18:08:07 +00:00
Vaci Koblizek
cee3aa79ae
set AnyPointer from AnyPointer
2020-11-09 18:08:00 +00:00
Vaci Koblizek
f8cdfdea09
set AnyPointer from AnyPointer
2020-11-09 18:02:05 +00:00
Vaci Koblizek
f640a8ffd4
allow copyPointer to copy capabilities
2020-11-09 17:42:05 +00:00
Vaci Koblizek
9e6d495d56
add runtime-rpc module and refactor project
2020-11-08 17:24:42 +00:00
Vaci Koblizek
6b8898c27b
make noop public
2020-11-07 16:01:07 +00:00
Vaci Koblizek
45d1470907
make anypipeline.noop public
2020-11-07 15:59:25 +00:00
Vaci Koblizek
66fc361386
stub out two-party test suite for now
2020-11-07 15:58:39 +00:00
Vaci Koblizek
0ce52fe135
add resolve test and fix handleResolve bugs
2020-11-06 15:32:20 +00:00
Vaci Koblizek
850a603877
oops, correct assertion of missing question
2020-11-06 13:58:36 +00:00
Vaci Koblizek
e8a118f364
add overload for messageSizeHint
2020-11-06 13:58:36 +00:00
Vaci Koblizek
7d2e541603
fix getNetwork bug, remove unnecessary TwoPartVatNetwork specialisation
2020-11-06 13:58:36 +00:00
Vaci Koblizek
1f004779d4
rpc tests
2020-11-05 21:38:43 +00:00
Vaci Koblizek
054213a0ac
add rpc bootstrap factory
2020-11-05 21:38:43 +00:00
Vaci Koblizek
9d023f0449
fix generic pipeline params. add (non-generic, for now) capability list
2020-11-05 21:38:43 +00:00
Vaci Koblizek
518769247b
remove generated schema.schema
2020-11-05 17:59:05 +00:00
Vaci Koblizek
02789acf29
add TestInterface.baz. Stub out broken TestGenerics
2020-11-05 17:59:05 +00:00
Vaci Koblizek
630d71d4e5
implement more capability tests
2020-11-05 17:59:05 +00:00
Vaci Koblizek
33d16c4fb6
add READY_NOW
2020-11-05 17:59:05 +00:00
Vaci Koblizek
8565c40c14
capability test suite
2020-11-05 17:59:05 +00:00
Vaci Koblizek
a10e48d140
test schemas
2020-11-05 17:59:05 +00:00
Vaci Koblizek
d515500996
get rid of PipelineBase and PipelineImpl again
2020-11-05 17:59:05 +00:00
Vaci Koblizek
8eacc8cada
major refactor of RemotePromise and Pipeline
2020-11-05 17:59:05 +00:00
Vaci Koblizek
2d8fe31a59
generic interface generation (WIP
2020-11-05 17:59:05 +00:00
Vaci Koblizek
86ccdd5a55
move cleanup to end of message loop
2020-11-05 17:59:05 +00:00
Vaci Koblizek
94ca2a04e6
remove sync modifier from getConnectionState and tidy
2020-11-05 17:59:05 +00:00
Vaci Koblizek
f2b2fc769f
go back to using CompletableFuture (sigh)
2020-11-05 17:59:05 +00:00
Vaci Koblizek
c903cbf193
return this network via asConnection()
2020-11-05 17:59:05 +00:00
Vaci Koblizek
4f8c5faef4
tidy up access to hooks
2020-11-05 17:59:05 +00:00
Vaci Koblizek
dc4f8d07b4
dump more message types
2020-11-05 17:59:05 +00:00