python: docs
[gpgme.git] / lang / python / doc / texinfo / what-was-new.texi
1 \input texinfo    @c -*- texinfo -*-
2 @c %**start of header
3 @setfilename what-was-new.info
4 @settitle What Was New in the GPGME Python Bindings and Documentation
5 @documentencoding utf-8
6 @documentlanguage en
7 @c %**end of header
8
9 @finalout
10 @titlepage
11 @title What Was New in the GPGME Python Bindings and Documentation
12 @author Ben McGinnes
13 @end titlepage
14
15 @contents
16
17 @ifnottex
18 @node Top
19 @top What Was New in the GPGME Python Bindings and Documentation
20 @end ifnottex
21
22 @menu
23 * What Was New::
24
25 @detailmenu
26 --- The Detailed Node Listing ---
27
28 What Was New
29
30 * What Was New in GPGME 1·12·0::
31
32 What Was New in GPGME 1·12·0
33
34 * New in GPGME 1·12·0::
35
36 @end detailmenu
37 @end menu
38
39 @node What Was New
40 @chapter What Was New
41
42 @multitable {aaaaaaaaaaaaaaa} {aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}
43 @item Version:
44 @tab 0.0.1
45 @item GPGME Version:
46 @tab 1.13.0
47 @item Author:
48 @tab Ben McGinnes <ben@@gnupg.org>
49 @item Author GPG Key:
50 @tab DB4724E6FA4286C92B4E55C4321E4E2373590E5D
51 @item Language:
52 @tab Australian English, British English
53 @item xml:lang:
54 @tab en-AU, en-GB, en
55 @end multitable
56
57 The following are all the past @emph{What's New} sections for the Python
58 Bindings HOWTO and other documentation.
59
60 @menu
61 * What Was New in GPGME 1·12·0::
62 @end menu
63
64 @node What Was New in GPGME 1·12·0
65 @section What Was New in GPGME 1·12·0
66
67 The most obviously new point for those reading this guide is this
68 section on other new things, but that’s hardly important. Not given
69 all the other things which spurred the need for adding this section
70 and its subsections.
71
72 @menu
73 * New in GPGME 1·12·0::
74 @end menu
75
76 @node New in GPGME 1·12·0
77 @subsection New in GPGME 1·12·0
78
79 There have been quite a number of additions to GPGME and the Python
80 bindings to it since the last release of GPGME with versions 1.11.0
81 and 1.11.1 in April, 2018.
82
83 The bullet points of new additiions are:
84
85 @itemize
86 @item
87 an expanded section on @uref{gpgme-python-howto#installation, installing} and @uref{gpgme-python-howto#snafu, troubleshooting} the Python
88 bindings.
89 @item
90 The release of Python 3.7.0; which appears to be working just fine
91 with our bindings, in spite of intermittent reports of problems for
92 many other Python projects with that new release.
93 @item
94 Python 3.7 has been moved to the head of the specified python
95 versions list in the build process.
96 @item
97 In order to fix some other issues, there are certain underlying
98 functions which are more exposed through the @uref{gpgme-python-howto#howto-get-context, gpg.Context()}, but
99 ongoing documentation ought to clarify that or otherwise provide the
100 best means of using the bindings.  Some additions to @samp{gpg.core} and
101 the @samp{Context()}, however, were intended (see below).
102 @item
103 Continuing work in identifying and confirming the cause of
104 oft-reported @uref{gpgme-python-howto#snafu-runtime-not-funtime, problems installing the Python bindings on Windows}.
105 @item
106 GSOC: Google's Surreptitiously Ordered Conscription @dots{} erm @dots{} oh,
107 right; Google's Summer of Code.  Though there were two hopeful
108 candidates this year; only one ended up involved with the GnuPG
109 Project directly, the other concentrated on an unrelated third party
110 project with closer ties to one of the GNU/Linux distributions than
111 to the GnuPG Project.  Thus the Python bindings benefited from GSOC
112 participant Jacob Adams, who added the key@math{_import} function; building
113 on prior work by Tobias Mueller.
114 @item
115 Several new methods functions were added to the gpg.Context(),
116 including: @uref{gpgme-python-howto#howto-import-key, key@math{_import}}, @uref{gpgme-python-howto#howto-export-key, key@math{_export}}, @uref{gpgme-python-howto#howto-export-public-key, key@math{_export}@math{_minimal}} and
117 @uref{gpgme-python-howto#howto-export-secret-key, key@math{_export}@math{_secret}}.
118 @item
119 Importing and exporting examples include versions integrated with
120 Marcel Fest's recently released @uref{https://github.com/Selfnet/hkp4py, HKP for Python} module.  Some
121 @uref{gpgme-python-howto#hkp4py, additional notes on this module} are included at the end of the HOWTO.
122 @item
123 Instructions for dealing with semi-walled garden implementations
124 like ProtonMail are also included.  This is intended to make things
125 a little easier when communicating with users of ProtonMail's
126 services and should not be construed as an endorsement of said
127 service.  The GnuPG Project neither favours, nor disfavours
128 ProtonMail and the majority of this deals with interacting with the
129 ProtonMail keyserver.
130 @item
131 Semi-formalised the location where @uref{gpgme-python-howto#draft-editions, draft versions} of this HOWTO may
132 periodically be accessible.  This is both for the reference of
133 others and testing the publishing of the document itself.  Renamed
134 this file at around the same time.
135 @item
136 The Texinfo documentation build configuration has been replicated
137 from the parent project in order to make to maintain consistency
138 with that project (and actually ship with each release).
139 @item
140 a reStructuredText (@samp{.rst}) version is also generated for Python
141 developers more used to and comfortable with that format as it is
142 the standard Python documentation format and Python developers may
143 wish to use it with Sphinx.  Please note that there has been no
144 testing of the reStructuredText version with Sphinx at all.  The
145 reST file was generated by the simple expedient of using @uref{https://pandoc.org/, Pandoc}.
146 @item
147 Added a new section for @uref{gpgme-python-howto#advanced-use, advanced or experimental use}.
148 @item
149 Began the advanced use cases with @uref{gpgme-python-howto#cython, a section} on using the module with
150 @uref{https://cython.org/, Cython}.
151 @item
152 Added a number of new scripts to the @samp{example/howto/} directory;
153 some of which may be in advance of their planned sections of the
154 HOWTO (and some are just there because it seemed like a good idea at
155 the time).
156 @item
157 Cleaned up a lot of things under the hood.
158 @end itemize
159
160 @bye