Changelog

3.0.112

Picture this! Google GenAI image support has arrived, plus a documentation makeover.
3.0.112

Added

  • AI: Added Google GenAI Image generation support.
  • Documentation: Reorganized structure and added new sections for Search, AI, Messages, and Storage.
  • Documentation: Added Organizations documentation.
  • Development: Updated publish workflow and added Docker support for documentation site.

3.0.111

Ready when you are! Fixed the service readiness check.
3.0.111

Fixed

  • Core: Fixed the readiness check to safely handle cases where the GraphQL service is not initialized.

3.0.110

No more null errors interrupting your Bible studies.
3.0.110

Fixed

  • Content: Fixed an issue where null attributes in Bible compilation could cause errors.

3.0.109

Analytics numbers crunch correctly, and guides are built right.
3.0.109

Fixed

  • Analytics: Fixed an issue where analytics data transformation could fail due to missing optional fields.
  • Content: Fixed guide step and module creation to ensure they are created with the correct content type.

3.0.108

Collection lists are snappier and react faster.
3.0.108

Fixed

  • Administration: Fixed reactivity and caching behavior in the collection selection list.

3.0.107

Searching collections works like a charm, and attributes are stable.
3.0.107

Fixed

  • Administration: Fixed an issue where the collection selection list would not update when searching.
  • Administration: Fixed interface stability issues when adding or removing auto-assign attributes.

3.0.106

Analytics validation chills out a bit.
3.0.106

Changed

  • Analytics: Relaxed validation for analytics Element model, making id and type optional.

3.0.105

Automation station! Auto-assign collections, Cloudflare speed, and smarter images.
3.0.105

Added

  • Administration: Added UI for configuring auto-assign collection rules.
  • Core: Added Cloudflare CDN integration.
  • Jobs: Added AutoAssignCollectionsJob to automatically assign items to collections based on attribute rules.
  • Security: Added support for designating a primary profile.

Changed

  • Content: Added automatic image dimension extraction if missing.

3.0.104

Switch identities in a snap with the new Profile Switcher.
3.0.104

Added

  • Administration: Added support for profile switching in the User Menu.

3.0.103

Ready, set, go! Set status on creation. Plus, localhost fixes.
3.0.103

Added

  • Administration: Added support for setting the "ready" status when creating new collections and metadata.

Fixed

  • Administration: Fixed localhost WebSocket configuration.

3.0.102

Bible search is smarter.
3.0.102

Fixed

  • Content: Improved Bible reference lookup to fallback to search if ID lookup fails and fixed chapter matching logic.
  • Administration: Removed legacy ASV Bible option from Bible References component.

3.0.101

Retrieving user info correctly, every time.
3.0.101

Fixed

  • Security: Fixed OAuth2 user info retrieval to correctly use the configuration type instead of token type.

3.0.100

Facebook login just got a smoother red carpet.
3.0.100

Added

  • Security: Added specific authentication handling for Facebook OAuth2 to ensure correct user info retrieval.

3.0.99

OAuth2 now knows exactly who it's talking to.
3.0.99

Fixed

  • Security: Fixed an issue with OAuth2 handler not correctly identifying the provider type.

3.0.98

Found the right path for WebSockets.
3.0.98

Fixed

  • Administration: Corrected WebSocket endpoint path configuration.

3.0.97

Simpler is better. Streamlined the WebSocket endpoint.
3.0.97

Changed

  • Administration: Simplified WebSocket endpoint configuration.

3.0.96

Splitting the signal: separate paths for HTTP and WebSockets.
3.0.96

Changed

  • Administration: Refactored Apollo client configuration to support separate HTTP and WebSocket endpoints for server and browser environments.

3.0.95

Pointing the API URL in the right direction.
3.0.95

Changed

  • Administration: Updated API URL configuration in Nuxt config.

3.0.94

Apollo client now listens to runtime config like a pro.
3.0.94

Changed

  • Administration: Updated Apollo client configuration to correctly use runtime configuration for GraphQL endpoints.

3.0.93

Searchable means searchable. Fixed the status logic.
3.0.93

