aboutsummaryrefslogtreecommitdiff
path: root/wqflask/base
AgeCommit message (Expand)Author
2022-12-01Fix Exception that's raised when query_sql returns None...* wqflask/base/data_set/dataset.py: Delete itertools, DictCursor. (DataSet.get_accession_id): Handle a case where query_sql returns a None value. Munyoki Kilyungi
2022-11-30Remove check for shortnames/fullnames in probeset metadata query...Some rows in InfoFiles have NULL values thereby causing an exception to be raised. All InfoFiles.DB_Name are unique. * wqflask/base/data_set/dataset.py (DataSet.get_accession_id): Remove shortname/fullname check in query. Munyoki Kilyungi
2022-11-10Use the Maybe Monad when fetching the accession_id of a dataset...* wqflask/base/data_set/dataset.py: Import itertools, DictCursor, MonadicDict, Maybe, Nothing and query_sql. (DataSet.__init__): Initialize accession_id to Nothing. (DataSet.as_dict): Rename this to ... (Dataset.as_monadic_dict): ... this which returns a monadic dictionary. (DataSet.get_accession_id): Query for the accession_id and return it as a maybe monad. Munyoki Kilyungi
2022-11-08Remove string check for 'None' in HTML template...In Jinja, you can use dot notation to check for values. If a value does not exist, you get None by default. * wqflask/base/data_set/dataset.py (Dataset.get_accession_id): Remove returning a string version of None. * wqflask/wqflask/templates/correlation_page.html: Delete `!= 'None'`. Munyoki Kilyungi
2022-11-02Update Phenogen URL to rn7zsloan
2022-10-28Refactor: Pass user id to `check_resource_availability`...* Pass the user_id for the current user to the `check_resource_availability` function as an argument, rather than using the global `g.user_session.user_id` value. Frederick Muriuki Muriithi
2022-10-27init fix for querying for datasetsAlexander_Kabui
2022-10-20Cleanup: Remove unused code...* Commit 49580eb9cd47bb2ce15fd44be11bb9580d85efef removed the use of the gn-proxy, but left some code that was used expressly for use with the gn-proxy. This commit removes that code. Frederick Muriuki Muriithi
2022-10-18Change logic in retrieve_trait_info to account for situations where a marker ...zsloan
2022-10-17Fix bug when initializing Temp DatasetGroupszsloan
2022-10-14Add BXD_GROUP_EXCEPTIONS to webqtlConfig.py instead of having the groups hard......I'm not sure why this logic exists, so it might be removed entirely later. I'm asking Rob zsloan
2022-10-12Use SQL to fetch trait metadata instead of gn-proxy, since it's dramatically ...zsloan
2022-10-12Include chr/mb values in jsonable traitzsloan
2022-10-04Add more information to exception to help in debuggingFrederick Muriuki Muriithi
2022-09-26Remove unused database_connection import from species.pyzsloan
2022-09-25Fix issue where the display name was used in the hmac for phenotype traitszsloan
2022-09-22Provide database cursor as argument for TheSpecies and Chromosomes...Provide the database cursor as an argument to the methods of the two classes: * wqflask.base.species.TheSpecies * wqflask.base.species.Chromosomes Also update dependent code to initialise and pass the cursor where these classes are used. Frederick Muriuki Muriithi
2022-09-21Added Markers/HumanMarkers import to datasetgroup.py and removed it from...__init__.py Previously it threw an error when it tried to use Markers/HumanMarkers in datasetgroup.py; since Markers/HumanMarkers doesn't seem to be used anywhere else, I think it's okay for the import to only be in datasetgroup.py zsloan
2022-09-21Refactor: pass redis and db connections as argument...Pass the redis and database connection/cursors as arguments to the class methods, and do not retain a copy of the connections/cursors. This allows us to do the connection management in the context managers elsewhere - ideally, at the top-level. For now the context manager is within the `create_dataset` function, but this should be moved out to a higher level once the lower levels are verified to be working as expected. Frederick Muriuki Muriithi
2022-09-20Remove global `Dataset_Getter` variable...Since the `__post_init__` method in the 'DatasetType' class checks whether data is in redis before hitting the database, it does not matter whether there is a global object of the type, as long as we make sure to call the object correctly. This commit makes that happen. Frederick Muriuki Muriithi
2022-09-20Revert "Use member variable `self.conn` to avoid test failure"...This reverts commit 4fafdfd8487ddf61105b2a5ca92534c8014c1db4. While using `self.conn.cursor()` works in the tests, it will not work in the application since the point of initialisation could be very different from the point where the 'property' is called. Frederick Muriuki Muriithi
2022-09-20Use member variable `self.conn` to avoid test failure...Use the `self.conn` variable to prevent test from failing. Frederick Muriuki Muriithi
2022-09-20Decompose file into separate modules...To ease future refactors on the code, decompose the file into a module with multiple modules that can be refactored semi-independently. refactor-data_set_py-20220920Frederick Muriuki Muriithi
2022-09-12Fix query: Add comma to separate columns.Frederick Muriuki Muriithi
2022-09-12Fix query: remove wrongly-placed commaFrederick Muriuki Muriithi
2022-09-12Check db resultset before indexing into it...The assumption that the resultset will never be empty was leading to a lot of errors. Frederick Muriuki Muriithi
2022-09-09Fix bug in retrieve_other_names...After a recent change, it always tries to unpack 6 values from the query, but it should only be unpacking 4 values if not type ProbeSet (so it was throwing an error for anything not ProbeSet) zsloan
2022-09-09tissue:fetch for query formattingAlexander_Kabui
2022-09-09Retain only a single import of the same moduleFrederick Muriuki Muriithi
2022-09-09Merge pull request #732 from BonfaceKilz/bug/fix-broken-correlations...Bug/fix broken correlationsMuriithi Frederick Muriuki
2022-09-09Fetch sample values correctly...* wqflask/base/data_set.py (MrnaAssayDataSet.retrieve_sample_data): Fix indentation. Munyoki Kilyungi
2022-09-09Add missing import...* wqflask/base/trait.py: Import utility.hmac Munyoki Kilyungi
2022-09-09Import missing module.Frederick Muriuki Muriithi
2022-09-09Filter out Samples without valuesFrederick Muriuki Muriithi
2022-09-09Use `database_connection()`...Call the `database_connection()` function to get a connection to the database. Frederick Muriuki Muriithi
2022-09-09Replace `g.db.execute` with `cursor.execute`Frederick Muriuki Muriithi
2022-09-08Simplify how chromosomes are fetched...* wqflask/base/species.py: Import "Any" and "Union". (TheSpecies): Add type hints. Get rid of redundant "if ... else" statement. (IndChromosome.mb_length): Add type hints. (Chromosomes): Inject conn and add type hints. Munyoki Kilyungi
2022-09-08Remove redundant cursor.fetchone()...* wqflask/base/data_set.py (DataSet.retrieve_other_names): Call cursor.fetchone() only once. Munyoki Kilyungi
2022-09-08Use "%s" in sql query...* wqflask/base/mrna_assay_tissue_data.py: Delete db_tools. (MrnaAssayTissueData.get_symbol_values_pairs): Re-format query. * wqflask/tests/unit/base/test_mrna_assay_tissue_data.py: (test_get_trait_symbol_and_tissue_values): Add test for above. Munyoki Kilyungi
2022-09-08Inject database connection to mrna_assay_tissue_data class...* wqflask/base/mrna_assay_tissue_data.py: Imports: Delete database_connection, escape, and database_connector. (MrnaAssayTissueData): Inject conn. Re-format queries. Rework 'if ... else' logic. Re-work how results are assigned to 'self.data[symbol]' - remove dot-notation. (MrnaAssayTissueData.get_symbol_values_pairs): Move box-comments to doc-string. Rework how results are assigned to 'symbol_values_dict' - remove dot-notation. * wqflask/tests/unit/base/test_mrna_assay_tissue_data.py (test_mrna_assay_tissue_data_initialisation): New test. * wqflask/wqflask/correlation/correlation_functions.py: Import database_connection. (get_trait_symbol_and_tissue_values): Inject conn object. Munyoki Kilyungi
2022-09-08Fix sql queries..."%s" should only be used outside table names and column names otherwise a string literal will be inserted thereby leading to errors in the sql statements. * wqflask/base/data_set.py (geno_mrna_confidentiality): Use f-strings for table/columns/clause. * wqflask/base/trait.py (retrieve_trait_info): Ditto. * wqflask/wqflask/gsearch.py (GSearch.__init__): Ditto. * wqflask/wqflask/interval_analyst/GeneUtil.py (loadGenes): Ditto. * wqflask/wqflask/snp_browser/snp_browser.py (SnpBrowser.get_browser_results): Ditto. Munyoki Kilyungi
2022-09-08Add missing "," in cursor.execute()...* wqflask/base/data_set.py (DatasetGroup.get_mapping_methods): Fix failing query by adding a missing ",". Munyoki Kilyungi
2022-09-08Remove intermediate variables that are only used once...* wqflask/base/data_set.py (DatasetGroup.__init__): Remove "query" variable. (DataSet.chunk_dataset): Fix indentation. * wqflask/wqflask/search_results.py (get_GO_symbols): Remove "this_term" variable. * wqflask/wqflask/views.py (search_page): Remove "the_search" variable. Munyoki Kilyungi
2022-09-08Delete dead imports...* wqflask/base/data_set.py: Remove un-used imports. * wqflask/base/trait.py: Ditto. wqflask/tests/wqflask/show_trait/test_show_trait.py: Ditto. * wqflask/wqflask/show_trait/show_trait.py: Ditto. * wqflask/wqflask/views: Ditto. Munyoki Kilyungi
2022-09-08Replace g.db with database_connection() context manager...* wqflask/base/data_set.py (DatasetType.set_dataset_key): Replace g.db with "database_connection()". (DatasetGroup.get_mapping_methods): Ditto. (DataSet.get_accession_id): Ditto. (DataSet.retrieve_other_names): Rework "if ... else" logic to get rid of "query" and "_vars" variables. Also, nest "try ... except" block within "database_connection". (DataSet.chunk_dataset): Replace g.db with "database_connection()". (DataSet.get_probeset_data): Ditto. (DataSet.get_trait_data): Ditto. (PhenotypeDataSet.get_trait_info): Ditto. (PhenotypeDataSet.retrieve_sample_data): Ditto. (GenotypeDataSet.retrieve_sample_data): Ditto. (MrnaAssayDataSet.get_trait_info): Ditto. (MrnaAssayDataSet.retrieve_sample_data): Ditto. (MrnaAssayDataSet.retrieve_genes): Ditto. (TempDataSet): Ditto. (geno_mrna_confidentiality): Ditto. (query_table_timestamp): Ditto. * wqflask/wqflask/api/router.py: Replace "flask.g" with database_connection import. (get_species_list): Replace g.db with "database_connection()". (get_species_info): Ditto. (get_groups_list): Ditto. (get_group_info): Ditto. (get_datasets_for_group): Ditto. (get_dataset_info): Ditto. (fetch_traits): Ditto. (all_sample_data): Ditto. (trait_sample_data): Ditto. (get_trait_info): Ditto. (get_dataset_trait_ids): Ditto. (get_samplelist): Ditto. (get_group_id_from_dataset): Ditto. (get_group_id): Ditto. Munyoki Kilyungi
2022-09-08Delete logger import...* wqflask/base/trait.py: Remove utility.logger Munyoki Kilyungi
2022-09-08Replace assertion with Value Error for non-existent dataset...* wqflask/base/trait.py (retrieve_trait_info): Wrap error message in ValueError. Munyoki Kilyungi
2022-09-08Replace g.db with database_connection() context manager...* wqflask/base/mrna_assay_tissue_data.py: Replace "flask.g" with database_connection. (MrnaAssayTissueData.__init__): Use database_connection. (MrnaAssayTissueData.get_symbol_values_pairs): Ditto. * wqflask/base/species.py: Replace "Flask.g" imports with "database_connection". (Chromosomes.chromosomes): Use database_connection. * wqflask/base/trait.py: Import database_connection. (retrieve_trait_info): Use database_connection. * wqflask/utility/authentication_tools.py: Replace "flask.g" with database_connection. (get_group_code): Use database_connection. * wqflask/utility/helper_functions.py: Replace "flask.g" with "database_connection". (get_species_groups): Use database_connection. * wqflask/wqflask/db_info.py: Replace "Flask" and "g" with "database_connection". (InfoPage.get_info): Use database_connection. * wqflask/wqflask/do_search.py (DoSearch.execute): Use database_connection(). * wqflask/wqflask/external_tools/send_to_geneweaver.py: Replace "Flask" and "g" import with database_connection. (test_chip): Use database_connection. * wqflask/wqflask/external_tools/send_to_webgestalt.py: Replace "Flask, g" imports with database_connection. (test_chip): Use database_connection. * wqflask/wqflask/gsearch.py: Replace "Flask" and "g" import with database_connection. (GSearch.__init__): Use database_connection. * wqflask/wqflask/interval_analyst/GeneUtil.py (loadGenes): Use database_connection(). * wqflask/wqflask/show_trait/SampleList.py: Replace "flask.g import" with database_connection. (SampleList.get_attributes): Use database_connection. (SampleList.get_extra_attribute_values): Ditto. * wqflask/wqflask/show_trait/show_trait.py: Replace "Flask" and "g" import with database_connection. (ShowTrait.__init__): Use database_connection. (ShowTrait.get_external_links): Ditto. (get_nearest_marker): Ditto. Munyoki Kilyungi
2022-09-08Merge pull request #727 from Alexanderlacuna/feature/use-textfiles...use text files for ProbesetAlexander Kabui
2022-09-07catch general errors this will recreate the fileAlexander_Kabui