Skip to content

Releases: hynek/doc2dash

3.1.0

15 Jan 09:07
3.1.0
6d99217
Compare
Choose a tag to compare

Highlights

This release adds support for high-resolution icons, docset playgrounds URLs, and control over full-text search.

Special Thanks

This release would not be possible without my generous sponsors! Thank you to all of you making sustainable maintenance possible! If you would like to join them, go to https://github.com/sponsors/hynek and check out the sweet perks!

Above and Beyond

Variomedia AG (@variomedia), Tidelift (@tidelift), FilePreviews (@filepreviews), Daniel Fortunov (@asqui), Kevin P. Fleming (@kpfleming), and Sören Weber (@SoerenWeber).

Maintenance Sustainers

Jeff Triplett (@jefftriplett), Adam Hill (@adamghill), Dan Groshev (@si14), Magnus Watn (@magnuswatn), David Cramer (@dcramer), Moving Content AG (@moving-content), ProteinQure (@ProteinQure), Jesse Snyder (@jessesnyder), Rivo Laks (@rivol), Ionel Cristian Mărieș (@ionelmc), The Westervelt Company (@westerveltco), Philippe Galvan (@PhilippeGalvan), Birk Jernström (@birkjernstrom), Tim Schilling (@tim-schilling), Chris Withers (@cjw296), Christopher Dignam (@chdsbd), Stefan Hagen (@sthagen), Sławomir Ehlert (@slafs), Mostafa Khalil (@khadrawy), Filip Mularczyk (@mukiblejlok), Mike Fiedler (@miketheman), and Michel Vittória (@michelvittoria).

Not to forget 5 more amazing humans who chose to be generous but anonymous!

Full Changelog

Added

  • Support for high resolution icons using the --icon-2x option. #200

  • Support for linking to docset playgrounds using the --playground-url option. #201

  • Control over full-text search using the --full-text-search=(on|off|forbidden) option. #202

Fixed

  • The table of contents-generation for pydoctor-based documentation has been restored. #133

3.0.0

13 Sep 08:31
3.0.0
1c92b53
Compare
Choose a tag to compare

Presenting the biggest doc2dash release ever!

Most importantly, as you can see below, there's stand-alone binaries for Linux, macOS, and Windows for amd64 platforms! No more Python (if you don't want to)! I found this so exciting, I wrote a short Today-I-Learned post about it. But even if you keep using it via Python, the dependency tree got a lot slimmer since it doesn't depend on Sphinx anymore.

Feature-wise this release introduces first-class support for MkDocs and improves its pydoctor support while at it.

There's a lot more that happened, including prettier (and more informative) progress bars and smarter handling of imperfect indixes.

All-in-all, it comes close to a complete rewrite. I hope you enjoy it, and if you haven't played with Dash.app or Zeal until now – now is the perfect moment!

P.S. Sorry, I also broke your custom plugins. But there's docs on writing your own now!

Full Changelog

Removed

  • Since pydoctor added support for intersphinx in version 21.2.0, the dedicated HTML-parsing parser has been removed. If you need to parse legacy pydoctor docs, please use doc2dash 2.4.1.

Added

  • Stand-alone binaries! If your platform is supported, you can now download binaries from the release page without dealing with Python at all – courtesy of PyOxidizer.
  • intersphinx: documentation based on MkDocs with mkdocstrings metadata is now supported.
  • intersphinx: if no explicit name is passed, the docset name is derived von the documentation's metadata (and not the directory name, which is more often than not just html).
  • We use rich for output and progress bars now. This allows us more granular progress indication.
  • Documentation on writing your own parser plugins.

Changed

  • Tons of refactorings that probably broke your custom parsers. Sorry about that and let us know, if we can help you fixing them.
  • intersphinx: We now parse objects.inv files on our own. Sphinx is not a dependency anymore.
  • intersphinx: Files that are indexed by intersphinx, but don't exist aren't added to the docset anymore. Common example is py-modindex.html. #113 #115
  • We now check if the index page passed via --index-page / -I exists and fail if it doesn't.

2.4.1

21 Jan 08:23
2.4.1
Compare
Choose a tag to compare
  • Added support for URL-encoded filenames. #104

2.4.0

16 Nov 14:20
2.4.0
Compare
Choose a tag to compare

This version dropped every Python version older than 3.8. Please use 2.3 if you need to run doc2dash on legacy Python versions.

  • Better display names with Sphinx v2 inventories. #101
  • Added new intersphinx types:
    • cmdoption (deprecated alias for option)
    • doc
    • label
    • property
    • protocol
    • setting
    • term
      Re-indexing your documentation may add new index entries!
  • zope.interface is not a dependency anymore.
  • colorama is only a dependency on Windows now.
  • Work around a display bug in older Dash.app releases by setting the plist key DashDocSetDeclaredInStyle to originalName.

2.2.0

23 Jun 11:56
2.2.0
Compare
Choose a tag to compare
  • InterSphinxParser is now open to extension. #59
  • Support a --parser option to force the use of a custom parser
    class. #60

2.1.0

01 Dec 13:11
Compare
Choose a tag to compare
  • Remove legacy Sphinx parsing. The intersphinx parser is much more robust so the old way shouldn’t be needed anymore.
  • Add support for InterSphinx constants. #49
  • Fix handling in-docs links with multiple anchors. #47
  • Add support for --enable-js and --online-redirect-url options. #43
  • Better support for relative paths. #37, #41

2.0.2

01 Dec 13:11
Compare
Choose a tag to compare

2.0.1

01 Dec 13:10
Compare
Choose a tag to compare
  • Better Unicode support. The move from unicode_literals to explicit prefixes broke some things that are fixed now. #29, #30

2.0.0

14 Aug 16:00
Compare
Choose a tag to compare

2.0.0 (2014-08-14)

  • Added a new parser for Sphinx documentation that uses intersphinx files that are machine readable.
    That should lead to more reliable parsing and a better deduction of symbol types.
    (#28)
  • Added Sphinx-based documentation.
  • Added colors, styles, and a progress bar to make output more comprehensible.
  • setup.py test works now.
  • Internally quite a few changes happened.
    Most prominently tuples and namedtuples have been replaced by real classes and parsers don't inherit from anything anymore.
    The fundamental working principal stayed the same though so porting your parsers is trivial.