
The mergeability flag of a change is immediately updated when the change is created or when a new patch set is uploaded. When a branch is updated the mergeability flag is asynchronously updated for all open changes that are destined for that branch. This way the mergeability flag is always up to date. With this the (new) change screen doesn't need to explicitly trigger the update of this flag whenever the screen is loaded. The corresponding call is removed. In a follow-up change we can now display the mergeability flag also in the change tables and user dashboards which wouldn't make sense if the displayed information is outdated. It is important to update the mergeability flag on a branch update in the background since the computation and even the check whether the mergeability flag needs to be recomputed is expensive. Change-Id: Id20e567e5c5d5b3d851ca5cda9bde01ac01c9967 Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
163 lines
3.7 KiB
Python
163 lines
3.7 KiB
Python
CONSTANTS_SRC = [
|
|
'src/main/java/com/google/gerrit/server/documentation/Constants.java',
|
|
]
|
|
|
|
SRCS = glob([
|
|
'src/main/java/**/*.java',
|
|
'src/test/java/com/google/gerrit/server/project/Util.java',
|
|
],
|
|
excludes = CONSTANTS_SRC,
|
|
)
|
|
RESOURCES = glob(['src/main/resources/**/*'])
|
|
|
|
java_library2(
|
|
name = 'constants',
|
|
srcs = CONSTANTS_SRC,
|
|
visibility = ['PUBLIC'],
|
|
)
|
|
|
|
# TODO(sop) break up gerrit-server java_library(), its too big
|
|
java_library2(
|
|
name = 'server',
|
|
srcs = SRCS,
|
|
resources = RESOURCES,
|
|
deps = [
|
|
':constants',
|
|
'//gerrit-antlr:query_exception',
|
|
'//gerrit-antlr:query_parser',
|
|
'//gerrit-common:server',
|
|
'//gerrit-extension-api:api',
|
|
'//gerrit-patch-commonsnet:commons-net',
|
|
'//gerrit-patch-jgit:server',
|
|
'//gerrit-prettify:server',
|
|
'//gerrit-reviewdb:server',
|
|
'//gerrit-util-cli:cli',
|
|
'//gerrit-util-ssl:ssl',
|
|
'//lib:args4j',
|
|
'//lib:automaton',
|
|
'//lib:gson',
|
|
'//lib:guava',
|
|
'//lib:gwtjsonrpc',
|
|
'//lib:gwtorm',
|
|
'//lib:jsch',
|
|
'//lib:juniversalchardet',
|
|
'//lib:mime-util',
|
|
'//lib:ow2-asm',
|
|
'//lib:ow2-asm-tree',
|
|
'//lib:ow2-asm-util',
|
|
'//lib:parboiled-core',
|
|
'//lib:pegdown',
|
|
'//lib:protobuf',
|
|
'//lib:velocity',
|
|
'//lib/antlr:java_runtime',
|
|
'//lib/commons:codec',
|
|
'//lib/commons:dbcp',
|
|
'//lib/commons:lang',
|
|
'//lib/commons:net',
|
|
'//lib/guice:guice',
|
|
'//lib/guice:guice-assistedinject',
|
|
'//lib/guice:guice-servlet',
|
|
'//lib/jgit:jgit',
|
|
'//lib/joda:joda-time',
|
|
'//lib/log:api',
|
|
'//lib/prolog:prolog-cafe',
|
|
'//lib/lucene:analyzers-common',
|
|
'//lib/lucene:core',
|
|
'//lib/lucene:query-parser',
|
|
],
|
|
compile_deps = [
|
|
'//lib/bouncycastle:bcprov',
|
|
'//lib/bouncycastle:bcpg',
|
|
],
|
|
visibility = ['PUBLIC'],
|
|
)
|
|
|
|
java_sources(
|
|
name = 'server-src',
|
|
srcs = SRCS + RESOURCES,
|
|
visibility = ['PUBLIC'],
|
|
)
|
|
|
|
TESTUTIL = glob(['src/test/java/com/google/gerrit/testutil/**/*.java'])
|
|
java_library(
|
|
name = 'testutil',
|
|
srcs = TESTUTIL,
|
|
deps = [
|
|
':server',
|
|
'//gerrit-common:server',
|
|
'//gerrit-cache-h2:cache-h2',
|
|
'//gerrit-lucene:lucene',
|
|
'//gerrit-reviewdb:client',
|
|
'//gerrit-reviewdb:server',
|
|
'//lib:guava',
|
|
'//lib:gwtorm',
|
|
'//lib:h2',
|
|
'//lib:junit',
|
|
'//lib/guice:guice',
|
|
'//lib/guice:guice-servlet',
|
|
'//lib/jgit:jgit',
|
|
'//lib/jgit:junit',
|
|
],
|
|
visibility = ['PUBLIC'],
|
|
)
|
|
|
|
PROLOG_TEST_CASE = [
|
|
'src/test/java/com/google/gerrit/rules/PrologTestCase.java',
|
|
]
|
|
PROLOG_TESTS = glob(
|
|
['src/test/java/com/google/gerrit/rules/**/*.java'],
|
|
excludes = PROLOG_TEST_CASE,
|
|
)
|
|
|
|
java_library(
|
|
name = 'prolog_test_case',
|
|
srcs = PROLOG_TEST_CASE,
|
|
deps = [
|
|
':server',
|
|
'//lib:junit',
|
|
'//lib/guice:guice',
|
|
'//lib/prolog:prolog-cafe',
|
|
],
|
|
export_deps = True,
|
|
)
|
|
|
|
java_test(
|
|
name = 'prolog_tests',
|
|
srcs = PROLOG_TESTS,
|
|
resources = glob(['src/test/resources/com/google/gerrit/rules/**/*']),
|
|
deps = [
|
|
':prolog_test_case',
|
|
'//gerrit-server/src/main/prolog:common',
|
|
],
|
|
)
|
|
|
|
java_test(
|
|
name = 'server_tests',
|
|
srcs = glob(
|
|
['src/test/java/**/*.java'],
|
|
excludes = TESTUTIL + PROLOG_TESTS + PROLOG_TEST_CASE
|
|
),
|
|
deps = [
|
|
':server',
|
|
':testutil',
|
|
'//gerrit-antlr:query_exception',
|
|
'//gerrit-antlr:query_parser',
|
|
'//gerrit-common:server',
|
|
'//gerrit-extension-api:api',
|
|
'//gerrit-reviewdb:server',
|
|
'//gerrit-server/src/main/prolog:common',
|
|
'//lib:args4j',
|
|
'//lib:easymock',
|
|
'//lib:guava',
|
|
'//lib:gwtorm',
|
|
'//lib:junit',
|
|
'//lib/antlr:java_runtime',
|
|
'//lib/guice:guice',
|
|
'//lib/jgit:jgit',
|
|
'//lib/jgit:junit',
|
|
'//lib/joda:joda-time',
|
|
'//lib/prolog:prolog-cafe',
|
|
],
|
|
source_under_test = [':server'],
|
|
)
|