darktable-org / darktable

darktable is an open source photography workflow application and raw developer
https://www.darktable.org
GNU General Public License v3.0
9.69k stars 1.14k forks source link

Map-View: OpenStreetMap (c) contribution terms missing #3443

Closed c-h-r-i-s-t-i-a-n closed 3 years ago

c-h-r-i-s-t-i-a-n commented 4 years ago

To Reproduce Steps to reproduce the behavior:

  1. Go to MAP view

Expected behavior OSM contribution term should be shown in the map.

Platform (please complete the following information):

Additional context See: https://www.openstreetmap.org/copyright

parafin commented 4 years ago

Wasn't this already resolved: https://redmine.darktable.org/issues/9586 ?

parafin commented 4 years ago

Right, it was wrapped in ifdef in commit 85b9dc8a, but that define isn't set anywhere.

parafin commented 4 years ago

Someone should write some cmake magic to define that macros or we should hard require osm-gps-map 1.1.0 and revert that commit. @TurboGit, what do you think?

TurboGit commented 4 years ago

@parafin: looks like we have the cmake magic in src/CMakeLists.txt

    if(NOT OSMGPSMAP_VERSION VERSION_LESS 1.1.0)
      add_definitions("-DHAVE_OSMGPSMAP_110_OR_NEWER")
    endif()
    if(OSMGPSMAP_VERSION VERSION_GREATER 1.1.0)
      add_definitions("-DHAVE_OSMGPSMAP_NEWER_THAN_110")
    endif()

I suppose that 1.1.0 is used at compile time, but the copyright is displayed only for version superior to 1.1.0. So all looks corect to me.

parafin commented 4 years ago

Ah, sorry, failed to see it... Then there's no bug, it's just that upstream haven't done a release for 4 years, so that feature isn't included in packages.

c-h-r-i-s-t-i-a-n commented 4 years ago

In RC2 still there is no proper attribution for OpenStreetMap. (OS=Win10)

SK53 commented 4 years ago

Its no good just closing issues you need to resolve it.

parafin commented 4 years ago

It was fixed upstream in https://github.com/nzjrs/osm-gps-map/pull/48 but there was no release of osm-gps-map since forever. darktable includes code to show that widget. Not sure what else should we do. What about bugging osm-gps-map developers to do a release?

Hedaja commented 4 years ago

It doesn't seem like the developer is still maintaining the package. No comments on the questions about releasing a new version. I looked through all the forks but there was non with an active development. Only solution seems to be to make a fork and release a new version yourselves.

parafin commented 4 years ago

Yeah, I'm not sure any of darktable developers are interested in doing so. So I see the following options:

  1. darktable keep using vanilla osm-gps-map, which mean no copyright notice with the latest release of the library
  2. darktable removes map view feature
  3. some interested party forks osm-gps-map, do a release, make sure that it's propagated to all (most) Linux distributions out there
matkoniecz commented 3 years ago

Note that it does not matter what went wrong in dependency chain, it is responsibility of darktable to not violate OpenStreetMap copyright.

parafin commented 3 years ago

