[sword-devel] Making better use of the CrossWire GitHub project ?

Arnaud Vié unas.zole+avie at gmail.com
Sun Feb 18 12:56:33 EST 2024


Hi Peter and Troy, and thanks for the welcome !


Thanks Peter for the historical context, it does explain where things come
from.
I do have a lot of things to answer though :-)

The SVN site for libsword is the current, not old. It is just that very
> little changes over long stretches.


Indeed, I understand that the libsword SVN is still actively used for
development. That's why I mentioned it as the least "urgent" thing to
change in my opinion - as long as it works like this for its main
contributors.
I do think a move to git(hub or lab) would be beneficial for the long term
though - for the usual technical reasons, but also more importantly for the
visibility of the project and its ability to attract younger contributors
for long term maintenance, which is always a challenge for open source
projects.

Jsword is similarly old, largely feature complete and little changes Two
> big projects use it and contribute back to it.


That's where I'll respectfully disagree.

First, "feature complete" is never completely true for an open source
project : there is always room for improvement and evolution driven by the
community.
For example, I recently contributed to the andbible Jsword fork to properly
support versification mappings for deuterocanonical texts, and I aim in the
future to provide some support for other kinds of parallels (in particular
eusebian parallels which is currently absent as far as I know).
Similarly, once I formalise the OSIS evolution I want to propose for
modular versifications, and if it gets approved, it will need to be
implemented in both libsword and jsword.
So there is in fact a lot of future potential activity to be done on jsword
- as in pretty much all open source projects. It's just a matter of giving
a visible and lively place for the community to propose ideas and
implementations.

Second, I'll argue that you believe it's "feature complete" only because
the main repo is inactive and unmaintained, thus you've actually lost all
visibility of how the project is actually used.
Consider that AndBible, probably the most widely used application based on
jsword, had to build its own fork to be able to integrate bugfixes (see all
the bugfix PRs Tuomas tried to open on the main repo since 2019
<https://github.com/crosswire/jsword/pulls?q=is%3Aopen+is%3Apr> before
resigning himself to build his own fork), and they're they only ones
publishing a jsword maven artifact.
Because the andbible fork is the only one alive and readily usable, it's
also the one that people actually use for other independant projects (as do
I in a small project I haven't shared publicly yet, in fact).

But Tuomas, while being a great and proactive android dev, is not a java
"backend" expert, and not an OSIS/Sword expert. I'm pretty sure he would be
glad if CrossWire gathered a renewed community around the project to take
back ownership. Which is what I'm volunteering to help with.

Again, I really mean no offense to anyone with this - in particular to the
original jsword developer, dmsmith, that did a great work with it until
2019.
I'm worried so much about the status of jsword precisely because I think
it's a great library, with lots of well designed components, which needs
just a small refresh to be more easily maintaineable and accessible in the
modern world.

OSIS - crosswire is the principal user, but as it stands it is an
> international standard, and not under our control.


That's a good point, but is anyone actually still in control ? From what I
understand, the organisation "bibletechnologies.net" that originally
defined it has disappeared, and from what I've seen, the only people
keeping some public knowledge of OSIS are crosswire, and the only projects
actively using OSIS are crosswire projects (the sword ecosystem).
When CrossWire created an osis-core mailing list and started maintaining
amended versions, I think it implicitly recognised that it had become the
lead authority on the topic. :-)



Yes, last year we had a discussion on the CrossWire and git topic and you
> can see the discussion in the mail archives here.


Thanks Troy for the link, very interesting !
I see mostly discussion on the merits of GitHub vs. GitLab. I have no
definitive opinion between the two : philosophically I'm more inclined to
use the open source software (so GitLab is good), but in practice my main
worry in this thread is to improve visibility and attractiveness for
contributors (on that part, GitHub has the advantage).
My point is, even if in the end we use GitLab, we should at least update
the GitHub project to be clean and contain links to the relevant GitLab
projects, to make it a proper entrypoint.

Regarding OSIS, can you post here what proposal you would like to make? I
> am sure many people here will have comments on your idea.


Thanks for your interest !
I'm still formalising the proposal (writing an accurate description of all
the principles and objectives behind it), but I'll open a dedicated thread
in this mailing list very soon.

Cheers,

Arnaud

Le dim. 18 févr. 2024 à 12:35, Troy A. Griffitts <scribe at crosswire.org> a
écrit :

> Dear Arnaud and others,
>
> Peter has done a good job summarizing.
>
> Yes, last year we had a discussion on the CrossWire and git topic and you
> can see the discussion in the mail archives here.
>
> https://crosswire.org/pipermail/sword-devel/2023-March/subject.hYes, last
> year we had a discussion on the CrossWire and git topic and you can see the
> discussion in the mail archives here.tml
> <https://crosswire.org/pipermail/sword-devel/2023-March/subject.html>
>
> Some progress has been made.
>
> Regarding OSIS, can you post here what proposal you would like to make? I
> am sure many people here will have comments on your idea.
>
> I am happy for your interest to get involved and for your zeal to see
> things more visible and active.
>
> Welcome,
>
> Troy
>
>
> On February 18, 2024 00:57:34 MST, Peter von Kaehne <refdoc at gmx.net>
> wrote:
>
>> Hi Arnaud,
>>
>> It makes sense to understand some things better when seen in history:
>>
>> There are three core projects to CrossWire - libsword,  jsword and the
>> text modules - all others are independent but related users.
>>
>> The SVN site for libsword is the current, not old. It is just that very
>> little changes over long stretches. Libsword is 30 + year old and does
>> its job. Errors and bugs get corrected , big proposals happen once in a
>> long while and then come into the code. Development happens in spurts, once
>> every few years currently - but as users (other projects) are on disparate
>> platforms consensus is needed.
>>
>> Jsword is similarly old, largely feature complete and little changes Two
>> big projects use it and contribute back to it.
>>
>> Substantial internal changes would require consensus across these
>> projects at the very least.
>>
>> Most current development happens in programmes using it and in module
>> development.
>>
>> The GitLab site was created by some of us who create modules for texts
>> which are in the public domain but have little other exposure
>>
>> OSIS - crosswire is the principal user, but as it stands it is an
>> international standard, and not under our control. We do maintain some
>> internal amendments as the standard has not been updated otherwise since
>> creation.
>>
>>
>>
>>
>> Peter
>>
>> Sent from Outlook for iOS <https://aka.ms/o0ukef>
>>
>> ------------------------------
>> *From:* sword-devel <sword-devel-bounces at crosswire.org> on behalf of
>> Arnaud Vié <unas.zole+avie at gmail.com>
>> *Sent:* Saturday, February 17, 2024 11:02 pm
>> *To:* SWORD Developers' Collaboration Forum <sword-devel at crosswire.org>
>> *Subject:* Re: [sword-devel] Making better use of the CrossWire GitHub
>> project ?
>>
>> Thanks Matej for all the information !
>> (and your git mirrror, that will be quite helpful :-) )
>>
>> Is the gitlab project referenced anywhere on the crosswire website ?
>> Because I've been looking all over and only found the svn link ^^'
>> That's exactly the kind of problems I'm talking about when I say the
>> project's visibility could be improved, to make it more possible for new
>> people to get interested and join !
>> I don't have anything against GitLab, but GitHub is by far more popular.
>> People can randomly search for projects on GitHub - but virtually no one
>> searches for projects on GitLab if they don't already know that the project
>> is hosted there. So if we use GitLab for all development, we should at
>> least put some links in the GitHub project description and on the crosswire
>> website to tell people where to go.
>>
>>
>> Regarding the GitLab project, just like pinoaffe I can't see any
>> repository related to the OSIS specification, only bible modules and a
>> "script" repo.
>>
>>
>> And by the way, given the number of module (ie "data") repositories
>> present, another suggestion I can make is to keep the repositories related
>> to core functionality (spec, librairies, etc.) in a separate project, as
>> their contributors will likely be very different. As a developer, finding a
>> code repository in the middle of 6 pages of data repos is not very
>> convenient.
>> In that regards, it could even make sense to keep gitlab for data, and
>> use github for code - or just create a separate gitlab project for code
>> repositories, whatever people prefer.
>>
>>
>> Finally, for jsword, to be honest I'm not really worried about its
>> "organizational" status : after 5 years without breathing it's
>> unambiguously dead.
>> My request is to mostly to try to reach whoever has admin rights on the
>> "crosswire" GitHub project, and see if they would be willing to let me take
>> over jsword to refresh it :-)
>>
>>
>> Le sam. 17 févr 2024 à 21:12, Matěj Cepl <mcepl at cepl.eu> a écrit :
>>
>>> On Sat Feb 17, 2024 at 4:46 PM CET, Arnaud Vié wrote:
>>> > I think a lot of that could be improved by making better use of the
>>> > crosswire github project <https://github.com/crosswire>, which is
>>> nowadays
>>> > the first contact most young developers will have with these crosswire
>>> > projects.
>>>
>>> https://github.com/crosswire is mostly dead. There
>>> is more life (especially for modules) at
>>> https://gitlab.com/crosswire-bible-society and then there is
>>> another GitLab at https://git.crosswire.org/ (for contributors
>>> only).
>>>
>>> >    - *Revive the jsword github repository*.
>>>
>>> jsword is organizationally in many aspects a separate project from
>>> libsword
>>>
>>> >       - *Create a new Git repository for the OSIS specification*.
>>>
>>> See on gitlab.
>>>
>>> >       - Ideally, I'd also suggest *moving the C++ sword code to
>>> github*.
>>> >    Having it only on an old SVN repo
>>> >    <https://crosswire.org/svn/sword/trunk/>, not browsable or
>>> searchable
>>> >    online, really harms its visibility. I used a little bit of SVN
>>> while in
>>> >    engineering school 12 years ago, but I doubt that most young devs
>>> nowadays
>>> >    even know about it.
>>>
>>> I don’t even comment on this one any more (just mirror it to
>>> https://git.cepl.eu/cgit/sword/), because where there is no
>>> advice, there is no help.
>>>
>>> Best,
>>>
>>> Matěj
>>>
>>> --
>>> http://matej.ceplovi.cz/blog/, @mcepl at floss.social
>>> GPG Finger: 3C76 A027 CA45 AD70 98B5  BC1D 7920 5802 880B C9D8
>>>
>>> Why should I travel, when I’m already there?
>>>     -- Bostonian lady, when being asked why she never visited
>>>         other places than Boston
>>>
>>> _______________________________________________
>>> 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.
> _______________________________________________
> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-devel/attachments/20240218/aa4d4843/attachment-0001.htm>


More information about the sword-devel mailing list