Skip to content

Releases: patternfly-java/patternfly-java

PatternFly Java 0.9.2

10 Jun 18:24
ec13764

Choose a tag to compare

Added

  • Add finder path restoration with Finder.select(String) and Finder.select(FinderPath) for async column loading and programmatic path selection
  • Add Finder.activePath() method returning the selection path up to the currently active column, useful for URL synchronisation during arrow-left keyboard navigation

Changed

  • Change Finder.select(FinderPath) to fire select and preview events only for the deepest resolved item instead of every intermediate segment during path restoration
  • Fire SelectHandler on ArrowLeft keyboard navigation so consumers are notified when focus moves back to a previously selected item
  • Upgrade Elemento from 2.4.11 to 2.5.2

Fixed

  • Improve finder path selection resilience by stopping on missing columns or items instead of continuing with stale state
  • Fix code review findings across org.patternfly.component package
  • Fix markdown directory tree copy in publish-docs workflow

PatternFly Java 0.9.1

08 Jun 12:25
b830287

Choose a tag to compare

Added

  • Add manifest-driven markdown documentation system with nested directory structure, Node-based remark/rehype pipeline with Shiki highlighting, and showcase pages for API design, icons, tokens, building, CI/CD, and releasing
  • Add Navigation docked() modifier and ariaLabel() on NavigationGroup and NavigationItem
  • Add showcase demos for button, card, drawer, tabs, banner, panel, progress, breadcrumb, truncate, and navigation
  • Add template component package (org.patternfly.component.template) as a blueprint for new components
  • Add project skills: /pf-lint, /pf-update, /pf-status, /pf-dev-env
  • Add CardSubtitle sub-component with addSubtitle() on CardTitle
  • Add Secondary modifier interface to Card
  • Add animated button variants: hamburger(), favorite()/favorited(), and settings() with SVG-based animations
  • Add clicked(), ariaExpanded(), ariaDisabled(), and ariaLabel() methods to Button
  • Add build-time validation for inline JavaDoc code snippets via snippet-tests module
  • Add secondary(), pill(), and scrollableAutoHeight() methods to Panel

Changed

  • Migrate showcase from Java-generated pages to manifest-driven Node markdown pipeline with YAML frontmatter, Shiki highlighting, and _meta.yaml navigation groups, replacing doc.java, boilerplate page classes, highlight.js, and link-list index pages
  • Refactor navigation internals: wrap expandable group text in span.pf-v6-c-nav__link-text, switch to ElementTextDelegate, lazy text element creation
  • Move formatting, linting, and enforcer plugins to opt-in Maven profiles (format, check)
  • Import PatternFly.org styles from npm package instead of stale local copies
  • Replace JBang code generation with Node scripts (version.mjs, code.mjs) using maven-frontend-plugin
  • Slim down README from 385 to ~40 lines, linking to showcase for detailed documentation
  • Upgrade pnpm from 11.3.0 to 11.5.2
  • Upgrade Jackson from 2.x to 3.x in test dependencies

Fixed

  • Fix Button.iconAndText() dropping pf-m-start/pf-m-end icon position modifiers due to removeIcon() cycle
  • Fix PageSidebar missing sidebar-main wrapper for glass contrast mode
  • Fix accordion alignment: correct toggle icon, wrap button in <dt>/<h>, add pf-m-toggle-start, pf-m-bordered, and role="region"
  • Fix navigation alignment: correct expandable group icon, add inert on collapsed subnav, add id/aria-labelledby to sections, remove extra dividers
  • Fix icon usage across components: switch button close/copy and scroll button icons to correct rhMicrons/rhUi sets
  • Fix component conventions: add missing Javadoc on ~110 sub-components, fix duplicate SUB_COMPONENT_ID values and FormSelectOption constructor visibility
  • Fix -Dquickly not skipping J2CL compilation when combined with -P showcase
  • Fix charts/npm lockfile out of sync with package.json
  • Fix stale markdown version bump path in versionBump.sh
  • Add aria-label attributes to icon-only buttons across showcase demos
  • Add Closure Compiler externs for markdown JsInterop types

PatternFly Java 0.9.0

28 May 12:24
8c1cec3

Choose a tag to compare

Added

  • Add /pf-align skill for implementing missing variations and fixing DOM/CSS differences identified by /pf-compare
  • Add /pf-compare skill as a project plugin (.claude-plugin/) for comparing PatternFly components against their PatternFly Java implementations using Chrome DevTools MCP browser automation
  • Add Red Hat brand icon sets (rhUi, rhMicrons, rhStandard) with 1,136 new icons alongside existing FontAwesome icons
  • Add rhIcons.mjs adapter script for RH icon generation with multi-path SVG flattening
  • Add dynamic lookup support for rhUi, rhMicrons, and rhStandard prefixes in PredefinedIcon.predefinedIcon(String)
  • Add Project Felt theme support with Theme enum and ThemeManager<Theme>
  • Add Glass contrast mode with Contrast.GLASS mapping to pf-v6-theme-glass
  • Add Glass and NoPlainOnGlass modifier interfaces to Modifiers
  • Add glass and noPlainOnGlass CSS constants to Classes
  • Add Circle and Pill modifier interfaces to Modifiers with circle and pill CSS constants
  • Add Circle modifier to Button
  • Add Vertical modifier to ActionList
  • Add Plain modifier to Table, DataList, DrawerSection, Wizard
  • Add NoPlainOnGlass modifier to DataList
  • Add Pill modifier to Drawer, Banner
  • Add Glass and NoPlainOnGlass modifiers to DrawerPanel
  • Add Plain and NoPlainOnGlass modifiers to Accordion
  • Add FullWidth modifier to ToggleGroup
  • Add Glass modifier to Card
  • Add Plain modifier to NotificationBadge
  • Add ariaDescribedBy(String) to Radio and Checkbox
  • Add hideStatusIcon() to Progress
  • Add ariaLabel(String) to ExpandableSection
  • Add Glass modifier to PageSection for sticky glass sections
  • Add add() variant to Label for .pf-m-add modifier
  • Add form() styling to MenuToggle for form context usage
  • Add nav() variant to Tabs for navigation-style tabs
  • Add tabListAriaLabel(String) to Tabs for inner tab list accessibility
  • Add moreText(String), lessText(String), hideIcon(), showIcon(), and icon(Element) to ExpandableSectionToggle
  • Add stickyHeader() to Table with stickyHeader CSS constant
  • Add heights(String) and heights(Breakpoints<String>) to Toolbar for responsive height support

