Zandronum Chat on our Discord Server Get the latest version: 3.1
Source Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003537DoomseekerIP2Cpublic2018-10-06 11:262018-12-17 03:34
ReporterWubTheCaptain 
Assigned ToZalewa 
PrioritynormalSeveritytweakReproducibilityN/A
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version1.1 
Target Version1.2Fixed in Version1.2 
Summary0003537: Unbake IpToCountry.dat from executable (resources.qrc), make it optional
DescriptionWith IpToCountry.dat being CC BY-SA 4.0 licensed (MaxMind GeoLite2), this has only one-way compatibility of binary distribution under terms of GPLv3-only. Apparently this is undesirable for Zalewa and/or Blzut3 (the maintainers), but seemingly not a blocking issue.

Additionally, an older CC BY-SA 3.0 IP2C dataset in the binary would create a license violation due to having no compatibility at all with LGPLv2.1+/GPLv2+.

Some ideas were proposed in ticket 0003512 of making this (IP2C) optional, so that binaries could be possibly distributed under LGPLv2.1+.
Attached Files

- Relationships
related to 0003512closedZalewa MaxMind GeoLite2: Update from CC BY-SA 3.0 licensed dataset to newer CC BY-SA 4.0 licensed work 
related to 0003237closedWubTheCaptain Non-free files and copyright issues in source archive 
parent of 0003543closedWubTheCaptain "This program uses GeoLite2 database..." is displayed in the About dialog regardless if the database is loaded or not 
parent of 0003548closedBlzut3 Release scripts don't bundle IP2C 
related to 0003538closedZalewa The preferred form of IP2C database for modifications (CSV) is not currently distributed 

-  Notes
User avatar (0019934)
WubTheCaptain (reporter)
2018-10-06 11:27
edited on: 2018-10-06 11:32

0003512:0019932:

Quote from Zalewa
Quote from Zalewa

6. Remove IpToCountry.dat from resources.qrc
7. Get Doomseeker into state where it can run without the IP2C database altogether. The '?' flags shouldn't be displayed. Instead no flags should be displayed apart the icons for LAN and localhost servers.
8. Ensure Doomseeker is capable of reading the personally downloaded IP2C database from the "IP2C update" feature without having any other copy of the database lying around. The country flags should reappear.
9. Add IpToCountry.dat from the repo to Doomseeker's distribution/installation as a separate file
10. Ensure Doomseeker will read this file if there's no personally downloaded IP2C database.
11. Ensure Doomseeker will read the personally downloaded IP2C database instead of the preinstalled file if such downloaded IP2C database is ready.


This part should be covered by this commit:'https://bitbucket.org/Doomseeker/doomseeker/commits/c0cce7ea738d5570e12a0d4adfd26ffe672cb7c0
[^]'

User avatar (0019982)
Zalewa (developer)
2018-10-07 09:15

Solution furthered by this commit:'https://bitbucket.org/Doomseeker/doomseeker/commits/ad48cade47f154f56970ecf117a8306748c08199 [^]'

DOOMSEEKER_IP2C_DAT option was added to CMake to make the IpToCountry.dat installation truly optional. This option has no default value as IpToCountry.dat file was removed from the main repo. Despite my concerns about complicating the build I have moved all IP2C related stuff to a separate doomseeker-blobs repository here:'https://bitbucket.org/Doomseeker/doomseeker-blobs/src [^]'

I suppose `releasescripts` will need to be updated now to accomodate for that.
User avatar (0019983)
Zalewa (developer)
2018-10-07 09:26

Compilation instructions updated:'https://bitbucket.org/Doomseeker/doomseeker/commits/13bf2040a055181d3403a575a489701c03f214bc [^]'
User avatar (0020055)
WubTheCaptain (reporter)
2018-10-09 11:27
edited on: 2018-10-09 11:28

[11:26:07] Please wait. IP2C database is being read. This may take some time.
[11:26:07] Parsing IP2C database: data:IpToCountry.dat
[11:26:07] Unable to open IP2C file.
[11:26:08] Init finished.
================================
[11:26:08] IP2C parsing thread has finished.
[11:26:08] Failed to read IP2C database. Reverting...
[11:26:08] IP2C revert attempt failed. Nothing to go back to.
[11:26:08] Trying to use preinstalled IP2C database.
[11:26:08] Parsing IP2C database: data:IpToCountry.dat
[11:26:08] Unable to open IP2C file.
[11:26:08] Total refresh initialized!
[11:26:08] IP2C parsing thread has finished.
[11:26:08] Failed to read IP2C fallback. Stopping.


Probably as intended? Although, the paths are not obvious.

User avatar (0020057)
WubTheCaptain (reporter)
2018-10-09 11:41
edited on: 2018-10-09 11:43

There's a caveat to know here:
  • Qt4 uses `$HOME/.local/share/data/doomseeker`.
  • Qt5 uses `$HOME/.local/share/doomseeker`.

Migrating from Qt4 to Qt5 will not find the IpToCountry.dat file again. Unlike demos directory, no symlink is created for the transition. This might be acceptable, though.

User avatar (0020066)
Zalewa (developer)
2018-10-09 19:27

Quote from WubTheCaptain


[11:26:07] Parsing IP2C database: data:IpToCountry.dat


I think it would be preferable to print the actual path from which the database is loaded. I'll amend that.

Quote from WubTheCaptain

Migrating from Qt4 to Qt5 will not find the IpToCountry.dat file again. Unlike demos directory, no symlink is created for the transition. This might be acceptable, though.

We trust Qt with this one. I don't think we have code that migrates from Qt4 to Qt5. We only have code that migrates from pre-1.2 our own paths schema to 1.2 paths that come from QStandardPaths (Qt5) / QDesktopServices (Qt4).

This discrepancy may be a problem, though. Perhaps it deserves a separate ticket as it may cause people to lose data when they migrate from Qt4 version to Qt5.
User avatar (0020081)
Zalewa (developer)
2018-10-11 19:12
edited on: 2018-10-11 19:12

This commit should improve the logged path as well as explicitly handle the cases where the database is not available:
'https://bitbucket.org/Doomseeker/doomseeker/commits/be66799d17da33514b7095e0744d08d71e1892b1 [^]'

Also, a related minor text fix:
'https://bitbucket.org/Doomseeker/doomseeker/commits/b9e0c79a5b5ef422e46c88547cb33be986b7e4b7 [^]'

User avatar (0020087)
WubTheCaptain (reporter)
2018-10-12 20:57

[20:53:05] Initializing IP2C database.
[20:53:05] Initializing passwords configuration file.
[20:53:05] Initializing configuration for plugins.
[20:53:05] Initializing IRC configuration file.
[20:53:05] Setting IRC INI file: /home/wub/.config/doomseeker/doomseeker-irc.ini
[20:53:05] Starting refreshing thread.
[20:53:05] Preparing GUI.
[20:53:05] Did not find any IP2C database. IP2C functionality will be disabled.
[20:53:05] You may install an IP2C database from the "File" menu.
[20:53:05] Init finished.
================================
[20:53:05] Total refresh initialized!
[20:53:08] Finished refreshing. Servers on the list: 480 (+1 custom, +0 LAN). Players: 124.

Issue Community Support
This issue is already marked as resolved.
If you feel that is not the case, please reopen it and explain why.
Supporters: No one explicitly supports this issue yet.
Opponents: No one explicitly opposes this issue yet.

- Issue History
Date Modified Username Field Change
2018-10-06 11:26 WubTheCaptain New Issue
2018-10-06 11:26 WubTheCaptain Status new => assigned
2018-10-06 11:26 WubTheCaptain Assigned To => Zalewa
2018-10-06 11:27 WubTheCaptain Note Added: 0019934
2018-10-06 11:28 WubTheCaptain Note Edited: 0019934 View Revisions
2018-10-06 11:28 WubTheCaptain Relationship added related to 0003512
2018-10-06 11:29 WubTheCaptain Status assigned => needs testing
2018-10-06 11:32 WubTheCaptain Note Edited: 0019934 View Revisions
2018-10-06 11:34 WubTheCaptain Description Updated View Revisions
2018-10-06 11:43 WubTheCaptain Relationship added child of 0003237
2018-10-06 11:45 WubTheCaptain Description Updated View Revisions
2018-10-06 12:00 WubTheCaptain Relationship added related to 0003538
2018-10-06 12:03 WubTheCaptain Severity feature => tweak
2018-10-07 09:15 Zalewa Note Added: 0019982
2018-10-07 09:26 Zalewa Note Added: 0019983
2018-10-07 09:27 Zalewa Assigned To Zalewa => Blzut3
2018-10-07 09:27 Zalewa Status needs testing => assigned
2018-10-07 10:52 WubTheCaptain Relationship added parent of 0003543
2018-10-09 11:16 WubTheCaptain Relationship added parent of 0003548
2018-10-09 11:17 WubTheCaptain Assigned To Blzut3 => Zalewa
2018-10-09 11:17 WubTheCaptain Status assigned => needs testing
2018-10-09 11:27 WubTheCaptain Note Added: 0020055
2018-10-09 11:28 WubTheCaptain Note Edited: 0020055 View Revisions
2018-10-09 11:33 WubTheCaptain Note Added: 0020056
2018-10-09 11:34 WubTheCaptain Note Deleted: 0020056
2018-10-09 11:41 WubTheCaptain Note Added: 0020057
2018-10-09 11:41 WubTheCaptain Note Edited: 0020057 View Revisions
2018-10-09 11:43 WubTheCaptain Note Edited: 0020057 View Revisions
2018-10-09 11:43 WubTheCaptain Note Edited: 0020057 View Revisions
2018-10-09 19:27 Zalewa Note Added: 0020066
2018-10-09 19:27 Zalewa Status needs testing => assigned
2018-10-11 19:12 Zalewa Note Added: 0020081
2018-10-11 19:12 Zalewa Status assigned => needs testing
2018-10-11 19:12 Zalewa Note Edited: 0020081 View Revisions
2018-10-12 20:57 WubTheCaptain Note Added: 0020087
2018-10-12 20:57 WubTheCaptain Status needs testing => resolved
2018-10-12 20:57 WubTheCaptain Fixed in Version => 1.2
2018-10-12 20:57 WubTheCaptain Resolution open => fixed
2018-10-12 20:57 WubTheCaptain Relationship replaced child of 0003548
2018-10-13 16:35 WubTheCaptain Relationship replaced parent of 0003548
2018-10-13 17:26 WubTheCaptain Relationship replaced related to 0003237
2018-10-27 22:53 WubTheCaptain Status resolved => closed
2018-12-17 03:34 WubTheCaptain Category Suggestion => IP2C






Questions or other issues? Contact Us.

Links


Copyright © 2000 - 2024 MantisBT Team
Powered by Mantis Bugtracker