Commit Graph

56 Commits

Author SHA1 Message Date
Mike Bayer 2e137b3954 - add separate oracle / oracle5 jobs so we can CI
on both series for now

Change-Id: Ide8938334c248119c1d5c2e1bf07070f17c86242
2017-09-05 17:20:05 -04:00
Mike Bayer 2efd89d029 Add SQL Server CI coverage
Change-Id: Ida0d01ae9bcc0573b86e24fddea620a38c962822
2017-08-31 17:20:26 -04:00
Mike Bayer de73c6d1cd - pin on cx_Oracle 6.0.1 for the moment while we wait for
either https://github.com/oracle/python-cx_Oracle/issues/75
to be fixed or we can merge a workaround

Change-Id: Ia3927337fb48824e0fdc764ed3a9d4930ca7a9c6
2017-08-31 16:22:52 -04:00
Mike Bayer 0030966200 - add some logging for the provisioning
Change-Id: I1ac16bc77642f4f576195ac10443ed8e641e0d49
2017-08-19 22:45:31 -04:00
Mike Bayer 9e6393c6b1 - name these TOX_ so that we can set them unconditionally
without them getting used unless we ask for them in the
build

Change-Id: Iec157ce9e70366af275acac959527461faebfdc1
2017-08-19 16:59:29 -04:00
Mike Bayer 2c594da214 Isolate memory tests in forks
Swing the biggest hammer, run multiprocessing.Process() for
each memusage test individually so that they are fully isolated
from the parent process and any side effects of pytest-xdist

Also add --nomemory as a shortcut to exclude_tags=memory-intensive
and add this to the setup.py test runner as the memory tests
should not be running for quick runs

Change-Id: I3c16c781e21b33deb939a64e77a6e0e41fb86922
2017-08-14 12:41:58 -04:00
Mike Bayer e331da58a6 - since we can't isolate the memory tests to run withtout pytest-xdist,
add a new tag nomemory so we can at least limit on the build

Change-Id: I3935cf15047d77fc09f8ee229914e37e064e5b8b
2017-08-14 01:15:22 -04:00
Mike Bayer 3568e508d0 - take more print statements out, maybe this is not
the issue
- unblock pytest-xdist now that the upstream issue is fixed,
maybe this old version is the issue

Change-Id: I28dd7ae0872948a188651d42e2f4af60bcbafe81
2017-08-10 15:46:37 -04:00
Mike Bayer de1f8f8345 Allow multiple versions of single backend
Improve screen output to illustrate which server version is
running for a particular database config, and additionally
allow full overriding for the backend-specific targets in
tox.ini via environment variables, so that CI can inject
multiple server urls for a particular database such as MySQL/MariaDB.

Change-Id: Ibf443bb9fb82e4563efd1bb66058fa9989aa2fda
2017-08-04 16:16:49 -04:00
Mike Bayer 4e8b155c74 Pin to pytest<=3.0.7 pytest-xdist<=1.16.0
Until https://github.com/pytest-dev/pytest-xdist/issues/196 is fixed

Change-Id: I7dfd268e6078373ccaa0b5c13f9b6ffa1b2fd4b2
2017-08-04 10:02:32 -04:00
Mike Bayer a987942761 - add option to disable py.test warnings plugin;
lift cap on py.test.
references: https://github.com/pytest-dev/pytest/issues/2430

Change-Id: Ieb8a6258ba1d15efa570d9cda2b51cf021499a23
2017-05-23 12:24:26 -04:00
Mike Bayer eed7888f85 - pin py.test at 3.0.7 due to https://github.com/pytest-dev/pytest/issues/2430
Change-Id: I587282da141aa6ea92f944eeb4c9e5782d0b5f29
2017-05-23 11:12:22 -04:00
Mike Bayer 755da17974 - OK, take oracle out of memory-intensive, if it doesn't leak memory
then we get the TNS error from too many connections

