Skip to content

Releases: CBIIT/bento-frontend

Bento 4.1.0

20 Jun 13:11
ffc05aa
Compare
Choose a tag to compare

Release notes- Bento Version 4.1.0 🍱

The release of Bento 4.1.0 is the first of many releases that include a feature contributed to the codebase by another project team. 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.

Features

  • The Dynamic Query Bar (DQB) within the Explore Dashboard page can abstract values with an ellipsis when 2 or more facets or case IDs have been entered into any facet section by clicking the "LESS" option. This gives users the ability to compress long and complex queries. Clicking on the ellipsis reveals all abstracted values.

Authentication

  • None

Authorization

  • None

Security

  • None

Improvements for Bento Local

  • None

System Upgrades

  • None

Bug Fixes

  • None

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

  • Release Notes for 4.1.0

Bento 4.0.0

12 Jun 15:27
eaeb1fc
Compare
Choose a tag to compare

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

Bento 3.10.0

27 Mar 13:49
5539a4b
Compare
Choose a tag to compare

Release notes- Bento Version 3.10.0 🍱

Features

User Profile Page

  • Disabled user cannot submit additional Data Access Requests

Security Controls

  • Admins can query, view, and share user Audit Trails
  • JBrowse includes a session timeout pop-up dialog
  • Member & Admin accounts are disabled after 60 days of inactivity

DevOpsy

  • Environment variables created for Access Control
  • Jenkins deployments updated to support event logging submodules
  • Event logging added to the Bento-Files service

Bug Fixes

  • Frontend crashes if the File Service is not running
  • The version displayed in the footer is not in sync with the backend
  • Double file icons appear in the navigation bar
  • The footer has reverted to a style that is not compliant with NCI style criteria
  • System Admins are unable to view disabled account event details in the Audit Trails
  • Disabled users are still able to submit a Data Access Request (DAR)

3.9.0 Release

21 Dec 14:50
d442c90
Compare
Choose a tag to compare

Release notes- Bento Version 3.9.0 🍱

Features

Authentication

  • File service returns 401 error for authentication errors

Authorization

  • A Non-Member can be converted directly to an Admin
  • Removing Admin role reinstates previous access
  • Update API to handle user changing from Admin to Member

Admin Portal

  • Admin should not be able to convert a Non-Member to a Member
  • Admin can enable/disable the admin permissions of a user account

User Profile Page

  • Inactive Members can see pending requests
  • End User can't make profile changes on DAR if no additional requests can be submitted

Security Controls

  • Create Inactivity Timeout API
  • API returns session expiration time
  • Authenticated user gets a warning before the session timeout

UI Improvements

  • Update color palette for Explore Dashboard
  • End user sees a spinner before results are displayed
  • Modify footer to meet NCI style criteria

Backend Refactoring

  • Migrate queries to Elasticsearch (ES)
  • ES query configuration document
  • Add "hybrid" query support
  • Add DB connection health check API endpoints
  • File copier verifies file size
  • Standardize the Account Name in the backend
  • Custodian users can use config file to map api and ES Query

System Upgrades

  • Remove Redis
  • Upgrade NodeJS version

Bug Fixes

  • JBrowse is not able to fetch data for 'My Alignments' and 'My Variants'
  • Received an error when user adds sample file to cart
  • [Revoked and Rejected] status should not be listed on User Profile page.
  • Design QA 3.8.0 - Login Menu
  • Design QA 3.8.0 - Admin Portal: Manage Access & Pending Requests tabs
  • Design QA A&A - Admin Portal: Approved Arms
  • Design QA A&A - Admin Portal: Edit User Page
  • Design QA 3.8.0 - Admin Portal: Review DAR page
  • Design QA 3.8.0 - DAR page Part 1
  • Login.gov/NIH accounts->Received an access denied page when a user denies the login request
  • Admin Portal->Received “An error has occurred in loading component:Error: undefined”.
  • The Study Arm(s) drop down does not show "Arm X ... and more" when multiple arms are selected.
  • After a user logs out, the "My Files" count still shows the number of files that the user had in their cart
  • Custodian->Submit button is disabled if node-level access is false
  • When user finds a case through local find, the spinner continues to spin with no additional results found
  • Data is not loading on Explore and Programs pages
  • Dashboard table->ADD ALL FILES button is not functional (Cases and Samples tab)
  • Inactive Members cannot see the "Request Data Access" button
  • Role should not revert back to a Non-Member when admin permissions are disabled
  • 'My Alignments' and 'My Variants' do not show in available tracks in JBrowse
  • Dashboard table->File download->Unable to download the file as expected from Access column
  • Global Search->Data Model category is not returning expected search results

