mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Fix some typos found by codespell
See, $ codespell -S "./.git*,./vendor*,./public*"
This commit is contained in:
@@ -318,7 +318,7 @@ See [security announcement](https://community.grafana.com/t/grafana-5-2-3-and-4-
|
|||||||
* **Dashboard**: Sizing and positioning of settings menu icons [#11572](https://github.com/grafana/grafana/pull/11572)
|
* **Dashboard**: Sizing and positioning of settings menu icons [#11572](https://github.com/grafana/grafana/pull/11572)
|
||||||
* **Dashboard**: Add search filter/tabs to new panel control [#10427](https://github.com/grafana/grafana/issues/10427)
|
* **Dashboard**: Add search filter/tabs to new panel control [#10427](https://github.com/grafana/grafana/issues/10427)
|
||||||
* **Folders**: User with org viewer role should not be able to save/move dashboards in/to general folder [#11553](https://github.com/grafana/grafana/issues/11553)
|
* **Folders**: User with org viewer role should not be able to save/move dashboards in/to general folder [#11553](https://github.com/grafana/grafana/issues/11553)
|
||||||
* **Influxdb**: Dont assume the first column in table response is time. [#11476](https://github.com/grafana/grafana/issues/11476), thx [@hahnjo](https://github.com/hahnjo)
|
* **Influxdb**: Don't assume the first column in table response is time. [#11476](https://github.com/grafana/grafana/issues/11476), thx [@hahnjo](https://github.com/hahnjo)
|
||||||
|
|
||||||
### Tech
|
### Tech
|
||||||
* Backend code simplification [#11613](https://github.com/grafana/grafana/pull/11613), thx [@knweiss](https://github.com/knweiss)
|
* Backend code simplification [#11613](https://github.com/grafana/grafana/pull/11613), thx [@knweiss](https://github.com/knweiss)
|
||||||
@@ -1464,7 +1464,7 @@ Grafana 2.x is fundamentally different from 1.x; it now ships with an integrated
|
|||||||
|
|
||||||
**New features**
|
**New features**
|
||||||
- [Issue #1623](https://github.com/grafana/grafana/issues/1623). Share Dashboard: Dashboard snapshot sharing (dash and data snapshot), save to local or save to public snapshot dashboard snapshots.raintank.io site
|
- [Issue #1623](https://github.com/grafana/grafana/issues/1623). Share Dashboard: Dashboard snapshot sharing (dash and data snapshot), save to local or save to public snapshot dashboard snapshots.raintank.io site
|
||||||
- [Issue #1622](https://github.com/grafana/grafana/issues/1622). Share Panel: The share modal now has an embed option, gives you an iframe that you can use to embedd a single graph on another web site
|
- [Issue #1622](https://github.com/grafana/grafana/issues/1622). Share Panel: The share modal now has an embed option, gives you an iframe that you can use to embed a single graph on another web site
|
||||||
- [Issue #718](https://github.com/grafana/grafana/issues/718). Dashboard: When saving a dashboard and another user has made changes in between the user is prompted with a warning if he really wants to overwrite the other's changes
|
- [Issue #718](https://github.com/grafana/grafana/issues/718). Dashboard: When saving a dashboard and another user has made changes in between the user is prompted with a warning if he really wants to overwrite the other's changes
|
||||||
- [Issue #1331](https://github.com/grafana/grafana/issues/1331). Graph & Singlestat: New axis/unit format selector and more units (kbytes, Joule, Watt, eV), and new design for graph axis & grid tab and single stat options tab views
|
- [Issue #1331](https://github.com/grafana/grafana/issues/1331). Graph & Singlestat: New axis/unit format selector and more units (kbytes, Joule, Watt, eV), and new design for graph axis & grid tab and single stat options tab views
|
||||||
- [Issue #1241](https://github.com/grafana/grafana/issues/1242). Timepicker: New option in timepicker (under dashboard settings), to change ``now`` to be for example ``now-1m``, useful when you want to ignore last minute because it contains incomplete data
|
- [Issue #1241](https://github.com/grafana/grafana/issues/1242). Timepicker: New option in timepicker (under dashboard settings), to change ``now`` to be for example ``now-1m``, useful when you want to ignore last minute because it contains incomplete data
|
||||||
|
|||||||
3
build.go
3
build.go
@@ -120,7 +120,6 @@ func main() {
|
|||||||
createLinuxPackages()
|
createLinuxPackages()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
case "pkg-rpm":
|
case "pkg-rpm":
|
||||||
grunt(gruntBuildArg("release")...)
|
grunt(gruntBuildArg("release")...)
|
||||||
createRpmPackages()
|
createRpmPackages()
|
||||||
@@ -417,7 +416,7 @@ func test(pkg string) {
|
|||||||
func build(binaryName, pkg string, tags []string) {
|
func build(binaryName, pkg string, tags []string) {
|
||||||
binary := fmt.Sprintf("./bin/%s-%s/%s", goos, goarch, binaryName)
|
binary := fmt.Sprintf("./bin/%s-%s/%s", goos, goarch, binaryName)
|
||||||
if isDev {
|
if isDev {
|
||||||
//dont include os and arch in output path in dev environment
|
//don't include os and arch in output path in dev environment
|
||||||
binary = fmt.Sprintf("./bin/%s", binaryName)
|
binary = fmt.Sprintf("./bin/%s", binaryName)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -884,8 +884,8 @@
|
|||||||
"value": "celsius"
|
"value": "celsius"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Farenheit (°F)",
|
"text": "Fahrenheit (°F)",
|
||||||
"value": "farenheit"
|
"value": "fahrenheit"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Kelvin (K)",
|
"text": "Kelvin (K)",
|
||||||
@@ -1991,8 +1991,8 @@
|
|||||||
"value": "celsius"
|
"value": "celsius"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Farenheit (°F)",
|
"text": "Fahrenheit (°F)",
|
||||||
"value": "farenheit"
|
"value": "fahrenheit"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Kelvin (K)",
|
"text": "Kelvin (K)",
|
||||||
@@ -3078,8 +3078,8 @@
|
|||||||
"value": "celsius"
|
"value": "celsius"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Farenheit (°F)",
|
"text": "Fahrenheit (°F)",
|
||||||
"value": "farenheit"
|
"value": "fahrenheit"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text": "Kelvin (K)",
|
"text": "Kelvin (K)",
|
||||||
|
|||||||
@@ -274,10 +274,10 @@ func (a *Auth) canonicalizedHeaders(req *http.Request) string {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
splitted := strings.Split(buffer.String(), "\n")
|
split := strings.Split(buffer.String(), "\n")
|
||||||
sort.Strings(splitted)
|
sort.Strings(split)
|
||||||
|
|
||||||
return strings.Join(splitted, "\n")
|
return strings.Join(split, "\n")
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -313,8 +313,8 @@ func (a *Auth) canonicalizedResource(req *http.Request) string {
|
|||||||
buffer.WriteString(fmt.Sprintf("\n%s:%s", key, strings.Join(values, ",")))
|
buffer.WriteString(fmt.Sprintf("\n%s:%s", key, strings.Join(values, ",")))
|
||||||
}
|
}
|
||||||
|
|
||||||
splitted := strings.Split(buffer.String(), "\n")
|
split := strings.Split(buffer.String(), "\n")
|
||||||
sort.Strings(splitted)
|
sort.Strings(split)
|
||||||
|
|
||||||
return strings.Join(splitted, "\n")
|
return strings.Join(split, "\n")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -256,7 +256,7 @@ func (j *Json) StringArray() ([]string, error) {
|
|||||||
|
|
||||||
// MustArray guarantees the return of a `[]interface{}` (with optional default)
|
// MustArray guarantees the return of a `[]interface{}` (with optional default)
|
||||||
//
|
//
|
||||||
// useful when you want to interate over array values in a succinct manner:
|
// useful when you want to iterate over array values in a succinct manner:
|
||||||
// for i, v := range js.Get("results").MustArray() {
|
// for i, v := range js.Get("results").MustArray() {
|
||||||
// fmt.Println(i, v)
|
// fmt.Println(i, v)
|
||||||
// }
|
// }
|
||||||
@@ -281,7 +281,7 @@ func (j *Json) MustArray(args ...[]interface{}) []interface{} {
|
|||||||
|
|
||||||
// MustMap guarantees the return of a `map[string]interface{}` (with optional default)
|
// MustMap guarantees the return of a `map[string]interface{}` (with optional default)
|
||||||
//
|
//
|
||||||
// useful when you want to interate over map values in a succinct manner:
|
// useful when you want to iterate over map values in a succinct manner:
|
||||||
// for k, v := range js.Get("dictionary").MustMap() {
|
// for k, v := range js.Get("dictionary").MustMap() {
|
||||||
// fmt.Println(k, v)
|
// fmt.Println(k, v)
|
||||||
// }
|
// }
|
||||||
@@ -329,7 +329,7 @@ func (j *Json) MustString(args ...string) string {
|
|||||||
|
|
||||||
// MustStringArray guarantees the return of a `[]string` (with optional default)
|
// MustStringArray guarantees the return of a `[]string` (with optional default)
|
||||||
//
|
//
|
||||||
// useful when you want to interate over array values in a succinct manner:
|
// useful when you want to iterate over array values in a succinct manner:
|
||||||
// for i, s := range js.Get("results").MustStringArray() {
|
// for i, s := range js.Get("results").MustStringArray() {
|
||||||
// fmt.Println(i, s)
|
// fmt.Println(i, s)
|
||||||
// }
|
// }
|
||||||
|
|||||||
@@ -82,12 +82,13 @@ func (e *DashAlertExtractor) getAlertFromPanels(jsonWithPanels *simplejson.Json,
|
|||||||
if collapsed && collapsedJSON.MustBool() {
|
if collapsed && collapsedJSON.MustBool() {
|
||||||
|
|
||||||
// extract alerts from sub panels for collapsed panels
|
// extract alerts from sub panels for collapsed panels
|
||||||
als, err := e.getAlertFromPanels(panel, validateAlertFunc)
|
alertSlice, err := e.getAlertFromPanels(panel,
|
||||||
|
validateAlertFunc)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
alerts = append(alerts, als...)
|
alerts = append(alerts, alertSlice...)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ func (this *TeamsNotifier) Notify(evalContext *alerting.EvalContext) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
message := ""
|
message := ""
|
||||||
if evalContext.Rule.State != m.AlertStateOK { //dont add message when going back to alert state ok.
|
if evalContext.Rule.State != m.AlertStateOK { //don't add message when going back to alert state ok.
|
||||||
message = evalContext.Rule.Message
|
message = evalContext.Rule.Message
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
# org_id: 1
|
# org_id: 1
|
||||||
|
|
||||||
# # list of datasources to insert/update depending
|
# # list of datasources to insert/update depending
|
||||||
# # whats available in the datbase
|
# # what's available in the datbase
|
||||||
#datasources:
|
#datasources:
|
||||||
# # <string, required> name of the datasource. Required
|
# # <string, required> name of the datasource. Required
|
||||||
# - name: Graphite
|
# - name: Graphite
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ func (rs *RenderingService) renderViaHttp(ctx context.Context, opts Opts) (*Rend
|
|||||||
return nil, ErrTimeout
|
return nil, ErrTimeout
|
||||||
}
|
}
|
||||||
|
|
||||||
// if we didnt get a 200 response, something went wrong.
|
// if we didn't get a 200 response, something went wrong.
|
||||||
if resp.StatusCode != http.StatusOK {
|
if resp.StatusCode != http.StatusOK {
|
||||||
rs.log.Error("Remote rendering request failed", "error", resp.Status)
|
rs.log.Error("Remote rendering request failed", "error", resp.Status)
|
||||||
return nil, fmt.Errorf("Remote rendering request failed. %d: %s", resp.StatusCode, resp.Status)
|
return nil, fmt.Errorf("Remote rendering request failed. %d: %s", resp.StatusCode, resp.Status)
|
||||||
@@ -83,7 +83,7 @@ func (rs *RenderingService) renderViaHttp(ctx context.Context, opts Opts) (*Rend
|
|||||||
defer out.Close()
|
defer out.Close()
|
||||||
_, err = io.Copy(out, resp.Body)
|
_, err = io.Copy(out, resp.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// check that we didnt timeout while receiving the response.
|
// check that we didn't timeout while receiving the response.
|
||||||
if reqContext.Err() == context.DeadlineExceeded {
|
if reqContext.Err() == context.DeadlineExceeded {
|
||||||
rs.log.Info("Rendering timed out")
|
rs.log.Info("Rendering timed out")
|
||||||
return nil, ErrTimeout
|
return nil, ErrTimeout
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ func (rs *RenderingService) Init() error {
|
|||||||
|
|
||||||
// set value used for domain attribute of renderKey cookie
|
// set value used for domain attribute of renderKey cookie
|
||||||
if rs.Cfg.RendererUrl != "" {
|
if rs.Cfg.RendererUrl != "" {
|
||||||
// RendererCallbackUrl has already been passed, it wont generate an error.
|
// RendererCallbackUrl has already been passed, it won't generate an error.
|
||||||
u, _ := url.Parse(rs.Cfg.RendererCallbackUrl)
|
u, _ := url.Parse(rs.Cfg.RendererCallbackUrl)
|
||||||
rs.domain = u.Hostname()
|
rs.domain = u.Hostname()
|
||||||
} else if setting.HttpAddr != setting.DEFAULT_HTTP_ADDR {
|
} else if setting.HttpAddr != setting.DEFAULT_HTTP_ADDR {
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ func addAnnotationMig(mg *Migrator) {
|
|||||||
}))
|
}))
|
||||||
|
|
||||||
//
|
//
|
||||||
// Convert epoch saved as seconds to miliseconds
|
// Convert epoch saved as seconds to milliseconds
|
||||||
//
|
//
|
||||||
updateEpochSql := "UPDATE annotation SET epoch = (epoch*1000) where epoch < 9999999999"
|
updateEpochSql := "UPDATE annotation SET epoch = (epoch*1000) where epoch < 9999999999"
|
||||||
mg.AddMigration("Convert existing annotations from seconds to milliseconds", NewRawSqlMigration(updateEpochSql))
|
mg.AddMigration("Convert existing annotations from seconds to milliseconds", NewRawSqlMigration(updateEpochSql))
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ func TestTransaction(t *testing.T) {
|
|||||||
So(err, ShouldEqual, models.ErrInvalidApiKey)
|
So(err, ShouldEqual, models.ErrInvalidApiKey)
|
||||||
})
|
})
|
||||||
|
|
||||||
Convey("wont update if one handler fails", func() {
|
Convey("won't update if one handler fails", func() {
|
||||||
err := ss.InTransaction(context.Background(), func(ctx context.Context) error {
|
err := ss.InTransaction(context.Background(), func(ctx context.Context) error {
|
||||||
err := DeleteApiKeyCtx(ctx, deleteApiKeyCmd)
|
err := DeleteApiKeyCtx(ctx, deleteApiKeyCmd)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ func TestClient(t *testing.T) {
|
|||||||
So(err, ShouldNotBeNil)
|
So(err, ShouldNotBeNil)
|
||||||
})
|
})
|
||||||
|
|
||||||
Convey("When unspported version set should return error", func() {
|
Convey("When unsupported version set should return error", func() {
|
||||||
ds := &models.DataSource{
|
ds := &models.DataSource{
|
||||||
JsonData: simplejson.NewFromAny(map[string]interface{}{
|
JsonData: simplejson.NewFromAny(map[string]interface{}{
|
||||||
"esVersion": 6,
|
"esVersion": 6,
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ func TestInfluxdbQueryBuilder(t *testing.T) {
|
|||||||
So(strings.Join(query.renderTags(), ""), ShouldEqual, `"key" < 10001`)
|
So(strings.Join(query.renderTags(), ""), ShouldEqual, `"key" < 10001`)
|
||||||
})
|
})
|
||||||
|
|
||||||
Convey("can render number greather then condition tags", func() {
|
Convey("can render number greater then condition tags", func() {
|
||||||
query := &Query{Tags: []*Tag{{Operator: ">", Value: "10001", Key: "key"}}}
|
query := &Query{Tags: []*Tag{{Operator: ">", Value: "10001", Key: "key"}}}
|
||||||
|
|
||||||
So(strings.Join(query.renderTags(), ""), ShouldEqual, `"key" > 10001`)
|
So(strings.Join(query.renderTags(), ""), ShouldEqual, `"key" > 10001`)
|
||||||
|
|||||||
@@ -92,12 +92,12 @@ func (e *PrometheusExecutor) Query(ctx context.Context, dsInfo *models.DataSourc
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
querys, err := parseQuery(dsInfo, tsdbQuery.Queries, tsdbQuery)
|
queries, err := parseQuery(dsInfo, tsdbQuery.Queries, tsdbQuery)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, query := range querys {
|
for _, query := range queries {
|
||||||
timeRange := apiv1.Range{
|
timeRange := apiv1.Range{
|
||||||
Start: query.Start,
|
Start: query.Start,
|
||||||
End: query.End,
|
End: query.End,
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package util
|
|||||||
import "testing"
|
import "testing"
|
||||||
|
|
||||||
func TestMd5Sum(t *testing.T) {
|
func TestMd5Sum(t *testing.T) {
|
||||||
input := "dont hash passwords with md5"
|
input := "don't hash passwords with md5"
|
||||||
|
|
||||||
have, err := Md5SumString(input)
|
have, err := Md5SumString(input)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user