I'm encountering errors in PHP 8.1 with the 'count()' use in some IPF instances. I'll create tickets and see what I can come up with.
Those updates have been applied. Now, in testing on PHP8.1, I've discovered another update is needed - HTMLPurifier. Again. I'm not sure how this was missed. It looks as though I tested it locally and never pushed the proper files to github.
During my final tests, there were some things we needed to address before releasing.
A couple more merge requests - an update to the GA4 plugin because it used a legacy class name and has a fatal error in 2.0. And, a final fix to the image editor so the plugins work now! (crop, resize, and filter were broken when using PHP8+). The changes for the theme selector block have also been approved are are ready to merge.
Once these have been merged, we can package and release 2.0RC!
Yes, that was it. I think that was prior to the all the disagreement over the refactoring of the UI and assets. There is another branch that was based on the 'retro' branch that came out of it. https://github.com/skenow/impresscms/tree/features/installer2.0
Would that be the feature/impresscms_2.0-installer branch?
I still have the work we started to update the installer which was mostly a single page.
Probably because I didn't get further than that page on the mockups. I've been trying to get it to work in an actual installer, and I've gotten as far as the creation of the admin user at the moment. So it's proceeding in the right direction.
It's looking good, David! I wasn't able to get past the DB connection page in the mock-ups, I'm not sure why.
Looking forward to adding this to our upcoming release.
Progress update : the base design is running, and I'm currently implementing the specific changes that are remaining page by page, while testing that the functionality remains. Currently, I'm stuck at the paths page - you can't create a trustpath.
I think this will be ready for test in a few days. PR will be incoming soon.
I am working on mockups for the installer. I'm not ready to rewrite the whole thing, but in the short term I can make sure it looks more up-to-date than the original MrTheme design. I'm still making mockups before I will start updating code, but this is where I'm at at the moment. I have the mockups available at https://beta.impresscms.eu/install2/index.html at the moment. Have a look around and give me your feedback.
Hi,
I think we are ready for a 2.0 RC.
A patch was released for GA-4 for 1.4.4 and 1.3.11, as well as a new release - 1.4.5, specifically for the GA-4 update.
Things in progress -
I've also been looking at the HackerOne reports and working on prioritizing those for upcoming releases.
Small update on this : this patch is released in the 1.4.5 version which, essentially, applies the patch on top of 1.4.4
I started some time ago to recreate a bootstrap 5 theme that looks similar to the venerable iTheme for way past. I'm not there yet, but the homepage is already starting to look acceptable. Have a look at https://www.impresscms.eu/?theme_select=icms-b5
Here's a patch, if anyone wants to implement this and already haven't found a way to do it. I've bundled the files for both v1.3.11 and v1.4.4 into a single file.
There are 2 files to be concerned with - /libraries/icms/view/theme/Object.php and /plugins/preloads/googleanalytics.php. Make a backup of the first and replace with the file from the package for your version. Add the 2nd to the preloads folder.
Without any other changes, you should still be gathering data with the Universal Analytics tag. To us the new GA4 tag, you'll need to create a new property in Google Analytics to get your new tag. When you have it, update the value in your admin control panel of your site - Admin / Preferences / Meta + Footer. When you put in the new tag, include G- with the value. This is how ImpressCMS will know whether to use the UA version or the GA4 version.
PRs to the next release
- HTMLPurifier
- waitingmerged- WideImage -
ready to request PR (without complete image editor fix)PR submitted- Fatal errors in session handler (improper type returned) -
fix known (method updates to return boolean)PR submitted and merged- Fatal errors in Protector IP check (string v. integer) - merged
The Google Analytics update for GA4 is waiting on some minor changes, then it can be merged, too. We may even want to release a patch, since there are only days left before Google automatically changes
Just about. If our goal is for this release to run on PHP8, there are a few things that need to be addressed. If PHP7.4 is acceptable, then we are ready for another RC release.
The PR to update HTMLPurifier to work with PHP8 is waiting for review. Once that is merged, there aren't any fatal errors that I know of (one that I cannot reproduce during install, but occurs for another tester on Windows. We have a fix for that).
There is one thing that does not work on PHP8 - the image editor is the one I am struggling with. It does work on PHP7.4, though. Mozilla's debug console says there is a missing semicolon in the javascript. But, only in PHP8+. So, something is being passed as an argument to the js functions that isn't properly formatted.
I'll fix the few other things I know about and leave the image editor for another time. More testers and eyes on the issue will help.
PRs to the next release
Would this be an appropriate time to release another RC?
I continued to test WideImage and the image editor.
Basis for further testing -
Initially I found that everything worked with the new WideImage library on ICMS 1.4.4 (max PHP is 7.4), but not in ICMS 2.0 with PHP 7.4. As it turns out, it was a preload method that was empty (icms_BootstrapEventHandler::backwardCompatibility). Adding a return value got it working on the 2.0.0RC branch (1.5.x) and PHP 7.4.
End result - all the functions work when using PHP 7.4. Switching to PHP 8.x results in failures when using the editor, whether it's crop, resize, or filter. Now, to figure out the PHP 8 issues.
It may, or may not, be something with the WideImage library. It may, or may not, be something with the image editor library. It may, or may not, be something with the core (the last issue was).
Another colleague has been helping me with this, as he now has some additional discretionary time. Hopefully, we'll figure this out soon.
HTMLPurifier has been updated successfully. Now on to WideImage. Viewing, adding, duplicating, and deleting are all working as expected. Editing (resize, crop, filter) all need some work. I’m not sure if it’s WideImage or the image-editor library.