Releases: AdvancedPhotonSource/BELY
Releases · AdvancedPhotonSource/BELY
Release 2026.3
General
- Improve search to match words in any order. Searching "foo bar" and "bar foo" now return the same results.
- Standardize search results between UI and API.
- Add copy button to code blocks.
- Add markdown table support.
- Notifications provided by Apprise Smart Notification handler.
- Clean up "add log entry" dialog to fit more content.
Notification UI
- Users can configure notifications from user settings page.
- Configurable notification preferences (entry updates, replies, new entries, reactions, own entry edits).
- Send test notification from configuration dialog.
- Provider instructions help dialog for notification setup.
- Unsubscribe pages. Link provided by the notification handler.
BELY Portal Plugins
- Update plugin framework to Python 3.
- Add menubar link plugin for adding custom links to the menubar.
API
- Add notification configuration API.
- Add automatic date parameter conversion for REST API endpoints.
- Add ability to upload attachments to log entries from API.
- Add MD5 checksum endpoint for attachments.
- Add endpoint to fetch log document by name.
MQTT Integration
- BELY now publishes MQTT events for activity.
- Generic entity add, update, and delete events for all entities.
- Log entry add, update, and delete.
- Log entry reply add, update, and delete.
- Log reaction add and delete.
- Search events.
- Notification test events.
- Each event includes metadata such as the triggering user, timestamp, log document info, and text diff.
MQTT Message Broker Framework
- Pluggable MQTT event handler framework.
- Type-safe Pydantic models for all BELY event types.
- MQTT topic matching with wildcard support.
- Plugin loading for handler directories or Python packages.
- Optional BELY API integration for handlers.
Packaged Plugins
- Apprise Smart Notification handler plugin.
- Support for email, Slack, Teams, Discord, and other services via Apprise.
- Loads per-user notification preferences from BELY API.
- Automatic configuration reload when notification settings change.
- Context-aware routing: notifies document owners, entry creators, and reply creators.
- Does not notify users about their own actions.
- Email threading support for grouping related notifications.
- Example handler plugins:
- SimpleLogHandler: minimal handler that logs new log entries.
- LogEntryAddHandler: processes log entry add events and extracts event details.
- LoggingHandler: logs all BELY events to standard logging.
- AdvancedLoggingHandler: logs events to files organized by topic.
- HybridEventHandler: demonstrates specific and generic event handler methods with typed events.
- ApprisNotificationHandler: basic Apprise notification handler for log entry events.
- SelectiveNotificationHandler: filters notifications by logbook or user.
Other
- Upgrade Log4j.
- Upgrade support Payara.
- Update Swagger libraries and open API generator with modern support libraries.
Bugs
- Fix search results returning null logbook type in attribute match map.
Release 2025.10
API Improvements
-
Add option to fetch log replies and log reaction when fetching log entries.
-
Expose creation and modified dates/useres to a log entry.
-
Expose "entity info" or more info with information about creation, modified dates and users for log documents.
-
Hide unused fields in API.
-
Hide user sessions in API respose.
-
Automated tests:
- Updating log reply
- Fetching log document with date
- Fetching log entry with date
- Fetching log entry with comments
- Fetching log entry with reactions
- Fetching log entry with comments and reactions.
Full Changelog: v2024.9...v2025.10
Release 2024.9
Release 2024.9
General
- Add support for permalink to a BELY search page.
- Update OPS shift to use only 12 hour shifts as default.
Bug Fixes
- Resolve invalid html in md from crashing BELY.
- Show who reacted even if user doesn't have permissions.
- Resolve issue with missing attachment record not downloading as expected.
- Resolve issue with certain video files not opening correctly.
Other
- Add automated tests of BELY API
- Add helper scripts for publishing BELY API
Release 2024.6
Release 2024.6
General
- Ability for users to customize BELY home page.
- Ability to change the sort order of log entries in a log document.
- Helpful popup for search string rules.
More interactions
- Ability for users to reply to top level log entries.
- Ability for users to add reactions to any log entry.
Attachment improvements
- Original filename retention when uploading attachment.
- Browser is provided the original filename when user tries to download attachment.
- Improved header instructions of scaled image content-type to provide to browser.
Bug Fixes
- Resolve issue preventing user from editing two log entries (in different tabs) at the same time.
- Fix for Safari not showing all attachments via improved header instruction of scaled image data.
Release 2024.5
Release 2024.5
General
- Updated header for log entry timestamps.
- Created date on left and modified on right.
- Simplified date format with the user information.
- Hidden modified info when log was never modified.
- Autogenerate a clickable link when pasting a URL.
- Ability to paste an image/file directly into the log entry.
- Prevent overriding log entry when editing on multiple sessions.
- Fetch the latest version when starting edit session.
- Verify no changes were made when saving, allow user to review if needed.
- Handle removed log entry when saving on a session updating same entry.
- Improved handing of navigating to custom lists.
Advanced Search Improvements
- Allow searching by username (owner, creator, and last modifier)
- Allow searching by creation start and end time.
- Advanced filter can now be quickly accessed using a new menubar item.
- Match description now shows advanced filter matches.
- Match description now expanded to multiple lines to make it easier to see matches.
Studies
- Customized create name generation with shift (yyyy/mm/dd/shift)
API
- Logbook API Route.
- Ability to fetch
- logbooks, systems, log entry templates, and templates.
- log documents, sections, entries.
- Ability to create
- Log documents
- Log document sections
- Log entries
- Ability to update
- Log entries
- Ability to fetch
- Python client library
Bug Fixes
- Refreshing the list page will also reload the data.
Release 2024.4
Release 2024.4
Long Lived Sessions
- Automatic renewal of active session with open browser.
- Automatic sign-in with a valid session token.
- Automatic renewal of session expiration of 7 days.
- Sign in using session token.
- 30 minutes of inactivity when browser pings server to keep session alive.
- Reset Session button
- Session token table
- Keeps user session token with expiration date.
- Keeps user signed in even during server restarts for updates.
- Session management on user settings page.
- Automatic deletion of expired sessions on the database.
Advanced Search
- Search page now includes an "advanced" checkbox which enables advanced search.
- Ability to perform optimized database level searches using the following parameters.
- Logbook (Ability to select multiple logbooks, selection of zero means all)
- System (Ability to select multiple systems, selection of zero means all)
- Start Date (Optional, start date of last modified date)
- End Date (Optional, end date of last modified date)
- For log entries search the start and end date refer to last modified date of the log entry.
- For log document search the start and end date refer to last modified date of the whole document.
- New System column on search results tables.
- Resolved last modified date column for log entry results, now shows the modified date for the log entry not document.
Enhanced Home Page
- Logbook groupings are displayed as an accordion to show all logbooks separately instead of as a single block of latest logbooks.
- Recent logbooks are fetched dynamically as user switches between them, this keeps page loading times very responsive.
- Recent log documents are sorted by last modified date.
- Summarized modified information for each log document (user and date fits on one line).
Other Improvements
- Operations lockout
- Log lockout time is set based on shift length.
- Additional "hour" is added from the operations shift template log document lockout configuration.
- Users with admin or maintainer privilege can override the lockout.
- Add ability to copy permalink to specific log entry within a log document.
Release 2024.3
General Improvements
- Use of improved image scaling algorithm for better quality.
- Log entries now have modified dates as well and update the log document modified date.
- Use log modified date for log logout time calculation.
- Markdown changes
- Code block now has a white background. Black background can still be achieved by specifying any language.
- Markdown help dialog now provides instructions for code block and provide reference to more in depth guide.
- Updated documentation on quick start guide with more markdown help.
- Log document details page.
- Reversed "Log Document Info" and the navigation buttons to got to next/prev log document.
Search Improvements
- Sort from newest to oldest log document.
- Show logbook type in results allowing to further filter as well.
- Show last modified date allowing to further filter as well.
- Improved formatting of log search results matches split into multiple lines with no line number specified.
- Ability to quickly specify number of rows and even show all results.
Dynamic Log Document Types
- Administrators can dynamically change log document types.
- Create, update, delete functionality.
- Ability to sort the order of types.
- Ability to change parent logbook type group.
- Supports a two-level tier of logbook types allowing for grouping types.
- Automatically updates the logbooks menu upon user session reset.
New Home Page
- Customizable home page with ability to specify up to three log document lists.
- Ability for administrators to change the default home page for all users without a specified home page.
- Ability to display a log document grouping such as maintenance to show latest log documents in the whole group.
MCR Improvements
- Only copy operator aids from previous shift.
- Copy initial machine status + shift summary from template (Update template).
- Double click on log entry text to start editing it.
- (bug fix) Maintain sort order of log entries when copying them from another log document.
Bug Fixes
- Resolve issue where editing any log entry would always highlight only the last added log entry upon saving.
- Resolve issue where new log documents would not be removable due to an unsaved settings property.
- Resolve margin issues with markdown headings inside log entries.
First BELY Release v2024.2
First Release of BELY
Details Page
- Full page log entries rendered from markdown.
- Popup details of log document.
- Ability to navigate to next and previous log document of the same type.
- Ability to toggle on the timestamp of each log entry.
Markdown
- General markdown support
- Markdown support for resized uploaded images. Generated during md render.
- Markdown references of attachments do not include application context root. Generated during md render.
- Markdown help dialog with some useful example on markdown usage.
Search
- Ability to search log documents by various details.
- Ability to search log entries.
- Search only results in top level log documents and not their sections.
Log Document Settings
- Show timestamp setting allows setting default behavior with displaying the timestamp on log entries.
- Log document lockout allows setting the time in hours before the log document cannot be edited.
- Log entry lockout allows setting the time in hours before log entries can no longer be updated after their creation.
- Template action allows setting the default template action (see below)
Log Document Template
- Ability to create templates that provide structure for newly created log documents.
- Templates transfer over any settings that have been defined to the instances.
- Templates provide a structure of sections to create to go along with new log documents.
- Support for template action
- None: Default behavior, sections and settings will be copied over.
- Copy: Default behavior plus any log entries on the template will be copied over.
- Template per entry: Default behavior plus first log entry of each section will be used as a template for all new log entries.
- Ability to specify a default template per log document type.
Shift Creation Utility
- Automatic generation of the next shift. (Support for 12 hour weekend shift and 8 hour weekday shifts. )
- Ability to specify a custom start + end time of shift.
- Generation of first log entry with Personnel and shift type.
- Default copy of relevant sections from last shifts.
- Generation of properties for Personnel, shift type, shift start and shift end.
Home page
- Initial home page features a list of shifts, machine studies, and controls logs.
- each list the last 10 log documents created.
Other
- Customize last CDB release into a new logbook application. Many feature have been inherited and are not listed in these notes. Remove CDB specific functioanilty.
- Show log documents in newest to oldest order.
- Support for logbook types of machine studies, controls, operations, and sandbox.
- Sessions
- 8 hour long session per user.
- Saveable user column settings for log document list.
- New about page for BELY.