diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2c98ec2c091..167c6ad829a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,8 +7,7 @@
* **Panels**: Delay loading & Lazy load panels as they become visible (scrolled into view) [#5216](https://github.com/grafana/grafana/issues/5216) thx [@jifwin](https://github.com/jifwin)
* **Graph**: Support auto grid min/max when using log scale [#3090](https://github.com/grafana/grafana/issues/3090), thx [@bigbenhur](https://github.com/bigbenhur)
* **Graph**: Support for histograms [#600](https://github.com/grafana/grafana/issues/600)
-* **Elasticsearch**: Support histogram aggregations [#3164](https://github.com/grafana/grafana/issues/3164)
-
+* **Prometheus**: Support table response formats (column per label) [#6140](https://github.com/grafana/grafana/issues/6140), thx [@mtanda](https://github.com/mtanda)
## Minor Enchancements
@@ -20,10 +19,12 @@
* **Oauth**: Add common type for oauth authorization errors [#6428](https://github.com/grafana/grafana/issues/6428) thx [@amenzhinsky](https://github.com/amenzhinsky)
* **Templating**: Data source variable now supports multi value and panel repeats [#7030](https://github.com/grafana/grafana/issues/7030) thx [@mtanda](https://github.com/mtanda)
* **Telegram**: Telegram alert is not sending metric and legend. [#8110](https://github.com/grafana/grafana/issues/8110), thx [@bashgeek](https://github.com/bashgeek)
+* **Graph**: Support dashed lines [#514](https://github.com/grafana/grafana/issues/514), thx [@smalik03](https://github.com/smalik03)
## Fixes
* **Table Panel**: Fixed annotation display in table panel, [#8023](https://github.com/grafana/grafana/issues/8023)
* **Dashboard**: If refresh is blocked due to tab not visible, then refresh when it becomes visible [#8076](https://github.com/grafana/grafana/issues/8076) thanks [@SimenB](https://github.com/SimenB)
+* **Snapshots**: Fixed problem with annotations & snapshots [#7659](https://github.com/grafana/grafana/issues/7659)
# 4.2.0 (2017-03-22)
## Minor Enhancements
diff --git a/conf/defaults.ini b/conf/defaults.ini
index 9955c22ca17..8eca55fc67c 100644
--- a/conf/defaults.ini
+++ b/conf/defaults.ini
@@ -25,7 +25,7 @@ plugins = data/plugins
#################################### Server ##############################
[server]
-# Protocol (http or https)
+# Protocol (http, https, socket)
protocol = http
# The ip address to bind to, empty will bind to all interfaces
@@ -57,6 +57,9 @@ enable_gzip = false
cert_file =
cert_key =
+# Unix socket path
+socket = /tmp/grafana.sock
+
#################################### Database ############################
[database]
# You can configure the database connection by specifying type, host, name, user and password
@@ -444,3 +447,4 @@ secret_key =
url =
username =
password =
+public_url =
diff --git a/conf/sample.ini b/conf/sample.ini
index 87505221790..84328e7d537 100644
--- a/conf/sample.ini
+++ b/conf/sample.ini
@@ -26,7 +26,7 @@
#
#################################### Server ####################################
[server]
-# Protocol (http or https)
+# Protocol (http, https, socket)
;protocol = http
# The ip address to bind to, empty will bind to all interfaces
@@ -59,6 +59,9 @@
;cert_file =
;cert_key =
+# Unix socket path
+;socket =
+
#################################### Database ####################################
[database]
# You can configure the database connection by specifying type, host, name, user and password
@@ -399,5 +402,6 @@
[external_image_storage.webdav]
;url =
+;public_url =
;username =
;password =
diff --git a/docs/Makefile b/docs/Makefile
index e5c555f8019..c79d3087492 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -1,4 +1,4 @@
-.PHONY: all default docs docs-build docs-shell shell test
+.PHONY: all default docs docs-build docs-shell shell checkvars
# to allow `make DOCSPORT=9000 docs`
DOCSPORT := 3004
@@ -11,23 +11,24 @@ DOCS_MOUNT := -v $(SOURCES_HOST_DIR):/site/content
DOCKER_RUN_DOCS := docker run --rm -it $(DOCS_MOUNT) -e NOCACHE -p 3004:3004 -p 3005:3005
+VERSION := $(shell head -n 1 VERSION)
default: docs
+checkvars:
+ifndef ENV
+ $(error ENV is undefined set via ENV=staging or ENV=prod as argument to make)
+endif
+
docs: docs-build
$(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "grunt --env=dev-docs && grunt connect --port=3004"
-test: docs-build
- $(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "ls -la /site/content"
-
-docs-watch: docs-build
+watch: docs-build
$(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "grunt --env=dev-docs && grunt connect --port=3004 & grunt watch --port=3004 --env=dev-docs"
-publish: docs-build
- $(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "./publish.sh staging-docs root"
-
-publish-prod: docs-build
- $(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "./publish.sh prod-docs root"
+publish: checkvars docs-build
+ $(info Publishing ENV=${ENV} and VERSION=${VERSION})
+ $(DOCKER_RUN_DOCS) $(DOCS_MOUNT) -e DOCKERHOST "$(DOCKER_DOCS_IMAGE)" /bin/bash -c "./publish.sh ${ENV}-docs ${VERSION}"
docs-build:
docker build -t "$(DOCKER_DOCS_IMAGE)" --no-cache .
diff --git a/docs/VERSION b/docs/VERSION
index fd2a01863fd..2fa2c5705ad 100644
--- a/docs/VERSION
+++ b/docs/VERSION
@@ -1 +1 @@
-3.1.0
+v4.2
diff --git a/docs/sources/archive.md b/docs/sources/archive.md
index af4ab5e7a8f..7102395f4c7 100644
--- a/docs/sources/archive.md
+++ b/docs/sources/archive.md
@@ -12,10 +12,7 @@ weight = 200
Here you can find links to older versions of the documentation that might be better suited for your version
of Grafana.
-- [Latest](/)
-- [Version 3.1](/v3.1)
-- [Version 3.0](/v3.0)
-- [Version 2.6](/v2.6)
-- [Version 2.5](/v2.5)
-- [Version 2.1](/v2.1)
-- [Version 2.0](/v2.0)
+- [Latest](http://docs.grafana.org)
+- [Version 4.2](http://docs.grafana.org/v4.2)
+- [Version 3.1](http://docs.grafana.org/v3.1)
+- [Version 3.0](http://docs.grafana.org/v3.0)
diff --git a/docs/sources/features/panels/dashlist.md b/docs/sources/features/panels/dashlist.md
index 5377c7c1941..b6f7d21c1c8 100644
--- a/docs/sources/features/panels/dashlist.md
+++ b/docs/sources/features/panels/dashlist.md
@@ -2,6 +2,7 @@
title = "Dashboard List"
keywords = ["grafana", "dashboard list", "documentation", "panel", "dashlist"]
type = "docs"
+aliases = ["/reference/dashlist/"]
[menu.docs]
name = "Dashboard list"
parent = "panels"
diff --git a/docs/sources/features/panels/graph.md b/docs/sources/features/panels/graph.md
index 7fbebcfeb97..fdd3f271184 100644
--- a/docs/sources/features/panels/graph.md
+++ b/docs/sources/features/panels/graph.md
@@ -2,6 +2,7 @@
title = "Graph Panel"
keywords = ["grafana", "graph panel", "documentation", "guide", "graph"]
type = "docs"
+aliases = ["/reference/graph/"]
[menu.docs]
name = "Graph"
parent = "panels"
@@ -18,7 +19,8 @@ Clicking the title for a panel exposes a menu. The `edit` option opens addition
options for the panel.
## General
-
+
+
The general tab allows customization of a panel's appearance and menu options.
@@ -31,14 +33,14 @@ The general tab allows customization of a panel's appearance and menu options.
### Drilldown / detail link
The drilldown section allows adding dynamic links to the panel that can link to other dashboards
-or URLs
+or URLs.
Each link has a title, a type and params. A link can be either a ``dashboard`` or ``absolute`` links.
-If it is a dashboard links, the `dashboard` value must be the name of a dashboard. If it's an
-`absolute` link, the URL is the URL to link.
+If it is a dashboard link, the `dashboard` value must be the name of a dashboard. If it is an
+`absolute` link, the URL is the URL to the link.
``params`` allows adding additional URL params to the links. The format is the ``name=value`` with
-multiple params separate by ``&``. Template variables can be added as values using ``$myvar``.
+multiple params separated by ``&``. Template variables can be added as values using ``$myvar``.
When linking to another dashboard that uses template variables, you can use ``var-myvar=value`` to
populate the template variable to a desired value from the link.
@@ -50,7 +52,7 @@ options.
## Axes & Grid
-
+
The Axes & Grid tab controls the display of axes, grids and legend.
@@ -74,7 +76,6 @@ values can be hidden from the legend using the ``Hide empty`` checkbox.
### Legend Values
Additional values can be shown along-side the legend names:
-
- ``Total`` - Sum of all values returned from metric query
- ``Current`` - Last value returned from the metric query
- ``Min`` - Minimum of all values returned from metric query
@@ -83,16 +84,16 @@ Additional values can be shown along-side the legend names:
- ``Decimals`` - Controls how many decimals are displayed for legend values (and graph hover tooltips)
The legend values are calculated client side by Grafana and depend on what type of
-aggregation or point consolidation you metric query is using. All the above legend values cannot
+aggregation or point consolidation your metric query is using. All the above legend values cannot
be correct at the same time. For example if you plot a rate like requests/second, this is probably
using average as aggregator, then the Total in the legend will not represent the total number of requests.
It is just the sum of all data points received by Grafana.
## Display styles
-
+
-Display styles controls properties of the graph.
+Display styles control visual properties of the graph.
### Thresholds
@@ -108,19 +109,19 @@ the graph crosses a particular threshold.
### Line Options
-- ``Line Fill`` - Amount of color fill for a series. 0 is none.
+- ``Line Fill`` - Amount of color fill for a series. 0 is none.
- ``Line Width`` - The width of the line for a series.
- ``Null point mode`` - How null values are displayed
- ``Staircase line`` - Draws adjacent points as staircase
### Multiple Series
-If there are multiple series, they can be display as a group.
+If there are multiple series, they can be displayed as a group.
- ``Stack`` - Each series is stacked on top of another
-- ``Percent`` - Each series is draw as a percent of the total of all series
+- ``Percent`` - Each series is drawn as a percentage of the total of all series
-If you have stack enabled you can select what the mouse hover feature should show.
+If you have stack enabled, you can select what the mouse hover feature should show.
- Cumulative - Sum of series below plus the series you hover over
- Individual - Just the value for the series you hover over
@@ -134,11 +135,15 @@ If you have stack enabled you can select what the mouse hover feature should sho
- ``All series`` - Show all series on the same tooltip and a x crosshairs to help follow all series
-### Series specific overrides
+### Series Specific Overrides
-The section allows a series to be render different from the rest. For example, one series can be given
-a thicker line width to make it standout.
+The section allows a series to be rendered differently from the others. For example, one series can be given
+a thicker line width to make it stand out.
-## Time range
+#### Dashes Drawing Style
+
+There is an option under Series overrides to draw lines as dashes. Set Dashes to the value True to override the line draw setting for a specific series.
+
+## Time Range

diff --git a/docs/sources/features/panels/singlestat.md b/docs/sources/features/panels/singlestat.md
index 9f2edb7df05..eb9b2f26ea5 100644
--- a/docs/sources/features/panels/singlestat.md
+++ b/docs/sources/features/panels/singlestat.md
@@ -2,6 +2,7 @@
title = "Singlestat Panel"
keywords = ["grafana", "dashboard", "documentation", "panels", "singlestat"]
type = "docs"
+aliases = ["/reference/singlestat/"]
[menu.docs]
name = "Singlestat"
parent = "panels"
diff --git a/docs/sources/features/panels/table_panel.md b/docs/sources/features/panels/table_panel.md
index 249886e1f57..9ddc2cddaee 100644
--- a/docs/sources/features/panels/table_panel.md
+++ b/docs/sources/features/panels/table_panel.md
@@ -2,6 +2,7 @@
title = "Table Panel"
keywords = ["grafana", "dashboard", "documentation", "panels", "table panel"]
type = "docs"
+aliases = ["/reference/table/"]
[menu.docs]
name = "Table"
parent = "panels"
diff --git a/docs/sources/http_api/dashboard.md b/docs/sources/http_api/dashboard.md
index 12d46dc6aa4..053d4a8d329 100644
--- a/docs/sources/http_api/dashboard.md
+++ b/docs/sources/http_api/dashboard.md
@@ -221,10 +221,6 @@ Get all tags of dashboards
}
]
-## Dashboard from JSON file
-
-`GET /file/:file`
-
## Search Dashboards
`GET /api/search/`
diff --git a/docs/sources/installation/configuration.md b/docs/sources/installation/configuration.md
index 176f843e86b..9cfee7140c4 100644
--- a/docs/sources/installation/configuration.md
+++ b/docs/sources/installation/configuration.md
@@ -313,7 +313,6 @@ example:
auth_url = https://github.com/login/oauth/authorize
token_url = https://github.com/login/oauth/access_token
api_url = https://api.github.com/user
- allow_sign_up = false
team_ids =
allowed_organizations =
@@ -644,6 +643,9 @@ Secret key. e.g. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
### url
Url to where Grafana will send PUT request with images
+### public_url
+Optional parameter. Url to send to users in notifications, directly appended with the resulting uploaded file name.
+
### username
basic auth username
diff --git a/emails/templates/layouts/default.html b/emails/templates/layouts/default.html
index f6d729054cd..07eb32874c7 100644
--- a/emails/templates/layouts/default.html
+++ b/emails/templates/layouts/default.html
@@ -94,8 +94,7 @@ td[class="stack-column-center"] {