Rename --branch option to --starting-revision
Use a more appropriate option name.
Branch is just one way of providing a revision
For example, tags, SHA1s, symbolic refs are other possible
ways of providing one.
Change-Id: I85703b6d95004212cd7bf6033aaaac7d03a30b2e
diff --git a/README.md b/README.md
index 56c9609..dec0ef6 100644
--- a/README.md
+++ b/README.md
@@ -70,9 +70,9 @@
- --until -e Ending timestamp (excluded) to consider
- --aggregate -granularity -g one of email, email_year, email_month, email_day, email_hour defaulting to aggregation by email
- --extract-branches -r enables splitting of aggregation by branch name and expose branch name in the payload
-- --branch -f extract results only for a specific branch
+- --starting-revision -s extract results starting from a specific revision. Default: `HEAD`.
-> **NOTE**: The `--extract-branches` and `--branch` options are mutually exclusive.
+> **NOTE**: The `--extract-branches` and `--starting-revision` options are mutually exclusive.
Note: `since` and/or `until` parameters are compulsory when using `--extract-branches`.
Using `--extract-branches` without `since` or `until` would most likely cause OutOfMemory errors.
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala
index c111226..a8ce1e5 100644
--- a/src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala
@@ -41,9 +41,9 @@
usage = "Do extra parsing to extract a list of all branches for each line")
private var extractBranches: Boolean = false
- @ArgOption(name = "--branch", aliases = Array("-f"),
- usage = "Extract results only for a specific branch", required = false)
- private var branchName: String = HEAD
+ @ArgOption(name = "--starting-revision", aliases = Array("-s"),
+ usage = "Extract results starting from a specific revision", required = false)
+ private var startingRevision: String = HEAD
@ArgOption(name = "--since", aliases = Array("--after", "-b"),
usage = "(included) begin timestamp. Must be in the format 2006-01-02[ 15:04:05[.890][ -0700]]")
@@ -76,11 +76,11 @@
}
override protected def run = {
- if (extractBranches && branchName != HEAD) {
- throw die(s"--extract-branches` and `--branch` options are mutually exclusive")
+ if (extractBranches && startingRevision != HEAD) {
+ throw die(s"--extract-branches` and `--starting-revision` options are mutually exclusive")
}
gsonFmt.format(executor.get(projectRes, beginDate, endDate,
- granularity.getOrElse(AggregationStrategy.EMAIL), extractBranches, branchName), stdout)
+ granularity.getOrElse(AggregationStrategy.EMAIL), extractBranches, startingRevision), stdout)
}
}
@@ -129,18 +129,18 @@
usage = "Do extra parsing to extract a list of all branches for each line")
private var extractBranches: Boolean = false
- @ArgOption(name = "--branch", aliases = Array("-f"),
- usage = "Extract results only for a specific branch", required = false)
- private var branchName: String = HEAD
+ @ArgOption(name = "--starting-revision", aliases = Array("-s"),
+ usage = "Extract results starting from a specific revision", required = false)
+ private var startingRevision: String = HEAD
override def apply(projectRes: ProjectResource) = {
- if (extractBranches && branchName != HEAD) {
- Response.withStatusCode(400, s"'extract-branches' and 'branch' options are mutually exclusive")
+ if (extractBranches && startingRevision != HEAD) {
+ Response.withStatusCode(400, s"'extract-branches' and 'starting-revision' options are mutually exclusive")
} else {
Response.ok(
new GsonStreamedResult[UserActivitySummary](gson,
executor.get(projectRes, beginDate, endDate,
- granularity.getOrElse(AggregationStrategy.EMAIL), extractBranches, branchName)))
+ granularity.getOrElse(AggregationStrategy.EMAIL), extractBranches, startingRevision)))
}
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogram.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogram.scala
index d3bb145..9e9856e 100644
--- a/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogram.scala
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogram.scala
@@ -22,11 +22,11 @@
@Singleton
class UserActivityHistogram {
- def get(repo: Repository, filter: AbstractCommitHistogramFilter, branchName: String = HEAD) = {
+ def get(repo: Repository, filter: AbstractCommitHistogramFilter, startingRevision: String = HEAD) = {
val finder = new CommitFinder(repo)
try {
- finder.setFilter(filter).findFrom(branchName)
+ finder.setFilter(filter).findFrom(startingRevision)
val histogram = filter.getHistogram
histogram.getAggregatedUserActivity
} catch {
diff --git a/src/test/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogramSpec.scala b/src/test/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogramSpec.scala
index 12e100c..aa124c7 100644
--- a/src/test/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogramSpec.scala
+++ b/src/test/scala/com/googlesource/gerrit/plugins/analytics/common/UserActivityHistogramSpec.scala
@@ -33,14 +33,14 @@
new UserActivityHistogram().get(testFileRepository.getRepository, filter) should have size 1
}
- it should "filter by branch" in {
- val branch = "testBranch"
- testFileRepository.commitFile("test.txt", "content", branch=branch)
+ it should "extract starting from the specified revision" in {
+ val startingBranch = "testBranch"
+ testFileRepository.commitFile("test.txt", "content", branch=startingBranch)
val filter = new AggregatedHistogramFilterByDates(aggregationStrategy = EMAIL_YEAR)
new UserActivityHistogram().get(testFileRepository.getRepository, filter) should have size 0
- new UserActivityHistogram().get(testFileRepository.getRepository, filter, branch) should have size 1
+ new UserActivityHistogram().get(testFileRepository.getRepository, filter, startingBranch) should have size 1
}
}