I've just been slammed recently. The repo is up on my github at https://github.com/jeffreyabecker/nhibernate-core. The commits are a bit of a stream-of-consciousness mess at the moment.
The core ddl generation rewrite into the DdlOperation framework is in there. Currently I've been playing around with encapsulating that stuff into a Migration class but I'm not sure I'm happy about how that's going. On Friday, August 22, 2014 9:55:02 AM UTC-4, Ricardo Peres wrote: > > Hi, Jeffrey! > > Need help with this? Do you have a public repository? > > RP > > On Sunday, August 3, 2014 5:00:28 PM UTC+1, Jeffrey Becker wrote: >> >> I'm almost done my infrastructure work & unit tests on the DDL generation >> portion of NHibernate needed to support my proposed migrations feature. As >> of now I've got an interface: >> >> public interface IDdlOperation >> { >> IEnumerable<string> GetStatements(NHibernate.Dialect.Dialect dialect); >> } >> >> I've re-implemented the ddl generation in the Mapping namespace as a >> series of implementations of this interface. Each of these classes accepts >> a model which contains the relevant information for building the sql >> statements. As much as possible database object names are passed to these >> classes pre-qualified and pre-quoted. The relevant mapping classes have >> been changed from implementing IRelationalModel to having methods that >> produce one or more relevant IDdlOperation instances. The Configuration >> class was updated to use these methods. >> >> >> While I finish out the unit tests and get it all staged into a coherent >> set of commits for a pull request I'd like some feedback on the following >> topics: >> >> Currently the Configuration/Mapping classes quote and qualify objects >> using the dialect methods which results in dialect specific quoting. I >> this does not present a problem in the existing system because analysis >> always happens at the same time as execution and the target dialect is >> known. In a world with coded migrations a migration could be generated >> against a one dialect and executed against another with incompatible >> quoting. Should these methods be changed to quote and qualify using >> back-tick quoting and the operations be changed to mangle those quotes into >> dialect specific quoting? >> >> Where is the dividing line between NHibernate and non-core Migrations >> features if any? I see this framework eventually containing components such >> as versioning strategies, a fluent migration building DSL, a migration >> execution framework, and a component which generates/executes coded >> migrations within the package manager console. At a minimum that 3rd piece >> needs to be a separate assembly because of its dependency on visual studio. >> How to people feel about the rest? Should I aim to include some / all of >> that within Nhibernate or split it out into a separate assembly? >> >> How do people feel about a fluent DSL for building the coded migrations? >> How do we make this into something which is both expressive enough for >> people to write a migration themselves and flexible enough that they don't >> have to resort to issuing raw sql for everything? >> >> -- --- You received this message because you are subscribed to the Google Groups "nhibernate-development" group. To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-development+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.