Releases: deephaven/deephaven-core
Releases · deephaven/deephaven-core
v0.38.0
Bug Fixes
- Added support to read iceberg tables partitioned by date by @malhotrashivam in #6430
- Close Jetty h2 streams with RST_STREAM and no error code by @niloc132 in #6424
- (cpp-client) Change tests to use Deephaven literals for LocalDate and LocalTime by @kosak in #6442
- NPE in ProtobufDescriptorParserImpl for repeated nested repeated fields by @jcferretti in #6402
- Credentials Resolution Bug in S3 Reads by @malhotrashivam in #6444
- Expose TableSubscription.close() to JS by @mofojed in #6446
- Update web version 0.99.1 by @github-actions in #6449
- Boxed primitives trigger ClassCastException in ArrayPreview for protobuf repeated fields by @jcferretti in https://github.com/
- erroneous QueryCompiler retry when nothing unaccounted for by @nbauernfeind in #6451
- JS subscriptions should return correct size while updating by @niloc132 in #6463
- JS viewports must allow subscription to be changed while waiting by @niloc132 in #6473
- Update Web version v0.99.2, fix table plugins props by @mofojed in #6474
- Ensure Flight SQL acquires shared lock by @devinrsmith in #6462
- reapply RST_STREAM(cancel) workaround, and disable grpc-timeout by @niloc132 in #6478
- Correct two errors in generated types by @niloc132 in #6498
- Add missing default values for the callback proxies in TableDataService by @jmao-denver in #6516
- Add feature to control systemic property of executeCode by @abaranec in #6519
- JS API viewports should throw only for basic data issues by @niloc132 in #6535
- Rename internal JS generated grpc/proto packages by @niloc132 in #6531
- Ensure that DataIndexes produced by a RegionedColumnSourceManager are retained by the DataIndexer by @rcaudy in https://
- DH-18395: Address performance problems with large numbers of table locations caused by serial unmanage by @rcaudy in #6552
- DH-18395: Prefer bulk-unmanage whenever LivenessManager.unmanage is called on multiple referents by @rcaudy in #6557
- Increase timeout to almost guarantee 2 PUG cycles to eliminate random test failures by @jmao-denver in #6560
- (cpp-client) use std::getline for reading passwords by @kosak in #6542
- Update web version 0.102.1 by @github-actions in #6543
- Chart subscriptions shouldn't reverse positions by @niloc132 in #6546
- correct
OuterJoinTools.leftOuterJoin/fullOuterJoin()
output when RHS initally empty by @lbooker42 in #6548 - DH-18153: Handle numpy's new shape typing in UDF parsing by @jmao-denver in #6605
- Add semi-required "webhook-type" to slack actions by @niloc132 in #6573
- DH-18567: Filter locations before removal allowed checks. by @cpwright in #6607
- DH-18471
update_by
min/max functions to return original-typed output columns by @lbooker42 in #6629 - (cpp-client) Avoid an internal error/sigsegv in gcc-11 by @jcferretti in #6709
- If using python, any thread that calls python must have a python frame by @niloc132 in #6697
- Improve JS API handling of formatting data by @niloc132 in #6664
- DH-18740: Make the table_type argument default to None by @jmao-denver in #6656
- convert primitives to Objects inside of WebChunkReaderFactory by @nbauernfeind in #6669
- Update web version 0.106.2 by @github-actions in #6684
- DH-18886: TableUpdateValidator uses Bad ModifiedColumnSet by @cpwright in #6686
- DH-18803: Add qst Type find support for componentType by @devinrsmith in #6667
- JS Widget should defer firing message events by @niloc132 in #6715
- Update web version 0.106.3 by @github-actions in #6699
- Reenable the skipped tests by @jmao-denver in #6718
- PythonTableDataService use eq instead of PyObject#equals by @nbauernfeind in #6719
- correct instantiation of
rollup
count_where
operator. by @lbooker42 in #6502 - DH-18482: EventDrivenUpdateGraph: Allow two concurrent threads to safely requestRefresh() by @rcaudy in #6603
- JS clients must not release tickets for pending operations by @niloc132 in #6591
- DH-18433: SourcePartitionedTable needs to check the size of pending locations even if there are no added or removed locations by @rcaudy in #6570
- Promises in Tree subscriptions should reject if aborted by @niloc132 in #6616
- DH-18433: SourcePartitionedTable needs to check the size of pending locations even if there are no added or removed locations by @rcaudy in #6570
- Support whole range of byte values for booleans by @niloc132 in #6623
- Update web version 0.104.0 by @github-actions in #6589
- DH-18472 correct the ordering of result columns in
update_by
by @lbooker42 in #6630 - Expose offset property on JS TreeViewportData by @niloc132 in #6639
- JS ChartData should write updates to the correct row by @niloc132 in #6638
- DH-18539: Fix incorrect snapshot results on historical sorted rollups. by @cpwright in #6642
- Update web version 0.106.4 by @github-actions in #6712
- DH-18975: Exporting table with an invalid InputTable attribute crashes server by @cpwright in #6710
- DH-19003: ensure ATLP.getTLIfPresent returns a managed TableLocation by @devinrsmith in #6713
- DH-18968: Close ManifestReader in IcebergBaseLayout.findKeys by @devinrsmith in #6701
- DH-19005: Off-by-one in showWithRowSet Column Width by @cpwright in #6714
Build system
- Update web version 0.101.0 by @github-actions in #6517
- DH-18477: Java coverage generated conditionally by @stanbrub in #6586
- Code Coverage for Nightly Build Workflows by @stanbrub in #6635
- Allow jetty-run task -Pdebug to take a value for the debug port by @jcferretti in #6717
Continuous Integration
- Invoke webhook on PR merge by @mofojed in #6613
- DH-18625: Slack notification if DHC publish step fails by @devinrsmith in #6627
Documentation
Features
- (csharp/ExcelAddInInstaller) Add Dialog, Banner, and Icon branding to the Deephaven Installer by @kosak in #6443
- JS clients can provide custom grpc transports by @niloc132 in #6476
- Don't fail when reading non-identity partitioning field by @malhotrashivam in #6477
- implement
AggCountWhere
to support generic counting usingFilter
by @lbooker42 in #6497 - Update web version 0.100.0 by @github-actions in #6501
- Add j_collection_to_list() in jcompat.py by @jmao-denver in #6565
- parse Parquet schema from ParquetMetadataConverter by @devinrsmith in #6550
- Update web version 0.103.0 by @github-actions in #6569
- DH-18423: add a systemic_obj_tracker module i...
v0.37.6
v0.37.5
Features
- DH-18174: Delay reading from parquet file when creating table and column location by @malhotrashivam in #6622
- DH-18588: Allow shortened Name.rootFIle config file specifier by @abaranec in #6621
Bug Fixes
- DH-18482: EventDrivenUpdateGraph: Allow two concurrent threads to safely requestRefresh(), and ensure clean errors for nested refresh attempts (#6603) by @rcaudy in #6615
- DH-18567: Filter locations before removal allowed checks. (#6607) by @cpwright in #6614
- Support whole range of byte values for booleans by @niloc132 in #6624
- JS clients must not release tickets for pending operations by @niloc132 in #6618
Performance
Miscellaneous Chores
- Bump to 0.37.5-SNAPSHOT by @devinrsmith in #6592
Full Changelog: v0.37.4...v0.37.5
v0.37.4
v0.36.2
v0.37.3
Bug Fixes
- DH-18395: Prefer bulk-unmanage whenever LivenessManager.unmanage is called on multiple referents (#6557) - (c210e48) - Ryan Caudy
- DH-18395: Address performance problems with large numbers of table locations caused by serial unmanage (#6552) - (66fa5ca) - Ryan Caudy
- correct OuterJoinTools.leftOuterJoin/fullOuterJoin() output when RHS initally empty (#6551) - (b97b61f) - Larry Booker
- Chart subscriptions shouldn't reverse positions (#6547) - (b86d9d1) - Colin Alworth
Miscellaneous Chores
Full Changelog: v0.37.2...v0.37.3
v0.37.2
Bug Fixes
- JS API viewports should throw only for basic data issues (#6537) - (418b54a) - Colin Alworth
- Correct two errors in generated types (#6536) - (0ee333c) - Colin Alworth
- Add feature to control systemic property of executeCode (#6534) - (e5376ef) - Andrew
- Ensure that DataIndexes produced by a RegionedColumnSourceManager are retained by the DataIndexer (#6533) - (c3bedd0) - Ryan Caudy
Features
- DH-18364: Add Property to Disable Core DataIndex (#6539) - (0081db7) - Charles P. Wright
- Add SourcePartitionedTable support to PythonTableDataService (#6532) - (e33bf27) - Ryan Caudy
Miscellaneous Chores
- Bump jpy requirements (#6530) - (cf9057d) - Devin Smith
- bump base image for jpy 1.1.0 (#6526) - (fef128a) - Devin Smith
- Bump to 0.37.2-SNAPSHOT (#6492) - (d75fbe6) - Devin Smith
Full Changelog: v0.37.1...v0.37.2
v0.37.1
What's Changed
Bug Fixes
- erroneous QueryCompiler retry when nothing unaccounted for (#6491) - (49fb385) - Nate Bauernfeind
- Ensure Flight SQL acquires shared lock (#6489) - (2a9a80e) - Devin Smith
- Close Jetty h2 streams with RST_STREAM and no error code (#6441) - (a002463) - Colin Alworth
- Added support to read iceberg tables partitioned by date (#6482) - (fbad5e6) - Shivam Malhotra
- JS subscriptions should return correct size while updating (#6463) (#6464) - (d10d596) - Colin Alworth
- Update Web version v0.99.2, fix table plugins props (#6475) - (21d9aee) - Mike Bender
- Expose TableSubscription.close() to JS (#6446) (#6448) - (303fd8e) - Mike Bender
- Update web version 0.99.1 (#6449) (#6450) - (b529e1f) - Mike Bender
- NPE in ProtobufDescriptorParserImpl for repeated nested repeated… (#6460) - (ef1c0f3) - Cristian Ferretti
- Boxed primitives trigger ClassCastException in ArrayPreview for protobuf repeated fields (#6434) (#6461) - (4b7c634) - Cristian Ferretti
Features
- JS clients can provide custom grpc transports (#6476) (#6479) - (e67510f) - Colin Alworth
- Don't fail when reading non-identity partitioning field (#6483) - (f98924b) - Shivam Malhotra
Miscellaneous Chores
- Bump to jpy 1.0.0 (#6490) - (4767737) - Devin Smith
- Bump to 0.37.1-SNAPSHOT - (4946cba) - Devin Smith
Full Changelog: v0.37.0...v0.37.1
v0.37.0
⚠ Breaking Changes
SeekableChannelsProviderLoader.fromServiceLoader
has been removed,
replaced withSeekableChannelsProviderLoader.load
.DataInstructionsProviderLoader.fromServiceLoader
has been removed,
replaced withDataInstructionsProviderLoader.load
.SeekableChannelsProviderPlugin
methods have been changed, now use a
String
for the URI scheme instead of aURI
.DataInstructionsProviderPlugin.createInstructions
method has been
changed, now uses aString
for the URI scheme instead of aURI
.IcebergTableParquetLocationKey
has added a new
SeekableChannelsProvider
parameter. - (38a3aa8)- the
table()
method onMultiJoinTable
has been
changed to@property
, which means to access the underlying table of a
multi join result, the user can no longer call thetable()
method but
instead just use thetable
attribute on aMultiJoinTable
instance. - (057c0a6) - the default behavior is changed to converting the
object-type columns in the given data frame first before creating a DH
table from it. While this change would result in much more sensible
column types in DH, e.g. String vs. PyObject for object type column with
only strings, it however will break user code written to handle the
PyObject type columns in the result table. - (4b8e20f) - The length of a business day was being incorrectly
computed by 1 ns. To keep the business day length the same for existing
calendars, the close of a business period has been changed from
inclusive to exclusive. This default behavior can be overridden by using
<includeClose>true</includeClose>
when specifying time ranges. This
will include the closing time for the range and will result in a
business period that is 1 ns longer. Business calendars using the legacy
format must be upgraded to the current format to use
<includeClose>true</includeClose>
. - (e75b192)
Bug Fixes
- (cpp-client) Add comments, fix typos, correct parameter names (#6319) - (f62088d) - Corey Kosak
- (cpp-client) Correctly process Deephaven NULL convention for types with underlying int64 representation (#6137) - (e8e0c88) - Corey Kosak
- (cpp-client) Bump arrow version (fixes Windows build) (#6002) - (499ba56) - Corey Kosak
- (cpp-client) WinSock calls need to be prefaced by WSAStartup (#5986) - (28ac180) - Corey Kosak
- (cpp-client) Fix certain error messages (#5988) - (5fc0504) - Corey Kosak
- (cpp-client) Provide correct instructions for making a RelWithDebInfo build (#5975) - (3aa117d) - Corey Kosak
- (csharp/ExcelAddIn) adjust and clarify README.md (#6012) - (dfa2981) - Corey Kosak
- (go) Disable Example_runScript for now because it breaks nightlies (#6318) - (6ffb635) - Corey Kosak
- (py-client-test) Read PluginClients In Order; fix shared_ticket Ref (#6155) - (09a7849) - Nate Bauernfeind
- (py-test) Wait for Full Cycle Before Checking if SubTable Failed (#6167) - (e4c1ddc) - Nate Bauernfeind
- (test) Eliminate Race Between LivenessScope Closing and GC (#6197) - (16c55ac) - Nate Bauernfeind
- Better chunk cleanup on StreamToBlinkTableAdapter.destroy, and a few listener.destroy fixes (#6406) - (52af771) - Ryan Caudy
- Apply auto-locking in time_window() (#6411) - (238d538) - Jianfeng Mao
- Close Jetty h2 streams with RST_STREAM and no error code (#6401) - (6ada0cb) - Colin Alworth
- return type for IcebergCatalogAdapter::load_table in python (#6408) - (5396c3a) - Shivam Malhotra
- Ensure that rollup and tree snapshot tests succeed reliably (#6407) - (a4a5285) - Ryan Caudy
- Rename directory containing proto files (#6379) - (8df9655) - Colin Alworth
- Correct rollup and tree snapshot code to wait for missed structural dependencies (#6395) - (acdb6bf) - Ryan Caudy
- Expanding hierarchical rows should account for viewport position (#6398) - (ae5b8c6) - Colin Alworth
- Use the string representation of a Python UDF as its name when it doesn't have the name attribute (#6399) - (2b6bd3c) - Jianfeng Mao
- Use correct naming conventions for Parquet list (#6391) - (c5018cf) - Devin Smith
- Correctly handle signature-less functions for Py UDF calls (#6368) - (b0c417e) - Jianfeng Mao
- ensure Iceberg layouts own the SeekableChannelsProvider (#6371) - (38a3aa8) - Devin Smith
- Address a number of liveness-related issues (#6366) - (02127ae) - Ryan Caudy
- Update web version 0.98.0 (#6369) - (c417486) - github-actions[bot]
- Static aggregations when a data index uses different names for the key columns should remap names correctly (#6360) - (16d061b) - Ryan Caudy
- Deprecate and stop firing JS token refresh event (#6317) - (b8c993a) - Colin Alworth
- Alows clients to expect that query performance results have been logged before they receive a response (#6334) - (7657ff5) - Ryan Caudy
- Support reading partitioned parquet from S3 bucket root URI (#6316) - (6d0344c) - Shivam Malhotra
- WouldMatch does not properly memoize. (#6313) - (6992036) - Charles P. Wright
- update S3ParquetTestBase testReadWriteUsingProfile (#6310) - (56e3cdf) - Devin Smith
- Add numpy as a required dependency for py client (#6308) - (640ab8f) - Jianfeng Mao
- Ensure surefire-action-report for nightly only runs on main (#6274) - (306153a) - Devin Smith
- Wrap TicketRouter flightInfoFor and resolve calls with wrapAsFailedExport (#6215) - (0b7726a) - Devin Smith
- JS API shouldn't require reference to window object (#6193) - (680047b) - Colin Alworth
- For iceberg test failures with unclosed ResolvingFileIO instance (#6217) - (8f02178) - Shivam Malhotra
- Subscribing to an uncoalesced table must not make it seem coalesced (#6211) - (22c20cf) - Colin Alworth
- Don't try to expose TypedTicket through JS API (#6212) - (8e79f7a) - Colin Alworth
- JS API rollups with unique aggs must specify null sentinel (#6202) - (3692f7a) - Colin Alworth
- Capture QueryCompiler for plottin...
v0.34.4
What's Changed
- ci: Trigger actions on pull requests to rc/v* branches by @niloc132 in #6412
- fix: various numpy backports by @devinrsmith in #6416
- fix: Correct rollup and tree snapshot code to wait for missed structural dependencies by @niloc132 in #6410
- fix: JS API rollups with unique aggs must specify null sentinel (#6202) by @niloc132 in #6409
Full Changelog: v0.34.3...v0.34.4