v0.0.21
Changelog
- Moved Rust modules to
github.com/streamingfast/substreams-rs
Library
-
Gained significant execution time improvement when saving and loading stores, during the squashing process by leveraging vtprotobuf
-
Added XDS support for tier 2s
-
Added intrinsic support for type
bigdecimal
, will deprecatebigfloat
-
Significant improvements in code-coverage and full integration tests.
CLI
-
Lowered GRPC client keep alive frequency, to prevent "Too Many Pings" disconnection issue.
-
Added a fast failure when attempting to connect to an unreachable substreams endpoint.
-
CLI is now able to read
.spkg
fromgs://
,s3://
andaz://
URLs, the URL format must be supported by our dstore library). -
Command
substreams pack
is now restricted to local manifest file. -
Added command
substreams tools module
to introspect a store state in storage. -
Made changes to allow for
substreams
CLI to run on Windows OS (thanks @robinbernon). -
Added flag
--output-file <template>
tosubstreams pack
command to control where the.skpg
is written,{manifestDir}
and{spkgDefaultName}
can be used in thetemplate
value where{manifestDir}
resolves to manifest's directory and{spkgDefaultName}
is the pre-computed default name in the form<name>-<version>
where<name>
is the manifest's "package.name" value (_
values in the name are replaced by-
) and<version>
ispackage.version
value. -
Fixed relative path not resolved correctly against manifest's location in
protobuf.files
list. -
Fixed relative path not resolved correctly against manifest's location in
binaries
list. -
substreams protogen <package> --output-path <path>
flag is now relative to<package>
if<package>
is a local manifest file ending with.yaml
. -
Endpoint's port is now validated otherwise when unspecified, it creates an infinite 'Connecting...' message that will never resolves.
Commits
- 918c8d3 💄
- 5558de4 💄
- 232454c Add Contributing and License
- 3ab5a92 Add directory for images and header image for docs
- 66fe9f4 Add header image
- d2f5b0c Add prelude to lib and fix to type convertion
- 3b8d3a5 Added Binary relative path support in manifest
- 52bdf04 Added benchmark to see how long it takes to serialize N keys to storage
- 9d2c891 Added benchmark to see how long it takes to serialize N keys to storage
- bfd9609 Added block stats trigger
- ea52c29 Added cargo lock
- dd0029b Added custom proto marshalling
- 6281caa Added debugging log
- 1b4992d Added logging
- e1bdd30 Added logging of
requested_start_cursor
- ea0c7d8 Added more request stats
- de5c8cf Added possibility to specify
--output-file <template>
(short of-o
) tosubstreams pack
- 5da0e0d Added request stats
- 9c4b007 Added request stats store squasher
- 0c176be Added squasher store tests
- 9280af8 Added tests
- cfe4b34 Added two more relevant changelog entries
- c976fb6 Added v0.0.21 release notes
- 488f1fa Added vtproto support
- 213a4ea Adding minimal changes required to get commands working properly on windows OS
- eac3f01 Adding optional flag to specify output directory for pack output.
- a027a1e Adding to changelog
- 6384403 Another grpc client fix
- 18c3c6a Bumped
dstore
to fix the latency in SubStore initializations. - 049417a Bumped dgrpc again
- 316e592 CLI is now able to read
.spkg
fromgs://
,s3://
andaz://
URLs, the URL format must be supported by our dstore library). - b437533 Call promote waiting jobs after preparing the jobs!
- 4665c13 Clarify the nextStoreSaveBoundary condition, to be larger or equal than the current blockNum.
- 58da6ff Clean up boundary test
- 60b7333 Clean up logging
- fa92021 Cleaned up Store and Partial store
- 94eaade Cleaned up benchmarking marshaller test
- b23cb12 Cleaned up logging and req statas
- 4652618 Cleaned up proto
- bf1f6f8 Cleaned up service and test
- be92abc Cosmetics.. Reset change place, just a dance for it to be ready next.
- f952595 Decouple the
Worker
from theorchestrator
(doesn't know about Job) anymore. - 9a186d8 Edits to text
- 8dfa922 Enabled release draft mode and disabled linux & darwin amd64 build
- 86f8ccc Endpoint's port is now validated on
substreams run
- 0131e43 Externs generation
- bef53f3 Few renames
- fb83fd5 Finish up the job scheduler. Tests now need to be written.
- 5fb9d8c First draft of BaseStore from Config.
- 55308e6 First draft of the scheduler testing. Better abstraction for the JobRunner.
- a8a3cf9 First pass at supporting
cursor
correctly - 724e593 First stub of SessionInit message, to provide the
trace_id
. - a6b5535 Fix assert_all test
- cbb2669 Fix error handling
- 8784513 Fix integration tests
- a8d9d71 Fix merge test
- ff63ef3 Fix miss refactor
- 1858418 Fix multiple store issues
- 491f99f Fix output saving on cache
- e7b6ba1 Fix partial merging and squasher
- 635e7a2 Fix pipeline test
- 30fad36 Fix rebase issue
- 0c4b797 Fix test
- c1ba0c6 Fix tests
- 479129c Fix tests
- 05a1cec Fix/sol squasher incomplete (#50)
- 55ec82c Fixed benchmark
- b13d0a7 Fixed cachev1 when running tests with
-count N
- e36a3f8 Fixed relative path not resolved correctly against manifest's location in
binaries
list - a322d74 Fixed relative path not resolved correctly against manifest's location in
protobuf.files
list - e0329e0 Fixed tests in scheduler.
- 01760e8 Fixed usage of
TargetBlock
intui
view - 099390d Fixup NextJob
- c1bac36 Fixup the scheduler's
runOne
. - a4c9aa4 HTML test
- 6b32527 Have the backprocess job create the storeMap, and return it untouched. He's responsible for creating the whole graph.
- 852d904 Implemented grpc client factory
- b77de8b Implemented test for
setupSubrequestStores
Updated MockStore to support easier SetFile. - 73f8dbd It a live!
- c77507d Last iteration of out-dir flag description
- 79bd235 Made more explicitely
StartBlockNum
vsEffectiveStartBlockNum
and made a few comments - 78f8c5f Made output path relative when generating proto for a local manifest file
- 0eccb52 Major Refactor
- 4a68ddf Making changes to make it super clear on how output-dir works.
- 16e9ec1 Merge branch 'develop' into feature/backprocessor-refactor
- 27309c7 Merge branch 'develop' into feature/backprocessor-refactor
- 45585b2 Merge branch 'develop' into feature/backprocessor-refactor
- badaaba Merge branch 'develop' into feature/backprocessor-refactor
- b83f8f3 Merge branch 'develop' into feature/codegen
- 9017ff1 Merge branch 'develop' into feature/integration-test
- 2587686 Merge branch 'develop' into feature/xds
- 8a9b81c Merge branch 'develop' of https://github.com/streamingfast/substreams into develop
- 5adfd83 Merge branch 'feature/backprocessor-refactor' into develop
- 3a2a98a Merge branch 'feature/binary-marshaller' into develop
- 5cc1b5b Merge branch 'feature/codegen' into develop
- 513eb12 Merge branch 'feature/some-rework' into develop
- 1435199 Merge branch 'feature/xds' into develop
- 6928079 Merge branch 'fix/merge-big-int' into develop
- 4118127 Merge branch 'refactor' into develop
- c061bb0 Merge pull request #48 from tilacog/patch-1
- 8f67cbf Merge pull request #54 from streamingfast/feature/bigdecimal
- 83c6bb6 Merge remote-tracking branch 'origin/develop' into develop
- fab246b Merge remote-tracking branch 'origin/develop' into develop
- 41ef384 Merge remote-tracking branch 'origin/develop' into feature/backprocessor-refactor
- b243da2 Minor formatting fixes
- 8bad9ed ModuleHashes abstraction, more speedy with cache. We can cut 9 seconds of initialization time!!!
- 192a7fa Mucho more tests better.
- 9e0251a Notes and renames and what not 💄
- 0729cde Now VTProto is the marshaller
- 7975970 OpenTelemetry
- a20b2af OpenTelemetry
- d8ded8e OutputCache fused with OutputCacheState.
- e96ad07 Pass in
runtimeConfig
here and there. - 89f3e94 Pipeline needs a ForkHandler to not crash tests. Quick renames
- f70bdc8 Preparing for next unreleased version
- a31b124 Put back
NewTestModules
in testing because it's used in foreign packages - b9631fe Put integration tests behind an env var to run, fixed path to be relative to
substreams.yaml
(now that it works for everything) - 31bade9 Quite another refactor here. Fully broken!
- 8f46674 Registered Metrics & Updated Naming Conventions
- 0343fff Remove links to documentation pages
- 32adf53 Remove testing HTML
- 4d230ba Remove unused object.
- 0c86415 Removed
pipeline.RequestContext
stack recording of span(s) - 5097429 Removed specialized
errors.GRPCError
and uses standardstatus.Error
everywhere - 9fe2c2e Removing unecessary check
- 7197df0 Replaced request context with context abstractions
- 6fc3287 Revert "removed ExecSpan"
- 0386e6b Scheduler rework, absorb the JobsPlanner, rework the WorkPlan. Make it the thing that prioritizes. Have an abstraction to prioritize it.
- 9f1c8ab Simplify
- aeb6b3a Small nitpick on CHANGELOG
- 2e1e9af Small refactor of SetStatus for traces.
- fbecf39 Temp HTML changes in docs
- 7a9f93a Test the init messages from the work.Plan. Fixup locking for the mutators of the Plan.
- 51eaf59 The error should be handled
- 2cf40c5 Tweak some display and logs.
- 7ef59ab Update header image for README
- 8ef14f0 Update header image for docs
- 365de5b Update setting-up-handlers.md
- 1541fe3 Use the right default values man.
- ae2e488 Using isAbs for deducing a relative path
- cb83e84 Using spkg in integration tests
- ff2c5be WIP
- 310cf7d WIP backprocessor refactor
- 36451f0 Wrote two more tests for runOne in scheduler. Fixup the jobrunnerpool broken test.
- ef64f75 add integration tests by default in bin/test.sh
- 98ccfaa add missing files
- a8a0ecf add the module hash to error logs with module name
- b8a7e16 added SquashTime/BlockProcessTime/Block metrics
- 9720241 added couple tests
- f250424 added debug logs
- 19ed65d added missing files
- 859e552 added more req stats
- f7b0532 added partial metrics
- d5b8315 added req stats fix
- 2e0e621 added squash metrics
- 376330c added xds creds
- 82ea7e4 added xds support in client
- 3b86c61 added xds support in client
- fe26303 adding SubstreamsClientConfig struct
- b389b76 adding bigint, bigfloat and int64 for stores cli validation
- 8dccad7 adding different combinations for the manifest cli validation
- f7c18cc adding forkable generator with tests
- a5e0868 adding inputValue when hashing a module
- b8464a3 adding protofiles to be read from url in substreams manifest file
- 13e8e1f adding tests for StoreSet/StoreGet I64 and fixing some broken test
- bb2549d adding tests for resolve start block
- 4b383d7 adding the substreams client config to the worker and removing global config var
- f41864f adding unit tests for generated rust files
- 6c9299b adjust Register to match firehose new RegisterServiceExtension and use our own StreamFactory to specify the correct steps and decouple from firehose implementation
- 5e2a714 all tests are now running. Remove SUBSTREAMS_INTEGRATION_TESTS
- 03508e8 back to single grpc client
- 32dee42 backprocess: err handling, and defer bubbling up.
- 2f97a7b better SUBSTREAMS_SEND_HOSTNAME handling
- 81b0456 better error message in client
- 596dfaa better failure progress handling
- 1d2f18c better logging
- cd2ba33 better logging
- 86405ff better store detection
- d9086de bring back SUBSTREAMS_SEND_HOSTNAME
- 7121f15 bring back test condition
- 2e5f03f bump substreams
- 3c5570b bump substreams to 0.3.0
- 834fb48 bumped dgrpc
- bcc9877 canceling ui when receiving a failed progress
- 2c55225 change default marshaller to vtproto
- 7bb9553 change logs
- 172b895 cleaned up common functions
- 97872c0 cleaned up more tracing and spanning
- c0ce831 cleaned up store config
- a664b00 cleaned up store map
- 6a1df70 cleaning up logging and stats
- c154bc8 commenting part where we call returnFailureProgress
- e88706a delete test broken
- d27bdff delete test broken
- a654ab6 dgrpc refactoring
- eaf4cd8 enabled darwin platform
- 42a40a7 ensure we fail fast on grpc connection
- 24e02ac error.go -> endofstream.go
- e1385e4 execout: fix flush boundary
- 164db8c execout: fix flush method parameters
- 5a7dcd1 execout: flush at block range boundary, regardless of irreversibility condition
- f559673 execout: flush at boundary, update test
- 2cb1394 execout: interface and code cleanup
- 6f63399 fix MAJOR typo
- e5d5183 fix argument order
- 93bf69d fix compilation issue
- b5e9563 fix compilation issues
- de93313 fix compilation issues
- 9f44d2e fix compilation issues
- e1e1d8e fix compilation issues after merging develop
- c5e249f fix compilation issues cause be substreams-rs change
- ba6d63f fix concurrent map write
- 7199f30 fix cursor start at +1, add integration test
- acfa4a3 fix delete prefix test
- 9a6b3ff fix go 18
- 6f54478 fix grpc client creation
- 3b2ced7 fix handle irreversible block
- 57200af fix integration test block source type
- ea82695 fix merge conflict stuff
- fd10945 fix minor bug and add protobuf generation
- 6f63cfa fix missing clock support
- d252305 fix output for a mapper when cached when not pushed downstream to the next substreams to use as input
- b2a0562 fix setifnotexists bug when setting value on disk
- 10f0834 fix signature test
- 70a1ceb fix test still a and repack
- f31145b fix test still a wip
- 5f7a7f0 fix tests
- 6dccbde fix tests
- 71d6650 fix tests
- 93b6221 fix typo
- b4f765d fix wasm input source checker
- 223fc19 fixed metrics
- 9720b41 fixed squash metrics
- 3166a11 fixing big int merge strategy
- a9b9953 fixing tier2 client
- a8edbf3 gitignore
- ab8ff68 it is working but still polishing
- 432a350 make GRPC_XDS_BOOTSTRAP log repeat less...
- 126a2e0 module_executor: save to the cache only when module output is VALID. It is deemed invalid when a PartialKV produces its deltas. These are not pieces of data to be saved to the cache output. module_executor: sort functions by use storeexec: quick rename
- d766dea more work and cleanup on orchestrator refactor
- 17adee9 move rust libs to github.com/streamingfast/substreams-rs
- d36c2d0 only save store state for output module when in sub request mode
- 5aa8ee8 orchestrator: added tests, additional cleanup and refactoring
- bd919e9 orchestrator: additional cleanup
- e7fb497 orchestrator: cleanup and refactoring
- 3ea2a2b orchestrator: pass ctx through waiting for completion, rename func
- 83403ad pb/mod.rs generated
- a67491a pipeline exec: add back logging and span
- 2461745 pipeline execout: fix fmt string
- fe46953 plan: add names to TestPlan_NextJob to make tests runnable
- 0fb6f55 plan: make output of splitWorkIntoJobs deterministic
- 71c7727 prevent annoying 'error getting stream header' log on disconnection
- c176087 prevent overriding of pb/mod.rs
- 350d625 properly retuing incoming message when getting an error
- 60466e0 refactoring pipeline runExecutor. delegate responsibility to new ModuleExecutorRunner object. /colin
- ad1dfe1 remove commented code
- 16cf468 remove dead code
- 32a30e9 remove go replace
- 0b02059 remove skipAuth when in xsd mode
- eb02bed remove useless test file
- a749355 remove warning from integration test
- c6dc82f remove xds support
- adb75fb removed ExecSpan
- 64ffed3 removing cancel defer
- c4e83ea removing functionName and moduleName as we have the data in the Module.name
- 7e33d7c removing grpcClientFactory pipeline attribute
- d3f1293 removing grpcFactory attribute from the worker in the work pool and replacing it with newSubstreamsClientConfig
- 5bf01d2 removing hard-coded hash values for map and store decode commands
- 92e9378 removing pipeline cacheEnabled and partialModeEnabled boolean and service cacheEnabled which were used to run the server with or without cache for substreams
- 4397d4e removing println from inputValue when hashing a manifest module input values
- 9daa606 renaming BigFloat to BigDecimal, deprecating uses of BigFloat and it's externs to be backward compatible and cleaning up code in state_extern and the validations done
- 0bda24c replacing json marshaller and json unmarshaller with binary marshaller, fixing tests and adding boundary tests for binary marshaller
- 5078f67 revert "add squash metric"
- de1441c revert proto files from url
- b7f8689 scheduler: simplify runSingleJob
- 49a88f6 shorter logger name
- 9c35f1c skipping broken test
- 99f3fe5 some refactoring
- aac2974 stable test
- a7ea2f0 store: cleanup functions in merge
- 5df13d3 store: fix int64 merge functions
- 113137a test are back on track
- 65530b8 testing a fix
- 77f565d tidy go modules
- 2e88305 tool: added module debugging tool
- 3b86ec2 update changelog
- d9cb2d9 update generator and go template
- 5e5fe18 use embedded file instead of constants for template
- 4049e18 var and test cleanup
- b0d9585 wip
- e92293a wip
- 9d6e2ab wip
- 410a8e1 wip: refactoring block hooks
- bb67b8a working on all tests
- 24b63a9 xdscreds when GRPC_XDS_BOOTSTRAP is set