Compare two schemas on Linux
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 38/100
Direção de pesquisa
Read linux/ROADMAP.md and the Structure changes section of linux/docs/adding-drivers.md; compare the existing macOS implementation in features/compare-sync.mdx for context. The issue proposes first deciding whether schema diff belongs in the backlog, then implementing comparison and script generation for Linux. Done means PostgreSQL schemas differing by a column and index produce both differences, and running the generated script on the target makes a subsequent comparison empty.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Problem
The Linux app cannot compare two schemas. linux/ROADMAP.md, Backlog, Ideas lists "schema diff and data sync between connections" as not committed. The macOS app has both (features/compare-sync.mdx).
Checking that staging matches production today means opening Show CREATE TABLE for each table on both connections and reading them side by side.
Proposed solution
- Decide whether schema diff moves from Ideas into the backlog, and record it in
linux/ROADMAP.md. Data sync can stay an idea. - If yes, a first version:
- Compare Schemas between two connections of the same engine, or two schemas on one connection.
- A list of tables, columns, indexes and foreign keys that were added, removed or changed, built from the table definitions the drivers already fetch (
linux/docs/adding-drivers.md, section 7, Structure changes). - Generate Script writes the statements that make the target match, planned by the engine's
DdlDialect, so a change the engine cannot make is refused the same way the structure tab refuses it. - The script opens in an editor tab, previewed and never run on its own, with data loss marked as the structure review marks it.
- Comparing across engines is out of the first version.
Done means: two PostgreSQL schemas that differ by a column and an index show both differences, and the generated script, run on the target, makes the next comparison come back empty.
Alternatives considered
Compare Show CREATE TABLE output by hand, or with a text diff tool on two dumps.
Platform
Linux
Related database type
N/A / General
- Linguagem predominante
- Swift
- Estrelas
- 6.2k
- Forks
- 412
- Merge médio
- 3h 56min
- PRs com merge (30d)
- 669
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de TableProApp/TablePro
-
Linux: Remember Password fails silently when there is no default keyringTalvez já em andamento @datlechin assumiu hoje. Abertabug platform-linux
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
TableProApp/TablePro#4098 ·
Mantenedores costumam responder em até 1 dia
-
bug platform-linux
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 35/100
TableProApp/TablePro#4101 ·
Mantenedores costumam responder em até 1 dia
-
bug platform-linux
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
TableProApp/TablePro#4099 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
enhancement platform-macos
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
TableProApp/TablePro#4071 ·
Mantenedores costumam responder em até 1 dia
-
enhancement platform-macos
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 66/100
TableProApp/TablePro#4070 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de TableProApp/TablePro
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
OneBusAway/vehicle-positions#260 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
eliasstravik/herdr-projects#789 · 1 comentário ·
-
follow-up needs-triage S3: minor
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 85/100
manaflow-ai/cmux#38032 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
arkavo-org/ArkavoKit#70 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
vorssaint/vorssaint-utils#3933 · 1 comentário ·
Mantenedores costumam responder em até 2 dias