Skip to content

2.2.0

Compare
Choose a tag to compare
@edersoares edersoares released this 05 Aug 21:06
b988d66

i-Educar 2.2

A evolução técnica do i-Educar continua na versão 2.2, suporte as novas versões do PHP e Laravel, com uma redução considerável do banco de dados e consequentemente da infraestrutura necessária para rodar a aplicação.

Os grandes marcos desta atualização:

  • Atualização do PHP.
  • Atualização do Laravel.
  • Reestruturação do banco de dados.
  • Limpeza e diminuição do código fonte.

Atualização do PHP

O PHP está na versão 7.3 atualmente com suporte ativo até 06/12/2020, a versão 7.2 terá suporte ativo até 30/11/2019, conforme calendário oficial https://www.php.net/supported-versions.php.

  • Atualiza a versão do PHP para 7.3 #586.

Atualização do Laravel

A versão atual do Laravel é a 5.8. Algumas melhorias foram feitas no framework e existe o guia de atualização oficial https://laravel.com/docs/5.8/upgrade.

  • Atualiza o Laravel para a versão 5.8 #585.

Reestruturação do banco de dados

Foi feita a engenharia reversa do banco de dados do i-Educar no pull request #477 para um maior controle da estrutura e dos dados que são armazenados.

O banco de dados do i-Educar esta dividido em vários schemas os quais muitos não são mais utilizados.

Schemas removidos

  • Remove o schema alimentos #496.
  • Remove o schema consistenciacao #497.
  • Remove o schema conv_functions #498.
  • Remove o schema serieciasc #499.
  • Remove o schema pmiacoes #500.
  • Remove o schema pmidrh #501.
    • Há efeito colateral, ver pull request #501 e issue #502.
  • Remove o schema pmiotopic #503.
  • Remove o schema historico #507.
  • Remove o schema acesso #576.
  • Remove o schema pmicontrolesis #606.
    • Inicialmente o PR #508 mantinha as tabelas tutormenu, menu, submenu_portal e menu_portal.

Schema cadastro

  • Remove tabelas, view e functions do schema cadastro #610.

Schema pmieducar

  • Remove a tabela historico_educar #601.

Schema portal

  • Remove tabelas do schema portal #509.
    • Diversas tabelas foram removidas, ver pull request #509.
  • Remove seeder da tabela portal.acesso #602.
  • Remove tabelas de menus do schema portal #607.
  • Remove tabelas imagem e imagem_tipo #608.
  • Remove tabela intranet_segur_permissao_negada #609.

Schema public

  • Remove a tabela changelog #504.
  • Remove a tabela phinxlog #505.
  • Remove a tabela portal_banner #514
  • Remove extensão pg_stat_statements #515.
  • Limpa o schema public #516.
    • Remove funções e triggers não utilizadas.
    • Remove algumas tabelas desnecessárias.

Seeds

Com o intuito de isolar os dados da estrutura do banco de dados, foi feita a conversão da migrations de inserts em seeds.

  • Converte migrations de insert em seeders #559.
  • Utiliza seeders ao invés de migrations de inserts #567.

Limpeza e diminuição do código fonte

Muitos módulos do i-Educar foram depreciados ou não são utilizados a anos e seu código fonte não foi removido do repositório. Foram abertos pull requests para remover arquivos não referenciados ou com apenas referencias circulares.

Constantes removidas

  • Remove constantes legadas definidas no arquivo ieducar/intranet/includes/bootstrap.php #533.
    • CORE_EXT_CONFIGURATION_ENV
    • DS
    • PROJECT_ROOT
    • APP_ROOT

Alteração de configurações

Move as configurações acessadas pela variável global $coreExt do arquivo .ini para o arquivo config/legacy.php e permite que possam ser acessadas também, pelo helper config().

// Exemplo: pegar o nome do "cliente"
$name = config('legacy.app.entity.name');

Implementação pull request #537.

Remove uso de variável global

As configurações que antes eram acessadas via a variável global $coreExt ou $GLOBALS['coreExt'] foram agora podem ser acessadas através do helper config().

As devidas substituições foram feitas no PR #568.

Arquivos removidos

  • Remove arquivos não referenciados #510.
  • Remove arquivos utilizados em testes antigos #512.
  • Remove ieducar/intranet/includes/bootstrap.php #534 #535.
  • Remove ieducar/vendor/autoload.php #536.
  • Remove a pasta ieducar/configuration #537.
  • Remove classes e testes sobre .ini #537.
  • Remove splashscreen e imagens não utilizadas #544.
  • Remove fontes e imagens não utilizadas #545.
  • Remove arquivos API XML #546.
  • Remove classe clsConfig #547.

Melhorias no código fonte

  • Melhora implementação das classes bases #513.

Para mais detalhes, ver commits.