Comments (2)
The reason it's in zanzibar is because it's very easy to break backend when making changes in zanzibar.
The backend module is responsible for WRITING configs to disk.
The codegen module is responsible for READING configs from disk.
If you make any changes to codegen
related to configs your likely to break backend.
If you do move the backend thing out; you should evaluate if you can call INTO uber jenkins from travis and effectively run the test suite for backend with the "new version" of zanzibar.
When we were actively developing and working on backend & codegen we would often make changes to codegen
and then not update backend
.
whomever was unlucky enough to update the version of zanzibar
in backend
had to make all of the unrelated changes in one go :(
from zanzibar.
@Raynos Thanks for the insights. The team is aware of the tradeoff of the proposed change.
The tempo of config changes has slowed down compared to the earlier development period, which makes not having backend in zanzibar more manageable that it used to be. Also, the team working on internal projects sometimes needs to make awkward changes to work around the fact that backend is open source.
Your comments are absolutely on point, we will need to be more conscious about the impact of future zanzibar changes and improve team communications to ease the version bump process.
from zanzibar.
Related Issues (20)
- Impossible to override default headers HOT 1
- Empty body POST request should not have content type header
- Move pre-steps script to scripts/
- Error on pre-steps: An included Thrift file is not contained in the
- expose contextLogger in http request HOT 1
- Flaky build: jaeger_test.go:171 runtime error: index out of range HOT 2
- Clean up http server/endpoint/client logs.
- Use context consistently when it is part of a struct
- Not an Issue just a question. HOT 1
- Memory leaking...
- TChannel endpoint responses with mandatory headers cannot return application errors
- errcheck is skipped
- Pinned staticcheck
- nil pointer dereference
- "goimports": executable file not found in $PATH
- generate service failed HOT 1
- Support for GRPC / Proto
- reqHeaderMap and resHeaderMap requires Canonical MIME Header Key format
- Update circuit breaker naming convention
- make fmt.Printf configurable log instead
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 zanzibar.