Changed

  • Migrate showcase and charts build tooling from Parcel to Vite, removing LightningCSS workarounds for @container anchored() rules and relative url() in CSS custom properties
  • Standardize pnpm 11.3.0 as the package manager across all npm packages, replacing a dev pre-release version in charts, core, and finder
  • Split IconSpecs into separate top-level enum classes per icon set with automatic chunking (configurable via node generate.mjs <chunkSize>) to fix J2CL static initializer exceeding the 64KB bytecode limit
  • Improve /pf-compare and /pf-align skills with progressive disclosure, extracted JS scripts and templates to references/, added example reports, enriched trigger phrases, and standardized tool naming
  • Replace FontAwesome icons with Red Hat brand icons across all components (close, carets, status icons, utility icons)
  • Migrate showcase icon references from FontAwesome 5 to Red Hat brand icon sets (rhUi)
  • Update Severity and ValidationStatus enums to use rhUi status icons
  • Update @patternfly/react-icons from 6.2.2 to 6.5.1 and @patternfly/patternfly from 6.2.3 to 6.5.2
  • Update @patternfly/react-tokens from 6.2.2 to 6.5.1 adding 58 new design tokens (1,014 → 1,072)
  • Update PatternFly CSS version from 6.4.0 to 6.5.2 in pom.xml
  • Upgrade FontAwesome icons from 5.x to 7.2.0, adding 533 new icons (2,888 → 3,421 total)
  • Update showcase dev dependencies (basic-ftp, puppeteer, wait-on, pnpm)
  • Refactor ThemeManager to support multi-class value mapping via Function<E, String>
  • Rebuild ThemeSelector with three toggle groups (Theme, Color scheme, Contrast mode) matching PatternFly website
  • Expand Contrast enum from 3 values (System/On/Off) to 4 values (System/Default/High contrast/Glass)
  • Graduate high contrast mode from beta to full release

Fixed

  • Fix Progress danger status icon using wrong icon (closeCircleerrorFill)
  • Fix Drawer panel missing inert attribute when collapsed for accessibility
  • Fix Form required asterisk orphaning by keeping asterisk inside label text span
  • Fix Vite production build warnings by loading J2CL script dynamically and raising chunk size limit

PatternFly Java 0.8.3

20 May 14:56
271bf6a

Choose a tag to compare

Fixed

  • Fix Tuples.tuples() calls in showcase components to use explicit tuple() pairs

PatternFly Java 0.8.2

20 May 14:21
9bc0092

Choose a tag to compare

Fixed

  • Fix release workflow

PatternFly Java 0.8.1

20 May 14:00
eaf55a3

Choose a tag to compare

Changed

  • Use OIDC to publish NPM packages in release workflow

PatternFly Java 0.8.0

20 May 07:34
b144d7a

Choose a tag to compare

Added

  • Add OuiaSupport interface in core module for custom components to participate in OUIA without extending PatternFly Java base classes; BaseComponent, SubComponent, ComponentDelegate, BaseLayout, and BaseChart now implement this interface
  • Replace direct Ouia static method calls with OuiaSupport default methods in Button, Icon, Skeleton, Drawer, PageSidebar, and ExpandableSection
  • Add Javadoc to all public methods in Ouia

PatternFly Java 0.7.7

19 May 17:22
5865710

Choose a tag to compare

Changed

  • Remove since and forRemoval attributes from @Deprecated annotations on Popper.js-based classes and components for J2CL compatibility (deprecation info remains in Javadoc @deprecated tags)

PatternFly Java 0.7.6

19 May 15:27
08e99d6

Choose a tag to compare

Added

  • Add ouiaSafe(HTMLElement, boolean), ouiaSafe(SVGElement, boolean), and ouiaTransition(HTMLElement) methods to Ouia for dynamic data-ouia-safe state tracking

Changed

  • Change Spinner and Skeleton to always set data-ouia-safe="false" (loading/placeholder components are never safe)
  • Change Button and Icon to toggle data-ouia-safe based on progress state
  • Change Expandable static helpers and self-managed expandable components (Drawer, ExpandableSection, PageSidebar) to set data-ouia-safe="false" during transitions and restore it via transitionend with a 300ms fallback timeout

PatternFly Java 0.7.5

19 May 14:36
bfb9095

Choose a tag to compare

Added

  • Add ouiaId(String) method to BaseComponent, BaseComponentSVG, and ComponentDelegate for setting stable, deterministic OUIA component IDs

Changed

  • Add since and forRemoval attributes to all @Deprecated annotations on Popper.js-based classes and components
  • Improve null safety, reduce code duplication, and address code review findings in core module

Fixed

  • Fix OUIA attribute names to match the spec (data-ouia-component-type and data-ouia-component-id instead of data-ouia-type and data-ouia-id)
  • Fix OUIA component ID no longer set to the shared ComponentType.iddata-ouia-component-id is now only set when explicitly provided via ouiaId(String)
  • Fix format string bug, variable assignment bug, and null guard in core module