3.8.0 Release

27 Sep 15:46
27d4a08
Compare
Choose a tag to compare

Release notes- Bento Version 3.8.0 🍱

Features

Authentication Service

  • Supported Identity Providers include NIH, Login.gov, and Google
  • NginX reverse proxy to support authN

Authorization Service

  • API to support authorization
  • Role Based Access Control (RBAC)
  • Authenticated members can view all metadata
  • Metadata is not visible to unauthenticated users
  • API is protected from unauthenticated users
  • 2 configurations available for public accessibility of data

Data Access Request (DAR) Service

  • Designated page in web application
  • Automated emails to support approval process

Global Search

  • public API created

Data Loader

  • Warning for missing parent nodes or mapping columns

Data Model

  • "ACL" field added to File node

System Upgrades

  • Migrated to ECS/Fargate
  • Automated deployment pipeline

Bug Fixes

  • The login page shakes when user clicks on EXPLORE Tab or LOGIN/REGISTER
  • Error (Please wait communication with server!) is thrown when user logs in with NIH account
  • Error (Please wait communication with server!) is thrown when user logs in with Login.gov
  • The response header returned by NIH Login.gov should not include the domain name
  • The Admin user should not be presented with a Data Access Request page
  • DAR form auto-populates info from a previous user
  • User logging in to bento QA for the first time via google is not directed to the DAR page (directed back to login page).
  • Submit button should be disabled when all required fields are not supplied in the DAR form
  • Incorrect message displayed when user submits DAR
  • Above the DAR form "Membership Status" should not be empty
  • Login.gov not returning first and last name of users
  • Incorrect status for pending requests column in user profile page for members and non-members
  • Users with a revoked or rejected DAR should not have access to protected data
  • Bento member users don't see lock icons for arm-level files they don't have access to
  • End User does not receive an email upon submission of Data Access Request
  • Admin does not receive an email upon submission of Data Access Request
  • End User does not receive an email upon approval of Data Access Request
  • End User does not receive an email upon rejection of Data Access Request (DAR)
  • Home page throws 404 error when user logs out
  • A member who has all access removed should not see membership status as Active
  • When user submits a DAR, it doesn't appear on "Pending Request" page for Admin
  • Arm names are not displaying in any table or dropdown
  • The comment entered for approval or rejection is not including in the body of the email
  • A member who's all access is removed should not be removed from "Manage Access" page
  • "Request Date" column is missing from "Pending Requests" page
  • For Admin users total numbers of arms doesn't display
  • Full text doesn't display on "User Profile" page fields
  • Admin Portal->Pending data access requests->Admin user is able to see the same arm request twice.
  • Arms approved / rejected is not listed in the email
  • [Revoked and Rejected] status should not be listed on User Profile page.
  • Versions in deployment.yaml are not matching with versions in sysinfo
  • Unexpected message displays when a member or a non-member user navigates to DAR page
  • When Admin approves a DAR, it doesn't appear on "Manage Access" page
  • Clicking on categories (Programs, and Data Model) does not redirects users to either the Login page or the DAR page
  • Wrong message displays to unauthorized (non-member users)
  • Public Access: Default for the Bento reference implementation should be configured "Metadata Only"
  • File download-> Unable to download the files as expected from Access column.
  • As a member user when I click on "Files" tab, I see a blank page
  • Unauthorized users (non-member) that have not submitted a DAR appear on "Pending Request" page
  • Clicking "Explore and Programs" tabs do not redirect Inactive user to DAR page
  • Submit button should be disabled if user has submitted DAR(s) for all available arms
  • Admin Portal->PENDING REQUEST Individual Review-> Multiple DAR Submissions are being aggregated
  • Wrong tooltip displays upon hover of files users are not authorized to access
  • Admin Portal->PENDING REQUESTS -> multiple DAR Submissions not listed separately
  • Approved or rejected DARs reappear when admin navigates back to "Review Data Access Requests" page
  • Global Search: Clicking on any categories (Cases, Samples, Files or others) should not redirect users to either the Login/DAR page
  • Clicking on any categories (Cases, Samples, Files or others) should not redirect Admin user to DAR page
  • The focus stays on "Manage Access" or "Pending Requests" page after admin logs out
  • Admin Accounts ->Admin user ->Unable to logout for the first time
  • Admin portal->Page Reload->Page crashes after approve/reject request
  • Admin Portal->Membership Status column displays as empty after changing member account to admin role.
  • Admin Portal->Edit Non-member->Role field (default value)displays as empty.
  • Admin Portal->Received " An error has occurred in loading component: Error: undefined"
  • A non-member converted to an Admin cannot access Admin Portal
  • Functionality of the background slider in donut section reverses after a forced refresh in black background

