Skip to content
This repository has been archived by the owner on Feb 24, 2024. It is now read-only.

v0.16.19 #2076

Merged
merged 54 commits into from
Jan 7, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
834c095
adding direct version on the docker build
paganotoni Apr 21, 2020
dea73d0
merging
paganotoni Apr 21, 2020
ef66b75
fixing plugin installation
paganotoni Apr 21, 2020
f54ca9e
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni May 8, 2020
1c74ae6
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni May 25, 2020
7827df3
Fix npm's package.json permissions (#2005)
disconnect3d Jun 9, 2020
9da3740
Bump spf13/viper to v1.7.0 (#1999)
aeneasr Jun 9, 2020
be95bfe
Merge branch 'master' into development
paganotoni Jun 9, 2020
4aa9475
bunping version
paganotoni Jun 9, 2020
9e9d5bf
changing version on dockerfile
paganotoni Jun 9, 2020
e9d8c0a
patch to fix the keywords check on new app
paganotoni Jul 15, 2020
b6ec6e4
Merge branch 'master' of https://github.com/gobuffalo/buffalo into de…
paganotoni Jul 15, 2020
7fc13fb
removing unneeded append
paganotoni Jul 15, 2020
d86adbc
Task fixing html binder (#2016)
paganotoni Jul 16, 2020
e5ff685
adding new version number
paganotoni Jul 16, 2020
af37208
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni Jul 16, 2020
947543c
Merge branch 'master' into development
paganotoni Jul 16, 2020
4362a83
pulling the buffalo binary from gobinaries.com
paganotoni Jul 18, 2020
2150f08
Merge branch 'master' of https://github.com/gobuffalo/buffalo into de…
paganotoni Jul 18, 2020
7e6b165
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni Jul 29, 2020
f52bbc2
Merge branch 'master' into development
paganotoni Jul 29, 2020
b0f043a
Task updating formam (#2025)
paganotoni Jul 29, 2020
b30b49a
Merge branch 'development' of https://github.com/gobuffalo/buffalo in…
paganotoni Jul 29, 2020
2a6f20b
Fixes #1987 and #2023 (#2026)
paganotoni Aug 2, 2020
5eeaa2a
Merge branch 'development' of https://github.com/gobuffalo/buffalo in…
paganotoni Aug 2, 2020
4643bad
changing version number
paganotoni Aug 2, 2020
39711ae
moving to latest 2 go versions (#2038)
paganotoni Sep 4, 2020
e44a95d
Task binding cleanup (#2039)
paganotoni Sep 4, 2020
859e828
Task update formam (#2041)
paganotoni Sep 5, 2020
ec9ca99
updating flect versionm (#2042)
paganotoni Sep 5, 2020
0c5aed0
updating version
paganotoni Sep 5, 2020
a7388dd
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni Sep 5, 2020
85b1a29
Merge branch 'master' into development
paganotoni Sep 5, 2020
9b38d89
updating some libraries to pass the github security warnings (#2044)
paganotoni Sep 7, 2020
871e148
Merge branch 'master' of https://github.com/gobuffalo/buffalo into de…
paganotoni Sep 7, 2020
c16a020
Merge branch 'development' of https://github.com/gobuffalo/buffalo in…
paganotoni Sep 7, 2020
5476b1d
Removing Grifts folder (#2050)
paganotoni Sep 18, 2020
70f4aaf
fixes the non-existing .git folder case (#2053)
paganotoni Oct 7, 2020
1a80253
calling persist explicitly (#2054)
paganotoni Oct 16, 2020
c554801
adding version number
paganotoni Oct 22, 2020
09a510d
Merge branch 'master' of https://github.com/gobuffalo/buffalo
paganotoni Oct 22, 2020
a0aeebd
Merge branch 'master' into development
paganotoni Oct 22, 2020
f88da17
Pointing README to new go docs link
paganotoni Nov 11, 2020
9cf5ca7
Merge branch 'master' into development
paganotoni Nov 11, 2020
45acf7a
running packr2
paganotoni Nov 11, 2020
4357a75
Warns if response is attempted to be written twice (#2059)
paganotoni Dec 19, 2020
122e3e3
allows to specify custom partialfeeders
paganotoni Dec 24, 2020
5791db9
Merge branch 'master' into development
paganotoni Dec 24, 2020
e34adae
cleaning up a bit for codeclimate
paganotoni Dec 24, 2020
bfd7379
changing the version
paganotoni Dec 24, 2020
ad697d0
Merge branch 'development' of https://github.com/gobuffalo/buffalo in…
paganotoni Dec 24, 2020
00f6388
Application Route Namer (#2075)
paganotoni Jan 7, 2021
0381b3a
v0.16.19
paganotoni Jan 7, 2021
99daaa5
adding correct version number
paganotoni Jan 7, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Dockerfile.build
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ RUN npm install -g --no-progress yarn \
# Install golangci
RUN curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(go env GOPATH)/bin v1.24.0
# Installing buffalo binary
RUN curl -sf https://gobinaries.com/gobuffalo/buffalo/[email protected].18 | sh
RUN curl -sf https://gobinaries.com/gobuffalo/buffalo/[email protected].19 | sh
RUN go get github.com/gobuffalo/buffalo-pop/v2
RUN buffalo version

Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.slim.build
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ RUN npm i -g --no-progress yarn \
&& yarn config set yarn-offline-mirror-pruning true

# Pulling docker binary from releases
RUN curl -sf https://gobinaries.com/gobuffalo/buffalo/[email protected].18 | sh
RUN curl -sf https://gobinaries.com/gobuffalo/buffalo/[email protected].19 | sh
RUN go get github.com/gobuffalo/buffalo-pop/v2
RUN buffalo version

Expand Down
6 changes: 6 additions & 0 deletions app.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ type App struct {
root *App
children []*App
filepaths []string

// Routenamer for the app. This field provides the ability to override the
// base route namer for something more specific to the app.
RouteNamer RouteNamer
}

// Muxer returns the underlying mux router to allow
Expand All @@ -48,6 +52,8 @@ func New(opts Options) *App {
moot: &sync.RWMutex{},
routes: RouteList{},
children: []*App{},

RouteNamer: baseRouteNamer{},
}

dem := a.defaultErrorMiddleware
Expand Down
58 changes: 1 addition & 57 deletions route_mappings.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import (
"strings"

"github.com/gobuffalo/envy"
"github.com/gobuffalo/flect"
"github.com/gobuffalo/flect/name"
"github.com/gorilla/handlers"
)
Expand Down Expand Up @@ -263,7 +262,7 @@ func (a *App) addRoute(method string, url string, h Handler) *RouteInfo {

url = path.Join(a.Prefix, url)
url = a.normalizePath(url)
name := a.buildRouteName(url)
name := a.RouteNamer.NameRoute(url)

hs := funcKey(h)
r := &RouteInfo{
Expand Down Expand Up @@ -291,61 +290,6 @@ func (a *App) addRoute(method string, url string, h Handler) *RouteInfo {
return r
}

//buildRouteName builds a route based on the path passed.
func (a *App) buildRouteName(p string) string {
if p == "/" || p == "" {
return "root"
}

resultParts := []string{}
parts := strings.Split(p, "/")

for index, part := range parts {

originalPart := parts[index]

var previousPart string
if index > 0 {
previousPart = parts[index-1]
}

var nextPart string
if len(parts) > index+1 {
nextPart = parts[index+1]
}

isIdentifierPart := strings.Contains(part, "{") && (strings.Contains(part, flect.Singularize(previousPart)))
isSimplifiedID := part == `{id}`

if isIdentifierPart || isSimplifiedID || part == "" {
continue
}

if strings.Contains(nextPart, "{") {
part = flect.Singularize(part)
}

if originalPart == "new" || originalPart == "edit" {
resultParts = append([]string{part}, resultParts...)
continue
}

if strings.Contains(previousPart, "}") {
resultParts = append(resultParts, part)
continue
}

resultParts = append(resultParts, part)
}

if len(resultParts) == 0 {
return "unnamed"
}

underscore := strings.TrimSpace(strings.Join(resultParts, "_"))
return name.VarCase(underscore)
}

func stripAsset(path string, h http.Handler, a *App) http.Handler {
if path == "" {
return h
Expand Down
74 changes: 74 additions & 0 deletions routenamer.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
package buffalo

import (
"strings"

"github.com/gobuffalo/flect"
"github.com/gobuffalo/flect/name"
)

// RouteNamer is in charge of naming a route from the
// path assigned, this name typically will be used if no
// name is assined with .Name(...).
type RouteNamer interface {
// NameRoute receives the path and returns the name
// for the route.
NameRoute(string) string
}

// BaseRouteNamer is the default route namer used by apps.
type baseRouteNamer struct{}

func (drn baseRouteNamer) NameRoute(p string) string {
if p == "/" || p == "" {
return "root"
}

resultParts := []string{}
parts := strings.Split(p, "/")

for index, part := range parts {

originalPart := parts[index]

var previousPart string
if index > 0 {
previousPart = parts[index-1]
}

var nextPart string
if len(parts) > index+1 {
nextPart = parts[index+1]
}

isIdentifierPart := strings.Contains(part, "{") && (strings.Contains(part, flect.Singularize(previousPart)))
isSimplifiedID := part == `{id}`

if isIdentifierPart || isSimplifiedID || part == "" {
continue
}

if strings.Contains(nextPart, "{") {
part = flect.Singularize(part)
}

if originalPart == "new" || originalPart == "edit" {
resultParts = append([]string{part}, resultParts...)
continue
}

if strings.Contains(previousPart, "}") {
resultParts = append(resultParts, part)
continue
}

resultParts = append(resultParts, part)
}

if len(resultParts) == 0 {
return "unnamed"
}

underscore := strings.TrimSpace(strings.Join(resultParts, "_"))
return name.VarCase(underscore)
}
4 changes: 2 additions & 2 deletions router_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -740,7 +740,7 @@ func Test_buildRouteName(t *testing.T) {
a := New(Options{})

for input, result := range cases {
fResult := a.buildRouteName(input)
fResult := a.RouteNamer.NameRoute(input)
r.Equal(result, fResult, input)
}

Expand All @@ -751,7 +751,7 @@ func Test_buildRouteName(t *testing.T) {
}

for input, result := range cases {
fResult := a.buildRouteName(input)
fResult := a.RouteNamer.NameRoute(input)
r.Equal(result, fResult, input)
}
}
Expand Down
2 changes: 1 addition & 1 deletion runtime/version.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package runtime

// Version is the current version of the buffalo binary
var Version = "v0.16.18"
var Version = "v0.16.19"