Skip to content

Commit 4bf2d7e

Browse files
committed
Prepare for 0.13 release
1 parent 8d44e4e commit 4bf2d7e

File tree

4 files changed

+125
-5
lines changed

4 files changed

+125
-5
lines changed

docs/0.13.rst

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
.. Copyright 2014 David Malcolm <dmalcolm@redhat.com>
2+
Copyright 2014 Red Hat, Inc.
3+
4+
This is free software: you can redistribute it and/or modify it
5+
under the terms of the GNU General Public License as published by
6+
the Free Software Foundation, either version 3 of the License, or
7+
(at your option) any later version.
8+
9+
This program is distributed in the hope that it will be useful, but
10+
WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12+
General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License
15+
along with this program. If not, see
16+
<http://www.gnu.org/licenses/>.
17+
18+
.. this covers up to ef48966bc952d2af637e6a34e92846af2c2210bf
19+
20+
0.13
21+
~~~~
22+
23+
The major features in this release are:
24+
25+
* gcc 4.9 compatibility
26+
27+
* a major revamping to the HTML output from gcc-with-cpychecker
28+
29+
30+
Changes to the GCC Python Plugin
31+
================================
32+
33+
GCC 4.9 compatibility
34+
---------------------
35+
36+
This release of the plugin adds support for gcc 4.9 (along with continued
37+
support for gcc 4.6, 4.7 and gcc 4.8).
38+
39+
Building against 4.9 requires a GCC 4.9 with the fix for
40+
`GCC bug 63410 <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63410>`_ applied.
41+
42+
Other fixes
43+
-----------
44+
* fixed a build-time incompatibility with Python 3.3.0
45+
* various internal bug fixes:
46+
47+
* bug in garbage-collector integration (https://bugzilla.redhat.com/show_bug.cgi?id=864314)
48+
49+
* the test suite is now parallelized (using multiprocessing)
50+
51+
* improvements to Makefile
52+
* improvements to documentation
53+
* add gcc.Location.in_system_header attribute
54+
55+
56+
Improvements to :doc:`gcc-with-cpychecker </cpychecker>`
57+
========================================================
58+
59+
The major improvement to :doc:`gcc-with-cpychecker </cpychecker>` is a big
60+
revamp of the output.
61+
62+
A new "v2" HTML report is available, written to ``SOURCE_NAME.v2.html``
63+
e.g. ``demo.c.v2.html``:
64+
65+
.. figure:: new-html-error-report.png
66+
:alt: screenshot of the new kind of HTML report
67+
68+
The new HTML report is easier to read in the presence of complicated
69+
control flow. It also include links to the API documentation for
70+
calls made to the CPython API.
71+
72+
For both old-style and new-style reports, the wording of the messages has
73+
been clarified:
74+
75+
* Reference-count tracking messages now largely eliminate the
76+
``0 + N where N >=`` gobbledegook, since this was confusing to
77+
everyone (including me). Instead, error reports
78+
talk about references as owned vs borrowed references e.g.
79+
80+
* "refs: 1 owned"
81+
82+
* "refs: 0 owned 1 borrowed"
83+
84+
resorting to ranges::
85+
86+
refs: 0 owned + B borrowed where 1 <= B <= 0x80000000
87+
88+
only where necessary.
89+
90+
* Reports now add ``memory leak:`` and ``future use-after-free:``
91+
prefixes where appropriate, to better indicate the issue.
92+
93+
* Objects are referred to more in terms the user is likely to
94+
understand e.g. ``*dictA`` rather than ``PyDictObject``.
95+
96+
The checker also reports better source locations in its messages
97+
e.g. in the presence of multiple ``return`` statements
98+
(https://fedorahosted.org/gcc-python-plugin/ticket/58).
99+
100+
.. The v2 html output was first added in 0.10, but was "experimental", and
101+
required hacking to access.
102+
103+
Other improvements
104+
------------------
105+
* Add a new test script: `tests/examples/find-global-state`, showing
106+
examples of finding global state in the code being compiled.
107+
* handle :c:func:`PySequence_DelItem`
108+
* fix bug in handling of :c:func:`PyRun_SimpleStringFlags`
109+
* fix issue with handling of :c:func:`PyArg_ParseTuple`
110+
(https://fedorahosted.org/gcc-python-plugin/ticket/50)
111+
* although we don't model the internals of C++ exceptions, fix things so
112+
we don't crash with a traceback in the absense of ``-fno-exceptions``
113+
(https://fedorahosted.org/gcc-python-plugin/ticket/51)
114+
115+
116+
Contributors
117+
============
118+
Thanks to Buck Golemon, Denis Efremov, Philip Herron, and Tom Tromey for
119+
their contributions to this release.

docs/conf.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,16 @@
5858

5959
# General information about the project.
6060
project = u'gcc-python-plugin'
61-
copyright = u'2011, David Malcolm'
61+
copyright = u'2011-2014, David Malcolm'
6262

6363
# The version info for the project you're documenting, acts as replacement for
6464
# |version| and |release|, also used in various other places throughout the
6565
# built documents.
6666
#
6767
# The short X.Y version.
68-
version = '0.12'
68+
version = '0.13'
6969
# The full version, including alpha/beta/rc tags.
70-
release = '0.12'
70+
release = '0.13'
7171

7272
# The language for content autogenerated by Sphinx. Refer to documentation
7373
# for a list of supported languages.

docs/new-html-error-report.png

50 KB
Loading

docs/release-notes.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
.. Copyright 2011, 2012, 2013 David Malcolm <dmalcolm@redhat.com>
2-
Copyright 2011, 2012, 2013 Red Hat, Inc.
1+
.. Copyright 2011, 2012, 2013, 2014 David Malcolm <dmalcolm@redhat.com>
2+
Copyright 2011, 2012, 2013, 2014 Red Hat, Inc.
33
44
This is free software: you can redistribute it and/or modify it
55
under the terms of the GNU General Public License as published by
@@ -20,6 +20,7 @@ Release Notes
2020

2121
.. toctree::
2222

23+
0.13.rst
2324
0.12.rst
2425
0.11.rst
2526
0.10.rst

0 commit comments

Comments
 (0)