v3.9.0 (2018-03-04)
-------------------
- Bootstrap 4 support (#4032, #4065, thx @GeekJosh)
- add OptionsInput to the fullcalendar.d.ts exports (#4040, #4006)
- columnHeaderFormat/columnHeaderHtml/columnHeaderText in .d.ts file (#4061, #4085)
- list-view auto-height not working (#3346, #4071, thx @WhatTheBuild)
- bump momentjs minimum version to 2.20.1, for locale fixes (#4014)
- swedish week header translation fix (#4082)
- dutch year translation (#4069)
v3.8.2 (2018-01-30)
-------------------
Bugfixes:
- Fix TypeScript definitions file with strictNullChecks (#4035)
v3.8.1 (2018-01-28)
-------------------
Bugfixes:
- TypeScript definition file not compatible with noImplicitAny (#4017)
- ES6 classes are not supported for grid class (#3437)
- day numbers in month view should be localized (#3339)
- select helper is resizable, causes js error (#3764)
- selecting over existing select helper causes js error (#4031)
- eventOrder doesn't work on custom fields (#3950)
- aria label on button icons (#4023)
- dynamic option changes to select/overlap/allow doesn't cause rerender
Locales:
- added Georgian (#3994)
- added Bosnian (#4029)
v3.8.0 (2017-12-18)
-------------------
- new settings for month/agenda/basic views (#3078):
- `columnHeaderFormat` (renamed from `columnFormat`)
- `columnHeaderText`
- `columnHeaderHtml`
- TypeScript definition file (fullcalendar.d.ts) included in npm package (#3889)
- codebase using SASS, though not taking advantage of it yet (#3463)
- codebase fully ported to TypeScript / Webpack
- Afrikaans locale fix (#3862)
v3.7.0 (2017-11-13)
-------------------
Bugfixes:
- `render` method does not re-adjust calendar dimension (#3893)
- when custom view navigates completely into hidden weekends, JS error ([scheduler-375])
Other:
- in themes.html demo, fixed broken Bootswatch themes (#3917)
- moved JavaScript codebase over to TypeScript
(same external API; embedded typedefs coming soon)
[scheduler-375]: https://github.com/fullcalendar/fullcalendar-scheduler/issues/375
v3.6.2 (2017-10-23)
-------------------
Bugfixes:
- Google Calendar event sources not calling `loading` callback (#3884)
- `eventDataTransform` w/ eventConstraint shouldn't be called during event resizing (#3859)
- `navLinks` would go to the previously navigated date (#3869)
- `nowIndicator` arrow would repeatedly render (#3872)
- fc-content-skeleton DOM element would repeatedly render on navigation in agenda view
v3.6.1 (2017-10-11)
-------------------
Bugfixes:
- JSON feed event sources always requesting current page (#3865)
- multi-day events appearing multiple times in more+ popover (#3856)
v3.6.0 (2017-10-10)
-------------------
Features:
- `agendaEventMinHeight` for guaranteeing height (#961, #3788) thx @Stafie
- `columnHeader` can be set to `false` to hide headings (#3438, #3787) thx @caseyjhol
- export all View classes (#2851, #3831)
- `updateEvent`, update complex attributes (#2864)
- Albanian locale (#3847) thx @alensaqe
Bugfixes:
- objects used as non-standard Event properties ignored by `updateEvent` (#3839)
- listDay error if event goes over period (#3843)
- `validDays` with `hiddenDays`, js error when no days active (#3846)
- json feed Event Source object no longer has `url` property (#3845)
- `updateEvent`, allDay to timed, when no end, wrong end date (#3144)
- `removeEvents` by `_id` stopped working (#3828)
- correct `this` context in FuncEventSource (#3848) thx @declspec
- js event not received in unselect callback when selecting another cell (#3832)
Incompatibilities:
- The `viewRender` callback might now be fired AFTER events have been rendered
to the DOM. However, the eventRender/eventAfterRender/eventAfterAllRender callbacks
will always be fired after `viewRender`, just as before.
- The internal `Grid` class (accessed via `$.fullCalendar.Grid`) has been removed.
For monkeypatching, use DayGrid/TimeGrid directly.
v3.5.1 (2017-09-06)
-------------------
- fixed loading trigger not firing (#3810)
- fixed overaggressively fetching events, on option changes (#3820)
- fixed event object `date` property being discarded (tho still parsed) (#3819)
- fixed event object `_id` property being discarded (#3811)
v3.5.0 (2017-08-30)
-------------------
Features:
- Bootstrap 3 theme support (#2334, #3566)
- via `themeSystem: 'bootstrap3'` (the `theme` option is deprecated)
- new `bootstrapGlyphicons` option
- jQuery UI "Cupertino" theme no longer included in zip archive
- improved theme switcher on demo page (#1436)
(big thanks to @joankaradimov)
- 25% event rendering performance improvement across the board (#2524)
- console message for unknown method/calendar (#3253)
- Serbian cyrilic/latin (#3656)
- available via Packagist (#2999, #3617)
Bugfixes:
- slot time label invisible when minTime starts out of alignment (#2786)
- bug with inverse-background event rendering when out of range (#3652)
- wrongly disabled prev/next when current date outside of validRange (#3686, #3651)
- updateEvent, error when changing allDay from false to true (#3518)
- updateEvent doesn't support ID changes (#2928)
- Promise then method doesn't forward result (#3744)
- Korean typo (#3693)
- fixed switching from any view to listview, eventAfterRender isn't called (#3751)
Incompatibilities:
- Event Objects obtained from clientEvents or various callbacks are no longer
references to internally used objects. Rather, they are static object copies.
- `clientEvents` method no longer returns events in same order as received.
Do not depend on order.
v3.4.0 (2017-04-27)
-------------------
- composer.json for Composer (PHP package manager) (#3617)
- fix toISOString for locales with non-trivial postformatting (#3619)
- fix for nested inverse-background events (#3609)
- Estonian locale (#3600)
- fixed Latvian localization (#3525)
- internal refactor of async systems
v3.3.1 (2017-04-01)
-------------------
Bugfixes:
- stale calendar title when navigate away from then back to the a view (#3604)
- js error when gotoDate immediately after calendar initialization (#3598)
- agenda view scrollbars causes misalignment in jquery 3.2.1 (#3612)
- navigation bug when trying to navigate to a day of another week (#3610)
- dateIncrement not working when duration and dateIncrement have different units
v3.3.0 (2017-03-23)
-------------------
Features:
- `visibleRange` - complete control over view's date range (#2847, #3105, #3245)
- `validRange` - restrict date range (#429)
- `changeView` - pass in a date or visibleRange as second param (#3366)
- `dateIncrement` - customize prev/next jump (#2710)
- `dateAlignment` - custom view alignment, like start-of-week (#3113)
- `dayCount` - force a fixed number-of-days, even with hiddenDays (#2753)
- `showNonCurrentDates` - option to hide day cells for prev/next months (#437)
- can define a defaultView with a duration/visibleRange/dayCount with needing
to create a custom view in the `views` object. Known as a "Generic View".
Behavior Changes:
- when custom view is specified with duration `{days:7}`,
it will no longer align with the start of the week. (#2847)
- when `gotoDate` is called on a custom view with a duration of multiple days,
the view will always shift to begin with the given date. (#3515)
Bugfixes:
- event rendering when excessive `minTime`/`maxTime` (#2530)
- event dragging not shown when excessive `minTime`/`maxTime` (#3055)
- excessive `minTime`/`maxTime` not reflected in event fetching (#3514)
- when minTime is negative, or maxTime beyond 24 hours, when event data is requested
via a function or a feed, the given data params will have time parts.
- external event dragging via touchpunch broken (#3544)
- can't make an immediate new selection after existing selection, with mouse.
introduced in v3.2.0 (#3558)
v3.2.0 (2017-02-14)
-------------------
Features:
- `selectMinDistance`, threshold before a mouse selection begins (#2428)
Bugfixes:
- iOS 10, unwanted scrolling while dragging events/sel