[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Adar Dembo has posted comments on this change. ( http://gerrit.cloudera.org:8080/12054 ) Change subject: [build] Fix bulding codegen on MacOS Mojave .. Patch Set 4: (4 comments) http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt File src/kudu/codegen/CMakeLists.txt: http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@74 PS3, Line 74: > no, it seems it breaks stuff when the workaround is implemented (at least p Hmm OK. http://gerrit.cloudera.org:8080/#/c/12054/4/src/kudu/codegen/CMakeLists.txt File src/kudu/codegen/CMakeLists.txt: http://gerrit.cloudera.org:8080/#/c/12054/4/src/kudu/codegen/CMakeLists.txt@96 PS4, Line 96: # [1] : # https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes Nit: combine onto one line: 1. https://developer.apple.com/... http://gerrit.cloudera.org:8080/#/c/12054/4/src/kudu/codegen/CMakeLists.txt@98 PS4, Line 98: (APPLE) Don't need this inner set of parens. http://gerrit.cloudera.org:8080/#/c/12054/4/src/kudu/codegen/CMakeLists.txt@105 PS4, Line 105: ${IR_FLAGS} : --sysroot="${SDKPATH}") Nit: indentation (see L84). -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 4 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley Gerrit-Comment-Date: Sat, 08 Dec 2018 00:25:22 + Gerrit-HasComments: Yes
[kudu-CR] java: add unit test for RetryRule
Mike Percy has posted comments on this change. ( http://gerrit.cloudera.org:8080/12041 ) Change subject: java: add unit test for RetryRule .. Patch Set 3: Verified+1 Same here, let's merge this anyway -- To view, visit http://gerrit.cloudera.org:8080/12041 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia4bb578b550c3ccb3ce5526a4ca87abafd7d4021 Gerrit-Change-Number: 12041 Gerrit-PatchSet: 3 Gerrit-Owner: Mike Percy Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mike Percy Gerrit-Comment-Date: Fri, 07 Dec 2018 22:41:20 + Gerrit-HasComments: No
[kudu-CR] java: add unit test for RetryRule
Mike Percy has removed a vote on this change. Change subject: java: add unit test for RetryRule .. Removed Verified-1 by Kudu Jenkins (120) -- To view, visit http://gerrit.cloudera.org:8080/12041 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: deleteVote Gerrit-Change-Id: Ia4bb578b550c3ccb3ce5526a4ca87abafd7d4021 Gerrit-Change-Number: 12041 Gerrit-PatchSet: 3 Gerrit-Owner: Mike Percy Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mike Percy
[kudu-CR] java: add unit test for RetryRule
Mike Percy has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12041 ) Change subject: java: add unit test for RetryRule .. java: add unit test for RetryRule Also did some minor refactoring of the RetryRule. Change-Id: Ia4bb578b550c3ccb3ce5526a4ca87abafd7d4021 Reviewed-on: http://gerrit.cloudera.org:8080/12041 Reviewed-by: Adar Dembo Tested-by: Mike Percy --- M java/kudu-test-utils/src/main/java/org/apache/kudu/test/junit/RetryRule.java A java/kudu-test-utils/src/test/java/org/apache/kudu/test/junit/TestRetryRule.java 2 files changed, 67 insertions(+), 17 deletions(-) Approvals: Adar Dembo: Looks good to me, approved Mike Percy: Verified -- To view, visit http://gerrit.cloudera.org:8080/12041 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ia4bb578b550c3ccb3ce5526a4ca87abafd7d4021 Gerrit-Change-Number: 12041 Gerrit-PatchSet: 4 Gerrit-Owner: Mike Percy Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mike Percy
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Attila Bukor has posted comments on this change. ( http://gerrit.cloudera.org:8080/12054 ) Change subject: [build] Fix bulding codegen on MacOS Mojave .. Patch Set 4: (4 comments) http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt File src/kudu/codegen/CMakeLists.txt: http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@73 PS3, Line 73: endif() > Once this is working we'll need a big block comment here explaining what's Done http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@74 PS3, Line 74: > Isn't the below correct to do regardless of whether /usr/include exists? no, it seems it breaks stuff when the workaround is implemented (at least patch set #2 broke Grant's build and that was the difference) http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@82 PS3, Line 82: > I guess this is fine if it works, but isn't -I sufficient? I'm reading thro I tried with -I first and it didn't work that way for some reason. http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@95 PS3, Line 95: # > If you go down the --sysroot path, I think I'd prefer adding it directly to Done -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 4 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley Gerrit-Comment-Date: Fri, 07 Dec 2018 20:57:40 + Gerrit-HasComments: Yes
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Hello Will Berkeley, Kudu Jenkins, Adar Dembo, Grant Henke, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/12054 to look at the new patch set (#4). Change subject: [build] Fix bulding codegen on MacOS Mojave .. [build] Fix bulding codegen on MacOS Mojave The codegen target uses clang-6.0 from thirdparty even on macOS, after upgrading to macOS Mojave and Xcode 10 the build failed due to changes in where the SDK is located. Xcode 10's release notes claim the macOS headers are no longer installed in the base system under /usr/include[1]. This commit makes CMake locate the headers using "xcrun --show-sdk-path" and pass it to clang's sysroot. [1] https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 --- M src/kudu/codegen/CMakeLists.txt 1 file changed, 17 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/12054/4 -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 4 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Adar Dembo has posted comments on this change. ( http://gerrit.cloudera.org:8080/12054 ) Change subject: [build] Fix bulding codegen on MacOS Mojave .. Patch Set 3: (4 comments) http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt File src/kudu/codegen/CMakeLists.txt: http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@73 PS3, Line 73: Once this is working we'll need a big block comment here explaining what's going on. http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@74 PS3, Line 74: if (NOT EXISTS /usr/include) Isn't the below correct to do regardless of whether /usr/include exists? http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@82 PS3, Line 82: --sysroot="${SDKPATH}") I guess this is fine if it works, but isn't -I sufficient? I'm reading through https://clang.llvm.org/docs/CrossCompilation.html. http://gerrit.cloudera.org:8080/#/c/12054/3/src/kudu/codegen/CMakeLists.txt@95 PS3, Line 95: set(IR_FLAGS If you go down the --sysroot path, I think I'd prefer adding it directly to IR_FLAGS rather than to PREFIXED_IR_INCLUDES, because strictly speaking it's not an "include"; it's an additional configuration for clang. -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 3 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley Gerrit-Comment-Date: Fri, 07 Dec 2018 18:18:46 + Gerrit-HasComments: Yes
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Hello Will Berkeley, Kudu Jenkins, Adar Dembo, Grant Henke, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/12054 to look at the new patch set (#3). Change subject: [build] Fix bulding codegen on MacOS Mojave .. [build] Fix bulding codegen on MacOS Mojave The codegen target uses clang-6.0 from thirdparty even on macOS, after upgrading to macOS Mojave and Xcode 10 the build failed due to changes in where the SDK is located. Xcode 10's release notes claim the macOS headers are no longer installed in the base system under /usr/include[1]. This commit makes CMake locate the headers using "xcrun --show-sdk-path" and pass it to clang's sysroot. [1] https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 --- M src/kudu/codegen/CMakeLists.txt 1 file changed, 11 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/12054/3 -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 3 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley
[kudu-CR] java: add unit test for RetryRule
Adar Dembo has posted comments on this change. ( http://gerrit.cloudera.org:8080/12041 ) Change subject: java: add unit test for RetryRule .. Patch Set 3: Code-Review+2 Not sure why TestSecurity failed three times, but the code looks good. -- To view, visit http://gerrit.cloudera.org:8080/12041 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia4bb578b550c3ccb3ce5526a4ca87abafd7d4021 Gerrit-Change-Number: 12041 Gerrit-PatchSet: 3 Gerrit-Owner: Mike Percy Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mike Percy Gerrit-Comment-Date: Fri, 07 Dec 2018 17:58:13 + Gerrit-HasComments: No
[kudu-CR](gh-pages) [docs] Update docs with contributing to blog
Attila Bukor has posted comments on this change. ( http://gerrit.cloudera.org:8080/12055 ) Change subject: [docs] Update docs with contributing to blog .. Patch Set 1: > Patch Set 1: > > I wonder if we should still use 1.8.0 symlink? Breaking the pattern doesn't > seam great. Are the docs are still relevant for 1.8.0? Yeah, the only relevant commit backported to branch-1.8.x is this, it just felt wrong touching anything in releases/1.8.0. This pattern is pretty new too, previously docs was a directory instead of a symlink, 1.8.0 is the first release that I know of that linked it instead. -- To view, visit http://gerrit.cloudera.org:8080/12055 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Ib96096bae24ae97bd51f39cbf8867e822492ea69 Gerrit-Change-Number: 12055 Gerrit-PatchSet: 1 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Mike Percy Gerrit-Comment-Date: Fri, 07 Dec 2018 17:41:00 + Gerrit-HasComments: No
[kudu-CR](gh-pages) [docs] Update docs with contributing to blog
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/12055 ) Change subject: [docs] Update docs with contributing to blog .. Patch Set 1: I wonder if we should still use 1.8.0 symlink? Breaking the pattern doesn't seam great. Are the docs are still relevant for 1.8.0? -- To view, visit http://gerrit.cloudera.org:8080/12055 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Ib96096bae24ae97bd51f39cbf8867e822492ea69 Gerrit-Change-Number: 12055 Gerrit-PatchSet: 1 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Mike Percy Gerrit-Comment-Date: Fri, 07 Dec 2018 17:16:07 + Gerrit-HasComments: No
[kudu-CR](gh-pages) [blog] Call for Posts
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/11941 ) Change subject: [blog] Call for Posts .. Patch Set 4: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/11941 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Icd801585b1be525c635b9def937f9dd0d28fdec8 Gerrit-Change-Number: 11941 Gerrit-PatchSet: 4 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Mike Percy Gerrit-Comment-Date: Fri, 07 Dec 2018 17:14:39 + Gerrit-HasComments: No
[kudu-CR](gh-pages) [blog] Call for Posts
Hello Mike Percy, Grant Henke, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/11941 to look at the new patch set (#4). Change subject: [blog] Call for Posts .. [blog] Call for Posts This commit adds a call for guest posts as agreed on the latest virtual meetup on Slack Change-Id: Icd801585b1be525c635b9def937f9dd0d28fdec8 --- A _posts/2018-12-07-call-for-posts.md 1 file changed, 21 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/41/11941/4 -- To view, visit http://gerrit.cloudera.org:8080/11941 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newpatchset Gerrit-Change-Id: Icd801585b1be525c635b9def937f9dd0d28fdec8 Gerrit-Change-Number: 11941 Gerrit-PatchSet: 4 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Mike Percy
[kudu-CR](gh-pages) [docs] Update docs with contributing to blog
Hello Mike Percy, Grant Henke, I'd like you to do a code review. Please visit http://gerrit.cloudera.org:8080/12055 to review the following change. Change subject: [docs] Update docs with contributing to blog .. [docs] Update docs with contributing to blog This commit replaces the docs symlink (which pointed to releases/1.8.0/docs) with a new docs directory to be able to publish this new section (added in 7adcba3) which is not tagged in a release yet. Change-Id: Ib96096bae24ae97bd51f39cbf8867e822492ea69 --- D docs A docs/administration.html A docs/background_tasks.html A docs/command_line_tools.html A docs/command_line_tools_reference.html A docs/configuration.html A docs/configuration_reference.html A docs/configuration_reference_unsupported.html A docs/contributing.html A docs/developing.html A docs/export_control.html A docs/images/hash-hash-partitioning-example.png A docs/images/hash-partitioning-example.png A docs/images/hash-range-partitioning-example.png A docs/images/kudu-architecture-2.png A docs/images/range-partitioning-example.png A docs/index.html A docs/installation.html A docs/known_issues.html A docs/kudu-master_configuration_reference.html A docs/kudu-master_configuration_reference_unsupported.html A docs/kudu-tserver_configuration_reference.html A docs/kudu-tserver_configuration_reference_unsupported.html A docs/kudu_impala_integration.html A docs/prior_release_notes.html A docs/quickstart.html A docs/release_notes.html A docs/scaling_guide.html A docs/schema_design.html A docs/security.html A docs/transaction_semantics.html A docs/troubleshooting.html 32 files changed, 65,813 insertions(+), 1 deletion(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/55/12055/1 -- To view, visit http://gerrit.cloudera.org:8080/12055 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newchange Gerrit-Change-Id: Ib96096bae24ae97bd51f39cbf8867e822492ea69 Gerrit-Change-Number: 12055 Gerrit-PatchSet: 1 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Mike Percy
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Hello Will Berkeley, Kudu Jenkins, Adar Dembo, Grant Henke, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/12054 to look at the new patch set (#2). Change subject: [build] Fix bulding codegen on MacOS Mojave .. [build] Fix bulding codegen on MacOS Mojave The codegen target uses clang-6.0 from thirdparty even on macOS, after upgrading to macOS Mojave and Xcode 10 the build failed due to changes in where the SDK is located. Xcode 10's release notes claim the macOS headers are no longer installed in the base system under /usr/include[1]. This commit makes CMake locate the headers using "xcrun --show-sdk-path" and pass it to clang's sysroot. [1] https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 --- M src/kudu/codegen/CMakeLists.txt 1 file changed, 7 insertions(+), 1 deletion(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/12054/2 -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 2 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Will Berkeley
[kudu-CR] [build] Fix bulding codegen on MacOS Mojave
Hello Will Berkeley, Adar Dembo, Grant Henke, I'd like you to do a code review. Please visit http://gerrit.cloudera.org:8080/12054 to review the following change. Change subject: [build] Fix bulding codegen on MacOS Mojave .. [build] Fix bulding codegen on MacOS Mojave The codegen target uses clang-6.0 from thirdparty even on macOS, after upgrading to macOS Mojave and Xcode 10 the build failed due to changes in where the SDK is located. Xcode 10's release notes claim the macOS headers are no longer installed in the base system under /usr/include[1]. This commit locates the headers using "xcrun --show-sdk-path" and passes this path as "--sysroot" to clang. [1] https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 --- M src/kudu/codegen/CMakeLists.txt 1 file changed, 7 insertions(+), 1 deletion(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/12054/1 -- To view, visit http://gerrit.cloudera.org:8080/12054 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I33f7510c7bf0cc2a7708191653b23c04e6df8a29 Gerrit-Change-Number: 12054 Gerrit-PatchSet: 1 Gerrit-Owner: Attila Bukor Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Will Berkeley