statgen / locuszoom

A Javascript/d3 embeddable plugin for interactively visualizing statistical genetic data from customizable sources.
https://statgen.github.io/locuszoom/
MIT License
156 stars 29 forks source link

Major data retrieval refactor #256

Closed abought closed 3 years ago

abought commented 3 years ago

Ticket: #253

πŸ’£ This is a work in progress PR. It contains significant breaking changes that will affect every LZ usage, particularly involving the mechanisms of data adapters (retrieval) and how layouts deal with data. The syntax will evolve over time. πŸ’£

Purpose

Revise and extend the way in which LZ retrieves data.

Decouples the act of retrieval from the act of combining datasets; for example, would allow any payload-compliant source to feed LD information, without needing to write a custom LD subclass in order to get the join logic.

More functional style to make request processing much easier to follow, debug, and extend.

Support multi-value subset caches (for smoother region switching + smarter LD)

Revise the current mechanism of namespaces- eliminate the distinction between "abstract" and "concrete" layouts by emphasizing locally (not globally) distinct field names

TODO

abought commented 3 years ago

Merging into feature branch so that it can be tested in conjunction with TRAITS and PARSERS (each separate changesets, which are intended to work together towards several new features).

Rough release notes so far:

This release makes many internal changes to how LocusZoom retrieves data. It provides new functionality that should make it easier to create custom plots from various types of file.

Internal improvements

Deprecations and major breaking changes

Bugfixes: