diff --git a/CHANGELOG.md b/CHANGELOG.md index 233b151f9..a022db41b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,140 @@ # Changelog +## [0.3.0](https://github.com/pinellolab/pyrovelocity/compare/v0.2.0...v0.3.0) (2024-08-16) + + +### Features + +* **analyze:** add function to extract top mae genes ([508f1ba](https://github.com/pinellolab/pyrovelocity/commit/508f1ba43e741c54c2ae91d7c3c2ede79dbf281c)) +* **flake:** make python 3.11 default devshell ([c7ed17b](https://github.com/pinellolab/pyrovelocity/commit/c7ed17bdcdfe6c0422c026daf9c629b07828de10)) +* **io:** add (de)serialization functions ([6699308](https://github.com/pinellolab/pyrovelocity/commit/669930850933b7dfe4cf2c6b987855867abf2d76)) +* **io:** add cluster module ([b98ca30](https://github.com/pinellolab/pyrovelocity/commit/b98ca30b974e0966e2da6ccae6a73740e0689ccf)) +* **io:** add function to add duration to run info formatted json files ([86cc9d7](https://github.com/pinellolab/pyrovelocity/commit/86cc9d75ead3db52944d2ad470daed42cca9d5d1)) +* **io:** add function to copy a list of files to a target directory ([eb0b9f9](https://github.com/pinellolab/pyrovelocity/commit/eb0b9f9698597eebea4f8e4fe068a765c9e58028)) +* **io:** add module to combine json files ([678c95d](https://github.com/pinellolab/pyrovelocity/commit/678c95db9a861ba4eb9cd33220e432598fa806d9)) +* **io:** add module to sparsify/densify array dictionaries ([c1f15fc](https://github.com/pinellolab/pyrovelocity/commit/c1f15fc66aa7ef8d2f1f8ea6476293e8f972fdf3)) +* **io:** generate model comparison tables ([9582ab2](https://github.com/pinellolab/pyrovelocity/commit/9582ab2b077ea88c60fd009bd260f14c9a4851c8)) +* **io:** sparsify array dictionaries by default ([e11412e](https://github.com/pinellolab/pyrovelocity/commit/e11412e764e3ec0b8bbd631012438a890d337e14)) +* **nbs:** add support for model comparison to pancreas notebook ([7cb5f77](https://github.com/pinellolab/pyrovelocity/commit/7cb5f7726d7fb1962d4e2358d8b0cd09d5cf2a08)) +* **nbs:** initialize downsampled pancreas tutorial ([f7a0006](https://github.com/pinellolab/pyrovelocity/commit/f7a000676a6623cb432f34475eb6dd4e3f9bc355)) +* **plots:** add interactive count histogram plot ([68f3e16](https://github.com/pinellolab/pyrovelocity/commit/68f3e164443fc9bc5144e4140da5f767965d8c75)) +* **plots:** add normalized data to rainbow plot ([7ddc5f0](https://github.com/pinellolab/pyrovelocity/commit/7ddc5f0079a584ba940500cdd4a3a10159e388e2)) +* **plots:** add option to plot log spliced data to rainbow plot ([6226003](https://github.com/pinellolab/pyrovelocity/commit/62260033cc906944fc9a76b80d1b6860de38cc7a)) +* **summarize:** save gene ranking table to csv ([98f5bd6](https://github.com/pinellolab/pyrovelocity/commit/98f5bd64949b3076632fa915ef031ac0c8f5a255)) +* **tasks:** add qc plots to preprocessing task ([5b40254](https://github.com/pinellolab/pyrovelocity/commit/5b402541e9399a6e8c5c9939453e62d1ede3a4a6)) +* **tasks:** save loss data to csv ([15c1dc9](https://github.com/pinellolab/pyrovelocity/commit/15c1dc91dce9e77854ce376e2f3f80dc63cb90d3)) +* **tasks:** save parameter posterior means to dataframe ([90813c6](https://github.com/pinellolab/pyrovelocity/commit/90813c6010a479c394441f6213379b29eb201e3c)) +* **utils:** add function to save parameter posterior means to dataframe ([d3e4537](https://github.com/pinellolab/pyrovelocity/commit/d3e4537e29cd7e433393950b92757d64be57a9ee)) +* **utils:** construct anndata string diff ([411defe](https://github.com/pinellolab/pyrovelocity/commit/411defe628c6b83b5b747f999d7982c4e97cfeb6)) +* **utils:** log array data type with shape ([eb769b5](https://github.com/pinellolab/pyrovelocity/commit/eb769b5110b7cb938e8d02b6348b2cf957255306)) +* **workflows:** add task to collect metrics for all data sets and models ([b242f80](https://github.com/pinellolab/pyrovelocity/commit/b242f80f40ef8581c059916f2cff310919c109cf)) +* **workflows:** enable decks ([d89a638](https://github.com/pinellolab/pyrovelocity/commit/d89a6389e186d5edf4eeb6298499e17429851dbf)) +* **workflows:** track model metrics with results summary ([98f269f](https://github.com/pinellolab/pyrovelocity/commit/98f269fd27f1590e3c612ae88f5cfd1ed3eac00b)) +* **workflows:** update task interfaces to track metrics ([02f4897](https://github.com/pinellolab/pyrovelocity/commit/02f48970bc6170190b94b6a04421ac50ff7bf5dd)) +* **workflows:** use PreprocessOutputs dataclass ([1e5a223](https://github.com/pinellolab/pyrovelocity/commit/1e5a223399418737c3beb6b43903bbea8fd5b9b8)) + + +### Bug Fixes + +* **analysis:** get top mae genes by correlation bin ([be165a7](https://github.com/pinellolab/pyrovelocity/commit/be165a7b654e7981d09f7cbd02d336802cc0c9b9)) +* **analysis:** remove cell marker comments ([1b70c45](https://github.com/pinellolab/pyrovelocity/commit/1b70c45d11cb7e7363f7c185bb74403624ac98f3)) +* **analyze:** disable progress bar ([44e7e41](https://github.com/pinellolab/pyrovelocity/commit/44e7e41c5eea6a888ad74dddd3cc33a712b35a77)) +* **bazel:** add marker to args ([63e0c5b](https://github.com/pinellolab/pyrovelocity/commit/63e0c5bea85bc9048c521df0048cdef044a719e4)) +* **bazelignore:** local venv ([e5fa894](https://github.com/pinellolab/pyrovelocity/commit/e5fa894037c123b9a8a4d47c253b4e9c82d80968)) +* **bazel:** migrate tests <5 min to size medium ([404025f](https://github.com/pinellolab/pyrovelocity/commit/404025f351b50407fb3aa7aab6e03ad45c04a112)) +* **bazel:** remove small/large duplicate test module ([547af88](https://github.com/pinellolab/pyrovelocity/commit/547af88ad63de302883ffb057b7959a51d9b2b3d)) +* **bazelversion:** 7.0.2 -> 7.2.1 ([d1a2ebe](https://github.com/pinellolab/pyrovelocity/commit/d1a2ebe840c42dd9f38d03fdfd55710baf81376e)) +* **cid:** include MODULE.bazel in requirements cache key ([9ec2174](https://github.com/pinellolab/pyrovelocity/commit/9ec2174379a09da915884c4d636910b2a6ebc515)) +* **cid:** reenable bazel cache restore-keys ([809370d](https://github.com/pinellolab/pyrovelocity/commit/809370d123ef1422299b6a60dd56eb0267e9696f)) +* **cid:** set python versions to 3.11 ([ef7a62e](https://github.com/pinellolab/pyrovelocity/commit/ef7a62efccfebb9f624ae8e45973cb0858908aee)) +* **cid:** set sha-specific concurrency groups for workflow execution ([30ad7ce](https://github.com/pinellolab/pyrovelocity/commit/30ad7cea16a8f78cbddaec3ef4caf914f132c048)) +* **conda:** transiently pin scipy <1.14.0 ([f8f4e49](https://github.com/pinellolab/pyrovelocity/commit/f8f4e4930357a3ea640cd4272c6c131c2ff87c98)) +* **flake:** python310 -> python311 ([c5b609c](https://github.com/pinellolab/pyrovelocity/commit/c5b609c8d669608c57b4b6312bc826a9a476b4aa)) +* **gcs:** add function to download blob from uri ([c20b5d1](https://github.com/pinellolab/pyrovelocity/commit/c20b5d1d1246fabb579a8fd0ba8f83d5079467af)) +* **gcs:** add function to download path from uri ([10f71d2](https://github.com/pinellolab/pyrovelocity/commit/10f71d2d7d109efaafddfad12f2d6af665b4444a)) +* **interfaces:** resolve str | Path union to str ([93d1422](https://github.com/pinellolab/pyrovelocity/commit/93d1422eb38b1b5ed82f6027a078c1d184ee2e05)) +* **io:** add doctest for get_remote_task_results ([f4d8e7f](https://github.com/pinellolab/pyrovelocity/commit/f4d8e7f99ac2128a044c0679e5adf98115791fac)) +* **io:** allow specification of a download filename prefix ([d0d5439](https://github.com/pinellolab/pyrovelocity/commit/d0d5439ff927f2db41d33a8cd8002e97735193d0)) +* **io:** include csv files in default model summary archive ([8b7c809](https://github.com/pinellolab/pyrovelocity/commit/8b7c8093605cefd41c3fe6ca0ec505a3bd453ab0)) +* **io:** increase default sparsify threshold ([6ba43a1](https://github.com/pinellolab/pyrovelocity/commit/6ba43a175f9d80115e145b5c8d6bde1c761f897c)) +* **io:** skip doctests that require gcp credentials ([455e941](https://github.com/pinellolab/pyrovelocity/commit/455e9417d11d0903c1435fe7acb98b8a15e23746)) +* **io:** update required fields for serialization ([73e4b86](https://github.com/pinellolab/pyrovelocity/commit/73e4b86079742a8a58366dc949b0919a939ea960)) +* **io:** use tmp dir fixture for compressedpickle doctests ([f678036](https://github.com/pinellolab/pyrovelocity/commit/f67803665aeba31f9b75189df551a8a1de9d7ba0)) +* **make:** run slow tests with test-cov-xml target ([bc58fed](https://github.com/pinellolab/pyrovelocity/commit/bc58fedd6ac3ea954bc4fcdd4834e79eff396233)) +* **models:** remove unused branching in generate_posterior_samples method ([4a924e3](https://github.com/pinellolab/pyrovelocity/commit/4a924e3814644748855b03c5da4c86918d569988)) +* **nbs:** add interactive review to guides contents ([7e33abf](https://github.com/pinellolab/pyrovelocity/commit/7e33abf2f46c967df8c58cfb0fbb5d8067fbb05d)) +* **nbs:** add parameter posterior estimates to pancreas results ([65246de](https://github.com/pinellolab/pyrovelocity/commit/65246defbcb8ed6eb70ec2dc6bc8fe02269f1ea1)) +* **nbs:** add stub for preprocessing notebook ([cf23251](https://github.com/pinellolab/pyrovelocity/commit/cf232510a0d520ac69aa3cb8ff0e8eaefa64e74d)) +* **nbs:** auto-hide navigation ([4d94b0b](https://github.com/pinellolab/pyrovelocity/commit/4d94b0bf73eb210a20a37996a9aff7feb80a87fd)) +* **nbs:** disable ipynb ([79a74df](https://github.com/pinellolab/pyrovelocity/commit/79a74df72a4025d830a1a04af8257285ce5a6630)) +* **nbs:** escape apostrophes ([420872c](https://github.com/pinellolab/pyrovelocity/commit/420872c1cccb88031bdd2d652324c123ac43f71c)) +* **nbs:** flesh out interactive review ([a827c71](https://github.com/pinellolab/pyrovelocity/commit/a827c71269712c5bef9f129c15d93bf492fe4fc0)) +* **nbs:** indicate explicit output ([6628265](https://github.com/pinellolab/pyrovelocity/commit/66282659928d03d5d7dcd7c2481e59e26a272adc)) +* **nbs:** move interactive guide to subfolder ([eb6419a](https://github.com/pinellolab/pyrovelocity/commit/eb6419ae26c43ae3712c74e969461fd52f20bf75)) +* **nbs:** move interactive review to 2nd guide ([873a0f6](https://github.com/pinellolab/pyrovelocity/commit/873a0f6b9f492546309433bf484f99af5aae74f3)) +* **nbs:** plot mitochondrial and ribosomal percentage histograms in preprocessing guide ([a9cde59](https://github.com/pinellolab/pyrovelocity/commit/a9cde59f08697849b541a815c4f16e06d4e7e838)) +* **nbs:** pygments -> gruvbox syntax highlighting ([ee9b6dc](https://github.com/pinellolab/pyrovelocity/commit/ee9b6dcac97e65fc6da1801ef4bc1aec4c44e88b)) +* **nbs:** separate md, mdx, and site configs ([9c0f193](https://github.com/pinellolab/pyrovelocity/commit/9c0f193475692647479ea49ea1d8f9f51bee7b0f)) +* **nbs:** separate references to preprocessing and results ([afc6bc9](https://github.com/pinellolab/pyrovelocity/commit/afc6bc9ac7cbe16e4a8309da4e86a348a7a39f7c)) +* **nbs:** set default syntax highlighter ([f30c2b3](https://github.com/pinellolab/pyrovelocity/commit/f30c2b33480f1fcbee4715e823497eef963809c3)) +* **nbs:** sync freeze ([810286e](https://github.com/pinellolab/pyrovelocity/commit/810286e1b261b31a70425378993b96af2e047689)) +* **nbs:** update dark css ([261cdcf](https://github.com/pinellolab/pyrovelocity/commit/261cdcfda7677a6ff4ec780f3af635ec4f1de35d)) +* **nbs:** update path to preprocessing notebook ([682e9a3](https://github.com/pinellolab/pyrovelocity/commit/682e9a3f6d62c4a6c6c163324255181b35c9e638)) +* **nbs:** use mathjax ([81f4808](https://github.com/pinellolab/pyrovelocity/commit/81f48081205c9c747c85c230725b088e87eb01cc)) +* **nbs:** use subdirectory for pancreas tutorial ([94427a8](https://github.com/pinellolab/pyrovelocity/commit/94427a8f0ec8fdded75c32d211b2f0415ea6cbe0)) +* **nix:** add workflows to check groups ([be3645e](https://github.com/pinellolab/pyrovelocity/commit/be3645e2c1cd5b3c1b3b5399bb0bf62ced978538)) +* **nix:** explicit preferwheel for deps ([06320e5](https://github.com/pinellolab/pyrovelocity/commit/06320e513b5bf4e481f5511509da089bf64d23c1)) +* **nix:** make 3.11 default python in container images ([4e95dbd](https://github.com/pinellolab/pyrovelocity/commit/4e95dbdff31859df93f0bb57848e6a1664c7ffdd)) +* **plots:** add option to save gene ranking plot ([50a71cf](https://github.com/pinellolab/pyrovelocity/commit/50a71cfc41e1491751aabdf5fb42bf97fd1c5118)) +* **plots:** add option to save rainbow plot ([ffdd829](https://github.com/pinellolab/pyrovelocity/commit/ffdd8290008363c89e6bb97e4644e3d4ab42847a)) +* **plots:** default to highest and lowest shared time correlation genes in summary plot ([d5aae5c](https://github.com/pinellolab/pyrovelocity/commit/d5aae5c9749b458c2966c325d66f3223614ae5a6)) +* **plots:** disable normalized data on summary plot ([443ac27](https://github.com/pinellolab/pyrovelocity/commit/443ac277a267fbe89f391789ae9b8613fb5cd207)) +* **plots:** enable offset parameters in posterior distribution plots ([fe25b4c](https://github.com/pinellolab/pyrovelocity/commit/fe25b4c8b3bb19ed6a1f90a23aae92dfd9cf8368)) +* **plots:** ensure data is a dense array before flattening ([feaa936](https://github.com/pinellolab/pyrovelocity/commit/feaa936fea2b1fc2e2357ae06dc7b1de1cfea976)) +* **plots:** ensure path for posterior predictive phase portraits ([68493c2](https://github.com/pinellolab/pyrovelocity/commit/68493c29641be15947ecf40a9e3e4a8ad58edaaa)) +* **plots:** make parameter names an argument of posterior plot function ([c2c35f5](https://github.com/pinellolab/pyrovelocity/commit/c2c35f5aa8c5b9058104d3ffb347c1edfcdc164c)) +* **plots:** use cividis in plot posterior time ([68c90ef](https://github.com/pinellolab/pyrovelocity/commit/68c90efd496f4f0176cf5015878ebeed7babaf87)) +* **pre-commit:** remove pyupgrade ([e3780dd](https://github.com/pinellolab/pyrovelocity/commit/e3780ddc2fd485489e8e38319153708510a6d953)) +* **preprocess:** disable progress bar ([d3a5770](https://github.com/pinellolab/pyrovelocity/commit/d3a5770459af00dd1f24b66d9f8bb2319caa9c03)) +* **preprocess:** remove unsupported kwarg ([db44ae1](https://github.com/pinellolab/pyrovelocity/commit/db44ae1478c78688fc99b0c99d0a087ddf5416bd)) +* **pyproject:** disable slow tests and print durations ([05e6507](https://github.com/pinellolab/pyrovelocity/commit/05e650746dfc155a2b99febad793d0c0aefa3a59)) +* **pyproject:** flytekit 1.13 ([6ad23e7](https://github.com/pinellolab/pyrovelocity/commit/6ad23e78b32847695b39b6d22c4ad99c016a7d0b)) +* **pyproject:** note intention to exclude markers associated with slow tests ([057af3d](https://github.com/pinellolab/pyrovelocity/commit/057af3db2246c0dbd4e7de7f3f594a41d281bbd6)) +* **pyproject:** pin conda-lock fmt <11.0 for libmambapy ([d78a8f8](https://github.com/pinellolab/pyrovelocity/commit/d78a8f8169dfd113b268518dc8520a0f557c4da3)) +* **pyproject:** shift python version bounds to 3.11 and 3.12 ([fe1d4a8](https://github.com/pinellolab/pyrovelocity/commit/fe1d4a813365677e65927e7f6e6f36f17efe8284)) +* **pyproject:** temporarily pin yanked matplotlib 3.9.1 ([2dedb66](https://github.com/pinellolab/pyrovelocity/commit/2dedb66c514f88ac104e59093ade454c180b056e)) +* **scripts:** include json, html, md, tex in uploads ([a157b27](https://github.com/pinellolab/pyrovelocity/commit/a157b270c28b453f3a51e199aeff271ef5509bf3)) +* **scripts:** update nbs build ([fe20d09](https://github.com/pinellolab/pyrovelocity/commit/fe20d092c39e700b6e9a8d01731afa53fc261a8f)) +* **summarize:** pareto_frontier_genes -> top_mae_genes ([d5c3896](https://github.com/pinellolab/pyrovelocity/commit/d5c3896d26b035bb01f34549da1b27c9628c892a)) +* **summarize:** use mae percentiles and min genes per bin in marker gene selection ([0dfef1e](https://github.com/pinellolab/pyrovelocity/commit/0dfef1ebc7386f634921e10da333f37da7c31f3a)) +* **tasks:** declare skip preprocess doctest once ([49be02f](https://github.com/pinellolab/pyrovelocity/commit/49be02fb92401324b69daf0236b10b580ac3e3e4)) +* **tasks:** download_dataset accepts Path type ([846d5a7](https://github.com/pinellolab/pyrovelocity/commit/846d5a704419e1a39cb1a25a82962187bfef3519)) +* **tasks:** enable nested mlflow runs ([fcbbede](https://github.com/pinellolab/pyrovelocity/commit/fcbbede9705f8fd45d3b675db4f13bbe3d8810a1)) +* **tasks:** enable Path objects where applicable ([4096175](https://github.com/pinellolab/pyrovelocity/commit/4096175250a9bd9630525b6aa652d27de2ae364e)) +* **tasks:** include preprocessing reports directory in outputs ([aee79a1](https://github.com/pinellolab/pyrovelocity/commit/aee79a18c631a8abe418c26a980f47a418d863fb)) +* **tasks:** remove ad hoc modification of posterior samples ([7738f5c](https://github.com/pinellolab/pyrovelocity/commit/7738f5c658c0ec89e82924fc6b004fe7f5e49c50)) +* **tasks:** remove manual figure write ([29de76b](https://github.com/pinellolab/pyrovelocity/commit/29de76b16ba717a551ec79ad88498869b7747dc6)) +* **tasks:** remove redundant logic to save rainbow plot in summarize task ([591e759](https://github.com/pinellolab/pyrovelocity/commit/591e759ad51c79c44ee37755425731c385b2c193)) +* **tasks:** remove unused t0 from model1 posterior samples ([583f786](https://github.com/pinellolab/pyrovelocity/commit/583f7869e62145e718a9447da8d4b2820d349a68)) +* **tasks:** skip postprocess dataset xdoctest ([d8a8fc1](https://github.com/pinellolab/pyrovelocity/commit/d8a8fc11fe93c106a324bde3ded62c8008d94982)) +* **tasks:** update args and examples for summarize dataset ([4a51e02](https://github.com/pinellolab/pyrovelocity/commit/4a51e023b769521c60fe6e76d7c67cf16342b40d)) +* **tasks:** update ticks on loss plot axes ([350499f](https://github.com/pinellolab/pyrovelocity/commit/350499f2c3f3e93b0d4dcf48acdead40d9f603a1)) +* **tests:** account for updated postprocessing outputs interface ([ed6a81f](https://github.com/pinellolab/pyrovelocity/commit/ed6a81f4b5af11b208171e7ddba2cbd7977b7da1)) +* **tests:** add in-memory fixtures used by plotting modules ([41176ff](https://github.com/pinellolab/pyrovelocity/commit/41176ff5ba9e08c7d8409569ed8ac218b9188d7b)) +* **tests:** mark slow tests in determinstic inference module ([d3a5254](https://github.com/pinellolab/pyrovelocity/commit/d3a5254ad07f80cf159dfcdb3a13985cbda89652)) +* **tests:** remove gene number specification ([32008d6](https://github.com/pinellolab/pyrovelocity/commit/32008d695da7252ad0d3f85c01aeacd616ad6b1a)) +* **tests:** set tmp path to preprocessing reports ([1cfd403](https://github.com/pinellolab/pyrovelocity/commit/1cfd4032ef7dff21a62307017f01b74de1f75730)) +* **tests:** use importlib resources to refer to fixture data ([7175c79](https://github.com/pinellolab/pyrovelocity/commit/7175c792220743c85442d0dc8a77cd32881d3923)) +* **utils:** use shape of ArrayLike in pretty printing dicts ([918378c](https://github.com/pinellolab/pyrovelocity/commit/918378c67b5e2a2da222ca64e51a4b962956c3d7)) +* **workflows:** add CombinedMetricsOutputs dataclass ([c6f3e3c](https://github.com/pinellolab/pyrovelocity/commit/c6f3e3ccc767914f3676b1752e44bdd8e53a4d9c)) +* **workflows:** add PreprocessOutputs dataclass ([4fed2dd](https://github.com/pinellolab/pyrovelocity/commit/4fed2dd8bd1046c165d1dbc451828696193b6cb6)) +* **workflows:** disable flyte decks causing type error ([5ca26ff](https://github.com/pinellolab/pyrovelocity/commit/5ca26ff361e3e240ff612fed577b1c2190abaeb4)) +* **workflows:** disable upload summary cache ([c8b8548](https://github.com/pinellolab/pyrovelocity/commit/c8b8548144588f46ad61c10f1664a1f2d94c6777)) +* **workflows:** explicitly include csv in model summary archive ([22de101](https://github.com/pinellolab/pyrovelocity/commit/22de101e062d7a1e337dc9d36ce42d8a87d479b5)) +* **workflows:** remove top-level wrapper workflow ([0ac37df](https://github.com/pinellolab/pyrovelocity/commit/0ac37df74b9a372eaa07da50635eef8255cf305b)) +* **workflows:** toggle data subset flag on ([ceb7524](https://github.com/pinellolab/pyrovelocity/commit/ceb7524f5dbc42332c4d44af23d5641b3c6c46d7)) +* **workflows:** toggle data subset to default false ([55ac13a](https://github.com/pinellolab/pyrovelocity/commit/55ac13a0807f2abd9ac907a1e6f4d6be6eab7a3c)) + ## [0.3.0-beta.7](https://github.com/pinellolab/pyrovelocity/compare/v0.3.0-beta.6...v0.3.0-beta.7) (2024-08-16)