Skip to content

Commit 6ec4d5b

Browse files
authored
Merge pull request #176 from minrk/rel-v2
changelog for 1.0
2 parents 22ec032 + 224837c commit 6ec4d5b

File tree

5 files changed

+97
-9
lines changed

5 files changed

+97
-9
lines changed

docs/source/changelog.md

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,94 @@ For detailed changes from the prior release, click on the version number
44
and its link will bring up a GitHub listing of changes. Use `git log` on
55
the command line for details.
66

7+
## 1.0.0 (prerelease)
8+
9+
1.0.0 is a big release for jupyterhub-traefik-proxy!
10+
It updates support for traefik to version 2.x (current: 2.9.8).
11+
Traefik versions < 2.0 are no longer supported.
12+
If you have custom traefik configuration,
13+
make sure to checkout [traefik's v1 to v2 migration guide](https://doc.traefik.io/traefik/migration/v1-to-v2/),
14+
since your configuration may need updating.
15+
16+
A major consequence of the v2 updates is that the performance of adding and removing routes when there are a large number already defined is now greatly improved,
17+
and no longer grows significantly with the number of routes.
18+
19+
Major changes:
20+
21+
- Traefik v2 is required. Traefik v1 is not supported.
22+
- `TraefikTomlProxy` is deprecated in favor of `TraefikFileProviderProxy`,
23+
which supports both toml and yaml.
24+
Replace `traefik_toml` with `traefik_file` in your configuration.
25+
- `python3 -m jupyterhub_traefik_proxy.install` will now only install traefik, not any key-value-store providers.
26+
You can follow your KV store's own installation instructions.
27+
- `python3 -m jupyterhub_traefik_proxy.install` now supports fetching any published traefik version on any architecture,
28+
instead of a few preset versions.
29+
30+
Performance and responsiveness is also greatly improved.
31+
32+
([full changelog](https://github.com/jupyterhub/traefik-proxy/compare/0.3.0...HEAD))
33+
34+
### API and Breaking Changes
35+
36+
- remove kv stores from install.py [#156](https://github.com/jupyterhub/traefik-proxy/pull/156) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena), [@consideRatio](https://github.com/consideRatio))
37+
- Traefik v2 support [#145](https://github.com/jupyterhub/traefik-proxy/pull/145) ([@GeorgianaElena](https://github.com/GeorgianaElena), [@minrk](https://github.com/minrk), [@alexleach](https://github.com/alexleach))
38+
39+
### New features added
40+
41+
- Traefik v2 support [#145](https://github.com/jupyterhub/traefik-proxy/pull/145) ([@GeorgianaElena](https://github.com/GeorgianaElena), [@minrk](https://github.com/minrk), [@alexleach](https://github.com/alexleach))
42+
43+
### Enhancements made
44+
45+
- Improve performance, scaling [#165](https://github.com/jupyterhub/traefik-proxy/pull/165) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
46+
- Improve error message on traefik api access error [#140](https://github.com/jupyterhub/traefik-proxy/pull/140) ([@twalcari](https://github.com/twalcari), [@minrk](https://github.com/minrk))
47+
- reduce requirements of KV store implementations and custom methods [#185](https://github.com/jupyterhub/traefik-proxy/pull/185) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
48+
49+
### Bugs fixed
50+
51+
- Fix handling of empty dicts in traefik config [#173](https://github.com/jupyterhub/traefik-proxy/pull/173) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
52+
53+
### Maintenance and upkeep improvements
54+
55+
- set providersThrottleDuration=0s in tests [#190](https://github.com/jupyterhub/traefik-proxy/pull/190) ([@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio))
56+
- fix heading level in 0.3 changelog [#188](https://github.com/jupyterhub/traefik-proxy/pull/188) ([@minrk](https://github.com/minrk))
57+
- run rst2md on remaining rst files [#187](https://github.com/jupyterhub/traefik-proxy/pull/187) ([@minrk](https://github.com/minrk))
58+
- use editable install to get test coverage [#186](https://github.com/jupyterhub/traefik-proxy/pull/186) ([@minrk](https://github.com/minrk))
59+
- Make traefik_entrypoint name explicit [#184](https://github.com/jupyterhub/traefik-proxy/pull/184) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
60+
- test: fix consul auth port [#183](https://github.com/jupyterhub/traefik-proxy/pull/183) ([@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio), [@GeorgianaElena](https://github.com/GeorgianaElena))
61+
- deprecate consul due to unhealthy API clients [#182](https://github.com/jupyterhub/traefik-proxy/pull/182) ([@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio))
62+
- add dependabot config for github actions [#178](https://github.com/jupyterhub/traefik-proxy/pull/178) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
63+
- reuse backends across tests [#174](https://github.com/jupyterhub/traefik-proxy/pull/174) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
64+
- simplify some test fixtures [#169](https://github.com/jupyterhub/traefik-proxy/pull/169) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
65+
- avoid deprecation warning in `--slow-last` sorting [#168](https://github.com/jupyterhub/traefik-proxy/pull/168) ([@minrk](https://github.com/minrk))
66+
- restore proxy tests [#167](https://github.com/jupyterhub/traefik-proxy/pull/167) ([@minrk](https://github.com/minrk), [@manics](https://github.com/manics))
67+
- Minor cleanup of start/stop methods and logging [#166](https://github.com/jupyterhub/traefik-proxy/pull/166) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
68+
- Respect ip address config in urls, don't serve dashboard by default [#162](https://github.com/jupyterhub/traefik-proxy/pull/162) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena), [@consideRatio](https://github.com/consideRatio))
69+
- minor logging tweaks [#161](https://github.com/jupyterhub/traefik-proxy/pull/161) ([@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio))
70+
- Use checksums from traefik releases [#160](https://github.com/jupyterhub/traefik-proxy/pull/160) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
71+
- Add pre-commit config and configure autoformating tools and pytest from pyproject.toml [#157](https://github.com/jupyterhub/traefik-proxy/pull/157) ([@GeorgianaElena](https://github.com/GeorgianaElena), [@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio))
72+
- Deprecations for v2 upgrades [#154](https://github.com/jupyterhub/traefik-proxy/pull/154) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena), [@alexleach](https://github.com/alexleach), [@consideRatio](https://github.com/consideRatio))
73+
- switch etcd3 client for Python 3.11 support [#153](https://github.com/jupyterhub/traefik-proxy/pull/153) ([@minrk](https://github.com/minrk), [@consideRatio](https://github.com/consideRatio))
74+
- Support External Traefik Certificate Resolver and update grpc [#152](https://github.com/jupyterhub/traefik-proxy/pull/152) ([@alexleach](https://github.com/alexleach), [@minrk](https://github.com/minrk))
75+
- improve test time [#150](https://github.com/jupyterhub/traefik-proxy/pull/150) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
76+
- Get the repo back running [#144](https://github.com/jupyterhub/traefik-proxy/pull/144) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena), [@consideRatio](https://github.com/consideRatio))
77+
- prepare to rename default branch to main [#143](https://github.com/jupyterhub/traefik-proxy/pull/143) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
78+
79+
### Documentation improvements
80+
81+
- doc: update sample configuration for v2 [#189](https://github.com/jupyterhub/traefik-proxy/pull/189) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena))
82+
- Fix CI README badges [#177](https://github.com/jupyterhub/traefik-proxy/pull/177) ([@manics](https://github.com/manics), [@consideRatio](https://github.com/consideRatio))
83+
- docs: update link to traefik API [#175](https://github.com/jupyterhub/traefik-proxy/pull/175) ([@minrk](https://github.com/minrk), [@manics](https://github.com/manics))
84+
- Update performance benchmarks for v2 [#163](https://github.com/jupyterhub/traefik-proxy/pull/163) ([@minrk](https://github.com/minrk), [@GeorgianaElena](https://github.com/GeorgianaElena), [@manics](https://github.com/manics))
85+
86+
### Contributors to this release
87+
88+
The following people contributed discussions, new ideas, code and documentation contributions, and review.
89+
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/#how-does-this-tool-define-contributions-in-the-reports).
90+
91+
([GitHub contributors page for this release](https://github.com/jupyterhub/traefik-proxy/graphs/contributors?from=2021-10-18&to=2023-03-17&type=c))
92+
93+
@alexleach ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Aalexleach+updated%3A2021-10-18..2023-03-17&type=Issues)) | @consideRatio ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3AconsideRatio+updated%3A2021-10-18..2023-03-17&type=Issues)) | @dependabot ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Adependabot+updated%3A2021-10-18..2023-03-17&type=Issues)) | @devnull-mr ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Adevnull-mr+updated%3A2021-10-18..2023-03-17&type=Issues)) | @dolfinus ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Adolfinus+updated%3A2021-10-18..2023-03-17&type=Issues)) | @GeorgianaElena ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3AGeorgianaElena+updated%3A2021-10-18..2023-03-17&type=Issues)) | @manics ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Amanics+updated%3A2021-10-18..2023-03-17&type=Issues)) | @maulikjs ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Amaulikjs+updated%3A2021-10-18..2023-03-17&type=Issues)) | @minrk ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Aminrk+updated%3A2021-10-18..2023-03-17&type=Issues)) | @pre-commit-ci ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Apre-commit-ci+updated%3A2021-10-18..2023-03-17&type=Issues)) | @twalcari ([activity](https://github.com/search?q=repo%3Ajupyterhub%2Ftraefik-proxy+involves%3Atwalcari+updated%3A2021-10-18..2023-03-17&type=Issues))
94+
795
## [0.3.0](https://github.com/jupyterhub/traefik-proxy/compare/0.2.0...0.3.0) 2021-10-18
896

997
### Enhancements made

jupyterhub_traefik_proxy/consul.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,15 @@ class TraefikConsulProxy(TKvProxy):
5959
)
6060

6161
kv_url = Unicode("DEPRECATED", config=True).tag(
62-
deprecated_in="0.4",
62+
deprecated_in="1.0",
6363
deprecated_for="consul_url",
6464
)
6565
kv_username = Unicode("DEPRECATED", config=True).tag(
66-
deprecated_in="0.4",
66+
deprecated_in="1.0",
6767
deprecated_for="consul_username",
6868
)
6969
kv_password = Unicode("DEPRECATED", config=True).tag(
70-
deprecated_in="0.4",
70+
deprecated_in="1.0",
7171
deprecated_for="consul_password",
7272
)
7373

jupyterhub_traefik_proxy/etcd.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,15 +94,15 @@ def _default_executor(self):
9494
)
9595

9696
kv_url = Unicode("DEPRECATED", config=True).tag(
97-
deprecated_in="0.4",
97+
deprecated_in="1.0",
9898
deprecated_for="etcd_url",
9999
)
100100
kv_username = Unicode("DEPRECATED", config=True).tag(
101-
deprecated_in="0.4",
101+
deprecated_in="1.0",
102102
deprecated_for="etcd_username",
103103
)
104104
kv_password = Unicode("DEPRECATED", config=True).tag(
105-
deprecated_in="0.4",
105+
deprecated_in="1.0",
106106
deprecated_for="etcd_password",
107107
)
108108

jupyterhub_traefik_proxy/proxy.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ def _concurrency_changed(self, change):
6969
config=True,
7070
help="Deprecated. Use static_config_file",
7171
).tag(
72-
deprecated_in="0.4",
72+
deprecated_in="1.0",
7373
deprecated_for="static_config_file",
7474
)
7575

jupyterhub_traefik_proxy/toml.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ class TraefikTomlProxy(TraefikFileProviderProxy):
99
toml_dynamic_config_file = Unicode(
1010
config=True,
1111
).tag(
12-
deprecated_in="0.4",
12+
deprecated_in="1.0",
1313
deprecated_for="TraefikFileProvider.dynamic_config_file",
1414
)
1515

1616
def __init__(self, **kwargs):
1717
super().__init__(**kwargs)
1818
self.log.warning(
19-
"TraefikTomlProxy is deprecated in jupyterhub-traefik-proxy 0.4. Use `c.JupyterHub.proxy_class = 'traefik_file'"
19+
"TraefikTomlProxy is deprecated in jupyterhub-traefik-proxy 1.0. Use `c.JupyterHub.proxy_class = 'traefik_file'"
2020
)

0 commit comments

Comments
 (0)