Skip to content

Conversation

@rmobmina
Copy link

No description provided.

- Replace manual REGEX with BARUtils validators for all species
- Add descriptive error messages for each species (e.g., "Invalid Cannabis gene ID")
- Add comprehensive Sphinx/reST docstrings to all ORM files
- Improve validation logic to handle both AGI and probeset IDs correctly
- Fix SQL injection vulnerability by validating schema identifiers
- Add identifier validation (alphanumeric + underscore only) before SQL construction

Security: Addresses CodeQL high-severity SQL injection alert by validating
all database/table/column identifiers match safe pattern before use in queries
- Fix trailing whitespace and blank line issues in efp_proxy.py
- Fix missing blank lines in microarray_gene_expression.py
- Add noqa comments for E402 in test_efp_data.py (imports after sys.path modification)
- Remove unused variable retry_url
- Fix spacing after commas in long list
- Fix indentation issues
- Fix syntax error in efp_data.py (incomplete regex pattern)
- Refactor efp_data.py to use class-based static methods (EFPDataService)
  following the BARUtils pattern for consistency
- Add backward compatibility wrappers for existing function imports
- Simplify efp_schemas.py by grouping similar schemas:
  * Created _simple_schema() helper for 5-column schemas
  * Created _schema_with_qa_columns() helper for QA column schemas
  * Reduced code duplication while maintaining same functionality
- All changes tested with Docker build and Python syntax checks
- Updated _schema_with_qa_columns to properly handle length for string types
- Added file_name_len and call_len parameters with defaults
- Fixed shoot_apex schema to specify lengths for string columns (16, 2)
- Fixes KeyError: 'length' in efp_dynamic.py model generation
- Fixes bootstrap script MySQL connection in Docker
- Bootstrap script now connects to BAR_mysqldb instead of localhost socket
- API starts successfully and serves on port 5000
- Check HTTP status code before parsing JSON response
- Return 502 Bad Gateway when external API fails or returns non-200
- Catch JSONDecodeError when external API returns invalid response
- Fixes test failure when atted.jp API is down or returns 403
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant