Hey,
* Symphony
The Symfony Console component, no the Symfony framework.
1) Split the command line interface into a separate
component (WQE-CLI
perhaps) that would not be deployed.
This is easy to do, though will be less convenient for users of those
scripts.
2) Go back to using MediaWiki's DB abstraction for
running queries.
We cannot directly use it without making QueryEngine depend on MediaWiki,
and without losing the ability to run the tests with an in-memory SQLite
database. Luckily we can easily switch back to using the interface
originally written for this task:
https://github.com/wmde/WikibaseDatabase/blob/master/src/QueryInterface/Que…
3) For generating DB tables (aka schema creation), we
create a separate
component
The schema definition code should not be moved into it's own component. It
belongs very close to the code using the schema. So I don't see a sane way
of getting rid of all code that depends on DBAL in a sane way. We could
create our own implementation of this functionality again, though I do not
consider that to be a sane approach. The code in question will not be
executed on the WMF cluster though. And if you want to be really paranoid
about it, you can just delete dbal from the build before it goes onto the
cluster, and be sure it is indeed not executed.
Cheers
--
Jeroen De Dauw -
http://www.bn2vs.com
Software craftsmanship advocate
Evil software architect at Wikimedia Germany
~=[,,_,,]:3