Advertencia calculando los diferenciales de metadatos

Hola a todos!!
Estamos versionando de 3.18.0 a 3.20.1, el cálculo de los diferenciales de metadatos: ./guarani esquema_pers exportar
dá: PHP Deprecated: Array and string offset access syntax with curly braces is deprecated in /usr/local/proyectos/guarani/vendor/siu-toba/framework/php/lib/toba_manejador_archivos.php on line 417

estamos ejecutando con PHP 7.4.
¿Podríamos tener algún problema con esto?
Gracias.

Hola

El comando ./guarani esquema_pers exportar se ejecuta antes de realizar el switch, que es código de la versión 3.18.0 compatible con PHP 7.3, por lo que deberían ejecutarlo sobre esa versión de PHP.

Saludos

Sergio:
¿Lo que me estas diciendo es que deberíamos haber ejecutado el exportar antes de actualizar el PHP? Entonces cometimos el error de actualizar los requisitos previos antes.

Hola

Intentá hacer lo siguiente. en el método es_writable de la clase vendor/siu-toba/framework/php/lib/toba_manejador_archivos.php cambia la linea

if ($path{strlen($path)-1} == '/') {

por

if (substr($path, -1) == '/') {

y volvé a intentarlo.

Saludos

Sergio: ya lo resolvimos, pusimos php 7.3, hicimos todo el punto 2 del instructivo y después versionamos a php 7.4 antes de hacer el switch.

Otra consulta, en composer install, nos está tirando.
The “wikimedia/composer-merge-plugin” plugin was skipped because it requires a Plugin API version (“^1.0”) that does not match your Composer installation (“2.0.0”). You may need to run composer update with the “–no-plugins” option.

y también:

Package chrisboulton/php-resque is abandoned, you should avoid using it. Use resque/php-resque instead.
Package container-interop/container-interop is abandoned, you should avoid using it. Use psr/container instead.
Package dapphp/securimage is abandoned, you should avoid using it. No replacement was suggested.
Package guiguiboy/php-cli-progress-bar is abandoned, you should avoid using it. No replacement was suggested.
Package siu-toba/jasper is abandoned, you should avoid using it. No replacement was suggested.

Hola

¿Podrían enviarnos, el resultado de svn info y svn status de la raíz de ese ambiente?

Saludos

svn info
Ruta: .
Working Copy Root Path: /usr/local/proyectos/guarani
URL: https://colab.siu.edu.ar/svn/guarani3/nodos/xxxxxxx/gestion/trunk/3.20.1
Relative URL: ^/nodos/xxxxxx/gestion/trunk/3.20.1
Raíz del repositorio: https://colab.siu.edu.ar/svn/guarani3
UUID del repositorio: e0a68ae1-9d37-43c1-981e-8b60bee60b31
Revisión: 59092
Tipo de nodo: directorio
Agendado: normal
Autor del último cambio: sergio
Revisión del último cambio: 58833
Fecha de último cambio: 2022-03-07 17:53:56 -0300 (lun 07 de mar de 2022)

svn st
? bin/doctrine-dbal
? bin/php-parse
! bin/toba.bat
? personalizacion/logs/conflictos.log
? php/rest/recursos_usuarios.php

Hola Ana, agrego a lo de Sergio:

¿que te devuelve si ejecutas el comando composer diagnose?

Podes probar actualizando a la ultima versión de Composer: composer self-update o composer self-update --2 si tenes Composer 1.

La librería wikimedia/composer-merge-plugin version 2.0.1 soporta ambos Composer 1 y Composer 2, pero la versión de Guaraní 3.20.1 fue testeada con Composer 2.

¿tenes cambios locales en el archivo composer.json o composer.lock?

Referencia: https://bestofphp.com/repo/wikimedia-composer-merge-plugin-php-dependency-management

saludos.
2

Leonel
Tengo instalado:
composer --version
Composer 2.0.9 2021-01-27 16:09:27

composer diagnose
Checking composer.json: WARNING
No license specified, it is recommended to do so. For closed-source software you may use “proprietary” as license.
The version field is present, it is recommended to leave it out if the package is published on Packagist.
Defining autoload.psr-4 with an empty namespace prefix is a bad idea for performance
require.siu/arai-cli : exact version constraints (3.0.0) should be avoided if the package follows semantic versioning
require.siu-arai/documentos-cli : exact version constraints (1.0.3) should be avoided if the package follows semantic versioning
require.league/oauth2-client : exact version constraints (2.6.0) should be avoided if the package follows semantic versioning
require.league/oauth2-google : exact version constraints (3.0.3) should be avoided if the package follows semantic versioning
require.wikimedia/composer-merge-plugin : exact version constraints (2.0.1) should be avoided if the package follows semantic versioning
require.laminas/laminas-escaper : exact version constraints (2.7.0) should be avoided if the package follows semantic versioning
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Composer version: 2.0.9
PHP version: 7.4.28
PHP binary path: /usr/bin/php7.4
OpenSSL version: OpenSSL 1.1.1k 25 Mar 2021
cURL version: 7.74.0 libz 1.2.11 ssl OpenSSL/1.1.1k
zip: extension present, unzip present

No modificamos el composer.json

deberíamos entonces hacer composer require wikimedia/composer-merge-plugin?
Y ejecutar después un composer update?

Gracias.

Hola Ana,

Probé con la versión 2.0.9 de Composer (composer self-update 2.0.9) y me descarga todo bien al ejecutar composer install.

deberíamos entonces hacer composer require wikimedia/composer-merge-plugin? Y ejecutar después un composer update?

No, la librería wikimedia/composer-merge-plugin ya se encuentra incluida en los archivos composer.json y composer.lock:


"wikimedia/composer-merge-plugin": "2.0.1",

Proba lo siguiente, borra la carpeta vendor y volve a ejecutar el comando composer install.

¿tenes librerías personalizadas agregadas en el archivo personalizacion/composer.json?

Revisa la documentación Agregando una librería externa vía Composer, en Gestión es el archivo [b]personalizacion/composer.json.

saludos.
4

No, nunca tocamos el composer.json
Pruebo lo que me decis.

Leonel:
Borré el vendor y volví hacer composer install. el problema de la librería no está más.
Ahora solo queda:

  • Installing siu/rest-hooks (v2.0.4): Cloning 331eee82a4 from cache
    0/77 [>---------------------------] 0% Skipped installation of bin bin/doctrine-dbal for package doctrine/dbal: name conflicts with an existing file
    50/77 [==================>---------] 64% Skipped installation of bin bin/jsonlint for package seld/jsonlint: name conflicts with an existing file
    Skipped installation of bin bin/validate-json for package justinrainbow/json-schema: name conflicts with an existing file
    60/77 [=====================>------] 77% Skipped installation of bin bin/php-parse for package nikic/php-parser: name conflicts with an existing file
    68/77 [========================>—] 88% Skipped installation of bin bin/phinx for package robmorgan/phinx: name conflicts with an existing file
    75/77 [===========================>] 97% Skipped installation of bin bin/toba for package siu-toba/framework: name conflicts with an existing file
    Skipped installation of bin bin/toba_docker for package siu-toba/framework: name conflicts with an existing file
    Package chrisboulton/php-resque is abandoned, you should avoid using it. Use resque/php-resque instead.
    Package container-interop/container-interop is abandoned, you should avoid using it. Use psr/container instead.
    Package dapphp/securimage is abandoned, you should avoid using it. No replacement was suggested.
    Package guiguiboy/php-cli-progress-bar is abandoned, you should avoid using it. No replacement was suggested.
    Package siu-toba/jasper is abandoned, you should avoid using it. No replacement was suggested.

Perfecto Ana, ya quedo solucionado entonces!!!

Quizás el siguiente error te lo daba porque actualizaste de Composer 1 a Composer 2 como comenta este post.

The "wikimedia/composer-merge-plugin" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.

saludos.
2

si, hice eso