Gantt – Change Log

Version 6.1.7

2025-02-21

FEATURES / ENHANCEMENTS

  • New roundedSplit config introduced in EventSegments feature that allows user to split tasks using either the exact clicked date, or the rounded one (10314)

API CHANGES

  • Tree stores got a new keepExpandedOnLoad config in v6.1.4, but it fell out of the changelog. When set to true, the tree will restore matching nodes expansion state after a reload (10017)

DEMOS

  • msprojectimport demo has been updated to use the latest v13.10.0 version of MPXJ library. The demo has also been improved to import task splits info into the Gantt

BUG FIXES

  • 10477HIGH PRIO Duplicate creation of Gantt tasks in real-time when trying to edit the newly created task
  • 10580HIGH PRIO Setting baseline start or end date does not update baseline duration
  • 10593 – Giant Tooltips for timeline indicators when multiple indicators are defined
  • 10640 – Should show emptyText in resourcesTab when a single task does not have any assignments
  • 10659HIGH PRIO Adding subtasks without persisting parentIndex results in wrong ordering in realtime sync
  • 10660 – Inconsistency between Gantt constraint date column, and taskEdit constraint date field
  • 10661HIGH PRIO TaskEditModal generates unexpected change when adding and removing before save
  • 10671HIGH PRIO Copy/paste activity with a child on client1 at the root/project level
  • 10680HIGH PRIO Scheduling information is wrongly displayed in the conflict resolver pop up
  • 10687HIGH PRIO LinkTasks crashes when revisions is enabled
  • 10715StateProvider doesn’t preserve the scrollTop
  • 10744loadMask getting disabled too early
  • 10752 – Calendar field overlapping default value and label in Advanced Tab in TaskEdit
  • 10759HIGH PRIO New task included in both added and modified in sync call
  • 10790 – Progress line feature toggle not working

VERSIONS SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 3.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0
  • Sass: >= 1.78.0
  • Remix: >= 2.15.0

Version 6.1.6

2025-01-31

FEATURES / ENHANCEMENTS

  • You can now configure the Cancel and Save buttons in the bottom toolbar of the AssignmentPicker (9042)
  • Starting with this release, msprojectimport demo represents suspended and then resumed tasks with segments field. Please check "What’s new…" guide for the details

BUG FIXES

  • 883HIGH PRIO ACCESSIBILITY Assigned resources editor keyboard navigation
  • 7940Timespan highlight spans linked to task not cleared when filtering out all tasks
  • 10383scrollTaskIntoView function with includeLabel argument works only on second click
  • 10435 – Gantt view showing range before 1970 has trouble showing tasks with null startDate / endDate
  • 10459HIGH PRIO Column Filter inconsistency when applied from state
  • 10494 – Versioning grid breaks when expand row with Ar locale
  • 10505TYPESCRIPT issues when integrating Revisions
  • 10517 – Column renderer does not get called after field value update using Calculate method on model field
  • 10537HIGH PRIO Error when changing the dataset using state
  • 10555 – Assignment tooltip gets wrong information after task reorder
  • 10556createRecord should be called for new tasks added via task context menu
  • 10571HIGH PRIO Error when syncing custom dependency model with extra fields
  • 10572 – Crash after assignment column tooltip is shown
  • 10577HIGH PRIO Gantt crash when rowHeight is an odd number and rowHeight/2 is less than barMargin
  • 10588 – Errors when pasting tasks from one project to another
  • 10609 – Problem with edays lag on predecessor column
  • 10614 – Color field in TaskEdit editor is not overriding the default colors for event color picker
  • 10626 – "Must finish On" constraint is violated
  • 10638 – Performance issue when reapplySortersOnUpdate enabled
  • 10650 – Error on setting baseline for unscheduled task

VERSIONS SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 3.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0
  • Sass: >= 1.38.0

Version 6.1.5

2024-12-25

BUG FIXES

  • 9993HIGH PRIO SALESFORCE Scheduler Pro / Gantt task editor loses focus and cancels on click
  • 10240HIGH PRIO Gantt cells don’t mark dirty after cell editing
  • 10317 – When copying/pasting rows, subtasks did not have assigned resources
  • 10410 – Project start line is rendered on wrong place with fillTicks: true
  • 10425 – Toggling ResourceUtilization visibility doesn’t keep the date sync with gantt
  • 10438HIGH PRIO Bryntum ResourceUtilization column renderer executes infinitely
  • 10444 – Assignment model has units field as null when using event resourceId field
  • 10482 – Project clears child records added collection when applying a record sync response
  • 10488HIGH PRIO gantt-taskboard demo code is not available in online Code Editor
  • 10510 – Configuring a store and items leaves a combo store misconfigured

VERSIONS SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 3.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0
  • Sass: >= 1.38.0

Version 6.1.4

2024-12-09

FEATURES / ENHANCEMENTS

  • Added a new config closeOnEscape to control whether pressing the ESC key will close the popup
  • Starting with the 6.1.4 release, there are now trial versions of thin NPM packages available on our NPM server. These can be used to evaluate combining multiple products before purchasing a license. Please check the "What’s new" guide for the details

API CHANGES

  • Classes extending Base got a new is{{ClassName}} boolean property indicating instances of the corresponding class or subclasses of thereof. Please check "What’s new…" guide for details
  • ProjectModel and EventSegmentModel got some new public properties. Please check "What’s new…" guide for details

DEMOS

  • ANGULAR Added new Angular basic-thin demo showing use of thin NPM packages. Demo is located in examples/frameworks/angular/basic-thin folder
  • REACT Added new React basic-thin demo showing use of thin NPM packages. Demo is located in examples/frameworks/react-vite/basic-thin folder
  • VUE-3 Added new Vue-3 basic-thin demo showing use of thin NPM packages. Demo is located in examples/frameworks/vue-3-vite/basic-thin folder
  • WEBPACK Added new Webpack basic-thin demo showing use of thin NPM packages. Demo is located in examples/frameworks/webpack/basic-thin folder

