Skip to content
Pre-release

@kevinhendricks kevinhendricks released this Sep 24, 2015 · 1172 commits to master since this release

Sigil 0.8.900 (first of the pre Sigil 0.9.0 release series)

FYI: Sigil has had most of its internals torn out and rebuilt from scratch with new components including Google’s Gumbo html5 parser and the use of an embedded Python 3.4.3 interpreter with lxml to replace Xerces and Tidy which had some serious issues with potential ePub3 support. As such, we do expect users to run into corner cases we have not yet found ourselves. So please test this new release and report any irregularities you see so that we can quickly iron out any difficulties before continuing our development towards support for both ePub2 and ePub3.

In addition, due to Compiler/DLL literal hell on Windows we have been forced to mix a VS2013 built Sigil, and Qt with a VS 2010 built Python 3.4. Given that Python 3.4 is C based (not C++) and given all python memory allocation/deallocation never crosses over our Python embedded interface, this has not proven to be an issue under all of our testing. That said, once Qt 5.5.1 actually builds with VS2015 on Windows, we will move towards using a VS2015 built version of Sigil, Qt, and Python 3.5 to make sure all pieces of the Sigil app are compiled with the exact same compiler on Windows. On Linux and Mac OS X where the compiler designers actually understand the concept of backwards compatibility using versioned symbols, separation of exception handling, and etc, none of this is an issue.

Features

- Removed Tidy and replaced it with a combination of a specially modified Gumbo 
     parser that supports html5

- Removed Xerces, XercesExtras, Boost, and unused bundles.

- Updated the source code to be compatible with the latest clang compiler by replacing all 
    "undefined - behaviour" use of "Null" References with proper pointers across entire codebase

- Completely revamped the build process to embed the Python 3.4 Interpreter 
     inside of Sigil and integrate it in, including as site-packages:
     [lxml, bs4, PIL, regex, six, html5lib].  This will allow plugins 
     that use the internal Python 3.X engine access to all of these 
     specialized packages by default with no additional action
     needed by end users of their plugin.

- Created our own version of BeautifulSoup4-4.4.0 called sigil_bs4 that 
     fixes lxml namespace bugs, fixes serialization/prettyprinting of 
     inline xhtml tags, and modifies the bs4 codebase so that a single 
     source code works equally well on both Python 2.7 and Python 3.X

- Replaced internal opf and ncx xml processing and cleaning with a 
     combination of embedded Python 3.4, sigil_bs4 / lxml

- We now build Hunspell as a shared library and added  a ctypes interface to allow
     plugins to spellcheck

- We now build our modified gumbo html5 parser as a shared library 
     and provide a bs4 ctypes interface to it for easy xhtml processing 
     in plugins that use either Python 2.7 or Python 3.X

- Allowed plugins to auto-fix "text/html" media-types to "application/xhtml+xml"

- Began the transition to allow for both epub2 and epub3 editing 
     (Note: epub3 editing is still incomplete)

- Converted Flightcrew to become a Sigil plugin and replace it with
     a simple and fast internal sanity checker.

- Updated Hunspell dictionaries to be actual dictionaries and not just word lists for en_US and en_GB

- Updated other dictionaries to their most current version to match what is used in LibreOffice 5

- Fix issue #54 modified date using local numerials when it should be
     using Arabic numerals per the spec.

- Set the book to modified when font's are obfuscated.

- Change FORCE_BUNDLED_COPIES build flag to USE_SYSTEM_LIBS. This flips
     the meaning of the flag. Now USE_SYSTEM_LIBS will enable using system
     libraries. Also, SYSTEM_LIBS_REQUIRED was added which will fail the
     cmake configure if any system libraries are not found instead of
     falling back to the bundled copy. Finally, this makes the build more
     consistent for Windows and OS X users.
Assets 10
You can’t perform that action at this time.