Loading...
 
Skip to main content

How to upgrade Cypht within Tiki via Composer

Cypht Webmail is included in Tiki.

Tiki periodically gets latest code from https://packagist.org/packages/jason-munro/cypht via Composer. Well, indirectly, because it first goes via composer-tiki-org

After getting Cypht, the following script is ran: https://gitlab.com/tikiwiki/tiki/-/blob/master/lib/core/Tiki/Composer/PatchCypht.php as part of https://gitlab.com/tikiwiki/tiki/-/blob/master/vendor_bundled/composer.json

This page explains how to update. Please note that Cypht depends on https://packagist.org/packages/henrique-borba/php-sieve-manager so we'll as well want something like
Copy to clipboard
"henrique-borba/php-sieve-manager": "^1.0.0",

Trunk/master (future Tiki30)

Tiki trunk gets Cypht master, so we are always testing the latest innovations. Thus, https://gitlab.com/tikiwiki/tiki/-/blob/master/vendor_bundled/composer.json contains
Copy to clipboard
"jason-munro/cypht": "dev-master",

  1. Get latest Tiki code
  2. Run from Tiki root directory to update just Cypht
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev jason-munro/cypht

    Run from Tiki root directory to update all dependencies (use this to commit to upstream)
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev
    • This will modify vendor_bundled/composer.lock and perhaps lib/cypht/site.js and lib/cypht/site.css (these 2 last files are now ignored by Git)
  3. Review changes and commit

29x

Just use same pattern as 27.x
It is not an LTS

27x

Tiki27 is a long term support (supported for 5 years) and bundles Cypht 2.x.y. Thus https://gitlab.com/tikiwiki/tiki/-/blob/27.x/vendor_bundled/composer.json contains the following:
Copy to clipboard
"jason-munro/cypht": "^2.0",

  1. Get latest Tiki code
  2. Run from Tiki root directory to update just Cypht
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev jason-munro/cypht

    Run from Tiki root directory to update all dependencies (use this to commit to upstream)
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev
    • This will modify vendor_bundled/composer.lock and perhaps lib/cypht/site.js and lib/cypht/site.css (these 2 last files are now ignored by Git)
  3. Review changes and commit (along with changes to vendor_bundled/composer.json, if any)

24x

Tiki24 is a long term support (supported for 5 years) and bundles Cypht 1.4.x. Thus https://gitlab.com/tikiwiki/tiki/-/blob/24.x/vendor_bundled/composer.json contains the following:
Copy to clipboard
"jason-munro/cypht": "^1.4",

  1. Get latest Tiki code
  2. Run from Tiki root directory to update just Cypht
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev jason-munro/cypht

    Run from Tiki root directory to update all dependencies (use this to commit to upstream)
    Copy to clipboard
    ./temp/composer.phar update --prefer-dist --working-dir="vendor_bundled" --no-dev
    • This will modify vendor_bundled/composer.lock and perhaps lib/cypht/site.js and lib/cypht/site.css (these 2 last files are now ignored by Git)
  3. Review changes and commit (along with changes to vendor_bundled/composer.json, if any)

21x

[+]
Show PHP error messages