BUG FIXES

  • 8876 – Gantt state was not persisting columns added using addNew column
  • 10283HIGH PRIO Progress line is not fully printed
  • 10291HIGH PRIO When adding a predecessor, siblings disappeared in the column editor
  • 10328 – Versioning Grid not rendering correct intervals
  • 10333 – Task editor still closing when closable config set to false
  • 10356 – Cannot read properties of null (reading ‘beforeFloatReparent')
  • 10374 – Pin successors feature does not work with task resize
  • 10376ConstraintTypePicker does not show full list if used without contextual TaskRecord
  • 10380 – Discrepancy between using default stm config object and using the StateTrackingManager class
  • 10400EventSegments feature need to add few properties as public
  • 10445 – Dependency creation tooltip content should not wrap to multiple lines
  • 10448REACT JSX renderers are not supported with React 19

VERSIONS SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 3.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0
  • Sass: >= 1.38.0

Version 6.1.3

2024-11-18

FEATURES / ENHANCEMENTS

  • Salesforce LWC build now using generators instead of async/await as a workaround for Firefox bug. LWC bundle is now compiled with "chrome": "54" babel target (7849)

API CHANGES

  • VUE 2 reached end of life on December 31, 2023. As a result, we will no longer be updating our Vue 2 components. While the components will continue to exist, we will remove them in a future release and recommend that you upgrade to Vue 3 for continued support
  • Added config parentOffsetY to specify vertical offset for ProgressLine summary connection

STYLING CHANGES

  • Certain color adjustment functions in SASS has been deprecated and will be removed from SASS in a future version. To be prepared for that, we have replaced our usages of these functions with the new ones. In general, this should not affect the look of components, with reservation for minor color variations (for more information, see https://sass-lang.com/documentation/breaking-changes/color-functions)

BUG FIXES

  • 8960HIGH PRIO Calling CrudManager sync method causes hasChanges listener to fire
  • 9018HIGH PRIO Localization doesn’t work for Microsoft Dynamics CRM Online
  • 9498 – An error after filter out all records with specific selectionMode settings
  • 9798HIGH PRIO Non-working intervals are calculated incorrectly in certain time zone
  • 10103HIGH PRIO Progress line display was broken on RTL viewports
  • 10118HIGH PRIO Wrong Effort values on the Resources tab
  • 10173 – Click handler not working correctly on example
  • 10187 – Crash on creating an event in Gantt + SchedulerPro demo with filter applied in Gantt
  • 10229 – Error appears when clicked on dateRange picker in header menu
  • 10245allowCrossGridDrag.transferData does not work for TreeData
  • 10249sync is not triggered when tab out from cell when column is configured with instantUpdate set to
  • 10346 – Very slow drag drop interaction with 50k tasks in the bigdataset demo

VERSIONS SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 3.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0
  • Sass: >= 1.38.0

Version 6.1.2

2024-10-11

DEMOS

  • VUE-3-VITE New basic demo (Vue 3 vite) shows how to use Bryntum Gantt in Vue 3 project with TypeScript. The demo is located in examples/frameworks/vue-3-vite/basic folder (9808)

BUG FIXES

  • 8263CRUD manager loses changes when applying sync response
  • 10004HIGH PRIO Task duration "M" is incorrectly converted to minutes
  • 10067 – WBS index is out of sync
  • 10080 – Hidden columns should be included in excel export if exportable set to true

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.1.1

2024-09-27

FEATURES / ENHANCEMENTS

  • We have published the first parts of the Bryntum Design System over at https://www.figma.com/@bryntum. It currently covers Gantt, but will evolve to cover all our products

API CHANGES

  • Previously, the presence of an onCellClick method on a column would prevent cell editing when the cellEdit feature was configured with triggerEvent: 'cellclick'. Now, to prevent cell editing at the column level, configure the column with editor: false instead.

BUG FIXES

  • 9981 – Editor does not open on single click for assigned resources column with triggerEvent : 'cellclick'
  • 10079 – No available dependency to select when importing .mpp file
  • 10085HIGH PRIO Not possible to navigate cells using ‘LEFT’/<span class="badge right">RIGHT keys
  • 10090 – Bug MSP Export: task calendars not exported correctly
  • 10097 – Elapsed duration units throw exception on converting

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.1.0

2024-09-18

FEATURES / ENHANCEMENTS

  • Task model has got elapsed duration units support. Please check "What’s new …" guide for more details (8350)
  • With some configurations, zooming in and out of the Gantt could lead to a very long time axis, which degraded performance. To prevent this, it now limits how many ticks (the bottommost unit) its time axis can contain to 10,000 (which will give a very long scroll range even with small tick sizes)
  • You can now drag multiple selected task bars at once in the schedule area. Enable this with the new dragAllSelectedTasks property available on the TaskDrag feature. This property will be default true from v7.0 (7408)
  • Added a new config option, showUnscheduledTasks, to display unscheduled tasks in the Gantt Chart. It defaults to true, which show tasks that have either startDate or both duration and endDate set to null in the Gantt chart as icons (7536, 8417)
  • It is now possible to postpone resolution of certain scheduling conflicts – either via conflict popup dialog or automatically. Task with postponed conflict will be marked with a flag. Please refer to the documentation of allowPostponedConflicts and autoPostponedConflicts options (9393)
  • The regular non-Ajax Store now has the ability to accept remote paging, sorting and filtering
  • ExcelExport feature got a minor refactoring, and now uses more feature-rich write-excel-file library (6089)

DEMOS

  • New postponed-conflicts demo, showing how to postpone resolution of conflicts between dependencies and task’s own hard constraint. This demo also shows how to apply custom processing logic for task’s constraints

BUG FIXES

  • 9854 – Gantt crash if multi-dragging an unscheduled task
  • 9953 – Crash if trying to multi resize including unscheduled task
  • 9961 – Multi-drag of constrained task not restored after drop
  • 9968 – Gantt crashes when dragging multiple selected tasks
  • 9982 – Gantt throws error when rendered with infiniteScroll: true and splitter offscreen
  • 9995 – Incorrect manual task duration when effort is fixed
  • 10052 – Gantt TreeGroup throws exception when grouping by assignment column
  • 10053 – Gantt TreeGroup doesn’t rollup effort values

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.6

2024-09-13

API CHANGES

  • The default value of ProjectModel trackProjectModelChanges will be true from v7.0.

DEMOS

  • msprojectimport demo has been updated to use MPXJ v13.3.0
  • REACT-VITE Migrated "Basic setup" demo to React Vite. New demo is located in frameworks/react-vite folder (9932)

BUG FIXES

  • 3661HIGH PRIO Gantt – parent tasks disappear at extreme zoom level(s)
  • 9449HIGH PRIO Error when between filter is used in Duration column
  • 9789 – Drag and fill creates unexpected/invalid values when dragging horizontally
  • 9848 – Changing ProjectModel‘s calendar does not trigger sync
  • 9866HIGH PRIO Empty line shown after adding pressing Enter while editing with addToCurrentParent set to true
  • 9888 – Error when clicking zoomToFit with infiniteScroll enabled and Gantt chart collapsed
  • 9895 – Errors when opening gantt with infinite scroll and collapsed graph
  • 9952 – Buttons with Menus converted to checkable MenuItems in overflow Menu
  • 9977 – MSProject import demo displays incorrect data
  • 9979 – Calendar editor New exception is not localized
  • 9984TaskModel.isEditable should take the record readOnly into account
  • 10013 – Cannot read properties of undefined (reading ‘getTime’)

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.5

2024-08-30

DEMOS

  • Added relative-timeaxis demo to show how to render a relative timeaxis with integers instead of dates (9589)
  • REACT-VITE React JavaScript "Advanced" demo has been updated to use React + Vite + TypeScript. New demo is located in frameworks/react-vite/advanced folder. Old demo has been removed (9827)

BUG FIXES

  • 3660 – Event durationMS is not synced with duration value
  • 5233ANGULAR Frameworks wrappers components not triggering some events
  • 5619HIGH PRIO REACT PDF Export Missing Cells
  • 7387HIGH PRIO ResourceUtilization should not expand a collapsed resource when assigning it
  • 8798HIGH PRIO Setting duration as field goes to infinity on edit
  • 9021 – Setting new fields using setConfig method on existing project instance resulting in crash
  • 9256HIGH PRIO Gantt tasks rendering bug after applying print feature
  • 9698TaskNonWorkingTime elements not updated on rowHeight change
  • 9718VUE-3 Preventable events don’t work in Vue wrapper
  • 9719TimeSelection feature isn’t working for Gantt
  • 9728HIGH PRIO STM cannot undo a transaction, which moves event and reassigns it
  • 9741 – Exception thrown when loading data into individual stores with loadDataAsync
  • 9753 – Duration column editor is not respecting decimalPrecision
  • 9757focusOnHover not working for submenu
  • 9806ResourceHistogram w/ NonWorkingTime feature changes project default calendar intervals
  • 9819 – Font awesome tree arrows too big on touch screen
  • 9835HIGH PRIO Code editor shows error on editing demo code
  • 9867 – Overflow twins of Buttons have a checkbox
  • 9878 – Percent done rendering with too many decimals
  • 9879 – Delay after editing in percentDone cell and hitting Enter

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.4

2024-08-02

FEATURES / ENHANCEMENTS

  • Internal code improvements and bugfixes

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.3

2024-07-26

FEATURES / ENHANCEMENTS

  • The plugin processing has been updated to correctly handle multiple plugin configurations

BUG FIXES

  • 9637 – Gantt issues in RTL
  • 9668 – Dependency tooltip not customizable

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.2

2024-07-24

FEATURES / ENHANCEMENTS

  • TimelineHistogram, ResourceHistogram and ResourceUtilization views got two new hooks providing more control over the rendered charts DOM elements. Please check "What’s new" guide for more details (9037)
  • Updated multiple-gantt-charts demo to enable dragging of task rows between Gantt instances
  • Bumped the built-in version of FontAwesome Free to v6.6.0, which includes a new table-cells-row-unlock icon sponsored by Bryntum

API CHANGES

  • The Gantt introduces a new config affecting started tasks scheduling. Such tasks can now be treated as manually scheduled to preserve their dates. The rationale behind this is starting a task implies its start date gets established and thus should not be calculated dynamically. Please see the release "What’s new" guide for details (3211, 6769)
  • DEPRECATED TimelineHistogram, ResourceHistogram and ResourceUtilization classes getRectClass config in favor of new getBarClass config to make naming more consistent

DEMOS

  • REACT-REMIX "Basic" (React + Remix) demo shows using Gantt component in Remix. The demo is located in frameworks/react-remix/basic folder (4912)
  • SHAREPOINT Updated the SharePoint Framework (SPFx) in the frameworks/react/typescript/sharepoint-fabric to be compatible with recent versions of SharePoint (9224)

BUG FIXES

  • 9423 – Bryntum gantt baseline bar is smaller than actual task bar when start and end date is same
  • 9481 – Filter lost when no results present with remote filtering
  • 9528 – Successors removed after using FillHandle
  • 9529 – Move cursor shown instead of row resize cursor
  • 9534 – Crash when using UndoRedo in narrow window
  • 9536 – Input field misplaced on pinch zoom while editing in custom TaskBar
  • 9537ANGULAR Providing a type attribute for widget throws an exception
  • 9559 – STM do not reset first step after load and call resetQueue
  • 9564 – Crash when copying and pasting into SequenceColumn cell
  • 9630HIGH PRIO Task edit error relating to calendarfield after updating to v6.0

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.1

2024-07-05

BUG FIXES

  • 8996resetQueue does not clear STM queue when called after project model revertChanges method
  • 9077 – Filter combo not showing correct text when set to false when filtering ManuallyScheduled column
  • 9354HIGH PRIO Project start date not calculated under certain conditions
  • 9447revertChanges resets startDate even if it persisted on load
  • 9461showCurrentTimeline isn’t working when setting name in Timeline widget
  • 9472 – Rollup tooltip misrendered in portfolio-planning demo
  • 9474 – Use real user names + avatars in realtime demo

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 6.0.0

2024-06-28

We are thrilled to announce version 6.0 of our Gantt product. This release marks a significant milestone for us after more than two years of dedicated development. In this update, we are excited to bring you:

  • Live updates via websocket
  • A calendar editor
  • New column types
  • Improved TypeScript typings
  • A new code editor in the examples for easy fiddling
  • Cool new demos
  • Bug fixes and other enhancements requested by our community

A special thanks to everyone who helped us by testing our alpha and beta versions. Your feedback and support have been invaluable

FEATURES / ENHANCEMENTS

  • This release introduces the calendar editor – a special widget visualizing and allowing to edit a calendar’s data. The editor can be opened using a new trigger added to the calendar combo, used in the task editor, and the resource calendar column. Please check the "Upgrade guide", "What’s new" and "Calendar editor guide" (356)
  • New data column PlannedPercentDoneColumn is available for Gantt (790)
  • Custom styling for milestones in the Timeline widget was removed, it did not work for overlapping milestones. The component now uses milestoneLayoutMode: 'measure' by default instead (5351)
  • We implemented new feature called revisions which is meant to bring live updates to the Gantt chart. It requires a server-side implementation, which should conform to the protocol described in the documentation. This feature is demonstrated in the new realtime-updates demo (6226)
  • PDF export server has been moved from examples/_shared/server folder to its own GitHub repository: https://github.com/bryntum/pdf-export-server (6820)
  • The TaskCopyPaste feature has been enhanced. It now creates clones of the copied records immediately on a copy action. This makes the copied data unaffected by any Store changes between the time of copying and the time of pasting. It also makes it possible to modify the copied data in the beforePaste event. Additionally, when copy-pasting between different Gantt instances, the complete record will be copied, not just the fields that has a corresponding column, as it was previous (7814, 3682)
  • The code editor in examples is now implemented with the VS Code engine. Code folding, search and replace, full undo/redo is now available when editing examples
  • TypeScript Class configs Config (e.g. ButtonConfig) now provide type declarations for listeners parameter in .d.ts files
  • TypeScript Class configs Config (e.g. ButtonConfig) types now have optional parameters in .d.ts files. *Config type can be used instead of Partial<*Config> declaration
  • New data field statusDate on the ProjectModel. This date is used as a reference point for various reports and data calculations
  • Bumped the built-in version of FontAwesome Free to v6.5.2, which includes a new table-cells-row-lock icon sponsored by Bryntum
  • The Filter feature now supports columns with a filterable config in the new multi-filter UI
  • Task bars and time ranges now use the direction neutral inset-block-start and inset-inline-start styles for positioning, rather than top and left. This puts them in the same place in LTR and RTL directions without additional processing
  • Angular Bryntum Angular wrapper now exports Bryntum...Props types (e.g. BryntumGanttProps) which match the config required for a wrapper components (e.g. BryntumGanttComponent). Wrappers code is now delivered with documentation inside, that helps in setting up the components
  • EventHelper no longer mutates the DOM event object to fix browser quirks and add utility properties. It now wraps the DOM event with a Proxy, which exposes all the properties of the DOM event and also accepts any new properties added to it. The original DOM event is available in the browserEvent property.
  • ProjectModel now supports a new autoSetConstraints mode, which is useful if you are loading a dataset without using constraints, dependencies or manuallyScheduled tasks. Setting the autoSetConstraints flag to true will help show your data based on the startDate / endDate task fields. When set to false, the Project will schedule unpinned tasks as-soon-as-possible (i.e., the project start date).

API CHANGES

  • VUE-3 Bryntum Vue-3 wrapper now exports Bryntum...Props types (e.g. BryntumGanttProps) which match the configs available for a wrapper component (e.g. <bryntum-gantt>). Wrappers code is now delivered with documentation and TypeScript sources inside (3085)
  • BREAKING EventModeColumn has been removed (4115)
  • DEPRECATED The WidgetHelper utility class has been deprecated and will be removed in a future release. Use the corresponding widget class instead – Widget, Toast or Mask (6103)
  • In previous versions, a call to project.commitAsync() caused a UI refresh even if nothing was changed by the commit. This has been fixed so that the UI is only refreshed if the commit actually changed something. This is a slight behavioral change (for the better), which we think should have minimal impact on apps (7924)
  • BREAKING The useRawData setting on Store is now enabled by default, but with all sub-settings disabled. This means that the incoming data object will be used as is, without being cloned. Which will boost data loading performance, but is potentially a breaking change if the data object is reused / used in other parts of the application (8335)
  • BREAKING Gantt ProjectModel#toJSON format has been changed. Now it returns tasksData instead of eventsData (8449)
  • BREAKING In 6.0.0-alpha-2 we changed the default value for useRawData on stores to true. This boosted record creation performance by not cloning the incoming data object. However, this change has lead to some issues, and we are now taking a step back. It will once again default to false when supplying data inline, and instead only to true when data is loaded remotely using an AjaxStore or a CrudManager (9289)
  • Rollup task elements are now inheriting eventColor from their origin task
  • The EventCopyPaste feature’s copy event has gotten its parameters slightly changed. The parameter records now contains clones of the copied records, and the original copied records can be found in the parameter originalRecords (these parameters are wrapped in a single event object)
  • With the recent introduction of individual layers for positioned elements, z-indexes have now been normalized. If you have overridden z-index of the layers, please adjust your CSS to ensure it looks as you expect
  • The nonworking-time layer has been moved up in the z-index stack to float above the time axis tick lines
  • DEPRECATED @bryntum/babel-preset-react-app, @bryntum/cra-template-typescript-grid, @bryntum/cra-template-javascript-grid npm packages are deprecated, and will not get any further updates. Versions prior to 6.0.0 are still accessible
  • BREAKING ANGULAR REACT VUE BryntumProjectModel framework wrapper is no longer available since 6.0.0. Use BryntumGanttProjectModel instead. Check the upgrade guide for the details
  • BREAKING In addition to the APIs mentioned in Scheduler’s & Grid’s changelogs, the following previously deprecated APIs were removed:
    • The Wbs class was moved to Core
    • Dependencies.drawForTask() (5.1.0)
  • BREAKING GridSelection rowNumber now uses Gantt´s SequenceColumn (previously RowNumberColumn)
  • If statusDate is not provided for the ProjectLines feature, it is now taken from the project model
  • RowReorder now has dropOnLeaf set to true by default to allow for adding dragged task as a subtask of a target leaf task
  • The ScheduledByDependenciesEarlyEventMixin mixin in the scheduling engine has been renamed to ConstrainedByDependenciesEventMixin
  • As part of improving the task-level ASAP/ALAP implementation, scheduling engine has undergone certain refactoring, which generally should not affect public API. If you were using some private APIs, which have been changed, please let us know
  • TaskMenu option for splitting tasks was simplified to just say Split instead of Split task
  • Relayed events name for onFunctions is capitalized when used with prefix i.e. onGridRowbeforeDragStart is now onGridRowBeforeDragStart

STYLING CHANGES

  • The Stockholm theme got some slight tweaks to panel header (removed bottom border) and tab panel styling (replaced active tab background with thick bottom border) for a more modern look (8440)
  • STYLING SequenceColumn now aligns its contents to end

LOCALE UPDATES

  • Localization for the new column PlannedPercentDone was added with a single key plannedPercentDone
  • New key statusDate in the localization for ProjectLines class

DEMOS

  • New multiple-gantt-charts demo showing how to synchronize scrolling across multiple Gantt charts (188).
  • New realtime-updates demo has been added to show use of Websockets with Gantt. Demo is located in examples/realtime-updates folder (2012)
  • New portfolio-planning demo showing how to visualize and plan multiple projects in one Gantt chart (8755)
  • The php demo has been updated to support calendars
  • New dependencies demo showing how to customize the Dependencies feature
  • New export-to-ics demo showing how to export tasks to iCal format
  • New Planned percent done demo, showing the calculation of "planned percent done" value. The demo is located in examples/planned-percent-done folder
  • New auto-constraints demo showing how to auto-pin tasks that do not use constraints, dependencies or the manuallyScheduled flag

BUG FIXES

  • 3833HIGH PRIO Dependencies list performance issue when a project has many tasks
  • 4902EmptyCalendarEffect description is not clear enough
  • 4933 – Toggleable button loses state when moved to toolbar overflow menu
  • 7223 – Add a way to apply multiple project changes in bulk
  • 7685 – Percent done filter uses raw fractional value
  • 7760HIGH PRIO TypeScript Type intersection with any might be wrong
  • 7772 – Copy/paste feature should freeze copied data
  • 7784 – Structured tree is not synchronized correctly between projects
  • 7858 – Constraint removed from a task record on copy-paste
  • 7955 – Undo of delete dependency in task edit broken
  • 7993 – Duration from applied remote change gets reverted
  • 8008addTask method should behave similar to transactional features
  • 8171FieldFilterPickerGroup config limitToProperty should also apply to configured filters
  • 8309 – Duration column decimal separator is not localized
  • 8459HIGH PRIO Carousel should support swipe gesture scrolling for mobile/touch
  • 8577 – Add calendar popup should be centered
  • 8611 – Crash when advanced demo opens code editor
  • 8698 – Panel header changes size when collapsing / expanding panel in Stockholm theme
  • 8741PercentDoneColumn should extend PercentColumn
  • 8745HIGH PRIO Dependency wrongly moved task with no reason
  • 8864HIGH PRIO Error: Effect resolved to promise in the synchronous context, check that you marked the asynchronous calculations accordingly
  • 9108 – No option to enter value for a filter in Infinite Scroll Demo
  • 9180onFunctions not working for relayed events
  • 9432 – Rollup tasks with duration > 0 are not rendered

FRAMEWORK SUPPORT

  • NodeJS: >= 20.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.13

2024-06-26

FEATURES / ENHANCEMENTS

  • Rollups feature now offers to rollup children to all parents and grandparents (9250)

API CHANGES

  • Filter feature column header tooltips now display localized text for active filter operators, e.g. equals instead of = (9338)

BUG FIXES

  • 8772 – Scroll button’s action doesn’t take task labels into account
  • 9242ResourceUtilization throws exception when aggregating data
  • 9392 – Inherited parent dependencies are not collected into critical paths
  • 9424 – Gantt crashes after collapse all with event selected

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.12

2024-06-13

API CHANGES

  • VUE REACT When using wrappers for Vue or React, syncDataOnLoad is by default set to true on all stores configured on the wrapped Widget. Staring from 5.6.12, stores with a configured readUrl or that belongs to a project configured with a loadUrl, will have their syncDataOnLoad default to null

BUG FIXES

  • 9060Weight of taskEdit fields can not be customized in beforeTaskEditShow
  • 9094 – STM does not record changes when timeZone is set
  • 9096HIGH PRIO Resources not shown in resource assignment column after loading data from backend
  • 9136 – Make Indicators z-index higher than task bars
  • 9196HIGH PRIO Fields being wrongly rendered when scrolling
  • 9202 – Dependency arrows change their style after loadInlineData if critical paths are enabled
  • 9227 – Evaluate editor height on every show
  • 9262 – Copying a task does not copy the assignment units correctly
  • 9263 – Unable to use "is one of" operator in Grid filter feature when using AjaxStore and filterParam
  • 9280 – Bug when clearing out Constraint Type in Pop Up Task Editor when date spans are out of view
  • 9359 – Late end date position is incorrect

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.11

2024-05-21

FEATURES / ENHANCEMENTS

  • A new static boolean property, Widget.accessibility was added, which, when set to true causes tooltips to be activated on focus in addition to mouseover (5539)
  • Copying a Task with assigned resources, and then pasting it into the same Gantt instance, will now also copy the assignment records (3655)
  • Vanilla JavaScript documentation has a new section on Multiple Products, showing how to use multiple components in a single page using thin components (8756)
  • DOCS Added docs to ConstraintTypePicker class showing how to restrict the available constraint types when editing in a cell editor or the task editor (8100)
  • Project has a new config called includeChildrenInRemoveRequest, that controls if a remove request includes the id of a removed parent and all its children, or just the id of the removed parent (8099)

API CHANGES

  • A default value for a new task’s name provided in the newTaskDefaults config was applied inconsistently depending on if the task was added using cell editing or context menus. This has now been normalized to behave as documented for the config, that is to not include the name (the name is determined by the current locale)
  • After a docs regression, several APIs flagged to be hidden in subclasses were still visible in the docs. These APIs are now correctly hidden (9140)

DEMOS

  • Updated CSS for the timeline demo to better handle milestones with background color (9059)

BUG FIXES

  • 7450 – Calendar column doesn’t load data when setting project after gantt initialization
  • 8643HIGH PRIO Returning "" or null from JSX column renderer uses the previous cell renderer values in virtualization
  • 8833HIGH PRIO TaskNonWorkingTime doesn’t respect fillTicks
  • 8883HIGH PRIO Crash when drag scheduling unscheduled task with infiniteScroll
  • 8951 – Dependency record’s fields are missing on project.load()
  • 8978HIGH PRIO Gantt ASPNET frontend example not building
  • 9009 – Task cut/copy resulting in crash on opening cell menu
  • 9013HIGH PRIO TaskResize triggered without longpress on touch screens
  • 9019 – Milestones not considered in parent % Done rollup
  • 9048 – Gantt MSP Export duplicates Resource calendars on each export
  • 9051 – Resizing or moving task selects the row
  • 9057DOCS FieldFilterPicker docs inline example doesn’t apply filter at initial startup
  • 9062CellEdit does not expect newTaskDefaults to be a fn in Gantt
  • 9063 – Children tasks are not removed from timeline widget when deleting the parent task
  • 9081HIGH PRIO Data disappears from the ResourceAssignmentEditor
  • 9145 – Column autoHeight doesn’t work with Gantt
  • 9153 – Task effort is not updated
  • 9161decimalPrecision config of DurationColumn has no effect
  • 9165 – Pan feature not working correctly when taskNonWorkingTime is enabled
  • 9176TaskCopyPaste options are disabled in Gantt if the store is chained
  • 9181WBS value is calculated incorrectly when applying changeset with removed record

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.10

2024-04-24

BUG FIXES

  • 7685 – Percent done filter uses raw fractional value
  • 7860 – Allow specifying custom default operator by data type for Grid filter feature
  • 8725HIGH PRIO TreeGroup ID collision when multiple groups are applied and column with array data is at the top
  • 8958HIGH PRIO Two commits initially, leads to two refreshes
  • 8965HIGH PRIO Toolbar overflow synced excessively
  • 8973HIGH PRIO DependencyModel handling of immutable data
  • 8985HIGH PRIO Smarter EventStore sync behavior for start / end dates
  • 8988 – Not possible to reach submenu of timeAxisHeaderMenu unless moving over the anchor icon
  • 8992ANGULAR implement support of ViewEncapsulation.ShadowDom
  • 9001HIGH PRIO Error when slowly scrolling the Gantt

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.9

2024-04-09

FEATURES / ENHANCEMENTS

  • Now it is possible to specify the maximum units capacity of the resource, using maxUnits field. Default value is 100%, but if resource represents a team of several people maxUnits can be increased accordingly. This field is taken into account in the resource histogram and resource utilization widgets (833)
  • The rules of calendar intervals prioritization in case of their intersection have been properly documented. Now the index of the interval in the dataset is also taken into account. Please refer to the updated Calendars guide and priority field documentation for the details (8754)
  • New resourceAssignmentClick event triggered by the Gantt instance when clicking a resource avatar in cells of the ResourceAssignmentColumn (8882)
  • ProjectModel.toJSON() now includes data from all registered crudStores (8803)
  • ProjectModel has a new toJSONResultFormat config that controls the output format of the ProjectModel.toJSON method. Please check the config docs for more details. (8814)

API CHANGES

  • A change in Gantt v5.3.0 fell out of the upgrade guide, repeating it here: CalendarModel class intervals field definition has been changed to behave as a store when performing CRUD operations. Please check "Upgrade guide" for the details

LOCALE UPDATES

  • Added Brazilian Portuguese translation ('PtBr') (8747)

DEMOS

  • VUE-3-VITE "Undo/Redo" (Vue 3 JavaScript) demo is now converted to Vue 3 Vite TypeScript. New demo is located in frameworks/vue-3-vite/undoredo folder (8090)
  • REACT-VITE "Undo/Redo" (React JavaScript) demo is now converted to React Vite TypeScript. New demo is located in frameworks/react-vite/undoredo folder (8091)
  • Custom theme demo (JavaScript) shows how to create a custom theme by modifying scss variables. New demo is located in custom-theme folder (8726)

BUG FIXES

  • 7267 – Request for improved API for custom cell editors
  • 7805ANGULAR Collapse/expand button doesn’t work in Gantt Undo/Redo demo
  • 8346HIGH PRIO Crash while removing cyclic dependency while indenting tasks
  • 8471HIGH PRIO Filter is not shown and not working in hidden parent element
  • 8514HIGH PRIO Conflict resolution popup: Odd behavior on Cancel
  • 8644TYPESCRIPT Typings for onBeforeTaskResizeFinalize are wrong
  • 8687 – Resizing region does not always fill last column width
  • 8690HIGH PRIO CSV exported data shows special character  for indentation in Windows OS
  • 8710 – Adding resources from resources tab crashes
  • 8712 – Gantt collapsing last group of tasks doesn’t recalculate scroll range
  • 8719DOCS Document getVersionContent method of Versions feature
  • 8731HIGH PRIO Not able to resize task when it is very small
  • 8736 – Not possible to provide renderer to PercentDoneColumn
  • 8778 – Entering duplicate predecessors should not be allowed
  • 8779 – Allow for configuration of Combo box used by AddNewColumn
  • 8802HIGH PRIO Remove Mask from Gantt big dataset demo after dependency lines have been generated
  • 8844 – Renderer problem when fillHandle used during editing
  • 8853 – Memory not freed after destroying gantt instance in the "bigdataset" example
  • 8869HIGH PRIO Not possible to reach submenu unless moving over the anchor icon
  • 8905 – Styling issues with Gantt Critical Path
  • 8930 – Input value first char gets deleted in combo

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.8

2024-03-04

FEATURES / ENHANCEMENTS

  • An exception with a meaningful message will now be thrown if parsing of the calendar interval’s recurrent date string has failed (8705)

BUG FIXES

  • 8164 – Gantt – assigning null to custom property on task record is no longer possible
  • 8670 – Task PercentDone tooltip disappears while dragging the percentage with mouse is not over the task
  • 8676HIGH PRIO Conflict resolution popup: Does not clear the previous message and stack them up
  • 8697 – Vertical misalignment of filter field check box
  • 8713 – Collapsing a selected cell with FillHandle feature active leads to crash

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.7

2024-02-22

FEATURES / ENHANCEMENTS

  • If Gantt is not provided with the viewport start date on creation, it now tries to use the project’s start date, or calculates the earliest start date among all events
  • Gantt now offers to not automatically merge two task segments when placed next to each other, via the new ProjectModel autoMergeAdjacentSegments config (8018)
  • The effort field on the AssignmentModel is now documented and public (8427)
  • MspExport feature got a new replaceResourceNameCommas config. Set it to true to replace commas in resource names with semicolons. The reason is resource names with commas shows a warning in MS Project

API CHANGES

  • The StateTrackingManager (STM) will by default (if autoRecord is true) merge update actions on the same record (in same transaction), keeping the oldest, and the newest values. A transaction will almost always only contain one update action per record. If the previous behaviour is desired, you can configure the StateTrackingManager with autoRecordMergeUpdateActions set to false. If you’re not using autoRecord, then the transaction action can be merged by calling the StateTrackingManager‘s new mergeTransactionUpdateActions function before the end of the transaction

BUG FIXES

  • 6599HIGH PRIO Indenting manually scheduled task issue
  • 7859HIGH PRIO Engine exception when reapply data on filtered dataset
  • 7968HIGH PRIO Non-critical task is highlighted as critical if "Project Border" field is "Ignore"
  • 8289HIGH PRIO REACT Gantt crashes in RTL container
  • 8302HIGH PRIO PercentBar change on drag should only update value in STM once the drag is complete
  • 8307HIGH PRIO TaskDrag and TaskResize should only update value in STM once the drag/resize is complete
  • 8404 – Improve WidgetColumn API docs
  • 8408 – Allow setting empty name for a new task when created using addTaskAbove/addTaskBelow
  • 8423HIGH PRIO LWC Engine performance is too low with LWS enabled
  • 8466HIGH PRIO TreeGroup crash when grouping on startDate with one task having startDate: null
  • 8481HIGH PRIO Auto scheduled child not following manually scheduled parent constraints
  • 8491HIGH PRIO Make AddNewColumn more configurable
  • 8492 – Crash when cutting resource assignment cell
  • 8496 – Exception thrown during task editing
  • 8502 – Cell selection broken after reordering columns with selection present
  • 8504HIGH PRIO Cell selection broken when column position/width changes
  • 8515MS Project exporter: replace commas in resource names
  • 8526 – Nonworking time only shading half the lowest header row
  • 8539 – Crash when toggling full screen
  • 8549 – Incorrect color of taskBar when percent done is set to null

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.6

2024-01-31

FEATURES / ENHANCEMENTS

  • Bumped built-in FontAwesome Free to version 6.5.1
  • All frameworks demo applications have been verified and updated to be compatible with Node.js 20
  • When editing very long tasks where the task bar extends outside the visible viewport, only the nearest 100 pixels of the bar are scrolled into the viewport rather than attempting to scroll the whole width into view. The minimum width to scroll in may be configured in the taskEdit feature using the minEditSize config property (8315)

API CHANGES

  • To boost record creation performance, records now cache their id (it is accessed very frequently, helps performance a bit) and join their store(s) in a more efficient way. As a side effect, a record no longer has a stores array prior to joining a store, previously it was there as an empty array from start. We don’t think this will affect any code, but wanted to share the change in case it does
  • DEPRECATED ANGULAR REACT VUE BryntumProjectModel framework wrapper will be removed starting from 6.0.0 version. Use BryntumGanttProjectModel instead. Check the upgrade guide for the details

BUG FIXES

  • 6978 – Should be possible to show chart with no columns by setting columns to an empty array
  • 7530 – Wbs is undefined on grouped row
  • 7856 – Undoing removal of children changes children orders
  • 7869HIGH PRIO Cell edit feature behaves incorrectly when double-clicking to edit next cell
  • 7904 – Duplicate WBS created on cut/paste
  • 7961HIGH PRIO Assignment Model dataSource with nested fields breaks ResourceAssignment column
  • 7994HIGH PRIO Changes to start/end of the dependent tasks are ignored, which does not allow it to pass the filter
  • 8200 – Webpack build failed with .min.css file
  • 8236HIGH PRIO Editing the baseline startDate of newly added task results in a crash
  • 8239ContextMenus aligned below click point instead of to the side
  • 8249 – Group menu position issue
  • 8257 – WBS is wrong after cut/paste when orderedParentIndex is persisted
  • 8260HIGH PRIO TaskEditor closes unexpectedly while deleting resources
  • 8279 – Cancelling dependency creation hangs transactional feature
  • 8281 – Updated task not appearing when it now matches filter after adding dependency
  • 8293HIGH PRIO Dependency editor is invisible when infiniteScroll is true
  • 8298HIGH PRIO Filter feature is not working for nested columns
  • 8311validateOnInput config not being respected when using DateField
  • 8322 – Dependency Store beforeAdd Event giving error if it returns false
  • 8388 – Manual scheduled and rollup columns affect each other

FRAMEWORK SUPPORT

  • NodeJS: >= 14.0.0
  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.5

2024-01-09

BUG FIXES

  • 6605taskIconCls doesn’t work as expected for a milestone
  • 7403 – Make a guide on how to make a theme selector in frameworks
  • 7605 – Cycle when setting ASAP/ALAP on individual tasks level
  • 7964REACT JSX doesn’t work in Popups
  • 7974 – Task copy/paste triggers wrong transition
  • 8079 – Task Segment name change doesn’t call project sync api
  • 8089 – Cannot indent a task without startDate/endDate under certain circumstances
  • 8136 – Print error when gantt chart is collapsed
  • 8151 – Crash when right clicking base line group column
  • 8161autoEdit isn’t working for ‘% Done’ column

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.4

2023-12-21

FEATURES / ENHANCEMENTS

  • The filter field in the picker of a DependencyField can now be hidden, by configuring it with filterable : false (7740)

BUG FIXES

  • 6224 – Add event for ColumnResize to catch user resize action
  • 7542 – Removing partner does not break the timeAxis link
  • 7971TotalSlackColumn should not show dirty indicator
  • 8029 – Dragging Task when fillTicks and snap enabled behaves differently on 5.6.0
  • 8040 – Gantt doesn’t immediately display remotely appended rows when using { overscroll : true }
  • 8074 – Some fields of Child Task are uneditable in Task Editor after opening Parent task in Task Editor
  • 8080 – Missing TimelineHistogram component in Angular / React / Vue packages
  • 8081 – Missing TreeGrid component in Angular / React / Vue packages
  • 8098 – Should support using fill handle to add predecessors

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.3

2023-12-13

FEATURES / ENHANCEMENTS

  • Sorters used to always be removed when reordering rows, but now they are optionally kept (by specifying the preserveSorters config) if the drop leads to tasks still being in order (7901)
  • REACT Documentation in "Quick start" and "Guide" is now updated with how to build React application in Vite for higher efficiency and better performance in development

API CHANGES

  • DEPRECATED Please kindly note that @bryntum/babel-preset-react-app and @bryntum/cra-template-typescript-gantt, @bryntum/cra-template-javascript-gantt packages will not get any updates after 6.0.0 version

BUG FIXES

  • 7615 – ExtJS wrapper class in extjsmodern demo crashes
  • 7716 – Link is created to a task when trying to abort building the link
  • 7770 – Exception is triggered when replacing record id in hasChanges listener
  • 7832 – WBS value is incorrect after cut/paste
  • 7925ProgressLine disappears after zooming
  • 7933Ctrl + v creates a new task instead of pasting data in cell
  • 7936Duration.toString does not honor locale
  • 7949 – Assigned resources count overlay misplaced on assigned resources column resize
  • 7962hasChanges event is fired excessively upon task remove when taskStore wbsMode is set to ‘auto’
  • 7963 – Early/Late date indicators are not showing correctly
  • 7966 – The browser default CTRL + C keyboard shortcut gets prevented even when a text is selected
  • 7971TotalSlackColumn should not show dirty indicator
  • 7976 – Content lost if setting showDirty while scrolled down
  • 7977 – Should not enable cell replication for non-editable columns / cells
  • 7995 – Exception in ZoomToFit combined with infiniteScroll
  • 7996 – Missing DateHelper on Node.js and Core classes
  • 8014 – Task non-working time calendar rendering incorrectly after sorting
  • 8021 – Gantt MspExport throws error if export empty project
  • 8036 – Copy to clipboard doesn’t work in some code blocks

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.2

2023-11-24

FEATURES / ENHANCEMENTS

  • REACT Docs and demos for custom column editors updated to show how to handle async setState() calls, to avoid loosing column editor values

BUG FIXES

  • 7092 – Feature mixin on-owner events are not exposed on class
  • 7395 – Data on tooltip does not align with placement of task
  • 7716 – Link is created to a task when trying to abort building the link
  • 7741 – Gantt not mapping dataSource for task name field
  • 7886 – Column of type 'check' is not triggering the setter in the task model
  • 7898 – Console error when used specific calendar settings together with fillTicks feature
  • 7900TaskNonWorkingTime elements not updated on splitter repositioning

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.1

2023-11-17

FEATURES / ENHANCEMENTS

  • Added support for filtering TimeColumns (7692)
  • Added option to maintain scroll position during remote changes when the viewport is near the end of the scrollable range. Configure Gantt with preserveScroll : { overscroll : true } to opt-in to the new behavior (7759)

LOCALE UPDATES

  • There is a new locale key selectATime : 'Select time' which may be used by FieldFilterPicker‘s time input

BUG FIXES

  • 1075task.copy() copies original successors and predecessors
  • 5719YARN Can not install @bryntum product packages using yarn v2/v3
  • 7597 – Gantt Baseline duration not persisted in Baseline example
  • 7732 – Crash when cutting a row and pasting with selected assignment cell
  • 7742 – Start date column not working when set min value
  • 7745Splitter should hover above dependencies
  • 7746 – Extra API calls after project load when using stores CRUD urls
  • 7750 – Vite error @charset must precede all other statements
  • 7753 – White space shown when deleting many selected tasks while scrolled down
  • 7754Frameworks Thin packages not working with pnpm
  • 7768 – CRUD operations for TaskStore works different in Chrome and Firefox
  • 7785 – Multiple resources can be set in Gantt single assignment settings
  • 7794 – Calendar intervals stops rendering after some time ahead
  • 7820globalThis should be defined in locales to support LWC
  • 7830 – Exception when cutting task with collapsed normal region
  • 7831Thin bundles some classes are not exported from @bryntum/engine-thin package
  • 7842 – Selected tasks missing selection styling

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.6.0

2023-10-26

FEATURES / ENHANCEMENTS

  • This release introduces a new set of npm packages and framework components, that allows combining multiple Bryntum products in the same application. These packages contain the product specific code only, as opposed to the current packages that has all code for the products each product builds upon (for example Scheduler contains Grid & Core). The new packages are called thin packages, and moving forward it will be the recommended way of using Bryntum products in npm based applications (for all supported frameworks). See the "What’s new" guide for more information
  • The task bar wrapper element (.b-gantt-task-wrap) now uses CSS grid layout to better match event bars in Scheduler. This makes it easier to internally share styling with Scheduler for features like labels. If your app uses custom CSS for task bars that rely on the wrapper using flexbox, you might need to adjust it
  • @bryntum/gantt-thin bundle includes scss theme files in sass/themes folder (7445)
  • It is now possible to use asymmetrical resourceMargin by assigning an object with start (margin top in horizontal mode, margin left in vertical mode) and end (margin bottom / margin right) properties (6185)
  • Updated tooltips demo to show a more customized tooltip design
  • Updated custom-rendering demo to show a clean & minimal Gantt design
  • New RowResize feature allowing users to change the global row height using drag drop. Try it out in the updated advanced example (2843)
  • The task bar wrapper element (.b-gantt-task-wrap) now use CSS grid layout to better match event bars in Scheduler. This makes it easier to internally share styling with Scheduler for features like labels
  • Added preserveScroll config to Gantt, preventing vertical viewport movement during remote changes (7353)
  • Infer field types for auto fields when using FieldFilterPicker with store data present (7691)
  • Added a new ScrollButtons feature, which injects buttons in each row that scrolls the task bar into view. The buttons are only visible when the task bar is out of view (5152)
  • The custom-rendering demo was updated both with a fresh new look and with a new demo specific feature that displays time axis scroll buttons in the header

API CHANGES

  • BREAKING Core.util.helper.Point class has been moved to solve circular module dependencies. It is now a named export of the Core.util.helper.Rectangle module. Check upgrading guide for the details
  • TaskModel has got new projectConstraintResolution field allowing to specify how a task treats the project border (whether it’s allowed for the task or not to move before the project start date for example). Please check the field docs for more details (7156)
  • isMulti is now the default mode for the Grid Filter plugin. To configure the filter pickers inside the column filter editor popup, provide a GridFieldFilterPickerGroup configuration using the Filter feature’s pickerConfig config option. Configure legacyMode : true to use the previous UI instead (6685)
  • DEPRECATED The Filter feature context menu items disableFilter, removeFilter, and editFilter will be renamed filterDisable, filterRemove, and filterEdit, respectively, in 6.0.0. If you are customizing the TaskMenu to hide or replace any of these menu items, you will need to change their names accordingly
  • FRAMEWORKSDEPRECATED BryntumProjectModel wrapper component has been renamed to BryntumGanttProjectModel. Please see the upgrade guide for details
  • TypeScript Functions and events declarations in typings were improved to contain all available parameters and return type (6961, 4456)
  • ExcelExport feature now supports exporting to CSV file (5612)
  • Added a Print feature based on PdfExport feature which allows using browser print dialog and not rely on backend (6218)

LOCALE UPDATES

  • New locales for AdvancedTab, HonorProjectConstraintResolution, IgnoreProjectConstraintResolution and ProjectConstraintConflictEffectDescription classes. Check "What’s new" Gantt guide for the details

BUG FIXES

  • 7277scrollTaskIntoView not working reliably in infiniteScroll
  • 7287visibleDate not functioning correctly
  • 7492 – Row being resized should go on top
  • 7498 – Collapsing grid part of Gantt when scrolled down results in blank space at top
  • 7501 – Gantt Resource column overflowing avatar has no border-radius in Firefox
  • 7686 – Overflow avatar is not the rightmost avatar

FRAMEWORK SUPPORT

  • TypeScript: >= 3.6.0
  • Angular: >= 9.0.0
  • React: >= 16.0.0
  • Vue: >= 2.0.0
  • Ionic: >= 5.0.0
  • Vite: >= 4.0.0
  • Webpack: >= 4.0.0

Version 5.5.5

2023-10-23

BUG FIXES

  • 107 – Fields misaligned in dependency editor in Swedish locale
  • 6220 – Improved translations for Danish
  • 7604 – Crash when removing new invalid predecessors in task editor
  • 7608 – Missing some defaults in task context menu guide
  • 7623 – Dependencies stay visible after filtering taskStore
  • 7630ColumnAutoWidth crashes when using CrudManager
  • 7633timeSpanHighlight is not part of GanttFeaturesConfigType
  • 7680AddNewColumn combo not aligned to Column header bottom

Version 5.5.4

2023-10-05

FEATURES / ENHANCEMENTS

  • Single resource assignment mode demo called single-assignment was added (6235)
  • Added preserveScroll config to Gantt, preventing vertical viewport movement during remote changes (7353)

BUG FIXES

  • 7252 – Tabbing fast to create new rows eventually loses focus to browser
  • 7489 – Sorting by wbsValue field does not work correctly with applyChangeset method
  • 7499 – Gantt Tooltips demo columns too small
  • 7509REACT Gantt crashes when using TAB in custom editors
  • 7526 – Dependencies to out of the view rows are wrongfully painted intermediate pages
  • 7533 – Resizing to make a task shorter makes it wider
  • 7541scrollEventIntoView throwing error in gantt-schedulerpro demo
  • 7550AssignmentField clears filter applied after second picker show
  • 7558 – Split tasks option is available in the task menu when eventSegments feature disabled
  • 7566RowNumberColumn size issue when Gantt element is not in the DOM
  • 7575ResourceUtilization Timeranges not working
  • 7602PercentBar should function for parent tasks when autoCalculatePercentDoneForParentTasks is false
  • 7609TaskEdit popup not showing up on first click

Version 5.5.3

2023-09-15

FEATURES / ENHANCEMENTS

  • Added facet filtering demo showing how to filter by specific data values. Demo is located in examples/facet-filter folder

BUG FIXES

  • 3903ProjectModel ignores fields dataSource specification
  • 7309 – Resource combo doesn’t respect chained resourceStore
  • 7322 – Incorrect task non-working time rendering after filtering
  • 7344 – Undo/redo doesn’t work as expected when AssignmentModel uses field mapping
  • 7366 – Sorting by wbsValue field does not work correctly with applyChangeset method
  • 7368CellEdit‘s editor’s beforeCancel event returning false is ignored
  • 7371 – Removing filters resets sort of project
  • 7390Resourceutilization group collapse works incorrect after new assignment
  • 7414 – Error when hovering and scrolling horizontally on task
  • 7416 – Filtering total slack column throws error

Version 5.5.2

2023-08-30

BUG FIXES

  • 7165 – Rapidly changing percentDone generates 2 transactions undo/redo
  • 7311 – WBS is incorrect when applying cut-paste changes
  • 7315 – When applying a change converts a leaf to a parent, this parent should be expanded by default
  • 7318 – Indenting sorted nodes creates extra nesting level
  • 7320 – The auto-sort performed after applyChangeSet call for tree store performs purely compared to the regular store.sort() call
  • 7323 – Task is added to the wrong place of the ordered tree when store is sorted
  • 7338gantt.project.sync() throws error when late start and late finish columns are enabled
  • 7360 – Copy-pasting task calendar between cells not working
  • 7361 – Exception on scrollTaskIntoView/scrollUnrenderedTaskIntoView if node collapsed

Version 5.5.1

2023-08-16

API CHANGES

  • We added two public methods – suspendChangeTracking and resumeChangeTracking to suspend and resume hasChanges/noChanges events on a CrudManager

BUG FIXES

  • 3663 – Renderer for CheckColumn not called when exporting
  • 7116 – Event removed when returning false from beforeEventEdit after v5.3.3
  • 7176 – Non-working intervals hidden for manuallyScheduled tasks when skip non-working time in duration disabled
  • 7220 – "Add task below" behavior is inconsistent with copy/paste
  • 7233 – LaterJS bug when enum days from Monday
  • 7234non-working-time doesn’t get rendered properly after 6+ years long timespan
  • 7248 – Circular progress bar has gaps in certain row heights
  • 7255Baselines shows in wrong order
  • 7269 – Field labels misplaced in export dialog in Angular demo
  • 7278 – No action when clicking task label and selecting Split task
  • 7303 – Added record has wrong WBS

Version 5.5.0

2023-07-31

This release is a replacement for the 5.4.3 patch release. It was changed to a minor version because of some larger changes behind the scenes to pave the way for future support for live updates in Scheduler Pro and Gantt.

FEATURES / ENHANCEMENTS

  • We have refactored a few features and changed their prototype chain. If you are importing those features directly, or are extending them, you need to use correct base class and import path: Grid/feature/RowReorder -> Scheduler/feature/RowReorder, Grid/feature/CellEdit -> SchedulerPro/feature/CellEdit, Scheduler/feature/Dependencies -> SchedulerPro/feature/Dependencies

BUG FIXES

  • 7154FillTicks and Indicator placement is not correct after setting start date
  • 7187 – WBS value is not completely committed after initial commit
  • 7221VUE Vue vite app doesn’t compile with Bryntum vue wrappers
  • 7241 – Should not show task tooltip after drag drop
  • 7242 – Whiteouts while scrolling task into view

Version 5.4.2

2023-07-26

FEATURES / ENHANCEMENTS

  • Added TaskStore config option forceWbsOrderForChanges to control task order during sync
  • REACT Added new React Next.js demos showing App Router and Pages Router ways of creating applications. Demos are located in examples/frameworks/react-nextjs/app-router and examples/frameworks/react-nextjs/pages-router folders

BUG FIXES

  • 4376newTaskDefaults not applied when pressing Enter on last row
  • 5980 – Outdent records changed nodes in the reversed order
  • 7024 – Possible Memory Leak: Tasks of paired Gantt cycled active/inactive may cause the leak
  • 7135 – Outdented nodes appear in wrong position within new parent’s children on remote synced client
  • 7154 – FillTicks and Indicator Placement is not correct after setting start date
  • 7171 – Task record is inserted into wrong position in the tree
  • 7186 – Returning from tooltipTemplate doesn’t make any changes to the UI

Version 5.4.1

2023-07-13

FEATURES / ENHANCEMENTS

  • We have created a public repository to showcase Salesforce demos. All previous demos are merged into one Lightning Application which is easy to install to a new scratch org. You can find more information in updated guides and in this repository: https://github.com/bryntum/bryntum-salesforce-showcase#bryntum-salesforce-showcase
  • We have created a public Salesforce org where this app is preinstalled. You can find link to it and login credentials on the updated examples page
  • Scheduler beforeDependencyEdit event now supports async handlers (7109)

BUG FIXES

  • 4869REACT StateTrackingManager configuration triggering an error
  • 6077TypeScript Model constructors should allow second param
  • 6347 – Store idChange event not fired
  • 6977 – Document dataReady event’s records argument
  • 7056 – Updating tasks in onBeforeTaskEdit is not possible if returning false
  • 7089 – Buggy positioning of dependencies when resizing
  • 7101TaskNonWorkingTime renders wrong on expand / collapse tree
  • 7130 – Updating tasks on beforeTaskEdit event provide weird results
  • 7143 – Drag and drop functionality doesn’t work for task bars in hidden parent element
  • 7147 – Constraint data gets cleared when loading

Version 5.4.0

2023-06-30

FEATURES / ENHANCEMENTS

  • This release introduces a new TimelineHistogram class which implements a grid with histogram charts displayed for rows in the time axis section. Please check the new "Timeline histogram" guide for more details
  • The release also includes refactored ResourceUtilization and ResourceHistogram views which now better support TreeGroup and Group features, and provide some additional APIs for customization. For more details please check the new "Resource histogram" and "Resource utilization" guides and see the updated resourcehistogram and resourceutilization examples
  • Gantt now supports setting the eventColor field on a Task to a pre-defined named color (red, green, blue etc.) or a CSS color value. This changes the background color of the rendered task bar. It is also possible to configure the Gantt with a default eventColor that applies to all tasks, overriding the default coloring (857)
  • The TaskCopyPaste feature has been enhanced to use a page-global internal clipboard and also supports the browser’s native Clipboard API if accessible. This means that it is possible to copy and paste tasks between multiple instances of Gantt or other Grid-based components. It is also possible to copy a task and paste it inside a Spreadsheet app like (4169)
  • Setting scheduling direction is now supported on the task level. See the docs for direction field on the Task model for more details (2131)
  • Widget has a new config, maximizeOnMobile which takes effect only on floating widgets on a mobile device. It causes the widget to be maximized instead of positioned in order to accommodate the mobile virtual keyboard. This will make event editing much easier to use on mobile devices (6522)
  • On mobile devices, type : 'checkbox' is rendered as a slidetoggle widget. The API and value is the same, it is just a more appropriate UI for the platform
  • We have also added default editors for the eventColor field. There is one in the TaskMenu feature’s context menu and one in the TaskEdit feature’s task editing panel. Just set showTaskColorPickers to true and the editors will appear (3157)
  • There is also a new EventColorColumn which can be added to any Gantt. It renders a colored element which the user can click and select a new color for each task (3537)
  • ANGULAR taskeditor demo has been updated to show use of showTaskColorPickers Gantt configuration option
  • REACT taskeditor demo has been updated to show use of showTaskColorPickers Gantt configuration option
  • VUE taskeditor demo has been updated to show use of showTaskColorPickers Gantt configuration option
  • For a slightly better docs experience for most users, the docs browser now by default hides some more obscure APIs normally only used when implementing own widgets and features. Advanced users in need of these APIs can still opt in to see them using the Show menu in the docs browser
  • Added a set of baseline columns: "Baseline start" (BaselineStartDateColumn), "Baseline finish" (BaselineEndDateColumn), "Baseline duration" (BaselineDurationColumn), "Baseline start variance" (BaselineStartVarianceColumn), "Baseline end variance" (BaselineEndVarianceColumn) & "Baseline duration variance" (BaselineDurationVarianceColumn). Used in the updated baselines demo

API CHANGES

  • Because of the support for eventColor in Gantt (mentioned above), changes to the CSS classes coloring Gantt Tasks has been made. If your app customizes the task bar’s background color, we would recommend you to take a look at the result after upgrading to this version. The most notable changes are that $gantt-task-hover-background-color and $gantt-task-parent-hover-background has been removed. Instead, hovering now adds a linear-gradient on top of the background color. Please read the Upgrade guide for more information
  • The TaskCopyPaste feature’s copyRow and pasteRow has been made asynchronous due to the enhancements mentioned above
  • The TaskCopyPaste feature’s beforeCopy and beforePaste events are now asynchronously preventable
  • The ScaleColumn class has been moved from Pro to regular Scheduler classes. This should not affect your application unless it imports the class from its individual file (not the case for the vast majority of customers). The distribution still includes SchedulerPro/column/ScaleColumn.js file which is now an empty wrapper importing the class from its new location. The wrapper is there till the next major release so please update your code and import the file from its new location if needed (6176)

LOCALE UPDATES

  • Localization for the new class SchedulingDirectionColumn has been added. Keys are: SchedulingDirectionColumn.schedulingDirection, SchedulingDirectionColumn.inheritedFrom, SchedulingDirectionColumn.enforcedBy
  • Localization for the new class SchedulingDirectionPicker has been added. Keys are: SchedulingDirectionPicker.Forward, SchedulingDirectionPicker.Backward, SchedulingDirectionPicker.inheritedFrom, SchedulingDirectionPicker.enforcedBy
  • New entries for ConstraintTypePicker: asap, alap

BUG FIXES

  • 4205 – Error when undoing delete action on filtered store
  • 6956 – Freeze after copy pasting top level node
  • 6959 – Drag proxy misplaced when picking up Name column
  • 7009 – Panel height increased when add more items but isn’t decreased when remove items
  • 7018 – Exported content is cut-off when normal grid is collapsed

Version 5.3.7

2023-06-20

BUG FIXES

  • 5908 – Undo/Redo Segmented task change throws TypeError: a is not iterable
  • 6837 – An exception when opening & closing the taskeditor in combination with tooltip
  • 6838 – Still possible to add dependency by task editor when gantt is readOnly
  • 6843 – Avatars and Icons not sized the same
  • 6849 – Error Failed to execute 'setEndBefore' on 'Range': the given Node has no parent
  • 6851 – Child nodes get duplicated when copy-pasting parent node
  • 6868 – "Invalid date input" on manually enter date when custom date format used
  • 6873 – Not able to hide units column using showUnits config
  • 6881 – The background of the assignment column cells is not cleared after selection
  • 6894 – Crash when deleting task from context menu in Gantt Big Data Set Demo
  • 6912REACT Custom column editor lose value in React 18
  • 6944 – Crash when copy pasting split task
  • 7006StateProvider not restoring scroll position of left panel
  • 7010 – Zoom level state not restored when timeline is collapsed
  • 7011 – Gantt addTaskAbove and addTaskBelow methods do not copy the reference task duration unit

Version 5.3.6

2023-05-26

FEATURES / ENHANCEMENTS

  • ResourceAssignmentColumn has a new showAllNames config used to determine if the names of all overflowing resources are displayed in the tooltip for overflow indicator. The avatarTooltipTemplate function also has a new argument for the indicator tooltip, called overflowAssignments, that contains overflowing assignments (6751)

API CHANGES

  • The change event for the FieldFilterPickerGroup now includes an additional property validFilters, the subset of filters that are complete and valid (6774)

BUG FIXES

  • 5585 – Start date of manually scheduled task that is before project start can’t be edited
  • 6099 – Delete task takes a while when big dataset used
  • 6291 – Date formats are not working properly in startdate column
  • 6371 – German localization improvements
  • 6655 – Invalid revisions chain error in Gantt test
  • 6669 – 2 sync requests triggered when editing last task and pressing ENTER
  • 6761 – Row reordering crashes when combined with RowNumberColumn and ResourceAvatarColumn
  • 6802lagUnit for newly created dependency in DependencyTab should use default model field value
  • 6833 – Enabling/disabling filter checkbox in FieldFilterPickerGroup throws error on the console
  • 6848 – Filter with rounded values not working

Version 5.3.5

2023-05-11

FEATURES / ENHANCEMENTS

  • Added new event beforeShowTerminals to allow preventing dependency terminals from being displayed on a specific task (6609)

BUG FIXES

  • 4775 – Error when clicking Shift + Left/Right arrow inside an empty Gantt
  • 6247 – Conflict resolution dialog re-opens in circle when clicked Cancel
  • 6431 – Error when trying to undo changes to multiple predecessors
  • 6495ReorderFeaturegripOnly doesn’t work when first column is a checkbox column
  • 6586addNewAtEnd wrong indentation
  • 6668 – Uneven button spacing in PHP demo
  • 6678 – View refresh suspended after multiple sync requests
  • 6701IONIC Scrollbar width could not be determined under Ionic framework
  • 6713 – Time spans highlights re-appear after calling unhighlightTimeSpans()

Version 5.3.4

2023-04-28

BUG FIXES

  • 2234 – Project throws when effortUnit is null
  • 5664 – Long time export to MS project
  • 6630 – Filter are applied before recalculating schedule
  • 6637 – Pin successors not working correctly
  • 6648sync called when expand tree node after gantt.project.suspendAutoSync()
  • 6652 – Minified UMD bundle does not export bryntum namespace

Version 5.3.3

2023-04-21

FEATURES / ENHANCEMENTS

  • TypeScript Type definition files were added for gantt.node.cjs and gantt.node.mjs bundles (6523)
  • ANGULAR Bryntum Gantt now ships with two npm Angular wrapper packages to support different versions of Angular framework. Existing @bryntum/gantt-angular package is now designed to work with Angular 12 and newer versions, which use the IVY rendering engine. New @bryntum/gantt-angular-view package is designed to work with Angular 11 and older versions, which use the View Engine rendering. Check Upgrading and Angular integration guides in documentation for more information (6270)
  • ANGULAR angular-11 demo has been added to show use of @bryntum/gantt-angular-view package with Angular 11. Demo is located in examples/frameworks/angular/angular-11 folder
  • ANGULAR pdf-export, rollups and timeranges demos have been upgraded to use Angular 15. Demos are located in subfolders inside examples/frameworks/angular/ folder

BUG FIXES

  • 2695 – Resource Histogram is not updated when primary partner is zoomed or gets shifted
  • 5059REACT Histogram not updating when doing shiftPrevious()
  • 6032visibleDate incorrectly positioned on startup when infiniteScroll used
  • 6296 – Undo 2 event drop actions throws an error when nestedEvents enabled
  • 6406 – Setting calendar in project data throws an error
  • 6469 – Syncing a new tree data set redraws for each node
  • 6528 – TypeError r.ion is not a function
  • 6535 – Add configurable baseline renderer
  • 6546 – WBS cells are fillable with fillHandle
  • 6585 – Error in versions demo when clicking "save version"
  • 6594GridSelection should selectively not act for gestures inside a TimeAxisColumn
  • 6607 – Timeline breaks when scroll if custom viewPreset used with empty data

Version 5.3.2

2023-04-04

FEATURES / ENHANCEMENTS

  • The backend for the php demo was updated to work with PHP 8

BUG FIXES

  • 6150scrollToDate with animation does not work at edges of date buffer
  • 6280 – After removing Invalid dependency, it’s not clearing invalid dependency error
  • 6349 – Optimize dependency hovering performance
  • 6358 – Hard to select row in advanced demo
  • 6413 – Filter is not working for total slack column
  • 6416 – Filter gets reset in when opening number filter
  • 6470 – Filtering the data will cause calendar events displacement
  • 6491 – Drag-selection issues in Gantt

Version 5.3.1

2023-03-17

FEATURES / ENHANCEMENTS

  • ANGULAR Added new Angular 15 demo "Drag from a grid". Demo is located in examples/frameworks/angular/drag-from-grid folder (6157)

API CHANGES

  • ProjectModel convenience getter methods (tasks, resources etc.) now returns allRecords instead of records
  • Date parsing was made more forgiving in regard to character used to separate date parts. For example these strings are now all acceptable as HH:mm: 10:20, 10 20, 10-20, 10/20 (6344)

BUG FIXES

  • 5764 – Gantt performance issues in Firefox with 5k tasks
  • 5975 – Error on apply StateProvider state
  • 6241 – Gantt crashes when after page reload with collapsed timeAxis subgrid
  • 6245 – Undo not working with baselines
  • 6262 – Engine performance issue
  • 6287 – Cell selection styling remains on scroll
  • 6289 – Predecessor column with editor + clearable: true triggers an error
  • 6312 – Splitter does not move after updating to 5.3.0
  • 6313 – Errors when adding / deleting predecessors using the edit task popup
  • 6315SALESFORCE PointerEvent is not a constructor error in LWC
  • 6320effortDriven + fixed duration not working when setting it in the data level initially
  • 6324ProjectModel.tasks should return all tasks
  • 6325'dataChange' should not trigger for collapse & expand of parent nodes
  • 6341 – Not possible to replace columns
  • 6351 – Components do not render into containers not already in DOM
  • 6367 – Gantt’s project onHasChanges shows wrong tasks count after task drag operation

Version 5.3.0

2023-03-02

FEATURES / ENHANCEMENTS

  • CSS changes in Scheduler has cut the size of Gantt’s standalone CSS-bundles roughly in half (because Gantt includes Schedulers styling). See Schedulers upgrade guide for more information
  • Support for Time zone conversion has been added to all Bryntum scheduling products. Simply set a IANA time zone identifier as value for the timeZone config and that’s it. But, since time zones is not supported natively in JavaScript we strongly recommend to read our Time zone guide (1533)
  • php demo backend was updated to handle calendar intervals.
  • Selection in a Grid with a TreeStore has been improved by addition of the includeParents config. Set it to all or true to auto select a parent if all its children gets selected. If one gets deselected, the parent will also be deselected. Set it to some to select a parent if one of its children gets selected. The parent will be deselected if all its children gets deselected (5726)
  • Added Versions feature, enabling capturing snapshots of projects together with a detailed changelog
  • Localization demos updated to show up-to-date localization approach
  • AjaxHelper.fetch now supports using request body to pass parameters for non-GET requests. Please check addQueryParamsToBody argument in the method documentation (2855)
  • TaskMenu feature now offers "Add dependencies" and "Remove dependencies" to link and link selected tasks (5846)
  • Lots (but not all) of the not so informative object types in our TypeScript typings have been replaced with more specific types. Objects that in our JavaScript are used as maps are now declared as Record<keyType, valueType>, and for functions that accept object arguments many are replaced with anonymous type declarations, such as { foo: string, bar: number } (Partially fixed 5176)
  • Gantt Sharepoint example has been upgraded to use latest spfx version and Node 16 (6239)

API CHANGES

  • DEPRECATED LocaleManager.registerLocale and LocaleManager.extendLocale are deprecated. LocaleHelper.publishLocale should be used instead.
  • When configuring a Gantt with a time zone at initialization, and there’s also a startDate and/or a endDate initially, those days will be treated as in local system time zone and will therefore be converted to the configured time zone. Previously (in 5.3.0-alpha-1 and 5.3.0-beta-1) those dates was treated as in the provided time zone

LOCALE UPDATES

  • Locales format and process for applying locales have been simplified
  • New locales for 31 languages have been added. Currently available languages are listed in the localization guide (Guides/Customization/Localization)
  • "Add dependencies" (linkTasks) and "Remove dependencies" (unlinkTasks) added to all locales for TaskMenu

BUG FIXES

  • 3213Cmd/Ctrl + Right click weird behavior
  • 3733selectedRecords are in wrong order after shift selection
  • 4807 – STM not tracking after updating project
  • 5400 – Selecting tasks with Shift + Click get merged with previous selected task
  • 5858 – Time zone demo missing scheduled tasks
  • 5900 – Allow dragging resource avatars
  • 5989 – Timezone conversion of baselines sometimes incorrect
  • 6018 – Wrong position of highlighted region when taskRecord is set
  • 6020 – Highlighted task timespan height not adjusting with the height of the rows
  • 6091 – Deselect tasks in gantt using Ctrl selection not working correctly
  • 6195 – Inactive + Ignore resource calendar fields missing in docs
  • 6201 – Intervals names showing in random places when indicators are on
  • 6233 – Exception when resizing splitter by the header part with active cell editor
  • 6242 – Copying Calendar not working anymore
  • 6246 – Crash when pasting rows if one of the copied tasks is removed
  • 6251 – Resources disappearing on unselect in ResourceAssignmentColumn
  • 6260 – Milestone is rendered incorrectly

Older versions

  • Full release version history can be found here.