Remove timestamp based filelist file for tracking Python dependencies

Each Python module will generate a zip file containing source & data
files. The Python binary will collect all its dependencies and use
merge_zips to merge each zip file to create a final .par file.

Test: m -j checkbuild && real examples:
Bug: b/70568913

Change-Id: I9ff232d461d33e1c06026e7dcb5b124bf02c3ce5
diff --git a/python/python_test.go b/python/python_test.go
index 176c6ec..67b1982 100644
--- a/python/python_test.go
+++ b/python/python_test.go
@@ -29,12 +29,11 @@
 )
 
 type pyModule struct {
-	name           string
-	actualVersion  string
-	pyRunfiles     []string
-	depsPyRunfiles []string
-	parSpec        string
-	depsParSpecs   []string
+	name          string
+	actualVersion string
+	pyRunfiles    []string
+	srcsZip       string
+	depsSrcsZips  []string
 }
 
 var (
@@ -313,14 +312,10 @@
 						"runfiles/e/default_py3.py",
 						"runfiles/e/file4.py",
 					},
-					depsPyRunfiles: []string{
-						"runfiles/a/b/file1.py",
-						"runfiles/c/d/file2.py",
-					},
-					parSpec: "-P runfiles/e -C dir/ -l @prefix@/.intermediates/dir/bin/PY3/dir_.list",
-					depsParSpecs: []string{
-						"-P runfiles/a/b -C dir/ -l @prefix@/.intermediates/dir/lib5/PY3/dir_.list",
-						"-P runfiles/c/d -C dir/ -l @prefix@/.intermediates/dir/lib6/PY3/dir_.list",
+					srcsZip: "@prefix@/.intermediates/dir/bin/PY3/bin.zip",
+					depsSrcsZips: []string{
+						"@prefix@/.intermediates/dir/lib5/PY3/lib5.zip",
+						"@prefix@/.intermediates/dir/lib6/PY3/lib6.zip",
 					},
 				},
 			},
@@ -356,8 +351,9 @@
 					testErrs = append(testErrs,
 						expectModule(t, ctx, buildDir, e.name,
 							e.actualVersion,
-							e.pyRunfiles, e.depsPyRunfiles,
-							e.parSpec, e.depsParSpecs)...)
+							e.srcsZip,
+							e.pyRunfiles,
+							e.depsSrcsZips)...)
 				}
 			}
 			fail(t, testErrs)
@@ -388,9 +384,8 @@
 	return
 }
 
-func expectModule(t *testing.T, ctx *android.TestContext, buildDir, name, variant string,
-	expPyRunfiles, expDepsPyRunfiles []string,
-	expParSpec string, expDepsParSpecs []string) (testErrs []error) {
+func expectModule(t *testing.T, ctx *android.TestContext, buildDir, name, variant, expectedSrcsZip string,
+	expectedPyRunfiles, expectedDepsSrcsZips []string) (testErrs []error) {
 	module := ctx.ModuleForTests(name, variant)
 
 	base, baseOk := module.Module().(*Module)
@@ -398,47 +393,36 @@
 		t.Fatalf("%s is not Python module!", name)
 	}
 
-	actPyRunfiles := []string{}
+	actualPyRunfiles := []string{}
 	for _, path := range base.srcsPathMappings {
-		actPyRunfiles = append(actPyRunfiles, path.dest)
+		actualPyRunfiles = append(actualPyRunfiles, path.dest)
 	}
 
-	if !reflect.DeepEqual(actPyRunfiles, expPyRunfiles) {
+	if !reflect.DeepEqual(actualPyRunfiles, expectedPyRunfiles) {
 		testErrs = append(testErrs, errors.New(fmt.Sprintf(
 			`binary "%s" variant "%s" has unexpected pyRunfiles: %q!`,
 			base.Name(),
 			base.properties.Actual_version,
-			actPyRunfiles)))
+			actualPyRunfiles)))
 	}
 
-	if !reflect.DeepEqual(base.depsPyRunfiles, expDepsPyRunfiles) {
+	if base.srcsZip.String() != strings.Replace(expectedSrcsZip, "@prefix@", buildDir, 1) {
 		testErrs = append(testErrs, errors.New(fmt.Sprintf(
-			`binary "%s" variant "%s" has unexpected depsPyRunfiles: %q!`,
+			`binary "%s" variant "%s" has unexpected srcsZip: %q!`,
 			base.Name(),
 			base.properties.Actual_version,
-			base.depsPyRunfiles)))
+			base.srcsZip)))
 	}
 
-	if base.parSpec.soongParArgs() != strings.Replace(expParSpec, "@prefix@", buildDir, 1) {
+	for i, _ := range expectedDepsSrcsZips {
+		expectedDepsSrcsZips[i] = strings.Replace(expectedDepsSrcsZips[i], "@prefix@", buildDir, 1)
+	}
+	if !reflect.DeepEqual(base.depsSrcsZips.Strings(), expectedDepsSrcsZips) {
 		testErrs = append(testErrs, errors.New(fmt.Sprintf(
-			`binary "%s" variant "%s" has unexpected parSpec: %q!`,
+			`binary "%s" variant "%s" has unexpected depsSrcsZips: %q!`,
 			base.Name(),
 			base.properties.Actual_version,
-			base.parSpec.soongParArgs())))
-	}
-
-	actDepsParSpecs := []string{}
-	for i, p := range base.depsParSpecs {
-		actDepsParSpecs = append(actDepsParSpecs, p.soongParArgs())
-		expDepsParSpecs[i] = strings.Replace(expDepsParSpecs[i], "@prefix@", buildDir, 1)
-	}
-
-	if !reflect.DeepEqual(actDepsParSpecs, expDepsParSpecs) {
-		testErrs = append(testErrs, errors.New(fmt.Sprintf(
-			`binary "%s" variant "%s" has unexpected depsParSpecs: %q!`,
-			base.Name(),
-			base.properties.Actual_version,
-			actDepsParSpecs)))
+			base.depsSrcsZips)))
 	}
 
 	return