# Solução para Conflito de Dependências - AWS SDK

## 🔍 Problema Identificado

O servidor está usando PHP 8.2.29, mas o `composer.lock` tem `maennchen/zipstream-php` versão 3.2.0 que requer PHP 8.3.

## ✅ Soluções

### Solução 1: Usar Script Automático (Mais Fácil)

No servidor, execute:

```bash
cd /var/www/gestorstream/backend
bash instalar-aws-sdk.sh
```

Este script tentará várias abordagens automaticamente.

### Solução 2: Ajustar zipstream-php e Instalar AWS SDK

```bash
cd /var/www/gestorstream/backend

# 1. Ajustar zipstream-php para versão compatível com PHP 8.2
composer require maennchen/zipstream-php:^3.1.0 --no-interaction

# 2. Instalar AWS SDK
composer require aws/aws-sdk-php --no-interaction

# 3. Limpar cache
composer dump-autoload
php artisan config:clear
```

### Solução 3: Atualizar Todas as Dependências

```bash
cd /var/www/gestorstream/backend

# 1. Fazer backup do lock file
cp composer.lock composer.lock.backup

# 2. Atualizar zipstream-php com todas as dependências
composer update maennchen/zipstream-php --with-all-dependencies

# 3. Instalar AWS SDK
composer require aws/aws-sdk-php

# 4. Limpar cache
composer dump-autoload
php artisan config:clear
```

### Solução 4: Remover e Reinstalar zipstream-php

```bash
cd /var/www/gestorstream/backend

# 1. Remover zipstream-php
composer remove maennchen/zipstream-php

# 2. Instalar versão compatível
composer require maennchen/zipstream-php:^3.1.0

# 3. Instalar AWS SDK
composer require aws/aws-sdk-php

# 4. Limpar cache
composer dump-autoload
php artisan config:clear
```

## 🔍 Verificar Instalação

Após instalar, verifique:

```bash
# Verificar se AWS SDK está instalado
composer show aws/aws-sdk-php

# Verificar versão do zipstream-php
composer show maennchen/zipstream-php

# Testar diagnóstico
php diagnostico-minio.php
```

## 📝 O que foi Alterado

1. **composer.json**: Ajustado `maennchen/zipstream-php` para `^3.1.0` (compatível com PHP 8.2)
2. **update.sh**: Melhorado para tentar múltiplas abordagens na instalação do AWS SDK
3. **instalar-aws-sdk.sh**: Script criado para instalação automática no servidor

## ⚠️ Importante

- O `composer.json` já foi atualizado no código
- Após fazer push e atualizar via Gitea, o `update.sh` tentará instalar automaticamente
- Se ainda houver conflito, use uma das soluções acima manualmente

## 🚀 Após Instalar

1. Limpe os caches:
   ```bash
   php artisan config:clear
   php artisan cache:clear
   php artisan route:clear
   ```

2. Teste a conexão MinIO:
   - Acesse `/admin/settings` → aba "Integrações"
   - Configure MinIO com os dados da imagem
   - **IMPORTANTE**: Tente marcar "Usar Path Style Endpoint"
   - Clique em "Testar Conexão"

3. Se funcionar, salve a integração

## 🆘 Se Ainda Não Funcionar

Execute o diagnóstico completo:

```bash
cd /var/www/gestorstream/backend
php diagnostico-minio.php
```

E verifique os logs:

```bash
tail -n 50 storage/logs/laravel.log | grep -i "storage\|minio\|s3\|aws"
```

