Hi there !
We decided to maintain a development blog for calibre2opds, and here it is.
Here, we’ll talk about upcoming features, answer your comments (and hopefully your wishes) and publish official releases.
The development cycle for Calibre2opds 3.5 is starting up.
Initial ideas for inclusion are:
- Enhance the generation process to make it more intelligent so that it only attempts to generate catalog pages that have actually changed since the last run. This would provide significant run time performance gains of the current approach of generating all possible pages to a temporary area and then after the generation only copying changed files to the final catalog location.
- Allow for the use of Calibre Custom Column field types to be used in search and filter expressions.
If you have some other feature that you would like to be considered for inclusion then please raise it as a feature request on the Calibre2opds Issue register.
One other change that will also be happening as part of the development of this release is moving the source and version control to an alternative service (probably gitHub). Google have announced that the GoogleCode service we currently use will be closing down later this year and so projects need to migrate off it.
It has been decided that it is time to move the 3.4 release into a ‘final’ state. There have been no significant bug reports for a while now, so giving it a ‘final’ label may encourage those who do not like to run software labelled as ‘beta’ the confidence to move to this release. The 3.4 release has had lots of bug fixes since the 3.3 release as well as ton of new features.
For some time Calibre2opds has had a browser based search feature that has been labelled as experimental. It has been decided to change the status of this feature to ‘deprecated’ (although we have not yet removed it from the Calibre2opds program).
The reason for this is that the Calibre2opds search feature was based on the draft HTML 5 database feature (commonly known as WebSQL) that was going through the standardisation process. However this specification has since been withdrawn and is deprecated by the W3C standardisation process. A consequence is that major browser such as Internet Explorer and Firefox have decided not to support this feature. Browsers that DO appear to support it are Safari, Chrome and Opera but since this feature is no longer up to be standardised support could well be removed in future versions.
If you decide that you DO want to generate a Calibre2opds catalog to support this feature, then if you use a browser that is not compatible with the current implementation then you will now get an error message stating this when you try and use search.
If anyone can point out any open-source libraries that implement browser side databases in a manner compatible with all major browsers then we would be happy to look at changing the Calibre2opds search feature to utilise such a library.
We have made the Calibre2opds 3.3 (rev 274) into final release as there have not been nay bug reports for a little while now.
The 3.4 release beta program will therefore be starting for any bug reports received against the 3.3 final release, and also for development of new features.
It has been decided that we have finished adding features to the Calibre2opds 3.3 release, so the latest build (currently rev 269) has been designated as a Release Candidate. If no issues are reported in the next week or so that require fixing then this will become the final 3.3 release and we will start working on the 3.4 release for any new features. There are lots of new features present in the 3.3 release based on feedback from users. Many users do not like using releases designate as beta so getting the 3.3 release into ‘final’ state will help encourage users to move on from the 3.2 release (this is important as many bugs reported against the 3.2 release are fixed in the 3.3 release)..
There was one significant feature that we had originally envisaged might make the 3.3 release that proved hard to implement and therefore are now going to be delayed until at least the 3.4 release. This was the ability to specify Calibre custom columns that could be used to generate a new Catalog sub-section that would behave rather like the current Tags section. Associated with this was the enhancement to the calibre2opds search syntax to support custom columns.
A point to note is the move to using GoogleDrive to host downloads. This is not nearly as friendly as the previous downloads based on GoogleCode, but has been forced on us as Google discontinued the ability (from mid-January) to add new downloads to GoogleCode. If any users have suggestions on improving the GoogleDrive experience for downloads then we would welcome them.
The Calibre2opds 3.3 beta program has been going well and is very close to being Feature Complete as far new features intended for the 3.3 release are concerned. There are two remaining items that are nearly finished that are visible in the GUI (but are currently disabled) that will be completed before going into Release Candidate mode:
- The ability to include cover images and thumbnails within the catalog folder. This will make the catalog self-contained and able to be used (except for downloading books) without access to the calibre library folder. This will make it easier to have offline copies of the catalog if so desired.
- the ability to create new catalog sub-sections from custom columns. These will function in a similar way to the current Tags sub-catalog, but based instead on the content of a specified custom column.
One feature we had hoped for that will not make the 3.3 release is the ability to use Custom columns within the Search syntax used by Calibre2opds. This has proved to be technically challenging to implement, but it will be kept on the roadmap as a potential feature for future releases.
The beta program for the calibre2opds 3.3 release is already well underway with a significant number of new features already added (as well as bug fixes against the 3.2 release).
To give an idea of the changes already included the following is a list of the issues describing bugs and/or new features that are already implemented in rev 246 that is available from the Calibre2opds downloads area:
- New: #c2o-155: Allow Calibre Custom Column values to be displayed in Book Details
- New: #c2o-160: Allow Books to be on a different URL to the catalog
- Fix: #c2o-161: The “Language as Tag” value being inverted when saved
- Fix: #c20-163: If you do multiple generation runs without reloading calibre2opds the catalogs are not correctly generated.
- New: #c2o-164: Option to Publish only the generated catalog in Publish mode when Books URL specified
- Fix: #c2o-166: HTML Downloads not generated if OPDS catalog not being generated
- Fix: #c2o-167: Option to Save bandwidth no longer makes sense so removed it
- New: #c2o-168: Omit counts from internal links when Minimize Changed Files selected
- New: #c2o-169: Option to exclude tags from cross-reference links
- New: #c2o-170: Provide direct links from a list of books to the related authors in HTML catalogs
- Fix: #c2o-171: Publication date does not show up in the book details page
- Fix: #c20-172: Dmg Release of Mac OSX broken.