Fixed

  • Administration: Fixed an issue where updating the searchable status of a collection incorrectly used the locked status.

3.0.92

Just a tune-up. Keeping things running smooth.
3.0.92

Changed

  • Maintenance: Maintenance release.

3.0.91

Jobs get more time to finish, and search gets better at grammar.
3.0.91

Changed

  • Jobs: Extended the default job execution timeout from 15 to 30 minutes.
  • Search: Added excludeTypes and excludeContentTypePrefix filtering to profile and collection search transformations.
  • Search: Replaced hardcoded list of pluralized collection types with a generic pluralization logic (appending 's') in search index transformations.

3.0.90

Teamwork makes the dream work! Collaboration arrives in the Guide Editor.
3.0.90

Added

  • Administration: Enabled collaboration support in the Guide Editor and ensured metadata attributes are reloaded correctly.

3.0.89

Search gets smarter about dates and objects.
3.0.89

Changed

  • Search: Updated search document transformations to correctly handle published dates and serialize collection items as objects.

3.0.88

Don't need the dashboard? Now you can turn it off.
3.0.88

Added

  • Administration: Added support for disabling the dashboard via configuration.

3.0.87

Double-checking the groups so permissions always make sense.
3.0.87

Fixed

  • Profile: Fixed logic for backfilling principal groups to check for existing groups and ensure correct association.

3.0.86

Filling in the blanks: principal groups are now automatically backfilled.
3.0.86

Fixed

  • Profile: Automatically backfill missing principal groups to ensure permissions are correctly resolved.

3.0.85

Tightening access control for profile IDs.
3.0.85

Security

  • Profile: Refactored access control logic for retrieving profile IDs.

3.0.84

Fresh content first! Lists now sort by published date automatically.
3.0.84

Changed

  • Administration: Added default sorting by published date to content lists (Bibles, Collections, Documents, Guides, Metadata) when no search query is active.

3.0.83

Firebase joins the party, and OAuth2 flows are smoother than ever.
3.0.83

Added

  • Security: Added support for Firebase authentication callbacks.

Fixed

  • Security: Fixed dynamic replacement of callback URL parameters in OAuth2 flows.

3.0.82

Hashing it out properly with ArgonPassword.
3.0.82

Fixed

  • Security: Updated ArgonPassword to return the hash value in its string representation.

3.0.81

Security got a makeover. Cleaner APIs, stronger passwords.
3.0.81

Changed

  • Security: Refactored password and identifier management APIs; removed direct credential manipulation methods (addCredential, editCredential) in favor of updatePassword and updateIdentifier.
  • Security: Refactored password reset mutation for better error handling and logging.
  • Security: Updated credential models to enforce hashed password usage and identifier trimming.

Added

  • Security: Added extensive test coverage for security services.

3.0.80

Locking down profile updates for extra peace of mind.
3.0.80

Added

  • Security: Implemented secure profile updates for identifiers and passwords, requiring password verification.

Changed

  • Security: Updated principal mutations to strictly operate on the currently authenticated user context.

3.0.79

Sign up and you're verified! Plus, a shiny build badge for the repo.
3.0.79

Added

  • Security: Added support for automatic account verification on signup.
  • Documentation: Added build status badge to README.

3.0.78

The whole chapter, verse by verse. Nothing left behind.
3.0.78

Fixed

  • Content: Fixed an issue where requesting a full Bible chapter did not return all verses.

3.0.77

Reprocess Bibles with a click, and enjoy robust text handling.
3.0.77

Added

  • Administration: Added UI support for manually reprocessing Bibles.
  • Content: Added functionality to reprocess Bibles.

Changed

  • Content: Enhanced Bible processing to support more complex text structures.
  • Development: Consolidated and improved CI release workflows.

3.0.76

Bible references now speak your language with a human-readable format.
3.0.76

Added

  • Content: Added full human-readable reference field (humanLong) to Bible API responses.

3.0.75

Math is hard, but we fixed the progress percentages. 100% verified.
3.0.75

