This PR is in response to #944.
Changes: - Changed preferences to radio buttons to support multiple compare types. ![lineops-version-compare-pref](https://user-images.githubusercontent.com/15589754/89134371-9f6b3980-d4f2-11...) - add "version compare" using filevercmp from coreutils
Notes: - filevercmp is copied directly from coreutils's sort https://git.savannah.gnu.org/cgit/gnulib.git/tree/lib/filevercmp.c
I'm open to hear any suggestions/improvements. You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany-plugins/pull/993
-- Commit Summary --
* lineoperations: add coreutil file version compare * lineoperations: add ctypes from coreutils * lineoperations: bump version number * lineoperations: change checkbox to radio buttons * lineoperations: update documentation * lineoperations: remove c-ctype, use ctype * lineoperations: add POTFILES * lineoperations: add modifications info
-- File Changes --
M lineoperations/ChangeLog (4) M lineoperations/README (48) M lineoperations/src/Makefile.am (2) A lineoperations/src/filevercmp.c (186) A lineoperations/src/filevercmp.h (47) M lineoperations/src/lineoperations.c (2) M lineoperations/src/lo_fns.c (11) M lineoperations/src/lo_prefs.c (71) M lineoperations/src/lo_prefs.h (2) M po/POTFILES.skip (3)
-- Patch Links --
https://github.com/geany/geany-plugins/pull/993.patch https://github.com/geany/geany-plugins/pull/993.diff
Unfortunately filevercmp.c is GPL 3 and line operations is GPL 2 and those can't be combined, [see GNU](https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility)
Can I update the lineoperations license to GPLv3+ without issues? I guess I would have to get permission from anybody who made changes to lineoperations under the old license. Would changing this license to GPLv3 cause problems in the future?
I guess I would have to get permission from anybody who made changes to lineoperations under the old license.
That is what other projects that have changed licenses did yeah, my glance at git said not many people, and hopefully they will reply yes to a request for permission.
Would changing this license to GPLv3 cause problems in the future?
Doubt it, there is at least one plugin with GPL3 license already (commander) and Geany itself is GPL2+ which is compatible.
I am closing this since I cannot merge it until I get this licensing resolved. I will open it if I figure things out.
Closed #993.
Could the version-sort be done with `strverscmp()` instead of `filevercmp()` from coreutils?
There're some differences, but for the general use like "file-1.9" vs. "file-1.10" the `strverscmp()` should do just fine. And it's part of `glibc` (well, `#define _GNU_SOURCE 1`), so no need to copy the original sources into the project and thus deal with this license harmonization issue.
github-comments@lists.geany.org