1
0
mirror of https://github.com/golang/go synced 2024-11-20 10:44:41 -07:00
Commit Graph

112 Commits

Author SHA1 Message Date
Robert Griesemer
abda9e6f89 Light-weight scanner for general use.
Emphasis on minimal interface and fast scanning.
Recognizes all Go literals by default. Easily
configurable to recognize different whitespace
characters and tokens.

Provides detailed position information for each
token.

R=rsc, r
CC=golang-dev
https://golang.org/cl/181160
2010-01-12 17:04:45 -08:00
Adam Langley
cbd3b2e8d5 Add 'bench' target to makefiles.
R=rsc, agl, r
CC=golang-dev
https://golang.org/cl/188043
2010-01-12 15:43:20 -08:00
Devon H. O'Dell
2eb9171dfb Fix missing explicit GOBIN in src/pkg/Makefile. Clean up creation of
QUOTED_GOBIN. Re-take of 181077; fixes copy-pasta that broke build.

Fixes #468

R=rsc
CC=golang-dev
https://golang.org/cl/183125
2010-01-06 07:47:56 -08:00
Russ Cox
32594bd43d rollback of https://golang.org/cl/181077
(broke build)

TBR=dho
https://golang.org/cl/181139
2010-01-05 16:54:27 -08:00
Devon H. O'Dell
e032ab9dc8 Fix missing explicit GOBIN in src/pkg/Makefile. Clean up creation of QUOTED_GOBIN
Fixes #468

R=rsc
CC=golang-dev
https://golang.org/cl/181077
2010-01-05 16:22:40 -08:00
Robert Griesemer
8c7d001602 Replace container/vector with exp/vector (faster).
Manual changes to the following files:
src/pkg/Makefile
src/pkg/exp/vector/Makefile (now: src/pkg/container/vector/Makefile)

R=rsc, r
CC=golang-dev
https://golang.org/cl/181041
2009-12-22 18:25:27 -08:00
Jan Mercl
b15fefd7d7 Experimental alternative implementation of the vector package
R=gri
CC=rsc
https://golang.org/cl/178048
2009-12-21 14:34:54 -08:00
Nigel Tao
8bf58725b2 Basic image/jpeg decoder.
This is not a complete JPEG implementation (e.g. it does not handle
progressive JPEGs or restart markers), but I was able to take a photo
with my phone, and view the resultant JPEG in pure Go.

The decoder is simple, but slow. The Huffman decoder in particular
should be easily improvable, but optimization is left to future
changelists. Being able to inline functions in the inner loop should
also help performance.

The output is not pixel-for-pixel identical to libjpeg, although
identical behavior isn't necessarily a goal, since JPEG is a lossy
codec. There are at least two reasons for the discrepancy.

First, the inverse DCT algorithm used is the same as Plan9's
src/cmd/jpg, which has different rounding errors from libjpeg's
default IDCT implementation. Note that libjpeg actually has three
different IDCT implementations: one floating point, and two fixed
point. Out of those four, Plan9's seemed the simplest to understand,
partly because it has no #ifdef's or C macros.

Second, for 4:2:2 or 4:2:0 chroma sampling, this implementation does
nearest neighbor upsampling, compared to libjpeg's triangle filter
(e.g. see h2v1_fancy_upsample in jdsample.c).

The difference from the first reason is typically zero, but sometimes
1 (out of 256) in YCbCr space, or double that in RGB space. The
difference from the second reason can be as large as 8/256 in YCbCr
space, in regions of steep chroma gradients. Informal eyeballing
suggests that the net difference is typically imperceptible, though.

R=r
CC=golang-dev, rsc
https://golang.org/cl/164056
2009-12-17 10:32:17 +11:00
David Symonds
b5866494ea os/signal: new package
Fixes #71.

R=rsc, r
https://golang.org/cl/162056
2009-12-15 18:21:29 -08:00
Andy Davis
2a52782f5c crypto/sha256: new package
R=rsc
CC=golang-dev
https://golang.org/cl/176062
2009-12-14 15:09:49 -08:00
Yves Junqueira
7835b7994e syslog: new package
R=golang-dev, rsc
https://golang.org/cl/157168
2009-12-11 12:41:51 -08:00
Robert Griesemer
bda2074193 New flags for gofmt:
- oldparser            parse old syntax (required semicolons)
- oldprinter           print old syntax (required semicolons)

By default, these flags are enabled for now.
Setting -oldparser=false has no effect until go/parser is changed
to accept the new syntax.

Enabled exp/parser in Makefile; update dependent exp/eval.

