You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2017/03/17 12:16:51 UTC

svn commit: r1787332 [1/5] - in /myfaces/tobago/branches/TOBAGO-1719: tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/ tobago-core/src/main/resources/scs...

Author: lofwyr
Date: Fri Mar 17 12:16:50 2017
New Revision: 1787332

URL: http://svn.apache.org/viewvc?rev=1787332&view=rev
Log:
TOBAGO-1719: Update Bootstrap to 4.0.0 alpha 6 (from alpha 5)
* first fixes for tc:bar and tc:links
* CSS class changes

Added:
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/CssItemUtils.java
Modified:
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClass.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/resources/scss/_tobago.scss
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/050-container/60-bar/bar.xhtml
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/component.xhtml
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/main.xhtml
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/menu.xhtml
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/pom.xml
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/rebuild-theme.log
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/css/bootstrap.css
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/css/bootstrap.css.map
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/css/bootstrap.min.css
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/css/bootstrap.min.css.map
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/js/bootstrap.js
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/js/bootstrap.min.js
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/main/resources/META-INF/resources/tobago/standard/tobago-bootstrap/_version/js/tobago-layout.js
    myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/src/test/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClassUnitTest.java

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java Fri Mar 17 12:16:50 2017
@@ -22,8 +22,12 @@ package org.apache.myfaces.tobago.intern
 import org.apache.myfaces.tobago.component.Facets;
 import org.apache.myfaces.tobago.component.UIBar;
 import org.apache.myfaces.tobago.internal.component.AbstractUIFormBase;
+import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
+import org.apache.myfaces.tobago.internal.util.JQueryUtils;
+import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
+import org.apache.myfaces.tobago.renderkit.css.CssItemUtils;
 import org.apache.myfaces.tobago.renderkit.css.Icons;
 import org.apache.myfaces.tobago.renderkit.html.Arias;
 import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
@@ -31,9 +35,6 @@ import org.apache.myfaces.tobago.renderk
 import org.apache.myfaces.tobago.renderkit.html.HtmlButtonTypes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlRoleValues;
-import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JQueryUtils;
-import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
@@ -54,19 +55,20 @@ public class BarRenderer extends Rendere
     final String clientId = bar.getClientId(facesContext);
     final String navbarId = clientId + "::navbar";
 
-    writer.startElement(HtmlElements.DIV);
+    writer.startElement(HtmlElements.NAV);
     writer.writeIdAttribute(clientId);
+    writer.writeClassAttribute(BootstrapClass.NAVBAR, BootstrapClass.NAVBAR_TOGGLEABLE, BootstrapClass.FORM_INLINE);
     writer.writeAttribute(HtmlAttributes.ROLE, HtmlRoleValues.NAVIGATION.toString(), false);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, bar);
 
-    writer.startElement(HtmlElements.DIV);
-    writer.writeClassAttribute(BootstrapClass.CONTAINER_FLUID);
+//    writer.startElement(HtmlElements.DIV);
+//    writer.writeClassAttribute(BootstrapClass.CONTAINER_FLUID);
 
     encodeOpener(facesContext, bar, writer, navbarId);
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(navbarId);
-    writer.writeClassAttribute(BootstrapClass.COLLAPSE, BootstrapClass.NAVBAR_TOGGLEABLE_XS);
+    writer.writeClassAttribute(BootstrapClass.COLLAPSE, BootstrapClass.NAVBAR_COLLAPSE);
 // XXX writer.writeClassAttribute(BootstrapClass.COLLAPSE, BootstrapClass.NAVBAR_COLLAPSE, BootstrapClass.NAVBAR_TEXT);
   }
 
@@ -78,15 +80,17 @@ public class BarRenderer extends Rendere
   @Override
   public void encodeChildren(FacesContext facesContext, UIComponent component) throws IOException {
 
-    final TobagoResponseWriter writer = getResponseWriter(facesContext);
+//    final TobagoResponseWriter writer = getResponseWriter(facesContext);
 
     List<UIComponent> itemsToEncode = new ArrayList<UIComponent>();
     collectItemsToEncode(component, itemsToEncode);
-    for (UIComponent child : itemsToEncode) {
-      writer.startElement(HtmlElements.DIV);
-      writer.writeClassAttribute(BootstrapClass.FORM_INLINE);
+    for (final UIComponent child : itemsToEncode) {
+//      writer.startElement(HtmlElements.DIV);
+//      writer.writeClassAttribute(BootstrapClass.FORM_INLINE);
+      CssItemUtils.add(facesContext, BootstrapClass.FORM_INLINE);
       child.encodeAll(facesContext);
-      writer.endElement(HtmlElements.DIV);
+      CssItemUtils.pop(facesContext);
+//      writer.endElement(HtmlElements.DIV);
     }
   }
 
@@ -106,24 +110,29 @@ public class BarRenderer extends Rendere
   public void encodeEnd(FacesContext facesContext, UIComponent component) throws IOException {
     final TobagoResponseWriter writer = getResponseWriter(facesContext);
     writer.endElement(HtmlElements.DIV);
-    writer.endElement(HtmlElements.DIV);
-    writer.endElement(HtmlElements.DIV);
+//    writer.endElement(HtmlElements.DIV);
+    writer.endElement(HtmlElements.NAV);
   }
 
   private void encodeOpener(
       FacesContext facesContext, UIBar bar, TobagoResponseWriter writer, String navbarId) throws IOException {
 
-    writer.startElement(HtmlElements.DIV);
+//    writer.startElement(HtmlElements.DIV);
 
     writer.startElement(HtmlElements.BUTTON);
     writer.writeAttribute(HtmlAttributes.TYPE, HtmlButtonTypes.BUTTON);
-    writer.writeClassAttribute(BootstrapClass.NAVBAR_TOGGLER, BootstrapClass.HIDDEN_SM_UP);
+    writer.writeClassAttribute(BootstrapClass.NAVBAR_TOGGLER, BootstrapClass.NAVBAR_TOGGLER_RIGHT);
     writer.writeAttribute(DataAttributes.TOGGLE, "collapse", false);
     writer.writeAttribute(DataAttributes.TARGET, JQueryUtils.escapeIdForHtml(navbarId), true);
     writer.writeAttribute(Arias.EXPANDED, Boolean.FALSE.toString(), false);
     writer.writeAttribute(Arias.CONTROLS, navbarId, false);
 
     writer.writeIcon(Icons.BARS);
+/*  tbd: may be use this, like in the Bootstrap documentation (but hasn't worked in my first try)
+    writer.startElement(HtmlElements.SPAN);
+    writer.writeClassAttribute(BootstrapClass.NAVBAR_TOGGLER_ICON);
+    writer.endElement(HtmlElements.SPAN);
+*/
 
     writer.startElement(HtmlElements.SPAN);
     writer.writeClassAttribute(BootstrapClass.SR_ONLY);
@@ -140,6 +149,6 @@ public class BarRenderer extends Rendere
       writer.endElement(HtmlElements.SPAN);
     }
 
-    writer.endElement(HtmlElements.DIV);
+//    writer.endElement(HtmlElements.DIV);
   }
 }

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java Fri Mar 17 12:16:50 2017
@@ -20,12 +20,13 @@
 package org.apache.myfaces.tobago.internal.renderkit.renderer;
 
 import org.apache.myfaces.tobago.component.UIFlowLayout;
+import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.layout.TextAlign;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.Classes;
+import org.apache.myfaces.tobago.renderkit.css.CssItemUtils;
 import org.apache.myfaces.tobago.renderkit.css.Style;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
-import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
 import javax.faces.component.UIComponent;
@@ -42,7 +43,7 @@ public class FlowLayoutRenderer extends
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(layout.getClientId());
-    writer.writeClassAttribute(Classes.create(layout), layout.getCustomClass());
+    writer.writeClassAttribute(Classes.create(layout), layout.getCustomClass(), CssItemUtils.pop(facesContext));
 
     Style style = layout.getStyle();
     final TextAlign textAlign = layout.getTextAlign();

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java Fri Mar 17 12:16:50 2017
@@ -42,7 +42,7 @@ public class FooterRenderer extends Rend
     writer.writeIdAttribute(component.getClientId(facesContext));
     writer.writeClassAttribute(
         Classes.create(footer),
-        footer.isFixed() ? BootstrapClass.NAVBAR_FIXED_BOTTOM : null,
+        footer.isFixed() ? BootstrapClass.FIXED_BOTTOM : null,
         footer.getCustomClass());
     writer.writeAttribute(HtmlAttributes.TITLE, footer.getTip(), true);
     writer.writeStyleAttribute(footer.getStyle());

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java Fri Mar 17 12:16:50 2017
@@ -45,7 +45,7 @@ public class HeaderRenderer extends Rend
     writer.writeClassAttribute(
         Classes.create(header),
         BootstrapClass.NAVBAR, /*BootstrapClass.NAVBAR_DARK, BootstrapClass.BG_INVERSE,*/
-        header.isFixed() ? BootstrapClass.NAVBAR_FIXED_TOP : null,
+        header.isFixed() ? BootstrapClass.FIXED_TOP : null,
         header.getCustomClass());
 // TBD: should NAVBAR class be in the LinksRenderer?
     writer.writeAttribute(HtmlAttributes.TITLE, header.getTip(), true);

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java Fri Mar 17 12:16:50 2017
@@ -23,6 +23,7 @@ import org.apache.myfaces.tobago.interna
 import org.apache.myfaces.tobago.internal.component.AbstractUIFormBase;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
+import org.apache.myfaces.tobago.renderkit.css.CssItemUtils;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
@@ -38,7 +39,7 @@ public class LinksRenderer extends Rende
 
     final TobagoResponseWriter writer = getResponseWriter(facesContext);
     writer.startElement(HtmlElements.UL);
-    writer.writeClassAttribute(BootstrapClass.NAV, BootstrapClass.NAVBAR_NAV);
+    writer.writeClassAttribute(BootstrapClass.NAV, null, CssItemUtils.pop(facesContext));
     writer.writeIdAttribute(component.getClientId(facesContext));
   }
 

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClass.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClass.java?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClass.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClass.java Fri Mar 17 12:16:50 2017
@@ -95,18 +95,54 @@ public enum BootstrapClass implements Cs
   COL_SM_10("col-sm-10"),
   COL_SM_11("col-sm-11"),
   COL_SM_12("col-sm-12"),
