Age | Commit message (Expand) | Author |
2022-05-19 | Update Web-UI: use new error collection paradigm...- README.org: document how to run scripts manually
- manifest.scm: remove python-rq as a dependency
- qc_app/jobs.py: rework job launching and processing
- qc_app/parse.py: use reworked job processing
- qc_app/templates/job_progress.html: display progress correctly
- qc_app/templates/parse_results.html: display final results
- scripts/worker.py: new worker script
| Frederick Muriuki Muriithi |
2022-05-19 | Extract progress indication from the parsing...Since progress indication is not part of the parsing, this commit
extracts the progress indication into functions with well defined
input arguments that hide the progress indication logic from the
parsing function.
| Frederick Muriuki Muriithi |
2022-05-18 | Update CLI: use new error collection code...Use the new code that collects the errors in the CLI client.
| Frederick Muriuki Muriithi |
2022-05-18 | Remove obsoleted code. Fix linting errors....Remove the old code that relied on exceptions to parse errors in the
uploaded files.
| Frederick Muriuki Muriithi |
2022-05-18 | Simplify slot names and fix namedtuple type name...- replace `line_number` with `line` and `column_number` with `column`
to save on slot name lengths.
- Fix the type name for the `DuplicateHeading` namedtuple type
| Frederick Muriuki Muriithi |
2022-05-18 | Parse files with new non-exception functions...Parse the files with the new functions that return error objects
instead of raising exceptions
| Frederick Muriuki Muriithi |
2022-05-18 | Return errors when found or None otherwise...This commit adds a number of functions that return the error object
when an error is found, or `None` otherwise. It avoids the use of
exceptions as control flow constructs.
| Frederick Muriuki Muriithi |
2022-05-11 | Remove unnecessary packages for the CLI version | Frederick Muriuki Muriithi |
2022-05-11 | Update the guix definitions for the application | Frederick Muriuki Muriithi |
2022-05-11 | Document generating and running qc for/with docker | Frederick Muriuki Muriithi |
2022-05-11 | Tag string as a python f-string to fix error display bug | Frederick Muriuki Muriithi |
2022-05-09 | Update documentation and license...Add documentation on how to run the development version of the
GeneNetwork Quality Control application.
Update the license to the agpl3+ license used by genenetwork3
| Frederick Muriuki Muriithi |
2022-05-05 | Add a guix definition to enable installation | Frederick Muriuki Muriithi |
2022-05-05 | Add the long_description field for setuptools | Frederick Muriuki Muriithi |
2022-05-05 | Add `etc' as a package so that files underneath it are installed | Frederick Muriuki Muriithi |
2022-05-05 | Add package management configs | Frederick Muriuki Muriithi |
2022-05-02 | Optimise strain names parsing...- Use a way faster way of parsing the strains file
| Frederick Muriuki Muriithi |
2022-04-28 | Use sqlite3 to save the jobs metadata...* Use sqlite to save the jobs metadata and enable UI update of the
progress for large files
| Frederick Muriuki Muriithi |
2022-04-28 | Update queuing and display results of file parsing...* Make the 'worker' functions free from needing the application
context by passing all the details they need as arguments.
* Enable the display of parsing results.
| Frederick Muriuki Muriithi |
2022-04-27 | Enable managing app via setup.py...While the application is developed with GNU Guix, the end user might
not be using it, and therefore, this commit provides a way for the
user to install the application with the usual python package
management systems.
| Frederick Muriuki Muriithi |
2022-04-27 | Implement command-line interface for QC of files | Frederick Muriuki Muriithi |
2022-04-26 | Fix issues caught processing the jobs...* Create and push the application context for the worker functions
* Fix the update of meta fields
| Frederick Muriuki Muriithi |
2022-04-26 | Queue file parsing jobs...Enable the queuing of file parsing jobs, since the files could be
really large and take a long time to parse and present results.
* etc/default_config.py: Add default config for redis server
* manifest.scm: Add redis, and rq as dependencies
* qc_app/__init__.py
* qc_app/jobs.py: module to hold utilities for management of the jobs
* qc_app/parse.py: Enqueue the job - extract file-parsing code to
callable function
* qc_app/templates/base.html: Enable addition of extra meta tags
* qc_app/templates/job_progress.html: template to display job progress
* qc_app/templates/no_such_job.html: template to indicate when a job
id is invalid
* quality_control/parsing.py: Add the total size parsed so far
| Frederick Muriuki Muriithi |
2022-04-25 | Call parsing function. Fix a few issues....* qc_app/entry.py: Pass filetype onward to parsing endpoint
* qc_app/parse.py: Call the function(s) necessary to parse a file
* quality_control/errors.py: Fix argument passing to super class
| Frederick Muriuki Muriithi |
2022-04-25 | Implement file upload | Frederick Muriuki Muriithi |
2022-04-25 | Advance seek_position on error...Advance the seek position, once we have yielded up an error to causing
an infinite loop in certain conditions, where the `parse_errors`
function ends up resuming the gile in the same position once it
experiences an error.
| Frederick Muriuki Muriithi |
2022-04-25 | `take`: function to select a few items from an iterable...To avoid processing all the items in an iterable, the `take` function
is added in this commit. It realised a limited number (specified at
call time) of items from the iterable given.
| Frederick Muriuki Muriithi |
2022-04-25 | docs: update documentation on checks | Frederick Muriuki Muriithi |
2022-04-25 | UI: Add index page and basic styling...Add template(s) for the index page and some basic styling to get
started with.
| Frederick Muriuki Muriithi |
2022-04-25 | Ignore the instance directory if present in the repository...Ignore the flask instance directory if it is present in the
repository. The directory being present in the repository is mostly a
development convenience feature.
| Frederick Muriuki Muriithi |
2022-04-21 | Collect all the errors...Build a function to collect all the parsing errors into a "sequence"
of dict objects containing the issues found.
| Frederick Muriuki Muriithi |
2022-04-20 | Add scaffolding for web app...Add a basic scaffolding for the web interface to the quality-control
application.
| Frederick Muriuki Muriithi |
2022-04-20 | Update parameters for tests...Derive a "correct" sample file from an existing sample file with
errors for testing with large files.
Fix issue caught by test.
| Frederick Muriuki Muriithi |
2022-04-20 | Fix linting issues | Frederick Muriuki Muriithi |
2022-04-13 | Implement remaining file parsing tests...* Implement remaining file parsing tests and some helpers functions
needed for ensuring the tests work.
| Frederick Muriuki Muriithi |
2022-04-13 | Check for `DuplicateHeader` errors in `parse_file` function | Frederick Muriuki Muriithi |
2022-04-13 | Update `valid_header` to pass check for duplicated headers | Frederick Muriuki Muriithi |
2022-04-13 | Add test for duplicate headers | Frederick Muriuki Muriithi |
2022-04-13 | Implement test for parsing that fails...* Improve tests that ensure parsing fails in case the file has errors
* Add strains.csv file
* Implement minimum viable functionality that passes the implemented tests
| Frederick Muriuki Muriithi |
2022-04-13 | Add tests outline for file parsing...Add dummy failing tests and a stub for the parsing of the files
| Frederick Muriuki Muriithi |
2022-04-13 | Update Exception name...Change the exception name to be more descriptive.
| Frederick Muriuki Muriithi |
2022-04-13 | Add sample files for tests...Add some sample files to be used for testing that the parsing works as
expected.
| Frederick Muriuki Muriithi |
2022-04-11 | Add missing `__init__.py` to prevent import errors...Without the `tests/__init__.py` file, the tests directory was not
considered a package and therefore, running:
$ pytest
would fail with import error notifications. This fixes that.
| Frederick Muriuki Muriithi |
2022-04-11 | Implement MVI for headers validity checking function...Add a minimum viable implementation that passes the tests for the
function that checks for the validity of the headers
| Frederick Muriuki Muriithi |
2022-04-11 | Add tests for headers...* Add tests to check for validity of the headers
* Add stubs for the tests
| Frederick Muriuki Muriithi |
2022-04-11 | Implement MVP for valid_value functions...* Implement the minimum viable functions for the average and standard
error `valid_value` functions.
| Frederick Muriuki Muriithi |
2022-04-11 | Implement tests and stubs for functions under test | Frederick Muriuki Muriithi |
2022-04-11 | Set up initial, failing tests for cell values | Frederick Muriuki Muriithi |
2022-04-11 | Initialise the QC repository | Frederick Muriuki Muriithi |