R=rsc
https://golang.org/cl/174051
2009-12-10 19:03:28 -08:00
Adrian O'Grady
6ebfd1eff2 Added XTEA block cipher package to src/pkg/crypto
This is an adaption of the code from http://en.wikipedia.org/wiki/XTEA. The package also implements the block.Cipher
interface so that it can be used with the various block modes.

R=rsc
https://golang.org/cl/157152
2009-12-09 00:06:20 -08:00
Russ Cox
609eeee817 make Native Client support build again,
add README explaining how to try the
web demos.

Fixes #339.

R=r
CC=barry.d.silverman, bss, vadim
https://golang.org/cl/165057
2009-12-04 10:11:32 -08:00
Rob Pike
b0683bd77a move ReadFile, WriteFile, and ReadDir into a separate io/ioutil package.
this breaks the dependency of package io on package bytes.

R=rsc
CC=golang-dev
https://golang.org/cl/163085
2009-12-02 22:02:14 -08:00
Tor Andersson
598f3e284e A first stab at porting the XCB X11 protocol bindings to go.
The python script needs a checkout of xcb/proto to generate
an xproto.go file, which together with xgb.go provide functions
to access all of the core X11 protocol requests. I have included the
generated file.

Extensions and authentication methods are not implemented.

R=r, rsc, nigeltao_golang
https://golang.org/cl/162053
2009-11-30 14:25:50 -08:00
Fumitoshi Ukai
f9f0184e13 Add WebSocket server framework hooked into http.
R=r, rsc
https://golang.org/cl/156071
2009-11-29 14:22:44 -08:00
Rob Pike
a0c55432f3 fix weird all.bash failures by running deps.bash before make clean runs in pkg directory.
before this change, if pkg/Make.deps is missing or broken, clean.bash fails and the build dies
but not until much later.

add freebsd to error message about valid values of $GOOS

TODO: would be nice if this process exited when an error occurred. subshells make it hard

R=rsc
CC=golang-dev
https://golang.org/cl/160065
2009-11-24 21:07:05 -08:00
Chris Lennert
8ebd7f7167 Provides implementation of MD4 hashing algorithm.
See IETF RFC 1320, http://tools.ietf.org/html/rfc1320.
Fixes #279.

R=rsc
https://golang.org/cl/159051
2009-11-23 17:44:44 -08:00
Sergio Luis O. B. Correia
6fc820729e go: makes it build for the case $GOROOT has whitespaces
the bash scripts and makefiles for building go didn't take into account
the fact $GOROOT / $GOBIN could both be directories containing whitespaces,
and was not possible to build it in such a situation.

this commit adjusts the various makefiles/scripts to make it aware of that
possibility, and now it builds successfully when using a path with whitespaces
as well.

Fixes #115.

R=rsc, dsymonds1
https://golang.org/cl/157067
2009-11-23 17:32:51 -08:00
Robert Griesemer
7763345379 Support for basic try-catch style exception handling.
Meant as illustration of the Go pattern that is using
goroutines and channels to handle exceptional situations.

Note: There is no need for "Finally" since the
"try block" (the function f supplied to Try)
cannot do a Smalltalk-style non-local return
and terminate the function surrounding Try.

Replaces CL 157083.

R=r, rsc
https://golang.org/cl/157087
2009-11-20 11:50:11 -08:00
Devon H. O'Dell
553be8427e Build changes to support work on the BSDs.
This does still contain some FreeBSD-specific bits, but
it's a pain to do partial diffs.

R=rsc
https://golang.org/cl/152138
2009-11-14 15:29:09 -08:00
Adam Langley
eb48f83ae2 crypto/tls (part 5/5)
Make RSA and X509 build by using big. (This involves commenting out
key generation for now since I haven't written Miller-Rabin in big
yet.)

Add entries to the Makefile.

R=rsc
CC=go-dev
http://go/go-review/1022005
2009-11-05 16:44:02 -08:00
Russ Cox
cc1a979272 package patch
R=r
http://go/go-review/1018043
2009-11-04 17:55:06 -08:00
Adam Langley
4f2ec03416 Add testing/script.
R=rsc, r
CC=go-dev
http://go/go-review/1016001
2009-11-03 12:47:06 -08:00
Adam Langley
ad67a86626 Split constant time functions into crypto/subtle.
R=rsc
CC=go-dev
http://go/go-review/1018020
2009-11-02 11:12:07 -08:00
Adam Langley
09d68334cc Forgot to change quickcheck to quick in the Makefile.
TBR=rsc

R=rsc
http://go/go-review/1017004
2009-10-29 18:34:44 -07:00
Adam Langley
878d0e1efd Add a quickcheck package which is a little like the Haskell one of the same
name.

