summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove unused Scrutinizer CI configuration (#149)Jon Dufresne2019-12-012-50/+0
| | | | Scrutinizer CI is not enabled for this repository. The files are outdated and unused.
* Include 2.4.x change notes to CHANGES; add select_parser to unit tests; ↵ptmcg2019-11-183-4/+42
| | | | minor changes to select_parser
* Break up pyparsing.py monolith into sub-modules in a pyparsing package (#162)Paul McGuire2019-11-1813-5/+7857
| | | | | | | | | | | | | | * Break up pyparsing.py monolith into sub-modules in a pyparsing package * Convert relative imports to absolutes * Reference submodule pyparsing in setup.py modules * Remove recursive import of pyparsing from setup.py * Black updates * setup.py updates - packages vs. modules. use .dev1 for the version
* select_parser example: misc improvements (#157)Robert Coup2019-11-181-152/+94
| | | | | | | | | | | | | | | | * select_parser example: misc improvements * sqlite now supports TRUE and FALSE as literal values * use common numeric expressions * fix identifier quoting * downcase identifiers unless they're quoted * fix string quoting * add support for sql comments * additional test cases * Reformat test-runner aspects * Improve support for NOT expressions (eg. NOT IN, NOT LIKE)
* Use assertRaises for tests that raise exceptions (#160)Jon Dufresne2019-11-021-41/+10
|
* Use classmethod decorator (#159)Jon Dufresne2019-11-021-12/+4
| | | | | Available since Python 2.4. https://docs.python.org/3/library/functions.html#classmethod
* Use staticmethod decorator (#158)Jon Dufresne2019-11-021-21/+8
| | | | | Available since Python 2.4. https://docs.python.org/3/library/functions.html#staticmethod
* Blacken the project (#141)Jon Dufresne2019-10-31103-6260/+11483
|
* Some code header cleanup; remove BUFFER_OUTPUT from test_unit.py, and ↵Paul McGuire2019-10-243-34/+19
| | | | replace most resetting() context managers and try-finallys with ppt.reset_pyparsing_context
* Use pyupgrade to upgrade the code to use Python3 conventions (#138)Jon Dufresne2019-10-2436-228/+210
| | | | | | | | | | | | The pyupgrade project is available at https://github.com/asottile/pyupgrade and can be installed through pip. The pyupgrade tool automatically upgrades syntax for newer versions of the language. As pyparsing is now Python 3 only, can apply some cleanups and simplifications. Ran the tool using the following command: $ find . -name \*.py -exec pyupgrade --py3-plus {} \; For now, pyparsing.py was skipped while it is refactored to a package.
* remove ide files (#152)Kyle Lahnakoski2019-10-225-57/+0
|
* Remove unused setup.py keywords "test_suite" (#137)Jon Dufresne2019-10-223-2/+6
| | | | | | | The tests are run through either tox or Travis CI. In both cases, the setup.py "test_suite" entrypoint is not used. Further, the use of "test_suite" is discouraged as it installs using eggs rather than pip.
* Fix tox to run refactored tests (#151)Jon Dufresne2019-10-222-4/+3
| | | | | | | | After commit 3481b6f3f9bb2dae7e9d88ed08989b5f71238e4b, tox failed to run tests locally. The tox configuration now uses a command identical to Travis. It runs the unittest test discoverer. The command "discover" is the default if no additional argument is passed to unittest.
* Remove deprecated license_file from setup.cfg (#146)Jon Dufresne2019-10-211-2/+0
| | | | | | | | | | | Starting with wheel 0.32.0 (2018-09-29), the "license_file" option is deprecated. https://wheel.readthedocs.io/en/stable/news.html The wheel will continue to include LICENSE, it is now included automatically: https://wheel.readthedocs.io/en/stable/user_guide.html#including-license-files-in-the-generated-wheel-file
* Stop install tox within the tox environment (#150)Jon Dufresne2019-10-211-1/+1
| | | | | | | | After tox is executed, it is not necessary to install tox in the newly created virtualenv. Simplify the tox dependencies to just the single one required, coverage. This makes the requirements-dev.txt unnecessary and unused, so can remove it. Its pinned versions are outdated anyway.
* refactor tests into tests directory (#130)Kyle Lahnakoski2019-10-2115-803/+626
|
* Py3 cleanup: Remove workaround for Python2 urllib (#143)Jon Dufresne2019-10-192-16/+3
| | | | For Python 3 only code, the import path is known and stable. Can remove the ImportError workaround.
* Remove unused imports (#147)Jon Dufresne2019-10-199-12/+9
| | | | | Discovered using the command: flake8 --select F401 .
* Py3 cleanup: Remove workaround from Python3 unichr() (#144)Jon Dufresne2019-10-171-6/+1
| | | On Python3, always use chr().
* Py3 cleanup: Remove use of closing() with urlopen() (#145)Jon Dufresne2019-10-175-14/+11
| | | | | | | | | In Python 3, urlopen() can always be used as a context manager. Wrapping with closing() is not necessary. https://docs.python.org/3/library/urllib.request.html#urllib.request.urlopen > This function always returns an object which can work as a context > manager …
* Py3 cleanup: Remove unnecessary __ne__ method (#140)Jon Dufresne2019-10-172-5/+0
| | | | | | | | | | Unlink Python 2, in Python 3, __ne__ defaults to the inverse of the __eq__ method. Can remove the definitions that follow this default. From the Python docs https://docs.python.org/3/reference/datamodel.html#object.__ne__ > By default, __ne__() delegates to __eq__() and inverts the result > unless it is NotImplemented.
* Py3 cleanup: Remove __nonzero__ method (#142)Jon Dufresne2019-10-171-3/+3
| | | | In Python 3, the __nonzero__ method was renamed to __bool__. It no longer exists as a magic method.
* Remove 'universal = 1' from [bdist_wheel] section of setup.cfg (#139)Jon Dufresne2019-10-171-3/+0
| | | | | | | | | | | | | | As pyparsing is now Python 3 only, the wheel is not "universal". A universal wheel is defined as: https://wheel.readthedocs.io/en/stable/user_guide.html > If your project contains no C extensions and is expected to work on > both Python 2 and 3, you will want to tell wheel to produce universal > wheels … As the project is _not_ expected to work on Python 2, it should not be distributed as a Python 2 wheel. Instead, it should be distributed as a Python-3-only wheel.
* Add missing trove classifiers to setup.py (#136)Jon Dufresne2019-10-171-0/+4
| | | | | | | | | | | | | - pyparsing supports Python 3.8 - pyparsing is Python 3 only - pyparsing supports PyPy in addition to CPython The trove classifiers display on PyPI and provide quick, at-a-glance information for library users to know if it is suitable for inclusion in a project. For a complete list of trove classifiers, see: https://pypi.org/classifiers/
* Add Python 3.8 to the tox matrix (#135)Jon Dufresne2019-10-171-1/+1
| | | | | | | Allows contributors to easily run the full test matrix locally. Python 3.8 was released on on October 14th, 2019. https://docs.python.org/3/whatsnew/3.8.html
* Remove unnecessary keys and overrides from Travis (#134)Jon Dufresne2019-10-171-5/+1
| | | | | - The default "dist" is now xenial, can remove the override. - The "sudo" key is now deprecated and is no longer necessary. - Python 3.8 final is now available.
* Support building without setuptools (#133)Tomáš Chvátal2019-10-171-1/+4
| | | As pyparsing is a dependency used by setuptools this allows packagers to use distutils as a fallback when bootstraping setuptools without much fuss.
* Add support for dynamic overwrite of pyparsing's use of stdlib re module ↵Paul McGuire2019-10-132-8/+54
| | | | with regex or other RE-compatible module
* Fix PrecededBy bug, issue #127Paul McGuire2019-10-133-7/+27
|
* Merge remote-tracking branch 'origin/master'Paul McGuire2019-09-271-3/+14
|\
| * BigQuery View parse fails on IGNORE NULLS (#126)Michael Smedberg2019-09-271-3/+14
| |
* | Merge unittest enhancements from branchPaul McGuire2019-09-276-215/+390
|/
* Merge remote-tracking branch 'origin/master'ptmcg2019-09-251-0/+19
|\
| * BigQuery SQL parser: handle WINDOW clause in WITH section (#122)Michael Smedberg2019-09-081-0/+19
| |
* | More Py2->Py3 cleanup, roll forward fix to ParserElement.__eq__ptmcg2019-09-252-96/+79
|/
* Fix simple typo: pyaprsing -> pyparsing (#121)Tim Gates2019-09-031-1/+1
| | | Thanks!
* More codecov changesptmcg2019-09-021-1/+1
|
* Add links to codecov and codecov badge to READMEptmcg2019-09-021-1/+3
|
* Add long_description for setup.py; add py3.8-dev and pypy3 to Travis CI versionsptmcg2019-09-022-1/+4
|
* Update version timestampPaul McGuire2019-09-021-1/+1
|
* Propagate setDefaultWhitespaceChars to helper expressions defined in ↵Paul McGuire2019-09-023-10/+144
| | | | pyparsing module
* Fixed bug when ZeroOrMore parses no matching exprs, did not include a named ↵Paul McGuire2019-08-263-2/+81
| | | | result containing []
* Merge remote-tracking branch 'origin/master'Paul McGuire2019-08-251-9/+11
|\
| * Additional problematic characters when generating re's in Word added to unit ↵ptmcg2019-08-221-9/+11
| | | | | | | | test
* | Make next release 3.0.0 instead of 2.5.0 to reflect Py3-only; fix warning ↵Paul McGuire2019-08-252-7/+8
|/ | | | message; minor improvement when default literal string class is other than Literal; always add extra newline after dump()
* Fix minor bug in creating regex range for single character; add unit testsPaul McGuire2019-08-202-2/+73
|
* Add regex range collapsing to compress large character ranges for faster re ↵Paul McGuire2019-08-182-16/+45
| | | | performance; update CHANGES to reflect new booleansearchparser example
* Minor unit test cleanupsPaul McGuire2019-08-181-5/+11
|
* Update contribution guidelinesPaul McGuire2019-08-181-0/+4
|
* Add Py2 compat code at submitter's request; add non-Western test case; more ↵Paul McGuire2019-08-181-98/+109
| | | | helpful message when tests fail; exit with exit code to include with package tests; trim trailing whitespace