Commit graph

216 commits

Author SHA1 Message Date
William S Fulton
9e83d5d5d9 Fix nstest.py test
Use subprocess.check_call as os.system won't stop the test in case of
errors.
2018-12-04 06:49:55 +00:00
William S Fulton
6030f59741 Fix operator Python example for -builtin
Output was incorrect for -builtin as custom __str__ was not being
called.
2018-11-28 08:18:28 +00:00
Olly Betts
728b8955bd Drop support for Python classic classes
There were only needed to support Python < 2.2, and we now require at
least Python 2.6.

 Conflicts:
	.travis.yml
	Examples/test-suite/python/autodoc_runme.py
	Source/Modules/python.cxx

This is a cherry-pick and merge from patch in #1261
2018-10-12 07:10:47 +01:00
William S Fulton
33921666a1 Merge branch 'vadz-doxygen'
This is the Doxygen work begun in Google Summer of Code projects 2008
and 2012 and subsequently improved by numerous contributors.

* vadz-doxygen: (314 commits)
  Add changes entry for Doxygen support
  Add some missing doctype tyemaps
  Doxygen warnings cleanup
  Move doxygen warning numbers
  Add Python doxygen example
  Doxygen example
  Add Doxygen to include paths
  Doxygen source rename
  More merge fixes from doxygen branches
  Correct python example headers
  Correct source code headers
  Another merge fix from doxygen branches
  Java enums output format fixes
  Add omitted doxygen_parsing_enums testcase
  PEP8 conformance for comment verifier module
  Clean up merge problem
  Doxygen html tweaks
  Update html chapter numbering for added Doxygen chapter
  Fixes to makechap.py to detect ill-formed headers
  html fixes for Doxygen
  Add missing CPlusPlus17.html file
  Format files to unix format
  Doxygen testcase tweak to match that in the html docs
  Doxygen html documentation updates and corrections
  Remove doxygen Examples subdirectory
  Beautify doxygen source code
  Code formatting fixes in doxygen code
  Remove unused doxygen code
  new_node refactor
  Various merge fixes in doxygen branches
  Unused variable warning fix
  Fix wrongly resetting indent after formulae in Doxygen comments
  Add support for doxygen:alias feature
  Get rid of meaningless return type of DoxygenParser methods
  Return enum, not untyped int, when classifying Doxygen commands
  Get rid of unnecessary "typedef enum" in C++ code
  Use slash, not backslash, in "C/C++" in the documentation
  Replace literal "<" with "&lt;" in HTML documentation
  Fix broken link to java.sun.com in Doxygen documentation
  Fix using com.sun.tools.javadoc package under macOS
  Fix error reporting for special characters in Doxygen parsing code
  Switch Python Doxygen unit tests to use inspect.getdoc()
  Use correct separator in Java class path under Windows.
  Remove executable permission from appveyor.yml.
  Use JAVA_HOME value in configure to detect Java.
  Display JAVA_HOME value in "make java_version".
  Fix harmless MSVC warning in DoxygenTranslator code.
  Reset "_last" for all but first enum elements.
  Don't duplicate Javadoc from global enum Doxygen comments twice.
  Move Doxygen comments concatenation from the parser to the lexer.
  Fix shift/reduce conflicts in Doxygen pre/post comment parsing.
  Rewrote part of the grammar dealing with Doxygen comments for enums.
  No changes, just remove spurious white space only differences.
  Move Doxygen comment mangling from the parser to the lexer.
  Merge "-builtin" autodoc bugs workarounds from master into test.
  Quote JAVA_HOME variable value in Java test suite makefile.
  Remove unused C_COMMENT_STRING terminal from the grammar.
  Fix missing returns in the Doxygen test suite code.
  Fix trimming whitespace from Doxygen comments.
  Remove code not doing anything from PyDocConverter.
  Remove unused <sstream> header.
  Remove unreferenced struct declaration.
  Remove unused Swig_warn() function.
  Remove any whitespace before ignored Doxygen commands.
  Remove trailing space from one of Doxygen tests.
  Fix autodoc strings generated in Python builtin case and the test.
  Fix Doxygen unit test in Python "-builtin" case.
  Use class docstrings in "-builtin" Python case.
  Don't indent Doxygen doc strings in generated Python code.
  Add a possibility to flexibly ignore custom Doxygen tags.
  Stop completely ignoring many Doxygen comments.
  Fix structural Doxygen comment recognition in the parser.
  No changes, just make checking for Doxygen structural tags more sane.
  Use "//", not "#", for comments in SWIG input.
  Allow upper case letters and digits in Doxygen words.
  Pass the node the Doxygen comment is attached to to DoxygenParser.
  Get rid of findCommand() which duplicaed commandBelongs().
  Recognize unknown Doxygen tags correctly.
  No real changes, just pass original command to commandBelongs().
  Describe Doxygen-specific %features in a single place.
  Give warnings for unknown Doxygen commands in Doxygen parser.
  Document the return type when translating Doxygen @return to Python.
  Fix translated Doxygen comments for overloaded functions in Python.
  Also merge Doxygen comments for overloaded constructors in Python.
  Allow using enum elements as default values for Python functions.
  Don't always use "*args" for all Python wrapper functions.
  No real changes, just make PYTHON::check_kwargs() const.
  Refactor: move makeParameterName() to common Language base class.
  Remove long line wrapping from Python parameter list generation code.
  Simplify and make more efficient building Python docstrings.
  Translate Doxygen code blocks to Sphinx code blocks.
  Add a simple test of multiple parameters to Doxygen test suite.
  Make Python parameters types hyperlinks in the doc strings.
  Make Language::classLookup() and enumLookup() static.
  Fix arguments of @param, @return etc translations to Python.
  Remove unused method from PyDocConverter.
  No real changes, just remove an unnecessary variable.
  Preserve relative indentation when parsing Doxygen comments.
  Use Sphinx-friendly formatting for overloaded functions documentation.
  Add poor man trailing white space detection to Doxygen Python tests.
  ...
