Ficha Técnica: Cambios para Compatibilidad con MariaDB y PostgreSQL en boilerplatesells



Puntos clave

  • Los cambios recientes en el repositorio parecen incluir ajustes para soportar MariaDB y PostgreSQL, pero no se encontraron detalles específicos en los commits públicos.
  • Es probable que se modificara app/Config/Database.php en CodeIgniter 4 para configurar ambas bases de datos.
  • La evidencia sugiere que se añadieron configuraciones para ambos sistemas, pero la falta de información limita la certeza.

Introducción

El repositorio boilerplatesells es un proyecto PHP basado en CodeIgniter 4, y parece que se realizaron cambios para soportar MariaDB y PostgreSQL. Sin embargo, al no encontrar commits específicos, esta ficha se basa en suposiciones razonables sobre cómo se implementaría la compatibilidad en un proyecto similar.

Cambios Probables

  1. Configuración de la Base de Datos: Es probable que se actualizara app/config/database.php para incluir grupos de configuración para MariaDB (usando MySQLi) y PostgreSQL, permitiendo alternar entre ambas bases de datos. Ejemplo de configuración hipotética:
    public $groups = [
        'default' => [
            'DSN' => '',
            'hostname' => 'localhost,
            'username' => '',
            'password' => '',
            'database' => '',
            'DBDriver' => 'MySQLi', // Para MariaDB
            // ... otros parámetros ...
        ],
        'postgres' => [
            'DSN' => '',
            'hostname' => 'localhost',
            'username' => '',
            'password' => '',
            'database' => '',
            'DBDriver' => 'Postgre', // Para PostgreSQL
            // ... otros parámetros ...
        ],
    ];
                
  2. Ajustes en Modelos y Migraciones: Se podrían haber revisado los modelos y migraciones para manejar diferencias en tipos de datos y sintaxis SQL entre ambas bases. Ejemplo de migración compatible:
    $this->forge->addField([
        'id' => [
            'type' => 'INT',
            'constraint' => 11,
            'unsigned' => true,
            'auto_increment' => true,
        ],
        'name' => [
            'type' => 'VARCHAR',
            'constraint' => '255',
        ],
    ]);
                
  3. Pruebas: Es probable que se configuraran entornos de prueba con Docker Compose para simular ambas bases de datos. Ejemplo de docker-compose.yml:
    version: '3'
    services:
      mariadb:
        image: mariadb:latest
        environment:
          MYSQL_ROOT_PASSWORD: root
          MYSQL_DATABASE: boilerplatesells
        ports:
          - "3306:3306"
      postgres:
        image: postgres:latest
        environment:
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: postgres
          POSTGRES_DB: boilerplatesells
        ports:
          - "5432:5432"
                
  4. Documentación: Es posible que se actualizara la documentación para reflejar el soporte para ambas bases de datos.

Notas Finales

Al no encontrar detalles específicos en los commits públicos, esta información es una estimación. Se recomienda revisar el historial de commits o contactar al mantenedor para mayor precisión.

Referencias

Comentarios

Entradas populares