Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Export does not handle multiple read / finish / drop events in books #24

Closed
jrhbcn opened this issue Jul 30, 2022 · 6 comments
Closed

Comments

@jrhbcn
Copy link

jrhbcn commented Jul 30, 2022

Hello,

Really thank you for this tool, I have been waiting for something to keep track of my read books. I started using a single text file, then an excel sheet and finally goodreads. However, I would like to keep my data personal and also to be able to export it completely to move on if needed (not like goodreads as I painfully realice now).

Anyways, I am testing the export functionality before I commit myself fully to Jelu and realised that events are not really exported. Multiple "reading" events are ignored (only the last one is exported). Also "drop" events are ignored. Multiple "finished" seem to be supported and exported as alist though.

Is it possible to export the full list of events? Best regards,

@bayang
Copy link
Owner

bayang commented Jul 30, 2022

Hi, and thanks for your interest !

If I remember correctly Jelu only exports the last reading date in a goodreads like CSV file.

I'll try to find a suitable format to export all the events, maybe a compressed JSON file if it is not too big and let users choose between the actual CSV export and a full export.

Do remember, however, that all your data is forever yours as long as you keep your jelu SQLite database.
I recommend to regularly backup the SQLite file and your pictures folder.

@jrhbcn
Copy link
Author

jrhbcn commented Jul 30, 2022

Hi @bayang

If I remember correctly Jelu only exports the last reading date in a goodreads like CSV file.

Yes, and that is the main reason I want to go away from goodreads and I have to go manually adding all my starting dates to all of my books :(

I'll try to find a suitable format to export all the events, maybe a compressed JSON file if it is not too big and let users choose between the actual CSV export and a full export.

JSON would be fine. However, i was thinking in a simpler thing. Just modifying the CSV export so the "reading date" column behaves as the "finished date" one, where all reading events are listed on a string separated by colons (maybe separate them with something different that the main csv separator. The same for the "drop" events.

Do remember, however, that all your data is forever yours as long as you keep your jelu SQLite database. I recommend to regularly backup the SQLite file and your pictures folder.

Yes! I am actually fully committed to Jelu because of this. :) I am exploring the API to be able to export everything with a python script. Now to manually import all my goodreads books...

@zblesk
Copy link

zblesk commented Aug 11, 2022

Seconded re the export thing! No reason to have it be broken in the same way as GR breaks it.

I'd appreciate a JSON export as well.

@bayang
Copy link
Owner

bayang commented Aug 12, 2022

In the Jelu export I tried to be compatible with goodreads format because it is the most common format and I want people to be able to switch to another app if they get bothered with Jelu.

So in the Jelu export, columns from "Title" to "Bookshelves" are used for Goodreads reimport or usage in another app.
see https://help.goodreads.com/s/article/How-to-import-my-books-from-other-cataloging-services-1553870934585

The read_dates is a column I added arbitrarily to track several reading finished event.
I could add a dropped_dates column if you want.

About the currently reading state, in jelu you will only ever have only one currently reading event at the same time for a book.
Because when you set a book as finished or drop, it is actually the latest currently_reading event that is modified.

So if needed I can add a currently_reading column date if the book is in this state.
Do remember however, that those columns will probably not be used by other apps when you need to import your data elsewhere @jrhbcn and @zblesk .

@zblesk
Copy link

zblesk commented Aug 12, 2022

Thank you for the explanation. The absolute 1:1 compatibility is not a factor for me, but I understand if you don't want to add that. It's not that important to me.

github-actions bot pushed a commit that referenced this issue Aug 20, 2022
## [0.29.0](v0.28.0...v0.29.0) (2022-08-20)

### Features

* add proxy authentication ([a2f2554](a2f2554))
* also export dropped dates and currently reading [#24](#24) ([d81afbe](d81afbe))

### Bug Fixes

* remove useless line in dockerfile ([2277c94](2277c94))
@bayang
Copy link
Owner

bayang commented Aug 20, 2022

Should be ok in 0.29.0

@bayang bayang closed this as completed Aug 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants