Radhika Chippada [Tue, 20 Jan 2015 18:37:04 +0000 (13:37 -0500)]
refs #4926
Merge branch '4926-browser-based-upload'
Radhika Chippada [Tue, 20 Jan 2015 18:35:54 +0000 (13:35 -0500)]
4926: move tutorial_expectations into sections that are describing command line tools.
Peter Amstutz [Tue, 20 Jan 2015 17:24:02 +0000 (12:24 -0500)]
Merge branch '4838-fuse-executable-files' closes #4838
Peter Amstutz [Tue, 20 Jan 2015 16:42:54 +0000 (11:42 -0500)]
4838: Set +x on all StreamReaderFiles
Tom Clegg [Tue, 20 Jan 2015 08:04:07 +0000 (03:04 -0500)]
3021: Merge branch 'master' into 3021-api-performance
Tom Clegg [Tue, 20 Jan 2015 06:20:54 +0000 (01:20 -0500)]
3021: Use Marshal dump/load to save @old_attributes. Otherwise, hashes
in @old_attributes can contain references to objects that can be
mutated by callers, which could result in the new attributes being
logged incorrectly as old_attributes.
Tom Clegg [Tue, 20 Jan 2015 05:53:05 +0000 (00:53 -0500)]
3021: Replace more "render json:..." with faster Oj.
Radhika Chippada [Mon, 19 Jan 2015 21:42:45 +0000 (16:42 -0500)]
4926: add description with section links
Brett Smith [Mon, 19 Jan 2015 20:27:42 +0000 (15:27 -0500)]
Merge branch '4840-workbench-selections-action-forms-wip'
Closes #4840, #4996.
Brett Smith [Thu, 15 Jan 2015 22:30:28 +0000 (17:30 -0500)]
4840: Workbench selection actions are submitted by POST.
The previous implementation could get 414 Request URI Too Long
responses by stuffing a large number of selections into the link href.
This commit sidesteps that problem by POSTing the data with a hidden
form instead. It's based on rails-ujs' strategy for handling links
with data-method that we were already using for some selection
actions, so it should be minimally disruptive.
Brett Smith [Thu, 15 Jan 2015 22:27:35 +0000 (17:27 -0500)]
4840: All Workbench selection links toggle dropdown.
Brett Smith [Mon, 5 Jan 2015 20:43:50 +0000 (15:43 -0500)]
4840: Restore checkbox to project Pipelines and Jobs tab.
Radhika Chippada [Mon, 19 Jan 2015 19:35:54 +0000 (14:35 -0500)]
Merge branch 'master' into 4926-browser-based-upload
Peter Amstutz [Mon, 19 Jan 2015 14:49:43 +0000 (09:49 -0500)]
5016: PollClient.run_forever() polls self.stop() in order to have a chance to process KeyboardInterrupt.
Radhika Chippada [Fri, 16 Jan 2015 23:20:07 +0000 (18:20 -0500)]
closes #3686
Merge branch '3686-sharing-repositories'
Radhika Chippada [Fri, 16 Jan 2015 23:18:22 +0000 (18:18 -0500)]
3686: ensure Advanced is always the last pane even after adding the Sharing pane.
Radhika Chippada [Fri, 16 Jan 2015 21:06:12 +0000 (16:06 -0500)]
Merge branch 'master' into 3686-sharing-repositories
Tim Pierce [Fri, 16 Jan 2015 20:50:32 +0000 (15:50 -0500)]
Merge branch '4922-google-api-client-force-install'
Fixes #4922.
Tim Pierce [Fri, 16 Jan 2015 19:51:28 +0000 (14:51 -0500)]
4922: force google-api-python-client install
Install google-api-python-client with 'pip install -I' to fix the case
where the Docker image already has an older version of
google-api-python-client installed.
Tom Clegg [Fri, 16 Jan 2015 17:26:17 +0000 (12:26 -0500)]
Update bundle. refs #3021
Tom Clegg [Fri, 16 Jan 2015 06:37:58 +0000 (01:37 -0500)]
Merge branch '3021-workbench-perf' refs #3021
Tom Clegg [Fri, 16 Jan 2015 03:22:26 +0000 (22:22 -0500)]
3021: Reset API fixtures before running the first test case.
Tom Clegg [Fri, 16 Jan 2015 01:24:11 +0000 (20:24 -0500)]
3021: Do not drop/create API database at startup if run-tests.sh has done that for us.
Tom Clegg [Fri, 16 Jan 2015 01:22:19 +0000 (20:22 -0500)]
3021: Revert "3021: Do not drop/create API database at startup: run-tests.sh does that for us."
This reverts commit
591446b97754292031a4214f08039adebd56cfe8.
Tom Clegg [Thu, 15 Jan 2015 21:29:59 +0000 (16:29 -0500)]
3021: Merge branch 'master' into 3021-workbench-perf
Tom Clegg [Thu, 15 Jan 2015 17:50:11 +0000 (12:50 -0500)]
3021: Do not show user notifications on error pages.
Tom Clegg [Thu, 15 Jan 2015 17:42:59 +0000 (12:42 -0500)]
3021: Update Gemfile for Ruby SDK bugfix.
Brett Smith [Thu, 15 Jan 2015 17:00:13 +0000 (12:00 -0500)]
Merge branch '3835-pysdk-keep-exceptions-wip'
Closes #3835, #4972.
Tom Clegg [Thu, 15 Jan 2015 16:59:20 +0000 (11:59 -0500)]
3021: Remove reference to deleted speclist arg.
Brett Smith [Wed, 14 Jan 2015 20:22:24 +0000 (15:22 -0500)]
3835: PySDK raises NotFoundError when all Keep services report such.
Previously, we raised this error when >= 75% of services reported
such, as the most reasonable available cutoff to make the
distinction. Now that Keep exceptions include detailed information
about the error from each service, it seems useful to make this
threshold stricter, and only raise NotFoundError when we're sure
that's the problem. See further discussion from
<https://arvados.org/issues/3835#note-11>.
Brett Smith [Fri, 9 Jan 2015 18:15:07 +0000 (13:15 -0500)]
3835: Improve error reporting in PySDK Keep client.
* Create a KeepRequestError base exception to store information about
errors encountered when talking to Keep services, and include those
in the default formatting.
* Include Keep service error information in exceptions raised by the
Keep client.
Radhika Chippada [Thu, 15 Jan 2015 16:13:27 +0000 (11:13 -0500)]
Merge branch 'master' into 3686-sharing-repositories
Radhika Chippada [Thu, 15 Jan 2015 16:02:41 +0000 (11:02 -0500)]
4926: trailing white space
Radhika Chippada [Thu, 15 Jan 2015 16:00:25 +0000 (11:00 -0500)]
Merge branch 'master' into 4926-browser-based-upload
Radhika Chippada [Thu, 15 Jan 2015 15:59:56 +0000 (10:59 -0500)]
4926: minor text update
Tom Clegg [Wed, 14 Jan 2015 22:33:18 +0000 (17:33 -0500)]
Reduce file_names limit to 2^12. refs #4523.
Radhika Chippada [Wed, 14 Jan 2015 21:21:22 +0000 (16:21 -0500)]
4926: improved image quality
Radhika Chippada [Wed, 14 Jan 2015 20:41:25 +0000 (15:41 -0500)]
Merge branch 'master' into 4926-browser-based-upload
Radhika Chippada [Wed, 14 Jan 2015 20:34:50 +0000 (15:34 -0500)]
closes #4523
Merge branch '4523-search-index'
Radhika Chippada [Wed, 14 Jan 2015 20:33:19 +0000 (15:33 -0500)]
4926: download images
Radhika Chippada [Wed, 14 Jan 2015 20:32:10 +0000 (15:32 -0500)]
4926: expand downloading data section
Radhika Chippada [Wed, 14 Jan 2015 20:21:03 +0000 (15:21 -0500)]
Merge branch '4523-search-index-TC' into 4523-search-index
Conflicts:
services/api/test/integration/collections_api_test.rb
Tom Clegg [Wed, 14 Jan 2015 19:41:39 +0000 (14:41 -0500)]
4523: Clear up manifest-signing vs. locator-signing.
Radhika Chippada [Wed, 14 Jan 2015 19:14:38 +0000 (14:14 -0500)]
4523: update signed_locator in test
Radhika Chippada [Wed, 14 Jan 2015 18:38:45 +0000 (13:38 -0500)]
Merge branch 'master' into 4926-browser-based-upload
Radhika Chippada [Wed, 14 Jan 2015 18:12:22 +0000 (13:12 -0500)]
Merge branch 'master' into 4523-search-index
Radhika Chippada [Wed, 14 Jan 2015 18:11:03 +0000 (13:11 -0500)]
4523: try to resolve column order by down and up migrations through VERSION=
20140817035914
Radhika Chippada [Wed, 14 Jan 2015 18:06:21 +0000 (13:06 -0500)]
4523: use filters instead of where for search
Radhika Chippada [Wed, 14 Jan 2015 17:54:41 +0000 (12:54 -0500)]
4523: check for a specific file name and stream names in file_names.
Brett Smith [Wed, 14 Jan 2015 17:47:38 +0000 (12:47 -0500)]
Python packages use python-daemon<2.
It's good to see python-daemon under active development, but they're
working out so many little issues so rapidly that we're having a hard
time keeping on top of them in our builds. We're pinning the version
until things settle down a little. No issue #.
Radhika Chippada [Wed, 14 Jan 2015 16:24:20 +0000 (11:24 -0500)]
4523: update migration script to use execute instead of update_sql so that output is not printed to console.
Radhika Chippada [Wed, 14 Jan 2015 16:15:33 +0000 (11:15 -0500)]
Merge branch 'master' into 4523-search-index
Radhika Chippada [Wed, 14 Jan 2015 16:14:56 +0000 (11:14 -0500)]
closes #3756
Merge branch '3756-show-user-button'
Radhika Chippada [Wed, 14 Jan 2015 16:13:49 +0000 (11:13 -0500)]
Merge branch 'master' into 3756-show-user-button
Radhika Chippada [Wed, 14 Jan 2015 16:12:47 +0000 (11:12 -0500)]
Merge branch 'master' into 3686-sharing-repositories
Radhika Chippada [Wed, 14 Jan 2015 16:10:27 +0000 (11:10 -0500)]
3686: Support sharing pane in repository show page.
Refactor current project sharing work into application area and reuse it for sharing repositories.
Refactor methods used by tests into helper and reuse in repository sharing tests.
Tom Clegg [Sat, 10 Jan 2015 07:55:55 +0000 (02:55 -0500)]
3021: Use Oj to encode API responses, and to decode them in tests.
* We use the Oj and multi_json gems, which makes Oj the default JSON
parser. However, Rails' ActiveRecord::Base overrides this and uses
the native JSON parser, which is slow. In our case we have two
render() calls that represent nearly all cases where we ask
ActiveRecord to serialize for us. In both cases we already have a
hash (not a model object), and we always want JSON responses. So we
can fix the performance problem simply by calling Oj.dump()
ourselves, and passing the resulting JSON (instead of the hash) to
render().
More gory details:
* "ActiveRecord::Base.extend kills JSON performance":
https://github.com/rails/rails/issues/9212
* "when freedom patches fight, nobody wins":
https://github.com/intridea/multi_json/pull/138#issuecomment-
24468223
Tom Clegg [Sat, 10 Jan 2015 07:54:22 +0000 (02:54 -0500)]
3021: Do not compute etag for initial model state unless/until actually needed.
Profiling shows that making a copy of the attributes hash (which
modelinstance.attributes() does) is much faster than
md5(attrs.inspect). Given that md5(attrs_when_loaded) is never needed
in the common case where a model gets loaded but never changed or
written back to the database, it's better to just stash a copy of the
attributes hash when loading, and defer computing the md5 until
it's time to write a log entry.
Tom Clegg [Sat, 10 Jan 2015 07:18:00 +0000 (02:18 -0500)]
3021: Call Rails.application.eager_load! only once, not every single
time we use the uuid prefix cache, for two reasons:
* The reason it's here at all is to ensure that all descendant classes
of ActiveRecord::Base have been defined, so we don't miss any model
classes when building the uuid prefix cache. Therefore, it's more
robust (and clearer) to call it from the function where the cache
gets built, rather than calling it from a function that _uses_ the
cache.
* eager_load! is (evidently) not very efficient about noticing that
everything is already loaded: when called too often, it showed up
prominently in profiling results.
Tom Clegg [Sat, 10 Jan 2015 08:49:25 +0000 (03:49 -0500)]
3021: Add a performance test.
ActiveSupport doesn't seem to think its profiling code is compatible
with Ruby 2.1, but it seems to work if you patch up a version check in
activesupport:
.../activesupport-3.2.17/lib/active_support/testing/performance/ruby.rb
-if RUBY_VERSION.between?('1.9.2', '2.0.0')
+if RUBY_VERSION.between?('1.9.2', '3.0.0')
Tom Clegg [Sat, 10 Jan 2015 08:35:28 +0000 (03:35 -0500)]
Fix crash on missing return_to param.
Tom Clegg [Tue, 13 Jan 2015 21:49:50 +0000 (16:49 -0500)]
3021: Merge branch 'master' into 3021-workbench-perf
Ward Vandewege [Tue, 13 Jan 2015 21:42:51 +0000 (16:42 -0500)]
Merge branch 'master' into 0000-workbench-user-profile-wording-changes
Peter Amstutz [Tue, 13 Jan 2015 20:15:56 +0000 (15:15 -0500)]
Merge branch '4968-refresh-project-dir' closes #4968
Radhika Chippada [Tue, 13 Jan 2015 18:39:29 +0000 (13:39 -0500)]
4523: update migrate script to use batch size and instance method on collection.
Radhika Chippada [Tue, 13 Jan 2015 17:03:56 +0000 (12:03 -0500)]
Merge branch 'master' into 4523-search-index
Tom Clegg [Tue, 13 Jan 2015 15:33:53 +0000 (10:33 -0500)]
3021: Do not check user notifications unless they are going to be displayed.
Tom Clegg [Tue, 13 Jan 2015 15:18:16 +0000 (10:18 -0500)]
3021: Add web-inspectable profiling mode.
* Run Workbench with environment variable ENABLE_PROFILING=yes. Timing
figures should appear at the top left of each page. Click to get
more detail.
* Visit {workbench-uri}?pp=flamegraph to see a profiling graph instead
of the requested page itself.
* More: https://github.com/MiniProfiler/rack-mini-profiler
Peter Amstutz [Mon, 12 Jan 2015 21:56:09 +0000 (16:56 -0500)]
Explicitly specify ruby 2.1 in "rvm alias" no issue #
Peter Amstutz [Fri, 9 Jan 2015 02:26:32 +0000 (21:26 -0500)]
4968: Fix polling refresh on project directories
Radhika Chippada [Mon, 12 Jan 2015 19:01:40 +0000 (14:01 -0500)]
3756: do not show 'Show' button in admin user's own row.
Peter Amstutz [Mon, 12 Jan 2015 18:39:34 +0000 (13:39 -0500)]
Merge branch '4924-arv-edit-error-handling' closes #4924
Peter Amstutz [Mon, 12 Jan 2015 18:38:45 +0000 (13:38 -0500)]
4924: Collapse JSON rescue blocks to reduce duplicate code.
Peter Amstutz [Mon, 12 Jan 2015 17:23:40 +0000 (12:23 -0500)]
4924: Update prints uuid from results, not the uuid originally specified.
Catch Oj::ParseError as well as JSON::ParserError. Titleize only HTTP status
messages, not every error message.
Peter Amstutz [Mon, 12 Jan 2015 15:33:36 +0000 (10:33 -0500)]
4924: Rename HTTPResponse to ArvadosAPIError. Use NET::HTTP Response titles
for error codes if no other error is available.
Tom Clegg [Sun, 11 Jan 2015 19:55:21 +0000 (14:55 -0500)]
3021: Optimize manifest parsing.
Tom Clegg [Sun, 11 Jan 2015 08:01:26 +0000 (03:01 -0500)]
3021: Update bundle.
Tom Clegg [Sun, 11 Jan 2015 07:36:35 +0000 (02:36 -0500)]
3021: Do not drop/create API database at startup: run-tests.sh does that for us.
Tom Clegg [Sun, 11 Jan 2015 07:35:29 +0000 (02:35 -0500)]
3021: Fix races in performance test.
Radhika Chippada [Sat, 10 Jan 2015 02:28:04 +0000 (21:28 -0500)]
4523: revert test update now that text attributes in non-collections objects are not omitted from search index.
Radhika Chippada [Sat, 10 Jan 2015 02:07:06 +0000 (21:07 -0500)]
Merge branch 'master' into 4523-search-index
Radhika Chippada [Fri, 9 Jan 2015 23:11:10 +0000 (18:11 -0500)]
4523: include stream names in file_names
Radhika Chippada [Fri, 9 Jan 2015 23:00:07 +0000 (18:00 -0500)]
4523: exclude manifest_text from collection -> searchable_columns and leave the other text columns for other objects.
Tom Clegg [Fri, 9 Jan 2015 22:46:15 +0000 (17:46 -0500)]
Add a magic pseudoclass to body, instead of appending a magic div. Selenium seems to like this better. refs #3021
Tom Clegg [Fri, 9 Jan 2015 22:45:23 +0000 (17:45 -0500)]
Diagnostics really do need selenium. refs #3021
Tom Clegg [Fri, 9 Jan 2015 22:09:28 +0000 (17:09 -0500)]
Make angular shim minify-safe. No issue #
Radhika Chippada [Fri, 9 Jan 2015 21:49:36 +0000 (16:49 -0500)]
Merge branch 'master' into 4523-search-index
Radhika Chippada [Fri, 9 Jan 2015 21:43:35 +0000 (16:43 -0500)]
4926: add "upload using workbench"
Peter Amstutz [Fri, 9 Jan 2015 20:37:42 +0000 (15:37 -0500)]
4924: Distinguish between errors the user can do something about (syntax errors
or well-formed server errors) and errors that the user probably can't recover
from (everything else.) Prints "Updated object" on success.
Radhika Chippada [Fri, 9 Jan 2015 02:51:14 +0000 (21:51 -0500)]
4523: update migration script to use sql to set file_names
Tom Clegg [Thu, 8 Jan 2015 21:22:40 +0000 (16:22 -0500)]
3021: Fix phantomjs races by waiting for pages to appear. refs #3021
Tom Clegg [Thu, 8 Jan 2015 21:04:01 +0000 (16:04 -0500)]
Merge branch '3408-go-sdk-api-errors' refs #3408
Tom Clegg [Thu, 8 Jan 2015 20:50:42 +0000 (15:50 -0500)]
3408: Propagate API error messages to caller.
Radhika Chippada [Thu, 8 Jan 2015 19:57:58 +0000 (14:57 -0500)]
4523: slightly improved large description
Radhika Chippada [Thu, 8 Jan 2015 19:45:47 +0000 (14:45 -0500)]
Merge branch 'master' into 4523-search-index
Radhika Chippada [Thu, 8 Jan 2015 19:44:17 +0000 (14:44 -0500)]
4523: add a few functional tests for collections with file_names testing.
Peter Amstutz [Thu, 8 Jan 2015 18:49:05 +0000 (13:49 -0500)]
Merge branch '4312-crunch-report-sdk-version' closes #4312
Peter Amstutz [Thu, 8 Jan 2015 18:48:42 +0000 (13:48 -0500)]
4312: Remove redundant parenthesis.
Radhika Chippada [Thu, 8 Jan 2015 18:01:36 +0000 (13:01 -0500)]
4523: separate filename based tests and description based tests.
Peter Amstutz [Thu, 8 Jan 2015 15:26:35 +0000 (10:26 -0500)]
4924: Refactor arv edit and arv create to improve error handling.
* Error messages are now added in a comment block at the top of the file, and
the file is re-opened in the user's editor.
* Does not try to update attributes that are not changed.
* Exiting the editor with the file unchanged exits the editing loop.