• Resolved Matthias Pabst

    (@matthiaspabst)


    The plugin version 3.0.1 fills up the error log! Please fix this!

    [Fri Mar 22 10:34:39 2024] [php:notice] [pid 22751] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/query/helper.php:160 #8192
    [Fri Mar 22 10:34:39 2024] [php:notice] [pid 22751] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:198 #8192
    [Fri Mar 22 10:34:39 2024] [php:notice] [pid 22751] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:208 #8192
    [Fri Mar 22 10:34:39 2024] [php:notice] [pid 22751] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:215 #8192
    [Fri Mar 22 10:34:39 2024] [php:notice] [pid 22751] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:222 #8192
    [Fri Mar 22 10:34:41 2024] [php:notice] [pid 22766] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/query/helper.php:160 #8192
    [Fri Mar 22 10:34:41 2024] [php:notice] [pid 22766] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:198 #8192
    [Fri Mar 22 10:34:41 2024] [php:notice] [pid 22766] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:208 #8192
    [Fri Mar 22 10:34:41 2024] [php:notice] [pid 22766] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:215 #8192
    [Fri Mar 22 10:34:41 2024] [php:notice] [pid 22766] [client 123.123.123.123] [host www.domain.de] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /is/htdocs/path/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:222 #8192
    
Viewing 15 replies - 1 through 15 (of 19 total)
  • I second this, yet the forums have more persons with these issues for this plugin.

    Also have same problem here – and no fix in sight it seems.

    Plugin Support yenmer

    (@yenmer)

    Hi @matthiaspabst

    Thanks for reaching out!

    To better assist you please fill out the following form here, and we will review your request.

    Sincerely,
    Yenmer.
    Timely Customer Support.

    Thread Starter Matthias Pabst

    (@matthiaspabst)

    @yenmer Why? I have nothing more to say than in my inital request. And since you provide the plugin in the official plugin repository, it should be ok to post requests (and get answers) in this support forum. I think it’s the best place to share information with other plugin users.

    Best regards
    Matthias

    I am also experiencing the same issue, for example:

    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:215 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:222 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/query/helper.php:156 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:198 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:208 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:215 #8192
    [05-Apr-2024 19:44:50 UTC] All-in-One Event Calendar: Return type of Ai1ec_Abstract_Query::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice @ /home/n985c25/wp-content/plugins/all-in-one-event-calendar/lib/http/request/abstract.php:222 #8192

    After a few hours the PHP error log will get to over 1GB in size.

    I have also submitted information using the form linked above.

    For any others experiencing this issue here are some suggestions…

    Offered with no warranty, please test in your own environment before implementation in production sites… YMMV (-:

    With much gratitude to @leroyrosales and his forked 3.0.0 version at https://github.com/leroyrosales/all-in-one-event-calendar

    To mitigate many of the Deprecation notices being generated in the version 3.0.1 of the plugin you will need to update a number of functions in two library scripts to include the #[\ReturnTypeWillChange] attribute.

    See: https://www.php.net/manual/en/class.returntypewillchange.php

    Also see this very detailed StackOverflow answer for more info and potentially more suggestions about resolving this issue permanently rather than simply supressing the deprecation notices:
    https://stackoverflow.com/questions/71133749/reference-return-type-of-should-either-be-compatible-with-or-the-re

    For example,

    /**
     * @overload ArrayAccess::offsetGet()
     */
    #[\ReturnTypeWillChange]
    public function offsetGet( $offset ) {
        return $this->get_scalar( $offset );
    }

    Change \lib\http\request\abstract.php to update these functions
    public function offsetGet
    public function offsetSet
    public function offsetUnset

    Change lib\iCal\helper\SG_iCal_Line.php to update these functions
    public function offsetExists
    public function offsetGet
    public function offsetSet
    public function offsetUnset
    public function count
    public function getIterator

    I filled in the report but got back information that is pointing to this plugin ..

    so I replied with:

    https://time.ly/solutions/all-in-one-events-calendar-wordpress-plugin/ the download link is pointing to the very same plugin as my client has …

    but no accurate reponse …

    This is the original reply:

    Currently, we have two platform versions running simultaneously on our plugin, and we can see you are using the old platform, which we no longer support.

    To avoid this issue or any other unexpected behaviour, you have to move to our new platform that will provide more features and functionalities to our WordPress Customers.

    To update your calendar solution, you will need to export the data from your current plugin. You can download it by clicking on the Subscribe button on the lower right corner of your calendar, right-clicking to copy the link to another page, and downloading the ICS file to your computer.

    Having exported the ICS File from your Old Calendar solution, please uninstall and delete the old plugin and re-install the New Timely plugin (download it from HERE).

    After updating to the new solution, you can migrate the events from your old calendar to Journey by going to the Journey Dashboard HERE> Import Events > Upload > adding the ICS file.

    Otherwise, Journey has its dedicated dashboard web app for the Free Event Calendar Software (access it from HERE) to add your new events.

    If you have any questions or concerns, let us know.

    @ramon-fincken, I received the same message from the Time.ly support team and also noticed they directed me download the 3.0.1 version of the plugin. As you noted, it is same installed version as reported by folks on this forum.

    I am continuing my testing with the patches identified by @leroyrosale in his 3.0.0 fork and I look forward to an update form the plugin developer..

    vinjoy707

    (@vinjoy707)

    More updates regarding 8.x support. I have found there are a number of patches that need to be made in upstream libraries included in the ai1ec plugin. The included versions of libraries for the ics/ical parsing as well as twig are older and integration of the newer PHP 8.x stable versions is likely quite an endeavor. It may be a while before they are updated in this plugin.

    In addition to the changes originally outlined, the creation of Dynamic Properties has been deprecated in PHP 8.2. See this link for details.
    https://php.watch/versions/8.2/dynamic-properties-deprecated

    To resolve the extensive logging of these notices add #[AllowDynamicProperties] attribute to the class definition, for example:

    #[AllowDynamicProperties]
    class User {
      private int $uid;
    }

    Make the change to include the #[AllowDynamicProperties] the following files:
    lib/http/request.php
    lib/iCal/helper/SG_iCal_Recurrence.php
    lib/scheduling/utility.php
    vendor/lessphp/lessc.inc.php

    mastermynde

    (@mastermynde)

    I am having this same issue, resulting in huge error log files.

    Am I mistaken, or are we witnessing absolutely terrible support from the creators of this plugin? The same issue has been reported repeatedly over the past 12+ months! I recall it causing my server to crash, affecting not just one site, but all sites hosted there. My temporary solution was to freeze the version updates at v3.0.0. However, I’m shocked that, after just another 9 months, there has been no sign of improvement. Many of the support tickets receive pre-edited formal responses, and a significant number are marked as ‘resolved.’ It’s unbelievable…

    PS: I just noticed that even this ticket is marked as ‘resolved’. How can it be @yenmer ???

    • This reply was modified 5 months, 3 weeks ago by janzeman.

    @janzeman, I totally agree that the support is failing long-time users.

    Now that Timely has morphed into a full-blown Event Promotion, Management, and Ticketing company they have no interest in maintaining the plugin as a way to create/edit/manage events in your WordPress environment. In their minds the plugins works flawlessly for the intended usage scenario (i.e. a WP frontend to their hosted platform). If you do a completely fresh install of v3.0.01 no CPTs are added and no new tables are added to your WP database. The plugin dynamically embeds IFRAME’s of the Timely hosted platform for admin such as adding/editing events and on the front end to display the calendars. All data is stored on their servers. The code generating the errors is not used in this scenario so server logs are mostly clear.

    Unfortunately, for long-time users, when we upgrade we end up using the old code that is borking with deprecation notices on any modern hosting platform using PHP 8.x. This old code is both their own source code plus in the open source libraries they have failed to update such as twig, iCalcreator etc.

    I’m not hopeful that anything meaningful will be done – I’m sure they would be much happier if all users migrated to their hosted platform. I don’t blame them for wanting to get ROI on their investment in servers and other infrastructure for their platform. It’s a shame this plugin was good but the value proposition of the new hosted platform does not add up for our usage because to import a single feed requires an upgrade to the $650/yr plan.

    Hi @vinjoy707 ,

    Thank you very much for the detailed expectation. In my case it is just a hobby project so I am not involved that deeply. I wish Timely added at least 10% of your heart into the support of long-time users.

    Best regards
    Jan

    @janzeman, I’m happy to have helped. If your use case involves managing less than 100 events then I would expect that the new hosted platform mode would still be worth a look. The free level of the plugin does require you to have an account and limits the number of events to 100.

    I still like the way their calendar presents to site visitors and the modal event detail overlay is a pleasant UX. YMMV, but I would suggest taking some time (45-60+/- minutes) to export your old events and upload them to your new account. A test drive of the hosted platform is worth the effort.

    While it didn’t work out for our scenario it does work well. Good luck!

    Ed N.

    (@enailor)

    THIS IS NOT RESOLVED

    Running the latest version of this with PHP 8.+ and getting KILLED in the logs.

    The size of the logs are 10,20+ GB PER DAY.

    This has taken down the server by eating up all the disk space. And this is from someone who actually manages their server… someone who uses GoDaddy or some other “unlimited” disk space hosting will quickly find their website taken offline because of “resource abuse”

    For me, moved the PHP back down to 7.4 until this is resolved, but this NEEDS to get fixed or this plugin needs to become deprecated. No developer response (other than email us) is not a good sign.

Viewing 15 replies - 1 through 15 (of 19 total)
  • You must be logged in to reply to this topic.