diff --git a/cli/src/main/java/org/onosproject/cli/app/ApplicationsListCommand.java b/cli/src/main/java/org/onosproject/cli/app/ApplicationsListCommand.java
index 5766c57..c518b43 100644
--- a/cli/src/main/java/org/onosproject/cli/app/ApplicationsListCommand.java
+++ b/cli/src/main/java/org/onosproject/cli/app/ApplicationsListCommand.java
@@ -43,7 +43,7 @@
                     "features=%s, featuresRepo=%s, permissions=%s";
 
     private static final String SHORT_FMT =
-            "%s %3d  %-28s  %-8s  %-16s  %s";
+            "%s %3d %-32s %-8s %s";
 
     @Option(name = "-s", aliases = "--short", description = "Show short output only",
             required = false, multiValued = false)
@@ -69,7 +69,7 @@
                     if (shortOnly) {
                         print(SHORT_FMT, isActive ? "*" : " ",
                               app.id().id(), app.id().name(), app.version(),
-                              app.origin(), app.description());
+                              app.description());
                     } else {
                         print(FMT, isActive ? "*" : " ",
                               app.id().id(), app.id().name(), app.version(), app.origin(),
diff --git a/core/store/dist/src/main/java/org/onosproject/store/flowobjective/impl/package-info.java b/core/store/dist/src/main/java/org/onosproject/store/flowobjective/impl/package-info.java
new file mode 100644
index 0000000..49acd87
--- /dev/null
+++ b/core/store/dist/src/main/java/org/onosproject/store/flowobjective/impl/package-info.java
@@ -0,0 +1,20 @@
+/*
+ * Copyright 2015 Open Networking Laboratory
+ *
+ * Licensed 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.
+ */
+
+/**
+ * Implementation of distributed store for the flow objective state.
+ */
+package org.onosproject.store.flowobjective.impl;
\ No newline at end of file
diff --git a/docs/pom.xml b/docs/pom.xml
index d2b6006..31ce486 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -103,7 +103,7 @@
                         <group>
                             <title>Sample Applications</title>
                             <packages>
-                                org.onosproject.tvue:org.onosproject.fwd:org.onosproject.ifwd:org.onosproject.mobility:org.onosproject.proxyarp:org.onosproject.foo:org.onosproject.calendar:org.onosproject.optical:org.onosproject.optical.*:org.onosproject.sdnip:org.onosproject.sdnip.*:org.onosproject.config:org.onosproject.routing:org.onosproject.routing*:org.onosproject.bgprouter:org.onosproject.intentperf:org.onosproject.segmentrouting:org.onosproject.segmentrouting.*:org.onosproject.reactive.routing*
+                                org.onosproject.tvue:org.onosproject.fwd:org.onosproject.ifwd:org.onosproject.mobility:org.onosproject.proxyarp:org.onosproject.foo:org.onosproject.calendar:org.onosproject.optical:org.onosproject.optical.*:org.onosproject.sdnip:org.onosproject.sdnip.*:org.onosproject.config:org.onosproject.routing:org.onosproject.routing*:org.onosproject.bgprouter:org.onosproject.intentperf:org.onosproject.segmentrouting:org.onosproject.segmentrouting.*:org.onosproject.reactive.routing*:org.onosproject.messagingperf
                             </packages>
                         </group>
                         <group>
diff --git a/utils/nio/src/main/java/org/onlab/nio/service/package-info.java b/utils/nio/src/main/java/org/onlab/nio/service/package-info.java
new file mode 100644
index 0000000..399a2b9
--- /dev/null
+++ b/utils/nio/src/main/java/org/onlab/nio/service/package-info.java
@@ -0,0 +1,20 @@
+/*
+ * Copyright 2015 Open Networking Laboratory
+ *
+ * Licensed 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.
+ */
+
+/**
+ * Assembly for sending and receiving messages using the I/O loop mechanism.
+ */
+package org.onlab.nio.service;
\ No newline at end of file