R=rsc
APPROVED=rsc
DELTA=566  (566 added, 0 deleted, 0 changed)
OCL=35974
CL=36111
2009-10-28 15:16:20 -07:00
Adam Langley
569a1cd545 Add encoding/hex
R=rsc
http://go/go-review/1015012
2009-10-26 16:34:36 -07:00
Adam Langley
fd74a835bc Add initial x509 code.
R=rsc
APPROVED=rsc
DELTA=659  (659 added, 0 deleted, 0 changed)
OCL=35932
CL=35975
2009-10-21 17:53:50 -07:00
David Symonds
69fc06dfa1 Move usr/dsymonds/iterable to src/pkg/exp/iterable.
Remove remainder of usr/dsymonds.

R=rsc,r
APPROVED=r
DELTA=685  (275 added, 409 deleted, 1 changed)
OCL=35810
CL=35933
2009-10-20 14:10:22 -07:00
Russ Cox
357b770def base64 -> encoding/base64
base85 -> encoding/ascii85, encoding/git85
debug/binary -> encoding/binary

R=r
DELTA=3190  (1884 added, 1297 deleted, 9 changed)
OCL=35923
CL=35929
2009-10-20 13:00:16 -07:00
Russ Cox
fcc4be8c65 Add base85, based on base64.
Also add git version of base85,
which is what I really wanted but
didn't recognize as different until it
was too late.

R=austin
DELTA=980  (972 added, 4 deleted, 4 changed)
OCL=35580
CL=35921
2009-10-20 09:04:09 -07:00
Russ Cox
18325313fb add exp/eval to pkg list
update Make.deps.

fixes build

TBR=r
OCL=35777
CL=35777
2009-10-15 11:05:23 -07:00
Russ Cox
17dfa682ae move datafmt into exp
R=gri
DELTA=3006  (1503 added, 1503 deleted, 0 changed)
OCL=35730
CL=35735
2009-10-14 16:55:05 -07:00
Adam Langley
c071da4a26 Add ASN.1 parser.
R=rsc
APPROVED=rsc
DELTA=1459  (1459 added, 0 deleted, 0 changed)
OCL=35389
CL=35681
2009-10-13 14:37:48 -07:00
Russ Cox
0ddfe70c27 XML parser
R=r
DELTA=546  (545 added, 0 deleted, 1 changed)
OCL=35318
CL=35341
2009-10-05 15:10:00 -07:00
Rob Pike
0632bb4ae5 rename the public exvar package to be expvar.
R=rsc
DELTA=684  (324 added, 324 deleted, 36 changed)
OCL=35161
CL=35163
2009-09-30 13:11:33 -07:00
Adam Langley
5a69935a3c Add crypto/rc4.
RC4 is a common stream cipher. This adds a pure-go C implementation.

R=r
APPROVED=r
DELTA=139  (138 added, 0 deleted, 1 changed)
OCL=35056
CL=35092
2009-09-29 12:15:24 -07:00
Nigel Tao
11e313ae72 Unit tests for image/png, based off the semi-official pngsuite from
libpng.org.

R=rsc
APPROVED=r
DELTA=1176  (1175 added, 1 deleted, 0 changed)
OCL=34727
CL=34838
2009-09-20 19:08:03 -07:00
Russ Cox
92f773dc77 add DWARF method to elf.File.
test both ELF and Mach-O in dwarf package.

R=r
DELTA=83  (44 added, 10 deleted, 29 changed)
OCL=34717
CL=34790
2009-09-18 11:50:24 -07:00
Russ Cox
1bbc044df9 parse and present DWARF type information
R=r
DELTA=940  (929 added, 1 deleted, 10 changed)
OCL=34679
CL=34686
2009-09-16 10:43:27 -07:00
Russ Cox
f249c4114c basic DWARF reading.
R=r
DELTA=949  (949 added, 0 deleted, 0 changed)
OCL=34676
CL=34678
2009-09-15 21:58:45 -07:00
Nigel Tao
70eef675d5 PNG decoder for go.
R=rsc
APPROVED=r
DELTA=694  (675 added, 3 deleted, 16 changed)
OCL=34427
CL=34554
2009-09-10 21:33:44 -07:00
Robert Griesemer
115c62de8d heap algorithm
R=rsc
DELTA=196  (194 added, 0 deleted, 2 changed)
OCL=34234
CL=34263
2009-09-02 12:54:38 -07:00
Russ Cox
e10ca39d04 add debug/gosym and debug/proc to build
(was waiting until after release)

