* rename config param label-file
* annotations rework - CLI params, file naming and backups
* lint
* improve cli option error checks
* enable session cookies
* enable session cookies
* add session id
* name annotations file in multi-dataset and multi-user safe manner
* pass data user hash to front-end
* add annotation collection name support to front-end
* add constant for annotation data collection name
* parameterize annotation collection name; make it sticky in the session
* clarify comments
* hard wire a temporary data collection name for testing
* prettier
* test comment
* package command
* set annotations filename dialog
* name and hash are visible
* wire up data collection capture
* add last mod time lookup to data locator
* store data locator in Driver
* save metadata header in labels csv
* lint
* fix tests
* change datetime format to second precision
* initial cut at backed mode
* make flask multithreading conditional on debug flag
* update X access to support backed mode
* lint
* improve help message for backed mode
* fix tests
* add MatrixProxy to normalize supported matrix types
* add FAQ entry for --backed
* remove use of matrix.T
* clean up
* add ability to disable diffexp from CLI; add hueristic to detect likely slow diffexp calculation, and warn user
* fix tests
* do not print diffexp speed warning if diffexp is disabled
* tweak wording of diffexp speed messages
* add FAQ entry on --disable-diffexp
* revise heuristic for warning about slow diffexp
* use quick tooltip delay on diffexp button
* add about arg
* add simple url validator
* attach about link to config api
* add links to configDefaults
* add conditional link in top left and menu item
* whitespace
* change to lower case
* move --about arg before click.command()
if this fixes it I have no idea why
* change link>URL
* be more descriptive about URL
* Make error more explicit
* refactor attach_data to accept about
* format
* change icon
* add trailing parenthesis
* whitespace
* initial commit of URL support for launch
* lint
* modify tests to use new data locator
* add locator unit tests
* fix typo in faq
* more lint
* update faq per PR review
* enforce column name uniqueness for obs and var
* parameterize the column name containing obs and var user-readable names
* use the new annotation index value from schema
* update f/e unit tests
* PR review suggestions
* lint
* WIP
* import find_available_port method
* move method to utils
so I can add to eventually add to gui
* add fixed-port flag to tests
* Update server/utils/utils.py
Co-Authored-By: Tony Tung <tonytung@merly.org>
* pr review suggestions
* pr review suggestions
* fix outdated package.json
* update error message
* simplify find_available_port function
* Auto scan for ports unless port is specified.
* fix tests
* fix comment for find_available_port
* lint error
* differentiate port error from generic os error
* add errno to OSerror
* pr review fixes
* raise e -> raise
* oserror -> socket error
* improve column access speed for sparse matrices
* add FAQ entry about data format performance
* add note about using --sparse flag for prepare command
* clean up for PR review
* Update docs/faq.md
Co-Authored-By: bkmartinjr <bruce@chanzuckerberg.com>
* improvements to big data faq
* move app creation to function
* create engine without load
* flake 8 fixes
* cleanup original scanpy test
* add default config
* handle missing data
* test data changes
* unify update
* load data isn't static anymore
* make app a class