1.0.0-next.6 • Published 10 months ago

migrations-lib v1.0.0-next.6

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

migrations-lib

A documentação dessa lib precisa ser revista

Antes fazia parte do new-singularity, mas foi movido para um projeto separado, pois não terá atualizações frequentes e poderá ser usado em outros projetos como o GLSIP

migrations-lib/generateMigrations

O método generateMigrations(folder) fica observando o diretório enviado e gerando um arquivo no mesmo diretório chamado migrations.ts

O método generateMigrations(folder) observa os arquivos que seguem o padrão 000-name.ts ou 1-name.sql, aonde o número pode ser de qualquer tamanho de número de caracteres, mas sempre será ordenado pelo número

migrations-lib/better-sqlite3

Possui o método migrateBetterSQLite3(db, migrations), aonde recebe como argumento as migrações geradas no arquivo migrations.ts, então faz migrações em um banco de dados sqlite usando o better-sqlite3

Utilities para better-sqlite3

Dois métodos simples para reduzir o boilerplate de inserção e update, não são necessários, mas pelo menos reduzem o código para não precisar de um ORM

insertIntoDB Método de inserção inspirado no knex é chamado da seguinte maneira

insertIntoDB(db, 'test', { id: 1, name: 'Test' });

// Retornando um valor
const { id } = insertIntoDB(db, 'test', { id: 1, name: 'Test' }, 'id');

updateDB Método de update inspirado no knex é chamado da seguinte maneira

updateDB(db, 'test', { name: 'Test updated' }, { id: 1 }); // Segundo objeto é where

Características do projeto de migrações

As migrações são sempre para latest sem a possibilidade de down, pois se você fez uma migração errada em produção você está ferrado de qualquer jeito

O ideal é fazer testes automatizados para garantir que as migrações não ferrem tudo, e evitar refatorar as coisas

Roadmap

No futuro, poderemos suportar outros bancos de dados além do sqlite

1.0.0-next.0

10 months ago

1.0.0-next.1

10 months ago

1.0.0-next.2

10 months ago

1.0.0-next.3

10 months ago

1.0.0-next.4

10 months ago

1.0.0-next.5

10 months ago

1.0.0-next.6

10 months ago

0.1.7

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago