[bt-devel] refactoring

Jaak Ristioja Ristioja at gmail.com
Thu Jul 15 15:31:27 MST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 16.07.2010 00:42, Troy A. Griffitts wrote:
> On 07/15/2010 12:15 PM, Jaak Ristioja wrote:
>> This is definitely something to consider. However, I fear that we also
>> need to rebuild
>> great parts of the backend. To make matters worse, the SWORD library
>> is also very obscure
>> to use.
>>
> 
> :)  I, of course, object.
> 
> Please be specific about this and we will try to accommodate.  I
> personally try to stay involved with at least one frontend project. 
> This makes me 'eat the food I cook' so I usually run into oddities
> before other users of the library and fix.  Though I am somewhat at a
> disadvantage because I have foreknowledge of how the engine is intended
> to work and what to avoid.
> 
> Please let us know small, realistic pieces of useful feedback and we
> will try to accommodate.

So that we're clear about this: when I said "backend", I meant the src/backend of BibleTime.

Regarding SWORD, personally, my main blocker is the lack of good examples/tutorials on how
it is supposed to work. Here's a quick list of most important things I don't yet
understand about SWORD, but need to understand to develop BibleTime:

 * how to handle multiple install sources
 * how to install/remove modules
 * how to list installed/installable/upgradeable/downgradeable modules
 * how to get module information (name, description, language(s), encryption, version etc)
 * how to read encrypted modules
 * which books/chapters/verses or parts are present in a module
 * how do I read a specific verse/part of a module
 * how do I read footnotes, Strong numbers, cross-references etc?

I have searched but I haven't found any good documentation on this. This has been
implemented in BibleTime before I joined the project. BibleTime and SWORD source code
documentation is not enough. Simple examples and tutorials are needed.

What I want to archive for BibleTime is a modular backend which (among other things)
  1) were able to interact with SWORD as well as any other library capable of providing us
input data and
  2) would provide Qt-style models for modules, and for the data inside those modules

Blessings! :)
Jaak

PS: Who wrote the part of BibleTime interacting with SWORD?
PPS: Some more questions about SWORD:
1) Is it possible to install multiple versions of the same module at once? will it be
possible in the future?
2) Is it possible to verify whether a decryption key works?
3) What about thread safety?
4) Is it possible to use SWORD without creating any classes that inherit from the SWORD
classes?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.15 (GNU/Linux)

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
F2zH5WAVwqRQeAEQt/mF
=MC1V
-----END PGP SIGNATURE-----



More information about the bt-devel mailing list