From 98c68f1f4ea80fbfdeb3934f7ebe713278a9a88f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Tue, 11 May 2021 14:47:59 +0200 Subject: [PATCH 1/5] Integrate atk4/dsql package --- README.md | 85 +- docs-dsql/Makefile | 177 ++ docs-dsql/README.md | 19 + docs-dsql/advanced.rst | 232 +++ docs-dsql/conf.py | 284 +++ docs-dsql/connection.rst | 98 + docs-dsql/expressions.rst | 379 ++++ docs-dsql/extensions.rst | 30 + docs-dsql/images/agiletoolkit.png | Bin 0 -> 385939 bytes docs-dsql/images/smgit_configure_branches.png | Bin 0 -> 5437 bytes docs-dsql/images/smgit_configure_git-flow.png | Bin 0 -> 11013 bytes docs-dsql/images/smgit_file_compare.png | Bin 0 -> 49842 bytes docs-dsql/images/smgit_log.png | Bin 0 -> 63338 bytes docs-dsql/images/smgit_push.png | Bin 0 -> 6549 bytes docs-dsql/index.rst | 31 + docs-dsql/overview.rst | 186 ++ docs-dsql/queries.rst | 906 ++++++++ docs-dsql/quickstart.rst | 225 ++ docs-dsql/requirements.txt | 1 + docs-dsql/results.rst | 21 + docs-dsql/transactions.rst | 55 + src-dsql/Connection.php | 612 ++++++ src-dsql/Exception.php | 12 + src-dsql/ExecuteException.php | 18 + src-dsql/Expression.php | 679 ++++++ src-dsql/Expressionable.php | 10 + src-dsql/Mssql/Connection.php | 13 + src-dsql/Mssql/Expression.php | 14 + src-dsql/Mssql/ExpressionTrait.php | 98 + src-dsql/Mssql/Query.php | 50 + src-dsql/Mysql/Connection.php | 13 + src-dsql/Mysql/Expression.php | 12 + src-dsql/Mysql/Query.php | 21 + src-dsql/Oracle/AbstractQuery.php | 48 + src-dsql/Oracle/Connection.php | 102 + src-dsql/Oracle/Query.php | 75 + src-dsql/Oracle/Version12/Connection.php | 19 + src-dsql/Oracle/Version12/Query.php | 28 + src-dsql/Postgresql/Connection.php | 12 + src-dsql/Postgresql/Query.php | 31 + src-dsql/Query.php | 1416 +++++++++++++ src-dsql/Sqlite/Connection.php | 12 + src-dsql/Sqlite/Query.php | 17 + tests-dsql/ConnectionTest.php | 174 ++ tests-dsql/ExceptionTest.php | 49 + tests-dsql/ExpressionTest.php | 570 ++++++ tests-dsql/QueryTest.php | 1821 +++++++++++++++++ tests-dsql/RandomTest.php | 110 + tests-dsql/WithDb/ConnectionTest.php | 22 + tests-dsql/WithDb/SelectTest.php | 314 +++ tests-dsql/WithDb/TransactionTest.php | 337 +++ 51 files changed, 9434 insertions(+), 4 deletions(-) create mode 100644 docs-dsql/Makefile create mode 100644 docs-dsql/README.md create mode 100644 docs-dsql/advanced.rst create mode 100644 docs-dsql/conf.py create mode 100644 docs-dsql/connection.rst create mode 100644 docs-dsql/expressions.rst create mode 100644 docs-dsql/extensions.rst create mode 100644 docs-dsql/images/agiletoolkit.png create mode 100644 docs-dsql/images/smgit_configure_branches.png create mode 100644 docs-dsql/images/smgit_configure_git-flow.png create mode 100644 docs-dsql/images/smgit_file_compare.png create mode 100644 docs-dsql/images/smgit_log.png create mode 100644 docs-dsql/images/smgit_push.png create mode 100644 docs-dsql/index.rst create mode 100644 docs-dsql/overview.rst create mode 100644 docs-dsql/queries.rst create mode 100644 docs-dsql/quickstart.rst create mode 100644 docs-dsql/requirements.txt create mode 100644 docs-dsql/results.rst create mode 100644 docs-dsql/transactions.rst create mode 100644 src-dsql/Connection.php create mode 100644 src-dsql/Exception.php create mode 100644 src-dsql/ExecuteException.php create mode 100644 src-dsql/Expression.php create mode 100644 src-dsql/Expressionable.php create mode 100644 src-dsql/Mssql/Connection.php create mode 100644 src-dsql/Mssql/Expression.php create mode 100644 src-dsql/Mssql/ExpressionTrait.php create mode 100644 src-dsql/Mssql/Query.php create mode 100644 src-dsql/Mysql/Connection.php create mode 100644 src-dsql/Mysql/Expression.php create mode 100644 src-dsql/Mysql/Query.php create mode 100644 src-dsql/Oracle/AbstractQuery.php create mode 100644 src-dsql/Oracle/Connection.php create mode 100644 src-dsql/Oracle/Query.php create mode 100644 src-dsql/Oracle/Version12/Connection.php create mode 100644 src-dsql/Oracle/Version12/Query.php create mode 100644 src-dsql/Postgresql/Connection.php create mode 100644 src-dsql/Postgresql/Query.php create mode 100644 src-dsql/Query.php create mode 100644 src-dsql/Sqlite/Connection.php create mode 100644 src-dsql/Sqlite/Query.php create mode 100644 tests-dsql/ConnectionTest.php create mode 100644 tests-dsql/ExceptionTest.php create mode 100644 tests-dsql/ExpressionTest.php create mode 100644 tests-dsql/QueryTest.php create mode 100644 tests-dsql/RandomTest.php create mode 100644 tests-dsql/WithDb/ConnectionTest.php create mode 100644 tests-dsql/WithDb/SelectTest.php create mode 100644 tests-dsql/WithDb/TransactionTest.php diff --git a/README.md b/README.md index dafbd0ee7..cbb2ba847 100644 --- a/README.md +++ b/README.md @@ -604,12 +604,89 @@ Now you can explore. Try typing: > $m->action('count')->getOne() ``` -## Agile Core and DSQL +## Agile DSQL -Agile Data relies on [DSQL - Query Builder](https://github.com/atk4/dsql) for SQL persistence and multi-record operations though Actions. Various interfaces and PHP patterns are implemented through [Agile Core](https://github.com/atk4/core). For more information use the following links: +Agile Data relies on DSQL - Query Builder for SQL persistence and multi-record operations though Actions. -- DSQL Documentation: http://dsql.readthedocs.io -- Agile Core Documentation: http://agile-core.readthedocs.io +Hold on! Why yet another query builder? Obviously because existing ones are not good enough. You can write multi-vendor queries in PHP profiting from better security, clean syntax and avoid human errors. + +DSQL tries to do things differently: + +1. Composability. Unlike other libraries, we render queries recursively allowing many levels of sub-selects. +2. Small footprint. We don't duplicate query code for all vendors, instead we use clever templating system. +3. Extensibility. We have 3 different ways to extend DSQL as well as 3rd party vendor driver support. +4. **Any Query** - any query with any complexity can be expressed through DSQL. +5. Almost no dependencies. Use DSQL in any PHP application or framework. +6. NoSQL support. In addition to supporting PDO, DSQL can be extended to deal with SQL-compatible NoSQL servers. + +DSQL Is Simple and Powerful + +``` php +$query = new Atk4\Dsql\Query(); +$query ->table('employees') + ->where('birth_date','1961-05-02') + ->field('count(*)') + ; +echo "Employees born on May 2, 1961: ".$query->getOne(); +``` + +If the basic query is not fun, how about more complex one? + +``` php +// Establish a query looking for a maximum salary +$salary = new Atk4\Dsql\Query(['connection' => $pdo]); + +// Create few expression objects +$e_ms = $salary->expr('max(salary)'); +$e_df = $salary->expr('TimeStampDiff(month, from_date, to_date)'); + +// Configure our basic query +$salary + ->table('salary') + ->field(['emp_no', 'max_salary' => $e_ms, 'months' => $e_df]) + ->group('emp_no') + ->order('-max_salary') + +// Define sub-query for employee "id" with certain birth-date +$employees = $salary->dsql() + ->table('employees') + ->where('birth_date','1961-05-02') + ->field('emp_no') + ; + +// use sub-select to condition salaries +$salary->where('emp_no', $employees); + +// Join with another table for more data +$salary + ->join('employees.emp_id','emp_id') + ->field('employees.first_name'); + + +// finally, fetch result +foreach ($salary as $row) { + echo "Data: ".json_encode($row)."\n"; +} +``` + +This builds and executes a single query that looks like this: + +``` sql +SELECT + `emp_no`, + max(salary) `max_salary`, + TimeStampDiff(month, from_date, to_date) `months` +FROM + `salary` +JOIN + `employees` on `employees`.`emp_id` = `salary`.`emp_id` +WHERE + `salary`.`emp_no` in (select `id` from `employees` where `birth_date` = :a) +GROUP BY `emp_no` +ORDER BY max_salary desc + +:a = "1961-05-02" +``` ## UI for Agile Data diff --git a/docs-dsql/Makefile b/docs-dsql/Makefile new file mode 100644 index 000000000..d60792267 --- /dev/null +++ b/docs-dsql/Makefile @@ -0,0 +1,177 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = build + +# User-friendly check for sphinx-build +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) +endif + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext + +help: + @echo "Please use \`make ' where is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " xml to make Docutils-native XML files" + @echo " pseudoxml to make pseudoxml-XML files for display purposes" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/DSQL.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/DSQL.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/DSQL" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/DSQL" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +latexpdfja: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through platex and dvipdfmx..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." + +xml: + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml + @echo + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." + +pseudoxml: + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml + @echo + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/docs-dsql/README.md b/docs-dsql/README.md new file mode 100644 index 000000000..2e7032e3d --- /dev/null +++ b/docs-dsql/README.md @@ -0,0 +1,19 @@ +How to build this documentation + +``` +sudo apt-get install python-sphinx python-setuptools +sudo easy_install pip + +sudo pip install sphinx_rtd_theme +sudo pip install sphinxcontrib-phpdomain + +make html +``` + +next open `html/index.html` in your browser + +``` +open html/index.html +``` + + diff --git a/docs-dsql/advanced.rst b/docs-dsql/advanced.rst new file mode 100644 index 000000000..d0230d801 --- /dev/null +++ b/docs-dsql/advanced.rst @@ -0,0 +1,232 @@ +=============== +Advanced Topics +=============== + +DSQL has huge capabilities in terms of extending. This chapter explains just +some of the ways how you can extend this already incredibly powerful library. + +Advanced Connections +==================== +:php:class:`Connection` is incredibly lightweight and powerful in DSQL. +The class tries to get out of your way as much as possible. + +Using DSQL without Connection +----------------------------- +You can use :php:class:`Query` and :php:class:`Expression` without connection +at all. Simply create expression:: + + $expr = new Expression('show tables like []', ['foo%']); + +or query:: + + $query = (new Query())->table('user')->where('id', 1); + +When it's time to execute you can specify your PDO manually:: + + $rows = $expr->getRows($pdo); + foreach($rows as $row) { + echo json_encode($row)."\n"; + } + +With queries you might need to select mode first:: + + $stmt = $query->selectMode('delete')->execute($pdo); + +The :php:meth:`Expresssion::execute` is a convenient way to prepare query, +bind all parameters and get `Doctrine\DBAL\Result`, but if you wish to do it manually, +see `Manual Query Execution`_. + + +Using in Existing Framework +--------------------------- +If you use DSQL inside another framework, it's possible that there is already +a PDO object which you can use. In Laravel you can optimize some of your queries +by switching to DSQL:: + + $pdo = DB::connection()->getPdo(); + $c = new Connection(['connection'=>$pdo]); + + $user_ids = $c->dsql()->table('expired_users')->field('user_id'); + $c->dsql()->table('user')->where('id', 'in', $user_ids)->set('active', 0)->update(); + + // Native Laravel Database Query Builder + // $user_ids = DB::table('expired_users')->lists('user_id'); + // DB::table('user')->whereIn('id', $user_ids)->update(['active', 0]); + +The native query builder in the example above populates $user_id with array from +`expired_users` table, then creates second query, which is an update. With +DSQL we have accomplished same thing with a single query and without fetching +results too. + +.. code-block:: sql + + UPDATE + user + SET + active = 0 + WHERE + id in (SELECT user_id from expired_users) + +If you are creating :php:class:`Connection` through constructor, you may have +to explicitly specify property :php:attr:`Connection::query_class`:: + + $c = new Connection(['connection'=>$pdo, 'query_class'=>Atk4\Dsql\Sqlite\Query::class]); + +This is also useful, if you have created your own Query class in a different +namespace and wish to use it. + +.. _extending_query: + +Extending Query Class +===================== + +You can add support for new database vendors by creating your own +:php:class:`Query` class. +Let's say you want to add support for new SQL vendor:: + + class Query_MyVendor extends Atk4\Dsql\Query + { + // truncate is done differently by this vendor + protected $template_truncate = 'delete [from] [table]'; + + // also join is not supported + public function join( + $foreign_table, + $master_field = null, + $join_kind = null, + $_foreign_alias = null + ) { + throw new Atk4\Dsql\Exception("Join is not supported by the database"); + } + } + +Now that our custom query class is complete, we would like to use it by default +on the connection:: + + $c = \Atk4\Dsql\Connection::connect($dsn, $user, $pass, ['query_class'=>'Query_MyVendor']); + +.. _new_vendor: + +Adding new vendor support through extension +------------------------------------------- +If you think that more people can benefit from your custom query class, you can +create a separate add-on with it's own namespace. Let's say you have created +`myname/dsql-myvendor`. + +1. Create your own Query class inside your library. If necessary create your + own Connection class too. +2. Make use of composer and add dependency to DSQL. +3. Add a nice README file explaining all the quirks or extensions. Provide + install instructions. +4. Fork DSQL library. +5. Modify :php:meth:`Connection::connect` to recognize your database identifier + and refer to your namespace. +6. Modify docs/extensions.rst to list name of your database and link to your + repository / composer requirement. +7. Copy phpunit-mysql.xml into phpunit-myvendor.xml and make sure that + dsql/tests/db/* works with your database. + +Finally: + - Submit pull request for only the Connection class and docs/extensions.rst. + + +If you would like that your vendor support be bundled with DSQL, you should +contact copyright@agiletoolkit.org after your external class has been around +and received some traction. + +Adding New Query Modes +---------------------- + +By Default DSQL comes with the following :ref:`query-modes`: + + - select + - delete + - insert + - replace + - update + - truncate + +You can add new mode if you wish. Let's look at how to add a MySQL specific +query "LOAD DATA INFILE": + +1. Define new property inside your :php:class:`Query` class $template_load_data. +2. Add public method allowing to specify necessary parameters. +3. Re-use existing methods/template tags if you can. +4. Create _render method if your tag rendering is complex. + +So to implement our task, you might need a class like this:: + + use \Atk4\Dsql\Exception; + class QueryMysqlCustom extends \Atk4\Dsql\Mysql\Query + { + protected $template_load_data = 'load data local infile [file] into table [table]'; + + public function file($file) + { + if (!is_readable($file)) { + throw Exception(['File is not readable', 'file'=>$file]); + } + $this['file'] = $file; + } + + public function loadData(): array + { + return $this->mode('load_data')->getRows(); + } + } + +Then to use your new statement, you can do:: + + $c->dsql()->file('abc.csv')->loadData(); + +Manual Query Execution +====================== + +If you are not satisfied with :php:meth:`Expression::execute` you can execute +query yourself. + +1. :php:meth:`Expression::render` query, then send it into PDO::prepare(); +2. use new $statement to bindValue with the contents of :php:attr:`Expression::params`; +3. set result fetch mode and parameters; +4. execute() your statement + + + +Exception Class +=============== +DSQL slightly extends and improves :php:class:`Exception` class + +.. php:class:: Exception + +The main goal of the new exception is to be able to accept additional +information in addition to the message. We realize that often $e->getMessage() +will be localized, but if you stick some variables in there, this will no longer +be possible. You also risk injection or expose some sensitive data to the user. + +.. php:method:: __construct($message, $code) + + Create new exception + + :param string|array $message: Describes the problem + :param int $code: Error code + +Usage:: + + throw new Atk4\Dsql\Exception('Hello'); + + throw (new Atk4\Dsql\Exception('File is not readable')) + ->addMoreInfo('file', $file); + +When displayed to the user the exception will hide parameter for $file, but you +still can get it if you really need it: + +.. php:method:: getParams() + + Return additional parameters, that might be helpful to find error. + + :returns: array + +Any DSQL-related code must always throw Atk4\Dsql\Exception. Query-related +errors will generate PDO exceptions. If you use a custom connection and doing +some vendor-specific operations, you may also throw other vendor-specific +exceptions. diff --git a/docs-dsql/conf.py b/docs-dsql/conf.py new file mode 100644 index 000000000..43cc0198b --- /dev/null +++ b/docs-dsql/conf.py @@ -0,0 +1,284 @@ +# -*- coding: utf-8 -*- +# +# DSQL documentation build configuration file, created by +# sphinx-quickstart on Thu Feb 4 16:28:49 2016. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os +import sphinx_rtd_theme + +from sphinx.highlighting import lexers +from pygments.lexers.web import PhpLexer +lexers['php'] = PhpLexer(startinline=True, linenos=1) +lexers['php-annotations'] = PhpLexer(startinline=True, linenos=1) +primary_domain = 'php' + + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.autodoc', + 'sphinx.ext.intersphinx', + 'sphinx.ext.todo', + 'sphinx.ext.coverage', + 'sphinxcontrib.phpdomain' +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'DSQL' +copyright = u'2016, Agile Toolkit' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '1.1' +# The full version, including alpha/beta/rc tags. +#release = '1.0.0' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['_build'] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +highlight_language = 'php' + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'sphinx_rtd_theme' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'DSQLdoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + ('index', 'DSQL.tex', u'DSQL Documentation', + u'Agile Toolkit', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'dsql', u'DSQL Documentation', + [u'Agile Toolkit'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'DSQL', u'DSQL Documentation', + u'Agile Toolkit', 'DSQL', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False + + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'http://docs.python.org/': None} + +from sphinx.highlighting import lexers +from pygments.lexers.web import PhpLexer +lexers['php'] = PhpLexer(startinline=True) +lexers['php-annotations'] = PhpLexer(startinline=True) +primary_domain = "php" # It seems to help sphinx in some kind (don't know why) diff --git a/docs-dsql/connection.rst b/docs-dsql/connection.rst new file mode 100644 index 000000000..7d5c53afe --- /dev/null +++ b/docs-dsql/connection.rst @@ -0,0 +1,98 @@ + +.. _connect: + +========== +Connection +========== + +DSQL supports various database vendors natively but also supports 3rd party +extensions. +For current status on database support see: :ref:`databases`. + + +.. php:class:: Connection + +Connection class is handy to have if you plan on building and executing +queries in your application. It's more appropriate to store +connection in a global variable or global class:: + + $app->db = Atk4\Dsql\Connection::connect($dsn, $user, $pass, $args); + + +.. php:staticmethod:: connect($dsn, $user = null, $password = null, $args = []) + + Determine which Connection class should be used for specified $dsn, + establish connection to DB by creating new object of this connection class and return. + + :param string $dsn: DSN, see http://php.net/manual/en/ref.pdo-mysql.connection.php + :param string $user: username + :param string $password: password + :param array $args: Other default properties for connection class. + :returns: new Connection + + +This should allow you to access this class from anywhere and generate either +new Query or Expression class:: + + $query = $app->db->dsql(); + + // or + + $expr = $app->db->expr('show tables'); + + +.. php:method:: dsql($args) + + Creates new Query class and sets :php:attr:`Query::connection`. + + :param array $args: Other default properties for connection class. + :returns: new Query + +.. php:method:: expr($template, $args) + + Creates new Expression class and sets :php:attr:`Expression::connection`. + + :param string $args: Other default properties for connection class. + :param array $args: Other default properties for connection class. + :returns: new Expression + + +Here is how you can use all of this together:: + + $dsn = 'mysql:host=localhost;port=3307;dbname=testdb'; + + $connection = Atk4\Dsql\Connection::connect($dsn, 'root', 'root'); + + echo "Time now is : ". $connection->expr("select now()"); + +:php:meth:`connect` will determine appropriate class that can be used for this +DSN string. This can be a PDO class or it may try to use a 3rd party connection +class. + +Connection class is also responsible for executing queries. This is only used +if you connect to vendor that does not use PDO. + +.. php:method:: execute(Expression $expr): \Doctrine\DBAL\Result + + Creates new Expression class and sets :php:attr:`Expression::connection`. + + :param Expression $expr: Expression (or query) to execute + :returns: `Doctrine\DBAL\Result` + +.. php:method:: registerConnectionClass($connectionClass = null, $connectionType = null) + + Adds connection class to the registry for resolving in Connection::resolveConnectionClass method. + + :param string $connectionType Alias of the connection + :param string $connectionClass The connection class to be used for the diver type + +Developers can register custom classes to handle driver types using the `Connecion::registerConnectionClass` method:: + + Connection::registerConnectionClass(Custom\MySQL\Connection::class, 'mysql'); // or directly using the class + Custom\MySQL\Connection::registerConnectionClass(); + +.. php:method:: connectDbalConnection(array $dsn) + + The method should establish connection with DB and return the underlying connection object used by + the `Connection` class. By default PDO is used but the method can be overriden to return custom object to be + used for connection to DB. diff --git a/docs-dsql/expressions.rst b/docs-dsql/expressions.rst new file mode 100644 index 000000000..f71246284 --- /dev/null +++ b/docs-dsql/expressions.rst @@ -0,0 +1,379 @@ +.. _expr: + +.. php:class:: Expression + +=========== +Expressions +=========== + +Expression class implements a flexible way for you to define any custom +expression then execute it as-is or as a part of another query or expression. +Expression is supported anywhere in DSQL to allow you to express SQL syntax +properly. + +Quick Example:: + + $query -> where('time', $query->expr( + 'between "[]" and "[]"', + [$from_time, $to_time] + )); + + // Produces: .. where `time` between :a and :b + +Another use of expression is to supply field instead of value and vice versa:: + + $query -> where($query->expr( + '[] between time_from and time_to', + [$time] + )); + + // Produces: where :a between time_from and time_to + +Yet another curious use for the DSQL library is if you have certain object in +your ORM implementing :php:class:`Expressionable` interface. Then you can also +use it within expressions:: + + $query -> where($query->expr( + '[] between [] and []', + [$time, $model->getElement('time_form'), $model->getElement('time_to')] + )); + + // Produces: where :a between `time_from` and `time_to` + +.. todo:: + add more info or more precise example of Expressionable interface usage. + + +Another uses for expressions could be: + + - Sub-Queries + - SQL functions, e.g. IF, CASE + - nested AND / OR clauses + - vendor-specific queries - "describe table" + - non-traditional constructions , UNIONS or SELECT INTO + +Properties, Arguments, Parameters +================================= + +Be careful when using those similar terms as they refer to different things: + + - Properties refer to object properties, e.g. `$expr->template`, + see :ref:`properties` + - Arguments refer to template arguments, e.g. `select * from [table]`, + see :ref:`expression-template` + - Parameters refer to the way of passing user values within a query + `where id=:a` and are further explained below. + +Parameters +---------- + +Because some values are un-safe to use in the query and can contain dangerous +values they are kept outside of the SQL query string and are using +`PDO's bindParam `_ +instead. DSQL can consist of multiple objects and each object may have +some parameters. During `rendering`_ those parameters are joined together to +produce one complete query. + +.. php:attr:: params + + This public property will contain the actual values of all the parameters. + When multiple queries are merged together, their parameters are + `interlinked `_. + + +Creating Expression +=================== + +:: + + use Atk4\Dsql\Expression; + + $expr = new Expression("NOW()"); + +You can also use :php:meth:`expr()` method to create expression, in which case +you do not have to define "use" block:: + + $query -> where('time', '>', $query->expr('NOW()')); + + // Produces: .. where `time` > NOW() + +You can specify some of the expression properties through first argument of the +constructor:: + + $expr = new Expression(["NOW()", 'connection' => $pdo]); + +:ref:`Scroll down ` for full list of properties. + +.. _expression-template: + +Expression Template +=================== + +When you create a template the first argument is the template. It will be stored +in :php:attr:`$template` property. Template string can contain arguments in a +square brackets: + + - ``coalesce([], [])`` is same as ``coalesce([0], [1])`` + - ``coalesce([one], [two])`` + +Arguments can be specified immediately through an array as a second argument +into constructor or you can specify arguments later:: + + $expr = new Expression( + "coalesce([name], [surname])", + ['name' => $name, 'surname' => $surname] + ); + + // is the same as + + $expr = new Expression("coalesce([name], [surname])"); + $expr['name'] = $name; + $expr['surname'] = $surname; + +Nested expressions +================== + +Expressions can be nested several times:: + + $age = new Expression("coalesce([age], [default_age])"); + $age['age'] = new Expression("year(now()) - year(birth_date)"); + $age['default_age'] = 18; + + $query -> table('user') -> field($age, 'calculated_age'); + + // select coalesce(year(now()) - year(birth_date), :a) `calculated_age` from `user` + +When you include one query into another query, it will automatically take care +of all user-defined parameters (such as value `18` above) which will make sure +that SQL injections could not be introduced at any stage. + +Rendering +========= + +An expression can be rendered into a valid SQL code by calling render() method. +The method will return a string, however it will use references for `parameters`_. + +.. php:method:: render() + + Converts :php:class:`Expression` object to a string. Parameters are + replaced with :a, :b, etc. Their original values can be found in + :php:attr:`params`. + + +Executing Expressions +===================== + +If your expression is a valid SQL query, (such as ```show databases```) you +might want to execute it. Expression class offers you various ways to execute +your expression. Before you do, however, you need to have :php:attr:`$connection` +property set. (See `Connecting to Database` on more details). In short the +following code will connect your expression with the database:: + + $expr = new Expression('connection'=>$pdo_dbh); + +If you are looking to use connection :php:class:`Query` class, you may want to +consider using a proper vendor-specific subclass:: + + $query = new \Atk4\Dsql\Mysql\Query('connection'=>$pdo_dbh); + + +If your expression already exist and you wish to associate it with connection +you can simply change the value of :php:attr:`$connection` property:: + + $expr -> connection = $pdo_dbh; + +Finally, you can pass connection class into :php:meth:`execute` directly. + +.. php:method:: execute($connection = null) + + Executes expression using current database connection or the one you + specify as the argument:: + + $stmt = $expr -> execute($pdo_dbh); + + returns `Doctrine\DBAL\Result`. + +.. todo:: + + Complete this when ResultSet and Connection are implemented + + +.. php:method:: expr($properties, $arguments) + + Creates a new :php:class:`Expression` object that will inherit current + :php:attr:`$connection` property. Also if you are creating a + vendor-specific expression/query support, this method must return + instance of your own version of Expression class. + + The main principle here is that the new object must be capable of working + with database connection. + +.. php:method:: getRows() + + Executes expression and return whole result-set in form of array of hashes:: + + $data = new Expression([ + 'connection' => $pdo_dbh, + 'template' => 'show databases' + ])->getRows(); + echo json_encode($data); + + The output would be + + .. code-block:: json + + [ + { "Database": "mydb1" }, + { "Database": "mysql" }, + { "Database": "test" } + ] + + +.. php:method:: getRow() + + Executes expression and returns first row of data from result-set as a hash:: + + $data = new Expression([ + 'connection' => $pdo_dbh, + 'template' => 'SELECT @@global.time_zone, @@session.time_zone' + ])->getRow() + + echo json_encode($data); + + The output would be + + .. code-block:: json + + { "@@global.time_zone": "SYSTEM", "@@session.time_zone": "SYSTEM" } + +.. php:method:: getOne() + + Executes expression and return first value of first row of data from + result-set:: + + $time = new Expression([ + 'connection' => $pdo_dbh, + 'template' => 'now()' + ])->getOne(); + +Magic an Debug Methods +====================== + +.. php:method:: __toString() + + You may use :php:class:`Expression` or :php:class:`Query` as a string. It + will be automatically executed when being cast by executing :php:meth:`getOne`. + Because the `__toString() `_ + is not allowed to throw exceptions we encourage you not to use this format. + +.. php:method:: __debugInfo() + + This method is used to prepare a sensible information about your query + when you are executing ``var_dump($expr)``. The output will be HTML-safe. + +.. php:method:: debug() + + Calling this method will set :php:attr:`debug` into ``true`` and the further + execution to :php:meth:`render` will also attempt to echo query. + +.. php:method:: getDebugQuery() + + Outputs query as a string by placing parameters into their respective + places. The parameters will be escaped, but you should still avoid using + generated query as it can potentially make you vulnerable to SQL injection. + + This method will use HTML formatting if argument is passed. + +In order for HTML parsing to work and to make your debug queries better +formatted, install `sql-formatter`:: + + composer require jdorn/sql-formatter + + +Escaping Methods +================ + +The following methods are useful if you're building your own code for rendering +parts of the query. You must not call them in normal circumstances. + +.. php:method::consume($expression, string $escapeMode = self::ESCAPE_PARAM) + + Makes `$sql_code` part of `$this` expression. Argument may be either a string + (which will be escaped) or another :php:class:`Expression` or :php:class:`Query`. + If specified :php:class:`Query` is in "select" mode, then it's automatically + placed inside brackets:: + + $query->consume('first_name'); // `first_name` + $query->consume($other_query); // will merge parameters and return string + +.. php:method:: escape($value) + + Creates new expression where $value appears escaped. Use this method as a + conventional means of specifying arguments when you think they might have + a nasty back-ticks or commas in the field names. I generally **discourage** + you from using this method. Example use would be:: + + $query->field('foo,bar'); // escapes and adds 2 fields to the query + $query->field($query->escape('foo,bar')); // adds field `foo,bar` to the query + $query->field(['foo,bar']); // adds single field `foo,bar` + + $query->order('foo desc'); // escapes and add `foo` desc to the query + $query->field($query->escape('foo desc')); // adds field `foo desc` to the query + $query->field(['foo desc']); // adds `foo` desc anyway + +.. php:method:: escapeIdentifier($sql_code) + + Always surrounds `$sql code` with back-ticks. + + This escaping method is automatically used for `{...}` expression template tags . + +.. php:method:: escapeIdentifierSoft($sql_code) + + Surrounds `$sql code` with back-ticks. + + This escaping method is automatically used for `{{...}}` expression template tags . + + It will smartly escape table.field type of strings resulting in `table`.`field`. + + Will do nothing if it finds "*", "`" or "(" character in `$sql_code`:: + + $query->escapeIdentifierSoft('first_name'); // `first_name` + $query->escapeIdentifierSoft('first.name'); // `first`.`name` + $query->escapeIdentifierSoft('(2+2)'); // (2+2) + $query->escapeIdentifierSoft('*'); // * + +.. php:method:: escapeParam($value) + + Converts value into parameter and returns reference. Used only during query + rendering. Consider using :php:meth:`consume()` instead, which will also + handle nested expressions properly. + + This escaping method is automatically used for `[...]` expression template tags . + + +.. _properties: + +Other Properties +================ + +.. php:attr:: template + + Template which is used when rendering. + You can set this with either `new Expression("show tables")` + or `new Expression(["show tables"])` + or `new Expression(["template" => "show tables"])`. + +.. php:attr:: connection + + PDO connection object or any other DB connection object. + +.. php:attr:: paramBase + + Normally parameters are named :a, :b, :c. You can specify a different + param base such as :param_00 and it will be automatically increased + into :param_01 etc. + +.. php:attr:: debug + + If true, then next call of :php:meth:`execute` will ``echo`` results + of :php:meth:`getDebugQuery`. diff --git a/docs-dsql/extensions.rst b/docs-dsql/extensions.rst new file mode 100644 index 000000000..95651bc3e --- /dev/null +++ b/docs-dsql/extensions.rst @@ -0,0 +1,30 @@ +.. _databases: + +Vendor support and Extensions +============================= + +=========== ========= ======== ============ +Vendor Support PDO Dependency +=========== ========= ======== ============ +MySQL Full mysql: native, PDO +SQLite Full sqlite: native, PDO +Oracle Untested oci: native, PDO +PostgreSQL Untested pgsql: native, PDO +MSSQL Untested mssql: native, PDO +=========== ========= ======== ============ + +.. note:: + + Most PDO vendors should work out of the box + + +3rd party vendor support +------------------------ + +===================== ========= ========= ============================ +Class Support PDO Dependency +===================== ========= ========= ============================ +Connection_MyVendor Full myvendor: http://github/test/myvendor +===================== ========= ========= ============================ + +See :ref:`new_vendor` for more details on how to add support for your driver. diff --git a/docs-dsql/images/agiletoolkit.png b/docs-dsql/images/agiletoolkit.png new file mode 100644 index 0000000000000000000000000000000000000000..c4d66521072847cf2d7e27e1ae4ff6e109ef646a GIT binary patch literal 385939 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 dyp5V0wT^Y{&44_eFEW1DC49;{^PJ=P-u(6gr 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%0AIvrix1aS5F>-=$F4AgFfq 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�jS3UB(K6+dG#3z?)^c#3G`Zu1v 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 UU!e^@u{_PB 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®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 U*wj4SN&o-=07*qoM6N<$f+*NyXaE2J literal 0 HcmV?d00001 diff --git a/docs-dsql/images/smgit_configure_branches.png b/docs-dsql/images/smgit_configure_branches.png new file mode 100644 index 0000000000000000000000000000000000000000..4c12f51be359e18658e7073ad2aebf0e55ae4083 GIT binary patch literal 5437 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 Z#dNXxSYDA7cTN>gLq+F#`7`VA{{kvFS^EG0 literal 0 HcmV?d00001 diff --git a/docs-dsql/images/smgit_file_compare.png b/docs-dsql/images/smgit_file_compare.png new file mode 100644 index 0000000000000000000000000000000000000000..b5e602f87c56c8b2933b3d32ed18e8e6fb57f9ab GIT binary patch literal 49842 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%0Agq#+TvK)SBjJLQE5pyA@I-O4qSS`f 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 f{~X@||4*Q0cd6tZx!E=d_61As!xn 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 f{~X@||4*Q0cd6tZx!E=d_61As!xn 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 diff --git a/docs-dsql/requirements.txt b/docs-dsql/requirements.txt deleted file mode 100644 index 449e06ca5..000000000 --- a/docs-dsql/requirements.txt +++ /dev/null @@ -1 +0,0 @@ -sphinxcontrib-phpdomain==0.1.4 diff --git a/docs-dsql/advanced.rst b/docs/dsql/advanced.rst similarity index 100% rename from docs-dsql/advanced.rst rename to docs/dsql/advanced.rst diff --git a/docs-dsql/connection.rst b/docs/dsql/connection.rst similarity index 100% rename from docs-dsql/connection.rst rename to docs/dsql/connection.rst diff --git a/docs-dsql/expressions.rst b/docs/dsql/expressions.rst similarity index 100% rename from docs-dsql/expressions.rst rename to docs/dsql/expressions.rst diff --git a/docs-dsql/extensions.rst b/docs/dsql/extensions.rst similarity index 100% rename from docs-dsql/extensions.rst rename to docs/dsql/extensions.rst diff --git a/docs-dsql/index.rst b/docs/dsql/index.rst similarity index 100% rename from docs-dsql/index.rst rename to docs/dsql/index.rst diff --git a/docs-dsql/overview.rst b/docs/dsql/overview.rst similarity index 100% rename from docs-dsql/overview.rst rename to docs/dsql/overview.rst diff --git a/docs-dsql/queries.rst b/docs/dsql/queries.rst similarity index 100% rename from docs-dsql/queries.rst rename to docs/dsql/queries.rst diff --git a/docs-dsql/quickstart.rst b/docs/dsql/quickstart.rst similarity index 100% rename from docs-dsql/quickstart.rst rename to docs/dsql/quickstart.rst diff --git a/docs-dsql/results.rst b/docs/dsql/results.rst similarity index 100% rename from docs-dsql/results.rst rename to docs/dsql/results.rst diff --git a/docs-dsql/transactions.rst b/docs/dsql/transactions.rst similarity index 100% rename from docs-dsql/transactions.rst rename to docs/dsql/transactions.rst

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 literal 0 HcmV?d00001 diff --git a/docs-dsql/index.rst b/docs-dsql/index.rst new file mode 100644 index 000000000..b86df545a --- /dev/null +++ b/docs-dsql/index.rst @@ -0,0 +1,31 @@ +.. DSQL documentation master file, created by + sphinx-quickstart on Thu Feb 4 16:28:49 2016. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to DSQL's documentation! +================================ + +Contents: + +.. toctree:: + :maxdepth: 3 + + overview + quickstart + connection + expressions + queries + results + transactions + advanced + extensions + + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/docs-dsql/overview.rst b/docs-dsql/overview.rst new file mode 100644 index 000000000..9fbb64d8c --- /dev/null +++ b/docs-dsql/overview.rst @@ -0,0 +1,186 @@ +======== +Overview +======== + +DSQL is a dynamic SQL query builder. You can write multi-vendor queries in PHP +profiting from better security, clean syntax and most importantly – sub-query +support. With DSQL you stay in control of when queries are executed and what +data is transmitted. DSQL is easily composable – build one query and use it as +a part of other query. + + +Goals of DSQL +============= + + - simple and concise syntax + - consistently scalable (e.g. 5 levels of sub-queries, 10 with joins and 15 + parameters? no problem) + - "One Query" paradigm + - support for PDO vendors as well as NoSQL databases (with query language + similar to SQL) + - small code footprint (over 50% less than competing frameworks) + - free, licensed under MIT + - no dependencies + - follows design paradigms: + - "`PHP the Agile way `_" + - "`Functional ORM `_" + - "`Open to extend `_" + - "`Vendor Transparency `_" + +DSQL by example +=============== +The simplest way to explain DSQL is by example:: + + $query = new Atk4\Dsql\Query(); + $query ->table('employees') + ->where('birth_date','1961-05-02') + ->field('count(*)') + ; + echo "Employees born on May 2, 1961: ".$query->getOne(); + +The above code will execute the following query: + +.. code-block:: sql + + select count(*) from `salary` where `birth_date` = :a + :a = "1961-05-02" + +DSQL can also execute queries with multiple sub-queries, joins, expressions +grouping, ordering, unions as well as queries on result-set. + + - See :ref:`quickstart` if you would like to start learning DSQL. + - See https://github.com/atk4/dsql-primer for various working + examples of using DSQL with a real data-set. + + +DSQL is Part of Agile Toolkit +============================= +DSQL is a stand-alone and lightweight library with no dependencies and can be +used in any PHP project, big or small. + +.. figure:: images/agiletoolkit.png + :alt: Agile Toolkit Stack + +DSQL is also a part of `Agile Toolkit`_ framework and works best with +`Agile Models`_. Your project may benefit from a higher-level data abstraction +layer, so be sure to look at the rest of the suite. + +.. _Agile Toolkit: http://agiletoolkit.org/ +.. _Agile Models: https://github.com/atk4/models + + +Requirements +============ + +#. PHP 5.5 and above + +.. _installation: + +Installation +============ + +The recommended way to install DSQL is with +`Composer `_. Composer is a dependency management tool +for PHP that allows you to declare the dependencies your project has and it +automatically installs them into your project. + + +.. code-block:: bash + + # Install Composer + curl -sS https://getcomposer.org/installer | php + php composer.phar require atk4/dsql + +You can specify DSQL as a project or module dependency in composer.json: + +.. code-block:: js + + { + "require": { + "atk4/dsql": "*" + } + } + +After installing, you need to require Composer's autoloader in your PHP file:: + + require 'vendor/autoload.php'; + +You can find out more on how to install Composer, configure auto-loading, and +other best-practices for defining dependencies at +`getcomposer.org `_. + + +Getting Started +=============== + +Continue reading :ref:`quickstart` where you will learn about basics of DSQL +and how to use it to it's full potential. + +Contributing +============ + +Guidelines +---------- + +1. DSQL utilizes PSR-1, PSR-2, PSR-4, and PSR-7. +2. DSQL is meant to be lean and fast with very few dependencies. This means + that not every feature request will be accepted. +3. All pull requests must include unit tests to ensure the change works as + expected and to prevent regressions. +4. All pull requests must include relevant documentation or amend the existing + documentation if necessary. + +Review and Approval +------------------- + +1. All code must be submitted through pull requests on GitHub +2. Any of the project managers may Merge your pull request, but it must not be + the same person who initiated the pull request. + + +Running the tests +----------------- + +In order to contribute, you'll need to checkout the source from GitHub and +install DSQL dependencies using Composer: + +.. code-block:: bash + + git clone https://github.com/atk4/dsql.git + cd dsql && curl -s http://getcomposer.org/installer | php && ./composer.phar install --dev + +DSQL is unit tested with PHPUnit. Run the tests using the Makefile: + +.. code-block:: bash + + make tests + +There are also vendor-specific test-scripts which will require you to +set database. To run them: + +.. code-block:: bash + + # All unit tests including SQLite database engine tests + phpunit --config phpunit.xml + + # MySQL database engine tests + phpunit --config phpunit-mysql.xml + +Look inside these the .xml files for further information and connection details. + +Reporting a security vulnerability +================================== + +We want to ensure that DSQL is a secure library for everyone. If you've +discovered a security vulnerability in DSQL, we appreciate your help in +disclosing it to us in a `responsible manner `_. + +Publicly disclosing a vulnerability can put the entire community at risk. If +you've discovered a security concern, please email us at +security@agiletoolkit.org. We'll work with you to make sure that we understand +the scope of the issue, and that we fully address your concern. We consider +correspondence sent to security@agiletoolkit.org our highest priority, and work +to address any issues that arise as quickly as possible. + +After a security vulnerability has been corrected, a security hot-fix release +will be deployed as soon as possible. diff --git a/docs-dsql/queries.rst b/docs-dsql/queries.rst new file mode 100644 index 000000000..c92a6489c --- /dev/null +++ b/docs-dsql/queries.rst @@ -0,0 +1,906 @@ +.. _query: + +.. php:class:: Query + +======= +Queries +======= + +Query class represents your SQL query in-the-making. Once you create object of +the Query class, call some of the methods listed below to modify your query. To +actually execute your query and start retrieving data, see :ref:`fetching-result` +section. + +You should use :ref:`connect` if possible to create your query objects. All +examples below are using `$c->dsql()` method which generates Query linked to +your established database connection. + +Once you have a query object you can execute modifier methods such as +:php:meth:`field()` or :php:meth:`table()` which will change the way how your +query will act. + +Once the query is defined, you can either use it inside another query or +expression or you can execute it in exchange for result set. + +Quick Example:: + + + $query = $c->dsql(); + + $query -> field('name'); + $query -> where('id', 123); + + $name = $query -> getOne(); + + +Method invocation principles +============================ + +Methods of Query are designed to be flexible and concise. Most methods have a +variable number of arguments and some arguments can be skipped:: + + $query -> where('id', 123); + $query -> where('id', '=', 123); // the same + +Most methods will accept :php:class:`Expression` or strings. Strings are +escaped or quoted (depending on type of argument). By using :php:class:`Expression` +you can bypass the escaping. + +There are 2 types of escaping: + + * :php:meth:`Expression::escapeIdentifier()`. Used for field and table names. Surrounds name with *`*. + * :php:meth:`Expression::escapeParam()`. Will convert value into parameter and replace with *:a* + +In the next example $a is escaped but $b is parameterized:: + + $query -> where('a', 'b'); + + // where `a` = "b" + +If you want to switch places and execute *where "b" = `a`*, then you can resort +to Expressions:: + + $query -> where($c->expr('{} = []', ['b', 'a'])); + +Parameters which you specify into Expression will be preserved and linked into +the `$query` properly. + +.. _query-modes: + +Query Modes +=========== + +When you create new Query it always start in "select" mode. You can switch +query to a different mode using :php:meth:`mode`. Normally you shouldn't bother +calling this method and instead use one of the following methods. +They will switch the query mode for you and execute query: + +.. php:method:: select() + + Switch back to "select" mode and execute `select` statement. + + See `Modifying Select Query`_. + +.. php:method:: insert() + + Switch to `insert` mode and execute statement. + + See `Insert and Replace query`_. + +.. php:method:: update() + + Switch to `update` mode and execute statement. + + See `Update Query`_. + +.. php:method:: replace() + + Switch to `replace` mode and execute statement. + + See `Insert and Replace query`_. + +.. php:method:: delete() + + Switch to `delete` mode and execute statement. + + See `Delete Query`_. + +.. php:method:: truncate() + + Switch to `truncate` mode and execute statement. + +If you don't switch the mode, your Query remains in select mode and you can +fetch results from it anytime. + +The pattern of defining arguments for your Query and then executing allow you +to re-use your query efficiently:: + + $data = ['name'=>'John', 'surname'=>'Smith'] + + $query = $c->dsql(); + $query + -> where('id', 123) + -> field('id') + -> table('user') + -> set($data) + ; + + $row = $query->getRow(); + + if ($row) { + $query + ->set('revision', $query->expr('revision + 1')) + ->update() + ; + } else { + $query + ->set('revision', 1) + ->insert(); + } + +The example above will perform a select query first: + + - `select id from user where id=123` + +If a single row can be retrieved, then the update will be performed: + + - `update user set name="John", surname="Smith", revision=revision+1 where id=123` + +Otherwise an insert operation will be performed: + + - `insert into user (name,surname,revision) values ("John", "Smith", 1)` + +Chaining +======== + +Majority of methods return `$this` when called, which makes it pretty +convenient for you to chain calls by using `->fx()` multiple times as +illustrated in last example. + +You can also combine creation of the object with method chaining:: + + $age = $c->dsql()->table('user')->where('id', 123)->field('age')->getOne(); + +Using query as expression +========================= + +You can use query as expression where applicable. The query will get a special +treatment where it will be surrounded in brackets. Here are few examples:: + + $q = $c->dsql() + ->table('employee'); + + $q2 = $c->dsql() + ->field('name') + ->table($q); + + $q->getRows(); + +This query will perform `select name from (select * from employee)`:: + + $q1 = $c->dsql() + ->table('sales') + ->field('date') + ->field('amount', null, 'debit'); + + $q2 = $c->dsql() + ->table('purchases') + ->field('date') + ->field('amount', null, 'credit'); + + $u = $c->dsql("[] union []", [$q1, $q2]); + + $q = $c->dsql() + ->field('date,debit,credit') + ->table($u, 'derrivedTable') + ; + + $q->getRows(); + +This query will perform union between 2 table selects resulting in the following +query: + +.. code-block:: sql + + select `date`,`debit`,`credit` from ( + (select `date`,`amount` `debit` from `sales`) union + (select `date`,`amount` `credit` from `purchases`) + ) `derrivedTable` + +Modifying Select Query +====================== + +Setting Table +------------- + +.. php:method:: table($table, $alias) + + Specify a table to be used in a query. + + :param mixed $table: table such as "employees" + :param mixed $alias: alias of table + :returns: $this + +This method can be invoked using different combinations of arguments. +Follow the principle of specifying the table first, and then optionally provide +an alias. You can specify multiple tables at the same time by using comma or +array (although you won't be able to use the alias there). +Using keys in your array will also specify the aliases. + +Basic Examples:: + + $c->dsql()->table('user'); + // SELECT * from `user` + + $c->dsql()->table('user','u'); + // aliases table with "u" + // SELECT * from `user` `u` + + $c->dsql()->table('user')->table('salary'); + // specify multiple tables. Don't forget to link them by using "where" + // SELECT * from `user`, `salary` + + $c->dsql()->table(['user','salary']); + // identical to previous example + // SELECT * from `user`, `salary` + + $c->dsql()->table(['u'=>'user','s'=>'salary']); + // specify aliases for multiple tables + // SELECT * from `user` `u`, `salary` `s` + +Inside your query table names and aliases will always be surrounded by backticks. +If you want to use a more complex expression, use :php:class:`Expression` as +table:: + + $c->dsql()->table( + $c->expr('(SELECT id FROM user UNION select id from document)'), + 'tbl' + ); + // SELECT * FROM (SELECT id FROM user UNION SELECT id FROM document) `tbl` + +Finally, you can also specify a different query instead of table, by simply +passing another :php:class:`Query` object:: + + $sub_q = $c->dsql(); + $sub_q -> table('employee'); + $sub_q -> where('name', 'John'); + + $q = $c->dsql(); + $q -> field('surname'); + $q -> table($sub_q, 'sub'); + + // SELECT `surname` FROM (SELECT * FROM `employee` WHERE `name` = :a) `sub` + +Method can be executed several times on the same Query object. + +Setting Fields +-------------- + +.. php:method:: field($fields, $alias = null) + + Adds additional field that you would like to query. If never called, will + default to :php:attr:`defaultField`, which normally is `*`. + + This method has several call options. $field can be array of fields and + also can be an :php:class:`Expression` or :php:class:`Query` + + :param string|array|object $fields: Specify list of fields to fetch + :param string $alias: Optionally specify alias of field in resulting query + :returns: $this + +Basic Examples:: + + $query = new Query(); + $query->table('user'); + + $query->field('first_name'); + // SELECT `first_name` from `user` + + $query->field('first_name,last_name'); + // SELECT `first_name`,`last_name` from `user` + + $query->field('employee.first_name') + // SELECT `employee`.`first_name` from `user` + + $query->field('first_name','name') + // SELECT `first_name` `name` from `user` + + $query->field(['name'=>'first_name']) + // SELECT `first_name` `name` from `user` + + $query->field(['name'=>'employee.first_name']); + // SELECT `employee`.`first_name` `name` from `user` + +If the first parameter of field() method contains non-alphanumeric values +such as spaces or brackets, then field() will assume that you're passing an +expression:: + + $query->field('now()'); + + $query->field('now()', 'time_now'); + +You may also pass array as first argument. In such case array keys will be +used as aliases (if they are specified):: + + $query->field(['time_now'=>'now()', 'time_created']); + // SELECT now() `time_now`, `time_created` ... + + $query->field($query->dsql()->table('user')->field('max(age)'), 'max_age'); + // SELECT (SELECT max(age) from user) `max_age` ... + +Method can be executed several times on the same Query object. + +Setting where and having clauses +-------------------------------- + +.. php:method:: where($field, $operation, $value) + + Adds WHERE condition to your query. + + :param mixed $field: field such as "name" + :param mixed $operation: comparison operation such as ">" (optional) + :param mixed $value: value or expression + :returns: $this + +.. php:method:: having($field, $operation, $value) + + Adds HAVING condition to your query. + + :param mixed $field: field such as "name" + :param mixed $operation: comparison operation such as ">" (optional) + :param mixed $value: value or expression + :returns: $this + + +Both methods use identical call interface. They support one, two or three +argument calls. + +Pass string (field name), :php:class:`Expression` or even :php:class:`Query` as +first argument. If you are using string, you may end it with operation, such as +"age>" or "parent_id is not" DSQL will recognize <, >, =, !=, <>, is, is not. + +If you haven't specified parameter as a part of $field, specify it through a +second parameter - $operation. If unspecified, will default to '='. + +Last argument is value. You can specify number, string, array, expression or +even null (specifying null is not the same as omitting this argument). +This argument will always be parameterized unless you pass expression. +If you specify array, all elements will be parametrized individually. + +Starting with the basic examples:: + + $q->where('id', 1); + $q->where('id', '=', 1); // same as above + + $q->where('id>', 1); + $q->where('id', '>', 1); // same as above + + $q->where('id', 'is', null); + $q->where('id', null); // same as above + + $q->where('now()', 1); // will not use backticks + $q->where($c->expr('now()'),1); // same as above + + $q->where('id', [1,2]); // renders as id in (1,2) + +You may call where() multiple times, and conditions are always additive (uses AND). +The easiest way to supply OR condition is to specify multiple conditions +through array:: + + $q->where([['name', 'like', '%john%'], ['surname', 'like', '%john%']]); + // .. WHERE `name` like '%john%' OR `surname` like '%john%' + +You can also mix and match with expressions and strings:: + + $q->where([['name', 'like', '%john%'], 'surname is null']); + // .. WHERE `name` like '%john%' AND `surname` is null + + $q->where([['name', 'like', '%john%'], new Expression('surname is null')]); + // .. WHERE `name` like '%john%' AND surname is null + +There is a more flexible way to use OR arguments: + +.. php:method:: orExpr() + + Returns new Query object with method "where()". When rendered all clauses + are joined with "OR". + +.. php:method:: andExpr() + + Returns new Query object with method "where()". When rendered all clauses + are joined with "OR". + +Here is a sophisticated example:: + + $q = $c->dsql(); + + $q->table('employee')->field('name'); + $q->where('deleted', 0); + $q->where( + $q + ->orExpr() + ->where('a', 1) + ->where('b', 1) + ->where( + $q->andExpr() + ->where('a', 2) + ->where('b', 2) + ) + ); + +The above code will result in the following query: + +.. code-block:: sql + + select + `name` + from + `employee` + where + deleted = 0 and + (`a` = :a or `b` = :b or (`a` = :c and `b` = :d)) + +Technically orExpr() generates a yet another object that is composed +and renders its calls to where() method:: + + $q->having( + $q + ->orExpr() + ->where('a', 1) + ->where('b', 1) + ); + +.. code-block:: sql + + having + (`a` = :a or `b` = :b) + + +Grouping results by field +------------------------- + +.. php:method:: group($field) + + Group by functionality. Simply pass either field name as string or + :class:`Expression` object. + + :param mixed $field: field such as "name" + :returns: $this + +The "group by" clause in SQL query accepts one or several fields. It can also +accept expressions. You can call `group()` with one or several comma-separated +fields as a parameter or you can specify them in array. Additionally you can +mix that with :php:class:`Expression` or :php:class:`Expressionable` objects. + +Few examples:: + + $q->group('gender'); + + $q->group('gender,age'); + + $q->group(['gender', 'age']); + + $q->group('gender')->group('age'); + + $q->group(new Expression('year(date)')); + +Method can be executed several times on the same Query object. + + +Concatenate group of values +--------------------------- + +.. php:method:: groupConcat($field, $separator = ',') + + Quite often when you use `group by` in your queries you also would like to + concatenate group of values. + + :param mixed $field Field name or object + :param string $separator Optional separator to use. It's comma by default + +Different SQL engines have different syntax for doing this. +In MySQL it's group_concat(), in Oracle it's listagg, but in PgSQL it's string_agg. +That's why we have this method which will take care of this. + + $q->groupConcat('phone', ';'); + // group_concat('phone', ';') + +If you need to add more parameters for this method, then you can extend this class +and overwrite this simple method to support expressions like this, for example: + + group_concat('phone' order by 'date' desc seprator ';') + + +Joining with other tables +------------------------- + +.. php:method:: join($foreign_table, $master_field, $join_kind) + + Join results with additional table using "JOIN" statement in your query. + + :param string|array $foreign_table: table to join (may include field and alias) + :param mixed $master_field: main field (and table) to join on or Expression + :param string $join_kind: 'left' (default), 'inner', 'right' etc - which join type to use + :returns: $this + +When joining with a different table, the results will be stacked by the SQL +server so that fields from both tables are available. The first argument can +specify the table to join, but may contain more information:: + + $q->join('address'); // address.id = address_id + // JOIN `address` ON `address`.`id`=`address_id` + + $q->join('address a'); // specifies alias for the table + // JOIN `address` `a` ON `address`.`id`=`address_id` + + $q->join('address.user_id'); // address.user_id = id + // JOIN `address` ON `address`.`user_id`=`id` + +You can also pass array as a first argument, to join multiple tables:: + + $q->table('user u'); + $q->join(['a'=>'address', 'c'=>'credit_card', 'preferences']); + +The above code will join 3 tables using the following query syntax: + +.. code-block:: sql + + join + address as a on a.id = u.address_id + credit_card as c on c.id = u.credit_card_id + preferences on preferences.id = u.preferences_id + +However normally you would have `user_id` field defined in your supplementary +tables so you need a different syntax:: + + $q->table('user u'); + $q->join([ + 'a'=>'address.user_id', + 'c'=>'credit_card.user_id', + 'preferences.user_id' + ]); + +The second argument to join specifies which existing table/field is +used in `on` condition:: + + $q->table('user u'); + $q->join('user boss', 'u.boss_user_id'); + // JOIN `user` `boss` ON `boss`.`id`=`u`.`boss_user_id` + +By default the "on" field is defined as `$table."_id"`, as you have seen in the +previous examples where join was done on "address_id", and "credit_card_id". +If you have specified field explicitly in the foreign field, then the "on" field +is set to "id", like in the example above. + +You can specify both fields like this:: + + $q->table('employees'); + $q->join('salaries.emp_no', 'emp_no'); + +If you only specify field like this, then it will be automatically prefixed with +the name or alias of your main table. If you have specified multiple tables, +this won't work and you'll have to define name of the table explicitly:: + + $q->table('user u'); + $q->join('user boss', 'u.boss_user_id'); + $q->join('user super_boss', 'boss.boss_user_id'); + +The third argument specifies type of join and defaults to "left" join. You can +specify "inner", "straight" or any other join type that your database support. + +Method can be executed several times on the same Query object. + +Joining on expression +````````````````````` + +For a more complex join conditions, you can pass second argument as expression:: + + $q->table('user', 'u'); + $q->join('address a', new Expression('a.name like u.pattern')); + + +Use WITH cursors +---------------- + +.. php:method:: with(Query $cursor, string $alias, ?array $fields = null, bool $recursive = false) + + If you want to add `WITH` cursor statement in your SQL, then use this method. + First parameter defines sub-query to use. Second parameter defines alias of this cursor. + By using third, optional argument you can set aliases for columns in cursor. + And finally forth, optional argument set if cursors will be recursive or not. + + You can add more than one cursor in your query. + + Did you know: you can use these cursors when joining your query to other tables. Just join cursor instead. + +.. php:method:: withRecursive(Query $cursor, string $alias, ?array $fields = null) + + Same as :php:meth:`with()`, but always sets it as recursive. + + Keep in mind that if any of cursors added in your query will be recursive, then all cursors will + be set recursive. That's how SQL want it to be. + + Example:: + + $quotes = $q->table('quotes') + ->field('emp_id') + ->field($q->expr('sum([])', ['total_net'])) + ->group('emp_id'); + $invoices = $q()->table('invoices') + ->field('emp_id') + ->field($q->expr('sum([])', ['total_net'])) + ->group('emp_id'); + $employees = $q + ->with($quotes, 'q', ['emp','quoted']) + ->with($invoices, 'i', ['emp','invoiced']) + ->table('employees') + ->join('q.emp') + ->join('i.emp') + ->field(['name', 'salary', 'q.quoted', 'i.invoiced']); + + This generates SQL below: + +.. code-block:: sql + + with + `q` (`emp`,`quoted`) as (select `emp_id`,sum(`total_net`) from `quotes` group by `emp_id`), + `i` (`emp`,`invoiced`) as (select `emp_id`,sum(`total_net`) from `invoices` group by `emp_id`) + select `name`,`salary`,`q`.`quoted`,`i`.`invoiced` + from `employees` + left join `q` on `q`.`emp` = `employees`.`id` + left join `i` on `i`.`emp` = `employees`.`id` + +Limiting result-set +------------------- + +.. php:method:: limit($cnt, $shift) + + Limit how many rows will be returned. + + :param int $cnt: number of rows to return + :param int $shift: offset, how many rows to skip + :returns: $this + +Use this to limit your :php:class:`Query` result-set:: + + $q->limit(5, 10); + // .. LIMIT 10, 5 + + $q->limit(5); + // .. LIMIT 0, 5 + +Ordering result-set +------------------- + +.. php:method:: order($order, $desc) + + Orders query result-set in ascending or descending order by single or + multiple fields. + + :param string $order: one or more field names, expression etc. + :param int $desc: pass true to sort descending + :returns: $this + +Use this to order your :php:class:`Query` result-set:: + + $q->order('name'); // .. order by name + $q->order('name desc'); // .. order by name desc + $q->order('name desc, id asc') // .. order by name desc, id asc + $q->order('name',true); // .. order by name desc + +Method can be executed several times on the same Query object. + +Insert and Replace query +======================== + +Set value to a field +-------------------- + +.. php:method:: set($field, $value) + + Assigns value to the field during insert. + + :param string $field: name of the field + :param mixed $value: value or expression + :returns: $this + +Example:: + + $q->table('user')->set('name', 'john')->insert(); + // insert into user (name) values (john) + + $q->table('log')->set('date', $q->expr('now()'))->insert(); + // insert into log (date) values (now()) + +Method can be executed several times on the same Query object. + +Set Insert Options +------------------ + +.. php:method:: option($option, $mode = 'select') + +It is possible to add arbitrary options for the query. For example this will fetch unique user birthdays:: + + $q->table('user'); + $q->option('distinct'); + $q->field('birthday'); + $birthdays = $q->getRows(); + +Other posibility is to set options for delete or insert:: + + $q->option('delayed', 'insert'); + + // or + + $q->option('ignore', 'insert'); + +See your SQL capabilities for additional options (low_priority, delayed, high_priority, ignore) + +Update Query +============ + +Set Conditions +-------------- + +Same syntax as for Select Query. + +Set value to a field +-------------------- + +Same syntax as for Insert Query. + +Other settings +-------------- + +Limit and Order are normally not included to avoid side-effects, but you can +modify :php:attr:`$template_update` to include those tags. + + +Delete Query +============ + +Set Conditions +-------------- + +Same syntax as for Select Query. + + +Other settings +-------------- + +Limit and Order are normally not included to avoid side-effects, but you can +modify :php:attr:`$template_update` to include those tags. + + +Dropping attributes +=================== + +If you have called where() several times, there is a way to remove all the +where clauses from the query and start from beginning: + +.. php:method:: reset($tag) + + :param string $tag: part of the query to delete/reset. + +Example:: + + $q + ->table('user') + ->where('name', 'John'); + ->reset('where') + ->where('name', 'Peter'); + + // where name = 'Peter' + + +Other Methods +============= + + +.. php:method:: dsql($properties) + + Use this instead of `new Query()` if you want to automatically bind query + to the same connection as the parent. + +.. php:method:: expr($template, $args) + + Method very similar to :php:method:`Connection::expr` but will return a + corresponding Expression class for this query. + +.. php:method:: exprNow($precision) + + Method will return current_timestamp(precision) sub-query. + +.. php:method:: option($option, $mode) + + Use this to set additional options for particular query mode. + For example:: + + $q + ->table('test') + ->field('name') + ->set('name', 'John') + ->option('calc_found_rows') // for default select mode + ->option('ignore', 'insert') // for insert mode + ; + + $q->select(); // select calc_found_rows `name` from `test` + $q->insert(); // insert ignore into `test` (`name`) values (`name` = 'John') + +.. php:method:: _set_args($what, $alias, $value) + + Internal method which sets value in :php:attr:`Expression::args` array. + It doesn't allow duplicate aliases and throws Exception in such case. + Argument $what can be 'table' or 'field'. + +.. php:method:: caseExpr($operand) + + Returns new Query object with CASE template. + You can pass operand as parameter to create SQL like + CASE WHEN THEN END type of SQL statement. + +.. php:method:: when($when, $then) + + Set WHEN condition and THEN expression for CASE statement. + +.. php:method:: otherwise($else) + + Set ELSE expression for CASE statement. + + Few examples: + + .. code-block:: php + $s = $this->q()->caseExpr() + ->when(['status','New'], 't2.expose_new') + ->when(['status', 'like', '%Used%'], 't2.expose_used') + ->otherwise(null); + + .. code-block:: sql + case when "status" = 'New' then "t2"."expose_new" when "status" like '%Used%' then "t2"."expose_used" else null end + + .. code-block:: php + $s = $this->q()->caseExpr('status') + ->when('New', 't2.expose_new') + ->when('Used', 't2.expose_used') + ->otherwise(null); + + .. code-block:: sql + case "status" when 'New' then "t2"."expose_new" when 'Used' then "t2"."expose_used" else null end + + +Properties +========== + +.. php:attr:: mode + + Query will use one of the predefined "templates". The mode will contain + name of template used. Basically it's array key of $templates property. + See :ref:`Query Modes`. + +.. php:attr:: defaultField + + If no fields are defined, this field is used. + +.. php:attr:: template_select + + Template for SELECT query. See :ref:`Query Modes`. + +.. php:attr:: template_insert + + Template for INSERT query. See :ref:`Query Modes`. + +.. php:attr:: template_replace + + Template for REPLACE query. See :ref:`Query Modes`. + +.. php:attr:: template_update + + Template for UPDATE query. See :ref:`Query Modes`. + +.. php:attr:: template_delete + + Template for DELETE query. See :ref:`Query Modes`. + +.. php:attr:: template_truncate + + Template for TRUNCATE query. See :ref:`Query Modes`. diff --git a/docs-dsql/quickstart.rst b/docs-dsql/quickstart.rst new file mode 100644 index 000000000..6a62543ef --- /dev/null +++ b/docs-dsql/quickstart.rst @@ -0,0 +1,225 @@ +.. _quickstart: + +========== +Quickstart +========== + +When working with DSQL you need to understand the following basic concepts: + + +Basic Concepts +============== + +Expression (see :ref:`expr`) + :php:class:`Expression` object, represents a part of a SQL query. It can + be used to express advanced logic in some part of a query, which + :php:class:`Query` itself might not support or can express a full statement + Never try to look for "raw" queries, instead build expressions and think + about escaping. + +Query (see :ref:`query`) + Object of a :php:class:`Query` class can be used for building and executing + valid SQL statements such as SELECT, INSERT, UPDATE, etc. After creating + :php:class:`Query` object you can call various methods to add "table", + "where", "from" parts of your query. + +Connection + Represents a connection to the database. If you already have a PDO object + you can feed it into :php:class:`Expression` or :php:class:`Query`, but + for your comfort there is a :php:class:`Connection` class with very little + overhead. + +Getting Started +=============== + +We will start by looking at the :php:class:`Query` building, because you do +not need a database to create a query:: + + use Atk4\Dsql\Query; + + $query = new Query(['connection' => $pdo]); + +Once you have a query object, you can add parameters by calling some of it's +methods:: + + $query + ->table('employees') + ->where('birth_date', '1961-05-02') + ->field('count(*)') + ; + +Finally you can get the data:: + + $count = $query->getOne(); + +While DSQL is simple to use for basic queries, it also gives a huge power and +consistency when you are building complex queries. Unlike other query builders +that sometimes rely on "hacks" (such as method whereOr()) and claim to be useful +for "most" database operations, with DSQL, you can use DSQL to build ALL of your +database queries. + +This is hugely beneficial for frameworks and large applications, where +various classes need to interact and inject more clauses/fields/joins into your +SQL query. + +DSQL does not resolve conflicts between similarly named tables, but it gives you +all the options to use aliases. + +The next example might be a bit too complex for you, but still read through and +try to understand what each section does to your base query:: + + // Establish a query looking for a maximum salary + $salary = new Query(['connection'=>$pdo]); + + // Create few expression objects + $e_ms = $salary->expr('max(salary)'); + $e_df = $salary->expr('TimeStampDiff(month, from_date, to_date)'); + + // Configure our basic query + $salary + ->table('salary') + ->field(['emp_no', 'max_salary'=>$e_ms, 'months'=>$e_df]) + ->group('emp_no') + ->order('-max_salary') + + // Define sub-query for employee "id" with certain birth-date + $employees = $salary->dsql() + ->table('employees') + ->where('birth_date', '1961-05-02') + ->field('emp_no') + ; + + // Use sub-select to condition salaries + $salary->where('emp_no', $employees); + + // Join with another table for more data + $salary + ->join('employees.emp_id', 'emp_id') + ->field('employees.first_name'); + + + // Finally, fetch result + foreach ($salary as $row) { + echo "Data: ".json_encode($row)."\n"; + } + +The above query resulting code will look like this: + +.. code-block:: sql + + SELECT + `emp_no`, + max(salary) `max_salary`, + TimeStampDiff(month, from_date, to_date) `months` + FROM + `salary` + JOIN + `employees` on `employees`.`emp_id` = `salary`.`emp_id` + WHERE + `salary`.`emp_no` in (select `id` from `employees` where `birth_date` = :a) + GROUP BY `emp_no` + ORDER BY max_salary desc + + :a = "1961-05-02" + +Using DSQL in higher level ORM libraries and frameworks allows them to focus on +defining the database logic, while DSQL can perform the heavy-lifting of query +building and execution. + +Creating Objects and PDO +======================== +DSQL classes does not need database connection for most of it's work. Once you +create new instance of :ref:`Expression ` or :ref:`Query ` you can +perform operation and finally call :php:meth:`Expression::render()` to get the +final query string:: + + use Atk4\Dsql\Query; + + $q = (new Query())->table('user')->where('id', 1)->field('name'); + $query = $q->render(); + $params = $q->params; + +When used in application you would typically generate queries with the +purpose of executing them, which makes it very useful to create a +:php:class:`Connection` object. The usage changes slightly:: + + $c = Atk4\Dsql\Connection::connect($dsn, $user, $password); + $q = $c->dsql()->table('user')->where('id', 1)->field('name'); + + $name = $q->getOne(); + +You no longer need "use" statement and :php:class:`Connection` class will +automatically do some of the hard work to adopt query building for your +database vendor. +There are more ways to create connection, see `Advanced Connections`_ section. + +The format of the ``$dsn`` is the same as with +`PDO class `_. +If you need to execute query that is not supported by DSQL, you should always +use expressions:: + + $tables = $c -> expr('show tables like []', [$like_str])->getRows(); + +DSQL classes are mindful about your SQL vendor and it's quirks, so when you're +building sub-queries with :php:meth:`Query::dsql`, you can avoid some nasty +problems:: + + $sqlite_c ->dsql()->table('user')->truncate(); + +The above code will work even though SQLite does not support truncate. That's +because DSQL takes care of this. + + +Query Building +============== + +Each Query object represents a query to the database in-the-making. +Calling methods such as :php:meth:`Query::table` or :php:meth:`Query::where` +affect part of the query you're making. At any time you can either execute your +query or use it inside another query. + +:php:class:`Query` supports majority of SQL syntax out of the box. +Some unusual statements can be easily added by customizing template for specific +query and we will look into examples in :ref:`extending_query` + +Query Mode +========== + +When you create a new :php:class:`Query` object, it is going to be a *SELECT* +query by default. If you wish to execute ``update`` operation instead, you +simply call :php:meth:`Query::update`, for delete - :php:meth:`Query::delete` +(etc). For more information see :ref:`query-modes`. +You can actually perform multiple operations:: + + $q = $c->dsql()->table('employee')->where('emp_no', 1234); + $backup_data = $q->getRows(); + $q->delete(); + +A good practice is to re-use the same query object before you branch out and +perform the action:: + + $q = $c->dsql()->table('employee')->where('emp_no', 1234); + + if ($confirmed) { + $q->delete(); + } else { + echo "Are you sure you want to delete ".$q->field('count(*)')." employees?"; + } + + +.. _fething-result: + +Fetching Result +=============== + +When you are selecting data from your database, DSQL will prepare and execute +statement for you. Depending on the connection, there may be some magic +involved, but once the query is executed, you can start streaming your data:: + + foreach ($query->table('employee')->where('dep_no',123) as $employee) { + echo $employee['first_name']."\n"; + } + +When iterating you'll have `Doctrine\DBAL\Result`. Remember that DQSL can support vendors, +`$employee` will always contain associative array representing one row of data. +(See also `Manual Query Execution`_). diff --git a/docs-dsql/requirements.txt b/docs-dsql/requirements.txt new file mode 100644 index 000000000..449e06ca5 --- /dev/null +++ b/docs-dsql/requirements.txt @@ -0,0 +1 @@ +sphinxcontrib-phpdomain==0.1.4 diff --git a/docs-dsql/results.rst b/docs-dsql/results.rst new file mode 100644 index 000000000..504cb4c9a --- /dev/null +++ b/docs-dsql/results.rst @@ -0,0 +1,21 @@ +======= +Results +======= + +When query is executed by :php:class:`Connection` or +`PDO `_, it will return an object that +can stream results back to you. The PDO class execution produces a +`Doctrine\DBAL\Result`_ object which +you can iterate over. + +If you are using a custom connection, you then will also need a custom object +for streaming results. + +The only requirement for such an object is that it has to be a +`Generator `_. +In most cases developers will expect your generator to return sequence +of id=>hash representing a key/value result set. + + +.. todo:: +write more diff --git a/docs-dsql/transactions.rst b/docs-dsql/transactions.rst new file mode 100644 index 000000000..d8031ddcc --- /dev/null +++ b/docs-dsql/transactions.rst @@ -0,0 +1,55 @@ +============ +Transactions +============ + +When you work with the DSQL, you can work with transactions. There are 2 +enhancements to the standard functionality of transactions in DSQL: + +1. You can start nested transactions. + +2. You can use :php:meth:`Connection::atomic()` which has a nicer syntax. + +It is recommended to always use atomic() in your code. + +.. php:class:: Connection + + +.. php:method:: atomic($callback) + + Execute callback within the SQL transaction. If callback encounters an + exception, whole transaction will be automatically rolled back:: + + $c->atomic(function() use($c) { + $c->dsql('user')->set('balance=balance+10')->where('id', 10)->update(); + $c->dsql('user')->set('balance=balance-10')->where('id', 14)->update(); + }); + + atomic() can be nested. + The successful completion of a top-most method will commit everything. + Rollback of a top-most method will roll back everything. + +.. php:method:: beginTransaction + + Start new transaction. If already started, will do nothing but will increase + transaction depth. + +.. php:method:: commit + + Will commit transaction, however if :php:meth:`Connection::beginTransaction` + was executed more than once, will only decrease transaction depth. + +.. php:method:: inTransaction + + Returns true if transaction is currently active. There is no need for you to + ever use this method. + +.. php:method:: rollBack + + Roll-back the transaction, however if :php:meth:`Connection::beginTransaction` + was executed more than once, will only decrease transaction depth. + + + +.. warning:: If you roll-back internal transaction and commit external + transaction, then result might be unpredictable. + Please discuss this https://github.com/atk4/dsql/issues/89 diff --git a/src-dsql/Connection.php b/src-dsql/Connection.php new file mode 100644 index 000000000..14515db1b --- /dev/null +++ b/src-dsql/Connection.php @@ -0,0 +1,612 @@ + connectionClass array for resolving. + * + * @var array + */ + protected static $connectionClassRegistry = [ + 'sqlite' => Sqlite\Connection::class, + 'mysql' => Mysql\Connection::class, + 'pgsql' => Postgresql\Connection::class, + 'oci' => Oracle\Connection::class, + 'sqlsrv' => Mssql\Connection::class, + ]; + + /** + * Specifying $properties to constructors will override default + * property values of this class. + * + * @param array $properties + */ + public function __construct($properties = []) + { + if (!is_array($properties)) { + throw (new Exception('Invalid properties for "new Connection()". Did you mean to call Connection::connect()?')) + ->addMoreInfo('properties', $properties); + } + + $this->setDefaults($properties); + } + + public function __destruct() + { + // needed for DBAL connection to be released immeditelly + if ($this->connection !== null) { + $this->connection->close(); + } + } + + /** + * Normalize DSN connection string. + * + * Returns normalized DSN as array ['dsn', 'user', 'pass', 'driverSchema', 'rest']. + * + * @param array|string $dsn DSN string + * @param string $user Optional username, this takes precedence over dsn string + * @param string $pass Optional password, this takes precedence over dsn string + * + * @return array + */ + public static function normalizeDsn($dsn, $user = null, $pass = null) + { + // Try to dissect DSN into parts + $parts = is_array($dsn) ? $dsn : parse_url($dsn); + + // If parts are usable, convert DSN format + if ($parts !== false && isset($parts['host'], $parts['path'])) { + // DSN is using URL-like format, so we need to convert it + $dsn = $parts['scheme'] . ':host=' . $parts['host'] + . (isset($parts['port']) ? ';port=' . $parts['port'] : '') + . ';dbname=' . substr($parts['path'], 1); + $user = $user ?? ($parts['user'] ?? null); + $pass = $pass ?? ($parts['pass'] ?? null); + } + + // If it's still array, then simply use it + if (is_array($dsn)) { + return $dsn; + } + + // If it's string, then find driver + if (is_string($dsn)) { + if (strpos($dsn, ':') === false) { + throw (new Exception('Your DSN format is invalid. Must be in "driverSchema:host;options" format')) + ->addMoreInfo('dsn', $dsn); + } + [$driverSchema, $rest] = explode(':', $dsn, 2); + $driverSchema = strtolower($driverSchema); + } else { + // currently impossible to be like this, but we don't want ugly exceptions here + $driverSchema = null; + $rest = null; + } + + return ['dsn' => $dsn, 'user' => $user ?: null, 'pass' => $pass ?: null, 'driverSchema' => $driverSchema, 'rest' => $rest]; + } + + /** + * Connect to database and return connection class. + * + * @param string|\PDO|DbalConnection $dsn + * @param string|null $user + * @param string|null $password + * @param array $args + * + * @return Connection + */ + public static function connect($dsn, $user = null, $password = null, $args = []) + { + // If it's already PDO or DbalConnection object, then we simply use it + if ($dsn instanceof \PDO) { + $connectionClass = self::resolveConnectionClass($dsn->getAttribute(\PDO::ATTR_DRIVER_NAME)); + $connectionArg = $connectionClass::connectDbalConnection(['pdo' => $dsn]); + } elseif ($dsn instanceof DbalConnection) { + /** @var \PDO */ + $pdo = self::isComposerDbal2x() + ? $dsn->getWrappedConnection() + : $dsn->getWrappedConnection()->getWrappedConnection(); // @phpstan-ignore-line + $connectionClass = self::resolveConnectionClass($pdo->getAttribute(\PDO::ATTR_DRIVER_NAME)); + $connectionArg = $dsn; + } else { + $dsn = static::normalizeDsn($dsn, $user, $password); + $connectionClass = self::resolveConnectionClass($dsn['driverSchema']); + $connectionArg = $connectionClass::connectDbalConnection($dsn); + } + + return new $connectionClass(array_merge([ + 'connection' => $connectionArg, + ], $args)); + } + + /** + * Adds connection class to the registry for resolving in Connection::resolve method. + * + * Can be used as: + * + * Connection::registerConnection(MySQL\Connection::class, 'mysql'), or + * MySQL\Connection::registerConnectionClass() + * + * CustomDriver\Connection must be descendant of Connection class. + * + * @param string $connectionClass + * @param string $driverSchema + */ + public static function registerConnectionClass($connectionClass = null, $driverSchema = null): void + { + if ($connectionClass === null) { + $connectionClass = static::class; + } + + if ($driverSchema === null) { + /** @var static $c */ + $c = (new \ReflectionClass($connectionClass))->newInstanceWithoutConstructor(); + $driverSchema = $c->getDatabasePlatform()->getName(); + } + + self::$connectionClassRegistry[$driverSchema] = $connectionClass; + } + + /** + * Resolves the connection class to use based on driver type. + */ + public static function resolveConnectionClass(string $driverSchema): string + { + if (!isset(self::$connectionClassRegistry[$driverSchema])) { + throw (new Exception('Driver schema is not registered')) + ->addMoreInfo('driver_schema', $driverSchema); + } + + return self::$connectionClassRegistry[$driverSchema]; + } + + final public static function isComposerDbal2x(): bool + { + return !class_exists(DbalResult::class); + } + + /** + * Establishes connection based on a $dsn. + * + * @return DbalConnection + */ + protected static function connectDbalConnection(array $dsn) + { + if (isset($dsn['pdo'])) { + $pdo = $dsn['pdo']; + } else { + $pdo = new \PDO($dsn['dsn'], $dsn['user'], $dsn['pass']); + } + + // Doctrine DBAL 3.x does not support to create DBAL Connection with already + // instanced PDO, so create it without PDO first, see: + // https://github.com/doctrine/dbal/blob/v2.10.1/lib/Doctrine/DBAL/DriverManager.php#L179 + // https://github.com/doctrine/dbal/blob/3.0.0/src/DriverManager.php#L142 + // TODO probably drop support later + if (self::isComposerDbal2x()) { + $dbalConnection = DriverManager::getConnection([ + 'pdo' => $pdo, + ]); + } else { + $pdoConnection = (new \ReflectionClass(\Doctrine\DBAL\Driver\PDO\Connection::class)) + ->newInstanceWithoutConstructor(); + $pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); + \Closure::bind(function () use ($pdoConnection, $pdo): void { + $pdoConnection->connection = $pdo; + }, null, \Doctrine\DBAL\Driver\PDO\Connection::class)(); + $dbalConnection = DriverManager::getConnection([ + 'driver' => 'pdo_' . $pdo->getAttribute(\PDO::ATTR_DRIVER_NAME), + ]); + \Closure::bind(function () use ($dbalConnection, $pdoConnection): void { + $dbalConnection->_conn = $pdoConnection; + }, null, \Doctrine\DBAL\Connection::class)(); + } + + // DBAL 3.x removed some old platforms, to support instanceof reliably, + // make sure that DBAL 2.x platform is always supported in DBAL 3.x, see: + // https://github.com/doctrine/dbal/pull/3912 + // TODO drop once DBAL 2.x support is dropped + if ( + in_array(get_class($dbalConnection->getDatabasePlatform()), [ // @phpstan-ignore-line + 'Doctrine\DBAL\Platforms\SQLServerPlatform', + 'Doctrine\DBAL\Platforms\SQLServer2005Platform', + 'Doctrine\DBAL\Platforms\SQLServer2008Platform', + ], true) && !($dbalConnection->getDatabasePlatform() instanceof SQLServer2012Platform) + ) { + \Closure::bind(function () use ($dbalConnection) { + $dbalConnection->platform = new SQLServer2012Platform(); + }, null, DbalConnection::class)(); + } elseif ( + in_array(get_class($dbalConnection->getDatabasePlatform()), [ // @phpstan-ignore-line + 'Doctrine\DBAL\Platforms\PostgreSqlPlatform', + 'Doctrine\DBAL\Platforms\PostgreSQL91Platform', + 'Doctrine\DBAL\Platforms\PostgreSQL92Platform', + ], true) && !($dbalConnection->getDatabasePlatform() instanceof PostgreSQL94Platform) + ) { + \Closure::bind(function () use ($dbalConnection) { + $dbalConnection->platform = new PostgreSQL94Platform(); + }, null, DbalConnection::class)(); + } + + // SQL Server DBAL platform has buggy identifier escaping, fix until fixed officially, see: + // https://github.com/doctrine/dbal/pull/4360 + if ($dbalConnection->getDatabasePlatform() instanceof SQLServer2012Platform) { + \Closure::bind(function () use ($dbalConnection) { + $dbalConnection->platform = new class() extends SQLServer2012Platform { + protected function getCreateColumnCommentSQL($tableName, $columnName, $comment) + { + if (strpos($tableName, '.') !== false) { + [$schemaName, $tableName] = explode('.', $tableName, 2); + } else { + $schemaName = $this->getDefaultSchemaName(); + } + + return $this->getAddExtendedPropertySQL( + 'MS_Description', + (string) $comment, + 'SCHEMA', + $schemaName, + 'TABLE', + $tableName, + 'COLUMN', + $columnName + ); + } + + protected function getAlterColumnCommentSQL($tableName, $columnName, $comment) + { + if (strpos($tableName, '.') !== false) { + [$schemaName, $tableName] = explode('.', $tableName, 2); + } else { + $schemaName = $this->getDefaultSchemaName(); + } + + return $this->getUpdateExtendedPropertySQL( + 'MS_Description', + (string) $comment, + 'SCHEMA', + $schemaName, + 'TABLE', + $tableName, + 'COLUMN', + $columnName + ); + } + + protected function getDropColumnCommentSQL($tableName, $columnName) + { + if (strpos($tableName, '.') !== false) { + [$schemaName, $tableName] = explode('.', $tableName, 2); + } else { + $schemaName = $this->getDefaultSchemaName(); + } + + return $this->getDropExtendedPropertySQL( + 'MS_Description', + 'SCHEMA', + $schemaName, + 'TABLE', + $tableName, + 'COLUMN', + $columnName + ); + } + + private function quoteSingleIdentifierAsStringLiteral(string $levelName): string + { + return $this->quoteStringLiteral(preg_replace('~^\[|\]$~s', '', $levelName)); + } + + public function getAddExtendedPropertySQL( + $name, + $value = null, + $level0Type = null, + $level0Name = null, + $level1Type = null, + $level1Name = null, + $level2Type = null, + $level2Name = null + ) { + return 'EXEC sp_addextendedproperty' + . ' N' . $this->quoteStringLiteral($name) . ', N' . $this->quoteStringLiteral((string) $value) + . ', N' . $this->quoteStringLiteral((string) $level0Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level0Name) + . ', N' . $this->quoteStringLiteral((string) $level1Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level1Name) + . ( + $level2Type !== null || $level2Name !== null + ? ', N' . $this->quoteStringLiteral((string) $level2Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level2Name) + : '' + ); + } + + public function getDropExtendedPropertySQL( + $name, + $level0Type = null, + $level0Name = null, + $level1Type = null, + $level1Name = null, + $level2Type = null, + $level2Name = null + ) { + return 'EXEC sp_dropextendedproperty' + . ' N' . $this->quoteStringLiteral($name) + . ', N' . $this->quoteStringLiteral((string) $level0Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level0Name) + . ', N' . $this->quoteStringLiteral((string) $level1Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level1Name) + . ( + $level2Type !== null || $level2Name !== null + ? ', N' . $this->quoteStringLiteral((string) $level2Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level2Name) + : '' + ); + } + + public function getUpdateExtendedPropertySQL( + $name, + $value = null, + $level0Type = null, + $level0Name = null, + $level1Type = null, + $level1Name = null, + $level2Type = null, + $level2Name = null + ) { + return 'EXEC sp_updateextendedproperty' + . ' N' . $this->quoteStringLiteral($name) . ', N' . $this->quoteStringLiteral((string) $value) + . ', N' . $this->quoteStringLiteral((string) $level0Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level0Name) + . ', N' . $this->quoteStringLiteral((string) $level1Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level1Name) + . ( + $level2Type !== null || $level2Name !== null + ? ', N' . $this->quoteStringLiteral((string) $level2Type) + . ', ' . $this->quoteSingleIdentifierAsStringLiteral((string) $level2Name) + : '' + ); + } + + protected function getCommentOnTableSQL(string $tableName, ?string $comment): string + { + if (strpos($tableName, '.') !== false) { + [$schemaName, $tableName] = explode('.', $tableName, 2); + } else { + $schemaName = $this->getDefaultSchemaName(); + } + + return $this->getAddExtendedPropertySQL( + 'MS_Description', + (string) $comment, + 'SCHEMA', + $schemaName, + 'TABLE', + $tableName + ); + } + }; + }, null, DbalConnection::class)(); + } + + // Oracle CLOB/BLOB has limited SQL support, see: + // https://stackoverflow.com/questions/12980038/ora-00932-inconsistent-datatypes-expected-got-clob#12980560 + // fix this Oracle inconsistency by using VARCHAR/VARBINARY instead (but limited to 4000 bytes) + if ($dbalConnection->getDatabasePlatform() instanceof OraclePlatform) { + \Closure::bind(function () use ($dbalConnection) { + $dbalConnection->platform = new class() extends OraclePlatform { + private function forwardTypeDeclarationSQL(string $targetMethodName, array $column): string + { + $backtrace = debug_backtrace(\DEBUG_BACKTRACE_PROVIDE_OBJECT | \DEBUG_BACKTRACE_IGNORE_ARGS); + foreach ($backtrace as $frame) { + if ($this === ($frame['object'] ?? null) + && $targetMethodName === ($frame['function'] ?? null)) { + throw new Exception('Long CLOB/TEXT (4000+ bytes) is not supported for Oracle'); + } + } + + return $this->{$targetMethodName}($column); + } + + public function getClobTypeDeclarationSQL(array $column) + { + $column['length'] = $this->getVarcharMaxLength(); + + return $this->forwardTypeDeclarationSQL('getVarcharTypeDeclarationSQL', $column); + } + + public function getBlobTypeDeclarationSQL(array $column) + { + $column['length'] = $this->getBinaryMaxLength(); + + return $this->forwardTypeDeclarationSQL('getBinaryTypeDeclarationSQL', $column); + } + }; + }, null, DbalConnection::class)(); + } + + return $dbalConnection; + } + + /** + * Returns new Query object with connection already set. + * + * @param string|array $properties + */ + public function dsql($properties = []): Query + { + $c = $this->query_class; + $q = new $c($properties); + $q->connection = $this; + + return $q; + } + + /** + * Returns Expression object with connection already set. + * + * @param string|array $properties + * @param array $arguments + */ + public function expr($properties = [], $arguments = null): Expression + { + $c = $this->expression_class; + $e = new $c($properties, $arguments); + $e->connection = $this; + + return $e; + } + + /** + * @return DbalConnection + */ + public function connection() + { + return $this->connection; + } + + /** + * Execute Expression by using this connection. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function execute(Expression $expr): object + { + if ($this->connection === null) { + throw new Exception('Queries cannot be executed through this connection'); + } + + return $expr->execute($this->connection); + } + + /** + * Atomic executes operations within one begin/end transaction, so if + * the code inside callback will fail, then all of the transaction + * will be also rolled back. + * + * @param mixed ...$args + * + * @return mixed + */ + public function atomic(\Closure $fx, ...$args) + { + $this->beginTransaction(); + try { + $res = $fx(...$args); + $this->commit(); + + return $res; + } catch (\Exception $e) { + $this->rollBack(); + + throw $e; + } + } + + /** + * Starts new transaction. + * + * Database driver supports statements for starting and committing + * transactions. Unfortunately most of them don't allow to nest + * transactions and commit gradually. + * With this method you have some implementation of nested transactions. + * + * When you call it for the first time it will begin transaction. If you + * call it more times, it will do nothing but will increase depth counter. + * You will need to call commit() for each execution of beginTransactions() + * and only the last commit will perform actual commit in database. + * + * So, if you have been working with the database and got un-handled + * exception in the middle of your code, everything will be rolled back. + */ + public function beginTransaction(): void + { + try { + $this->connection->beginTransaction(); + } catch (\Doctrine\DBAL\ConnectionException $e) { + throw new Exception('Begin transaction failed', 0, $e); + } + } + + /** + * Will return true if currently running inside a transaction. + * This is useful if you are logging anything into a database. If you are + * inside a transaction, don't log or it may be rolled back. + * Perhaps use a hook for this? + */ + public function inTransaction(): bool + { + return $this->connection->isTransactionActive(); + } + + /** + * Commits transaction. + * + * Each occurrence of beginTransaction() must be matched with commit(). + * Only when same amount of commits are executed, the actual commit will be + * issued to the database. + */ + public function commit(): void + { + try { + $this->connection->commit(); + } catch (\Doctrine\DBAL\ConnectionException $e) { + throw new Exception('Commit failed', 0, $e); + } + } + + /** + * Rollbacks queries since beginTransaction and resets transaction depth. + */ + public function rollBack(): void + { + try { + $this->connection->rollBack(); + } catch (\Doctrine\DBAL\ConnectionException $e) { + throw new Exception('Rollback failed', 0, $e); + } + } + + /** + * Return last inserted ID value. + * + * Drivers like PostgreSQL need to receive sequence name to get ID because PDO doesn't support this method. + */ + public function lastInsertId(string $sequence = null): string + { + return $this->connection()->lastInsertId($sequence); + } + + public function getDatabasePlatform(): AbstractPlatform + { + return $this->connection->getDatabasePlatform(); + } +} diff --git a/src-dsql/Exception.php b/src-dsql/Exception.php new file mode 100644 index 000000000..0febda416 --- /dev/null +++ b/src-dsql/Exception.php @@ -0,0 +1,12 @@ +getParams()['error']; + } + + public function getDebugQuery(): string + { + return $this->getParams()['query']; + } +} diff --git a/src-dsql/Expression.php b/src-dsql/Expression.php new file mode 100644 index 000000000..4c15f23c0 --- /dev/null +++ b/src-dsql/Expression.php @@ -0,0 +1,679 @@ + + */ +class Expression implements Expressionable, \ArrayAccess +{ + /** @const string "[]" in template, escape as parameter */ + protected const ESCAPE_PARAM = 'param'; + /** @const string "{}" in template, escape as identifier */ + protected const ESCAPE_IDENTIFIER = 'identifier'; + /** @const string "{{}}" in template, escape as identifier, but keep input with special characters like "." or "(" unescaped */ + protected const ESCAPE_IDENTIFIER_SOFT = 'identifier-soft'; + /** @const string keep input as is */ + protected const ESCAPE_NONE = 'none'; + + /** @var string */ + protected $template; + + /** + * Configuration accumulated by calling methods such as Query::field(), Query::table(), etc. + * + * $args['custom'] is used to store hash of custom template replacements. + * + * This property is made public to ease customization and make it accessible + * from Connection class for example. + * + * @var array + */ + public $args = ['custom' => []]; + + /** + * As per PDO, escapeParam() will convert value into :a, :b, :c .. :aa .. etc. + * + * @var string + */ + protected $paramBase = 'a'; + + /** + * Identifier (table, column, ...) escaping symbol. By SQL Standard it's double + * quote, but MySQL uses backtick. + * + * @var string + */ + protected $escape_char = '"'; + + /** @var string|null used for linking */ + private $_paramBase; + + /** @var array Populated with actual values by escapeParam() */ + public $params = []; + + /** @var Connection|null */ + public $connection; + + /** @var bool Wrap the expression in parentheses when consumed by another expression or not. */ + public $wrapInParentheses = false; + + /** + * Specifying options to constructors will override default + * attribute values of this class. + * + * If $properties is passed as string, then it's treated as template. + * + * @param string|array $properties + * @param array $arguments + */ + public function __construct($properties = [], $arguments = null) + { + // save template + if (is_string($properties)) { + $properties = ['template' => $properties]; + } elseif (!is_array($properties)) { + throw (new Exception('Incorrect use of Expression constructor')) + ->addMoreInfo('properties', $properties) + ->addMoreInfo('arguments', $arguments); + } + + // supports passing template as property value without key 'template' + if (isset($properties[0])) { + $properties['template'] = $properties[0]; + unset($properties[0]); + } + + // save arguments + if ($arguments !== null) { + if (!is_array($arguments)) { + throw (new Exception('Expression arguments must be an array')) + ->addMoreInfo('properties', $properties) + ->addMoreInfo('arguments', $arguments); + } + $this->args['custom'] = $arguments; + } + + // deal with remaining properties + foreach ($properties as $key => $val) { + $this->{$key} = $val; + } + } + + /** + * @deprecated will be removed in v2.5 + */ + public function __toString() + { + 'trigger_error'('Method is deprecated. Use $this->getOne() instead', \E_USER_DEPRECATED); + + return $this->getOne(); + } + + /** + * @return $this + */ + public function getDsqlExpression(self $expression): self + { + return $this; + } + + /** + * Whether or not an offset exists. + * + * @param int|string $offset + */ + public function offsetExists($offset): bool + { + return array_key_exists($offset, $this->args['custom']); + } + + /** + * Returns the value at specified offset. + * + * @param int|string $offset + * + * @return mixed + */ + public function offsetGet($offset) + { + return $this->args['custom'][$offset]; + } + + /** + * Assigns a value to the specified offset. + * + * @param int|string|null $offset + * @param mixed $value The value to set + */ + public function offsetSet($offset, $value): void + { + if ($offset === null) { + $this->args['custom'][] = $value; + } else { + $this->args['custom'][$offset] = $value; + } + } + + /** + * Unsets an offset. + * + * @param int|string $offset + */ + public function offsetUnset($offset): void + { + unset($this->args['custom'][$offset]); + } + + /** + * Use this instead of "new Expression()" if you want to automatically bind + * new expression to the same connection as the parent. + * + * @param string|array $properties + * @param array $arguments + * + * @return Expression + */ + public function expr($properties = [], $arguments = null) + { + if ($this->connection !== null) { + // TODO - condition above always satisfied when connection is set - adjust tests, + // so connection is always set and remove the code below + return $this->connection->expr($properties, $arguments); + } + + // make a smart guess :) when connection is not set + if ($this instanceof Query) { + $e = new self($properties, $arguments); + } else { + $e = new static($properties, $arguments); + } + + $e->escape_char = $this->escape_char; + + return $e; + } + + /** + * Resets arguments. + * + * @return $this + */ + public function reset(string $tag = null) + { + // unset all arguments + if ($tag === null) { + $this->args = ['custom' => []]; + + return $this; + } + + // unset custom/argument or argument if such exists + if ($this->offsetExists($tag)) { + $this->offsetUnset($tag); + } elseif (isset($this->args[$tag])) { + unset($this->args[$tag]); + } + + return $this; + } + + /** + * Recursively renders sub-query or expression, combining parameters. + * + * @param mixed $expression Expression + * @param string $escapeMode Fall-back escaping mode - using one of the Expression::ESCAPE_* constants + * + * @return string Quoted expression + */ + protected function consume($expression, string $escapeMode = self::ESCAPE_PARAM) + { + if (!is_object($expression)) { + switch ($escapeMode) { + case self::ESCAPE_PARAM: + return $this->escapeParam($expression); + case self::ESCAPE_IDENTIFIER: + return $this->escapeIdentifier($expression); + case self::ESCAPE_IDENTIFIER_SOFT: + return $this->escapeIdentifierSoft($expression); + case self::ESCAPE_NONE: + return $expression; + } + + throw (new Exception('$escapeMode value is incorrect')) + ->addMoreInfo('escapeMode', $escapeMode); + } + + if ($expression instanceof Expressionable) { + $expression = $expression->getDsqlExpression($this); + } + + if (!$expression instanceof self) { + throw (new Exception('Only Expressionable object type may be used in Expression')) + ->addMoreInfo('object', $expression); + } + + // at this point $sql_code is instance of Expression + $expression->params = $this->params; + $expression->_paramBase = $this->_paramBase; + try { + $ret = $expression->render(); + $this->params = $expression->params; + $this->_paramBase = $expression->_paramBase; + } finally { + $expression->params = []; + $expression->_paramBase = null; + } + + // Wrap in parentheses if expression requires so + if ($expression->wrapInParentheses === true) { + $ret = '(' . $ret . ')'; + } + + return $ret; + } + + /** + * Creates new expression where $value appears escaped. Use this + * method as a conventional means of specifying arguments when you + * think they might have a nasty back-ticks or commas in the field + * names. + * + * @param string $value + * + * @return Expression + */ + public function escape($value) + { + return $this->expr('{}', [$value]); + } + + /** + * Converts value into parameter and returns reference. Use only during + * query rendering. Consider using `consume()` instead, which will + * also handle nested expressions properly. + * + * @param string|int|float $value + * + * @return string Name of parameter + */ + protected function escapeParam($value): string + { + $name = ':' . $this->_paramBase; + ++$this->_paramBase; + $this->params[$name] = $value; + + return $name; + } + + /** + * Escapes argument by adding backticks around it. + * This will allow you to use reserved SQL words as table or field + * names such as "table" as well as other characters that SQL + * permits in the identifiers (e.g. spaces or equation signs). + */ + protected function escapeIdentifier(string $value): string + { + // in all other cases we should escape + $c = $this->escape_char; + + return $c . str_replace($c, $c . $c, $value) . $c; + } + + /** + * Soft-escaping SQL identifier. This method will attempt to put + * escaping char around the identifier, however will not do so if you + * are using special characters like ".", "(" or escaping char. + * + * It will smartly escape table.field type of strings resulting + * in "table"."field". + */ + protected function escapeIdentifierSoft(string $value): string + { + // in some cases we should not escape + if ($this->isUnescapablePattern($value)) { + return $value; + } + + if (strpos($value, '.') !== false) { + return implode('.', array_map(__METHOD__, explode('.', $value))); + } + + return $this->escape_char . trim($value) . $this->escape_char; + } + + /** + * Given the string parameter, it will detect some "deal-breaker" for our + * soft escaping, such as "*" or "(". + * Those will typically indicate that expression is passed and shouldn't + * be escaped. + * + * @param self|string $value + */ + protected function isUnescapablePattern($value): bool + { + return is_object($value) + || $value === '*' + || strpos($value, '(') !== false + || strpos($value, $this->escape_char) !== false; + } + + /** + * Render expression and return it as string. + */ + public function render(): string + { + $hadUnderscoreParamBase = $this->_paramBase !== null; + if (!$hadUnderscoreParamBase) { + $hadUnderscoreParamBase = false; + $this->_paramBase = $this->paramBase; + } + + if ($this->template === null) { + throw new Exception('Template is not defined for Expression'); + } + + $nameless_count = 0; + + // - [xxx] = param + // - {xxx} = escape + // - {{xxx}} = escapeSoft + $res = preg_replace_callback( + <<<'EOF' + ~ + '(?:[^'\\]+|\\.|'')*'\K + |"(?:[^"\\]+|\\.|"")*"\K + |`(?:[^`\\]+|\\.|``)*`\K + |\[\w*\] + |\{\w*\} + |\{\{\w*\}\} + ~xs + EOF, + function ($matches) use (&$nameless_count) { + if ($matches[0] === '') { + return ''; + } + + $identifier = substr($matches[0], 1, -1); + + $escaping = null; + if (substr($matches[0], 0, 1) === '[') { + $escaping = self::ESCAPE_PARAM; + } elseif (substr($matches[0], 0, 1) === '{') { + if (substr($matches[0], 1, 1) === '{') { + $escaping = self::ESCAPE_IDENTIFIER_SOFT; + $identifier = substr($identifier, 1, -1); + } else { + $escaping = self::ESCAPE_IDENTIFIER; + } + } + + // allow template to contain [] + if ($identifier === '') { + $identifier = $nameless_count++; + + // use rendering only with named tags + } + $fx = '_render_' . $identifier; + + if (array_key_exists($identifier, $this->args['custom'])) { + $value = $this->consume($this->args['custom'][$identifier], $escaping); + } elseif (method_exists($this, $fx)) { + $value = $this->{$fx}(); + } else { + throw (new Exception('Expression could not render tag')) + ->addMoreInfo('tag', $identifier); + } + + return $value; + }, + $this->template + ); + + if (!$hadUnderscoreParamBase) { + $this->_paramBase = null; + } + + return trim($res); + } + + /** + * Return formatted debug SQL query. + */ + public function getDebugQuery(): string + { + $result = $this->render(); + + foreach (array_reverse($this->params) as $key => $val) { + if (is_int($key)) { + continue; + } + + if ($val === null) { + $replacement = 'NULL'; + } elseif (is_bool($val)) { + $replacement = $val ? '1' : '0'; + } elseif (is_int($val) || is_float($val)) { + $replacement = (string) $val; + } elseif (is_string($val)) { + $replacement = '\'' . addslashes($val) . '\''; + } else { + continue; + } + + $result = preg_replace('~' . $key . '(?!\w)~', $replacement, $result); + } + + if (class_exists('SqlFormatter')) { // requires optional "jdorn/sql-formatter" package + $result = \SqlFormatter::format($result, false); + } + + return $result; + } + + public function __debugInfo(): array + { + $arr = [ + 'R' => false, + 'template' => $this->template, + 'params' => $this->params, + // 'connection' => $this->connection, + 'args' => $this->args, + ]; + + try { + $arr['R'] = $this->getDebugQuery(); + } catch (\Exception $e) { + $arr['R'] = $e->getMessage(); + } + + return $arr; + } + + /** + * @param DbalConnection|Connection $connection + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function execute(object $connection = null): object + { + if ($connection === null) { + $connection = $this->connection; + } + + // If it's a DBAL connection, we're cool + if ($connection instanceof DbalConnection) { + $query = $this->render(); + + try { + $statement = $connection->prepare($query); + + foreach ($this->params as $key => $val) { + if (is_int($val)) { + $type = \PDO::PARAM_INT; + } elseif (is_bool($val)) { + if ($this->connection->getDatabasePlatform() instanceof PostgreSQL94Platform) { + $type = \PDO::PARAM_STR; + $val = $val ? '1' : '0'; + } else { + $type = \PDO::PARAM_INT; + $val = $val ? 1 : 0; + } + } elseif ($val === null) { + $type = \PDO::PARAM_NULL; + } elseif (is_string($val) || is_float($val)) { + $type = \PDO::PARAM_STR; + } elseif (is_resource($val)) { + throw new Exception('Resource type is not supported, set value as string instead'); + } else { + throw (new Exception('Incorrect param type')) + ->addMoreInfo('key', $key) + ->addMoreInfo('value', $val) + ->addMoreInfo('type', gettype($val)); + } + + $bind = $statement->bindValue($key, $val, $type); + if ($bind === false) { + throw (new Exception('Unable to bind parameter')) + ->addMoreInfo('param', $key) + ->addMoreInfo('value', $val) + ->addMoreInfo('type', $type); + } + } + + $result = $statement->execute(); + if (Connection::isComposerDbal2x()) { + return $statement; // @phpstan-ignore-line + } + + return $result; + } catch (DbalException | \Doctrine\DBAL\DBALException $e) { // @phpstan-ignore-line for DBAL 2.x + $firstException = $e; + while ($firstException->getPrevious() !== null) { + $firstException = $firstException->getPrevious(); + } + $errorInfo = $firstException instanceof \PDOException ? $firstException->errorInfo : null; + + $new = (new ExecuteException('Dsql execute error', $errorInfo[1] ?? 0, $e)) + ->addMoreInfo('error', $errorInfo[2] ?? 'n/a (' . $errorInfo[0] . ')') + ->addMoreInfo('query', $this->getDebugQuery()); + + throw $new; + } + } + + return $connection->execute($this); + } + + /** + * TODO drop method once we support DBAL 3.x only. + * + * @return \Traversable> + */ + public function getIterator(): \Traversable + { + if (Connection::isComposerDbal2x()) { + return $this->execute(); + } + + return $this->execute()->iterateAssociative(); + } + + // {{{ Result Querying + + /** + * @param string|int|float|bool|null $v + */ + private function getCastValue($v): ?string + { + if (is_int($v) || is_float($v)) { + return (string) $v; + } elseif (is_bool($v)) { + return $v ? '1' : '0'; + } + + // for Oracle CLOB/BLOB datatypes and PDO driver + if (is_resource($v) && get_resource_type($v) === 'stream' + && $this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\OraclePlatform) { + $v = stream_get_contents($v); + } + + return $v; // throw a type error if not null nor string + } + + /** + * @deprecated use "getRows" method instead - will be removed in v2.5 + */ + public function get(): array + { + 'trigger_error'('Method is deprecated. Use getRows instead', \E_USER_DEPRECATED); + + return $this->getRows(); + } + + /** + * Executes expression and return whole result-set in form of array of hashes. + * + * @return string[][]|null[][] + */ + public function getRows(): array + { + if (Connection::isComposerDbal2x()) { + $rows = $this->execute()->fetchAll(); + } else { + $rows = $this->execute()->fetchAllAssociative(); + } + + return array_map(function ($row) { + return array_map(function ($v) { + return $this->getCastValue($v); + }, $row); + }, $rows); + } + + /** + * Executes expression and returns first row of data from result-set as a hash. + * + * @return string[]|null[]|null + */ + public function getRow(): ?array + { + if (Connection::isComposerDbal2x()) { + $row = $this->execute()->fetch(); + } else { + $row = $this->execute()->fetchAssociative(); + } + + if ($row === false) { + return null; + } + + return array_map(function ($v) { + return $this->getCastValue($v); + }, $row); + } + + /** + * Executes expression and return first value of first row of data from result-set. + */ + public function getOne(): ?string + { + $row = $this->getRow(); + if ($row === null || count($row) === 0) { + throw (new Exception('Unable to fetch single cell of data for getOne from this query')) + ->addMoreInfo('result', $row) + ->addMoreInfo('query', $this->getDebugQuery()); + } + + return reset($row); + } + + // }}} +} diff --git a/src-dsql/Expressionable.php b/src-dsql/Expressionable.php new file mode 100644 index 000000000..518019267 --- /dev/null +++ b/src-dsql/Expressionable.php @@ -0,0 +1,10 @@ +fixOpenEscapeChar(parent::escapeIdentifier($value)); + } + + protected function escapeIdentifierSoft(string $value): string + { + return $this->fixOpenEscapeChar(parent::escapeIdentifierSoft($value)); + } + + private function fixOpenEscapeChar(string $v): string + { + return preg_replace('~(?:\'(?:\'\'|\\\\\'|[^\'])*\')?+\K\]([^\[\]\'"(){}]*?)\]~s', '[$1]', $v); + } + + // {{{ MSSQL does not support named parameters, so convert them to numerical inside execute + + /** @var array|null */ + private $numQueryParamsBackup; + /** @var string|null */ + private $numQueryRender; + + /** + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function execute(object $connection = null): object + { + if ($this->numQueryParamsBackup !== null) { + return parent::execute($connection); + } + + $this->numQueryParamsBackup = $this->params; + try { + $numParams = []; + $i = 0; + $j = 0; + $this->numQueryRender = preg_replace_callback( + '~(?:\'(?:\'\'|\\\\\'|[^\'])*\')?+\K(?:\?|:\w+)~s', + function ($matches) use (&$numParams, &$i, &$j) { + $numParams[++$i] = $this->params[$matches[0] === '?' ? ++$j : $matches[0]]; + + return '?'; + }, + parent::render() + ); + $this->params = $numParams; + + return parent::execute($connection); + } finally { + $this->params = $this->numQueryParamsBackup; + $this->numQueryParamsBackup = null; + $this->numQueryRender = null; + } + } + + public function render(): string + { + if ($this->numQueryParamsBackup !== null) { + return $this->numQueryRender; + } + + return parent::render(); + } + + public function getDebugQuery(): string + { + if ($this->numQueryParamsBackup === null) { + return parent::getDebugQuery(); + } + + $paramsBackup = $this->params; + $numQueryRenderBackupBackup = $this->numQueryParamsBackup; + $numQueryRenderBackup = $this->numQueryRender; + try { + $this->params = $this->numQueryParamsBackup; + $this->numQueryParamsBackup = null; + $this->numQueryRender = null; + + return parent::getDebugQuery(); + } finally { + $this->params = $paramsBackup; + $this->numQueryParamsBackup = $numQueryRenderBackupBackup; + $this->numQueryRender = $numQueryRenderBackup; + } + } + + /// }}} +} diff --git a/src-dsql/Mssql/Query.php b/src-dsql/Mssql/Query.php new file mode 100644 index 000000000..96215be4a --- /dev/null +++ b/src-dsql/Mssql/Query.php @@ -0,0 +1,50 @@ +args['limit'])) { + return null; + } + + $cnt = (int) $this->args['limit']['cnt']; + $shift = (int) $this->args['limit']['shift']; + + return (!isset($this->args['order']) ? ' order by (select null)' : '') + . ' offset ' . $shift . ' rows' + . ' fetch next ' . $cnt . ' rows only'; + } + + public function groupConcat($field, string $delimiter = ',') + { + return $this->expr('string_agg({}, \'' . $delimiter . '\')', [$field]); + } + + public function exists() + { + return $this->dsql()->mode('select')->field( + $this->dsql()->expr('case when exists[] then 1 else 0 end', [$this]) + ); + } +} diff --git a/src-dsql/Mysql/Connection.php b/src-dsql/Mysql/Connection.php new file mode 100644 index 000000000..20cfee25f --- /dev/null +++ b/src-dsql/Mysql/Connection.php @@ -0,0 +1,13 @@ +expr('group_concat({} separator [])', [$field, $delimiter]); + } +} diff --git a/src-dsql/Oracle/AbstractQuery.php b/src-dsql/Oracle/AbstractQuery.php new file mode 100644 index 000000000..03d2e5975 --- /dev/null +++ b/src-dsql/Oracle/AbstractQuery.php @@ -0,0 +1,48 @@ +mode === 'select' && $this->main_table === null) { + $this->table('DUAL'); + } + + return parent::render(); + } + + /** + * Set sequence. + * + * @param string $sequence + * + * @return $this + */ + public function sequence($sequence) + { + $this->args['sequence'] = $sequence; + + return $this; + } + + public function _render_sequence(): ?string + { + return $this->args['sequence']; + } + + public function groupConcat($field, string $delimiter = ',') + { + return $this->expr('listagg({field}, []) within group (order by {field})', ['field' => $field, $delimiter]); + } +} diff --git a/src-dsql/Oracle/Connection.php b/src-dsql/Oracle/Connection.php new file mode 100644 index 000000000..c0ff16fc3 --- /dev/null +++ b/src-dsql/Oracle/Connection.php @@ -0,0 +1,102 @@ +expr('ALTER SESSION SET NLS_TIMESTAMP_FORMAT={datetime_format} NLS_DATE_FORMAT={date_format} NLS_NUMERIC_CHARACTERS={dec_char}', [ + 'datetime_format' => 'YYYY-MM-DD HH24:MI:SS', // datetime format + 'date_format' => 'YYYY-MM-DD', // date format + 'dec_char' => '. ', // decimal separator, no thousands separator + ])->execute(); + } + + // {{{ fix for too many connections for CI testing + + /** @var int */ + private static $ciDifferentDsnCounter = 0; + /** @var array */ + private static $ciLastConnectDsn; + /** @var \PDO|null */ + private static $ciLastConnectPdo; + + protected static function connectDbalConnection(array $dsn) + { + // for some reasons, the following error: + // PDOException: SQLSTATE[HY000]: pdo_oci_handle_factory: ORA-12516: TNS:listener could not find available handler with matching protocol stack + // is shown randomly when a lot of connections are created in tests, + // so for CI, fix this issue by reusing the previous PDO connection + // TODO remove once atk4/data tests can be run consistently without errors + if (class_exists(\PHPUnit\Framework\TestCase::class, false)) { // called from phpunit + $notReusableFunc = function (string $message): void { + echo "\n" . 'connection for CI can not be reused:' . "\n" . $message . "\n"; + self::$ciLastConnectPdo = null; + }; + + if (self::$ciLastConnectDsn !== $dsn) { + ++self::$ciDifferentDsnCounter; + if (self::$ciDifferentDsnCounter >= 4) { + $notReusableFunc('different DSN'); + } + } elseif (self::$ciLastConnectPdo !== null) { + try { + self::$ciLastConnectPdo->query('select 1 from dual')->fetch(); + } catch (\PDOException $e) { + $notReusableFunc((string) $e); + } + } + + if (self::$ciLastConnectPdo !== null && self::$ciLastConnectPdo->inTransaction()) { + $notReusableFunc('inside transaction'); + } + + if (self::$ciLastConnectPdo !== null) { + $dbalConnection = parent::connectDbalConnection(['pdo' => self::$ciLastConnectPdo]); + } else { + $dbalConnection = parent::connectDbalConnection($dsn); + } + + if (BaseConnection::isComposerDbal2x()) { + self::$ciLastConnectPdo = $dbalConnection->getWrappedConnection(); // @phpstan-ignore-line + } else { + self::$ciLastConnectPdo = $dbalConnection->getWrappedConnection()->getWrappedConnection(); // @phpstan-ignore-line + } + self::$ciLastConnectDsn = $dsn; + + return $dbalConnection; + } + + return parent::connectDbalConnection($dsn); + } + + /// }}} + + /** + * Return last inserted ID value. + * + * Drivers like PostgreSQL need to receive sequence name to get ID because PDO doesn't support this method. + */ + public function lastInsertId(string $sequence = null): string + { + if ($sequence) { + /** @var AbstractQuery */ + $query = $this->dsql()->mode('seq_currval'); + + return $query->sequence($sequence)->getOne(); + } + + // fallback + return parent::lastInsertId($sequence); + } +} diff --git a/src-dsql/Oracle/Query.php b/src-dsql/Oracle/Query.php new file mode 100644 index 000000000..3a897a608 --- /dev/null +++ b/src-dsql/Oracle/Query.php @@ -0,0 +1,75 @@ + [limit_start][and_limit_end]'; + + public function limit($cnt, $shift = null) + { + // This is for pre- 12c version + $this->template_select = $this->template_select_limit; + + return parent::limit($cnt, $shift); + } + + public function _render_limit_start(): string + { + return (string) ($this->args['limit']['shift'] ?? 0); + } + + public function _render_and_limit_end(): ?string + { + if (!$this->args['limit']['cnt']) { + return ''; + } + + return ' and "__dsql_rownum" <= ' . + max((int) ($this->args['limit']['cnt'] + $this->args['limit']['shift']), (int) $this->args['limit']['cnt']); + } + + public function getIterator(): \Traversable + { + foreach (parent::getIterator() as $row) { + unset($row['__dsql_rownum']); + + yield $row; + } + } + + public function getRows(): array + { + return array_map(function ($row) { + unset($row['__dsql_rownum']); + + return $row; + }, parent::getRows()); + } + + public function getRow(): ?array + { + $row = parent::getRow(); + + if ($row !== null) { + unset($row['__dsql_rownum']); + } + + return $row; + } + + /// }}} + + public function exists() + { + return $this->dsql()->mode('select')->field( + $this->dsql()->expr('case when exists[] then 1 else 0 end', [$this]) + ); + } +} diff --git a/src-dsql/Oracle/Version12/Connection.php b/src-dsql/Oracle/Version12/Connection.php new file mode 100644 index 000000000..a3f6fad45 --- /dev/null +++ b/src-dsql/Oracle/Version12/Connection.php @@ -0,0 +1,19 @@ +args['limit'])) { + return null; + } + + $cnt = (int) $this->args['limit']['cnt']; + $shift = (int) $this->args['limit']['shift']; + + return ' ' . trim( + ($shift ? 'OFFSET ' . $shift . ' ROWS' : '') . + ' ' . + // as per spec 'NEXT' is synonymous to 'FIRST', so not bothering with it. + // https://docs.oracle.com/javadb/10.8.3.0/ref/rrefsqljoffsetfetch.html + ($cnt ? 'FETCH NEXT ' . $cnt . ' ROWS ONLY' : '') + ); + } +} diff --git a/src-dsql/Postgresql/Connection.php b/src-dsql/Postgresql/Connection.php new file mode 100644 index 000000000..e6a71e40b --- /dev/null +++ b/src-dsql/Postgresql/Connection.php @@ -0,0 +1,12 @@ +args['limit'])) { + return null; + } + + return ' limit ' . + (int) $this->args['limit']['cnt'] . + ' offset ' . + (int) $this->args['limit']['shift']; + } + + public function groupConcat($field, string $delimiter = ','): Expression + { + return $this->expr('string_agg({}, [])', [$field, $delimiter]); + } +} diff --git a/src-dsql/Query.php b/src-dsql/Query.php new file mode 100644 index 000000000..2b13fcab4 --- /dev/null +++ b/src-dsql/Query.php @@ -0,0 +1,1416 @@ +field('name'); + * + * You can use a dot to prepend table name to the field: + * $q->field('user.name'); + * $q->field('user.name')->field('address.line1'); + * + * Array as a first argument will specify multiple fields, same as calling field() multiple times + * $q->field(['name', 'surname', 'address.line1']); + * + * You can pass first argument as Expression or Query + * $q->field( $q->expr('2+2'), 'alias'); // must always use alias + * + * You can use $q->dsql() for subqueries. Subqueries will be wrapped in + * brackets. + * $q->field( $q->dsql()->table('x')... , 'alias'); + * + * Associative array will assume that "key" holds the field alias. + * Value may be field name, Expression or Query. + * $q->field(['alias' => 'name', 'alias2' => 'mother.surname']); + * $q->field(['alias' => $q->expr(..), 'alias2' => $q->dsql()->.. ]); + * + * If you need to use funky name for the field (e.g, one containing + * a dot or a space), you should wrap it into expression: + * $q->field($q->expr('{}', ['fun...ky.field']), 'f'); + * + * @param mixed $field Specifies field to select + * @param string $alias Specify alias for this field + * + * @return $this + */ + public function field($field, $alias = null) + { + // field is passed as string, may contain commas + if (is_string($field) && strpos($field, ',') !== false) { + $field = explode(',', $field); + } + + // recursively add array fields + if (is_array($field)) { + if ($alias !== null) { + throw (new Exception('Alias must not be specified when $field is an array')) + ->addMoreInfo('alias', $alias); + } + + foreach ($field as $alias => $f) { + $this->field($f, is_numeric($alias) ? null : $alias); + } + + return $this; + } + + // save field in args + $this->_set_args('field', $alias, $field); + + return $this; + } + + /** + * Returns template component for [field]. + * + * @param bool $add_alias Should we add aliases, see _render_field_noalias() + * + * @return string Parsed template chunk + */ + protected function _render_field($add_alias = true): string + { + // will be joined for output + $ret = []; + + // If no fields were defined, use defaultField + if (empty($this->args['field'])) { + if ($this->defaultField instanceof Expression) { + return $this->consume($this->defaultField); + } + + return (string) $this->defaultField; + } + + // process each defined field + foreach ($this->args['field'] as $alias => $field) { + // Do not add alias, if: + // - we don't want aliases OR + // - alias is the same as field OR + // - alias is numeric + if ( + $add_alias === false + || (is_string($field) && $alias === $field) + || is_numeric($alias) + ) { + $alias = null; + } + + // Will parameterize the value and escape if necessary + $field = $this->consume($field, self::ESCAPE_IDENTIFIER_SOFT); + + if ($alias) { + // field alias cannot be expression, so simply escape it + $field .= ' ' . $this->escapeIdentifier($alias); + } + + $ret[] = $field; + } + + return implode(', ', $ret); + } + + protected function _render_field_noalias(): string + { + return $this->_render_field(false); + } + + // }}} + + // {{{ Table specification and rendering + + /** + * Specify a table to be used in a query. + * + * @param mixed $table Specifies table + * @param string $alias Specify alias for this table + * + * @return $this + */ + public function table($table, $alias = null) + { + // comma-separated table names + if (is_string($table) && strpos($table, ',') !== false) { + $table = explode(',', $table); + } + + // array of tables - recursively process each + if (is_array($table)) { + if ($alias !== null) { + throw (new Exception('You cannot use single alias with multiple tables')) + ->addMoreInfo('alias', $alias); + } + + foreach ($table as $alias => $t) { + if (is_numeric($alias)) { + $alias = null; + } + $this->table($t, $alias); + } + + return $this; + } + + // if table is set as sub-Query, then alias is mandatory + if ($table instanceof self && $alias === null) { + throw new Exception('If table is set as Query, then table alias is mandatory'); + } + + if (is_string($table) && $alias === null) { + $alias = $table; + } + + // main_table will be set only if table() is called once. + // it's used as "default table" when joining with other tables, see join(). + // on multiple calls, main_table will be false and we won't + // be able to join easily anymore. + $this->main_table = ($this->main_table === null && $alias !== null ? $alias : false); + + // save table in args + $this->_set_args('table', $alias, $table); + + return $this; + } + + /** + * @param bool $add_alias Should we add aliases, see _render_table_noalias() + */ + protected function _render_table($add_alias = true): ?string + { + // will be joined for output + $ret = []; + + if (empty($this->args['table'])) { + return ''; + } + + // process tables one by one + foreach ($this->args['table'] as $alias => $table) { + // throw exception if we don't want to add alias and table is defined as Expression + if ($add_alias === false && $table instanceof self) { + throw new Exception('Table cannot be Query in UPDATE, INSERT etc. query modes'); + } + + // Do not add alias, if: + // - we don't want aliases OR + // - alias is the same as table name OR + // - alias is numeric + if ( + $add_alias === false + || (is_string($table) && $alias === $table) + || is_numeric($alias) + ) { + $alias = null; + } + + // consume or escape table + $table = $this->consume($table, self::ESCAPE_IDENTIFIER_SOFT); + + // add alias if needed + if ($alias) { + $table .= ' ' . $this->escapeIdentifier($alias); + } + + $ret[] = $table; + } + + return implode(', ', $ret); + } + + protected function _render_table_noalias(): ?string + { + return $this->_render_table(false); + } + + protected function _render_from(): ?string + { + return empty($this->args['table']) ? '' : 'from'; + } + + /// }}} + + // {{{ with() + + /** + * Specify WITH query to be used. + * + * @param Query $cursor Specifies cursor query or array [alias=>query] for adding multiple + * @param string $alias Specify alias for this cursor + * @param array $fields Optional array of field names used in cursor + * @param bool $recursive Is it recursive? + * + * @return $this + */ + public function with(self $cursor, string $alias, array $fields = null, bool $recursive = false) + { + // save cursor in args + $this->_set_args('with', $alias, [ + 'cursor' => $cursor, + 'fields' => $fields, + 'recursive' => $recursive, + ]); + + return $this; + } + + /** + * Recursive WITH query. + * + * @param Query $cursor Specifies cursor query or array [alias=>query] for adding multiple + * @param string $alias Specify alias for this cursor + * @param array $fields Optional array of field names used in cursor + * + * @return $this + */ + public function withRecursive(self $cursor, string $alias, array $fields = null) + { + return $this->with($cursor, $alias, $fields, true); + } + + protected function _render_with(): ?string + { + // will be joined for output + $ret = []; + + if (empty($this->args['with'])) { + return ''; + } + + // process each defined cursor + $isRecursive = false; + foreach ($this->args['with'] as $alias => ['cursor' => $cursor, 'fields' => $fields, 'recursive' => $recursive]) { + // cursor alias cannot be expression, so simply escape it + $s = $this->escapeIdentifier($alias) . ' '; + + // set cursor fields + if ($fields !== null) { + $s .= '(' . implode(', ', array_map([$this, 'escapeIdentifier'], $fields)) . ') '; + } + + // will parameterize the value and escape if necessary + $s .= 'as ' . $this->consume($cursor, self::ESCAPE_IDENTIFIER_SOFT); + + // is at least one recursive ? + $isRecursive = $isRecursive || $recursive; + + $ret[] = $s; + } + + return 'with ' . ($isRecursive ? 'recursive ' : '') . implode(', ', $ret) . ' '; + } + + /// }}} + + // {{{ join() + + /** + * Joins your query with another table. Join will use $main_table + * to reference the main table, unless you specify it explicitly. + * + * Examples: + * $q->join('address'); // on user.address_id=address.id + * $q->join('address.user_id'); // on address.user_id=user.id + * $q->join('address a'); // With alias + * $q->join(array('a'=>'address')); // Also alias + * + * Second argument may specify the field of the master table + * $q->join('address', 'billing_id'); + * $q->join('address.code', 'code'); + * $q->join('address.code', 'user.code'); + * + * Third argument may specify which kind of join to use. + * $q->join('address', null, 'left'); + * $q->join('address.code', 'user.code', 'inner'); + * + * Using array syntax you can join multiple tables too + * $q->join(array('a'=>'address', 'p'=>'portfolio')); + * + * You can use expression for more complex joins + * $q->join('address', + * $q->orExpr() + * ->where('user.billing_id=address.id') + * ->where('user.technical_id=address.id') + * ) + * + * @param string|array $foreign_table Table to join with + * @param mixed $master_field Field in master table + * @param string $join_kind 'left' or 'inner', etc + * @param string $_foreign_alias Internal, don't use + * + * @return $this + */ + public function join( + $foreign_table, + $master_field = null, + $join_kind = null, + $_foreign_alias = null + ) { + // If array - add recursively + if (is_array($foreign_table)) { + foreach ($foreign_table as $alias => $foreign) { + if (is_numeric($alias)) { + $alias = null; + } + + $this->join($foreign, $master_field, $join_kind, $alias); + } + + return $this; + } + $j = []; + + // try to find alias in foreign table definition. this behaviour should be deprecated + if ($_foreign_alias === null) { + [$foreign_table, $_foreign_alias] = array_pad(explode(' ', $foreign_table, 2), 2, null); + } + + // Split and deduce fields + // NOTE that this will not allow table names with dots in there !!! + [$f1, $f2] = array_pad(explode('.', $foreign_table, 2), 2, null); + + if (is_object($master_field)) { + $j['expr'] = $master_field; + } else { + // Split and deduce primary table + if ($master_field === null) { + [$m1, $m2] = [null, null]; + } else { + [$m1, $m2] = array_pad(explode('.', $master_field, 2), 2, null); + } + if ($m2 === null) { + $m2 = $m1; + $m1 = null; + } + if ($m1 === null) { + $m1 = $this->main_table; + } + + // Identify fields we use for joins + if ($f2 === null && $m2 === null) { + $m2 = $f1 . '_id'; + } + if ($m2 === null) { + $m2 = 'id'; + } + $j['m1'] = $m1; + $j['m2'] = $m2; + } + + $j['f1'] = $f1; + if ($f2 === null) { + $f2 = 'id'; + } + $j['f2'] = $f2; + + $j['t'] = $join_kind ?: 'left'; + $j['fa'] = $_foreign_alias; + + $this->args['join'][] = $j; + + return $this; + } + + public function _render_join(): ?string + { + if (!isset($this->args['join'])) { + return ''; + } + $joins = []; + foreach ($this->args['join'] as $j) { + $jj = ''; + + $jj .= $j['t'] . ' join '; + + $jj .= $this->escapeIdentifierSoft($j['f1']); + + if ($j['fa'] !== null) { + $jj .= ' ' . $this->escapeIdentifier($j['fa']); + } + + $jj .= ' on '; + + if (isset($j['expr'])) { + $jj .= $this->consume($j['expr']); + } else { + $jj .= + $this->escapeIdentifier($j['fa'] ?: $j['f1']) . '.' . + $this->escapeIdentifier($j['f2']) . ' = ' . + ($j['m1'] === null ? '' : $this->escapeIdentifier($j['m1']) . '.') . + $this->escapeIdentifier($j['m2']); + } + $joins[] = $jj; + } + + return ' ' . implode(' ', $joins); + } + + // }}} + + // {{{ where() and having() specification and rendering + + /** + * Adds condition to your query. + * + * Examples: + * $q->where('id',1); + * + * By default condition implies equality. You can specify a different comparison + * operator by either including it along with the field or using 3-argument + * format: + * $q->where('id>','1'); + * $q->where('id','>',1); + * + * You may use Expression as any part of the query. + * $q->where($q->expr('a=b')); + * $q->where('date>',$q->expr('now()')); + * $q->where($q->expr('length(password)'),'>',5); + * + * If you specify Query as an argument, it will be automatically + * surrounded by brackets: + * $q->where('user_id',$q->dsql()->table('users')->field('id')); + * + * To specify OR conditions: + * $q->where($q->orExpr()->where('a',1)->where('b',1)); + * + * @param mixed $field Field or Expression + * @param mixed $cond Condition such as '=', '>' or 'is not' + * @param mixed $value Value. Will be quoted unless you pass expression + * @param string $kind Do not use directly. Use having() + * @param int $num_args when $kind is passed, we can't determine number of + * actual arguments, so this argument must be specified + * + * @return $this + */ + public function where($field, $cond = null, $value = null, $kind = 'where', $num_args = null) + { + // Number of passed arguments will be used to determine if arguments were specified or not + if ($num_args === null) { + $num_args = func_num_args(); + } + + // Array as first argument means we have to replace it with orExpr() + // remove in v2.5 + if (is_array($field)) { + throw new Exception('Array input / OR conditions is no longer supported'); + } + + // first argument is string containing more than just a field name and no more than 2 + // arguments means that we either have a string expression or embedded condition. + if ($num_args === 2 && is_string($field) && !preg_match('/^[.a-zA-Z0-9_]*$/', $field)) { + // field contains non-alphanumeric values. Look for condition + preg_match( + '/^([^ <>!=]*)([>expr($field); + + $cond = '='; + } else { + ++$num_args; + } + + $field = $matches[1]; + } + + switch ($num_args) { + case 1: + if (is_string($field)) { + $field = $this->expr($field); + $field->wrapInParentheses = true; + } elseif (!$field->wrapInParentheses) { + $field = $this->expr('[]', [$field]); + $field->wrapInParentheses = true; + } + + $this->args[$kind][] = [$field]; + + break; + case 2: + if (is_object($cond) && !$cond instanceof Expressionable) { + throw (new Exception('Value cannot be converted to SQL-compatible expression')) + ->addMoreInfo('field', $field) + ->addMoreInfo('value', $cond); + } + + $this->args[$kind][] = [$field, $cond]; + + break; + case 3: + if (is_object($value) && !$value instanceof Expressionable) { + throw (new Exception('Value cannot be converted to SQL-compatible expression')) + ->addMoreInfo('field', $field) + ->addMoreInfo('cond', $cond) + ->addMoreInfo('value', $value); + } + + $this->args[$kind][] = [$field, $cond, $value]; + + break; + } + + return $this; + } + + /** + * Same syntax as where(). + * + * @param mixed $field Field or Expression + * @param mixed $cond Condition such as '=', '>' or 'is not' + * @param mixed $value Value. Will be quoted unless you pass expression + * + * @return $this + */ + public function having($field, $cond = null, $value = null) + { + return $this->where($field, $cond, $value, 'having', func_num_args()); + } + + /** + * Subroutine which renders either [where] or [having]. + * + * @param string $kind 'where' or 'having' + * + * @return string[] + */ + protected function _sub_render_where($kind): array + { + // will be joined for output + $ret = []; + + // where() might have been called multiple times. Collect all conditions, + // then join them with AND keyword + foreach ($this->args[$kind] as $row) { + $ret[] = $this->_sub_render_condition($row); + } + + return $ret; + } + + protected function _sub_render_condition(array $row): string + { + if (count($row) === 3) { + [$field, $cond, $value] = $row; + } elseif (count($row) === 2) { + [$field, $cond] = $row; + } elseif (count($row) === 1) { + [$field] = $row; + } else { + throw new \InvalidArgumentException(); + } + + $field = $this->consume($field, self::ESCAPE_IDENTIFIER_SOFT); + + if (count($row) === 1) { + // Only a single parameter was passed, so we simply include all + return $field; + } + + // below are only cases when 2 or 3 arguments are passed + + // if no condition defined - set default condition + if (count($row) === 2) { + $value = $cond; // @phpstan-ignore-line see https://github.com/phpstan/phpstan/issues/4173 + + if ($value instanceof Expressionable) { + $value = $value->getDsqlExpression($this); + } + + if (is_array($value)) { + $cond = 'in'; + } elseif ($value instanceof self && $value->mode === 'select') { + $cond = 'in'; + } else { + $cond = '='; + } + } else { + $cond = trim(strtolower($cond)); // @phpstan-ignore-line see https://github.com/phpstan/phpstan/issues/4173 + } + + // below we can be sure that all 3 arguments has been passed + + // special conditions (IS | IS NOT) if value is null + if ($value === null) { // @phpstan-ignore-line see https://github.com/phpstan/phpstan/issues/4173 + if (in_array($cond, ['=', 'is'], true)) { + return $field . ' is null'; + } elseif (in_array($cond, ['!=', '<>', 'not', 'is not'], true)) { + return $field . ' is not null'; + } + } + + // value should be array for such conditions + if (in_array($cond, ['in', 'not in', 'not'], true) && is_string($value)) { + $value = array_map('trim', explode(',', $value)); + } + + // special conditions (IN | NOT IN) if value is array + if (is_array($value)) { + $cond = in_array($cond, ['!=', '<>', 'not', 'not in'], true) ? 'not in' : 'in'; + + // special treatment of empty array condition + if (empty($value)) { + if ($cond === 'in') { + return '1 = 0'; // never true + } + + return '1 = 1'; // always true + } + + $value = '(' . implode(', ', array_map(function ($v) { return $this->escapeParam($v); }, $value)) . ')'; + + return $field . ' ' . $cond . ' ' . $value; + } + + // if value is object, then it should be Expression or Query itself + // otherwise just escape value + $value = $this->consume($value, self::ESCAPE_PARAM); + + return $field . ' ' . $cond . ' ' . $value; + } + + protected function _render_where(): ?string + { + if (!isset($this->args['where'])) { + return null; + } + + return ' where ' . implode(' and ', $this->_sub_render_where('where')); + } + + protected function _render_orwhere(): ?string + { + if (isset($this->args['where']) && isset($this->args['having'])) { + throw new Exception('Mixing of WHERE and HAVING conditions not allowed in query expression'); + } + + foreach (['where', 'having'] as $kind) { + if (isset($this->args[$kind])) { + return implode(' or ', $this->_sub_render_where($kind)); + } + } + + return null; + } + + protected function _render_andwhere(): ?string + { + if (isset($this->args['where']) && isset($this->args['having'])) { + throw new Exception('Mixing of WHERE and HAVING conditions not allowed in query expression'); + } + + foreach (['where', 'having'] as $kind) { + if (isset($this->args[$kind])) { + return implode(' and ', $this->_sub_render_where($kind)); + } + } + + return null; + } + + protected function _render_having(): ?string + { + if (!isset($this->args['having'])) { + return null; + } + + return ' having ' . implode(' and ', $this->_sub_render_where('having')); + } + + // }}} + + // {{{ group() + + /** + * Implements GROUP BY functionality. Simply pass either field name + * as string or expression. + * + * @param mixed $group Group by this + * + * @return $this + */ + public function group($group) + { + // Case with comma-separated fields + if (is_string($group) && !$this->isUnescapablePattern($group) && strpos($group, ',') !== false) { + $group = explode(',', $group); + } + + if (is_array($group)) { + foreach ($group as $g) { + $this->args['group'][] = $g; + } + + return $this; + } + + $this->args['group'][] = $group; + + return $this; + } + + protected function _render_group(): ?string + { + if (!isset($this->args['group'])) { + return ''; + } + + $g = array_map(function ($a) { + return $this->consume($a, self::ESCAPE_IDENTIFIER_SOFT); + }, $this->args['group']); + + return ' group by ' . implode(', ', $g); + } + + // }}} + + // {{{ Set field implementation + + /** + * Sets field value for INSERT or UPDATE statements. + * + * @param string|Expression|Expressionable|array $field Name of the field + * @param mixed $value Value of the field + * + * @return $this + */ + public function set($field, $value = null) + { + if (is_array($value)) { + throw (new Exception('Array values are not supported by SQL')) + ->addMoreInfo('field', $field) + ->addMoreInfo('value', $value); + } + + if (is_array($field)) { + foreach ($field as $key => $value) { + $this->set($key, $value); + } + + return $this; + } + + if (is_string($field) || $field instanceof Expressionable) { + $this->args['set'][] = [$field, $value]; + } else { + throw (new Exception('Field name should be string or Expressionable')) + ->addMoreInfo('field', $field); + } + + return $this; + } + + protected function _render_set(): ?string + { + // will be joined for output + $ret = []; + + if (isset($this->args['set']) && $this->args['set']) { + foreach ($this->args['set'] as [$field, $value]) { + $field = $this->consume($field, self::ESCAPE_IDENTIFIER); + $value = $this->consume($value, self::ESCAPE_PARAM); + + $ret[] = $field . '=' . $value; + } + } + + return implode(', ', $ret); + } + + protected function _render_set_fields(): ?string + { + // will be joined for output + $ret = []; + + if ($this->args['set']) { + foreach ($this->args['set'] as [$field/*, $value*/]) { + $field = $this->consume($field, self::ESCAPE_IDENTIFIER); + + $ret[] = $field; + } + } + + return implode(', ', $ret); + } + + protected function _render_set_values(): ?string + { + // will be joined for output + $ret = []; + + if ($this->args['set']) { + foreach ($this->args['set'] as [/*$field*/ , $value]) { + $value = $this->consume($value, self::ESCAPE_PARAM); + + $ret[] = $value; + } + } + + return implode(', ', $ret); + } + + // }}} + + // {{{ Option + + /** + * Set options for particular mode. + * + * @param mixed $option + * @param string $mode select|insert|replace + * + * @return $this + */ + public function option($option, $mode = 'select') + { + // Case with comma-separated options + if (is_string($option) && strpos($option, ',') !== false) { + $option = explode(',', $option); + } + + if (is_array($option)) { + foreach ($option as $opt) { + $this->args['option'][$mode][] = $opt; + } + + return $this; + } + + $this->args['option'][$mode][] = $option; + + return $this; + } + + protected function _render_option(): ?string + { + if (!isset($this->args['option'][$this->mode])) { + return ''; + } + + return ' ' . implode(' ', $this->args['option'][$this->mode]); + } + + // }}} + + // {{{ Query Modes + + /** + * Execute select statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function select(): object + { + return $this->mode('select')->execute(); + } + + /** + * Execute insert statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function insert(): object + { + return $this->mode('insert')->execute(); + } + + /** + * Execute update statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function update(): object + { + return $this->mode('update')->execute(); + } + + /** + * Execute replace statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function replace(): object + { + return $this->mode('replace')->execute(); + } + + /** + * Execute delete statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function delete(): object + { + return $this->mode('delete')->execute(); + } + + /** + * Execute truncate statement. + * + * @return DbalResult|\PDOStatement PDOStatement iff for DBAL 2.x + */ + public function truncate(): object + { + return $this->mode('truncate')->execute(); + } + + // }}} + + // {{{ Limit + + /** + * Limit how many rows will be returned. + * + * @param int $cnt Number of rows to return + * @param int $shift Offset, how many rows to skip + * + * @return $this + */ + public function limit($cnt, $shift = null) + { + $this->args['limit'] = [ + 'cnt' => $cnt, + 'shift' => $shift, + ]; + + return $this; + } + + public function _render_limit(): ?string + { + if (!isset($this->args['limit'])) { + return null; + } + + return ' limit ' . + (int) $this->args['limit']['shift'] . + ', ' . + (int) $this->args['limit']['cnt']; + } + + // }}} + + // {{{ Order + + /** + * Orders results by field or Expression. See documentation for full + * list of possible arguments. + * + * $q->order('name'); + * $q->order('name desc'); + * $q->order('name desc, id asc') + * $q->order('name',true); + * + * @param string|Expressionable|array $order order by + * @param string|bool $desc true to sort descending + * + * @return $this + */ + public function order($order, $desc = null) + { + // Case with comma-separated fields or first argument being an array + if (is_string($order) && strpos($order, ',') !== false) { + $order = explode(',', $order); + } + + if (is_array($order)) { + if ($desc !== null) { + throw new Exception( + 'If first argument is array, second argument must not be used' + ); + } + foreach (array_reverse($order) as $o) { + $this->order($o); + } + + return $this; + } + + // First argument may contain space, to divide field and ordering keyword. + // Explode string only if ordering keyword is 'desc' or 'asc'. + if ($desc === null && is_string($order) && strpos($order, ' ') !== false) { + $_chunks = explode(' ', $order); + $_desc = strtolower(array_pop($_chunks)); + if (in_array($_desc, ['desc', 'asc'], true)) { + $order = implode(' ', $_chunks); + $desc = $_desc; + } + } + + if (is_bool($desc)) { + $desc = $desc ? 'desc' : ''; + } elseif (strtolower($desc ?? '') === 'asc') { + $desc = ''; + } + // no else - allow custom order like "order by name desc nulls last" for Oracle + + $this->args['order'][] = [$order, $desc]; + + return $this; + } + + public function _render_order(): ?string + { + if (!isset($this->args['order'])) { + return ''; + } + + $x = []; + foreach ($this->args['order'] as $tmp) { + [$arg, $desc] = $tmp; + $x[] = $this->consume($arg, self::ESCAPE_IDENTIFIER_SOFT) . ($desc ? (' ' . $desc) : ''); + } + + return ' order by ' . implode(', ', array_reverse($x)); + } + + // }}} + + // {{{ Exists + + /** + * Creates 'select exists' query based on the query object. + * + * @return self + */ + public function exists() + { + return $this->dsql()->mode('select')->option('exists')->field($this); + } + + // }}} + + public function __debugInfo(): array + { + $arr = [ + 'R' => false, + 'mode' => $this->mode, + //'template' => $this->template, + //'params' => $this->params, + //'connection' => $this->connection, + //'main_table' => $this->main_table, + //'args' => $this->args, + ]; + + try { + $arr['R'] = $this->getDebugQuery(); + } catch (\Exception $e) { + $arr['R'] = $e->getMessage(); + } + + return $arr; + } + + // {{{ Miscelanious + + /** + * Renders query template. If the template is not explicitly set will use "select" mode. + */ + public function render(): string + { + if (!$this->template) { + $this->mode('select'); + } + + return parent::render(); + } + + /** + * Switch template for this query. Determines what would be done + * on execute. + * + * By default it is in SELECT mode + * + * @param string $mode + * + * @return $this + */ + public function mode($mode) + { + $prop = 'template_' . $mode; + + if (isset($this->{$prop})) { + $this->mode = $mode; + $this->template = $this->{$prop}; + } else { + throw (new Exception('Query does not have this mode')) + ->addMoreInfo('mode', $mode); + } + + return $this; + } + + /** + * Use this instead of "new Query()" if you want to automatically bind + * query to the same connection as the parent. + * + * @param array $properties + * + * @return Query + */ + public function dsql($properties = []) + { + $q = new static($properties); + $q->connection = $this->connection; + + return $q; + } + + /** + * Returns Expression object for the corresponding Query + * sub-class (e.g. Mysql\Query will return Mysql\Expression). + * + * Connection is not mandatory, but if set, will be preserved. This + * method should be used for building parts of the query internally. + * + * @param string|array $properties + * @param array $arguments + * + * @return Expression + */ + public function expr($properties = [], $arguments = null) + { + $c = $this->expression_class; + $e = new $c($properties, $arguments); + $e->connection = $this->connection; + + return $e; + } + + /** + * Returns Expression object for NOW() or CURRENT_TIMESTAMP() method. + */ + public function exprNow(int $precision = null): Expression + { + return $this->expr( + 'current_timestamp(' . ($precision !== null ? '[]' : '') . ')', + $precision !== null ? [$precision] : [] + ); + } + + /** + * Returns new Query object of [or] expression. + * + * @return Query + */ + public function orExpr() + { + return $this->dsql(['template' => '[orwhere]']); + } + + /** + * Returns new Query object of [and] expression. + * + * @return Query + */ + public function andExpr() + { + return $this->dsql(['template' => '[andwhere]']); + } + + /** + * Returns Query object of [case] expression. + * + * @param mixed $operand optional operand for case expression + * + * @return Query + */ + public function caseExpr($operand = null) + { + $q = $this->dsql(['template' => '[case]']); + + if ($operand !== null) { + $q->args['case_operand'] = $operand; + } + + return $q; + } + + /** + * Returns a query for a function, which can be used as part of the GROUP + * query which would concatenate all matching fields. + * + * MySQL, SQLite - group_concat + * PostgreSQL - string_agg + * Oracle - listagg + * + * @param mixed $field + * + * @return Expression + */ + public function groupConcat($field, string $delimiter = ',') + { + throw new Exception('groupConcat() is SQL-dependent, so use a correct class'); + } + + /** + * Add when/then condition for [case] expression. + * + * @param mixed $when Condition as array for normal form [case] statement or just value in case of short form [case] statement + * @param mixed $then Then expression or value + * + * @return $this + */ + public function when($when, $then) + { + $this->args['case_when'][] = [$when, $then]; + + return $this; + } + + /** + * Add else condition for [case] expression. + * + * @param mixed $else Else expression or value + * + * @return $this + */ + //public function else($else) // PHP 5.6 restricts to use such method name. PHP 7 is fine with it + public function otherwise($else) + { + $this->args['case_else'] = $else; + + return $this; + } + + protected function _render_case(): ?string + { + if (!isset($this->args['case_when'])) { + return null; + } + + $ret = ''; + + // operand + if ($short_form = isset($this->args['case_operand'])) { + $ret .= ' ' . $this->consume($this->args['case_operand'], self::ESCAPE_IDENTIFIER_SOFT); + } + + // when, then + foreach ($this->args['case_when'] as $row) { + if (!array_key_exists(0, $row) || !array_key_exists(1, $row)) { + throw (new Exception('Incorrect use of "when" method parameters')) + ->addMoreInfo('row', $row); + } + + $ret .= ' when '; + if ($short_form) { + // short-form + if (is_array($row[0])) { + throw (new Exception('When using short form CASE statement, then you should not set array as when() method 1st parameter')) + ->addMoreInfo('when', $row[0]); + } + $ret .= $this->consume($row[0], self::ESCAPE_PARAM); + } else { + $ret .= $this->_sub_render_condition($row[0]); + } + + // then + $ret .= ' then ' . $this->consume($row[1], self::ESCAPE_PARAM); + } + + // else + if (array_key_exists('case_else', $this->args)) { + $ret .= ' else ' . $this->consume($this->args['case_else'], self::ESCAPE_PARAM); + } + + return ' case' . $ret . ' end'; + } + + /** + * Sets value in args array. Doesn't allow duplicate aliases. + * + * @param string $what Where to set it - table|field + * @param string|null $alias Alias name + * @param mixed $value Value to set in args array + */ + protected function _set_args($what, $alias, $value): void + { + // save value in args + if ($alias === null) { + $this->args[$what][] = $value; + } else { + // don't allow multiple values with same alias + if (isset($this->args[$what][$alias])) { + throw (new Exception('Alias should be unique')) + ->addMoreInfo('what', $what) + ->addMoreInfo('alias', $alias); + } + + $this->args[$what][$alias] = $value; + } + } + + /// }}} +} diff --git a/src-dsql/Sqlite/Connection.php b/src-dsql/Sqlite/Connection.php new file mode 100644 index 000000000..8512c23a3 --- /dev/null +++ b/src-dsql/Sqlite/Connection.php @@ -0,0 +1,12 @@ +expr('group_concat({}, [])', [$field, $delimiter]); + } +} diff --git a/tests-dsql/ConnectionTest.php b/tests-dsql/ConnectionTest.php new file mode 100644 index 000000000..f6ba5e1c2 --- /dev/null +++ b/tests-dsql/ConnectionTest.php @@ -0,0 +1,174 @@ +assertSame( + '4', + $c->expr('select (2+2)')->getOne() + ); + } + + /** + * Test DSN normalize. + */ + public function testDsnNormalize(): void + { + // standard + $dsn = Connection::normalizeDsn('mysql://root:pass@localhost/db'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => 'root', 'pass' => 'pass', 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + + $dsn = Connection::normalizeDsn('mysql:host=localhost;dbname=db'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => null, 'pass' => null, 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + + $dsn = Connection::normalizeDsn('mysql:host=localhost;dbname=db', 'root', 'pass'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => 'root', 'pass' => 'pass', 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + + // username and password should take precedence + $dsn = Connection::normalizeDsn('mysql://root:pass@localhost/db', 'foo', 'bar'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => 'foo', 'pass' => 'bar', 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + + // more options + $dsn = Connection::normalizeDsn('mysql://root:pass@localhost/db;foo=bar'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db;foo=bar', 'user' => 'root', 'pass' => 'pass', 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db;foo=bar'], $dsn); + + // no password + $dsn = Connection::normalizeDsn('mysql://root@localhost/db'); + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => 'root', 'pass' => null, 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + $dsn = Connection::normalizeDsn('mysql://root:@localhost/db'); // see : after root + $this->assertSame(['dsn' => 'mysql:host=localhost;dbname=db', 'user' => 'root', 'pass' => null, 'driverSchema' => 'mysql', 'rest' => 'host=localhost;dbname=db'], $dsn); + + $dsn = Connection::normalizeDsn('sqlite::memory'); + $this->assertSame(['dsn' => 'sqlite::memory', 'user' => null, 'pass' => null, 'driverSchema' => 'sqlite', 'rest' => ':memory'], $dsn); // rest is unusable anyway in this context + + // with port number as URL, normalize port to ;port=1234 + $dsn = Connection::normalizeDsn('mysql://root:pass@localhost:1234/db'); + $this->assertSame(['dsn' => 'mysql:host=localhost;port=1234;dbname=db', 'user' => 'root', 'pass' => 'pass', 'driverSchema' => 'mysql', 'rest' => 'host=localhost;port=1234;dbname=db'], $dsn); + + // with port number as DSN, leave port as :port + $dsn = Connection::normalizeDsn('mysql:host=localhost:1234;dbname=db'); + $this->assertSame(['dsn' => 'mysql:host=localhost:1234;dbname=db', 'user' => null, 'pass' => null, 'driverSchema' => 'mysql', 'rest' => 'host=localhost:1234;dbname=db'], $dsn); + } + + public function testConnectionRegistry(): void + { + DummyConnection::registerConnectionClass(); + + $this->assertSame(DummyConnection::class, Connection::resolveConnectionClass('dummy')); + + Connection::registerConnectionClass(DummyConnection2::class); + Connection::registerConnectionClass(DummyConnection3::class); + + $this->assertSame(DummyConnection2::class, Connection::resolveConnectionClass('dummy2')); + + $this->assertSame(DummyConnection3::class, Connection::resolveConnectionClass('dummy3')); + + Connection::registerConnectionClass(DummyConnection4::class); + + $this->assertSame(DummyConnection4::class, Connection::resolveConnectionClass('dummy4')); + } + + public function testMysqlFail(): void + { + $this->expectException(\Exception::class); + $c = Connection::connect('mysql:host=256.256.256.256'); // invalid host + } + + public function testException1(): void + { + $this->expectException(\Atk4\Dsql\Exception::class); + $c = \Atk4\Dsql\Sqlite\Connection::connect(':'); + } + + public function testException2(): void + { + $this->expectException(\Atk4\Dsql\Exception::class); + $c = Connection::connect(''); + } + + public function testException3(): void + { + $this->expectException(\Atk4\Dsql\Exception::class); + $c = new \Atk4\Dsql\Sqlite\Connection('sqlite::memory'); // @phpstan-ignore-line + } + + public function testException4(): void + { + $c = new \Atk4\Dsql\Sqlite\Connection(); + $q = $c->expr('select (2+2)'); + + $this->assertSame( + 'select (2+2)', + $q->render() + ); + + $this->expectException(\Atk4\Dsql\Exception::class); + $q->execute(); + } +} diff --git a/tests-dsql/ExceptionTest.php b/tests-dsql/ExceptionTest.php new file mode 100644 index 000000000..a89e787e8 --- /dev/null +++ b/tests-dsql/ExceptionTest.php @@ -0,0 +1,49 @@ +expectException(\Atk4\Dsql\Exception::class); + + throw new \Atk4\Dsql\Exception(); + } + + public function testException2(): void + { + $this->expectException(\Atk4\Dsql\Exception::class); + $e = new Expression('hello, [world]'); + $e->render(); + } + + public function testException3(): void + { + try { + $e = new Expression('hello, [world]'); + $e->render(); + } catch (\Atk4\Dsql\Exception $e) { + $this->assertSame( + 'Expression could not render tag', + $e->getMessage() + ); + + $this->assertSame( + 'world', + $e->getParams()['tag'] + ); + } + } +} diff --git a/tests-dsql/ExpressionTest.php b/tests-dsql/ExpressionTest.php new file mode 100644 index 000000000..b9436b4cc --- /dev/null +++ b/tests-dsql/ExpressionTest.php @@ -0,0 +1,570 @@ +expectException(Exception::class); + $this->e(null); + } + + /** + * Test constructor exception - wrong 1st parameter. + * + * @covers ::__construct + */ + public function testConstructorException1st2(): void + { + $this->expectException(Exception::class); + $this->e(false); + } + + /** + * Test constructor exception - wrong 2nd parameter. + */ + public function testConstructorException2nd1(): void + { + $this->expectException(Exception::class); + $this->e('hello, []', false); + } + + /** + * Test constructor exception - wrong 2nd parameter. + */ + public function testConstructorException2nd2(): void + { + $this->expectException(Exception::class); + $this->e('hello, []', 'hello'); + } + + /** + * Test constructor exception - no arguments. + */ + public function testConstructorException0arg(): void + { + // Template is not defined for Expression + $this->expectException(Exception::class); + $this->e()->render(); + } + + /** + * Testing parameter edge cases - empty strings and arrays etc. + * + * @covers ::__construct + */ + public function testConstructor1(): void + { + $this->assertSame( + '', + $this->e('')->render() + ); + } + + /** + * Testing simple template patterns without arguments. + * Testing different ways how to pass template to constructor. + * + * @covers ::__construct + * @covers ::escapeIdentifier + */ + public function testConstructor2(): void + { + // pass as string + $this->assertSame( + 'now()', + $this->e('now()')->render() + ); + // pass as array without key + $this->assertSame( + 'now()', + $this->e(['now()'])->render() + ); + // pass as array with template key + $this->assertSame( + 'now()', + $this->e(['template' => 'now()'])->render() + ); + // pass as array without key + $this->assertSame( + ':a Name', + $this->e(['[] Name'], ['First'])->render() + ); + // pass as array with template key + $this->assertSame( + ':a Name', + $this->e(['template' => '[] Name'], ['Last'])->render() + ); + } + + /** + * Testing template with simple arguments. + * + * @covers ::__construct + */ + public function testConstructor3(): void + { + $e = $this->e('hello, [who]', ['who' => 'world']); + $this->assertSame('hello, :a', $e->render()); + $this->assertSame('world', $e->params[':a']); + + $e = $this->e('hello, {who}', ['who' => 'world']); + $this->assertSame('hello, "world"', $e->render()); + $this->assertSame([], $e->params); + } + + /** + * Testing template with complex arguments. + * + * @covers ::__construct + */ + public function testConstructor4(): void + { + // argument = Expression + $this->assertSame( + 'hello, world', + $this->e('hello, [who]', ['who' => $this->e('world')])->render() + ); + + // multiple arguments = Expression + $this->assertSame( + 'hello, world', + $this->e( + '[what], [who]', + [ + 'what' => $this->e('hello'), + 'who' => $this->e('world'), + ] + )->render() + ); + + // numeric argument = Expression + $this->assertSame( + 'hello, world', + $this->e( + '[]', + [ + $this->e( + '[what], [who]', + [ + 'what' => $this->e('hello'), + 'who' => $this->e('world'), + ] + ), + ] + )->render() + ); + + // pass template as array + $this->assertSame( + 'hello, world', + $this->e( + ['template' => 'hello, [who]'], + ['who' => $this->e('world')] + )->render() + ); + } + + /** + * @dataProvider provideNoTemplatingInSqlStringData + */ + public function testNoTemplatingInSqlString(string $expectedStr, string $exprStr, array $exprArgs): void + { + $this->assertSame($expectedStr, $this->e($exprStr, $exprArgs)->render()); + } + + /** + * @return iterable + */ + public function provideNoTemplatingInSqlStringData(): iterable + { + $testStrs = []; + foreach (['\'', '"', '`'] as $enclosureChar) { + foreach ([ + '\'[]\'', + '\'{}\'', + '\'{{}}\'', + '\'[a]\'', + '\'\\\'[]\'', + '\'\\\\[]\'', + '\'[\'\']\'', + '\'\'\'[]\'', + '\'[]\'\'\'', + ] as $testStr) { + $testStr = str_replace('\'', $enclosureChar, $testStr); + + yield [$testStr, $testStr, []]; + + $testStrs[] = $testStr; + } + } + + $fullStr = implode('', $testStrs); + yield [$fullStr, $fullStr, []]; + + $fullStr = implode(' ', $testStrs); + yield [$fullStr, $fullStr, []]; + + $fullStr = implode('x', $testStrs); + yield [$fullStr, $fullStr, []]; + } + + /** + * Test nested parameters. + * + * @covers ::__construct + * @covers ::escapeParam + * @covers ::getDebugQuery + */ + public function testNestedParams(): void + { + // ++1 and --2 + $e1 = $this->e('[] and []', [ + $this->e('++[]', [1]), + $this->e('--[]', [2]), + ]); + + $this->assertSame('++:a and --:b', $e1->render()); + + $e2 = $this->e('=== [foo] ===', ['foo' => $e1]); + + $this->assertSame('=== ++:a and --:b ===', $e2->render()); + + $this->assertSame('++:a and --:b', $e1->render()); + } + + /** + * Tests where one expression with parameter is used within several other expressions. + * + * @covers ::__construct + * @covers ::render + */ + public function testNestedExpressions(): void + { + $e1 = $this->e('Hello [who]', ['who' => 'world']); + + $e2 = $this->e('[greeting]! How are you.', ['greeting' => $e1]); + $e3 = $this->e('It is me again. [greeting]', ['greeting' => $e1]); + + $s2 = $e2->render(); // Hello :a! How are you. + $s3 = $e3->render(); // It is me again. Hello :a + + $e4 = $this->e('[] and good night', [$e1]); + $s4 = $e4->render(); // Hello :a and good night + + $this->assertSame('Hello :a! How are you.', $s2); + $this->assertSame('It is me again. Hello :a', $s3); + $this->assertSame('Hello :a and good night', $s4); + } + + /** + * @covers ::__toString + */ + /* + public function testToStringException1(): void + { + $e = new MyBadExpression('Hello'); + $this->expectException(Exception::class); + $s = (string)$e; + } + */ + + /** + * expr() should return new Expression object and inherit connection from it. + * + * @covers ::expr + */ + public function testExpr(): void + { + $e = $this->e(['connection' => new Mysql\Connection()]); + $this->assertInstanceOf(Mysql\Connection::class, $e->expr()->connection); + } + + /** + * Fully covers escapeIdentifier method. + * + * @covers ::escape + * @covers ::escapeIdentifier + * @covers ::escapeIdentifierSoft + */ + public function testEscape(): void + { + // escaping expressions + $this->assertSame( + '"first_name"', + $this->callProtected($this->e(), 'escapeIdentifier', 'first_name') + ); + $this->assertSame( + '"123"', + $this->callProtected($this->e(), 'escapeIdentifier', '123') + ); + $this->assertSame( + '"he""llo"', + $this->callProtected($this->e(), 'escapeIdentifier', 'he"llo') + ); + + // should not escape expressions + $this->assertSame( + '*', + $this->callProtected($this->e(), 'escapeIdentifierSoft', '*') + ); + $this->assertSame( + '"*"', + $this->callProtected($this->e(), 'escapeIdentifier', '*') + ); + $this->assertSame( + '(2+2) age', + $this->callProtected($this->e(), 'escapeIdentifierSoft', '(2+2) age') + ); + $this->assertSame( + '"(2+2) age"', + $this->callProtected($this->e(), 'escapeIdentifier', '(2+2) age') + ); + $this->assertSame( + '"users"."first_name"', + $this->callProtected($this->e(), 'escapeIdentifierSoft', 'users.first_name') + ); + $this->assertSame( + '"users".*', + $this->callProtected($this->e(), 'escapeIdentifierSoft', 'users.*') + ); + + $this->assertSame( + '"first_name"', + $this->e()->escape('first_name')->render() + ); + $this->assertSame( + '"first""_name"', + $this->e()->escape('first"_name')->render() + ); + $this->assertSame( + '"first""_name {}"', + $this->e()->escape('first"_name {}')->render() + ); + } + + /** + * Fully covers escapeParam method. + * + * @covers ::escapeParam + */ + public function testParam(): void + { + $e = new Expression('hello, [who]', ['who' => 'world']); + $this->assertSame( + 'hello, :a', + $e->render() + ); + $this->assertSame( + [':a' => 'world'], + $e->params + ); + } + + /** + * @covers ::consume + */ + public function testConsume(): void + { + $constants = (new \ReflectionClass(Expression::class))->getConstants(); + + // few brief tests on consume + $this->assertSame( + '"123"', + $this->callProtected($this->e(), 'consume', '123', $constants['ESCAPE_IDENTIFIER']) + ); + $this->assertSame( + ':x', + $this->callProtected($this->e(['_paramBase' => 'x']), 'consume', 123, $constants['ESCAPE_PARAM']) + ); + $this->assertSame( + 123, + $this->callProtected($this->e(), 'consume', 123, $constants['ESCAPE_NONE']) + ); + $this->assertSame( + '(select *)', + $this->callProtected($this->e(), 'consume', new Query()) + ); + + $this->assertSame( + 'hello, "myfield"', + $this->e('hello, []', [new MyField()])->render() + ); + } + + /** + * $escape_mode value is incorrect. + * + * @covers ::consume + */ + public function testConsumeException1(): void + { + $this->expectException(Exception::class); + $this->callProtected($this->e(), 'consume', 123, 'blahblah'); + } + + /** + * Only Expressions or Expressionable objects may be used in Expression. + * + * @covers ::consume + */ + public function testConsumeException2(): void + { + $this->expectException(Exception::class); + $this->callProtected($this->e(), 'consume', new \StdClass()); + } + + /** + * @covers ::offsetExists + * @covers ::offsetGet + * @covers ::offsetSet + * @covers ::offsetUnset + */ + public function testArrayAccess(): void + { + $e = $this->e('', ['parrot' => 'red', 'blue']); + + // offsetGet + $this->assertSame('red', $e['parrot']); + $this->assertSame('blue', $e[0]); + + // offsetSet + $e['cat'] = 'black'; + $this->assertSame('black', $e['cat']); + $e['cat'] = 'white'; + $this->assertSame('white', $e['cat']); + + // offsetExists, offsetUnset + $this->assertTrue(isset($e['cat'])); + unset($e['cat']); + $this->assertFalse(isset($e['cat'])); + + // testing absence of specific key in asignment + $e = $this->e('[], []'); + $e[] = 'Hello'; + $e[] = 'World'; + $this->assertSame(':a, :b', $e->render()); + + // real-life example + $age = $this->e('coalesce([age], [default_age])'); + $age['age'] = $this->e('year(now()) - year(birth_date)'); + $age['default_age'] = 18; + $this->assertSame('coalesce(year(now()) - year(birth_date), :a)', $age->render()); + } + + /** + * Test IteratorAggregate implementation. + * + * @covers ::getIterator + * + * @doesNotPerformAssertions + */ + public function testIteratorAggregate(): void + { + // TODO can not test this without actual DB connection and executing expression + } + + /** + * Test for vendors that rely on JavaScript expressions, instead of parameters. + * + * @coversNothing + */ + public function testJsonExpression(): void + { + $e = new JsonExpression('hello, [who]', ['who' => 'world']); + + $this->assertSame( + 'hello, "world"', + $e->render() + ); + $this->assertSame( + [], + $e->params + ); + } + + /** + * Test var-dump code for codecoverage. + * + * @covers ::__debugInfo + * + * @doesNotPerformAssertions + */ + public function testVarDump(): void + { + $this->e('test')->__debugInfo(); + + $this->e(' [nosuchtag] ')->__debugInfo(); + } + + /** + * Test reset(). + * + * @covers ::reset + */ + public function testReset(): void + { + // reset everything + $e = $this->e('hello, [name] [surname]', ['name' => 'John', 'surname' => 'Doe']); + $e->reset(); + $this->assertSame(['custom' => []], $this->getProtected($e, 'args')); + + // reset particular custom/tag + $e = $this->e('hello, [name] [surname]', ['name' => 'John', 'surname' => 'Doe']); + $e->reset('surname'); + $this->assertSame(['custom' => ['name' => 'John']], $this->getProtected($e, 'args')); + } +} + +// @codingStandardsIgnoreStart +class JsonExpression extends Expression +{ + public function escapeParam($value): string + { + return json_encode($value); + } +} +class MyField implements Expressionable +{ + public function getDsqlExpression(Expression $expr): Expression + { + return $expr->expr('"myfield"'); + } +} +/* +class MyBadExpression extends Expression +{ + public function getOne() + { + // should return string, but for test case we return array to get \Exception + return array(); + } +} +*/ +// @codingStandardsIgnoreEnd diff --git a/tests-dsql/QueryTest.php b/tests-dsql/QueryTest.php new file mode 100644 index 000000000..0a2494d05 --- /dev/null +++ b/tests-dsql/QueryTest.php @@ -0,0 +1,1821 @@ +assertSame( + '"q"', + $this->callProtected($this->q(), 'escapeIdentifier', 'q') + ); + } + + /** + * dsql() should return new Query object and inherit connection from it. + * + * @covers ::dsql + */ + public function testDsql(): void + { + $q = $this->q(['connection' => new Mysql\Connection()]); + $this->assertInstanceOf(Mysql\Connection::class, $q->dsql()->connection); + } + + /** + * field() should return $this Query for chaining. + * + * @covers ::field + */ + public function testFieldReturnValue(): void + { + $q = $this->q(); + $this->assertSame($q, $q->field('first_name')); + } + + /** + * Testing field - basic cases. + * + * @covers ::_render_field + * @covers ::field + */ + public function testFieldBasic(): void + { + $this->assertSame( + '"first_name"', + $this->callProtected($this->q()->field('first_name'), '_render_field') + ); + $this->assertSame( + '"first_name", "last_name"', + $this->callProtected($this->q()->field('first_name,last_name'), '_render_field') + ); + $this->assertSame( + '"first_name", "last_name"', + $this->callProtected($this->q()->field('first_name')->field('last_name'), '_render_field') + ); + $this->assertSame( + '"last_name"', + $this->callProtected($this->q()->field('first_name')->reset('field')->field('last_name'), '_render_field') + ); + $this->assertSame( + '*', + $this->callProtected($this->q()->field('first_name')->reset('field'), '_render_field') + ); + $this->assertSame( + '*', + $this->callProtected($this->q()->field('first_name')->reset(), '_render_field') + ); + $this->assertSame( + '"employee"."first_name"', + $this->callProtected($this->q()->field('employee.first_name'), '_render_field') + ); + $this->assertSame( + '"first_name" "name"', + $this->callProtected($this->q()->field('first_name', 'name'), '_render_field') + ); + $this->assertSame( + '"first_name" "name"', + $this->callProtected($this->q()->field(['name' => 'first_name']), '_render_field') + ); + $this->assertSame( + '"name"', + $this->callProtected($this->q()->field(['name' => 'name']), '_render_field') + ); + $this->assertSame( + '"employee"."first_name" "name"', + $this->callProtected($this->q()->field(['name' => 'employee.first_name']), '_render_field') + ); + $this->assertSame( + '*', + $this->callProtected($this->q()->field('*'), '_render_field') + ); + $this->assertSame( + '"employee"."first_name"', + $this->callProtected($this->q()->field('employee.first_name'), '_render_field') + ); + } + + /** + * Testing field - defaultField. + * + * @covers ::_render_field + * @covers ::field + */ + public function testFieldDefaultField(): void + { + // default defaultField + $this->assertSame( + '*', + $this->callProtected($this->q(), '_render_field') + ); + // defaultField as custom string - not escaped + $this->assertSame( + 'id', + $this->callProtected($this->q(['defaultField' => 'id']), '_render_field') + ); + // defaultField as custom string with dot - not escaped + $this->assertSame( + 'all.values', + $this->callProtected($this->q(['defaultField' => 'all.values']), '_render_field') + ); + // defaultField as Expression object - not escaped + $this->assertSame( + 'values()', + $this->callProtected($this->q(['defaultField' => new Expression('values()')]), '_render_field') + ); + } + + /** + * Testing field - basic cases. + * + * @covers ::_render_field + * @covers ::field + */ + public function testFieldExpression(): void + { + $this->assertSame( + '"name"', + $this->q('[field]')->field('name')->render() + ); + $this->assertSame( + '"first name"', + $this->q('[field]')->field('first name')->render() + ); + $this->assertSame( + '"first"."name"', + $this->q('[field]')->field('first.name')->render() + ); + $this->assertSame( + 'now()', + $this->q('[field]')->field('now()')->render() + ); + $this->assertSame( + 'now()', + $this->q('[field]')->field(new Expression('now()'))->render() + ); + // Usage of field aliases + $this->assertSame( + 'now() "time"', + $this->q('[field]')->field('now()', 'time')->render() + ); + $this->assertSame(// alias can be passed as 2nd argument + 'now() "time"', + $this->q('[field]')->field(new Expression('now()'), 'time')->render() + ); + $this->assertSame(// alias can be passed as 3nd argument + 'now() "time"', + $this->q('[field]')->field(['time' => new Expression('now()')])->render() + ); + } + + /** + * Duplicate alias of field. + * + * @covers ::_set_args + * @covers ::field + */ + public function testFieldException1(): void + { + $this->expectException(Exception::class); + $this->q()->field('name', 'a')->field('surname', 'a'); + } + + /** + * There shouldn't be alias when passing fields as array. + * + * @covers ::field + */ + public function testFieldException2(): void + { + $this->expectException(Exception::class); + $this->q()->field(['name', 'surname'], 'a'); + } + + /** + * There shouldn't be alias when passing multiple tables. + * + * @covers ::table + */ + public function testTableException1(): void + { + $this->expectException(Exception::class); + $this->q()->table('employee,jobs', 'u'); + } + + /** + * There shouldn't be alias when passing multiple tables. + * + * @covers ::table + */ + public function testTableException2(): void + { + $this->expectException(Exception::class); + $this->q()->table(['employee', 'jobs'], 'u'); + } + + /** + * Alias is NOT mandatory when pass table as Expression. + * + * @covers ::table + * + * @doesNotPerformAssertions + */ + public function testTableException3(): void + { + //$this->expectException(Exception::class); // no more + $this->q()->table($this->q()->expr('test')); + } + + /** + * Alias is IS mandatory when pass table as Query. + * + * @covers ::table + */ + public function testTableException4(): void + { + $this->expectException(Exception::class); + $this->q()->table($this->q()->table('test')); + } + + /** + * Table aliases should be unique. + * + * @covers ::_set_args + * @covers ::table + */ + public function testTableException5(): void + { + $this->expectException(Exception::class); + $this->q() + ->table('foo', 'a') + ->table('bar', 'a'); + } + + /** + * Table aliases should be unique. + * + * @covers ::_set_args + * @covers ::table + */ + public function testTableException6(): void + { + $this->expectException(Exception::class); + $this->q() + ->table('foo', 'bar') + ->table('bar'); + } + + /** + * Table aliases should be unique. + * + * @covers ::_set_args + * @covers ::table + */ + public function testTableException7(): void + { + $this->expectException(Exception::class); + $this->q() + ->table('foo') + ->table('foo'); + } + + /** + * Table aliases should be unique. + * + * @covers ::_set_args + * @covers ::table + */ + public function testTableException8(): void + { + $this->expectException(Exception::class); + $this->q() + ->table($this->q()->table('test'), 'foo') + ->table('foo'); + } + + /** + * Table aliases should be unique. + * + * @covers ::_set_args + * @covers ::table + */ + public function testTableException9(): void + { + $this->expectException(Exception::class); + $this->q() + ->table('foo') + ->table($this->q()->table('test'), 'foo'); + } + + /** + * Table can't be set as sub-Query in Update query mode. + * + * @covers ::table + */ + public function testTableException10(): void + { + $this->expectException(Exception::class); + $this->q() + ->mode('update') + ->table($this->q()->table('test'), 'foo') + ->field('name')->set('name', 1) + ->render(); + } + + /** + * Table can't be set as sub-Query in Insert query mode. + * + * @covers ::table + */ + public function testTableException11(): void + { + $this->expectException(Exception::class); + $this->q() + ->mode('insert') + ->table($this->q()->table('test'), 'foo') + ->field('name')->set('name', 1) + ->render(); + } + + /** + * Requesting non-existant query mode should throw exception. + * + * @covers ::mode + */ + public function testModeException1(): void + { + $this->expectException(Exception::class); + $this->q()->mode('non_existant_mode'); + } + + /** + * table() should return $this Query for chaining. + * + * @covers ::table + */ + public function testTableReturnValue(): void + { + $q = $this->q(); + $this->assertSame($q, $q->table('employee')); + } + + /** + * @covers ::_render_table + * @covers ::_render_table_noalias + * @covers ::table + */ + public function testTableRender1(): void + { + // no table defined + $this->assertSame( + 'select now()', + $this->q() + ->field(new Expression('now()')) + ->render() + ); + + // one table + $this->assertSame( + 'select "name" from "employee"', + $this->q() + ->field('name')->table('employee') + ->render() + ); + + $this->assertSame( + 'select "na#me" from "employee"', + $this->q() + ->field('"na#me"')->table('employee') + ->render() + ); + $this->assertSame( + 'select "na""me" from "employee"', + $this->q() + ->field(new Expression('{}', ['na"me']))->table('employee') + ->render() + ); + $this->assertSame( + 'select "жук" from "employee"', + $this->q() + ->field(new Expression('{}', ['жук']))->table('employee') + ->render() + ); + $this->assertSame( + 'select "this is 💩" from "employee"', + $this->q() + ->field(new Expression('{}', ['this is 💩']))->table('employee') + ->render() + ); + + $this->assertSame( + 'select "name" from "employee" "e"', + $this->q() + ->field('name')->table('employee', 'e') + ->render() + ); + $this->assertSame( + 'select * from "employee" "e"', + $this->q() + ->table('employee', 'e') + ->render() + ); + + // multiple tables + $this->assertSame( + 'select "employee"."name" from "employee", "jobs"', + $this->q() + ->field('employee.name')->table('employee')->table('jobs') + ->render() + ); + $this->assertSame( + 'select "name" from "employee", "jobs"', + $this->q() + ->field('name')->table('employee,jobs') + ->render() + ); + $this->assertSame( + 'select "name" from "employee", "jobs"', + $this->q() + ->field('name')->table(' employee , jobs ') + ->render() + ); + $this->assertSame( + 'select "name" from "employee", "jobs"', + $this->q() + ->field('name')->table(['employee', 'jobs']) + ->render() + ); + $this->assertSame( + 'select "name" from "employee", "jobs"', + $this->q() + ->field('name')->table(['employee ', ' jobs']) + ->render() + ); + + // multiple tables with aliases + $this->assertSame( + 'select "name" from "employee", "jobs" "j"', + $this->q() + ->field('name')->table(['employee', 'j' => 'jobs']) + ->render() + ); + $this->assertSame( + 'select "name" from "employee" "e", "jobs" "j"', + $this->q() + ->field('name')->table(['e' => 'employee', 'j' => 'jobs']) + ->render() + ); + // testing _render_table_noalias, shouldn't render table alias 'emp' + $this->assertSame( + 'insert into "employee" ("name") values (:a)', + $this->q() + ->field('name')->table('employee', 'emp')->set('name', 1) + ->mode('insert') + ->render() + ); + $this->assertSame( + 'update "employee" set "name"=:a', + $this->q() + ->field('name')->table('employee', 'emp')->set('name', 1) + ->mode('update') + ->render() + ); + } + + /** + * @covers ::_render_table + * @covers ::table + */ + public function testTableRender2(): void + { + // pass table as expression or query + $q = $this->q()->table('employee'); + + $this->assertSame( + 'select "name" from (select * from "employee") "e"', + $this->q() + ->field('name')->table($q, 'e') + ->render() + ); + + $this->assertSame( + 'select "name" from "myt""able"', + $this->q() + ->field('name')->table(new Expression('{}', ['myt"able'])) + ->render() + ); + + // test with multiple sub-queries as tables + $q1 = $this->q()->table('employee'); + $q2 = $this->q()->table('customer'); + + $this->assertSame( + // this way it would be more correct: + // 'select "e"."name", "c"."name" from (select * from "employee") "e", (select * from "customer") "c" where "e"."last_name" = "c"."last_name"', + 'select "e"."name", "c"."name" from (select * from "employee") "e", (select * from "customer") "c" where "e"."last_name" = c.last_name', + $this->q() + ->field('e.name') + ->field('c.name') + ->table($q1, 'e') + ->table($q2, 'c') + ->where('e.last_name', $this->q()->expr('c.last_name')) + ->render() + ); + } + + /** + * @covers ::render + * @covers \Atk4\Dsql\Expression::consume + * @covers \Atk4\Dsql\Expression::render + */ + public function testBasicRenderSubquery(): void + { + $age = new Expression('coalesce([age], [default_age])'); + $age['age'] = new Expression('year(now()) - year(birth_date)'); + $age['default_age'] = 18; + + $q = $this->q()->table('user')->field($age, 'calculated_age'); + + $this->assertSame( + 'select coalesce(year(now()) - year(birth_date), :a) "calculated_age" from "user"', + $q->render() + ); + } + + /** + * @covers \Atk4\Dsql\Expression::getDebugQuery + */ + public function testTestgetDebugQuery(): void + { + $age = new Expression('coalesce([age], [default_age], [foo], [bar])'); + $age['age'] = new Expression('year(now()) - year(birth_date)'); + $age['default_age'] = 18; + $age['foo'] = 'foo'; + $age['bar'] = null; + + $q = $this->q()->table('user')->field($age, 'calculated_age'); + + $this->assertSame( + preg_replace('~\s+~', '', 'select coalesce(year(now()) - year(birth_date), 18, \'foo\', NULL) "calculated_age" from "user"'), + preg_replace('~\s+~', '', $q->getDebugQuery()) + ); + } + + /** + * @covers ::__debugInfo + */ + public function testVarDump(): void + { + $this->assertMatchesRegularExpression( + '/select\s+\*\s+from\s*"user".*/', + $this->q()->table('user')->__debugInfo()['R'] + ); + } + + /** + * @covers ::__debugInfo + */ + public function testVarDump2(): void + { + $this->assertMatchesRegularExpression( + '/.*Expression could not render tag.*/', + (new Expression('Hello [world]'))->__debugInfo()['R'] + ); + } + + /** + * @covers ::__debugInfo + */ + public function testVarDump3(): void + { + $this->assertMatchesRegularExpression( + '/.*Hello \'php\'.*/', + (new Expression('Hello [world]', ['world' => 'php']))->__debugInfo()['R'] + ); + } + + /** + * @covers ::__debugInfo + */ + public function testVarDump4(): void + { + // should throw exception "Table cannot be Query in UPDATE, INSERT etc. query modes" + $this->assertMatchesRegularExpression( + '/.*Table cannot be Query.*/', + ($this->q() + ->mode('update') + ->table($this->q()->table('test'), 'foo'))->__debugInfo()['R'] + ); + } + + /** + * @covers ::_render_field + * @covers ::_render_table + * @covers ::field + * @covers ::render + * @covers ::table + */ + public function testUnionQuery(): void + { + // 1st query + $q1 = $this->q() + ->table('sales') + ->field('date') + ->field('amount', 'debit') + ->field($this->q()->expr('0'), 'credit'); // simply 0 + $this->assertSame( + 'select "date", "amount" "debit", 0 "credit" from "sales"', + $q1->render() + ); + + // 2nd query + $q2 = $this->q() + ->table('purchases') + ->field('date') + ->field($this->q()->expr('0'), 'debit') // simply 0 + ->field('amount', 'credit'); + $this->assertSame( + 'select "date", 0 "debit", "amount" "credit" from "purchases"', + $q2->render() + ); + + // $q1 union $q2 + $u = new Expression('([] union [])', [$q1, $q2]); + $this->assertSame( + '((select "date", "amount" "debit", 0 "credit" from "sales") union (select "date", 0 "debit", "amount" "credit" from "purchases"))', + $u->render() + ); + + // SELECT date, debit, credit FROM ($q1 union $q2) + $q = $this->q() + ->field('date,debit,credit') + ->table($u, 'derrivedTable'); + $this->assertSame( + 'select "date", "debit", "credit" from ((select "date", "amount" "debit", 0 "credit" from "sales") union (select "date", 0 "debit", "amount" "credit" from "purchases")) "derrivedTable"', + $q->render() + ); + + // SQLite do not support (($q1) union ($q2)) syntax. Correct syntax is ($q1 union $q2) without additional braces + // Other SQL engines are more relaxed, but still these additional braces are not needed for union + // Let's test how to do that properly + $q1->wrapInParentheses = false; + $q2->wrapInParentheses = false; + $u = new Expression('([] union [])', [$q1, $q2]); + $this->assertSame( + '(select "date", "amount" "debit", 0 "credit" from "sales" union select "date", 0 "debit", "amount" "credit" from "purchases")', + $u->render() + ); + + // SELECT date, debit, credit FROM ($q1 union $q2) + $q = $this->q() + ->field('date,debit,credit') + ->table($u, 'derrivedTable'); + $this->assertSame( + 'select "date", "debit", "credit" from (select "date", "amount" "debit", 0 "credit" from "sales" union select "date", 0 "debit", "amount" "credit" from "purchases") "derrivedTable"', + $q->render() + ); + } + + /** + * where() should return $this Query for chaining. + * + * @covers ::where + */ + public function testWhereReturnValue(): void + { + $q = $this->q(); + $this->assertSame($q, $q->where('id', 1)); + } + + /** + * having() should return $this Query for chaining. + * + * @covers ::field + */ + public function testHavingReturnValue(): void + { + $q = $this->q(); + $this->assertSame($q, $q->having('id', 1)); + } + + /** + * Basic where() tests. + * + * @covers ::_render_where + * @covers ::_sub_render_where + * @covers ::where + */ + public function testWhereBasic(): void + { + // one parameter as a string - treat as expression + $this->assertSame( + 'where (now())', + $this->q('[where]')->where('now()')->render() + ); + $this->assertSame( + 'where (foo >= bar)', + $this->q('[where]')->where('foo >= bar')->render() + ); + + // two parameters - field, value + $this->assertSame( + 'where "id" = :a', + $this->q('[where]')->where('id', 1)->render() + ); + $this->assertSame( + 'where "user"."id" = :a', + $this->q('[where]')->where('user.id', 1)->render() + ); + $this->assertSame( + 'where "db"."user"."id" = :a', + $this->q('[where]')->where('db.user.id', 1)->render() + ); + $this->assertSame( + 'where "id" is null', + $this->q('[where]')->where('id', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id', '!=', null)->render() + ); + + // three parameters - field, condition, value + $this->assertSame( + 'where "id" > :a', + $this->q('[where]')->where('id', '>', 1)->render() + ); + $this->assertSame( + 'where "id" < :a', + $this->q('[where]')->where('id', '<', 1)->render() + ); + $this->assertSame( + 'where "id" = :a', + $this->q('[where]')->where('id', '=', 1)->render() + ); + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id', '=', [1, 2])->render() + ); + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id', [1, 2])->render() + ); + $this->assertSame( + 'where "id" in (select * from "user")', + $this->q('[where]')->where('id', $this->q()->table('user'))->render() + ); + + // two parameters - more_than_just_a_field, value + $this->assertSame( + 'where "id" = :a', + $this->q('[where]')->where('id=', 1)->render() + ); + $this->assertSame( + 'where "id" != :a', + $this->q('[where]')->where('id!=', 1)->render() + ); + $this->assertSame( + 'where "id" <> :a', + $this->q('[where]')->where('id<>', 1)->render() + ); + + // field name with special symbols - not escape + $this->assertSame( + 'where now() = :a', + $this->q('[where]')->where('now()', 1)->render() + ); + + // field name as expression + $this->assertSame( + 'where now = :a', + $this->q('[where]')->where(new Expression('now'), 1)->render() + ); + + // more than one where condition - join with AND keyword + $this->assertSame( + 'where "a" = :a and "b" is null', + $this->q('[where]')->where('a', 1)->where('b', null)->render() + ); + } + + public function testWhereExpression(): void + { + $this->assertSame( + 'where (a = 5 or b = 6) and (c = 3 or d = 1)', + $this->q('[where]')->where('a = 5 or b = 6')->where('c = 3 or d = 1')->render() + ); + } + + /** + * Verify that passing garbage to where throw exception. + * + * @covers ::order + */ + public function testWhereIncompatibleObject1(): void + { + $this->expectException(Exception::class); + $this->q('[where]')->where('a', new \DateTime())->render(); + } + + /** + * Verify that passing garbage to where throw exception. + * + * @covers ::order + */ + public function testWhereIncompatibleObject2(): void + { + $this->expectException(Exception::class); + $this->q('[where]')->where('a', new \DateTime()); + } + + /** + * Verify that passing garbage to where throw exception. + * + * @covers ::order + */ + public function testWhereIncompatibleObject3(): void + { + $this->expectException(Exception::class); + $this->q('[where]')->where('a', '<>', new \DateTime()); + } + + /** + * Testing where() with special values - null, array, like. + * + * @covers ::_render_where + * @covers ::_sub_render_where + * @covers ::where + */ + public function testWhereSpecialValues(): void + { + // in | not in + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id', 'in', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', 'not in', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', 'not', [1, 2])->render() + ); + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id', '=', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', '<>', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', '!=', [1, 2])->render() + ); + // speacial treatment for empty array values + $this->assertSame( + 'where 1 = 0', + $this->q('[where]')->where('id', '=', [])->render() + ); + $this->assertSame( + 'where 1 = 1', + $this->q('[where]')->where('id', '<>', [])->render() + ); + // pass array as CSV + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id', 'in', '1,2')->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', 'not in', '1, 2')->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id', 'not', '1,2')->render() + ); + + // is | is not + $this->assertSame( + 'where "id" is null', + $this->q('[where]')->where('id', 'is', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id', 'is not', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id', 'not', null)->render() + ); + $this->assertSame( + 'where "id" is null', + $this->q('[where]')->where('id', '=', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id', '<>', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id', '!=', null)->render() + ); + + // like | not like + $this->assertSame( + 'where "name" like :a', + $this->q('[where]')->where('name', 'like', 'foo')->render() + ); + $this->assertSame( + 'where "name" not like :a', + $this->q('[where]')->where('name', 'not like', 'foo')->render() + ); + + // two parameters - more_than_just_a_field, value + // is | is not + $this->assertSame( + 'where "id" is null', + $this->q('[where]')->where('id=', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id!=', null)->render() + ); + $this->assertSame( + 'where "id" is not null', + $this->q('[where]')->where('id<>', null)->render() + ); + + // in | not in + $this->assertSame( + 'where "id" in (:a, :b)', + $this->q('[where]')->where('id=', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id!=', [1, 2])->render() + ); + $this->assertSame( + 'where "id" not in (:a, :b)', + $this->q('[where]')->where('id<>', [1, 2])->render() + ); + } + + /** + * Having basically is the same as where, so we can relax and trouhly test where() instead. + * + * @covers ::_render_having + * @covers ::having + */ + public function testBasicHaving(): void + { + $this->assertSame( + 'having "id" = :a', + $this->q('[having]')->having('id', 1)->render() + ); + $this->assertSame( + 'having "id" > :a', + $this->q('[having]')->having('id', '>', 1)->render() + ); + $this->assertSame( + 'where "id" = :a having "id" > :b', + $this->q('[where][having]')->where('id', 1)->having('id>', 1)->render() + ); + } + + /** + * Test Limit. + * + * @covers ::_render_limit + * @covers ::limit + */ + public function testLimit(): void + { + $this->assertSame( + 'limit 0, 100', + $this->q('[limit]')->limit(100)->render() + ); + $this->assertSame( + 'limit 200, 100', + $this->q('[limit]')->limit(100, 200)->render() + ); + } + + /** + * Test Order. + * + * @covers ::_render_order + * @covers ::order + */ + public function testOrder(): void + { + $this->assertSame( + 'order by "name"', + $this->q('[order]')->order('name')->render() + ); + $this->assertSame( + 'order by "name", "surname"', + $this->q('[order]')->order('name,surname')->render() + ); + $this->assertSame( + 'order by "name" desc, "surname" desc', + $this->q('[order]')->order('name desc,surname desc')->render() + ); + $this->assertSame( + 'order by "name" desc, "surname"', + $this->q('[order]')->order(['name desc', 'surname'])->render() + ); + $this->assertSame( + 'order by "name" desc, "surname"', + $this->q('[order]')->order('surname')->order('name desc')->render() + ); + $this->assertSame( + 'order by "name" desc, "surname"', + $this->q('[order]')->order('surname', false)->order('name', true)->render() + ); + // table name|alias included + $this->assertSame( + 'order by "users"."name"', + $this->q('[order]')->order('users.name')->render() + ); + // strange field names + $this->assertSame( + 'order by "my name" desc', + $this->q('[order]')->order('"my name" desc')->render() + ); + $this->assertSame( + 'order by "жук"', + $this->q('[order]')->order('жук asc')->render() + ); + $this->assertSame( + 'order by "this is 💩"', + $this->q('[order]')->order('this is 💩')->render() + ); + $this->assertSame( + 'order by "this is жук" desc', + $this->q('[order]')->order('this is жук desc')->render() + ); + $this->assertSame( + 'order by * desc', + $this->q('[order]')->order(['* desc'])->render() + ); + $this->assertSame( + 'order by "{}" desc', + $this->q('[order]')->order(['{} desc'])->render() + ); + $this->assertSame( + 'order by "* desc"', + $this->q('[order]')->order(new Expression('"* desc"'))->render() + ); + $this->assertSame( + 'order by "* desc"', + $this->q('[order]')->order($this->q()->escape('* desc'))->render() + ); + $this->assertSame( + 'order by "* desc {}"', + $this->q('[order]')->order($this->q()->escape('* desc {}'))->render() + ); + // custom sort order + $this->assertSame( + 'order by "name" desc nulls last', + $this->q('[order]')->order('name', 'desc nulls last')->render() + ); + $this->assertSame( + 'order by "name" nulls last', + $this->q('[order]')->order('name', 'nulls last')->render() + ); + } + + /** + * If first argument is array, second argument must not be used. + * + * @covers ::order + */ + public function testOrderException1(): void + { + $this->expectException(Exception::class); + $this->q('[order]')->order(['name', 'surname'], 'desc'); + } + + /** + * Test Group. + * + * @covers ::_render_group + * @covers ::group + */ + public function testGroup(): void + { + $this->assertSame( + 'group by "gender"', + $this->q('[group]')->group('gender')->render() + ); + $this->assertSame( + 'group by "gender", "age"', + $this->q('[group]')->group('gender,age')->render() + ); + $this->assertSame( + 'group by "gender", "age"', + $this->q('[group]')->group(['gender', 'age'])->render() + ); + $this->assertSame( + 'group by "gender", "age"', + $this->q('[group]')->group('gender')->group('age')->render() + ); + // table name|alias included + $this->assertSame( + 'group by "users"."gender"', + $this->q('[group]')->group('users.gender')->render() + ); + // strange field names + $this->assertSame( + 'group by "my name"', + $this->q('[group]')->group('"my name"')->render() + ); + $this->assertSame( + 'group by "жук"', + $this->q('[group]')->group('жук')->render() + ); + $this->assertSame( + 'group by "this is 💩"', + $this->q('[group]')->group('this is 💩')->render() + ); + $this->assertSame( + 'group by "this is жук"', + $this->q('[group]')->group('this is жук')->render() + ); + $this->assertSame( + 'group by date_format(dat, "%Y")', + $this->q('[group]')->group(new Expression('date_format(dat, "%Y")'))->render() + ); + $this->assertSame( + 'group by date_format(dat, "%Y")', + $this->q('[group]')->group('date_format(dat, "%Y")')->render() + ); + } + + /** + * Test groupConcat. + */ + public function testGroupConcatException(): void + { + // doesn't support groupConcat by default + $this->expectException(Exception::class); + $this->q()->groupConcat('foo'); + } + + /** + * Test groupConcat. + * + * @covers ::groupConcat + */ + public function testGroupConcat(): void + { + $q = new Mysql\Query(); + $this->assertSame('group_concat(`foo` separator :a)', $q->groupConcat('foo', '-')->render()); + + $q = new Oracle\Query(); + $this->assertSame('listagg("foo", :a) within group (order by "foo")', $q->groupConcat('foo', '-')->render()); + + $q = new Oracle\Version12\Query(); + $this->assertSame('listagg("foo", :a) within group (order by "foo")', $q->groupConcat('foo', '-')->render()); + + $q = new Postgresql\Query(); + $this->assertSame('string_agg("foo", :a)', $q->groupConcat('foo', '-')->render()); + + $q = new Sqlite\Query(); + $this->assertSame('group_concat("foo", :a)', $q->groupConcat('foo', '-')->render()); + } + + /** + * Test expr(). + * + * @covers ::expr + */ + public function testExpr(): void + { + $this->assertSame(Expression::class, get_class($this->q()->expr('foo'))); + + $q = new Mysql\Query(); + $this->assertSame(\Atk4\Dsql\Mysql\Expression::class, get_class($q->expr('foo'))); + } + + /** + * Test Join. + * + * @covers ::_render_join + * @covers ::join + */ + public function testJoin(): void + { + $this->assertSame( + 'left join "address" on "address"."id" = "address_id"', + $this->q('[join]')->join('address')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."id" = "address_id"', + $this->q('[join]')->join('address a')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."id" = "user"."address_id"', + $this->q('[join]')->table('user')->join('address a')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."id" = "user"."my_address_id"', + $this->q('[join]')->table('user')->join('address a', 'my_address_id')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."id" = "u"."address_id"', + $this->q('[join]')->table('user', 'u')->join('address a')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."user_id" = "u"."id"', + $this->q('[join]')->table('user', 'u')->join('address.user_id a')->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."user_id" = "u"."id" ' . + 'left join "bank" "b" on "b"."id" = "u"."bank_id"', + $this->q('[join]')->table('user', 'u') + ->join(['a' => 'address.user_id', 'b' => 'bank'])->render() + ); + $this->assertSame( + 'left join "address" on "address"."user_id" = "u"."id" ' . + 'left join "bank" on "bank"."id" = "u"."bank_id"', + $this->q('[join]')->table('user', 'u') + ->join(['address.user_id', 'bank'])->render() + ); + $this->assertSame( + 'left join "address" "a" on "a"."user_id" = "u"."id" ' . + 'left join "bank" "b" on "b"."id" = "u"."bank_id" ' . + 'left join "bank_details" on "bank_details"."id" = "bank"."details_id"', + $this->q('[join]')->table('user', 'u') + ->join(['a' => 'address.user_id', 'b' => 'bank']) + ->join('bank_details', 'bank.details_id')->render() + ); + + $this->assertSame( + 'left join "address" "a" on a.name like u.pattern', + $this->q('[join]')->table('user', 'u') + ->join('address a', new Expression('a.name like u.pattern'))->render() + ); + } + + /** + * Combined execution of where() clauses. + * + * @covers ::_render_where + * @covers ::mode + * @covers ::where + */ + public function testCombinedWhere(): void + { + $this->assertSame( + 'select "name" from "employee" where "a" = :a', + $this->q() + ->field('name')->table('employee')->where('a', 1) + ->render() + ); + + $this->assertSame( + 'select "name" from "employee" where "employee"."a" = :a', + $this->q() + ->field('name')->table('employee')->where('employee.a', 1) + ->render() + ); + + /* + $this->assertEquals( + 'select "name" from "db"."employee" where "db"."employee"."a" = :a', + $this->q() + ->field('name')->table('db.employee')->where('db.employee.a',1) + ->render() + ); + */ + + $this->assertSame( + 'delete from "employee" where "employee"."a" = :a', + $this->q() + ->mode('delete') + ->field('name')->table('employee')->where('employee.a', 1) + ->render() + ); + + $user_ids = $this->q()->table('expired_users')->field('user_id'); + + $this->assertSame( + 'update "user" set "active"=:a where "id" in (select "user_id" from "expired_users")', + $this->q() + ->table('user') + ->where('id', 'in', $user_ids) + ->set('active', 0) + ->mode('update') + ->render() + ); + } + + /** + * Test OrWhere and AndWhere without where condition. Should ignore them. + * + * @covers ::_render_andwhere + * @covers ::_render_orwhere + * @covers ::_render_where + * @covers ::andExpr + * @covers ::orExpr + * @covers ::where + */ + public function testEmptyOrAndWhere(): void + { + $this->assertSame( + '', + $this->q()->orExpr()->render() + ); + + $this->assertSame( + '', + $this->q()->andExpr()->render() + ); + } + + /** + * Test insert, update and delete templates. + * + * @covers ::_render_set + * @covers ::_render_set_fields + * @covers ::_render_set_values + * @covers ::mode + * @covers ::set + * @covers ::where + */ + public function testInsertDeleteUpdate(): void + { + // delete template + $this->assertSame( + 'delete from "employee" where "name" = :a', + $this->q() + ->field('name')->table('employee')->where('name', 1) + ->mode('delete') + ->render() + ); + + // update template + $this->assertSame( + 'update "employee" set "name"=:a', + $this->q() + ->field('name')->table('employee')->set('name', 1) + ->mode('update') + ->render() + ); + + $this->assertSame( + 'update "employee" set "name"="name"+1', + $this->q() + ->field('name')->table('employee')->set('name', new Expression('"name"+1')) + ->mode('update') + ->render() + ); + + // insert template + $this->assertSame( + 'insert into "employee" ("name") values (:a)', + $this->q() + ->field('name')->table('employee')->set('name', 1) + ->mode('insert') + ->render() + ); + + // set multiple fields + $this->assertSame( + 'insert into "employee" ("time", "name") values (now(), :a)', + $this->q() + ->field('time')->field('name')->table('employee') + ->set('time', new Expression('now()')) + ->set('name', 'unknown') + ->mode('insert') + ->render() + ); + + // set as array + $this->assertSame( + 'insert into "employee" ("time", "name") values (now(), :a)', + $this->q() + ->field('time')->field('name')->table('employee') + ->set(['time' => new Expression('now()'), 'name' => 'unknown']) + ->mode('insert') + ->render() + ); + } + + /** + * set() should return $this Query for chaining. + * + * @covers ::set + */ + public function testSetReturnValue(): void + { + $q = $this->q(); + $this->assertSame($q, $q->set('id', 1)); + } + + /** + * Value of type array is not supported by SQL. + * + * @covers ::set + */ + public function testSetException1(): void + { + $this->expectException(Exception::class); + $this->q()->set('name', []); + } + + /** + * Field name can be expression. + * + * @covers ::set + * + * @doesNotPerformAssertions + */ + public function testSetException2(): void + { + $this->q()->set(new Expression('foo'), 1); + } + + /** + * Test nested OR and AND expressions. + * + * @covers ::_render_andwhere + * @covers ::_render_orwhere + * @covers ::andExpr + * @covers ::orExpr + * @covers ::where + */ + public function testNestedOrAnd(): void + { + // test 1 + $q = $this->q(); + $q->table('employee')->field('name'); + $q->where( + $q + ->orExpr() + ->where('a', 1) + ->where('b', 1) + ); + $this->assertSame( + 'select "name" from "employee" where ("a" = :a or "b" = :b)', + $q->render() + ); + + // test 2 + $q = $this->q(); + $q->table('employee')->field('name'); + $q->where( + $q + ->orExpr() + ->where('a', 1) + ->where('b', 1) + ->where( + $q->andExpr() + ->where('true') + ->where('false') + ) + ); + $this->assertSame( + 'select "name" from "employee" where ("a" = :a or "b" = :b or ((true) and (false)))', + $q->render() + ); + } + + public function testNestedOrAndHaving(): void + { + $q = $this->q(); + $q->table('employee')->field(new Expression('sum([])', ['amount']), 'salary')->group('type'); + $q->having( + $q + ->orExpr() + ->having('a', 1) + ->having('b', 1) + ); + $this->assertSame( + 'select sum(:a) "salary" from "employee" group by "type" having ("a" = :b or "b" = :c)', + $q->render() + ); + } + + public function testNestedOrAndHavingWithWhereException(): void + { + $q = $this->q(); + $q->table('employee')->field(new Expression('sum([])', ['amount']), 'salary')->group('type'); + $q->having( + $q + ->orExpr() + ->where('a', 1) + ->having('b', 1) // mixing triggers Exception on render + ); + + $this->expectException(Exception::class); + $q->render(); + } + + /** + * Test reset(). + * + * @covers \Atk4\Dsql\Expression::reset + */ + public function testReset(): void + { + // reset everything + $q = $this->q()->table('user')->where('name', 'John'); + $q->reset(); + $this->assertSame('select *', $q->render()); + + // reset particular tag + $q = $this->q() + ->table('user') + ->where('name', 'John') + ->reset('where') + ->where('surname', 'Doe'); + $this->assertSame('select * from "user" where "surname" = :a', $q->render()); + } + + /** + * Test [option]. + * + * @covers ::_render_option + * @covers ::option + */ + public function testOption(): void + { + // single option + $this->assertSame( + 'select calc_found_rows * from "test"', + $this->q()->table('test')->option('calc_found_rows')->render() + ); + // multiple options + $this->assertSame( + 'select calc_found_rows ignore * from "test"', + $this->q()->table('test')->option('calc_found_rows,ignore')->render() + ); + $this->assertSame( + 'select calc_found_rows ignore * from "test"', + $this->q()->table('test')->option(['calc_found_rows', 'ignore'])->render() + ); + // options for specific modes + $q = $this->q() + ->table('test') + ->field('name') + ->set('name', 1) + ->option('calc_found_rows', 'select') // for default select mode + ->option('ignore', 'insert'); // for insert mode + + $this->assertSame( + 'select calc_found_rows "name" from "test"', + $q->mode('select')->render() + ); + $this->assertSame( + 'insert ignore into "test" ("name") values (:a)', + $q->mode('insert')->render() + ); + $this->assertSame( + 'update "test" set "name"=:a', + $q->mode('update')->render() + ); + } + + /** + * Test caseExpr (normal). + * + * @covers ::_render_case + * @covers ::caseExpr + * @covers ::otherwise + * @covers ::when + */ + public function testCaseExprNormal(): void + { + // Test normal form + $s = $this->q()->caseExpr() + ->when(['status', 'New'], 't2.expose_new') + ->when(['status', 'like', '%Used%'], 't2.expose_used') + ->otherwise(null) + ->render(); + $this->assertSame('case when "status" = :a then :b when "status" like :c then :d else :e end', $s); + + // with subqueries + $age = new Expression('year(now()) - year(birth_date)'); + $q = $this->q()->table('user')->field($age, 'calc_age'); + + $s = $this->q()->caseExpr() + ->when(['age', '>', $q], 'Older') + ->otherwise('Younger') + ->render(); + $this->assertSame('case when "age" > (select year(now()) - year(birth_date) "calc_age" from "user") then :a else :b end', $s); + } + + /** + * Test caseExpr (short form). + * + * @covers ::_render_case + * @covers ::caseExpr + * @covers ::otherwise + * @covers ::when + */ + public function testCaseExprShortForm(): void + { + $s = $this->q()->caseExpr('status') + ->when('New', 't2.expose_new') + ->when('Used', 't2.expose_used') + ->otherwise(null) + ->render(); + $this->assertSame('case "status" when :a then :b when :c then :d else :e end', $s); + + // with subqueries + $age = new Expression('year(now()) - year(birth_date)'); + $q = $this->q()->table('user')->field($age, 'calc_age'); + + $s = $this->q()->caseExpr($q) + ->when(100, 'Very old') + ->otherwise('Younger') + ->render(); + $this->assertSame('case (select year(now()) - year(birth_date) "calc_age" from "user") when :a then :b else :c end', $s); + } + + /** + * Incorrect use of "when" method parameters. + * + * @doesNotPerformAssertions + */ + public function testCaseExprException1(): void + { + //$this->expectException(Exception::class); + $this->q()->caseExpr() + ->when(['status'], 't2.expose_new') + ->render(); + } + + /** + * When using short form CASE statement, then you should not set array as when() method 1st parameter. + */ + public function testCaseExprException2(): void + { + $this->expectException(Exception::class); + $this->q()->caseExpr('status') + ->when(['status', 'New'], 't2.expose_new') + ->render(); + } + + /** + * Tests exprNow() method. + * + * @covers ::exprNow + */ + public function testExprNow(): void + { + $this->assertSame( + 'update "employee" set "hired"=current_timestamp()', + $this->q() + ->field('hired')->table('employee')->set('hired', $this->q()->exprNow()) + ->mode('update') + ->render() + ); + + $this->assertSame( + 'update "employee" set "hired"=current_timestamp(:a)', + $this->q() + ->field('hired')->table('employee')->set('hired', $this->q()->exprNow(2)) + ->mode('update') + ->render() + ); + } + + /** + * Test table name with dots in it - Select. + */ + public function testTableNameDot1(): void + { + // render table + $this->assertSame( + '"foo"."bar"', + $this->callProtected($this->q()->table('foo.bar'), '_render_table') + ); + + $this->assertSame( + '"foo"."bar" "a"', + $this->callProtected($this->q()->table('foo.bar', 'a'), '_render_table') + ); + + // where clause + $this->assertSame( + 'select "name" from "db1"."employee" where "a" = :a', + $this->q() + ->field('name')->table('db1.employee')->where('a', 1) + ->render() + ); + + $this->assertSame( + 'select "name" from "db1"."employee" where "db1"."employee"."a" = :a', + $this->q() + ->field('name')->table('db1.employee')->where('db1.employee.a', 1) + ->render() + ); + } + + /** + * Test WITH. + */ + public function testWith(): void + { + $q1 = $this->q()->table('salaries')->field('salary'); + + $q2 = $this->q() + ->with($q1, 'q1') + ->table('q1'); + $this->assertSame('with "q1" as (select "salary" from "salaries") select * from "q1"', $q2->render()); + + $q2 = $this->q() + ->with($q1, 'q1', null, true) + ->table('q1'); + $this->assertSame('with recursive "q1" as (select "salary" from "salaries") select * from "q1"', $q2->render()); + + $q2 = $this->q() + ->with($q1, 'q11', ['foo', 'qwe"ry']) + ->with($q1, 'q12', ['bar', 'baz'], true) // this one is recursive + ->table('q11') + ->table('q12'); + $this->assertSame('with recursive "q11" ("foo", "qwe""ry") as (select "salary" from "salaries"), "q12" ("bar", "baz") as (select "salary" from "salaries") select * from "q11", "q12"', $q2->render()); + + // now test some more useful reql life query + $quotes = $this->q() + ->table('quotes') + ->field('emp_id') + ->field($this->q()->expr('sum([])', ['total_net'])) + ->group('emp_id'); + $invoices = $this->q() + ->table('invoices') + ->field('emp_id') + ->field($this->q()->expr('sum([])', ['total_net'])) + ->group('emp_id'); + $q = $this->q() + ->with($quotes, 'q', ['emp', 'quoted']) + ->with($invoices, 'i', ['emp', 'invoiced']) + ->table('employees') + ->join('q.emp') + ->join('i.emp') + ->field(['name', 'salary', 'q.quoted', 'i.invoiced']); + $this->assertSame( + 'with ' . + '"q" ("emp", "quoted") as (select "emp_id", sum(:a) from "quotes" group by "emp_id"), ' . + '"i" ("emp", "invoiced") as (select "emp_id", sum(:b) from "invoices" group by "emp_id") ' . + 'select "name", "salary", "q"."quoted", "i"."invoiced" ' . + 'from "employees" ' . + 'left join "q" on "q"."emp" = "employees"."id" ' . + 'left join "i" on "i"."emp" = "employees"."id"', + $q->render() + ); + } + + public function testExists(): void + { + $this->assertSame( + 'select exists (select * from "contacts" where "first_name" = :a)', + $this->q()->table('contacts')->where('first_name', 'John')->exists()->render() + ); + + $q = new Oracle\Query(); + $this->assertSame( + 'select case when exists(select * from "contacts" where "first_name" = :a) then 1 else 0 end from "DUAL"', + $q->table('contacts')->where('first_name', 'John')->exists()->render() + ); + + $q = new Mssql\Query(); + $this->assertSame( + 'select case when exists(select * from [contacts] where [first_name] = :a) then 1 else 0 end', + $q->table('contacts')->where('first_name', 'John')->exists()->render() + ); + } +} diff --git a/tests-dsql/RandomTest.php b/tests-dsql/RandomTest.php new file mode 100644 index 000000000..5474eed15 --- /dev/null +++ b/tests-dsql/RandomTest.php @@ -0,0 +1,110 @@ + null, + 'system_id' => '3576', + 'system' => null, + 'created_dts' => 123, + 'contractor_from' => null, + 'contractor_to' => null, + 'vat_rate_id' => null, + 'currency_id' => null, + 'vat_period_id' => null, + 'journal_spec_id' => '147735', + 'job_id' => '9341', + 'nominal_id' => null, + 'root_nominal_code' => null, + 'doc_type' => null, + 'is_cn' => 'N', + 'doc_date' => null, + 'ref_no' => '940 testingqq11111', + 'po_ref' => null, + 'total_gross' => '100.00', + 'total_net' => null, + 'total_vat' => null, + 'exchange_rate' => null, + 'note' => null, + 'archive' => 'N', + 'fx_document_id' => null, + 'exchanged_total_net' => null, + 'exchanged_total_gross' => null, + 'exchanged_total_vat' => null, + 'exchanged_total_a' => null, + 'exchanged_total_b' => null, + ]; + $q = $this->q(); + $q->mode('insert'); + foreach ($data as $key => $val) { + $q->set($key, $val); + } + $this->assertSame( + 'insert into ("' . implode('", "', array_keys($data)) . '") values (:a, :b, :c, :d, :e, :f, :g, :h, :i, :j, :k, :l, :m, :n, :o, :p, :q, :r, :s, :t, :u, :v, :w, :x, :y, :z, :aa, :ab, :ac, :ad)', + $q->render() + ); + } + + /** + * Confirms that group concat works for all the SQL vendors we support. + */ + public function _groupConcatTest(string $expected, Query $q): void + { + $q->table('people'); + $q->group('age'); + + $q->field('age'); + $q->field($q->groupConcat('name', ',')); + + $q->groupConcat('name', ','); + + $this->assertSame($expected, $q->render()); + } + + public function testGroupConcat(): void + { + $this->_groupConcatTest( + 'select `age`, group_concat(`name` separator :a) from `people` group by `age`', + new Mysql\Query() + ); + + $this->_groupConcatTest( + 'select "age", group_concat("name", :a) from "people" group by "age"', + new Sqlite\Query() + ); + + $this->_groupConcatTest( + 'select "age", string_agg("name", :a) from "people" group by "age"', + new Postgresql\Query() + ); + + $this->_groupConcatTest( + 'select "age", listagg("name", :a) within group (order by "name") from "people" group by "age"', + new Oracle\Query() + ); + } +} diff --git a/tests-dsql/WithDb/ConnectionTest.php b/tests-dsql/WithDb/ConnectionTest.php new file mode 100644 index 000000000..0bca877fd --- /dev/null +++ b/tests-dsql/WithDb/ConnectionTest.php @@ -0,0 +1,22 @@ +assertSame('1', $c->expr('SELECT 1' . ($c->getDatabasePlatform() instanceof OraclePlatform ? ' FROM DUAL' : ''))->getOne()); + } +} diff --git a/tests-dsql/WithDb/SelectTest.php b/tests-dsql/WithDb/SelectTest.php new file mode 100644 index 000000000..77a378eb7 --- /dev/null +++ b/tests-dsql/WithDb/SelectTest.php @@ -0,0 +1,314 @@ +c->getDatabasePlatform() instanceof OraclePlatform) { + $this->c->connection()->executeQuery('begin + execute immediate \'drop table "employee"\'; + exception + when others then + if sqlcode != -942 then + raise; + end if; + end;'); + } else { + $this->c->connection()->executeQuery('DROP TABLE IF EXISTS employee'); + } + } + + protected function setUp(): void + { + $this->c = Connection::connect($GLOBALS['DB_DSN'], $GLOBALS['DB_USER'], $GLOBALS['DB_PASSWD']); + + $this->dropDbIfExists(); + + $strType = $this->c->getDatabasePlatform() instanceof OraclePlatform ? 'varchar2' : 'varchar'; + $boolType = ['mssql' => 'bit', 'oracle' => 'number(1)'][$this->c->getDatabasePlatform()->getName()] ?? 'bool'; + $fixIdentifiersFunc = function ($sql) { + return preg_replace_callback('~(?:\'(?:\'\'|\\\\\'|[^\'])*\')?+\K"([^\'"()\[\]{}]*?)"~s', function ($matches) { + if ($this->c->getDatabasePlatform() instanceof MySQLPlatform) { + return '`' . $matches[1] . '`'; + } elseif ($this->c->getDatabasePlatform() instanceof SQLServer2012Platform) { + return '[' . $matches[1] . ']'; + } + + return '"' . $matches[1] . '"'; + }, $sql); + }; + $this->c->connection()->executeQuery($fixIdentifiersFunc('CREATE TABLE "employee" ("id" int not null, "name" ' . $strType . '(100), "surname" ' . $strType . '(100), "retired" ' . $boolType . ', ' . ($this->c->getDatabasePlatform() instanceof OraclePlatform ? 'CONSTRAINT "employee_pk" ' : '') . 'PRIMARY KEY ("id"))')); + foreach ([ + ['id' => 1, 'name' => 'Oliver', 'surname' => 'Smith', 'retired' => false], + ['id' => 2, 'name' => 'Jack', 'surname' => 'Williams', 'retired' => true], + ['id' => 3, 'name' => 'Harry', 'surname' => 'Taylor', 'retired' => true], + ['id' => 4, 'name' => 'Charlie', 'surname' => 'Lee', 'retired' => false], + ] as $row) { + $this->c->connection()->executeQuery($fixIdentifiersFunc('INSERT INTO "employee" (' . implode(', ', array_map(function ($v) { + return '"' . $v . '"'; + }, array_keys($row))) . ') VALUES(' . implode(', ', array_map(function ($v) { + if (is_bool($v)) { + if ($this->c->getDatabasePlatform() instanceof PostgreSQL94Platform) { + return $v ? 'true' : 'false'; + } + + return $v ? 1 : 0; + } elseif (is_int($v)) { + return $v; + } + + return '\'' . $v . '\''; + }, $row)) . ')')); + } + } + + protected function tearDown(): void + { + $this->dropDbIfExists(); + + $this->c = null; // @phpstan-ignore-line + } + + /** + * @param mixed $table + * @param string $alias + */ + private function q($table = null, string $alias = null): Query + { + $q = $this->c->dsql(); + + // add table to query if specified + if ($table !== null) { + $q->table($table, $alias); + } + + return $q; + } + + /** + * @param string|array $template + * @param array $args + */ + private function e($template = [], array $args = null): Expression + { + return $this->c->expr($template, $args); + } + + public function testBasicQueries(): void + { + $this->assertSame(4, count($this->q('employee')->getRows())); + + $this->assertSame( + ['name' => 'Oliver', 'surname' => 'Smith'], + $this->q('employee')->field('name,surname')->getRow() + ); + + $this->assertSame( + ['surname' => 'Williams'], + $this->q('employee')->field('surname')->where('retired', true)->getRow() + ); + + $this->assertSame( + '4', + $this->q()->field(new Expression('2+2'))->getOne() + ); + + $this->assertSame( + '4', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + $names = []; + foreach ($this->q('employee')->where('retired', false)->getIterator() as $row) { + $names[] = $row['name']; + } + + $this->assertSame( + ['Oliver', 'Charlie'], + $names + ); + + $this->assertSame( + [['now' => '4']], + $this->q()->field(new Expression('2+2'), 'now')->getRows() + ); + + /* + * PostgreSQL needs to have values cast, to make the query work. + * But CAST(.. AS int) does not work in mysql. So we use two different tests.. + * (CAST(.. AS int) will work on mariaDB, whereas mysql needs it to be CAST(.. AS signed)) + */ + if ($this->c->getDatabasePlatform() instanceof PostgreSQL94Platform) { + $this->assertSame( + [['now' => '6']], + $this->q()->field(new Expression('CAST([] AS int)+CAST([] AS int)', [3, 3]), 'now')->getRows() + ); + } else { + $this->assertSame( + [['now' => '6']], + $this->q()->field(new Expression('[]+[]', [3, 3]), 'now')->getRows() + ); + } + + $this->assertSame( + '5', + $this->q()->field(new Expression('COALESCE([], \'5\')', [null]), 'null_test')->getOne() + ); + } + + public function testExpression(): void + { + /* + * PostgreSQL, at least versions before 10, needs to have the string cast to the + * correct datatype. + * But using CAST(.. AS CHAR) will return one single character on postgresql, but the + * entire string on mysql. + */ + if ($this->c->getDatabasePlatform() instanceof PostgreSQL94Platform || $this->c->getDatabasePlatform() instanceof SQLServer2012Platform) { + $this->assertSame( + 'foo', + $this->e('select CAST([] AS VARCHAR)', ['foo'])->getOne() + ); + } elseif ($this->c->getDatabasePlatform() instanceof OraclePlatform) { + $this->assertSame( + 'foo', + $this->e('select CAST([] AS VARCHAR2(100)) FROM DUAL', ['foo'])->getOne() + ); + } else { + $this->assertSame( + 'foo', + $this->e('select CAST([] AS CHAR)', ['foo'])->getOne() + ); + } + } + + public function testOtherQueries(): void + { + // truncate table + $this->q('employee')->truncate(); + $this->assertSame( + '0', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // insert + $this->q('employee') + ->set(['id' => 1, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + $this->q('employee') + ->set(['id' => 2, 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + $this->assertSame( + [['id' => '1', 'name' => 'John'], ['id' => '2', 'name' => 'Jane']], + $this->q('employee')->field('id,name')->order('id')->getRows() + ); + + // update + $this->q('employee') + ->where('name', 'John') + ->set('name', 'Johnny') + ->update(); + $this->assertSame( + [['id' => '1', 'name' => 'Johnny'], ['id' => '2', 'name' => 'Jane']], + $this->q('employee')->field('id,name')->order('id')->getRows() + ); + + // replace + if ($this->c->getDatabasePlatform() instanceof PostgreSQL94Platform || $this->c->getDatabasePlatform() instanceof SQLServer2012Platform || $this->c->getDatabasePlatform() instanceof OraclePlatform) { + $this->q('employee') + ->set(['name' => 'Peter', 'surname' => 'Doe', 'retired' => true]) + ->where('id', 1) + ->update(); + } else { + $this->q('employee') + ->set(['id' => 1, 'name' => 'Peter', 'surname' => 'Doe', 'retired' => true]) + ->replace(); + } + + // In SQLite replace is just like insert, it just checks if there is + // duplicate key and if it is it deletes the row, and inserts the new + // one, otherwise it just inserts. + // So order of records after REPLACE in SQLite will be [Jane, Peter] + // not [Peter, Jane] as in MySQL, which in theory does the same thing, + // but returns [Peter, Jane] - in original order. + // That's why we add usort here. + $data = $this->q('employee')->field('id,name')->getRows(); + usort($data, function ($a, $b) { + return $a['id'] - $b['id']; + }); + $this->assertSame( + [['id' => '1', 'name' => 'Peter'], ['id' => '2', 'name' => 'Jane']], + $data + ); + + // delete + $this->q('employee') + ->where('retired', true) + ->delete(); + $this->assertSame( + [['id' => '2', 'name' => 'Jane']], + $this->q('employee')->field('id,name')->getRows() + ); + } + + public function testEmptyGetOne(): void + { + // truncate table + $this->q('employee')->truncate(); + $this->expectException(Exception::class); + $this->q('employee')->field('name')->getOne(); + } + + public function testWhereExpression(): void + { + $this->assertSame( + [['id' => '2', 'name' => 'Jack', 'surname' => 'Williams', 'retired' => '1']], + $this->q('employee')->where('retired', true)->where($this->q()->expr('{}=[] or {}=[]', ['surname', 'Williams', 'surname', 'Smith']))->getRows() + ); + } + + public function testExecuteException(): void + { + $this->expectException(\Atk4\Dsql\ExecuteException::class); + + try { + $this->q('non_existing_table')->field('non_existing_field')->getOne(); + } catch (\Atk4\Dsql\ExecuteException $e) { + // test error code + $unknownFieldErrorCode = [ + 'sqlite' => 1, // SQLSTATE[HY000]: General error: 1 no such table: non_existing_table + 'mysql' => 1146, // SQLSTATE[42S02]: Base table or view not found: 1146 Table 'non_existing_table' doesn't exist + 'postgresql' => 7, // SQLSTATE[42P01]: Undefined table: 7 ERROR: relation "non_existing_table" does not exist + 'mssql' => 208, // SQLSTATE[42S02]: Invalid object name 'non_existing_table' + 'oracle' => 942, // SQLSTATE[HY000]: ORA-00942: table or view does not exist + ][$this->c->getDatabasePlatform()->getName()]; + $this->assertSame($unknownFieldErrorCode, $e->getCode()); + + // test debug query + $expectedQuery = [ + 'mysql' => 'select `non_existing_field` from `non_existing_table`', + 'mssql' => 'select [non_existing_field] from [non_existing_table]', + ][$this->c->getDatabasePlatform()->getName()] ?? 'select "non_existing_field" from "non_existing_table"'; + $this->assertSame(preg_replace('~\s+~', '', $expectedQuery), preg_replace('~\s+~', '', $e->getDebugQuery())); + + throw $e; + } + } +} diff --git a/tests-dsql/WithDb/TransactionTest.php b/tests-dsql/WithDb/TransactionTest.php new file mode 100644 index 000000000..aa8699b22 --- /dev/null +++ b/tests-dsql/WithDb/TransactionTest.php @@ -0,0 +1,337 @@ +c->getDatabasePlatform() instanceof OraclePlatform) { + $this->c->connection()->executeQuery('begin + execute immediate \'drop table "employee"\'; + exception + when others then + if sqlcode != -942 then + raise; + end if; + end;'); + } else { + $this->c->connection()->executeQuery('DROP TABLE IF EXISTS employee'); + } + } + + protected function setUp(): void + { + $this->c = Connection::connect($GLOBALS['DB_DSN'], $GLOBALS['DB_USER'], $GLOBALS['DB_PASSWD']); + + $this->dropDbIfExists(); + + $strType = $this->c->getDatabasePlatform() instanceof OraclePlatform ? 'varchar2' : 'varchar'; + $boolType = ['mssql' => 'bit', 'oracle' => 'number(1)'][$this->c->getDatabasePlatform()->getName()] ?? 'bool'; + $fixIdentifiersFunc = function ($sql) { + return preg_replace_callback('~(?:\'(?:\'\'|\\\\\'|[^\'])*\')?+\K"([^\'"()\[\]{}]*?)"~s', function ($matches) { + if ($this->c->getDatabasePlatform() instanceof MySQLPlatform) { + return '`' . $matches[1] . '`'; + } elseif ($this->c->getDatabasePlatform() instanceof SQLServer2012Platform) { + return '[' . $matches[1] . ']'; + } + + return '"' . $matches[1] . '"'; + }, $sql); + }; + $this->c->connection()->executeQuery($fixIdentifiersFunc('CREATE TABLE "employee" ("id" int not null, "name" ' . $strType . '(100), "surname" ' . $strType . '(100), "retired" ' . $boolType . ', ' . ($this->c->getDatabasePlatform() instanceof OraclePlatform ? 'CONSTRAINT "employee_pk" ' : '') . 'PRIMARY KEY ("id"))')); + foreach ([ + ['id' => 1, 'name' => 'Oliver', 'surname' => 'Smith', 'retired' => false], + ['id' => 2, 'name' => 'Jack', 'surname' => 'Williams', 'retired' => true], + ['id' => 3, 'name' => 'Harry', 'surname' => 'Taylor', 'retired' => true], + ['id' => 4, 'name' => 'Charlie', 'surname' => 'Lee', 'retired' => false], + ] as $row) { + $this->c->connection()->executeQuery($fixIdentifiersFunc('INSERT INTO "employee" (' . implode(', ', array_map(function ($v) { + return '"' . $v . '"'; + }, array_keys($row))) . ') VALUES(' . implode(', ', array_map(function ($v) { + if (is_bool($v)) { + if ($this->c->getDatabasePlatform() instanceof PostgreSQL94Platform) { + return $v ? 'true' : 'false'; + } + + return $v ? 1 : 0; + } elseif (is_int($v)) { + return $v; + } + + return '\'' . $v . '\''; + }, $row)) . ')')); + } + } + + protected function tearDown(): void + { + $this->dropDbIfExists(); + + $this->c = null; // @phpstan-ignore-line + } + + /** + * @param mixed $table + * @param string $alias + */ + private function q($table = null, string $alias = null): Query + { + $q = $this->c->dsql(); + + // add table to query if specified + if ($table !== null) { + $q->table($table, $alias); + } + + return $q; + } + + /** + * @param string|array $template + * @param array $args + */ + private function e($template = [], array $args = null): Expression + { + return $this->c->expr($template, $args); + } + + public function testCommitException1(): void + { + // try to commit when not in transaction + $this->expectException(Exception::class); + $this->c->commit(); + } + + public function testCommitException2(): void + { + // try to commit when not in transaction anymore + $this->c->beginTransaction(); + $this->c->commit(); + $this->expectException(Exception::class); + $this->c->commit(); + } + + public function testRollbackException1(): void + { + // try to rollback when not in transaction + $this->expectException(Exception::class); + $this->c->rollBack(); + } + + public function testRollbackException2(): void + { + // try to rollback when not in transaction anymore + $this->c->beginTransaction(); + $this->c->rollBack(); + $this->expectException(Exception::class); + $this->c->rollBack(); + } + + /** + * Tests simple and nested transactions. + */ + public function testTransactions(): void + { + // truncate table, prepare + $this->q('employee')->truncate(); + $this->assertSame( + '0', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // without transaction, ignoring exceptions + try { + $this->q('employee') + ->set(['id' => 1, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + $this->q('employee') + ->set(['id' => 2, 'FOO' => 'bar', 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // 1-level transaction: begin, insert, 2, rollback, 1 + $this->c->beginTransaction(); + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + $this->assertSame( + '2', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + $this->c->rollBack(); + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // atomic method, rolls back everything inside atomic() callback in case of exception + try { + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + $this->q('employee') + ->set(['id' => 4, 'FOO' => 'bar', 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + }); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // atomic method, nested atomic transaction, rolls back everything + try { + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + + // success, in, fail, out, fail + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 4, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + $this->q('employee') + ->set(['id' => 5, 'FOO' => 'bar', 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + }); + + $this->q('employee') + ->set(['id' => 6, 'FOO' => 'bar', 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + }); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // atomic method, nested atomic transaction, rolls back everything + try { + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + + // success, in, success, out, fail + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 4, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + }); + + $this->q('employee') + ->set(['id' => 5, 'FOO' => 'bar', 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + }); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // atomic method, nested atomic transaction, rolls back everything + try { + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + + // success, in, fail, out, catch exception + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 4, 'FOO' => 'bar', 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + }); + + $this->q('employee') + ->set(['id' => 5, 'name' => 'Jane', 'surname' => 'Doe', 'retired' => false]) + ->insert(); + }); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '1', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + + // atomic method, success - commit + try { + $this->c->atomic(function () { + $this->q('employee') + ->set(['id' => 3, 'name' => 'John', 'surname' => 'Doe', 'retired' => true]) + ->insert(); + }); + } catch (\Exception $e) { + // ignore + } + + $this->assertSame( + '2', + $this->q('employee')->field(new Expression('count(*)'))->getOne() + ); + } + + /** + * Tests inTransaction(). + */ + public function testInTransaction(): void + { + // inTransaction tests + $this->assertFalse( + $this->c->inTransaction() + ); + + $this->c->beginTransaction(); + $this->assertTrue( + $this->c->inTransaction() + ); + + $this->c->rollBack(); + $this->assertFalse( + $this->c->inTransaction() + ); + + $this->c->beginTransaction(); + $this->c->commit(); + $this->assertFalse( + $this->c->inTransaction() + ); + } +} From eb2f9b0ac4ea34d062613374b74c3708a4083dec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Tue, 11 May 2021 14:48:17 +0200 Subject: [PATCH 2/5] Adjust config files --- composer.json | 14 ++++++++++++-- phpunit-mssql.xml.dist | 2 ++ phpunit-mysql.xml.dist | 2 ++ phpunit-oracle.xml.dist | 2 ++ phpunit-pgsql.xml.dist | 2 ++ phpunit.xml.dist | 2 ++ 6 files changed, 22 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index d97c3f985..acb7477b0 100644 --- a/composer.json +++ b/composer.json @@ -36,16 +36,21 @@ "require": { "php": ">=7.4.0", "ext-intl": "*", - "atk4/dsql": "dev-develop", + "ext-pdo": "*", + "atk4/core": "dev-develop", + "doctrine/dbal": "^2.10 || ^3.0", "mahalux/atk4-hintable": "~1.3.1" }, "require-release": { "php": ">=7.4.0", "ext-intl": "*", - "atk4/dsql": "~2.5.0", + "ext-pdo": "*", + "atk4/core": "~3.0.0", + "doctrine/dbal": "^2.10 || ^3.0", "mahalux/atk4-hintable": "~1.3.1" }, "conflict": { + "atk4/dsql": "*", "atk4/schema": "*" }, "require-dev": { @@ -56,12 +61,16 @@ "phpunit/phpcov": "*", "phpunit/phpunit": ">=9.3" }, + "suggest": { + "jdorn/sql-formatter": "*" + }, "config": { "sort-packages": true }, "autoload": { "psr-4": { "Atk4\\Data\\": "src/", + "Atk4\\Dsql\\": "src-dsql/", "Atk4\\Schema\\": "src-schema/" }, "files": [ @@ -71,6 +80,7 @@ "autoload-dev": { "psr-4": { "Atk4\\Data\\Tests\\": "tests/", + "Atk4\\Dsql\\Tests\\": "tests-dsql/", "Atk4\\Schema\\Tests\\": "tests-schema/" } }, diff --git a/phpunit-mssql.xml.dist b/phpunit-mssql.xml.dist index 9b202f2f9..de2dabf3a 100644 --- a/phpunit-mssql.xml.dist +++ b/phpunit-mssql.xml.dist @@ -8,6 +8,7 @@ tests + tests-dsql tests-schema @@ -17,6 +18,7 @@ src + src-dsql src-schema diff --git a/phpunit-mysql.xml.dist b/phpunit-mysql.xml.dist index d72885780..50a83ee1d 100644 --- a/phpunit-mysql.xml.dist +++ b/phpunit-mysql.xml.dist @@ -8,6 +8,7 @@ tests + tests-dsql tests-schema @@ -17,6 +18,7 @@ src + src-dsql src-schema diff --git a/phpunit-oracle.xml.dist b/phpunit-oracle.xml.dist index 82141032e..27e73a945 100644 --- a/phpunit-oracle.xml.dist +++ b/phpunit-oracle.xml.dist @@ -8,6 +8,7 @@ tests + tests-dsql tests-schema @@ -17,6 +18,7 @@ src + src-dsql src-schema diff --git a/phpunit-pgsql.xml.dist b/phpunit-pgsql.xml.dist index 97853273e..1e9b650f1 100644 --- a/phpunit-pgsql.xml.dist +++ b/phpunit-pgsql.xml.dist @@ -8,6 +8,7 @@ tests + tests-dsql tests-schema @@ -17,6 +18,7 @@ src + src-dsql src-schema diff --git a/phpunit.xml.dist b/phpunit.xml.dist index a6a0f4c8b..736952dcf 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -8,6 +8,7 @@ tests + tests-dsql tests-schema @@ -17,6 +18,7 @@ src + src-dsql src-schema From fdec57feee3e07f359101189235876dbcd040adf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Tue, 11 May 2021 14:52:50 +0200 Subject: [PATCH 3/5] keep note about agile core --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index cbb2ba847..cc7e5fcbc 100644 --- a/README.md +++ b/README.md @@ -604,9 +604,9 @@ Now you can explore. Try typing: > $m->action('count')->getOne() ``` -## Agile DSQL +## Agile Core and DSQL -Agile Data relies on DSQL - Query Builder for SQL persistence and multi-record operations though Actions. +Agile Data relies on DSQL - Query Builder for SQL persistence and multi-record operations though Actions. Various interfaces and PHP patterns are implemented through [Agile Core](https://github.com/atk4/core). Hold on! Why yet another query builder? Obviously because existing ones are not good enough. You can write multi-vendor queries in PHP profiting from better security, clean syntax and avoid human errors. From 3ae53b1ab7ff99480098e890dba131b688a92874 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Tue, 11 May 2021 15:02:47 +0200 Subject: [PATCH 4/5] fix memory limit for merging coverage reports --- .github/workflows/test-unit.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-unit.yml b/.github/workflows/test-unit.yml index c93fe1ba5..c47a44086 100644 --- a/.github/workflows/test-unit.yml +++ b/.github/workflows/test-unit.yml @@ -171,7 +171,9 @@ jobs: - name: Upload coverage logs 1/2 (only for "latest" Phpunit) if: env.LOG_COVERAGE - run: vendor/bin/phpcov merge build/logs/ --clover build/logs/cc.xml + run: | + echo "memory_limit = 1G" > /usr/local/etc/php/conf.d/custom-memory-limit.ini + vendor/bin/phpcov merge build/logs/ --clover build/logs/cc.xml - name: Upload coverage logs 2/2 (only for "latest" Phpunit) if: env.LOG_COVERAGE From 41b1fa9c5de91bba53ad7a6359e064d2c670cfaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Vo=C5=99=C3=AD=C5=A1ek?= Date: Tue, 11 May 2021 15:12:43 +0200 Subject: [PATCH 5/5] move docs --- docs-dsql/Makefile | 177 ----------- docs-dsql/README.md | 19 -- docs-dsql/conf.py | 284 ------------------ docs-dsql/images/agiletoolkit.png | Bin 385939 -> 0 bytes docs-dsql/images/smgit_configure_branches.png | Bin 5437 -> 0 bytes docs-dsql/images/smgit_configure_git-flow.png | Bin 11013 -> 0 bytes docs-dsql/images/smgit_file_compare.png | Bin 49842 -> 0 bytes docs-dsql/images/smgit_log.png | Bin 63338 -> 0 bytes docs-dsql/images/smgit_push.png | Bin 6549 -> 0 bytes docs-dsql/requirements.txt | 1 - {docs-dsql => docs/dsql}/advanced.rst | 0 {docs-dsql => docs/dsql}/connection.rst | 0 {docs-dsql => docs/dsql}/expressions.rst | 0 {docs-dsql => docs/dsql}/extensions.rst | 0 {docs-dsql => docs/dsql}/index.rst | 0 {docs-dsql => docs/dsql}/overview.rst | 0 {docs-dsql => docs/dsql}/queries.rst | 0 {docs-dsql => docs/dsql}/quickstart.rst | 0 {docs-dsql => docs/dsql}/results.rst | 0 {docs-dsql => docs/dsql}/transactions.rst | 0 20 files changed, 481 deletions(-) delete mode 100644 docs-dsql/Makefile delete mode 100644 docs-dsql/README.md delete mode 100644 docs-dsql/conf.py delete mode 100644 docs-dsql/images/agiletoolkit.png delete mode 100644 docs-dsql/images/smgit_configure_branches.png delete mode 100644 docs-dsql/images/smgit_configure_git-flow.png delete mode 100644 docs-dsql/images/smgit_file_compare.png delete mode 100644 docs-dsql/images/smgit_log.png delete mode 100644 docs-dsql/images/smgit_push.png delete mode 100644 docs-dsql/requirements.txt rename {docs-dsql => docs/dsql}/advanced.rst (100%) rename {docs-dsql => docs/dsql}/connection.rst (100%) rename {docs-dsql => docs/dsql}/expressions.rst (100%) rename {docs-dsql => docs/dsql}/extensions.rst (100%) rename {docs-dsql => docs/dsql}/index.rst (100%) rename {docs-dsql => docs/dsql}/overview.rst (100%) rename {docs-dsql => docs/dsql}/queries.rst (100%) rename {docs-dsql => docs/dsql}/quickstart.rst (100%) rename {docs-dsql => docs/dsql}/results.rst (100%) rename {docs-dsql => docs/dsql}/transactions.rst (100%) diff --git a/docs-dsql/Makefile b/docs-dsql/Makefile deleted file mode 100644 index d60792267..000000000 --- a/docs-dsql/Makefile +++ /dev/null @@ -1,177 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = build - -# User-friendly check for sphinx-build -ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) -$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) -endif - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext - -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " xml to make Docutils-native XML files" - @echo " pseudoxml to make pseudoxml-XML files for display purposes" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - -clean: - rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/DSQL.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/DSQL.qhc" - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/DSQL" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/DSQL" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -latexpdfja: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through platex and dvipdfmx..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." - -xml: - $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml - @echo - @echo "Build finished. The XML files are in $(BUILDDIR)/xml." - -pseudoxml: - $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml - @echo - @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/docs-dsql/README.md b/docs-dsql/README.md deleted file mode 100644 index 2e7032e3d..000000000 --- a/docs-dsql/README.md +++ /dev/null @@ -1,19 +0,0 @@ -How to build this documentation - -``` -sudo apt-get install python-sphinx python-setuptools -sudo easy_install pip - -sudo pip install sphinx_rtd_theme -sudo pip install sphinxcontrib-phpdomain - -make html -``` - -next open `html/index.html` in your browser - -``` -open html/index.html -``` - - diff --git a/docs-dsql/conf.py b/docs-dsql/conf.py deleted file mode 100644 index 43cc0198b..000000000 --- a/docs-dsql/conf.py +++ /dev/null @@ -1,284 +0,0 @@ -# -*- coding: utf-8 -*- -# -# DSQL documentation build configuration file, created by -# sphinx-quickstart on Thu Feb 4 16:28:49 2016. -# -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys -import os -import sphinx_rtd_theme - -from sphinx.highlighting import lexers -from pygments.lexers.web import PhpLexer -lexers['php'] = PhpLexer(startinline=True, linenos=1) -lexers['php-annotations'] = PhpLexer(startinline=True, linenos=1) -primary_domain = 'php' - - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ------------------------------------------------ - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. -extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.intersphinx', - 'sphinx.ext.todo', - 'sphinx.ext.coverage', - 'sphinxcontrib.phpdomain' -] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'DSQL' -copyright = u'2016, Agile Toolkit' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '1.1' -# The full version, including alpha/beta/rc tags. -#release = '1.0.0' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ['_build'] - -# The reST default role (used for this markup: `text`) to use for all -# documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - -highlight_language = 'php' - -# If true, keep warnings as "system message" paragraphs in the built documents. -#keep_warnings = False - - -# -- Options for HTML output ---------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'sphinx_rtd_theme' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# Add any extra paths that contain custom files (such as robots.txt or -# .htaccess) here, relative to this directory. These files are copied -# directly to the root of the documentation. -#html_extra_path = [] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'DSQLdoc' - - -# -- Options for LaTeX output --------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). -latex_documents = [ - ('index', 'DSQL.tex', u'DSQL Documentation', - u'Agile Toolkit', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output --------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'dsql', u'DSQL Documentation', - [u'Agile Toolkit'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------- - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'DSQL', u'DSQL Documentation', - u'Agile Toolkit', 'DSQL', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' - -# If true, do not generate a @detailmenu in the "Top" node's menu. -#texinfo_no_detailmenu = False - - -# Example configuration for intersphinx: refer to the Python standard library. -intersphinx_mapping = {'http://docs.python.org/': None} - -from sphinx.highlighting import lexers -from pygments.lexers.web import PhpLexer -lexers['php'] = PhpLexer(startinline=True) -lexers['php-annotations'] = PhpLexer(startinline=True) -primary_domain = "php" # It seems to help sphinx in some kind (don't know why) diff --git a/docs-dsql/images/agiletoolkit.png b/docs-dsql/images/agiletoolkit.png deleted file mode 100644 index c4d66521072847cf2d7e27e1ae4ff6e109ef646a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 385939 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 dyp5V0wT^Y{&44_eFEW1DC49;{^PJ=P-u(6gr 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%0AIvrix1aS5F>-=$F4AgFfq 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�jS3UB(K6+dG#3z?)^c#3G`Zu1v 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 UU!e^@u{_PB z47Gv3hoH`gJ))hlBq!GiuR>qgV*&oWcT7Bx=E$nT9hjg=ai}JvIVWzCOE>F7pCgRC z-lJ%Md`EB7-wuG?lPLk&>c*{WF#KYow zE~TI%KtpIO4Nn+`OeEM`tsJ0XB79$9Mu{!}XYyIQWhi!%3gdGWkr!{7D6(o^Riq@iwhk~cu}&N{VRYc8JBun#%l(j9mMM3{K!_G0JQ-z>g(&(;PbqTo~S#Jpahk`kdaNFqNi zO2j-n2YbrK4OCPfSs70Fhf)bZ%AzsDsMqs54c4d>$@iMQqXZ#jfjKvDU+liPa0mJ5 zZh@xj6eMWX8koU1jCy%@;VQlxeT}c7)NM6~ng(`Mm(T?od*^x4vTw64`Cgm$rX3T! zd?~1r-?Bp`ytZk;Y<+0Yv`hU0)%%DUMcHpAU)?%*5i)4+XTSzSvm`N{LtF$YqV>$c zgKnfsDc>GJ;;9F0E?8TD&Cu62RlR{#ajPocJ$~m=A&X~|vskz)!)r6%JGi+$=CkjK zLpg_*HnX9a3E7tIn|+rA4h_?&zh9PAEX&}w=c#FPH#<=uzyNx7(*yozFVIF;_UU z_?PHGLh40^T=cL2W-8-nfa<&(SZ&504HnWA^w(p>+ zeoW4PR!Zq&pKuDRR(~0Zy7uYaAF>~2aoymih`K9>r?nWrx~*|t-VvfWcR|pCs#nCn zS8uO!GsyI|Ebr(}W7R$MR=8Jf>t;B0`E;|aXe`|`QDClk&@tW2Y)au)#q5DD&;#i& zHR0pS-%+4O`7Z_Z4>98w_%L(lP|OEpS}%1Fig-9ONsKrHeVn+|1h>Wee*4UYfa}ks zCTVI2mqhEOt&o=Ae+&RbPXKZvu#w`F#*azl_a$A{3T<~*Oc7yypLS)&L{U69?04#B z!)T!_$JTJ<$3+zWa7hv$51P6qhga%{hl(!|tnLsVjFJgv7f}{Jte**A- z=RS}LEl`6@v7hmuVx!L!ed_z3X`3gBNx7;KJ;NxG36{Qsd$4mjo30XD<9ta@-1@xx z5vVXQwXUXRB+MFs&N7c&Cl^1no7@9Z^QPxTgVi4vM26Er1pe#Ds_a#MFPO}HA}ekK zjyqmXFS;_U5-I^IWLmbxv|F5kd{b8GVW?XeRohCM)8P|&D+V==VMc%t=y!@yL?0o( zTBVI8a2Ao?4$#<|Eh5nq(U~thUY*!39v{~jIH zj_ws!4gKm}3(PPbT5PAL_cfI|miKJ9k!BLF(%W?R4b@Pj7)2h-=b4s;`@V(?<365b z964aSX4TDGT_=t1V?e&MUAu z%&UvAP>{^s-H7|%v&H5-{Je{5vhnRwD{!-(Cf0IWk*sQ5YgE~4TJg70ZY@Y}QY4t9 zDeq93X{{b+RAo=ftk6-^IFrn*YN+xZBOG~3VqJbEL;b}xnz2^(rRx`4C-u%Ig}|Mc z*zhBvl2Y(mKCPYT6(hVcc;%Z~;htXt(VKmTa%)B^H%e}2`OY+JCGftsz)1;m6n$l! zJg)T~aq^P++A}NMxAR`ruM+Xr>X~2qLfep34%pjMZiQZS5n}_Lh4&~wFxC3{F!w7O z#4(oxRz#1Eo&7yj6H@re8fHXgg0I-RuO1FHw-Y8j0004}o5xyIa6;WBgd#RGwOBz+ z;ktMt4~Z-}KY3CZi9Zk$yz@c&Q7yp$B5(t4N(D&hUuhcs9`%BLE2 zS3+p(DiC&vr{WOI!TPIeaoWjx~PgQ z1jgf5Je_>{?5{UAHW=2ppJz^A_3roalNGA+yH#|k@ z5@n+x5|G$}ty)js=`evY#t9!L!zDBtf_`Iz>!{=fpG1(OXbMj;eHV|}+j$AV!Z3EX zG(e~uBFniw=Y;B(#=d``0;oIWj=O02YSk&dO>qWe-MEKzdP~h^(vgFOcx6SRDLU2ipxC(EVgSw0{h}r+g#N> z3et%NJ75Fa*_n1Cp5&YxOciAsPv~JNXJBD|luow;2RvE1$s1ehhy2XR)0go$&mN5e zAm^-yWhi_b-{y3Aw~=zus9~(8vUty+ zdsEVYc#?iFva-{2ygq!=Aw;Z6uNr@vKeGKOJ?%%S!-_J*y6kC#7AS$FC#dm4|5 zQN1eoidLGpM>{R8o4gA1hU7A+NnDso`EDe}1Ex0lC<1sP7++otd~9`JA771zv-G#% zwmk73hlCW0eUZe(+;^L0^7F4!1MAkZ|9emWxP)6Y_kdtR_c10pV2Nl-qvXHP1^8v_hMeL zrhfpNsZl40e!mcP3~WSTrDBHKB$Dfcf+JdI*Wq*Wu0pm{8BZTdjSCK-|D=*3Z>nde z(~ylWrVIT&HEAzY;^YNSM2{r?y$9(<{S$ybP{`~{C(aorRRpJ{a#?&hGy)pDZvp#A z@x%kE?{Uc`w-W-mK4U)8M)6>5@`2QRNWG!GG8O4 z*cC$oocaVNNOz$a`qF&o>b6kY`2EStegSC!w|| z2UoI0<>K7TI#YY-8R;(>^Ve!-pArD7AtqEB8EN1t&+LHy{$ZD?Gp?j!-LMI&$*qZM z^VQKMD5(s?CkIyhzh;(^BWgL0xK2VWdzksU^Q^j(%(v~y^%D`}-zw-5_ejpVbMjl4 z{MHLDgGpN_?`_boM5z)GBHc`D*H=z2=qddwqYyn!1=PjMHI9FzP?8GK&%r;S$)=H# zr|uk$(ovTC_tR9xpQo{4-jhvd-~~e7pAetYy{=REe`E94Fn;t`ZBps9`)%b3uo2(x zmKV4T_I&m_Nafo3ph}VmA63@{gAj$Mpoa|^ddaJaQYHl`w#6B67fwxO}pn z{5%~&#!_|TIqJl9p}st6nD$mr1K+$vkAnVJCS})3tA@k#SH~GOL!K!xN~vreM55bg zYMgsc?>VO{v1rg)6nFzf6HtPB9RcQ*j(k^n0VC>99M{=d$t~L`3V&n^^D4~Y(qhLk zl4h4yhSKBx@aPoJJoLJ($O+Rt!@mQVnod=9#($EJ|K81<;ENhdkxM${gf$M0^fcj8 z43d17_|C_4;PXATS0{eq&C=GpAS26~L|y3UrVtH4kNdWa(lxkZ#rRVhqE5!zDY4>z zrzRIiQH>iI2=eN-d_tp|gr>H27Gr@--uX5_EP&GX4ick78+|Jb6S3C(j1c?nhj{bhO~J;O(fjCI~nY#3;kvYD*&vJp+nhTsz>h4e90*} z?E1WPX&4?JKA!&!-pxgfh(7<$m$8PzfKZKubz8RATGF~*I^MSeSM(u3iLm2-Ey3wz zg;jONC>YG{inR93<7W$C;g$b{FP`bZ5d;!0v<&+hz~!a$xcr%#-`#gq9%C(p-xc_s zI{lc?Q0pz`^xZKuN(dTgK*Kl&x*ZLsgiG(0Q&A$$7k@5joUAGU$en*%-3sTF?eMf_ zg@i^f1o0ik$S^&SVWq4@UIqUBU0X?j%PTB5Bb)u18Je`vWkU`^@Pf{^5@7Xn0R&8H zu0vSG&EFkCx1=IMaP}(maE-*3uP)ZvbO?8^qfrAokT*9m%|Vo2NHb588Rac3>)2g@ zP~dgpqA2W99$+@Y9t!CpXb>UjwO6(Cl|A6cfitm`VB zdi(mbgC)s(dwk!Nkgt|&!&$EP%9L!zP1mROFLVAWT`owwuQT-rfWz@c`tbz+`=k3` z{FGx8k+kC;Lw%3=ih6LayXHMtCKXq7fZe`ZP4v~1iA|26J3;re$(vn-sZ7zAUjSxNrYhTL&t2wKh|A777k-w8ENN3h~ zyY$I1FHoJ0EBpnhs~G&0KEuUhg_ebATdKVahX!yYwmM%Texu#%{VT9_0F$GMQi_&$ z^Ik=xgPN`r5?^U?-YU!G;XKbGp1;$FM&rFJc7xJ-n`;*)rU`hgfqnq!K>ub09r%GN zC>8-HK|ipw)5{u6F^LDtwe4Afm4kGS8EWAw%e7-A+;=Do`4C;^Bkyq0voVDoII>Dd z4PvU`=fwS>X+6)}l~r)ah-c-^kdgDG)3zjt@#zPO&K`M6-VZtNME{xDShMOGmzXz4 zrb$lLig#YcTdQoD`({idEYAAE#sRcH^|>Y;MwUCyyZJIry7m}#aiS#3vJ6ta*K5b^ z)Btp?DwH%dkxwGee(7ag%1cL6<7vV%DH6eT-d(+lQiHNBZLOq$(B#5^?YO~6lG4-w zNuBfeHYdqTD%6U2*4uB8036CvJ*(fPA0x2bxCn?2&k4nM;yk$2t;N9^XvhbPU5ckB zh=57sW4S7b4MF=mKuE+BnEXr3-l)zJ0U)ox$_5Ztr$H7)=iSPM%Q*znT-Mec`u24v z+>>fOf8agmgiap;%L__}r!QIHFv4_=*_yd_nFPdwHaxda=4m0_HF~P0RyFFr0uFDLA9tWI;_@(*|yIXzS-+%NHBzJ6*9MfqCZs7&Q`Q;-Q z{3~LVGqC-gFP?bWwW)naDekqq*b~)Mo#FnZF%l)?XBpKF6aAW*Hf0RPc+|}MUrvk< zzyHlqN1*}aGWgA@{+KXtGTzjzvTYztHWw|2YT);$FJo_|3bkg8>y)NRrQN5m+$D$3 zvVRVBGF|vI^FJd5hth%YV)x~ql<`|U_RPg^RRC?iD#gaV;GdEI^M)$J&gbz6au`ep zW`9><&qp8sY0tuFzEZ8$@PFf0U!5=aqSE0@UMy3a4sb-sg`@nh$gVOjXfOTXZjned zU;enm6BKu4{Asd(Fl~RKtrm0~cKS*aV{}Bwsvxx_I>fo5-c5puyY1~8q0tnyH>VN_0t$AJIKlTBPNeCecmS{obFq5M z=ze$QFafd@0c_PcaK7_A>qO#=or?^>6`~L+gqs9>vG(N%o?d@K^b)h_q8eOvmvpik zv>p?FQ0}{CHAL}V#49G7rs|N7JI(~))Pn4lk|Q-VDn$MF%A*dLl-KrDDv32dJP8x@ zy}<;Xs*5@Fvv-vp@0JQWSqs_lZCM=$_v;xeHOUFM| zBo~W#b>{Uz7Q%RGZb_Kob>++vs`B8p{L6d9&>g`JU2PV1K3^Og%hBT`R)~6(83GDU zAx7mPeF8sHu+QzSl;=$w(*PV7Q)X3`QtJo50qV%<30ShCBpKXjL+Sw*17QdI*b`RX z!NG38i!#}^UL-=pnh>1}DAS+G1C1zuep@)}RS=ba{*|7JA6GsvJNxPU*y@KqqrKWN zb6Ly*>P#>1tQtjM&G?r_5AhzTIsf`Un>zDOeaj{{L7~+i?RGdVRs3p2taAaQLFwT; z4pD{4vlo)y9@&?><7fuV_Ao#*n=s|!pX+6&wqxq`R`AP)Z_|FOC+6Xtz4FrNUZU6E9iG&- zg7UzeSkKe_1H{&88#9NCz?A=VoUi<2*@s{BnO|R2uat}L_=%lN(B=g9T1dlux$>jZ z=~r(lJ0FX$aXa!8f{k_NRDB}aPl|$lhA9pDE7*+vBHUqf-|TfP3$U$h{)gi6DN}6Z zaWg#(#w9aF$T75IRgr{A_gs=UF!(hIZ z^_MObA$)6#HB34j2BiJqy-86^@@^9Q$@Ao)&qD}!&wqR$hZ+Zry{ZTyXgX4Aq`P&f z*f|q`R63;ha8u@cG@nDsQ-K&bi0#xJEL7Z4@1fa)wx4pf#ZJ(FrjchtJF?!+QMiBa z*xnD6(H~J_fF&i-0j~a?zerg1-!ts6ptPb~Cc?7#q_;MHT?kw6s6>~dRqGJ5X)!q% zgb-9xN2vSRj9qA;lv6cjTL>wXOiOZRpcXvS6~+Z~ib;y63s0(OV-%w(VzDCyx5ppo z3H#%isRu{>I`A=>lrpU~dt82n;f--;$v7z=EBJ`YZa8mBfW5RyXGBL@b0$LQ6XHl6 z`~JR|nPyrE6NK!5Il#P`^O_gi+`>BU^O258F>V|SdhHldGzEG}44QiFiRx{RjgF?! z%&R@DFA(gpQWP%VAtSf?H`Ik&ab~CH#%Q#JAH7y%wisi^r>RuTRHEzj^^|uEooqFfcbUa^`|6vQa#jcTbnRd0|uERIl6Tj1nvGY+3M!Nf7iZUv=bvK3BDA@hK z?)et-)OtUjG*US4;*`T63cY2&T@qcZ^c`F*6yA=td@kS`d6=Z1zZQ^HsdR}*c33;} zQaNhiFT==Z^x3N2rAgHK;P54l)QCDLzCPb^@_LKn zF8e=V5{ei=`uZ~fU&nAF(V8lNeCAngKpzvonv4;vs1q zwUI@kCP2+#oKhRvS3m6{zhlCmviBZ!gf)peSLljis)e}+P33!ROW!0sl{RQ8Pg^C?zIq>LVt%l1@yobv%H z)O6S4vPq-3P^Y%e3pS$A=F0TIZeeJSHJxcS^!{4p7zZn)JlX=%a0mU`_-VdH*;}Auh{- zw?%5fMwgWJq|9Rrbu@_Q7e18FCimB3uapRVHkAI87{1-ikb^sE<9=Py#sQ*+i$J1x z6Aam!R=?jL^OTf${q(H%lrq2bED zc=)1>5=0~Nst(-Yo1gi^Pe-w7)|YAD((=dQx4##v`Muy+So*znfU7fbD zdP`15>e-ll`fKj4wmmPWkM^&4yaw|6*mt!tA`rcw&b*9oMP-COTPK~c9Qru1bNyb^ zvAX%IGknaKkg8wBYH53Fa<;S)X&<`u=odo)eVs{@@H~pN-nC##jpsK079z{Fzzowc&U+g zAgpZH{tAJ+Z*p0)ec1Ds1tNsUfSaylm19jrty)B?u=@;<@a9Q#S6v6aeTKFf>`>&th_nm0fM7Od>)pn<1}1RoTTJpD648 zig-2MN3HB^zFz6|q1zt-`w|B)_eA@&4QN+~O|p5%{;=`S30n*qlWYI1;lCea)7lmw zz@_^wC%BLL@KyG;@C-x!LE}1C!&PsP-=oVUCuE|B9#LKko*+**hqbjXogW4}ue;^1 zg(KMtS!0vH%^`4%@LWV_(S?ubuhcaoci+EieNQkv?IA7^-K1IJu^Ie>SfxE|k=Hj7 z;mR~QXu{)&%ZNx7I#Fg-O?=d&9qm;4kdFd=+c2giuf3xwq3Y=?!KYjkpVe(C>BEV6UaOuS}wl`wK><(odK!B&-i z?kKC;^nd#>)@Qz0Yd9OCayoqcLf=C)FID}5v*qzRed7P%V}@Q&hUNI;7<$j=@s`ny zhASAePd@0*dvUWwWcK$BLb#;b*>k+T&dJE`cr$D5UI#n7)@a5ADl0XLzHu!!%Ub|I zV1rs>82VfYGIaQQxRAmI3{?DSOm)hl_+Gr?i9cGw#sp`-SJc+*yv#B*x<>5yEb7r`dGp~(A}dP+?H&agiXYg`=snX}DVZ$98~e4jx4&m( z-#p(xti}M1ey7&Gv@uUU`U*GkjH#>v?)Q%s*;oeCc?L=!SOLfn)azf{s!lP~<+_{HIngh9NKo z8Z>oGOCgZATNXh{CIXfEwUInFj8i!~2(BgdbySFi`F&YDULRaH{|6A@cOx#cxk20y#G~?HpsoiyM;D7%!25asA+OT_4D$b)D*a!~k%#xacYO#e<%u{A~mi&MS+FWk05b&nDTxQ+Ap^ z!4YW2bnSogT}MP3diMo?LP}ja#uHjHF`;J*B7LsEv-pXz5Th_06G(|AS+8CYC#>WR z!pM;!_^I#$vH(fyB0ZMWV^~c7WCdUXsb~Fdz8<>Y(lwMh*Ws8@L#YbTKW+Ly=l+bH zD9=EX?E3OByw0(|!#l_~+w=)u;iZO#L)?Ule3CVq?w)n+ZxMrs`7CMuP3LEaiHX#wS~7GtQkHg3bJ15c?NSTa1e!XGD5B#maA zmkI6P52AlEdt03=Eu}#QM`cKrNxSsDDh$0DeQYxVhwRRrN{xFLOKSO8?SnI~S6r8Z zWzT#_+cH7@ZXTPsjNu=p!jBi|uVk2g9nE^n_?%i@zZPmfwl%KYbZR*wL;nsCG$MO< zMOmI>@8M%ooPD55Y%gjpqUY*=3Pns}Jzgt^7_;U7Jf0H}M(Gp`X|i+3TMCYKl^Y;{ zH?nKDePxVm-zL+AhO+Y({{+ylUN$Nb=F{aAw2WE z%iOn$z^0qNW=y5C-d+lp;A+1AA=7T2n4*qnXFud8x;`2<)6ZtyFgd4G8N-CVMhFfy z4M);mD_)669G`Xv>LFQZd!roVGebi&yWMfs+uaQ?Dyaie6n;AymM_F^L zNc*0iTwV%*wC-almCnw1L`&%5X98r>em$yG0kFHjXH1xiW3Yjp*=V@Fef)`pTC+0%Bp%g^;qPur&_mfLl+#q6-8EJ7aA6Wdh3fBK+UTebgrOcGZkI#JY%M zvmSp;(%icCn6}>qZIB&b!EeGX?#--L+K6nU;C;v#kgp)r-oh zcx;C)F|Nm6GS(XQ#_-RsKo;>9S4;B)uxo%A zaJPXf8p>(_>czcNkjON1(j00;@;9lY29NyO2doLa{1qkc$pR~V1!O&OK^N?vz-@DE zaDX-=se+O781OPaWfl+%N3|s3YcYGLEnw**9mRLtC*Z{tJ%Sc|LEMBb`AxLf_YkOd zJt8U2Tor%9HO90=Ms4h!F-7M!knQ~qfmr8l zZjg=8OJ{B+@3d8{Qp4*{5p%s~oyDU~@m25XGQPe|fAA?wo*2ixX|5?7!M9#?5YGF5 zG7)bqXQs@WVjdh6v2y@! zD3cDt8Ps9>j(qSRqOXGTM}AfkKf6d_n-C9_6f^7XN2BK;*Y3|P20l*4t5>Vv5?(!q zf-Utu$WKwih;`t%VJ7Kl0JL#n*ph(P2ji(n8_LykzU}Pi!pJZ9tBh7@YJf07e6V9x z+*R;J?_?&G=x!kH1@bS(FTE_C+?ErgG6ZcjaT!;|Vs|!bV4+YiMG<7k3oNTV<=^FB z(=b>IVw>58*vGTTkH=VWte<@35mkE!%>fVyne4kBRaXcg9?gW1BEobUS>XPNKMc#H z@FPF1(Pn>B;n663N?)belP-oyVhY&NHHC5jzlWA=$_xSVybp0~=mR#N1L;BmOsqN3 z9Mv}h+5*QU`ZzC4F)lloKdhK|obs0viK-lRPa2Exeh-qM{5gS|j>7+}Y&`dp(0qy_ zG-t8O12ov|XNURe1a3bn+XfU$;}Dh}{X>U+L{NX$(MWHKZTEvnMmeI^IhC2MYWJ7I zpML3~yj#=KnPHeH_a_l=lu$lJ_Ad^2Lq0E>dQmlOCQ_-UqJoRfX|3H8n|sK!{i?7@ z$Cnv*t41rd%eB1gEuQgA=4ipDRUbFhH4~u4<`Q8WzcD%K?)fs~&IOa%TO(t?C5LNj zKboC=*R%6W8`CpVVEhT((2P;h=3jqXbvKG*E>*>;rE{S`LbI}rw8INodh)`mqC|#` z*$yyepYko&pm-1vNvq(^fk8d&cM6%jd4Dn<7XVs+%18(di2(ARyNXmOV648FbqOLU z!VKn4gL*1Sxywji=(<~JsO40VBH>q;B(w+paOhqJD(1rboyaK#AKF|+ zDPN8FZ~pPDhP2Vym`gtBu%;D*5~il^-@Eu+ZF7w?cU-8xH2u5X`A_-*zhwVz9TLPh z@R{%9^Xv9^ft`WfI|cH;K=pvm0cO~kr@sobdsWk6ku03}PM~jteZ2>dU5;4U=G0zh zJA{_9`LW+ZCBqbmqx$Z`p3*$#AJFvAJ&S+&ZU@u*4#aQVchaIWbcua%%MDz~ctY&c zY$N)#9TH0N&C?dutd7Ve9*c_9PoCAXA9{cXcN*m38>1B$aSV(ZPU^D$Cr)n*<|HE~ z>yydYj#k>gQ2`I|M}cxyTR7{X*z^P+aUi*IV$s^OpSwMxCb$n8T8#4?b@EPg;e6p> zaml$0*r?RXsbYLO$xEmEZY%}t18~YAGzfMyUBYhwY8+Pzrn*JC?@?yUc$4ZFF(Oj( z{v2{YVtVL4)GBmmyau;@i=K6C8M$nCUmhTgcweA))F{fGvS89jM--33Bp;|B_@Ju) zp2u-k9?X;@?KqVnpBTeV1y|RbC3wYEuMjFyc!n$V)aZsOT49g^{nPnDAjC zf*Q^Rd@Aa{W$*b7q^ud(pE@EfWYpdgn^#=_;T*VI8L%8XH8hVZMNcx{YXedk8=VKq z-LZR3=P$!$pqpH~n@7(+(EdKDH^lb86oz1uWD@OJS--gKW_KRg8()X@e%`ZYIWQL` zO^D6hv4tb18y8*cmsr?TeRo9rC~ctiM0Q&K3Onc8&G0k6V@(r#p=GanXw_b&$Y_iD zg!?ggh3eeGfYDWC0n_2~{{gQ+P```6*N_pHc~RZMwBon=&kJ+>yz~FKIz00czpIP^ zubHMB1B2hp_s_%id&U3xjsFKf{LxI0M_~1-!&7q`0FDB!XZ!`j z$)YGG&TVdO-l=td=XAQgxnkAY%)Y6TG83<*mZzGWwSKl_o=r|m3mSwW)qG$`%bD;2 zU1r+2E%R4{MOjQ_Gx1Z`YL5aLR!9t;H-(%B_@l^_;>}8HOVdg|WrIk2to3}xDRm){ z$69sD;E5k-$|?LQvx-d2DbPI3ptK%uauX)_uO^uNy_-BVuu62T?^5t=V zh16b(8;gXfZDMsEcsAolJ-HI!A^l3u6)dkkOW-eQ@S3hSGz28 zPgqye7Lc_sgpngT`qUY#iyeNo!P;sxw&&+OqMu6RrG3)stHBR@Vq#v&zDP`$wM$7k z;kcf%Z&KGS;bg74q;8UDB(i zu_1mJcK}U!$(bwg{Ra#6g6aaqm%O;j*to~4ApH5oOO?32yvlraO!v-~Df2&|B@Zxf0lQo83?HEgj{zXj6BqOi_z}M(ub^TyDi`#cy<$ z)&I7R@;r{8KmWI{4}a?e{T{NeU+enyLcV^@d-eI{WV4llH1qT5t}F8X<@G{Km*N+EDIxeyMYtnh#l5Tmf%U#l=@U~j_?dJ zS@_AL^w_Tm^%cm7n4y0N;oxJ`LSYlwaUaskmZlT2xqvi@P0#cvep54H7auu~0_rN) zeG`#98eYGXjIFZJWkm9lE)C@@B=|gS@R*f>$jHx>1+{>UNuJuLdR8q0!ej*_Mnc{M zP4~|fz9UgSAfL2{{`gWag@rB-N+$ggpiG=co%vGePl2^O9vy@9p*mv~vaj#+*mi6> zIeg|zUw-($Z~YU8JG`9fQ<47S4}Ra_JHP*bi>TV-&BV^f*lL^v|1O9r;FYapfCd11 z$`%3l0O8WE1lLuca_C0_ma{@^0?4Vb(s(EXd0h!g-l7o)K}Cd7PmIUo-W6*50C2J* zvHt!==$T3+nsTpEw*Z<;g!(@SLMg;N;4AFL`PMCPSwm?p>-vR9ls# zKO?jGU0>im$3MYX9??JJrD1~X^)g~2Gb?dzOy^K#CJxxhQON=2hn-bx%qiCwjOY_E@$<#6 zIywCDe}(Ij*AITYrsp^(^^C_c$B(hR(e7xrvcUIC`H226DJz?>i!0K_u>K#_B zzBKPMIqtE_%d5cH#587KG7K|J9=EWNVJm>I=RVAi7Mj+ANO*H5h$kdrYIQ#Y(nupJ zFog>kWY5zU33SYhP$gKdOmFQI>O8)eX?NFPai4i@Mm6 z7w|xM#*enBLjs#FFV_N)(qe7b-ojHp(hZ2Ky(fKB8bnPB=P&j_FVB@L@2E81O2qe1myHYiv&v>TjV3x)u;BS_ym6+ z)rZ=4L+%kkMf_%0>nSKN{K_wwDG+Wy)F1mH77w;{?tJ)WmcA>OF#XG2u?FTwGmEEmHSJU*`c+lp1T z0yz3G8pbx7Q6irDZ-2{CV)6#f*cwYyITnAzw&J(?k0XPAFvrb2I#|~Dd0yv_uX^3t z;SYT!_dBDBwn@yk*$v$r^_K73)5^tvjF;gtt@z#S7yEdu{*$?{_Yp6w@$-NG?7hRE z{;LA3_TgQl&3Sts?c;0y&NyH9f9w9&;bQ8DnPYm5pY0+r=Z$$ZSWm$GF@e>&V)f#@ zFRZ%Qy};^}6{}eY$9Hyp&eW>=TYoVav+q#;diPjO-zl-+K!L;2u|i$YKp-fAq%2?# zjIxfNIDkv#P-^fexRv0yO!63`BAHb)vaR7$0+Z$Zg+0VlAU6W2htbE|D+U0^Z2~+= zq7GmyAZ0X4$Hit`Xar!~LsnZ)1^`*MImJ$Xd8R?b7IX;HM7FCKBSU!rDEt(9a-vdt zkQ8)yW^8M1c%ap{86E*BIi#46Fv}i*4TEjizHPj+6?gM>yC|9DI%SvQH z!KqJMX8WK~kh6ARaR4i96Ff3zNoC|SDKCU_Ri;1%Kl1pK6|r=_4Y+_>pY1Q&Z?a!p z^WzH1Q7AtAmtE}t00J9U=4h`~i4!sV>&cVyMbB$;1 zll9LMjm_B7K5HEtgI5`{`4X>rT!j|ZCNxarY;dk$dg zKC10}0@SWpWh($)SS3(HAvSj}8*TR2xaH2K@c=PVubTnO7f8D3^ zoB}cv^g6}4bAtCaN$dK(uHWnW-7(^r7-J=4gYz|hUL5ns?LAfnR0n^bYSNh-XrYu8F1hI|}Jf%z!co(@IJOxR=jMmNBm)KN>NzFRGgeg*82Q?NKO zn%uQaz)k?rQtb>}hmNe$gx}-TXnj^N3hXIUtN7JwSjg0VJBzF4vZ`+sg(gI;Q(yKB zr6Oz|1(5*-U6E;>Kwki0Z38G$zd%r;N1fnTK*$t~6|W;w3Kc{Y(0uQ^9t2hs+vvoO z(IzoZKjMwCW%XxPHUfsCH}MHV%A3_$^>>G@0AdYt3cwaTOGH9f-vVe8M}a?0b)Q*% zHnz$)fcA;`PlFCL+7F)vQ;mVi)ukI~V}U+e$FG2yZLR6bNz=kvAO*0sfF!S<)eEm+@o1yiL)!$XRettS1#FHV@MN_w za*WbFQ804+t8AZm#U4N>if8YC&38_Dr(mh<{S(g9hu*p!M*$^MBx(u@wL-R;ORb zenOk#^7K9ZQlBZz_)Gwf`NeNQW0En$yD{{r&udJ2Rhi`%KPc zUfUSIxjsl?-gKlp)|Woj`B?lbeyjf+$H(I{etzKn*N6Z1hrPRW-d@-5b^W#<^qy|r z|9V|J#v)h3-FJc3wqCk5exCgKf&f+ zg{}aua;DvZhd99s03-RdMbJx|J*D7$u;Vma+;d@k<^ z!kuKhfy7-}Z1*vC;ZO&g^a0DE6r{J@$lE83i}cEnKabtpUt$l$RN+0;#vM=<`vXcR zFF-3`tL*}K3~X2ewoy{BmjY-7WSgS9bR%p&~RbXoPL39`-tVP zke1mP+m_ju;NUg_%G4VBH%E0CD}5fwa{oyojkZEZ)~bTba1Oe99n->pKW(N_XfTwD zFa{Qp)MI0Pe9GN2gO9Z#b`$ zql_RlCic7bpd&3bgY;N7g1Gn_(-ptfe=?7(@$-DnAFq7b>ETa*!+1%glUCYfOoLtm zZe0f~acb+;p~v}oyml@AdA*#GI-alit^PB6#T+>qXkHQ1Irg_4lk&H+|NMm?>dUJf z>+Aky+_%j}nK7}oGFPta*YkP(3I;<%^inn3ibishG0k?H$62=8Z}s0#(fFNP0c4L= zzPEQ@RrXlD!^+ijUS7rV6dcI!^FG~d-?TfgLAwSBI5>dhDu3x^FG#U3r%c+RdxDO_Ir68X2pRxM!K;X-tiTo; z1hN!Pnfhw0xgj)_5}3xxs0zs_DqjIqZ4%roXbCa01q^+tJu+f*pfn_om9CUk2IPr> zpp9T+0m7&sHuWvzdM79Zohr=u%bzh6P%>cJ5{yQG3<6CTBvMEA_LMH=oI@{7fGUoH z;etNO82D4`;H6p$53ytF6w1P-w3Q&#H7L_5s{>utsK>@7Dz!v8o**PX6Q{ml$nwf> z+_ZZFP1gB$!d3v^BiWYT@{Vt!rYkrv?_XlZd182sAhl%;AQ{lNs*usPpD!yCoD*Q5 z)s2O5&~a$-BjBR}Fhy{)t`xp-MI=9orSVHU77&w4FpR)rpQ|TlB(^XdBxrD;41@h}d$s1+f36b!l%`gTfY@^wfCAWE+-JWpPOT2{vi3$;m-0 zY6>|6;)+eX9_@S$7%KRv2ieCJ!U+Ovqp7;oQ+x9d0c_HCIq9)kT`d6WkD7(BhthNr z`%+>_EL`!KK8XXCnKwyktt}{A)^1+9BWg znfKIe`@H^2pO5%%n@S__d3tU=e}lxFKN*)eiV2mOgS7PD^K-yaw=HnaKr+S$ET`{f zI}FOQhi+Cqvr<)Hl^+50d+=S}zY9?8HV$)-)h~%$gOPZ^-{hIrw7kcb4T4cuyPgF8 zxnlLTtXQ3WDD9aB8u6hZeQ1PY#%IRFIJ8?F>DmVtzag{pulPB}i3Oc!^`9{=<^Wpb z=Xsky{@B-^9p3nAu8SF{8La7~ozL1pb8gGEVa|)Tnbo`VQn!;Y{!Dub$%>z`IQ9#J z;_2!?1mXoWe%R^j@JIib%frW>!>no7XsmVpUf1t+|I+d5&~P@}l5-h_>-)p;KL5os zf81QLdIp$!2T)Z&wOaw)VKI}7=jaV4Ymk8dM@~5 z-bcodFD#NC0YRHM;)_y%fVy%JTLf+?7E<@BE_En0gWb4F>B9 zs@bNskxT%^OTe=Lkn)i~bycd76FDSNEH~xaQXOq`Kt$TGy}LB7YMd{*%4$)_Wz+ZB z*Ez{*&MwsSrC6st8qdm6fXIM<#ulZC5I~|}^91f=4+88a84Cy(giW`RtzixC1dr4H zDQ{nqFLemZb`sdE&-!V9p}_*g3fv2d-{TSfQ};NDPWqJeg33Ck6WAZX-~NoufTI}Y zKU&ha1#O)W1u3DI&%WqZ1E#K6Ma}@1BR>-;2BFj+bM5D@1g5>(D3-?VtPr-n^o^hR zYz*}q=ElIbYJXIx+TD7=wsEA~7nqlxKl`{D$JN#4bG*Fj<5CcZ0;_HX5bK~#zn976 zfeQOe+J}6LY)^9hHqIeyyJ@EtrV>9^{M#O@V=DmTQYUrR6Wki^>H9oS93)90nf{h# zt31-1Tl~j(Y$00lBPgr?tnsr=pTDK^&l_KLdid6Vnd=)}&~zM^H|IU;=lnJ2`7p@m zbz<=+94mh93o{M|W#(7^Nf+4-bk1Ku`4@62}eIOl>MCBljR zuKS-Es07E8#>?aE|0{mGE|#FI{PBM@Da1^+@NU_O!K?QL=K?6@U+3;l-}2vGFL}&g8e<5NdSVynSIF|*Sa(%r z%-#Sx+YK?)3t-ouN$;xOd&FG(@(6$IWj(Vmkzy61F}oOhcgSnfrr1V-wxwOMDg9M` z<3)LaSmWE_YyI8J(Z0g$fQDW5j7{6hg*0T{KKynduVaUKBIemln!I!uCn zSqdNhjnloXxQqzuFfYTU^o|5@W_%&wo#`QzXJso^#xc+dQuLt^V^u9Y4SL@x$TU{?gUq6WlVc>krdhX1eW? z{J`9po}9UF(2lv!vA*IrV#49}TsY5H{OD5qzOwqy)>$5>@$<}wKAO(nJyyG7HLF#} z9;?2{%7tHfUrQFfb!>dH@6W7Q{d(@G7$QLyU@$*Ya$AJB8MEVLm<@2vN5I4D?M5n( zpOlxsJQHM)%DqKT1u01P$8xvu!w^6#GE<9qba5Vjn4<|>{fQio>haulZZ#Le{Hkr% z3X-}CY|utVEDXh5y()kGjK+XszFf;f%U$tSdn^*LDB2Qxl8*}PjsXx=2N_KQI4LOP z%b$$7GOd|%1S_RWX)AkX9#Mi{1$?n1#sZWgM=g>B5}x+X*g_`&Dv&4WXG-f}LRYH_ zBr1S%Xk#P!f@nsSxXs7qA@n6dz9BxKu87g_QC>kXAN>y~MxBo|3-BphKaH6Hokeuj zbi3A|2mXfvt6D3sw)-f2Ku$oY_@GW?nc@QS{V^E^92#*NKp-*D27x*4b|2C+_nD29 z0>4=)35`ge@p0o~%Mu5arEQ6A!7%p@#TNa#zKrhJ8KAY6B<{nelmPVE-uAhGnd&kj z+m{$=cK|kY_7Q$PfHa|hu z2}F8sJ4{`%kv7e?56U6A$`nHoN&Er`w*RKTSPp;vbDq!#Eu5{Q3!JNmRl=tJbHFle zgkEr76Fe7mJ>zlzfXvj{Zdt8LkP=twEOVu=e){%4L1gJq+$Mm&TB%rq`RV=W)-MAs zPvV0zhl{qzYo`_HG=)Za34d(~_-rL|V2e%nczG4U554vN1EYXGG)~C$i2}zuXOqZj zgal><;oB#S-(6OzYT^}rN`LHIuDCsAV{Ox1v6>)p9x1VpyaM%Q%1`-GS96oov&WnN z{m=Y(e0ciRyu4~SZ|oA-x|e*yvM(QTl5W;5{sv{mZ}p!we&_>_$^5~C4~IYYwzI<< zK5txeG2D^dnXT7?T#JW8$ur2E?{b~M&zYZei+{y$^`DLc$H*KP?G?SRonyvfHS?41 zw{rY^lt=&n^Y6bpeDEK8kB+tb`<&5@wdY283Mk|_>-1squlU{QC#(P57$Y4l9XF2q zHGUrN`C|gB*<+RO?Z=l_z4UO$7gzC}`b$Q9s# zQh}W^axt;cYPh|)6oBe^KCO`04;VN4SYdf-GhYK@WW}RAWom6yPzUTG;3$|Hg~}BT zi4MR&kdFY5(MOfX*as&8sVVU$JOW^XBHFDv@|yNwt#Fxi>W%>DvVWp_kuPW#K-RcO zz^_1SaqSQ(+yVv_GKgXp>Z_ zlkog1_azfVC>Te=>-)7GO7R`f#u#{Xn%oAY4n%s97W;s*gkUOBa$Y> zsnojwVFH}!0nShNHdrT}eqw8^LE3 zlrQjUo$@p|`^MUq86)`QDp59L%2=~r%ZES4Nu$)-_{5yV+_&COd!u)JxF4**pd13i z7!kbzaRq;AsQ{T!#CNJs`6lS9-7~;n_bt^5$AI!{i{p|!K&2fneOG;y1+>KnX)gs{ z@gedl$RqZ~P*Q36QJ%zxQ#ya#54UglLw3S!ERh3kfK}-2o9c61`^bKT@F_6uN?WRs zDRbwEtmw6jKT8o2eV#j}v?XH;!}8CIsS5(nGwkw#3_(~|HDBM2J#Gh}$>>qI%P3H#&XKVC~`Oy_aMuMsdF zrhUKJ$7tqnAIshNF8<$m{C@f)_YQydZ{0imf4|~=%eco`_do0YZ{7cnDQ4aOKMwaV zX{G03{+e3>99OLJ(kfn9b%*T$++X$l;tt>U1y;Gj`TZOl=d~^!48yJSN|s7L-|(id zvpDtr;PMwj&y>K4zZ?TdrqUZUCvd72=-;3bvJx=sBl!~ei!p!{<>EXjB6X&+a_AR* zPFtwJBul&`OR8g0h5TMbEc4g;`K8&ifFj{(9a+ixvFR7=2&yt`Qy(A1RPsL{vv=SouHI(PmlAYCU#ms{|g&4=^j3%L}pW z3rQ&P&47KOnEu5Rj`4KUqj>q{683c~f&k`YEQD*swSAfr^xLe#XVaJ?e#Qd6=brn7 zAwOKP6@VZ;2yaYsD}W}YYSGcA+1@FmSY76awa}O6N#Wmb1rXnD2vcHs^SIU9R>VFr z8RW8TWu7elV^DQ9vsW|QFYT7*CrUu*n)?Ad#V5B}2O@XMcIlyQUn8EozMJAT{A;kUi4 z^XZ=dr#^E3@Hanj@9={^#r>_M4WBc zyle%KN{LMKOSmlFOz~HQtujKP#}(qy>dF^3bYcSuP@hTAMVZ`irOqQ|x6_m;jmh(h ztv!Mw8#J4Wa;T_00|1PCcri*4t1<+X_%FV`khEn>WPLllRwoJG#38N54{l5gJb9)c z1Gt3lC{tQ30e}K5oB*31XuZiN=|>hzpkW_ZpqKDjuLS{+2A~%5;Y)lc?@^iR@n$9V zQIZv+Hn{YHL=mWC{uVq_gD{+-SC>GZZ7Z0lEP*_Em8$>oL3MJC_L^~1Uu7v9xgtYK zC2y=QPT6k~5Ge7WGpb6RiW9uksyupboTDQ}5Zyn#_uFspvHFeWwLKGa>~mFR;H$wr z#SKSof{6_I(wokpk4E+Mh3 zJc6y-qHKZK;c@r{8wCbupE=P7%Hl`lYcBQ}Qq>WJ+z{i2FZMDX`sWH$>75$g7TckmAaZ^K)DiU}Y%Z$M^$qr(ek{JqelilC;kd;iCev z1$z<);xhXQ4G6JzV+34jPy9GVUO?Q@XB6*a|JrlyzOC4Db@#cn!x@hzm|piDEy{iCL*lo^ zY2Clv=vP}@*7f@Zcm3Xv|E--?|NWHr-w%HHW0^zF@7)cqa0FHXRavp>ORUcFE*!p+ zi#<42n6u~oPxE8aao* zm??-7@JLW0qWt16Brz@wn@#OL0XE@NssLVrO-_(WF~`=)omI4eY|0Cex|vEQzr&B{ z2GD?iT8pG4E!hK~@(EE%H^Es6Jzyxi%bQrDe8(9vJUXV-C4t+7>gb9I#fHorY4T zodFqQElKU0EnlsBPB85(w=N##mlyx}W8}!;ie{yEI`- zZ++K)02}lGjPkp((U))?FQDpzJONYw0IY@+0h$E_0kAk=Be7&~Xh&!PubyL-rt-4C zX#`b$A7w|^XqT!mCg?%f1^>lRMz#`2e>Wz^tB__M|f^>-M3Vml;CeDln1}1 zjhh9?Q$I(AWGn@|=Txv1KN9QsX>^PeK455Kps*27S7S#Ea*SC(VCVuoTj3u`Z>pCA zF^Ds>Jrfi5jiu2q0afo_Ju5YBaS`6UyebkbRaRrud1#akU-Ws_-=KX$_$RP>++#H% zG4l1>&O}OVj3U1e#EE+Qg5@(U{uRHBo7I0ZB-Z%p9Q!2CA9v2~AO7_(Jv+SZ^;}!M zM33pvA+Sx2PN&CdGJT^%4-pjfPoC=jpyig#cqfr6H8I}o?F1`m$?-H zKgL|sjD^5ueO5Xmj1x!qZH-L|jlZ?Uw#rL`D4SB0llG*I1=);u+rXOos_*CY8T+T8 zs5%rId+bBhryo;)u1%v~snzy&h3L){Xyt5QNbKQ{U6d81Ll;VYBfWdH3f#_>t&Ke~ z9)4wvrd^{#%izTq6c~*(C$YBm)#-k#9(6$AG%r=c)yC2?fOGn!d-YPvpU$=aMMgr4 zjL27#@;JgLX|^heZL(27a$nNKfPZS7**7f24v)$_J!e}29?L&xbGQJDDJRbEn+hn} z$Nz0t#{!i@t}@)CHLGnMqm)NB$E;N*2&X*O@2cFyLVq&mSb@raP-vQt!E#kMv;+Yq zP3Byg-Tv%j09Feiw{4^fbvgiT#-?FaK&n0y|NyZnz*oZfi$-QP+oggiu3WXvRQk(?)JHK4=Z~i^Upn2pMKRV+9(D- zE#c8z$Gu}`_RXy<1T9Y-ZPdk|sM!w^o)y22iPeAB_{rR`n^Q7Cp1k?vcfb1d@GW0+ zcDUm$8gt@sd*nO6?#nY#@R8|ro{Zz3uKC5E9<+<=4B3jG_a8UYliGj&&mX^c_+S68 zKHu2;Oj>$?XoW|uHc2OM#E)|?-vX@DVrg9MD|qC7p!eBhG<+2RGx`Lh zIJ#2xJTycF-RAGIZ2HdFleG4u696fo7kr!rXcCbss25{nSKEobETFqaZ$bx$pw(?) z^)2uCCSsvr9pa!Efi{6KPgR7Y0+8;7n)*p!ij+ye^|=_TxW+Uu-y*&N&JY+7IkH=? z65}m+XiD2wePrfhUqj-zfymyiHk|b70~qQ#fA+0&mxm6U=Zld9b_L-4?@0Oxw6eI` zHY-AHE%q8czi{7I1Y>h#M~#88-`L9b1@ssr?edqu2;(HcC6Dwss)I%up|KZKZ^k#p zdASqX4azYljv2Cvz2np$&W)SfCP-@>rERjrHXidy zPwTV5s@pf9{O;Xnv6&a5@!vGl>)2y8vXnV|P-5lJqx$sgNF(p;uTKj92R``sbnD<& z04C!RpL>#6&)B3fjQyYqgFO6gEwcDm{2Vi@|74ud8Rk^Cov-oJIp#^8KVJWNCx`#! zZRgyl>E$+qPM1@b>&sSmq?y;2%(vk<)*S_m>(k;VB=ZWCS*K^?I@Nfs_%%ky-eaG9 zT>Ibm{lvY)|L|UKe4A$Ld$#Uh*8SVMe_i)qxf1x@Zry)vcL=$k7}v#okNp(PpK~jK zGcYZ`r=Ooc#U86{0pJU)Sjgno0RA~I=llK8pE;ZSL%)B&o|jj7acUz12nYh@JSE5L zJ*Bz5p2eaE=Dprq!%&pmH-KE|6&;Xhtc)DW2FGSd z=*F3Su!(}BJXNWE_$HtjnWYgxqM-H|JOHB!(h8;|CJ2s?NY#sJTR_bbL05gIT)@c~ zct+kdS2LQ|C+(41n&$gxarXQiJkf)k0%ehcZGcj=k+IGNnBrcD1+fGLU1f*!!~Z&k zetraUg*?mG<28@f$7X<~0GOQQJaSoa2%x3^uE125e#JLcP{twqvsynNnODA#>s#AZ zr0`JYkAU1=SKbLEkvR1;b$lG&d+X&@ZUxZo3jh_fqB2t95Ny+y0ZIXSsyFRLoib;; zIaspdRAXh}*ETLlSXwQxEaDA@w$97l{3U+kZ4k(XlO zpyN+D*@8fW^pUv8FLS_pjmSJe^r>@IFC~&iXI8*EwqifL{Mak(TmF;4Eg_6sY)tL2 zPa)dcL;WG27my_g_Gtlc+S<1A2b=F+u}YQXp23&T{c3zTWr8=&6{|VnLtC~;>yL4| zm8Sk%#W{VP`EPFp5YO?y^VH4b^u4WUbJ;L@-+Xu^TKp@1V;t@K(ds{qz#2beK7YdJ zkGFrx>ERE28TTEXAv0GxXF6Xt^{TS<2MSZi*x`ai>Q!m+H%__NSn+#N_n)8m`TK`I z`B!>xx$ZyK{nxtxT=(C(I?V4JxoqD2-jZvs*VK`=>+KVM|1tfZ$4`g_wT;EN@N8R0D{?c5^bx|5GeLInLYaTUvR><_KSz7;Zea960Hh0 zS?HhVA(nx~d+5-3>+bB;q1`B>zBcl>V0+gKP1wp8p zDnsYF|4jtgL7iY5aEV!@0f%Z79|5DtYQM5mN5*{ZR_CynN06;I1v;St1MWgOfl%ub z!x7I4iRTq)Js_91Z!rgC@-g%)z_`RRZHRX5V6|<5uv%_#=Of#8)N5D6Nf^0;W5Rpi_1zY1 z=`HUXD^`s+G_gDF0T;Zp{T1V?PUCG{1x_`}h!+sYhH0;~)}ykkTwP(>xMo!<<=U-+ z`_Ks*3vOj^)?u&0(J?+6!TK727#>$18*JOv$QbK@@z7inp9@x*3ffLUJAkIPBGcGT z@K=8{IpY#u4az?f*yh2=dY=ABc7ms5Yp?VHMl}*+42tL4Ll#Aeg?0vjX63JTwjW~k z_F^u9U;4ZBNyfJ^(1ZZAg5gx#MvWOX7z7=iuV@WA}}BAP$G?d@lWFZ^7usYGF1 zlhZ@Y&nwFVgC;7Zif9+<_OsVVsvzG~j zv5(D*`TDz$gK_EQbbWvMRL!4rD}V=AtoFrKzQD@w?qU)XKbdVZ`{~v$vwdFw=CA9W zkDyh$@|f`D%*~@<1T_L*J|+viGjEmzV3Hz1(8QH(smNY4uP)dvWIxi zUqwNoo>AVip(B)nK_Vm(pJN_>1^@*f!N#Fq{@e!+0GLz3BQ2-_(@y=tlFg6S5A~5R zm{r)YF{l@sIDCnOei)QhhwNb4-E!hl*MKLOIvrA#{glD7V4H7@yZ^C2*J zePC5;9(N~twy7y9Z7Cmxcb`7l0U{@(5a*0s?X_$83Mgtqn-&76iW33Vv;fNQm7Z)f5|tz3Q9&MS)#uJ-A|w z97JEgl?To2Lm7(*6QC`4tOpQ8C_H2d5M{O7KB8oc>v!!@L;pE}e0lkek7oFFrLmnS z{~FK$0bKf>{j!hqYXfqJ{NW~T2k1}SC%9~1a|q3C7dTbC#zb%FyRz7cw{B=DB=KK) z=*|zNw1@Tz>RTp{OtE9Mr~Ou6?p@tY`Q5t!tH=VmR`UZZR#W)v_|T@<{_CK97|9Ef zf38@aTLDbF+Ya+AAtsjfUq4K@X~ z`K^yRbY}59pF_p+SvG0*$J=%DeDQavt@y3}Gsnb!+|2y#x_Q3F&yzKNp7{{}VlV8odK-+ojotGo*m?q98cy}0Qt6^yS+k?e&OH3M>h9J`7GEG z@DJcakTigRN(IM6$C3spGB|SpEC@uRyb27!l$CWu$JC_$Sl|aqm?Ha|A|nn`3uH!3 z=>ozCp5zxT09Sd$Kirkzs!N5+FG!&c0jsQzGPS@fO~6`!3_-zB=P`CzC%@$s=7+pM zh%^E;@eld6PBKocM1sJK&{a#Iu-HUFKxYL9$Pr`$K;!%x{sL12WQqcKU@n*hNX3sd zm4^%zSyub1J8Ix9Z8ipot(Mqg+T@>LpAOp2Z8hYMCbd4c5Cd-!^rim60*{&kLdt8E zf0527%x)848yKj>u^jn)-?x7c+{g44Yy~jms*J>g&hKj5nY2fF+B8>Ksx%=Ij4}yk zVQW^9;)m;xD-RE_)4VGKjjsJUep7yj6@r4X*$35f>Zkwu-ZnP;v4ylHGC077c4eemKb?LU4UBD z-9MS*1D(ooRj$Uzf6BC1pJ?F#iJrr+z2ur|j%4YZjUrXh>P}X##x9D)2i0q}bu_j< zobh6(ykLw9BkZsC3ixL1TaLU#m*6D&e_Em zG6?O#Iv{_Dm5C?X9p1LNr3&jmk&;c3zS{2Xv+~)GhD`0|Pe01uwlZK!*WVLYu#)nB zshEx(kPD25$`gZ^IAT9(`s?xf`tIRUV3nWKv0`=GV^z8Q#Sa-ribyL+x9j$0vu+;4 zAP)t&m2|t#!dZ6vSdQOX{@W{7HBP%sae6qSb#o z(%1NTan2wA#lLob_?*ue6Xh5iHx9F7>!9|Zt>?@G()sqytaZ}X2q`q za~G2B#%Pv3EJmNK?$gl!-u;)a4nOmeelJjUX4NsQR5xv2_b&!x-M`H~vF<C%t?0G&B>`xOH2Z1-8;>S|!%;%e{`9T_>Lh*nE0Vfo&s|(LK54+XTRoNw0hrq4C zL+!|$?6rZPfI$Lvd~5b6wk0Ru6wc9KP4tIjfYphF$~#B{9CALjg;)mbLsO}gC~TC? zgVHUpou#iNi<9tAs)$l4zuKPos0N%!5Uex>V6-Wct%u*FNtOkali$MB4f`aRscLdI zb?s^^Y|zTBzP_{4Dk&>K9pfzJ?qeBCZ5!#})4tdq-=-F%!tDN-0MoA%1%<5R4n6s&B+9E{Bq2q-Wr=RBe=Xc-o&(qA|VTm_6BHb(}0 z`fHv0ZQKJKEV!vi>uOtd;-{b+AfPczRR{{&r4P*hB^!Au-5S97+841P_FFDMr(RdQ zx{B1=wB%^htb7(wg)V&*3cZ@+Le=gMYErIAn`)hL|q5MmyQtJ?kUn*{;5&evoKW<_i22h;KQS z${neza4l<`jgjpUFQ8MWI%@S0EWdgwi|zGL#qA9hAE`U@ga`~{)|uh_Si$$ zV9KFa(I3Xf-*Q3N=)#s-SNR4fV^+XD+#J*}{BfUI<=M~O7U1sHv$64v|E8I4?y*|S zQo+a25PN5t$Jmq7Nil05Z~g~YtfrM3PF$^bEvx4 zk-gVkbB=cmzDlG79Vt%{ha%xSZA$7Bd#}}=oo#esy4x$KJMYY&7Suk8ECK$nuMW3Y zPkxnPlD7jsZ6pN#XXg5mxux00bX=Al;ei8q*&)u*(T{!seF*4ws5br zo^+nbOff}9O4 zdm=b>l5cE%eAq>2(ye0hb?I7tYJ6vy`gg>J6XBVBNW$8=48)+4>+^oRPuEy;X(WZ! zL+i~FzfNfrk;Jd&Q;U-Uj>N60mAYI&hEKh@^t|k=EyBY1GSS~#MFXs|3|SJ8pAI$~ zXhlNtHf|xZrx6`R3skwf5*j9YW*B8`V2Aoq{~Oi9g*Oun<_#@XHq%Y;8$nMaj*X~E#J0bKSQjY5+pZ;mt~ z&g?wu#DX$VG+z5FtCM^e?d8`Y?sO6{N57jLhF=PXpo5*_zL}Z-cwM+ zSvvW$nLcrRxW(9rfmN5BjW=B=hbjZ8QSpa$dMC?A^Z)k(a5f*LIm7&RY_{;=s_jVE zUO;7NeiYZ!%=b^SHS5b`1&$wuZ?f65vdOpQ>~RveJ*LT^4tR~VjjQjag-%HiaGdxu$xvd_b} z_7(9nw13U#DLQig5K_y&F#4Vq;qt~2MA-8Sw z0awqwPbSP4E1gK$;ojQ%uqL#)T;Fd$+oyEcF5EwPn{wx?J$hvY`5T(*v!VqFnrvuL z#2mlo7pq>O$|#oAZMPVwQsYBI7N!u5#(H^uajk+KixMCf8sEb>Tjhp&?Q%mm8MgTh zK!cfGO`1DC52cT^2lpKtL{758I>fMyp!6RRm&lcunvfhVh zXnM6di9He$@fyrbt1Kx;KLL9138C*@Z-0=r%@Y3u#stsQ{tyBMmG7^8vw!%P-?Ghw z!2@BI+0?I)%$7`&h?WF-{?e8RnLQY&vPHV6p>_Ud;fZflmslp3_5m>GsYn8&sekt& zy@wjCR~<~Jh)Uo@nWK_)9Ew0 zzQk{)+&$Z#C5ySALejtoF4sqmW`IO~1;+eB35-r>2%ub-ogq|Ax%==Q(E zC*@Fz$A8Mz-h;ky*C&K%g`ns|u*t-M_Kv!x3X?YB*MIgxBL=DGk(P-+d<{JqACaS~ z923s~H@dCmJ@6c4F~A>Tg`8I%;x&1t+AIZJma}!3f_Z6O{6*hdl^Ok4fHaUMOa*|S z1&1T;9*`-s(a4ervr;uPqwwrz0O`eVvTwBYF5mF`wce?{Zt@D;TI@|3V2iVBY2Z4e z^pXZ#Yh^|gp+*(GES~+>=%Zv?Z-}Bd@w1h-nWRBs6m9ph;|axT{s%LzW`HYL$~s{| zF1Uconeyrr%u_eQ?D+MDtC0Cu%31GW<6~BmZHURL zDBlG|x0o_*)&+fu>qp&{bbgEehDEbu*Yo6$Q)}~n*~x>Ybo&A1j9p3vRNXdbWffG< z#%aV$ZUJYgV_UAfLc`t<7d(&0KC;%1hrDW+>DF>Nc7K`P8z2_ZE9h>trpn%N z)7m`Ln#J~DrN2@e>5{;+J&zjjd5;8IUh+xq7o#bq94e}wL>n|E9`VA*q|hyrpf{X~ z=Pr-hXAk?0Ex>*jo9Kp!Vn>~z`I9&S zC2GyIvQT;TIb8tIh|#oq`J59&=emhCi8PIXa2NgIk*Q}Y&j2|4vpFUlIjkDhxEe%U z8iqkqtTIb>bYXwL`sa#Hg9a3C|8Bv2O0h~+3>HrIYb~yt;i)?YiywV+F^P`nBQL$j zed4V$IiJSlzz>Ha1|WmS;8=Li2qAAk^PWdK zgt|B~mGV_;aymU*k=>c*B=5g>BP&luKEcm-!RHRtGhuGemB%3Gl}!KEW6-wfT~mPm zjp~KF=^}^y&Gc|eqea%HCU1cMX(uRp5UD2gK*kIg`;@w~AuaJ`8XwP#7Z*(Bd$={c zRq*^f)7qjGXG^Dd$qh%NFR1axDB4Yh7{f<9-NhJ#HE_N0WZr$3$~v)v=KY%dwfTcM z;b-hAeL)m754EyGqk{t2IUAv}QvUXo_Z{M!P}T1v5wVt*0k9z*(}$ZWk`-iOJQ&p+B@B8 z9{b*s(Ns+G=oRgj4JVHc8~lj1cTA--==9V2G`b@RfK=Q;5p;nn_|a{z6UZ<%SBP<) zN+NM6kTaB3KQc)2ag2NS)7uBAt)Xr?pz_YZA2cHn;#3F^4s-4zWE~L zSN0W?1m3j%I>61X1nWpMz`=Q{m>b{qYD+swCu#1}!X2_O|0rP26D>QT;dXSvvc91U zPW{Ip-FrvE_iPBiyDXW-qF$b^-?NI&5syUFIS85T6|g)C_I8Uyezk8xx;Zb9&G;Ne z*VescM( zWI6e-=@gXaJP3u3@U8dh4(@&$9uD>E?4w)6$0a0DqFzeSN0y-bvFjQrM@GI!H-l5b zYKj8Ud}+&rf@;C{p(}OX0;zO+1go-tm_~``YI4}@QG4=+HN3{}zJl4th4|99uIZo9 z-Whxpg=*TL#~~q#IhOWNsn}`f=ItBN`fFXkgFmh4jn|YNk`iiBHUmIo8P$0lf(@${ z;~z}4ERqFqvo9DL-Ktnea@%DviJVpaI52h}iX~72JEE6u^Ails2K;(DaFhb+-82d> zo+8Rh-e6U~LRX56yk;;LfsUG?T{q5aDL-@+RG=h{vodef^twyaa~C~g2J-Biq8Fbiz|*Lg>r#N@%oHzDioOf(Kq~m1f38DCCh^2NV%~I64^Rq(X%w3NlqaS4&a0=E z7{Xs~%)=nqRI>#C>sU*&!ZrkwpK5^pp%z$xe?8G`CM;1PJveIxdeM)*@1>~_Bh70u z8Ce)iU~g&5FP~M!v`UnU-EVDqTHnOozWY>Vnkiv(Bp_Z{>@1Qg z?sxXp%3B>EuCqtx;-FC=ksbtp`a&YyB*Y`L=h1V+S9!N(k4~*NBdTR%;I~y_n&h>` z%KKsiCL{pk&K3bMy3^-^KRUHlRlKRp4N;I`nBGLMk9WAo%H87r8u-C(_2%e{PM4s6 zC;ycK6SWn#^#&DGTe(T@!PesF&F<7VVE0YY%Iv&`9+lD(7sk`{73jrLeR-d~VWd6B z&4gomLX;TT@s$ec$>=E9o#c;dPjG2b_R1NZ1n3kOpa!~#ZCDduuaR25G{Spmi0s-! zzofj9q@I2=MoQ<0#GwhDupA0PTK|q4qRbAN=~ z@1;Y$pn+pKUlmYH!81Peg-cb!4?mS}mZ>}Qv2Y-j(D~I=D->s8WBgGYs9%Aw>cT83 zS4N_5*m1BPw{3PGYM6wsekR>xuCMRyPS_OE)b7&iZr+ne_P*-6yJzE5HNq-jzPBH- z7&UWrF*F-zo^QFNx0L3&wVpbwcnjlL+14b-{a9m z_lj5c#YWgl({uWV1#_=tSJu6Sm}xaY)iMqetT4g*qSN#uVh&(mls za}k-+fP{{cn*^}b&|ksXgRZ`%XQ>48j~JB+&WY5&qb6qu{>#z{YGO2Hm&!%4)g^|+ zQwk^ierzpU=&j*cnIm4ldoLQoHOCVND5n-?^_F-(;B&<8i%#i{qr#o({VuB>q5V~ph2k6o2HMNUcYs+6Ta+fIca^D z8+Gl%R%0<8#iir}|G19e4~sEd*oEI~+l#TmTz%M}_00!qYA-kfmg1_KtPJ`stW3KNs1ci#30!7iTr!sBj5-Lk+~g6H-8A+4F|AljWfAA0_*ceK<)#Y1Ov+i5>o5c`xx*oV~@8|inoKTG@$BC+- zO@Mj5K*76$=EAN3b19>rLd8{8x;|VC0;SSX969n{QL|3qwCbiAv%C~S$pqq*9VL-# zHm~`B&@^AfcCl5U&PYP+Kg_`C?sxqttr||@WU8SD`XfgWSz4&T3qzo}yOVam?*j~E zQMh7a_%U%Ob-u-lDLMTqXy|+}^gV9ktYr5C4?ur?O|0QqmEttrG~Kjba+DELgab+U z-Vowhz~gJ|bHA!0?r!Vw7}|Iw={g<{_=Ml4s+eC#dAo_4)PqR9o+r~B3slifyk2t`4 z@&8P4OK&$$sh;=e)_7r4cAvI2D}E>?Y-d1}FZ!#f{^`~h;ANZ{B6o)C6cYL8+l}Y@ zmQL}zWIE*JR={QOPuU=C#;55=18+HT0)l(2i_hC56mI`BqS^U%_4uQs!!7sqZ2^Ti zvM4UsJ$hS0atPlSD-la!tD7b&vE6$d{`yH}h$@MxB4A<$T>*0~D`Q)Jo&WJsdEz@e zEmxETDvUatOnhraYp2{6zzn4O36!z}%pB6OG@wbu%1i6g7rSWf*W^VbG)ouFVDpBz zOzCPzeHtp=--Ru|8#mUfv<6YX%?=hNB%P`rPWTB|WSMk|?$PnN{b&R;(q?_b(xtO% zfe82Oc~_z_WM=qiJ86D93F=pm9xqJ}e+m+Gr+#D$Va@8H`wL`QGGC=-Td<8x%pqyq zKN$D{a9a1*0jGMvv~@r;8e*D!!&AJUd06v=UJg2s^iFn+YBay-a<<5z&S&GFDv1j6 z3<~MdtW<34%UZY?`x|_N6g~?G=W_-ywc9caSYy9W@Dl|u4>z$$HLI#|K^-EhdOWq| z0L}PCs3@Q1%^V~zP=bnnYmH85cOApCLCQy*=qFosMmApdarDvuN@56s10`$+XZXNS zt^F7?Jzq?nVctoi9+cdmSS?6u6+6GXSe*)TF>)5R$xT_B{_XCEZ~>xF`2Ak-$lv*G zuc{yz®w{x@=Zfznf**h%gg@N=FGEb`hd2BRLeIf1mPs$zz@Dl11t=;227S&`I_RNq^BQ?=l)Y&t>j$YN>TLWjG!y{H($3;=nrkG`^`OzJ*!)$pOG}W zRMazP446%ksLrDNCpO^Zk4epLy?q-i^FC$k-)U|KSq-&f@NboBiK^BiM`6%&&*cNLVLj zW9O#j`116mHG!<%jw0?`QcjAu;05{2U*i+mx4-3u21t;Nr|_cZhuIM%wpIk%^=RS^ z5IY<;AEuAOwhVWBh99>@8JQ21-H*6E-xg(x^P65h8Et235(|mC?GBV+6<=>@w?Z&{ z6>-dbgAYZO7drh@($bY27GJgiO?erBGkrhiqs>~szXA76x24>ao`yH^mWhhl2IML( zsqvZqP$Es8pl8m>Rd}7nY#QQk@62G<@iP&7k|^dQ%B)7&BrcFZA{1ksl{!Lc7~PFm zU1Ipo%Z2~yg=@2F`?>;yevf-CFb+i|zlxa6Z@-ovE|HwYYBx|wBsRu)@F499;E<5y z&Q1=+@l(!g7goHy($Zw9K(;$y z`6xI}483)a>S07Iv|PlT{Y!#w0nT1miRp4>mw!9#nhE8_=y%bUY)8Y(EyEbhzbMN+ zX80;Euwy_zZ!jb*W|uF@PcXY5zH}F7Pb8LqiO5oZ_mlctLv<79cdi${;ZPKRc5Wr5 zraP@CX#($;SQ11sEHv-(FBu(j#3p@7A6+E=mVQzG^IFvUu!7LAGz&vfI0IH~)DC!A z-Th4h#7$UARIFuboN2+%1M+)f(d?e54^dEGw+gBGGQSq4EXCB=>QggFqJ#O%azw2G z9ds0Xj5mL6Y8Z)$51M`PNQFkm>eQxK$rMd z&FfqnQ%~PwEuu`;q+WcCu_PC|wZbm9VgoFQK9VmO64{ASmpotszB>fs zH?yE^>^)}C}rMX^5 zcCY9;cc08wMEPx>9g8O|KKb?DAm5X3Ci^(nifM|lfQX*w)V7QwYyKzjec98W9;bJk zc#AU@F^6K_76-|2#1B5C{^7J2a>V50HHFk`^m_Dq5(dAg!w)xZJ3lYpvu+Da%(B>g z$<-i(O2~L2@lF9X4F3GF?QBSbcx#u8ByQ1YFKYjncQ_v~9*UC)`2=1!lLJz7d{dqP zaM9!UtN9#isQMptyiO*{BXiqe7GO~Yn4u9@=Ha}*dht2zGDM4AJ|h>(R?AW_&(z1_ z=joDVJKEcd!aeSTn)i6YZ2`LH^MBGU;P{-Q>Ek=53Rcy(4{T#lH{7j}{e#9c6!bFI z(zRw}Dylq_FpGe+2~Q{>a8dEE16m$KQQ8Md<3Kq{+79`F+%qPj@%+3G!+N63cXC3g z($3LiiF}5-$(MqCrVE{O@{{5L-to%8^5FiS36R2>jZ zOtFX>ze*R3bzhk(sFPn3bH&YRmHNIY+VaS(+tLD@)KsAtSt6zxcv2VAItyC#(DJ(R zs`C%pz0T+gtTHX0&0FLNt)o$F*PB2K#e){0+rhuTcesI}-&wOwCR{H$Byen@Ebp~- z%5|9aCZ0_z=*%+86gpE$c5yyZn`O@v_*JiDVH&);H!X79_$0|3S>bT>^^P8|7N!0e zNv_UQW|bx)KdiTr1nzW9rY&vqTG@X?@BRR;E zPrv-MmRfybCJ+2{r-ieJ12?y6izSb5iPHRT#hyP#tn9R%e?h3OxO*ca3L5;k@3ya+ zW|WWov{I7DDtxM+;>M0Uy5;|aH{Z@YU62G^F0Z|OYTfwkL1EeZ)&}{skvlKn|2^S9 z=Z?ZALN3e|=+9%RTd_*Y*t-PRt(N<3zmi zU<>W1jiDhC&kwamEC5}`QPXS^2~8cFUuWviP+^5eFFJ7EU%K+8d99eD_}#pGey0Q* zWm`Kh#3Th59sd_8{K254*uYnEY1q9O#pv|kEqx*k4>!^ue0!7 z+PB*=moSY>5>l+8`8Kwm<#8XZib$J!&xoB zSO0GFJ-2TE!d}svPo=Th62)s*d}~7{pca`xYpOz309-de-XK`MFeF<(ZSw)Jcx8Fz zmx9uczX@(wM_x6RDH~x9$lHS=(pz_y`0G&+VIF>pl1vi%ChqiY_Zr)9m&5R8S9cjq zv1)x{5FbE07~TuIxh4v$9=Zam16QiN2{$5s)cuh0*+N@-bB)uW5bD<<9@q}(-F5v@ zFkECHnqT9B`14nTg1ve<$@mrzt%C=sB^>r%xi0XmuGA^Ez#(`zg5X~^Hhw?drF-|O zv#ZHypC%IY;;*4Xz2L)T4f`HZfNYAGA;U;yBK zq!KTP5(%r2+_k}p??p zXNj{zr2_{Y>~1H__|6KVVzAHT!2AUywqMKS^ZPGE*b1bxZxrg6@WiB}+4(~WoMFjn zawjce>1h+w`KY*Qc5VnS-m86?mPhl0hs~c&Q;-SYvYQpUzw~D$KOnPuCENz3q@S!z ztA_&C?+C+=e1W$Vwk6lio`3K+z2(a|D9oZ2zxY+*|W*CvoL( z{kk0Ue6_boCRvUjY+*;|!4hq|A+49Jdin%XH==sX>uqVnxl7`6~N+4bw53?>ec;Xk~!JV7|K`!syD}0ek?FdtL_N53;Dizvb`uuYS#sMObn~-~xb14W`pM&@ zB>-^%BIRF7=ITXyMT0i#KiKhdK7Js-j(+5|f{9;e%sE~Ncqzbl=5|P)BijGx!BYz> zeS)A}Lo8vimYs-w?` zZZxm+RQ;|kP;nNEOs|==5T7=ark70;^3h9A`h&u3TegVl?wPOagqA}g7MPSpzsb%f zkdsk8yb9TfNlcch1XS>-jSJiW^w96nWMpQW%z64z>JaBN7SqKvRF=S2k$sgGF)JBR zZoi7g+N#4h8AzZk72|68i<)m3q@nFYvt}xr))qInlPZYEYL#a;#}IdPCLV8@AMh~o z%zULeblX}^Vhs<$YtvV6M~M)atm(9x&;mh z5C+rAi=&N*l1oX^LrJ*|3Is?-kHI*1w37bWZb~&vo!D=zsBnzB$+A>=_ce*Px~`0` z!RVeAG6i+mi>y5ow}t+dk_>o{3S1OxTCyY#7AyDymxk3<34pEk<# zR|Um&&ODV*bShRy&Lw*lGhW1uv-vpRh-e}Zvo{k(CYE{s5vwLn&$n>cp8y1#IFk5| z6JI%zxc9e6^6geU1})!>WKj7(p9oQk!CHkUGKZgTo=h475X(1XCqS#6hM0is)$^mB zscUVUp-A zzP~vgqmHhoNviUFeliD_GOj-2sLN;J)3eTlw+X=JXm8k+@~FSp0MJxCI4E8MOV0=j z4e2KtuwI{KP}=2PN)_~moOQM-7xO-RjWX1UZt_-(k#SMpQ%ZOB97^L7D3yz6Bktsc zWyOfcQ{ex=Z;juQgoLAw^Uw$-(D@~7eQ*n6Rv<{HfGSV@`-FnAKH;q+lX+_00w|&> zImZ8?@}cUjN?I1YwYi@}jbK;f#cF!V3Ep2CNTRYC*D?SM$c$O;wt$6NJ#W?c9(g1R1CAfPx-Q8^NddV!mBW z3|&?k=DgPCd0K~SJANmvjlKIPkJsW6W$0sVdi^%YOeDoDp#J&fpWAN5OMMq2z}BQsSwO>qXHd%#}F6ukOk)1xwy3x6D7L&#=s z=A5FGoZ$r|xCBvd6lJ*6Z4F=8|1dK|xYSx~N9X zyOodQej#D$fq&tj$*g@Noldi-$LiG zHjQ>0O%j=T-4g;>o-E-c^su&rT^k#V4v4iRb=^9G`ig6gd^QR81dAa_okSFS8f+n zakm|wVb8mdoh#3MYo`#9c`YbuY{9SVVqs(FgNd^2@z zM9783of45qAZ_FbHy_fQ@#(^xLc9$rY$vftZ=Wc{1C;dsv+$@M`x`gYc6(%sf?MET z7-T1Ukb&t|wj3?p-vFOGQ`YbJ9vNf*lik&!R6>{q`}gO(Np=J_H*5_es6tssMT;%2GRu*wbR%jp^ZId6vg*iw&p1nRCx~ zm3g)n4d%!LIfXDAO`Tf7u<(utGWfME3tQq1Rns@F4(=lq-y!TU<}eK+nyCiNWDnRU zb6}b6@3;tGv2hVlLej#uq(h#j$Yg^UuS4^`I3P!X$vFRT)(j&2&o{rhSKX7!?EyXo_BPbz6 zw~-lqq*BE!Nx`i>@?g!L-G*@G<2+3KP=@h!3^r+pXZ@tvg-qRoXFf%fVHrkXwu;w7 zX1W2U#U0L6ACE|=k;wNR7!R+T9z5cmtAfm%SZ%6oio3=8iCo74)U}Vvt;}qVyV7X| zdGA(j8Xx>u5)eV@$_oV(Q#>)>)>vLTK`5oLufmB=`=lH0rRe?m3opj2Mkw2}4 z=t)Xq?$BjE_x{No)NB6$paoKF;`WX0bJ>l?uwu}zru4k}<2LDxU!$;$H=Kuk+GW!o zu?S6ARt4QVGR3y9;HK^+)#omnf5j8G4agGNOBclvnIUCa!w3Ep|I)ktijC$rTsgu?Q@EI-7_yr@Ar?; z6c4VhBwBj7jSawLZ}KjG()ch>kl3MVOSEg!&M>dAcyj6AvG?58;u2naBy@0Zcz@_e z$wWi)@go5>e-I(XN2P>WOe~wU@x<>RyQRDewJ>R{<%9GKWAr^kjz&qohk4Uv6(1?8 zn-m*cXR{J;{CLBxLY^Qn%7@$0$dmMuATIpK<=Wxu<~{&2$U7r+KPxs&gP@FtkLbA! zbGP0jdXin9Z*(ED^`U#JXlrqPJOh1u44f5BM=Hj~Q}ie4AYjn7{7Mk@HPws8CupZ9?2ElDzI{1LR%<&D9b-71R9x7C-|_ zqqM`ba@mALQ{}eJ%O<7K(Hw87bqo7ZsPwi5uw8f?003!!J+rVWH; zd{#u<-+^G@nks_ZQB=J|+6~&e zLtc6J+bLx3SJ#jCbz*LA>J{;d*13z>Y}<+lppyp>V)Ufzawtrjvv%Ixi8LB3M8|TD zkv3tc7m73T}lW4 zrFMN|qSNWku2;oE*LEmTn~zv4vi&doNawvZ*W**c0eMnY>bcO&k2re}$b{XWVDXAa ztbh_B>-y>9oJhOHZpD```Bip++9MY#gd`tA6TG5Jol3zY_ZaX8(LYnuB5MOB+gPd% z1ef@^Y_jS=DIHXW(|m&P{ln;g+Vr28Sg47h3T7lc(nuGO1|n9tr#>2G8C%A*`>)@x zH!;4Z7MIx<6Xn&Nf$&|8;bB7q>j^RTNfednna~e!zcn!Di*WdLYk$J=FaG%971vIW zq~F%7c8qrU2B4w6!JTG16JW4Ep&XIJqAZI(8cZR{sB?uWG!32N2z?A|D4{@i&EZe& ze_Lyj$I$HVKT{IjPdxaKVg(qEwt4sp6puP8>GaHitE^*xaGn!A+x;#_gBwEimW^tm zb_s&nW@_$NwjAcCV~T=dqXU+9en+~c2=z@I!=)pt7HqvQhiQ)+8oSKk$(GiE?G4Xn z!LaL3yAr-rP+lQ)g`>3hg9!yle@}z%mv{MGC3v^qfBZDgH?-*gMDaK~YjeJhplx9YfQ!} zSwmR!^s$WugZO0IL4tE=%vkf%L3N^F6D)Tu@1~}SGRnmT&HDt-WJQ_vY-7mL7*TrD z_A%N}DCGfzxkUap*mZp56pgDVpq@lPP&RvemqbBC=8Hp|gc6s4S0u(JhLVQiS5^)_ z%UT|V$DE&4MlEFOG1}K%@skO!utvex?<__%lUMTs3~2_?Qpz~BEaTPUS})Ott{dOi zev>JNcjF7dExTEGhn;#9#O^1>nLF_Hy^c_OoqM=r-zW_yCk<+ssoj0EGem{PRm?N1 zh3nRmG?Wu4K()ao^SgWmiBIRnhSokf>&3bnMh?Pm8SYZqbTd59*GLUR@@qcI7rDcH zayH&e$Bi?I9pdZ!=T;Fg?g0Dk{(+&CfxA@Ew%OZ@dlMhWyKNGW#qs@d-aYBfbC^Q(+_`l~BDX>24QUi25)rvm zaQ0A>&YyVEwKd#!dC`kgT8`&cK0AOlb+O}=j*A9PVgonYG@KTTdbqxMe6>#~7K z#NIKXI*FlUaLJ?m-Y#1gS^V73W9&70hGF)ExjRc8360>xxF*tt%fP@3=rm!fOHZmg zXx-8Qs3i0xJfZrb`u_$TJpVasXrQ<8r-9ykt_y}je3bbh&cabLe% z4%%-xHnpuUgIYl}`FJ%)S6L+`git ztZ@-1@wtzIs}1Jdt66W0HPqt1?EnSg*j9hH3OIWR9@1Q-=kZGmJlY;%o5camcevnE z*+TPB^s_TN#C)9XR#pTf{hKfBeO5B|Sa%0?FXv~~JBabn+d+1O@7NW}i?IPX;+G}{ z=tOKuLln0m_(D;)ZJg0HlM7b!bHFbSYQfj16;DzVk|(7axxg@fmRghCYL9IK=JOu?_(VfwXsM9j1TKnAGS6+BfrH$-frZ!tKyaY^D}`we@#991~C zpp5FHnePW#@(g$wN;2wiD?Bg)&1&gq$MA&eE>0XIbE~tD`To*v`6Ga@SM6wn+-^6# z-)kpsP%d^2guTew=)CM7I#Sgo2G#bEA#-r&>@;md^@5d=M4|h#^L!~`eRU>3)q1cFvIBBUs=JbV#f+LsQ_i(Rs zTI;#-%!VTghX(E9WC7ED%6gAovi9ob5i&ju`2D?_+nM^FQz*_!>2+e%t5lbIb*0mH)#GF z%|2&V3LwQaB`XW<_W{*stq5dm;cjXR^%Z=*yd9=zRA^{~9RQ#kim&d*o7-cH%y+eE zR1<*R9KK5+deMAp+r@Vn_*Dy~<8^VF5a_6~~Y`O67W zH90dCTWrgYQN2N#$tx)3+^b?*wZRs+~d!-goBrC_q7$}kIdHOSrZJYZ>~yfLw{AkZu~!fQfD4{qUFm?uz};)K*$mQ~eP;w^FfwDG+_Z8*0ykV)gmT`kr8|y8$No zq%wh!5hp4A$t3^F+8w zAjkd^3)XU3K#g0NcTJ7e*dykdQ-!X>6H{y2Ea}LmMn%QD1^m&>;VbJ0A)_492ReVc z0OAev2v~-o`5;Kg=gD`1!)L;zajF4q|KX(%D&GzJ^0&HjO*^TK!3)GHzY3lI)pv`2 z-{d5%rCY_Lo0QLr0}L)!!)ckSmXi(7k@uj`iTuPt$w%K!yw{`~1&&IPr-te65wC7m z&JbdXFKhG7<_Tp0!^YH`?9*m$C-hT{w&!xk)~m?yx!*tKB!zL`IEj>>S6>#8MgRGy z$t#ijo&#rPavKT(&%a8vT!;6N*GCrWKmi4Dhh&_=kVUw@+FC%zid|YtC7iPqZ4*A&l6YpTfUyqF^h@z zmjrx8Y-EyBe5ijVFKRu!KZ%!P8e7r99^yV`wDZBWF@Gt!KRXOX7&xd8(<>MbqRAfD z>jd3}8JOs?G)w}mfH|jTS`u7>quS8SkHpP}iN^M$%wbh10&e&6(;*|g%`sD9O2bB? zArT6}QG{0smp*=XsHH7vTB`Z_$4Z&D9@o9_2YAiPJ4e zRS^0;EZ+Dz{v?r@&7Mf2s}LdOa2UfR-D6DFHzT%iq3zzGw|R(JxsSb*IJwu>?SLdL z9I~Out5Bk3%Ic4^3d2{%MDm@L@G~@`xhRRW*C|N`NbAq1Q3-aqdd$?+#QcHI4N(kH z-y|E+g!#Ajs@2llVz)gXzezC!ja=)2CP!Doh-Te~S;$s-JNxH^fEq1abAwr`kkzqo)(MEvG>Voyg*Ei$c9!%Umc zO*F+jy!WW-)zME&&3a{nHw$hQ^BpU6m7)LKOJyG-+TE4-;QM0~H_!iD?77wE$T4E> z1sIuv^@j}%G#JW7T0+y-E(&dU*deRL(icJ!M*b5O?M&P{6HQ>j@D2jzshXTO+c^L+qENWvpU(&o$7rzjE zfn%n4(Z?{>*v7ZH>L|{Ymk~?K0pZ^zh3vXWN6e zO-3;Ps>&^ivl!ZX6wrOLD56zp6j2VLyk_)Q&y)G8hw+(Vxbdk{J&bJcV&6dV?&j;`*`+IpZ+Y)6)z0e9vcH~7%d<1z z^VZydgU(W&gj8IWJ71~32(&VbmKze?8;mvH-_q{-PRYI9BUU0e#Jj(#Y|@20%=QJI zFDutQy8ZU!Bj3u^0tVP0|7Al}SUewOPDgbH%ftoeHk9U!{saw_U_7UbRU!d_qySOyMpjW<}0Ny1AuwEZE$8Fh|eWwt}Ga1Dx zp>n0&CIn{VtJRnnAB}&ApqNK-M@BSHTtM@J$;9iJ29@Ok;CkLt7CdjOD{P-4pbjK> zpusxe4njX@E1v{zUR&B5*KCtX z3%`a-@gwZwqY$y6@MiK`DYQFX8!0O`#xe)w5yRiP{;+X8nsMN~c?aLkDPUsxl6S^h~}3&k7-7o&e0Ep~2prZ_5m>DvD8 zl&kZTSi2fmN`IjX?Bif~bs?f&)yyV2Hkt_KFmwt#iYj{7ja`lgvV8y3AXb~`3eKH= zKF&-!4oEImamc|BV}4beTC4q1pJ0<&rZx|_^Dq!5OO36TW?Qk3pmdWI$wh5GYYt?n zOL*7jUS5yVRLAdwmSkkR(;8K@^I;fs(v`wU_$8G+3QrnJpLD^LPOeSxGVB+93)C10 zC3>eXDj5YI!v%JiD%gK4Bb1&H17?ewjBm2GTqZ^Acf5ccu=Wu|j4&8H>Urt276#Kb z%P^0!sG*TPHL}*W%jw*)vLjnUw12?Fe4X(*N_$NrL%A@Iz$u-TTjEcAtCl82*dB9u z%pgC*+h6al65VW>Mg3DLg3SClm5RI{t`?GHyI<4ltumkQ}O{>Aj zH|<7?3NslZaV?{XR>prZDRaD+I+g4t6@Nv9}L3cz*r{9AHZ+ zh0FUMs4Y4{=G9VO0#3sgKP1#)(p>p$rT7BzH(LeqI@~r;U#IhVI) zzqi6R07HoRUe$TMvs98v8cqQB(bKNZlPQXmYhhgG*v`gAX9R3x1N+Qk8EaK$C2Q|r zxaWj0ZS7H~O3J~8ywj>K_pacdYy*r2S;R`f%Dwp|Htc!RSy2a+&7K37vDJO?4E{9S zM0$2WXU!x;7tn(syXYOxYPdWf8wRcT+}qwICVg5Ga8|WF*O+>-xW2ga;>2!w-TCb~ zl4XuSD4R5JDFRe*hgp;=b=Oe>+t?LTR(frBow-M*fWaxpZ9Y)I6TX z&o-XHi_ic7KmbWZK~%81e0kN4?6G=7_FDBt*xov8#p=fT%l-Zgu=?$yLU{lw-(hlc zuu#7NOP4doOi*-bTGED@kD{xG8-Ws6%oQLe*ypp7z=Hn-7c|`ZfC^SxnyLU0e!ZKY z@Dvlg{R$8x#I{SN9@z_gvZe|a2x=IK53Ap{rZuIZ|d|k)?q|IK;$Nu`ZfOaoRKGd2s!0E`eIXMUHp?zsRCt`+9%bT z<|lQ^Or;{UX;@sFkC#nCF%N$d0ZqaDJrNyt* zBiBC!9ONtZaOklA!|fO?pj8Ud1XLFjPo}R#4%pe zmsFVKlzGoo&(-OFXfiKA*2kZ;7GG#pa}=w_iBonsK)LWsTY8!Hl*ptVKl}>6 zo^h2v?SFJ|3xMP#x&sPFMyTS~DO&-!RYkT1;Ex!4`)$SQC3~#4xT!O0j11?gHtwxA z?0-x1w=Pn_2W{6N|0OF{o9nZ0%WM7bK6ZlLx+T3d%j;d*wC~7V(hvR-zhyp*{2AkK z%s7O`2mgrQZcdE+*^HMle#Z0jay;ygm8&p+ZUd{VSnV&Z zIuEeQYE}1K^*t#5-WYsOoj${9%Uqn`xo*#Pt6OdbSf!$Vs2A{?O94c-%{PYnO+6IV z%Bk`Lnz#ziCO=XMwZG5@RhjDourz^PTc@@DJ7vV{&K58qH10*fDIA2+Vizp=>a4~F@7qyxHwoe34VhRAj2boi$(0k z7)dn8LwbGU7+_18`l7FfENxX6$Oc*Y>b5K;R#gG4^0j=J3M4HX5l6eAWPwgSuCY<0 zAn0IGtcq_iVNmwk)P8N_ShZ=2Z32S@J}RcK)4mrx{xp}3GIR+Bye<=u` z=ev8X-hSs>n{MgLfBE94GD@m~H?|s^C@X!g1l?zKVvna_aERku#Y{7#(^li8-RTE( z2-69M*RH6@v`7z)dFe#~^{Gy?rU?KB%vM_Z0onkIG-@CDKs7SZX@%E;1S5h}V|8=* zlv_Unk^2I+0_521p2en>Hs-}@4LFSad|;bu+j$iC98dg87X;O$Kh$R|ag1FdL4&!R z`9b5cTdCB!s@Ay05A4-$q*j44(i&mcih-nX?%K6C=+XA=> z+6kVLtpG|$uBENgDh;mjPU(ak`>FNI^J|#@-VZHTtm3o2U#_$qO!M-*)1Ot>+dMAY zm*<`4th(Md_(%Mf`LR6jIdWEAZyWhD@@JVJ%k!QiXVvw#YcPMF$(IoR{&(gt!fjfw zo7U3J&H2_14R5&z(>OoJ<+d>R8AO-4jXg2q_jCWF?XS8?oXrS1t8UXe=AUJJmghZ2 zXVvvKkIVMud8aw6uD1>T5x-@AEYEw6oK@G`M*fWaS>{JOzXVw2ckJ_9d#v*EDi^bX zJGf|V_gCdgukGKpS2wd2KyIge*c5XU<&|W(j$nmb4IU;G7cEz(FO*NI;B96?GSwSzHS6zaWi(RUo1$(ng!|u$4A} zF=zmT%0Ao6Cu;;f{R!CIepy$Zpij5Fbi#&!#Hra5z>T`RFiMM>y|F>-nru#E?R@N@ z!0aH95AGGEMi4xFApH*s6 zFq&$Gq+k(z08+{|R^e4oqw%^&bF-RL(y~L4tFNpStQ3$c;1WH6Ub|ZX%)n}MHrD8S z)7^o~09VGqT-0o2d7{1Y?6cZc-}JZomP!Z$Hfw``AlId)cteXE`_lbp1Fk6y9|hoj zIg~Pug`ljw%7i?!>=%KtO^j`W79M37Q~CT_yJ8iPxOz@|0e{w)U8(j`epiUL)Go!+ zV3+adfBId9COcrE$%xHa`Ak2kQ=V{YG<>x;sVlN&R-PgR_-wNe$rt;OALHW7wWM=k zMt_TcRaM^E$GMgg+e58S^7FO%zOuJ^Dkhdq#>cPKYfGb7Zwhg91$DmeuMN$PZGk5*&1(5%+cAKt`>tlsVL2UA6?ppImEvWmO{dfB=z{~K|q;5hh4 z{78d7kVgJ&#>N;wi}_^CAMHlsVA6NUKA)?q>7zcqkjqZj z+ij`y!T-dL-{&u!PCxPs6VFpTJkRs_7{4`+dK}ttxk}@A+&}w#)#fV0JMN!j{Ehji zO*DPp>Blea{4)cqY)$Cz?XFNgfBwm}TJ?YxtL(LUj%_sUuD(EO{$0@_?O5hHq(7F} zwtBh1>fFHvj}-I)F~8(@;GiBzN?eI)pLGZX;iHYRqDOs+4|Qo31*(aqK6`5cGLq)e zDAsvV?Xn1_M7DsYXajB9lR~>7QeC$?>^@~RYrb|2UAU=>o03EZG)V10R@sDTPa;NN z>Z{fTuc)orfgpV>Zq<`v8EqpX4|FjEPyTIygcl?0ltj6@kK+@XZ+GTag zs{BPE@rf>D5WDPqcmz)2ai7qA&Wj34|3RSbSvicq>M+iwN0}8XPqg2oG-;488U)&G zuPY@MXsUhstsN+evhrLR>L@v$OHul*wLUMz(!Me>xthoUa=JRT_#*^z?JA+YU$fsY zRXuMKY$Rvvgjzz441Lrgbo1lN$zmK&CvvXQL0bdkcTa`C4_P+AJf;!bKhJ0 zOZll&7P=D;RA=v2np=dzUsBLcUunxe^0Q|waw5w-jLkL1wZ~v6Bm1ESB&}7Sk>v+E zk_VE~&nL%zeLvMIPky-oUQg`{V^&^QywW$ljpR!XHNT=W+gebYplGLYB6qlsukw0b zrsP~uI`JkR0?5X(Vx{fIjTgur9p)ug$E*rIT_0k5tzWZ?lpdQ@mG5=h7(zezNBmmOjQm*)9!|&jSpq*_X>^+QnFpuoy&qdoAHIJ* z-Tx5xf1Ycfa(*>E_i58~^H)yO%bruu7MJ7KwXRde{ru7DAN-q`JzV_mfADm==i}4# z5&G#f^wTl@^wb+x)AQ)3mpz+r>U;&yEA5f>O8URY|DXQW>Ga<}WJV-IJSoFG{xRjR zqEnJIT5TEn+h`u~H!mzB{|ExHXyIs+dP0+rF@9Q(7>zN1T&?+I8(3Yj6~L3&TlL1x z%d5Dq?HBp|Tx@|nER3M~pzbZ4_nQpI)y=oQ(VDrRf;m5vYUDH&(b=xlhc$O(rSs~#l; zEK(Rv|@tS0ZL* zpunnaL4UNcH$986w&QIN=Cr)ay9*Q|)=z zT|et#F0T%-N*@DUxq>q*Tm>4nQ%)QcfHGc)2QY&sAgqF`y;e1H=_Lxd`TCu89D){HvvTt%sRU_0MJ2-$geFR9CzQg8kcDn|f;nkg3+J6l0QA<;qVz6;?tats}Jh%)N7EafPtk0~`RV z9!-ab57K^09l$F2X4z~7P;#QIop#y1PFtcboDijg3k_^`blS7(9`F2@?6F$CpmXs! zj_Rk5SZ8%VkHeCs(i2KQ_h@MW>^y^i#INVV$e$V_^O*5+jGxRIiG%SN^GEJ8eat+D z`Sa%ItfwFP)90r1fUEsp*2OI|F2k`;+cfM1nx|lDXgovzGoQSkzWwIC z=?!1!)6J$VN&ESg=^CKa7jB#*E{o z*N^dIG{*e#_?|y!VD*$0t6&6u#p(h3tDYBRWyPv5eius!uHo39Q@ow@+eMCGDL3Ex zCXoyZA6D{F&;~WB@|S<>DWC$4xY1U1nrIP-0lDD6fCWeRA_L&7_@cF#W_vbuKGFmr zYx*Q9K0yv{h{}&swD>P{MdjD?XWOXiHuuM=bFOx6@&q!J)mMiVxC7u)sE5`^b^$25 zu?JbE^d}}cH)IhO9^+Sv)lpKG+bYrZ2)WgSTMP~Dyxl~ z@h}%`chXW>&k^@X)jq*P0cd?l?5JDK{o=WD+fM>f^5d_LXhwL;DpyJCivWH=b#$w< z08eyqZO{b9t+ONbNcysXHtP0~ttRF9@+!A=@DB#=_gV>0YnhVO-sgDP8<1$?8yaJz zU}_Va#3Pqsv$x&1S6wH^7s*?HYjkcBSasY|kIp07Y!84d4JE*8&NM)KICNXA-?}cE z*8Po80?W0}KLe}JV=I8T#fM4V&*#AG_-uW1e;JA}4*n6pkv|LzgWw>sjPX-(=#$2n zKfaXn=Ph5kH~sb3uBN9ysrN#j!Z2ZTG)K+Si|q9C@7{MZ{qnu_J4JCka{j*PS*z)9 zymoJT?w6VMU9Q}9UUKSl)86SSFE(0w{oub`{CrOOh2K4${sZ8*k7YH*5Wz>d|9;Ig z_NMQD%`|<@GwO-WUbjDb|5wB-{=QN{9smA!thE$fj{S65tr3r)zYK+W@V7o&gmuJk z&M@W=WAXTyKR^75hwPkbe+E`>V2@Q+tY+mZTLB!L2TwR3tSva* zS(AQqCxZA`z5Ld16DFt|gdOj1-*LDd^V_(Tou=JMB&Dj82G{_osKPOFZ13l`35E%f zQc7z(1?WMVfM>uYN&O!MiW1BK7_lOCe9+DsF8B&i^`@G=EM-HdJawa{1zG_X0hNC9 z71Zcpi~wZ^pfso+%~Vlx6i|G&VQIh>gvy7U;wex`n*!G8pCAc#s7L%KUuOfha&=}Kt8BQcdo^|dSYI}e# zuGQPb#sUH7W)iaOJ9-G81f&EcB|bX2$SQ&x0{RpH*FYrN0;VaDe{mzy1ZDTr-$$&# z>n|WGpC*9SpV6(k+;-PnqECAR4s$GEPXC*|7-@W}9zW0-@EoNH8ON+3rB)x^;vhD$ z!c!af_vNK8IZs@XXFOvwvdpV|r5(QXKbnCO6JK2tkPCR292H>ifVO=h@Cg^IXe-ai z5a^^gMNWO{gT`1UPc#fY#{i~+)qAWWjvag?+oX$~D1lC!U9oHbxNm6LQp-97>>?Xp zwJ1j*J~|QZBw>!MU2%&sh>lFnF#=wimyQ~l1^!O?O1gxhO&xx46yVj@8SsWcn_@Hm zX63F1v=UnR+56U)H>pb$Qn|ME&58XZfnFFJy+}^tv&H54R6%Ww(PeJPi(GTTJTt#* zWwIQ|j}0xa^_^PtSs${hRI;3_)uJEvU~OyQSNHW)F`>ZT+FMogjU^5G9$%b;%#DNT zsQppEK35tPvDGtwv`Aazwck&f@3Mx}N^^J?rVyUvMtF^7;R% zPg+es{QA}O;%Au!CE2^P=l$piQFDEEs#H{MyASo2&exBf^NGywqwhO@{dD@DAM4TR zIp=jhzkL6l<3Z_LZ(2=%@#U-OnK$+fke8?uf1eV6mld%8=AP5(BY$K&3aitS7ybD_ z`rZ%Y{!f4s%14g>h@Y|Qd1qqvn3+%g{POub;y2}jsqEaB(V{8|w zYd})FE`9s>kfUn~B6>pQFQ^b1~n5;#)7fSQEHUp3-N`W_%S;GiB+Nzvx) zEsH+^BB6`#d`cl0_U=0`-3mayjXr>DlHZs_X5?ZqG{Ml!oFIaJa?@ekES=VG}gkr4M`9 zEdX5JG1mCeCP7sDRFK&@pnA0a;Nd&A4*BE7$Gb|TTul#Nq(i>Q@%v-|+_%4RZ~AinR%bWo z*$lt>(WxQNS8a}{=S?g5-{@`1y?pS`aa+dkpWVHle)B^Fhkp=M;0)ju=8v2&Vei!! zJY$-k%)YtufAR~{^ubT9r$4I2NKFTXy@TdsSNquYf3fxte!FGFe@@aX%>R);BY(#D zdF=DYhd=%ZD^};1SAj<4T|?yCvYghu3K#m%}6J^Hps0mprAlBA0z}% zl;~N3Ej&g97$`+{c5b8rMy0WRDZ2!$R)QLVVrq^+Sv|Cb1EN4OGgzm_$fYGK#KH@J zqA{^Y{@L_g?4g%0>1qKa0y27}R)Em#wOM|N-~=R%&M1K2m3NjH2CKY+pn#1KSDQGI zD>;$pDp7zEwUr(@i&rpMkmlHB$8yT7IF13l{JJrc%YWHz)L(3dCMyfA(@2Us_h}Q5 z(dpEN2Ppyaq-rZOO$sQKDS+lrR^ZV;1*9oA6fs-iN0786Y(5q5*Q5gq5!Hk2KZ!I! zvDheW0ltEo-F^YyfZ5Qwg4VwR1R#yk1-kv#&Q<`o-}zRB1yoc{3{wgJH#tzNa`TpT zfTyhDO+V^k$u&C?4_LE`G1s-C(zsy=eA21{KH^)e4r}$P`YN93wZvV(&{dPhvKK{3 zr{Atn?f`PW@{Kj=Cvs6B4UztXzP2MM(433}6m&Id2MXf_HU%JrUTwmZ0rH~THvQW4 zmHB7?m?j-0&ECG|2t23QpbQQ0gLSMyKeL-H{MrhezF&>PH@;U10;l&5YhjY`#iw^<@vt0nI z!!7mls+?{kddhjk@saafY@g2pI$u9tBm6V4+O`5Pe)`HM&U-O?ILBv;h6v4M zon`Qk_>KG-<7b{2+8pBixjRRU`Qy5rKVJ%1_oIKVes9S$0=eMPn@HV1yw}$ab-UeM z*{0cU-)@t7yZ!p-|Bd_BlfY`-oX7n)`IJOxQ|@^FsN9$XV{j;A{vG$9asO@i9|y$Z ze$*~AWXAkav3V5p$Gl>d-^0Zj4p^aDFRyZcRks3Q#VVLx;YWpqEPt0a>?ze1>5|pW zuVjx^i=ap*E#U_N1*inYIH*kUKp-Z>n~$^y=}1SW0b!yd^$-$WI@gM4sSEvftyKaQ z>d$JkGz&r$zd)D3loY+V%Bw&Uxcw*KL1TR_-7^ce08*Sb;HM~Pi(Ns4>VYZb{b8x< z^I{|<2lHh#1Et}w{< zRck4wHy+BzXX)QKUc5{9w|I4+&EK@bOFp7Af#ah6uAOYAj-H} zA{~9Xh=JB*#i*^&C2Vv{R#w856^V^JdzL~|D+Hsu$wUe|QIG8c$J&J4#>cnvsaQ|% z-g$Y|?RUN@!!C@s20k&4c16F4(W_g7_F2nSrNK)>I{s0@aBVm5zxtn*aRhgMVC5rb71F z$JL|xd)&6kIK22!>_0pbSY_*s{n}v8JyyH8IA9oBnd^JS?oqcYjAd)P?qt^*{|u}? z-xaHyVn67M9Z_@WrfohmZlRfL=99rc;y3cg;V{O}m_OQc!aO^+lk0r`{NCGE)3>~& zZV>%hd>Mj%>pZiK$-}(q z?!V*y>$n*A-*NwaV%~qh6yyJrJyw^%D*LPkSmk$f@4vy;+D%{Ea(nL&0qquMeZ9QO zTRWgce!*N)hO<+1oSzZwWZ(kc2riExflxs~2n9%Ph#?4HXKs3$SPuai;8uztM66xv z4sC%RwW2Ic(2HjQZ~~yXx-zRr;ghw4RAF7pra~QADJBSsl<15V*aEYDbbquBOs5`@ zh>dRtb5BKer`Q+?`Ue*c+H#6b*2q5>8<7$4CUI7uJm>@n6R7dr6>5HUxa>04g1HUo zRUX$$wcUEbwyc(;zQCK-FPa8r-~ZCs36#ZW1PB({E>Ksi@{kCPrgggm7M9tuJK#28 zk?6fEMB_6Os%RT$<#>SCfP8>Y%Cmo6m8pNO8jTLoPZVZb2WsAR*Y+N(ufF3g5ty%i z8;1sxo@522sG^#QxN-ob-1{`v8`p5U;?NsY<%Fvx^*8wfMZoIV02gh^o7hi3aP3#V zwHMXRtt3O@Ef}s6Wm^Q8&Bw^0UktzYx@t2kjWsBB_^Y(=8vA^LDI%AT^uN?9hia?K@6_I5>=wkMaMN&eYy zvBBt7F~V5^>WFEpWzAYkMB8pIYn%VA=V;L<0q3;S1rs-e2r#-hu*tma;`{&}Bq9>C_6RanHJEm$`CmEIF z`K`r^Lt^G}#Bb!!a;%UKWBe@U3Su*F1<+Tl@~zPG=XrS*t5vgNmFvF8s*9_FWEjL& z&iehkfYpGiQYPe`J_78MP3b+fsoC@rbm76e2{NfjR+1Ie@%WI6BjMH*e1A?raV z91T!(b)WE0&7e&lIvPX~TO$P_Wpe`*LID-#1Vn)-z*m6Ff`|-^vvPqywX&>MsR?!# z$Qsp<1(eIzw6z^DgP%UB3nB@`b(^$j4uh&R3^oC|0E@X3Sl9efo~!Bn2{4Dz5kNaf zBkI?~3mhpns;reW5Ry6sU@X4LJfJFDEeOa6A_jn=E!2ufZmqN|I5`loZ2+7A zkraO9tKFPbLJ92pm42W;Y5DP7V9S+%i5Fm4;^Y+wS;eO;<|6JB#n^K9o$pY~TyDGL z%{kZ3{uTcKe8~$fRayx#jRmGwfNNIuEE1q|HF5em{uIE~qo%!rrv=6vlalF*WX}WW zDV&w0F}8JAKtvHgElB=Q1BsgVxptr0lB9R_AQ^e|v6dIE2(TJ}R@qiVClKs`xLLHz z*cKpP^mg$cD^&y7N(5>07a0zIk=5j-Z4}#FX`SWlF|y*VN@L{=jFVdo*jp0%K#97IW9W@Rd%f>w`Z$UDZ<%_r+t19gPvLj4745ZpT zRa!6ApK*yQ`@$8}^1CwD;+WDWU&v;EJ5G$HTXopxAApi4_#mJCMLI%r+{N z84#L&I6S^U%mrEL)0Pvyyh^^vGjKa)t6nE|Y0s)#$hemH-+$jdvHXS06|071(|HTe z7N?CSbE5seEQ5c5=o1Kgp3Xe!Q3NB+HmTuABMe@4jI*-Sq68{#{H4y~Qr~ zzD_dCN83`*@z?KLPe1=V>*+HON=RurvO9ice=T69(j=#I^HI7& zAfE<6UrpgJPWV7*0^BH;NZ|AKDU0QlU5BM9 z$7@BVw&;Q2WI0@l1l3{*1TzhEt~AS6eHCg$OcV9VzvvN=(moV*k{ks|TotRY7CS7! zCIHYm;+?PFmwJRn0@#zliz^)>y7NduZRQwXk~ppT>b*?T*<5n0fMMg zhWtUx^Z~$Cn+5p-#?hoL+IROI+bdRIb;l2=0pF2_5M!WzeNw3BeLvK~tFW0E@+ED} zNf`8TF4CJv)U7e{Brid#Rh0^KRbj=>95Vu?Gb>^pBpQm`fXJGFyy_S03dqymdRZ2$ zU6H4p4(`c3_ow|4aIOHj$c46E&U84PXYX29EvA322# zH~!GSr}I9iewDrQOS%Aq0*>jA8e^3{#>)8WG=+n2s25+h81Kp(jw&;cW2fiFkG!?x zWVB$r@zS1vnELMz*GEB_)eUW8A{}#seI%f$NAgnXA1169RF3WN*r(E@UR@aH%c7hE zB9o(XHY;e0-nPtDv@5-T2w*xIQpF)J(Tn}{hXn1`zw|%$_>+E(PnCbwSLM3^@tX0X z3r*8}+^0>qkNk_7IYv1?;%oodaCCSvt6+~VUSMpKPxBtD-x%E?mPJ$bC8tr6_*rj! zEAEXhq^*wg#&pf{&ns4+$11H=5(n!ZJX}xzl>J11 z`(vAX&Z8MWHy*5~@4Nln^ryb6-QJgSIe)bJwMq-yGzPG{o_^*xPp1!ly4TEtA2xrV zapQXW!EZh{z2sR}=KoUvyFaRKo`A;vH~rTlUxzV&JZ%0gb7pxy$8f}N#Bbbx=eadw zWIVslH@@YZu{@uFRet{#U)(=9zu99|aFvy-zRyN1qwq(E*~9<-9AI_UyqTfeM9(cT z|LUQl!9P@aW3;K-1qurID-fwVw27dtR;ZPh4l1OzJ&y=Vlx$(F%`EEue{hsZoS;=T^C550}2dWV+?iE@s=F%^i8|v{ z_W9LkgR}v}g7hO(+YuPqZeLJ)S*lH+O6j|HUS9QT_E=SJ08g2*QMl7OSu93BtNYN| z?dviF3<`iXTU|*TU^ze>J_3pv&+NMjf4&xvU}G-eW$cnGu8;&cbqfqN`l%dsn`QM< zt^yK`X~>9~U**R5=rC3V(8`>DoDi?3r{|6UopvQY5LWz3h6>dwQ0v~X^R@Xekf@EE zSN>|F9?<6;1LCsEHGQUjV}LMMRA&EBX|z+ zn1ceW0)ghFD@@gGK823B9YdR!Pr;h86gyR|p908+P5rEfMos|!@B=`y|7bMQZmgvb za80|k)@ieUc@lKD-zqMsw=b|MeTI$7K>(|+wO3#kTg@XkTY#>Y`U4K2D)t=n;~z&X zkrW}0UJ4)fmo_<$@u0=Ht%xSpMTTr?(CJ^q+_u1et60KGeAIb(_yE3~Oh-o#Ax~hq zUS8!MtM-$&SInY4vi;bt+r19qb;3UbtFBlz7xinW7}wPHwoccNoqqSa)ers=zmY!- zhB1C>M(FcIKaTlhJ1#vQ?Rc%vpWk=;YWn6E;tcukJYctbvOKTKqUrac2QIFspZrz6 zZg_t^D_-gN;c;d9o>#4=*S&<3mTOC$%k#7J@7CRaVKx24ubfVQ@cDM1yu$oF;92g6 zUcWcp{G3PU|5E?wSQ-1aUs_L}%igMwP5+g~4=Yoy_52(5kLM4^`pEx8VV(>7oLHlr z&)xZ~HH`5y#?R%(&xb$3H$o}7oUa6x3hk?ZhNfGr0v9~28$qo z4+IMEpY{HyUgW5)uJZB1w_yWW00`LLOVI}~2p@8~G0LPwW?1~NJ=HW6FDM7vI*1{d zDS%gGAz9K}uT8MJ*P$y;PYG7up1z>VSCDC2LnCd0kpe_qBRoJBayqygpd@|)a`7^p z+Q+l(Y>!#Z=vEgWiH7oZ9f8#71T5?rH_6@m*>%_bF4D8Bwz96 zW@5*{shP-0_KT* zZ@U3W8^EO7Q3woTeDa19Xim#N{E@cjV3%uU_6;^cjDcXOe{dj9jvxDJpO-%QGN3AI4KZ zEgWi9x8oB~8X5kxL^en56=2U_z2Hr6#HMr8A$zAvkv(APX=luR^`dhDCO}BjIoMD?2@2TXVrRSyRpXK+ppL*wd`pEq? zUahnAdA}bYY5w?wVo938KxAOA1w>7&h_N2`CPYl_dG zTTg$R6}`e!%&Bvn zM*I?i9*=$;`7`pT|E@5`&pb(7GtVEFtXKs^owovTpH+V6?!UWdn?+pA-QIhCez|V< zed=>b{TaY&QY6tSFwbj23y%fHguMxjB-GTUV3w=B1b=F<$rURkXeR+^1e0UgzDD_!3|QxnP#K`3>W z>CQ$q-1fSQ@=vpEC@ITtv=5yQbX&?J3+k$+Ni^?(c`z&+N?g~ z-M>z(Te_g|e1)5RQdcWBIEueMsM!}>%G^o-BJ2$)WF2iCAe77(QRzdMFcQIsnA71Q?`Uo0Jzoj|<;mZqHZ0sK5HtEf?Hx(gf+M^aa8K`sL zQ6F46+XXB%mu+(U--07EG_1w{Vb?wvAe7@pViVdrN51* znQk0YpeqwNmblhOjuioLUOa~H=7n}>Q_o9*!SE`Q^Xhl_tb_;kvko>&#a?r_fKhGI zM!`(w_tmapp#QfDwx&N*iR=b+nsfea3T^yzLMp(K7W!A)H8i%%p)ZkH^#Oya-1jT* z_=kx6aln4lr{t<2CvnSu#^i)x=~DA?;@a#+fH|hswGy~i9`6yO>U$)i-xwrk%0O&3 zcK)x>xesjL6V^S2^T(C6RXmJ&_DqE@tAlmNAFl1avX7wel}tNW;5`1|o3WEpx{M=a zJFX7h3V?h*I=Ya&>RSP1#cF6v@+L2-Y-RaNUIiMVmIS@drLkPg{L4L7^&=iNzv5i~ zNN3X8kMv9RZu#HiHTVrnAg`C!Z+*XR6kj(hxfy<%^A zi^Yy*V8Y(pR329KQcNW#{-^)zx$Qb^oFmkXSj_mm+JrEr-{Y8*3&0H$Nje3 zmHW%M{}PZETAo{o$#{Ml&u__yjE_EY+i@}eGLEib{@5MAgTKvFWBfhg=bsr^U9MQ= zlYCSdRXYWX5YI<+Ws>}vb*9yB@ z;g^+}$P++|r-@6glyl`@e2E?UDvicfyaPbN)MM29CxFz#ciELqRc!QH`>a!M{aEYj zQD3l>7DCYDd5#sU+ra8;Sg|U=<%&ob1oD1#-k#3tMV8U3$JhxjLXw#5vD3aQb@>u{ z^rruaNBSPR4zO#F0<=J@QP50Y# zw-1PY5ONy%Y777fy>Fb8K79&dR(KjW6eY&^<4^u-0*ITvLs>> z{vp4>L=*qCt>AQQ`9}xsSBFP)`5a$)KRUS>{|%lKTEI^16ts3_Y0;WXwMVI1juqnk z!8mgbEg?xUmMK&?p9q5b^?S){&M`;Y90H+$rz@{JEb92_MS7)|&BRR~<7nmQ-rO^CKW#3_ zR5Qj;n@Gm|k*T3gv~Aw(V}*J1dYga0>glWLTfc6aZe{P)XR!NBFGt+2|MwqE(|@~f zJ-z4uI!3tfUPb?3_u{?jdvEL7uI%`Ku4}pVDA)p|$zvgHELO_GPb*<<-ZF0OlXmozr@203d?dae~C4wSF!+G|h zED*Ge+hUZPBCt__MXgAssthkVUc#0@QJ=|3ASyQNmjE3gNHVFk)N0h`ojj_c_`o8q zGCH6VdDIG;1YE^t$fSnOxP%GNumhS@#m5Hb857YVj1+*%%3kB$wANRa1!Il3dLh*i zuK;mO6t4wy{aUuR+8i5cSF2z3hcG_5swv7(TRO;AEP{HT396aX0&N12#08=86I=BpHZl}O2K<<92 z20^<7Bb6Z!o+RfZ8R7C5n2ztz7oe&Ug4F3L&N)g8h-(~@`}kj>skY={vPm25XYIx^ zh>Wta$X=)dmX@@&aR1+m0-f=7rKnpf1jubU=j7@iAlw64Ahh=C zwGRPbu`?@kjREq_F|)y9ynM;qsjG{T>0FdHj8=~Q5ShHJ%KUPiSOih2fDc=+>*B=+ z(l2XdTigmD-b+89c+Lf~&83V*iCdk=nUs^|xjZS?ApgA|x+kW)6@WhLLc+f}=@pxH zyq{?kiHO+LC9boe!CwL0#An2BD;AYK4!x0on_)M`Pn(Fw{BfPmAJ4dPHQmS;x_IQ8 zKJ{Qd@BMM+|6l#42~d}D)$jXGJl?ybw9i6|BTaw6s@b3Tucy=f4{hJ`=DF%B-Twrc zZ(y4MP5aarh(+XfL+iNIxjgR{&vhXm^T(#6NBn$Zo%3VoeB@6>V2;liKW$E|anr}q z9G{UtTVv^oJbpg>@#P+?=kmM#ycGc3035I#fZGB3ySkV~epTkyl)KZMUY=0A5Bobn ztypc9-V(FgiUt#pAAi}eRiOo@%=G{UCTSJ5cwX8Bw(9n(YB;<`p;w(_K50lo03Epi zCnASWi%>^{$4Y!a#cBg80(1}vf(P(HolPThv|nHa3FxjiTe}SaUi`QM(h^YDljf7w z=EXg6yQ~f4a}2(u~B9yHNe8P zAWvwx6fLzN%riqqQ(e<$3~Upu%6VB;FX?IhQraaG*zuvqsPdmU)k}nc!5a9dg0Ka| zDVc&tQHgWfC4eSSR4*qgu+2OXq)QJ<91ae~6rSn_K`^XoKIl)(H4Z3!*Bw7&&0Jpf zwl_Du@)#FaA-aFAJ}a}d_;q~GJB?tJvhDYtQ`Q9hBVUx`kFt!7`N^TS0RYIeJ}(0U zAQTiUz3Nw=Qi%gJc6NbgO3gc*COpqSMyn;{rhSv*N7n`0lDr z*s130{*H5P!|N7Xw+lEqJ&X?Js9W2m*=MiPV*peLBE#^dATNJ?LWTfq&23GuKrZ~5 zK%>6{+>RM#>z@-VLY!X!w>=kxl_Ef}-9GnAo4b^mSem!2TqVZx*?aCEn?HCU@&x&| zJN8|kEnuw<0o{}1i|ogG0l<3k@+$j7ecHo`E_#~6MZYc@Yi(RKTqpc}D}WcUVpU(u zbKNz@2~FZsO?)ouL(o`S7zckcXT)!rC&`WE$;h8&T*mk@DJYc|WB#d0wqmlFXUF(y zccpeS?)Rm~GJd|}mTCISx6~ieE6{xAzRyS902!k7%<+4lT2DXy8|&=%T3s{duQ7jZ zo{Jt!{*CyJ_>Eh`$ z5tj>P#y&w8K$c#N32bF6=LOVx-2tLHSGFtVVnYBWd=ezFKwBXb04d-u0AreLsTiq0 zKwOJa2VPy(Hg7Rtyzs3sE&(b58)c#nNdbS5*H@fsfqR;|7o~uo^!x)5inj#_$vgW= zjG|xr%lCXunY<9RvIq_t$E>1lz@t1`pq-uvNHdPe?LYRQ;G;C)w8~8i+bm;(yIaCf^K=xL~0uk(Ou02;ss!ftAelTg~&{V ze9=}!anv#{^rNrXbr0IL0I4xi7bN-06-V=E-yBf3Il%t_XH*$VB^5YX=LsPK1l827 z9`ht%sez)+$QQ^jrsx(EtPsU!WlgRGN2k};2OtKpYXc~KffOVl9l7e$Mgh}$xtjf} zFTG!oi!DWq|7|SeU}BOj9iY#6QCPRF&fsI^sV``1xfMByuPS_@f-8Z;1*fW;U0l^Z zrs~!gbEd_d*y-B|OLntzlvTCKhnNlUNgOIq^$$J=hB>K*mW#&IZ8z*u&E9AKV#kOt zy-QvzpFLOXF9HJ}bb{vO7}n+ha9jWY2Kq@vK~!Lkya@JwuwvoqlXgQrXVlcqHm7b65*H?t!wQGkUdTFRsa~U6_r=!ss4DRG8#DO zV5?8fy+jco863`&njKbb=|;y3bV zPKGgl48?N1jQM9f9%KHv`uCp~JbgXA>E^xZRbTD%A@QyoTg^+%&mUty(_j9;G`;hK z{iZkWfAf?z?qB2nH7CQke~tUs_Wf$yzqjLYz2Cp*6{`VO_W)Dtg;lOptt|m+#cD8> zwy>%JAqL+0e#fqRYwqq0qF$HZ&-~UTc^a2wzxvYJpL#s3L2C&MCF#(B^AG**6{_>qXA{7yqRd11j;;5HV>wMvos}R9H0?HVuvRiV28o{gx7f}h1krVvQD%S=y z&Tc5$BJf7XXro|?3L-i3Y32z@Ujvc>)Xg#Rgt8Lg3wl~Tq5ocLcfMBLY|A;d+By3h z5Q%tZ#bfbwu%$p`V^RL6-*85=v`0%K6MeCY27dx(0y>>a7-xOR6WGEo`wTS!5j~;A z7HXT6@T9%hK=-bqNCAX^imLB=|q^)}B_<|C>6{o~J zb=F(VOIOkg=2pqq((PM7L7KzsxDfEuer0s~T)kYn{euKrRcc9m{KH1AWDO(!>q~@U zs4@bAA~X|{Hquk-SGPRIF=K>0(?|c{5C-L-*A>3=ScqM<+Ekl0%oVNz*;x_G z*X*m77Gjr}n?sb0@0_`+xcGb&oKb9|8(@$6HYOqP!dokUepc`#p6+4=hM z+T!1A1pu&W!Tj>Ioo>Y@6kG91P3Q5VpL5LV;NQ+8LbS}c5x+&w7>toWWBg^V9rMSS zKey*f@5h#_HGe*pFR;Ai%U9ELp6a5G)%02ZhW(Mxtf!BE9wq1+@!yX1)sDaYn36#6 zoR9dA{39inV}0abjge(c#`qxuWBy>ERBp_%_!7;ZGqB3SCGj4=(dt$Jm#kRj{wgl< zXnucQef_Q9&ad|c;y42YsEKDfDacT51%MO~BD^sNA+hi`Pfz&Bou=qo4U4@1+jy&e zNJ1|NQ2<6?S!T5cOEd#7)?q_Hr5p>0aB?bH8-T+;QEUFqGP*f}HUdt8#UR8_Nb}Mo z`KT{>vI~$EIHiexJw7h+5wHaj0wL;)OpgB6DSrjMz!sT0gd|BX0awb{#9F?9RMZKY zYF8pdCuS0E&ejUiXbqn>d4*EIFZ)P2d~%JX`k_7`F<_So6EIiwDFw~Y3l{lR><)-3 zRU4yES&~67nB`e?P~lO)$u@1)2jkTpj=(s`kr=es2_BI0Pb!D z;2x_f$W)K}fBLegin*0$sD<87z_1?xT7XLsGTta{a>uOHHXMt;TLrOEvSPOOva{E$TXUiJonuyAg1E+0@U+IMk)(#?k>ofarmMeQC0hNUUj+zP--O<{(HrSA z!B}HWQu&9I<2B&2D{Ga@Pq(kO$2iY**^vBdeV6Sb1nKGc>?cdT0I)Lb`P%!JTtiq? z6Gz9~@$rT9(-EtF<6B#?dee)(Q8OvUpd5K4u*uk5SA%jr+Ysg=3a@4U{_?791)xj% z*<#>jIbHR+?jO)pWU4JZwhjIfzmY#R4>=wjBo-%$Wf|jV%pc@K(xT6q=0`v8`7-jS zMoo`LU1eMunpF3g+1AfH{iBTEbD#F?>64%R!^g}&?teRdafR_8@f-0=$~?yLJMw4b z&&Z$0e*b%{vi?;Z;<3ZH}Dti?#hWS5x)>0Y^Be U*wj4SN&o-=07*qoM6N<$f+*NyXaE2J diff --git a/docs-dsql/images/smgit_configure_branches.png b/docs-dsql/images/smgit_configure_branches.png deleted file mode 100644 index 4c12f51be359e18658e7073ad2aebf0e55ae4083..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5437 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 Z#dNXxSYDA7cTN>gLq+F#`7`VA{{kvFS^EG0 diff --git a/docs-dsql/images/smgit_file_compare.png b/docs-dsql/images/smgit_file_compare.png deleted file mode 100644 index b5e602f87c56c8b2933b3d32ed18e8e6fb57f9ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49842 zcmZ5nbwHEr+kUq(x}Guh0O$}=zoug3Z~d#aEs^t8@&XfCs*GofLFqO@Me0ipH^|EQ_?K7J zIjcS+oG%Lyn%O-Gd5~(6k*M#<+gL=yd{Y9u>k6xT)OSAK)@&%=vAa#@{wb8mnEUwA zjd?ZY?!1Zo;nT*`6XlbgYbPhWr}I_#yu7ux_0A3KX>cHoQcA)M4=oC+2aqBlJOCU6 z(8?H~rTvccPPf=>IZgvr$Gom#zBMN6>Q38)z551WH@5LVwl@M#*lldA*B|`*K@_yn zWF{wJT4w*SXL^`hF$^Ql$jm_Xucc8?Y10cAHx{#~qCx@utvT5@Q^SM)u(MtNErR~c z-I{I|)i40htqLplri1+Z2VTZ-n&mRjxpBwY?ahO=>CWb*q`|2a?B@~VNY%FgtRz&5 z;O0ngddeCWco9(KBKhTGf$}wq__xeWsn9{;>C=ThCWSbgU`zDBpLI65fbul^MSa3zW7EOqSvl%fPB+1J`}_9v$uHq) zo7^^KqPW@ZABW0Es(YRr+dul;{1wAU>T_+xqA2l4S>)J!T-^M2b&RFhe@;(pOBxaE z(>|TP9vE^Y{kU!~s(O1leNnAJ=IR2^Wval?CK{W;>C?e!_Nql9gOX8}TgvMP$JY&<1}<= zpJLeU9QC=Ux51TyA&Btp{C}I2o|hUjZc+V~;RYFy6Q7|zMRn;^WD|mgq)wZ7D_Eay zq=!-ZZNgbRCy%O650cZocmQpa8*Pu31`(%yZAX3SGXuM8r^{i-RUg*`VA{$>nr-vm z%~y`TzNqtODIO-8Dvf&h>1H{jg)V+pSg+U3NOoGwtL^t(bra}(Zvu#zLMrNb*zdJM6kpZYtpPT6bfzsMP^sa8g*e z#pyxS>9{zf>QBeeKzGVY8q)%9l%H1s?bfeP%bxO7gptbe{zqy||I$dg5rV*(|M&>g z?@obCL!0=$ixYg)x<`{JJQl?wF?|G63|p~VgyDAI{e*pb6LPqdb~O~^(~cWV-3mMT zrSgSCnv$@PABMjy$d(?gprwdf^S*Kv8NQLXcJsjdNPqKJh(*!5zrh?)PEW_|`+|e5 z!{SNL4=ZXK@<*+L58q2yCe}Y=sY58RH!~?G_$6z$9F;Uu4Q;z89lQJzbji7Y#W&6C z)#Qeebl|qPDzqN1n_-N^d z$r~a}O5j)*g21hI-k^e``6>U78RM~s6#i0$bJ#@8#;37He(HOWEj-JbyPla5*OCo$ zu^SN-Px()Xt@C5au^ba$eIXK}n^CDr#!PFsl!hmW&X?SoP*#gKX{hOg$juqOA0V_i zFzeWOzd_imr6~iw-Gje-8FBhPG4-+5TK1Oq~~~lQ1F;aDRkx5?!H1t z#Gt1qZp%<<6C2EdyGJNzK^DVm&;oe_lYHYlU$ZKuAj>)VCXJozWL`UB&H763(X|O_ zk~xbwqHPO6`*o*_Fe$T&^6Z=ul6PI-cd0T?9QIc(4^+8i+^IYE{t`X&rAPZ= z%lwC##X!bk3z>?k6WScjoP^6P!$+K#ODpGoal#;S@PBH?9^C~QO?KQ}2(qOw4u&M~ z=0^Bj-uN^rO2uYF;xKi;DlRUxQ^zllOg7g#lBkpbMd^O@Dq=nd4?C|G=Up4)HE7e0 zYkGfC09A}m{35yyIZm0j*c+7?;pbWj3A7S=W4q%0+Fy9o|ic`tp6hP=Pj8XY-0SN21o zKU-?@@T=7-+kvcQs0UzR9jg6QjNcPL&Ng)Lp@e)DwmE;S%_oGQOXibT2}bgkJNU)1 zb+u3HcjM0cK^y{uhN|Qyqy8z2H+Uaycn=JCp6USF%z}=X>0FJg8CiCCnBR11yx{EK zdjwIGPHv&^pyiu|Try%h-8eSV^^@ zx04Y2ak=QYM&hY^P4-&ZMtgtKG2*%8iBhtnpfVMvfLQ-V%{=}}vHhFrxBK&DKfc#a zsbnTE<|K5UgR~N0**(=lj%|tli8h%6XbNCKuz|!9;DCM(-Ah_=a#J{2QM?=A<3yPG zU9XdGF~d{p^lFV>M&k3BS4mJ$GM$c+i}gqIOzYjlkKMw|2oZ_g(_iJ#H}m!n5|Un% zhhe6i^E`%CDneRL@p(^#{j{gQRMs_Ils`GS@T4(vLH$wkk3za%10^Vq%a?rDFTN?L zUF$rz)~B_rO&a3uzdW_Q7M~AMQvD}`al-ADzSeAP6_AT2b0uJ^Sc3@rG!aDWes%Q_PU5DYRGF$Rp%UQ;TNU+V1@1snZ4(=`{3{Lv^pORox z^EH8Q3Uv~t)>6rwSuAS`WOpNdxr!!;QgBq?z6A}&YVE6*OcrNKTAG{#TD4py2>uSc znJChhH54lb|4Vjcjz3Injzuv{A$A=dQxG5A?tSu{cJpg02Ua#2e;96LKQ7Igugp<6 zltXo*AQ(ES=&-t!T+vG%r2kqa!YuSo31MQSOPLAl@P&U&2$u61ZFDvM!lW);UOGSRee-=iQJU^jG=E9A`)heaNS$ksT&9>s355&5^FHf7r9D zBhN$lPonv~$G~%hBqFaSWu58Y!UCl61~WZYGS;WRrcWL){F7LLzaD-HLx%n6XFwiEI2U7?Zf z-8vK9HcuXs{~ZzS#;-?&eMYayQ#>kY_sr>L;LpI75;2Nzp3jqC6~gLzPD42qDlp{# zlC-h}!GLhuA4s*{?z>`d$veoFB%i>~g!?#Xl-wpd!M9(a`S{Dv&lR5yMTG~bD2+N( z$^N$=gvSd4{|PilG^oTh#8iEP7VuU%J;hSl+24?B_Zjo1-gj=4wj*f=Tq z;k`Q#_q){8|AlcZjnQ(b0i*XgZLNTx9UJ78$+{J6;WUV>bO=R&M`lkefQYlSexcm^ zzv$DONhXaaz!9P;AnMP=tHKO$fl?PGn=E&f(}Qw7uz zXucSpMQCeFXmQ(IRMCAQ{>fHnt${rug1>Npp>;3GUkLCxysOglFKkRr%Sebl*D{x9 zW8R$kfJ?87?p%Ghroj8-6^Qe=_Y_>8G`Gj802br)FZF^7(8~va=BomW*GV4!XAMg;^d&@C568cp;kSHRklUEY z=>I1)9Vvj}f7iS&d=AI_?*~wZ5CDG@6&e!a{WH{ z6nL_Ebab>yb8@)7Jc|Cw(Px%#13P?~Un*>4-BBHR%04$y6CQLk{nP&%<_mmY@~F^~ z#nI8l^*|EDj>02(s@vsZ`{`jM46xZY2Bl9hMP=o-sMC`ko0EVLX)4yq?VRgze}u=N zp0$ghPQp&}PW$%dyc9w);7X6sCnaGAC8uk@Jc(~`beY)+YG4-k?%PG_0Bi>`w_D0| zx(Wyzd(~!tr3cor+PCpXW*sUvgM-Jo0AdIIz&BE=HZaV* zC%isPEyV5W>k^+mLWCVZ!BY z;@4X%sT9_P39%dQ@#RmaVzL7TlG4(=t~8!*+nh=sa7B16D@(L%(`LZ2 z&B1+uoE_(#x%*L}6GU<=ZRe=PkJ6#|STU^2TlJqVMoOaivB7x}iBd9F%u-2hklfFo zF`LfzSmgCo#?)kdjRGH3VppMf5Q428RQ>vwHqdOe8I;(uxrDEaU^@!@cw~A4+~K=F z)AuNda*s~>n*3!%^eT4c9wBzDL_XV+t!x(2*N46AJRPQ{^O-IM3(4u^AJWR2EMR<*zr74WQqKzZu=4J|#gbr16x*W6@tKQd z@ywHTm##Wt`_sJ$b~OT=Z(~^Av^|IZmDm;yX6OO77+Ee})m7QM@c#QDl;^{G)f*G$ zc)DGkkCOp5B&IwYv~L+Do>lJ6!i^95;aL^v;<((U=EP%&oS4M+c{gyuSAQ0CGP0FJ zsOjUlup4<~???-;ddrF+Z;Cigd`)Oobfa~UjPWr>QKm~Mi{XQ=%8B4T+m7j%0^S}Z zh+HZlOc&-Yo{SH{u;_#uq5p=;)n@2eAg4*TVDS#XcF#e1=HBcFUKmp#xKuWQDI9kp z@;x?gDS!##`8vUBNrjI^ZgPEFh3-${H3sXGGiC4OlZ+ti6f`Bp9bKJsxiiNNbjYn| zi{;?}t}JEHM#ceGch5n4RrWyE)vL>D_8Pf15s~%$zN9Xv?xL3}hd%u8@`ZQ;?F8f+ zeqM2KswvA&CGD}wt!aW;b8NyLX^pIf;x!wq0SI?4uHr z`&0EW8t5Ph@)1{1%>5^3j&@ggwPOcvfpul7CVcTvTy&phcFN6dWsxEYLfi5hr$v(y zk)~S|MA?5V=!JpaC%^^V3$Iyl32M4SzB;Q45dDE|?$1Ed*E{U%a|TAY)MS?Nw=*6x zJYFP!>%09TSnQ%d`7kPrj9ld2$h;xi86uvUEt|VA{*^sxbj4^^2p%#&MUQdL#_$_aSTOLBt#-aMX-(W$;Vbuv>erIbw9lN z}j_f899-2Wn0)a*BsN{EGC>xxl7C|-cw8lrwgRkYvF^J@;gbgg)DM$M^RY5~AqaD0^cJH;YZL75Q9Fh)dq_%N0LzyS2;> zcMe^+?Xni}xjuK0GNzj9Z=BX%0Agq#+TvK)SBjJLQE5pyA@I-O4qSS`f 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