Fixed

  • Profile: Corrected guide progress percentage calculation to return values from 0 to 100.

3.0.74

Guide progress is fully operational! Plus, automated releases are here.
3.0.74

Added

  • Profile: Completed implementation of guide progress logic, including history tracking and status updates.
  • Development: Added GitHub Actions workflow for releases.

Changed

  • Core: Enhanced query compiler capabilities and added comprehensive tests.

3.0.73

Polishing the API for guide progress tracking.
3.0.73

Changed

  • Profile: Updated GraphQL API definitions for guide progress to ensure consistency.

3.0.72

Guide history is now making history (correctly).
3.0.72

Fixed

  • Profile: Fixed database mapping for guide history and corrected API parameters.

3.0.71

Mapping out the bookmarks so you never lose your spot.
3.0.71

Fixed

  • Profile: Fixed database mapping for bookmarks.

3.0.70

Found your place! Bookmark queries are back on track.
3.0.70

Fixed

  • Profile: Resolved an issue with bookmark database queries.

3.0.69

Tightening the bolts on permission checks for guides.
3.0.69

Changed

  • Security: Updated permission checks for ProfileGuideProgress metadata to use standard evaluation logic.

3.0.68

Analytics gets a power-up with new query management tools!
3.0.68

Added

  • Analytics: Added analytics queries fields and management.
  • Administration: Added Analytics Queries pages.

Changed

  • Search: Updated index batch size configuration.

Fixed

  • UI: Fixed item list display.
  • Content: Improved leniency for image handling.

3.0.67

Search indexing goes on a diet, and errors are easier to spot.
3.0.67

Changed

  • Content: Improved error logging for missing Bible chapters.

Fixed

  • Core: Fixed memory in search indexing when reindexing all items.

3.0.66

Peek under the hood with new job diagnostics and smoother Bible processing.
3.0.66

Added

  • Administration: Added new Jobs diagnostic page.
  • Backend: Added diagnostics module for inspecting job queues (not fully implemented yet).
  • Content: Added concurrency limits for Bible chapter fetching.

Changed

  • Search: Further reduced default indexing batch size to 10.

3.0.65

Locking it down! Distributed locking keeps search indexing well-behaved.
3.0.65

Added

  • Search: Added distributed locking to indexing executors.
  • Storage: Added caching to StorageSystemService.

3.0.64

Tuning the engine: search indexing is smoother and the server is running leaner.
3.0.64

Changed

  • Search: Reduced default indexing batch size to 100.
  • Server: Enabled native access for JVM args.

3.0.63

Hit the reset button on your search index with full reindexing support.
3.0.63

Added

  • Storage: Added support for full reindexing in Storage Settings.

3.0.62

Master your workflow with new state management tools.
3.0.62

Added

  • Workflow: Added comprehensive support for State and Transition management.
  • Workflow: Added metadata synchronization jobs to ensure a consistent state across items.
  • Administration: Added support for managing states and transitions.

Fixed

  • Collections: Fixed collection publishing stability and updated the editor interface.
  • Jobs: Improved job cleanup reliability for parent jobs.

3.0.61

Spring cleaning came early. We dusted off some files.
3.0.61

Fixed

  • Administration: Cleaned up files.

3.0.60

AI agents are now in the director's chair, and documentation got a brand new home!
3.0.60

Added

  • AI: Added content generation agents and improved YouTube handling logic.
  • Templates: Added support for running document template tools within containers.
  • Documentation: Migrated documentation to a new site structure.

3.0.59

Enabled HubSpot integration in the server application.
3.0.59

Added

  • Integrations: Enabled HubSpot integration in the server application.
  • Development: Added Qodana configuration for static code analysis.

3.0.58

Restored startup execution of enabled job runners.
3.0.58

Fixed

  • Backend: Restored startup execution of enabled job runners.

3.0.57

Added support for Google GenAI Text-to-Speech generation.
3.0.57

Added

  • Media: Added support for Google GenAI Text-to-Speech generation.

Fixed

  • Security: Fixed potential issue with missing local_id in credential attributes.

3.0.56

