Compare commits
3421 Commits
erikj/as_u
...
neilj/remo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a17421fb23 | ||
|
|
4f1d7d29a6 | ||
|
|
7a91b9d81c | ||
|
|
248014379e | ||
|
|
4e5f0f7ca0 | ||
|
|
40e56997bc | ||
|
|
4eeb2c2f07 | ||
|
|
2e060774ad | ||
|
|
91c3513668 | ||
|
|
71dcb275f1 | ||
|
|
aa1e017864 | ||
|
|
a5798de067 | ||
|
|
acaa18f7dd | ||
|
|
d5a5d1c632 | ||
|
|
b7fa834c40 | ||
|
|
197fae1639 | ||
|
|
bbd244c7b2 | ||
|
|
903f04c21f | ||
|
|
4a125be138 | ||
|
|
8cbbedaa2b | ||
|
|
9bde730ef8 | ||
|
|
a54a44734f | ||
|
|
7105057cf2 | ||
|
|
ac396a0d32 | ||
|
|
5fee9d8067 | ||
|
|
d21a4d6be6 | ||
|
|
3677548a82 | ||
|
|
224783a73f | ||
|
|
a68e00fca8 | ||
|
|
7bef97dfb7 | ||
|
|
b41c2eaadc | ||
|
|
01e6b405be | ||
|
|
27813b4ca1 | ||
|
|
ab4e4c6c2f | ||
|
|
d3f640f0ac | ||
|
|
017ed9d423 | ||
|
|
3959858eaa | ||
|
|
cd80cbffea | ||
|
|
536a266520 | ||
|
|
4a8a1ac962 | ||
|
|
9c9e618b93 | ||
|
|
5c6f61f81c | ||
|
|
3ecec5ede2 | ||
|
|
09f991a63d | ||
|
|
a6f2d3053d | ||
|
|
cd62981a6a | ||
|
|
8d8834d3e7 | ||
|
|
aa959a6c07 | ||
|
|
7d47cc1305 | ||
|
|
30e69ff9b6 | ||
|
|
72a14860ab | ||
|
|
6b28890543 | ||
|
|
74c46d81fa | ||
|
|
67d618e111 | ||
|
|
263f2c9ce1 | ||
|
|
4d53017432 | ||
|
|
cdb8036161 | ||
|
|
a902d13180 | ||
|
|
3660d24ebe | ||
|
|
cc09685830 | ||
|
|
cd8c5b91ad | ||
|
|
ab20f85c59 | ||
|
|
cc197a61a1 | ||
|
|
2c90422146 | ||
|
|
7529038e66 | ||
|
|
926f29ea6d | ||
|
|
2150151abe | ||
|
|
bb52a2e653 | ||
|
|
cd36a1283b | ||
|
|
c69df5d5d3 | ||
|
|
551ea11559 | ||
|
|
94cb7939e4 | ||
|
|
bf5876990f | ||
|
|
213c98c00a | ||
|
|
855bf4658d | ||
|
|
0891202629 | ||
|
|
320667a479 | ||
|
|
11f2125885 | ||
|
|
38ae23d5c2 | ||
|
|
b616a8717b | ||
|
|
4aa0b707d2 | ||
|
|
b0e767f7bb | ||
|
|
5cf00c9f60 | ||
|
|
7872638c31 | ||
|
|
b5d48560c7 | ||
|
|
07f057ac80 | ||
|
|
13bc1e0746 | ||
|
|
053c50bcb3 | ||
|
|
45bb54a6c6 | ||
|
|
8c1774e821 | ||
|
|
45c4e19c74 | ||
|
|
88f0675967 | ||
|
|
0dbfae03f9 | ||
|
|
e9eeca1314 | ||
|
|
cfc5a442ac | ||
|
|
d2a537ea60 | ||
|
|
9482a84c0a | ||
|
|
4d25624ff6 | ||
|
|
fd463b4f5d | ||
|
|
282c97327f | ||
|
|
a8ad39eec7 | ||
|
|
621e7f37f1 | ||
|
|
00d97668bf | ||
|
|
b6ac5e40a0 | ||
|
|
9ef1107b33 | ||
|
|
45f97de657 | ||
|
|
651ad8bc96 | ||
|
|
899e523d6d | ||
|
|
3b7ceb2c69 | ||
|
|
2dee441bdb | ||
|
|
b0fa3f6ff3 | ||
|
|
a6d84190eb | ||
|
|
9ffadcdbad | ||
|
|
2fb4ff8c89 | ||
|
|
6861ce3fb1 | ||
|
|
271cb1998b | ||
|
|
9073cfc8bd | ||
|
|
9ad448c1e5 | ||
|
|
ec3a59de50 | ||
|
|
ecea5af491 | ||
|
|
b2df0e8e2c | ||
|
|
9a2e22fd41 | ||
|
|
86c60bda15 | ||
|
|
45524f2f5e | ||
|
|
8d16ffaf7a | ||
|
|
02e23b36bc | ||
|
|
26f8e2d099 | ||
|
|
5ca857ad84 | ||
|
|
7c0295f13c | ||
|
|
66cdb840a6 | ||
|
|
bec313818c | ||
|
|
c991e7aec7 | ||
|
|
c2d848b80d | ||
|
|
ee8ba397e8 | ||
|
|
9dd0e34679 | ||
|
|
220607a618 | ||
|
|
660b77f362 | ||
|
|
5526b054aa | ||
|
|
09626bfd39 | ||
|
|
5d89a526f1 | ||
|
|
f5d57d4848 | ||
|
|
72bfaf746d | ||
|
|
6accbd25bc | ||
|
|
fdcad8eabd | ||
|
|
eed7271b3b | ||
|
|
7998ca3a66 | ||
|
|
7d053cfe10 | ||
|
|
7e75d9644b | ||
|
|
cf301e37d8 | ||
|
|
332b60ec68 | ||
|
|
83193a9362 | ||
|
|
d42c81d724 | ||
|
|
c0332d095f | ||
|
|
97653ef1f4 | ||
|
|
8b692bf7c2 | ||
|
|
797b6a63fc | ||
|
|
0ea8582f8b | ||
|
|
d306bd1b26 | ||
|
|
81d9d1bee6 | ||
|
|
6f5890b2fa | ||
|
|
10480c4348 | ||
|
|
8b618041ef | ||
|
|
c980c7e31f | ||
|
|
4868b12029 | ||
|
|
8ea1b41a0e | ||
|
|
802cb5dcf0 | ||
|
|
66f205e93d | ||
|
|
f18dca26da | ||
|
|
290552fd83 | ||
|
|
9c0e6e8e7c | ||
|
|
a8a028dfce | ||
|
|
33dfd9a288 | ||
|
|
78c563b77c | ||
|
|
78a6b950b3 | ||
|
|
1b77bd69fb | ||
|
|
41a5ba1682 | ||
|
|
5ba8ceab4c | ||
|
|
26eefca3b7 | ||
|
|
8da22e2b53 | ||
|
|
30a8deeb68 | ||
|
|
4abc988c6a | ||
|
|
b61ac9660a | ||
|
|
2326e00bc4 | ||
|
|
ca7f7d84f4 | ||
|
|
a5dd335cd8 | ||
|
|
f8740d57de | ||
|
|
64ff11019e | ||
|
|
525dd02bbe | ||
|
|
50924ee34a | ||
|
|
fe6c12e6cd | ||
|
|
d6e0be92fe | ||
|
|
cac4723afe | ||
|
|
5536ddba75 | ||
|
|
39e57f9728 | ||
|
|
8c4896668f | ||
|
|
0ff8163eae | ||
|
|
469b66c102 | ||
|
|
436b1c8be1 | ||
|
|
cef80da903 | ||
|
|
d42b41544a | ||
|
|
7404fb3cdb | ||
|
|
c633fc02d7 | ||
|
|
fde26e47d6 | ||
|
|
ba7a6807c8 | ||
|
|
32471d63b7 | ||
|
|
685704536f | ||
|
|
f6135d06cf | ||
|
|
5580616235 | ||
|
|
6e4931aa19 | ||
|
|
8f4b9f5210 | ||
|
|
06cbf79fe3 | ||
|
|
898378c9b5 | ||
|
|
1f85c2c0ce | ||
|
|
366877c579 | ||
|
|
0a6e716600 | ||
|
|
c665b637de | ||
|
|
ff7bd29ea9 | ||
|
|
b70ea3fa78 | ||
|
|
7791c5194e | ||
|
|
face0c5b3c | ||
|
|
03dce32019 | ||
|
|
b879870b2d | ||
|
|
4238f63545 | ||
|
|
8b7790e68f | ||
|
|
9c50074c21 | ||
|
|
6d13bdec91 | ||
|
|
4c473ba088 | ||
|
|
a9de04be72 | ||
|
|
7b8a157b79 | ||
|
|
20dd3403ee | ||
|
|
6f3cde8b25 | ||
|
|
f4195f4118 | ||
|
|
6fcecb4859 | ||
|
|
d7dbad3526 | ||
|
|
c23e8c3333 | ||
|
|
067ce795c0 | ||
|
|
16c8b4ecbd | ||
|
|
a4c3a361b7 | ||
|
|
b9f6163092 | ||
|
|
3887e0cd80 | ||
|
|
ae90531036 | ||
|
|
b050a10871 | ||
|
|
9e8bca5667 | ||
|
|
aa06d26ae0 | ||
|
|
c3c542bb4a | ||
|
|
48583cef7e | ||
|
|
cd7110c869 | ||
|
|
eaa9f43603 | ||
|
|
c7325776a7 | ||
|
|
00b0e8b7df | ||
|
|
bfa7d46a10 | ||
|
|
157e5a8f27 | ||
|
|
daa10e3e66 | ||
|
|
2db49ea476 | ||
|
|
b29693a30b | ||
|
|
a84b8d56c2 | ||
|
|
8e28bc5eee | ||
|
|
0d2d046709 | ||
|
|
be18073692 | ||
|
|
d3f270f06a | ||
|
|
3a438c24a6 | ||
|
|
336de1d45b | ||
|
|
fe7bd23a85 | ||
|
|
d1523aed6b | ||
|
|
9f7cdf3da1 | ||
|
|
0bc50fb60a | ||
|
|
5f0c449dd5 | ||
|
|
aba5eeabd5 | ||
|
|
856c83f5f8 | ||
|
|
8b63fe4c26 | ||
|
|
fbc047f2a5 | ||
|
|
2c3548d9d8 | ||
|
|
144cbfd650 | ||
|
|
13c18853b9 | ||
|
|
4dfbae18fe | ||
|
|
3064952939 | ||
|
|
1beebe916f | ||
|
|
ac6a0d72b2 | ||
|
|
9ac72d9543 | ||
|
|
d3dcb64501 | ||
|
|
1e8388b311 | ||
|
|
b136ee10df | ||
|
|
ac61b45a75 | ||
|
|
b131cc77df | ||
|
|
68f47d6744 | ||
|
|
f2a753ea38 | ||
|
|
76550c58d2 | ||
|
|
8267034a63 | ||
|
|
3134964054 | ||
|
|
46b0151524 | ||
|
|
95840d84d4 | ||
|
|
54f9ce11a7 | ||
|
|
d4dc527a1a | ||
|
|
1b2940b3bd | ||
|
|
1e315017d3 | ||
|
|
b5c13df0c4 | ||
|
|
4cff9376f7 | ||
|
|
71ef5fc411 | ||
|
|
b183fef9ac | ||
|
|
7590e9fa28 | ||
|
|
44a4d65586 | ||
|
|
6bb1c028f1 | ||
|
|
6870fc496f | ||
|
|
f191be822b | ||
|
|
57426ec6a3 | ||
|
|
4bc7483518 | ||
|
|
09fc34c935 | ||
|
|
25814921f1 | ||
|
|
313987187e | ||
|
|
4dc945ba30 | ||
|
|
802884d4ee | ||
|
|
b8e6ed36c1 | ||
|
|
6fcb25202f | ||
|
|
7a4632af9c | ||
|
|
c0b6955e3b | ||
|
|
c74624a633 | ||
|
|
a1a6473293 | ||
|
|
c4414768af | ||
|
|
a712aa3a9c | ||
|
|
16565e67db | ||
|
|
40c2271680 | ||
|
|
6728bf3940 | ||
|
|
6946c20111 | ||
|
|
71669a0fba | ||
|
|
899a119c2b | ||
|
|
641c409e4e | ||
|
|
70ea2f4e1d | ||
|
|
96c408273e | ||
|
|
1330aa4a8f | ||
|
|
65f3fbfbf7 | ||
|
|
1d0f2ec812 | ||
|
|
c7b333c545 | ||
|
|
69efe6fb16 | ||
|
|
108d5fb20d | ||
|
|
9c598dddcb | ||
|
|
b1a90da82e | ||
|
|
16c7afa94c | ||
|
|
8aaf7ffc44 | ||
|
|
84c0a20dfe | ||
|
|
4b9e5076c4 | ||
|
|
07493607a8 | ||
|
|
bd398b874e | ||
|
|
e4b078a600 | ||
|
|
d730c2c22b | ||
|
|
890cb048fd | ||
|
|
5b9786ee00 | ||
|
|
65d1003d01 | ||
|
|
f5050e148c | ||
|
|
9342cc6ab1 | ||
|
|
21d3f82344 | ||
|
|
47a7e3928d | ||
|
|
65bf9f1119 | ||
|
|
41285ffe5b | ||
|
|
71304bfc8d | ||
|
|
59e0112209 | ||
|
|
d14e94bae4 | ||
|
|
b82c9cf462 | ||
|
|
f2891d2487 | ||
|
|
9982c71515 | ||
|
|
0969d688e3 | ||
|
|
5d3e3c051d | ||
|
|
a164134a53 | ||
|
|
1d9df51ff1 | ||
|
|
e28ef831e6 | ||
|
|
80467bbac3 | ||
|
|
7b288826b7 | ||
|
|
e07384c4e1 | ||
|
|
e1666af9be | ||
|
|
fcd6f01dc7 | ||
|
|
0abb094f1a | ||
|
|
6d65659b62 | ||
|
|
16e0680498 | ||
|
|
b9d6756b14 | ||
|
|
9bccd5e472 | ||
|
|
8184ae8a09 | ||
|
|
56f4ece778 | ||
|
|
71b625d808 | ||
|
|
82fca11fc1 | ||
|
|
82ca6d1f9f | ||
|
|
633e5c933b | ||
|
|
3d672fec51 | ||
|
|
a06614bd2a | ||
|
|
b2200a8690 | ||
|
|
c88bc53903 | ||
|
|
8d98dc8ffe | ||
|
|
86920ac266 | ||
|
|
dbdc565dfd | ||
|
|
c594cc8076 | ||
|
|
ae753fed8c | ||
|
|
5f9bdf90fe | ||
|
|
c003450057 | ||
|
|
49b58f0a16 | ||
|
|
62175a20e5 | ||
|
|
1bb35e3a83 | ||
|
|
bc8fa1509d | ||
|
|
1c0eb8bbb2 | ||
|
|
a288bdf0b1 | ||
|
|
5a707a2f9a | ||
|
|
a8626901cd | ||
|
|
32590b7139 | ||
|
|
7c70b8f8a6 | ||
|
|
107aeb6915 | ||
|
|
968a30a75c | ||
|
|
0869f01e74 | ||
|
|
2b2466f78b | ||
|
|
561eebe170 | ||
|
|
34ac75ce2c | ||
|
|
92e6fb5c89 | ||
|
|
a9b5ea6fc1 | ||
|
|
f8b9ca53ce | ||
|
|
d154f5a055 | ||
|
|
f3ab0b2390 | ||
|
|
128902d60a | ||
|
|
4cc4400b4d | ||
|
|
fc2c245a1f | ||
|
|
459d3d5046 | ||
|
|
d328a93b51 | ||
|
|
af691e415c | ||
|
|
028267acd2 | ||
|
|
d08bac4136 | ||
|
|
c30f73c86a | ||
|
|
092b541401 | ||
|
|
45bb55c6de | ||
|
|
8b9ae6d3a6 | ||
|
|
94960cef03 | ||
|
|
12ae64ce0d | ||
|
|
fe725f7e45 | ||
|
|
e85aabb030 | ||
|
|
d9713e916e | ||
|
|
04dad5ac16 | ||
|
|
2f16857ca9 | ||
|
|
e07cc31cb8 | ||
|
|
68a53f825f | ||
|
|
32e54b472a | ||
|
|
915421065b | ||
|
|
d1b060b492 | ||
|
|
7033b05cad | ||
|
|
9caab0c364 | ||
|
|
dc5efc92a8 | ||
|
|
e83a190643 | ||
|
|
41c3f21c3b | ||
|
|
91c8a7f9f4 | ||
|
|
eb2b8523ae | ||
|
|
5b68e12fd8 | ||
|
|
6d02a13d81 | ||
|
|
4151111d95 | ||
|
|
6575df647d | ||
|
|
68d2869c8d | ||
|
|
da95867d30 | ||
|
|
bd4505f765 | ||
|
|
f86b695cbd | ||
|
|
af8a2f679b | ||
|
|
1895d14e12 | ||
|
|
b99c532c1c | ||
|
|
02c729d6b0 | ||
|
|
02c46acc6a | ||
|
|
bfcefbb230 | ||
|
|
6f47bc3fb2 | ||
|
|
8e32f26cb8 | ||
|
|
cb12a37708 | ||
|
|
f61b2068e6 | ||
|
|
f666fe36d7 | ||
|
|
bf4fd14806 | ||
|
|
f830a3be2a | ||
|
|
649fe1c2be | ||
|
|
f595d6ac57 | ||
|
|
f311018823 | ||
|
|
4074c8b968 | ||
|
|
eaf4d11af9 | ||
|
|
b02465b9db | ||
|
|
00cf679bf2 | ||
|
|
06cd757ae7 | ||
|
|
0927adb012 | ||
|
|
7fc1196a36 | ||
|
|
a214ba93e0 | ||
|
|
6cb415b63f | ||
|
|
c6e75c9f2d | ||
|
|
3bc238629e | ||
|
|
c1dfd6a18a | ||
|
|
464c301584 | ||
|
|
309f3bb322 | ||
|
|
bb4fd8f927 | ||
|
|
2d0e0a4044 | ||
|
|
767686af48 | ||
|
|
2a5a15aff8 | ||
|
|
e3a0300431 | ||
|
|
dc70789056 | ||
|
|
93f7d2df3e | ||
|
|
6a8f902edb | ||
|
|
ef2228c890 | ||
|
|
19818d66af | ||
|
|
d2fa7b7e99 | ||
|
|
ba3f27b69a | ||
|
|
b18cd25e42 | ||
|
|
cf82338930 | ||
|
|
3df8fcca25 | ||
|
|
495ea92350 | ||
|
|
b2327eb9cb | ||
|
|
483ba85c7a | ||
|
|
218cc071c5 | ||
|
|
362d80b770 | ||
|
|
3c03c37883 | ||
|
|
2418b91bb7 | ||
|
|
a4ce91396b | ||
|
|
32b781bfe2 | ||
|
|
dfc846a316 | ||
|
|
46b8a79b3a | ||
|
|
8a2e316413 | ||
|
|
91f8cd3307 | ||
|
|
0ca2908653 | ||
|
|
4fddf8fc77 | ||
|
|
15272f837c | ||
|
|
9645728619 | ||
|
|
be794c7cf7 | ||
|
|
2129dd1a02 | ||
|
|
086f6f27d4 | ||
|
|
5d27730a73 | ||
|
|
719e073f00 | ||
|
|
24b7f3916d | ||
|
|
c475275926 | ||
|
|
eff2042217 | ||
|
|
a126f86eec | ||
|
|
6e2a5aa050 | ||
|
|
4ffd10f46d | ||
|
|
b201149c7e | ||
|
|
2dc2b6e9f1 | ||
|
|
56710c7df5 | ||
|
|
9cd33d2f4b | ||
|
|
4588b0d64a | ||
|
|
afae8442b5 | ||
|
|
d008330d7d | ||
|
|
acb2ac5863 | ||
|
|
7cadc4c918 | ||
|
|
188ad47e73 | ||
|
|
43e16ea3bc | ||
|
|
9285d5c2ce | ||
|
|
7a22a645b5 | ||
|
|
624b172e08 | ||
|
|
c17b128b83 | ||
|
|
9b7aa543d9 | ||
|
|
d9e424bf64 | ||
|
|
51b73be63b | ||
|
|
9ff620a518 | ||
|
|
8248637173 | ||
|
|
664c81e8b7 | ||
|
|
7fe407a87a | ||
|
|
d8e63846e2 | ||
|
|
6fe1db5631 | ||
|
|
b05dd4ac06 | ||
|
|
2475434080 | ||
|
|
3bd9daf4b8 | ||
|
|
39bf0ea2e8 | ||
|
|
61dc53abe9 | ||
|
|
4a7524ffd3 | ||
|
|
6585ef4799 | ||
|
|
a6345009f9 | ||
|
|
56cb34ba8b | ||
|
|
2ca63df83b | ||
|
|
13828f7d58 | ||
|
|
e119cec229 | ||
|
|
ed8b3289ff | ||
|
|
ffcbd80982 | ||
|
|
0af50020fd | ||
|
|
d75e15edce | ||
|
|
c433d4c4d2 | ||
|
|
cbdc01cc3b | ||
|
|
9793bf366e | ||
|
|
08b26afeee | ||
|
|
cd6fee3169 | ||
|
|
4561f3baa0 | ||
|
|
40b35fb875 | ||
|
|
627ecd358e | ||
|
|
3ef71a6ea0 | ||
|
|
bf1e4d96ad | ||
|
|
9a75c0b52e | ||
|
|
d7e27a1f08 | ||
|
|
142b2cddf0 | ||
|
|
da6df65e19 | ||
|
|
57164e17da | ||
|
|
9e89a420e8 | ||
|
|
897230f634 | ||
|
|
14de15eaa4 | ||
|
|
bcc78bb0b8 | ||
|
|
30fd2f89db | ||
|
|
0d70288c59 | ||
|
|
7f914a2dbf | ||
|
|
57fe91f87b | ||
|
|
c5fc09322c | ||
|
|
a451d960cc | ||
|
|
ef43a03fc5 | ||
|
|
f8db967d5a | ||
|
|
fa794980ec | ||
|
|
e9779a6f8f | ||
|
|
9763a73af0 | ||
|
|
f0ba34f581 | ||
|
|
8a21b03fba | ||
|
|
582786fbf2 | ||
|
|
d9bdd26ae5 | ||
|
|
0390c961ac | ||
|
|
3c8a41140e | ||
|
|
24d59c7568 | ||
|
|
d428b46346 | ||
|
|
c45fd0dda0 | ||
|
|
625385d684 | ||
|
|
85129d7068 | ||
|
|
d239f67c25 | ||
|
|
07dfe148de | ||
|
|
3ed3cb4339 | ||
|
|
bbb97a35fd | ||
|
|
e707e7b38d | ||
|
|
563f6a832b | ||
|
|
fb50934b8f | ||
|
|
35f544410a | ||
|
|
cf9a2676d0 | ||
|
|
a332116276 | ||
|
|
6fba9fd20c | ||
|
|
d621c5562e | ||
|
|
b8b898666e | ||
|
|
ad7ac8853c | ||
|
|
c74b96755c | ||
|
|
fbaee26c68 | ||
|
|
d534a27fe8 | ||
|
|
81b7e7eed3 | ||
|
|
e25ab58c5e | ||
|
|
ed8c5e4cda | ||
|
|
a5d0c771a3 | ||
|
|
6587b0b89b | ||
|
|
a4f52a33fe | ||
|
|
7615a8ced1 | ||
|
|
43c6fca960 | ||
|
|
e87d7a4b0f | ||
|
|
e6a7a15f93 | ||
|
|
270f212a2a | ||
|
|
a79034aedf | ||
|
|
c7b24ac3d0 | ||
|
|
f6813919e8 | ||
|
|
283753c33a | ||
|
|
09a1a6b55e | ||
|
|
928c50b59a | ||
|
|
b37e8c9572 | ||
|
|
f834d98402 | ||
|
|
bc5f6e1797 | ||
|
|
3f189c902e | ||
|
|
ee4df7fd7a | ||
|
|
c5a0f82cca | ||
|
|
9c850d9d5e | ||
|
|
2f46804055 | ||
|
|
c7837dce24 | ||
|
|
457fbfaf22 | ||
|
|
2a7f0b8953 | ||
|
|
47d03a79fc | ||
|
|
0b24d58e05 | ||
|
|
ebcffbc3eb | ||
|
|
a1b0e1879b | ||
|
|
e12313ba25 | ||
|
|
67b82f1336 | ||
|
|
afeea319df | ||
|
|
7740eddd04 | ||
|
|
ff2f65d737 | ||
|
|
655ce037fd | ||
|
|
f46a818ce5 | ||
|
|
a696c48133 | ||
|
|
c21b7cbc09 | ||
|
|
4db252c073 | ||
|
|
6d23ec2111 | ||
|
|
b5d510ad64 | ||
|
|
6f9cdc2d47 | ||
|
|
47e2dd1994 | ||
|
|
38590a4870 | ||
|
|
82165eeb05 | ||
|
|
03b086647f | ||
|
|
3680bc18e9 | ||
|
|
84af577356 | ||
|
|
e4bef9d470 | ||
|
|
b40abe0724 | ||
|
|
610f0830b0 | ||
|
|
840068bd78 | ||
|
|
8e3d34e3c5 | ||
|
|
55d9024835 | ||
|
|
cc2d650ef7 | ||
|
|
b1fffca345 | ||
|
|
770b823445 | ||
|
|
d02c5ccb11 | ||
|
|
19259d903c | ||
|
|
f03b3a7a3a | ||
|
|
9adbc912b3 | ||
|
|
e65a17b26f | ||
|
|
6bd4374636 | ||
|
|
b8d75ef53e | ||
|
|
99e36d5e24 | ||
|
|
b82a76c384 | ||
|
|
2562319821 | ||
|
|
4eeb2fb215 | ||
|
|
5891a6edc8 | ||
|
|
fb99dae9c8 | ||
|
|
5488cadaae | ||
|
|
64c1bd1d21 | ||
|
|
7d1024d574 | ||
|
|
7709d2bd16 | ||
|
|
7a3ec5b022 | ||
|
|
0c55b7701c | ||
|
|
6598992b01 | ||
|
|
a124025dab | ||
|
|
ff37acb8ce | ||
|
|
aee39f7de8 | ||
|
|
5180f12bae | ||
|
|
a388d59d44 | ||
|
|
be47cfa9c9 | ||
|
|
554ca58ea1 | ||
|
|
f815bd7feb | ||
|
|
073f6c2e5e | ||
|
|
40638ae7f5 | ||
|
|
9fa3c6ffa3 | ||
|
|
28efc80723 | ||
|
|
b6b73a0bcf | ||
|
|
327b992e17 | ||
|
|
94fb63e44f | ||
|
|
17709f8f9c | ||
|
|
f2b553d656 | ||
|
|
f1a04462eb | ||
|
|
c4045647eb | ||
|
|
6901ac7e9d | ||
|
|
8cbc99cc19 | ||
|
|
d414f30019 | ||
|
|
d758d5310e | ||
|
|
5d976c0c7c | ||
|
|
1977a9b006 | ||
|
|
b872c7b1b4 | ||
|
|
b8bea3424f | ||
|
|
855a151015 | ||
|
|
7072fe3084 | ||
|
|
88f4df85ca | ||
|
|
f0e96ab66a | ||
|
|
4026d555fa | ||
|
|
1ce463963d | ||
|
|
57a3e96e8e | ||
|
|
d04ff2a03d | ||
|
|
3bd0f1a4a3 | ||
|
|
ff05ad147a | ||
|
|
0fd5b3b53e | ||
|
|
51958df766 | ||
|
|
d840019192 | ||
|
|
f01c7488ab | ||
|
|
ae2a957dba | ||
|
|
893107be78 | ||
|
|
b6dce9b9fd | ||
|
|
57c035debe | ||
|
|
431e485914 | ||
|
|
4a3f138832 | ||
|
|
8520bc3109 | ||
|
|
9244a3089e | ||
|
|
da0d2219d2 | ||
|
|
8265995498 | ||
|
|
0b3fd1401f | ||
|
|
c4cdafa81f | ||
|
|
516456b763 | ||
|
|
6f3fda79ce | ||
|
|
95f871fc0d | ||
|
|
a3f0556bea | ||
|
|
821b65aeb5 | ||
|
|
0862d35b8e | ||
|
|
53ef4da8c2 | ||
|
|
b1b6dba2d2 | ||
|
|
8dcfa6e75c | ||
|
|
1953067136 | ||
|
|
5d881cbcb8 | ||
|
|
678a92cb56 | ||
|
|
9770ed91c2 | ||
|
|
a50cf929c1 | ||
|
|
28c21cd578 | ||
|
|
829a7b2032 | ||
|
|
be6a7e47fa | ||
|
|
03b7df1af2 | ||
|
|
62514bb81b | ||
|
|
efb8ed1d45 | ||
|
|
edc1e21dbe | ||
|
|
80bcca659e | ||
|
|
664b7a2920 | ||
|
|
d148c43050 | ||
|
|
26f44164c8 | ||
|
|
5ee1f997a8 | ||
|
|
9139b87be4 | ||
|
|
b8082a5445 | ||
|
|
a383289b0d | ||
|
|
e1781b043b | ||
|
|
03c85335d1 | ||
|
|
8ea509a935 | ||
|
|
50c396a7ee | ||
|
|
075ff3ede9 | ||
|
|
5b1dc94083 | ||
|
|
a2d85144e5 | ||
|
|
4a6e863843 | ||
|
|
8c58c10697 | ||
|
|
f4697b5ec1 | ||
|
|
afd69a0920 | ||
|
|
e1c8440e0c | ||
|
|
10b89d5c2e | ||
|
|
2a360e834f | ||
|
|
5541645e80 | ||
|
|
068aa1d228 | ||
|
|
5c41b22359 | ||
|
|
0e27501ee5 | ||
|
|
e8c9f15397 | ||
|
|
1f2058fca5 | ||
|
|
92d8a068ad | ||
|
|
58f6c48183 | ||
|
|
97fd29c019 | ||
|
|
e79ba9eb34 | ||
|
|
073173277c | ||
|
|
f431ff3fb8 | ||
|
|
17898a5ba6 | ||
|
|
7c288c2250 | ||
|
|
07f62da55a | ||
|
|
183738f469 | ||
|
|
886e5acc76 | ||
|
|
d528406cb8 | ||
|
|
2a8edbaf74 | ||
|
|
fd654a4d54 | ||
|
|
c5a125b24f | ||
|
|
4a8b715679 | ||
|
|
a4ef8d8dd5 | ||
|
|
6a41d2a187 | ||
|
|
67cd4dad81 | ||
|
|
6b90ae6efc | ||
|
|
a0ae475219 | ||
|
|
cb0e637a94 | ||
|
|
82a92ba535 | ||
|
|
be1065af59 | ||
|
|
2f88881c93 | ||
|
|
4cd50d983d | ||
|
|
c5a296b10c | ||
|
|
6b574f3df7 | ||
|
|
6f680241bd | ||
|
|
90743c9d89 | ||
|
|
6129e52f43 | ||
|
|
1838ef1ac3 | ||
|
|
a47fac9af6 | ||
|
|
db33634b1d | ||
|
|
0516dc4d85 | ||
|
|
d39b7b6d38 | ||
|
|
1d2c69fee8 | ||
|
|
82e13662c0 | ||
|
|
5336e49b39 | ||
|
|
a17bac171f | ||
|
|
6d25599098 | ||
|
|
4f8f41c824 | ||
|
|
899e60be80 | ||
|
|
ab97b6e33c | ||
|
|
d02c4532c0 | ||
|
|
7021784d46 | ||
|
|
53a327b4d5 | ||
|
|
c66f4bf7f1 | ||
|
|
fe212bbe4a | ||
|
|
7871146667 | ||
|
|
44be7513bf | ||
|
|
c99c2d58d7 | ||
|
|
d619b113ed | ||
|
|
12699a701f | ||
|
|
7f503f83b9 | ||
|
|
388c164aea | ||
|
|
1c9704f8ab | ||
|
|
766a172b99 | ||
|
|
c658425e6f | ||
|
|
2557531f0f | ||
|
|
117bc94cd2 | ||
|
|
277e50462d | ||
|
|
c4875d8c76 | ||
|
|
c433f61091 | ||
|
|
c9bfb058d8 | ||
|
|
8086a5c05e | ||
|
|
6bfa735a69 | ||
|
|
48951f437f | ||
|
|
8c85f0833d | ||
|
|
25d64a846a | ||
|
|
ea8903fcc9 | ||
|
|
887ca93a1b | ||
|
|
1f18c7cfc9 | ||
|
|
4ff6d22245 | ||
|
|
75942af1db | ||
|
|
33a55289cb | ||
|
|
23b0813599 | ||
|
|
1b53cc3cb4 | ||
|
|
5349262302 | ||
|
|
83f335bedf | ||
|
|
35e1d67b4e | ||
|
|
5f54765587 | ||
|
|
702c4b750c | ||
|
|
25dd56ace3 | ||
|
|
71b94eac46 | ||
|
|
de6888e7ce | ||
|
|
cb80db8941 | ||
|
|
df3a661e4a | ||
|
|
676cf2ee26 | ||
|
|
9feb5d0b71 | ||
|
|
3982a6ee07 | ||
|
|
05e1296649 | ||
|
|
f788c9eb70 | ||
|
|
7f1a6a4ea5 | ||
|
|
3b31a54a6e | ||
|
|
64cf6788d9 | ||
|
|
fab948120f | ||
|
|
aa955f2d15 | ||
|
|
9ec56d6935 | ||
|
|
4a4d2e17bc | ||
|
|
1a8f4139a5 | ||
|
|
bb63e7ca4f | ||
|
|
7e41545e8b | ||
|
|
4fd051f9c3 | ||
|
|
b5b868d41e | ||
|
|
34b25dcc8e | ||
|
|
a35c66a00b | ||
|
|
91fa34b3fa | ||
|
|
522dada206 | ||
|
|
ea00f18135 | ||
|
|
c0dba73aa0 | ||
|
|
8c818af38e | ||
|
|
5c792ee5c3 | ||
|
|
6dc06c3775 | ||
|
|
3933ce9f13 | ||
|
|
de80e979c9 | ||
|
|
e0910d0145 | ||
|
|
ba41aeed6a | ||
|
|
4f24452ead | ||
|
|
aa70d24125 | ||
|
|
efc522c55e | ||
|
|
566947ff34 | ||
|
|
353f2407b7 | ||
|
|
8d4b4e781f | ||
|
|
95fca1c7e9 | ||
|
|
58fe88c47e | ||
|
|
2394e832a8 | ||
|
|
d566e6b17a | ||
|
|
998f5225c1 | ||
|
|
55c3e853c5 | ||
|
|
484867d35d | ||
|
|
7960c26fda | ||
|
|
0dce21ba77 | ||
|
|
34ea14139d | ||
|
|
d1d81d0651 | ||
|
|
d91b99abe0 | ||
|
|
d422570e9b | ||
|
|
c4530b97b2 | ||
|
|
83c50bf752 | ||
|
|
1371d5b798 | ||
|
|
32172f2297 | ||
|
|
ba85786d71 | ||
|
|
bc1a4b5576 | ||
|
|
b970cb0e96 | ||
|
|
1dcb086f33 | ||
|
|
26e5abf20d | ||
|
|
bc1fa8cd01 | ||
|
|
b7c0218812 | ||
|
|
a27e501b09 | ||
|
|
29f20a8a1a | ||
|
|
27128145e6 | ||
|
|
dd3bf40152 | ||
|
|
37f8bdc1d5 | ||
|
|
f95581332f | ||
|
|
84b6fae1f5 | ||
|
|
265513e499 | ||
|
|
252c0c81fa | ||
|
|
e9cdfedff3 | ||
|
|
7134832c01 | ||
|
|
7975d39cbd | ||
|
|
0e62fcd0eb | ||
|
|
d7843f47b6 | ||
|
|
98df67a8de | ||
|
|
0708f437cc | ||
|
|
cd018e3543 | ||
|
|
f85676cc93 | ||
|
|
3355c1a9ec | ||
|
|
597dafb5e8 | ||
|
|
9c2af7b2c5 | ||
|
|
f3561f8d86 | ||
|
|
ea6abf6724 | ||
|
|
c26f49a664 | ||
|
|
48b7ff7a35 | ||
|
|
d9aaf26539 | ||
|
|
c8d32caba3 | ||
|
|
ad1c68ad94 | ||
|
|
fc9cdbabe7 | ||
|
|
a7aca672df | ||
|
|
5dd9a381c5 | ||
|
|
0b26feb422 | ||
|
|
bdc44b99a2 | ||
|
|
d731b75c7b | ||
|
|
dfeb274484 | ||
|
|
0e8acf3b02 | ||
|
|
a92d55d8a7 | ||
|
|
8e4d9122b0 | ||
|
|
6dd7271243 | ||
|
|
8957a11979 | ||
|
|
d3c9c562c6 | ||
|
|
1a6d5bfa08 | ||
|
|
fd4070a85d | ||
|
|
1c0051114a | ||
|
|
3b2ba2fbb8 | ||
|
|
da8628ba2c | ||
|
|
81b513416e | ||
|
|
668e6625b0 | ||
|
|
1dc7492ce5 | ||
|
|
df89f8afb8 | ||
|
|
7e22cd90f5 | ||
|
|
d2f7c4e6b1 | ||
|
|
128294d3e5 | ||
|
|
c7144b105c | ||
|
|
e93a0ebf50 | ||
|
|
cef8ae272a | ||
|
|
a83826ae99 | ||
|
|
5986a10f16 | ||
|
|
f208f608cb | ||
|
|
eb835bf65b | ||
|
|
03116da984 | ||
|
|
188945713e | ||
|
|
95c1f6500b | ||
|
|
1e2b065112 | ||
|
|
bd52978fd7 | ||
|
|
2755a0d48a | ||
|
|
f537432ef9 | ||
|
|
df96177ca7 | ||
|
|
89ac2a5bdb | ||
|
|
989f1167af | ||
|
|
9b1c19e0c5 | ||
|
|
74c3606c53 | ||
|
|
25219b7b4e | ||
|
|
fee831c040 | ||
|
|
466c1f3e01 | ||
|
|
91206e09f2 | ||
|
|
dbf736ba66 | ||
|
|
912a843294 | ||
|
|
5a1c6f45be | ||
|
|
30da50a5b8 | ||
|
|
35e13477cf | ||
|
|
c7401a697f | ||
|
|
c588b9b9e4 | ||
|
|
ae19a7db8c | ||
|
|
b0c24a66ec | ||
|
|
9a3e24a13d | ||
|
|
e8d98466b0 | ||
|
|
dece89d280 | ||
|
|
fe324cb184 | ||
|
|
5f00cfa40d | ||
|
|
e55983defe | ||
|
|
a2ed0f287e | ||
|
|
956061732d | ||
|
|
75937e9033 | ||
|
|
4acd1a3549 | ||
|
|
b164241814 | ||
|
|
1737753a62 | ||
|
|
fd96dd75a3 | ||
|
|
dd27e47b5c | ||
|
|
158ffb92f1 | ||
|
|
512e94d230 | ||
|
|
b5ac0ffa0a | ||
|
|
ecc23188f4 | ||
|
|
f144c0a210 | ||
|
|
48972ce9d1 | ||
|
|
a077e710a3 | ||
|
|
a484735bb0 | ||
|
|
52e87fbfbe | ||
|
|
3518c28aa8 | ||
|
|
998ba41493 | ||
|
|
d3c61ef906 | ||
|
|
c03324294d | ||
|
|
44dc4c365b | ||
|
|
704c5298f0 | ||
|
|
7039ece8fb | ||
|
|
8ca53fb53e | ||
|
|
f9b136a886 | ||
|
|
944d524f18 | ||
|
|
a44c0a096f | ||
|
|
80527b568d | ||
|
|
de8772a655 | ||
|
|
e8690dec2e | ||
|
|
6c18cc4b50 | ||
|
|
455df4dda0 | ||
|
|
78ba0e7ab8 | ||
|
|
416c671474 | ||
|
|
31425d82a3 | ||
|
|
678ad155a2 | ||
|
|
47e26f5a4d | ||
|
|
d102e19e47 | ||
|
|
80cac86b2c | ||
|
|
0c05da2e2e | ||
|
|
828f18bd8b | ||
|
|
a267c2e3ed | ||
|
|
884a561447 | ||
|
|
f5faf6bc14 | ||
|
|
10cdf519aa | ||
|
|
65b793c5a1 | ||
|
|
cc2cf2da97 | ||
|
|
f6cbef6332 | ||
|
|
4285c818ec | ||
|
|
ceca3b2f30 | ||
|
|
9548dd9586 | ||
|
|
0bb273db07 | ||
|
|
3da9781c98 | ||
|
|
d75db3df59 | ||
|
|
ab4526a153 | ||
|
|
8b1affe7d5 | ||
|
|
835779f7fb | ||
|
|
df758e155d | ||
|
|
a51288e5d6 | ||
|
|
b5d92d4d46 | ||
|
|
4f8bb633c7 | ||
|
|
bf648c37e7 | ||
|
|
4b60c969d8 | ||
|
|
0c4dc6fd76 | ||
|
|
c1efcd7c6a | ||
|
|
83a5f459aa | ||
|
|
0869566ad3 | ||
|
|
924c82ca16 | ||
|
|
5d02704822 | ||
|
|
9ca1215582 | ||
|
|
d86826277d | ||
|
|
bca3b91c2d | ||
|
|
db5a1c059a | ||
|
|
dc59ad5334 | ||
|
|
d44dea0223 | ||
|
|
4f93abd62d | ||
|
|
30dd27afff | ||
|
|
3cecf5340d | ||
|
|
9bce065a53 | ||
|
|
d3fa6194f7 | ||
|
|
0f3f0a64bf | ||
|
|
91d96759c9 | ||
|
|
7b22421a7b | ||
|
|
abaa93c158 | ||
|
|
c70809a275 | ||
|
|
5ebed18692 | ||
|
|
94896d7ffe | ||
|
|
06c3d8050f | ||
|
|
b1a22b24ab | ||
|
|
9417986f77 | ||
|
|
0a1fc52971 | ||
|
|
de6223836e | ||
|
|
2b075fb03a | ||
|
|
264cb14402 | ||
|
|
b3708830b8 | ||
|
|
c8ba79327b | ||
|
|
2904d133f3 | ||
|
|
e62f7f17b3 | ||
|
|
0f5e51f726 | ||
|
|
f1087106cf | ||
|
|
efdcbbe46b | ||
|
|
5a63589e80 | ||
|
|
bc80b3f454 | ||
|
|
0467384d2f | ||
|
|
90d713b8c6 | ||
|
|
76cd7de108 | ||
|
|
b86d05a279 | ||
|
|
cb7a6b2379 | ||
|
|
efb9343c8c | ||
|
|
00f12e00f8 | ||
|
|
b199534518 | ||
|
|
1cc6671ec4 | ||
|
|
350f654e7b | ||
|
|
50e328d1e7 | ||
|
|
f05d97e283 | ||
|
|
54aec35867 | ||
|
|
552f090f62 | ||
|
|
642505abc3 | ||
|
|
3149d55b7d | ||
|
|
c68aab1536 | ||
|
|
1b21e771d0 | ||
|
|
62d683161e | ||
|
|
b3dd6fa981 | ||
|
|
073d400b84 | ||
|
|
907e6da5be | ||
|
|
d0ebe82871 | ||
|
|
aa98e38896 | ||
|
|
a8c9faa9a2 | ||
|
|
a8d41c6aff | ||
|
|
d1e7b9c44c | ||
|
|
1729ba1650 | ||
|
|
4ecb8b7de8 | ||
|
|
0f8591a5a8 | ||
|
|
94c7fadc98 | ||
|
|
9b827c40ca | ||
|
|
60f128a401 | ||
|
|
e3758c8c92 | ||
|
|
916efc8249 | ||
|
|
f79f454485 | ||
|
|
a2d8bff0dc | ||
|
|
0f6ec6d1ae | ||
|
|
e615e95590 | ||
|
|
67c1924899 | ||
|
|
086e1a8f3e | ||
|
|
3bade14ec0 | ||
|
|
2e223a8c22 | ||
|
|
0794504bce | ||
|
|
0dce9e1379 | ||
|
|
e0934acdbb | ||
|
|
12941f5f8b | ||
|
|
2f0f911c52 | ||
|
|
4eacf0f200 | ||
|
|
64fa557f80 | ||
|
|
563f9b61b1 | ||
|
|
169851b412 | ||
|
|
00fdfbc213 | ||
|
|
4f0fa7a120 | ||
|
|
39f419868f | ||
|
|
88e5ffe6fe | ||
|
|
a163b748a5 | ||
|
|
ad88460e0d | ||
|
|
664b192a3b | ||
|
|
f4f223aa44 | ||
|
|
b2399f6281 | ||
|
|
4cd1c9f2ff | ||
|
|
7fbfea062e | ||
|
|
56ca578f77 | ||
|
|
bf33eed609 | ||
|
|
c4b3698a80 | ||
|
|
3b0a85fc8e | ||
|
|
2b791865c4 | ||
|
|
db24d7f15e | ||
|
|
5caf79b312 | ||
|
|
54bbe71867 | ||
|
|
193cadc988 | ||
|
|
03e634dad4 | ||
|
|
77d70a7646 | ||
|
|
474810d9d5 | ||
|
|
6cb2e2448a | ||
|
|
68c0ce62d8 | ||
|
|
e6babc27d5 | ||
|
|
3a263bf3ae | ||
|
|
1b9f253e20 | ||
|
|
4cda300058 | ||
|
|
0f7d1c9906 | ||
|
|
e1948175ee | ||
|
|
7f7b2cd3de | ||
|
|
379376e5e6 | ||
|
|
871c4abfec | ||
|
|
cb53ce9d64 | ||
|
|
e5da60d75d | ||
|
|
c85e063302 | ||
|
|
95ad128851 | ||
|
|
fcbd488e9a | ||
|
|
b94a43d5b5 | ||
|
|
e5481b22aa | ||
|
|
c99b6c66bf | ||
|
|
f8fe98812b | ||
|
|
f7f487e14c | ||
|
|
edd2d82809 | ||
|
|
46f98a6a29 | ||
|
|
fc33e81323 | ||
|
|
77d3b5772f | ||
|
|
a5468eaadf | ||
|
|
81880beff4 | ||
|
|
4acb6fe8a3 | ||
|
|
9283987f7e | ||
|
|
54def42c19 | ||
|
|
ea69a84bbb | ||
|
|
663d9db8e7 | ||
|
|
07126e43a4 | ||
|
|
9ec2186586 | ||
|
|
9532caf6ef | ||
|
|
83d9ca7122 | ||
|
|
480d98c91f | ||
|
|
ab96ee29c9 | ||
|
|
0f4fb537ce | ||
|
|
3e438bfec8 | ||
|
|
56a05583ae | ||
|
|
94a49e0636 | ||
|
|
9f72c209ee | ||
|
|
78e8d4c3a5 | ||
|
|
3ad359e5be | ||
|
|
7328039117 | ||
|
|
3904cbf307 | ||
|
|
7e07d25ed6 | ||
|
|
ef771cc4c2 | ||
|
|
b313b9b009 | ||
|
|
47a9ba435d | ||
|
|
e0b9d5f0af | ||
|
|
dacbeb2e03 | ||
|
|
810715f79a | ||
|
|
cb23aa4c42 | ||
|
|
c573794b22 | ||
|
|
e564306e31 | ||
|
|
a67d8ace9b | ||
|
|
43c3f0b02f | ||
|
|
3e704822be | ||
|
|
329d18b39c | ||
|
|
6105c6101f | ||
|
|
b3f6dddad2 | ||
|
|
5c445114d3 | ||
|
|
1fe6bbb555 | ||
|
|
047ac0cbba | ||
|
|
6340141300 | ||
|
|
abd9914683 | ||
|
|
026cd91ac8 | ||
|
|
f749607c91 | ||
|
|
e7a16c6210 | ||
|
|
c7273c11bc | ||
|
|
5110f4e425 | ||
|
|
04277d0ed8 | ||
|
|
3e8b02c939 | ||
|
|
7aea00069c | ||
|
|
911db96658 | ||
|
|
058934b1cf | ||
|
|
a6f421e812 | ||
|
|
e1728dfcbe | ||
|
|
5c3d6ea9c7 | ||
|
|
3f357583ce | ||
|
|
9c2f99a3b7 | ||
|
|
08760b0d9a | ||
|
|
b85fe45f46 | ||
|
|
e5b52d0f94 | ||
|
|
81d4f51524 | ||
|
|
593389a077 | ||
|
|
eba48c0f16 | ||
|
|
f62c597d14 | ||
|
|
67f7b9cb50 | ||
|
|
056f099126 | ||
|
|
47a9da28ca | ||
|
|
cc325c7069 | ||
|
|
e404ba9aac | ||
|
|
b69216f768 | ||
|
|
6a4d01ee94 | ||
|
|
3c580c2b47 | ||
|
|
1b4bf232b9 | ||
|
|
9fafdfa97d | ||
|
|
f9d6c677ea | ||
|
|
084046456e | ||
|
|
0d31109ed5 | ||
|
|
74e7617083 | ||
|
|
1d17fc52ae | ||
|
|
a36b0ec195 | ||
|
|
6190abe8da | ||
|
|
c69026a758 | ||
|
|
dba84fa69c | ||
|
|
88c5ffec33 | ||
|
|
2baebace6a | ||
|
|
c00f4d237b | ||
|
|
49a044aa5f | ||
|
|
03287c350e | ||
|
|
c632bc8654 | ||
|
|
926da4dda8 | ||
|
|
e77f24d80a | ||
|
|
8c2b8d7f0b | ||
|
|
c7d0f34a3c | ||
|
|
52e3d3813b | ||
|
|
0fd2321629 | ||
|
|
f1bfe6167a | ||
|
|
4e726783ea | ||
|
|
a5aea15a6b | ||
|
|
c8f2c19991 | ||
|
|
1519572961 | ||
|
|
3a5d8d5891 | ||
|
|
f6a0a02a62 | ||
|
|
1af16acd4c | ||
|
|
df33c164de | ||
|
|
d6a7797dd1 | ||
|
|
6ec9d8ba0a | ||
|
|
c6584f4b5f | ||
|
|
80736fd8ed | ||
|
|
fc0f13dd03 | ||
|
|
10405153c2 | ||
|
|
017eb9d17a | ||
|
|
4a28d3d36f | ||
|
|
15133477ee | ||
|
|
fc954960e9 | ||
|
|
947c7443eb | ||
|
|
6bd856caa2 | ||
|
|
e238013c44 | ||
|
|
a94967bc5f | ||
|
|
b8a5b0097c | ||
|
|
a8ed93a4b5 | ||
|
|
442734ff9e | ||
|
|
762a0982aa | ||
|
|
f293d124b6 | ||
|
|
24bc15eab4 | ||
|
|
4e50fe3edb | ||
|
|
f726f2dc6c | ||
|
|
03c11032c3 | ||
|
|
f9ce1b4eb0 | ||
|
|
c187638ee9 | ||
|
|
06bc8d2fe5 | ||
|
|
fb216a22db | ||
|
|
1ccafb0c5e | ||
|
|
dd99db846d | ||
|
|
5119818e9d | ||
|
|
22a2004428 | ||
|
|
7ede650956 | ||
|
|
164f8e4843 | ||
|
|
7bb651de6a | ||
|
|
e3586f7c06 | ||
|
|
a2bfb778c8 | ||
|
|
a45f2c3a00 | ||
|
|
381d2cfdf0 | ||
|
|
67a1e315cc | ||
|
|
8c0ff0287a | ||
|
|
306361b31b | ||
|
|
bddfad253a | ||
|
|
86ef9760a7 | ||
|
|
83e72bb2f0 | ||
|
|
8ddd0f273c | ||
|
|
e97d93948d | ||
|
|
7e561b5c1a | ||
|
|
49840f5ab2 | ||
|
|
3cbe8331e6 | ||
|
|
395276b405 | ||
|
|
b8d9e108be | ||
|
|
20733857ab | ||
|
|
bdc27d6716 | ||
|
|
d34657e1f2 | ||
|
|
d3464ce708 | ||
|
|
9eb1a79100 | ||
|
|
dc045ef202 | ||
|
|
2418e7811a | ||
|
|
f4a4dbcad1 | ||
|
|
0c905ee015 | ||
|
|
6982320572 | ||
|
|
495975e231 | ||
|
|
8a1817f0d2 | ||
|
|
497444f1fd | ||
|
|
8164f6daf3 | ||
|
|
f7199e8734 | ||
|
|
ed82043efb | ||
|
|
2dadc092b8 | ||
|
|
c6dbd216e6 | ||
|
|
d9f3db5081 | ||
|
|
4917ff5523 | ||
|
|
17d585753f | ||
|
|
e6018bcc1a | ||
|
|
d86794325f | ||
|
|
92faeb2a3f | ||
|
|
dd59dfc51f | ||
|
|
158d6c75b6 | ||
|
|
537d0b7b36 | ||
|
|
f9d34a763c | ||
|
|
dfcad5fad5 | ||
|
|
3099d96dba | ||
|
|
149c4f1765 | ||
|
|
fd99787162 | ||
|
|
e5f080d6a7 | ||
|
|
a59d899668 | ||
|
|
055fe3589e | ||
|
|
8935ec5a93 | ||
|
|
81e2813948 | ||
|
|
52e6e815be | ||
|
|
01afcfc4e9 | ||
|
|
93a8603904 | ||
|
|
69e857853f | ||
|
|
d1b7c0ca05 | ||
|
|
6e0c66f651 | ||
|
|
495a9d06bb | ||
|
|
c69faf8c4a | ||
|
|
7c570bff74 | ||
|
|
9693625e55 | ||
|
|
2a4ea3baa8 | ||
|
|
3e39783d5d | ||
|
|
ae61ade891 | ||
|
|
ed763aeba8 | ||
|
|
ccce6f26a6 | ||
|
|
da8f82008d | ||
|
|
25baf3b2ac | ||
|
|
9c834b8ee9 | ||
|
|
058a4c665e | ||
|
|
8f614f842d | ||
|
|
7258d081a5 | ||
|
|
2b8d28b095 | ||
|
|
7232917f12 | ||
|
|
0f7033fb98 | ||
|
|
eeb755d17b | ||
|
|
334e075dd8 | ||
|
|
8c41b0ca66 | ||
|
|
bc29946809 | ||
|
|
8174c6725b | ||
|
|
5908a8f6f5 | ||
|
|
abdc141c2b | ||
|
|
b5b93f45d5 | ||
|
|
6e05fd032c | ||
|
|
5fa27eac78 | ||
|
|
82f922b4af | ||
|
|
8f5c23d0cd | ||
|
|
53c5fa4e6c | ||
|
|
4f3e3ac192 | ||
|
|
8ea887856c | ||
|
|
faa462ef79 | ||
|
|
23b6a0537f | ||
|
|
5b68f29f48 | ||
|
|
8f646f2d04 | ||
|
|
9a8bbc9a59 | ||
|
|
3deaad2fb4 | ||
|
|
26557c9db4 | ||
|
|
965154d60a | ||
|
|
5304449738 | ||
|
|
19475cf337 | ||
|
|
9c8cec5dab | ||
|
|
07340cdaca | ||
|
|
f094f715cf | ||
|
|
36c62a67c4 | ||
|
|
b5c976347b | ||
|
|
e1e3e77bfd | ||
|
|
6de3884e5e | ||
|
|
a512e637ac | ||
|
|
b3064532d0 | ||
|
|
861c063ebc | ||
|
|
484a9b8c81 | ||
|
|
a873896096 | ||
|
|
dc5db01ff2 | ||
|
|
51d33d5178 | ||
|
|
74bbdd0412 | ||
|
|
8607397ea7 | ||
|
|
a3c11f7320 | ||
|
|
73a089f461 | ||
|
|
3852c2bc39 | ||
|
|
0d36fe3563 | ||
|
|
948a6d8776 | ||
|
|
333bee27f5 | ||
|
|
bd61c82bdf | ||
|
|
a215b698c4 | ||
|
|
28223841e0 | ||
|
|
ad8e137062 | ||
|
|
e3c159863d | ||
|
|
92abd3d6d6 | ||
|
|
4a15a3e4d5 | ||
|
|
ae6ad4cf41 | ||
|
|
2c695fd1aa | ||
|
|
82fa31799c | ||
|
|
2a7b3439de | ||
|
|
b4c3bc1734 | ||
|
|
219606a6ed | ||
|
|
e70b4ce069 | ||
|
|
3c37c7e45b | ||
|
|
a87d419a85 | ||
|
|
0c4a99ea2d | ||
|
|
9453c65948 | ||
|
|
ab59f3d8da | ||
|
|
607eec0456 | ||
|
|
d514608b5c | ||
|
|
28781b65e7 | ||
|
|
d4e0861ff9 | ||
|
|
a5e70b31a1 | ||
|
|
8afddf7afe | ||
|
|
bf01efb864 | ||
|
|
8834396b8a | ||
|
|
4e8276a34a | ||
|
|
5b4028fa78 | ||
|
|
7ee94fc1ba | ||
|
|
66a1d57adb | ||
|
|
c2185f14d7 | ||
|
|
8ac9fa7375 | ||
|
|
3baf6e1667 | ||
|
|
f65163627f | ||
|
|
df55a943ca | ||
|
|
e7fa032126 | ||
|
|
0649306fde | ||
|
|
a1cd37390f | ||
|
|
4c3e7eeec5 | ||
|
|
6cf261930a | ||
|
|
94f7befc31 | ||
|
|
bd469adaa9 | ||
|
|
c53336986d | ||
|
|
e4e96486a9 | ||
|
|
45a1053d44 | ||
|
|
a9d84f4e44 | ||
|
|
787d22ed6c | ||
|
|
fbe5ba25f6 | ||
|
|
5121ae97f5 | ||
|
|
fc691ca97c | ||
|
|
6b6cb32297 | ||
|
|
e37c221b97 | ||
|
|
7d3f639844 | ||
|
|
04eed80a73 | ||
|
|
829213523e | ||
|
|
e3aa2c0b75 | ||
|
|
e302f40e20 | ||
|
|
19dc676d1a | ||
|
|
5230bc1471 | ||
|
|
fdd1a62e8d | ||
|
|
79eded1ae4 | ||
|
|
d3f80cbc9c | ||
|
|
8601c24287 | ||
|
|
ad53a5497d | ||
|
|
a2ddaa90f2 | ||
|
|
94ae1dea3c | ||
|
|
168491c412 | ||
|
|
9ea408441f | ||
|
|
3af7a95a9d | ||
|
|
8dfb33d325 | ||
|
|
13f6f1624b | ||
|
|
b28a7ed503 | ||
|
|
23b53b4ef8 | ||
|
|
6bb9a4b1d6 | ||
|
|
703de4ec13 | ||
|
|
1f3f5fcf52 | ||
|
|
3fd68d533b | ||
|
|
741571cf22 | ||
|
|
aeca5a5ed5 | ||
|
|
642199570c | ||
|
|
ce846bb620 | ||
|
|
1a24d4effa | ||
|
|
bbab6ebfd9 | ||
|
|
392a54128c | ||
|
|
83ee5592a5 | ||
|
|
b9158ac2bf | ||
|
|
cb016baa37 | ||
|
|
80d2d50f47 | ||
|
|
9407bcf37a | ||
|
|
6c48aa0256 | ||
|
|
6bbe3d5732 | ||
|
|
a334e1cace | ||
|
|
05b9937cd7 | ||
|
|
47c02e6332 | ||
|
|
3f0d8e6b09 | ||
|
|
3d6b24fb1b | ||
|
|
f773ecbd61 | ||
|
|
13b31a9baf | ||
|
|
35aec19f0a | ||
|
|
38ead946a9 | ||
|
|
a219ce8726 | ||
|
|
31c15dcb80 | ||
|
|
c600886d47 | ||
|
|
edabc18938 | ||
|
|
b3097396e7 | ||
|
|
8565d9a9fe | ||
|
|
550007cb0e | ||
|
|
286d6930b7 | ||
|
|
892432c818 | ||
|
|
1e09a1d48a | ||
|
|
ad95ec12ca | ||
|
|
1f4296efcf | ||
|
|
505abb38f0 | ||
|
|
4ecdf73fc7 | ||
|
|
2b41f2ed76 | ||
|
|
5baa087312 | ||
|
|
b58714789f | ||
|
|
06f2dbbb5d | ||
|
|
ac80cb08fe | ||
|
|
9a1cceeca9 | ||
|
|
c7131baefc | ||
|
|
f75b9961c6 | ||
|
|
2b39494cd5 | ||
|
|
0cb7afff35 | ||
|
|
f00a9d2636 | ||
|
|
c9c50284d7 | ||
|
|
1e70f1dbab | ||
|
|
b56ef14629 | ||
|
|
fe88907d04 | ||
|
|
c1ae6b1bce | ||
|
|
85a43f4167 | ||
|
|
c6363f7269 | ||
|
|
2a8996b67d | ||
|
|
e7b3b4d8c2 | ||
|
|
0e46ff6904 | ||
|
|
da864a92c9 | ||
|
|
f472abd792 | ||
|
|
9c749a6b61 | ||
|
|
c71b93f2a4 | ||
|
|
d42d79e3c3 | ||
|
|
9d13ff4da8 | ||
|
|
c8642720c9 | ||
|
|
24efb2a70d | ||
|
|
c30cfff572 | ||
|
|
335b23a078 | ||
|
|
fcfe7a850d | ||
|
|
024be6cf18 | ||
|
|
3e6e94fe9f | ||
|
|
8b3652831c | ||
|
|
bc9af88a2d | ||
|
|
90f8e606e2 | ||
|
|
d0f6c1ce21 | ||
|
|
9e2f9a7b57 | ||
|
|
941ac0f085 | ||
|
|
f6e82dcddb | ||
|
|
0a81038ea0 | ||
|
|
ad9198cc34 | ||
|
|
bef1d6f3bf | ||
|
|
7de1989ea2 | ||
|
|
984db8bb08 | ||
|
|
c971aa7b9d | ||
|
|
8f08d848f5 | ||
|
|
f1a7264663 | ||
|
|
7c33ab76da | ||
|
|
63755fa4c2 | ||
|
|
73884ebac5 | ||
|
|
7c27c4d51c | ||
|
|
1c3f4d9ca5 | ||
|
|
bc74925c5b | ||
|
|
6c0f8d9d50 | ||
|
|
ed5331a627 | ||
|
|
cb64fe2cb7 | ||
|
|
13193a6e2b | ||
|
|
3126b88d35 | ||
|
|
89a76d1889 | ||
|
|
bfa0b759e0 | ||
|
|
9cbd0094f0 | ||
|
|
9dbe38ea7d | ||
|
|
93139a1fb8 | ||
|
|
e7cd7cb0f0 | ||
|
|
c857f5ef9b | ||
|
|
b7d2fb5eb9 | ||
|
|
f30a303590 | ||
|
|
2ac1abbc7e | ||
|
|
fa0d464fa4 | ||
|
|
0403cf0783 | ||
|
|
0e200e366d | ||
|
|
11bfc2af1c | ||
|
|
3db016b641 | ||
|
|
8decd6233d | ||
|
|
8c5b84441b | ||
|
|
54f8616d2c | ||
|
|
65cd8ccc79 | ||
|
|
7ca097f77e | ||
|
|
5cea4e16c7 | ||
|
|
0ddf486724 | ||
|
|
546aee7e52 | ||
|
|
33716c4aea | ||
|
|
bc635026c5 | ||
|
|
02aa41809b | ||
|
|
8fd93b5eea | ||
|
|
4073f73edc | ||
|
|
649c647955 | ||
|
|
4084a774a8 | ||
|
|
b041115415 | ||
|
|
f8825748dd | ||
|
|
a40802bcbc | ||
|
|
9a68778ac2 | ||
|
|
9e05c8d309 | ||
|
|
037a06e8f0 | ||
|
|
af10fa6536 | ||
|
|
e957428a15 | ||
|
|
e586916cda | ||
|
|
3572a206d3 | ||
|
|
7bc22539ff | ||
|
|
b7e7712f07 | ||
|
|
1e4c7fff5f | ||
|
|
9a5ea511b5 | ||
|
|
e33a538af3 | ||
|
|
edda9f5cac | ||
|
|
b8ad756bd0 | ||
|
|
771d213ac5 | ||
|
|
b60749a1ec | ||
|
|
6febd8e8f7 | ||
|
|
cd7ef43872 | ||
|
|
806964b5de | ||
|
|
52ec6e9dfa | ||
|
|
c5440b2ca0 | ||
|
|
84a750e0c3 | ||
|
|
7298efd361 | ||
|
|
f60c9e2a01 | ||
|
|
7baf66ef5d | ||
|
|
3801b8aa03 | ||
|
|
654324eded | ||
|
|
1d371fc5b3 | ||
|
|
b07a2cbee9 | ||
|
|
70fd75cd1d | ||
|
|
5d848992bf | ||
|
|
3b4223aa23 | ||
|
|
28f5bfdcf7 | ||
|
|
ee7c8bd2b5 | ||
|
|
6707a3212c | ||
|
|
135f3b4390 | ||
|
|
2608ebc04c | ||
|
|
599f65bb89 | ||
|
|
417e7077aa | ||
|
|
d64b24dfe6 | ||
|
|
4f8baab0c4 | ||
|
|
b3c2ebba32 | ||
|
|
625542878d | ||
|
|
2fd17b5ad1 | ||
|
|
10587f7f32 | ||
|
|
80189ed27c | ||
|
|
0cd7b209e2 | ||
|
|
78d1042c10 | ||
|
|
af3125226d | ||
|
|
9c8cd855da | ||
|
|
92657be7d0 | ||
|
|
61b05727fa | ||
|
|
dfba1d843d | ||
|
|
2254790ae4 | ||
|
|
7419764351 | ||
|
|
2d2828dcbc | ||
|
|
c127c8d042 | ||
|
|
804dd41e18 | ||
|
|
5f02017aea | ||
|
|
c91bd295f5 | ||
|
|
87c18d12ee | ||
|
|
a6cf7d9d9a | ||
|
|
7e9ced4178 | ||
|
|
70fc599ede | ||
|
|
bae37cd811 | ||
|
|
c42f7fd7b9 | ||
|
|
3e242dc149 | ||
|
|
87b111f96a | ||
|
|
b13836da7f | ||
|
|
77055dba92 | ||
|
|
567363e497 | ||
|
|
06ee2b7cc5 | ||
|
|
30cf40ff30 | ||
|
|
905f8de673 | ||
|
|
4fc4b881c5 | ||
|
|
81942c109d | ||
|
|
a395f1ddb3 | ||
|
|
99178f8602 | ||
|
|
301cb60d0b | ||
|
|
0b01281e77 | ||
|
|
e8e540630e | ||
|
|
a796bdd35e | ||
|
|
09f3cf1a7e | ||
|
|
3d6aa06577 | ||
|
|
ea068d6f3c | ||
|
|
14e4d4f4bf | ||
|
|
475253a88e | ||
|
|
7f0399586d | ||
|
|
8c0c51ecb3 | ||
|
|
79a8a347a6 | ||
|
|
82276a18d1 | ||
|
|
b1580f50fe | ||
|
|
414fa36f3e | ||
|
|
32eb1dedd2 | ||
|
|
71990b3cae | ||
|
|
0b07f02e19 | ||
|
|
16a31c6fce | ||
|
|
9fbaed325f | ||
|
|
9db2476991 | ||
|
|
69f7f1418f | ||
|
|
48b04c4a4c | ||
|
|
08abe8e13c | ||
|
|
05077e06fa | ||
|
|
83caead95a | ||
|
|
01a5a8b9e3 | ||
|
|
897d976c1e | ||
|
|
45fc0ead10 | ||
|
|
cdd24449ee | ||
|
|
14d49c51db | ||
|
|
84b4e76fed | ||
|
|
c780d84d66 | ||
|
|
1d67b13674 | ||
|
|
92d50e3c2a | ||
|
|
e94cdbaecf | ||
|
|
9b1bc593c5 | ||
|
|
7f147d623b | ||
|
|
15e8dd2ccc | ||
|
|
05fe8a6c1c | ||
|
|
f584d6108f | ||
|
|
28d7b546cb | ||
|
|
f2cbbda956 | ||
|
|
cd77270a66 | ||
|
|
242a0483eb | ||
|
|
60cf1c6e16 | ||
|
|
7e6e588e60 | ||
|
|
1ca2744621 | ||
|
|
dddb5aa7bb | ||
|
|
4eb8408ed2 | ||
|
|
c5842dff1a | ||
|
|
7a0da69eee | ||
|
|
a5806aba27 | ||
|
|
fd2dbf1836 | ||
|
|
9643a6f7f2 | ||
|
|
5c261107c9 | ||
|
|
c7181dcc6c | ||
|
|
74854a9719 | ||
|
|
48fec67536 | ||
|
|
3504982cb7 | ||
|
|
4e5a4549b6 | ||
|
|
9b7d9d8ba0 | ||
|
|
db10f553ba | ||
|
|
764030cf63 | ||
|
|
8432e2ebd7 | ||
|
|
a81f140880 | ||
|
|
47b25ba5f3 | ||
|
|
3bf8bab8f9 | ||
|
|
a4cf660a32 | ||
|
|
0d568ff403 | ||
|
|
d7585a4c83 | ||
|
|
365f588d98 | ||
|
|
eb7be75a10 | ||
|
|
dd0ac1614c | ||
|
|
bb81e78ec6 | ||
|
|
afb4b490a4 | ||
|
|
f7bf181a90 | ||
|
|
f7baff6f7b | ||
|
|
a52f276990 | ||
|
|
42a394caa2 | ||
|
|
46c832eaac | ||
|
|
2b1a4b2596 | ||
|
|
cd6937fb26 | ||
|
|
8550a7e9c2 | ||
|
|
c2c153dd3b | ||
|
|
79d3b4689e | ||
|
|
808d8e06aa | ||
|
|
3f6762f0bb | ||
|
|
3b5b64ac99 | ||
|
|
23d7e63a4a | ||
|
|
8bd585b09b | ||
|
|
012d612f9d | ||
|
|
f89f6b7c09 | ||
|
|
be6527325a | ||
|
|
55e6bdf287 | ||
|
|
e2c0aa2c26 | ||
|
|
b01a755498 | ||
|
|
1058d14127 | ||
|
|
80bf7d3580 | ||
|
|
9a2f960736 | ||
|
|
324525f40c | ||
|
|
4d664278af | ||
|
|
8dee601054 | ||
|
|
e21c368b8b | ||
|
|
cf6f9a8b53 | ||
|
|
48a910e128 | ||
|
|
f2a48d87df | ||
|
|
2aa7cc6a46 | ||
|
|
e07970165f | ||
|
|
c5171bf171 | ||
|
|
ba1fbf7d5b | ||
|
|
3cef867cc1 | ||
|
|
c144252a8c | ||
|
|
c334ca67bb | ||
|
|
04f5d2db62 | ||
|
|
ab822a2d1f | ||
|
|
91cdb6de08 | ||
|
|
d49b77404b | ||
|
|
63260397c6 | ||
|
|
3f8709ffe4 | ||
|
|
3ee57bdcbb | ||
|
|
4c22b4047b | ||
|
|
782689bd40 | ||
|
|
ca87ad1def | ||
|
|
b5f638f1f4 | ||
|
|
9fd161c6fb | ||
|
|
0195dfbf52 | ||
|
|
69c49d3fa3 | ||
|
|
a2d872e7b3 | ||
|
|
fa27073b14 | ||
|
|
38f708a2bb | ||
|
|
73737bd0f9 | ||
|
|
3b2dcfff78 | ||
|
|
521d369e7a | ||
|
|
b99a0f3941 | ||
|
|
a8ffc27db7 | ||
|
|
4c9da1440f | ||
|
|
d9efd87d55 | ||
|
|
0e8d78f6aa | ||
|
|
66f7dc8c87 | ||
|
|
7e51342196 | ||
|
|
bcfeb44afe | ||
|
|
372bf073c1 | ||
|
|
7edd11623d | ||
|
|
13ad9930c8 | ||
|
|
51b17ec566 | ||
|
|
3c1080b6e4 | ||
|
|
eff3ae3b9a | ||
|
|
b4d6db5c4a | ||
|
|
aae86a81ef | ||
|
|
7d5b1a60a3 | ||
|
|
bfb6c58624 | ||
|
|
a675f9c556 | ||
|
|
c151b32b1d | ||
|
|
762a758fea | ||
|
|
25d2b5d55f | ||
|
|
df1e4f259f | ||
|
|
c055c91655 | ||
|
|
3f543dc021 | ||
|
|
859989f958 | ||
|
|
8cfad2e686 | ||
|
|
81d727efa9 | ||
|
|
da7fe43899 | ||
|
|
e2e846628d | ||
|
|
2f78f432c4 | ||
|
|
fc5d937550 | ||
|
|
86a00e05e1 | ||
|
|
d82fa0e9a6 | ||
|
|
a87af25fbb | ||
|
|
eabc5f8271 | ||
|
|
c24fc9797b | ||
|
|
afcd655ab6 | ||
|
|
dc56c47dc0 | ||
|
|
4601129c44 | ||
|
|
ef184caf30 | ||
|
|
488ffe6fdb | ||
|
|
773db62a22 | ||
|
|
39176f27f7 | ||
|
|
2de813a611 | ||
|
|
eaaa2248ff | ||
|
|
87a824bad1 | ||
|
|
c4eb97518f | ||
|
|
55afba0fc5 | ||
|
|
75c663c7b9 | ||
|
|
1c5e690a6b | ||
|
|
fef2e65d12 | ||
|
|
596ce63576 | ||
|
|
b8429c7c81 | ||
|
|
ab035bdeac | ||
|
|
19b433e3f4 | ||
|
|
b586b8b986 | ||
|
|
70e48cbbb1 | ||
|
|
aa3220df6a | ||
|
|
7277216d01 | ||
|
|
cd0c749c4f | ||
|
|
9ecbaf8ba8 | ||
|
|
1522ed9c07 | ||
|
|
629f390035 | ||
|
|
e5962f845c | ||
|
|
e7d091fb86 | ||
|
|
414d54b61a | ||
|
|
2545993ce4 | ||
|
|
06b331ff40 | ||
|
|
8f9a7eb58d | ||
|
|
c74c71128d | ||
|
|
ed4bc3d2fc | ||
|
|
bd92c8eaa7 | ||
|
|
99ebaed8e6 | ||
|
|
9b5bf3d858 | ||
|
|
e25d87d97b | ||
|
|
e2c9fe0a6a | ||
|
|
614e6d517d | ||
|
|
0bdc362598 | ||
|
|
591bf87c6a | ||
|
|
bdfbd934d6 | ||
|
|
9b75c78b4d | ||
|
|
8f0c430ca4 | ||
|
|
63417c31e9 | ||
|
|
1f24d8681b | ||
|
|
f4b49152e2 | ||
|
|
b6d55588e1 | ||
|
|
8ba2dac6ea | ||
|
|
50bcaf1a27 | ||
|
|
cd32c19a60 | ||
|
|
34f51babc5 | ||
|
|
8226e5597a | ||
|
|
ce7de9ae6b | ||
|
|
0d43f991a1 | ||
|
|
99dd975dae | ||
|
|
4f7064f6b5 | ||
|
|
f0cede5556 | ||
|
|
54ac18e832 | ||
|
|
66a4ca1d28 | ||
|
|
72788cf9c1 | ||
|
|
edc427a351 | ||
|
|
fe87890b18 | ||
|
|
f6a3067868 | ||
|
|
15d513f16f | ||
|
|
174be586e5 | ||
|
|
b5eee511c7 | ||
|
|
93d174bcc4 | ||
|
|
5e42c45c96 | ||
|
|
982edca380 | ||
|
|
234611f347 | ||
|
|
14b3da63a3 | ||
|
|
9f0791b7bd | ||
|
|
9f500cb39e | ||
|
|
8d14598e90 | ||
|
|
ca0b052307 | ||
|
|
cac0253799 | ||
|
|
0abb205b47 | ||
|
|
69e51c7ba4 | ||
|
|
8ae64b270f | ||
|
|
cf1e2000f6 | ||
|
|
6b8c07abc2 | ||
|
|
0bc4627a73 | ||
|
|
53ace904b2 | ||
|
|
ac205a54b2 | ||
|
|
31fa743567 | ||
|
|
c79c4c0a7d | ||
|
|
6c6aba76e1 | ||
|
|
a001038b92 | ||
|
|
807449d8f2 | ||
|
|
c31793a784 | ||
|
|
c08f9d95b2 | ||
|
|
dd16e7dfcc | ||
|
|
8b3d9b6b19 | ||
|
|
b37c472419 | ||
|
|
c75b71a397 | ||
|
|
3c0213a217 | ||
|
|
178ab76ac0 | ||
|
|
638d35ef08 | ||
|
|
01021c812f | ||
|
|
2e9c73e8ca | ||
|
|
64899341dc | ||
|
|
885ea9c602 | ||
|
|
c1f9dec92a | ||
|
|
04df714259 | ||
|
|
09cf130898 | ||
|
|
5075e444f4 | ||
|
|
3e19beb941 | ||
|
|
bb99b1f550 | ||
|
|
ce6db0e547 | ||
|
|
152c0aa58e | ||
|
|
119451dcd1 | ||
|
|
c6b28fb479 | ||
|
|
d967653705 | ||
|
|
69ce057ea6 | ||
|
|
3dce9050cf | ||
|
|
0ad98e38d0 | ||
|
|
a5ef110749 | ||
|
|
a6c813761a | ||
|
|
54a9bea88c | ||
|
|
5c6226707d | ||
|
|
8876ce7f77 | ||
|
|
b179537f2a | ||
|
|
72d1902bbe | ||
|
|
984376745b | ||
|
|
67dbe4c899 | ||
|
|
dafe90a6be | ||
|
|
3d6f9fba19 | ||
|
|
484a0ebdfc | ||
|
|
5785b93711 | ||
|
|
bf7598f582 | ||
|
|
2bdafaf3c1 | ||
|
|
62564797f5 | ||
|
|
2511f3f8a0 | ||
|
|
bb89c84614 | ||
|
|
d5c0ce4cad | ||
|
|
e92fb00f32 | ||
|
|
839a317c96 | ||
|
|
5298d79fb5 | ||
|
|
8521ae13e3 | ||
|
|
d2f3ef98ac | ||
|
|
54685d294d | ||
|
|
cc187debf3 | ||
|
|
2b5baebeba | ||
|
|
be59910b93 | ||
|
|
990fe9fc23 | ||
|
|
312ae74746 | ||
|
|
d92675a486 | ||
|
|
360ba89c50 | ||
|
|
7f3d897e7a | ||
|
|
bebe325e6c | ||
|
|
5011417632 | ||
|
|
e6d73b8582 | ||
|
|
bab94da79c | ||
|
|
53bca4690b | ||
|
|
ef3589063a | ||
|
|
e8eba2b4e3 | ||
|
|
e5d2c67844 | ||
|
|
3523f5432a | ||
|
|
9b92720d88 | ||
|
|
23cd86554e | ||
|
|
848431be1d | ||
|
|
cf8ef11f35 | ||
|
|
3b9662339b | ||
|
|
f81f421086 | ||
|
|
cd9765805e | ||
|
|
495cb100d1 | ||
|
|
865d07cd38 | ||
|
|
ca9bc1f4fe | ||
|
|
a74b25faaa | ||
|
|
fbe255f9a4 | ||
|
|
7daa8a78c5 | ||
|
|
89834d9a29 | ||
|
|
e54794f5b6 | ||
|
|
7bcf126b18 | ||
|
|
1911c037cb | ||
|
|
33bd07d062 | ||
|
|
16d78be315 | ||
|
|
7f3f108561 | ||
|
|
19a17068f1 | ||
|
|
96a9a29645 | ||
|
|
62ace05c45 | ||
|
|
1e2bed9656 | ||
|
|
a3f5bf79a0 | ||
|
|
e26dbd82ef | ||
|
|
051a99c400 | ||
|
|
f900d50824 | ||
|
|
42c6823827 | ||
|
|
e40a510fbf | ||
|
|
d08296f9f2 | ||
|
|
886be75ad1 | ||
|
|
16d9701892 | ||
|
|
e10830e976 | ||
|
|
3777fa26aa | ||
|
|
0d63d93ca8 | ||
|
|
0ca459ea33 | ||
|
|
15c1ae45e5 | ||
|
|
5593ff6773 | ||
|
|
b2aab04d2c | ||
|
|
da90337d89 | ||
|
|
950807d93a | ||
|
|
df7f9871c1 | ||
|
|
897c51d274 | ||
|
|
cb298ff623 | ||
|
|
42960aa047 | ||
|
|
c3f596180f | ||
|
|
637b11b9ed | ||
|
|
feacd13932 | ||
|
|
c0affa7b4f | ||
|
|
5e2f7b8084 | ||
|
|
4ecb4bdac9 | ||
|
|
8a86d7ea96 | ||
|
|
70baa61e95 | ||
|
|
4c4a123bd0 | ||
|
|
489949879e | ||
|
|
1758f4e1c7 | ||
|
|
26a37f3d4d | ||
|
|
0d25724419 | ||
|
|
1fa98495d0 | ||
|
|
bdae8f2e68 | ||
|
|
74b1d46ad9 | ||
|
|
9180061b49 | ||
|
|
704c3e6239 | ||
|
|
43ecfe0b10 | ||
|
|
c2a83349f0 | ||
|
|
db1f33fb36 | ||
|
|
14a4e7d5a4 | ||
|
|
50d9d97408 | ||
|
|
8cefc690c9 | ||
|
|
0bf5ec0db7 | ||
|
|
a937497cf5 | ||
|
|
a013404292 | ||
|
|
14fa9d4d92 | ||
|
|
c4ffbecb68 | ||
|
|
0a65450d04 | ||
|
|
00f99f74b1 | ||
|
|
4a6725d9d1 | ||
|
|
165e067033 | ||
|
|
40c1c59cf4 | ||
|
|
08281fe6b7 | ||
|
|
c21d82bab3 | ||
|
|
ec716a35b2 | ||
|
|
d766f26de9 | ||
|
|
085435e13a | ||
|
|
b8d7d3996b | ||
|
|
908be65e64 | ||
|
|
b7f203a566 | ||
|
|
7ff44d9215 | ||
|
|
38b98e5a98 | ||
|
|
01e93f48ed | ||
|
|
018d75a148 | ||
|
|
fa7dc889f1 | ||
|
|
c82ccd3027 | ||
|
|
da7785147d | ||
|
|
c480c4c962 | ||
|
|
6eed16d8a2 | ||
|
|
303f1c851f | ||
|
|
a6d7b74915 | ||
|
|
4b256b9271 | ||
|
|
4e5ac901dd | ||
|
|
f9f5559971 | ||
|
|
4e6e00152c | ||
|
|
0aba3d361a | ||
|
|
2c54f1c225 | ||
|
|
c4842e16cb | ||
|
|
6e63d6868c | ||
|
|
f49147d14f | ||
|
|
cab782c17e | ||
|
|
6023cdd227 | ||
|
|
7931393495 | ||
|
|
c507fa15ce | ||
|
|
37be52ac34 | ||
|
|
70af98e361 | ||
|
|
5e2ee64660 | ||
|
|
1841672c85 | ||
|
|
6ef983ce5c | ||
|
|
bdbdceeafa | ||
|
|
16bd63f32f | ||
|
|
443da003bc | ||
|
|
729b672823 | ||
|
|
d81602b75a | ||
|
|
5de936caa1 | ||
|
|
5bb39b1e0c | ||
|
|
df2235e7fa | ||
|
|
0bc9b9e397 | ||
|
|
7d05406a07 | ||
|
|
82977477e3 | ||
|
|
9c14c2b561 | ||
|
|
6aab397ada | ||
|
|
52384f2ee5 | ||
|
|
e908b86832 | ||
|
|
254e8267e2 | ||
|
|
21276ff846 | ||
|
|
fef7e58ac6 | ||
|
|
cefac79c10 | ||
|
|
9b13817e06 | ||
|
|
251e6c1210 | ||
|
|
143f1a2532 | ||
|
|
2903e65aff | ||
|
|
a8cbce0ced | ||
|
|
e9b2d047f6 | ||
|
|
ad7cd95a78 | ||
|
|
f102c05856 | ||
|
|
8e3f75b39a | ||
|
|
b0b5566f36 | ||
|
|
781c2bd21a | ||
|
|
7041cd872b | ||
|
|
d42455cdc9 | ||
|
|
65c8dee900 | ||
|
|
a75231b507 | ||
|
|
9e68b1bd2d | ||
|
|
49254d43a6 | ||
|
|
7d32f0d745 | ||
|
|
ef9d51b081 | ||
|
|
85531a06a2 | ||
|
|
51d7df1915 | ||
|
|
5c1d301fd9 | ||
|
|
cf78eaebad | ||
|
|
bd4b25f4d0 | ||
|
|
1b4d73fa52 | ||
|
|
a15ed52267 | ||
|
|
21e878ebb6 | ||
|
|
03751a6420 | ||
|
|
1bcd0490c2 | ||
|
|
bc7944e6d2 | ||
|
|
a4fe9d2d36 | ||
|
|
6185650f9c | ||
|
|
d8e65ed7e1 | ||
|
|
2565804030 | ||
|
|
0620d27f4d | ||
|
|
0a7ee0ab8b | ||
|
|
7d9fb88617 | ||
|
|
78a691d005 | ||
|
|
3849f7f69f | ||
|
|
cee1ae1b72 | ||
|
|
32b30e15f2 | ||
|
|
4081bd1560 | ||
|
|
1bfb5bed1d | ||
|
|
7780a7b47c | ||
|
|
1be94440d3 | ||
|
|
07defd5fe6 | ||
|
|
9c237a7ab5 | ||
|
|
55acd6856c | ||
|
|
f59be4eb0e | ||
|
|
a297ff2b16 | ||
|
|
3f11d84534 | ||
|
|
371da42ae4 | ||
|
|
0b300d323a | ||
|
|
ec56121b0d | ||
|
|
cb5c37a57c | ||
|
|
38eaa5280d | ||
|
|
1e5dbdcbb1 | ||
|
|
1674a85238 | ||
|
|
87951d3891 | ||
|
|
f14c866e37 | ||
|
|
8b8c4f34a3 | ||
|
|
3188973857 | ||
|
|
60a1d147a7 | ||
|
|
709c309b0e | ||
|
|
8f65ab98d2 | ||
|
|
ed0dd68731 | ||
|
|
f33c596533 | ||
|
|
811ac73a42 | ||
|
|
a79410e7b8 | ||
|
|
f7b133fc26 | ||
|
|
81946db9cf | ||
|
|
a321f78991 | ||
|
|
93b0722c50 | ||
|
|
454f59b7ad | ||
|
|
1a01a5b964 | ||
|
|
223341205e | ||
|
|
e22700c3dd | ||
|
|
7417951117 | ||
|
|
eb1d911ab7 | ||
|
|
0a8e4f3af9 | ||
|
|
d19fba3655 | ||
|
|
cd241d6bda | ||
|
|
30bfed5aa5 | ||
|
|
97acd385a3 | ||
|
|
0fa73e4a63 | ||
|
|
2581eb3e1d | ||
|
|
69292de6cc | ||
|
|
ff5426f6b8 | ||
|
|
a678145010 | ||
|
|
d436ad332c | ||
|
|
2601ee28bd | ||
|
|
536bc63a4e | ||
|
|
cf2d15c6a9 | ||
|
|
c6e66821a9 | ||
|
|
8dff6e0322 | ||
|
|
30957a941a | ||
|
|
69fb5dbdab | ||
|
|
1938cffaea | ||
|
|
efcdacad7d | ||
|
|
004a83b43a | ||
|
|
d8709df739 | ||
|
|
ce0c18dec5 | ||
|
|
c1f80effbe | ||
|
|
adfe29ec0b | ||
|
|
254fb430d1 | ||
|
|
cc99256e90 | ||
|
|
5c705f70c9 | ||
|
|
f559119de0 | ||
|
|
8b9f164fff | ||
|
|
2d5bba151b | ||
|
|
50c60e5fad | ||
|
|
4f5cc8e4e7 | ||
|
|
dae6dc1e77 | ||
|
|
a646bdc670 | ||
|
|
9f41ad491d | ||
|
|
0faa3223cd | ||
|
|
37e87611bc | ||
|
|
a4d24781bf | ||
|
|
999bcf9d01 | ||
|
|
9c294ea864 | ||
|
|
4797ed000e | ||
|
|
726a0b1e64 | ||
|
|
f0a1b8e4cd | ||
|
|
8fbe418777 | ||
|
|
0b0b24cb82 | ||
|
|
4fc52b1037 | ||
|
|
f3182bb1d0 | ||
|
|
027bc01a1b | ||
|
|
e42510ba63 | ||
|
|
440b8845b5 | ||
|
|
842cdece42 | ||
|
|
959f4b9074 | ||
|
|
acbfdc3442 | ||
|
|
354a99c968 | ||
|
|
9b34f3ea3a | ||
|
|
c1bf2b587e | ||
|
|
3132b89f12 | ||
|
|
5c88bb722f | ||
|
|
0ecf68aedc | ||
|
|
ff48ab8527 | ||
|
|
5c30cb709a | ||
|
|
3d6df84658 | ||
|
|
4f67623674 | ||
|
|
e1a237eaab | ||
|
|
683f4058c1 | ||
|
|
7c712f95bb | ||
|
|
8462c26485 | ||
|
|
d7275eecf3 | ||
|
|
650daf5628 | ||
|
|
1fa4f7e03e | ||
|
|
2f558300cc | ||
|
|
bcaec2915a | ||
|
|
924eb34d94 | ||
|
|
7044af3298 | ||
|
|
5f3658baf5 | ||
|
|
fd9b08873c | ||
|
|
11d592290c | ||
|
|
87086ac69d | ||
|
|
7814e4cc86 | ||
|
|
6284f579bf | ||
|
|
7cf76c9a09 | ||
|
|
37af0d2a13 | ||
|
|
252f80094c | ||
|
|
9a8acdc720 | ||
|
|
d69decd5c7 | ||
|
|
38f53399a2 | ||
|
|
13d501c773 | ||
|
|
ce0545eca1 | ||
|
|
95ccb6e2ec | ||
|
|
ba6477feac | ||
|
|
be3adfc331 | ||
|
|
9e40834f74 | ||
|
|
f1a15ea206 | ||
|
|
1ffb7bec20 | ||
|
|
2de3d994f3 | ||
|
|
c754e006f4 | ||
|
|
a97c845271 | ||
|
|
c0685f67c0 | ||
|
|
18a2b2c0b4 | ||
|
|
00bc979137 | ||
|
|
f1dd89fe86 | ||
|
|
6f62a6ef21 | ||
|
|
77091d7e8e | ||
|
|
eed24893fa | ||
|
|
3f9e649f17 | ||
|
|
8c69b735e3 | ||
|
|
08436c556a | ||
|
|
667fba68f3 | ||
|
|
3a993a660d | ||
|
|
9b596177ae | ||
|
|
bacdf0cbf9 | ||
|
|
8cb8df55e9 | ||
|
|
65d6a0e477 | ||
|
|
5bd0a47fcd | ||
|
|
00845c49d2 | ||
|
|
e45a46b6e4 | ||
|
|
dab00faa83 | ||
|
|
c91a44572e | ||
|
|
92aecd557b | ||
|
|
6e3fc657b4 | ||
|
|
21d3b87943 | ||
|
|
5f3d02f6eb | ||
|
|
0aed3fc346 | ||
|
|
79eb339c66 | ||
|
|
4a11df5b64 | ||
|
|
d897be6a98 | ||
|
|
9c04b4abf9 | ||
|
|
94440ae994 | ||
|
|
bc006b3c9d | ||
|
|
c7320a5564 | ||
|
|
2172a3d8cb | ||
|
|
b2aa05a8d6 | ||
|
|
850238b4ef | ||
|
|
9952d18e4d | ||
|
|
547b1355d3 | ||
|
|
fe089b13cb | ||
|
|
3fe0938b76 | ||
|
|
fe10dd9fb2 | ||
|
|
9677b1d1c0 | ||
|
|
2731bf7ac3 | ||
|
|
09e29fb58b | ||
|
|
15b13b537f | ||
|
|
78a9ddcf9a | ||
|
|
ea69d35651 | ||
|
|
4a27000548 | ||
|
|
505530f36a | ||
|
|
8a4f05fefb | ||
|
|
8532953c04 | ||
|
|
a2374b2c7f | ||
|
|
33b60c01b5 | ||
|
|
516f960ad8 | ||
|
|
3366b9c534 | ||
|
|
32fd6910d0 | ||
|
|
bc832f822f | ||
|
|
2aba1f549c | ||
|
|
08546be40f | ||
|
|
b03a0e14db | ||
|
|
3b391d9c45 | ||
|
|
33b40d0a25 | ||
|
|
5f263b607e | ||
|
|
77b692e65d | ||
|
|
ba22b6a456 | ||
|
|
6dff49b8a9 | ||
|
|
37c4fba0ac | ||
|
|
38c5fa7ee4 | ||
|
|
12ec58301f | ||
|
|
fa5c2bc082 | ||
|
|
4c4dd6299d | ||
|
|
c969754a91 | ||
|
|
482d17b58b | ||
|
|
0456e05977 | ||
|
|
aff1dfdf3d | ||
|
|
5797f5542b | ||
|
|
1b5425527c | ||
|
|
36f4fd3e1e | ||
|
|
2ef3f84945 | ||
|
|
129ffd7b88 | ||
|
|
85354bb18e | ||
|
|
6ccefef07a | ||
|
|
ea752bdd99 | ||
|
|
bb3d536087 | ||
|
|
05f5dabc10 | ||
|
|
c3c29aa196 | ||
|
|
55370331da | ||
|
|
16b10666e7 | ||
|
|
4ea391a6ae | ||
|
|
b1fe697b3c | ||
|
|
6c1ec5a1bd | ||
|
|
f3b3b9dd8f | ||
|
|
e31e5dee38 | ||
|
|
395fa8d1fd | ||
|
|
b5e157d895 | ||
|
|
09477bd884 | ||
|
|
49af402019 | ||
|
|
2ee9f1bd1a | ||
|
|
1241156c82 | ||
|
|
3060bcc8e9 | ||
|
|
e845fd41c2 | ||
|
|
20ff89d6e1 | ||
|
|
1cfc2c4790 | ||
|
|
2087d5d046 | ||
|
|
1464a0578a | ||
|
|
277c561766 | ||
|
|
89690aaaeb | ||
|
|
be8b32dbc2 | ||
|
|
d196fe42a9 | ||
|
|
feef8461d1 | ||
|
|
1a88640677 | ||
|
|
3cf3e08a97 | ||
|
|
546bc9e28b | ||
|
|
f192a93875 | ||
|
|
13f7adf84b | ||
|
|
40252d13d1 | ||
|
|
ea555d5633 | ||
|
|
c4e7ad0e0f | ||
|
|
a4ab491371 | ||
|
|
508196e08a | ||
|
|
f741630847 | ||
|
|
6ec3aa2f72 | ||
|
|
abb183438c | ||
|
|
f88dea577d | ||
|
|
cea4662b13 | ||
|
|
2c33b55738 | ||
|
|
cbf82dddf1 | ||
|
|
3905c693c5 | ||
|
|
fc4f8f33be | ||
|
|
1c867f5391 | ||
|
|
f131bf8d3e | ||
|
|
ff65916108 | ||
|
|
75d4986a8c | ||
|
|
7c0cdd330f | ||
|
|
e3b4043800 | ||
|
|
ec766b2530 | ||
|
|
fc0e17b3e5 | ||
|
|
f82cf3c7df | ||
|
|
0d7eabeada | ||
|
|
e72234f6bd | ||
|
|
f4f1cda928 | ||
|
|
6350bf925e | ||
|
|
cfda61e9cd | ||
|
|
72d2143ea8 | ||
|
|
caf07f770a | ||
|
|
99800de63d | ||
|
|
f03a5d1a17 | ||
|
|
94f09618e5 | ||
|
|
a7ecf34b70 | ||
|
|
35cc3e8b14 | ||
|
|
8d62baa48c | ||
|
|
77078d6c8e | ||
|
|
cd6bcdaf87 | ||
|
|
95341a8f6f | ||
|
|
26651b0d6a | ||
|
|
b7f34ee348 | ||
|
|
71ad43a8b5 | ||
|
|
8057489b26 | ||
|
|
d91efb06cf | ||
|
|
1202508067 | ||
|
|
bd3d329c88 | ||
|
|
abfe4b2957 | ||
|
|
c695a8d003 | ||
|
|
028490afd4 | ||
|
|
c7f6b420ae | ||
|
|
9570aa82eb | ||
|
|
1e788db430 | ||
|
|
1d62c4a127 | ||
|
|
d72fb9a448 | ||
|
|
1b947d6dde | ||
|
|
df48f7ef37 | ||
|
|
a0e8a53c6d | ||
|
|
7bdc5c8fa3 | ||
|
|
ea7a9c0483 | ||
|
|
0269367f18 | ||
|
|
784189b1f4 | ||
|
|
6eb861b67f | ||
|
|
947fea67cb | ||
|
|
36cb570641 | ||
|
|
33fdcfa957 | ||
|
|
eb50c44eaf | ||
|
|
07cad26d65 | ||
|
|
244484bf3c | ||
|
|
07b4f88de9 | ||
|
|
3d605853c8 | ||
|
|
ec1e799e17 | ||
|
|
1d009013b3 | ||
|
|
516f884176 | ||
|
|
9850f66abe | ||
|
|
fe8d2968e3 | ||
|
|
28ddc6cfbe | ||
|
|
4b4cec3989 | ||
|
|
200e11c5bf | ||
|
|
f8272813a9 | ||
|
|
1d7ad11747 | ||
|
|
ce0d911156 | ||
|
|
b4a5d767a9 | ||
|
|
f79abda87f | ||
|
|
75dc3ddeab | ||
|
|
bb018d0b5b | ||
|
|
43e02c409d | ||
|
|
240f192523 | ||
|
|
70e6501913 | ||
|
|
0495fe0035 | ||
|
|
9a685d60ae | ||
|
|
77ac14b960 | ||
|
|
cbbfaa4be8 | ||
|
|
c2eff937ac | ||
|
|
99b77aa829 | ||
|
|
b088aafcae | ||
|
|
aff3d76920 | ||
|
|
02bfc581f8 | ||
|
|
245d53d32a | ||
|
|
f6c4d74f96 | ||
|
|
ccfdaf68be | ||
|
|
9a793f861c | ||
|
|
53969e1960 | ||
|
|
667c6546bd | ||
|
|
7e1c616452 | ||
|
|
ba438a3ac1 | ||
|
|
61ab08a197 | ||
|
|
1e77ac66e3 | ||
|
|
a502cfec00 | ||
|
|
19cd3120ec | ||
|
|
5c9afd6f80 | ||
|
|
52423607bd | ||
|
|
f116f32ace | ||
|
|
557b686eac | ||
|
|
a61738b316 | ||
|
|
3681437c35 | ||
|
|
0fde1896cd | ||
|
|
2a4fde0a6f | ||
|
|
94700e55fa | ||
|
|
45768d1640 | ||
|
|
12285a1a76 | ||
|
|
96bad44f87 | ||
|
|
b6faef2ad7 | ||
|
|
f1023ebf4b | ||
|
|
3ff8a619f5 | ||
|
|
9fc5b74b24 | ||
|
|
bd348f0af6 | ||
|
|
eb32b2ca20 | ||
|
|
187a546bff | ||
|
|
d6cc369205 | ||
|
|
76c80e3fdf | ||
|
|
c96d882a02 | ||
|
|
b800834351 | ||
|
|
ed5a0780a4 | ||
|
|
1032393dfb | ||
|
|
aefcc0f5e5 | ||
|
|
82e751c43f | ||
|
|
0eb4722932 | ||
|
|
c6b1441c52 | ||
|
|
8b98acca05 | ||
|
|
0e505b1913 | ||
|
|
ad9edd1d96 | ||
|
|
e82db24a0e | ||
|
|
0834b49c6a | ||
|
|
36446ffedb | ||
|
|
8503dd0047 | ||
|
|
13d211edc1 | ||
|
|
1152f495a0 | ||
|
|
e2acf536d4 | ||
|
|
0160f6601f | ||
|
|
f4caf3f83d | ||
|
|
0546715c18 | ||
|
|
57e3f923d2 | ||
|
|
d3a8c9c55e | ||
|
|
fef6c2cdcc | ||
|
|
752b7b32ed | ||
|
|
3f589f9097 | ||
|
|
176f1206d1 | ||
|
|
61134debdc | ||
|
|
ad459a106c | ||
|
|
592c162516 | ||
|
|
330432031b | ||
|
|
bf54c1cf6c | ||
|
|
3e4bc4488c | ||
|
|
48e2b48888 | ||
|
|
d8db6d9267 | ||
|
|
23c785992f | ||
|
|
b3b16490f7 | ||
|
|
592ee217a3 | ||
|
|
304bb22c1d | ||
|
|
c88d50aa8f | ||
|
|
0c87eed294 | ||
|
|
e316407b5d | ||
|
|
e6cbf47773 | ||
|
|
607bd27c83 | ||
|
|
d62162bbec | ||
|
|
617afee069 | ||
|
|
522bd3c8a3 | ||
|
|
d6e3c2c79b | ||
|
|
f7869f8f8b | ||
|
|
604cff1a06 | ||
|
|
b50f18171d | ||
|
|
f29b41fde9 | ||
|
|
28b0490dfd | ||
|
|
b7e7fd2d0e | ||
|
|
244ab974e7 | ||
|
|
694968fa81 | ||
|
|
042eedfa2b | ||
|
|
c5930d513a | ||
|
|
6a29e815fc | ||
|
|
e44150a6de | ||
|
|
f731e42baf | ||
|
|
5dbf305444 | ||
|
|
86accac5d5 | ||
|
|
28f09fcdd5 | ||
|
|
5f6122fe10 | ||
|
|
7d9d75e4e8 | ||
|
|
09503126df | ||
|
|
c1f4118bb6 | ||
|
|
a9e97dcd65 | ||
|
|
71477f3317 | ||
|
|
41006d9c28 | ||
|
|
9f797a24a4 | ||
|
|
857e6fd8b6 | ||
|
|
4ef76f3ac4 | ||
|
|
4986b084f8 | ||
|
|
7e15410f02 | ||
|
|
c2c3092cce | ||
|
|
febe0ec8fd | ||
|
|
c936a52a9e | ||
|
|
e73635191f | ||
|
|
219c2a322b | ||
|
|
2e4be8bfd9 | ||
|
|
872cf43516 | ||
|
|
debff7ae09 | ||
|
|
34b85df7f5 | ||
|
|
711f61a31d | ||
|
|
a995fdae39 | ||
|
|
4a9cbdbc15 | ||
|
|
ab0ef31dc7 | ||
|
|
558f3d376a | ||
|
|
c379acd4fd | ||
|
|
db2e4608ab | ||
|
|
4b9d0cde97 | ||
|
|
7873cde526 | ||
|
|
1afafb3497 | ||
|
|
d6cd55532b | ||
|
|
9bbb9f5556 | ||
|
|
8df7bad839 | ||
|
|
235b53263a | ||
|
|
ff1bc0a279 | ||
|
|
adb6bac4d5 | ||
|
|
0a240ad36e | ||
|
|
284e36ad04 | ||
|
|
b69ff33d9e | ||
|
|
5e6b31f0da | ||
|
|
a6c8f7c875 | ||
|
|
7a6df013cc | ||
|
|
81717e8515 | ||
|
|
57ad76fa4a | ||
|
|
3ef5cd74a6 | ||
|
|
5c40ce3777 | ||
|
|
357c74a50f | ||
|
|
a2eb5db4a0 | ||
|
|
754826a830 | ||
|
|
08ea5fe635 | ||
|
|
60f09b1e11 | ||
|
|
66bdae986f | ||
|
|
ba1b163590 | ||
|
|
41921ac01b | ||
|
|
757ed27258 | ||
|
|
4ee4450d66 | ||
|
|
9c36c150e7 | ||
|
|
cc1349c06a | ||
|
|
5b788aba90 | ||
|
|
0e61705661 | ||
|
|
dd068ca979 | ||
|
|
17a70cf6e9 | ||
|
|
6c16a4ec1b | ||
|
|
7ea07c7305 | ||
|
|
1f69693347 | ||
|
|
c4fb15a06c | ||
|
|
36501068d8 | ||
|
|
2aff6eab6d | ||
|
|
095292304f | ||
|
|
77a23e2e05 | ||
|
|
ecc4b88bd1 | ||
|
|
46345187cc | ||
|
|
037c6db85d | ||
|
|
7a1af504d7 | ||
|
|
14ca678674 | ||
|
|
6f67163c63 | ||
|
|
bdd2ed5acf | ||
|
|
f72d5a44d5 | ||
|
|
68399fc4de | ||
|
|
91d95a1d8e | ||
|
|
9700d15611 | ||
|
|
a21a41bad7 | ||
|
|
b3bff53178 | ||
|
|
8c98281b8d | ||
|
|
6abcb5d22d | ||
|
|
389dac2c15 | ||
|
|
472a5ec4e2 | ||
|
|
e987079037 | ||
|
|
9bf4b2bda3 | ||
|
|
23aa70cea8 | ||
|
|
043f05a078 | ||
|
|
96f07cebda | ||
|
|
a0b3946fe2 | ||
|
|
2f7008d4eb | ||
|
|
e206b2c9ac | ||
|
|
2df8c3139a | ||
|
|
dda40fb55d | ||
|
|
3ff6f50eac | ||
|
|
82191b08f6 | ||
|
|
2c62ea2515 | ||
|
|
cd8ab9a0d8 | ||
|
|
2c7866d664 | ||
|
|
321f02d263 | ||
|
|
1cbb8e5a33 | ||
|
|
052d08a6a5 | ||
|
|
5ad1149f38 | ||
|
|
563606b8f2 | ||
|
|
2574ea3dc8 | ||
|
|
833db2d922 | ||
|
|
9e8ab0a4f4 | ||
|
|
3601a240aa | ||
|
|
e7598b666b | ||
|
|
5aaa3189d5 | ||
|
|
0a4bca4134 | ||
|
|
b6063631c3 | ||
|
|
53cc2cde1f | ||
|
|
071206304d | ||
|
|
4abeaedcf3 | ||
|
|
85ba83eb51 | ||
|
|
228f1f584e | ||
|
|
e85b5a0ff7 | ||
|
|
586b66b197 | ||
|
|
35ca3e7b65 | ||
|
|
a17e901f4d | ||
|
|
5494c1d71e | ||
|
|
d8cb7225d2 | ||
|
|
ad2823ee27 | ||
|
|
08bfc48abf | ||
|
|
0a078026ea | ||
|
|
07bb9bdae8 | ||
|
|
8f5a688d42 | ||
|
|
a8990fa2ec | ||
|
|
cb2a2ad791 | ||
|
|
08a14b32ae | ||
|
|
82c2a52987 | ||
|
|
7b36d06a69 | ||
|
|
669400e22f | ||
|
|
b5b2d5d64b | ||
|
|
3b2def6c7a | ||
|
|
a5e2941aad | ||
|
|
8aeb529262 | ||
|
|
8810685df9 | ||
|
|
d5dca9a04f | ||
|
|
9ea219c514 | ||
|
|
d14d7b8fdc | ||
|
|
7cfa8a87a1 | ||
|
|
7948ecf234 | ||
|
|
020377a550 | ||
|
|
13a8dfba0d | ||
|
|
c435b0b441 | ||
|
|
fb2806b186 | ||
|
|
fcc525b0b7 | ||
|
|
df9f72d9e5 | ||
|
|
c60e0d5e02 | ||
|
|
02c1d29133 | ||
|
|
f258deffcb | ||
|
|
413482f578 | ||
|
|
4aac88928f | ||
|
|
6e1cb54a05 | ||
|
|
6d6e7288fe | ||
|
|
d689e0dba1 | ||
|
|
dfa70adc33 | ||
|
|
933bf2dd35 | ||
|
|
d9fe2b2d9d | ||
|
|
45b55e23d3 | ||
|
|
dcc235b47d | ||
|
|
73cbdef5f7 | ||
|
|
aafb0f6b0d | ||
|
|
b932b4ea25 | ||
|
|
644aac5f73 | ||
|
|
08462620bf | ||
|
|
ef466b3a13 | ||
|
|
861f8a9b21 | ||
|
|
2725223f08 | ||
|
|
ab5e888927 | ||
|
|
f3d9dca975 | ||
|
|
6d9dc67139 | ||
|
|
ed3125b0a1 | ||
|
|
67af392712 | ||
|
|
011e1f4010 | ||
|
|
26305788fe | ||
|
|
d10707c810 | ||
|
|
fa30ac38cc | ||
|
|
8b1c856d81 | ||
|
|
6958459b50 | ||
|
|
88d3405332 | ||
|
|
d43d480d86 | ||
|
|
a2da6de40e | ||
|
|
450f500d0c | ||
|
|
82b0361f02 | ||
|
|
1b1b47aec6 | ||
|
|
fed62e21ad | ||
|
|
f8a1e76d64 | ||
|
|
f7906203f6 | ||
|
|
ae53c71d90 | ||
|
|
616da9eb1d | ||
|
|
c46367d0d7 | ||
|
|
85b8acdeb4 | ||
|
|
3c099219e0 | ||
|
|
680530cc7f | ||
|
|
43e6e82c4d | ||
|
|
dc8930ea9e | ||
|
|
c945af8799 | ||
|
|
be11a02c4f | ||
|
|
a2204cc9cc | ||
|
|
31c2502ca8 | ||
|
|
8030a825c8 | ||
|
|
c92a8aa578 | ||
|
|
05ac15ae82 | ||
|
|
5f27ed75ad | ||
|
|
37dbee6490 | ||
|
|
47815edcfa | ||
|
|
589ecc5b58 | ||
|
|
e71fb118f4 | ||
|
|
aea80a0118 | ||
|
|
f077e97914 | ||
|
|
8cbbfd16fb | ||
|
|
977765bde2 | ||
|
|
16f41237f0 | ||
|
|
c25d7ba12e | ||
|
|
6406b70aeb | ||
|
|
23e2dfe940 | ||
|
|
bd8d0cfab1 | ||
|
|
db18d854cd | ||
|
|
318711e139 | ||
|
|
7b411007e6 | ||
|
|
6b49628e3b | ||
|
|
217bc53c98 | ||
|
|
645cb4bf06 | ||
|
|
09f570b935 | ||
|
|
9589a1925e | ||
|
|
49e5a613f1 | ||
|
|
b8700dd7d0 | ||
|
|
c6f730282c | ||
|
|
09b29f9c4a | ||
|
|
4d298506dd | ||
|
|
8460e48d06 | ||
|
|
18e144fe08 | ||
|
|
bfe1f73855 | ||
|
|
5adb75bcba | ||
|
|
a5c98dda48 | ||
|
|
d26bec8a43 | ||
|
|
fcf55f2255 | ||
|
|
7ce98804ff | ||
|
|
cddf91c8b9 | ||
|
|
9896dab8f6 | ||
|
|
1e5280b7d0 | ||
|
|
75552d2148 | ||
|
|
294e9a0c9b | ||
|
|
46df23f581 | ||
|
|
52281e4c54 | ||
|
|
7e8726b8fb | ||
|
|
c0e08dc45b | ||
|
|
0461ef01b7 | ||
|
|
e2accd7f1d | ||
|
|
e5ab9cd24b | ||
|
|
60590211c1 | ||
|
|
c4af4c24ca | ||
|
|
05e0a2462c | ||
|
|
7dd13415db | ||
|
|
27cf170558 | ||
|
|
1aeb5e28a9 | ||
|
|
23ec51c94c | ||
|
|
d5377eba55 | ||
|
|
d11b8b6b65 | ||
|
|
8ff8ab3bce | ||
|
|
6c957e26f0 | ||
|
|
696f532453 | ||
|
|
3e6d306e94 | ||
|
|
274b8c6025 | ||
|
|
06c0d0ed08 | ||
|
|
bf98fa0864 | ||
|
|
678e649b78 | ||
|
|
0b7dfbb194 | ||
|
|
88868b2839 | ||
|
|
5addeaa02c | ||
|
|
6d8ec3462d | ||
|
|
95b6912045 | ||
|
|
966686c845 | ||
|
|
093d8c415a | ||
|
|
0ba609dc6f | ||
|
|
2117f84323 | ||
|
|
a7fe62f0cb | ||
|
|
2e7a94c36b | ||
|
|
a2aaa9cb3c | ||
|
|
d72faf2fad | ||
|
|
a0501ac57e | ||
|
|
0a3b51c420 | ||
|
|
31c7c29d43 | ||
|
|
902673e356 | ||
|
|
53a5fdf312 | ||
|
|
1dfd650348 | ||
|
|
9a779c2ddb | ||
|
|
a41117c63b | ||
|
|
32015e1109 | ||
|
|
3a42aed9a1 | ||
|
|
5a0be97ab2 | ||
|
|
415c6b672e | ||
|
|
4e9bdeba57 | ||
|
|
be31adb036 | ||
|
|
11607006d9 | ||
|
|
46beeb9a30 | ||
|
|
f22e7cda2c | ||
|
|
a8d8bf92e0 | ||
|
|
e482f8cd85 | ||
|
|
4f2e898c29 | ||
|
|
d4c14e1438 | ||
|
|
9f21de6a01 | ||
|
|
da602419b2 | ||
|
|
8ae7096958 | ||
|
|
562532dd2d | ||
|
|
5c2214f4c7 | ||
|
|
2414178ed6 | ||
|
|
40d1bbd257 | ||
|
|
8e6bd0e324 | ||
|
|
8570bb84cc | ||
|
|
ca7211104e | ||
|
|
d5eee5d601 | ||
|
|
d858f3bd4e | ||
|
|
33f469ba19 | ||
|
|
dd1a832419 | ||
|
|
d0857702e8 | ||
|
|
5917562b60 | ||
|
|
6495dbb326 | ||
|
|
2ad3fc36e6 | ||
|
|
cead75fae3 | ||
|
|
576b71dd3d | ||
|
|
99a54bf2af | ||
|
|
63ae5cbf34 | ||
|
|
fdb6849b81 | ||
|
|
66aa32ede2 | ||
|
|
6e005d1382 | ||
|
|
01e8a52825 | ||
|
|
0c9db26260 | ||
|
|
950a32eb47 | ||
|
|
bc2017a594 | ||
|
|
683149c1f9 | ||
|
|
7b908aeec4 | ||
|
|
3b0e431c82 | ||
|
|
db75c86e84 | ||
|
|
2fd96727b1 | ||
|
|
b8ee12b978 | ||
|
|
049b0b5af2 | ||
|
|
d1d54d6088 | ||
|
|
ac5f2f4d86 | ||
|
|
af3cc50511 | ||
|
|
dbf6f28d64 | ||
|
|
7767a9fc0e | ||
|
|
aab2e4da60 | ||
|
|
1315d374cc | ||
|
|
9e2601f830 | ||
|
|
122593265b | ||
|
|
e9143b6593 | ||
|
|
adaf3ec87f | ||
|
|
006e18b6bb | ||
|
|
42c89c8215 | ||
|
|
d82b6ea9e6 | ||
|
|
4f2f5171b7 | ||
|
|
94f4d7f49e | ||
|
|
57b58e2174 | ||
|
|
cdb4647a80 | ||
|
|
a376d8f761 | ||
|
|
4f5694e2ce | ||
|
|
9558236728 | ||
|
|
453adf00b6 | ||
|
|
fc149b4eeb | ||
|
|
6146332387 | ||
|
|
d2737c1fae | ||
|
|
2a13af23bc | ||
|
|
3d1ae61399 | ||
|
|
9d2c1b8429 | ||
|
|
13843f771e | ||
|
|
41d4b07a53 | ||
|
|
05ba7e3a44 | ||
|
|
53849ea9d3 | ||
|
|
268e40341b | ||
|
|
9c3da24561 | ||
|
|
53494c34df | ||
|
|
6493b22b42 | ||
|
|
6e10eed28e | ||
|
|
605defb9e4 | ||
|
|
9255a6cb17 | ||
|
|
d842ed14f4 | ||
|
|
31c8be956f | ||
|
|
28dd536e80 | ||
|
|
8721580303 | ||
|
|
dbf76fd4b9 | ||
|
|
d78ada3166 | ||
|
|
0ced8b5b47 | ||
|
|
7ec8e798b4 | ||
|
|
fb6015d0a6 | ||
|
|
a5ad88913c | ||
|
|
617bf40924 | ||
|
|
22881b3d69 | ||
|
|
ba3166743c | ||
|
|
e3a373f002 | ||
|
|
48c01ae851 | ||
|
|
6ab3b9c743 | ||
|
|
1bb83d5d41 | ||
|
|
13a2beabca | ||
|
|
2c3e995f38 | ||
|
|
8e8b06715f | ||
|
|
08b29d4574 | ||
|
|
77ebef9d43 | ||
|
|
9b9c38373c | ||
|
|
286e20f2bc | ||
|
|
1ea904b9f0 | ||
|
|
dc875d2712 | ||
|
|
8dc4a6144b | ||
|
|
d06a9ea5f7 | ||
|
|
c09a6daf09 | ||
|
|
692a3cc806 | ||
|
|
366dd893fc | ||
|
|
bdb7714d13 | ||
|
|
67dabe143d | ||
|
|
3de7d9fe99 | ||
|
|
11a67b7c9d | ||
|
|
0c280d4d99 | ||
|
|
bc381d5798 | ||
|
|
b1dfbc3c40 | ||
|
|
dacf3a50ac | ||
|
|
1f4b498b73 | ||
|
|
e585228860 | ||
|
|
9b7794262f | ||
|
|
639480e14a | ||
|
|
878995e660 | ||
|
|
a1a3c9660f | ||
|
|
512633ef44 | ||
|
|
2a3c33ff03 | ||
|
|
f63ff73c7f | ||
|
|
36c59ce669 | ||
|
|
cb9cdfecd0 | ||
|
|
1515560f5c | ||
|
|
bfc2ade9b3 | ||
|
|
c4bdbc2bd2 | ||
|
|
041b41a825 | ||
|
|
154b44c249 | ||
|
|
0d8c50df44 | ||
|
|
78a9698650 | ||
|
|
25b0ba30b1 | ||
|
|
f8d46cad3c | ||
|
|
d4b2e05852 | ||
|
|
eb53439c4a | ||
|
|
51d628d28d | ||
|
|
df77837a33 | ||
|
|
d3347ad485 | ||
|
|
fac3f9e678 | ||
|
|
60f6014bb7 | ||
|
|
119596ab8f | ||
|
|
b78395b7fe | ||
|
|
d5c74b9f6c | ||
|
|
0f13f30fca | ||
|
|
415aeefd89 | ||
|
|
19ceb4851f | ||
|
|
261124396e | ||
|
|
23a7f9d7f4 | ||
|
|
d7bf3a68f0 | ||
|
|
f67e906e18 | ||
|
|
971059a733 | ||
|
|
e939f3bca6 | ||
|
|
4dae4a97ed | ||
|
|
92e34615c5 | ||
|
|
ab825aa328 | ||
|
|
233699c42e | ||
|
|
427e6c4059 | ||
|
|
781cd8c54f | ||
|
|
9ef0b179e0 | ||
|
|
121591568b | ||
|
|
b3384232a0 | ||
|
|
360d899a64 | ||
|
|
d54cfbb7a8 | ||
|
|
eaa2ebf20b | ||
|
|
9daf82278f | ||
|
|
a3f9ddbede | ||
|
|
7f8eebc8ee | ||
|
|
dd723267b2 | ||
|
|
a060dfa132 | ||
|
|
f8e8ec013b | ||
|
|
1246d23710 | ||
|
|
d49cbf712f | ||
|
|
ce72d590ed | ||
|
|
11d2609da7 | ||
|
|
dab87b84a3 | ||
|
|
6d7f0f8dd3 | ||
|
|
f4284d943a | ||
|
|
d1e56cfcd1 | ||
|
|
89de934981 | ||
|
|
9fbe70a7dc | ||
|
|
a3599dda97 | ||
|
|
87478c5a60 | ||
|
|
c508b2f2f0 | ||
|
|
37354b55c9 | ||
|
|
0e9aa1d091 | ||
|
|
8eaa141d8f | ||
|
|
664adb4236 | ||
|
|
aea3a93611 | ||
|
|
41e0611895 | ||
|
|
61b439c904 | ||
|
|
87770300d5 | ||
|
|
9a311adfea | ||
|
|
64bc2162ef | ||
|
|
d2c6f4d626 | ||
|
|
5232d3bfb1 | ||
|
|
5e785d4d5b | ||
|
|
6e025a97b4 | ||
|
|
414b2b3bd1 | ||
|
|
b151eb14a2 | ||
|
|
64cebbc730 | ||
|
|
d9ae2bc826 | ||
|
|
21d5a2a08e | ||
|
|
c115deed12 | ||
|
|
072fb59446 | ||
|
|
89dda61315 | ||
|
|
687f3451bd | ||
|
|
13decdbf96 | ||
|
|
f3ef60662f | ||
|
|
e5082494eb | ||
|
|
56b0589865 | ||
|
|
11974f3787 | ||
|
|
145d14656b | ||
|
|
a13b7860c6 | ||
|
|
e54c202b81 | ||
|
|
b0500d3774 | ||
|
|
4f40d058cc | ||
|
|
135fc5b9cd | ||
|
|
020a501354 | ||
|
|
db2fd801f7 | ||
|
|
e8b03cab1b | ||
|
|
8844f95c32 | ||
|
|
7945435587 | ||
|
|
6bd1b7053e | ||
|
|
b4478e586f | ||
|
|
112c2253e2 | ||
|
|
6850f8aea3 | ||
|
|
cd087a265d | ||
|
|
87c864b698 | ||
|
|
ae85c7804e | ||
|
|
f8d1917fce | ||
|
|
6eb3aa94b6 | ||
|
|
edb45aae38 | ||
|
|
b370fe61c0 | ||
|
|
6a9777ba02 | ||
|
|
01579384cc | ||
|
|
e01ba5bda3 | ||
|
|
7b824f1475 | ||
|
|
35ff941172 | ||
|
|
1d71f484d4 | ||
|
|
15e8ed874f | ||
|
|
c7ede92d0b | ||
|
|
551422051b | ||
|
|
c7f0969731 | ||
|
|
3449da3bc7 | ||
|
|
d1679a4ed7 | ||
|
|
01afc563c3 | ||
|
|
e089100c62 | ||
|
|
68b0ee4e8d | ||
|
|
22284a6f65 | ||
|
|
917380e89d | ||
|
|
104c0bc1d5 | ||
|
|
700e5e7198 | ||
|
|
b214a04ffc | ||
|
|
0e5f479fc0 | ||
|
|
518f6de088 | ||
|
|
88964b987e | ||
|
|
204fc98520 | ||
|
|
301b339494 | ||
|
|
6168351877 | ||
|
|
72251d1b97 | ||
|
|
a9a74101a4 | ||
|
|
eb8d8d6f57 | ||
|
|
2fe3f848b9 | ||
|
|
b4e37c6f50 | ||
|
|
9ee44a372d | ||
|
|
dc7c020b33 | ||
|
|
16aeb41547 | ||
|
|
c5de6987c2 | ||
|
|
241e4e8687 | ||
|
|
929b34963d | ||
|
|
a838444a70 | ||
|
|
4262aba17b | ||
|
|
86932be2cb | ||
|
|
32260baa41 | ||
|
|
a164270833 | ||
|
|
352e1ff9ed | ||
|
|
79452edeee | ||
|
|
6152e253d8 | ||
|
|
792d340572 | ||
|
|
788e69098c | ||
|
|
0f890f477e | ||
|
|
a32d2548d9 | ||
|
|
9187e0762f | ||
|
|
b2f2282947 | ||
|
|
478af0f720 | ||
|
|
366f730bf6 | ||
|
|
757f1b5843 | ||
|
|
0b56290f0b | ||
|
|
fc5397fdf5 | ||
|
|
4f0493c850 | ||
|
|
f7dcc404f2 | ||
|
|
5b3b3aada8 | ||
|
|
bf49d2dca8 | ||
|
|
3bc5bd2d22 | ||
|
|
5a6e54264d | ||
|
|
91ea0202e6 | ||
|
|
056a6df546 | ||
|
|
9f77001e27 | ||
|
|
4d0cfef6ee | ||
|
|
c9d72e4571 | ||
|
|
ccca02846d | ||
|
|
f0f9a0605b | ||
|
|
12350e3f9a | ||
|
|
14a9d2f73d | ||
|
|
afbf4d3dcc | ||
|
|
865377a70d | ||
|
|
b2aba9e430 | ||
|
|
52f7e23c72 | ||
|
|
1b1c137771 | ||
|
|
47ce527f45 | ||
|
|
fdedcd1f4d | ||
|
|
97c0496cfa | ||
|
|
8713365265 | ||
|
|
9b334b3f97 | ||
|
|
af7ed8e1ef | ||
|
|
923d9300ed | ||
|
|
f44b7c022f | ||
|
|
07f1b71819 | ||
|
|
b815aa0e2d | ||
|
|
6f0b1f85f9 | ||
|
|
ca70148c05 | ||
|
|
e511979fe6 | ||
|
|
a03c382966 | ||
|
|
48e2c641b8 | ||
|
|
d8680c969b | ||
|
|
b9b668e4bb | ||
|
|
ef1f8d4be6 | ||
|
|
a0af0054ec | ||
|
|
914a59cb8c | ||
|
|
e174c46a29 | ||
|
|
b8a4dceb3c | ||
|
|
084afbb6a0 | ||
|
|
58df3a8c5d | ||
|
|
63fd148724 | ||
|
|
1ffd9cb936 | ||
|
|
107a5c9441 | ||
|
|
ee3b160a2a | ||
|
|
630573a932 | ||
|
|
f5364b47ec | ||
|
|
d8c7da5dca | ||
|
|
cf4ef60e28 | ||
|
|
cd51931b62 | ||
|
|
81010a126e | ||
|
|
8db84e9b21 | ||
|
|
e9021e16c4 | ||
|
|
f72c9c1fb6 | ||
|
|
b8ab78b82c | ||
|
|
9a87b8aaf7 | ||
|
|
84a9209ba7 | ||
|
|
53965334da | ||
|
|
a207cccb05 | ||
|
|
1ba2fe114c | ||
|
|
042757feb2 | ||
|
|
886c2d5019 | ||
|
|
f2bf0cda02 | ||
|
|
6d1e28a842 | ||
|
|
48bc22f89d | ||
|
|
d434ae3387 | ||
|
|
431476fbc4 | ||
|
|
24d162814b | ||
|
|
95e02b856b |
13
.buildkite/.env
Normal file
13
.buildkite/.env
Normal file
@@ -0,0 +1,13 @@
|
||||
CI
|
||||
BUILDKITE
|
||||
BUILDKITE_BUILD_NUMBER
|
||||
BUILDKITE_BRANCH
|
||||
BUILDKITE_BUILD_NUMBER
|
||||
BUILDKITE_JOB_ID
|
||||
BUILDKITE_BUILD_URL
|
||||
BUILDKITE_PROJECT_SLUG
|
||||
BUILDKITE_COMMIT
|
||||
BUILDKITE_PULL_REQUEST
|
||||
BUILDKITE_TAG
|
||||
CODECOV_TOKEN
|
||||
TRIAL_FLAGS
|
||||
21
.buildkite/docker-compose.py27.pg94.yaml
Normal file
21
.buildkite/docker-compose.py27.pg94.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:9.4
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:2.7
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
21
.buildkite/docker-compose.py27.pg95.yaml
Normal file
21
.buildkite/docker-compose.py27.pg95.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:9.5
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:2.7
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
21
.buildkite/docker-compose.py35.pg94.yaml
Normal file
21
.buildkite/docker-compose.py35.pg94.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:9.4
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:3.5
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
21
.buildkite/docker-compose.py35.pg95.yaml
Normal file
21
.buildkite/docker-compose.py35.pg95.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:9.5
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:3.5
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
21
.buildkite/docker-compose.py37.pg11.yaml
Normal file
21
.buildkite/docker-compose.py37.pg11.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:11
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:3.7
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
21
.buildkite/docker-compose.py37.pg95.yaml
Normal file
21
.buildkite/docker-compose.py37.pg95.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
postgres:
|
||||
image: postgres:9.5
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
testenv:
|
||||
image: python:3.7
|
||||
depends_on:
|
||||
- postgres
|
||||
env_file: .env
|
||||
environment:
|
||||
SYNAPSE_POSTGRES_HOST: postgres
|
||||
SYNAPSE_POSTGRES_USER: postgres
|
||||
SYNAPSE_POSTGRES_PASSWORD: postgres
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ..:/app
|
||||
168
.buildkite/pipeline.yml
Normal file
168
.buildkite/pipeline.yml
Normal file
@@ -0,0 +1,168 @@
|
||||
env:
|
||||
CODECOV_TOKEN: "2dd7eb9b-0eda-45fe-a47c-9b5ac040045f"
|
||||
|
||||
steps:
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e pep8"
|
||||
label: "\U0001F9F9 PEP-8"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e packaging"
|
||||
label: "\U0001F9F9 packaging"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e check_isort"
|
||||
label: "\U0001F9F9 isort"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "scripts-dev/check-newsfragment"
|
||||
label: ":newspaper: Newsfile"
|
||||
branches: "!master !develop !release-*"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
propagate-environment: true
|
||||
|
||||
- wait
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e check-sampleconfig"
|
||||
label: "\U0001F9F9 check-sample-config"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e py27,codecov"
|
||||
label: ":python: 2.7 / SQLite"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 2"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:2.7"
|
||||
propagate-environment: true
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e py35,codecov"
|
||||
label: ":python: 3.5 / SQLite"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 2"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.5"
|
||||
propagate-environment: true
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e py36,codecov"
|
||||
label: ":python: 3.6 / SQLite"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 2"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.6"
|
||||
propagate-environment: true
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e py37,codecov"
|
||||
label: ":python: 3.7 / SQLite"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 2"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:3.7"
|
||||
propagate-environment: true
|
||||
|
||||
- command:
|
||||
- "python -m pip install tox"
|
||||
- "tox -e py27-old,codecov"
|
||||
label: ":python: 2.7 / SQLite / Old Deps"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 2"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "python:2.7"
|
||||
propagate-environment: true
|
||||
|
||||
- label: ":python: 2.7 / :postgres: 9.4"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py27-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py27.pg94.yaml
|
||||
|
||||
- label: ":python: 2.7 / :postgres: 9.5"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py27-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py27.pg95.yaml
|
||||
|
||||
- label: ":python: 3.5 / :postgres: 9.4"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py35-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py35.pg94.yaml
|
||||
|
||||
- label: ":python: 3.5 / :postgres: 9.5"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py35-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py35.pg95.yaml
|
||||
|
||||
- label: ":python: 3.7 / :postgres: 9.5"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py37.pg95.yaml
|
||||
|
||||
- label: ":python: 3.7 / :postgres: 11"
|
||||
env:
|
||||
TRIAL_FLAGS: "-j 4"
|
||||
command:
|
||||
- "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'"
|
||||
plugins:
|
||||
- docker-compose#v2.1.0:
|
||||
run: testenv
|
||||
config:
|
||||
- .buildkite/docker-compose.py37.pg11.yaml
|
||||
170
.circleci/config.yml
Normal file
170
.circleci/config.yml
Normal file
@@ -0,0 +1,170 @@
|
||||
version: 2
|
||||
jobs:
|
||||
dockerhubuploadrelease:
|
||||
machine: true
|
||||
steps:
|
||||
- checkout
|
||||
- run: docker build -f docker/Dockerfile --label gitsha1=${CIRCLE_SHA1} -t matrixdotorg/synapse:${CIRCLE_TAG}-py2 .
|
||||
- run: docker build -f docker/Dockerfile --label gitsha1=${CIRCLE_SHA1} -t matrixdotorg/synapse:${CIRCLE_TAG} -t matrixdotorg/synapse:${CIRCLE_TAG}-py3 --build-arg PYTHON_VERSION=3.6 .
|
||||
- run: docker login --username $DOCKER_HUB_USERNAME --password $DOCKER_HUB_PASSWORD
|
||||
- run: docker push matrixdotorg/synapse:${CIRCLE_TAG}
|
||||
- run: docker push matrixdotorg/synapse:${CIRCLE_TAG}-py2
|
||||
- run: docker push matrixdotorg/synapse:${CIRCLE_TAG}-py3
|
||||
dockerhubuploadlatest:
|
||||
machine: true
|
||||
steps:
|
||||
- checkout
|
||||
- run: docker build -f docker/Dockerfile --label gitsha1=${CIRCLE_SHA1} -t matrixdotorg/synapse:latest-py2 .
|
||||
- run: docker build -f docker/Dockerfile --label gitsha1=${CIRCLE_SHA1} -t matrixdotorg/synapse:latest -t matrixdotorg/synapse:latest-py3 --build-arg PYTHON_VERSION=3.6 .
|
||||
- run: docker login --username $DOCKER_HUB_USERNAME --password $DOCKER_HUB_PASSWORD
|
||||
- run: docker push matrixdotorg/synapse:latest
|
||||
- run: docker push matrixdotorg/synapse:latest-py2
|
||||
- run: docker push matrixdotorg/synapse:latest-py3
|
||||
sytestpy2:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy2
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy2postgres:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy2
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: POSTGRES=1 /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy2merged:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy2
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: bash .circleci/merge_base_branch.sh
|
||||
- run: /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy2postgresmerged:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy2
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: bash .circleci/merge_base_branch.sh
|
||||
- run: POSTGRES=1 /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
|
||||
sytestpy3:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy3
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy3postgres:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy3
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: POSTGRES=1 /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy3merged:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy3
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: bash .circleci/merge_base_branch.sh
|
||||
- run: /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
sytestpy3postgresmerged:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-synapsepy3
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
- run: bash .circleci/merge_base_branch.sh
|
||||
- run: POSTGRES=1 /synapse_sytest.sh
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
|
||||
workflows:
|
||||
version: 2
|
||||
build:
|
||||
jobs:
|
||||
- sytestpy2:
|
||||
filters:
|
||||
branches:
|
||||
only: /develop|master|release-.*/
|
||||
- sytestpy2postgres:
|
||||
filters:
|
||||
branches:
|
||||
only: /develop|master|release-.*/
|
||||
- sytestpy3:
|
||||
filters:
|
||||
branches:
|
||||
only: /develop|master|release-.*/
|
||||
- sytestpy3postgres:
|
||||
filters:
|
||||
branches:
|
||||
only: /develop|master|release-.*/
|
||||
- sytestpy2merged:
|
||||
filters:
|
||||
branches:
|
||||
ignore: /develop|master|release-.*/
|
||||
- sytestpy2postgresmerged:
|
||||
filters:
|
||||
branches:
|
||||
ignore: /develop|master|release-.*/
|
||||
- sytestpy3merged:
|
||||
filters:
|
||||
branches:
|
||||
ignore: /develop|master|release-.*/
|
||||
- sytestpy3postgresmerged:
|
||||
filters:
|
||||
branches:
|
||||
ignore: /develop|master|release-.*/
|
||||
- dockerhubuploadrelease:
|
||||
filters:
|
||||
tags:
|
||||
only: /v[0-9].[0-9]+.[0-9]+.*/
|
||||
branches:
|
||||
ignore: /.*/
|
||||
- dockerhubuploadlatest:
|
||||
filters:
|
||||
branches:
|
||||
only: master
|
||||
34
.circleci/merge_base_branch.sh
Executable file
34
.circleci/merge_base_branch.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
# CircleCI doesn't give CIRCLE_PR_NUMBER in the environment for non-forked PRs. Wonderful.
|
||||
# In this case, we just need to do some ~shell magic~ to strip it out of the PULL_REQUEST URL.
|
||||
echo 'export CIRCLE_PR_NUMBER="${CIRCLE_PR_NUMBER:-${CIRCLE_PULL_REQUEST##*/}}"' >> $BASH_ENV
|
||||
source $BASH_ENV
|
||||
|
||||
if [[ -z "${CIRCLE_PR_NUMBER}" ]]
|
||||
then
|
||||
echo "Can't figure out what the PR number is! Assuming merge target is develop."
|
||||
|
||||
# It probably hasn't had a PR opened yet. Since all PRs land on develop, we
|
||||
# can probably assume it's based on it and will be merged into it.
|
||||
GITBASE="develop"
|
||||
else
|
||||
# Get the reference, using the GitHub API
|
||||
GITBASE=`wget -O- https://api.github.com/repos/matrix-org/synapse/pulls/${CIRCLE_PR_NUMBER} | jq -r '.base.ref'`
|
||||
fi
|
||||
|
||||
# Show what we are before
|
||||
git --no-pager show -s
|
||||
|
||||
# Set up username so it can do a merge
|
||||
git config --global user.email bot@matrix.org
|
||||
git config --global user.name "A robot"
|
||||
|
||||
# Fetch and merge. If it doesn't work, it will raise due to set -e.
|
||||
git fetch -u origin $GITBASE
|
||||
git merge --no-edit origin/$GITBASE
|
||||
|
||||
# Show what we are after.
|
||||
git --no-pager show -s
|
||||
15
.codecov.yml
Normal file
15
.codecov.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
comment:
|
||||
layout: "diff"
|
||||
|
||||
coverage:
|
||||
status:
|
||||
project:
|
||||
default:
|
||||
target: 0 # Target % coverage, can be auto. Turned off for now
|
||||
threshold: null
|
||||
base: auto
|
||||
patch:
|
||||
default:
|
||||
target: 0
|
||||
threshold: null
|
||||
base: auto
|
||||
7
.coveragerc
Normal file
7
.coveragerc
Normal file
@@ -0,0 +1,7 @@
|
||||
[run]
|
||||
branch = True
|
||||
parallel = True
|
||||
include = synapse/*
|
||||
|
||||
[report]
|
||||
precision = 2
|
||||
9
.dockerignore
Normal file
9
.dockerignore
Normal file
@@ -0,0 +1,9 @@
|
||||
Dockerfile
|
||||
.travis.yml
|
||||
.gitignore
|
||||
demo/etc
|
||||
tox.ini
|
||||
.git/*
|
||||
.tox/*
|
||||
debian/matrix-synapse/
|
||||
debian/matrix-synapse-*/
|
||||
9
.editorconfig
Normal file
9
.editorconfig
Normal file
@@ -0,0 +1,9 @@
|
||||
# EditorConfig https://EditorConfig.org
|
||||
|
||||
# top-most EditorConfig file
|
||||
root = true
|
||||
|
||||
# 4 space indentation
|
||||
[*.py]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
@@ -1,6 +1,12 @@
|
||||
<!--
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
|
||||
**IF YOU HAVE SUPPORT QUESTIONS ABOUT RUNNING OR CONFIGURING YOUR OWN HOME SERVER**:
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
**IF YOU HAVE SUPPORT QUESTIONS ABOUT RUNNING OR CONFIGURING YOUR OWN HOME SERVER**:
|
||||
You will likely get better support more quickly if you ask in ** #matrix:matrix.org ** ;)
|
||||
|
||||
|
||||
@@ -17,31 +23,44 @@ Text between <!-- and --> marks will be invisible in the report.
|
||||
|
||||
### Description
|
||||
|
||||
Describe here the problem that you are experiencing, or the feature you are requesting.
|
||||
<!-- Describe here the problem that you are experiencing -->
|
||||
|
||||
### Steps to reproduce
|
||||
|
||||
- For bugs, list the steps
|
||||
- list the steps
|
||||
- that reproduce the bug
|
||||
- using hyphens as bullet points
|
||||
|
||||
<!--
|
||||
Describe how what happens differs from what you expected.
|
||||
|
||||
If you can identify any relevant log snippets from _homeserver.log_, please include
|
||||
those here (please be careful to remove any personal or private data):
|
||||
those (please be careful to remove any personal or private data). Please surround them with
|
||||
``` (three backticks, on a line on their own), so that they are formatted legibly.
|
||||
-->
|
||||
|
||||
### Version information
|
||||
|
||||
<!-- IMPORTANT: please answer the following questions, to help us narrow down the problem -->
|
||||
|
||||
- **Homeserver**: Was this issue identified on matrix.org or another homeserver?
|
||||
<!-- Was this issue identified on matrix.org or another homeserver? -->
|
||||
- **Homeserver**:
|
||||
|
||||
If not matrix.org:
|
||||
- **Version**: What version of Synapse is running? <!--
|
||||
|
||||
<!--
|
||||
What version of Synapse is running?
|
||||
You can find the Synapse version by inspecting the server headers (replace matrix.org with
|
||||
your own homeserver domain):
|
||||
$ curl -v https://matrix.org/_matrix/client/versions 2>&1 | grep "Server:"
|
||||
-->
|
||||
- **Install method**: package manager/git clone/pip
|
||||
- **Platform**: Tell us about the environment in which your homeserver is operating
|
||||
- distro, hardware, if it's running in a vm/container, etc.
|
||||
- **Version**:
|
||||
|
||||
- **Install method**:
|
||||
<!-- examples: package manager/git clone/pip -->
|
||||
|
||||
- **Platform**:
|
||||
<!--
|
||||
Tell us about the environment in which your homeserver is operating
|
||||
distro, hardware, if it's running in a vm/container, etc.
|
||||
-->
|
||||
9
.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md
vendored
Normal file
9
.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
|
||||
---
|
||||
|
||||
**Description:**
|
||||
|
||||
<!-- Describe here the feature you are requesting. -->
|
||||
9
.github/ISSUE_TEMPLATE/SUPPORT_REQUEST.md
vendored
Normal file
9
.github/ISSUE_TEMPLATE/SUPPORT_REQUEST.md
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
name: Support request
|
||||
about: I need support for Synapse
|
||||
|
||||
---
|
||||
|
||||
# Please ask for support in [**#matrix:matrix.org**](https://matrix.to/#/#matrix:matrix.org)
|
||||
|
||||
## Don't file an issue as a support request.
|
||||
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
### Pull Request Checklist
|
||||
|
||||
<!-- Please read CONTRIBUTING.rst before submitting your pull request -->
|
||||
|
||||
* [ ] Pull request is based on the develop branch
|
||||
* [ ] Pull request includes a [changelog file](https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.rst#changelog)
|
||||
* [ ] Pull request includes a [sign off](https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.rst#sign-off)
|
||||
3
.github/SUPPORT.md
vendored
Normal file
3
.github/SUPPORT.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
[**#matrix:matrix.org**](https://matrix.to/#/#matrix:matrix.org) is the official support room for Matrix, and can be accessed by any client from https://matrix.org/docs/projects/try-matrix-now.html
|
||||
|
||||
It can also be access via IRC bridge at irc://irc.freenode.net/matrix or on the web here: https://webchat.freenode.net/?channels=matrix
|
||||
74
.gitignore
vendored
74
.gitignore
vendored
@@ -1,50 +1,40 @@
|
||||
*.pyc
|
||||
# filename patterns
|
||||
*~
|
||||
.*.swp
|
||||
|
||||
.DS_Store
|
||||
_trial_temp/
|
||||
logs/
|
||||
dbs/
|
||||
.#*
|
||||
*.deb
|
||||
*.egg
|
||||
dist/
|
||||
docs/build/
|
||||
*.egg-info
|
||||
|
||||
cmdclient_config.json
|
||||
homeserver*.db
|
||||
homeserver*.log
|
||||
homeserver*.pid
|
||||
homeserver*.yaml
|
||||
|
||||
*.signing.key
|
||||
*.tls.crt
|
||||
*.tls.dh
|
||||
*.tls.key
|
||||
|
||||
.coverage
|
||||
htmlcov
|
||||
|
||||
demo/*/*.db
|
||||
demo/*/*.log
|
||||
demo/*/*.log.*
|
||||
demo/*/*.pid
|
||||
demo/media_store.*
|
||||
demo/etc
|
||||
|
||||
uploads
|
||||
|
||||
.idea/
|
||||
media_store/
|
||||
|
||||
*.lock
|
||||
*.pyc
|
||||
*.tac
|
||||
_trial_temp/
|
||||
_trial_temp*/
|
||||
|
||||
build/
|
||||
# stuff that is likely to exist when you run a server locally
|
||||
/*.db
|
||||
/*.log
|
||||
/*.log.config
|
||||
/*.pid
|
||||
/*.signing.key
|
||||
/env/
|
||||
/homeserver*.yaml
|
||||
/media_store/
|
||||
/uploads
|
||||
|
||||
localhost-800*/
|
||||
static/client/register/register_config.js
|
||||
.tox
|
||||
# IDEs
|
||||
/.idea/
|
||||
/.ropeproject/
|
||||
/.vscode/
|
||||
|
||||
env/
|
||||
*.config
|
||||
# build products
|
||||
/.coverage*
|
||||
!/.coveragerc
|
||||
/.tox
|
||||
/build/
|
||||
/coverage.*
|
||||
/dist/
|
||||
/docs/build/
|
||||
/htmlcov
|
||||
/pip-wheel-metadata/
|
||||
|
||||
.vscode/
|
||||
|
||||
17
.travis.yml
17
.travis.yml
@@ -1,17 +0,0 @@
|
||||
sudo: false
|
||||
language: python
|
||||
python: 2.7
|
||||
|
||||
# tell travis to cache ~/.cache/pip
|
||||
cache: pip
|
||||
|
||||
env:
|
||||
- TOX_ENV=packaging
|
||||
- TOX_ENV=pep8
|
||||
- TOX_ENV=py27
|
||||
|
||||
install:
|
||||
- pip install tox
|
||||
|
||||
script:
|
||||
- tox -e $TOX_ENV
|
||||
12
AUTHORS.rst
12
AUTHORS.rst
@@ -60,3 +60,15 @@ Niklas Riekenbrauck <nikriek at gmail dot.com>
|
||||
|
||||
Christoph Witzany <christoph at web.crofting.com>
|
||||
* Add LDAP support for authentication
|
||||
|
||||
Pierre Jaury <pierre at jaury.eu>
|
||||
* Docker packaging
|
||||
|
||||
Serban Constantin <serban.constantin at gmail dot com>
|
||||
* Small bug fix
|
||||
|
||||
Jason Robinson <jasonr at matrix.org>
|
||||
* Minor fixes
|
||||
|
||||
Joseph Weston <joseph at weston.cloud>
|
||||
+ Add admin API for querying HS version
|
||||
|
||||
3379
CHANGES.md
Normal file
3379
CHANGES.md
Normal file
File diff suppressed because it is too large
Load Diff
2406
CHANGES.rst
2406
CHANGES.rst
File diff suppressed because it is too large
Load Diff
100
CONTRIBUTING.rst
100
CONTRIBUTING.rst
@@ -30,12 +30,28 @@ use github's pull request workflow to review the contribution, and either ask
|
||||
you to make any refinements needed or merge it and make them ourselves. The
|
||||
changes will then land on master when we next do a release.
|
||||
|
||||
We use `Jenkins <http://matrix.org/jenkins>`_ and
|
||||
`Travis <https://travis-ci.org/matrix-org/synapse>`_ for continuous
|
||||
integration. All pull requests to synapse get automatically tested by Travis;
|
||||
the Jenkins builds require an adminstrator to start them. If your change
|
||||
breaks the build, this will be shown in github, so please keep an eye on the
|
||||
pull request for feedback.
|
||||
We use `CircleCI <https://circleci.com/gh/matrix-org>`_ and `Travis CI
|
||||
<https://travis-ci.org/matrix-org/synapse>`_ for continuous integration. All
|
||||
pull requests to synapse get automatically tested by Travis and CircleCI.
|
||||
If your change breaks the build, this will be shown in GitHub, so please
|
||||
keep an eye on the pull request for feedback.
|
||||
|
||||
To run unit tests in a local development environment, you can use:
|
||||
|
||||
- ``tox -e py27`` (requires tox to be installed by ``pip install tox``) for
|
||||
SQLite-backed Synapse on Python 2.7.
|
||||
- ``tox -e py35`` for SQLite-backed Synapse on Python 3.5.
|
||||
- ``tox -e py36`` for SQLite-backed Synapse on Python 3.6.
|
||||
- ``tox -e py27-postgres`` for PostgreSQL-backed Synapse on Python 2.7
|
||||
(requires a running local PostgreSQL with access to create databases).
|
||||
- ``./test_postgresql.sh`` for PostgreSQL-backed Synapse on Python 2.7
|
||||
(requires Docker). Entirely self-contained, recommended if you don't want to
|
||||
set up PostgreSQL yourself.
|
||||
|
||||
Docker images are available for running the integration tests (SyTest) locally,
|
||||
see the `documentation in the SyTest repo
|
||||
<https://github.com/matrix-org/sytest/blob/develop/docker/README.md>`_ for more
|
||||
information.
|
||||
|
||||
Code style
|
||||
~~~~~~~~~~
|
||||
@@ -48,6 +64,50 @@ Please ensure your changes match the cosmetic style of the existing project,
|
||||
and **never** mix cosmetic and functional changes in the same commit, as it
|
||||
makes it horribly hard to review otherwise.
|
||||
|
||||
Changelog
|
||||
~~~~~~~~~
|
||||
|
||||
All changes, even minor ones, need a corresponding changelog / newsfragment
|
||||
entry. These are managed by Towncrier
|
||||
(https://github.com/hawkowl/towncrier).
|
||||
|
||||
To create a changelog entry, make a new file in the ``changelog.d``
|
||||
file named in the format of ``PRnumber.type``. The type can be
|
||||
one of ``feature``, ``bugfix``, ``removal`` (also used for
|
||||
deprecations), or ``misc`` (for internal-only changes).
|
||||
|
||||
The content of the file is your changelog entry, which can contain Markdown
|
||||
formatting. The entry should end with a full stop ('.') for consistency.
|
||||
|
||||
Adding credits to the changelog is encouraged, we value your
|
||||
contributions and would like to have you shouted out in the release notes!
|
||||
|
||||
For example, a fix in PR #1234 would have its changelog entry in
|
||||
``changelog.d/1234.bugfix``, and contain content like "The security levels of
|
||||
Florbs are now validated when recieved over federation. Contributed by Jane
|
||||
Matrix.".
|
||||
|
||||
Debian changelog
|
||||
----------------
|
||||
|
||||
Changes which affect the debian packaging files (in ``debian``) are an
|
||||
exception.
|
||||
|
||||
In this case, you will need to add an entry to the debian changelog for the
|
||||
next release. For this, run the following command::
|
||||
|
||||
dch
|
||||
|
||||
This will make up a new version number (if there isn't already an unreleased
|
||||
version in flight), and open an editor where you can add a new changelog entry.
|
||||
(Our release process will ensure that the version number and maintainer name is
|
||||
corrected for the release.)
|
||||
|
||||
If your change affects both the debian packaging *and* files outside the debian
|
||||
directory, you will need both a regular newsfragment *and* an entry in the
|
||||
debian changelog. (Though typically such changes should be submitted as two
|
||||
separate pull requests.)
|
||||
|
||||
Attribution
|
||||
~~~~~~~~~~~
|
||||
|
||||
@@ -56,7 +116,8 @@ AUTHORS.rst file for the project in question. Please feel free to include a
|
||||
change to AUTHORS.rst in your pull request to list yourself and a short
|
||||
description of the area(s) you've worked on. Also, we sometimes have swag to
|
||||
give away to contributors - if you feel that Matrix-branded apparel is missing
|
||||
from your life, please mail us your shipping address to matrix at matrix.org and we'll try to fix it :)
|
||||
from your life, please mail us your shipping address to matrix at matrix.org and
|
||||
we'll try to fix it :)
|
||||
|
||||
Sign off
|
||||
~~~~~~~~
|
||||
@@ -64,7 +125,7 @@ Sign off
|
||||
In order to have a concrete record that your contribution is intentional
|
||||
and you agree to license it under the same terms as the project's license, we've adopted the
|
||||
same lightweight approach that the Linux Kernel
|
||||
(https://www.kernel.org/doc/Documentation/SubmittingPatches), Docker
|
||||
`submitting patches process <https://www.kernel.org/doc/html/latest/process/submitting-patches.html#sign-your-work-the-developer-s-certificate-of-origin>`_, Docker
|
||||
(https://github.com/docker/docker/blob/master/CONTRIBUTING.md), and many other
|
||||
projects use: the DCO (Developer Certificate of Origin:
|
||||
http://developercertificate.org/). This is a simple declaration that you wrote
|
||||
@@ -105,18 +166,27 @@ the contribution or otherwise have the right to contribute it to Matrix::
|
||||
personal information I submit with it, including my sign-off) is
|
||||
maintained indefinitely and may be redistributed consistent with
|
||||
this project or the open source license(s) involved.
|
||||
|
||||
|
||||
If you agree to this for your contribution, then all that's needed is to
|
||||
include the line in your commit or pull request comment::
|
||||
|
||||
Signed-off-by: Your Name <your@email.example.org>
|
||||
|
||||
...using your real name; unfortunately pseudonyms and anonymous contributions
|
||||
can't be accepted. Git makes this trivial - just use the -s flag when you do
|
||||
``git commit``, having first set ``user.name`` and ``user.email`` git configs
|
||||
(which you should have done anyway :)
|
||||
|
||||
We accept contributions under a legally identifiable name, such as
|
||||
your name on government documentation or common-law names (names
|
||||
claimed by legitimate usage or repute). Unfortunately, we cannot
|
||||
accept anonymous contributions at this time.
|
||||
|
||||
Git allows you to add this signoff automatically when using the ``-s``
|
||||
flag to ``git commit``, which uses the name and email set in your
|
||||
``user.name`` and ``user.email`` git configs.
|
||||
|
||||
Conclusion
|
||||
~~~~~~~~~~
|
||||
|
||||
That's it! Matrix is a very open and collaborative project as you might expect given our obsession with open communication. If we're going to successfully matrix together all the fragmented communication technologies out there we are reliant on contributions and collaboration from the community to do so. So please get involved - and we hope you have as much fun hacking on Matrix as we do!
|
||||
That's it! Matrix is a very open and collaborative project as you might expect
|
||||
given our obsession with open communication. If we're going to successfully
|
||||
matrix together all the fragmented communication technologies out there we are
|
||||
reliant on contributions and collaboration from the community to do so. So
|
||||
please get involved - and we hope you have as much fun hacking on Matrix as we
|
||||
do!
|
||||
|
||||
434
INSTALL.md
Normal file
434
INSTALL.md
Normal file
@@ -0,0 +1,434 @@
|
||||
* [Installing Synapse](#installing-synapse)
|
||||
* [Installing from source](#installing-from-source)
|
||||
* [Platform-Specific Instructions](#platform-specific-instructions)
|
||||
* [Troubleshooting Installation](#troubleshooting-installation)
|
||||
* [Prebuilt packages](#prebuilt-packages)
|
||||
* [Setting up Synapse](#setting-up-synapse)
|
||||
* [TLS certificates](#tls-certificates)
|
||||
* [Registering a user](#registering-a-user)
|
||||
* [Setting up a TURN server](#setting-up-a-turn-server)
|
||||
* [URL previews](#url-previews)
|
||||
|
||||
# Installing Synapse
|
||||
|
||||
## Installing from source
|
||||
|
||||
(Prebuilt packages are available for some platforms - see [Prebuilt packages](#prebuilt-packages).)
|
||||
|
||||
System requirements:
|
||||
|
||||
- POSIX-compliant system (tested on Linux & OS X)
|
||||
- Python 3.5, 3.6, 3.7, or 2.7
|
||||
- At least 1GB of free RAM if you want to join large public rooms like #matrix:matrix.org
|
||||
|
||||
Synapse is written in Python but some of the libraries it uses are written in
|
||||
C. So before we can install Synapse itself we need a working C compiler and the
|
||||
header files for Python C extensions. See [Platform-Specific
|
||||
Instructions](#platform-specific-instructions) for information on installing
|
||||
these on various platforms.
|
||||
|
||||
To install the Synapse homeserver run:
|
||||
|
||||
```
|
||||
mkdir -p ~/synapse
|
||||
virtualenv -p python3 ~/synapse/env
|
||||
source ~/synapse/env/bin/activate
|
||||
pip install --upgrade pip
|
||||
pip install --upgrade setuptools
|
||||
pip install matrix-synapse[all]
|
||||
```
|
||||
|
||||
This will download Synapse from [PyPI](https://pypi.org/project/matrix-synapse)
|
||||
and install it, along with the python libraries it uses, into a virtual environment
|
||||
under `~/synapse/env`. Feel free to pick a different directory if you
|
||||
prefer.
|
||||
|
||||
This Synapse installation can then be later upgraded by using pip again with the
|
||||
update flag:
|
||||
|
||||
```
|
||||
source ~/synapse/env/bin/activate
|
||||
pip install -U matrix-synapse[all]
|
||||
```
|
||||
|
||||
Before you can start Synapse, you will need to generate a configuration
|
||||
file. To do this, run (in your virtualenv, as before)::
|
||||
|
||||
```
|
||||
cd ~/synapse
|
||||
python -m synapse.app.homeserver \
|
||||
--server-name my.domain.name \
|
||||
--config-path homeserver.yaml \
|
||||
--generate-config \
|
||||
--report-stats=[yes|no]
|
||||
```
|
||||
|
||||
... substituting an appropriate value for `--server-name`. The server name
|
||||
determines the "domain" part of user-ids for users on your server: these will
|
||||
all be of the format `@user:my.domain.name`. It also determines how other
|
||||
matrix servers will reach yours for Federation. For a test configuration,
|
||||
set this to the hostname of your server. For a more production-ready setup, you
|
||||
will probably want to specify your domain (`example.com`) rather than a
|
||||
matrix-specific hostname here (in the same way that your email address is
|
||||
probably `user@example.com` rather than `user@email.example.com`) - but
|
||||
doing so may require more advanced setup: see [Setting up Federation](docs/federate.md).
|
||||
Beware that the server name cannot be changed later.
|
||||
|
||||
This command will generate you a config file that you can then customise, but it will
|
||||
also generate a set of keys for you. These keys will allow your Home Server to
|
||||
identify itself to other Home Servers, so don't lose or delete them. It would be
|
||||
wise to back them up somewhere safe. (If, for whatever reason, you do need to
|
||||
change your Home Server's keys, you may find that other Home Servers have the
|
||||
old key cached. If you update the signing key, you should change the name of the
|
||||
key in the `<server name>.signing.key` file (the second word) to something
|
||||
different. See the
|
||||
[spec](https://matrix.org/docs/spec/server_server/latest.html#retrieving-server-keys)
|
||||
for more information on key management.)
|
||||
|
||||
You will need to give Synapse a TLS certficate before it will start - see [TLS
|
||||
certificates](#tls-certificates).
|
||||
|
||||
To actually run your new homeserver, pick a working directory for Synapse to
|
||||
run (e.g. `~/synapse`), and::
|
||||
|
||||
cd ~/synapse
|
||||
source env/bin/activate
|
||||
synctl start
|
||||
|
||||
### Platform-Specific Instructions
|
||||
|
||||
#### Debian/Ubuntu/Raspbian
|
||||
|
||||
Installing prerequisites on Ubuntu or Debian:
|
||||
|
||||
```
|
||||
sudo apt-get install build-essential python3-dev libffi-dev \
|
||||
python-pip python-setuptools sqlite3 \
|
||||
libssl-dev python-virtualenv libjpeg-dev libxslt1-dev
|
||||
```
|
||||
|
||||
#### ArchLinux
|
||||
|
||||
Installing prerequisites on ArchLinux:
|
||||
|
||||
```
|
||||
sudo pacman -S base-devel python python-pip \
|
||||
python-setuptools python-virtualenv sqlite3
|
||||
```
|
||||
|
||||
#### CentOS/Fedora
|
||||
|
||||
Installing prerequisites on CentOS 7 or Fedora 25:
|
||||
|
||||
```
|
||||
sudo yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel \
|
||||
lcms2-devel libwebp-devel tcl-devel tk-devel redhat-rpm-config \
|
||||
python-virtualenv libffi-devel openssl-devel
|
||||
sudo yum groupinstall "Development Tools"
|
||||
```
|
||||
|
||||
#### Mac OS X
|
||||
|
||||
Installing prerequisites on Mac OS X:
|
||||
|
||||
```
|
||||
xcode-select --install
|
||||
sudo easy_install pip
|
||||
sudo pip install virtualenv
|
||||
brew install pkg-config libffi
|
||||
```
|
||||
|
||||
#### OpenSUSE
|
||||
|
||||
Installing prerequisites on openSUSE:
|
||||
|
||||
```
|
||||
sudo zypper in -t pattern devel_basis
|
||||
sudo zypper in python-pip python-setuptools sqlite3 python-virtualenv \
|
||||
python-devel libffi-devel libopenssl-devel libjpeg62-devel
|
||||
```
|
||||
|
||||
#### OpenBSD
|
||||
|
||||
Installing prerequisites on OpenBSD:
|
||||
|
||||
```
|
||||
doas pkg_add python libffi py-pip py-setuptools sqlite3 py-virtualenv \
|
||||
libxslt jpeg
|
||||
```
|
||||
|
||||
There is currently no port for OpenBSD. Additionally, OpenBSD's security
|
||||
settings require a slightly more difficult installation process.
|
||||
|
||||
XXX: I suspect this is out of date.
|
||||
|
||||
1. Create a new directory in `/usr/local` called `_synapse`. Also, create a
|
||||
new user called `_synapse` and set that directory as the new user's home.
|
||||
This is required because, by default, OpenBSD only allows binaries which need
|
||||
write and execute permissions on the same memory space to be run from
|
||||
`/usr/local`.
|
||||
2. `su` to the new `_synapse` user and change to their home directory.
|
||||
3. Create a new virtualenv: `virtualenv -p python2.7 ~/.synapse`
|
||||
4. Source the virtualenv configuration located at
|
||||
`/usr/local/_synapse/.synapse/bin/activate`. This is done in `ksh` by
|
||||
using the `.` command, rather than `bash`'s `source`.
|
||||
5. Optionally, use `pip` to install `lxml`, which Synapse needs to parse
|
||||
webpages for their titles.
|
||||
6. Use `pip` to install this repository: `pip install matrix-synapse`
|
||||
7. Optionally, change `_synapse`'s shell to `/bin/false` to reduce the
|
||||
chance of a compromised Synapse server being used to take over your box.
|
||||
|
||||
After this, you may proceed with the rest of the install directions.
|
||||
|
||||
#### Windows
|
||||
|
||||
If you wish to run or develop Synapse on Windows, the Windows Subsystem For
|
||||
Linux provides a Linux environment on Windows 10 which is capable of using the
|
||||
Debian, Fedora, or source installation methods. More information about WSL can
|
||||
be found at https://docs.microsoft.com/en-us/windows/wsl/install-win10 for
|
||||
Windows 10 and https://docs.microsoft.com/en-us/windows/wsl/install-on-server
|
||||
for Windows Server.
|
||||
|
||||
### Troubleshooting Installation
|
||||
|
||||
XXX a bunch of this is no longer relevant.
|
||||
|
||||
Synapse requires pip 8 or later, so if your OS provides too old a version you
|
||||
may need to manually upgrade it::
|
||||
|
||||
sudo pip install --upgrade pip
|
||||
|
||||
Installing may fail with `Could not find any downloads that satisfy the requirement pymacaroons-pynacl (from matrix-synapse==0.12.0)`.
|
||||
You can fix this by manually upgrading pip and virtualenv::
|
||||
|
||||
sudo pip install --upgrade virtualenv
|
||||
|
||||
You can next rerun `virtualenv -p python3 synapse` to update the virtual env.
|
||||
|
||||
Installing may fail during installing virtualenv with `InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.`
|
||||
You can fix this by manually installing ndg-httpsclient::
|
||||
|
||||
pip install --upgrade ndg-httpsclient
|
||||
|
||||
Installing may fail with `mock requires setuptools>=17.1. Aborting installation`.
|
||||
You can fix this by upgrading setuptools::
|
||||
|
||||
pip install --upgrade setuptools
|
||||
|
||||
If pip crashes mid-installation for reason (e.g. lost terminal), pip may
|
||||
refuse to run until you remove the temporary installation directory it
|
||||
created. To reset the installation::
|
||||
|
||||
rm -rf /tmp/pip_install_matrix
|
||||
|
||||
pip seems to leak *lots* of memory during installation. For instance, a Linux
|
||||
host with 512MB of RAM may run out of memory whilst installing Twisted. If this
|
||||
happens, you will have to individually install the dependencies which are
|
||||
failing, e.g.::
|
||||
|
||||
pip install twisted
|
||||
|
||||
## Prebuilt packages
|
||||
|
||||
As an alternative to installing from source, prebuilt packages are available
|
||||
for a number of platforms.
|
||||
|
||||
### Docker images and Ansible playbooks
|
||||
|
||||
There is an offical synapse image available at
|
||||
https://hub.docker.com/r/matrixdotorg/synapse which can be used with
|
||||
the docker-compose file available at [contrib/docker](contrib/docker). Further information on
|
||||
this including configuration options is available in the README on
|
||||
hub.docker.com.
|
||||
|
||||
Alternatively, Andreas Peters (previously Silvio Fricke) has contributed a
|
||||
Dockerfile to automate a synapse server in a single Docker image, at
|
||||
https://hub.docker.com/r/avhost/docker-matrix/tags/
|
||||
|
||||
Slavi Pantaleev has created an Ansible playbook,
|
||||
which installs the offical Docker image of Matrix Synapse
|
||||
along with many other Matrix-related services (Postgres database, riot-web, coturn, mxisd, SSL support, etc.).
|
||||
For more details, see
|
||||
https://github.com/spantaleev/matrix-docker-ansible-deploy
|
||||
|
||||
|
||||
### Debian/Ubuntu
|
||||
|
||||
#### Matrix.org packages
|
||||
|
||||
Matrix.org provides Debian/Ubuntu packages of the latest stable version of
|
||||
Synapse via https://matrix.org/packages/debian/. To use them:
|
||||
|
||||
```
|
||||
sudo apt install -y lsb-release curl apt-transport-https
|
||||
echo "deb https://matrix.org/packages/debian `lsb_release -cs` main" |
|
||||
sudo tee /etc/apt/sources.list.d/matrix-org.list
|
||||
curl "https://matrix.org/packages/debian/repo-key.asc" |
|
||||
sudo apt-key add -
|
||||
sudo apt update
|
||||
sudo apt install matrix-synapse-py3
|
||||
```
|
||||
|
||||
#### Downstream Debian/Ubuntu packages
|
||||
|
||||
For `buster` and `sid`, Synapse is available in the Debian repositories and
|
||||
it should be possible to install it with simply:
|
||||
|
||||
```
|
||||
sudo apt install matrix-synapse
|
||||
```
|
||||
|
||||
There is also a version of `matrix-synapse` in `stretch-backports`. Please see
|
||||
the [Debian documentation on
|
||||
backports](https://backports.debian.org/Instructions/) for information on how
|
||||
to use them.
|
||||
|
||||
We do not recommend using the packages in downstream Ubuntu at this time, as
|
||||
they are old and suffer from known security vulnerabilities.
|
||||
|
||||
### Fedora
|
||||
|
||||
Synapse is in the Fedora repositories as `matrix-synapse`:
|
||||
|
||||
```
|
||||
sudo dnf install matrix-synapse
|
||||
```
|
||||
|
||||
Oleg Girko provides Fedora RPMs at
|
||||
https://obs.infoserver.lv/project/monitor/matrix-synapse
|
||||
|
||||
### OpenSUSE
|
||||
|
||||
Synapse is in the OpenSUSE repositories as `matrix-synapse`:
|
||||
|
||||
```
|
||||
sudo zypper install matrix-synapse
|
||||
```
|
||||
|
||||
### SUSE Linux Enterprise Server
|
||||
|
||||
Unofficial package are built for SLES 15 in the openSUSE:Backports:SLE-15 repository at
|
||||
https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15/standard/
|
||||
|
||||
### ArchLinux
|
||||
|
||||
The quickest way to get up and running with ArchLinux is probably with the community package
|
||||
https://www.archlinux.org/packages/community/any/matrix-synapse/, which should pull in most of
|
||||
the necessary dependencies.
|
||||
|
||||
pip may be outdated (6.0.7-1 and needs to be upgraded to 6.0.8-1 ):
|
||||
|
||||
```
|
||||
sudo pip install --upgrade pip
|
||||
```
|
||||
|
||||
If you encounter an error with lib bcrypt causing an Wrong ELF Class:
|
||||
ELFCLASS32 (x64 Systems), you may need to reinstall py-bcrypt to correctly
|
||||
compile it under the right architecture. (This should not be needed if
|
||||
installing under virtualenv):
|
||||
|
||||
```
|
||||
sudo pip uninstall py-bcrypt
|
||||
sudo pip install py-bcrypt
|
||||
```
|
||||
|
||||
### FreeBSD
|
||||
|
||||
Synapse can be installed via FreeBSD Ports or Packages contributed by Brendan Molloy from:
|
||||
|
||||
- Ports: `cd /usr/ports/net-im/py-matrix-synapse && make install clean`
|
||||
- Packages: `pkg install py27-matrix-synapse`
|
||||
|
||||
|
||||
### NixOS
|
||||
|
||||
Robin Lambertz has packaged Synapse for NixOS at:
|
||||
https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/misc/matrix-synapse.nix
|
||||
|
||||
# Setting up Synapse
|
||||
|
||||
Once you have installed synapse as above, you will need to configure it.
|
||||
|
||||
## TLS certificates
|
||||
|
||||
The default configuration exposes a single HTTP port: http://localhost:8008. It
|
||||
is suitable for local testing, but for any practical use, you will either need
|
||||
to enable a reverse proxy, or configure Synapse to expose an HTTPS port.
|
||||
|
||||
For information on using a reverse proxy, see
|
||||
[docs/reverse_proxy.rst](docs/reverse_proxy.rst).
|
||||
|
||||
To configure Synapse to expose an HTTPS port, you will need to edit
|
||||
`homeserver.yaml`, as follows:
|
||||
|
||||
* First, under the `listeners` section, uncomment the configuration for the
|
||||
TLS-enabled listener. (Remove the hash sign (`#`) at the start of
|
||||
each line). The relevant lines are like this:
|
||||
|
||||
```
|
||||
- port: 8448
|
||||
type: http
|
||||
tls: true
|
||||
resources:
|
||||
- names: [client, federation]
|
||||
```
|
||||
* You will also need to uncomment the `tls_certificate_path` and
|
||||
`tls_private_key_path` lines under the `TLS` section. You can either
|
||||
point these settings at an existing certificate and key, or you can
|
||||
enable Synapse's built-in ACME (Let's Encrypt) support. Instructions
|
||||
for having Synapse automatically provision and renew federation
|
||||
certificates through ACME can be found at [ACME.md](docs/ACME.md). If you
|
||||
are using your own certificate, be sure to use a `.pem` file that includes
|
||||
the full certificate chain including any intermediate certificates (for
|
||||
instance, if using certbot, use `fullchain.pem` as your certificate, not
|
||||
`cert.pem`).
|
||||
|
||||
For those of you upgrading your TLS certificate in readiness for Synapse 1.0,
|
||||
please take a look at `our guide <docs/MSC1711_certificates_FAQ.md#configuring-certificates-for-compatibility-with-synapse-100>`_.
|
||||
|
||||
## Registering a user
|
||||
|
||||
You will need at least one user on your server in order to use a Matrix
|
||||
client. Users can be registered either via a Matrix client, or via a
|
||||
commandline script.
|
||||
|
||||
To get started, it is easiest to use the command line to register new
|
||||
users. This can be done as follows:
|
||||
|
||||
```
|
||||
$ source ~/synapse/env/bin/activate
|
||||
$ synctl start # if not already running
|
||||
$ register_new_matrix_user -c homeserver.yaml http://localhost:8008
|
||||
New user localpart: erikj
|
||||
Password:
|
||||
Confirm password:
|
||||
Make admin [no]:
|
||||
Success!
|
||||
```
|
||||
|
||||
This process uses a setting `registration_shared_secret` in
|
||||
`homeserver.yaml`, which is shared between Synapse itself and the
|
||||
`register_new_matrix_user` script. It doesn't matter what it is (a random
|
||||
value is generated by `--generate-config`), but it should be kept secret, as
|
||||
anyone with knowledge of it can register users, including admin accounts,
|
||||
on your server even if `enable_registration` is `false`.
|
||||
|
||||
## Setting up a TURN server
|
||||
|
||||
For reliable VoIP calls to be routed via this homeserver, you MUST configure
|
||||
a TURN server. See [docs/turn-howto.rst](docs/turn-howto.rst) for details.
|
||||
|
||||
## URL previews
|
||||
|
||||
Synapse includes support for previewing URLs, which is disabled by default. To
|
||||
turn it on you must enable the `url_preview_enabled: True` config parameter
|
||||
and explicitly specify the IP ranges that Synapse is not allowed to spider for
|
||||
previewing in the `url_preview_ip_range_blacklist` configuration parameter.
|
||||
This is critical from a security perspective to stop arbitrary Matrix users
|
||||
spidering 'internal' URLs on your network. At the very least we recommend that
|
||||
your loopback and RFC1918 IP addresses are blacklisted.
|
||||
|
||||
This also requires the optional lxml and netaddr python dependencies to be
|
||||
installed. This in turn requires the libxml2 library to be available - on
|
||||
Debian/Ubuntu this means `apt-get install libxml2-dev`, or equivalent for
|
||||
your OS.
|
||||
24
MANIFEST.in
24
MANIFEST.in
@@ -2,6 +2,7 @@ include synctl
|
||||
include LICENSE
|
||||
include VERSION
|
||||
include *.rst
|
||||
include *.md
|
||||
include demo/README
|
||||
include demo/demo.tls.dh
|
||||
include demo/*.py
|
||||
@@ -11,21 +12,34 @@ recursive-include synapse/storage/schema *.sql
|
||||
recursive-include synapse/storage/schema *.py
|
||||
|
||||
recursive-include docs *
|
||||
recursive-include res *
|
||||
recursive-include scripts *
|
||||
recursive-include scripts-dev *
|
||||
recursive-include synapse *.pyi
|
||||
recursive-include tests *.pem
|
||||
recursive-include tests *.py
|
||||
|
||||
recursive-include synapse/res *
|
||||
recursive-include synapse/static *.css
|
||||
recursive-include synapse/static *.gif
|
||||
recursive-include synapse/static *.html
|
||||
recursive-include synapse/static *.js
|
||||
|
||||
exclude jenkins.sh
|
||||
exclude jenkins*.sh
|
||||
exclude jenkins*
|
||||
recursive-exclude jenkins *.sh
|
||||
exclude Dockerfile
|
||||
exclude .dockerignore
|
||||
exclude test_postgresql.sh
|
||||
exclude .editorconfig
|
||||
|
||||
include pyproject.toml
|
||||
recursive-include changelog.d *
|
||||
|
||||
prune .github
|
||||
prune demo/etc
|
||||
prune docker
|
||||
prune .circleci
|
||||
prune .coveragerc
|
||||
prune debian
|
||||
prune .codecov.yml
|
||||
prune .buildkite
|
||||
|
||||
exclude jenkins*
|
||||
recursive-exclude jenkins *.sh
|
||||
|
||||
35
MAP.rst
35
MAP.rst
@@ -1,35 +0,0 @@
|
||||
Directory Structure
|
||||
===================
|
||||
|
||||
Warning: this may be a bit stale...
|
||||
|
||||
::
|
||||
|
||||
.
|
||||
├── cmdclient Basic CLI python Matrix client
|
||||
├── demo Scripts for running standalone Matrix demos
|
||||
├── docs All doc, including the draft Matrix API spec
|
||||
│ ├── client-server The client-server Matrix API spec
|
||||
│ ├── model Domain-specific elements of the Matrix API spec
|
||||
│ ├── server-server The server-server model of the Matrix API spec
|
||||
│ └── sphinx The internal API doc of the Synapse homeserver
|
||||
├── experiments Early experiments of using Synapse's internal APIs
|
||||
├── graph Visualisation of Matrix's distributed message store
|
||||
├── synapse The reference Matrix homeserver implementation
|
||||
│ ├── api Common building blocks for the APIs
|
||||
│ │ ├── events Definition of state representation Events
|
||||
│ │ └── streams Definition of streamable Event objects
|
||||
│ ├── app The __main__ entry point for the homeserver
|
||||
│ ├── crypto The PKI client/server used for secure federation
|
||||
│ │ └── resource PKI helper objects (e.g. keys)
|
||||
│ ├── federation Server-server state replication logic
|
||||
│ ├── handlers The main business logic of the homeserver
|
||||
│ ├── http Wrappers around Twisted's HTTP server & client
|
||||
│ ├── rest Servlet-style RESTful API
|
||||
│ ├── storage Persistence subsystem (currently only sqlite3)
|
||||
│ │ └── schema sqlite persistence schema
|
||||
│ └── util Synapse-specific utilities
|
||||
├── tests Unit tests for the Synapse homeserver
|
||||
└── webclient Basic AngularJS Matrix web client
|
||||
|
||||
|
||||
741
README.rst
741
README.rst
@@ -26,7 +26,6 @@ via IRC bridge at irc://irc.freenode.net/matrix.
|
||||
Synapse is currently in rapid development, but as of version 0.5 we believe it
|
||||
is sufficiently stable to be run as an internet-facing service for real usage!
|
||||
|
||||
|
||||
About Matrix
|
||||
============
|
||||
|
||||
@@ -71,7 +70,7 @@ We'd like to invite you to join #matrix:matrix.org (via
|
||||
https://matrix.org/docs/projects/try-matrix-now.html), run a homeserver, take a look
|
||||
at the `Matrix spec <https://matrix.org/docs/spec>`_, and experiment with the
|
||||
`APIs <https://matrix.org/docs/api>`_ and `Client SDKs
|
||||
<http://matrix.org/docs/projects/try-matrix-now.html#client-sdks>`_.
|
||||
<https://matrix.org/docs/projects/try-matrix-now.html#client-sdks>`_.
|
||||
|
||||
Thanks for using Matrix!
|
||||
|
||||
@@ -81,225 +80,34 @@ Thanks for using Matrix!
|
||||
Synapse Installation
|
||||
====================
|
||||
|
||||
Synapse is the reference python/twisted Matrix homeserver implementation.
|
||||
.. _federation:
|
||||
|
||||
System requirements:
|
||||
|
||||
- POSIX-compliant system (tested on Linux & OS X)
|
||||
- Python 2.7
|
||||
- At least 1GB of free RAM if you want to join large public rooms like #matrix:matrix.org
|
||||
|
||||
Installing from source
|
||||
----------------------
|
||||
(Prebuilt packages are available for some platforms - see `Platform-Specific
|
||||
Instructions`_.)
|
||||
|
||||
Synapse is written in python but some of the libraries it uses are written in
|
||||
C. So before we can install synapse itself we need a working C compiler and the
|
||||
header files for python C extensions.
|
||||
|
||||
Installing prerequisites on Ubuntu or Debian::
|
||||
|
||||
sudo apt-get install build-essential python2.7-dev libffi-dev \
|
||||
python-pip python-setuptools sqlite3 \
|
||||
libssl-dev python-virtualenv libjpeg-dev libxslt1-dev
|
||||
|
||||
Installing prerequisites on ArchLinux::
|
||||
|
||||
sudo pacman -S base-devel python2 python-pip \
|
||||
python-setuptools python-virtualenv sqlite3
|
||||
|
||||
Installing prerequisites on CentOS 7 or Fedora 25::
|
||||
|
||||
sudo yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel \
|
||||
lcms2-devel libwebp-devel tcl-devel tk-devel redhat-rpm-config \
|
||||
python-virtualenv libffi-devel openssl-devel
|
||||
sudo yum groupinstall "Development Tools"
|
||||
|
||||
Installing prerequisites on Mac OS X::
|
||||
|
||||
xcode-select --install
|
||||
sudo easy_install pip
|
||||
sudo pip install virtualenv
|
||||
brew install pkg-config libffi
|
||||
|
||||
Installing prerequisites on Raspbian::
|
||||
|
||||
sudo apt-get install build-essential python2.7-dev libffi-dev \
|
||||
python-pip python-setuptools sqlite3 \
|
||||
libssl-dev python-virtualenv libjpeg-dev
|
||||
sudo pip install --upgrade pip
|
||||
sudo pip install --upgrade ndg-httpsclient
|
||||
sudo pip install --upgrade virtualenv
|
||||
|
||||
Installing prerequisites on openSUSE::
|
||||
|
||||
sudo zypper in -t pattern devel_basis
|
||||
sudo zypper in python-pip python-setuptools sqlite3 python-virtualenv \
|
||||
python-devel libffi-devel libopenssl-devel libjpeg62-devel
|
||||
|
||||
Installing prerequisites on OpenBSD::
|
||||
|
||||
doas pkg_add python libffi py-pip py-setuptools sqlite3 py-virtualenv \
|
||||
libxslt
|
||||
|
||||
To install the synapse homeserver run::
|
||||
|
||||
virtualenv -p python2.7 ~/.synapse
|
||||
source ~/.synapse/bin/activate
|
||||
pip install --upgrade pip
|
||||
pip install --upgrade setuptools
|
||||
pip install https://github.com/matrix-org/synapse/tarball/master
|
||||
|
||||
This installs synapse, along with the libraries it uses, into a virtual
|
||||
environment under ``~/.synapse``. Feel free to pick a different directory
|
||||
if you prefer.
|
||||
|
||||
In case of problems, please see the _`Troubleshooting` section below.
|
||||
|
||||
Alternatively, Silvio Fricke has contributed a Dockerfile to automate the
|
||||
above in Docker at https://registry.hub.docker.com/u/silviof/docker-matrix/.
|
||||
|
||||
Also, Martin Giess has created an auto-deployment process with vagrant/ansible,
|
||||
tested with VirtualBox/AWS/DigitalOcean - see https://github.com/EMnify/matrix-synapse-auto-deploy
|
||||
for details.
|
||||
|
||||
Configuring synapse
|
||||
-------------------
|
||||
|
||||
Before you can start Synapse, you will need to generate a configuration
|
||||
file. To do this, run (in your virtualenv, as before)::
|
||||
|
||||
cd ~/.synapse
|
||||
python -m synapse.app.homeserver \
|
||||
--server-name my.domain.name \
|
||||
--config-path homeserver.yaml \
|
||||
--generate-config \
|
||||
--report-stats=[yes|no]
|
||||
|
||||
... substituting an appropriate value for ``--server-name``. The server name
|
||||
determines the "domain" part of user-ids for users on your server: these will
|
||||
all be of the format ``@user:my.domain.name``. It also determines how other
|
||||
matrix servers will reach yours for `Federation`_. For a test configuration,
|
||||
set this to the hostname of your server. For a more production-ready setup, you
|
||||
will probably want to specify your domain (``example.com``) rather than a
|
||||
matrix-specific hostname here (in the same way that your email address is
|
||||
probably ``user@example.com`` rather than ``user@email.example.com``) - but
|
||||
doing so may require more advanced setup - see `Setting up
|
||||
Federation`_. Beware that the server name cannot be changed later.
|
||||
|
||||
This command will generate you a config file that you can then customise, but it will
|
||||
also generate a set of keys for you. These keys will allow your Home Server to
|
||||
identify itself to other Home Servers, so don't lose or delete them. It would be
|
||||
wise to back them up somewhere safe. (If, for whatever reason, you do need to
|
||||
change your Home Server's keys, you may find that other Home Servers have the
|
||||
old key cached. If you update the signing key, you should change the name of the
|
||||
key in the ``<server name>.signing.key`` file (the second word) to something
|
||||
different. See `the spec`__ for more information on key management.)
|
||||
|
||||
.. __: `key_management`_
|
||||
|
||||
The default configuration exposes two HTTP ports: 8008 and 8448. Port 8008 is
|
||||
configured without TLS; it should be behind a reverse proxy for TLS/SSL
|
||||
termination on port 443 which in turn should be used for clients. Port 8448
|
||||
is configured to use TLS with a self-signed certificate. If you would like
|
||||
to do initial test with a client without having to setup a reverse proxy,
|
||||
you can temporarly use another certificate. (Note that a self-signed
|
||||
certificate is fine for `Federation`_). You can do so by changing
|
||||
``tls_certificate_path``, ``tls_private_key_path`` and ``tls_dh_params_path``
|
||||
in ``homeserver.yaml``; alternatively, you can use a reverse-proxy, but be sure
|
||||
to read `Using a reverse proxy with Synapse`_ when doing so.
|
||||
|
||||
Apart from port 8448 using TLS, both ports are the same in the default
|
||||
configuration.
|
||||
|
||||
Registering a user
|
||||
------------------
|
||||
|
||||
You will need at least one user on your server in order to use a Matrix
|
||||
client. Users can be registered either `via a Matrix client`__, or via a
|
||||
commandline script.
|
||||
|
||||
.. __: `client-user-reg`_
|
||||
|
||||
To get started, it is easiest to use the command line to register new users::
|
||||
|
||||
$ source ~/.synapse/bin/activate
|
||||
$ synctl start # if not already running
|
||||
$ register_new_matrix_user -c homeserver.yaml https://localhost:8448
|
||||
New user localpart: erikj
|
||||
Password:
|
||||
Confirm password:
|
||||
Make admin [no]:
|
||||
Success!
|
||||
|
||||
This process uses a setting ``registration_shared_secret`` in
|
||||
``homeserver.yaml``, which is shared between Synapse itself and the
|
||||
``register_new_matrix_user`` script. It doesn't matter what it is (a random
|
||||
value is generated by ``--generate-config``), but it should be kept secret, as
|
||||
anyone with knowledge of it can register users on your server even if
|
||||
``enable_registration`` is ``false``.
|
||||
|
||||
Setting up a TURN server
|
||||
------------------------
|
||||
|
||||
For reliable VoIP calls to be routed via this homeserver, you MUST configure
|
||||
a TURN server. See `<docs/turn-howto.rst>`_ for details.
|
||||
|
||||
IPv6
|
||||
----
|
||||
|
||||
As of Synapse 0.19 we finally support IPv6, many thanks to @kyrias and @glyph
|
||||
for providing PR #1696.
|
||||
|
||||
However, for federation to work on hosts with IPv6 DNS servers you **must**
|
||||
be running Twisted 17.1.0 or later - see https://github.com/matrix-org/synapse/issues/1002
|
||||
for details. We can't make Synapse depend on Twisted 17.1 by default
|
||||
yet as it will break most older distributions (see https://github.com/matrix-org/synapse/pull/1909)
|
||||
so if you are using operating system dependencies you'll have to install your
|
||||
own Twisted 17.1 package via pip or backports etc.
|
||||
|
||||
If you're running in a virtualenv then pip should have installed the newest
|
||||
Twisted automatically, but if your virtualenv is old you will need to manually
|
||||
upgrade to a newer Twisted dependency via:
|
||||
|
||||
pip install Twisted>=17.1.0
|
||||
|
||||
|
||||
Running Synapse
|
||||
===============
|
||||
|
||||
To actually run your new homeserver, pick a working directory for Synapse to
|
||||
run (e.g. ``~/.synapse``), and::
|
||||
|
||||
cd ~/.synapse
|
||||
source ./bin/activate
|
||||
synctl start
|
||||
* For details on how to install synapse, see `<INSTALL.md>`_.
|
||||
* For specific details on how to configure Synapse for federation see `docs/federate.md <docs/federate.md>`_
|
||||
|
||||
|
||||
Connecting to Synapse from a client
|
||||
===================================
|
||||
|
||||
The easiest way to try out your new Synapse installation is by connecting to it
|
||||
from a web client. The easiest option is probably the one at
|
||||
http://riot.im/app. You will need to specify a "Custom server" when you log on
|
||||
or register: set this to ``https://domain.tld`` if you setup a reverse proxy
|
||||
following the recommended setup, or ``https://localhost:8448`` - remember to specify the
|
||||
port (``:8448``) if not ``:443`` unless you changed the configuration. (Leave the identity
|
||||
server as the default - see `Identity servers`_.)
|
||||
from a web client.
|
||||
|
||||
If using port 8448 you will run into errors until you accept the self-signed
|
||||
certificate. You can easily do this by going to ``https://localhost:8448``
|
||||
directly with your browser and accept the presented certificate. You can then
|
||||
go back in your web client and proceed further.
|
||||
Unless you are running a test instance of Synapse on your local machine, in
|
||||
general, you will need to enable TLS support before you can successfully
|
||||
connect from a client: see `<INSTALL.md#tls-certificates>`_.
|
||||
|
||||
An easy way to get started is to login or register via Riot at
|
||||
https://riot.im/app/#/login or https://riot.im/app/#/register respectively.
|
||||
You will need to change the server you are logging into from ``matrix.org``
|
||||
and instead specify a Homeserver URL of ``https://<server_name>:8448``
|
||||
(or just ``https://<server_name>`` if you are using a reverse proxy).
|
||||
(Leave the identity server as the default - see `Identity servers`_.)
|
||||
If you prefer to use another client, refer to our
|
||||
`client breakdown <https://matrix.org/docs/projects/clients-matrix>`_.
|
||||
|
||||
If all goes well you should at least be able to log in, create a room, and
|
||||
start sending messages.
|
||||
|
||||
(The homeserver runs a web client by default at https://localhost:8448/, though
|
||||
as of the time of writing it is somewhat outdated and not really recommended -
|
||||
https://github.com/matrix-org/synapse/issues/1527).
|
||||
|
||||
.. _`client-user-reg`:
|
||||
|
||||
Registering a new user from a client
|
||||
@@ -312,9 +120,9 @@ recommended to also set up CAPTCHA - see `<docs/CAPTCHA_SETUP.rst>`_.)
|
||||
Once ``enable_registration`` is set to ``true``, it is possible to register a
|
||||
user via `riot.im <https://riot.im/app/#/register>`_ or other Matrix clients.
|
||||
|
||||
Your new user name will be formed partly from the ``server_name`` (see
|
||||
`Configuring synapse`_), and partly from a localpart you specify when you
|
||||
create the account. Your name will take the form of::
|
||||
Your new user name will be formed partly from the ``server_name``, and partly
|
||||
from a localpart you specify when you create the account. Your name will take
|
||||
the form of::
|
||||
|
||||
@localpart:my.domain.name
|
||||
|
||||
@@ -323,12 +131,18 @@ create the account. Your name will take the form of::
|
||||
As when logging in, you will need to specify a "Custom server". Specify your
|
||||
desired ``localpart`` in the 'User name' box.
|
||||
|
||||
ACME setup
|
||||
==========
|
||||
|
||||
For details on having Synapse manage your federation TLS certificates
|
||||
automatically, please see `<docs/ACME.md>`_.
|
||||
|
||||
|
||||
Security Note
|
||||
=============
|
||||
|
||||
Matrix serves raw user generated data in some APIs - specifically the `content
|
||||
repository endpoints <http://matrix.org/docs/spec/client_server/latest.html#get-matrix-media-r0-download-servername-mediaid>`_.
|
||||
repository endpoints <https://matrix.org/docs/spec/client_server/latest.html#get-matrix-media-r0-download-servername-mediaid>`_.
|
||||
|
||||
Whilst we have tried to mitigate against possible XSS attacks (e.g.
|
||||
https://github.com/matrix-org/synapse/pull/1021) we recommend running
|
||||
@@ -337,242 +151,10 @@ content served to web browsers a matrix API from being able to attack webapps ho
|
||||
on the same domain. This is particularly true of sharing a matrix webclient and
|
||||
server on the same domain.
|
||||
|
||||
See https://github.com/vector-im/vector-web/issues/1977 and
|
||||
See https://github.com/vector-im/riot-web/issues/1977 and
|
||||
https://developer.github.com/changes/2014-04-25-user-content-security for more details.
|
||||
|
||||
|
||||
Platform-Specific Instructions
|
||||
==============================
|
||||
|
||||
Debian
|
||||
------
|
||||
|
||||
Matrix provides official Debian packages via apt from http://matrix.org/packages/debian/.
|
||||
Note that these packages do not include a client - choose one from
|
||||
https://matrix.org/docs/projects/try-matrix-now.html (or build your own with one of our SDKs :)
|
||||
|
||||
Fedora
|
||||
------
|
||||
|
||||
Synapse is in the Fedora repositories as ``matrix-synapse``::
|
||||
|
||||
sudo dnf install matrix-synapse
|
||||
|
||||
Oleg Girko provides Fedora RPMs at
|
||||
https://obs.infoserver.lv/project/monitor/matrix-synapse
|
||||
|
||||
ArchLinux
|
||||
---------
|
||||
|
||||
The quickest way to get up and running with ArchLinux is probably with the community package
|
||||
https://www.archlinux.org/packages/community/any/matrix-synapse/, which should pull in most of
|
||||
the necessary dependencies. If the default web client is to be served (enabled by default in
|
||||
the generated config),
|
||||
https://www.archlinux.org/packages/community/any/python2-matrix-angular-sdk/ will also need to
|
||||
be installed.
|
||||
|
||||
Alternatively, to install using pip a few changes may be needed as ArchLinux
|
||||
defaults to python 3, but synapse currently assumes python 2.7 by default:
|
||||
|
||||
pip may be outdated (6.0.7-1 and needs to be upgraded to 6.0.8-1 )::
|
||||
|
||||
sudo pip2.7 install --upgrade pip
|
||||
|
||||
You also may need to explicitly specify python 2.7 again during the install
|
||||
request::
|
||||
|
||||
pip2.7 install https://github.com/matrix-org/synapse/tarball/master
|
||||
|
||||
If you encounter an error with lib bcrypt causing an Wrong ELF Class:
|
||||
ELFCLASS32 (x64 Systems), you may need to reinstall py-bcrypt to correctly
|
||||
compile it under the right architecture. (This should not be needed if
|
||||
installing under virtualenv)::
|
||||
|
||||
sudo pip2.7 uninstall py-bcrypt
|
||||
sudo pip2.7 install py-bcrypt
|
||||
|
||||
During setup of Synapse you need to call python2.7 directly again::
|
||||
|
||||
cd ~/.synapse
|
||||
python2.7 -m synapse.app.homeserver \
|
||||
--server-name machine.my.domain.name \
|
||||
--config-path homeserver.yaml \
|
||||
--generate-config
|
||||
|
||||
...substituting your host and domain name as appropriate.
|
||||
|
||||
FreeBSD
|
||||
-------
|
||||
|
||||
Synapse can be installed via FreeBSD Ports or Packages contributed by Brendan Molloy from:
|
||||
|
||||
- Ports: ``cd /usr/ports/net-im/py-matrix-synapse && make install clean``
|
||||
- Packages: ``pkg install py27-matrix-synapse``
|
||||
|
||||
|
||||
OpenBSD
|
||||
-------
|
||||
|
||||
There is currently no port for OpenBSD. Additionally, OpenBSD's security
|
||||
settings require a slightly more difficult installation process.
|
||||
|
||||
1) Create a new directory in ``/usr/local`` called ``_synapse``. Also, create a
|
||||
new user called ``_synapse`` and set that directory as the new user's home.
|
||||
This is required because, by default, OpenBSD only allows binaries which need
|
||||
write and execute permissions on the same memory space to be run from
|
||||
``/usr/local``.
|
||||
2) ``su`` to the new ``_synapse`` user and change to their home directory.
|
||||
3) Create a new virtualenv: ``virtualenv -p python2.7 ~/.synapse``
|
||||
4) Source the virtualenv configuration located at
|
||||
``/usr/local/_synapse/.synapse/bin/activate``. This is done in ``ksh`` by
|
||||
using the ``.`` command, rather than ``bash``'s ``source``.
|
||||
5) Optionally, use ``pip`` to install ``lxml``, which Synapse needs to parse
|
||||
webpages for their titles.
|
||||
6) Use ``pip`` to install this repository: ``pip install
|
||||
https://github.com/matrix-org/synapse/tarball/master``
|
||||
7) Optionally, change ``_synapse``'s shell to ``/bin/false`` to reduce the
|
||||
chance of a compromised Synapse server being used to take over your box.
|
||||
|
||||
After this, you may proceed with the rest of the install directions.
|
||||
|
||||
NixOS
|
||||
-----
|
||||
|
||||
Robin Lambertz has packaged Synapse for NixOS at:
|
||||
https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/misc/matrix-synapse.nix
|
||||
|
||||
Windows Install
|
||||
---------------
|
||||
Synapse can be installed on Cygwin. It requires the following Cygwin packages:
|
||||
|
||||
- gcc
|
||||
- git
|
||||
- libffi-devel
|
||||
- openssl (and openssl-devel, python-openssl)
|
||||
- python
|
||||
- python-setuptools
|
||||
|
||||
The content repository requires additional packages and will be unable to process
|
||||
uploads without them:
|
||||
|
||||
- libjpeg8
|
||||
- libjpeg8-devel
|
||||
- zlib
|
||||
|
||||
If you choose to install Synapse without these packages, you will need to reinstall
|
||||
``pillow`` for changes to be applied, e.g. ``pip uninstall pillow`` ``pip install
|
||||
pillow --user``
|
||||
|
||||
Troubleshooting:
|
||||
|
||||
- You may need to upgrade ``setuptools`` to get this to work correctly:
|
||||
``pip install setuptools --upgrade``.
|
||||
- You may encounter errors indicating that ``ffi.h`` is missing, even with
|
||||
``libffi-devel`` installed. If you do, copy the ``.h`` files:
|
||||
``cp /usr/lib/libffi-3.0.13/include/*.h /usr/include``
|
||||
- You may need to install libsodium from source in order to install PyNacl. If
|
||||
you do, you may need to create a symlink to ``libsodium.a`` so ``ld`` can find
|
||||
it: ``ln -s /usr/local/lib/libsodium.a /usr/lib/libsodium.a``
|
||||
|
||||
|
||||
Troubleshooting
|
||||
===============
|
||||
|
||||
Troubleshooting Installation
|
||||
----------------------------
|
||||
|
||||
Synapse requires pip 1.7 or later, so if your OS provides too old a version you
|
||||
may need to manually upgrade it::
|
||||
|
||||
sudo pip install --upgrade pip
|
||||
|
||||
Installing may fail with ``Could not find any downloads that satisfy the requirement pymacaroons-pynacl (from matrix-synapse==0.12.0)``.
|
||||
You can fix this by manually upgrading pip and virtualenv::
|
||||
|
||||
sudo pip install --upgrade virtualenv
|
||||
|
||||
You can next rerun ``virtualenv -p python2.7 synapse`` to update the virtual env.
|
||||
|
||||
Installing may fail during installing virtualenv with ``InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.``
|
||||
You can fix this by manually installing ndg-httpsclient::
|
||||
|
||||
pip install --upgrade ndg-httpsclient
|
||||
|
||||
Installing may fail with ``mock requires setuptools>=17.1. Aborting installation``.
|
||||
You can fix this by upgrading setuptools::
|
||||
|
||||
pip install --upgrade setuptools
|
||||
|
||||
If pip crashes mid-installation for reason (e.g. lost terminal), pip may
|
||||
refuse to run until you remove the temporary installation directory it
|
||||
created. To reset the installation::
|
||||
|
||||
rm -rf /tmp/pip_install_matrix
|
||||
|
||||
pip seems to leak *lots* of memory during installation. For instance, a Linux
|
||||
host with 512MB of RAM may run out of memory whilst installing Twisted. If this
|
||||
happens, you will have to individually install the dependencies which are
|
||||
failing, e.g.::
|
||||
|
||||
pip install twisted
|
||||
|
||||
On OS X, if you encounter clang: error: unknown argument: '-mno-fused-madd' you
|
||||
will need to export CFLAGS=-Qunused-arguments.
|
||||
|
||||
Troubleshooting Running
|
||||
-----------------------
|
||||
|
||||
If synapse fails with ``missing "sodium.h"`` crypto errors, you may need
|
||||
to manually upgrade PyNaCL, as synapse uses NaCl (http://nacl.cr.yp.to/) for
|
||||
encryption and digital signatures.
|
||||
Unfortunately PyNACL currently has a few issues
|
||||
(https://github.com/pyca/pynacl/issues/53) and
|
||||
(https://github.com/pyca/pynacl/issues/79) that mean it may not install
|
||||
correctly, causing all tests to fail with errors about missing "sodium.h". To
|
||||
fix try re-installing from PyPI or directly from
|
||||
(https://github.com/pyca/pynacl)::
|
||||
|
||||
# Install from PyPI
|
||||
pip install --user --upgrade --force pynacl
|
||||
|
||||
# Install from github
|
||||
pip install --user https://github.com/pyca/pynacl/tarball/master
|
||||
|
||||
Running out of File Handles
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If synapse runs out of filehandles, it typically fails badly - live-locking
|
||||
at 100% CPU, and/or failing to accept new TCP connections (blocking the
|
||||
connecting client). Matrix currently can legitimately use a lot of file handles,
|
||||
thanks to busy rooms like #matrix:matrix.org containing hundreds of participating
|
||||
servers. The first time a server talks in a room it will try to connect
|
||||
simultaneously to all participating servers, which could exhaust the available
|
||||
file descriptors between DNS queries & HTTPS sockets, especially if DNS is slow
|
||||
to respond. (We need to improve the routing algorithm used to be better than
|
||||
full mesh, but as of June 2017 this hasn't happened yet).
|
||||
|
||||
If you hit this failure mode, we recommend increasing the maximum number of
|
||||
open file handles to be at least 4096 (assuming a default of 1024 or 256).
|
||||
This is typically done by editing ``/etc/security/limits.conf``
|
||||
|
||||
Separately, Synapse may leak file handles if inbound HTTP requests get stuck
|
||||
during processing - e.g. blocked behind a lock or talking to a remote server etc.
|
||||
This is best diagnosed by matching up the 'Received request' and 'Processed request'
|
||||
log lines and looking for any 'Processed request' lines which take more than
|
||||
a few seconds to execute. Please let us know at #matrix-dev:matrix.org if
|
||||
you see this failure mode so we can help debug it, however.
|
||||
|
||||
ArchLinux
|
||||
~~~~~~~~~
|
||||
|
||||
If running `$ synctl start` fails with 'returned non-zero exit status 1',
|
||||
you will need to explicitly call Python2.7 - either running as::
|
||||
|
||||
python2.7 -m synapse.app.homeserver --daemonize -c homeserver.yaml
|
||||
|
||||
...or by editing synctl with the correct python executable.
|
||||
|
||||
|
||||
Upgrading an existing Synapse
|
||||
=============================
|
||||
|
||||
@@ -582,97 +164,19 @@ versions of synapse.
|
||||
|
||||
.. _UPGRADE.rst: UPGRADE.rst
|
||||
|
||||
.. _federation:
|
||||
|
||||
Setting up Federation
|
||||
=====================
|
||||
|
||||
Federation is the process by which users on different servers can participate
|
||||
in the same room. For this to work, those other servers must be able to contact
|
||||
yours to send messages.
|
||||
|
||||
As explained in `Configuring synapse`_, the ``server_name`` in your
|
||||
``homeserver.yaml`` file determines the way that other servers will reach
|
||||
yours. By default, they will treat it as a hostname and try to connect to
|
||||
port 8448. This is easy to set up and will work with the default configuration,
|
||||
provided you set the ``server_name`` to match your machine's public DNS
|
||||
hostname.
|
||||
|
||||
For a more flexible configuration, you can set up a DNS SRV record. This allows
|
||||
you to run your server on a machine that might not have the same name as your
|
||||
domain name. For example, you might want to run your server at
|
||||
``synapse.example.com``, but have your Matrix user-ids look like
|
||||
``@user:example.com``. (A SRV record also allows you to change the port from
|
||||
the default 8448. However, if you are thinking of using a reverse-proxy on the
|
||||
federation port, which is not recommended, be sure to read
|
||||
`Reverse-proxying the federation port`_ first.)
|
||||
|
||||
To use a SRV record, first create your SRV record and publish it in DNS. This
|
||||
should have the format ``_matrix._tcp.<yourdomain.com> <ttl> IN SRV 10 0 <port>
|
||||
<synapse.server.name>``. The DNS record should then look something like::
|
||||
|
||||
$ dig -t srv _matrix._tcp.example.com
|
||||
_matrix._tcp.example.com. 3600 IN SRV 10 0 8448 synapse.example.com.
|
||||
|
||||
You can then configure your homeserver to use ``<yourdomain.com>`` as the domain in
|
||||
its user-ids, by setting ``server_name``::
|
||||
|
||||
python -m synapse.app.homeserver \
|
||||
--server-name <yourdomain.com> \
|
||||
--config-path homeserver.yaml \
|
||||
--generate-config
|
||||
python -m synapse.app.homeserver --config-path homeserver.yaml
|
||||
|
||||
If you've already generated the config file, you need to edit the ``server_name``
|
||||
in your ``homeserver.yaml`` file. If you've already started Synapse and a
|
||||
database has been created, you will have to recreate the database.
|
||||
|
||||
If all goes well, you should be able to `connect to your server with a client`__,
|
||||
and then join a room via federation. (Try ``#matrix-dev:matrix.org`` as a first
|
||||
step. "Matrix HQ"'s sheer size and activity level tends to make even the
|
||||
largest boxes pause for thought.)
|
||||
|
||||
.. __: `Connecting to Synapse from a client`_
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
|
||||
You can use the federation tester to check if your homeserver is all set:
|
||||
``https://matrix.org/federationtester/api/report?server_name=<your_server_name>``
|
||||
If any of the attributes under "checks" is false, federation won't work.
|
||||
|
||||
The typical failure mode with federation is that when you try to join a room,
|
||||
it is rejected with "401: Unauthorized". Generally this means that other
|
||||
servers in the room couldn't access yours. (Joining a room over federation is a
|
||||
complicated dance which requires connections in both directions).
|
||||
|
||||
So, things to check are:
|
||||
|
||||
* If you are trying to use a reverse-proxy, read `Reverse-proxying the
|
||||
federation port`_.
|
||||
* If you are not using a SRV record, check that your ``server_name`` (the part
|
||||
of your user-id after the ``:``) matches your hostname, and that port 8448 on
|
||||
that hostname is reachable from outside your network.
|
||||
* If you *are* using a SRV record, check that it matches your ``server_name``
|
||||
(it should be ``_matrix._tcp.<server_name>``), and that the port and hostname
|
||||
it specifies are reachable from outside your network.
|
||||
|
||||
Running a Demo Federation of Synapses
|
||||
-------------------------------------
|
||||
|
||||
If you want to get up and running quickly with a trio of homeservers in a
|
||||
private federation, there is a script in the ``demo`` directory. This is mainly
|
||||
useful just for development purposes. See `<demo/README>`_.
|
||||
|
||||
|
||||
Using PostgreSQL
|
||||
================
|
||||
|
||||
As of Synapse 0.9, `PostgreSQL <http://www.postgresql.org>`_ is supported as an
|
||||
alternative to the `SQLite <http://sqlite.org/>`_ database that Synapse has
|
||||
traditionally used for convenience and simplicity.
|
||||
Synapse offers two database engines:
|
||||
* `SQLite <https://sqlite.org/>`_
|
||||
* `PostgreSQL <https://www.postgresql.org>`_
|
||||
|
||||
The advantages of Postgres include:
|
||||
By default Synapse uses SQLite in and doing so trades performance for convenience.
|
||||
SQLite is only recommended in Synapse for testing purposes or for servers with
|
||||
light workloads.
|
||||
|
||||
Almost all installations should opt to use PostreSQL. Advantages include:
|
||||
|
||||
* significant performance improvements due to the superior threading and
|
||||
caching model, smarter query optimiser
|
||||
@@ -684,7 +188,6 @@ The advantages of Postgres include:
|
||||
For information on how to install and use PostgreSQL, please see
|
||||
`docs/postgres.rst <docs/postgres.rst>`_.
|
||||
|
||||
|
||||
.. _reverse-proxy:
|
||||
|
||||
Using a reverse proxy with Synapse
|
||||
@@ -692,102 +195,13 @@ Using a reverse proxy with Synapse
|
||||
|
||||
It is recommended to put a reverse proxy such as
|
||||
`nginx <https://nginx.org/en/docs/http/ngx_http_proxy_module.html>`_,
|
||||
`Apache <https://httpd.apache.org/docs/current/mod/mod_proxy_http.html>`_ or
|
||||
`HAProxy <http://www.haproxy.org/>`_ in front of Synapse. One advantage of
|
||||
`Apache <https://httpd.apache.org/docs/current/mod/mod_proxy_http.html>`_,
|
||||
`Caddy <https://caddyserver.com/docs/proxy>`_ or
|
||||
`HAProxy <https://www.haproxy.org/>`_ in front of Synapse. One advantage of
|
||||
doing so is that it means that you can expose the default https port (443) to
|
||||
Matrix clients without needing to run Synapse with root privileges.
|
||||
|
||||
The most important thing to know here is that Matrix clients and other Matrix
|
||||
servers do not necessarily need to connect to your server via the same
|
||||
port. Indeed, clients will use port 443 by default, whereas servers default to
|
||||
port 8448. Where these are different, we refer to the 'client port' and the
|
||||
'federation port'.
|
||||
|
||||
The next most important thing to know is that using a reverse-proxy on the
|
||||
federation port has a number of pitfalls. It is possible, but be sure to read
|
||||
`Reverse-proxying the federation port`_.
|
||||
|
||||
The recommended setup is therefore to configure your reverse-proxy on port 443
|
||||
to port 8008 of synapse for client connections, but to also directly expose port
|
||||
8448 for server-server connections. All the Matrix endpoints begin ``/_matrix``,
|
||||
so an example nginx configuration might look like::
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
listen [::]:443 ssl;
|
||||
server_name matrix.example.com;
|
||||
|
||||
location /_matrix {
|
||||
proxy_pass http://localhost:8008;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
}
|
||||
}
|
||||
|
||||
You will also want to set ``bind_addresses: ['127.0.0.1']`` and ``x_forwarded: true``
|
||||
for port 8008 in ``homeserver.yaml`` to ensure that client IP addresses are
|
||||
recorded correctly.
|
||||
|
||||
Having done so, you can then use ``https://matrix.example.com`` (instead of
|
||||
``https://matrix.example.com:8448``) as the "Custom server" when `Connecting to
|
||||
Synapse from a client`_.
|
||||
|
||||
Reverse-proxying the federation port
|
||||
------------------------------------
|
||||
|
||||
There are two issues to consider before using a reverse-proxy on the federation
|
||||
port:
|
||||
|
||||
* Due to the way SSL certificates are managed in the Matrix federation protocol
|
||||
(see `spec`__), Synapse needs to be configured with the path to the SSL
|
||||
certificate, *even if you do not terminate SSL at Synapse*.
|
||||
|
||||
.. __: `key_management`_
|
||||
|
||||
* Synapse does not currently support SNI on the federation protocol
|
||||
(`bug #1491 <https://github.com/matrix-org/synapse/issues/1491>`_), which
|
||||
means that using name-based virtual hosting is unreliable.
|
||||
|
||||
Furthermore, a number of the normal reasons for using a reverse-proxy do not
|
||||
apply:
|
||||
|
||||
* Other servers will connect on port 8448 by default, so there is no need to
|
||||
listen on port 443 (for federation, at least), which avoids the need for root
|
||||
privileges and virtual hosting.
|
||||
|
||||
* A self-signed SSL certificate is fine for federation, so there is no need to
|
||||
automate renewals. (The certificate generated by ``--generate-config`` is
|
||||
valid for 10 years.)
|
||||
|
||||
If you want to set up a reverse-proxy on the federation port despite these
|
||||
caveats, you will need to do the following:
|
||||
|
||||
* In ``homeserver.yaml``, set ``tls_certificate_path`` to the path to the SSL
|
||||
certificate file used by your reverse-proxy, and set ``no_tls`` to ``True``.
|
||||
(``tls_private_key_path`` will be ignored if ``no_tls`` is ``True``.)
|
||||
|
||||
* In your reverse-proxy configuration:
|
||||
|
||||
* If there are other virtual hosts on the same port, make sure that the
|
||||
*default* one uses the certificate configured above.
|
||||
|
||||
* Forward ``/_matrix`` to Synapse.
|
||||
|
||||
* If your reverse-proxy is not listening on port 8448, publish a SRV record to
|
||||
tell other servers how to find you. See `Setting up Federation`_.
|
||||
|
||||
When updating the SSL certificate, just update the file pointed to by
|
||||
``tls_certificate_path``: there is no need to restart synapse. (You may like to
|
||||
use a symbolic link to help make this process atomic.)
|
||||
|
||||
The most common mistake when setting up federation is not to tell Synapse about
|
||||
your SSL certificate. To check it, you can visit
|
||||
``https://matrix.org/federationtester/api/report?server_name=<your_server_name>``.
|
||||
Unfortunately, there is no UI for this yet, but, you should see
|
||||
``"MatchingTLSFingerprint": true``. If not, check that
|
||||
``Certificates[0].SHA256Fingerprint`` (the fingerprint of the certificate
|
||||
presented by your reverse-proxy) matches ``Keys.tls_fingerprints[0].sha256``
|
||||
(the fingerprint of the certificate Synapse is using).
|
||||
|
||||
For information on configuring one, see `<docs/reverse_proxy.rst>`_.
|
||||
|
||||
Identity Servers
|
||||
================
|
||||
@@ -819,36 +233,17 @@ an email address with your account, or send an invite to another user via their
|
||||
email address.
|
||||
|
||||
|
||||
URL Previews
|
||||
============
|
||||
|
||||
Synapse 0.15.0 introduces a new API for previewing URLs at
|
||||
``/_matrix/media/r0/preview_url``. This is disabled by default. To turn it on
|
||||
you must enable the ``url_preview_enabled: True`` config parameter and
|
||||
explicitly specify the IP ranges that Synapse is not allowed to spider for
|
||||
previewing in the ``url_preview_ip_range_blacklist`` configuration parameter.
|
||||
This is critical from a security perspective to stop arbitrary Matrix users
|
||||
spidering 'internal' URLs on your network. At the very least we recommend that
|
||||
your loopback and RFC1918 IP addresses are blacklisted.
|
||||
|
||||
This also requires the optional lxml and netaddr python dependencies to be
|
||||
installed. This in turn requires the libxml2 library to be available - on
|
||||
Debian/Ubuntu this means ``apt-get install libxml2-dev``, or equivalent for
|
||||
your OS.
|
||||
|
||||
|
||||
Password reset
|
||||
==============
|
||||
|
||||
If a user has registered an email address to their account using an identity
|
||||
server, they can request a password-reset token via clients such as Vector.
|
||||
server, they can request a password-reset token via clients such as Riot.
|
||||
|
||||
A manual password reset can be done via direct database access as follows.
|
||||
|
||||
First calculate the hash of the new password::
|
||||
|
||||
$ source ~/.synapse/bin/activate
|
||||
$ ./scripts/hash_password
|
||||
$ ~/synapse/env/bin/hash_password
|
||||
Password:
|
||||
Confirm password:
|
||||
$2a$12$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
@@ -864,7 +259,7 @@ Synapse Development
|
||||
|
||||
Before setting up a development environment for synapse, make sure you have the
|
||||
system dependencies (such as the python header files) installed - see
|
||||
`Installing from source`_.
|
||||
`Installing from source <INSTALL.md#installing-from-source>`_.
|
||||
|
||||
To check out a synapse for development, clone the git repo into a working
|
||||
directory of your choice::
|
||||
@@ -875,10 +270,9 @@ directory of your choice::
|
||||
Synapse has a number of external dependencies, that are easiest
|
||||
to install using pip and a virtualenv::
|
||||
|
||||
virtualenv -p python2.7 env
|
||||
virtualenv -p python3 env
|
||||
source env/bin/activate
|
||||
python synapse/python_dependencies.py | xargs pip install
|
||||
pip install lxml mock
|
||||
python -m pip install -e .[all]
|
||||
|
||||
This will run a process of downloading and installing all the needed
|
||||
dependencies into a virtual env.
|
||||
@@ -886,7 +280,7 @@ dependencies into a virtual env.
|
||||
Once this is done, you may wish to run Synapse's unit tests, to
|
||||
check that everything is installed as it should be::
|
||||
|
||||
PYTHONPATH="." trial tests
|
||||
python -m twisted.trial tests
|
||||
|
||||
This should end with a 'PASSED' result::
|
||||
|
||||
@@ -919,18 +313,53 @@ Building internal API documentation::
|
||||
|
||||
python setup.py build_sphinx
|
||||
|
||||
Troubleshooting
|
||||
===============
|
||||
|
||||
Running out of File Handles
|
||||
---------------------------
|
||||
|
||||
If synapse runs out of file handles, it typically fails badly - live-locking
|
||||
at 100% CPU, and/or failing to accept new TCP connections (blocking the
|
||||
connecting client). Matrix currently can legitimately use a lot of file handles,
|
||||
thanks to busy rooms like #matrix:matrix.org containing hundreds of participating
|
||||
servers. The first time a server talks in a room it will try to connect
|
||||
simultaneously to all participating servers, which could exhaust the available
|
||||
file descriptors between DNS queries & HTTPS sockets, especially if DNS is slow
|
||||
to respond. (We need to improve the routing algorithm used to be better than
|
||||
full mesh, but as of March 2019 this hasn't happened yet).
|
||||
|
||||
If you hit this failure mode, we recommend increasing the maximum number of
|
||||
open file handles to be at least 4096 (assuming a default of 1024 or 256).
|
||||
This is typically done by editing ``/etc/security/limits.conf``
|
||||
|
||||
Separately, Synapse may leak file handles if inbound HTTP requests get stuck
|
||||
during processing - e.g. blocked behind a lock or talking to a remote server etc.
|
||||
This is best diagnosed by matching up the 'Received request' and 'Processed request'
|
||||
log lines and looking for any 'Processed request' lines which take more than
|
||||
a few seconds to execute. Please let us know at #synapse:matrix.org if
|
||||
you see this failure mode so we can help debug it, however.
|
||||
|
||||
Help!! Synapse eats all my RAM!
|
||||
===============================
|
||||
-------------------------------
|
||||
|
||||
Synapse's architecture is quite RAM hungry currently - we deliberately
|
||||
cache a lot of recent room data and metadata in RAM in order to speed up
|
||||
common requests. We'll improve this in future, but for now the easiest
|
||||
common requests. We'll improve this in the future, but for now the easiest
|
||||
way to either reduce the RAM usage (at the risk of slowing things down)
|
||||
is to set the almost-undocumented ``SYNAPSE_CACHE_FACTOR`` environment
|
||||
variable. The default is 0.5, which can be decreased to reduce RAM usage
|
||||
variable. The default is 0.5, which can be decreased to reduce RAM usage
|
||||
in memory constrained enviroments, or increased if performance starts to
|
||||
degrade.
|
||||
|
||||
Using `libjemalloc <http://jemalloc.net/>`_ can also yield a significant
|
||||
improvement in overall amount, and especially in terms of giving back RAM
|
||||
to the OS. To use it, the library must simply be put in the LD_PRELOAD
|
||||
environment variable when launching Synapse. On Debian, this can be done
|
||||
by installing the ``libjemalloc1`` package and adding this line to
|
||||
``/etc/default/matrix-synapse``::
|
||||
|
||||
.. _`key_management`: https://matrix.org/docs/spec/server_server/unstable.html#retrieving-server-keys
|
||||
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.1
|
||||
|
||||
This can make a significant difference on Python 2.7 - it's unclear how
|
||||
much of an improvement it provides on Python 3.x.
|
||||
|
||||
122
UPGRADE.rst
122
UPGRADE.rst
@@ -5,20 +5,20 @@ Before upgrading check if any special steps are required to upgrade from the
|
||||
what you currently have installed to current version of synapse. The extra
|
||||
instructions that may be required are listed later in this document.
|
||||
|
||||
1. If synapse was installed in a virtualenv then active that virtualenv before
|
||||
upgrading. If synapse is installed in a virtualenv in ``~/.synapse/`` then
|
||||
1. If synapse was installed in a virtualenv then activate that virtualenv before
|
||||
upgrading. If synapse is installed in a virtualenv in ``~/synapse/env`` then
|
||||
run:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
source ~/.synapse/bin/activate
|
||||
source ~/synapse/env/bin/activate
|
||||
|
||||
2. If synapse was installed using pip then upgrade to the latest version by
|
||||
running:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
pip install --upgrade --process-dependency-links https://github.com/matrix-org/synapse/tarball/master
|
||||
pip install --upgrade matrix-synapse[all]
|
||||
|
||||
# restart synapse
|
||||
synctl restart
|
||||
@@ -31,14 +31,15 @@ instructions that may be required are listed later in this document.
|
||||
|
||||
# Pull the latest version of the master branch.
|
||||
git pull
|
||||
# Update the versions of synapse's python dependencies.
|
||||
python synapse/python_dependencies.py | xargs pip install --upgrade
|
||||
|
||||
# Update synapse and its python dependencies.
|
||||
pip install --upgrade .[all]
|
||||
|
||||
# restart synapse
|
||||
./synctl restart
|
||||
|
||||
|
||||
To check whether your update was sucessful, you can check the Server header
|
||||
To check whether your update was successful, you can check the Server header
|
||||
returned by the Client-Server API:
|
||||
|
||||
.. code:: bash
|
||||
@@ -48,11 +49,114 @@ returned by the Client-Server API:
|
||||
# configured on port 443.
|
||||
curl -kv https://<host.name>/_matrix/client/versions 2>&1 | grep "Server:"
|
||||
|
||||
Upgrading to $NEXT_VERSION
|
||||
Upgrading to v0.99.0
|
||||
====================
|
||||
|
||||
Please be aware that, before Synapse v1.0 is released around March 2019, you
|
||||
will need to replace any self-signed certificates with those verified by a
|
||||
root CA. Information on how to do so can be found at `the ACME docs
|
||||
<docs/ACME.md>`_.
|
||||
|
||||
For more information on configuring TLS certificates see the `FAQ <docs/MSC1711_certificates_FAQ.md>`_.
|
||||
|
||||
Upgrading to v0.34.0
|
||||
====================
|
||||
|
||||
1. This release is the first to fully support Python 3. Synapse will now run on
|
||||
Python versions 3.5, or 3.6 (as well as 2.7). We recommend switching to
|
||||
Python 3, as it has been shown to give performance improvements.
|
||||
|
||||
For users who have installed Synapse into a virtualenv, we recommend doing
|
||||
this by creating a new virtualenv. For example::
|
||||
|
||||
virtualenv -p python3 ~/synapse/env3
|
||||
source ~/synapse/env3/bin/activate
|
||||
pip install matrix-synapse
|
||||
|
||||
You can then start synapse as normal, having activated the new virtualenv::
|
||||
|
||||
cd ~/synapse
|
||||
source env3/bin/activate
|
||||
synctl start
|
||||
|
||||
Users who have installed from distribution packages should see the relevant
|
||||
package documentation. See below for notes on Debian packages.
|
||||
|
||||
* When upgrading to Python 3, you **must** make sure that your log files are
|
||||
configured as UTF-8, by adding ``encoding: utf8`` to the
|
||||
``RotatingFileHandler`` configuration (if you have one) in your
|
||||
``<server>.log.config`` file. For example, if your ``log.config`` file
|
||||
contains::
|
||||
|
||||
handlers:
|
||||
file:
|
||||
class: logging.handlers.RotatingFileHandler
|
||||
formatter: precise
|
||||
filename: homeserver.log
|
||||
maxBytes: 104857600
|
||||
backupCount: 10
|
||||
filters: [context]
|
||||
console:
|
||||
class: logging.StreamHandler
|
||||
formatter: precise
|
||||
filters: [context]
|
||||
|
||||
Then you should update this to be::
|
||||
|
||||
handlers:
|
||||
file:
|
||||
class: logging.handlers.RotatingFileHandler
|
||||
formatter: precise
|
||||
filename: homeserver.log
|
||||
maxBytes: 104857600
|
||||
backupCount: 10
|
||||
filters: [context]
|
||||
encoding: utf8
|
||||
console:
|
||||
class: logging.StreamHandler
|
||||
formatter: precise
|
||||
filters: [context]
|
||||
|
||||
There is no need to revert this change if downgrading to Python 2.
|
||||
|
||||
We are also making available Debian packages which will run Synapse on
|
||||
Python 3. You can switch to these packages with ``apt-get install
|
||||
matrix-synapse-py3``, however, please read `debian/NEWS
|
||||
<https://github.com/matrix-org/synapse/blob/release-v0.34.0/debian/NEWS>`_
|
||||
before doing so. The existing ``matrix-synapse`` packages will continue to
|
||||
use Python 2 for the time being.
|
||||
|
||||
2. This release removes the ``riot.im`` from the default list of trusted
|
||||
identity servers.
|
||||
|
||||
If ``riot.im`` is in your homeserver's list of
|
||||
``trusted_third_party_id_servers``, you should remove it. It was added in
|
||||
case a hypothetical future identity server was put there. If you don't
|
||||
remove it, users may be unable to deactivate their accounts.
|
||||
|
||||
3. This release no longer installs the (unmaintained) Matrix Console web client
|
||||
as part of the default installation. It is possible to re-enable it by
|
||||
installing it separately and setting the ``web_client_location`` config
|
||||
option, but please consider switching to another client.
|
||||
|
||||
Upgrading to v0.33.7
|
||||
====================
|
||||
|
||||
This release removes the example email notification templates from
|
||||
``res/templates`` (they are now internal to the python package). This should
|
||||
only affect you if you (a) deploy your Synapse instance from a git checkout or
|
||||
a github snapshot URL, and (b) have email notifications enabled.
|
||||
|
||||
If you have email notifications enabled, you should ensure that
|
||||
``email.template_dir`` is either configured to point at a directory where you
|
||||
have installed customised templates, or leave it unset to use the default
|
||||
templates.
|
||||
|
||||
Upgrading to v0.27.3
|
||||
====================
|
||||
|
||||
This release expands the anonymous usage stats sent if the opt-in
|
||||
``report_stats`` configuration is set to ``true``. We now capture RSS memory
|
||||
``report_stats`` configuration is set to ``true``. We now capture RSS memory
|
||||
and cpu use at a very coarse level. This requires administrators to install
|
||||
the optional ``psutil`` python module.
|
||||
|
||||
|
||||
1
changelog.d/.gitignore
vendored
Normal file
1
changelog.d/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!.gitignore
|
||||
1
changelog.d/2090.bugfix
Normal file
1
changelog.d/2090.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix a bug where media with spaces in the name would get a corrupted name.
|
||||
1
changelog.d/4537.feature
Normal file
1
changelog.d/4537.feature
Normal file
@@ -0,0 +1 @@
|
||||
The user directory has been rewritten to make it faster, with less chance of falling behind on a large server.
|
||||
1
changelog.d/4662.misc
Normal file
1
changelog.d/4662.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add a systemd setup that supports synapse workers. Contributed by Luca Corbatto.
|
||||
1
changelog.d/4699.bugfix
Normal file
1
changelog.d/4699.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix attempting to paginate in rooms where server cannot see any events, to avoid unnecessarily pulling in lots of redacted events.
|
||||
1
changelog.d/4735.feature
Normal file
1
changelog.d/4735.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add configurable rate limiting to the /register endpoint.
|
||||
1
changelog.d/4740.bugfix
Normal file
1
changelog.d/4740.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
'event_id' is now a required parameter in federated state requests, as per the matrix spec.
|
||||
1
changelog.d/4749.bugfix
Normal file
1
changelog.d/4749.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix tightloop over connecting to replication server.
|
||||
1
changelog.d/4752.misc
Normal file
1
changelog.d/4752.misc
Normal file
@@ -0,0 +1 @@
|
||||
Change from TravisCI to Buildkite for CI.
|
||||
1
changelog.d/4757.feature
Normal file
1
changelog.d/4757.feature
Normal file
@@ -0,0 +1 @@
|
||||
Move server key queries to federation reader.
|
||||
1
changelog.d/4757.misc
Normal file
1
changelog.d/4757.misc
Normal file
@@ -0,0 +1 @@
|
||||
When presence is disabled don't send over replication.
|
||||
1
changelog.d/4759.feature
Normal file
1
changelog.d/4759.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add support for /account/3pid REST endpoint to client_reader worker.
|
||||
1
changelog.d/4763.bugfix
Normal file
1
changelog.d/4763.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix parsing of Content-Disposition headers on remote media requests and URL previews.
|
||||
1
changelog.d/4765.misc
Normal file
1
changelog.d/4765.misc
Normal file
@@ -0,0 +1 @@
|
||||
Minor docstring fixes for MatrixFederationAgent.
|
||||
1
changelog.d/4770.misc
Normal file
1
changelog.d/4770.misc
Normal file
@@ -0,0 +1 @@
|
||||
Optimise EDU transmission for the federation_sender worker.
|
||||
1
changelog.d/4771.misc
Normal file
1
changelog.d/4771.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update test_typing to use HomeserverTestCase.
|
||||
1
changelog.d/4772.feature
Normal file
1
changelog.d/4772.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add an endpoint to the admin API for querying the server version. Contributed by Joseph Weston.
|
||||
1
changelog.d/4776.bugfix
Normal file
1
changelog.d/4776.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix incorrect log about not persisting duplicate state event.
|
||||
1
changelog.d/4779.misc
Normal file
1
changelog.d/4779.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update URLs for riot.im icons and logos in the default notification templates.
|
||||
1
changelog.d/4790.bugfix
Normal file
1
changelog.d/4790.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix v4v6 option in HAProxy example config. Contributed by Flakebi.
|
||||
1
changelog.d/4791.feature
Normal file
1
changelog.d/4791.feature
Normal file
@@ -0,0 +1 @@
|
||||
Include a default configuration file in the 'docs' directory.
|
||||
1
changelog.d/4792.bugfix
Normal file
1
changelog.d/4792.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Handle batch updates in worker replication protocol.
|
||||
1
changelog.d/4793.feature
Normal file
1
changelog.d/4793.feature
Normal file
@@ -0,0 +1 @@
|
||||
Synapse is now permissive about trailing slashes on some of its federation endpoints, allowing zero or more to be present.
|
||||
1
changelog.d/4794.misc
Normal file
1
changelog.d/4794.misc
Normal file
@@ -0,0 +1 @@
|
||||
Removed unnecessary $ from some federation endpoint path regexes.
|
||||
1
changelog.d/4795.misc
Normal file
1
changelog.d/4795.misc
Normal file
@@ -0,0 +1 @@
|
||||
Remove link to deleted title in README.
|
||||
1
changelog.d/4796.feature
Normal file
1
changelog.d/4796.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add support for /keys/query and /keys/changes REST endpoints to client_reader worker.
|
||||
1
changelog.d/4797.misc
Normal file
1
changelog.d/4797.misc
Normal file
@@ -0,0 +1 @@
|
||||
Clean up read-receipt handling.
|
||||
1
changelog.d/4798.misc
Normal file
1
changelog.d/4798.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add some debug about processing read receipts.
|
||||
1
changelog.d/4799.misc
Normal file
1
changelog.d/4799.misc
Normal file
@@ -0,0 +1 @@
|
||||
Clean up some replication code.
|
||||
1
changelog.d/4801.feature
Normal file
1
changelog.d/4801.feature
Normal file
@@ -0,0 +1 @@
|
||||
Include a default configuration file in the 'docs' directory.
|
||||
1
changelog.d/4804.feature
Normal file
1
changelog.d/4804.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add configurable rate limiting to the /register endpoint.
|
||||
1
changelog.d/4814.feature
Normal file
1
changelog.d/4814.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add checks to incoming events over federation for events evading auth (aka "soft fail").
|
||||
1
changelog.d/4815.misc
Normal file
1
changelog.d/4815.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add some docstrings.
|
||||
1
changelog.d/4816.misc
Normal file
1
changelog.d/4816.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add debug logger to try and track down #4422.
|
||||
1
changelog.d/4817.misc
Normal file
1
changelog.d/4817.misc
Normal file
@@ -0,0 +1 @@
|
||||
Make shutdown API send explanation message to room after users have been forced joined.
|
||||
1
changelog.d/4818.bugfix
Normal file
1
changelog.d/4818.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix bug where we didn't correctly throttle sending of USER_IP commands over replication.
|
||||
1
changelog.d/4820.misc
Normal file
1
changelog.d/4820.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update example_log_config.yaml.
|
||||
1
changelog.d/4821.feature
Normal file
1
changelog.d/4821.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add configurable rate limiting to the /login endpoint.
|
||||
1
changelog.d/4824.misc
Normal file
1
changelog.d/4824.misc
Normal file
@@ -0,0 +1 @@
|
||||
Document the `generate` option for the docker image.
|
||||
1
changelog.d/4825.misc
Normal file
1
changelog.d/4825.misc
Normal file
@@ -0,0 +1 @@
|
||||
Fix check-newsfragment for debian-only changes.
|
||||
1
changelog.d/4828.misc
Normal file
1
changelog.d/4828.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add some debug logging for device list updates to help with #4828.
|
||||
1
changelog.d/4829.bugfix
Normal file
1
changelog.d/4829.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix potential race in handling missing updates in device list updates.
|
||||
1
changelog.d/4832.misc
Normal file
1
changelog.d/4832.misc
Normal file
@@ -0,0 +1 @@
|
||||
Improve federation documentation, specifically .well-known support. Many thanks to @vaab.
|
||||
1
changelog.d/4837.bugfix
Normal file
1
changelog.d/4837.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix bug where synapse expected an un-specced `prev_state` field on state events.
|
||||
1
changelog.d/4838.bugfix
Normal file
1
changelog.d/4838.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Transfer a user's notification settings (push rules) on room upgrade.
|
||||
1
changelog.d/4839.misc
Normal file
1
changelog.d/4839.misc
Normal file
@@ -0,0 +1 @@
|
||||
Disable captcha registration by default in unit tests.
|
||||
1
changelog.d/4840.feature
Normal file
1
changelog.d/4840.feature
Normal file
@@ -0,0 +1 @@
|
||||
Remove trailing slashes from certain outbound federation requests. Retry if receiving a 404. Context: #3622.
|
||||
1
changelog.d/4843.misc
Normal file
1
changelog.d/4843.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add stuff back to the .gitignore.
|
||||
1
changelog.d/4844.misc
Normal file
1
changelog.d/4844.misc
Normal file
@@ -0,0 +1 @@
|
||||
Clarify what registration_shared_secret allows for.
|
||||
1
changelog.d/4846.feature
Normal file
1
changelog.d/4846.feature
Normal file
@@ -0,0 +1 @@
|
||||
The user directory has been rewritten to make it faster, with less chance of falling behind on a large server.
|
||||
1
changelog.d/4847.misc
Normal file
1
changelog.d/4847.misc
Normal file
@@ -0,0 +1 @@
|
||||
Correctly log expected errors when fetching server keys.
|
||||
1
changelog.d/4849.misc
Normal file
1
changelog.d/4849.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update install docs to explicitly state a full-chain (not just the top-level) TLS certificate must be provided to Synapse. This caused some people's Synapse ports to appear correct in a browser but still (rightfully so) upset the federation tester.
|
||||
1
changelog.d/4852.misc
Normal file
1
changelog.d/4852.misc
Normal file
@@ -0,0 +1 @@
|
||||
Move client read-receipt processing to federation sender worker.
|
||||
1
changelog.d/4853.feature
Normal file
1
changelog.d/4853.feature
Normal file
@@ -0,0 +1 @@
|
||||
Allow passing --daemonize flags to workers in the same way as with master.
|
||||
1
changelog.d/4855.misc
Normal file
1
changelog.d/4855.misc
Normal file
@@ -0,0 +1 @@
|
||||
Refactor federation TransactionQueue.
|
||||
1
changelog.d/4863.misc
Normal file
1
changelog.d/4863.misc
Normal file
@@ -0,0 +1 @@
|
||||
Comment out most options in the generated config.
|
||||
1
changelog.d/4864.feature
Normal file
1
changelog.d/4864.feature
Normal file
@@ -0,0 +1 @@
|
||||
The user directory has been rewritten to make it faster, with less chance of falling behind on a large server.
|
||||
1
changelog.d/4865.feature
Normal file
1
changelog.d/4865.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add configurable rate limiting to the /login endpoint.
|
||||
1
changelog.d/4869.misc
Normal file
1
changelog.d/4869.misc
Normal file
@@ -0,0 +1 @@
|
||||
Fix yaml library warnings by using safe_load.
|
||||
1
changelog.d/4870.misc
Normal file
1
changelog.d/4870.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update Apache setup to remove location syntax. Thanks to @cwmke!
|
||||
1
changelog.d/4879.misc
Normal file
1
changelog.d/4879.misc
Normal file
@@ -0,0 +1 @@
|
||||
Reinstate test case that runs unit tests against oldest supported dependencies.
|
||||
1
changelog.d/4881.misc
Normal file
1
changelog.d/4881.misc
Normal file
@@ -0,0 +1 @@
|
||||
Update link to federation docs.
|
||||
1
changelog.d/4886.bugfix
Normal file
1
changelog.d/4886.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
fix test_auto_create_auto_join_where_no_consent.
|
||||
1
changelog.d/4886.misc
Normal file
1
changelog.d/4886.misc
Normal file
@@ -0,0 +1 @@
|
||||
fix test_auto_create_auto_join_where_no_consent.
|
||||
1
changelog.d/4887.feature
Normal file
1
changelog.d/4887.feature
Normal file
@@ -0,0 +1 @@
|
||||
The user directory has been rewritten to make it faster, with less chance of falling behind on a large server.
|
||||
2
changelog.d/4888.bugfix
Normal file
2
changelog.d/4888.bugfix
Normal file
@@ -0,0 +1,2 @@
|
||||
Fix a bug where hs_disabled_message was sometimes not correctly enforced.
|
||||
|
||||
1
changelog.d/4889.misc
Normal file
1
changelog.d/4889.misc
Normal file
@@ -0,0 +1 @@
|
||||
Use a regular HomeServerConfig object for unit tests rater than a Mock.
|
||||
1
changelog.d/4890.feature
Normal file
1
changelog.d/4890.feature
Normal file
@@ -0,0 +1 @@
|
||||
Batch up outgoing read-receipts to reduce federation traffic.
|
||||
1
changelog.d/4895.feature
Normal file
1
changelog.d/4895.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add option to disable searching the user directory.
|
||||
1
changelog.d/4895.misc
Normal file
1
changelog.d/4895.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add some notes about tuning postgres for larger deployments.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user