v3.7.0 Release

21 Mar 19:14
e0f8fc3
Compare
Choose a tag to compare

Features
Google Authentication
a. User will be able to login with google account
b. Lock icons will be displayed when the user tried to download files if authentication is enabled
c. The ability for the custodian to turn off login not to use the login in their project

Local find improvements
a. Advanced Facet Filters for Number Range

QA verified Tags

FE Version: v3.7.0-980
BE Version: 4.6.0-980

v3.6.0 Release

10 Feb 15:28
b4234a1
Compare
Choose a tag to compare

Release notes- Bento Version 3.6.0 🍱

Features

  1. Bento Performance improvement – ElasticSearch
    a. Dashboard Stats Bar/Donut Widgets Performance Improvement
    b. Dashboard Table Sorting/Pagination Performance Improvement
    c. Dashboard Add Files to Cart Performance Improvement
    d. Dashboard Table Load Performance Improvement

  2. Advanced Facet Filters
    a. Advanced Facet Filters for Number Range

  3. Bento Global Search
    a. End-user can see auto-complete on global search
    b. End-user can see global search results
    c. End-user can do a global search
    d. End-user can see and filter global search results and counts
    e. End user sees consistent information across Global Search categories
    f. End user can click on magnifying glass of Global Search
    g. End-user can follow links displayed from global search results to view details
    h. End User can view Global Search results in a paginated and ordered manner

  4. Bento Local Find
    a. End user can use auto-complete to find a case ID
    b. End User can find a case by entering a single identifier
    c. End user can enter a list to find a set of cases
    d. Static Query Bar - Query built from Faceted filters and Case IDs
    e. Dynamic Query Bar - Remove the filters
    f. End User can click a "Submit" button from the pop-up window of Local Find
    g. End User can view a static query built from the Local Find and faceted filter inputs
    h. End User can view/modify previously loaded CASE SET
    i. Faceted search behaviors for Local Find
    j. End user can identify the matched and unmatched identifiers from the popup window
    k. End user can upload a file to find a set of cases

  5. Visualizes BAM and VCF files via JBrowse
    a. End User can visualize BAM files via JBrowse
    b. Custodian configures the Bento JBrowse component.
    c. End user can load human genome hg19

  6. System is compliant with IDEA

  7. Mock Data-Set Generator
    a. Initialize mock-data-generator codebase
    b. Change Mock-data-generator's output file format
    c. Mock Data Generator can read ID fields from configuration file
    d. Mock Data Generator can run in docker containers
    e. Mock Data Generator can generate the data for Bento

  8. Bento Code Refactoring
    a. Frontend Table Refactoring
    b. Bento Frontend Code Refactoring PoC

Bug Fixes

QA verified tags

FE Version: v3.6.0-912
BE Version: 4.6.0-912

v3.2.0

14 Jul 19:45
455c027
Compare
Choose a tag to compare

