aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2022-09-30Disregard permissions when displaying search results....* wqflask/wqflask/gsearch.py: Do not import types. (is_permitted_for_listing): Delete function. (GSearch.__init__): Do not call is_permitted_for_listing. Arun Isaac
2022-09-29Fix identation issues in attribute query codezsloan
2022-09-29Curry function passed to Maybe.apply....* wqflask/wqflask/gsearch.py (GSearch.__init__): Curry function passed to Maybe.apply to construct the display name. Arun Isaac
2022-09-29Hard-limit the number of search results....* wqflask/wqflask/gsearch.py (MAX_SEARCH_RESULTS): New constant. (GSearch.__init__): Hard-limit the number of search results to MAX_SEARCH_RESULTS. Arun Isaac
2022-09-29Support prefix search and range queries....* wqflask/wqflask/gsearch.py (GSearch.__init__): Support prefix search and range queries. Arun Isaac
2022-09-29Retrieve year as integer....* wqflask/scripts/index.py (main): Retrieve year as an integer from the SQL database. * wqflask/wqflask/gsearch.py (GSearch.__init__): Convert year from integer to string. Arun Isaac
2022-09-29Index prefixed fields and add values....* wqflask/scripts/index.py (main): Index fields with prefixes, and add values for range queries. Arun Isaac
2022-09-29Replace MonadicDictCursor with generator function....* wqflask/utility/monads.py (MonadicDictCursor): Delete class. (sql_query_mdict): New function. * wqflask/scripts/index.py: Import sql_query_mdict instead of MonadicDictCursor. (main): Use sql_query_mdict. Arun Isaac
2022-09-29Open xapian database once, but SQL database once for each query....We reopen the SQL database once for each query because it times out if kept waiting. * wqflask/scripts/index.py (main): Open xapian database once, but SQL database once for each query. Arun Isaac
2022-09-29Remove empty first line in docstrings....* wqflask/utility/monads.py (MonadicDict, MonadicDictCursor): Remove empty first line in docstrings. Arun Isaac
2022-09-29Ignore None values early when initializing MonadicDict....* wqflask/utility/monads.py (MonadicDict.__init__): Ignore None values early instead of converting them to Nothing and then ignoring them. Arun Isaac
2022-09-29Return monadic value from MonadicDictCursor.fetchone....* wqflask/utility/monads.py (MonadicDictCursor.fetchone): Return monadic value. Arun Isaac
2022-09-29Abstract out writing documents into a xapian database....* wqflask/scripts/index.py (write_document): New function. (main): Use write_document. Arun Isaac
2022-09-29Close xapian database even if error occurs....* wqflask/wqflask/database.py (xapian_database, xapian_writable_database): Close xapian database even if error occurs. Arun Isaac
2022-09-29Remove empty rows, and conversion for output...Remove any rows that do not have values since they are not useful to the computations and only lead to errors. Remove the conversion to output format here: only convert the values for output at the point of output, and not earlier. Frederick Muriuki Muriithi
2022-09-29Add test for regressionFrederick Muriuki Muriithi
2022-09-28Do not assume transactions in database connections....Not all database queries need transactions. If transactions are required, they should be made a separate context manager and called only when required. * wqflask/wqflask/database.py (database_connection): Do not rollback or commit. Arun Isaac
2022-09-27Fix indentation in get_species_list for-loopzsloan
2022-09-27Unit Test: Fix unit test for Chromosome functions.Frederick Muriuki Muriithi
2022-09-26Add REST API endpoint for viewing a group's genotype file metadatazsloan
2022-09-26Get heatmap and mapping working again with changing to species.pyzsloan
2022-09-26Remove unused database_connection import from species.pyzsloan
2022-09-26Implement global search using xapian....* wqflask/wqflask/gsearch.py: Import Just and Maybe from pymonad.maybe; curry from pymonad.tools; xapian; MonadicDict from utility.monads; xapian_database from wqflask.database. Do not import datetime; database_connection from wqflask.database; base.data_set; base.trait; db; utility.type_checking; utility. (is_permitted_for_listing): New function. (GSearch.__init__): Reimplement using xapian. * wqflask/wqflask/templates/gsearch_gene.html (block js): Accept dictionaries with missing keys, replacing them with "N/A". Arun Isaac
2022-09-26Add indexing script for global search....* wqflask/scripts/index.py: New file. Arun Isaac
2022-09-26Add xapian database connection utilities....* etc/default_settings.py (XAPIAN_DB_PATH): New variable. * wqflask/wqflask/database.py: Import xapian. (xapian_database, xapian_writable_database): New functions. Arun Isaac
2022-09-26Generalize sql_uri function to get any setting....* wqflask/wqflask/database.py (sql_uri): Generalize to get_setting. (database_connection): Call get_setting instead of sql_uri. Arun Isaac
2022-09-25Fix issue where the display name was used in the hmac for phenotype traitszsloan
2022-09-23Remove click handler on global search....check_search_term is not relevant to global search. It checks search terms in the unrelated #or_search and #and_search fields. * wqflask/wqflask/static/new/javascript/dataset_select_menu_orig.js: Do not call check_search_term on clicking global search button. Arun Isaac
2022-09-23Check docstring style using pylint....* .pylintrc: New file. Arun Isaac
2022-09-22Fix bug in GeneUtil.py query where extra quotes caused an errorzsloan
2022-09-22Use passed in cursor instead of initialising a new cursor.Frederick Muriuki Muriithi
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-22Update tests: pass in missing arguments.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-20Make -logP columns uniformzsloan
2022-09-20Make -logP columns uniformzsloan
2022-09-20Re-add collect import to views.py...Not sure why this was removed...I guess it looked like an unused import? zsloan
2022-09-20Make Search and Global Search Max -logP columns uniformzsloan
2022-09-20Fix gsearch ProbeSet queryzsloan
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-20Merge branch 'Alexanderlacuna-feature/generate-text-files' into testingFrederick Muriuki Muriithi
2022-09-20integrate use of text filesAlexander_Kabui
2022-09-20store text files in TMPDIRAlexander_Kabui
2022-09-20write probeset datasets to text filesAlexander_Kabui
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-19Fix broken test...Because the input element was changed to a button element there was no longer a "value" attribute. I'm not sure what this assert is for, though; I changed it to just check for "Search" in the inner text, which makes it pass. zsloan
2022-09-19Remove commented-out htmlzsloan