Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Fixes a warning on the status report about outdated entity definitions, and an issue where a recent release of the Token module broke Smart Date's tokens.
This release introduces Drupal 11 compatibility, but doesn't really introduce any functional changes. Lots more code cleanup, methodically marching towards a stable release of 4.1.0.
The main changes in this release are to handle deprecated code, which should improve this module's readiness for Drupal 11, in addition to resolving deprecation warnings. Internally a lot of the works in this release was to implement GitlabCI, and start resolving the issue it identified. Many thanks to the contributors who have helped!
The biggest changes in this release relate to Smart Date's recurring formatter. There are a number of improvements, including better stability across uses cases, and better options for theming, including the ability to opt in or out of the Oxford (or serial) comma, by language.
Incremental release, to move closer to a stable release for the 4.1.x branch. There are some additional issues to be fixed before a stable release, but wanted to get the widget formatting fix in particular incorporated in a release.
This release fixes the Year 2038 problem for sites that need to define dates into the far future. Because this release contains database updates, please thoroughly test in a non-production environment before upgrading on your production site.
A small set of changes, to enhance improvements introduced in the 4.0.x branch. When using Smart Date's services, you should now be able to pass in the machine name of a Smart Date format instead of having to load the format first. Also, there was a bug with the removal of the All day checkbox where the end date wouldn't hide initially, which is now fixed.
A small update to fix an issue when using the 4.0.x branch with core daterange fields.
NOTE: If you are updating from a previous branch, e.g. 3.7.x, then you may need to add the -W flag to your composer command when you upgrade Smart Date, to resolve an error about using an older version of the recurr library.
First stable release for the 4.0.x branch. There are modest changes in this release as compared to the previous release candidate, but this branch contains some significant changes from the 3.7.x branch, including more configurable widgets and formatters. More significantly, many methods that were previously declared as static have had this removed, because PHP 8.1 is much more stringent about mixing static and non-static code.
This release improves the stability of the 4.0.x branch, moving it towards a stable release. In general the 4.0.x brnach improves this module's compatibility with Drupal 10 and PHP 8.0+, including by making some backwards-compatibility changes such as moving some methods from being static to being available as services instead. In terms of new functionality, the 4.0.x provides a more configurable formatter, allowing a site builder to choose what elements of the range should be output, from start, end, and duration.
Bug fixes related to recurring functionality, especially permissions, tokens, and working with the Next.js module. Also, a fix for the timezone widget when choosing the timezone to show.
The significant change in this release is additional formatter configuration options. Now, a site builder can use checkboxes to define what parts of the time they want displayed, choosing any or all of start time, end time, and duration.
The key driver for this release is to resolve an issue where Smart Date's Recurring formatter would throw fatal errors when used with Date Augmenters in an environment using PHP 8.1 or newer.
First stable release for the 3.7.x branch. Mostly bugfixes since 3.7.0-rc2, but lots of changes since 3.6.1. Of particular note are new tokens for recurring events, widget configuration options to restrict start and end dates, and a new JS formatter to convert times to the visitor's timezone automatically.
First stable release for the 3.6.x branch. Notable changes from the 3.5.x branch include granularity for views filters, Drupal 10 compatibility, migration support from the Drupal 7 Date module, a new twig filter for applying Smart Date formats within a twig template, and new options in the duration formatter.
Although the change for this one issue is relatively small, its potential impact on sites with an exposed date filter is potentially sizeable, so I decided to rush out a release with this fix. If no major issues are reported for the 3.6.x branch in the next couple of weeks, will tag a stable release.
This release includes a number of bug fixes, including for the views filter granularity introduced in the previous release, when used via AJAX. The new feature in this release is migration support from the Drupal 7 Date module. As always, feedback is most welcome.
With PHP 8.1 as the recommended version for Drupal 9.4, this release contains a number of fixes that should allow Smart Date to play nicely with the latest versions. The significant new feature in this release is the ability to specify granularity in views filters, for example to show all events today, this month, or this year.
The new features in this release are a new twig filter for applying Smart Date formats within a twig template, and new options in the duration formatter for controlling how the duration value will be formatted.
This is a bugfix release, but since the one issue for drush was reasonably severe (for anyone trying to use the drush command) and the other fixed the importing of all day and date-only events, I decided to roll a release.
First stable release for the 3.5.x branch. The code standards ended up being a somewhat larger undertaking than planned, but was admittedly overdue. Also a fix for using Smart Date recurring dates with the Multiple Fields Remove Button, though it's possible there is additional work left to do there.
The big change in this release is new functionality for the Recurring formatter. Where previously the "Force chronological" setting didn't impact the output in any way, as of this release it will now call all recurring rules and one-off field values to be merged into a single, chronological range of values, and then the upcoming and past values with be displaying from this unified range. Note that any sites using the Recurring formatter with this setting enabled will see different output after updating to this version. If this is undesired, simply disable the setting.
Moving closer to a 3.5.0 release candidate, within some non-trivial factoring to make Date Augmenter API support more sustainable. Also a couple of smaller changes, including moving the timezone widget to use the inline layout.
This release updates the Javascript used by Smart Date for input forms. The main goal was to remove the need for jQuery, but the input labels for recurring dates are improved as well.
A quick release to ensure compatibility with the updated Date Augmenter API, also ensures that the recently updated logic for all day events will work with custom entities.
The biggest change in this release is stable support for the Date Augmenter API but there also a number of bugfixes, particularly related to timezones, for all day events and in the Fullcalendar View integration.
The shiny new feature in this release is support for the AddToCal Augmenter in the Recurring formatter. You can now configure separate augmenter settings for the rule, and for the individual date listings. Using an add to calendar link for a recurring rule should now add the full rule, including all instances. Note that currently no information about overrides will be passed in. I have yet to find any documentation which indicates this is possible. If you find some, please open an issue with the information, and I'll be glad to include it in a future release.
First release of the 3.4.x branch. This most significant new feature is support for the Date Augmenter API, but this release also includes a new date-only widget, a new option to list the most recent instance as "next" for a recurring event in the past, and a new option to list timezone abbreviations with their names.