R=austin
DELTA=5  (5 added, 0 deleted, 0 changed)
OCL=34222
CL=34261
2009-09-02 12:03:33 -07:00
Russ Cox
60222bf538 package debug/binary
R=austin
DELTA=320  (320 added, 0 deleted, 0 changed)
OCL=33983
CL=34143
2009-08-31 16:10:16 -07:00
Russ Cox
819543986d translate C ld/elf.h into Go
R=austin
DELTA=1630  (1630 added, 0 deleted, 0 changed)
OCL=34001
CL=34142
2009-08-31 16:08:12 -07:00
Russ Cox
9449e3b02c list untested packages instead of tested
R=r
DELTA=68  (12 added, 55 deleted, 1 changed)
OCL=34095
CL=34102
2009-08-30 19:21:32 -07:00
Ian Lance Taylor
221d0567e3 Run the tests for the testing package. Fix them so that they
work.

R=rsc
DELTA=16  (1 added, 1 deleted, 14 changed)
OCL=34012
CL=34038
2009-08-28 11:44:46 -07:00
Nigel Tao
5cbc96d958 Introduce the image package.
R=rsc
APPROVED=r,rsc
DELTA=244  (244 added, 0 deleted, 0 changed)
OCL=33733
CL=33940
2009-08-26 21:51:03 -07:00
Nigel Tao
0d8ed14528 ZLIB reader for go.
R=rsc
APPROVED=rsc
DELTA=204  (204 added, 0 deleted, 0 changed)
OCL=33437
CL=33440
2009-08-17 22:03:13 -07:00
Robert Griesemer
b2eae40103 - updated Makefile, Make.deps
R=rsc,r
DELTA=5  (3 added, 0 deleted, 2 changed)
OCL=33413
CL=33417
2009-08-17 15:20:51 -07:00
Robert Griesemer
40a66ef59e missed changes to Makefiles for container/ring
R=rsc
DELTA=3  (3 added, 0 deleted, 0 changed)
OCL=32389
CL=32392
2009-07-28 17:52:30 -07:00
Robert Griesemer
f3ffd93a61 ast:
- renamed Program -> SourceFile
- added Package node representing the AST for an entire package
- added filter function to create a source file mimicking the
  interface of an entire package

parser:
- parser entry to parse entire packages
- unified naming of parser entry points
- factored out entry points into new file (interface.go)

gofmt:
- extended to accept single .go files, and package paths:
  gofmt file.go	     	    // formatting of a single file
  gofmt -x file.go	    // interface of a single file
  gofmt -x ./MyPackage	    // interface of a local package
  gofmt -x math		    // interface of a $GOROOT relative package

Various adjustments in dependent files, documentation.

R=rsc
DELTA=634  (369 added, 153 deleted, 112 changed)
OCL=31743
CL=31748
2009-07-16 17:11:18 -07:00
Rob Pike
a9be3f46c6 add rpc to the build
R=rsc
DELTA=3  (3 added, 0 deleted, 0 changed)
OCL=31693
CL=31714
2009-07-15 21:28:45 -07:00
Robert Griesemer
ef4347f19e Basic EBNF package:
- parsing of EBNF grammars
- basic consistency checks

R=rsc
DELTA=695  (695 added, 0 deleted, 0 changed)
OCL=31479
CL=31516
2009-07-13 10:10:56 -07:00
Rob Pike
3dab3e65d8 put gob into the standard build
R=rsc
DELTA=77  (76 added, 0 deleted, 1 changed)
OCL=31147
CL=31147
2009-07-03 12:54:59 -07:00
Austin Clements
c3a087a088 Base64 encoder/decoder package.
R=rsc
APPROVED=rsc
DELTA=722  (722 added, 0 deleted, 0 changed)
OCL=30660
CL=30691
2009-06-24 11:09:43 -07:00
Russ Cox
5d2ee9d90a add Addr() string to net.Listener interface.
use it to avoid use of fixed ports in tests.
convert google/net/rpc to gotest

R=r
DELTA=523  (275 added, 229 deleted, 19 changed)
OCL=30458
CL=30460
2009-06-17 21:44:26 -07:00
Robert Griesemer
a893db8767 gofmt (final resting place TBD):
- replacement for pretty; app to format a single .go file

printer.go (pkg/go/printer):
- replacement for astprinter.go; implements AST printing
- also replaces pkg/go/ast/format.go for now

cleanups:
- removed/saved away old code

R=r,rsc,iant
DELTA=2833  (1183 added, 1628 deleted, 22 changed)
OCL=30226
CL=30306
2009-06-15 16:23:16 -07:00
Rob Pike
d90e7cbac6 mv src/lib to src/pkg
tests: all.bash passes, gobuild still works, godoc still works.

R=rsc
OCL=30096
CL=30102
2009-06-09 09:53:44 -07:00