See <https://builds.apache.org/job/Allura/968/changes>
Changes:
[dave] [#7919] Add stylesheet for the admin navbar
[dave] [#7919] Refactor _nav endpoint to use json_nav on the project model
[dave] [#7919] Add rest endpoints for NavBar grouping and reordering
[dave] [#7919] Extend json_nav to include additional navbar attributes
[dave] [#7919] Add markup to support the NavBar
[dave] [#7919] Add the "tools" endpoint to the api documentation
[dave] [#7919] Add the navbar front-end logic
[dave] [#7919] Add NavBar dependencies
[dave] [#7920] Add configured jshint and jscs
[dave] [#7920] Format navbar to pass eslint inspection
[dave] [#7920] Fix import error
[dave] [#7920] Fix routing conflict for tools api endpoint
[dave] [#7919] Add additional fields to the rest api
[dave] [#7919] Fix endpoint to show installable tools for a given project
[dave] [#7919] Add div to attach the "Add new tool" menu
[dave] [#7919] Add styles for the "add new tool" menu
[dave] [#7919] Add "Add new tool" feature
[dave] [#7919] Add react for development mode
[dave] [#7919] Fix style issues with "Add New Tool" menu
[dave] [#7919] separate mount point vs name (aka label). Fix warnings
[dave] [#7919] Integrate 'Add new tool' menu with admin toolbar
[dave] [#7919] Add tool_label to installable_tools rest endpoint
[dave] [#7919] Merged with Dave's refactor/enhancments
[dave] [#7919] Add cache for installable tools
[dave] [#7919] improve the tool descriptions, set missing ones
[dave] [#7919] use minified react in non-development situations
[dave] [#7919] Make _nav.json's keys backwards compatible
[dave] [#7919] Update stylesheet to support new component markup
[dave] [#7919] Split the "add new tool" components into another file
[dave] [#7919] Remove unneeded components and refactor submenus
[dave] [#7919] Update stylesheet to support new component markup
[dave] [#7919] first step in better injecting of the react nav bar
[dave] [#7919] Refactor and reduce toolbar css
[dave] [#7919] Make edit-mode sub-menus display correctly
[dave] [#7919] Reorder css options to make it easier to read
[dave] [#7919] Fix missing keys from toolbar components
[dave] [#7919] Update to React v0.14.1
[dave] [#7919] dedicated broccoli build for navbar.js (cherry picked from
[dave] [#7919] Fix toolbar reorder bug that prevented drag/dop from working
[dave] [#7919] Add top-level toggle for 'add-new-tool' menu
[dave] [#7919] delay menu takeover until first unlock; clean up
[dave] [#7919] remove extraneous fa class
[dave] [#7919] Update "react reorderable" to support react v0.14
[dave] [#7919] Fix toolbar reorder bug
[dave] [#7919] Add New display improvements
[dave] [#7919] fix <li> nesting issue (<li> is the container in top_nav.html
[dave] [#7919] fix some tests
[dave] [#7919] make tests more robust (particularly, running various
[dave] [#7919] make _getProjectUrl and needed AJAX urls work for nbhd-projects
[dave] [#7919] unify _lookup for regular nbhd controller and rest controller
[dave] [#7919] Fix edit-mode submenu display
[dave] [#7919] Unify toolbar and submenu ordinals
[dave] [#7919] Fix key errors from child components
[dave] [#7919] Fix css issue that prevents submenu from displaying
[dave] [#7919] Fix z-index bug in toolbar css
[dave] [#7919] Fix proptype warning messages
[dave] [#7919] start OptionsMenu (cherry picked from commit 839c1c1)
[dave] [#7919] Add tool options api and react component
[dave] [#7919] Only show the gear icon if tool options exist
[dave] [#7919] Make submenu cog icons display correctly
[dave] [#7919] Add 'is_modal' to admin_option endpoint
[dave] [#7919] Style fixes for the Tool option 'context menu'
[dave] [#7919] avoid possible unicode format error; don't need project name
[dave] [#7919] only show grouping threshold when applicable (cherry picked from
[dave] [#7919] more clearly separate anchored and grouped functions
[dave] [#7919] no right border on last item; consistent left margin on whole
[dave] [#7919] Fix bug that caused duplicate items in reorderable tool list
[dave] [#7919] style and position optionMenu better
[dave] [#7919] option menu hover logic
[dave] [#7919] preload all admin options, instead of fetching with ajax
[dave] [#7919] only need draggable-handle-[sub] on the span
[dave] [#7919] include JS in the right spots, use same react files everywhere
[dave] [#7919] update LICENSE files, rat-excludes.txt and add license headers
[dave] [#7919] only use .min. versions of react-drag and react-reorderable.js
[dave] [#7919] include admin options when getting nav data; restore getNavJson
[dave] [#7919] Make new tool mount_point validation a react prop instead of an
[dave] [#7919] react-reorderable's "list" mode gives better drag zone
[dave] [#7919] Add new tool style updates
[dave] [#7919] Add form field for external url in the 'add-new-tool' menu
[dave] [#7919] make active-drag box fix its container dimensions just right,
[dave] [#7919] balance right & left paddings around each tool item
[dave] [#7919] show possible range for reordering tools
[dave] [#7919] get instead of post, which was causing CSRF validation issues
[dave] [#7919] Make mount_point validate locally when adding a new tool
[dave] [#7919] Use css to set tool colors
[dave] [#7919] Add subproject to the "add new tool" menu
[dave] [#7919] Make validation reset on tool change
[dave] [#7919] Alternate 'add-tool' layout
[dave] [#7919] Redirect to new tool's page after creation
[dave] [#7919] Add generic react tooltipster wrapper.
[dave] [#7919] Clean up add-new-tool components.
[dave] [#7919] Add react tooltipster wrapper
[dave] [#7919] Make add-new-tool menu use ContextMenu component
[dave] [#7919] Update brocfile to exclude add-new-tool js
[dave] [#7919] Admin modals from the top nav options menu
[dave] [#7919] move our single admin_modal to top_nav (not all pages have the
[dave] [#7919] remove sidebar & admin widgets support
[dave] [#7919] remove AdminModal widget, change to pure JS
[dave] [#7919] Merge commit
[dave] [#7919] Fix overflow display issue for context menu
[dave] [#7919] Remove unneeded class from context menu
[dave] [#7919] fixing LICENSE: restore to master
[dave] [#7919] reapply 4923bba and a583566, manually
[dave] [#7919] show Delete in nav bar option menus; use regular admin_modal for
[dave] [#7919] don't support subproject deletion from parent project, only
[dave] [#7919] remove a float:left that's actually causing problems
[dave] [#7919] Move add-new-tool modals into the nav bar
[dave] [#7919] enable support for transform-class-properties
[dave] [#7919] safer babel 5 option
[dave] [#7919] move getNavJson into success handler of threshold update.
[dave] [#7919] Add missing proptypes to navbar components
[dave] [#7919] Pass mount_point validation data into the initial toolbar
[dave] [#7919] remove double-slash, which doesn't resolve with gunicorn
[dave] [#7919] left-align submenus in edit mode
[dave] [#7919] remove unused tb-sub-menu class rules
[dave] [#7919] restore drag zone background change, lost in a previous
[dave] [#7919] Make validation patterns accessible to javascript for frontend
[dave] [#7919] Add frontend validation to the add-tool form
[dave] [#7919] remove unused bits of code
[dave] [#7919] add tooltipster to navbar.js output file; Explicitly list es6.js
[dave] [#7919] Set maxlength for input fields
[dave] [#7919] add tooltip for grouping threshold; refactor tooltip some
[dave] [#7919] anchored tools: remove not-allowed cursor, add tooltip
[dave] [#7919] tooltip on initial lock icon; removing blue hover that
[dave] [#7919] fix className in ContextMenu, so admin modals work again
[dave] [#7919] new tools/subprojects to get proper last ordinal value
[dave] [#7919] navbar.css should come after theme CSS; make Add Tool not make
[dave] [#7919] Fix float issues with context menu
[dave] [#7919] clean up existingTools validation variables
[dave] [#7919] make subproject install defaults show up
[dave] [#7919] show Add Tool button in unlocked mode too. Its menu needs some
[dave] [#7919] change tests from options_on_install page to install_tool page;
[dave] [7919] Redirect to new tool after it is created
[dave] [#7919] Fix styling issues on Add Tool dropdown
[dave] [#7919] include babel's polyfill for IE
[dave] Add Tool button should only be after top-level tools, not in submenus
[dave] [#7919] upgrade react to 0.14.3, fixes an IE click issue
[dave] [#7919] API docs for new endpoints; minor fix for webhooks
[dave] [#7919] Make the add tool context menu have a consistent style
[dave] [#7919] Add tests for new endpoints
[dave] [#7919] tests for _nav.json?admin_options=1
[dave] [#8034] send project_menu_updated events
[dave] [#7919] handle redirecting to subproject; don't redirect to external
[dave] [#7919] add license headers
[dave] [#7919] revert unneeded changes, compared to master
[dave] [#7919] minor fix of existing moved code
[dave] [#7919] don't need to check length since we specify maxlength; > 61 was
[dave] [#7919] remove unused bits of code
[dave] [#7919] fix tests
[dave] [#7919] prevent Options & Labels from ending up on the same line (at
[dave] [#7919] quote jquery attr lookup so it doesn't error on mount points
[dave] [#7919] link to new Tools page describing moved functionality; keep old
[dave] [#7919] add helpful messages if transpiled.js isn't there
------------------------------------------
[...truncated 1908 lines...]
self.setUp()
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 381, in setUp
try_run(self.inst, ('setup', 'setUp'))
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/util.py",>
line 470, in try_run
return func()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/test_root_controller.py",>
line 44, in setUp
super(TestWhenSearchingWithCustomFields, self).setUp()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/test_root_controller.py",>
line 36, in setUp
super(WithUserAndBugsApp, self).setUp()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/__init__.py",>
line 43, in setUp
project_reg.register_neighborhood_project(neighborhood, [c.user])
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/plugin.py",>
line 777, in register_neighborhood_project
('admin', 'admin', 'Admin')])
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/project.py",>
line 1024, in configure_project
self.install_app(ep_name, mount_point, label, ordinal=i)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/project.py",>
line 828, in install_app
app.install(self)
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/wiki_main.py",>
line 322, in install
self.upsert_root(root_page_name)
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/wiki_main.py",>
line 332, in upsert_root
p.commit()
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/model/wiki.py",>
line 156, in commit
Feed.post(self, title=None, description=description)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/artifact.py",>
line 859, in post
description=g.markdown.convert(description),
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/app_globals.py",>
line 81, in convert
return markdown.Markdown.convert(self, source)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/__init__.py",>
line 292, in convert
newRoot = treeprocessor.run(root)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 289, in run
text), child)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 110, in __handleInline
data, patternIndex, startIndex)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 237, in __applyPattern
node = pattern.handleMatch(match)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/markdown_extensions.py",>
line 385, in handleMatch
html = self.macro(m.group(2))
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 77, in __call__
''.join(traceback.format_stack()),
Traceback (most recent call last):
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 73, in __call__
response = macro(**h.encode_keys(args))
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 442, in members
g.resource_manager.register(users)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 137, in __getattr__
return getattr(self._current_obj(), attr)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/app_globals.py",>
line 513, in resource_manager
return ew_core.widget_context.resource_manager
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 137, in __getattr__
return getattr(self._current_obj(), attr)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 197, in _current_obj
'thread' % self.____name__)
TypeError: No object (name: widget_context) has been registered for this thread
allura.model.notification: DEBUG: Notifications disabled for project --init--,
not sending metadata(<Page import_id=None labels=I[] title=u'Home' deleted=False
text='Welcome to your wiki!\n\nThis is the default page,
edit it as you see fit. To add a new page simply reference
it within brackets, e.g.: [SamplePage].\n\nThe wiki uses
[Markdown](/p/wiki/markdown_syntax/) syntax.\n\n[[members
limit=20]]\n' text_cache=I{'render_time': None, 'html':
None, 'fix7528': <Missing>, 'md5': None} version=1
mod_date=datetime.datetime(2016, 1, 8, 19, 41, 29, 773644)
viewable_by=I['all']
_id=ObjectId('569010e9fe6bb347c16099d3')
app_config_id=ObjectId('569010e9fe6bb347c16099cc')
acl=I[]>)
allura.model.artifact: DEBUG: Snapshot version 1 of <class
'forgetracker.model.ticket.Ticket'>
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR:
forgetracker.tests.unit.test_root_controller.TestWhenSearchingWithCustomFields.test_that_tickets_are_listed
----------------------------------------------------------------------
Traceback (most recent call last):
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 381, in setUp
try_run(self.inst, ('setup', 'setUp'))
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/util.py",>
line 470, in try_run
return func()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/test_root_controller.py",>
line 46, in setUp
self.response = tracker_main.RootController().search(q='friends')
File "<string>", line 2, in search
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/patches.py",> line
86, in with_trailing_slash
response_type = getattr(request, 'response_type', None)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 137, in __getattr__
return getattr(self._current_obj(), attr)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 197, in _current_obj
'thread' % self.____name__)
TypeError: No object (name: request) has been registered for this thread
-------------------- >> begin captured logging << --------------------
allura.model.artifact: DEBUG: Snapshot version 1 of <class
'forgewiki.model.wiki.Page'>
allura.lib.macro: WARNING: macro error. Upwards stack is File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/bin/nosetests",> line 8,
in <module>
load_entry_point('nose==1.3.4', 'console_scripts', 'nosetests')()
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/core.py",>
line 121, in __init__
**extra_args)
File "/usr/lib/python2.7/unittest/main.py", line 95, in __init__
self.runTests()
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/core.py",>
line 207, in runTests
result = self.testRunner.run(self.test)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 380, in run
p = self.startProcess(i, testQueue, resultQueue, shouldStop, result)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 343, in startProcess
p.start()
File "/usr/lib/python2.7/multiprocessing/process.py", line 130, in start
self._popen = Popen(self)
File "/usr/lib/python2.7/multiprocessing/forking.py", line 126, in __init__
code = process_obj._bootstrap()
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 652, in runner
keyboardCaught, shouldStop, loaderClass, resultClass, config)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 715, in __runner
test(result)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/suite.py",>
line 177, in __call__
return self.run(*arg, **kw)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/suite.py",>
line 177, in __call__
return self.run(*arg, **kw)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/suite.py",>
line 177, in __call__
return self.run(*arg, **kw)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/suite.py",>
line 177, in __call__
return self.run(*arg, **kw)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 45, in __call__
return self.run(*arg, **kwarg)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 133, in run
self.runTest(result)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 151, in runTest
test(result)
File "/usr/lib/python2.7/unittest/case.py", line 395, in __call__
return self.run(*args, **kwds)
File "/usr/lib/python2.7/unittest/case.py", line 322, in run
self.setUp()
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/case.py",>
line 381, in setUp
try_run(self.inst, ('setup', 'setUp'))
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/nose/util.py",>
line 470, in try_run
return func()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/test_root_controller.py",>
line 44, in setUp
super(TestWhenSearchingWithCustomFields, self).setUp()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/test_root_controller.py",>
line 36, in setUp
super(WithUserAndBugsApp, self).setUp()
File
"<https://builds.apache.org/job/Allura/ws/ForgeTracker/forgetracker/tests/unit/__init__.py",>
line 43, in setUp
project_reg.register_neighborhood_project(neighborhood, [c.user])
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/plugin.py",>
line 777, in register_neighborhood_project
('admin', 'admin', 'Admin')])
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/project.py",>
line 1024, in configure_project
self.install_app(ep_name, mount_point, label, ordinal=i)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/project.py",>
line 828, in install_app
app.install(self)
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/wiki_main.py",>
line 322, in install
self.upsert_root(root_page_name)
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/wiki_main.py",>
line 332, in upsert_root
p.commit()
File
"<https://builds.apache.org/job/Allura/ws/ForgeWiki/forgewiki/model/wiki.py",>
line 156, in commit
Feed.post(self, title=None, description=description)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/model/artifact.py",>
line 859, in post
description=g.markdown.convert(description),
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/app_globals.py",>
line 81, in convert
return markdown.Markdown.convert(self, source)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/__init__.py",>
line 292, in convert
newRoot = treeprocessor.run(root)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 289, in run
text), child)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 110, in __handleInline
data, patternIndex, startIndex)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/markdown/treeprocessors.py",>
line 237, in __applyPattern
node = pattern.handleMatch(match)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/markdown_extensions.py",>
line 385, in handleMatch
html = self.macro(m.group(2))
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 77, in __call__
''.join(traceback.format_stack()),
Traceback (most recent call last):
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 73, in __call__
response = macro(**h.encode_keys(args))
File "<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/macro.py",>
line 442, in members
g.resource_manager.register(users)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 137, in __getattr__
return getattr(self._current_obj(), attr)
File
"<https://builds.apache.org/job/Allura/ws/Allura/allura/lib/app_globals.py",>
line 513, in resource_manager
return ew_core.widget_context.resource_manager
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 137, in __getattr__
return getattr(self._current_obj(), attr)
File
"<https://builds.apache.org/job/Allura/ws/.allura-venv/local/lib/python2.7/site-packages/paste/registry.py",>
line 197, in _current_obj
'thread' % self.____name__)
TypeError: No object (name: widget_context) has been registered for this thread
allura.model.notification: DEBUG: Notifications disabled for project --init--,
not sending metadata(<Page import_id=None labels=I[] title=u'Home' deleted=False
text='Welcome to your wiki!\n\nThis is the default page,
edit it as you see fit. To add a new page simply reference
it within brackets, e.g.: [SamplePage].\n\nThe wiki uses
[Markdown](/p/wiki/markdown_syntax/) syntax.\n\n[[members
limit=20]]\n' text_cache=I{'render_time': None, 'html':
None, 'fix7528': <Missing>, 'md5': None} version=1
mod_date=datetime.datetime(2016, 1, 8, 19, 41, 29, 964282)
viewable_by=I['all']
_id=ObjectId('569010e9fe6bb347c1609a20')
app_config_id=ObjectId('569010e9fe6bb347c1609a19')
acl=I[]>)
allura.model.artifact: DEBUG: Snapshot version 1 of <class
'forgetracker.model.ticket.Ticket'>
--------------------- >> end captured logging << ---------------------
----------------------------------------------------------------------
Ran 190 tests in 141.518s
FAILED (errors=3)
finished nosetests --with-xunitmp --cover-package=forgetracker --processes=4
--process-timeout=360 in ForgeTracker
<DummyProcess(Thread-3, started daemon 139738438694656)> running nosetests
--with-xunitmp --cover-package=forgeuserstats --processes=4
--process-timeout=360 in ForgeUserStats
............
----------------------------------------------------------------------
Ran 12 tests in 17.433s
OK
finished nosetests --with-xunitmp --cover-package=forgeuserstats --processes=4
--process-timeout=360 in ForgeUserStats
<DummyProcess(Thread-3, started daemon 139738438694656)> running nosetests
--with-xunitmp --cover-package=forgewiki --processes=4 --process-timeout=360 in
ForgeWiki
.......................................................S........
----------------------------------------------------------------------
Ran 64 tests in 46.744s
OK (SKIP=1)
finished nosetests --with-xunitmp --cover-package=forgewiki --processes=4
--process-timeout=360 in ForgeWiki
..........................................................................................
----------------------------------------------------------------------
Ran 90 tests in 242.273s
OK
finished nosetests --with-xunitmp --cover-package=forgesvn in ForgeSVN
...........................................................................................................................................................................................................................................................................................S................................................................................................................................................................................................................................................................................................S........................................................................................................SSSSSSSSSSS.........................................................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 1049 tests in 334.314s
OK (SKIP=13)
finished nosetests allura/tests/ --with-xunitmp --cover-package=allura
--processes=4 --process-timeout=360 in Allura
......................................................................................................................................
----------------------------------------------------------------------
Ran 134 tests in 356.676s
OK
finished nosetests --with-xunitmp --cover-package=forgegit in ForgeGit
Running setup_app() from allura.websetup
/p/test/wiki/_discuss/thread/e22490ab/ 200 OK
{"sidebar": 1, "jinja": 1, "markdown": 4, "ming": 107}
Build step 'Execute shell' marked build as failure
Recording plot data
Skipping Cobertura coverage report as build was not SUCCESS or better ...
Recording test results