Commit Graph

14 Commits

Author SHA1 Message Date
philip-morlier
ec965607cd Cahnges made in service of pretracer type. 2022-03-30 15:15:37 -07:00
Austin Roberts
a88d316b0a Fix missing return value 2022-01-07 12:05:18 -06:00
Austin Roberts
1201e7c4f8 Avoid unnecessary RLP encoding
While looking for the source of a memory leak, I decided to optimize
the metatracer to avoid encoding values when there weren't any tracers
configured to received the encoded values.

I also avoided putting the EVM into debug mode when there weren't any
tracers configured.

None of these fixed the memory leak, but they still seem like good
practices. Memory leak fix is in the next commit.
2022-01-07 11:34:07 -06:00
Austin Roberts
826327a8e7 Update to develop 2021-11-29 10:41:24 -06:00
philip-morlier
4fc1f8f6b9 GetBockTracer fix 2021-11-11 14:41:27 -08:00
philip-morlier
9ac78685b3 modifications made in service of block tracer 2021-11-05 17:26:53 -07:00
Austin Roberts
9249a67e45 Included total difficulty with new head callback 2021-09-20 11:23:37 -05:00
Austin Roberts
f7307d527d Updates to support blockupdates plugin
This makes several updates to support the blockupdates plugin.

I had to update several hooks that were using the wrong types, and
provide a way to get event.Feed objects into plugins without importing
event.Feed (which I did by having the plugin loader make them
available).
2021-09-16 16:04:36 -05:00
Austin Roberts
7b33b6e821 Add chainconfig to backend 2021-09-14 17:44:25 -05:00
Austin Roberts
8291edc416 A couple of translation examples plus todos for Philip 2021-08-31 15:51:41 -05:00
Austin Roberts
7a8bb87257 Add reorg hooks, fix hook name lookup 2021-07-12 15:46:50 -05:00
Austin Roberts
875e506148 Invoke plugins when blocks are added as new heads or sidechain blocks 2021-07-12 11:40:13 -05:00
Austin Roberts
b821bd9948 Make injectable versions of plugin calls 2021-06-25 23:02:25 -05:00
Austin Roberts
03808de29a Refactor plugin system
When the plugin loader itself had to know the types in the arguments
and return values of the plugin functions, it was very difficult to
avoid import loops, given that the types were often defined in the
same package that needed to invoke the plugins.

Under this model, the plugin loader has much less knowledge of the
plugins themselves, and within each package we define functions to
interact with the plugins.
2021-06-25 22:46:17 -05:00