Bento 4.0.0
Release notes- Bento Version 4.0 🍱
The release of Bento 4.0 marks a new era for the Bento Framework. The codebase has been entirely refactored so that all frontend elements have been organized into components making it easier than ever for other projects to use and customize any number of components that may fit their needs and even push new features for components back to the Bento codebase to help the broader community.
FrontEnd Refactoring
- Bento Refactoring State Management Planning & Design
- Create Bento State Management Component
- Configure Bento State Management
- Implement infrastructure for Bento-Core package
- Explore Dashboard - Componentize Checkbox
- Explore Dashboard - Componentize SideBar
- Explore Dashboard - Componentize Sections Dropdown
- Explore Dashboard - Componentize Groups Dropdown
- Explore Dashboard Tabs Component
- Explore Dashboard Side Bar Component
- Explore Dashboard Sidebar - Redux State Object
- Explore Dashboard Sidebar - Reducer Functions & Redux Thunks
- Explore Dashboard Tab Component - Redux State Object & Redux Thunks
- Explore Dashboard - Checkbox Function Component
- Explore Dashboard - Sections Function Component
- Explore Dashboard - Groups Functions Component
- Stats Bar Component
- Split Local Find state management into separate functions
- Split Widgets state management into separate functions
- Widgets Grid Component
- Refactor Tabs & Table into separate components
- Bento Cart
- Admin Portal - Refactor Manage Access Table
- Admin Portal - Refactor Pending Access Table
- Admin Portal - Refactor User Details View
- Admin Portal - Refactor Revoke Access Table
- Admin Portal - Refactor Request Access Table
- Global Search - Refactor Search Bar Header
- Global Search - Refactor Search Results (Including Search Box)
- Refactor Server Paginated Table on Explore Dashboard
- Refactor Access Control
- Refactor Query Bar Component on Explore Dashboard
- Refactor Local find
- Refactor Session Timeout Component
- Refactor Login Page
- Refactor User Profile Page as Component
- Refactor Data Access Request (DAR) Page as Component
- Server Paginated Table - Implement Local State Management
- Server Paginated Table - Wrapper component for add to cart buttons
- Explore release and contribution process for Bento-Core
- Migrate FacetFilter Component as Separate Package
- Migrate Global Search Component as Separate Package
- Migrate Paginated Table Component as Separate Package
- Replace Associated Sample and Associated Files table on case detail page with Bento-Core Table Component
Features
Authentication
- Add Login Event Recording
Authorization
- Add token-based authentication to the Bento AuthN/AuthZ API
- Create a separate Neo4j process for Authorization service
Security
- Upgrade Bento Backend dependencies with known vulnerabilities
UI Improvements
- Stats bar to display important metrics
- Display government warning banner upon entry to application
Improvements for Bento Local
- Add Support for Bento FE 3.10 and it's supported services (A&A Disabled)
- Add Support for Bento-Local 3.10.0 on Linux
- Set up Bento Framework 4.0.0 on Linux using Bento-local
- Add custodian configuration with Bento-local
System Upgrades
- Upgrade Java version to Java 17 from Java 11
- Interpret environment variables based on deployment or development
- Replace deprecated express-graphql library
- Replace the YAML parsing library in Bento-Backend
Bug Fixes
- User should not be able to enter/type less than the min value in the max input field
- Missing environment variable "REACT_APP_GOOGLE_CLIENT_ID" is breaking application
- 'My Alignments' and 'My Variants' not displayed in available tracks in JBrowse
- Bento Authentication shows a blank screen when logging in using Login.gov for the first time
- Blank page upon deletion of 100th row from file cart table on Cart Page.
- Local Find crashes when user uploads a bigger size csv file
- Access column displays a lock icon for approved Arms of Bento Members
- Explore Dashboard tab colors are displayed in gray
- Clicking on a tab in the Explore Dashboard page results in the widgets refreshing
- Tumor size field does not have values in proper order
- Chemotherapy field does not have values in proper order
- Unable to download files as expected from Access column of Explore Dashboard table
- Sort function is alternating (ascending and descending) on Explore Dashboard
- The Explore Dashboard column names (under cases, samples and files) are underlined
- In the Manage Access Table of the Admin Portal the Study Arms(s) column name is not underlined
- The scroll bar is missing from the top of the Explore Dashboard table when the file tab is selected
- The Add all Files button is not functional when the Explore Dashboard Table has 0 records
- Bento Custodian is unable to see the configuration changes in the Bento UI for Static Pages
- Bento Custodian is unable to see the configuration changes in the Bento UI of the Arms Details Page
- The warning message text box is empty when user adds more than 1000 files to the cart from the Explore Dashboard Table
- [email protected] not working for external users
Known Bugs
- The GraphiQL user interface requires a user to enter {} in the variables section
- Disabled users do not receive email notification
- Bento users that submit a Data Access Request (DAR) will have their account disabled unless they login within 24 hours of approval
Bento Documentation
- Update Bento-Docs for SideBar Component
- Update Bento-Docs for Widgets Component
- Update Bento-Docs for GlobalSearch Component
- Update Bento-Docs for StatsBar Component
- Update Bento-Docs for Table Component
- Update Bento-Docs for Installing Bento on Local Machine
- Update Bento-Docs for Dashboard Page
- Update Bento Documentation (Custodian) for Authentication
- Update Bento Documentation (Custodian) for Authorization
- Update Bento Documentation (Custodian) for Data Access Request (DAR) Service
- Update Bento Documentation (Custodian) for Global UI Elements
- Update Bento Documentation (Custodian) for Landing Page
- Update Bento Documentation (Custodian) for Programs Page
- Update Bento Documentation (Custodian) for Program Details Page
- Update Bento Documentation (Custodian) for Arm Detail Page
- Update Bento Documentation (Custodian) for Case Details Page
- Update Bento Documentation (Custodian) for Dashboard
- Update Bento Documentation (Custodian) for File-Centric Cart Page
- Update Bento Documentation (Custodian) for Static Pages
Testing
- Improve and Expand Unit Testing Coverage for Bento Microservices
- Test FE - Refactor Server Paginated Table (Dashboard / Explore Page)
- Test FE - Local search
- Test Admin Portal - Refactor Request Access Table
- Test Admin Portal - Review Data Access Request(s)
- Test Admin Portal - Email notification to the user Member for DAR approval
- Test Admin Portal - Email notification to the user Member for DAR Rejection
- Test Admin Portal - Email notification for the submitted request to Admin
- Stats Bar - Add Missing IDs in New Dashboard for Test Automation Purposes
- Local Find- Add IDs in in New Dashboard for Test Automation Purposes
- Case Details- Add Missing IDs in New Dashboard for Test Automation Purposes
- Global Search - Add IDs for Test Automation Purposes
- Sidebar - Add Missing IDs in New Dashboard for Test Automation Purposes