Project

General

Profile

Fallo #583

Error fatal al usar emojis en los mensajes commit

Added by Manuel Cillero 7 months ago. Updated 7 months ago.

Status:
En curso
Priority:
Alta
Target version:
Start date:
28/08/2022
Due date:
% Done:

0%

Estimated time:

Description

Al intentar incorporar emojis (aplicando gitmoji) en los mensajes de actualización de los repositorios se produce un error fatal 500 en el sitio.

#1

Updated by Manuel Cillero 7 months ago

  • Subject changed from Error falta al usar emoticonos en los mensajes commit to Error faltal al usar emoticonos en los mensajes commit
  • Status changed from Nueva to En curso
  • Assignee set to Manuel Cillero
  • Priority changed from Normal to Alta
#2

Updated by Manuel Cillero 7 months ago

  • Target version set to 2.0.x
#3

Updated by Manuel Cillero 7 months ago

  • Tracker changed from Fallo to Funcionalidad
  • Subject changed from Error faltal al usar emoticonos en los mensajes commit to Permitir el uso de emoticonos en los mensajes commit

Aunque inicialmente se detecta como un fallo de SuitePro, se incorpora en la planificación como una nueva funcionalidad para dar soporte a emoticonos (caracteres utf8 de 4 bytes).

#4

Updated by Manuel Cillero 7 months ago

En esta incidencia se explica que para dar soporte al uso de emoticonos es necesario configurar MySQL para usar utf8mb4, tanto en la propia base de datos como en las tablas y/o campos afectados.

La versión de Redmine 4.1.x ya da soporte a utf8mb4, sin embargo la base de datos debo actualizarla manualmente:

$ sudo mysql
> ALTER DATABASE suitepro DEFAULT CHARACTER SET utf8mb4;
> show create database suitepro;
+----------+----------------------------------------------------------------------+
| Database | Create Database                                                      |
+----------+----------------------------------------------------------------------+
| suitepro | CREATE DATABASE `suitepro` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
+----------+----------------------------------------------------------------------+
1 row in set (0.000 sec)

Así como la tabla changesets que se encarga de almacenar los mensajes commit de cada repositorio:

> use suitepro;
> ALTER TABLE changesets CONVERT TO CHARACTER SET utf8mb4;
> show create table changesets;
...
changesets | CREATE TABLE `changesets` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `repository_id` int(11) NOT NULL,
  `revision` varchar(255) NOT NULL,
  `committer` varchar(255) DEFAULT NULL,
  `committed_on` datetime NOT NULL,
  `comments` longtext DEFAULT NULL,
  `commit_date` date DEFAULT NULL,
  `scmid` varchar(255) DEFAULT NULL,
  `user_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `changesets_repos_rev` (`repository_id`,`revision`),
  KEY `index_changesets_on_user_id` (`user_id`),
  KEY `index_changesets_on_repository_id` (`repository_id`),
  KEY `index_changesets_on_committed_on` (`committed_on`),
  KEY `changesets_repos_scmid` (`repository_id`,`scmid`)
) ENGINE=InnoDB AUTO_INCREMENT=1482 DEFAULT CHARSET=utf8mb4
...
#5

Updated by Manuel Cillero 7 months ago

Más información sobre cómo migrar MySQL de utf8 a utf8mb4 aquí. En principio no se ha modificado la ordenación (COLLATE = utf8mb4_unicode_ci).

#6

Updated by Manuel Cillero 7 months ago

  • Tracker changed from Funcionalidad to Fallo
  • Subject changed from Permitir el uso de emoticonos en los mensajes commit to Error fatal al usar emoticonos en los mensajes commit

Puesto que la versión de Redmine está preparada adecuadamente para el uso de utf8mb4, se vuelve a considerar esta petición como un fallo de la instalación de SuitePro.

#7

Updated by Manuel Cillero 7 months ago

La extensión Gitmoji para VSCode integra perfectamente el uso de emoticonos siguiendo esta recomendación de registro de mensajes commit.

#8

Updated by Manuel Cillero 7 months ago

  • Subject changed from Error fatal al usar emoticonos en los mensajes commit to Error fatal al usar emojis en los mensajes commit
  • Description updated (diff)

El término correcto es emojis, no emoticonos.

Also available in: Atom PDF