Git Product home page Git Product logo

pyway's Introduction

Jason Camp (he/him)

https://jason.camp/

I am a driven and well-informed technology expert with a passion for designing and constructing scalable and efficient infrastructure systems. My primary objective is to collaborate with skilled professionals to produce outstanding products. My track record includes facilitating acquisitions by industry leaders such as Yahoo!, Google (twice), and Gemini. I had the privilege of securing a victory at Techcrunch Disrupt 2015 with my former initiative, Agrilyst/Artemis, which has since evolved into iUNU.

Technical Summary

pyway's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

pyway's Issues

Support for SQLServer

I'm looking to use Pyway with SQLExpress, and other forms of SQLServer, are there any plans for adding support for this, or a reason why it wasn't included in the beginning.

Happy to do the work and submit a PR if desired (Contribution guidelines suggested raising an issue first)

Using dot in major version creates extension bug and fake version in table

Hello,

I'm trying to integrate pyway in a project which needs SQL migration.

I am trying to integrate files with patterns like : V5.0_01__initial_schema.sql
However, the version in pyway schema table gives me : 0.01... I would need it to be 5.0.01 ({major}.{minor}). If I write a dot in major version (ex: V5.0), it seems the extension is not SQL anymore, but the name of the script (in my case : 0_01__INITIAL_SCHEMA)...

Capture d’écran 2023-12-14 à 15 50 49

Could you please look to consider this evolution ?
Thank you 🙂

Remove the obligatory 2 numbers for the minor versions

I'm trying to integrate pyway in an existing project that previously used Flyway.

The sql patchs of this project follows the pattern needed for pyway for the most part except for the minor version: they start at 1 (without a 0 in front) and may exeed 99.

I see here that this minor version is strictly limited to 2 numbers.

Would it be possible to remove this limitation please?

Allow import --schema-file to take a path

Right now you need to specify the specific file, lets let it take a path and we can parse out the filename from the path, makes it easier to run the import command.

Add tests for postgres

We missed an issue with SQL in the postgres factory, because we're not testing against postgres. Work on this.

Support migration from flyway

I got started with flyway (because I used it back in the day in some project and it nicely did it's thing), then realised that it's semi-ideal in a python app. Some searching landed me on pyway.

It would be nice to be greeted in the docs with a "Migrating from flyway to pyway? Do this:" type of thing. Now I am not sure (but pretty sure ;) ) if pyway requires any changes to the sql baseline schema and/or migrations. And for instance the table I have in my schema to track the version it's on, is that okay or does it need work?

thanks in advance!

Use environment variables in .pyway.conf file

Hello,

Is it possible to use environment variables in the .pyway.conf file. I want to do something like:

database_type: postgres
database_username: ${DB_USER}
database_password: ${DB_PASSWORD}
database_host: ${DB_HOST}
database_port: ${DB_PORT}
database_name: ${DB_DBNAME}
database_migration_dir: infra/pyway
database_table: public.pyway

I get the following error : invalid integer value "${ELI_DB_PORT}" for connection option "port"
Is it something supported with another syntax or not supported at all?

Thanks
Julien

Issues with newline differences

When someone converts newlines to windows format for example, it messes up the checksums. Think about how to handle this.

Add ability to update a checksum

Sometimes, especially when developing, you might need to update the checksum due to it changing but your migration was still run and valid against the db. Add a method to update only the checksum even though the migration is already applied. Do not apply it again.

Bug in migration when it's a new deploy

Initial deploy bombs out because validation fails on first run before the database is populated. Added a skip_errors option that will silently pass through validation if set, so we can continue the migration process.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.