Broadleaf Microservices
  • v1.0.0-latest-prod

1.5.x Release Train

1.5.0-GA

  • New Features

    • Service

      • Auth: Support social logins like Google or Facebook for login/registration for Customers

      • Auth: Expose OAuth2 Client registrations in the admin

      • Auth: Create interface to map fields from a 3rd party OAuth token to a BroadleafOAuth2UserDetails

      • Auth: Make third party IDP login compatible with Broadleaf MS tenancy

      • Auth: Remove LocalDevOAuth2ClientRedirectFilter and use dnsmasq

      • Auth: Custom OAuth2AuthorizationRequestResolver

      • Auth: Add Auth0 configuration

      • Auth: Control when users are created from third party login

      • Auth: JDBC ClientRegistrationRepository

      • Auth: Automatic auth server creation can’t handle both domain and domain prefix simultaneously

      • Auth: Replace InMemoryOAuth2AuthorizedClientService

      • CartOps: Selector product add to cart validation and attributes

      • CartOps: Add an internal inventory check for the available online flag during add to cart.

      • CartOps: Merchandising Product add to cart, offer, & price considerations

      • CartOps: Remove cart items from cart message in checkout completion event.

      • Cart: Don’t use persistence channel for carts

      • Cart: Disable persistence events on carts

      • Catalog Browse: Create new endpoint that takes a URL and returns either a product or category

      • Catalog: Introduce a read-single-variant operation in VariantEndpoint

      • Catalog: Add an endpoint to fetch multiple categories by id

      • Catalog: Rename Product.inventoryType to Product.fulfillmentType

      • Catalog: Update language & logic around ItemChoice override price to clarify that it must be a unit price

      • Catalog: Introduce OptionGroup domain to help support new product options interface"

      • Catalog: Enhance Product domain to better support rule-based categorization

      • Catalog: Support targeting of brand, merchandisingType, gender, & tags for rule-based categories

      • Catalog: Rule-based Category Improvements

      • Catalog: Add data driven enum domain for catalog fields

      • Catalog: Add priority algorithm for resolving product URLs

      • Catalog: Selector product validation concerns

      • Catalog: Cleanup rule-based category and data driven enum UI

      • Catalog: Cannot clear the field values Brand

      • Catalog: Introduce support for Selector Products

      • Catalog: Add logic to handle translations when evaluating category rule filters

      • Inventory: When creating SkuInventory via the admin, the vendorRef should be pre-populated by InventoryLocation.vendorRef

      • Menu: Introduce lookup for defining category-based and product-based menu items

      • Promotion: Offer Screen - Basic, Merchandising, & Restrictions Sections Updates

      • Promotion: Improve ability to add custom Offer target types

      • Promotion: Support Cheapest/Costliest Target Grouping Strategy

      • Search: Improved search suggestion faceting

      • Search: Establish convention for mapping from search suggestion brand/merchandisingType facet to category url

    • Presentation

      • Admin: Added RuleBuilder "Has Any In" Operator for multi value matching

      • Admin: Update Included Product & Item Choice Options admin interfaces following domain refactor

      • Admin: Support the resolution and use of parent form fields as default values

      • Admin: Refactor Styles across the board to use Tailwind

      • Admin: Refactor Admin Navigation UX

      • Admin: Replace CRA in AdminWeb and AdminStarter

      • Admin: Display version somewhere in the admin

      • Admin: Refactor Augmentation Created Event

      • NextJS Starter: Update DefaultPDP > Assets.js to lookup assets by tag with a prefix appropriate for the type of the tag

      • NextJS Starter: Show Included Products on PDP and Add-to-Cart

      • NextJS Starter: Standard & Variant product PDP use cases

      • NextJS Starter: PDP - Handle 'BUNDLE' products

      • NextJS Starter: PDP - Handle 'SELECTOR' products

      • NextJS Starter: Display applied offer name on cart item

      • NextJS Starter: PDP - Support Configurable Item Choice products like T-Shirts

    • Library

      • Data Tracking: Automatically register PackageDataRouteSuppliers from packages provided in JpaEntityScan

      • Data Tracking: Enhance to make basic audit data available on all trackable entities

      • JPA Common: Configurable SchemaCompatibiltyUtility for Client Implementations

      • Metadata: Remove need for cross service dependencies due to metadata consumer libraries

  • Bug Fixes

    • Service

      • CartOps: Cart can become broken if a fulfillment item exists without a cart item

      • CartOps: Can’t fetch the products for the rule-based category with the filter by the product’s Tags

      • CartOps: Fix Pricing Issues with Bundles and ItemChoices with overrides

      • Catalog: Item Choices have the same generated pricingKey

      • Catalog: Fix checking of the product availability for the rule-based category

      • Catalog: Fixed implicit filter on product grids by type

      • Catalog: Options grid should show label instead of attribute value

      • Catalog: When editing cart-item attribute a duplicate is created after saving

      • Catalog: CartItem.merchandisingContext not being set for demo selector product

      • Inventory: The filter of the SKU inventory in the admin doesn’t work for the "skuCode" and "skuName"

      • Pricing: Price Data on the product option form level doesn’t have effect

      • Promotion: Enhance Offer PercentOff validation to not allow values over 100

      • Promotion: Free Shipping Offer is discounting less than 100%

      • Promotion: Discounts still applied to item choices when discount allowed is false

      • Sandbox: Deploying a variant price change causes a second variant to be produced

      • Search: Solr bug - parsing with edismax if field does not exist causes malformed queries

      • Search: Update product indexing logic to only consider records whose activeEndDate is greater than today

      • Tenant: ApplicationEndpoint#readAll should return inactive/deactivated applications if active param is false

    • Presentation

      • Admin: Deployment Date and Time filters not found on JpaChangeSummary

      • Admin: Removing one of the item choice cause disappearing of other items

      • Admin: Order Fulfillments view failing to render due to attribute choices

      • Admin: Text on Application Page is obscured by asset buttons

      • Admin: Adding existing catalog to application fails the first time

      • NextJS Starter: blTenant cookie is very large. Remove in favor of server-side storage

    • Library

      • DataTracking: Jpa criteria name parameters can be duplicated when RSQL and ContextInfo query influencers are used concurrently

      • Messaging: Camel Cluster Services using JGroups are not properly arriving at a single leader in a kubernetes cluster