grav icon indicating copy to clipboard operation
grav copied to clipboard

Request: Alignment of the php module requirements

Open Rotzbua opened this issue 2 years ago • 0 comments

Problem

It seems that the requirements for a "Grav" installation have changed over time and are no longer complete and the same for all sites.

I have so far listed all the jobs below and removed all the identical requirements so there are only the different requirements left.

Requirements

Main Grav repository

composer.json

        "ext-libxml": "*",
  "suggest": {
        "ext-iconv": "Recommended for better performance",
        "ext-zend-opcache": "Recommended for better performance",
        "ext-intl": "Recommended for multi-language sites",
        "ext-memcache": "Needed to support Memcache servers",
        "ext-memcached": "Needed to support Memcached servers",
        "ext-redis": "Needed to support Redis servers",
        "ext-exif": "Needed to use exif data from images."
    },

Grav learn page

https://learn.getgrav.org/17/basics/requirements#php-requirements

    ctype (used by symfony/yaml/Inline)
    gd (a graphics library used to manipulate images)
    session (used by toolbox)
    simplexml (used by grav/admin newsfeed)
    xml (XML support)

Optional Modules

    apcu for increased cache performance
    opcache for increased PHP performance
    yaml PECL Yaml provides native yaml processing and can dramatically increase performance
    xdebug useful for debugging in a development environment

grav-plugin-problems

From Grav-Admin -> Tools - Reports (https://github.com/getgrav/grav-plugin-problems)

ctype - PHP Ctype is successfully installed
gd - PHP GD (Image Manipulation Library) is successfully installed
xml - PHP XML Library is successfully installed

Currently no optional module checks.

Symfony

https://symfony.com/doc/4.4/setup.html#technical-requirements

  • Ctype
  • PCRE
  • Session
  • SimpleXML

Solution

I don't have the whole overview to know which ones should be added and which ones should be removed or are even completely out of date. So I just provide an example for simplexml:

  • Add check to grav-plugin-problems.
  • Add as requirement to composer.json

I hope the information helps. Kind regards.

Rotzbua avatar Aug 08 '22 22:08 Rotzbua