chiark / gitweb /
Merge branch 'use_date_from_apk_in_known_apks' into 'master'
authorCiaran Gultnieks <ciaran@ciarang.com>
Wed, 13 Jul 2016 11:43:33 +0000 (11:43 +0000)
committerCiaran Gultnieks <ciaran@ciarang.com>
Wed, 13 Jul 2016 11:43:33 +0000 (11:43 +0000)
Pass a date from APK to KnownApks.recordapk()

... if --use-date-from-apks option is used.

Essentially, it just expands influence of `--use-date-from-apks` option to `stats/known_apks.txt`.

See merge request !141

fdroidserver/common.py
fdroidserver/update.py

index 2c2bb4e062b77472f7a2deb67d107897de7bc567..ce81b3855ba2f901690afc07d5a6284d4e3d189e 100644 (file)
@@ -1570,9 +1570,11 @@ class KnownApks:
 
     # Record an apk (if it's new, otherwise does nothing)
     # Returns the date it was added.
-    def recordapk(self, apk, app):
+    def recordapk(self, apk, app, default_date=None):
         if apk not in self.apks:
-            self.apks[apk] = (app, time.gmtime(time.time()))
+            if default_date is None:
+                default_date = time.gmtime(time.time())
+            self.apks[apk] = (app, default_date)
             self.changed = True
         _, added = self.apks[apk]
         return added
index dba1a40979b939c46288ee48db24e411c7c65340..e4d2ff3c2e04e6eea956541aa33e526cfb021e5e 100644 (file)
@@ -784,13 +784,14 @@ def scan_apks(apps, apkcache, repodir, knownapks, use_date_from_apk=False):
                 shutil.copyfile(baseline,
                                 os.path.join(get_icon_dir(repodir, '0'), iconfilename))
 
+            if use_date_from_apk and manifest.date_time[1] != 0:
+                default_date_param = datetime(*manifest.date_time).utctimetuple()
+            else:
+                default_date_param = None
+
             # Record in known apks, getting the added date at the same time..
-            added = knownapks.recordapk(apk['apkname'], apk['id'])
+            added = knownapks.recordapk(apk['apkname'], apk['id'], default_date=default_date_param)
             if added:
-                if use_date_from_apk and manifest.date_time[1] != 0:
-                    added = datetime(*manifest.date_time).timetuple()
-                    logging.debug("Using date from APK")
-
                 apk['added'] = added
 
             apkcache[apkfilename] = apk