mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Merge branch 'master' into editable_false
This commit is contained in:
commit
af277f560f
@ -1,7 +1,9 @@
|
||||
# 2.0.3 (unreleased)
|
||||
|
||||
**Fixes**
|
||||
- [Issue #1872](https://github.com/grafana/grafana/issues/1872). Firefox/IE issue, invisible text in dashboard search fixed
|
||||
- [Issue #1857](https://github.com/grafana/grafana/issues/1857). /api/login/ping Fix for issue when behind reverse proxy and subpath
|
||||
- [Issue #1863](https://github.com/grafana/grafana/issues/1863). MySQL: Dashboard.data column type changed to mediumtext (sql migration added)
|
||||
|
||||
# 2.0.2 (2015-04-22)
|
||||
|
||||
|
18
Godeps/Godeps.json
generated
18
Godeps/Godeps.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"ImportPath": "github.com/grafana/grafana",
|
||||
"GoVersion": "go1.4.2",
|
||||
"GoVersion": "go1.3",
|
||||
"Packages": [
|
||||
"./pkg/..."
|
||||
],
|
||||
@ -13,6 +13,14 @@
|
||||
"ImportPath": "github.com/Unknwon/macaron",
|
||||
"Rev": "93de4f3fad97bf246b838f828e2348f46f21f20a"
|
||||
},
|
||||
{
|
||||
"ImportPath": "github.com/dalu/slug",
|
||||
"Rev": "6dbd13912e9be466e2c1de349a2c7d1466c97e07"
|
||||
},
|
||||
{
|
||||
"ImportPath": "github.com/dalu/unidecode",
|
||||
"Rev": "339814d47f3e32a6f7036a0a4c56ed9b373dd755"
|
||||
},
|
||||
{
|
||||
"ImportPath": "github.com/go-sql-driver/mysql",
|
||||
"Comment": "v1.2-26-g9543750",
|
||||
@ -27,10 +35,6 @@
|
||||
"Comment": "v0.4.2-58-ge2889e5",
|
||||
"Rev": "e2889e5517600b82905f1d2ba8b70deb71823ffe"
|
||||
},
|
||||
{
|
||||
"ImportPath": "github.com/gosimple/slug",
|
||||
"Rev": "a2392a4a87fa0366cbff131d3fd421f83f52492f"
|
||||
},
|
||||
{
|
||||
"ImportPath": "github.com/jtolds/gls",
|
||||
"Rev": "f1ac7f4f24f50328e6bc838ca4437d1612a0243c"
|
||||
@ -87,10 +91,6 @@
|
||||
{
|
||||
"ImportPath": "gopkgs.com/pool.v1",
|
||||
"Rev": "c850f092aad1780cbffff25f471c5cc32097932a"
|
||||
},
|
||||
{
|
||||
"ImportPath": "gopkgs.com/unidecode.v1",
|
||||
"Rev": "4deae2c05236b41cc39f8144ac87a837ba974d40"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -4,10 +4,9 @@ slug
|
||||
Package `slug` generate slug from unicode string, URL-friendly slugify with
|
||||
multiple languages support.
|
||||
|
||||
[](https://godoc.org/github.com/gosimple/slug)
|
||||
[](https://drone.io/github.com/gosimple/slug/latest)
|
||||
[](https://godoc.org/github.com/dalu/slug)
|
||||
|
||||
[Documentation online](http://godoc.org/github.com/gosimple/slug)
|
||||
[Documentation online](http://godoc.org/github.com/dalu/slug)
|
||||
|
||||
## Example
|
||||
|
||||
@ -38,12 +37,9 @@ multiple languages support.
|
||||
fmt.Println(textSub) // Will print 'sand-is-hot'
|
||||
}
|
||||
|
||||
### Requests or bugs?
|
||||
<https://github.com/gosimple/slug/issues>
|
||||
|
||||
## Installation
|
||||
|
||||
go get -u github.com/gosimple/slug
|
||||
go get -u github.com/dalu/slug
|
||||
|
||||
## License
|
||||
|
@ -12,7 +12,7 @@ Example:
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/gosimple/slug"
|
||||
"github.com/dalu/slug"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
@ -35,9 +35,5 @@ Example:
|
||||
textSub := slug.Make("water is hot")
|
||||
fmt.Println(textSub) // Will print 'sand-is-hot'
|
||||
}
|
||||
|
||||
Requests or bugs?
|
||||
|
||||
https://github.com/gosimple/slug/issues
|
||||
*/
|
||||
package slug
|
@ -6,7 +6,7 @@
|
||||
package slug
|
||||
|
||||
import (
|
||||
"gopkgs.com/unidecode.v1"
|
||||
"github.com/dalu/unidecode"
|
||||
"regexp"
|
||||
"strings"
|
||||
)
|
@ -3,10 +3,4 @@ unidecode
|
||||
|
||||
Unicode transliterator in Golang - Replaces non-ASCII characters with their ASCII approximations.
|
||||
|
||||
Please, use the following import path to ensure a stable API:
|
||||
|
||||
```go
|
||||
import "gopkgs.com/unidecode.v1"
|
||||
```
|
||||
|
||||
View other available versions, documentation and examples at http://gopkgs.com/unidecode
|
2
Godeps/_workspace/src/github.com/gosimple/slug/.gitignore
generated
vendored
2
Godeps/_workspace/src/github.com/gosimple/slug/.gitignore
generated
vendored
@ -1,2 +0,0 @@
|
||||
_*
|
||||
cover*.out
|
24
Godeps/_workspace/src/gopkgs.com/unidecode.v1/gopkgs.go
generated
vendored
24
Godeps/_workspace/src/gopkgs.com/unidecode.v1/gopkgs.go
generated
vendored
@ -1,24 +0,0 @@
|
||||
package unidecode
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"reflect"
|
||||
)
|
||||
|
||||
// gopkgs.go: v1
|
||||
|
||||
// NOTE: This file is autogenerated by gopkgs.com.
|
||||
const (
|
||||
goPkgsSrcPath = "github.com/rainycape/unidecode"
|
||||
goPkgsName = "unidecode"
|
||||
goPkgsErrFmt = "invalid import path %s - please use gopkgs.com/%s.v1 or see http://gopkgs.com/%s"
|
||||
)
|
||||
|
||||
type goPkgsCheck struct{}
|
||||
|
||||
func init() {
|
||||
typ := reflect.TypeOf(goPkgsCheck{})
|
||||
if typ.PkgPath() == goPkgsSrcPath {
|
||||
panic(fmt.Errorf(goPkgsErrFmt, typ.PkgPath(), goPkgsName, goPkgsName))
|
||||
}
|
||||
}
|
@ -7,7 +7,7 @@ app_mode = production
|
||||
|
||||
#################################### Paths ####################################
|
||||
[paths]
|
||||
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is useD)
|
||||
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
|
||||
#
|
||||
data = data
|
||||
#
|
||||
@ -62,7 +62,7 @@ path = grafana.db
|
||||
|
||||
#################################### Session ####################################
|
||||
[session]
|
||||
# Either "memory", "file", "redis", "mysql", default is "memory"
|
||||
# Either "memory", "file", "redis", "mysql", "postgresql", default is "file"
|
||||
provider = file
|
||||
|
||||
# Provider config options
|
||||
@ -70,6 +70,7 @@ provider = file
|
||||
# file: session dir path, is relative to grafana data_path
|
||||
# redis: config like redis server addr, poolSize, password, e.g. `127.0.0.1:6379,100,grafana`
|
||||
# mysql: go-sql-driver/mysql dsn config string, e.g. `user:password@tcp(127.0.0.1)/database_name`
|
||||
|
||||
provider_config = sessions
|
||||
|
||||
# Session cookie name
|
||||
|
@ -7,7 +7,7 @@
|
||||
|
||||
#################################### Paths ####################################
|
||||
[paths]
|
||||
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is useD)
|
||||
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
|
||||
#
|
||||
;data = /var/lib/grafana
|
||||
#
|
||||
@ -62,7 +62,7 @@
|
||||
|
||||
#################################### Session ####################################
|
||||
[session]
|
||||
# Either "memory", "file", "redis", "mysql", default is "memory"
|
||||
# Either "memory", "file", "redis", "mysql", "postgresql", default is "file"
|
||||
;provider = file
|
||||
|
||||
# Provider config options
|
||||
|
@ -219,7 +219,7 @@ set to true, any user successfully authenticating via google auth will be automa
|
||||
## [session]
|
||||
|
||||
### provider
|
||||
Valid values are "memory", "file", "mysql", 'postgres'. Default is "memory".
|
||||
Valid values are "memory", "file", "mysql", 'postgres'. Default is "file".
|
||||
|
||||
### provider_config
|
||||
This option should be configured differently depending on what type of session provider you have configured.
|
||||
|
@ -24,7 +24,7 @@ All of this applies to all Panels in the Dashboard (except those with Panel Time
|
||||
|
||||
It's possible to customize the options displayed for relative time and the auto-refresh options.
|
||||
|
||||
From Dashboard setttings, click the Timepicker tab. From here you can specify the relative and auto refresh intervals. The Timepicker tab settings are saved on a per Dashboard basis.
|
||||
From Dashboard setttings, click the Timepicker tab. From here you can specify the relative and auto refresh intervals. The Timepicker tab settings are saved on a per Dashboard basis. Entries are comma seperated and accept a number followed by one of the following units: s (seconds), m (minutes), h (hours), d (days), w (weeks), M (months), y (years).
|
||||
|
||||

|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
"company": "Coding Instinct AB"
|
||||
},
|
||||
"name": "grafana",
|
||||
"version": "2.0.3-pre1",
|
||||
"version": "2.1.0-pre1",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "http://github.com/torkelo/grafana.git"
|
||||
|
@ -5,7 +5,7 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/gosimple/slug"
|
||||
"github.com/dalu/slug"
|
||||
)
|
||||
|
||||
// Typed errors
|
||||
|
@ -86,4 +86,10 @@ func addDashboardMigration(mg *Migrator) {
|
||||
}))
|
||||
|
||||
mg.AddMigration("drop table dashboard_v1", NewDropTableMigration("dashboard_v1"))
|
||||
|
||||
// change column type of dashboard.data
|
||||
mg.AddMigration("alter dashboard.data to mediumtext v1", new(RawSqlMigration).
|
||||
Sqlite("SELECT 0 WHERE 0;").
|
||||
Postgres("SELECT 0;").
|
||||
Mysql("ALTER TABLE dashboard MODIFY data MEDIUMTEXT;"))
|
||||
}
|
||||
|
@ -48,4 +48,10 @@ func addDashboardSnapshotMigrations(mg *Migrator) {
|
||||
|
||||
mg.AddMigration("create dashboard_snapshot table v5 #2", NewAddTableMigration(snapshotV5))
|
||||
addTableIndicesMigrations(mg, "v5", snapshotV5)
|
||||
|
||||
// change column type of dashboard
|
||||
mg.AddMigration("alter dashboard_snapshot to mediumtext v2", new(RawSqlMigration).
|
||||
Sqlite("SELECT 0 WHERE 0;").
|
||||
Postgres("SELECT 0;").
|
||||
Mysql("ALTER TABLE dashboard_snapshot MODIFY dashboard MEDIUMTEXT;"))
|
||||
}
|
||||
|
@ -25,8 +25,9 @@ func (m *MigrationBase) GetCondition() MigrationCondition {
|
||||
type RawSqlMigration struct {
|
||||
MigrationBase
|
||||
|
||||
sqlite string
|
||||
mysql string
|
||||
sqlite string
|
||||
mysql string
|
||||
postgres string
|
||||
}
|
||||
|
||||
func (m *RawSqlMigration) Sql(dialect Dialect) string {
|
||||
@ -35,6 +36,8 @@ func (m *RawSqlMigration) Sql(dialect Dialect) string {
|
||||
return m.mysql
|
||||
case SQLITE:
|
||||
return m.sqlite
|
||||
case POSTGRES:
|
||||
return m.postgres
|
||||
}
|
||||
|
||||
panic("db type not supported")
|
||||
@ -50,6 +53,11 @@ func (m *RawSqlMigration) Mysql(sql string) *RawSqlMigration {
|
||||
return m
|
||||
}
|
||||
|
||||
func (m *RawSqlMigration) Postgres(sql string) *RawSqlMigration {
|
||||
m.postgres = sql
|
||||
return m
|
||||
}
|
||||
|
||||
type AddColumnMigration struct {
|
||||
MigrationBase
|
||||
tableName string
|
||||
|
@ -380,6 +380,9 @@ function($, _, moment) {
|
||||
kbn.valueFormats.Bps = kbn.formatFuncCreator(1000, [' Bps', ' KBps', ' MBps', ' GBps', ' TBps', ' PBps', ' EBps', ' ZBps', ' YBps']);
|
||||
kbn.valueFormats.short = kbn.formatFuncCreator(1000, ['', ' K', ' Mil', ' Bil', ' Tri', ' Qaudr', ' Quint', ' Sext', ' Sept']);
|
||||
kbn.valueFormats.joule = kbn.formatFuncCreator(1000, [' J', ' kJ', ' MJ', ' GJ', ' TJ', ' PJ', ' EJ', ' ZJ', ' YJ']);
|
||||
kbn.valueFormats.amp = kbn.formatFuncCreator(1000, [' A', ' kA', ' MA', ' GA', ' TA', ' PA', ' EA', ' ZA', ' YA']);
|
||||
kbn.valueFormats.volt = kbn.formatFuncCreator(1000, [' V', ' kV', ' MV', ' GV', ' TV', ' PV', ' EV', ' ZV', ' YV']);
|
||||
kbn.valueFormats.hertz = kbn.formatFuncCreator(1000, [' Hz', ' kHz', ' MHz', ' GHz', ' THz', ' PHz', ' EHz', ' ZHz', ' YHz']);
|
||||
kbn.valueFormats.watt = kbn.formatFuncCreator(1000, [' W', ' kW', ' MW', ' GW', ' TW', ' PW', ' EW', ' ZW', ' YW']);
|
||||
kbn.valueFormats.kwatt = kbn.formatFuncCreator(1000, [' kW', ' MW', ' GW', ' TW', ' PW', ' EW', ' ZW', ' YW']);
|
||||
kbn.valueFormats.watth = kbn.formatFuncCreator(1000, [' Wh', ' kWh', ' MWh', ' GWh', ' TWh', ' PWh', ' EWh', ' ZWh', ' YWh']);
|
||||
@ -534,6 +537,7 @@ function($, _, moment) {
|
||||
{text: 'microseconds (µs)', value: 'µs'},
|
||||
{text: 'milliseconds (ms)', value: 'ms'},
|
||||
{text: 'seconds (s)', value: 's'},
|
||||
{text: 'Hertz (1/s)', value: 'hertz'},
|
||||
]
|
||||
},
|
||||
{
|
||||
@ -561,6 +565,8 @@ function($, _, moment) {
|
||||
{text: 'kilowatt-hour (kWh)', value: 'kwatth'},
|
||||
{text: 'joule (J)', value: 'joule'},
|
||||
{text: 'electron volt (eV)', value: 'ev'},
|
||||
{text: 'Ampere (A)', value: 'amp'},
|
||||
{text: 'Volt (V)', value: 'volt'},
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -22,7 +22,8 @@
|
||||
padding-bottom: 10px;
|
||||
input {
|
||||
width: 100%;
|
||||
padding: 18px 8px;
|
||||
padding: 8px 8px;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
button {
|
||||
|
Loading…
Reference in New Issue
Block a user