Change-Id: Ie685173cd1490d99c5f37a1045e1312c4d9125ea
2017-04-12 16:18:11 -04:00
Mike Bayer fb33f9c54b Repair _execute_scalar for WITH_UNICODE mode
cx_Oracle 5.3 seems to code this flag ON now, so
remove the warning and ensure WITH_UNICODE handling works.

Additionally, the XE setup on jenkins is having more
problems here, in particular low-connections mode is
causing cx_Oracle to fail more frequently now.  Turning
off low-connections fixes those but then we get the
TNS errors, so adding an emergency "retry" flag that
is not yet a feature available to users.  Real world
applications are not dropping/creating thousands of
tables the way our test suite is.

Change-Id: Ie95b0e697276c404d3264c2e624e870463d966d6
Fixes: #3937
2017-03-13 14:16:42 -04:00
Mike Bayer 1da9d37521 - bump minimum python version to 2.7
- add placeholder 1.2 release documentation, update intro numbers

Change-Id: I9f9969cbb9e95c2f750a5c16798e92c35a5ef6cf
2017-03-10 14:28:49 -05:00
Mike Bayer 66e483ebdc Update profiles for psycopg2 2.7
psycopg2 has updated their unicode / string handling, greatly
reducing callcounts on Python 2.x.

Change-Id: Idffd242b303ffea9c7733068a4be290da4dbe679
2017-03-06 16:10:57 -05:00
Mike Bayer fa6dd376bb Support python3.6
Corrects some warnings and adds tox config.  Adds DeprecationWarning
to the error category.   Large sweep for string literals w/ backslashes
as this is common in docstrings

Co-authored-by: Andrii Soldatenko
Fixes: #3886
Change-Id: Ia7c838dfbbe70b262622ed0803d581edc736e085
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/337
2017-01-13 10:57:41 -05:00
Mike Bayer eb28ebb0f8 - limit oracle DB reaps to identifiers generated from this
run to prevent race conditions against concurrent runs

Change-Id: I065d1cec346ea7af03792c3cc2f30766f73c2bd3
2016-06-02 17:42:51 -04:00
Mike Bayer ffb6fbf825 - don't use --dropfirst when we are using ad-hoc DBs. dropfirst
is unnecessary and causes collisions against other CI runs

