BibleGet I/O - 2.8

This release updates the extension to be compatible with LibreOffice 6. It also fixes the recent break which came about with an update to the BibleGet Project server which started setting HSTS security headers, enforcing the usage of the https protocol throughout the domain. This effectively broke plugins that used the http protocol to reach the query.bibleget.io service endpoint, so this update to the plugin makes use of the https protocol when querying the endpoint.

Release Details

This is the second release of this plugin or extension for LibreOffice. The preceding 2.7 release had been previously published for OpenOffice and then for LibreOffice.

I had pushed the code for the extension to github when releasing the 2.7 version (year 2015) to keep it publicly accessible to the open source community. In the meantime, because of some technical difficulties with the computer I used for developing, I lost the local copy of the extension code. In order to proceed with this release, I retrieved the code from github. And I'm not entirely sure the code on github was actually 100% up to date with the 2.7 release because it seemed to have some bugs which didn't appear when testing for the 2.7 release; either the github code wasn't 100% up to date or there were some changes in some of the Java libraries used between releases which made for some bad bugs. In any case, these were all ironed out for the 2.8 release.

After the recent BibleGet Project server updates which set HSTS headers enforcing the usage of the https protocol throughout the domain, including the query.bibleget.io service endpoint, it was necessary to use the https protocol in the extension web connections to the service endpoint. However the BibleGet.io domain uses Let's Encrypt certificates. Let's Encrypt certificates should be accepted in JRE 1.8 keystores which should trust the "DST Root CA X3" certificate used to sign Let's Encrypt certificates. However the keystore on my development machine didn't trust this certificate even though a Java 1.8 runtime was installed, and so the Let's Encrypt certificate was still causing an SSLHandShake exception to be thrown. In order to make sure untrusted certificates would not cause SSLHandShake exceptions which would have impeded the correct functioning of the extension, the DST Root CA X3 certificate was included in the extension resources and forcefully made to be trusted during plugin execution.

I'm guessing with there were some changes in updated Java libraries used for the extension, or perhaps in JRE itself, which changed the behaviour of javax.json . Not sure if this was because of code that was not pushed to github for the 2.7 release or because of updated libraries that acted differently since the 2.7 release, because the 2.7 release didn't have any problems with this as far as I can tell. In any case, the built json objects are now correctly passed into JsonObject variables which are then returned, instead of directly returning the JsonBuilder once it was built.

Another issue handled in the current release was that of UTF-8 encoded resource strings not being handled correctly, and the localized string translations were not being retrieved. I added a utf-8 control class to correctly read utf-8 encoded string resources.

License(s)

AL-v2 (Apache License Version 2.0),

Compatibility

LibreOffice 6.1 LibreOffice 6.0 LibreOffice 6.2

Changelog

  • use https protocol for web connections
  • the root CA certificate included and forcefully added to the trusted certificates on runtime to make sure https connections don't throw SSLHandShake exceptions
  • fixed bugs with options not being correctly loaded, this was depending on how JsonBuilders were behaving
  • JsonValues which are string values are now explicitly cast to JsonStrings and the string value is obtained with JsonString.getString
  • new utf-8 control class to handle retrieval of utf-8 encoded strings from resources
  • use Java 1.8 64 bit runtime to build the extension, along with the new 64bit LibreOffice SDK. This might require using a 64 bit JRE rather than 32 bit. In any case a minimum JRE of 1.8 is now required
  • some resource strings were updated

Available Downloads

The linked Extension file All platforms, Linux, Linux-x64, Mac OS X, Windows
File size: 28200.0 kb

Legal Disclaimer and Limitations for Downloads

The Document Foundation has not reviewed, and cannot review, all of the material, including computer software, available on or by means of The Document Foundation's
websites, and cannot therefore be responsible for that material's content, use or effects. By operating its websites, The Document Foundation does not represent or imply that it endorses the material there available, or that it believes such material to be accurate, useful or nonharmful. You are responsible for taking precautions as necessary to protect yourself and your computer systems from viruses, worms, Trojan horses and other harmful or destructive content. The Document Foundation's websites may contain content that is offensive, indecent or otherwise objectionable, as well as content containing technical inaccuracies, typographical mistakes and other errors. The Document Foundation's websites may also contain material that violates the privacy or publicity rights, or infringes the proprietary rights, of third parties, or the downloading, copying or use of which is subject to additional terms and conditions, stated or unstated. The Document Foundation disclaims any responsibility for any harm resulting from the use by The Document Foundation's visitors of The Document Foundation's websites, or from any downloading by those visitors of content available on or by means of The Document Foundation's websites.

Changes

Content contained on The Document Foundation's websites, including these Legal Disclaimers and Limitations, may be changed at the sole discretion of The Document Foundation and without notice. You are bound by any such updates or changes, and so should periodically review these Legal Disclaimers and Limitations.

If you believe any file is present on the site contrary to any TDF rule or applicable law, please supply full details to info@documentfoundation.org for impartial consideration.