<div dir="ltr">Hi DM,<div><br></div><div>How are you getting on with the fix?</div><div><br></div><div>Cheers</div><div>Martin</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 22 September 2015 at 07:50, Peter von Kaehne <span dir="ltr">&lt;<a href="mailto:refdoc@gmx.net" target="_blank">refdoc@gmx.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">To add to that there is of course the time honoured way of avoiding clobbering by adding a counter to a file name when things preexist. Maybe the installer could be made to add clobber preventing counters to Abbreviation and the user can then improve upon that. If they want to.<br>
<span class="HOEnZb"><font color="#888888"><br>
Peter<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
Sent from my phone. Apologies for brevity and typos.On 22 Sep 2015 01:26, DM Smith &lt;<a href="mailto:dmsmith@crosswire.org">dmsmith@crosswire.org</a>&gt; wrote:<br>
&gt;<br>
&gt; Peter,<br>
&gt; You are spot-on.<br>
&gt;<br>
&gt; I’d add, that for people that use an English Bible (e.g. KJV, ESV, WEB, NET, ...) in parallel to their local language, it is important that there isn’t an app clumsiness handling a clash.<br>
&gt;<br>
&gt; Note: The Thai KJV module in eBible repo now has an Abbreviation of ThaKJV.<br>
&gt;<br>
&gt; I was trying to make a change in the shared code (JSword) that would just work in the frontends (e.g. AndBible, BibleDesktop, STEP, …) without change. It was naive.<br>
&gt;<br>
&gt; DM<br>
&gt;<br>
&gt; &gt; On Sep 21, 2015, at 6:36 PM, Peter von Kaehne &lt;<a href="mailto:refdoc@gmx.net">refdoc@gmx.net</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt; Hi Martin,<br>
&gt; &gt;<br>
&gt; &gt; Just to be clear:<br>
&gt; &gt;<br>
&gt; &gt; The ModuleName remains the unique identifier for each module. We have<br>
&gt; &gt; introduced some changes how they are constructed for eBible to avoid an<br>
&gt; &gt; ever lengthening number of clashes of duplicates. eBible has a lot of<br>
&gt; &gt; texts we have too - and then it has 100s more. We are interested in teh<br>
&gt; &gt; 100s more, while we wanted to avoid too much grief from the duplicates.<br>
&gt; &gt;<br>
&gt; &gt; Hence the addition of a repo-identifier to the Modulename - which now<br>
&gt; &gt; becomes even more meaningless to users.<br>
&gt; &gt;<br>
&gt; &gt; So this is where Abbreviation comes in. But - Abbreviation does not<br>
&gt; &gt; need to be unique across all offered 1000s of bibles - just unique<br>
&gt; &gt; within a single user install. Thais call one of their Bibles apparently<br>
&gt; &gt; KJV - presumably because it is translated from that and that should be<br>
&gt; &gt; fine as long as no other KJV is installed. Then a solution must be<br>
&gt; &gt; found.<br>
&gt; &gt;<br>
&gt; &gt; So, if you want to use Abbreviation you need to ensure<br>
&gt; &gt;<br>
&gt; &gt; a) That ModuleName remains the internally used unique identifier<br>
&gt; &gt; b) that the app offers some option to resolve Abbreviation clashes. The<br>
&gt; &gt; user must be able to determine in the end how he wants his modules<br>
&gt; &gt; called and how he wants conflicts resolved, preferentially without fall<br>
&gt; &gt; back to a visible ModuleName - because they are now unreadable and will<br>
&gt; &gt; appear more or less meaningless to users.<br>
&gt; &gt;<br>
&gt; &gt; This solution has been discussed extensively on sword-devel and this is<br>
&gt; &gt; the best what we came up with.<br>
&gt; &gt;<br>
&gt; &gt; Peter<br>
&gt; &gt;<br>
&gt; &gt; On Mon, 2015-09-21 at 23:11 +0100, Martin Denham wrote:<br>
&gt; &gt;&gt; Thanks for finding the problem.  How long do you think before a fix<br>
&gt; &gt;&gt; is available?  I could go back to a pre-abbreviation version or<br>
&gt; &gt;&gt; temporarily revert to the build AB was using before which is about 6<br>
&gt; &gt;&gt; months old?  Maybe it wasn&#39;t such a good time to take a new version<br>
&gt; &gt;&gt; of JSword.  AB won&#39;t be using the ebible repo immediately.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; I don&#39;t anticipate big issues if everything was as it was before with<br>
&gt; &gt;&gt; the addition of getAbbreviation() which could be handled in the front<br>
&gt; &gt;&gt; end.  Maybe a new method, something like, getDisplayName() which has<br>
&gt; &gt;&gt; a little logic to determine if initials, abbreviation, or description<br>
&gt; &gt;&gt; is best used in the ui, but I haven&#39;t thought that through<br>
&gt; &gt;&gt; thoroughly.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; There seem to be some fundamental changes in standards adopted by the<br>
&gt; &gt;&gt; ebible repo.  I have not worked out the affect of them yet and did<br>
&gt; &gt;&gt; not follow all the discussion, but personally felt that it would have<br>
&gt; &gt;&gt; been simpler if it had adopted standards that were more similar to<br>
&gt; &gt;&gt; other repos.  However, I don&#39;t think it will be too difficult to make<br>
&gt; &gt;&gt; the ebible repo available via AB.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Cheers<br>
&gt; &gt;&gt; Martin<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; On 19 September 2015 at 21:16, DM Smith &lt;<a href="mailto:dmsmith@crosswire.org">dmsmith@crosswire.org</a>&gt;<br>
&gt; &gt;&gt; wrote:<br>
&gt; &gt;&gt;&gt; I had made getInitials return the abbreviation if there was one.<br>
&gt; &gt;&gt;&gt; And I had added getInternalName to return what getInitials used to<br>
&gt; &gt;&gt;&gt; be. I did this in BookMetaData but didn’t do something comparable<br>
&gt; &gt;&gt;&gt; in Book.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; It was bad to have changed the contract of getInitials. So I’m<br>
&gt; &gt;&gt;&gt; reverting that change. I’m adding getAbbreviation which will return<br>
&gt; &gt;&gt;&gt; the abbreviation if any and the initials otherwise. Hopefully, no<br>
&gt; &gt;&gt;&gt; one has used getInternalName yet. I’d rather drop it than deprecate<br>
&gt; &gt;&gt;&gt; it.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; I was trying to make it such that front-ends didn’t need to change<br>
&gt; &gt;&gt;&gt; to support Abbreviations.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; The remaining challenge regards sorting of book lists visible to<br>
&gt; &gt;&gt;&gt; users. They should either be sorted on what the user sees. So far<br>
&gt; &gt;&gt;&gt; they have either seen Initials or Descriptions. But now it should<br>
&gt; &gt;&gt;&gt; be Abbreviations or Descriptions.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; The other problem is that in the eBible repository has defined<br>
&gt; &gt;&gt;&gt; uniqueness of abbreviations to be within a language. The assumption<br>
&gt; &gt;&gt;&gt; is that a user will not install books in different languages. But<br>
&gt; &gt;&gt;&gt; we have to have a deterministic sort order.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; The other problem regards lookup. Adding Abbreviation into the<br>
&gt; &gt;&gt;&gt; search is a complication.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; — DM<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; On Sep 19, 2015, at 1:50 PM, DM Smith &lt;<a href="mailto:dmsmith@crosswire.org">dmsmith@crosswire.org</a>&gt;<br>
&gt; &gt;&gt;&gt;&gt; wrote:<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; It’s due to adding support for Abbreviation. There’s a bug in<br>
&gt; &gt;&gt;&gt;&gt; computing the zip file name.<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; For example Hindi ERV should try to download HinERV.zip but<br>
&gt; &gt;&gt;&gt;&gt; instead it is HindiERV.zip.<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; It has:<br>
&gt; &gt;&gt;&gt;&gt; [HinERV]<br>
&gt; &gt;&gt;&gt;&gt; Abbreviation=HindiERV<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; Working on a fix.<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt; In Him,<br>
&gt; &gt;&gt;&gt;&gt; DM<br>
&gt; &gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; On Sep 18, 2015, at 1:44 PM, DM Smith &lt;<a href="mailto:dmsmith@crosswire.org">dmsmith@crosswire.org</a>&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt; &gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; I&#39;ll look this weekend to see what I can find.<br>
&gt; &gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; Cent from my fone so theer mite be tipos. ;)<br>
&gt; &gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; On Sep 17, 2015, at 5:43 PM, Martin Denham &lt;<a href="mailto:mjdenham@gmail.com">mjdenham@gmail.com</a>&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt; &gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; I think this problem and other related problems in And Bible<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; might be related to the new version of JSword because I am<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; also having problems with certain books from other repos.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Since upgrading to the latest version of JSword I am seeing<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; unzip problems with certain files e.g. HindiERV, СПВП, and<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; many from eBible.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Also, one user has found that foreign characters in the conf<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Description field prevent previously installed modules<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; loading.  Coincidentally all the above modules have foreign<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; characters in their description field.  Does anybody recall a<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; change in this area during the last 6 months, which was the<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; time since my last build of jsword?<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; The error I get when attempting to install a zip is:<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Not a zip archive<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; java.util.zip.ZipException: Not a zip archive<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at java.util.zip.ZipFile.readCentralDir(ZipFile.java:385)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at java.util.zip.ZipFile.&lt;init&gt;(ZipFile.java:163)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at java.util.zip.ZipFile.&lt;init&gt;(ZipFile.java:119)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at org.crosswire.common.util.IOUtil.unpackZip(IOUtil.java:86)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; org.crosswire.jsword.book.install.sword.AbstractSwordInstalle<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; r.install(AbstractSwordInstaller.java:241)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; at<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; net.bible.service.download.DownloadManager$1.run(DownloadMana<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; ger.java:135)<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; I need to do more investigation but wondered if anybody had<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; any ideas regarding this problem.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Can the above modules be installed without problems in<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; BibleDesktop?<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Thanks<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; Martin<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; On 16 September 2015 at 13:26, DM Smith &lt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:dmsmith@crosswire.org">dmsmith@crosswire.org</a>&gt; wrote:<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; I haven’t gotten to it. Other than a file here or there.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; And mods.d.tar.gz. I’ve been frustrated by how much churn<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; it has had. And that nearly every module had some kind of<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; problem. I hope to look at the zip problem this weekend.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; I was going to work it into the release of BibleDesktop<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; (very soon). But now am thinking a follow-on release.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; — DM<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Sep 16, 2015, at 8:21 AM, Martin Denham &lt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:mjdenham@gmail.com">mjdenham@gmail.com</a>&gt; wrote:<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Has anybody else been testing the new eBible repo with<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; the JSword library?  I have had and am having various<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; problems.<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Martin<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;&gt; _______________________________________________<br>
&gt; &gt;&gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt; _______________________________________________<br>
&gt; &gt;&gt; jsword-devel mailing list<br>
&gt; &gt;&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt;&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; jsword-devel mailing list<br>
&gt; &gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; &gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; jsword-devel mailing list<br>
&gt; <a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
&gt; <a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
_______________________________________________<br>
jsword-devel mailing list<br>
<a href="mailto:jsword-devel@crosswire.org">jsword-devel@crosswire.org</a><br>
<a href="http://www.crosswire.org/mailman/listinfo/jsword-devel" rel="noreferrer" target="_blank">http://www.crosswire.org/mailman/listinfo/jsword-devel</a><br>
</div></div></blockquote></div><br></div>