[sword-devel] Cross references with Sword 1.9.0RC3

Troy A. Griffitts scribe at crosswire.org
Sun Oct 18 12:49:05 EDT 2020


Hi Jaak,

Glad we found the issue during the RC stage. Yes, finishing the camelCase refactoring work for the 2.0 release was a large part of this release. We should have probably added a SWDEPRECATED flag to the method and left it, but for virtuals, this gets a bit tricky. For us to continue to support the old name, we need to be sure we still call any overridden version using the old name and of course call the new name, as well. I think we tried this in a few other earlier releases and it was a bit hairy-- including hushing our own deprecation violation when we called the old deprecated method name. With 2.0 as the likely next major release and thus all current SWDEPRECATED methods finally going away, it seemed best to just get clients off the deprecated methods now. I am glad we found the issue for BibleTime before release and I wish I had a better way for us to detect renaming of virtual methods. Using the new C++ keyword override is a great way for you to do this in your client; maybe you could grep out the sword methods somehow when using the compiler option to suggest places for the override keyword. Maybe we could add a SWOVERRIDE define to allow us to use it in the engine and still support compilers without support. Thank you for the suggestion. I believe we are done renaming virtuals for a very long time; I have no more refactorings like this on my to-do list and it's great to finally have all of these complete with this release.

With Bibletime, Xiphos, Ezra, and Bishop all reporting in with positive results now, I believe we can feel good about pushing 1.9.0 out the door. I will likely wait until next weekend just to be sure we have peace on problem reports for a few days. Thank you and everyone for your help and support with this and for working together as the Body of Christ. It's a privilege and great fun to serve together with you guys.

Troy

On October 18, 2020 3:40:10 PM GMT+02:00, Jaak Ristioja <jaak at ristioja.ee> wrote:
>Hi!
>
>The respective change in Sword is SVN 3753:
>
>  https://github.com/bibletime/crosswire-sword-mirror/commit/b684b6f099
>
>It seems that this time we were not lucky to have a SWDEPRECATED alias 
>for the old function name, silently breaking API, and hence BibleTime.
>
>In theory this silent error could also have been detected in BibleTime 
>if we would have used the override keyword. In practice, finding all
>the 
>functions which need the override keyword is for most projects only
>easy 
>to do if the -Wsuggest-override flag (and perhaps even 
>-Werror=suggest-override for debug builds) is used. Unfortunately for 
>BibleTime (and other projects using Sword), just turning this flag on 
>yields very many warnings from Sword headers themselves. The task of 
>figuring out how (and when in the build process) to filter 
>BibleTime-specific warnings from all warnings is likely not a trivial
>one.
>
>Best regards,
>J
>
>On 18.10.20 01:50, Gary Holmlund wrote:
>> I found the issue. BibleTime is using a sword function, 
>> AddRenderFilters, which is deprecated. It was renamed to 
>> addRenderFilters (A -> a).
>> 
>> Gary
>> 
>> On 10/17/20 1:36 PM, Gary Holmlund wrote:
>>> I have found that sword is not calling the BibleTime OsisToHtml 
>>> filter. It is called with 1.8.1 and not with 1.9RC3. I am still 
>>> working on why this does not happen.
>>>
>>> Gary
>>>
>>>
>>> On 10/16/20 3:49 AM, Troy A. Griffitts wrote:
>>>> Hi Gary. No, nothing should have changed in that respect. Can
>anyone 
>>>> else confirm they are having trouble with these in our last RC or
>svn 
>>>> HEAD?
>>>>
>>>> On October 16, 2020 2:44:32 AM GMT+02:00, Gary Holmlund 
>>>> <gary.holmlund at gmail.com> wrote:
>>>> >I switched to sword 1.9 rc3 in BibleTime. I am on Fedora 33. Now I
>have
>>>> >
>>>> >lost cross references, footnotes, Jesus words, etc.
>>>> >
>>>> >Did any api for references change? Any other thoughts?
>>>> >
>>>> >Gary Holmlund
>>>> >
>>>> >
>>>> >_______________________________________________
>>>> >sword-devel mailing list: sword-devel at crosswire.org
>>>> >http://crosswire.org/mailman/listinfo/sword-devel
>>>> >Instructions to unsubscribe/change your settings at above page
>>>>
>>>> -- 
>>>> Sent from my Android device with K-9 Mail. Please excuse my
>brevity.
>>>> -- 
>>>> Sent from my Android device with K-9 Mail. Please excuse my
>brevity. 
>> _______________________________________________
>> sword-devel mailing list: sword-devel at crosswire.org
>> http://crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
>
>_______________________________________________
>sword-devel mailing list: sword-devel at crosswire.org
>http://crosswire.org/mailman/listinfo/sword-devel
>Instructions to unsubscribe/change your settings at above page

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-devel/attachments/20201018/5b649098/attachment.html>


More information about the sword-devel mailing list