diff --git a/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/CommitInfo.java b/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/CommitInfo.java
index 165c1733..e71c5043 100644
--- a/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/CommitInfo.java
+++ b/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/CommitInfo.java
@@ -12,6 +12,11 @@ public class CommitInfo {
/** The commit descriptor. */
public CommitDescriptor commit;
+ /**
+ * If the commit property is set via the teamscale.timestamp
property in a git.properties file, this
+ * should be preferred to the revision. For details see TS-38561.
+ */
public boolean preferCommitDescriptorOverRevision = false;
/** Constructor. */
diff --git a/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/GitPropertiesLocatorUtils.java b/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/GitPropertiesLocatorUtils.java
index e5f5b6ee..076c3e0b 100644
--- a/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/GitPropertiesLocatorUtils.java
+++ b/agent/src/main/java/com/teamscale/jacoco/agent/commit_resolution/git_properties/GitPropertiesLocatorUtils.java
@@ -51,7 +51,7 @@ public class GitPropertiesLocatorUtils {
/**
* You can provide a teamscale timestamp in git.properties files to overwrite the revision. See ....
+ * href="https://cqse.atlassian.net/browse/TS-38561">TS-38561.
*/
static final String GIT_PROPERTIES_TEAMSCALE_TIMESTAMP = "teamscale.timestamp";
@@ -65,7 +65,16 @@ public class GitPropertiesLocatorUtils {
private static final Pattern NESTED_JAR_REGEX = Pattern.compile("[jwea]ar:file:(.*?)\\*(.*)",
Pattern.CASE_INSENSITIVE);
+ /**
+ * Defined in GitCommitIdMojo
+ */
private static final String GIT_PROPERTIES_DEFAULT_MAVEN_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ssXXX";
+
+ /**
+ * Defined in GitPropertiesPlugin
+ */
private static final String GIT_PROPERTIES_DEFAULT_GRADLE_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ssZ";
/** File ending of Java archive packages */
@@ -355,7 +364,7 @@ public static CommitInfo getCommitInfoFromGitProperties(
long gitTimestamp = 0;
try {
gitTimestamp = ZonedDateTime.parse(gitTime, dateTimeFormatter).toInstant().toEpochMilli();
- } catch (Exception e) {
+ } catch (DateTimeParseException e) {
throw new InvalidGitPropertiesException(
"Could not parse the timestamp in property '" + GIT_PROPERTIES_GIT_COMMIT_TIME + "'." +
"\nIn " + entryName + " in " + jarFile + "." +
diff --git a/agent/src/main/java/com/teamscale/jacoco/agent/upload/artifactory/ArtifactoryConfig.java b/agent/src/main/java/com/teamscale/jacoco/agent/upload/artifactory/ArtifactoryConfig.java
index dff9984a..fc4ceb3f 100644
--- a/agent/src/main/java/com/teamscale/jacoco/agent/upload/artifactory/ArtifactoryConfig.java
+++ b/agent/src/main/java/com/teamscale/jacoco/agent/upload/artifactory/ArtifactoryConfig.java
@@ -223,20 +223,4 @@ public static List parseGitProperties(File file, boolean isJarFile,
return result;
}
-
- /**
- * Returns a value from a git properties file.
- */
- private static String getGitPropertiesValue(Properties gitProperties, String key, String entryName, File jarFile)
- throws InvalidGitPropertiesException {
- String value = gitProperties.getProperty(key);
- if (StringUtils.isEmpty(value)) {
- throw new InvalidGitPropertiesException("No entry or empty value for '" + key + "' in " + entryName + " in "
- + jarFile + "." + "\nContents of " + GitPropertiesLocatorUtils.GIT_PROPERTIES_FILE_NAME + ":\n"
- + gitProperties);
- }
-
- return value;
- }
-
}