Commit Graph

141 Commits

Author SHA1 Message Date
shantuo
65ae46b7ea internal/wire: support specifying struct fields to inject (#147)
Added wire.Struct function and deprecate old form.

Updates #36
2019-03-28 09:00:20 -07:00
shantuo
aeaafca1a6 cmd: support FieldsOf in show (#143) 2019-03-06 16:19:50 -08:00
shantuo
327f42724c add FieldsOf to inject fields of a struct directly (#138) 2019-03-01 13:52:07 -08:00
shantuo
58e5de342a guide: clarify interface binding examples (#141) 2019-03-01 11:28:55 -08:00
shantuo
3f9f9c7363 add documentation to InterfaceValue (#142) 2019-03-01 11:20:45 -08:00
Robert van Gent
5a138ef498 codecov: also disable patch coverage check (#137) 2019-02-25 15:50:40 -08:00
Robert van Gent
aa93d6ea07 travis: remove coveralls, only use codecov (#136) 2019-02-25 14:35:53 -08:00
Robert van Gent
7916902074 codecov: disable PR comments (#135) 2019-02-25 12:24:46 -08:00
Eli Bendersky
f2838ea5ec admin: removing proxy instructions, script, and .travis.yml reference (#133) 2019-02-25 09:23:52 -08:00
Eli Bendersky
f597512d4c Change warning displayed when PRs don't start with component name (#129) 2019-02-25 09:22:43 -08:00
Robert van Gent
3fdd4c2254 travis: add codecov.yml with threshold=0 (#132) 2019-02-19 07:28:54 -08:00
Robert van Gent
2f2872ac02 travis: try using codecov (#131) 2019-02-15 11:31:52 -08:00
Eli Bendersky
9a6cb457fe travis: remove GOPROXY setting (#130)
Fixes #127
2019-02-15 07:59:56 -08:00
Eli Bendersky
66437afbad all: add dependency checking to the script Travis runs (#128)
Dependency checking for CI - ensures a PR doesn't modify our
dependencies without anyone noticing.

Similar to https://github.com/google/go-cloud/pull/1284

Updates #127
2019-02-14 12:48:32 -08:00
Robert van Gent
d810929d49 wire: improve error for a provider set with a binding but no corresponding provider (#126)
Fixes #113
2019-02-11 08:58:30 -08:00
Robert van Gent
b869afc095 wire/tests: Add a test that defines a ProviderSet with a binding but no (#121)
corresponding concrete type. The current error message is poor and
should be improved.
2019-02-07 14:36:06 -08:00
Robert van Gent
ab2332aa8a all: re-enable travis windows build (#123) 2019-02-06 14:12:16 -08:00
Robert van Gent
dbfad100dd all: update version of golang.org/x/tools (#122) 2019-02-06 08:08:23 -08:00
Robert van Gent
b1113bfdf1 travis: disable windows, update import path config, and only run goveralls on linux (#115) 2019-02-05 16:08:41 -08:00
Ross Light
bee5b6c7c7 internal/wire: remove support for go-cloud import path (#111) 2019-01-28 13:57:58 -08:00
Ross Light
3b0186f7df internal/wire: move field name into ProviderInput (#104)
Avoids having parallel arrays for conceptually related data.
2019-01-23 11:34:39 -08:00
Ross Light
9a7ae3ba6b internal/wire/testdata/PkgImport: really add the duplicated import (#105) 2019-01-07 14:57:50 -08:00
Ross Light
5b99fcb30b internal/wire/testdata/PkgImport: add back duplicate import (#103)
This got removed as part of my gofmt run on #101.
2019-01-07 14:15:33 -08:00
Kumbirai Tanekha
f285c073b5 internal/wire: copy over anonymous imports (#101)
Adds Kumbirai Tanekha to A+C.

Fixes #94
2019-01-07 09:04:35 -08:00
shantuo
4243b011bd internal/wire: factor out common code in solve (#98)
- Fixed a bug when a interface is bind to a value wire would fail to record it is used.
- Also rename ProvidedType.ConcreteType to Type since it doesn't necessarily returns a concrete type.

Fixes #72
2018-12-14 12:56:01 -08:00
Ross Light
f9328a1d90 .contributebot: disable issue title check (#97)
All issues are assumed to be about Wire, so there's no need to include
the package name.

Updates #82
2018-12-12 13:26:22 -08:00
Ross Light
983dc94257 internal/proxy: port script from Go Cloud to create module proxy (#95)
I have created gs://wire-modules to store the Wire dependencies. I ran
the script in this commit to populate the contents of the GCS bucket and
am updating Travis to point to the new proxy.

Fixes #81
2018-12-10 15:12:36 -08:00
Ben Hoyt
28f5930663 docs: fix typo (missing "forgot") in comment (#92) 2018-12-03 09:19:00 -08:00
shantuo
ef9bb67152 Support variadic provider and injector functions (#91)
Fixes #61
2018-12-03 08:30:42 -08:00
Robert van Gent
65d810f60a wire: output diffs to stdout, and return 1 for diffs and 2 for trouble from diff subcommand (#90) 2018-11-30 15:14:40 -08:00
Ross Light
90ac48ab7d Remove more references to Go Cloud (#88) 2018-11-30 10:08:58 -08:00
Ross Light
31bae0df4e Copy over Wire tutorial from Go Cloud (#86)
Originally authored by @enocom. Added to CONTRIBUTORS.

Fixes #80
2018-11-30 09:46:48 -08:00
Ross Light
cacf1bc4ed Split out documentation into multiple files (#85)
Fixes #84
2018-11-29 12:31:59 -08:00
Robert van Gent
8c0a284dec docs: update CONTRIBUTING.md (#78) 2018-11-28 16:14:36 -08:00
Robert van Gent
ec9fb34688 doc: add embeds for Travis, godoc, coveralls to README (#79) 2018-11-28 15:14:59 -08:00
Ross Light
ba990f92ac Add GitHub PR and issue templates (#76) 2018-11-28 13:06:48 -08:00
Ross Light
1a5e046395 Remove more references to Go Cloud (#75) 2018-11-28 12:51:41 -08:00
Ross Light
507d4f1d03 Copy over Travis setup from Go Cloud (#74) 2018-11-28 12:48:01 -08:00
Robert van Gent
58d6a2c2c8 wire: add a diff command (google/go-cloud#745) 2018-11-28 11:12:42 -08:00
Robert van Gent
65eb134857 wire: support multiple packages in Generate (google/go-cloud#729) 2018-11-28 11:06:19 -08:00
Robert van Gent
925a11ad0d wire: add a test for using a function argument as a provider (google/go-cloud#724) 2018-11-28 11:02:13 -08:00
Robert van Gent
6ea381b3fe wire: give wire.Bind access to the arguments to the injector function (google/go-cloud#715) 2018-11-28 11:02:13 -08:00
Robert van Gent
67170e739d wire/tests: add a test for wire.Bind on an injector arg (google/go-cloud#708) 2018-11-28 11:02:13 -08:00
Robert van Gent
ebb381989a wire/tests: add a test for multiple args of the same type to an injector function (google/go-cloud#706) 2018-11-28 11:02:13 -08:00
Ross Light
3488a41780 wire: serialize test execution (google/go-cloud#704) 2018-11-28 11:00:42 -08:00
Ross Light
6ca3ea0efe wire: add FAQ for duplicate providers (google/go-cloud#660)
Fixes google/go-cloud#492
2018-11-28 10:32:36 -08:00
Ross Light
30574010a0 Update import path and mirror project docs 2018-11-13 13:16:46 -08:00
Robert van Gent
ded9eb899b wire: remove trailing CR at end of error about cycles (google/go-cloud#662) 2018-11-13 13:16:46 -08:00
Ross Light
282105c273 wire: use go/packages for analysis (google/go-cloud#623)
Unfortunately, this does come with a ~4x slowdown to Wire, as it is
now pulling source for all transitively depended packages, but not
trimming comments or function bodies. This is due to limitations with
the ParseFile callback in go/packages.

This comes with a single semantic change: when performing analysis, Wire
will now evaluate everything with the wireinject build tag. I updated
the build tags tests accordingly. Prior to this PR, only the packages
directly named by the package patterns would be evaluated with the
wireinject build tag. Dependencies would not have the wireinject build
tag applied. There isn't a way to selectively apply build tags in go/packages,
and there isn't a clear benefit to applying it selectively. Being consistent with
other Go tooling provides greater benefit.

I deleted the vendoring test, as non-top-level vendoring
becomes obsolete with modules.

go/packages now parses comments by default, so now the generated code
includes comments for non-injector declarations.

Fixes google/go-cloud#78
2018-11-13 13:16:46 -08:00
Christina Austin
ce30a430c6 wire: update README installation instructions (google/go-cloud#647)
* wire: update README installation instructions

* Made verb tense agree
2018-11-13 13:16:46 -08:00