Commit graph

1,599 commits

Author SHA1 Message Date
William S Fulton
f19882ed51
Merge pull request #1473 from ZackerySpytz/OCaml-wrapmacro-test
[OCaml] Fix the wrapmacro test
2019-02-18 19:33:22 +00:00
William S Fulton
911bc5310f
Merge pull request #1472 from ZackerySpytz/OCaml-SWIGTYPE-typecheck
[OCaml] Add a typecheck typemap for SWIGTYPE
2019-02-18 19:31:50 +00:00
William S Fulton
be9d736597 Add back-reference to changes file 2019-02-18 19:28:35 +00:00
Zackery Spytz
10d62aecd5 [OCaml] Fix the wrapmacro test
Add a typecheck typemap for size_t and const size_t &.

Add the const qualifier to the typemaps for primitive reference
types.

Add multiple runtime tests.
2019-02-17 01:41:59 -07:00
Zackery Spytz
b7a400f991 [OCaml] Add a typecheck typemap for SWIGTYPE
This fixes many of the remaining warnings in the OCaml test suite.

Add multiple runtime tests.
2019-02-16 01:07:31 -07:00
William S Fulton
7139cbc537
Merge pull request #1467 from ZackerySpytz/OCaml-exception-docs-improve
[OCaml] Some documentation improvements for %exception
2019-02-15 19:08:42 +00:00
Zackery Spytz
cf83adfcd1 Add support for C++17 hexadecimal floating literals 2019-02-13 15:16:40 -07:00
Zackery Spytz
506be0c28c [OCaml] Some documentation improvements for %exception
Use the style of the Java and Python modules.

Tweak some entries in CHANGES.current.

[skip ci]
2019-02-12 19:43:55 -07:00
Zackery Spytz
200984f051 [Python] Fix some errors in the documentation for -threads
The documentation for -threads was added in
f0f2fd2dae

[skip ci]
2019-02-12 10:59:05 +13:00
Håkon Hægland
6d2aae4718 Fixed typo in Perl5 docs.
Fixed typo in section 33.7.2 "Perl5 typemaps". There is no function set_setiv()
in the perl api, the correct name is sv_setiv().
2019-02-12 10:46:56 +13:00
William S Fulton
d16d145787 Documentation section numbering update
[skip ci]
2019-02-11 19:02:03 +00:00
William S Fulton
a5b301ba83 Add a documentation chapter on C++14 2019-02-11 18:59:46 +00:00
William S Fulton
ad7f9cd8d7 Mark and setup OCaml as an experimental target language.
Issue #1437
2019-02-11 18:30:35 +00:00
William S Fulton
e0fb4b8956 html section numbers updated 2019-02-10 17:40:00 +00:00
William S Fulton
80b79fc583 Merge branch 'ZackerySpytz-cpp11_u_U_char_encoding_prefixes'
* ZackerySpytz-cpp11_u_U_char_encoding_prefixes:
  Document C++11 UCS-2 UCS-4 and C++17 UTF8 character literals support
  c++17 u8 character literals testcase
  C++17 u8 character literals fix
  C++17 u8 character literals testcase
  Fix the Java tests
  Add support for the C++11 u and U encoding prefixes for char literals
2019-02-10 17:39:03 +00:00
William S Fulton
7bc928da60 Document C++11 UCS-2 UCS-4 and C++17 UTF8 character literals support 2019-02-10 17:35:34 +00:00
William S Fulton
940e32477d Update section numbering 2019-02-10 01:03:06 +00:00
William S Fulton
24682a7243 Move MzScheme documentation to experimental section
Move MzScheme documentation to experimental section
2019-02-10 01:02:27 +00:00
William S Fulton
a8f927dd50 Merge branch 'mzscheme-experimental'
* mzscheme-experimental:
  Fix mzscheme name and unions testcases
  Terminology correction in html docs
  Suppress experimental language warning when running the test-suite
  Mark MzScheme as an experimental language
  Add mzscheme to Travis testing
  Format mzscheme help output
  Mzscheme out of source examples fixes
  Standardise Mzscheme simple example
  Standardise Guile simple example
  Fix mzscheme static variable wrappers
  MzScheme missing destructor added in, std_vector example fixed
  Fix mzscheme simple example
  Fix mzscheme multimap example
  Skip failing MzScheme tests