Fixed HubSpot integration registration to ensure it initializes correctly.
3.0.56

Fixed

  • Integrations: Fixed HubSpot integration registration to ensure it initializes correctly.

3.0.55

Added support for attribute tools, allowing custom actions within the attribute editor.
3.0.55

Added

  • Administration: Added support for attribute tools, allowing custom actions within the attribute editor.
  • Integrations: Added HubSpot integration for syncing profile data and managing lists.
  • Jobs: Added support for chained jobs and improved listeners for complex workflow orchestration.
  • Media: Added audio generation support with ChirpToWavJob and WavToMp3Job.
  • UI: Item Selector improvements, added support for adding YouTube videos directly from the item selector.

Changed

  • UI: Updated collection filters in the item selector to use search facets for improved filtering.

Fixed

  • Content: Fixed HTTP range request handling for downloads.

3.0.54

Added "Models" management pages.
3.0.54

Added

  • Administration: Added "Models" management pages.
  • Content: Added GraphQL support for Models.
  • Content: Added support for topics metadata and reading time calculation via AI Agents.
  • Content: Enabled generative metadata generation.
  • Security: Added support for resetting user passwords when the account was created via OAuth2.

Changed

  • AI: Refactored agents to use structured LLM requests for descriptions and topics.

Fixed

  • Development: Improved build caching reliability.

3.0.53

Removed accidental import that could cause build issues.
3.0.53

Fixed

  • Backend: Removed accidental import that could cause build issues.

3.0.52

Added syncVariants mutation to manually synchronize items across language variants.
3.0.52

Added

  • Collections: Added syncVariants mutation to manually synchronize items across language variants.
  • Administration: Added "Sync Variants" utility to the Collection page.

Fixed

  • Jobs: Fixed logic for syncing variant collections.
  • UI: Fixed application icon rendering in the administration interface.

3.0.51

Unified collection items retrieval, ensuring collections and metadata queries respect language filtering.
3.0.51

Changed

  • Collections: Unified collection items retrieval, ensuring collections and metadata queries respect language filtering.
  • Collections: Added contentTypes filter support to the metadata GraphQL field.

3.0.50

Fixed query filtering so language and type filters apply correctly to metadata items without excluding collections.
3.0.50

Fixed

  • Collections: Fixed query filtering so language and type filters apply correctly to metadata items without excluding collections.

3.0.49

Added deleteFirst flag to reindex mutation in storage settings.
3.0.49

Added

  • Storage: Added deleteFirst flag to reindex mutation in storage settings.
  • Storage: Added connection limiter and optional acquire flag to obtainConnection.
  • Search: Added indexing exclusions for types and content prefixes.
  • Search: Increased batch size to 500 for indexing in all executors.
  • Workflow: Added executors and events for handling collection metadata relationship jobs.
  • Administration: Added ability to remember filter state.
  • Administration: Improvements to Image Editor, Editor Pages, and Picture relationship types.

Changed

  • Transformation: Updated transformation interface to include context parameters.
  • UI: CSS tweaks and login redirect adjustments.

Fixed

  • Collections: Fixed missing parenthesis in query condition within CollectionServiceImpl.
  • Storage: Adjusted connection handling logic to improve retry behavior.
  • Jobs: Fixed associated jobs.

3.0.48

Fix scrypt situation.
3.0.48

Fixed

  • Security: Fix scrypt situation.

3.0.47

Update cache clear logic.
3.0.47

Changed

  • Cache: Update cache clear logic.
  • UI: Allow setting colors.

3.0.46

Additional improvements to the logo.
3.0.46

Changed

  • UI: Additional improvements to the logo.

3.0.45

Updates for logos.
3.0.45

Changed

  • UI: Updates for logos.
  • Media: Ignore svg files when resizing.

3.0.44

Added Scrypt password hashing support, enabling compatibility with Firebase-imported accounts and seamless user migration.
3.0.44

Added

  • Security: Added Scrypt password hashing support, enabling compatibility with Firebase-imported accounts and seamless user migration.
  • Security: Implemented a fallback mechanism to automatically detect and verify Scrypt-hashed passwords during login.