Note that darktable is free software developed by community, making it your responsibility too (no idea who you've meant by "darktable" in your statement). Feel free to submit a pull request fixing this issue.

Having said that, I personally still don't believe laying blame on darktable is factually correct. We can't control what version of dependencies are used for building the application, users/packagers also can patch any libraries any way they desire. If you take current osm-gps-map from git then copyright notice will be displayed correctly. Packagers can for example back-port that patch to last stable release. And logically it's the code that handles the download of map data to take care of copyright requirements - there are multiple map sources available in osm-gps-map (e.g. Google), and OpenStreetMap copyright does not apply to them all.

Anyway, my point is that repeating the same statement won't change anything, so I'm not sure what was the purpose of previous comment. You could have at least presented some arguments for your opinion.

parafin commented 3 years ago

https://wiki.openstreetmap.org/wiki/Lacking_proper_attribution#List_of_usages_lacking_proper_attribution - this page lists osm-gps-map (and darktable, with incorrect way to write the name). So I don't understand the logic here - do you consider the osm-gps-map issue fixed (since it's fixed in git) or not (requiring a formal release of the package)?

matkoniecz commented 3 years ago

Note that darktable is free software developed by community, making it your responsibility too

Nope, it is not my responsibility at all. I am active OpenStreetMap contributor but I never used, needed or benefited from this software.

I am happy to see OpenStreetMap data used, but you must obey its license. It is not requiring much, just clearly visible attribution.

matkoniecz commented 3 years ago

If you take current osm-gps-map from git then copyright notice will be displayed correctly.

Thanks!

Is it applying also to latest stable release listed in https://github.com/darktable-org/darktable#latest-release ?

darktable, with incorrect way to write the name

Which one is preferred?

parafin commented 3 years ago

If you take current osm-gps-map from git then copyright notice will be displayed correctly.

Thanks!

Is it applying also to latest stable release listed in https://github.com/darktable-org/darktable#latest-release ?

Yes, since the darktable's code has been modified to request osm-gps-map to display the notice more than 3 years ago. But actually now thinking about it - just using osm-gps-map from git might not work after all, because we test for its version and it wasn't bumped since release. So this will require some changes to really work. Anyway, the real problem here is status of osm-gps-map project which is discussed in #6763. So I see 4 ways for copyright issue to be resolved without users/packagers using non-released version of dependencies:

  1. someone takes ownership of osm-gps-map and does a new release;
  2. we add custom code to darktable itself to display the notice;
  3. we switch to some other map library;
  4. we get rid of map view altogether (if 1 and 3 don't happen bit-rot of osm-gps-map will force us to take this options anyway).

I'll reopen this issue, but I don't see anyone volunteering to implement any of these options. Saying that "we" must obey something won't force anyone here to do unpaid work. Don't get me wrong, I'm all for respecting the authorship of people's work, but this won't happen magically.

darktable, with incorrect way to write the name

Which one is preferred?

https://www.darktable.org/about/faq/#faq-spelling

johnny-bit commented 3 years ago

@matkoniecz - This is unfortunate state with dependency chain.

As @parafin said, we (as most of darktable developers are photographers too) respect authorship and copyright of others, but the problem lies (IMO) with the library darktable uses to display maps and their data (including copyright notices). The problem is fixed in library git version, but we can't force all distros to ship unreleased code or depend on it's presence for unpatched stuff.

In regards to 4 ways we can "make it work":

  1. The osm-gps-map needs a maintainer since author doesn't have time to maintain it any more (https://github.com/nzjrs/osm-gps-map/issues/71#issuecomment-691966608). If someone could "just release the version with the fix applied" then we'd have no problems... And it would magically "fix" all copy notice offenders depending on the lib.
  2. Writting a code that might be not necessary, that fixes bug that's already fixed in udes library for over a half a decade (just not yet releasd) and which would have to be either guarded with ifdefs or removed once said library is updated/replaced seems like a "waste of time" even if it is for good cause.
  3. As I've analyzed possible alternatives in https://github.com/darktable-org/darktable/issues/6763 there are 2: libchamplain which is already obsolete (depends on dead clutter) or libshumate which is not yet released. So... "no viable alternative" :/
  4. Ideally we don't want to get rid of map view since it's one of those "must have" features for DAM.

So the "real" fix to this issue is for someone to take over maintenance of osm-gps-map or wait for release of libshumate and migrate map view to it (which might be also blocked by gtk4 migration) stuff :/

parafin commented 3 years ago

Yes, situation is unfortunate. After 3 years I think we have to face the fact osm-gps-map release might never happen, so our fix for this issue, while technically correct, doesn't actually solve it in any practical way. I really don't think that "we" "must" do something here or that "darktable" is "responsible", but it would be good in general to deal with this problem one way or another. Maybe someone will step up to implement option 2 for the time being.

matkoniecz commented 3 years ago

I'll reopen this issue, but I don't see anyone volunteering to implement any of these options. Saying that "we" must obey something won't force anyone here to do unpaid work. Don't get me wrong, I'm all for respecting the authorship of people's work, but this won't happen magically.

Oh I get it, and situation of "community based project has no time to fix bitrot in dependency chain resulting in missing attribution, despite that it is actually implemented in upstream" is completely different from "company worth 500 000 000 $ decides to have higher profits rather than fix copyright violation".

Especially as you at least have tried to fix it.

johnny-bit commented 3 years ago

OK, I'll see what I can do now... give me 2-3 weeks...

johnny-bit commented 3 years ago

osm-gps-map has just had a new release - 1.2.0, which covers the copyright issue and couple more.

osm-gps-map is in need of contributors

So... the question is: can we finally close the issue and have open street map wiki updated since now after release 1.2.0 osm-gps-map (and by extension darktable) is compatible with OpenStreetMap terms :)

parafin commented 3 years ago

Have you tested that darktable built with osm-gps-map-1.2.0 shows the copyright notice? Meaning all parts (cmake magic, gtk magic, etc.) work? If so, I would say close this issue as fixed and wait for package updates downstream after that.

johnny-bit commented 3 years ago

Works for me and @phweyland :)

matkoniecz commented 3 years ago

THANKS!

Sorry for a potentially confused question: so it will appear in the next release, right?

I looked at https://github.com/darktable-org/darktable/releases/tag/release-3.4.1 and it was not listed, so presumably not yet fixed in a released version.

I am asking as I want to update https://wiki.openstreetmap.org/wiki/Lacking_proper_attribution#List_of_usages_lacking_proper_attribution

I assumed that it is will be fixed in darktable itself by bumping minimal required version of a dependency but I may be 100% wrong and confused.

parafin commented 3 years ago

I don't think we will bump minimal required version. No changes in darktable source code were made, so it's not going to be in release notes either. It's now up to various distribution maintainers to update the osm-gps-map package to the latest release, so that users will get an update. In case of macOS build it's macports project, in case of Windows it's msys2 I think, and for Linux the list is very long.

matkoniecz commented 3 years ago

Ideally dependency minimum version would be bumped to ensure that since version X attribution is assured, but that would probably have bunch of negative consequences.

I moved it to fixed on https://wiki.openstreetmap.org/wiki/Lacking_proper_attribution with note "confusing state - due to dependency chain and packaging chain" and quote about distribution maintainers.

Thanks for putting effort into fixing this!