Skip to Content.
Sympa Menu

comanage-dev - [comanage-dev] Doctrine DBAL

Subject: COmanage Developers List

List archive

[comanage-dev] Doctrine DBAL


Chronological Thread 
  • From: Benn Oshrin <>
  • To: COmanage Dev <>
  • Subject: [comanage-dev] Doctrine DBAL
  • Date: Sun, 20 Jan 2019 19:16:05 -0500
  • Ironport-phdr: 9a23:sL1QQBKkFH6S68UoW9mcpTZWNBhigK39O0sv0rFitYgXK/v5rarrMEGX3/hxlliBBdydt6oUzbKO+4nbGkU4qa6bt34DdJEeHzQksu4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1Ov71GonPhMiryuy+4ZLebxlLiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPdeRWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbYUwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0vRz+s87lkRwPpiCcfNj427mfXitBrjKlGpB6tvgFzz5LIbI2QMvd1Y6HTcs4ARWdZQMhfVzFPDICyYYQBAOUOIelWopLhp1YMtxayGRWgCe3txzJOm3T43bc60+MkEQzewQEvAdQOsHLJp9vsL6cSUfq1zKjOzT7eaP5Zwiny6I7OchAmuvyMXLRwcdbPxkk1EQPKkEmQpZL/MzyLy+sNrnGW4ux9Xuysk24qsx99rza1ysovhITFnJwZxk3L+Cljzos4JsW0RFNnbdOnCpdduT2WO5FrTs4hXm1kojs2x7MHtJO9YSME0o4oxwTFZPyCa4WI4gzsVOKWITpgmH1lf7e/hxO18Uim0OH8U9O70E5OriVbiNXMrG4C1xjJ5cmHUPd9+12u2TeL1w/P6uFLO0Y0lazFJJ4l2b48jJwTvlrfHiPumUX2irGZdlk89+S25enreLbrq5GGO4Nqlw3zPb4il8K8DOggNwgBRWmb+eCy1L35+k35Ra1HgeYonanftpDaIt8Wpq+/Aw9JzIkj8RC/ACm60NgGh3UIMk9KeA+fg4jzJ17OOOz4Deu4g1m0jDhrwPXGMafnAprXIXjMjq7tcqtj5E5C0wczydFf54lICrEaPv7/QE7xtNrEDhAnKQy0xfjoCMlj2o8ER22AH7KZPLvXsV+P++0gPfGBZJQQuDbhM/gp//7ugmE9mV8aZaSp24UYaX6hEvRmJEWZembsjs4fHWsQvgo+S+nqh0OaXT5SYXa9Qb486ykmBI66DorPXI6gjKCb0CumHZBae3pKBk2CHHrpb4mEQekDaD6PIs97lDwITKChRJU91RGurAL31qRoLuzS+iYFrJzjz9h15/fSlRE06Dd5CN+S3H+LT2FymWMFXD423KZjoUNj0FeD17Z3g+BGGdBJ+fxGTxo6OIfEw+x/Ed/yWwbBftmTSFahR9WrGSo+Qcw3w98IZEZwANSijhbf3yW0Gb8VkaKEBIAq/q7GwXf+Ott9x27A1Kk7k1YmWtdPNXGhhqNn6wfTAIvJnF+fl6mweqQTwjfB+3qdwmqQp0xYUQhwUbnbUnAFYEvZs8j56l3YQ7CwFLsnLw1MwtOcJ6tOd93plklGS+n5ONrDYmKwmnm/CA6UyuDEUI2/UEIY1SPUB0VMvw0NtSKNMg03AC6urifSASJGFFTzblnq/PUk7n63Uxln4RuNahhL2ryzsjkOheadTbtH1L8CviAJqjNoEUy70s6MTdeMulwyL+1nfdoh7QIfhirivAtnM8nldvg6iw==

By way of an update, I did a quick build with DBAL as part of setting up Registry PE (aka Registry v5) and am pretty happy with it so far. It doesn't actually have a schema format (ie: no equivalent of axmls) but it has everything else (including the ability to diff two database descriptions and generate the SQL required to bring them into sync), so building a (json) schema to convert to DBAL's internal format was actually pretty simple. There was one bug with postgres sequences that was easy to workaround (an excess DROP SEQUENCE statement is generated), and I'll probably submit a PR for it eventually.

It also has enough basic SQL query tools to replace the equivalent ADOdb calls in Match, so we should be able to use it to completely replace ADOdb there, too. These tools will also be useful in transforming data when upgrading to Registry PE.

It doesn't support nearly as many databases as ADOdb, but it does support a superset of the Cake-supported databases, so practically speaking we're covered.

The documentation is really, really terrible. I mean, you'll appreciate just how great the Cake documentation is in comparison. Even the API documentation is terrible. (OK, so the function takes an array $flags and an array $options... what goes in each? No idea.) Fortunately, we won't need it much, and I've already dug up most of the details we'll use.

The Doctrine Project seems to have a better sustainability path than ADOdb. So all in, I think this is the direction unless we run into a blocker. We should probably consider ADOdb to be in "absolute minimal maintenance" standpoint from a project perspective.

I'm trying to get an initial commit of Registry PE pushed soon so everyone can start working on it. Reusing a bunch of Match code has significantly sped up the process. (Sorry, Arlen, I just copied all the UI stuff again. It should be easier to clean up this time, though.)

Thanks,

-Benn-



Archive powered by MHonArc 2.6.19.

Top of Page