Rob Pike
6732bd3526
exp/template: index function for arrays, slices, and maps.
...
R=golang-dev, adg, r
CC=golang-dev
https://golang.org/cl/4643072
2011-07-06 22:27:06 +10:00
Rob Pike
64228e36a4
exp/template: silence test noise (but add a flag to put it back)
...
Also delete a TODO and clean up a little evaluation code.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4643071
2011-07-06 17:46:36 +10:00
David Symonds
33705ddea1
exp/template: add a JavaScript escaper.
...
R=r
CC=golang-dev
https://golang.org/cl/4671048
2011-07-06 16:51:49 +10:00
Rob Pike
a33cc423b4
exp/template: allow an empty interface value to be the target of range, etc.
...
We extract the concrete value inside.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4677041
2011-07-06 16:40:46 +10:00
Rob Pike
381a555f40
exp/template: improve error message for non-exported field.
...
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4636086
2011-07-06 15:56:39 +10:00
Rob Pike
a8e5db9449
maketables: update debugging data.
...
This is unused in the generation of the tables, but was incorrect if we ever needed it.
Also update the reference to the document.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4626097
2011-07-06 15:35:23 +10:00
David Symonds
9d5ed1744a
exp/template: add missing dotNode case.
...
R=r
CC=golang-dev
https://golang.org/cl/4672044
2011-07-06 15:14:10 +10:00
Rob Pike
9495dd31d2
exp/template: fixes and updates.
...
- fix line numbers - forgot to update state.line during execution
- add a comment convention {{/* comment */}}
- set.Template returns the named template in the set
- set.Execute executes the named template in the set
- use a local methodByName so this package can be used with earlier release of reflect.
- use initial cap to detect exported names
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4668054
2011-07-06 14:46:41 +10:00
David Symonds
d45ba2c146
exp/template: remove debugging dreg.
...
R=r, gri
TBR=r
CC=golang-dev
https://golang.org/cl/4671047
2011-07-06 14:18:46 +10:00
Yasuhiro Matsumoto
1e6d946594
html: parse start tags that aren't explicitly otherwise dealt with.
...
R=golang-dev, nigeltao
CC=golang-dev
https://golang.org/cl/4626080
2011-07-06 13:08:52 +10:00
Rob Pike
329990d525
exp/template: remove the need for a goroutine.
...
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4626095
2011-07-06 11:02:53 +10:00
Rob Pike
4657d7d7db
exp/template: remove the visibility of the token channel from the parser.
...
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4675053
2011-07-06 10:13:53 +10:00
Luuk van Dijk
13d048a221
gc: fix %N for OGOTO nodes.
...
6g -W crashed on any source with a goto. this fixes that.
R=rsc, r
CC=golang-dev
https://golang.org/cl/4675052
2011-07-06 00:02:03 +02:00
Rob Pike
eea5443572
exp/template: add templates to sets; boolean logic.
...
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4670045
2011-07-05 17:05:15 +10:00
Andrew Gerrand
b7db4fef22
godoc: ignore directories that begin with '.'
...
Fixes #2017 .
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/4675047
2011-07-05 17:00:18 +10:00
Rob Pike
5b1658232e
exp/template: statically check that functions names have been defined.
...
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4675046
2011-07-05 16:02:34 +10:00
Fazlul Shahriar
bedee318d5
os: fix build for Plan 9
...
R=golang-dev, alex.brainman
CC=golang-dev
https://golang.org/cl/4657074
2011-07-05 16:01:29 +10:00
Rob Pike
cc9fed7c1a
exp/template: add an html escaping function.
...
R=golang-dev, dsymonds, adg
CC=golang-dev
https://golang.org/cl/4626092
2011-07-05 15:58:54 +10:00
Nigel Tao
104f57ad39
image: add a test for filling sub-images.
...
R=r
CC=golang-dev
https://golang.org/cl/4626091
2011-07-05 14:42:31 +10:00
Rob Pike
b177c97803
exp/template: functions
...
Add the ability to attach functions to template and template sets.
Make variadic functions and methods work.
Still to come: static checking of function names during parse.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4643068
2011-07-05 14:23:51 +10:00
Rob Pike
9cf37c3723
docs: fold the prog.sh scripting from makehtml into htmlgen itself.
...
This allows us to drop some crufty scripting and provides a firmer
footing for building better tools for preparing documents with source
code inside.
Also eliminate line numbers from the examples and text.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4650069
2011-07-04 16:15:14 +10:00
Andrew Gerrand
a342006207
goinstall: only report successfully-installed packages to the dashboard
...
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/4657071
2011-07-04 16:05:11 +10:00
Rob Pike
13f889778e
exp/template: add template sets, allowing templates to reference one another
...
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4673042
2011-07-04 15:15:47 +10:00
Rob Pike
72efdea20e
exp/template: allow complex numbers, add 'with', 'define', and 'template' keywords.
...
Also simplify the handling of keywords.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4639096
2011-07-04 11:50:35 +10:00
Rob Pike
db0e358022
reflect: allow Len on String values.
...
It's probably just an oversight that it doesn't work,
perhaps caused by analogy with Cap.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4634125
2011-07-04 11:45:31 +10:00
Andrew Gerrand
8c7a73bbbb
go/build: evaluate symlinks before comparing path to GOPATH
...
R=golang-dev, r, dsymonds
CC=golang-dev
https://golang.org/cl/4645078
2011-07-04 10:26:03 +10:00
Andrew Gerrand
3cd8f27d79
godoc: search GOPATH for documentation
...
R=rsc, mattn.jp
CC=golang-dev
https://golang.org/cl/4627065
2011-07-02 14:07:06 +10:00
Andrew Gerrand
72a73198df
goinstall: documentation for new remote repository behavior and tweaks
...
R=rsc, julian
CC=golang-dev
https://golang.org/cl/4642049
2011-07-02 14:05:43 +10:00
Andrew Gerrand
6a2e2432c9
dashboard: show build state and package comments on dashboard
...
This permits full URLs to be shown on the dashboard,
not just the repository roots.
This has been tested.
R=rsc, mattn.jp
CC=golang-dev
https://golang.org/cl/4627081
2011-07-02 14:02:42 +10:00
Adam Langley
acc284d847
crypto/openpgp: add ability to reserialize keys.
...
This changes Signature so that parsed signatures can be reserialized
exactly. With this ability we can add Serialize to Entity and also the
ability to sign other public keys.
R=bradfitz
CC=golang-dev
https://golang.org/cl/4627084
2011-07-01 13:53:12 -04:00
Paul Borman
00f7cd4b36
csv: new package
...
csv reader/writer based on RFC 4180
R=rsc, mattn.jp, r, dchest
CC=golang-dev
https://golang.org/cl/4629085
2011-07-01 12:16:56 -04:00
Russ Cox
21752bc130
CONTRIBUTORS: add Paul Borman (Google CLA)
...
R=borman, bradfitz
CC=golang-dev
https://golang.org/cl/4654079
2011-07-01 12:09:53 -04:00
Russ Cox
1eb656784c
5c, 6c: fix build
...
R=ken2
CC=golang-dev
https://golang.org/cl/4668049
2011-07-01 11:13:38 -04:00
Alex Brainman
810a2dc077
lib9: stop build if ../version.bash fails
...
R=golang-dev, m, rsc
CC=golang-dev
https://golang.org/cl/4639091
2011-07-01 10:42:25 -04:00
Wei Guangjing
63b8b948d9
windows: define and use syscall.Handle
...
Fixes #1487 .
R=rsc, alex.brainman, go.peter.90, mikioh.mikioh, mattn.jp
CC=golang-dev
https://golang.org/cl/4600042
2011-07-01 10:18:07 -04:00
Yasuhiro Matsumoto
21efa147ba
cmd/goinstall: try to access via https.
...
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/4667051
2011-07-01 10:11:33 -04:00
Lucio De Re
b0449c50f7
8c: fixes for Plan 9 build
...
8c/gc.h:
. Added <u.h> header.
. Added "lD" pragma for "*Adr" to supplement "D".
8c/swt.c:
. Removed unreferenced "thestring" arguments in Bprint() calls.
cc/acid.c:
cc/com.c:
cc/com64.c:
cc/dcl.c:
cc/scon.c:
. Added <u.h>, required by "cc.h".
cc/bits.c:
. Added <u.h>, required by "cc.h".
cc/cc.h:
. Removed <u.h> and <ctype.h>.
. Added "O" pragma to accept "uint" as well as "int".
. Added new "U" pragma (char *).
cc/cc.y:
. Added <u.h> before <stdio.h> (and "cc.h").
cc/dpchk.c:
cc/mac.c:
. Added <u.h> and <ctype.h>.
cc/funct.c:
. Added <u.h>, required by "cc.h".
cc/godefs.c
. Added <u.h>, required by "cc.h".
. Dropped unused "t" argument in Bprint().
cc/lex.c:
. Added <u.h> and <ctype.h>.
. Removed unnecessary incrementation.
. Changed exit() invocations with exits().
cc/omachcap.c:
. Added <u.h>, required by "cc.h".
. USED(n) for unused argument to machcap().
cc/sub.c:
. Added <u.h> and <ctype.h>.
R=rsc
CC=golang-dev
https://golang.org/cl/4629070
2011-07-01 09:50:24 -04:00
Brad Fitzpatrick
3aa8272e44
fix build; add simplify.go to regexp Makefile
...
R=rsc
CC=golang-dev
https://golang.org/cl/4643062
2011-06-30 10:45:36 -07:00
Yasuhiro Matsumoto
2f9fbad043
http/cgi: add Handler.Dir to specify working directory
...
R=golang-dev, bradfitz, alex.brainman
CC=golang-dev
https://golang.org/cl/4635042
2011-06-30 09:44:23 -07:00
Dmitriy Vyukov
dd2074c82a
sync: improve Mutex to allow successive acquisitions
...
This implementation allows a goroutine to do successive acquisitions
of a mutex even if there are blocked goroutines.
Moreover, it allows a newcomer goroutine to acquire a mutex ahead of
blocked goroutines (that is, it does not enforce FIFO).
On implementation level it's achieved by separating waiter count and
locked flag.
Benchmark results on HP Z600 (2 x Xeon E5620, 8 HT cores, 2.40GHz)
are as follows (with 4631059 "replace Semacquire/Semrelease implementation"
patch applied):
benchmark old ns/op new ns/op delta
sync_test.BenchmarkMutexUncontended 24.10 25.40 +5.39%
sync_test.BenchmarkMutexUncontended-2 12.00 13.00 +8.33%
sync_test.BenchmarkMutexUncontended-4 6.06 6.83 +12.71%
sync_test.BenchmarkMutexUncontended-8 3.63 3.60 -0.83%
sync_test.BenchmarkMutexUncontended-16 2.38 2.49 +4.62%
sync_test.BenchmarkMutex 25.00 26.40 +5.60%
sync_test.BenchmarkMutex-2 231.00 49.00 -78.79%
sync_test.BenchmarkMutex-4 259.00 114.00 -55.98%
sync_test.BenchmarkMutex-8 641.00 110.00 -82.84%
sync_test.BenchmarkMutex-16 1380.00 96.30 -93.02%
sync_test.BenchmarkMutexSlack 24.80 26.20 +5.65%
sync_test.BenchmarkMutexSlack-2 210.00 106.00 -49.52%
sync_test.BenchmarkMutexSlack-4 453.00 119.00 -73.73%
sync_test.BenchmarkMutexSlack-8 1024.00 105.00 -89.75%
sync_test.BenchmarkMutexSlack-16 1291.00 91.90 -92.88%
sync_test.BenchmarkMutexWork 796.00 796.00 +0.00%
sync_test.BenchmarkMutexWork-2 399.00 401.00 +0.50%
sync_test.BenchmarkMutexWork-4 216.00 212.00 -1.85%
sync_test.BenchmarkMutexWork-8 1547.00 196.00 -87.33%
sync_test.BenchmarkMutexWork-16 2754.00 287.00 -89.58%
sync_test.BenchmarkMutexWorkSlack 792.00 800.00 +1.01%
sync_test.BenchmarkMutexWorkSlack-2 430.00 420.00 -2.33%
sync_test.BenchmarkMutexWorkSlack-4 467.00 230.00 -50.75%
sync_test.BenchmarkMutexWorkSlack-8 1860.00 273.00 -85.32%
sync_test.BenchmarkMutexWorkSlack-16 3029.00 294.00 -90.29%
R=rsc
CC=golang-dev
https://golang.org/cl/4631075
2011-06-30 11:13:29 -04:00
Russ Cox
b4cae4aee2
exp/regexp/syntax: finish Regexp manipulation
...
Except for the inevitable bug fixes, the Regexp code is done.
R=sam.thorogood, r
CC=golang-dev
https://golang.org/cl/4635082
2011-06-30 10:26:22 -04:00
Russ Cox
a809abafa5
govet: automate test
...
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/4629084
2011-06-30 10:26:11 -04:00
Yasuhiro Matsumoto
054cf72b56
html: fix nesting when parsing a close tag.
...
R=nigeltao
CC=golang-dev
https://golang.org/cl/4636067
2011-06-30 23:16:33 +10:00
Julian Phillips
8ffbc4016a
goinstall: Add support for generic hosts using special import form
...
This change extends goinstall to support "magic" package names of the
form:
<host>/<repo>.<vcs>/<path>
Where <host> is the hostname, <repo> the path to the repository, <vcs>
the type of vcs (git, hg, bzr or svn), and <path> is the path inside the
repository that contains the source code for the package.
For example: "example.com/pub/foo.hg/src" means download the Mercurial
repository at either pub/foo.hg or pub/foo from example.com and then
build and install the source files from src inside the repository
checkout.
Repositories on the built-in hostings sites (github, bitbucket,
launchpad and googlecode) must still use the old form (i.e.
github.com/xxx/yyy.git/src will be rejected).
R=adg, rsc
CC=golang-dev
https://golang.org/cl/4626064
2011-06-30 18:54:53 +10:00
Yasuhiro Matsumoto
369418d29c
misc/vim: allow only utf-8 for fileencoding (fix CL4625078).
...
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4650062
2011-06-30 17:07:44 +10:00
Yasuhiro Matsumoto
51a79d0306
misc/vim: allow only utf-8 for fileencoding.
...
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4625078
2011-06-30 16:19:53 +10:00
Andrew Gerrand
4dfdacd2bd
build: make version.bash aware of branches
...
Fixes #2026 .
R=bradfitz, rsc
CC=golang-dev
https://golang.org/cl/4645074
2011-06-30 15:39:00 +10:00
Brad Fitzpatrick
73896bdc85
net: break up and simplify Dial a bit
...
No API or functional change.
R=jacek.masiulaniec, mikioh.mikioh, rsc
CC=golang-dev
https://golang.org/cl/4630081
2011-06-29 21:56:13 -07:00
Rob Pike
de36d19dfb
time: zero-pad two-digit years.
...
Fixes #2024
R=adg, dsymonds
CC=golang-dev
https://golang.org/cl/4635083
2011-06-30 14:05:29 +10:00
David Symonds
ba8e61d833
os: use a different symbol from syscall in mkunixsignals.sh.
...
Open is more likely to be present than Syscall.
R=rsc
CC=golang-dev
https://golang.org/cl/4645073
2011-06-30 13:35:40 +10:00