-  COL_XS_1("col-xs-1"),
-  COL_XS_2("col-xs-2"),
-  COL_XS_3("col-xs-3"),
-  COL_XS_4("col-xs-4"),
-  COL_XS_5("col-xs-5"),
-  COL_XS_6("col-xs-6"),
-  COL_XS_7("col-xs-7"),
-  COL_XS_8("col-xs-8"),
-  COL_XS_9("col-xs-9"),
-  COL_XS_10("col-xs-10"),
-  COL_XS_11("col-xs-11"),
-  COL_XS_12("col-xs-12"),
+  COL_1("col-1"),
+  COL_2("col-2"),
+  COL_3("col-3"),
+  COL_4("col-4"),
+  COL_5("col-5"),
+  COL_6("col-6"),
+  COL_7("col-7"),
+  COL_8("col-8"),
+  COL_9("col-9"),
+  COL_10("col-10"),
+  COL_11("col-11"),
+  COL_12("col-12"),
+  /** @deprecated since 3.1.0, please use {@link #COL_1} */
+  @Deprecated
+  COL_XS_1("col-1"),
+  /** @deprecated since 3.1.0, please use {@link #COL_2} */
+  @Deprecated
+  COL_XS_2("col-2"),
+  /** @deprecated since 3.1.0, please use {@link #COL_3} */
+  @Deprecated
+  COL_XS_3("col-3"),
+  /** @deprecated since 3.1.0, please use {@link #COL_4} */
+  @Deprecated
+  COL_XS_4("col-4"),
+  /** @deprecated since 3.1.0, please use {@link #COL_5} */
+  @Deprecated
+  COL_XS_5("col-5"),
+  /** @deprecated since 3.1.0, please use {@link #COL_6} */
+  @Deprecated
+  COL_XS_6("col-6"),
+  /** @deprecated since 3.1.0, please use {@link #COL_7} */
+  @Deprecated
+  COL_XS_7("col-7"),
+  /** @deprecated since 3.1.0, please use {@link #COL_8} */
+  @Deprecated
+  COL_XS_8("col-8"),
+  /** @deprecated since 3.1.0, please use {@link #COL_9} */
+  @Deprecated
+  COL_XS_9("col-9"),
+  /** @deprecated since 3.1.0, please use {@link #COL_10} */
+  @Deprecated
+  COL_XS_10("col-10"),
+  /** @deprecated since 3.1.0, please use {@link #COL_11} */
+  @Deprecated
+  COL_XS_11("col-11"),
+  /** @deprecated since 3.1.0, please use {@link #COL_12} */
+  @Deprecated
+  COL_XS_12("col-12"),
   CONTAINER("container"),
   CONTAINER_FLUID("container-fluid"),
   D_INLINE("d-inline"),
@@ -119,6 +155,8 @@ public enum BootstrapClass implements Cs
   FIGURE("figure"),
   FIGURE_CAPTION("figure-caption"),
   FIGURE_IMG("figure-img"),
+  FIXED_BOTTOM("fixed-bottom"),
+  FIXED_TOP("fixed-top"),
   FORM_CHECK("form-check"),
   FORM_CHECK_INLINE("form-check-inline"),
   FORM_CHECK_INPUT("form-check-input"),
@@ -140,18 +178,33 @@ public enum BootstrapClass implements Cs
   MODAL_DIALOG("modal-dialog"),
   MODAL_LG("modal-lg"),
   MODAL_SM("modal-sm"),
+  MR_AUTO("mr-auto"),
   NAV("nav"),
   NAV_ITEM("nav-item"),
   NAV_LINK("nav-link"),
   NAV_TABS("nav-tabs"),
   NAVBAR("navbar"),
+  NAVBAR_COLLAPSE("navbar-collapse"),
   NAVBAR_BRAND("navbar-brand"),
-  NAVBAR_DARK("navbar-dark"),
-  NAVBAR_FIXED_BOTTOM("navbar-fixed-bottom"),
-  NAVBAR_FIXED_TOP("navbar-fixed-top"),
+  /** @deprecated since 3.1.0, please use {@link #NAVBAR_INVERSE} */
+  @Deprecated
+  NAVBAR_DARK("navbar-inverse"),
+  /** @deprecated since 3.1.0, please use {@link #FIXED_BOTTOM} */
+  @Deprecated
+  NAVBAR_FIXED_BOTTOM("fixed-bottom"),
+  /** @deprecated since 3.1.0, please use {@link #FIXED_TOP} */
+  @Deprecated
+  NAVBAR_FIXED_TOP("fixed-top"),
+  NAVBAR_INVERSE("navbar-inverse"),
   NAVBAR_NAV("navbar-nav"),
-  NAVBAR_TOGGLEABLE_XS("navbar-toggleable-xs"),
+  NAVBAR_TOGGLEABLE("navbar-toggleable"),
+  /** @deprecated since 3.1.0, please use {@link #NAVBAR_TOGGLEABLE} */
+  @Deprecated
+  NAVBAR_TOGGLEABLE_XS("navbar-toggleable"),
   NAVBAR_TOGGLER("navbar-toggler"),
+  NAVBAR_TOGGLER_ICON("navbar-toggler-icon"),
+  NAVBAR_TOGGLER_LEFT("navbar-toggler-left"),
+  NAVBAR_TOGGLER_RIGHT("navbar-toggler-right"),
   OFFSET_LG_0("offset-lg-0"),
   OFFSET_LG_1("offset-lg-1"),
   OFFSET_LG_2("offset-lg-2"),
@@ -188,17 +241,17 @@ public enum BootstrapClass implements Cs
   OFFSET_SM_9("offset-sm-9"),
   OFFSET_SM_10("offset-sm-10"),
   OFFSET_SM_11("offset-sm-11"),
-  OFFSET_XS_1("offset-xs-1"),
-  OFFSET_XS_2("offset-xs-2"),
-  OFFSET_XS_3("offset-xs-3"),
-  OFFSET_XS_4("offset-xs-4"),
-  OFFSET_XS_5("offset-xs-5"),
-  OFFSET_XS_6("offset-xs-6"),
-  OFFSET_XS_7("offset-xs-7"),
-  OFFSET_XS_8("offset-xs-8"),
-  OFFSET_XS_9("offset-xs-9"),
-  OFFSET_XS_10("offset-xs-10"),
-  OFFSET_XS_11("offset-xs-11"),
+  OFFSET_1("offset-1"),
+  OFFSET_2("offset-2"),
+  OFFSET_3("offset-3"),
+  OFFSET_4("offset-4"),
+  OFFSET_5("offset-5"),
+  OFFSET_6("offset-6"),
+  OFFSET_7("offset-7"),
+  OFFSET_8("offset-8"),
+  OFFSET_9("offset-9"),
+  OFFSET_10("offset-10"),
+  OFFSET_11("offset-11"),
   OPEN("open"),
   PAGE_ITEM("page-item"),
   PAGE_LINK("page-link"),
@@ -268,9 +321,9 @@ public enum BootstrapClass implements Cs
   public static class Generator {
 
     private static final BootstrapClass[] EXTRA_SMALL = new BootstrapClass[]{
-        COL_XS_1, COL_XS_2, COL_XS_3, COL_XS_4,
-        COL_XS_5, COL_XS_6, COL_XS_7, COL_XS_8,
-        COL_XS_9, COL_XS_10, COL_XS_11, COL_XS_12,
+        COL_1, COL_2, COL_3, COL_4,
+        COL_5, COL_6, COL_7, COL_8,
+        COL_9, COL_10, COL_11, COL_12,
     };
     private static final BootstrapClass[] SMALL = new BootstrapClass[]{
         COL_SM_1, COL_SM_2, COL_SM_3, COL_SM_4,
@@ -288,8 +341,8 @@ public enum BootstrapClass implements Cs
         COL_LG_9, COL_LG_10, COL_LG_11, COL_LG_12,
     };
     private static final BootstrapClass[] OFFSET_EXTRA_SMALL = new BootstrapClass[]{
-        null, OFFSET_XS_1, OFFSET_XS_2, OFFSET_XS_3, OFFSET_XS_4, OFFSET_XS_5,
-        OFFSET_XS_6, OFFSET_XS_7, OFFSET_XS_8, OFFSET_XS_9, OFFSET_XS_10, OFFSET_XS_11
+        null, OFFSET_1, OFFSET_2, OFFSET_3, OFFSET_4, OFFSET_5,
+        OFFSET_6, OFFSET_7, OFFSET_8, OFFSET_9, OFFSET_10, OFFSET_11
     };
     private static final BootstrapClass[] OFFSET_SMALL = new BootstrapClass[]{
         OFFSET_SM_0, OFFSET_SM_1, OFFSET_SM_2, OFFSET_SM_3, OFFSET_SM_4, OFFSET_SM_5,

Added: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/CssItemUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/CssItemUtils.java?rev=1787332&view=auto
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/CssItemUtils.java (added)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/CssItemUtils.java Fri Mar 17 12:16:50 2017
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.myfaces.tobago.renderkit.css;
+
+import javax.faces.context.FacesContext;
+import java.util.Map;
+
+public class CssItemUtils {
+
+  private static final String KEY = CssItem.class.getName();
+
+  public static void add(FacesContext facesContext, CssItem... cssItem) {
+    final Map<Object, Object> attributes = facesContext.getAttributes();
+    // todo, adding
+//    attributes.get(KEY);
+    attributes.put(KEY, cssItem);
+  }
+
+  public static CssItem[] pop(FacesContext facesContext) {
+    final Map<Object, Object> attributes = facesContext.getAttributes();
+    return (CssItem[]) attributes.get(KEY);
+  }
+}

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/resources/scss/_tobago.scss
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/resources/scss/_tobago.scss?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/resources/scss/_tobago.scss (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-core/src/main/resources/scss/_tobago.scss Fri Mar 17 12:16:50 2017
@@ -194,7 +194,7 @@ body {
   box-shadow: 0 0 5px 5px rgba(200,200,200,0.5);
 }
 
-.navbar-fixed-bottom {
+.fixed-bottom {
   margin-top: 10px;
 }
 
@@ -243,7 +243,7 @@ table.tobago-gridLayout > tbody > tr > t
     margin-bottom: 1rem;
 }
 
-.tobago-header.navbar-fixed-top {
+.tobago-header.fixed-top {
     margin-bottom: 0;
 }
 
@@ -299,6 +299,11 @@ button.tobago-link-markup-disabled:hover
   text-decoration: none;
 }
 
+.nav-item > .tobago-link {
+  margin-right: 0.5rem !important;
+  margin-left: 0.5rem !important;
+}
+
 /* messages ----------------------------------------------------------- */
 
 .tobago-messages-container {
@@ -329,11 +334,13 @@ a.tobago-messages-button {
 
 /* nav ----------------------------------------------------------- */
 
+/*
 .nav-item > span > .tobago-link, .nav-item > span > .tobago-command {
   padding-top: .425rem;
   padding-bottom: .425rem;
   display: inline-block;
 }
+*/
 
 /* styles for drop down menu first level */
 .dropdown-toggle:focus, .dropdown-toggle:hover {

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/050-container/60-bar/bar.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/050-container/60-bar/bar.xhtml?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/050-container/60-bar/bar.xhtml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/050-container/60-bar/bar.xhtml Fri Mar 17 12:16:50 2017
@@ -37,7 +37,8 @@
       Buttons and links don't have any functionality.</p>
     <tc:bar>
       <f:facet name="brand">
-        <tc:link id="brand" label="Tobago Demo" image="#{request.contextPath}/image/feather-leaf.png" link="/"/>
+        <!-- label="Tobago Demo" contains a NO-BREAK SPACE character -->
+        <tc:link id="brand" label="Tobago Demo" image="#{request.contextPath}/image/feather-leaf.png" link="/"/>
       </f:facet>
       <tc:links>
         <tc:link label="Home"/>

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/component.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/component.xhtml?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/component.xhtml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/component.xhtml Fri Mar 17 12:16:50 2017
@@ -17,11 +17,28 @@
  * limitations under the License.
 -->
 
-<ui:composition template="/main.xhtml"
+<ui:composition template="/main.xhtml" xmlns:tc="http://myfaces.apache.org/tobago/component" xmlns:f="http://java.sun.com/jsf/core"
                 xmlns="http://www.w3.org/1999/xhtml"
                 xmlns:ui="http://java.sun.com/jsf/facelets">
   <ui:param name="title" value="#{demoBundle.component}"/>
   <p>The different components of Tobago are shown in this section.
     There are some classic components like inputfields, outputfields or radiobuttons
     and some more advanced like a popup dialog, a tabgroup or a sheet.</p>
+
+  <tc:in>
+    <f:facet name="after">
+      <tc:button label="Button" omit="true">
+        <tc:selectOneRadio>
+          <tc:selectItem itemValue="Item One"/>
+          <tc:selectItem itemValue="Item Two"/>
+        </tc:selectOneRadio>
+      </tc:button>
+    </f:facet>
+  </tc:in>
+  <tc:in>
+    <f:facet name="after">
+      <tc:button label="Button"/>
+    </f:facet>
+  </tc:in>
+
 </ui:composition>

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/main.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/main.xhtml?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/main.xhtml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/main.xhtml Fri Mar 17 12:16:50 2017
@@ -37,14 +37,14 @@
 
       <ui:include src="/menu.xhtml"/>
 
-      <tc:segmentLayout large="#{tc:columnPartition(navigationState.viewSource ? '8;4' : '12')}">
+      <!--<tc:segmentLayout large="#{tc:columnPartition(navigationState.viewSource ? '8;4' : '12')}">-->
 
-        <tc:flexLayout columns="auto;30px;*">
+        <!--<tc:flexLayout columns="auto;30px;*">-->
 
           <tc:panel>
             <ui:include src="/navigation.xhtml"/>
           </tc:panel>
-          <tc:panel/>
+          <!--<tc:panel/>-->
 
           <tc:flexLayout rows="auto;*">
 
@@ -59,15 +59,17 @@
 
           </tc:flexLayout>
 
-        </tc:flexLayout>
+        <!--</tc:flexLayout>-->
 
+<!--
         <tc:panel rendered="#{navigationState.viewSource}">
           <pre><code class="language-markup" id="demo-view-source">
             <tc:out value="#{navigationTree.source}"/>
           </code></pre>
         </tc:panel>
+-->
 
-      </tc:segmentLayout>
+      <!--</tc:segmentLayout>-->
 
       <tc:footer fixed="true">
         © 2017 Apache Software Foundation, Licensed under the <a

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/menu.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/menu.xhtml?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/menu.xhtml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/menu.xhtml Fri Mar 17 12:16:50 2017
@@ -32,7 +32,8 @@
 
     <tc:bar id="bar">
       <f:facet name="brand">
-        <tc:link image="#{request.contextPath}/image/feather-leaf.png" label="Tobago Demo" id="brand" link="/"/>
+        <!-- label="Tobago Demo" contains a NO-BREAK SPACE character -->
+        <tc:link image="#{request.contextPath}/image/feather-leaf.png" label="Tobago Demo" id="brand" link="/"/>
       </f:facet>
 
       <tc:form id="header" inline="true">
@@ -105,16 +106,17 @@
         </tc:links>
       </tc:form>
 
-      <tc:flowLayout textAlign="right">
-        <!--<tc:form inline="true">
+      <!--<tc:flowLayout textAlign="right">-->
+        <tc:form inline="true">
           <tc:in placeholder="Search"/>
           <tc:button defaultCommand="true" omit="true" label="go">
             <tc:dataAttribute name="alert-text"
                               value="Sorry: Search not implemented"/>
 
           </tc:button>
-        </tc:form>-->
+        </tc:form>
         <tc:form id="navbtns" inline="true">
+          <!--<tc:style customClass="form-inline"/>-->
           <tc:buttons>
             <tc:button immediate="true" id="previous"
                        image="fa-angle-left"
@@ -131,7 +133,7 @@
                      image="fa-code"
                      immediate="true" tip="#{demoBundle.footer_viewSource}"/>
         </tc:form>
-      </tc:flowLayout>
+      <!--</tc:flowLayout>-->
 
     </tc:bar>
 

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-theme/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-theme/pom.xml?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-theme/pom.xml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-theme/pom.xml Fri Mar 17 12:16:50 2017
@@ -27,7 +27,7 @@
   <artifactId>tobago-theme</artifactId>
 
   <properties>
-    <bootstrap.version>4.0.0-alpha.5</bootstrap.version>
+    <bootstrap.version>4.0.0-alpha.6</bootstrap.version>
   </properties>
 
   <build>

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/rebuild-theme.log
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/rebuild-theme.log?rev=1787332&r1=1787331&r2=1787332&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/rebuild-theme.log (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-theme/tobago-theme-standard/rebuild-theme.log Fri Mar 17 12:16:50 2017
@@ -1,8 +1,8 @@
-Build date: 2017-03-15-18:12:01
+Build date: 2017-03-17 11:40:23
 [INFO] Scanning for projects...
 [INFO]                                                                         
 [INFO] ------------------------------------------------------------------------
-[INFO] Building Tobago Theme Standard 3.1.0-SNAPSHOT
+[INFO] Building Tobago Theme Standard 3.1.0.bs4a6-SNAPSHOT
 [INFO] ------------------------------------------------------------------------
 [INFO] 
 [INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce) @ tobago-theme-standard ---
@@ -11,28 +11,28 @@ Build date: 2017-03-15-18:12:01
 [INFO] 
 [INFO] --- maven-scm-plugin:1.9.5:checkout (step #1: copy-bootstrap) @ tobago-theme-standard ---
 [INFO] Removing __CURRENT__/tobago-theme-standard/target/checkout
-[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target && git clone --branch v4.0.0-alpha.5 https://github.com/twbs/bootstrap __CURRENT__/tobago-theme-standard/target/checkout
+[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target && git clone --branch v4.0.0-alpha.6 https://github.com/twbs/bootstrap __CURRENT__/tobago-theme-standard/target/checkout
 [INFO] Working directory: __CURRENT__/tobago-theme-standard/target
 [INFO] Executing: /bin/sh -c cd /var/folders/w0/pg4pxr7972l6bq85x08s5cl00000gn/T/ && git ls-remote https://github.com/twbs/bootstrap
 [INFO] Working directory: /var/folders/w0/pg4pxr7972l6bq85x08s5cl00000gn/T
-[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target/checkout && git pull https://github.com/twbs/bootstrap v4.0.0-alpha.5:v4.0.0-alpha.5
+[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target/checkout && git pull https://github.com/twbs/bootstrap v4.0.0-alpha.6:v4.0.0-alpha.6
 [INFO] Working directory: __CURRENT__/tobago-theme-standard/target/checkout
-[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target/checkout && git checkout v4.0.0-alpha.5
+[INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target/checkout && git checkout v4.0.0-alpha.6
 [INFO] Working directory: __CURRENT__/tobago-theme-standard/target/checkout
 [INFO] Executing: /bin/sh -c cd __CURRENT__/tobago-theme-standard/target/checkout && git ls-files
 [INFO] Working directory: __CURRENT__/tobago-theme-standard/target/checkout
 [INFO] 
 [INFO] --- maven-resources-plugin:2.7:copy-resources (step #2: copy-bootstrap) @ tobago-theme-standard ---
 [INFO] Using 'UTF-8' encoding to copy filtered resources.
-[INFO] Copying 418 resources
+[INFO] Copying 405 resources
 [INFO] 
 [INFO] --- maven-resources-plugin:2.7:copy-resources (step #3: copy-custom) @ tobago-theme-standard ---
 [INFO] Using 'UTF-8' encoding to copy filtered resources.
 [INFO] Copying 1 resource
 [INFO] 
 [INFO] --- maven-dependency-plugin:3.0.0:unpack (step #4: unpack-custom) @ tobago-theme-standard ---
-[INFO] Configured Artifact: org.apache.myfaces.tobago:tobago-core:3.1.0-SNAPSHOT:jar
-[INFO] Unpacking __REPO__/org/apache/myfaces/tobago/tobago-core/3.1.0-SNAPSHOT/tobago-core-3.1.0-SNAPSHOT.jar to __CURRENT__/tobago-theme-standard/target/bootstrap with includes "**/*.scss" and excludes ""
+[INFO] Configured Artifact: org.apache.myfaces.tobago:tobago-core:3.1.0.bs4a6-SNAPSHOT:jar
+[INFO] Unpacking __REPO__/org/apache/myfaces/tobago/tobago-core/3.1.0.bs4a6-SNAPSHOT/tobago-core-3.1.0.bs4a6-SNAPSHOT.jar to __CURRENT__/tobago-theme-standard/target/bootstrap with includes "**/*.scss" and excludes ""
 [INFO] 
 [INFO] --- frontend-maven-plugin:1.0:install-node-and-npm (step #5: install node and npm) @ tobago-theme-standard ---
 [INFO] Installing node version v6.5.0
@@ -45,7 +45,7 @@ Build date: 2017-03-15-18:12:01
 [INFO] 
 [INFO] --- frontend-maven-plugin:1.0:npm (step #6: npm install grunt-cli) @ tobago-theme-standard ---
 [INFO] Running 'npm install grunt-cli' in __CURRENT__/tobago-theme-standard/target/bootstrap
-[INFO] bootstrap@4.0.0-alpha.5 __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] bootstrap@4.0.0-alpha.6 __CURRENT__/tobago-theme-standard/target/bootstrap
 [INFO] └─┬ grunt-cli@1.2.0 
 [INFO]   ├─┬ findup-sync@0.3.0 
 [INFO]   │ └─┬ glob@5.0.15 
@@ -70,8 +70,7 @@ Build date: 2017-03-15-18:12:01
 [WARNING] npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
 [WARNING] npm WARN prefer global coffee-script@1.10.0 should be installed with -g
 [WARNING] npm WARN prefer global jshint@2.8.0 should be installed with -g
-[WARNING] npm WARN prefer global jsonlint@1.6.2 should be installed with -g
-[WARNING] npm WARN prefer global node-gyp@3.5.0 should be installed with -g
+[WARNING] npm WARN prefer global node-gyp@3.6.0 should be installed with -g
 [INFO] 
 [INFO] > fsevents@1.1.1 install __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/fsevents
 [INFO] > node install
@@ -118,11 +117,6 @@ Build date: 2017-03-15-18:12:01
 [INFO]   SOLINK_MODULE(target) Release/encode.node
 [ERROR] clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9
 [INFO] 
-[INFO] > node-sass@3.13.1 install __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/node-sass
-[INFO] > node scripts/install.js
-[INFO] 
-[INFO] Cached binary found at __HOME__/.npm/node-sass/3.13.1/darwin-x64-48_binding.node
-[INFO] 
 [INFO] > phantomjs-prebuilt@2.1.14 install __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/phantomjs-prebuilt
 [INFO] > node install.js
 [INFO] 
@@ -131,21 +125,26 @@ Build date: 2017-03-15-18:12:01
 [INFO] Verified checksum of previously downloaded file
 [INFO] Extracting zip contents
 [INFO] Removing __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/phantomjs-prebuilt/lib/phantom
-[INFO] Copying extracted folder /var/folders/w0/pg4pxr7972l6bq85x08s5cl00000gn/T/phantomjs/phantomjs-2.1.1-macosx.zip-extract-1489598085727/phantomjs-2.1.1-macosx -> __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/phantomjs-prebuilt/lib/phantom
+[INFO] Copying extracted folder /var/folders/w0/pg4pxr7972l6bq85x08s5cl00000gn/T/phantomjs/phantomjs-2.1.1-macosx.zip-extract-1489747304444/phantomjs-2.1.1-macosx -> __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/phantomjs-prebuilt/lib/phantom
 [INFO] Writing location.js file
 [INFO] Done. Phantomjs binary available at __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
 [INFO] 
-[INFO] > node-sass@3.13.1 postinstall __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/node-sass
+[INFO] > node-sass@4.5.0 install __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/node-sass
+[INFO] > node scripts/install.js
+[INFO] 
+[INFO] Cached binary found at __HOME__/.npm/node-sass/4.5.0/darwin-x64-48_binding.node
+[INFO] 
+[INFO] > node-sass@4.5.0 postinstall __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/node-sass
 [INFO] > node scripts/build.js
 [INFO] 
 [INFO] Binary found at __CURRENT__/tobago-theme-standard/target/bootstrap/node_modules/node-sass/vendor/darwin-x64-48/binding.node
 [INFO] Testing binary
 [INFO] Binary is fine
-[INFO] bootstrap@4.0.0-alpha.5 __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] bootstrap@4.0.0-alpha.6 __CURRENT__/tobago-theme-standard/target/bootstrap
 [INFO] ├─┬ autoprefixer@6.7.7 
 [INFO] │ ├─┬ browserslist@1.7.6 
 [INFO] │ │ └── electron-to-chromium@1.2.7 
-[INFO] │ ├── caniuse-db@1.0.30000635 
+[INFO] │ ├── caniuse-db@1.0.30000636 
 [INFO] │ ├── normalize-range@0.1.2 
 [INFO] │ ├── num2fraction@1.2.2 
 [INFO] │ ├─┬ postcss@5.2.16 
@@ -209,6 +208,11 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │     └── jsesc@0.5.0 
 [INFO] │ └─┬ babel-plugin-transform-regenerator@6.22.0 
 [INFO] │   └── regenerator-transform@0.9.8 
+[INFO] ├─┬ clean-css@3.4.25 
+[INFO] │ ├─┬ commander@2.8.1 
+[INFO] │ │ └── graceful-readlink@1.0.1 
+[INFO] │ └─┬ source-map@0.4.4 
+[INFO] │   └── amdefine@1.0.1 
 [INFO] ├─┬ eslint@3.17.1 
 [INFO] │ ├─┬ chalk@1.1.3 
 [INFO] │ │ ├── ansi-styles@2.2.1 
@@ -217,7 +221,7 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │ ├── strip-ansi@3.0.1 
 [INFO] │ │ └── supports-color@2.0.0 
 [INFO] │ ├─┬ concat-stream@1.6.0 
-[INFO] │ │ ├─┬ readable-stream@2.2.5 
+[INFO] │ │ ├─┬ readable-stream@2.2.6 
 [INFO] │ │ │ ├── buffer-shims@1.0.0 
 [INFO] │ │ │ ├── core-util-is@1.0.2 
 [INFO] │ │ │ ├── process-nextick-args@1.0.7 
@@ -234,7 +238,8 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │ │ ├── es5-ext@0.10.14 
 [INFO] │ │ │ ├─┬ es6-iterator@2.0.1 
 [INFO] │ │ │ │ └── d@1.0.0 
-[INFO] │ │ │ ├── es6-set@0.1.4 
+[INFO] │ │ │ ├─┬ es6-set@0.1.5 
+[INFO] │ │ │ │ └── d@1.0.0 
 [INFO] │ │ │ ├─┬ es6-symbol@3.1.1 
 [INFO] │ │ │ │ └── d@1.0.0 
 [INFO] │ │ │ └─┬ event-emitter@0.3.5 
@@ -250,27 +255,28 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ ├── estraverse@4.2.0 
 [INFO] │ ├── esutils@2.0.2 
 [INFO] │ ├─┬ file-entry-cache@2.0.0 
-[INFO] │ │ └─┬ flat-cache@1.2.2 
-[INFO] │ │   ├── circular-json@0.3.1 
-[INFO] │ │   ├─┬ del@2.2.2 
-[INFO] │ │   │ ├─┬ globby@5.0.0 
-[INFO] │ │   │ │ └── glob@7.1.1 
-[INFO] │ │   │ ├── is-path-cwd@1.0.0 
-[INFO] │ │   │ └─┬ is-path-in-cwd@1.0.0 
-[INFO] │ │   │   └── is-path-inside@1.0.0 
-[INFO] │ │   ├── graceful-fs@4.1.11 
-[INFO] │ │   └── write@0.2.1 
+[INFO] │ │ ├─┬ flat-cache@1.2.2 
+[INFO] │ │ │ ├── circular-json@0.3.1 
+[INFO] │ │ │ ├─┬ del@2.2.2 
+[INFO] │ │ │ │ ├─┬ globby@5.0.0 
+[INFO] │ │ │ │ │ └── glob@7.1.1 
+[INFO] │ │ │ │ ├── is-path-cwd@1.0.0 
+[INFO] │ │ │ │ └─┬ is-path-in-cwd@1.0.0 
+[INFO] │ │ │ │   └── is-path-inside@1.0.0 
+[INFO] │ │ │ └── write@0.2.1 
+[INFO] │ │ └── object-assign@4.1.1 
 [INFO] │ ├─┬ glob@7.1.1 
 [INFO] │ │ └── fs.realpath@1.0.0 
 [INFO] │ ├── globals@9.16.0 
-[INFO] │ ├── ignore@3.2.5 
+[INFO] │ ├── ignore@3.2.6 
 [INFO] │ ├── imurmurhash@0.1.4 
 [INFO] │ ├─┬ inquirer@0.12.0 
 [INFO] │ │ ├── ansi-escapes@1.4.0 
 [INFO] │ │ ├── ansi-regex@2.1.1 
 [INFO] │ │ ├─┬ cli-cursor@1.0.2 
 [INFO] │ │ │ └─┬ restore-cursor@1.0.1 
-[INFO] │ │ │   └── exit-hook@1.1.1 
+[INFO] │ │ │   ├── exit-hook@1.1.1 
+[INFO] │ │ │   └── onetime@1.1.0 
 [INFO] │ │ ├── cli-width@2.1.0 
 [INFO] │ │ ├─┬ readline2@1.0.1 
 [INFO] │ │ │ ├── code-point-at@1.1.0 
@@ -326,29 +332,7 @@ Build date: 2017-03-15-18:12:01
 [INFO] │   └── os-homedir@1.0.2 
 [INFO] ├─┬ grunt@1.0.1 
 [INFO] │ ├── coffee-script@1.10.0 
-[INFO] │ ├─┬ dateformat@1.0.12 
-[INFO] │ │ ├── get-stdin@4.0.1 
-[INFO] │ │ └─┬ meow@3.7.0 
-[INFO] │ │   ├─┬ camelcase-keys@2.1.0 
-[INFO] │ │   │ └── camelcase@2.1.1 
-[INFO] │ │   ├─┬ loud-rejection@1.6.0 
-[INFO] │ │   │ ├─┬ currently-unhandled@0.4.1 
-[INFO] │ │   │ │ └── array-find-index@1.0.2 
-[INFO] │ │   │ └── signal-exit@3.0.2 
-[INFO] │ │   ├── map-obj@1.0.1 
-[INFO] │ │   ├── minimist@1.2.0 
-[INFO] │ │   ├─┬ normalize-package-data@2.3.6 
-[INFO] │ │   │ ├── hosted-git-info@2.2.0 
-[INFO] │ │   │ ├─┬ is-builtin-module@1.0.0 
-[INFO] │ │   │ │ └── builtin-modules@1.1.1 
-[INFO] │ │   │ └─┬ validate-npm-package-license@3.0.1 
-[INFO] │ │   │   ├─┬ spdx-correct@1.0.2 
-[INFO] │ │   │   │ └── spdx-license-ids@1.2.2 
-[INFO] │ │   │   └── spdx-expression-parse@1.0.4 
-[INFO] │ │   ├─┬ redent@1.0.0 
-[INFO] │ │   │ ├── indent-string@2.1.0 
-[INFO] │ │   │ └── strip-indent@1.0.1 
-[INFO] │ │   └── trim-newlines@1.0.0 
+[INFO] │ ├── dateformat@1.0.12 
 [INFO] │ ├── eventemitter2@0.4.14 
 [INFO] │ ├── exit@0.1.2 
 [INFO] │ ├── glob@7.0.6 
@@ -359,7 +343,9 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │ └── underscore.string@3.2.3 
 [INFO] │ ├─┬ grunt-legacy-util@1.0.0 
 [INFO] │ │ ├── getobject@0.1.0 
-[INFO] │ │ └── lodash@4.3.0 
+[INFO] │ │ ├── lodash@4.3.0 
+[INFO] │ │ └─┬ which@1.2.12 
+[INFO] │ │   └── isexe@1.1.2 
 [INFO] │ ├── iconv-lite@0.4.15 
 [INFO] │ ├─┬ js-yaml@3.5.5 
 [INFO] │ │ └── esprima@2.7.3 
@@ -373,7 +359,8 @@ Build date: 2017-03-15-18:12:01
 [INFO] │   │ └── trim-right@1.0.1 
 [INFO] │   ├── babel-helpers@6.23.0 
 [INFO] │   ├─┬ babel-register@6.24.0 
-[INFO] │   │ └── home-or-tmp@2.0.0 
+[INFO] │   │ ├── home-or-tmp@2.0.0 
+[INFO] │   │ └── source-map-support@0.4.13 
 [INFO] │   ├── convert-source-map@1.4.0 
 [INFO] │   ├── json5@0.5.1 
 [INFO] │   ├── private@0.1.7 
@@ -403,8 +390,7 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │   └─┬ compress-commons@1.1.0 
 [INFO] │ │     └─┬ crc32-stream@1.0.1 
 [INFO] │ │       └── crc@3.4.4 
-[INFO] │ ├─┬ iltorb@1.0.13 
-[INFO] │ │ └── nan@2.5.1 
+[INFO] │ ├── iltorb@1.0.13 
 [INFO] │ ├── pretty-bytes@3.0.1 
 [INFO] │ └── stream-buffers@2.2.0 
 [INFO] ├─┬ grunt-contrib-concat@1.0.1 
@@ -455,16 +441,6 @@ Build date: 2017-03-15-18:12:01
 [INFO] │     └── range-parser@1.2.0 
 [INFO] ├─┬ grunt-contrib-copy@1.0.0 
 [INFO] │ └── file-sync-cmp@0.1.1 
-[INFO] ├─┬ grunt-contrib-cssmin@1.0.2 
-[INFO] │ ├─┬ clean-css@3.4.25 
-[INFO] │ │ ├── commander@2.8.1 
-[INFO] │ │ └─┬ source-map@0.4.4 
-[INFO] │ │   └── amdefine@1.0.1 
-[INFO] │ └─┬ maxmin@1.1.0 
-[INFO] │   ├─┬ gzip-size@1.0.0 
-[INFO] │   │ └─┬ browserify-zlib@0.1.4 
-[INFO] │   │   └── pako@0.2.9 
-[INFO] │   └── pretty-bytes@1.0.4 
 [INFO] ├─┬ grunt-contrib-qunit@1.3.0 
 [INFO] │ └─┬ grunt-lib-phantomjs@1.1.0 
 [INFO] │   ├─┬ phantomjs-prebuilt@2.1.14 
@@ -488,33 +464,6 @@ Build date: 2017-03-15-18:12:01
 [INFO] │   ├── semver@5.3.0 
 [INFO] │   └─┬ temporary@0.0.8 
 [INFO] │     └── package@1.0.1 
-[INFO] ├─┬ grunt-contrib-sass@1.0.0 
-[INFO] │ ├── async@0.9.2 
-[INFO] │ ├─┬ cross-spawn@0.2.9 
-[INFO] │ │ └── lru-cache@2.7.3 
-[INFO] │ ├── dargs@4.1.0 
-[INFO] │ └─┬ which@1.2.12 
-[INFO] │   └── isexe@1.1.2 
-[INFO] ├─┬ grunt-contrib-uglify@2.2.0 
-[INFO] │ ├─┬ object.assign@4.0.4 
-[INFO] │ │ ├─┬ define-properties@1.1.2 
-[INFO] │ │ │ └── foreach@2.0.5 
-[INFO] │ │ ├── function-bind@1.1.0 
-[INFO] │ │ └── object-keys@1.0.11 
-[INFO] │ ├─┬ uglify-js@2.8.12 
-[INFO] │ │ ├── uglify-to-browserify@1.0.2 
-[INFO] │ │ └─┬ yargs@3.10.0 
-[INFO] │ │   ├── camelcase@1.2.1 
-[INFO] │ │   ├─┬ cliui@2.1.0 
-[INFO] │ │   │ ├─┬ center-align@0.1.3 
-[INFO] │ │   │ │ ├─┬ align-text@0.1.4 
-[INFO] │ │   │ │ │ ├── longest@1.0.1 
-[INFO] │ │   │ │ │ └── repeat-string@1.6.1 
-[INFO] │ │   │ │ └── lazy-cache@1.0.4 
-[INFO] │ │   │ ├── right-align@0.1.3 
-[INFO] │ │   │ └── wordwrap@0.0.2 
-[INFO] │ │   └── window-size@0.1.0 
-[INFO] │ └── uri-path@1.0.0 
 [INFO] ├─┬ grunt-contrib-watch@1.0.0 
 [INFO] │ ├─┬ gaze@1.1.2 
 [INFO] │ │ └─┬ globule@1.1.0 
@@ -549,85 +498,6 @@ Build date: 2017-03-15-18:12:01
 [INFO] ├─┬ grunt-jekyll@0.4.6 
 [INFO] │ └─┬ tmp@0.0.31 
 [INFO] │   └── os-tmpdir@1.0.2 
-[INFO] ├─┬ grunt-sass@1.2.1 
-[INFO] │ ├─┬ each-async@1.1.1 
-[INFO] │ │ ├── onetime@1.1.0 
-[INFO] │ │ └── set-immediate-shim@1.0.1 
-[INFO] │ ├─┬ node-sass@3.13.1 
-[INFO] │ │ ├── async-foreach@0.1.3 
-[INFO] │ │ ├─┬ cross-spawn@3.0.1 
-[INFO] │ │ │ └─┬ lru-cache@4.0.2 
-[INFO] │ │ │   ├── pseudomap@1.0.2 
-[INFO] │ │ │   └── yallist@2.1.2 
-[INFO] │ │ ├── glob@7.1.1 
-[INFO] │ │ ├── in-publish@2.0.0 
-[INFO] │ │ ├── lodash.assign@4.2.0 
-[INFO] │ │ ├── lodash.clonedeep@4.5.0 
-[INFO] │ │ ├─┬ node-gyp@3.5.0 
-[INFO] │ │ │ ├── fstream@1.0.11 
-[INFO] │ │ │ ├── glob@7.1.1 
-[INFO] │ │ │ ├── osenv@0.1.4 
-[INFO] │ │ │ └─┬ tar@2.2.1 
-[INFO] │ │ │   └── block-stream@0.0.9 
-[INFO] │ │ ├─┬ npmlog@4.0.2 
-[INFO] │ │ │ ├─┬ are-we-there-yet@1.1.2 
-[INFO] │ │ │ │ └── delegates@1.0.0 
-[INFO] │ │ │ ├── console-control-strings@1.1.0 
-[INFO] │ │ │ └─┬ gauge@2.7.3 
-[INFO] │ │ │   ├── aproba@1.1.1 
-[INFO] │ │ │   ├── has-unicode@2.0.1 
-[INFO] │ │ │   └── wide-align@1.1.0 
-[INFO] │ │ ├─┬ request@2.79.0 
-[INFO] │ │ │ ├── aws-sign2@0.6.0 
-[INFO] │ │ │ ├── aws4@1.6.0 
-[INFO] │ │ │ ├── caseless@0.11.0 
-[INFO] │ │ │ ├─┬ combined-stream@1.0.5 
-[INFO] │ │ │ │ └── delayed-stream@1.0.0 
-[INFO] │ │ │ ├── forever-agent@0.6.1 
-[INFO] │ │ │ ├─┬ form-data@2.1.2 
-[INFO] │ │ │ │ └── asynckit@0.4.0 
-[INFO] │ │ │ ├─┬ har-validator@2.0.6 
-[INFO] │ │ │ │ └── commander@2.9.0 
-[INFO] │ │ │ ├─┬ hawk@3.1.3 
-[INFO] │ │ │ │ ├── boom@2.10.1 
-[INFO] │ │ │ │ ├── cryptiles@2.0.5 
-[INFO] │ │ │ │ ├── hoek@2.16.3 
-[INFO] │ │ │ │ └── sntp@1.0.9 
-[INFO] │ │ │ ├─┬ http-signature@1.1.1 
-[INFO] │ │ │ │ ├── assert-plus@0.2.0 
-[INFO] │ │ │ │ ├─┬ jsprim@1.4.0 
-[INFO] │ │ │ │ │ ├── assert-plus@1.0.0 
-[INFO] │ │ │ │ │ ├── extsprintf@1.0.2 
-[INFO] │ │ │ │ │ ├── json-schema@0.2.3 
-[INFO] │ │ │ │ │ └── verror@1.3.6 
-[INFO] │ │ │ │ └─┬ sshpk@1.11.0 
-[INFO] │ │ │ │   ├── asn1@0.2.3 
-[INFO] │ │ │ │   ├── assert-plus@1.0.0 
-[INFO] │ │ │ │   ├── bcrypt-pbkdf@1.0.1 
-[INFO] │ │ │ │   ├─┬ dashdash@1.14.1 
-[INFO] │ │ │ │   │ └── assert-plus@1.0.0 
-[INFO] │ │ │ │   ├── ecc-jsbn@0.1.1 
-[INFO] │ │ │ │   ├─┬ getpass@0.1.6 
-[INFO] │ │ │ │   │ └── assert-plus@1.0.0 
-[INFO] │ │ │ │   ├── jodid25519@1.0.2 
-[INFO] │ │ │ │   ├── jsbn@0.1.1 
-[INFO] │ │ │ │   └── tweetnacl@0.14.5 
-[INFO] │ │ │ ├── is-typedarray@1.0.0 
-[INFO] │ │ │ ├── isstream@0.1.2 
-[INFO] │ │ │ ├── json-stringify-safe@5.0.1 
-[INFO] │ │ │ ├── oauth-sign@0.8.2 
-[INFO] │ │ │ ├── qs@6.3.2 
-[INFO] │ │ │ ├── stringstream@0.0.5 
-[INFO] │ │ │ ├─┬ tough-cookie@2.3.2 
-[INFO] │ │ │ │ └── punycode@1.4.1 
-[INFO] │ │ │ ├── tunnel-agent@0.4.3 
-[INFO] │ │ │ └── uuid@3.0.1 
-[INFO] │ │ └─┬ sass-graph@2.1.2 
-[INFO] │ │   ├── glob@7.1.1 
-[INFO] │ │   └─┬ yargs@4.8.1 
-[INFO] │ │     ├── cliui@3.2.0 
-[INFO] │ │     └── window-size@0.2.0 
-[INFO] │ └── object-assign@4.1.1 
 [INFO] ├─┬ grunt-saucelabs@9.0.0 
 [INFO] │ ├── colors@1.1.2 
 [INFO] │ ├── lodash@4.13.1 
@@ -644,8 +514,6 @@ Build date: 2017-03-15-18:12:01
 [INFO] │   └─┬ https-proxy-agent@1.0.0 
 [INFO] │     └─┬ agent-base@2.0.1 
 [INFO] │       └── semver@5.0.3 
-[INFO] ├─┬ grunt-scss-lint@0.5.0 
-[INFO] │ └── xmlbuilder@8.2.2 
 [INFO] ├── grunt-stamp@0.3.0 
 [INFO] ├─┬ htmlhint@0.9.13 
 [INFO] │ ├── async@1.4.2 
@@ -657,9 +525,20 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │ ├─┬ cli@0.6.6 
 [INFO] │ │ │ └─┬ glob@3.2.11 
 [INFO] │ │ │   └─┬ minimatch@0.3.0 
+[INFO] │ │ │     ├── lru-cache@2.7.3 
 [INFO] │ │ │     └── sigmund@1.0.1 
 [INFO] │ │ ├─┬ console-browserify@1.1.0 
 [INFO] │ │ │ └── date-now@0.1.4 
+[INFO] │ │ ├─┬ htmlparser2@3.8.3 
+[INFO] │ │ │ ├── domelementtype@1.3.0 
+[INFO] │ │ │ ├── domhandler@2.3.0 
+[INFO] │ │ │ ├─┬ domutils@1.5.1 
+[INFO] │ │ │ │ └─┬ dom-serializer@0.1.0 
+[INFO] │ │ │ │   ├── domelementtype@1.1.3 
+[INFO] │ │ │ │   └── entities@1.1.1 
+[INFO] │ │ │ ├── entities@1.0.0 
+[INFO] │ │ │ └─┬ readable-stream@1.1.14 
+[INFO] │ │ │   └── isarray@0.0.1 
 [INFO] │ │ ├── lodash@3.7.0 
 [INFO] │ │ ├── minimatch@2.0.10 
 [INFO] │ │ ├── shelljs@0.3.0 
@@ -672,71 +551,7 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ ├── strip-json-comments@1.0.4 
 [INFO] │ └── xml@1.0.0 
 [INFO] ├── is-travis@1.0.0 
-[INFO] ├── jquery@3.1.1 
-[INFO] ├─┬ jscs@3.0.7 
-[INFO] │ ├─┬ cli-table@0.3.1 
-[INFO] │ │ └── colors@1.0.3 
-[INFO] │ ├─┬ commander@2.9.0 
-[INFO] │ │ └── graceful-readlink@1.0.1 
-[INFO] │ ├─┬ cst@0.4.9 
-[INFO] │ │ └── source-map-support@0.4.12 
-[INFO] │ ├─┬ htmlparser2@3.8.3 
-[INFO] │ │ ├── domelementtype@1.3.0 
-[INFO] │ │ ├── domhandler@2.3.0 
-[INFO] │ │ ├─┬ domutils@1.5.1 
-[INFO] │ │ │ └─┬ dom-serializer@0.1.0 
-[INFO] │ │ │   ├── domelementtype@1.1.3 
-[INFO] │ │ │   └── entities@1.1.1 
-[INFO] │ │ ├── entities@1.0.0 
-[INFO] │ │ └─┬ readable-stream@1.1.14 
-[INFO] │ │   └── isarray@0.0.1 
-[INFO] │ ├─┬ js-yaml@3.4.6 
-[INFO] │ │ ├── esprima@2.7.3 
-[INFO] │ │ └── inherit@2.2.6 
-[INFO] │ ├─┬ jscs-jsdoc@2.0.0 
-[INFO] │ │ ├── comment-parser@0.3.1 
-[INFO] │ │ └─┬ jsdoctypeparser@1.2.0 
-[INFO] │ │   └── lodash@3.10.1 
-[INFO] │ ├── jscs-preset-wikimedia@1.0.0 
-[INFO] │ ├─┬ jsonlint@1.6.2 
-[INFO] │ │ ├── JSV@4.0.2 
-[INFO] │ │ └─┬ nomnom@1.8.1 
-[INFO] │ │   ├─┬ chalk@0.4.0 
-[INFO] │ │   │ ├── ansi-styles@1.0.0 
-[INFO] │ │   │ ├── has-color@0.1.7 
-[INFO] │ │   │ └── strip-ansi@0.1.1 
-[INFO] │ │   └── underscore@1.6.0 
-[INFO] │ ├── lodash@3.10.1 
-[INFO] │ ├── natural-compare@1.2.2 
-[INFO] │ ├── pathval@0.1.1 
-[INFO] │ ├─┬ prompt@0.2.14 
-[INFO] │ │ ├── pkginfo@0.4.0 
-[INFO] │ │ ├── read@1.0.7 
-[INFO] │ │ ├── revalidator@0.1.8 
-[INFO] │ │ ├─┬ utile@0.2.1 
-[INFO] │ │ │ ├── async@0.2.10 
-[INFO] │ │ │ ├── deep-equal@1.0.1 
-[INFO] │ │ │ ├── i@0.3.5 
-[INFO] │ │ │ └── ncp@0.4.2 
-[INFO] │ │ └─┬ winston@0.8.3 
-[INFO] │ │   ├── async@0.2.10 
-[INFO] │ │   ├── colors@0.6.2 
-[INFO] │ │   ├── cycle@1.0.3 
-[INFO] │ │   ├── eyes@0.1.8 
-[INFO] │ │   ├── pkginfo@0.3.1 
-[INFO] │ │   └── stack-trace@0.0.9 
-[INFO] │ ├── reserved-words@0.1.1 
-[INFO] │ ├─┬ strip-bom@2.0.0 
-[INFO] │ │ └── is-utf8@0.2.1 
-[INFO] │ ├── strip-json-comments@1.0.4 
-[INFO] │ ├── to-double-quotes@2.0.0 
-[INFO] │ ├── to-single-quotes@2.0.1 
-[INFO] │ ├── vow@0.4.15 
-[INFO] │ ├─┬ vow-fs@0.3.6 
-[INFO] │ │ ├── glob@7.1.1 
-[INFO] │ │ ├── uuid@2.0.3 
-[INFO] │ │ └── vow-queue@0.4.2 
-[INFO] │ └── xmlbuilder@3.1.0 
+[INFO] ├── jquery@3.2.0 
 [INFO] ├─┬ load-grunt-tasks@3.5.2 
 [INFO] │ ├── arrify@1.0.1 
 [INFO] │ ├─┬ multimatch@2.1.0 
@@ -748,6 +563,114 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │   └── path-exists@2.1.0 
 [INFO] │ └─┬ resolve-pkg@0.1.0 
 [INFO] │   └── resolve-from@2.0.0 
+[INFO] ├─┬ node-sass@4.5.0 
+[INFO] │ ├── async-foreach@0.1.3 
+[INFO] │ ├─┬ cross-spawn@3.0.1 
+[INFO] │ │ └─┬ lru-cache@4.0.2 
+[INFO] │ │   ├── pseudomap@1.0.2 
+[INFO] │ │   └── yallist@2.1.2 
+[INFO] │ ├── get-stdin@4.0.1 
+[INFO] │ ├── glob@7.1.1 
+[INFO] │ ├── in-publish@2.0.0 
+[INFO] │ ├── lodash.assign@4.2.0 
+[INFO] │ ├── lodash.clonedeep@4.5.0 
+[INFO] │ ├── lodash.mergewith@4.6.0 
+[INFO] │ ├─┬ meow@3.7.0 
+[INFO] │ │ ├─┬ camelcase-keys@2.1.0 
+[INFO] │ │ │ └── camelcase@2.1.1 
+[INFO] │ │ ├── decamelize@1.2.0 
+[INFO] │ │ ├─┬ loud-rejection@1.6.0 
+[INFO] │ │ │ ├─┬ currently-unhandled@0.4.1 
+[INFO] │ │ │ │ └── array-find-index@1.0.2 
+[INFO] │ │ │ └── signal-exit@3.0.2 
+[INFO] │ │ ├── map-obj@1.0.1 
+[INFO] │ │ ├── minimist@1.2.0 
+[INFO] │ │ ├─┬ normalize-package-data@2.3.6 
+[INFO] │ │ │ ├── hosted-git-info@2.2.0 
+[INFO] │ │ │ ├─┬ is-builtin-module@1.0.0 
+[INFO] │ │ │ │ └── builtin-modules@1.1.1 
+[INFO] │ │ │ └─┬ validate-npm-package-license@3.0.1 
+[INFO] │ │ │   ├─┬ spdx-correct@1.0.2 
+[INFO] │ │ │   │ └── spdx-license-ids@1.2.2 
+[INFO] │ │ │   └── spdx-expression-parse@1.0.4 
+[INFO] │ │ ├─┬ read-pkg-up@1.0.1 
+[INFO] │ │ │ └─┬ read-pkg@1.1.0 
+[INFO] │ │ │   ├─┬ load-json-file@1.1.0 
+[INFO] │ │ │   │ ├─┬ parse-json@2.2.0 
+[INFO] │ │ │   │ │ └─┬ error-ex@1.3.1 
+[INFO] │ │ │   │ │   └── is-arrayish@0.2.1 
+[INFO] │ │ │   │ └─┬ strip-bom@2.0.0 
+[INFO] │ │ │   │   └── is-utf8@0.2.1 
+[INFO] │ │ │   └── path-type@1.1.0 
+[INFO] │ │ ├─┬ redent@1.0.0 
+[INFO] │ │ │ ├── indent-string@2.1.0 
+[INFO] │ │ │ └── strip-indent@1.0.1 
+[INFO] │ │ └── trim-newlines@1.0.0 
+[INFO] │ ├── nan@2.5.1 
+[INFO] │ ├─┬ node-gyp@3.6.0 
+[INFO] │ │ ├── fstream@1.0.11 
+[INFO] │ │ ├── glob@7.1.1 
+[INFO] │ │ ├── graceful-fs@4.1.11 
+[INFO] │ │ ├── osenv@0.1.4 
+[INFO] │ │ └─┬ tar@2.2.1 
+[INFO] │ │   └── block-stream@0.0.9 
+[INFO] │ ├─┬ npmlog@4.0.2 
+[INFO] │ │ ├─┬ are-we-there-yet@1.1.2 
+[INFO] │ │ │ └── delegates@1.0.0 
+[INFO] │ │ ├── console-control-strings@1.1.0 
+[INFO] │ │ ├─┬ gauge@2.7.3 
+[INFO] │ │ │ ├── aproba@1.1.1 
+[INFO] │ │ │ ├── has-unicode@2.0.1 
+[INFO] │ │ │ └── wide-align@1.1.0 
+[INFO] │ │ └── set-blocking@2.0.0 
+[INFO] │ ├─┬ request@2.79.0 
+[INFO] │ │ ├── aws-sign2@0.6.0 
+[INFO] │ │ ├── aws4@1.6.0 
+[INFO] │ │ ├── caseless@0.11.0 
+[INFO] │ │ ├─┬ combined-stream@1.0.5 
+[INFO] │ │ │ └── delayed-stream@1.0.0 
+[INFO] │ │ ├── forever-agent@0.6.1 
+[INFO] │ │ ├─┬ form-data@2.1.2 
+[INFO] │ │ │ └── asynckit@0.4.0 
+[INFO] │ │ ├─┬ har-validator@2.0.6 
+[INFO] │ │ │ └── commander@2.9.0 
+[INFO] │ │ ├─┬ hawk@3.1.3 
+[INFO] │ │ │ ├── boom@2.10.1 
+[INFO] │ │ │ ├── cryptiles@2.0.5 
+[INFO] │ │ │ ├── hoek@2.16.3 
+[INFO] │ │ │ └── sntp@1.0.9 
+[INFO] │ │ ├─┬ http-signature@1.1.1 
+[INFO] │ │ │ ├── assert-plus@0.2.0 
+[INFO] │ │ │ ├─┬ jsprim@1.4.0 
+[INFO] │ │ │ │ ├── assert-plus@1.0.0 
+[INFO] │ │ │ │ ├── extsprintf@1.0.2 
+[INFO] │ │ │ │ ├── json-schema@0.2.3 
+[INFO] │ │ │ │ └── verror@1.3.6 
+[INFO] │ │ │ └─┬ sshpk@1.11.0 
+[INFO] │ │ │   ├── asn1@0.2.3 
+[INFO] │ │ │   ├── assert-plus@1.0.0 
+[INFO] │ │ │   ├── bcrypt-pbkdf@1.0.1 
+[INFO] │ │ │   ├─┬ dashdash@1.14.1 
+[INFO] │ │ │   │ └── assert-plus@1.0.0 
+[INFO] │ │ │   ├── ecc-jsbn@0.1.1 
+[INFO] │ │ │   ├─┬ getpass@0.1.6 
+[INFO] │ │ │   │ └── assert-plus@1.0.0 
+[INFO] │ │ │   ├── jodid25519@1.0.2 
+[INFO] │ │ │   ├── jsbn@0.1.1 
+[INFO] │ │ │   └── tweetnacl@0.14.5 
+[INFO] │ │ ├── is-typedarray@1.0.0 
+[INFO] │ │ ├── isstream@0.1.2 
+[INFO] │ │ ├── json-stringify-safe@5.0.1 
+[INFO] │ │ ├── oauth-sign@0.8.2 
+[INFO] │ │ ├── qs@6.3.2 
+[INFO] │ │ ├── stringstream@0.0.5 
+[INFO] │ │ ├─┬ tough-cookie@2.3.2 
+[INFO] │ │ │ └── punycode@1.4.1 
+[INFO] │ │ ├── tunnel-agent@0.4.3 
+[INFO] │ │ └── uuid@3.0.1 
+[INFO] │ ├─┬ sass-graph@2.1.2 
+[INFO] │ │ └── glob@7.1.1 
+[INFO] │ └── stdout-stream@1.4.0 
 [INFO] ├─┬ postcss-cli@2.6.0 
 [INFO] │ ├─┬ chokidar@1.6.1 
 [INFO] │ │ ├─┬ anymatch@1.3.0 
@@ -900,7 +823,8 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ │ ├── glob-parent@2.0.0 
 [INFO] │ │ ├─┬ is-binary-path@1.0.1 
 [INFO] │ │ │ └── binary-extensions@1.8.0 
-[INFO] │ │ └── readdirp@2.1.0 
+[INFO] │ │ └─┬ readdirp@2.1.0 
+[INFO] │ │   └── set-immediate-shim@1.0.1 
 [INFO] │ ├─┬ globby@4.1.0 
 [INFO] │ │ ├── glob@6.0.4 
 [INFO] │ │ └── pify@2.3.0 
@@ -910,22 +834,12 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ └─┬ yargs@4.8.1 
 [INFO] │   ├─┬ cliui@3.2.0 
 [INFO] │   │ └── wrap-ansi@2.1.0 
-[INFO] │   ├── decamelize@1.2.0 
 [INFO] │   ├── get-caller-file@1.0.2 
 [INFO] │   ├─┬ os-locale@1.4.0 
 [INFO] │   │ └─┬ lcid@1.0.0 
 [INFO] │   │   └── invert-kv@1.0.0 
-[INFO] │   ├─┬ read-pkg-up@1.0.1 
-[INFO] │   │ └─┬ read-pkg@1.1.0 
-[INFO] │   │   ├─┬ load-json-file@1.1.0 
-[INFO] │   │   │ ├─┬ parse-json@2.2.0 
-[INFO] │   │   │ │ └─┬ error-ex@1.3.1 
-[INFO] │   │   │ │   └── is-arrayish@0.2.1 
-[INFO] │   │   │ └── strip-bom@2.0.0 
-[INFO] │   │   └── path-type@1.1.0 
 [INFO] │   ├── require-directory@2.1.1 
 [INFO] │   ├── require-main-filename@1.0.1 
-[INFO] │   ├── set-blocking@2.0.0 
 [INFO] │   ├── which-module@1.0.0 
 [INFO] │   ├── window-size@0.2.0 
 [INFO] │   ├── y18n@3.2.1 
@@ -936,19 +850,33 @@ Build date: 2017-03-15-18:12:01
 [INFO] │ ├── glob@7.1.1 
 [INFO] │ ├── interpret@1.0.1 
 [INFO] │ └── rechoir@0.6.2 
-[INFO] ├─┬ shx@0.1.4 
+[INFO] ├─┬ shx@0.2.2 
+[INFO] │ ├── es6-object-assign@1.0.3 
 [INFO] │ └── minimist@1.2.0 
 [INFO] ├── tether@1.4.0 
-[INFO] └─┬ time-grunt@1.4.0 
-[INFO]   ├─┬ date-time@1.1.0 
-[INFO]   │ └── time-zone@0.1.0 
-[INFO]   ├── figures@1.7.0 
-[INFO]   ├── hooker@0.2.3 
-[INFO]   ├── number-is-nan@1.0.1 
-[INFO]   └─┬ pretty-ms@2.1.0 
-[INFO]     ├── is-finite@1.0.2 
-[INFO]     ├── parse-ms@1.0.1 
-[INFO]     └── plur@1.0.0 
+[INFO] ├─┬ time-grunt@1.4.0 
+[INFO] │ ├─┬ date-time@1.1.0 
+[INFO] │ │ └── time-zone@0.1.0 
+[INFO] │ ├── figures@1.7.0 
+[INFO] │ ├── hooker@0.2.3 
+[INFO] │ ├── number-is-nan@1.0.1 
+[INFO] │ └─┬ pretty-ms@2.1.0 
+[INFO] │   ├── is-finite@1.0.2 
+[INFO] │   ├── parse-ms@1.0.1 
+[INFO] │   └── plur@1.0.0 
+[INFO] └─┬ uglify-js@2.8.13 
+[INFO]   ├── uglify-to-browserify@1.0.2 
+[INFO]   └─┬ yargs@3.10.0 
+[INFO]     ├── camelcase@1.2.1 
+[INFO]     ├─┬ cliui@2.1.0 
+[INFO]     │ ├─┬ center-align@0.1.3 
+[INFO]     │ │ ├─┬ align-text@0.1.4 
+[INFO]     │ │ │ ├── longest@1.0.1 
+[INFO]     │ │ │ └── repeat-string@1.6.1 
+[INFO]     │ │ └── lazy-cache@1.0.4 
+[INFO]     │ ├── right-align@0.1.3 
+[INFO]     │ └── wordwrap@0.0.2 
+[INFO]     └── window-size@0.1.0 
 [INFO] 
 [INFO] 
 [INFO] --- frontend-maven-plugin:1.0:grunt (step #8: grunt build) @ tobago-theme-standard ---
@@ -956,24 +884,47 @@ Build date: 2017-03-15-18:12:01
 [INFO] Running "clean:dist" (clean) task
 [INFO] >> 1 path cleaned.
 [INFO] 
-[INFO] Running "sass:core" (sass) task
+[INFO] Running "exec:sass" (exec) task
 [INFO] 
-[INFO] Running "sass:extras" (sass) task
+[INFO] > bootstrap@4.0.0-alpha.6 sass __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap.scss dist/css/bootstrap.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-grid.scss dist/css/bootstrap-grid.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-reboot.scss dist/css/bootstrap-reboot.css
 [INFO] 
-[INFO] Running "sass:docs" (sass) task
+[INFO] >> Rendering Complete, saving .css file...
+[INFO] >> Wrote CSS to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap.css
+[INFO] >> Wrote Source Map to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap.css.map
+[INFO] >> Rendering Complete, saving .css file...
+[INFO] >> Wrote Source Map to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap-grid.css.map
+[INFO] >> Wrote CSS to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap-grid.css
+[INFO] >> Rendering Complete, saving .css file...
+[INFO] >> Wrote Source Map to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap-reboot.css.map
+[INFO] >> Wrote CSS to __CURRENT__/tobago-theme-standard/target/bootstrap/dist/css/bootstrap-reboot.css
+[INFO] 
+[INFO] Running "exec:sass-docs" (exec) task
+[INFO] 
+[INFO] > bootstrap@4.0.0-alpha.6 sass-docs __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > node-sass --output-style expanded --source-map true --precision 6 docs/assets/scss/docs.scss docs/assets/css/docs.min.css
+[INFO] 
+[INFO] >> Rendering Complete, saving .css file...
+[INFO] >> Wrote CSS to __CURRENT__/tobago-theme-standard/target/bootstrap/docs/assets/css/docs.min.css
+[INFO] >> Wrote Source Map to __CURRENT__/tobago-theme-standard/target/bootstrap/docs/assets/css/docs.min.css.map
 [INFO] 
 [INFO] Running "exec:postcss" (exec) task
 [INFO] 
-[INFO] > bootstrap@4.0.0-alpha.5 postcss __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > bootstrap@4.0.0-alpha.6 postcss __CURRENT__/tobago-theme-standard/target/bootstrap
 [INFO] > postcss --config grunt/postcss.js --replace dist/css/*.css
 [INFO] 
 [INFO] 
-[INFO] Running "cssmin:core" (cssmin) task
-[INFO] >> 4 sourcemaps created.
-[INFO] >> 4 files created. 389.27 kB → 294.92 kB
+[INFO] Running "exec:clean-css" (exec) task
+[INFO] 
+[INFO] > bootstrap@4.0.0-alpha.6 clean-css __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > cleancss --skip-advanced --source-map --output dist/css/bootstrap.min.css dist/css/bootstrap.css && cleancss --skip-advanced --source-map --output dist/css/bootstrap-grid.min.css dist/css/bootstrap-grid.css && cleancss --skip-advanced --source-map --output dist/css/bootstrap-reboot.min.css dist/css/bootstrap-reboot.css
+[INFO] 
+[INFO] 
+[INFO] Running "exec:clean-css-docs" (exec) task
+[INFO] 
+[INFO] > bootstrap@4.0.0-alpha.6 clean-css-docs __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > cleancss --skip-advanced --source-map --output docs/assets/css/docs.min.css docs/assets/css/docs.min.css
 [INFO] 
-[INFO] Running "cssmin:docs" (cssmin) task
-[INFO] >> No files created.
 [INFO] 
 [INFO] Running "babel:dev" (babel) task
 [INFO] 
@@ -983,23 +934,25 @@ Build date: 2017-03-15-18:12:01
 [INFO] 
 [INFO] Running "stamp:bootstrap" (stamp) task
 [INFO] 
-[INFO] Running "uglify:core" (uglify) task
-[INFO] File dist/js/bootstrap.min.js created: 96.43 kB → 44.74 kB
-[INFO] >> 1 file created.
+[INFO] Running "exec:uglify" (exec) task
+[INFO] 
+[INFO] > bootstrap@4.0.0-alpha.6 uglify __CURRENT__/tobago-theme-standard/target/bootstrap
+[INFO] > uglifyjs --compress warnings=false --mangle --comments '/^!/' --output dist/js/bootstrap.min.js dist/js/bootstrap.js
+[INFO] 
 [INFO] 
 [INFO] Done.
 [INFO] 
 [INFO] 
-[INFO] Execution Time (2017-03-15 18:14:48 UTC+1)
-[INFO] sass:core     193ms  ▇▇ 4%
-[INFO] sass:extras   189ms  ▇▇ 4%
-[INFO] sass:docs     114ms  ▇▇ 2%
-[INFO] exec:postcss   1.5s  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 30%
-[INFO] cssmin:core   699ms  ▇▇▇▇▇▇▇ 14%
-[INFO] babel:dev        1s  ▇▇▇▇▇▇▇▇▇▇▇ 21%
-[INFO] babel:dist    730ms  ▇▇▇▇▇▇▇ 15%
-[INFO] uglify:core   492ms  ▇▇▇▇▇ 10%
-[INFO] Total 5s
+[INFO] Execution Time (2017-03-17 11:41:47 UTC+1)
+[INFO] exec:sass             1.7s  ▇▇▇▇▇▇▇▇ 18%
+[INFO] exec:sass-docs       812ms  ▇▇▇▇ 9%
+[INFO] exec:postcss          1.6s  ▇▇▇▇▇▇▇ 16%
+[INFO] exec:clean-css        1.6s  ▇▇▇▇▇▇▇▇ 17%
+[INFO] exec:clean-css-docs  737ms  ▇▇▇▇ 8%
+[INFO] babel:dev             1.1s  ▇▇▇▇▇ 12%
+[INFO] babel:dist           722ms  ▇▇▇▇ 8%
+[INFO] exec:uglify           1.1s  ▇▇▇▇▇ 12%
+[INFO] Total 9.4s
 [INFO] 
 [INFO] 
 [INFO] --- maven-resources-plugin:2.7:resources (default-resources) @ tobago-theme-standard ---
@@ -1024,9 +977,9 @@ Build date: 2017-03-15-18:12:01
 [INFO] tether-theme-basic.min.css (504b) -> tether-theme-basic.min.min.css (504b)[100%]
 [INFO] nothing to do, __CURRENT__/tobago-theme-standard/target/classes/META-INF/resources/tobago/standard/tether/1.1.1/css/tether.min.css is younger than original, use 'force' option or clean your target
 [INFO] tether.min.css (237b) -> tether.min.min.css (237b)[100%]
-[INFO] bootstrap.css (150727b) -> bootstrap.min.css (118771b)[78%]
-[INFO] bootstrap.min.css (118756b) -> bootstrap.min.min.css (118504b)[99%]
-[INFO] total input (318385b) -> output (286109b)[89%]
+[INFO] bootstrap.css (215368b) -> bootstrap.min.css (164621b)[76%]
+[INFO] bootstrap.min.css (164631b) -> bootstrap.min.min.css (164340b)[99%]
+[INFO] total input (428901b) -> output (377795b)[88%]
 [INFO] nb warnings: 0, nb errors: 0
 [INFO] 
 [INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ tobago-theme-standard ---
@@ -1054,6 +1007,8 @@ main:
 [INFO] --- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ tobago-theme-standard ---
 [INFO] Compiling 1 source file to __CURRENT__/tobago-theme-standard/target/test-classes
 [WARNING] bootstrap class path not set in conjunction with -source 1.6
+[INFO] __CURRENT__/tobago-theme-standard/src/test/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClassUnitTest.java: __CURRENT__/tobago-theme-standard/src/test/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClassUnitTest.java uses or overrides a deprecated API.
+[INFO] __CURRENT__/tobago-theme-standard/src/test/java/org/apache/myfaces/tobago/renderkit/css/BootstrapClassUnitTest.java: Recompile with -Xlint:deprecation for details.
 [INFO] 
 [INFO] --- maven-surefire-plugin:2.19.1:test (default-test) @ tobago-theme-standard ---
 
@@ -1061,7 +1016,7 @@ main:
  T E S T S
 -------------------------------------------------------
 Running org.apache.myfaces.tobago.renderkit.css.BootstrapClassUnitTest
-Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.105 sec - in org.apache.myfaces.tobago.renderkit.css.BootstrapClassUnitTest
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.094 sec - in org.apache.myfaces.tobago.renderkit.css.BootstrapClassUnitTest
 
 Results :
 
@@ -1069,17 +1024,17 @@ Tests run: 1, Failures: 0, Errors: 0, Sk
 
 [INFO] 
 [INFO] --- maven-jar-plugin:2.6:jar (default-jar) @ tobago-theme-standard ---
-[INFO] Building jar: __CURRENT__/tobago-theme-standard/target/tobago-theme-standard-3.1.0-SNAPSHOT.jar
+[INFO] Building jar: __CURRENT__/tobago-theme-standard/target/tobago-theme-standard-3.1.0.bs4a6-SNAPSHOT.jar
 [INFO] 
 [INFO] --- maven-site-plugin:3.5.1:attach-descriptor (attach-descriptor) @ tobago-theme-standard ---
 [INFO] 
 [INFO] --- maven-install-plugin:2.5.2:install (default-install) @ tobago-theme-standard ---
-[INFO] Installing __CURRENT__/tobago-theme-standard/target/tobago-theme-standard-3.1.0-SNAPSHOT.jar to __REPO__/org/apache/myfaces/tobago/tobago-theme-standard/3.1.0-SNAPSHOT/tobago-theme-standard-3.1.0-SNAPSHOT.jar
-[INFO] Installing __CURRENT__/tobago-theme-standard/pom.xml to __REPO__/org/apache/myfaces/tobago/tobago-theme-standard/3.1.0-SNAPSHOT/tobago-theme-standard-3.1.0-SNAPSHOT.pom
+[INFO] Installing __CURRENT__/tobago-theme-standard/target/tobago-theme-standard-3.1.0.bs4a6-SNAPSHOT.jar to __REPO__/org/apache/myfaces/tobago/tobago-theme-standard/3.1.0.bs4a6-SNAPSHOT/tobago-theme-standard-3.1.0.bs4a6-SNAPSHOT.jar
+[INFO] Installing __CURRENT__/tobago-theme-standard/pom.xml to __REPO__/org/apache/myfaces/tobago/tobago-theme-standard/3.1.0.bs4a6-SNAPSHOT/tobago-theme-standard-3.1.0.bs4a6-SNAPSHOT.pom
 [INFO] ------------------------------------------------------------------------
 [INFO] BUILD SUCCESS
 [INFO] ------------------------------------------------------------------------
-[INFO] Total time: 02:56 min
-[INFO] Finished at: 2017-03-15T18:14:59+01:00
-[INFO] Final Memory: 38M/537M
+[INFO] Total time: 01:38 min
+[INFO] Finished at: 2017-03-17T11:42:02+01:00
+[INFO] Final Memory: 40M/578M
 [INFO] ------------------------------------------------------------------------