aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-11-28Handle generic MySQL errors at the top-level.Frederick Muriuki Muriithi
2023-11-28Capture, log and handle generic exceptionsFrederick Muriuki Muriithi
Handle any and all unforeseen error conditions gracefully by capturing the exceptions, logging out for debug purposes and providing the user with a generic error page.
2023-11-24QC: Check for only one decimal place.Frederick Muriuki Muriithi
2023-11-15Log out DB errors even when handledFrederick Muriuki Muriithi
Log out any DB errors that occur to help with tracking and debugging failures.
2023-11-15Remove debugging statement.Frederick Muriuki Muriithi
2023-11-15Bug: Insert ProbeSets before average data and cross-refsFrederick Muriuki Muriithi
Insert the ProbeSets first before inserting the average data and cross-referencing it.
2023-11-15UI: Remove 'Full Name' and 'Short Name' fields for study.Frederick Muriuki Muriithi
2023-11-15UI: Only show GeneChipId and GeneChipNameFrederick Muriuki Muriithi
2023-11-15mypy: Fix typing errors.Frederick Muriuki Muriithi
2023-11-15Linting: Fix linting errors.Frederick Muriuki Muriithi
2023-11-15Commit changes on query success.Frederick Muriuki Muriithi
2023-11-15Provide default `AuthorisedUsers` value.Frederick Muriuki Muriithi
2023-10-30Prevent overwrite. Avoid inserting same probeset multiple times.Frederick Muriuki Muriithi
* Avoid overwriting existing data by adding a random string to the name of the ProbeSet * Read ProbeSet names separately from the means for the strains, to avoid entering the same ProbeSet record over and over with varying names.
2023-10-18Link to `ProbeSet.Id` in XRef TableFrederick Muriuki Muriithi
The "ProbeSetId" value in the file is actually stored in the database in the `ProbeSet.Name` field, whereas the `ProbeSetXRef` table actually uses the `ProbeSet.Id` value to define the relationships. This commit fixes that issue.
2023-10-18Explicitly specify columnsFrederick Muriuki Muriithi
Due to possible schema differences between local small db on development computer and those on CI/CD and Production, explicitly specify the columns being operated on by the queries.
2023-10-16Fix bug: Insert ProbeSets if they do not exist.Frederick Muriuki Muriithi
2023-10-16Fix bug: Provide the platform_id to `insert_means`Frederick Muriuki Muriithi
2023-10-16Fix bug: parsing fields from query.Frederick Muriuki Muriithi
2023-10-16Indicate progress for data insert.Frederick Muriuki Muriithi
2023-10-16Link study to ProbeSetFreeze table.Frederick Muriuki Muriithi
2023-01-17Add link back to index page on abort or errorsFrederick Muriuki Muriithi
2023-01-17upload: Enable cancelling an upload.Frederick Muriuki Muriithi
2022-12-23Help: Provide some help content for end userFrederick Muriuki Muriithi
2022-11-16ui: provide error messaging if file is not selected.Frederick Muriuki Muriithi
2022-11-16ui: Don't show upload progress indicator if file is not selected.Frederick Muriuki Muriithi
2022-11-16tests: Fix some failing testsFrederick Muriuki Muriithi
2022-11-16qc: Allow whole numbers or numbers where the decimals are all zeroesFrederick Muriuki Muriithi
2022-11-16ui: Only display the "alert-success" green on completionFrederick Muriuki Muriithi
* To avoid confusion, only display the "alert-success" green on completion of the parsing process. While parsing, if there are no errors, then display the "No errors found so far" message without the green colour.
2022-11-12Accept plain text (text/plain) filesFrederick Muriuki Muriithi
2022-09-16Add redis and mariadb as propagated inputsFrederick Muriuki Muriithi
2022-09-16Deactivate testsFrederick Muriuki Muriithi
2022-09-16Config: Add apache2 sample config fileFrederick Muriuki Muriithi
2022-09-16Add dependency: gunicornFrederick Muriuki Muriithi
* guix.scm: Add dependency (gunicorn)
2022-09-08Use sys.executable and setup default environmentFrederick Muriuki Muriithi
Use the sys.executable to get the correct python binary to run the external processes, and setup the environment to point to the correct PYTHONPATH.
2022-09-08Update dependenciesFrederick Muriuki Muriithi
* guix.scm: reorganise the dependencies * setup.cfg: change the `install_requires` values
2022-08-31Commit missing files.Frederick Muriuki Muriithi
2022-08-31Update test: use new script name.Frederick Muriuki Muriithi
2022-08-31Provide database port where relevant.Frederick Muriuki Muriithi
2022-08-31Check connections outside app factoryFrederick Muriuki Muriithi
Check the connections in the wsgi.py file, outside of the `create_app` application factory to avoid issues with tests failing due to test app not initialising because of missing connections in the test environment.
2022-08-05Update job status. Display stdout and stderr outputsFrederick Muriuki Muriithi
* Display the status of the job, as it is running * Display STDERR output if an error occurs * Display STDOUT output as job is running and on successful completion of the job
2022-08-04Implement data insertionFrederick Muriuki Muriithi
- Hook up external data insertion script to webserver code - Provide rudimentary status indication - Generalise some job creation details
2022-08-04Handle stderr outputFrederick Muriuki Muriithi
* Fix bug where stderr was not being updated on redis appropriately
2022-08-04Format queries for output. Get rid of extraneous output.Frederick Muriuki Muriithi
2022-08-04Fix typo: 'species' -> 'speciesid'Frederick Muriuki Muriithi
2022-08-04UX: Enable selecting radio by clicking anywhere on the rowFrederick Muriuki Muriithi
Ease the selection of a radio button by allowing the user to click on any of the table cells that are in the same row as the radio button of concern.
2022-07-19Save standard error data. Fix linting and typing errors.Frederick Muriuki Muriithi
2022-07-19Implement data insertion (averages/means)Frederick Muriuki Muriithi
* quality_control/file_utils.py (new file): extract common file utilities. * quality_control/parsing.py (refactor): extract common file utilities. * scripts/insert_data.py: Implement data insertion for averages/means
2022-07-19Check connections before launchingFrederick Muriuki Muriithi
* qc_app/__init__.py (refactor): Check connection before launching the application * qc_app/check_connections.py (new file): Add code to check connections * qc_app/db_utils.py (refactor): enable passing the database uri as an argument to the connection creation function. * scripts/worker.py (refactor): Use new code to check for redis connection.
2022-07-19Rework: Use generic worker script to launch processFrederick Muriuki Muriithi
Use the generic worker script as the interface for launching external processes.
2022-07-19Add generic worker scriptFrederick Muriuki Muriithi
Add a generic worker script, whose purpose is: - to launch the specific worker script - to capture both stdin and stderr streams and put them on redis In this way, we can launch redis-aware and redis-unaware workers and capture their outputs or errors for later processing.