DotNetMigrations is a database migration framework that assists in managing and versioning database changes. It was originally designed as a straight port of the rails functionality located in the Ruby on Rails framework; however, has recently moved into a more open framework thanks to the power of the Managed Extensibility Framework.
I believe DNM already has a decent level of Mono support, however I am now at a point where I hate booting up my Windows VM and need to be able to maintain DNM from OS X. So the whole thing needs to support Mono first class.
Here are a few things I know needs to happen for this:
Convert build script from PowerShell into something that will run equally well on Windows and Mono.
Figure out if/how we can publish updates to the NuGet package from Mono.
Update the TeamCity CI build to use the new build scripts.
Update all applicable unit tests to use an in-memory Sqlite database instead of SQL Server Compact. SQL Server Company specific tests can continue to use it, but it should be possible to run the test suite (minus those tests) under Mono easily. The full test suite should be able to run on the TeamCity server.
I believe DNM already has a decent level of Mono support, however I am now at a point where I hate booting up my Windows VM and need to be able to maintain DNM from OS X. So the whole thing needs to support Mono first class.
Here are a few things I know needs to happen for this: