Comments (10)
I'd love to
from genny.
I hit this the other day as well. I do like rwl's +build generate
vs just removing ignore directives.
Until something like this hits master we've taken the approach of having all our templates named as .genny
and placing all the go:generate
directives in either gen.go
or the most relevant package file.
from genny.
Good idea.
On 13 Apr 2016, at 06:53, Richard Lincoln [email protected] wrote:
To prevent a template file from being included in the build process a build tag can be added at the top:
// +build ignore
package foo
Unfortunately, these aren't removed from the generated output. As a result the generated code is also not included in the build.—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
from genny.
It may be better to recommend a generate
tag so that go generate
may still be used, e.g:
// +build generate
package foo
//go:generate genny -in=$GOFILE -out=gen-$GOFILE gen "Generic=int"
The output may then be generated using the command:
$ go generate -tags generate
from genny.
If folks are adventurous you should be able to merge #21 into your copy of genny
and start using tags to control your builds.
from genny.
Just removing // +build ignore
or any modification of build tags by default is too auto-magical.
I like falun's method since nothing changes for people who don't need this feature.
from genny.
Has there been any movement on this? Here's my current workaround:
in template.go:
// +build never
In another file:
//go:generate sh -c "genny -in=template.go gen \"GenericType=Foo,Bar\" | sed \"/\\+build never/d\" > generic-$GOFILE"
from genny.
Any movement on this? I'd love to see the PR merged
from genny.
@ghostsquad There was a PR but it went stale. Do you fancy preparing one and I'll merge it in?
from genny.
Months later... got distracted with other things.. and coming back to this. Sorry about that!
from genny.
Related Issues (20)
- Reflect removed from generated code HOT 3
- Imports not generated correctly HOT 3
- Separate generated code in multiple files HOT 3
- Flags usage not correct in README HOT 1
- Suggestion: make the genny project visible to Hacktoberfest searches. Add a contributing.md file too.
- Is this project still maintained? HOT 2
- wordify breaks calls to APIs made while generating
- -pkg doesn't appear to work HOT 2
- code cleanup in parse.go drops all import statements and is potentially buggy in other infrequent scenarios HOT 1
- Lowercase replace in strings? HOT 6
- Collect generics into composed interface HOT 2
- Switch to a standard codegen comment marker
- Are slices supported? HOT 1
- Allow generation of exported and non exported types from the same generic code.
- TestCustomTypesMap test fails on some systems
- running "genny": exec: "genny": executable file not found in $PATH HOT 3
- Check if specific type name has a valid syntax
- Drops imports on github actions HOT 1
- import stmt removed in output (sometimes) HOT 2
- Please create a new tag for the latest master branch
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from genny.