Non-integer series indexes are not processed correctly #4

Closed
opened 2024-12-21 15:46:30 +01:00 by folkcoder · 3 comments

Calibre stores the series index as a float, which allows for decimal places. This is useful in a number of scenarios:

  • For prequels (with, for example, a series index 0.5);
  • For supplemental novels or novellas that take place chronologically in-between two books in a series (with, for example, a series index of 2.5, representing that the novella takes place between the second and third book in the series)
  • For books that are published in two parts (To Green Angel Tower, for example, was published as two separate volumes in paperback, and could have series indexes of 3.1 and 3.2 in Calibre).

It looks like this application stores the series index as an integer, which causes issues when trying to parse Calibre metadata that contains series indexes with decimal places. On the Pocketbook Inkpad Color 3, the application runs successfully, but the decimal places are lost. Is this something that can be fixed?

Thank you for a great application!

Calibre stores the series index as a [float](https://github.com/kovidgoyal/calibre/blob/2d975f654e3e7389295357187c56bfe7628ef117/src/calibre/ebooks/metadata/xmp.py#L439), which allows for decimal places. This is useful in a number of scenarios: * For prequels (with, for example, a series index 0.5); * For supplemental novels or novellas that take place chronologically in-between two books in a series (with, for example, a series index of 2.5, representing that the novella takes place between the second and third book in the series) * For books that are published in two parts ([To Green Angel Tower](https://www.goodreads.com/book/show/28691.To_Green_Angel_Tower), for example, was published as two separate volumes in paperback, and could have series indexes of 3.1 and 3.2 in Calibre). It looks like this application stores the series index as an [integer](https://git.rustysoft.de/martin/PbDbFixer/src/commit/b02ede51820d9293cc6152f2a821f4687ff5ecb8/src/epub.rs#L19), which causes issues when trying to parse Calibre metadata that contains series indexes with decimal places. On the Pocketbook Inkpad Color 3, the application runs successfully, but the decimal places are lost. Is this something that can be fixed? Thank you for a great application!
folkcoder changed title from Non-integer series index are ignored to Non-integer series indexes are not processed correctly 2024-12-21 15:46:55 +01:00

Oh yes, indeed. While reviewing my book series, I noticed some of them include a few fillers, and I realized the decimal point is actually missing in those cases. I’m not sure if this issue originates from the PocketBook Cloud during upload or if it’s caused by the app itself. I’ll test this later to figure it out.

Oh yes, indeed. While reviewing my book series, I noticed some of them include a few fillers, and I realized the decimal point is actually missing in those cases. I’m not sure if this issue originates from the PocketBook Cloud during upload or if it’s caused by the app itself. I’ll test this later to figure it out.
Owner

@folkcoder Yes, you are right about calibre storing the values as float. But the problem is, that the PocketBook database on the device stores them as integer. So I'm afraid this can't be fixed. PocketBook would have to change this.

@folkcoder Yes, you are right about calibre storing the values as float. But the problem is, that the PocketBook database on the device stores them as integer. So I'm afraid this can't be fixed. PocketBook would have to change this.
martin added the
no bug
label 2024-12-21 21:28:26 +01:00
Author

@martin That makes total sense. Thank you for clarifying this, and thank you again for this useful application!

@martin That makes total sense. Thank you for clarifying this, and thank you again for this useful application!
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: martin/PbDbFixer#4
No description provided.