epub_pro 5.4.3 copy "epub_pro: ^5.4.3" to clipboard
epub_pro: ^5.4.3 copied to clipboard

EPUB Parser for Dart. Suitable for use on the Server, the Web, or in Flutter

5.4.3 #

  • Fix: chapter splitting not working on Japanese EPUBs. Fixed by using word count library

5.4.2 #

  • Fix: safely handle files if they're in the root directory instead of a subdirectory

5.4.1 #

  • Fixed title inheritance in lazy loading chapter splitting
    • The splitChapterRef method now properly applies parent title inheritance for orphaned subchapters
    • Ensures consistent behavior between splitChapter and splitChapterRef methods
    • Orphaned subchapters now show inherited parent titles instead of "Untitled" in all loading scenarios

5.4.0 #

  • Changed chapter splitting title format from "Part X" to "(X/Y)" notation
    • Split chapters now use format: "Chapter Title (1/2)" instead of "Chapter Title - Part 1"
    • Prevents confusion with books that have actual "Part" titles (like Piranesi)
    • Better suited for chapter-based reading apps
  • Fixed orphaned subchapters showing as "Untitled"
    • Orphaned spine items that become subchapters now inherit parent chapter titles
    • Applies to both split and non-split chapters for consistency
    • Example: chapter01.xhtml under "PART 1: PIRANESI" now shows as "PART 1: PIRANESI" instead of "Untitled"
  • Updated all tests to expect the new (X/Y) format
  • Enhanced documentation with cleaner, more readable examples

5.3.0 #

  • Improved NCX/spine reconciliation for better handling of malformed EPUBs
    • Smart algorithm that ensures all spine items are accessible even when not in navigation
    • Orphaned spine items are automatically inserted as subchapters under logical parents
    • Maintains correct reading order while preserving intended navigation hierarchy
    • Matches behavior of major EPUB readers like Apple Books
  • Added comprehensive API documentation
    • All major classes now have detailed documentation comments with examples
    • Documentation follows Dart standards for generating API docs with dart doc
    • Added clear explanations of all public methods and properties
  • Enhanced documentation
    • Updated README.md with better explanation of NCX/spine reconciliation
    • Added code examples for all major features
  • Improved test coverage
    • Added tests for EPUBs with section-wrapped content (e.g., piranesi.epub)
    • Added tests for NCX/spine reconciliation functionality
    • Fixed test reliability issues

5.2.0 #

  • Added lazy loading support for chapter splitting
    • Added EpubReader.openBookWithSplitChapters() - opens book with lazy loading and automatic chapter splitting
    • Added EpubBookRef.getChapterRefsWithSplitting() - returns chapter references that split on-demand
    • Added EpubChapterSplitRef class - represents a split chapter part with lazy content loading
    • Added EpubBookSplitRef class - wrapper for lazy loading books with split chapter support
  • Memory efficiency improvements - split chapter content is only loaded when accessed

5.1.0 #

  • Added EpubReader.readBookWithSplitChapters to split long chapters (>5000 words) into smaller parts
  • Added getChaptersWithSplitting to get a list of chapters while taking into account splitting longer chapters (>5000 words)

5.0.5 #

  • Ran dart formatter to improve package score

5.0.4 #

  • Fixed chapter retrieval logic for EPUB2. Spine might contain additional split files that aren't in the NCX. We modify ChapterReader to create chapters for all spine items, even if they're not in the NCX. Basically this helps you handle unreliable "toc.ncx" in your EPUBs

5.0.3 #

  • Fixed readBook crashing when cover image not found

5.0.2 #

  • Updated dependencies

5.0.1 #

  • Remove deprecated examples
  • Remove unused dependencies
  • Fix bugs

5.0.0 #

  • Migrate to Dart code-style and null-safety

4.0.0 #

  • Merge all pull requests

3.0.0 #

Changed #

  • metadata file now saves as mimetype pull#1

Added #

3.0.0-dev.3 #

Changed #

  • At EpubReader.{openBook, readBook} first argument can be future (not before)

3.0.0-dev.2 #

Fixed #

  • Fixed null-safety bug

3.0.0-dev.1 #

Added #

  • Null-safety migration

Changed #

  • Upgrade all dependencies

2.1.0 #

Fixed #

  • Version 3 EPUB's can have a null Table of Contents
  • Updated pedantic analysis options

2.0.7 #

Added #

  • Added example of using epub in a web page: examples/web_ex

Fixed #

  • Fixed errors from pedantic analysis

Changed #

  • Added pedantic analysis options

2.0.6 #

Fixed #

  • Fixed Issue #35: File cannot be opened if its path is url-encoded in the manifest
  • Updated examples/dart_ex to have a README as well as use a locally stored file.

2.0.5 #

Changed #

  • Exposed EpubChapterRef to consumers.

2.0.4 #

Fixed #

  • Merged pull request #45
    • Fixes pana hits to make code more readable

2.0.3 #

Changed #

  • Raised sdk version constraint to 2.0.0
  • Raised constraint on async to 3.0.0

Fixed #

  • Merged pull request #40 by vblago.
    • Fixes Undefined class 'XmlBuilder'

2.0.2 #

Changed #

  • Lowered sdk version constraint to 2.0.0-dev.61.0

2.0.1 #

Changed #

  • Formatted documents

2.0.0 #

Added #

  • Added support for writing Epubs back to Byte Arrays
  • Tests for writing Epubs

Changed #

  • Epub Readers and Writers now have their == operator and hashCode get-er overridden

Fixed #

  • Fixed an issue when reading EpubContentFileRef

1.3.2 #

Changed #

  • Updates to Travis configuration and publishing

1.3.1 #

Changed #

  • Updates to Travis configuration and publishing

Removed #

  • Removed unused variable FilePath from EpubBook and EpubBookRef

1.3.0 #

Added #

  • Package now supports Dart 2!

Removed #

  • Removed support for Dart 1.2.21

1.2.10 #

Fixed #

  • Merged pull request #15 from ShadowJonathan/dev.
    • Fixes issue with parsing schema by removing opf: namespace

1.2.9 #

Changed #

  • Ran code through dartfmt as per analysis by pana

1.2.8 #

Added #

  • Added unit tests for Images

Changed #

  • Updated dependencies

1.2.7 #

Added #

  • Added upper limit of Dart version to 2.0.1

1.2.6 #

Added #

  • Added Support for Dart 2.0

1.2.5 #

Added #

  • A publish step in the travis deploy

1.2.4 #

Changed #

  • EnumFromString no longer uses the mirrors package to make this Flutter compatible by @MostafaAyesh

1.2.3 #

Added #

  • This Changelog!

Changed #

  • Author email

1.2.2 #

Changed #

  • Dependencies were updated to more permissive versions by @jarontai

Added #

  • Example by @jarontai
  • More Entities and types are exported by @jarontai

Fixed #

  • Issue with case sensitivity in switch statements from @jarontai
  • Issue with Async Loops from @jarontai

1.2.1 #

Fixed #

  • Made code in line with Dart styleguide

1.0.0 #

  • Initial release of epub_pro
  • Forked from epub_plus with updated dependencies
  • Fixed equality comparison in EpubContentFileRef
  • Removed unnecessary library name
7
likes
0
points
92
downloads

Publisher

verified publisherwaltertay.com

Weekly Downloads

EPUB Parser for Dart. Suitable for use on the Server, the Web, or in Flutter

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

archive, collection, image, path, word_count, xml

More

Packages that depend on epub_pro