2019-02-10 00:50:35 +00:00
William S Fulton
5249dfefc5 Merge branch 'ZackerySpytz-OCaml-module-docstring'
* ZackerySpytz-OCaml-module-docstring:
  [OCaml] Add support for the docstring option in the module directive
2019-02-09 22:02:21 +00:00
William S Fulton
3e4b0aace8 Terminology correction in html docs 2019-02-09 20:32:39 +00:00
William S Fulton
b4257fb1f2 Mark MzScheme as an experimental language 2019-02-09 17:58:06 +00:00
William S Fulton
df86ec5af6 Consistent use of target language version of options
If a version number is supported by the target language prefer to show it in the -help.
For example, -perl5 instead of -perl.
2019-02-05 19:18:46 +00:00
William S Fulton
264b39fd00 Disable CFFI Common Lisp target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:42:23 +00:00
William S Fulton
6d7e3df54e Disable Allegrcol target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:42:16 +00:00
William S Fulton
09e0577d95 Disable Chicken target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:42:12 +00:00
William S Fulton
cb4bd26422 Disable Common Lisp / CLISP target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:42:07 +00:00
William S Fulton
df51dc8e8f Disable Common Lisp / S-Exp target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:42:00 +00:00
William S Fulton
f63d0db21b Disable Common Lisp / UFFI target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:41:54 +00:00
William S Fulton
8aa4086136 Disable Pike target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:41:46 +00:00
William S Fulton
ee3aeb8177 Disable Modula3 target language
Clean up to disable target languages that have been neglected/not functional.
Target language be fully deleted in SWIG 4.1 unless a new maintainer brings
it up to an acceptable status (experimental or supported).

Issue #1447
2019-02-05 18:41:34 +00:00
William S Fulton
849512f565 Add missing command line options to documentation
Options were taken from the output of running swig -help.
2019-02-04 18:46:50 +00:00
William S Fulton
9defd8e033 Add support for differentiating target language statuses
Three status: Disabled, Experimental and Supported.

Any target language classified as 'Experimental' will issue new warning
524 SWIGWARN_LANG_EXPERIMENTAL.
Any target language classified as 'Disabled' will error out.

Languages will be classified in forthcoming commits.

Issue #1437
2019-02-04 18:46:16 +00:00
Zackery Spytz
08029e6642 [OCaml] Add support for the docstring option in the module directive
If given, the OCaml module will place the docstring at the very
beginning of the generated mli file, where it can be read by the
OCamldoc tool.

The implementation is based on the equivalent features in the Python
and Ruby modules.
2019-01-31 15:32:38 -07:00
William S Fulton
528f33e9e5 Merge branch 'ZackerySpytz-OCaml-eliminate-wno-write-strings'
* ZackerySpytz-OCaml-eliminate-wno-write-strings:
  [OCaml] Remove support for OCaml versions < 3.12.0
  [OCaml] Fix toplevel creation for ocamlmktop versions >= 4.04.0
  [OCaml] Eliminate use of -Wno-write-strings
2019-01-31 07:29:09 +00:00
William S Fulton
a8406f3d60 Merge branch 'ZackerySpytz-OCaml-doc-fixes'
* ZackerySpytz-OCaml-doc-fixes:
  [OCaml] Some OCaml documentation fixes
