Releases: fullcalendar/fullcalendar-workspace
v7.0.0-beta.3
🔈 Update! This beta release brings improved print-view, accessibility, and fixed regressions. We apologize for the delayed release, the DOM restructuring turned out to be much more extensive than originally anticipated, and print-view was particulary pesky. The next beta will focus on restoring and improving accessibility (see tickets). After that, three things remain: code-cleanup, restoring 100% test coverage, and improving performance. The next beta is expected Jan 3rd, the v7 release candidate is expected Jan 17th, and the final v7 release is expected Feb 14th, though these dates are just approximations and may change.
✨ Features
- List-view DOM refactor, no more table markup
- If
resourceAreaWidth
orresourceAreaColumns.width
specified as percentage, will persist as percentage after user-resize
🖨️ Printing
- DayGrid
- Event titles should not repeat each day (#6657)
- TimeGrid
- Timeline
- Resource-Timeline
- Resource rows no longer break across pages
- Resource-area columns shrink-to-fit based on percentage, saving more space for timeline
Accessibility
- Non-editable events should not be rendered as anchor tags (#7675)
⚠️ Breaking Changes
- The
multiMonthMinWidth
pixel value now includes the padding within each month tile - TimeGrid overlapping events that previously spanned full column width now have a right margin. This was an accidental regression from v5 -> v6, and the v5 behavior is restored (#6569)
✅⏪ Resolved Regressions
- DayGrid events, occasional incorrect stacking
- TimeGrid time-axis is not text-selectable (#7781)
- Timeline now-indicator div covering events (#7798)
- List-view time-text, occasional wrong time-text for multiday events
- Space in header to accommodate scrollbars needs better styling (#7780)
- Error with Next.js 14, "ResizeObserver is not defined" (#7802)
- Minimum browser support, which was temporarily raised in 7.0.0-beta.0 to ~2020 minimum, has been lowered to ~2018 minimum because a
ResizeObserver
ponyfill has been implemented. Exact minimum versions will be determined just prior to final v7 release.
v6.1.16
v7.0.0-beta.1
v7.0.0-beta.0
This is a beta release for the upcoming v7. It includes a complete refactor of the HTML/CSS to allow for increased performance, better accessibility, and to serve as a foundation for advanced features in future releases such as virtual rendering and infinite scrolling.
v7 has very few breaking changes. However, If you've written custom CSS that overrides any of FullCalendar's default styles, there's a chance your CSS will need to be updated. We will release an upgrade guide specifically for how to upgrade CSS statements as soon as all v7 classNames become stable. In the meantime, it's recommended to simply disable your custom CSS.
# Installation options:
# A) use NPM and append the @beta tag to all packages:
npm install @fullcalendar/core@beta @fullcalendar/daygrid@beta
# B) download the .ZIP archives at the footer of this release
Please test things out! and report bugs on the issue tracker.
You can find the source code at the v7-dev branch in the fullcalendar-workspace repo.
✨ Features
- More streamlined HTML skeleton and more flexbox-based CSS (as opposed to table-based)
- No longer a need to call
.updateSize()
after the page's dimensions have been programmatically changed. All sizing/positioning of events and views will stay updated automatically. Related to the "resizing" bugfixes below. - In Resource Timeline view,
resourceAreaHeaderContent
above columns now stays fixed during horizontal scrolling (#7779)
⌚ Performance
- DayGrid/TimeGrid rendering 2x performance gain (#7677)
- MultiMonth performance gain, solving "Forced reflow while executing JavaScript took <#> ms" violation (#7209)
- Likely less layout thrashing (#4906), awaiting confirmation
- Likely less flickering during event rerendering for React connector (#7488), awaiting confirmation
Performance is expected to improve between now and the v7 official release. Profiling will eventually be conducted.
🪲 Bugfixes
- Responsiveness
- Accessibility
- Resizing
- Layout does not resize to new container width after browser resizing (#6407)
- Resource rows don't adjust height to fit resourceLaneContent (#6103)
- Resource rows don't render with correct height (#6082)
- Dynamic calendar width doesn't adjust (#5507)
- Adjust calendar sizing when scrollbar width changes (or (de)activated) (#5561)
- Day number in day cells are hidden by vertical scrollbar (#6798)
- Scrollbars
- List View sticky headers lack bottom border (#7778)
- Vertical Resource views with no resources shows blank resource row (#7377)
- DayGrid view
- Better dayGrid height row height, height:auto, and +more link behavior (#6033)
- Day cells are not always equal height with calendar height set to auto (#5762)
- Events not rendered when container is resized (#7555)
- Events overflow below day cell with dayMaxEvents:true and showNonCurrentDates:false (#6749)
- Events times are cutoff with eventDisplay: "block" when there is not enough space for the title (#6457)
- Compressed space between events in dayGrid when month-start title (#7184)
⚠️ Breaking Changes
- Some custom CSS will need to be rewritten (upgrade guide coming soon)
.updateSize()
method deprecatedwindowResize
event no longer fireswindowResizeDelay
setting removedhandleWindowResize
callback removed- FullCalendar-internal exports
DayTable
from'@fullcalendar/daygrid/internal'
removedDayTableView
from'@fullcalendar/daygrid/internal'
renamed toDayGridView
DayTimeCols
from'@fullcalendar/timegrid/internal'
removedDayTimeColsView
from'@fullcalendar/timegrid/internal'
renamed toTimeGridView
⏪ Temporary Regressions
These will be addressed before v7 official release. No need to report bugs related to these.
- Accessibility - almost all
role
andaria-*
attributes have been stripped out - Print mode - very broken
- Angular support - not working and not yet released, caused by this Preact issue
- Minimum browser support - because
ResizeObserver
is now used internally, and because newer ES syntax is used in places, the minimum supported browsers have been temporarily raised. However ponyfills and transpiling will come to the rescue before official release. Temporary minimum versions:- Safari: Sept 2020
- Firefox: July 2020
- Chrome: Aug 2020
- Edge: Aug 2020
- List view - currently still leverages
<table>
, but will be refactored away soon - Other bugs
🚦 Not Yet Implemented
These will be addressed before v7 official release:
- All remaining
a11y-*
in the v7 milestone of the GitHub Project - Event titles repeated each day in print (#6657)
- Upgrade to peerDep ical.js v2 (#7734)
moreLinkClick
date is not adjusted for moment timezone (#7314)- resource open/close animation (#4844)
⏩ Features Postponed Until v7.1
Unfortunately we didn't have time to do these but will implement them in a follow-up minor release:
- Improve resource timeline performance with virtual rendering (#5673)