Change-Id: I47e9bc98cd6ef4ab90be25bae45897dabae16308
2016-04-24 14:44:04 -04:00
Mike Bayer 7d2bed69ab - switch to 2 workers for oracle 2016-02-09 10:17:10 -05:00
Mike Bayer 11a8440bc4 - Testing reveals that we have *no* weak references to any cx_Oracle connections at all,
yet cx_Oracle still has open sessions that cannot be killed until process dies.
Oracle wins!   Add a completely separate DB reaper script that runs
after py.test is done.
2016-02-08 22:57:02 -05:00
Mike Bayer 7cb2a2d6c0 - additional fixes to get oracle + multiprocess to be reliable 2016-02-08 16:27:55 -05:00
Mike Bayer 86660fef7e - D rules seem to have been added overnight to the flake8 plugin
I'm using and many of these seem contradictory and/or undesirable.
block all until individual rules can be approved.
2016-02-02 12:15:35 -05:00
Mike Bayer 8d1579cc3c - using extras here has the effect of defeating the usedevelop flag
since SQLAlchemy gets installed as develop and in the virtualenv
2016-01-28 16:23:48 -05:00
Mike Bayer 086ad9ce64 - experimental - try out a very open ended design for the factors, assume
many more combinations of factors are possible and basically make them
more akin to command options at the tox level.
2016-01-27 17:39:48 -05:00
Mike Bayer 49dfeda6d7 - restore the use of PYTHONNOUSERSITE that was removed
in df3f125bd8, this flag is
explicitly checked within conftest.py and we need to continue to use
it, otherwise a tox build inside of .tox that isn't usedevelop
is ignored, including C extensions
- rework the whole system of running with coverage, so that
with coverage, we *are* using usedevelop, but also make sure
we rm the .so files for nocext, make sure we --cov-append, etc.
2016-01-27 14:23:33 -05:00
Mike Bayer df3f125bd8 remove PYTHONNOUSERSITE, not sure why this was here, it apparently interferes with coverage 2016-01-26 13:38:34 -05:00
Mike Bayer d100bfcf60 - another approach at coverage 2016-01-26 12:57:18 -05:00
Mike Bayer ebefbb3d3d - try to improve the default coverage job 2016-01-26 12:06:24 -05:00
Mike Bayer 70e24adaba - fix the deps for the last change 2016-01-24 19:37:16 -05:00
Mike Bayer 0ad5599229 - unfortunately we have to force the paths to be shorter due to
https://github.com/pypa/virtualenv/issues/596
2016-01-24 19:29:26 -05:00
Mike Bayer 6b05150392 - add a new qualifier "native" vs. "dbapi" unicode to avoid
profiling problems here
- add extras_require to setup.py for the most common DBAPIs
- rework tox.ini to use extras, specify a test matrix built in
2016-01-24 18:28:09 -05:00
Mike Bayer 077f26af5f - and NLS_LANG.... 2015-12-05 17:17:40 -05:00
Mike Bayer 7f423e8756 - add ORACLE_HOME to passenv allowing oracle to work w/ tox 2.0 2015-12-05 16:56:53 -05:00
Mike Bayer 2743b674f5 - add an ignore for N806 2015-11-25 14:31:58 -05:00
Mike Bayer f7943db2f3 - add py35 2015-11-22 16:04:04 -05:00
Mike Bayer 72329433e7 - OK, forget it, the DBAPIs, etc. everything else is also site-wide,
we need site-packages
2015-04-05 21:55:40 -04:00
Mike Bayer 112a11069d - since we're working with no_site_packages at the moment, add in xdist to get jenkins to work 2015-04-05 11:27:06 -04:00
Mike Bayer f30e35babc - Fixed the pathing used when tests run; for sqla_nose.py and py.test,
the "./lib" prefix is again inserted at the head of sys.path but
only if sys.flags.no_user_site isn't set; this makes it act just
like the way Python puts "." in the current path by default.
For tox, we are setting the PYTHONNOUSERSITE flag now.
fixes #3356
2015-04-04 19:08:18 -04:00
Gilles Dartiguelongue 9d617468a6 Fix dependencies for running coverage checks 2015-03-10 14:56:17 -04:00
Mike Bayer 354e118f4b - we can start checking these flake rules 2014-09-17 15:39:47 -04:00
Mike Bayer 1217d6ce97 - move this to the correct location 2014-09-17 14:02:34 -04:00
Mike Bayer 47a6ffe090 - cant do xargs in tox.ini as it doesnt run outside of postgresql/mysql 2014-09-15 15:29:54 -04:00
Mike Bayer d7498cf4ad - remove some crufty old testing options
- reestablish the "bootstrap" system of loading the test runners
in testing/plugin; using the updated approach we just came up with for
alembic.  Coverage should be fixed now when running either py.test or
nose. fixes #3196
- upgrade tox.ini and start using a .coveragerc file
2014-09-14 21:41:13 -04:00
Mike Bayer 1075801667 - exclude profiling altogether from coverage 2014-07-27 20:07:57 -04:00
Mike Bayer eaaaef6ae2 - disable C exts on coverage run 2014-07-27 19:55:00 -04:00
Mike Bayer 54592942c4 - add support for tags, including include/exclude support.
simplify tox again now that we can exclude tests more easily
2014-07-27 18:46:20 -04:00
Mike Bayer 35551841c5 - reorganize tox options 2014-07-26 21:18:19 -04:00
Mike Bayer 30ab1a02c5 - support args 2014-07-20 15:34:08 -04:00
Mike Bayer 827329a0cc - add E721 2014-07-18 17:46:51 -04:00