2019-01-31 07:23:09 +00:00
William S Fulton
12b8d70d97 Add placeholder for Experimental documentation section
[skip ci]
2019-01-29 19:17:56 +00:00
William S Fulton
b324d9d6bb Add info about the Supported and Experimental language module status
This is the result of an email discussion on the swig-devel mailing list
back in March 2017 titled "Radical new approach to development and
moving towards version 3.1 or version 4.0"

A new section in the Introduction chapter has been added, titled
"Target languages". The Extending chapter has the main details in a
new section called "Target language status".
2019-01-29 18:55:44 +00:00
Zackery Spytz
c0059ae2cb [OCaml] Remove support for OCaml versions < 3.12.0 2019-01-28 02:16:15 -07:00
Zackery Spytz
fba77056de [OCaml] Some OCaml documentation fixes
Fix some typos.

Update some filenames after 8f7bc4cc10
(replace example_prog.ml with runme.ml).

[skip ci]
2019-01-27 04:00:31 -07:00
William S Fulton
2315ed878b Improve Python docs on memory management and member variables 2019-01-09 18:24:36 +00:00
William S Fulton
c2e811c12d Merge branch 'jakecobb-python-memory-docs'
* jakecobb-python-memory-docs:
  -builtin compatible ref example in Python docs
  %pythonappend docs and memory management example
2019-01-08 21:34:27 +00:00
William S Fulton
07884f10ee Python - remove duplicate proxy method definitions for global function wrappers.
Global functions previously generated two definitions, eg:

  def foo():
      return _example.foo()
  foo = _example.foo

The first definition is replaced by the second definition and so the second definition
is the one used when the method is actually called. Now just the first definition is
generated by default and if the -fastproxy command line option is used, just the second
definition is generated. The second definition is faster as it avoids the proxy Python
method as it calls the low-level C wrapper directly. Using both -fastproxy and -olddefs
command line options will restore the previously generated code as it will generate both
method definitions.

With this change, the wrappers for global C/C++ functions and C++ class methods now work
in the same way wrt to generating just a proxy method by default and control via
-fastproxy/-olddefs options.

Closes #639.
2019-01-01 12:12:56 +00:00
William S Fulton
f5d2e97228 Python documentation improvements for -olddefs and -builtin performance
The performance figures have been changed because the default options have
changed the performance.

Add some explanation for using -olddefs.
[skip ci]
2018-12-22 12:30:16 +00:00
William S Fulton
574f8112d6 Document all the Python command line options
Issue #1340
2018-12-18 19:51:38 +00:00
William S Fulton
355395200f More Python module loading simplification
Slightly faster checking to see if a module is in a package.
Issue #848
2018-12-18 07:50:48 +00:00
William S Fulton
2a00d0f784 Simpler Python module loading
Simplification possible given Python 2.7 is now the minimum supported.
Issue #848
2018-12-18 07:30:50 +00:00
William S Fulton
03323f5c8b The Python module import logic has changed to stop obfuscating real ImportError problems.
Only one import of the low-level C/C++ module from the pure Python module is
attempted now. Previously a second import of the low-level C/C++ module was attempted
after an ImportError occurred and was done to support 'split modules'. A 'split module' is
a configuration where the pure Python module is a module within a Python package and the
low-level C/C++ module is a global Python module. Now a 'split module' configuration is
no longer supported by default. This configuration can be supported with a simple
customization, such as:

  %module(package="mypackage", moduleimport="import $module") foo

or if using -builtin:

  %module(package="mypackage", moduleimport="from $module import *") foo

instead of

  %module(package="mypackage") foo

See the updated Python chapter titled "Location of modules" in the documentation.

Closes #848 #1343
2018-12-16 16:41:39 +00:00
William S Fulton
b19d3e06b3 Update packages section in Python html docs
Updates given only Python 2.7, 3.2+ are now supported.
2018-12-08 20:25:58 +00:00
William S Fulton
75638e3371 Update comments and docs regarding recent addition to use __package__ for Python module imports 2018-11-28 23:48:58 +00:00