Fixed

  • Collections: Resolved an issue where default attributes defined in a collection template were not correctly applied when creating a new collection.
  • Content: Improved relationship syncing for multi-language content. Relationships created on a localized variant now correctly link to the corresponding language variant of the target item.
  • Administration: Filtered internal guide content types (bosca/v-guide, bosca/v-guide-step) from the main Documents list view to reduce clutter.

3.0.43

Always enable preview.
3.0.43

Changed

  • UI: Always enable preview.

3.0.42

Fixes for Media Player and File attributes.
3.0.42

Fixed

  • UI: Fixes for Media Player and File attributes.

3.0.41

Updates for Media Player and File attributes.
3.0.41

Changed

  • UI: Updates for Media Player and File attributes.

3.0.40

Fixed item selector.
3.0.40

Fixed

  • UI: Fixed item selector.

3.0.39

Prevent dropzone from taking over when reordering.
3.0.39

Fixed

  • UI: Prevent dropzone from taking over when reordering.

3.0.38

Updates for images.
3.0.38

Changed

  • UI: Updates for images.

3.0.37

Updates for images.
3.0.37

Changed

  • UI: Updates for images.

3.0.36

Fixed order of query arguments.
3.0.36

Fixed

  • Backend: Fixed order of query arguments.

3.0.35

Use object-fit: cover for images.
3.0.35

Changed

  • UI: Use object-fit: cover for images.

3.0.34

Added support for fetching supplementary images by key.
3.0.34

Added

  • Content: Added support for fetching supplementary images by key.

3.0.33

Improved GraphQL request handling to support empty queries or body parsing exceptions.
3.0.33

Fixed

  • Backend: Improved GraphQL request handling to support empty queries or body parsing exceptions.

3.0.32

Added drag-and-drop file upload support for collection items, allowing users to upload multiple files directly into the list.
3.0.32

Added

  • Administration: Added drag-and-drop file upload support for collection items, allowing users to upload multiple files directly into the list.

3.0.31

Added support for managing parent collections in the Collection/Metadata view. Users can now add new parents and edit existing parent attributes via a JSON editor.
3.0.31

Added

  • Administration: Added support for managing parent collections in the Collection/Metadata view. Users can now add new parents and edit existing parent attributes via a JSON editor.
  • Development: Added mockk dependency to the content framework module.

Changed

  • Search: Updated indexing logic to exclude deleted items from all search indices.

3.0.30

Ensure document is added if it doesn't exist during certain operations.
3.0.30

Fixed

  • Content: Ensure document is added if it doesn't exist during certain operations.

3.0.29

Fixed an issue where the template was being unset incorrectly.
3.0.29

Fixed

  • Collections: Fixed an issue where the template was being unset incorrectly.

3.0.28

Further improvements to image usage in administration lists.
3.0.28

Changed

  • UI: Further improvements to image usage in administration lists.

3.0.27

Increased image usage in list views.
3.0.27

Changed

  • UI: Increased image usage in list views.

3.0.26

Added SPicture support and improved item rendering with images in administration.
3.0.26

Changed

  • UI: Added SPicture support and improved item rendering with images in administration.

3.0.25

Added support for a separate upload endpoint configuration (urlUploadPrefix) to handle uploads distinct from downloads.
3.0.25

Added

  • Storage: Added support for a separate upload endpoint configuration (urlUploadPrefix) to handle uploads distinct from downloads.

3.0.24

Added item counts and improved labeling in administration.
3.0.24

Changed

  • UI: Added item counts and improved labeling in administration.
  • UI: Updated the "Add" button design.

3.0.23

Updated filtering logic and UI for Documents, Guides, and Metadata lists.
3.0.23

Changed

  • UI: Updated filtering logic and UI for Documents, Guides, and Metadata lists.

3.0.22

Introduced SlugEditor for managing slugs on content items.
3.0.22

Added

  • Administration: Introduced SlugEditor for managing slugs on content items.
  • Backend: Added robust slug generation service with transliteration support.
  • Templates: Content editor template improvements.