Hello community,
here is the log from the commit of package go-web.go for openSUSE:Factory checked in at 2012-01-19 09:42:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/go-web.go (Old)
and /work/SRC/openSUSE:Factory/.go-web.go.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "go-web.go", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/go-web.go/go-web.go.changes 2011-10-06 17:22:01.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.go-web.go.new/go-web.go.changes 2012-01-19 09:42:25.000000000 +0100
@@ -1,0 +2,5 @@
+Tue Dec 13 13:20:21 UTC 2011 - saschpe@suse.de
+
+- Apply fixes for weekly.2011-12-02 changes
+
+-------------------------------------------------------------------
Old:
----
web.go-0.0.0+git20110915.tar.bz2
New:
----
web.go-0.0.0+git20111213.tar.bz2
web.go-weekly-fixes.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ go-web.go.spec ++++++
--- /var/tmp/diff_new_pack.A4whyG/_old 2012-01-19 09:42:26.000000000 +0100
+++ /var/tmp/diff_new_pack.A4whyG/_new 2012-01-19 09:42:26.000000000 +0100
@@ -2,7 +2,7 @@
# spec file for package go-web.go
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# Copyright (c), 2011, Sascha Peilicke
+# Copyright (c) 2011 Sascha Peilicke
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,13 +19,14 @@
Name: go-web.go
-Version: 0.0.0+git20110915
-Release: 1
+Version: 0.0.0+git20111213
+Release: 0
Summary: A simple framework to write webapps in Go
-Group: Development/Languages/Other
License: MIT
+Group: Development/Languages/Other
Url: http://github.com/hoisie/web.go
Source0: web.go-%{version}.tar.bz2
+Patch0: web.go-weekly-fixes.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: go-devel
%{go_provides}
@@ -38,10 +39,12 @@
%prep
%setup -q -n web.go
+%patch0 -p1
%build
%install
+gofix *.go
%{go_make_install}
%check
++++++ web.go-0.0.0+git20110915.tar.bz2 -> web.go-0.0.0+git20111213.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/web.go/request.go new/web.go/request.go
--- old/web.go/request.go 2011-10-06 13:50:51.000000000 +0200
+++ new/web.go/request.go 2011-12-13 10:51:40.000000000 +0100
@@ -1,7 +1,6 @@
package web
import (
- "container/vector"
"fmt"
"http"
"io"
@@ -68,7 +67,6 @@
req := Request{
Method: hr.Method,
- RawURL: hr.RawURL,
URL: hr.URL,
Proto: hr.Proto,
ProtoMajor: hr.ProtoMajor,
@@ -140,7 +138,6 @@
}
func parseForm(m map[string][]string, query string) (err os.Error) {
- data := make(map[string]*vector.StringVector)
for _, kv := range strings.Split(query, "&") {
kvPair := strings.SplitN(kv, "=", 2)
@@ -154,16 +151,11 @@
err = e
}
- vec, ok := data[key]
+ vec, ok := m[key]
if !ok {
- vec = new(vector.StringVector)
- data[key] = vec
+ vec = []string{}
}
- vec.Push(value)
- }
-
- for k, vec := range data {
- m[k] = vec.Copy()
+ m[key] = append(vec, value)
}
return
@@ -208,17 +200,19 @@
if !ok {
return os.NewError("Missing Boundary")
}
+
reader := multipart.NewReader(r.Body, boundary)
r.Files = make(map[string]filedata)
for {
part, err := reader.NextPart()
+ if part == nil && err == os.EOF {
+ break
+ }
+
if err != nil {
return err
}
- if part == nil {
- break
- }
//read the data
data, _ := ioutil.ReadAll(part)
//check for the 'filename' param
@@ -234,8 +228,8 @@
if params["filename"] != "" {
r.Files[name] = filedata{params["filename"], data}
} else {
- var params vector.StringVector = r.FullParams[name]
- params.Push(string(data))
+ var params []string = r.FullParams[name]
+ params = append(params, string(data))
r.FullParams[name] = params
}
@@ -244,6 +238,7 @@
return &badStringError{"unknown Content-Type", ct}
}
}
+
if queryParams != "" {
err = parseForm(r.FullParams, queryParams)
if err != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/web.go/web.go new/web.go/web.go
--- old/web.go/web.go 2011-10-06 13:03:57.000000000 +0200
+++ new/web.go/web.go 2011-12-13 10:51:40.000000000 +0100
@@ -2,7 +2,6 @@
import (
"bytes"
- "container/vector"
"crypto/hmac"
"encoding/base64"
"fmt"
@@ -201,10 +200,10 @@
}
if fv, ok := handler.(reflect.Value); ok {
- s.routes.Push(route{r, cr, method, fv})
+ s.routes = append(s.routes, route{r, cr, method, fv})
} else {
fv := reflect.ValueOf(handler)
- s.routes.Push(route{r, cr, method, fv})
+ s.routes = append(s.routes, route{r, cr, method, fv})
}
}
@@ -326,8 +325,8 @@
return
}
- for i := 0; i < s.routes.Len(); i++ {
- route := s.routes.At(i).(route)
+ for i := 0; i < len(s.routes); i++ {
+ route := s.routes[i]
cr := route.cr
//if the methods don't match, skip this handler (except HEAD can be used in place of GET)
if req.Method != route.method && !(req.Method == "HEAD" && route.method == "GET") {
@@ -343,21 +342,16 @@
continue
}
- var args vector.Vector
+ var args []reflect.Value
handlerType := route.handler.Type()
if requiresContext(handlerType) {
- args.Push(reflect.ValueOf(&ctx))
+ args = append(args, reflect.ValueOf(&ctx))
}
for _, arg := range match[1:] {
- args.Push(reflect.ValueOf(arg))
+ args = append(args, reflect.ValueOf(arg))
}
- valArgs := make([]reflect.Value, args.Len())
- for i := 0; i < args.Len(); i++ {
- valArgs[i] = args.At(i).(reflect.Value)
- }
-
- ret, err := s.safelyCall(route.handler, valArgs)
+ ret, err := s.safelyCall(route.handler, args)
if err != nil {
//fmt.Printf("%v\n", err)
//there was an error or panic while calling the handler
@@ -406,7 +400,7 @@
type Server struct {
Config *ServerConfig
- routes vector.Vector
+ routes []route
Logger *log.Logger
//save the listener so it can be closed
l net.Listener
++++++ web.go-weekly-fixes.patch ++++++
++++ 1572 lines (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org