-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG.txt
147 lines (119 loc) · 5.17 KB
/
CHANGELOG.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
v0.6.5
* Upgrade to go1.18
v0.6.4
* Fixed a bug introduced in lint-fixing the recent gRPC update
v0.6.3
* Fixed handling of trailers
* Fixed the arm64 build for .deb files
* Upgraded the Docker build to go1.17
* Revamped the build process to reduce copy-paste
v0.6.2
* Upgraded to go1.17
* Upgraded dependencies
* Added Admin.GetCertificate RPC + roxyctl get-certificate
* Fixed an ACME bug that broke never-before-seen domains
v0.6.1
* Fixes for ClientAssign
v0.6.0
* MAJOR API AND ABI BREAKS
* ClientAssign kinda works sometimes, if you don't breathe too hard on it
* Fix deadlocks and hangs in ATC server, client, and resolver
v0.5.1
* Significant changes to get ATC ClientAssign closer to working
* Major API changes to roxyresolver's ParseFooTarget and MakeFooResolverFunc
* Implement "roxyctl healthwatch" and "atcctl healthwatch"
* Various internal refactors and logging improvements
* Lint, GoDoc, and test coverage improvements
v0.5.0
* Implement first draft of ATC ServerAnnounce
* Implement first draft of ATC traffic migration
* Add ATC Transfer, LookupClients, LookupServers RPCs
* Enhance ATC Lookup RPC
* Rearrange ATC config loading into "reload" (pre-load new config), "flip"
(activate new config), and "commit" (retire old config)
* Eliminate mainutil.HealthServer and fold into mainutil.MultiServer
* Add context.Context argument to all mainutil.MultiServer hooks
* Add new mainutil.MultiServer hooks OnPreRun and OnPreShutdown
v0.4.8
* Overhaul ATC configuration
* Overhaul Docker build to use buildx and --platform
* Bug fix: CertNames' zero value now defaults to "allow any" mode again
v0.4.7
* API tweaks for mainutil and roxyresolver.Target
* Use structured errors in more places
* Overhaul enums; they now parse and JSON marshal/unmarshal consistently
* Overhaul mainutil.FooConfig option parsing
v0.4.6
* Use cost-adjusted queries per second as our load balancer metric
* Breaking changes to .proto files to support the above
* Implement some HTTP and gRPC interceptors for automatically calculating
client-side QPS demand and server-side QPS supply
* API tweaks for roxyutil and roxyresolver
v0.4.5
* Implement advanced X.509 client certificate checking
* Do auth checking in ATC RPCs
v0.4.4
* Rename Roxy Prometheus metrics to meet naming best practices
* Add stub Prometheus metrics server to ATC
* Minor API tweaks for membership
v0.4.3
* Minor API tweaks for announcer and atcclient
* Improve GoDoc coverage
v0.4.2
* Implement Admin.SetHealth RPC and "fooctl set-health" command
v0.4.1
* Implement ATCClient type to encapsulate/simplify ATC communication
v0.4.0
* Implement a stub for the AirTrafficControl companion server
* Unify logging flags across binaries
* Unify flag syntax for listening, connecting, and announcing; reduces the
number of flags needed to specify things like ZooKeeper announcements
* Config file syntax changes to support the above
* Major refactors to support the above
v0.3.0
* Implement WeightedRandomBalancer and WeightedRoundRobinBalancer balancers
* Change ATC protocol to be event-oriented
* Create new "announcer" library for backends to easily publish their IP:port
* Use "announcer" library in demo-backend
* Implement gRPC health checking in demo-backend
* Significant refactor/cleanup work on resolvers/balancers
v0.2.4
* Changes to build and release process
* Docker multiarch support for arm64v8
v0.2.3
* Add /etc/default/roxy to the Debian package, for controlling flags.
* Expand environment variables and home directories in filesystem paths.
v0.2.2
* Add Prometheus metrics for the in-RAM cache.
* Make MaxCacheSize and MaxComputeDigestSize configurable.
* Bump default MaxCacheSize to 64 KiB.
v0.2.1
* Add gRPC-based admin interface over AF_UNIX sockets.
* Add "roxyctl" CLI for calling the admin interface.
* Use the SystemD "sd_notify" API to give SystemD more status data.
* Refactor the shutdown logic in consideration of the above changes.
v0.2.0
* Added Prometheus metrics (defaults to http://localhost:6800/metrics).
* Significant internal refactor work to support the above.
* Add more aggressive "Cache-Control" headers to filesystem responses.
v0.1.4
* Added default value for "roxy --config" flag.
* Added "roxy --version" flag.
* Added trailing ';' to default "Content-Security-Policy" header.
* Added config fields for controlling the ACME client.
* Change default value of "global.mimeFile" to "/etc/opt/roxy/mime.json".
* Only set the default "Content-Language" on text/* MIME types.
v0.1.3
* config.json: Move top-level section "pages" under "global" section.
* config.json: Permit some additional chars in target names.
v0.1.2
* Implement custom DNS servers, as dns://dns-ip:dns-port/host:port and
srv://dns-ip:dns-port/domain/service
* Various minor fixes for the resolver backends
* Major improvements and bug fixes for colorize-logs
* Minor consistency fixes for Dockerfile and build_deb.sh
v0.1.1
* Automatic detection of JavaScript source map files (for "SourceMap" header)
* Added a new tool, colorize-logs, that filters JSON logs for easier viewing
v0.1.0
* First release