Features

  • 1165 - Sorting and Ordering of Facet Option/Values - Tumor Size
  • 1195 - Sorting and Ordering of Facet Option/Values - Recurrent Score
  • 1208 - Custodian - Configure option to enable custom Regex on Facet Filter
  • 1188 - PORT Tool-tips
  • 1139 - Custodian: Make widget texts configurable
  • 706 - Text cutoff(...) for widgets on the dashboard
  • 919 - Default styling for new facet sections

Security Updates
Updated react-dev-utils from 7.0.5 to 11.0.4

Bug Fixes

  • 1103 - On server paginated tables - Add/Remove columns do not persist , after we sort
  • 1034 - On server paginated tables - Rows per page info is incorrect

QA verified tags

FE Version: 3.2.0-beta-599
BE Version: 4.0.0-599

v3.0.0 Release

11 Jun 14:55
1f043e2
Compare
Choose a tag to compare

Bug

  • [BENTO-1065] - Table record selection number only display section for
    current page not the entire table
  • [BENTO-1072] - Add Associated Files button does not presist clickable
    state
  • [BENTO-1143] - Cart Comment Section writes to wrong cell in manifest
    file if comment contains a new line or comma
  • [BENTO-1150] - The files size in the api is not matching the UI
    screen
  • [BENTO-1160] - In the side bar after I click on sort by count , the
    refresh button disables
  • [BENTO-1162] - FE - Performace Issue - Remove unnecessary Network
    Calls
  • [BENTO-1167] - Clear icon to be moved to the left hand-side for
    consistency
  • [BENTO-1179] - FE- Dashboard table pagination - Incorrect Rows per
    Page
  • [BENTO-1181] - Reset option for single category behaves as global
    reset for sorting functionality.
  • [BENTO-1182] - Download button does not change the cursor
  • [BENTO-1186] - Borders to be removed from the left side image on the
    home page

User Story

  • [BENTO-1026] - End User uses Enhanced Dashboard Filters.
  • [BENTO-1027] - Custodian configures Enhanced Dashboard Filters.
  • [BENTO-1049] - Feature: be able to filter within a single category
  • [BENTO-1050] - Feature: be able to clear all filter search criteria
  • [BENTO-1051] - Feature: be able to easily search using multiple
    filters (have multiple filters simultaneously expanded)
  • [BENTO-1077] - Custodian configures table download behavior.
  • [BENTO-1083] - System supports direct download of small,
    document-like files
  • [BENTO-1084] - Custodian configures direct download of small, document-like files
    Task
  • [BENTO-1014] - FE - Facet Search Performance Enhancement
  • [BENTO-1016] - FE - Configurable UI Elements
  • [BENTO-1042] - FE-Scroll Bar Global Change
  • [BENTO-1062] - FE - Create new design for Dashboard Facet Filter
  • [BENTO-1109] - FE- Consistent NPM and Node versions
  • [BENTO-1112] - FE-Facet-Sorting Feature
  • [BENTO-1113] - FE-Facet-bubble up Feature
  • [BENTO-1114] - FE-Implement new Facet Design
  • [BENTO-1151] - FE- selected rows can be seen even facet dropdown is closed.
  • [BENTO-1158] - Develop Files Back End Microservice for serving Files using CloudFront
  • [BENTO-1176] - FE - Design review for sidebar

Improvement

  • [BENTO-765] - BE- Update search query to mimic ICDC filtering behavior
  • [BENTO-1069] - BE: Integrate high performance filtering query with GraphQL-Cypher translator
  • [BENTO-1070] - BE: Update Cypher queries
  • [BENTO-1071] - BE: Research on GraphQL API testing framework
  • [BENTO-1076] - BE: Refine cache control flow
  • [BENTO-1104] - FE - Accomodate New Query Updates
  • [BENTO-1170] - FE- Update the current existing assets URL in bento with new datacommons-assets
  • [BENTO-1178] - FE- Update the document download to use file service url

v2.0.1 Release

13 Jan 15:51
56116bd
Compare
Choose a tag to compare

Major Changes:
Facet Filter - Updated the facet filter logic to represent updated filters while the user is actively filtering.
Facet Filter - Now the count in brackets of facet represents the respective facet tabs counts (Filter by samples represent samples count, Filter by files represent files count)