aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-04-19auth: phenotypes - provide default empty list for selected traits.Frederick Muriuki Muriithi
2023-04-18auth: Pass `--per-page` and `--selected` options.Frederick Muriuki Muriithi
2023-04-18auth: Consistently JSON encode values.Frederick Muriuki Muriithi
Consistently encode all values for the top-level keys stored in redis to avoid issues with json encode/decode
2023-04-17Fix typo, os.environment -> os.environMunyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2023-04-17Update the default SPARQL endpointMunyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2023-04-17Create new endpoint for fetching GeneRIF entriesMunyoki Kilyungi
* gn3/api/metadata.py: Import Template, sparql_query and RDF_PREFIXES. (get_genewiki_entries): New endpoint. * gn3/db/rdf.py: Add new constant for storing rdf prefixes. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2023-04-17Hook up code to use external search script for phenotypesFrederick Muriuki Muriithi
2023-04-17auth: Delete code that is no longer usedFrederick Muriuki Muriithi
2023-04-15Decouple `gn3.db_utils` from `flask.current_app`.Frederick Muriuki Muriithi
Decouple the `gn3.db_utils` module from the global `flask.current_app` object, ensuring that the database uri value is passed in as a required argument to the `gn3.db_utils.database_connection` function.
2023-04-14auth: Add external script to search for phenotypesFrederick Muriuki Muriithi
We need a search through the available phenotype traits in the database when linking the traits to user groups. Unfortunately, the Xapian Search indexes do not (and should not) include the internal identifiers we use to disambiguate the traits. On the other hand, we do not want to present the user with traits that have already been linked to any user group within the search results. The script in this commit, together with the modified queries for fetching the phenotype data form a "hack" of sorts to wrap around the way the search works while ensuring we do not present the user with "non-actionable" (linked) traits in the search results.
2023-04-14auth: Disconnect module from flask applicationFrederick Muriuki Muriithi
To avoid application context errors in external scripts, disconnect the `gn3.auth.db` module from the `flask.current_app` dependency.
2023-04-12auth: Enable listing of unlinked genotype/mRNA group data.Frederick Muriuki Muriithi
2023-04-10Add search and link for mRNA Assay datasets.Frederick Muriuki Muriithi
2023-04-10Migrations for linking genotype files.Frederick Muriuki Muriithi
2023-04-10Update expected request key.Frederick Muriuki Muriithi
2023-04-10Enable search, filtering out selected, but not linked dataFrederick Muriuki Muriithi
When a user selects some datasets and does a new search, we filter out the selected datasets too, even though they are yet to be linked.
2023-04-08auth: Link genotype datasets to groups.Frederick Muriuki Muriithi
2023-04-06Fix linting issuesFrederick Muriuki Muriithi
2023-04-06Remove deprecated `gn3.db_utils.database_connector` functionFrederick Muriuki Muriithi
Remove the deprecated function and fix a myriad of bugs that arise from removing the function. Issue: https://issues.genenetwork.org/issues/bugfix_coupling_current_app_and_db_utils
2023-04-05Enable use of `database_connection` in scripts without current_appFrederick Muriuki Muriithi
There is need to run external scripts using the same configurations as the application but without the need to couple the script to the application. In this case, we provide the needed configuration directly in the CLI, and modify the existing `gn3.db_utils.database_connection` function to allow it to work coupled to the app or otherwise.
2023-04-04auth: Search for linking genotype datasets.Frederick Muriuki Muriithi
2023-04-04Add tables to link genotype dataFrederick Muriuki Muriithi
2023-03-23tests: Set up fixture and mock out config variableFrederick Muriuki Muriithi
2023-03-23auth: list the species in the database.Frederick Muriuki Muriithi
2023-03-23Docs: Add a note on how the configuration system works.Frederick Muriuki Muriithi
2023-03-23auth: Don't try loading the user if no client is foundFrederick Muriuki Muriithi
Fix the bug where the system was trying to load a user from a non-existing OAuth2 client, leading to an exception.
2023-03-23conf: use flask.current_app.config not in gn3.settingsFrederick Muriuki Muriithi
The configuration in gn3.settings can (and does) get overwritten by values in the environment variable `GN3_CONF` and any configurations passed in the call to the `gn3.app.create_app` function; as such, this commit changes the configuration used in the code to user the final configuration values that are in the running application's `flask.current_app.config` object.
2023-03-22auth: data linking: build functions to fetch unlinked phenotypesFrederick Muriuki Muriithi
This is an initial attempt: it does not allow a search to be carried out across the data available in the database. I will need to rework this, probably start from the UI and work backward.
2023-03-22auth: migrations for linking phenotype dataFrederick Muriuki Muriithi
2023-03-22auth: Enable linking multiple datasets to the group at once.Frederick Muriuki Muriithi
2023-03-22auth: Remove the tables used for linking data to resourcesFrederick Muriuki Muriithi
The way data is linked to the resources needs to be reworked. This commit removes all the existing migration scripts that created the tables formerly used for linking data in preparation for reworking the system.
2023-03-20Disable fetching case-attributes when getting sample dataMunyoki Kilyungi
* gn3/db/sample_data.py: Remove 're' import. (get_trait_csv_sample_data): Remove fetching sample data. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2023-03-20auth: data: Enable offset in queriesFrederick Muriuki Muriithi
Enable the 'OFFSET' clause in the queries to allow for progressive fetching of data from the database using the 'Previous' and 'Next' buttons.
2023-03-20auth: data: List Phenotypes at the trait levelFrederick Muriuki Muriithi
For Phenotypes, list the Phenotype traits rather than the dataset(s).
2023-03-20Fix get_all_species testzsloan
2023-03-18oauth2: resources: toggle whether a resource is public or notFrederick Muriuki Muriithi
2023-03-18auth: resources: Disallow duplicate resource names.Frederick Muriuki Muriithi
2023-03-17Add conn.commit() to queries in sample_data.pyzsloan
2023-03-17Change get_all_species query to order by Familyzsloan
2023-03-15auth: Data Migrations: Rework migration triggerFrederick Muriuki Muriithi
Rework the migration trigger endpoint such that it does a bulk import of all the resources in the redis store. It also expects that the user that triggers the migration have the appropriate privileges.
2023-03-14auth: Fix some linting and typing issues.Frederick Muriuki Muriithi
2023-03-13Move doc to issue trackerPjotr Prins
2023-03-13oauth2: data: Temporarily escalate privileges to enable migrationFrederick Muriuki Muriithi
The functions that fetch the unlinked data have checks to ensure they are called by users with the appropriate privileges. This commit enables a temporary escalation of privileges to enable fetching the data, so as to allow successful data migration.
2023-03-13auth: separate user detail migration from data migrationFrederick Muriuki Muriithi
Due to the fact that the data migration requires higher privileges than the user details, separate the user details migration endpoint from the data migrations endpoint.
2023-03-13Add 'ON UPDATE/DELETE' clauses to foreign keys.Frederick Muriuki Muriithi
2023-03-13auth: cURL: Add some docs on using cURLFrederick Muriuki Muriithi
2023-03-10auth: data-migration: Fix minor bugsFrederick Muriuki Muriithi
2023-03-09auth: redis data: migrate data in redisFrederick Muriuki Muriithi
Implement the code to migrate the data from redis to SQLite.
2023-03-09auth: data migration: Data migration outlineFrederick Muriuki Muriithi
Provide an outline of the data migration steps to be taken from some results of the experiments with the data in redis.
2023-03-09auth: introspection: Protect introspection endpointFrederick Muriuki Muriithi
The introspection endpoint could contain privileged information, thus requires that the endpoint be protected. This commit ensures that a user has authenticated to the system and that the client they are using be one of the allowed clients.