ErrorMsgimprovements:- Added
ErrorMsgV1andErrorMsgV2 - Alias
ErrorMsg = ErrorMsgV2 DbnScannerupgradesErrorMsgV1messages tov2- Add
dbn.DecodeErrorMsg ErrCode_*enum constants are now typed asErrorCode
- Added
- live:
dbn-go-livehandles DBN gateway errors much better (lost before) - ci: Fix
--versioninformation on release builds
The release add support for DBN Version 3.
Note that this transitions was made via type aliases for use with the DbnScanner. For example:
-
InstrumentDefMsg = InstrumentDefMsgV3 -
StatMsg = StatMsgV3 -
Support for DBN version 3:
- Handle DBN v3 headers
- Add
InstrumentDefMsgV3andStatMsgV3 DbnScannerupgrades messages tov3JsonScannerhandlesv2andv3JSON files
-
tui: Upgrade BubbleTea v2
- Add support for missing Authentication Request fields
compression,pretty_px,pretty_ts,slow_reader_behaviorheartbeat_interval_s(#17, thanks @hongzhengwang-ondo)- Only send non-default fields on the wire
- MCP enhancements
query_cachenow supportsformatparameter:csv(default),json_rows, andjson_columnaroutput formatsquery_cachenow supportsmax_rowsparameter for explicit row limits- Add
--read-onlyflag todbn-go-mcp-datato disablefetch_range(no billing possible)
- fix(mcp): Ensure API key validation in MCP handlers
- fix(mcp): Fix schema-only
clear_cachefiltering - fix(mcp): Fix streaming and cache correctness issues
- fix(mcp): SQL injection hardening
- fix(parquet): Fix parquet writers that only wrote one row
- chore(test): Break out integration tests that need
DATABENTO_API_KEY - fix(ci): Resolve CI and Docker issues
- MCP enhancements
dbn-go-mcp-metafor metadata-only queries- 9 MCP tools reflecting the DataBento Metadata API
- No billable DataBento API calls
dbn-go-mcp-datafor data retrieval and analysis- 1 billable tool
fetch_rangewhich fills a local Parquet cache query_cachefor DuckDB-SQL queries against the cache
- 1 billable tool
- Releases are now notarized by Neomantra Corp for MacOS installs
- Fix Parquet conversion for
mbp-1,tbbo,imbalances,statistics - fix(live): LiveClient could lose the first bytes of the DBN/JSON stream after authentication.
- Improve metadata tools in MCP server
- Fix
FieldDetail.TypeNameJSON field name, which brokedbn_hist.GetFields - Add
dbn-go-slurp-docsto GoReleaser
- Add
dbn-go-slurp-docsfor docs for LLMs - Add
Publisher,Dataset, andVenuetypes - Add
SystemCodeandErrorCodeenums.SystemMsgandErrorMsguse them now instead of raw values
- Add
SystemMsg.IsHeartbeat - Copy
DBN v3test data files from upstream - Add
AGENTS.md
- Add Parquet support for Statistics message
StatMsg dbn-go-histnow dispatches multiple smaller requests for cost estimates since large numbers of tickers would overrun the URI limits.
- Add Parquet export of publishers with
dbn-go-hist publishers --parquet <outfile>. Useful for some DuckDB queries.
- Add BBO schema support (#15)
- Add list of datafile checksums in
tests/data/checksums.txt
- Fix
StatusMsgdecoding. - Added more message structure tests (#6)
- Update Go dependencies, including fixes for latest
go-mcp - Fix
StatMsgdecoding and add tests for it (#14)
-
BREAKING Rename
CbbotoCmbp1per upstream SDKRType_CbbobecomesRType_Cmbp1Schema_CbbobecomesSchema_Cmbp1which requestscmbp-1CbboMsgbecomesCmbp1MsgVisitor.OnCbbobecomesVisitor.OnCmbp1
-
Update from
DBEQ.MINItoEQUS.MINI -
Added
task test-all -
Added new constants and enums up to DBN
0.34.0:UNDEF_TIMESTAMP,Action_None,InstrumentClass_CommoditySpot,Condition_IntradayMatchAlgorithm_TimeProRata,MatchAlgorithm_InstitutionalPrioritizationStatType_Volatility,StatType_Delta,StatType_UncrossingPrice
- Added
dbn-go-mcpMCP server
- Add
DbnScanner.DecodeSymbolMappingMsg
“The two most powerful warriors are patience and time” – Leo Tolstoy
-
Many Hist API calls were passing Dates, rather than full DateTimes, to the backend. Now date+time is used where appropriate. (#8)
-
Bugfix incorrect end time in
dbn_hist.ListDatasets. -
BREAKING
dbn-go-histtime flags (--start,--end) now uses ISO 8601YYYY-MM-DDinstead ofYYYYMMDD. Times and timezones may now be included:YYYY-MM-DDTHH:MM:SS±HH:MM. -
Unfortunately,
arm64Docker images are currently disabled due to infrastructure issues (?)
- Removed obsolete
Packagingparameter fromdbn_hist.SubmitJoband structs dbn-go-file: Do not include.zstsuffix in Parquet destination file names
dbn-go-tuiimprovements:- Add
--limitargument to control concurrent downloads - Add pretty progress bars and table
- Fix queueing of duplicate files
- Fix honoring of max active downloads
- Add
- Fix
dbn-go-filewas not included in relase.
- Add
dbn-go-file parquettool for processing DBN files with commands:metadatajsonspitparquet
- Fix
Mbp0Msgstructure and add tests. - Add
MakeCompressedReaderandMakeCompressedWriterzstd helpers
- Add
dbn-go-tuitext user interface 🔥 - Add
LiveClientnow hasGetDBNScannerandGetJsonScannr, depending on encoding. - Add
InstrumenDefMsgandStatusMsg - Add
OnStatusMsgandOnInstrumentDefMsgtoVisitorinterface - Add
JsonScanner.GetLastRecord - Add
ListFilesmay now returnJobExpiredError. - Add
FeedModeJSON marshalling - Add new reference data STypes from DBN v0.20.0
- Fix
dbn-go-liveJSON mode. - Fix
ListJobs: typo instatesandsinceis UTC - Fix
Compressionerror message and convert-from-null
- Add
--jsonflags to manydbn-go-histcommands - Add
--sinand--soutto tools - Add
resolvecommand todbn-go-hist
- Add
GetRange,SubmitJobs,ListFiles, andListJobsto Hist API - Add some JSON marshallers
dbn-go-histnow hasget-range,submit,jobsandfilessubcommandsdbn-go-histnow supports--fileto supply lists of tickers
- Expand
dbn-go-histtool and addtests/exercise_dbn-go-hist.shexample. dbn-go-livesupports multiple schemas and more args- Add the rest of the Historical Metadata API
- Add custom slog Logger to
LiveClientand cleanup logging - Updated for DBN
0.18.0API changes
- Live intraday replay fixes
dbn-go-livenow support--start <iso8601>- Add
dbn-go-histfor some historical queries
- Fix DBN v1 compatibility issues for writing Metadata and reading SymbolMappingMsg
- Add initial Live API support
- Add Mbp1, Mbp10, Mbo, Error, SymbolMapping, System, Statistics
- Add Dockerfile
- Minor interface tweaks and bug fixes
- Add more getters for DbnScanner
- Add TsSymbolMap for historical symbology
- Add Metadata.Write and YMDToTime
- Fix broken IsInverseMapping
- Add initial Hist API
- Initial version