2018-06-07 08:13:10 +01:00
William S Fulton
89a25055d9 Add Python doxygen example 2018-05-31 20:48:02 +01:00
luz.paz
60dfa31a67 Misc. typos
found via `codespell` and `grep`
2018-05-17 10:04:23 -04:00
William S Fulton
c9a10eb726 Examples update to support C++17: exception specification throw removal 2018-05-04 20:02:13 +01:00
William S Fulton
0d588d19ad Fix out of source clean target in import_packages Makefile 2018-01-07 00:57:23 +00:00
William S Fulton
3066f8950c Minor tweaks in import_packages Makefile 2018-01-06 23:19:04 +00:00
William S Fulton
b0c910ac96 Fix out of source import_packages Makefile 2018-01-06 23:12:52 +00:00
William S Fulton
830422a87b Fix Makefile and skip testing python-2.4 for import_packages test 2018-01-05 20:17:08 +00:00
William S Fulton
0b0aed6842 Fix pycodestyle 'E722 do not use bare except' 2017-12-31 16:19:39 +00:00
William S Fulton
b0e29fbdf3 Add missing checks for failures in calls to PyUnicode_AsUTF8String.
Previously a seg fault could occur when passing invalid UTF8 strings (low
surrogates), eg passing u"\udcff" to the C layer (Python 3).
2017-12-04 20:14:04 +00:00
Olly Betts
5a9422d980 Remove GCJ support
GCC7 dropped GCJ.

