summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Release 1.58.01.58.0Rico Tzschichholz2018-08-312-5/+5
|
* gir: Update annotations from glib git masterRico Tzschichholz2018-08-282-3411/+96
|
* g-ir-tool: ask sysconfig instead of hardcoding the extension module suffixChristoph Reiter2018-08-211-4/+4
| | | | | MinGW Python doesn't use .pyd so this makes sure we always look for the file distutils produces for the given Python setup.
* Merge branch 'tools.windows' into 'master'Christoph Reiter2018-08-214-5/+102
|\ | | | | | | | | MSVC builds: Further fix giscanner Python module and the Python scripts in tools/ See merge request GNOME/gobject-introspection!61
| * Revert "scanner: remove hacks to make mingw g-i work with msvc Python"Chun-wei Fan2018-08-211-0/+84
| | | | | | | | | | | | | | | | Unfortunately, this is still needed for Visual Studio versions that do not have an official CPython release that uses the CRT which the compiler targets to, such as Visual Studio 2012 and 2013 This reverts commit a6a479af1bbe7c0d17766f1408c9fcb720df78dc.
| * Revert "scanner: remove some unnecessary Windows includes"Chun-wei Fan2018-08-211-1/+9
| | | | | | | | | | | | | | | | | | | | | | We need those includes and defines as we need to revert the commit that revert the hacks on Windows, as they are still necessary in the cases where we are using a Python installation that is not linked to the CRT that the currently used compiler targets to, such as on Visual Studio 2012 and 2013, where no official Python release is linked to their respective CRTs. This reverts commit e36350e3fdcb18a21089256b63298d6e3a49212b.
| * g-ir-tool-template.in: Don't hardcode /usr/bin/envChun-wei Fan2018-08-213-4/+9
|/ | | | | | | | | | | | | | | For Visual Studio builds, it is likely that we specify a specific Python installation as there may well be multiple Python installations, but _giscanner.pyd gets tied to the particular Python DLL that it was built with. So, we cannot just use /usr/bin/env python3 in such a case on Visual Studio, but instead we use the full path to the Python executable in the shebang so that the correct Python installation is used, when running the installed scripts. This is necessary as Meson could bump the Python version it requires but _giscanner.pyd could not be used on the newer Python that is required due to differences in the Python version and the CRT Python itself is linked to, for instance. We continue to use /usr/bin/env python[2|3] for other builds.
* Merge branch 'tools.windows' into 'master'Christoph Reiter2018-08-201-1/+6
|\ | | | | | | | | g-ir-tool-templates.in: Use the correct Python module filename extension on Windows See merge request GNOME/gobject-introspection!60
| * g-ir-tool-templates.in: Fix installed use on WindowsChun-wei Fan2018-08-201-1/+6
| | | | | | | | | | | | | | The .so file extension for compiled C Python modules is only valid if we are not on Windows. Use .pyd for the extension for Python modules on Windows so that we can use g-ir-scanner et al properly on Windows when installed.
* | MSVC.README.rst: Be more clear on Python requirementsChun-wei Fan2018-08-201-5/+9
|/ | | | | | Let people know the common pitfalls when building and using the Python scripts when building, to avoid confusions on the Python installation that is used to run the Python scripts.
* version bumpChristoph Reiter2018-08-182-2/+2
|
* ci: force enable doctool and gtkdoc1.57.3Christoph Reiter2018-08-182-2/+4
| | | | | | | | doctool is an auto option and was disabled by the recent addition of a new dependency on the markdown Python module. Since we didn't have that in our testing docker image the tests were just skipped. This makes sure we error out if any dependencies are missing again.
* docwriter: revert some output changes to make the tests passChristoph Reiter2018-08-181-3/+6
| | | | | | This reverts a small part of 19c03a46b1 to make tests pass again. The test error weren't noticed because a new Python dependency was missing, leading to those tests getting skipped.
* g-ir-doc-tool: keep mallard as the default formatChristoph Reiter2018-08-171-1/+1
| | | | | In 7f67146d8254 the FORMAT list was extended but the argparser uses the first item as default value. This broke distcheck.
* Update NEWSChristoph Reiter2018-08-171-1/+4
|
* version bumpChristoph Reiter2018-08-172-2/+2
|
* build: Fix a meson build file missing in the tarball. Fixes #223Christoph Reiter2018-08-171-0/+1
| | | | | tests/scanner/meson.build was missing leading to: tests/meson.build:20:0: ERROR: Non-existent build file 'tests/scanner/meson.build'
* gir: Update annotations from glib git masterChristoph Reiter2018-08-163-90/+97
| | | | | Some structs are missing for me when running update-glib-annotations. I've kept them as is and just included theannotation updates.
* Merge branch 'flake8' into 'master'Christoph Reiter2018-08-1522-2707/+33
|\ | | | | | | | | tests: depend on flake8 instead of including pep8/pyflakes See merge request GNOME/gobject-introspection!58
| * ci: always pass --count to flake8 to get more verbose outputChristoph Reiter2018-08-153-4/+4
| | | | | | | | | | This prints the error count to stderr, and more importantly 0 when everything is OK so we know it did something.
| * tests: depend on flake8 instead of including pep8/pyflakesChristoph Reiter2018-08-1522-2707/+33
|/ | | | | | | | | | | | | | | | g-i includes an old version of pep8 and pyflakes and uses that during "make check". It (1) doesn't catch all cases newer versions of pycodestyle/pyflakes catch and (2) doesn't test all Python files (3) doesn't work with meson. Instead of updating just remove them and depend on flake8 instead. To run the checks simply run flake8 in the root dir. This also makes it possible to run those checks when using meson and not autotools. To not get test suite failures on flake8 updates move the checks from "make check" to an extra "make check.quality" target.
* Merge branch 'devdocs-format-rebase-v2' into 'master'Christoph Reiter2018-08-1423-22/+955
|\ | | | | | | | | Add DevDocs formatting for GJS See merge request GNOME/gobject-introspection!57
| * Fix format/format_inline distinction.rockon9992018-08-132-8/+7
| | | | | | | | - Fix autopep8 errors.
| * Improve markdown compatibility of docwriter.rockon9992018-08-081-13/+80
| |
| * Sort index files by type.rockon9992018-08-061-7/+50
| |
| * Only output introspectable methods.rockon9992018-08-066-9/+33
| |
| * Convert FORMATS to tuple.rockon9992018-08-061-1/+1
| |
| * docwriter: Gdk.Atom as Stringmakepost2018-08-061-0/+2
| | | | | | Reflect new string/GdkAtom marshalling that improves clipboard support: https://gitlab.gnome.org/GNOME/gjs/merge_requests/29
| * docwriter: Handle unknown language MIME typesPhilip Chimento2018-08-061-3/+5
| | | | | | | | | | | | | | Add "plain" -> "text/plain" to the mapping since "plain" is used several times in the GTK documentation. But also, fix the code that falls back to no syntax highlighting for an unknown language - it did not check for KeyError.
| * docwriter: Handle invalid nodes betterPhilip Chimento2018-08-061-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cogl-2.0.gir has the following entry: <bitfield name="BufferMapHint" version="1.4" stability="Unstable" c:type="CoglBufferMapHint"> <doc xml:whitespace="preserve">...</doc> <member name="" value="1" c:identifier="COGL_BUFFER_MAP_HINT_DISCARD"> <doc xml:whitespace="preserve">...</doc> </member> <member name="_range" value="2" c:identifier="COGL_BUFFER_MAP_HINT_DISCARD_RANGE"> <doc xml:whitespace="preserve">...</doc> </member> </bitfield> The prefix is not picked up correctly and so we get a member without a name, which crashes the docwriter in to_underscore(). Change that function to handle this case by giving it a dummy "anonymous member" name.
| * devdocs: Distinguish between versioning notesPhilip Chimento2018-08-061-3/+3
| | | | | | | | | | | | Previously, Since:, Deprecated:, and Stability: annotations were all given the same CSS class. In order to style them differently, we give them different classes.
| * devdocs: Mention when a function throws an errorPhilip Chimento2018-08-061-0/+4
| | | | | | | | | | This uses the "throws" annotation in the generated docs, adding a "Throws exception: Yes" if the annotation is present.
| * devdocs: Format in and out parameters correctlyPhilip Chimento2018-08-061-7/+20
| | | | | | | | | | | | | | | | Previously the functions template did not properly use formatter.get_in_parameters() and formatter.get_out_parameters(), so we had inaccurate function arguments in the documentation. In particular, I originally didn't take functions with multiple return values into account.
| * devdocs: Fix links to enum membersPhilip Chimento2018-08-061-1/+4
| | | | | | | | | | | | Links to enum members, e.g. GLib.MyEnum.FOO, were previously formatted as GLib.MyEnum.foo, so we add this special case for nodes that are ast.Members.
| * devdocs: Describe aliases more thoroughlyPhilip Chimento2018-08-061-0/+16
| | | | | | | | For aliases we add a description of what Javascript type they map to.
| * devdocs: Add extra CSS class to default.tmplPhilip Chimento2018-08-062-1/+11
| | | | | | | | | | | | | | | | We add an extra CSS class to default.tmpl to indicate what kind of AST node is represented here (e.g., ast.Constant). This should properly belong in get_node_kind() in docwriter.py, but adding extra kinds there would affect the way that all the other documentation output formats are generated.
| * devdocs: Mark links to other GIRs as suchPhilip Chimento2018-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | DevDocs will try to normalize links relative to the current documentation if it can, and strips ../ off the front, so e.g. a link on the gio20/gio.file page to ../gobject20/gobject.object will end up resolving to http://<host>/gio20/gobject20/gobject.object, which doesn't exist. We clearly mark links to other GIRs with a gir:// URL scheme that DevDocs won't process automatically, and then fill in the links ourselves in the DevDocs scraper.
| * devdocs: Match DevDocs' slug namesPhilip Chimento2018-08-061-2/+3
| | | | | | | | | | | | Because of some Ruby naming rules in DevDocs, other GIR modules will have their documentation in ../namespace10/ instead of ../NameSpace-1.0/, so change format_external_xref() to match this.
| * devdocs: Describe bare functionsPhilip Chimento2018-08-061-0/+2
| | | | | | | | | | Pages for bare functions (not in a class) were missing descriptions of their arguments and return values.
| * devdocs: Format the values of constantsPhilip Chimento2018-08-062-3/+18
| | | | | | | | | | | | | | We change the style of documentation pages for constants, so that their values are displayed in a <dt>/<dd> pair. We add a new method to the formatter family, format_value() which should print the representation of a constant's value in the target language; much like repr() in Python.
| * docwriter: Handle moved_to in underscore functionPhilip Chimento2018-08-061-0/+2
| | | | | | | | | | This function was failing on g_iconv() which has a blank name in the GIR file (its name instead coming from the moved-to attribute.)
| * devdocs: Add deprecated CSS class where neededPhilip Chimento2018-08-066-20/+38
| | | | | | | | | | | | | | | | | | | | This adds a def in _doc.tmpl that expands to "deprecated" if the node is deprecated, and to nothing otherwise. We use it to give the deprecated CSS class to particular elements. The presence of the class on a symbol's main entry will inform DevDocs that the symbol is deprecated, though it won't be formatted in a particular way. The presence of the class on an index entry will cause the index entry to be struck out, so that it's visually obvious in the index when a symbol is deprecated.
| * devdocs: Generate versioning notesPhilip Chimento2018-08-067-6/+37
| | | | | | | | | | | | | | For GIR nodes with version annotations, such as "Since:", "Deprecated:", and "Stability:", we generate stability notes at the top of each node's documentation. These notes are given the CSS class "versioning-note" so that we can format them nicely in DevDocs.
| * devdocs: Don't render private fieldsPhilip Chimento2018-08-062-4/+53
| | | | | | | | | | | | | | | | Skip private fields such as "priv" and "parent_instance". Unfortunately not all private structure and parent instance fields are marked private, and not all of them are named "priv" or "parent_instance". This also includes fields that are contained within anonymous unions.
| * docwriter: Use <pre> for code blocksPhilip Chimento2018-08-061-5/+19
| | | | | | | | | | | | | | | | | | | | | | Code blocks, i.e. |[ ]|, were converted into <code> elements, but <pre> would be more appropriate. In addition, add four spaces to the start of each line in a <pre> element so that Markdown will recognize it as code and not mangle it. As explained in a FIXME comment, a better solution would be to reimplement DocstringScanner using Markdown extensions so that such confusion becomes impossible.
| * devdocs: Render a summary at the top of each pagePhilip Chimento2018-08-064-1/+176
| | | | | | | | | | | | This summary, heavily inspired by the one from pgi-docs, is useful when browsing the page rather than searching for a specific term. It's also similar to the summary at the top of gtk-doc pages.
| * doctool: Output formatter for DevDocsPhilip Chimento2018-08-0619-5/+359
| | | | | | | | | | | | | | In order to generate HTML output that DevDocs can easily scrape and display, we add a new output format to g-ir-doc-tool (--format=devdocs). It works similarly to the Mallard output format, but generates very simple HTML instead. We add a new set of Mako templates to generate this output.
| * docwriter: parse markdown for code blocks.Mathieu Duponchelle2018-08-061-5/+65
| | | | | | | | | | | | | | | | | | This also removes some "parsing" code for paragraphs, which is best handled by the actual scanner. + Also fixes some pep8 issues. https://bugzilla.gnome.org/show_bug.cgi?id=745298
| * docwriter: Add support for plural type references.Mathieu Duponchelle2018-08-061-11/+25
| |
| * transformer: Strip whitespace from filter commandsPhilip Chimento2018-08-061-0/+1
| | | | | | | | | | | | | | | | On OS X, the output of sed as reported back to Python has a newline at the end. It seems like a good idea to strip whitespace from the symbol and identifier filter commands anyhow, so strip() the result. https://bugzilla.gnome.org/show_bug.cgi?id=752468