Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(caddy): add Caddy support for Outline services #198
feat(caddy): add Caddy support for Outline services #198
Changes from 207 commits
1b82d33
a4c2007
72b27d7
fddfc57
c1ee12f
354301e
751d164
6297304
0ac0a72
794f860
01b7e8a
87a1565
51a13a7
f8d7aa5
1952036
7212265
6e2068d
7114434
1b2dd42
4ce06f0
8660032
26b9100
1b8e903
442b927
4216ce3
35c828d
1322f2d
adc11f2
3084dfd
7e5aae5
b136c79
4bf9c27
b7bb65b
af3ca31
fc72593
b24a339
3bc76bc
f71b13d
6893e2a
32cc180
640f80f
22638c7
2631b87
d76efd2
b8c5ab8
5ac0f46
1f097be
80b25b1
2070d40
eacfa0e
dc1075a
2a343e2
e58b79d
c7465fb
43fa0d6
cf9b7d2
ae7f41d
120db8e
5cbeb54
d705603
2fb4a6b
d2ef46e
ab07400
71d7140
9dfa4e2
0a63f5c
f018d17
4295c45
e6963f6
7113f02
e4d679f
be5f9b0
343e412
7f86ff1
e80b2c5
b1428ed
1c16de8
ebc7053
67fc7fb
7a15e7d
499829e
f165dbd
2a2420a
8178d78
cccba1a
da4ccaa
d47f612
a928e2c
98cc3a0
48d0931
2dec847
ab22e47
3c2a3ef
5e282f1
547e9e6
c6774c8
df2f9d0
c678372
e41abab
b626a1c
f9432d2
6b11f4f
3e03394
fe8bbdd
36a0a1d
aeb2652
8873b10
899d13d
80e5d49
aa00f2e
e658b90
fede4d8
4730d74
30bbdfa
458cf41
81bf20e
53b1e96
8f9f1ea
1ac265d
f5afdcb
1538a9a
4df0b9f
16feaf9
288b88b
de64b8a
38602b5
56c7b11
27e28c7
8df1dd3
e6334e1
1565ab5
d80ba6a
30a285e
2748d55
5233167
2f5077e
feb30b6
b74f5a0
dcc99f6
26c4624
80fe8d3
18ad469
d688dd9
c702159
e509d86
2c57ad3
9399e95
573d5f2
c7df66d
dcc47cf
f7fb25d
e9739b8
cf5a676
0a8fbd0
3becca2
c5937b5
0e55a6f
74d3c67
3b02104
0f12feb
7c061e4
76e320e
469a18b
e80ccc3
6e330fa
2738b45
2270f6c
8935465
2073a27
0dfafcb
e2cc62f
654e0e9
3b6c873
be43e84
bca42a0
62206c8
d284612
04faca2
46e2f66
a32378e
f2b1b6f
ac98ed9
40ff316
f998612
e6686d1
1259af8
3a64e35
39da61b
28cc6c7
48796e1
68c095f
9d126f9
213903d
e5e8549
724260e
655c3cc
7480f3c
fd04a2b
aa3f70f
c2bae13
e336213
00d9b84
24d97f9
082859f
d3e6027
12de843
bb19080
7d8892c
f6dd019
53ddc31
44563eb
c98d9d7
6463406
72c635c
5849c1e
8ef6247
aafb802
7e9f6f4
88bf8cb
2f3393e
9b1b801
5e2c496
1220437
425568e
3aebc3e
9675391
3af803b
030b557
b5a1ea6
22b6f97
a5a2e4a
12a0c90
4c7f6fd
89cfd5d
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something seems wrong here. Is
OutlineApp
both an App and a Module?You create an OutlineApp to then create another OutlineApp? That's a circular dependency and looks like a bug.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This API is so broken... I think we should create something like:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In Caddy apps are modules. So yes,
OutlineApp
is both anApp
and aModule
.Yeah it's a bit of an odd API. I don't think we can get around it though;
OutlineApp
must implementcaddy.Module
.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Discussed offline. I misunderstood the suggestion. Will split them out.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ugh, this API is so bad. Typical global registration badness, unfortunately... I had to deal with that a lot at Google.
I would still take the
ModuleRegistration
approach, and changeOutlineApp
to have a constructor that takes the replayCache as input. This is a more extensible approach and doesn't confuse the OutlineApp lifecycle (otherwise you have two OutlineApp objects!).In order to do that, I think you will need to add a dummy
CaddyModule()
method toOutlineApp
so the compiler doesn't complain, but that can just log error and return.