Closes https://sourceforge.net/p/swig/bugs/823/
2017-10-09 08:32:01 +13:00
William S Fulton
aedc3c3eaf Replace assert in Python import examples with code that always runs. 2017-08-13 21:32:44 +01:00
Olly Betts
46f7217c50 Remove random statement glued onto comment line
And also copy-and-paste duplicate.
2017-07-28 09:37:41 +12:00
William S Fulton
760c008311 Warning fixes for gcc-7
warning: dynamic exception specifications are deprecated in C++11; use 'noexcept' instead [-Wdeprecated]
2017-02-06 20:30:09 +00:00
sunoru
8985c34809 Fix some typos in docs and examples and make the code look nicer. 2016-12-31 23:06:56 +08:00
William S Fulton
129ef8ea8f Correct docs and examples to call SWIG_fail after setting a Python error
Although 'return NULL' works, it may miss out on some cleanup and NULL
is the wrong value to return in generated code for overloaded functions.
2016-10-23 20:16:35 +01:00
William S Fulton
dd40a25349 Add missing print statements to the Python import_packages tests 2016-06-06 22:12:56 +01:00
William S Fulton
53ff928688 Examples readme file tweak 2016-06-05 11:23:58 +01:00
Mike Romberg
2ea01f349d remove builtin tests as they are already covered. 2016-06-04 14:12:33 -06:00
Mike Romberg
0cc3c78abf Apply patch to cleanup whitespace from wsfulton 2016-06-04 14:07:50 -06:00
Mike Romberg
906564d97c and... remove all the .py files that were copied over from the source tree. 2016-06-03 20:20:33 -06:00
Mike Romberg
055ddc6dfc remove -py3 related tests. Move py3 specific code to it's own module 2016-06-03 18:11:07 -06:00
Mike Romberg
f102d587bc copy everything with a .py extension into the build tree (creating dirs if needed) 2016-06-03 17:30:01 -06:00
Mike Romberg
f1aea15cf7 debug 2016-06-03 13:26:12 -06:00
Mike Romberg
f3c373a584 avoid the shell checks involving __init__.py 2016-06-03 03:17:19 -06:00
Mike Romberg
621325a7dd Something optimizes out empty files and breaks the tests. Put something in. 2016-06-03 01:30:43 -06:00
Mike Romberg
ddc9fc1eb9 split_wrapper -> split_modules to avoid conflict with clean rule 2016-06-02 22:45:59 -06:00
Mike Romberg
355e4b4903 Add cases for tests without the -py3 flag even when PY3 is set. 2016-06-02 17:29:05 -06:00
Mike Romberg
3a459b3f27 Tests/Examples for the use case of splitting the wrapper.
Half of the wrapper in a package and 1/2 is global.
2016-06-02 14:17:38 -06:00
Mike Romberg
5ceef0a813 use %inline for test 2016-05-24 22:46:45 +01:00
Mike Romberg
32304449f9 disable namespace package build 2016-04-05 11:10:04 -06:00
Mike Romberg
6f1c0e3725 Attempt to calm the testing gods... 2016-04-05 11:10:03 -06:00
Mike Romberg
b6c93a14e4 use whatever name winders uses for .so files. 2016-04-05 11:09:14 -06:00
Mike Romberg
0a81b76b31 Examples (and tests) for python namespace packages 2016-04-05 11:06:02 -06:00
Mike Romberg
70a2a11f29 disable namespace package build 2016-04-05 10:58:51 -06:00
Mike Romberg
6f4aa4faf5 spelling 2016-04-05 10:58:50 -06:00
Mike Romberg
ce04d0cdf3 Attempt to calm the testing gods... 2016-04-05 10:58:50 -06:00
Mike Romberg
afc91fe923 use whatever name winders uses for .so files. 2016-04-05 10:58:50 -06:00
Mike Romberg
c0cc731ca8 Don't run example for old pythons 2016-04-05 10:58:50 -06:00
Mike Romberg
ba158e7919 Examples (and tests) for python namespace packages 2016-04-05 10:58:50 -06:00
Alec Cooper
acbe04b548 Support checking names of old-style classic classes 2016-02-04 15:27:54 -05:00
William S Fulton
8e2bc595c6 Remove use of preinst-swig script
Complete the prototype removal in ca1431.

The script prevents SWIGTOOL=gdb from working as gdb can't be used to
debug a shell script, it requires a binary.

Add support for SWIGTOOL in all the examples.

SWIG_LIB_DIR and SWIGEXE must now instead be set by all Makefiles.

See issue #473.
2015-08-21 22:43:17 +01:00
William S Fulton
4ef3507e8b Remove realpath from python/import_packages example 2015-08-20 06:19:12 +01:00
William S Fulton
2b4dda39bb Warning fixes in generated Python code for 64bit Visual C++ on Windows. 2015-07-03 20:59:25 +01:00
William S Fulton
21aef52194 Merge branch 'yazug-python_examples_pep8_whitespace_cleanup'
* yazug-python_examples_pep8_whitespace_cleanup:
  Fixup 2 additional whitespace warnings pep8 found
  Add pep8 check for Examples/python
  autopep8 cleanup of Examples/python whitespace
2015-05-10 18:43:37 +01:00
William S Fulton
b4c441f62e Remove unused std_string.i from callback examples 2015-05-10 11:49:28 +01:00
Jon Schlueter
b909d0c680 Fixup 2 additional whitespace warnings pep8 found
E241 multiple spaces after ','

cleanup in enum/runme.py and constants/runme.py
2015-05-08 10:35:04 -04:00