Compare commits
2909 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
03119c857b | ||
|
2ef1ce1182 | ||
|
eb2425b53b | ||
|
79d3a8553f | ||
|
7709556673 | ||
|
f0ae6b4cc5 | ||
|
9e3a6d6784 | ||
|
8bf3e750ab | ||
|
18241ccbe1 | ||
|
0dccb398bd | ||
|
386365090c | ||
|
d9500c8a3b | ||
|
f7c1668bf6 | ||
|
051b649628 | ||
|
f5f165a5eb | ||
|
f89ff65ec7 | ||
|
48b940d5c6 | ||
|
6ae70a92c9 | ||
|
fa5c867e0e | ||
|
641abe2db7 | ||
|
4f7f6b3922 | ||
|
8b14726f5b | ||
|
9090b63831 | ||
|
ab27dccba5 | ||
|
56eb5c3f34 | ||
|
56333cca88 | ||
|
1aaec701bb | ||
|
cd252b794e | ||
|
b6003afcdb | ||
|
f5ee2d469b | ||
|
37b043d447 | ||
|
36579bac88 | ||
|
4476a45444 | ||
|
58a4633707 | ||
|
494969d394 | ||
|
c1a41181c5 | ||
|
6e309f5e45 | ||
|
e5f18ace2a | ||
|
11697d6894 | ||
|
675b8fea53 | ||
|
4c16ddf588 | ||
|
5ba4c36f95 | ||
|
ccd53e983c | ||
|
ff44b2e92d | ||
|
188aa3ea50 | ||
|
bd077ad7d9 | ||
|
a29d409e20 | ||
|
5acd5315f2 | ||
|
b79ab15859 | ||
|
77406d3a09 | ||
|
510c9049c7 | ||
|
ed902581d3 | ||
|
64db9ed5f6 | ||
|
1085ef3836 | ||
|
86a9de6753 | ||
|
83c982b458 | ||
|
9aba44ea79 | ||
|
6dcf96271e | ||
|
4ca60c665e | ||
|
b170627ceb | ||
|
a1b065700a | ||
|
8de048fcdb | ||
|
cfa9b6e13a | ||
|
e26d5ca923 | ||
|
dd9d00d293 | ||
|
89a52d6280 | ||
|
e6520c0270 | ||
|
913a38111f | ||
|
4847149b6e | ||
|
d7573fe584 | ||
|
cb74c0cfe4 | ||
|
b725924f0a | ||
|
81cefc1913 | ||
|
a07cfee644 | ||
|
13cf92df27 | ||
|
61e6275781 | ||
|
78d772af86 | ||
|
e9e475a29d | ||
|
20d1be18af | ||
|
b0664a5e6c | ||
|
a38dbd9c8a | ||
|
f6a8d835d3 | ||
|
4746feaa1c | ||
|
3d4e788ea9 | ||
|
bd40574476 | ||
|
1674e2f34c | ||
|
3b2e783c1f | ||
|
46a9a23749 | ||
|
4e929b2d17 | ||
|
ef44c62d17 | ||
|
219aac7800 | ||
|
c110fa62ac | ||
|
7a6eaad445 | ||
|
460e380d38 | ||
|
778b37790b | ||
|
b66ec3bf95 | ||
|
51d760960c | ||
|
9110db41c5 | ||
|
45feb439bd | ||
|
44829d8216 | ||
|
49092945ab | ||
|
c82a2358bd | ||
|
ecf06d7e82 | ||
|
42fe05dea1 | ||
|
b4f8e87358 | ||
|
e72db6d9dd | ||
|
036dd98abb | ||
|
7901f9f63e | ||
|
0963b6fd22 | ||
|
379cdfaac5 | ||
|
38b9af76a2 | ||
|
e4db0f28d2 | ||
|
e7d741ece3 | ||
|
ecd36c1ede | ||
|
64f2ada5d4 | ||
|
a3c4138197 | ||
|
51b7a22ea7 | ||
|
68218d97c8 | ||
|
5131012505 | ||
|
473a69ab18 | ||
|
fce8464077 | ||
|
47bdb9b33b | ||
|
e852872846 | ||
|
41a01bec23 | ||
|
4072b68686 | ||
|
6f5f434caa | ||
|
76198c63b6 | ||
|
7150f2e9d3 | ||
|
3a6ace4874 | ||
|
22a441e374 | ||
|
a40167cf4d | ||
|
18513a978a | ||
|
c33931b613 | ||
|
5cc716688a | ||
|
f0a1b1a152 | ||
|
2e8a492e88 | ||
|
7cb49eaa3a | ||
|
4d8c0d9959 | ||
|
f8f0572ee0 | ||
|
e668180044 | ||
|
8fa924e372 | ||
|
3e46f12340 | ||
|
3084fe4959 | ||
|
b8535ad4df | ||
|
5f3bee345d | ||
|
755aad534a | ||
|
c71aa468b5 | ||
|
d8bc64bb09 | ||
|
90f12f2e5a | ||
|
d3a62d2637 | ||
|
4bc625166e | ||
|
61ed133fea | ||
|
c1e77b56a9 | ||
|
f69d7cb43b | ||
|
a7171af0a3 | ||
|
a4fd4ad1d5 | ||
|
02856073f7 | ||
|
be9bab171d | ||
|
7124881273 | ||
|
66105929e0 | ||
|
cbb69d41f6 | ||
|
bb26cdda24 | ||
|
78936461d7 | ||
|
bc6751ecce | ||
|
51869f2a8c | ||
|
cba2897108 | ||
|
9b8a448477 | ||
|
a71af98401 | ||
|
a7c50c7aba | ||
|
c770b503c0 | ||
|
ffdf0f2ff6 | ||
|
eb3262b941 | ||
|
9dbae6e8a1 | ||
|
1122579216 | ||
|
478ca39e5e | ||
|
f7765acf9d | ||
|
ecdac9017e | ||
|
ba8ec4eed6 | ||
|
6ef3874b2e | ||
|
e20700fe8f | ||
|
cf36d184f4 | ||
|
718802a05d | ||
|
411c9ecb4b | ||
|
cbe8743e47 | ||
|
3ebc0ad4d3 | ||
|
235c14c79d | ||
|
2ef9d0e101 | ||
|
76f3d5d16b | ||
|
1167c6dbf8 | ||
|
298c81c00f | ||
|
cf32f7da5c | ||
|
2bb393684b | ||
|
67f7ffa792 | ||
|
95c8232109 | ||
|
38e0133e1b | ||
|
9b6223f5e2 | ||
|
3f35d43222 | ||
|
c156a83e7d | ||
|
258dcb849f | ||
|
4e4f1b0dcb | ||
|
26f21fd5a0 | ||
|
9da81a1639 | ||
|
d75d2a9f99 | ||
|
f7bf36d8fc | ||
|
33f56811e3 | ||
|
7e5c433dfc | ||
|
c1efe0aa1d | ||
|
ac1093256c | ||
|
af40824998 | ||
|
77dd9e7d27 | ||
|
5da5c65db8 | ||
|
0be9a1e321 | ||
|
8e4cf6282b | ||
|
04fef7b888 | ||
|
1afc70c990 | ||
|
f4bd51da1e | ||
|
ffb2b8ef8c | ||
|
3ed194b67d | ||
|
2cff744cdf | ||
|
e14c20582f | ||
|
47eda1e5fb | ||
|
97dcfb0f50 | ||
|
79bc3d5845 | ||
|
106efba800 | ||
|
bd8d8ad894 | ||
|
7e07e61a30 | ||
|
4a974c6db1 | ||
|
a3c0a20373 | ||
|
8cd2828e91 | ||
|
3d881eed27 | ||
|
7650506b39 | ||
|
e6db3427b7 | ||
|
daefbd66a6 | ||
|
b1daa71da5 | ||
|
1cc44cba81 | ||
|
4ec9d8b4d9 | ||
|
d966878e87 | ||
|
2fc2725076 | ||
|
69f13e7bca | ||
|
613e7c7521 | ||
|
17cecd75ca | ||
|
8cc65cde27 | ||
|
b7f6ddeaf1 | ||
|
143fb54ab9 | ||
|
48cd6dc6ca | ||
|
cfd2b06821 | ||
|
d613dda91d | ||
|
112b1fa265 | ||
|
31d1485887 | ||
|
1287de1b83 | ||
|
72f9eab3d6 | ||
|
0b7a0d15c7 | ||
|
80b3ca0f6f | ||
|
45afdf1781 | ||
|
79b34a0fa2 | ||
|
872a0d5bd8 | ||
|
01421999ae | ||
|
0b888acfd4 | ||
|
238de58e65 | ||
|
7233ac07d2 | ||
|
b1e03197fa | ||
|
7be53a10b0 | ||
|
a0de3222dd | ||
|
540b3f37ae | ||
|
852b48295f | ||
|
9b3b40df66 | ||
|
d799921c75 | ||
|
e56404be41 | ||
|
7badad7797 | ||
|
59797ee233 | ||
|
fbe7756da6 | ||
|
0a103c7749 | ||
|
fb16c37d2a | ||
|
6f244ba82c | ||
|
ea75ae2d1f | ||
|
acb982fc66 | ||
|
eed7484cd6 | ||
|
02194838dd | ||
|
3323b4173e | ||
|
9a28052e92 | ||
|
e6fd4bea35 | ||
|
5276c0a090 | ||
|
7861c5f108 | ||
|
3987bd18a4 | ||
|
74c1c9ec01 | ||
|
537d2939b1 | ||
|
2091ae92be | ||
|
dcc614f869 | ||
|
ed867eca9d | ||
|
08e4c78e78 | ||
|
704053d221 | ||
|
35b84985a8 | ||
|
d41f0b66cc | ||
|
921b781909 | ||
|
6f5c0afe93 | ||
|
eec6095e02 | ||
|
9f04b0d4b1 | ||
|
628358aeea | ||
|
c235711ffe | ||
|
ff6ca8bdc6 | ||
|
dbda87c31f | ||
|
e4a241abef | ||
|
93555182c3 | ||
|
0eff42d688 | ||
|
1d92b90be9 | ||
|
da809f9eec | ||
|
c4d36d024c | ||
|
9e97fbf0af | ||
|
10f6793fd0 | ||
|
a594139115 | ||
|
95bd85d9e8 | ||
|
8d51ce4290 | ||
|
06636c6eca | ||
|
e9822a4e4e | ||
|
9a61b0ef22 | ||
|
d872902997 | ||
|
5ec25ff3e1 | ||
|
49e296e1b0 | ||
|
7347d4f8bb | ||
|
7571c37c99 | ||
|
3c18964256 | ||
|
c61dd918a2 | ||
|
02ba03d6db | ||
|
3bee0996c5 | ||
|
89daeb43a8 | ||
|
7d4f4f9aab | ||
|
256c2b1de0 | ||
|
02e3e1ec09 | ||
|
ff924f95bb | ||
|
c10f4bdb03 | ||
|
d907d4352e | ||
|
a8b51124ba | ||
|
161c72d66d | ||
|
53d99ebf4f | ||
|
1001922156 | ||
|
99f962ba73 | ||
|
2471796d75 | ||
|
545095b3ce | ||
|
d319b3dbe4 | ||
|
d60fd87e01 | ||
|
94230fe565 | ||
|
04ecf44c2f | ||
|
b6af88192f | ||
|
1419f656e2 | ||
|
3ba7cde38d | ||
|
ce854ed506 | ||
|
21b9da6418 | ||
|
764f876953 | ||
|
2c1ed5f872 | ||
|
7d376e41be | ||
|
f4b80e6511 | ||
|
a56c4742d3 | ||
|
38fc1b498d | ||
|
511c6f9625 | ||
|
868568d1c1 | ||
|
65f30f65a2 | ||
|
e0ef7f9d79 | ||
|
127bfda521 | ||
|
1494509468 | ||
|
1e5d1fa5c8 | ||
|
a3b369337f | ||
|
43c37a4768 | ||
|
cafe27fb29 | ||
|
7e6214b869 | ||
|
a8eb0bf44f | ||
|
35fdf561be | ||
|
081956742c | ||
|
8528fd89d2 | ||
|
9592b5e31e | ||
|
cea98e0c12 | ||
|
6eb60260b1 | ||
|
81d29e4126 | ||
|
c11a52d888 | ||
|
e52293482e | ||
|
f38e6a14f2 | ||
|
a434d9c0cc | ||
|
a29432f0cd | ||
|
098c7d27fe | ||
|
3d3b403359 | ||
|
25b0d7538e | ||
|
a3b2ea599d | ||
|
573414f728 | ||
|
aa273a2718 | ||
|
0d3ffa691e | ||
|
5ad45552b3 | ||
|
dc313f27bb | ||
|
7cad926401 | ||
|
3487460f00 | ||
|
72314d26ae | ||
|
cc75d47926 | ||
|
8bf4cc72b6 | ||
|
ad941f5a21 | ||
|
0aeec0390b | ||
|
fef6625496 | ||
|
775c3056b6 | ||
|
ccf4f170de | ||
|
90e7da16a0 | ||
|
ad75ec8b5b | ||
|
57fcc21a86 | ||
|
6855baa0c5 | ||
|
07b4427865 | ||
|
a8deb6648b | ||
|
20a6584d2d | ||
|
155e211dd0 | ||
|
81923f88ba | ||
|
5706fe18c2 | ||
|
71965cbef2 | ||
|
0128b86d30 | ||
|
0370ba7b0a | ||
|
c986218c3a | ||
|
0c8b1eb577 | ||
|
cfa3f55221 | ||
|
f9f6918148 | ||
|
2a61b9f000 | ||
|
cfea28216f | ||
|
19257d91bf | ||
|
fe180f18ff | ||
|
1486fd64cc | ||
|
14c4a33cd9 | ||
|
30d2ea03b0 | ||
|
1356ed72cd | ||
|
481fac7c84 | ||
|
c588fcf4bc | ||
|
feed07227b | ||
|
e56323a4dd | ||
|
84d5bfb35e | ||
|
6a82939adb | ||
|
98aa96b8d6 | ||
|
3caec1ecc2 | ||
|
2950de86c6 | ||
|
7d4ebeecbd | ||
|
6e3f176b8e | ||
|
a4710f9af8 | ||
|
fcc0795a40 | ||
|
0f8140d26a | ||
|
e7d55df38d | ||
|
a72d03f43c | ||
|
4bce376fdc | ||
|
a865b62efc | ||
|
84cebad49d | ||
|
931e66e572 | ||
|
cdae7e4c8b | ||
|
3a52c90de1 | ||
|
17e26f8afe | ||
|
2526ef10c2 | ||
|
99242b92bc | ||
|
ec3b449baa | ||
|
2f4c5f504f | ||
|
f08e6e9ab5 | ||
|
86b4d5439c | ||
|
c36b9cc5a6 | ||
|
70ce2a2095 | ||
|
b0db4dad79 | ||
|
dad0a09675 | ||
|
bca9e2e57a | ||
|
369f40bb9f | ||
|
65e0bbd958 | ||
|
832a7f9a05 | ||
|
7fcf15adf3 | ||
|
a1fc626e57 | ||
|
9a6fc03332 | ||
|
7445f17571 | ||
|
0c4ca3e549 | ||
|
c083816c24 | ||
|
432761f375 | ||
|
9302369aa5 | ||
|
a0047fdca0 | ||
|
a20509b41e | ||
|
281c577cf8 | ||
|
f9a0d8f2b9 | ||
|
4de211b80a | ||
|
063a1c2a8b | ||
|
a9ca5ce920 | ||
|
d7a17b5e8b | ||
|
34e2a06de0 | ||
|
4c1a02fa73 | ||
|
b21db9bbde | ||
|
42bcbd36b7 | ||
|
0393a64a90 | ||
|
d68868ca14 | ||
|
e20895f251 | ||
|
12cea76634 | ||
|
b4bc594c5a | ||
|
82884ac5c4 | ||
|
886829e96c | ||
|
62a94ebed4 | ||
|
ac17309faf | ||
|
dd23ae031f | ||
|
51f2eca887 | ||
|
bdf6d0a684 | ||
|
b15482ce71 | ||
|
74320971e2 | ||
|
eee3b32b77 | ||
|
df03042a6e | ||
|
9927df83ad | ||
|
4c6b5dbe96 | ||
|
85e97ecab6 | ||
|
dc1ebd45a3 | ||
|
f0d4c7d7ab | ||
|
82ab9736d5 | ||
|
a62039df27 | ||
|
15fab79cfa | ||
|
eeaec39888 | ||
|
b8efb5daed | ||
|
2b3b44ebbc | ||
|
1b57d4dd3a | ||
|
d937a59997 | ||
|
706e534455 | ||
|
ff78c1177a | ||
|
c6b7c77229 | ||
|
e20258a2e5 | ||
|
7fb850e987 | ||
|
1c5b0e3334 | ||
|
740f8a95a9 | ||
|
0ea4478b68 | ||
|
fd87e5a53b | ||
|
57fe4102ea | ||
|
bf7757cbbc | ||
|
1266c66f79 | ||
|
d07983b56d | ||
|
662b8eefe8 | ||
|
520d147803 | ||
|
32987004c9 | ||
|
31ac5f0e00 | ||
|
269a445c0b | ||
|
2b51b4094c | ||
|
1104ac35d3 | ||
|
a78f66c069 | ||
|
8c0e77d688 | ||
|
7a45d382ea | ||
|
5a551b530a | ||
|
e84fecb7e9 | ||
|
801eee0ff3 | ||
|
bc4a726c24 | ||
|
fc2155019b | ||
|
53b7b81b43 | ||
|
6f609dc4b4 | ||
|
3dce6cbbd7 | ||
|
2bcc81700c | ||
|
53e95c4efc | ||
|
08deec4c84 | ||
|
2590aac863 | ||
|
3d1d3d9a20 | ||
|
8f638a2bf2 | ||
|
9d9b1aff1e | ||
|
bfdcf76a64 | ||
|
b380e9d2cb | ||
|
58cede4808 | ||
|
6be72a3ec6 | ||
|
2864e5e077 | ||
|
24cafd73a2 | ||
|
4a2fc2d444 | ||
|
e1ebf36352 | ||
|
ae6dd08121 | ||
|
e28b33c89c | ||
|
dc6e031364 | ||
|
9dd5e329ab | ||
|
3e90987c8b | ||
|
2151fd3150 | ||
|
ad207456d6 | ||
|
9e3d24a150 | ||
|
556c07df1f | ||
|
3023725936 | ||
|
3e4b01b47d | ||
|
19e8b861a2 | ||
|
7d7df877ef | ||
|
c73a1fb537 | ||
|
f6bc6399e2 | ||
|
031a5a8f92 | ||
|
6d7e05ec1f | ||
|
58bca7b1e4 | ||
|
1c25853842 | ||
|
546257bc7f | ||
|
fbef909c2a | ||
|
c3ec1e87b8 | ||
|
48e27c47a7 | ||
|
1f1838420f | ||
|
20150659e6 | ||
|
8087aa83d4 | ||
|
249b0fe107 | ||
|
a6682a3000 | ||
|
4112a0631f | ||
|
0e6c4cb796 | ||
|
92aaa55f06 | ||
|
5df8e30415 | ||
|
60f247c2e7 | ||
|
cf7e840990 | ||
|
252d0fe020 | ||
|
2fb722397d | ||
|
07f7192bc3 | ||
|
fcb9533549 | ||
|
7bb8b0b2fc | ||
|
2b1190065c | ||
|
56720ba590 | ||
|
e5aa4128f6 | ||
|
f9e7336296 | ||
|
07cca6e364 | ||
|
54b42901df | ||
|
d200e041fe | ||
|
49a285ce15 | ||
|
cfd7b7a0b7 | ||
|
36376b5e23 | ||
|
eb97bd8af6 | ||
|
4c0a85ef9b | ||
|
64cc129225 | ||
|
97fc2da2e0 | ||
|
889ada5ee2 | ||
|
3f16caaa50 | ||
|
5d5c0f4f43 | ||
|
1032f3994f | ||
|
cbbeec05be | ||
|
e618edf85a | ||
|
b6e2e999bd | ||
|
782224c991 | ||
|
84cfee2488 | ||
|
7bea1530f4 | ||
|
47b0c61853 | ||
|
864c4d869f | ||
|
d8cd9000d9 | ||
|
d307ee79e9 | ||
|
cf01326cc1 | ||
|
d48779cf7b | ||
|
8a588145d5 | ||
|
8abe9e9058 | ||
|
15c0f6ae56 | ||
|
da3adc0a73 | ||
|
0338c16f9f | ||
|
38d072446b | ||
|
8ae9bd0eea | ||
|
5521e94e24 | ||
|
763a2f8511 | ||
|
60f962eedc | ||
|
47d56438da | ||
|
0692991b54 | ||
|
6705463ed0 | ||
|
a2a4bf4e78 | ||
|
b254e6ca5f | ||
|
29609fbb6a | ||
|
d37a56c07c | ||
|
2cea4592a3 | ||
|
512feab222 | ||
|
5e111ce16d | ||
|
4080569c2d | ||
|
2cbb8e8cd1 | ||
|
3e9236b343 | ||
|
89c77fe225 | ||
|
e843f62f47 | ||
|
ec487166db | ||
|
37b267e2ab | ||
|
3de22a82bf | ||
|
e4080772b5 | ||
|
781105293c | ||
|
0cb329f63a | ||
|
0129f5eada | ||
|
22da775a85 | ||
|
d556be2968 | ||
|
4f337c020a | ||
|
02f7f3619a | ||
|
20fee786b1 | ||
|
74777599cf | ||
|
1ba3725473 | ||
|
fdb0848e08 | ||
|
8392ddbf87 | ||
|
049381b284 | ||
|
09d81defcd | ||
|
3810d98cd8 | ||
|
26b2a6a71e | ||
|
edf9a5e4fc | ||
|
c710069c12 | ||
|
990d6dd565 | ||
|
402da46ff6 | ||
|
e7099d8d9e | ||
|
637ea3bb5b | ||
|
363d0d3a44 | ||
|
6e54719474 | ||
|
f3003417c5 | ||
|
33ea042dec | ||
|
8b22a63ab0 | ||
|
05686cc99d | ||
|
484208ce12 | ||
|
3bc8924940 | ||
|
a02de9e012 | ||
|
2d395324e1 | ||
|
e6c9756fa9 | ||
|
5050719fac | ||
|
989553c69a | ||
|
0e0c6b1b4b | ||
|
554c2fd8af | ||
|
a2b600428c | ||
|
df1a9c5ab5 | ||
|
8980aa804f | ||
|
34118169ac | ||
|
4fd7aebd5e | ||
|
bc89995f65 | ||
|
7cc71748ce | ||
|
aec70b44fc | ||
|
6f490b4bfe | ||
|
03975dbde4 | ||
|
f72936b4e6 | ||
|
3c530d95f6 | ||
|
1e7b3bf625 | ||
|
bf0ee1a25c | ||
|
fa0be3f834 | ||
|
981e20b03a | ||
|
d5b767c374 | ||
|
93b54b8d4b | ||
|
e7ab9bf8b4 | ||
|
894da3dcca | ||
|
3e2f793948 | ||
|
8eb7d30a6c | ||
|
7fe1428cc4 | ||
|
b3b4b5a2eb | ||
|
8125fdc19f | ||
|
ae716a12e1 | ||
|
f63a40e7c2 | ||
|
1bdd694a0a | ||
|
2eab41cd1a | ||
|
c6f76db2e1 | ||
|
2c704ca9c6 | ||
|
eb96aa86a4 | ||
|
c1a2707ecf | ||
|
c35132a738 | ||
|
a1c54220e8 | ||
|
df7dbc41ae | ||
|
b8db386e05 | ||
|
48f7a58799 | ||
|
388d093beb | ||
|
95fe20b78a | ||
|
3283868e28 | ||
|
dc91fd482a | ||
|
b8bae96647 | ||
|
d37305c628 | ||
|
ad917cda10 | ||
|
f398ad1994 | ||
|
3cfcc7a50e | ||
|
cb7ba23cd8 | ||
|
691e9112f3 | ||
|
385df2c5a0 | ||
|
35ec1c91e3 | ||
|
9d84b6e606 | ||
|
bf0f7e8846 | ||
|
4817744b87 | ||
|
8e9911962d | ||
|
3ebe03b729 | ||
|
6bc07d3de3 | ||
|
fbc6375fde | ||
|
0352c40e99 | ||
|
e5d8166a12 | ||
|
07ea625cb2 | ||
|
27101f1beb | ||
|
1823cf435a | ||
|
6a50329a9c | ||
|
b17e571bc2 | ||
|
476e79b8e3 | ||
|
19d3317a69 | ||
|
fe6941e28e | ||
|
38600b2792 | ||
|
b0407ece42 | ||
|
9b3d8ee346 | ||
|
b3d7ad958f | ||
|
552d22bec9 | ||
|
7c33da45f0 | ||
|
9815be2a44 | ||
|
bebaa6eced | ||
|
616f53eea8 | ||
|
61d3ecc805 | ||
|
4bb3e4eeba | ||
|
784c7510d7 | ||
|
6c54d2e583 | ||
|
96c942e8ab | ||
|
aafe55af81 | ||
|
fd49d5603a | ||
|
1c6fc0e4ce | ||
|
92e7815d1d | ||
|
9d97054fe6 | ||
|
cc796298c9 | ||
|
7fd66cf2fe | ||
|
6e9e0c14e6 | ||
|
0aa810f9c8 | ||
|
3888a12c79 | ||
|
cfa68907ae | ||
|
488584bfc1 | ||
|
0717d9b3e6 | ||
|
6e4046fc3f | ||
|
f0c939c431 | ||
|
ebadfe0ab7 | ||
|
94f15338c3 | ||
|
db33a53ee8 | ||
|
7de6d269d2 | ||
|
684001d729 | ||
|
292f3cd7e0 | ||
|
a3d4f1bd93 | ||
|
633426b261 | ||
|
f486ef2666 | ||
|
d2dee6ea43 | ||
|
967e70663f | ||
|
b7e65a004f | ||
|
3a3475450e | ||
|
057db0ecd0 | ||
|
11436358b4 | ||
|
0e0a9e716c | ||
|
45682f876d | ||
|
4413d81d7f | ||
|
5a2c7bd4ce | ||
|
5c8ca024ef | ||
|
d8b2f89d33 | ||
|
d5f490b1a2 | ||
|
c75ca0525b | ||
|
6f2d88dd28 | ||
|
daa59dd454 | ||
|
72d939b69f | ||
|
97b3d0cd56 | ||
|
fd7f0732fe | ||
|
eb5ac23434 | ||
|
a5143df303 | ||
|
2aca22b8ea | ||
|
7db0f8dcb2 | ||
|
49cc0eb3e7 | ||
|
b9c76e2edb | ||
|
2559d9166c | ||
|
32e8a87830 | ||
|
636acb5712 | ||
|
b406e3cc4c | ||
|
43577e9f59 | ||
|
ecfa1c3f3b | ||
|
b3af3f9f8c | ||
|
d5091387c6 | ||
|
178f718a9b | ||
|
0e1b0f2747 | ||
|
468523f4ad | ||
|
2076c557c9 | ||
|
d40c9140e8 | ||
|
632178d754 | ||
|
291feba6f1 | ||
|
63f0979799 | ||
|
ec13cfa4f9 | ||
|
cdd5ef691b | ||
|
c743b5e1fd | ||
|
dfaa219f88 | ||
|
e6543d5fc4 | ||
|
813c5f2f52 | ||
|
82d9ade7a6 | ||
|
875d943c18 | ||
|
334a446313 | ||
|
ecacb15cd5 | ||
|
eb6ec3d068 | ||
|
f303a954e6 | ||
|
395a57d03d | ||
|
0f699a4280 | ||
|
5e5f36c216 | ||
|
a767ef85fa | ||
|
0db47196fb | ||
|
c30e492587 | ||
|
97c02c3389 | ||
|
4453c9a9f5 | ||
|
b9c612b561 | ||
|
d841af4e80 | ||
|
01d6aa0397 | ||
|
c567c87453 | ||
|
47ecd652d3 | ||
|
04fa4eb7f9 | ||
|
cdad7977fc | ||
|
0b3f1ec62a | ||
|
b110cc542f | ||
|
cdacac8c6c | ||
|
eb605141ff | ||
|
1e1d788757 | ||
|
1df453aff6 | ||
|
f7c909e290 | ||
|
7481ae1bcb | ||
|
cb3b0c1a0f | ||
|
ca0e8be20c | ||
|
83ffc4dc07 | ||
|
d6fe0954e3 | ||
|
ebb8c89207 | ||
|
0060f98847 | ||
|
1a72813b53 | ||
|
c3f9c74719 | ||
|
35a8cafa35 | ||
|
f4ca116ea8 | ||
|
5b45c1646a | ||
|
887cd94e96 | ||
|
d2f56d1cbc | ||
|
d0b4709b2a | ||
|
6e0659c838 | ||
|
3406e30526 | ||
|
76f360c625 | ||
|
a3202f61af | ||
|
4ec1771165 | ||
|
3d9b8847d2 | ||
|
b9f59ebcc6 | ||
|
e648ef0bfb | ||
|
db3ed498b0 | ||
|
901fc48aae | ||
|
3caf0ba923 | ||
|
6e83b5e719 | ||
|
b32a1d5754 | ||
|
9d53a38a44 | ||
|
e528114c53 | ||
|
cf7fbf2c56 | ||
|
91e5b0dfdb | ||
|
3b60832214 | ||
|
259181c41a | ||
|
510df0ac55 | ||
|
98936bfcdf | ||
|
5c82c2b75f | ||
|
0fea700c7b | ||
|
2c8e3fbbfb | ||
|
b982d549f4 | ||
|
909a6d4661 | ||
|
3f3de38075 | ||
|
c267acfcf7 | ||
|
ab625c57ce | ||
|
e756c4f5ec | ||
|
a0bbeafb04 | ||
|
2f079573ed | ||
|
b2820c3913 | ||
|
adc38078dd | ||
|
dae0af1fd2 | ||
|
5b8d0ad71b | ||
|
233258c61b | ||
|
9c8aad612e | ||
|
6dfeb64326 | ||
|
427beb4177 | ||
|
838f255fc2 | ||
|
1e02ba111a | ||
|
66126f3021 | ||
|
293972f716 | ||
|
9c8e602163 | ||
|
846cd4e838 | ||
|
0de82dd316 | ||
|
dcfc9b2204 | ||
|
b01ab55ed8 | ||
|
dd4ef69839 | ||
|
d4f80824f7 | ||
|
034fab39ab | ||
|
0df6442636 | ||
|
245816ab27 | ||
|
63819c848d | ||
|
a9abe89093 | ||
|
798b0fc5af | ||
|
8fcfcddc8f | ||
|
d68df88d4e | ||
|
c8580eb806 | ||
|
f41e70ca38 | ||
|
7b8ecde32d | ||
|
8cb4561145 | ||
|
1607bb445a | ||
|
33c39784e4 | ||
|
669fe9ee06 | ||
|
b35406b700 | ||
|
8e33fc29d7 | ||
|
1de6c52545 | ||
|
34fa305a00 | ||
|
bb4d005a83 | ||
|
df1ce2350c | ||
|
e5c65b3067 | ||
|
7d16bb379d | ||
|
0401a24558 | ||
|
4aea3f88a6 | ||
|
41e6c8b151 | ||
|
813e650729 | ||
|
1664e52cbb | ||
|
dce869dfc7 | ||
|
09a94b575e | ||
|
d43944143a | ||
|
81cec35dbf | ||
|
c155d843f4 | ||
|
3d640dc8ac | ||
|
6db034a866 | ||
|
17bf3363ac | ||
|
dcf1139ebd | ||
|
9619b7f727 | ||
|
66be6475b6 | ||
|
9e0985d9e4 | ||
|
cf14f4945a | ||
|
4c14ff659b | ||
|
dd6f9a1b82 | ||
|
3f07f1b2b1 | ||
|
44245926f1 | ||
|
8811778b55 | ||
|
1eab53ee10 | ||
|
7be3131240 | ||
|
198a9a4fa4 | ||
|
ec36df97c4 | ||
|
c8969dca35 | ||
|
1e3b1d7211 | ||
|
0698c610a6 | ||
|
629fae8b3b | ||
|
c30e6433de | ||
|
cea5597722 | ||
|
48d77ea1eb | ||
|
efec507230 | ||
|
54edb4b853 | ||
|
6c81f9d6e5 | ||
|
472df24579 | ||
|
0d1215e82f | ||
|
e77cc032c2 | ||
|
67559361e8 | ||
|
4a73615193 | ||
|
bdcc9e2ceb | ||
|
3816943e6b | ||
|
b39d512ade | ||
|
04046a4983 | ||
|
a4c500176b | ||
|
1aad015bbb | ||
|
94fba44eec | ||
|
721460a59b | ||
|
45b595cdca | ||
|
aad3df6afc | ||
|
1023f52eaa | ||
|
596dab06e9 | ||
|
4f0597d579 | ||
|
2bbf987a0a | ||
|
af00220d79 | ||
|
9239e4ce4d | ||
|
06f26e09b4 | ||
|
331263270b | ||
|
283a5ec1a4 | ||
|
550ff677da | ||
|
da77f65c46 | ||
|
9e2ff3ef71 | ||
|
b9d241c6f5 | ||
|
56af04dbb4 | ||
|
60944d5dca | ||
|
081f907f90 | ||
|
f29918e707 | ||
|
af10c9fbff | ||
|
8f8e677630 | ||
|
4931eac280 | ||
|
881856553e | ||
|
0a6b098668 | ||
|
0ef9d45d05 | ||
|
a6a206ef85 | ||
|
bbff144004 | ||
|
47d48fed8d | ||
|
3018043fc2 | ||
|
c2bee07dbc | ||
|
a345479de2 | ||
|
08f00df94b | ||
|
ab71cf4593 | ||
|
c450ddb613 | ||
|
15b886a6f0 | ||
|
4819e2913d | ||
|
72e662bb0d | ||
|
7d7844a47f | ||
|
f2cbfb2eb3 | ||
|
3f333a8d31 | ||
|
bc077018b8 | ||
|
90712d4293 | ||
|
6867681c7c | ||
|
bdc8b4fd91 | ||
|
2ff7146b6d | ||
|
c7908e2d09 | ||
|
c9d04f1c39 | ||
|
9e15eeec63 | ||
|
3c45d3963a | ||
|
baa8b82179 | ||
|
4b460bc571 | ||
|
7ca173be47 | ||
|
1ae5d49a71 | ||
|
a12572e074 | ||
|
dabc309ca3 | ||
|
1caf11ddcc | ||
|
95f018a3d4 | ||
|
a4caa7eb62 | ||
|
7c2d84910c | ||
|
b00cc4b9bd | ||
|
dd6ede554f | ||
|
6859d4c028 | ||
|
7d853b514a | ||
|
85c7c42098 | ||
|
8185f98872 | ||
|
5264496240 | ||
|
be75b13d68 | ||
|
9417c9bb8f | ||
|
11bddd31ce | ||
|
dd5cb5085c | ||
|
e7adbf572a | ||
|
13ffa3c59e | ||
|
aec5097d44 | ||
|
1646f622a5 | ||
|
e0cda4a851 | ||
|
d8d2a54741 | ||
|
fa21d004c7 | ||
|
6994664a13 | ||
|
be7ffa2d75 | ||
|
e821c00e74 | ||
|
9b994c4aee | ||
|
4c3dd0b254 | ||
|
672df4ecc0 | ||
|
aefb4719bc | ||
|
4d67bf18fe | ||
|
f09a250a7c | ||
|
9b50a9dd83 | ||
|
2293466edd | ||
|
b6f3869f8d | ||
|
09cffaaf04 | ||
|
334a633c2a | ||
|
8b12e3cc7f | ||
|
d3f46a77c3 | ||
|
a789315361 | ||
|
579c7a88e0 | ||
|
8538170c2d | ||
|
249bdc169c | ||
|
9dd8dff683 | ||
|
a187dcefa1 | ||
|
5d170587e3 | ||
|
37fdddd927 | ||
|
6ec1aa372d | ||
|
2c3544eedd | ||
|
d3b6746173 | ||
|
2a5d1d5a1b | ||
|
6a4e2db661 | ||
|
bfa7f9ebf2 | ||
|
8cc1ed3c55 | ||
|
5e1e466da0 | ||
|
cfe39fb58d | ||
|
a0294c8880 | ||
|
ba8fb2fd0f | ||
|
6fd2e8c3c5 | ||
|
15963a15c6 | ||
|
1b5806b744 | ||
|
1b1e025b41 | ||
|
ab9f1b6e50 | ||
|
b767eb7ff8 | ||
|
0b32338e3f | ||
|
e482595a5d | ||
|
9c04fadec9 | ||
|
390bfec6da | ||
|
c2980d5b17 | ||
|
a75aa62f5b | ||
|
8fd8f81ae7 | ||
|
921cf3e9c8 | ||
|
7dc5035031 | ||
|
2305f7c391 | ||
|
ff7d02b236 | ||
|
1a0df58878 | ||
|
74437c6bff | ||
|
504737e860 | ||
|
af2d22f88c | ||
|
9a5ae09620 | ||
|
f7937d903c | ||
|
6b2be5dbfb | ||
|
69957ed10a | ||
|
d1a78eba15 | ||
|
2db9ccaf3e | ||
|
cecf204bbb | ||
|
fec13735a7 | ||
|
7b8f262840 | ||
|
3f51a22d3b | ||
|
39e7a763ff | ||
|
e95bdec7c5 | ||
|
fcca31350d | ||
|
ee72a39641 | ||
|
f59ed3a4fa | ||
|
7be620775e | ||
|
4c76402ba1 | ||
|
9958eba356 | ||
|
0827c09c44 | ||
|
938cd2875b | ||
|
7876aed134 | ||
|
ce9a5f358e | ||
|
8f527bd588 | ||
|
07994eed00 | ||
|
bab9afaa09 | ||
|
15093f9113 | ||
|
f92d991e52 | ||
|
26402ee2cb | ||
|
f095a9f8a5 | ||
|
0d5d11eeff | ||
|
0397c58b61 | ||
|
884b085f53 | ||
|
2a2698e450 | ||
|
8ecfdd8795 | ||
|
00840f4f2e | ||
|
1cebfed23e | ||
|
649a20ab46 | ||
|
3ac7b353f8 | ||
|
21bb4a6c3b | ||
|
c2af138113 | ||
|
fb8aa2b3ba | ||
|
00f9f16f94 | ||
|
18f69fb964 | ||
|
04c3fb2189 | ||
|
7c03e59338 | ||
|
b88635202f | ||
|
409051c22c | ||
|
9caa90025f | ||
|
c5157ef07b | ||
|
f72ed21cd6 | ||
|
da172a8b1b | ||
|
cf615abbf9 | ||
|
b01a19fe39 | ||
|
c66fe2aeba | ||
|
fbe1115114 | ||
|
e4c761f902 | ||
|
2c6a85832c | ||
|
829e2e8c5d | ||
|
8a716c9e96 | ||
|
80393a23d0 | ||
|
8d23667536 | ||
|
9846806cb5 | ||
|
760cfe328f | ||
|
c1b086a538 | ||
|
696c2c6f2f | ||
|
5927b43c0f | ||
|
871c0d251a | ||
|
11a7507318 | ||
|
d63de55ef8 | ||
|
72bb3e03fd | ||
|
f391a4673a | ||
|
143b77e10d | ||
|
4cbb638604 | ||
|
3534e115e5 | ||
|
ea958cae7f | ||
|
10e9a9a3f9 | ||
|
6e9eda5331 | ||
|
4c23544714 | ||
|
74e5078795 | ||
|
110227ac5e | ||
|
f26758dc01 | ||
|
23792f5a7c | ||
|
fe5b66aa08 | ||
|
93d4192a67 | ||
|
d5acf4275f | ||
|
412ea87306 | ||
|
774b8661bc | ||
|
c7d2619ab1 | ||
|
2edfdab6e6 | ||
|
4edf9d849f | ||
|
10489b4e4a | ||
|
40c45f5dd9 | ||
|
efec02f153 | ||
|
116b8a6363 | ||
|
ad892dbc0c | ||
|
075d6a1e13 | ||
|
54a04e3658 | ||
|
462c30e26c | ||
|
2a04bdc87a | ||
|
ca7ea1aba9 | ||
|
f814661fca | ||
|
e33c28a6d8 | ||
|
e120d09c98 | ||
|
4fcbb1f838 | ||
|
a855956185 | ||
|
5b9ae7981e | ||
|
5f22c0189d | ||
|
26d26644ac | ||
|
3c6503038e | ||
|
96e9ed13de | ||
|
6df8bd277b | ||
|
4e75f0d889 | ||
|
a2aeacbfee | ||
|
b7370ac8ba | ||
|
ccdd5a9576 | ||
|
40be4ea239 | ||
|
3d47154c20 | ||
|
d0a217eb92 | ||
|
81c1303cd6 | ||
|
4b8e4dca26 | ||
|
10cdad3e7d | ||
|
d9a1fb134a | ||
|
fdea173237 | ||
|
4e1bf082ce | ||
|
b1c8a702a4 | ||
|
820099813f | ||
|
2ebe4ff568 | ||
|
61bfce5aa9 | ||
|
dd7ef0dc41 | ||
|
dcbc1af38a | ||
|
81c41d8681 | ||
|
ec3be87a2b | ||
|
b42c018bb8 | ||
|
c9fd6f386c | ||
|
1b5d26735e | ||
|
a3e53bd442 | ||
|
8eb6d171e6 | ||
|
5942347407 | ||
|
22db947225 | ||
|
5d408fd9aa | ||
|
47579ec58c | ||
|
3363a05539 | ||
|
87f10d476c | ||
|
41c3389d76 | ||
|
e7a5a188ef | ||
|
71384b2ef9 | ||
|
d1d465347a | ||
|
5eba129b0f | ||
|
021a83ead4 | ||
|
5ee45fa571 | ||
|
61a06eb328 | ||
|
df605f0f8b | ||
|
029786442a | ||
|
9d1f8b9d6a | ||
|
400616813e | ||
|
724be2d5fe | ||
|
76da330155 | ||
|
ab60aa2266 | ||
|
0bbd5789b5 | ||
|
fae71b653a | ||
|
dfcd2834f9 | ||
|
09e86ef90b | ||
|
9ba7d526a0 | ||
|
94e233e7b2 | ||
|
ac53736814 | ||
|
8c0e78ae43 | ||
|
26ab702304 | ||
|
7ef8482568 | ||
|
559fd08845 | ||
|
202942a76f | ||
|
c3e355388a | ||
|
d4c4820c03 | ||
|
e05606c8d0 | ||
|
161f72cce3 | ||
|
8ccb3b96ab | ||
|
e9ee249fd5 | ||
|
4b6cd1dfdb | ||
|
b9ec3b7e7c | ||
|
9b247c3d88 | ||
|
c7cc806251 | ||
|
82b4cf4acb | ||
|
3e7a541e09 | ||
|
93aafa8549 | ||
|
bb85043f46 | ||
|
e1fcad34a9 | ||
|
155ba8fd3a | ||
|
e44f03bc71 | ||
|
970297a138 | ||
|
29abc9438c | ||
|
f91284d230 | ||
|
feadf7553d | ||
|
ea33cdc30b | ||
|
579e85f606 | ||
|
ea144ba302 | ||
|
4f04981dde | ||
|
990cea471e | ||
|
0913351dcf | ||
|
57a794d8eb | ||
|
a5e0cf2450 | ||
|
a46ba4a8f5 | ||
|
c71874b84c | ||
|
53b2b1b238 | ||
|
634b71ed1d | ||
|
3d378ed0b4 | ||
|
7e0c00a555 | ||
|
f0bb2c6d1e | ||
|
13bb1ddc7f | ||
|
fdb65dcbee | ||
|
4e2f2fab73 | ||
|
6e186b9c77 | ||
|
ff9d344d4c | ||
|
b3c44e95a9 | ||
|
8c0dd33ce4 | ||
|
12874eafa6 | ||
|
afb593b44e | ||
|
296bfa23aa | ||
|
534da4f24f | ||
|
62a9da62a6 | ||
|
58eea59864 | ||
|
c7de92e0df | ||
|
c1633eeb0f | ||
|
f93f306053 | ||
|
e67fc997dc | ||
|
3e01a7e677 | ||
|
0f92119ceb | ||
|
b7d47c2aef | ||
|
6270f9ce34 | ||
|
e54cc15cbd | ||
|
2654f3be82 | ||
|
9004151e34 | ||
|
6884dd79ba | ||
|
f9075577e4 | ||
|
50d38d7605 | ||
|
aa803153e2 | ||
|
f2233c3e25 | ||
|
73890c3cac | ||
|
e1798d0eb0 | ||
|
4f0b638cda | ||
|
bb96ba13cf | ||
|
5bf4838e2f | ||
|
bdf573d140 | ||
|
97a48f237d | ||
|
6654c30033 | ||
|
f49339ca9c | ||
|
994d948c39 | ||
|
f5e228ad2e | ||
|
92cb451da8 | ||
|
55bee84c97 | ||
|
a248be4fce | ||
|
8b43d6bf9c | ||
|
b8adb4d7fa | ||
|
4ba33f99fc | ||
|
7905739c2a | ||
|
6a6a62f13f | ||
|
aa8fa71df6 | ||
|
7874c6d630 | ||
|
7bf0afb1dc | ||
|
2f8bfb3d38 | ||
|
4115043dc7 | ||
|
7062cb764f | ||
|
9891ff80f9 | ||
|
7232cdf7e8 | ||
|
9f97c8c750 | ||
|
edadc93757 | ||
|
a6ea7e282f | ||
|
e5c0aa6493 | ||
|
02744f29ef | ||
|
a31d24ee18 | ||
|
6957c5b5c6 | ||
|
696bcff6bf | ||
|
f52ce92f2b | ||
|
c80046a77b | ||
|
ebf5a06084 | ||
|
23e854cb91 | ||
|
de105d64d5 | ||
|
07d93716aa | ||
|
88b5e0b703 | ||
|
32fa312b2a | ||
|
1306d637a2 | ||
|
462b3752e4 | ||
|
029f2c4545 | ||
|
b3e7beb7c5 | ||
|
a549d1ae6b | ||
|
467456f7a1 | ||
|
2374d63536 | ||
|
117eb3b2bc | ||
|
de985a30bc | ||
|
06d905f415 | ||
|
0ad41be0f3 | ||
|
d6f5dbff3e | ||
|
1e665a0bf4 | ||
|
ef16089c6d | ||
|
4b4ea1f929 | ||
|
45af29912f | ||
|
9075c90c46 | ||
|
63a2566007 | ||
|
43cad817e8 | ||
|
ed4c754fff | ||
|
1e0c7a0afc | ||
|
3a3b556065 | ||
|
9244f6b628 | ||
|
ff26b72333 | ||
|
6803935c4d | ||
|
3757546f1b | ||
|
a677ac8384 | ||
|
bdbfb10cff | ||
|
4d661e1183 | ||
|
dd28b557ae | ||
|
0e0f18ce7c | ||
|
7964bfccdb | ||
|
3c515f2cd2 | ||
|
db73ac92d7 | ||
|
4cd82d442e | ||
|
311871eefc | ||
|
a929f7e6ac | ||
|
cf51e07bde | ||
|
8d6c3cd48a | ||
|
3817704806 | ||
|
d4c6bf770d | ||
|
399f9f4a4e | ||
|
f2390e2803 | ||
|
dbaa6a0e13 | ||
|
7bf7ed6123 | ||
|
a390abdefb | ||
|
c1bc5e14eb | ||
|
4b911fea03 | ||
|
1fcdaafa6f | ||
|
f24b81e27f | ||
|
e01966f7b8 | ||
|
dcb9497148 | ||
|
4f2513337f | ||
|
015269914e | ||
|
bbdcfd6baf | ||
|
f0d6550f16 | ||
|
8400bee3b1 | ||
|
bc1f9dc24b | ||
|
cdc349a2d1 | ||
|
c2c93f8cd6 | ||
|
9fc082ea81 | ||
|
4c7a9adb98 | ||
|
030e5cec58 | ||
|
716f4cb11c | ||
|
a5a07da892 | ||
|
72108b20e2 | ||
|
767117f9b0 | ||
|
fb7f06a752 | ||
|
0b4006fc47 | ||
|
0ccd47f413 | ||
|
02f896c12e | ||
|
bb4c3831b2 | ||
|
3267e4a785 | ||
|
89b988cab5 | ||
|
4d42a38954 | ||
|
8387b3928e | ||
|
afa52e4d63 | ||
|
8949aad030 | ||
|
c0c7af2194 | ||
|
f5382ec085 | ||
|
407073d7a2 | ||
|
7f4375822a | ||
|
719ab720a7 | ||
|
b11ac88692 | ||
|
681c33d1f4 | ||
|
7f35947d8e | ||
|
68941d4dfa | ||
|
1d2616b79b | ||
|
d4b097a88c | ||
|
902c5cf7ca | ||
|
b15f790221 | ||
|
a47c2e8890 | ||
|
a3202fd51e | ||
|
1cceefce33 | ||
|
033f970af3 | ||
|
d1c3e35d3f | ||
|
a6328fc1b1 | ||
|
35b868eeca | ||
|
695439775e | ||
|
05cd37097c | ||
|
bd915d9398 | ||
|
8c45cd0e36 | ||
|
3fbf1bf35a | ||
|
cd9b2ab2f7 | ||
|
de397f3bc1 | ||
|
72bd73f605 | ||
|
1896a154f5 | ||
|
1618b68bfa | ||
|
c1f201c49a | ||
|
8d224ad23b | ||
|
e2685ccc81 | ||
|
c42092ba7a | ||
|
999170d898 | ||
|
37430a3401 | ||
|
0fa9dd8527 | ||
|
489d162477 | ||
|
9008ab3407 | ||
|
87b96f8d33 | ||
|
a49be27145 | ||
|
27b2355738 | ||
|
eeb5923e89 | ||
|
a9067167bb | ||
|
a9a0c854e1 | ||
|
0c7c188c45 | ||
|
c2753fdfb4 | ||
|
c29c20ab3c | ||
|
880a5eb25c | ||
|
e48d3bfd01 | ||
|
5abb3d8150 | ||
|
c45a75ad34 | ||
|
3567ac3d3e | ||
|
43f868de3d | ||
|
f41590912d | ||
|
056b5ed72f | ||
|
1764c32b9e | ||
|
b21ab498f8 | ||
|
1c6c6b271c | ||
|
e6c81a635b | ||
|
f93de3a516 | ||
|
e19eefe219 | ||
|
8784bd79d0 | ||
|
31366334cb | ||
|
425acecfdb | ||
|
29f314a502 | ||
|
cc68d1945b | ||
|
7bacdd718a | ||
|
958fe0f7db | ||
|
e670fa2af6 | ||
|
a3d93e8bbe | ||
|
7a889a8e12 | ||
|
d081d4a422 | ||
|
34ccc058fa | ||
|
7f9a353b94 | ||
|
31490e0d6c | ||
|
ca45bd0361 | ||
|
63baab088d | ||
|
2b9721d1b3 | ||
|
617208053c | ||
|
4aa6cd66fc | ||
|
1c6cbdd4e4 | ||
|
f8212da329 | ||
|
4122a837fa | ||
|
5fa2dd6e65 | ||
|
307f3e0dd7 | ||
|
fc4c74660b | ||
|
caf938562e | ||
|
ce3a371eee | ||
|
8781a8e203 | ||
|
37c832cdf7 | ||
|
f68fa930ea | ||
|
007ab330e6 | ||
|
794781d121 | ||
|
91cacb1e8f | ||
|
46f5d3a2e9 | ||
|
76318f8830 | ||
|
852bda3d32 | ||
|
0324f807f4 | ||
|
864e3f8d9c | ||
|
102466ac58 | ||
|
63b77f2320 | ||
|
8fecd80108 | ||
|
348d6f5e75 | ||
|
00df69bc89 | ||
|
7a549f830e | ||
|
3f82d8b979 | ||
|
9fe6cfca48 | ||
|
ebd2dde688 | ||
|
6e1261f277 | ||
|
91d548f7e6 | ||
|
76eda2fc21 | ||
|
1c1819a78a | ||
|
8b2cad5637 | ||
|
2d6128672f | ||
|
185b41beb4 | ||
|
2083000027 | ||
|
18d3fa953b | ||
|
f76e71825d | ||
|
6bf6d35637 | ||
|
9c03fd9cae | ||
|
34c8a46d7d | ||
|
26949607d2 | ||
|
e7c0d87d98 | ||
|
6d106d3943 | ||
|
a37cf9548c | ||
|
5e6acf9601 | ||
|
b52a5e6bd6 | ||
|
bb194ddb3c | ||
|
a38b34c37a | ||
|
1921ab40ea | ||
|
976c18aa5f | ||
|
4cddef1cea | ||
|
cbe94b88e2 | ||
|
275c5b51ed | ||
|
f85dbe83c8 | ||
|
a9c326b200 | ||
|
92f1c474f3 | ||
|
a6d02cff36 | ||
|
be94f9e35d | ||
|
e282580101 | ||
|
331f0953e9 | ||
|
133b892e0d | ||
|
60da49f856 | ||
|
d1d94216d1 | ||
|
bf50e3e5ae | ||
|
a978b88997 | ||
|
6dd5eac7fc | ||
|
968354923e | ||
|
59ddf81a45 | ||
|
3a7106f05a | ||
|
5c7a4f0b32 | ||
|
0e09048537 | ||
|
7362469d89 | ||
|
1273fbf86e | ||
|
a27879c0cf | ||
|
049cea30b0 | ||
|
b342c81c17 | ||
|
ead14f5bf0 | ||
|
0a53ca444a | ||
|
f79c10162e | ||
|
60b2b56d38 | ||
|
b6a19e7b89 | ||
|
71bc75e6ac | ||
|
e4fee6c138 | ||
|
7d8e3721ae | ||
|
fb421a1f46 | ||
|
2a9805b987 | ||
|
126f929c39 | ||
|
da42bfadb5 | ||
|
6ad72728f6 | ||
|
64d9c016bd | ||
|
12e7c81dd8 | ||
|
16d0aed403 | ||
|
da9317fa56 | ||
|
be92babd00 | ||
|
e2dd576a1b | ||
|
8f2c91568c | ||
|
98eaa2aa27 | ||
|
42b8220632 | ||
|
a91d968cab | ||
|
646de92781 | ||
|
ae2b722f55 | ||
|
7aeb9168b0 | ||
|
f53ed108b0 | ||
|
285038972b | ||
|
e5563843a2 | ||
|
c972e1ee1f | ||
|
5e8d037e27 | ||
|
ed7dc1704d | ||
|
436ce03772 | ||
|
d821aba002 | ||
|
4ce1540094 | ||
|
67243bda31 | ||
|
8f991831b8 | ||
|
87efa38721 | ||
|
f7301bd5b9 | ||
|
099a3b4eac | ||
|
3d4e21f1ec | ||
|
68dca26a5d | ||
|
1fc096ec75 | ||
|
21c2bc119c | ||
|
d23293c762 | ||
|
138e5a0b1e | ||
|
79dacea962 | ||
|
4e6b5e7879 | ||
|
c0979381a4 | ||
|
676f577e7e | ||
|
c1a8e3d1eb | ||
|
0c44316b22 | ||
|
2211e8d1cd | ||
|
3783cadf2d | ||
|
a071047c13 | ||
|
281f07244b | ||
|
6f34a6a77f | ||
|
e078919f07 | ||
|
7b13e6efc2 | ||
|
3f59238207 | ||
|
eff9416469 | ||
|
6fbb3841a6 | ||
|
d8c4781377 | ||
|
bc6e958229 | ||
|
a6d8d1036a | ||
|
3d403a013d | ||
|
9ca02a00a6 | ||
|
3e8e9c8ae4 | ||
|
7bc1805827 | ||
|
e27f792c24 | ||
|
98fab24bea | ||
|
f566c47dda | ||
|
0190aac240 | ||
|
cc382c5006 | ||
|
946a166791 | ||
|
31cd649041 | ||
|
1585b0c6cc | ||
|
15b43f555d | ||
|
d8ec832806 | ||
|
bab5a18232 | ||
|
a20cf3b64e | ||
|
356df7ae6b | ||
|
8f03fdce7f | ||
|
1fc6cb4997 | ||
|
eb832e88f4 | ||
|
b16b69350e | ||
|
da6fa029f6 | ||
|
94ad0706f5 | ||
|
bf8c2c4348 | ||
|
aa58cca040 | ||
|
5cc7cd8518 | ||
|
ff142eb64d | ||
|
500e28442f | ||
|
5bd3715a4c | ||
|
3d13f6ea0c | ||
|
6eefccdacc | ||
|
29a22691d2 | ||
|
d55f207274 | ||
|
cf6fe4f8cb | ||
|
4367443287 | ||
|
8d2b3ada80 | ||
|
f3be605286 | ||
|
aebebdc5d1 | ||
|
05e4728de7 | ||
|
b51945f096 | ||
|
1f2abd8d67 | ||
|
1d9f9352a6 | ||
|
53e42bf91e | ||
|
94d0e012de | ||
|
8fd931dc12 | ||
|
74d10b9b9d | ||
|
2356580cee | ||
|
1840a352f5 | ||
|
c93d0978f2 | ||
|
df4f4e94b3 | ||
|
51b2f789bd | ||
|
947887f261 | ||
|
6f34fdb616 | ||
|
8518d005fd | ||
|
bb911043de | ||
|
da0333f1cb | ||
|
d8a0ee1956 | ||
|
91c71471ab | ||
|
98eacb2238 | ||
|
80c13bf0ef | ||
|
e17c2e5da5 | ||
|
4a618908e8 | ||
|
a208e7d655 | ||
|
c1b9ae7fc2 | ||
|
dc8a6244fc | ||
|
0f52e42c2d | ||
|
85af2405cf | ||
|
47ace633dc | ||
|
85d5518b6b | ||
|
5104bd7988 | ||
|
3e425b51fd | ||
|
37dbfa4cd7 | ||
|
0d23c81662 | ||
|
b436b31d5a | ||
|
72133fbed6 | ||
|
abbdacedc5 | ||
|
ddd3251912 | ||
|
605e2a417c | ||
|
f8fe394e7a | ||
|
2a545e0fb1 | ||
|
ce812466c7 | ||
|
47bf7a8047 | ||
|
85d405c810 | ||
|
f596a413ef | ||
|
9e53fe5c29 | ||
|
3690f04e4a | ||
|
f3e8bc9f8f | ||
|
dcf0530218 | ||
|
47338bc13d | ||
|
6fb9726b99 | ||
|
8015fd7600 | ||
|
4919b89ab8 | ||
|
2925372ff4 | ||
|
778430b54a | ||
|
5282ba862a | ||
|
0464602978 | ||
|
9b03cf0ddd | ||
|
cdff1da901 | ||
|
1a065fb146 | ||
|
022008a2a6 | ||
|
a3715598cc | ||
|
1be48dd805 | ||
|
6384041d17 | ||
|
140e73bc82 | ||
|
e3fae6f52c | ||
|
65d8c73bae | ||
|
177dd8bb53 | ||
|
380b20eed6 | ||
|
c207b4bb33 | ||
|
b87eb8ea14 | ||
|
8902e265b4 | ||
|
b8ea28d6d0 | ||
|
f741673638 | ||
|
0a0b9a271a | ||
|
7d2b4186c3 | ||
|
90689190a3 | ||
|
8acadeea76 | ||
|
75c6513c67 | ||
|
73540ffe6b | ||
|
92bb166246 | ||
|
8cf8ce4ac0 | ||
|
0f1b1d78b1 | ||
|
d3bbef27e7 | ||
|
f0634ba876 | ||
|
1d68fe1a60 | ||
|
6bd6dcf6df | ||
|
28d2920472 | ||
|
34bfea8bbf | ||
|
2d91944285 | ||
|
0026ba2751 | ||
|
b623dd12c1 | ||
|
722d152082 | ||
|
7623766241 | ||
|
e34c5a3503 | ||
|
004672aa6c | ||
|
ad4a28f4f6 | ||
|
d8ae3efec3 | ||
|
cd81a1c52a | ||
|
dcf73ddeff | ||
|
d81b706f12 | ||
|
30fa5fe1a4 | ||
|
7a7bfa5170 | ||
|
e969c78645 | ||
|
7adac1bc51 | ||
|
e859d6f259 | ||
|
a0880edc6e | ||
|
61fcdbbf7e | ||
|
43af695ba1 | ||
|
facd90e7a6 | ||
|
6201f96b8a | ||
|
c26cea262b | ||
|
1f1d6bf2a0 | ||
|
4c06d1cb24 | ||
|
2985d08951 | ||
|
66ca7157db | ||
|
4addf051d4 | ||
|
ab914ce6d5 | ||
|
6a4b224397 | ||
|
6adbd114c1 | ||
|
037f96c5ae | ||
|
f54dca06a9 | ||
|
370fa70924 | ||
|
5be1214c26 | ||
|
f7a30e2fae | ||
|
3f815b2052 | ||
|
defe4f9bc3 | ||
|
943775fd90 | ||
|
42844df966 | ||
|
b0fe58dc69 | ||
|
e07b57852e | ||
|
7c7c18fdea | ||
|
a84664026e | ||
|
02a0fd5b64 | ||
|
6505a42be0 | ||
|
e674608d10 | ||
|
c7af8cbc90 | ||
|
9475fbae78 | ||
|
00e61d6807 | ||
|
19084d3c6c | ||
|
e014bf8ed0 | ||
|
f6e2309e70 | ||
|
9d2154c4ab | ||
|
1dfd27a028 | ||
|
b97ebaf620 | ||
|
8ee2eb5d2e | ||
|
20b647020b | ||
|
3eedad2737 | ||
|
ce7c0def88 | ||
|
dab8fc4584 | ||
|
8a597f0138 | ||
|
3363f2f4d6 | ||
|
c7f2d6af55 | ||
|
e878ddb7c0 | ||
|
336f0b0823 | ||
|
3ea3f24a02 | ||
|
d567a382e3 | ||
|
18fe77084f | ||
|
dc253ea234 | ||
|
9304114b57 | ||
|
1fd5251376 | ||
|
edddc7c791 | ||
|
10768aa204 | ||
|
e98559c3ff | ||
|
2212dc4aaa | ||
|
e1fdac3e9a | ||
|
1162f61ca3 | ||
|
39ea5c0e2e | ||
|
509b0cfafc | ||
|
fda5c699c2 | ||
|
cb7ee4698f | ||
|
d010e270e6 | ||
|
d1e08bd38c | ||
|
dbccdcc1b1 | ||
|
5c63523972 | ||
|
de4681b2be | ||
|
a132332b86 | ||
|
b25e42a77f | ||
|
5236a62861 | ||
|
0f155829b7 | ||
|
84dda45df9 | ||
|
9c7505489f | ||
|
75cad1d9d6 | ||
|
2cc3111a77 | ||
|
bf811e4d4a | ||
|
d6774d2ca3 | ||
|
bd669e3907 | ||
|
1a4860a57a | ||
|
41fa53253c | ||
|
c00ead8a72 | ||
|
e49dc6a06e | ||
|
0e12a8dab9 | ||
|
3652a39de0 | ||
|
79335e46fd | ||
|
7c6e02aaf3 | ||
|
7f55430652 | ||
|
8235623362 | ||
|
83435c49ea | ||
|
93de41b39b | ||
|
b1d4b74a44 | ||
|
bfdf47bc98 | ||
|
33f669a5f8 | ||
|
3576fa0d59 | ||
|
1dcfb90202 | ||
|
22cf18e16f | ||
|
0ebe7d6d23 | ||
|
23081bb299 | ||
|
4c7fe48c40 | ||
|
499cc7b803 | ||
|
7db98aa70e | ||
|
e031fd60ad | ||
|
bc4fad9e22 | ||
|
5ac4d677e9 | ||
|
b42bdd80e8 | ||
|
76fa9d2488 | ||
|
dfc43a6d3d | ||
|
67bc58dd60 | ||
|
2d39560dc1 | ||
|
c49ff7395e | ||
|
e0ada97770 | ||
|
3a2003ba86 | ||
|
9a81be0d37 | ||
|
5e2c5e95b6 | ||
|
34a93ccf57 | ||
|
922fb74197 | ||
|
7bf2d6cb06 | ||
|
11e5c965c3 | ||
|
34157d118c | ||
|
7b92950f1c | ||
|
97d7028c31 | ||
|
a7f2961621 | ||
|
00dda99789 | ||
|
2e27ce3b61 | ||
|
2c10c5a069 | ||
|
bd4dd4c4a0 | ||
|
7d33b60f3f | ||
|
aecce5694b | ||
|
0e4ca51951 | ||
|
dde043f6cd | ||
|
c778a60e4f | ||
|
c347327d54 | ||
|
fd328cf6e8 | ||
|
7b473d7514 | ||
|
dff576b75d | ||
|
52ae83d008 | ||
|
5aacd9d4c7 | ||
|
d24d3fa283 | ||
|
c8a226f61c | ||
|
7a281c477a | ||
|
91c789ec63 | ||
|
9ead3d1cdb | ||
|
402c19a924 | ||
|
b5e8994844 | ||
|
4bd327a0c5 | ||
|
184325077e | ||
|
8236f942ff | ||
|
8963f8c3c2 | ||
|
5e41c26203 | ||
|
45837c533e | ||
|
3fa8512474 | ||
|
0e20de9f89 | ||
|
24d645b7d0 | ||
|
7b23f79d41 | ||
|
3b4095cf1b | ||
|
28cbfb9f10 | ||
|
189a06d2a2 | ||
|
450441fc11 | ||
|
b619362a36 | ||
|
425d02287a | ||
|
2e429c0c25 | ||
|
e0e12b0fee | ||
|
62ca37884a | ||
|
f9180823bc | ||
|
4b0c667c09 | ||
|
1b732cad61 | ||
|
ecef03bb15 | ||
|
9642601126 | ||
|
3836d293a1 | ||
|
0734e1fe33 | ||
|
44cb08297c | ||
|
bd21afb5ed | ||
|
ef80ad17b3 | ||
|
9ea4f37e78 | ||
|
c48772fd3f | ||
|
860e257a68 | ||
|
902d9e34b4 | ||
|
2d97c898f2 | ||
|
f6a93fc150 | ||
|
019f3377bb | ||
|
4b11675bdc | ||
|
2531c5953b | ||
|
c6db416ff7 | ||
|
b00cb2aed3 | ||
|
7c67cb5997 | ||
|
a098d08d12 | ||
|
6267759607 | ||
|
bc39ad37c4 | ||
|
a6ba004bf5 | ||
|
b89ab7e69d | ||
|
33d7338779 | ||
|
cf4fe6cab8 | ||
|
2241a15ee9 | ||
|
bca334cd28 | ||
|
3e3ec9b2c8 | ||
|
a8736aab7a | ||
|
71b266377c | ||
|
08dce5e607 | ||
|
2469fd1cdc | ||
|
531c1bb245 | ||
|
58f5040ee8 | ||
|
838f51770b | ||
|
c52090dbfe | ||
|
807c192fcf | ||
|
3b59f9c6c2 | ||
|
135bdd149e | ||
|
3572138b16 | ||
|
9f69aa3cb1 | ||
|
f5c3d20e9c | ||
|
1ec7c87001 | ||
|
8e4d1cba00 | ||
|
676ba50601 | ||
|
bbc3db8b20 | ||
|
f937cad68f | ||
|
be83d450eb | ||
|
1fd18a61bd | ||
|
5d9f479538 | ||
|
3ce9ca4c99 | ||
|
2ca1f0737a | ||
|
19ecde8fe7 | ||
|
7ee5fc5d68 | ||
|
4289ed1d13 | ||
|
256e3adc1d | ||
|
152b4d54e8 | ||
|
ea2ef16ea4 | ||
|
1d3e0a5060 | ||
|
bf575a1f5e | ||
|
860ffc0560 | ||
|
7eb4abe20a | ||
|
1baa75f79f | ||
|
1d436a4322 | ||
|
8fd174298d | ||
|
9afd7dadbf | ||
|
8e84177305 | ||
|
a28ce13b3e | ||
|
e1b42e9aa0 | ||
|
b51398d0dd | ||
|
ec34ec63b1 | ||
|
4a4733b397 | ||
|
bda7391221 | ||
|
b9e8ffbd12 | ||
|
7966d3a872 | ||
|
422e4d897b | ||
|
cb2707776f | ||
|
48e7a22e34 | ||
|
2bb5486357 | ||
|
60e2b951de | ||
|
a94c152fd3 | ||
|
9d04de1c8d | ||
|
73e4468ff3 | ||
|
fbbd80b40b | ||
|
361a606edb | ||
|
df92f010ad | ||
|
07af8c05fd | ||
|
aa662cecad | ||
|
84608c3ff8 | ||
|
b69365e397 | ||
|
a478af92c3 | ||
|
7fba4cb3d1 | ||
|
a4c757767f | ||
|
2af5cd96fe | ||
|
860f408475 | ||
|
440441ccb3 | ||
|
3eb13307ca | ||
|
756db8103a | ||
|
20c0054460 | ||
|
ae78d012ac | ||
|
ef900789bc | ||
|
d78f555254 | ||
|
c2f70829d9 | ||
|
b280c387c8 | ||
|
b75f13927e | ||
|
22cb286ad7 | ||
|
8f4b7c1820 | ||
|
2e112e2406 | ||
|
812fe90eca | ||
|
6c1122a1d9 | ||
|
d3be2b582a | ||
|
419226d1f6 | ||
|
f554807563 | ||
|
d972845ff6 | ||
|
2c405aed55 | ||
|
da0a18a318 | ||
|
8ed3fa1693 | ||
|
60fe9983ee | ||
|
724fc3cbdf | ||
|
de475cf8d3 | ||
|
b369fc2de4 | ||
|
8c5eaf7ae9 | ||
|
7eb8b2efad | ||
|
b6f6152e26 | ||
|
f8ee136c29 | ||
|
f1ab70649b | ||
|
1548695c83 | ||
|
3da521a586 | ||
|
d22cec81fb | ||
|
d2e0edd721 | ||
|
3002a89419 | ||
|
17ba662004 | ||
|
db4119f971 | ||
|
4a3db71692 | ||
|
dc559d6b7a | ||
|
595e060347 | ||
|
8e4fc5d5d2 | ||
|
b8b7b506a2 | ||
|
550863198c | ||
|
198ae3e366 | ||
|
6e4c7d6211 | ||
|
d2542dcec0 | ||
|
f18a6c2cf2 | ||
|
25e5aa645d | ||
|
620d0d8029 | ||
|
8ec8410651 | ||
|
4cc8ddabe5 | ||
|
07e875972a | ||
|
79ef8b3653 | ||
|
b11c4326d2 | ||
|
390a2a8ab9 | ||
|
cf6f67997e | ||
|
4d1ce3c7ad | ||
|
76449df903 | ||
|
226c9836e4 | ||
|
05008f3930 | ||
|
59ceeae8ea | ||
|
b397f69633 | ||
|
5b3c7572ca | ||
|
e89e4355eb | ||
|
abe0d9421f | ||
|
7c1f3f8163 | ||
|
eab93992d1 | ||
|
0d59d7c680 | ||
|
1efda1c453 | ||
|
a51c8074df | ||
|
3722f90865 | ||
|
9bddb946f0 | ||
|
bbaac89eb0 | ||
|
0dfffb6dcb | ||
|
1b0a5658f1 | ||
|
682b68438e | ||
|
09ec6e504b | ||
|
a2a2af244c | ||
|
cb50ecdb07 | ||
|
1379124682 | ||
|
0b34ade66b | ||
|
191696ab30 | ||
|
af706583bd | ||
|
85c9496340 | ||
|
6ee3a10f17 | ||
|
d0dd9eb5b5 | ||
|
a588358f41 | ||
|
0a110d07b6 | ||
|
5f727f9068 | ||
|
72c8562cc9 | ||
|
882e4f5322 | ||
|
bc1a91f4cd | ||
|
aeb90b7c4a | ||
|
fb87e847bc | ||
|
657496b5a9 | ||
|
fd03a3d957 | ||
|
4bd0488a77 | ||
|
1b17da6ed9 | ||
|
dc5b746f42 | ||
|
89210781cb | ||
|
e9810cbad6 | ||
|
1027556614 | ||
|
3dcb5fa28f | ||
|
1d5dcfcd46 | ||
|
66ff9ed34e | ||
|
66328adf83 | ||
|
b65950bb2e | ||
|
0d70fe2659 | ||
|
a1fc2cfa09 | ||
|
b535966ab5 | ||
|
02412429ab | ||
|
5abdc77c80 | ||
|
b5a9c6b3d2 | ||
|
60f3230a05 | ||
|
0cb4b9205c | ||
|
43d754eb42 | ||
|
2cc0d56652 | ||
|
e0c3ed29d8 | ||
|
2991a7cfe6 | ||
|
44a3584e2d | ||
|
831386977e | ||
|
68035966fb | ||
|
62a98a3f0e | ||
|
888864ad5a | ||
|
654f4f62ed | ||
|
58bcd50f7f | ||
|
60ecfb87ae | ||
|
d0ef318eaa | ||
|
65f9db73b0 | ||
|
a822f7a05a | ||
|
a2c8da0185 | ||
|
88fd5cb688 | ||
|
c78e8c01a3 | ||
|
0ec77c5b3e | ||
|
2d000e9c4e | ||
|
b913746752 | ||
|
9cd3a6836b | ||
|
53c2274d48 | ||
|
7ff84cb07e | ||
|
e6fbf0334f | ||
|
72698bc3b4 | ||
|
65027657ec | ||
|
08949cca41 | ||
|
a231f915a0 | ||
|
c3ef5d5414 | ||
|
57a3d71c90 | ||
|
43db2cf5e7 | ||
|
cc9a6a710f | ||
|
2fba4196ef | ||
|
fd66f7cdc0 | ||
|
d142544159 | ||
|
7ac092513c | ||
|
2db53526c9 | ||
|
1f28d40c78 | ||
|
e2491680e6 | ||
|
3a38322a54 | ||
|
29d8313b28 | ||
|
682507bc3c | ||
|
441d6dc734 | ||
|
d5cabfe5c6 | ||
|
af6a84da14 | ||
|
08e94d1b19 | ||
|
2fba94b36e | ||
|
8c9116dc98 | ||
|
42eb841dc2 | ||
|
584b45530c | ||
|
f5cdea5122 | ||
|
f36a791227 | ||
|
ef226a6f22 | ||
|
7c249dfd88 | ||
|
5bea42412e | ||
|
04166c4a35 | ||
|
fed585e3f4 | ||
|
406229d927 | ||
|
7a7d12d27f | ||
|
cd830a2fab | ||
|
aef554d553 | ||
|
01c4c29b3a | ||
|
459bbfa4b2 | ||
|
7140def5c9 | ||
|
b85dec2b97 | ||
|
cbd673601c | ||
|
66a3979cba | ||
|
9de254c46e | ||
|
388e70b881 | ||
|
8c9aff0bef | ||
|
48594b18e6 | ||
|
b18504adfe | ||
|
bba537a7be | ||
|
0291b73de7 | ||
|
28e674bc6a | ||
|
9d84dda213 | ||
|
d63c291f86 | ||
|
6ad19036e3 | ||
|
3bdcf5d8f0 | ||
|
5c1f70b5c5 | ||
|
c7848f54ff | ||
|
267ed3d74b | ||
|
d3704fdb09 | ||
|
ca05bfaac7 | ||
|
e4b84c7ba5 | ||
|
983593ddf4 | ||
|
f14df43435 | ||
|
f000673599 | ||
|
5b6c2a1e72 | ||
|
d372068620 | ||
|
139d183485 | ||
|
d7c17c32af | ||
|
ee1486a7de | ||
|
b8ba719f73 | ||
|
ada8a6cb77 | ||
|
6c678b7472 | ||
|
bfbfaf9f9f | ||
|
df81bc4a97 | ||
|
87588fa894 | ||
|
74036a2c9d | ||
|
05b72368ed | ||
|
6f71cfeff9 | ||
|
59ca634b89 | ||
|
8009366231 | ||
|
bd71327180 | ||
|
67b7d3d3b6 | ||
|
6358a169fd | ||
|
99b9a0e5de | ||
|
aa235318fc | ||
|
a0b1951791 | ||
|
2d45794956 | ||
|
453fb84c9c | ||
|
59804abc3d | ||
|
496f466d73 | ||
|
fa033c4d5f | ||
|
b8e166894b | ||
|
1f15a15621 | ||
|
fd1e29c3f8 | ||
|
553e13144f | ||
|
494945ff4f | ||
|
7c0cd2597a | ||
|
37caf0b36e | ||
|
cf0b753209 | ||
|
ddc34feb58 | ||
|
3f5b994ff0 | ||
|
dacdfec973 | ||
|
72c30f8393 | ||
|
4e05751346 | ||
|
ee3e0a93f4 | ||
|
d1290fbd8f | ||
|
484c9709b6 | ||
|
d08f1112d5 | ||
|
bcfd9a2f8e | ||
|
886176f854 | ||
|
d397d0d681 | ||
|
20c37ed0f9 | ||
|
9501a87704 | ||
|
8f0f4a861a | ||
|
8c9ea9b849 | ||
|
4d22d03fab | ||
|
81584779cb | ||
|
61c33652ad | ||
|
f9d398e8fb | ||
|
74c8ca699c | ||
|
eddb95b012 | ||
|
84eb425f38 | ||
|
a50a87457e | ||
|
566e0a772d | ||
|
11077af52f | ||
|
0fc73a6e47 | ||
|
2bd132d458 | ||
|
91ddd345f2 | ||
|
75bd141e22 | ||
|
0cdcf32865 | ||
|
629a4d0fca | ||
|
e95983f5df | ||
|
e37e84d210 | ||
|
e57e6f509d | ||
|
bea117a4b6 | ||
|
908b96a370 | ||
|
13c16b4e95 | ||
|
4fcc0d5ac9 | ||
|
3b51581f1b | ||
|
db92eec876 | ||
|
44969307c7 | ||
|
4babdff72f | ||
|
c997091166 | ||
|
005f1fd360 | ||
|
8d4e7504b1 | ||
|
aa6a26a2d5 | ||
|
d91ba3c8d0 | ||
|
bafd22ecf4 | ||
|
dd9d57300b | ||
|
8c5ad23b24 | ||
|
53384b0ffe | ||
|
1c469ca98b | ||
|
e61ecf4091 | ||
|
90c00f075a | ||
|
38473f0aa0 | ||
|
24a5d13d60 | ||
|
383c0b7802 | ||
|
bf8031e984 | ||
|
ab307b816b | ||
|
40562fd266 | ||
|
5f9cb48882 | ||
|
2ab7dc9a55 | ||
|
2b9bc9c154 | ||
|
f5bf5ebb82 | ||
|
26bc591572 | ||
|
268dd32d76 | ||
|
bea97ea766 | ||
|
03f3223d72 | ||
|
7880671f35 | ||
|
b5eec34230 | ||
|
2128682162 | ||
|
e68c0ce5f6 | ||
|
54dddfe9b8 | ||
|
aea3aff4e4 | ||
|
46943b64c6 | ||
|
302c0d2046 | ||
|
22b1a70274 | ||
|
6f75c8451d | ||
|
b9b78549f3 | ||
|
438ce5809f | ||
|
f485fa31f3 | ||
|
34ae4cf511 | ||
|
298796cc7b | ||
|
a4859446ab | ||
|
7bffd16024 | ||
|
2bd46f442d | ||
|
11b706acdf | ||
|
33b9e8d461 | ||
|
f025cc6782 | ||
|
3988f2dade | ||
|
1899cf5f04 | ||
|
5259319cf5 | ||
|
b83bc0ae64 | ||
|
282427cdd9 | ||
|
c67d3c990b | ||
|
2e47fe3e1a | ||
|
e12bb39c20 | ||
|
5caa727e7e | ||
|
0a46201a66 | ||
|
3f248dcaae | ||
|
baa43e40a0 | ||
|
a6788662b0 | ||
|
4a5f73c8ae | ||
|
fdcf884cf7 | ||
|
964035b118 | ||
|
5135d609b7 | ||
|
f48cb3eb17 | ||
|
8325866c61 | ||
|
01e011bc90 | ||
|
e3b60b07d9 | ||
|
d0665726ca | ||
|
96c84da1d4 | ||
|
7d36a76180 | ||
|
197af5de70 | ||
|
27301312a6 | ||
|
8ac7fca5d0 | ||
|
a823509b99 | ||
|
298d28af51 | ||
|
439b2dceda | ||
|
9262f6968b | ||
|
71e73e36cd | ||
|
01c206326f | ||
|
9566893cc9 | ||
|
0e2589867f | ||
|
4acc386dd5 | ||
|
429480bb77 | ||
|
61067dc2e6 | ||
|
effb08edbb | ||
|
d1b4ebe07d | ||
|
5eef9dab80 | ||
|
2ca246d7d1 | ||
|
9a085e138e | ||
|
546b5a9dcf | ||
|
a39e719b39 | ||
|
f51b2cb2e7 | ||
|
9736753985 | ||
|
ea783d3632 | ||
|
074e9612a2 | ||
|
7406404fa3 | ||
|
010e4f2879 | ||
|
ebbbcfef1c | ||
|
3d776de2cb | ||
|
831ff60698 | ||
|
c25426ca47 | ||
|
09b93aaf85 | ||
|
d4fedf84e0 | ||
|
2af4f3c4e2 | ||
|
b8e7eee837 | ||
|
b48c9013aa | ||
|
b48f2cbc8b | ||
|
1736badf28 | ||
|
88725d6ce8 | ||
|
be0a01145b | ||
|
1f805a6377 | ||
|
e595ccb294 | ||
|
43a29a9d0f | ||
|
0dd71af5fa | ||
|
0618f09939 | ||
|
a23eaf720e | ||
|
9d3fc1281d | ||
|
8857cabca4 | ||
|
affd75936e | ||
|
3e78b7cc3a | ||
|
647a148d4d | ||
|
bb777c24ff | ||
|
0576daf5f9 | ||
|
c442cade78 | ||
|
6004b143a8 | ||
|
25cbb8454c | ||
|
416c9675fc | ||
|
6a1e287053 | ||
|
5bda32e460 | ||
|
6137268e79 | ||
|
234e931db2 | ||
|
fdcb55a0a6 | ||
|
d97a0525aa | ||
|
193dddb433 | ||
|
8fe36654ef | ||
|
8ee1af9530 | ||
|
e4c294432f | ||
|
3ebaeccec9 | ||
|
7177e37b99 | ||
|
fbc5099402 | ||
|
45b379abac | ||
|
6ae975996e | ||
|
5d26c70a9c | ||
|
322cbf83c8 | ||
|
fc99d11703 | ||
|
48652cb41e | ||
|
d4f7f11c3c | ||
|
1ce951d0be | ||
|
52c119052a | ||
|
9317ec8eb1 | ||
|
1b9447853b | ||
|
122d59ac41 | ||
|
8b5179d006 | ||
|
3ea5b948a4 | ||
|
164bad171f | ||
|
acc691851d | ||
|
d2159deaf2 | ||
|
17c591ffba | ||
|
bb04a9be52 | ||
|
338df98ddf | ||
|
da022e1e4f | ||
|
f098f55cab | ||
|
bc955eaf61 | ||
|
2d99c962df | ||
|
e59f5c8e13 | ||
|
b073b092c9 | ||
|
092fdc89fa | ||
|
d000a0b58a | ||
|
cf845fed38 | ||
|
72c984e105 | ||
|
3d3707a077 | ||
|
a0dd90a397 | ||
|
1e2a5dded7 | ||
|
549ce78cf5 | ||
|
1801a36414 | ||
|
501514960a | ||
|
ef5937da1f | ||
|
072c6f1527 | ||
|
55e32fe579 | ||
|
7ee8e50b9c | ||
|
995f0ad51c | ||
|
948dd26931 | ||
|
55e1e12b7d | ||
|
6e27e08cb4 | ||
|
d670f72830 | ||
|
57cd6546c3 | ||
|
1244630ab4 | ||
|
a9a4710fe1 | ||
|
cc83ee60fb | ||
|
89dc29affb | ||
|
85e09518b9 | ||
|
663f090c45 | ||
|
1cf9e14a41 | ||
|
0c2fe22bc1 | ||
|
6f0b3b069f | ||
|
9cd20a7062 | ||
|
219fb317ee | ||
|
66fd8e7821 | ||
|
83e3538181 | ||
|
723f25a999 | ||
|
59b1de0bcf | ||
|
df46864b39 | ||
|
cca41ea544 | ||
|
532bec6e56 | ||
|
ee82d8a876 | ||
|
1646ca75f0 | ||
|
f876665264 | ||
|
5817bae2da | ||
|
4cfc155560 | ||
|
a1174a6d7e | ||
|
5357329454 | ||
|
7fea36d155 | ||
|
2bf7e81ed5 | ||
|
ca8ae21b52 | ||
|
d0ec4fb828 | ||
|
4428cf6f07 | ||
|
fe43991d02 | ||
|
8565ba68f7 | ||
|
629d35e6f5 | ||
|
67dea31b0f | ||
|
6af21daac9 | ||
|
9d3be5579a | ||
|
05ac28f3e4 | ||
|
0f852c6f74 | ||
|
974ac467de | ||
|
af7d02da5d | ||
|
5abd543766 | ||
|
1948f9e767 | ||
|
27ea2a88c1 | ||
|
16cd648181 | ||
|
53b21ac1cd | ||
|
e4550811b2 | ||
|
704846a258 | ||
|
935aecdc32 | ||
|
1714f08d75 | ||
|
452dc6b5fe | ||
|
5c9aa2b732 | ||
|
78af88e1f4 | ||
|
74c474a652 | ||
|
5e33ad29d4 | ||
|
27a99b19e8 | ||
|
ee0c897bba | ||
|
ceecf96208 | ||
|
47a3036ea6 | ||
|
d2dc31a74a | ||
|
60a9b938b4 | ||
|
dd517b9a55 | ||
|
b3329c362e | ||
|
b00f4a0cf3 | ||
|
a0ed88a99b | ||
|
25d2853db2 | ||
|
1930051bde | ||
|
6c34eafe02 | ||
|
bbff431e3a | ||
|
3660a321f0 | ||
|
e06f307c2d | ||
|
3b342be2f2 | ||
|
2dda356e3f | ||
|
972f6bc861 | ||
|
d2514445e1 | ||
|
daa46f14c4 | ||
|
1ada494bb2 | ||
|
4df26b2621 | ||
|
556f68ab15 | ||
|
fdb2689a14 | ||
|
598d3defd5 | ||
|
7f8044d913 | ||
|
66b39ccaed | ||
|
cae2a26ee3 | ||
|
b79ba3db8a | ||
|
59a77923b3 | ||
|
2e4afccd9d | ||
|
0876a06e45 | ||
|
43caf1fa5f | ||
|
2c0d756ad9 | ||
|
f06cba3f60 | ||
|
09dad88853 | ||
|
7832425fdd | ||
|
abe16a7026 | ||
|
baabbce672 | ||
|
1d47910d3b | ||
|
708bdd53f1 | ||
|
2510119f19 | ||
|
fe1ddc3b96 | ||
|
a3486e0543 | ||
|
30183c0a74 | ||
|
15a4fc5dcc | ||
|
a8e1afc30a | ||
|
bfbc2ca0d8 | ||
|
5ce8a1811a | ||
|
dca0ffa1a1 | ||
|
70891a99a9 | ||
|
3572f4423f | ||
|
23eea5c5ae | ||
|
35bdacba7a | ||
|
97012487ed | ||
|
9a7ea7c870 | ||
|
1ac41c873a | ||
|
6c83fec971 | ||
|
2bb54d5c57 | ||
|
8b8e140c71 | ||
|
8bac0350d1 | ||
|
c0b30c56db | ||
|
0a850a8edb | ||
|
71f5cf12d2 | ||
|
9d8bf4ea42 | ||
|
96268e76e6 | ||
|
c6a4ab3b92 | ||
|
e09ab2c0bd | ||
|
6bd1019235 | ||
|
0d6c1e9cba | ||
|
ff5baa5349 | ||
|
297c11dba2 | ||
|
0a7588282a | ||
|
3ed219f907 | ||
|
55e1503522 | ||
|
66d8f99a30 | ||
|
f23281e31e | ||
|
9783d8b6c0 | ||
|
7525971561 | ||
|
84b5fae8e3 | ||
|
d90b1650d8 | ||
|
23ecc681c4 | ||
|
82bbf57e7a | ||
|
0790aa9165 | ||
|
e2a1b574ab | ||
|
880590ad0d | ||
|
ee919bedd6 | ||
|
0a1b024600 | ||
|
50ed72767d | ||
|
75910abd8f | ||
|
93c13fe691 | ||
|
42d54dc9ea | ||
|
57d784f1e4 | ||
|
16d50f60d1 | ||
|
0e0347ea3c | ||
|
f5cd0b4956 | ||
|
2fd0473aa1 | ||
|
f03fb6c0ae | ||
|
8d3412c90c | ||
|
9cefb5731d | ||
|
00a85f31ca | ||
|
389f8f8249 | ||
|
e1e15adf1d | ||
|
f96f8d0176 | ||
|
a05e7582e4 | ||
|
fc122e9d78 | ||
|
7d1e653ec1 | ||
|
7b397b1452 | ||
|
8fd6552bca | ||
|
4ed12cd89a | ||
|
cc1361c149 | ||
|
15ec4ae07b | ||
|
e43071a2f9 | ||
|
21a767dcfa | ||
|
3399dd7a66 | ||
|
630de52fdd | ||
|
f8546ad5a2 | ||
|
4082e1ac7f | ||
|
6b8e95ea00 | ||
|
e813810e03 | ||
|
ffb99325ca | ||
|
fd62d4de10 | ||
|
e9eaf9e33c | ||
|
e22f9819bb | ||
|
f3b86c1bda | ||
|
833bfd77f2 | ||
|
6685106daa | ||
|
8ad6722eea | ||
|
548ff54714 | ||
|
a67909ec1e | ||
|
6afe70db95 | ||
|
b87a08e160 | ||
|
be6cabb315 | ||
|
f8ae12909c | ||
|
78bdfc4589 | ||
|
d87ee1167e | ||
|
64e1d51025 | ||
|
7a5086729a | ||
|
5e94643058 | ||
|
dc6fe4e04b | ||
|
1955a3f444 | ||
|
8ebed7fc68 | ||
|
8f2ed79a0b | ||
|
2b6b89491d | ||
|
f902a335f9 | ||
|
e4af4898de | ||
|
6d70a80263 | ||
|
0cbcc5e297 | ||
|
f87b51fda8 | ||
|
7e2e0d6dcc | ||
|
181115422c | ||
|
86d1dcc97a | ||
|
86eaaf0761 | ||
|
19f63ff801 | ||
|
babbb2135e | ||
|
acd33101c5 | ||
|
99226aba93 | ||
|
42c9d5111a | ||
|
e0b5a94a4b | ||
|
26ec042f38 | ||
|
73b0af5c93 | ||
|
7efde22c3a | ||
|
90760eae4c | ||
|
fc34e0e191 | ||
|
de72db99fa | ||
|
77d1447ac4 | ||
|
2c329f2b69 | ||
|
c2762fa498 | ||
|
0611209141 | ||
|
da302a43cd | ||
|
8f8319852c | ||
|
75f416a492 | ||
|
24baaa17e8 | ||
|
c99fc08a0d | ||
|
a8f45c0838 | ||
|
6df63465b9 | ||
|
13b11ddc8c | ||
|
f2997c9715 | ||
|
e17f9d5e1a | ||
|
865cb39e9b | ||
|
5d710b1139 | ||
|
fd81916e86 | ||
|
8a58942c80 | ||
|
f97272549c | ||
|
363de2dffd | ||
|
6a1ac9b31f | ||
|
3834e1e69b | ||
|
95bcbaa434 | ||
|
911338bdcc | ||
|
0f8b7d0660 | ||
|
e332552816 | ||
|
0d83569899 | ||
|
515434ed87 | ||
|
3d3e32befb | ||
|
fa08b5079d | ||
|
00392d3c63 | ||
|
28606d730a | ||
|
1c8477eab2 | ||
|
6670e6d33f | ||
|
9d2f55ecc3 | ||
|
b7ec2fd492 | ||
|
3b8908c114 | ||
|
7b10794afb | ||
|
355965c17b | ||
|
0f889523e4 | ||
|
f4045ba3d9 | ||
|
df4ff9a8e1 | ||
|
67ad84b7eb | ||
|
f0f6a3279a | ||
|
9e620ca16c | ||
|
bddd36f260 | ||
|
b857551617 | ||
|
e28a5aab08 | ||
|
f9d7ec8971 | ||
|
40fd1de488 | ||
|
31f0bcf804 | ||
|
09540192c9 | ||
|
08059ddda9 | ||
|
a3aa9381c4 | ||
|
120a37a197 | ||
|
ec9999cdfe | ||
|
e806d3c3f0 | ||
|
4ba6acd518 | ||
|
061922b38c | ||
|
5d8d827436 | ||
|
cde1f37d93 | ||
|
89707ad0ac | ||
|
4bebeb27d3 | ||
|
ef879a8839 | ||
|
9240ca6cef | ||
|
619817d29e | ||
|
0655f16cc1 | ||
|
ade004b5ee | ||
|
7609593e48 | ||
|
a9529d3b4b | ||
|
0d2910478a | ||
|
5ab0ffc6c8 | ||
|
8482f67caf | ||
|
fe8dd58bc1 | ||
|
92cd207c50 | ||
|
f5cd138323 | ||
|
66ea015a01 | ||
|
1616cf98a1 | ||
|
5aae6384ff | ||
|
fa89deb4eb | ||
|
26a892dd90 | ||
|
8321884eef | ||
|
290e8ef854 | ||
|
067eb220c6 | ||
|
1467515d3d | ||
|
8b74aa4217 | ||
|
a6807201d2 | ||
|
4445ebdad2 | ||
|
c019b0acfd |
64
.babelrc
@@ -1,7 +1,65 @@
|
||||
{
|
||||
"presets": ["es2015", "react"],
|
||||
"presets": [
|
||||
"react",
|
||||
[
|
||||
"env",
|
||||
{
|
||||
"loose": true,
|
||||
"modules": false,
|
||||
"targets": {
|
||||
"browsers": ["last 2 versions", "IE >= 11", "iOS >= 9"]
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
"plugins": [
|
||||
"syntax-dynamic-import",
|
||||
["transform-object-rest-spread", { "useBuiltIns": true }],
|
||||
"transform-decorators-legacy",
|
||||
"transform-object-rest-spread"
|
||||
]
|
||||
"transform-class-properties",
|
||||
[
|
||||
"react-intl",
|
||||
{
|
||||
"messagesDir": "./build/messages"
|
||||
}
|
||||
],
|
||||
"preval"
|
||||
],
|
||||
"env": {
|
||||
"development": {
|
||||
"plugins": [
|
||||
"transform-react-jsx-source",
|
||||
"transform-react-jsx-self"
|
||||
]
|
||||
},
|
||||
"production": {
|
||||
"plugins": [
|
||||
"lodash",
|
||||
[
|
||||
"transform-react-remove-prop-types",
|
||||
{
|
||||
"mode": "remove",
|
||||
"removeImport": true,
|
||||
"additionalLibraries": [
|
||||
"react-immutable-proptypes"
|
||||
]
|
||||
}
|
||||
],
|
||||
"transform-react-inline-elements",
|
||||
[
|
||||
"transform-runtime",
|
||||
{
|
||||
"helpers": true,
|
||||
"polyfill": false,
|
||||
"regenerator": false
|
||||
}
|
||||
]
|
||||
]
|
||||
},
|
||||
"test": {
|
||||
"plugins": [
|
||||
"transform-es2015-modules-commonjs"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -1,2 +1,3 @@
|
||||
https://github.com/heroku/heroku-buildpack-apt
|
||||
https://github.com/Scalingo/nodejs-buildpack
|
||||
https://github.com/Scalingo/ruby-buildpack
|
||||
|
@@ -1,20 +1,37 @@
|
||||
engines:
|
||||
duplication:
|
||||
enabled: true
|
||||
exclude_paths:
|
||||
- app/assets/javascripts/components/locales/
|
||||
config:
|
||||
languages:
|
||||
- ruby
|
||||
- javascript
|
||||
rubocop:
|
||||
enabled: true
|
||||
eslint:
|
||||
enabled: true
|
||||
ratings:
|
||||
paths:
|
||||
- "**.rb"
|
||||
- "**.js"
|
||||
exclude_paths:
|
||||
version: "2"
|
||||
checks:
|
||||
argument-count:
|
||||
enabled: false
|
||||
complex-logic:
|
||||
enabled: false
|
||||
file-lines:
|
||||
enabled: false
|
||||
method-complexity:
|
||||
enabled: false
|
||||
method-count:
|
||||
enabled: false
|
||||
method-lines:
|
||||
enabled: false
|
||||
nested-control-flow:
|
||||
enabled: false
|
||||
return-statements:
|
||||
enabled: false
|
||||
similar-code:
|
||||
enabled: false
|
||||
identical-code:
|
||||
enabled: false
|
||||
plugins:
|
||||
brakeman:
|
||||
enabled: true
|
||||
bundler-audit:
|
||||
enabled: true
|
||||
eslint:
|
||||
enabled: true
|
||||
channel: eslint-4
|
||||
rubocop:
|
||||
enabled: true
|
||||
scss-lint:
|
||||
enabled: true
|
||||
exclude_patterns:
|
||||
- spec/
|
||||
- vendor/asset
|
||||
|
@@ -2,7 +2,12 @@
|
||||
.env.*
|
||||
public/system
|
||||
public/assets
|
||||
public/packs
|
||||
node_modules
|
||||
storybook
|
||||
neo4j
|
||||
vendor/bundle
|
||||
.DS_Store
|
||||
*.swp
|
||||
*~
|
||||
postgres
|
||||
redis
|
||||
|
226
.env.nanobox
Normal file
@@ -0,0 +1,226 @@
|
||||
# Service dependencies
|
||||
# You may set REDIS_URL instead for more advanced options
|
||||
REDIS_HOST=$DATA_REDIS_HOST
|
||||
REDIS_PORT=6379
|
||||
# REDIS_DB=0
|
||||
|
||||
# You may set DATABASE_URL instead for more advanced options
|
||||
DB_HOST=$DATA_DB_HOST
|
||||
DB_USER=$DATA_DB_USER
|
||||
DB_NAME=gonano
|
||||
DB_PASS=$DATA_DB_PASS
|
||||
DB_PORT=5432
|
||||
|
||||
DATABASE_URL=postgresql://$DATA_DB_USER:$DATA_DB_PASS@$DATA_DB_HOST/gonano
|
||||
|
||||
# Optional ElasticSearch configuration
|
||||
# ES_ENABLED=true
|
||||
# ES_HOST=localhost
|
||||
# ES_PORT=9200
|
||||
|
||||
# Optimizations
|
||||
LD_PRELOAD=/data/lib/libjemalloc.so
|
||||
|
||||
# ImageMagick optimizations
|
||||
MAGICK_TEMPORARY_PATH=/app/tmp
|
||||
MAGICK_MEMORY_LIMIT=128MiB
|
||||
MAGICK_MAP_LIMIT=64MiB
|
||||
MAGICK_TIME_LIMIT=15
|
||||
MAGICK_AREA_LIMIT=16MP
|
||||
MAGICK_WIDTH_LIMIT=8KP
|
||||
MAGICK_HEIGHT_LIMIT=8KP
|
||||
|
||||
# Federation
|
||||
# Note: Changing LOCAL_DOMAIN at a later time will cause unwanted side effects, including breaking all existing federation.
|
||||
# LOCAL_DOMAIN should *NOT* contain the protocol part of the domain e.g https://example.com.
|
||||
LOCAL_DOMAIN=${APP_NAME}.nanoapp.io
|
||||
|
||||
# Changing LOCAL_HTTPS in production is no longer supported. (Mastodon will always serve https:// links)
|
||||
|
||||
# Use this only if you need to run mastodon on a different domain than the one used for federation.
|
||||
# You can read more about this option on https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Serving_a_different_domain.md
|
||||
# DO *NOT* USE THIS UNLESS YOU KNOW *EXACTLY* WHAT YOU ARE DOING.
|
||||
# WEB_DOMAIN=mastodon.example.com
|
||||
|
||||
# Use this if you want to have several aliases handler@example1.com
|
||||
# handler@example2.com etc. for the same user. LOCAL_DOMAIN should not
|
||||
# be added. Comma separated values
|
||||
# ALTERNATE_DOMAINS=example1.com,example2.com
|
||||
|
||||
# Application secrets
|
||||
# Generate each with the `rake secret` task (`nanobox run bundle exec rake secret`)
|
||||
SECRET_KEY_BASE=$SECRET_KEY_BASE
|
||||
OTP_SECRET=$OTP_SECRET
|
||||
|
||||
# VAPID keys (used for push notifications)
|
||||
# You can generate the keys using the following command (first is the private key, second is the public one)
|
||||
# You should only generate this once per instance. If you later decide to change it, all push subscription will
|
||||
# be invalidated, requiring the users to access the website again to resubscribe.
|
||||
#
|
||||
# Generate with `rake mastodon:webpush:generate_vapid_key` task (`nanobox run bundle exec rake mastodon:webpush:generate_vapid_key`)
|
||||
#
|
||||
# For more information visit https://rossta.net/blog/using-the-web-push-api-with-vapid.html
|
||||
VAPID_PRIVATE_KEY=$VAPID_PRIVATE_KEY
|
||||
VAPID_PUBLIC_KEY=$VAPID_PUBLIC_KEY
|
||||
|
||||
# Registrations
|
||||
# Single user mode will disable registrations and redirect frontpage to the first profile
|
||||
# SINGLE_USER_MODE=true
|
||||
# Prevent registrations with following e-mail domains
|
||||
# EMAIL_DOMAIN_BLACKLIST=example1.com|example2.de|etc
|
||||
# Only allow registrations with the following e-mail domains
|
||||
# EMAIL_DOMAIN_WHITELIST=example1.com|example2.de|etc
|
||||
|
||||
# Optionally change default language
|
||||
# DEFAULT_LOCALE=de
|
||||
|
||||
# E-mail configuration
|
||||
# Note: Mailgun and SparkPost (https://sparkpo.st/smtp) each have good free tiers
|
||||
# If you want to use an SMTP server without authentication (e.g local Postfix relay)
|
||||
# then set SMTP_AUTH_METHOD and SMTP_OPENSSL_VERIFY_MODE to 'none' and
|
||||
# *comment* SMTP_LOGIN and SMTP_PASSWORD (leaving them blank is not enough).
|
||||
SMTP_SERVER=$SMTP_SERVER
|
||||
SMTP_PORT=587
|
||||
SMTP_LOGIN=$SMTP_LOGIN
|
||||
SMTP_PASSWORD=$SMTP_PASSWORD
|
||||
SMTP_FROM_ADDRESS=notifications@${APP_NAME}.nanoapp.io
|
||||
#SMTP_DOMAIN= # defaults to LOCAL_DOMAIN
|
||||
#SMTP_DELIVERY_METHOD=smtp # delivery method can also be sendmail
|
||||
#SMTP_AUTH_METHOD=plain
|
||||
#SMTP_CA_FILE=/etc/ssl/certs/ca-certificates.crt
|
||||
#SMTP_OPENSSL_VERIFY_MODE=peer
|
||||
#SMTP_ENABLE_STARTTLS_AUTO=true
|
||||
#SMTP_TLS=true
|
||||
|
||||
# Optional user upload path and URL (images, avatars). Default is :rails_root/public/system. If you set this variable, you are responsible for making your HTTP server (eg. nginx) serve these files.
|
||||
# PAPERCLIP_ROOT_PATH=/var/lib/mastodon/public-system
|
||||
# PAPERCLIP_ROOT_URL=/system
|
||||
|
||||
# Optional asset host for multi-server setups
|
||||
# CDN_HOST=https://assets.example.com
|
||||
|
||||
# S3 (optional)
|
||||
# S3_ENABLED=true
|
||||
# S3_BUCKET=
|
||||
# AWS_ACCESS_KEY_ID=
|
||||
# AWS_SECRET_ACCESS_KEY=
|
||||
# S3_REGION=
|
||||
# S3_PROTOCOL=http
|
||||
# S3_HOSTNAME=192.168.1.123:9000
|
||||
|
||||
# S3 (Minio Config (optional) Please check Minio instance for details)
|
||||
# S3_ENABLED=true
|
||||
# S3_BUCKET=
|
||||
# AWS_ACCESS_KEY_ID=
|
||||
# AWS_SECRET_ACCESS_KEY=
|
||||
# S3_REGION=
|
||||
# S3_PROTOCOL=https
|
||||
# S3_HOSTNAME=
|
||||
# S3_ENDPOINT=
|
||||
# S3_SIGNATURE_VERSION=
|
||||
|
||||
# Swift (optional)
|
||||
# SWIFT_ENABLED=true
|
||||
# SWIFT_USERNAME=
|
||||
# For Keystone V3, the value for SWIFT_TENANT should be the project name
|
||||
# SWIFT_TENANT=
|
||||
# SWIFT_PASSWORD=
|
||||
# Keystone V2 and V3 URLs are supported. Use a V3 URL if possible to avoid
|
||||
# issues with token rate-limiting during high load.
|
||||
# SWIFT_AUTH_URL=
|
||||
# SWIFT_CONTAINER=
|
||||
# SWIFT_OBJECT_URL=
|
||||
# SWIFT_REGION=
|
||||
# Defaults to 'default'
|
||||
# SWIFT_DOMAIN_NAME=
|
||||
# Defaults to 60 seconds. Set to 0 to disable
|
||||
# SWIFT_CACHE_TTL=
|
||||
|
||||
# Optional alias for S3 if you want to use Cloudfront or Cloudflare in front
|
||||
# S3_CLOUDFRONT_HOST=
|
||||
|
||||
# Streaming API integration
|
||||
# STREAMING_API_BASE_URL=
|
||||
|
||||
# Advanced settings
|
||||
# If you need to use pgBouncer, you need to disable prepared statements:
|
||||
# PREPARED_STATEMENTS=false
|
||||
|
||||
# Cluster number setting for streaming API server.
|
||||
# If you comment out following line, cluster number will be `numOfCpuCores - 1`.
|
||||
# STREAMING_CLUSTER_NUM=1
|
||||
|
||||
# Docker mastodon user
|
||||
# If you use Docker, you may want to assign UID/GID manually.
|
||||
# UID=1000
|
||||
# GID=1000
|
||||
|
||||
# LDAP authentication (optional)
|
||||
# LDAP_ENABLED=true
|
||||
# LDAP_HOST=localhost
|
||||
# LDAP_PORT=389
|
||||
# LDAP_METHOD=simple_tls
|
||||
# LDAP_BASE=
|
||||
# LDAP_BIND_DN=
|
||||
# LDAP_PASSWORD=
|
||||
# LDAP_UID=cn
|
||||
|
||||
# PAM authentication (optional)
|
||||
# PAM authentication uses for the email generation the "email" pam variable
|
||||
# and optional as fallback PAM_DEFAULT_SUFFIX
|
||||
# The pam environment variable "email" is provided by:
|
||||
# https://github.com/devkral/pam_email_extractor
|
||||
# PAM_ENABLED=true
|
||||
# Fallback Suffix for email address generation (nil by default)
|
||||
# PAM_DEFAULT_SUFFIX=pam
|
||||
# Name of the pam service (pam "auth" section is evaluated)
|
||||
# PAM_DEFAULT_SERVICE=rpam
|
||||
# Name of the pam service used for checking if an user can register (pam "account" section is evaluated) (nil (disabled) by default)
|
||||
# PAM_CONTROLLED_SERVICE=rpam
|
||||
|
||||
# Global OAuth settings (optional) :
|
||||
# If you have only one strategy, you may want to enable this
|
||||
# OAUTH_REDIRECT_AT_SIGN_IN=true
|
||||
|
||||
# Optional CAS authentication (cf. omniauth-cas) :
|
||||
# CAS_ENABLED=true
|
||||
# CAS_URL=https://sso.myserver.com/
|
||||
# CAS_HOST=sso.myserver.com/
|
||||
# CAS_PORT=443
|
||||
# CAS_SSL=true
|
||||
# CAS_VALIDATE_URL=
|
||||
# CAS_CALLBACK_URL=
|
||||
# CAS_LOGOUT_URL=
|
||||
# CAS_LOGIN_URL=
|
||||
# CAS_UID_FIELD='user'
|
||||
# CAS_CA_PATH=
|
||||
# CAS_DISABLE_SSL_VERIFICATION=false
|
||||
# CAS_UID_KEY='user'
|
||||
# CAS_NAME_KEY='name'
|
||||
# CAS_EMAIL_KEY='email'
|
||||
# CAS_NICKNAME_KEY='nickname'
|
||||
# CAS_FIRST_NAME_KEY='firstname'
|
||||
# CAS_LAST_NAME_KEY='lastname'
|
||||
# CAS_LOCATION_KEY='location'
|
||||
# CAS_IMAGE_KEY='image'
|
||||
# CAS_PHONE_KEY='phone'
|
||||
|
||||
# Optional SAML authentication (cf. omniauth-saml)
|
||||
# SAML_ENABLED=true
|
||||
# SAML_ACS_URL=
|
||||
# SAML_ISSUER=http://localhost:3000/auth/auth/saml/callback
|
||||
# SAML_IDP_SSO_TARGET_URL=https://idp.testshib.org/idp/profile/SAML2/Redirect/SSO
|
||||
# SAML_IDP_CERT=
|
||||
# SAML_IDP_CERT_FINGERPRINT=
|
||||
# SAML_NAME_IDENTIFIER_FORMAT=
|
||||
# SAML_CERT=
|
||||
# SAML_PRIVATE_KEY=
|
||||
# SAML_SECURITY_WANT_ASSERTION_SIGNED=true
|
||||
# SAML_SECURITY_WANT_ASSERTION_ENCRYPTED=true
|
||||
# SAML_SECURITY_ASSUME_EMAIL_IS_VERIFIED=true
|
||||
# SAML_ATTRIBUTES_STATEMENTS_UID="urn:oid:0.9.2342.19200300.100.1.1"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_EMAIL="urn:oid:1.3.6.1.4.1.5923.1.1.1.6"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_FULL_NAME="urn:oid:2.5.4.42"
|
||||
# SAML_UID_ATTRIBUTE="urn:oid:0.9.2342.19200300.100.1.1"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_VERIFIED=
|
||||
# SAML_ATTRIBUTES_STATEMENTS_VERIFIED_EMAIL=
|
@@ -1,22 +1,52 @@
|
||||
# Service dependencies
|
||||
# You may set REDIS_URL instead for more advanced options
|
||||
# You may also set REDIS_NAMESPACE to share Redis between multiple Mastodon servers
|
||||
REDIS_HOST=redis
|
||||
REDIS_PORT=6379
|
||||
# You may set DATABASE_URL instead for more advanced options
|
||||
DB_HOST=db
|
||||
DB_USER=postgres
|
||||
DB_NAME=postgres
|
||||
DB_PASS=
|
||||
DB_PORT=5432
|
||||
# Optional ElasticSearch configuration
|
||||
# ES_ENABLED=true
|
||||
# ES_HOST=es
|
||||
# ES_PORT=9200
|
||||
|
||||
# Federation
|
||||
# Note: Changing LOCAL_DOMAIN at a later time will cause unwanted side effects, including breaking all existing federation.
|
||||
# LOCAL_DOMAIN should *NOT* contain the protocol part of the domain e.g https://example.com.
|
||||
LOCAL_DOMAIN=example.com
|
||||
LOCAL_HTTPS=true
|
||||
|
||||
# Changing LOCAL_HTTPS in production is no longer supported. (Mastodon will always serve https:// links)
|
||||
|
||||
# Use this only if you need to run mastodon on a different domain than the one used for federation.
|
||||
# You can read more about this option on https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Serving_a_different_domain.md
|
||||
# DO *NOT* USE THIS UNLESS YOU KNOW *EXACTLY* WHAT YOU ARE DOING.
|
||||
# WEB_DOMAIN=mastodon.example.com
|
||||
|
||||
# Use this if you want to have several aliases handler@example1.com
|
||||
# handler@example2.com etc. for the same user. LOCAL_DOMAIN should not
|
||||
# be added. Comma separated values
|
||||
# ALTERNATE_DOMAINS=example1.com,example2.com
|
||||
|
||||
# Application secrets
|
||||
# Generate each with the `rake secret` task (`docker-compose run --rm web rake secret` if you use docker compose)
|
||||
PAPERCLIP_SECRET=
|
||||
# Generate each with the `RAILS_ENV=production bundle exec rake secret` task (`docker-compose run --rm web rake secret` if you use docker compose)
|
||||
SECRET_KEY_BASE=
|
||||
OTP_SECRET=
|
||||
|
||||
# VAPID keys (used for push notifications
|
||||
# You can generate the keys using the following command (first is the private key, second is the public one)
|
||||
# You should only generate this once per instance. If you later decide to change it, all push subscription will
|
||||
# be invalidated, requiring the users to access the website again to resubscribe.
|
||||
#
|
||||
# Generate with `RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key` task (`docker-compose run --rm web rake mastodon:webpush:generate_vapid_key` if you use docker compose)
|
||||
#
|
||||
# For more information visit https://rossta.net/blog/using-the-web-push-api-with-vapid.html
|
||||
VAPID_PRIVATE_KEY=
|
||||
VAPID_PUBLIC_KEY=
|
||||
|
||||
# Registrations
|
||||
# Single user mode will disable registrations and redirect frontpage to the first profile
|
||||
# SINGLE_USER_MODE=true
|
||||
@@ -30,19 +60,28 @@ OTP_SECRET=
|
||||
|
||||
# E-mail configuration
|
||||
# Note: Mailgun and SparkPost (https://sparkpo.st/smtp) each have good free tiers
|
||||
# If you want to use an SMTP server without authentication (e.g local Postfix relay)
|
||||
# then set SMTP_AUTH_METHOD and SMTP_OPENSSL_VERIFY_MODE to 'none' and
|
||||
# *comment* SMTP_LOGIN and SMTP_PASSWORD (leaving them blank is not enough).
|
||||
SMTP_SERVER=smtp.mailgun.org
|
||||
SMTP_PORT=587
|
||||
SMTP_LOGIN=
|
||||
SMTP_PASSWORD=
|
||||
SMTP_FROM_ADDRESS=notifications@example.com
|
||||
#SMTP_DOMAIN= # defaults to LOCAL_DOMAIN
|
||||
#SMTP_DELIVERY_METHOD=smtp # delivery method can also be sendmail
|
||||
#SMTP_AUTH_METHOD=plain
|
||||
#SMTP_CA_FILE=/etc/ssl/certs/ca-certificates.crt
|
||||
#SMTP_OPENSSL_VERIFY_MODE=peer
|
||||
#SMTP_ENABLE_STARTTLS_AUTO=true
|
||||
#SMTP_TLS=true
|
||||
|
||||
# Optional user upload path and URL (images, avatars). Default is :rails_root/public/system. If you set this variable, you are responsible for making your HTTP server (eg. nginx) serve these files.
|
||||
# PAPERCLIP_ROOT_PATH=/var/lib/mastodon/public-system
|
||||
# PAPERCLIP_ROOT_URL=/system
|
||||
|
||||
# Optional asset host for multi-server setups
|
||||
# CDN_HOST=assets.example.com
|
||||
# CDN_HOST=https://assets.example.com
|
||||
|
||||
# S3 (optional)
|
||||
# S3_ENABLED=true
|
||||
@@ -62,6 +101,24 @@ SMTP_FROM_ADDRESS=notifications@example.com
|
||||
# S3_PROTOCOL=https
|
||||
# S3_HOSTNAME=
|
||||
# S3_ENDPOINT=
|
||||
# S3_SIGNATURE_VERSION=
|
||||
|
||||
# Swift (optional)
|
||||
# SWIFT_ENABLED=true
|
||||
# SWIFT_USERNAME=
|
||||
# For Keystone V3, the value for SWIFT_TENANT should be the project name
|
||||
# SWIFT_TENANT=
|
||||
# SWIFT_PASSWORD=
|
||||
# Keystone V2 and V3 URLs are supported. Use a V3 URL if possible to avoid
|
||||
# issues with token rate-limiting during high load.
|
||||
# SWIFT_AUTH_URL=
|
||||
# SWIFT_CONTAINER=
|
||||
# SWIFT_OBJECT_URL=
|
||||
# SWIFT_REGION=
|
||||
# Defaults to 'default'
|
||||
# SWIFT_DOMAIN_NAME=
|
||||
# Defaults to 60 seconds. Set to 0 to disable
|
||||
# SWIFT_CACHE_TTL=
|
||||
|
||||
# Optional alias for S3 if you want to use Cloudfront or Cloudflare in front
|
||||
# S3_CLOUDFRONT_HOST=
|
||||
@@ -72,3 +129,84 @@ SMTP_FROM_ADDRESS=notifications@example.com
|
||||
# Advanced settings
|
||||
# If you need to use pgBouncer, you need to disable prepared statements:
|
||||
# PREPARED_STATEMENTS=false
|
||||
|
||||
# Cluster number setting for streaming API server.
|
||||
# If you comment out following line, cluster number will be `numOfCpuCores - 1`.
|
||||
STREAMING_CLUSTER_NUM=1
|
||||
|
||||
# Docker mastodon user
|
||||
# If you use Docker, you may want to assign UID/GID manually.
|
||||
# UID=1000
|
||||
# GID=1000
|
||||
|
||||
# LDAP authentication (optional)
|
||||
# LDAP_ENABLED=true
|
||||
# LDAP_HOST=localhost
|
||||
# LDAP_PORT=389
|
||||
# LDAP_METHOD=simple_tls
|
||||
# LDAP_BASE=
|
||||
# LDAP_BIND_DN=
|
||||
# LDAP_PASSWORD=
|
||||
# LDAP_UID=cn
|
||||
|
||||
# PAM authentication (optional)
|
||||
# PAM authentication uses for the email generation the "email" pam variable
|
||||
# and optional as fallback PAM_DEFAULT_SUFFIX
|
||||
# The pam environment variable "email" is provided by:
|
||||
# https://github.com/devkral/pam_email_extractor
|
||||
# PAM_ENABLED=true
|
||||
# Fallback Suffix for email address generation (nil by default)
|
||||
# PAM_DEFAULT_SUFFIX=pam
|
||||
# Name of the pam service (pam "auth" section is evaluated)
|
||||
# PAM_DEFAULT_SERVICE=rpam
|
||||
# Name of the pam service used for checking if an user can register (pam "account" section is evaluated) (nil (disabled) by default)
|
||||
# PAM_CONTROLLED_SERVICE=rpam
|
||||
|
||||
# Global OAuth settings (optional) :
|
||||
# If you have only one strategy, you may want to enable this
|
||||
# OAUTH_REDIRECT_AT_SIGN_IN=true
|
||||
|
||||
# Optional CAS authentication (cf. omniauth-cas) :
|
||||
# CAS_ENABLED=true
|
||||
# CAS_URL=https://sso.myserver.com/
|
||||
# CAS_HOST=sso.myserver.com/
|
||||
# CAS_PORT=443
|
||||
# CAS_SSL=true
|
||||
# CAS_VALIDATE_URL=
|
||||
# CAS_CALLBACK_URL=
|
||||
# CAS_LOGOUT_URL=
|
||||
# CAS_LOGIN_URL=
|
||||
# CAS_UID_FIELD='user'
|
||||
# CAS_CA_PATH=
|
||||
# CAS_DISABLE_SSL_VERIFICATION=false
|
||||
# CAS_UID_KEY='user'
|
||||
# CAS_NAME_KEY='name'
|
||||
# CAS_EMAIL_KEY='email'
|
||||
# CAS_NICKNAME_KEY='nickname'
|
||||
# CAS_FIRST_NAME_KEY='firstname'
|
||||
# CAS_LAST_NAME_KEY='lastname'
|
||||
# CAS_LOCATION_KEY='location'
|
||||
# CAS_IMAGE_KEY='image'
|
||||
# CAS_PHONE_KEY='phone'
|
||||
|
||||
# Optional SAML authentication (cf. omniauth-saml)
|
||||
# SAML_ENABLED=true
|
||||
# SAML_ACS_URL=
|
||||
# SAML_ISSUER=http://localhost:3000/auth/auth/saml/callback
|
||||
# SAML_IDP_SSO_TARGET_URL=https://idp.testshib.org/idp/profile/SAML2/Redirect/SSO
|
||||
# SAML_IDP_CERT=
|
||||
# SAML_IDP_CERT_FINGERPRINT=
|
||||
# SAML_NAME_IDENTIFIER_FORMAT=
|
||||
# SAML_CERT=
|
||||
# SAML_PRIVATE_KEY=
|
||||
# SAML_SECURITY_WANT_ASSERTION_SIGNED=true
|
||||
# SAML_SECURITY_WANT_ASSERTION_ENCRYPTED=true
|
||||
# SAML_SECURITY_ASSUME_EMAIL_IS_VERIFIED=true
|
||||
# SAML_ATTRIBUTES_STATEMENTS_UID="urn:oid:0.9.2342.19200300.100.1.1"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_EMAIL="urn:oid:1.3.6.1.4.1.5923.1.1.1.6"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_FULL_NAME="urn:oid:2.16.840.1.113730.3.1.241"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_FIRST_NAME="urn:oid:2.5.4.42"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_LAST_NAME="urn:oid:2.5.4.4"
|
||||
# SAML_UID_ATTRIBUTE="urn:oid:0.9.2342.19200300.100.1.1"
|
||||
# SAML_ATTRIBUTES_STATEMENTS_VERIFIED=
|
||||
# SAML_ATTRIBUTES_STATEMENTS_VERIFIED_EMAIL=
|
||||
|
51
.eslintrc
@@ -1,51 +0,0 @@
|
||||
{
|
||||
"env": {
|
||||
"browser": true,
|
||||
"node": false,
|
||||
"es6": true
|
||||
},
|
||||
|
||||
"parser": "babel-eslint",
|
||||
|
||||
"plugins": [
|
||||
"react"
|
||||
],
|
||||
|
||||
"parserOptions": {
|
||||
"sourceType": "module",
|
||||
|
||||
"ecmaFeatures": {
|
||||
"arrowFunctions": true,
|
||||
"jsx": true,
|
||||
"destructuring": true,
|
||||
"modules": true,
|
||||
"spread": true
|
||||
}
|
||||
},
|
||||
|
||||
"rules": {
|
||||
"no-cond-assign": 2,
|
||||
"no-console": 1,
|
||||
"no-irregular-whitespace": 2,
|
||||
"no-unreachable": 2,
|
||||
"valid-typeof": 2,
|
||||
"consistent-return": 2,
|
||||
"dot-notation": 2,
|
||||
"eqeqeq": 2,
|
||||
"no-fallthrough": 2,
|
||||
"no-unused-expressions": 2,
|
||||
"strict": 0,
|
||||
"no-catch-shadow": 2,
|
||||
"indent": [1, 2],
|
||||
"brace-style": 1,
|
||||
"comma-spacing": [1, {"before": false, "after": true}],
|
||||
"comma-style": [1, "last"],
|
||||
"no-mixed-spaces-and-tabs": 1,
|
||||
"no-nested-ternary": 1,
|
||||
"no-trailing-spaces": 1,
|
||||
"react/wrap-multilines": 2,
|
||||
"react/self-closing-comp": 2,
|
||||
"react/prop-types": 2,
|
||||
"react/no-multi-comp": 0
|
||||
}
|
||||
}
|
154
.eslintrc.yml
Normal file
@@ -0,0 +1,154 @@
|
||||
---
|
||||
root: true
|
||||
|
||||
env:
|
||||
browser: true
|
||||
node: true
|
||||
es6: true
|
||||
jest: true
|
||||
|
||||
parser: babel-eslint
|
||||
|
||||
plugins:
|
||||
- react
|
||||
- jsx-a11y
|
||||
- import
|
||||
|
||||
parserOptions:
|
||||
sourceType: module
|
||||
ecmaFeatures:
|
||||
experimentalObjectRestSpread: true
|
||||
jsx: true
|
||||
ecmaVersion: 2018
|
||||
|
||||
settings:
|
||||
import/extensions:
|
||||
- .js
|
||||
import/ignore:
|
||||
- node_modules
|
||||
- \\.(css|scss|json)$
|
||||
|
||||
rules:
|
||||
brace-style: warn
|
||||
comma-dangle:
|
||||
- error
|
||||
- always-multiline
|
||||
comma-spacing:
|
||||
- warn
|
||||
- before: false
|
||||
after: true
|
||||
comma-style:
|
||||
- warn
|
||||
- last
|
||||
consistent-return: error
|
||||
dot-notation: error
|
||||
eqeqeq: error
|
||||
indent:
|
||||
- warn
|
||||
- 2
|
||||
jsx-quotes:
|
||||
- error
|
||||
- prefer-single
|
||||
no-catch-shadow: error
|
||||
no-cond-assign: error
|
||||
no-console:
|
||||
- warn
|
||||
- allow:
|
||||
- error
|
||||
- warn
|
||||
no-fallthrough: error
|
||||
no-irregular-whitespace: error
|
||||
no-mixed-spaces-and-tabs: warn
|
||||
no-nested-ternary: warn
|
||||
no-trailing-spaces: warn
|
||||
no-undef: error
|
||||
no-unreachable: error
|
||||
no-unused-expressions: error
|
||||
no-unused-vars:
|
||||
- error
|
||||
- vars: all
|
||||
args: after-used
|
||||
ignoreRestSiblings: true
|
||||
object-curly-spacing:
|
||||
- error
|
||||
- always
|
||||
padded-blocks:
|
||||
- error
|
||||
- classes: always
|
||||
quotes:
|
||||
- error
|
||||
- single
|
||||
semi: error
|
||||
strict: off
|
||||
valid-typeof: error
|
||||
|
||||
react/jsx-boolean-value: error
|
||||
react/jsx-closing-bracket-location:
|
||||
- error
|
||||
- line-aligned
|
||||
react/jsx-curly-spacing: error
|
||||
react/jsx-equals-spacing: error
|
||||
react/jsx-first-prop-new-line:
|
||||
- error
|
||||
- multiline-multiprop
|
||||
react/jsx-indent:
|
||||
- error
|
||||
- 2
|
||||
react/jsx-no-bind: error
|
||||
react/jsx-no-duplicate-props: error
|
||||
react/jsx-no-undef: error
|
||||
react/jsx-tag-spacing: error
|
||||
react/jsx-uses-react: error
|
||||
react/jsx-uses-vars: error
|
||||
react/jsx-wrap-multilines: error
|
||||
react/no-multi-comp: off
|
||||
react/no-string-refs: error
|
||||
react/prop-types: error
|
||||
react/self-closing-comp: error
|
||||
|
||||
jsx-a11y/accessible-emoji: warn
|
||||
jsx-a11y/alt-text: warn
|
||||
jsx-a11y/anchor-has-content: warn
|
||||
jsx-a11y/aria-activedescendant-has-tabindex: warn
|
||||
jsx-a11y/aria-props: warn
|
||||
jsx-a11y/aria-proptypes: warn
|
||||
jsx-a11y/aria-role: warn
|
||||
jsx-a11y/aria-unsupported-elements: warn
|
||||
jsx-a11y/heading-has-content: warn
|
||||
jsx-a11y/href-no-hash: warn
|
||||
jsx-a11y/html-has-lang: warn
|
||||
jsx-a11y/iframe-has-title: warn
|
||||
jsx-a11y/img-redundant-alt: warn
|
||||
jsx-a11y/interactive-supports-focus: warn
|
||||
jsx-a11y/label-has-for: off
|
||||
jsx-a11y/mouse-events-have-key-events: warn
|
||||
jsx-a11y/no-access-key: warn
|
||||
jsx-a11y/no-distracting-elements: warn
|
||||
jsx-a11y/no-noninteractive-element-interactions:
|
||||
- warn
|
||||
- handlers:
|
||||
- onClick
|
||||
jsx-a11y/no-onchange: warn
|
||||
jsx-a11y/no-redundant-roles: warn
|
||||
jsx-a11y/no-static-element-interactions:
|
||||
- warn
|
||||
- handlers:
|
||||
- onClick
|
||||
jsx-a11y/role-has-required-aria-props: warn
|
||||
jsx-a11y/role-supports-aria-props: off
|
||||
jsx-a11y/scope: warn
|
||||
jsx-a11y/tabindex-no-positive: warn
|
||||
|
||||
import/extensions:
|
||||
- error
|
||||
- always
|
||||
- js: never
|
||||
import/newline-after-import: error
|
||||
import/no-extraneous-dependencies:
|
||||
- error
|
||||
- devDependencies:
|
||||
- "config/webpack/**"
|
||||
- "app/javascript/mastodon/test_setup.js"
|
||||
- "app/javascript/**/__tests__/**"
|
||||
import/no-unresolved: error
|
||||
import/no-webpack-loader-syntax: error
|
14
.gitattributes
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
* text=auto eol=lf
|
||||
*.eot -text
|
||||
*.gif -text
|
||||
*.gz -text
|
||||
*.ico -text
|
||||
*.jpg -text
|
||||
*.mp3 -text
|
||||
*.ogg -text
|
||||
*.png -text
|
||||
*.ttf -text
|
||||
*.webm -text
|
||||
*.woff -text
|
||||
*.woff2 -text
|
||||
spec/fixtures/requests/** -text !eol
|
32
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
# CODEOWNERS for tootsuite/mastodon
|
||||
|
||||
# Translators
|
||||
# To add translator, copy these lines, replace `fr` with appropriate language code and replace `@żelipapą` with user's GitHub nickname preceded by `@` sign or e-mail address.
|
||||
# /app/javascript/mastodon/locales/fr.json @żelipapą
|
||||
# /app/views/user_mailer/*.fr.html.erb @żelipapą
|
||||
# /app/views/user_mailer/*.fr.text.erb @żelipapą
|
||||
# /config/locales/*.fr.yml @żelipapą
|
||||
# /config/locales/fr.yml @żelipapą
|
||||
|
||||
# Polish
|
||||
/app/javascript/mastodon/locales/pl.json @m4sk1n
|
||||
/app/views/user_mailer/*.pl.html.erb @m4sk1n
|
||||
/app/views/user_mailer/*.pl.text.erb @m4sk1n
|
||||
/config/locales/*.pl.yml @m4sk1n
|
||||
/config/locales/pl.yml @m4sk1n
|
||||
|
||||
# French
|
||||
/app/javascript/mastodon/locales/fr.json @aldarone
|
||||
/app/javascript/mastodon/locales/whitelist_fr.json @aldarone
|
||||
/app/views/user_mailer/*.fr.html.erb @aldarone
|
||||
/app/views/user_mailer/*.fr.text.erb @aldarone
|
||||
/config/locales/*.fr.yml @aldarone
|
||||
/config/locales/fr.yml @aldarone
|
||||
|
||||
# Dutch
|
||||
/app/javascript/mastodon/locales/nl.json @jeroenpraat
|
||||
/app/javascript/mastodon/locales/whitelist_nl.json @jeroenpraat
|
||||
/app/views/user_mailer/*.nl.html.erb @jeroenpraat
|
||||
/app/views/user_mailer/*.nl.text.erb @jeroenpraat
|
||||
/config/locales/*.nl.yml @jeroenpraat
|
||||
/config/locales/nl.yml @jeroenpraat
|
6
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
[Issue text goes here].
|
||||
|
||||
* * * *
|
||||
|
||||
- [ ] I searched or browsed the repo’s other issues to ensure this is not a duplicate.
|
||||
- [ ] This bug happens on a [tagged release](https://github.com/tootsuite/mastodon/releases) and not on `master` (If you're a user, don't worry about this).
|
27
.gitignore
vendored
@@ -4,8 +4,9 @@
|
||||
# or operating system, you probably want to add a global ignore instead:
|
||||
# git config --global core.excludesfile '~/.gitignore_global'
|
||||
|
||||
# Ignore bundler config.
|
||||
# Ignore bundler config and downloaded libraries.
|
||||
/.bundle
|
||||
/vendor/bundle
|
||||
|
||||
# Ignore the default SQLite database.
|
||||
/db/*.sqlite3
|
||||
@@ -18,10 +19,12 @@
|
||||
coverage
|
||||
public/system
|
||||
public/assets
|
||||
public/packs
|
||||
public/packs-test
|
||||
.env
|
||||
.env.production
|
||||
node_modules/
|
||||
neo4j/
|
||||
build/
|
||||
|
||||
# Ignore Vagrant files
|
||||
.vagrant/
|
||||
@@ -29,10 +32,28 @@ neo4j/
|
||||
# Ignore Capistrano customizations
|
||||
config/deploy/*
|
||||
|
||||
|
||||
# Ignore IDE files
|
||||
.vscode/
|
||||
.idea/
|
||||
|
||||
# Ignore postgres + redis volume optionally created by docker-compose
|
||||
postgres
|
||||
redis
|
||||
|
||||
# Ignore Apple files
|
||||
.DS_Store
|
||||
|
||||
# Ignore vim files
|
||||
*~
|
||||
*.swp
|
||||
|
||||
# Ignore npm debug log
|
||||
npm-debug.log
|
||||
|
||||
# Ignore yarn log files
|
||||
yarn-error.log
|
||||
yarn-debug.log
|
||||
|
||||
# Ignore Docker option files
|
||||
docker-compose.override.yml
|
||||
|
||||
|
108
.haml-lint.yml
Normal file
@@ -0,0 +1,108 @@
|
||||
# Whether to ignore frontmatter at the beginning of HAML documents for
|
||||
# frameworks such as Jekyll/Middleman
|
||||
skip_frontmatter: false
|
||||
|
||||
exclude:
|
||||
- 'vendor/**/*'
|
||||
- 'spec/**/*'
|
||||
- 'lib/templates/**/*'
|
||||
- 'app/views/kaminari/**/*'
|
||||
|
||||
linters:
|
||||
AltText:
|
||||
enabled: false
|
||||
|
||||
ClassAttributeWithStaticValue:
|
||||
enabled: true
|
||||
|
||||
ClassesBeforeIds:
|
||||
enabled: true
|
||||
|
||||
ConsecutiveComments:
|
||||
enabled: true
|
||||
|
||||
ConsecutiveSilentScripts:
|
||||
enabled: true
|
||||
max_consecutive: 2
|
||||
|
||||
EmptyObjectReference:
|
||||
enabled: true
|
||||
|
||||
EmptyScript:
|
||||
enabled: true
|
||||
|
||||
FinalNewline:
|
||||
enabled: true
|
||||
present: true
|
||||
|
||||
HtmlAttributes:
|
||||
enabled: true
|
||||
|
||||
ImplicitDiv:
|
||||
enabled: true
|
||||
|
||||
LeadingCommentSpace:
|
||||
enabled: true
|
||||
|
||||
LineLength:
|
||||
enabled: false
|
||||
max: 80
|
||||
|
||||
MultilinePipe:
|
||||
enabled: true
|
||||
|
||||
MultilineScript:
|
||||
enabled: true
|
||||
|
||||
ObjectReferenceAttributes:
|
||||
enabled: true
|
||||
|
||||
RuboCop:
|
||||
enabled: true
|
||||
# These cops are incredibly noisy when it comes to HAML templates, so we
|
||||
# ignore them.
|
||||
ignored_cops:
|
||||
- Lint/BlockAlignment
|
||||
- Lint/EndAlignment
|
||||
- Lint/Void
|
||||
- Metrics/BlockLength
|
||||
- Metrics/LineLength
|
||||
- Style/AlignParameters
|
||||
- Style/BlockNesting
|
||||
- Style/ElseAlignment
|
||||
- Style/EndOfLine
|
||||
- Style/FileName
|
||||
- Style/FinalNewline
|
||||
- Style/FrozenStringLiteralComment
|
||||
- Style/IfUnlessModifier
|
||||
- Style/IndentationWidth
|
||||
- Style/Next
|
||||
- Style/TrailingBlankLines
|
||||
- Style/TrailingWhitespace
|
||||
- Style/WhileUntilModifier
|
||||
|
||||
RubyComments:
|
||||
enabled: true
|
||||
|
||||
SpaceBeforeScript:
|
||||
enabled: true
|
||||
|
||||
SpaceInsideHashAttributes:
|
||||
enabled: true
|
||||
style: space
|
||||
|
||||
Indentation:
|
||||
enabled: true
|
||||
character: space # or tab
|
||||
|
||||
TagName:
|
||||
enabled: true
|
||||
|
||||
TrailingWhitespace:
|
||||
enabled: true
|
||||
|
||||
UnnecessaryInterpolation:
|
||||
enabled: true
|
||||
|
||||
UnnecessaryStringOutput:
|
||||
enabled: true
|
19
.nanoignore
Normal file
@@ -0,0 +1,19 @@
|
||||
.DS_Store
|
||||
.git/
|
||||
.gitignore
|
||||
|
||||
.bundle/
|
||||
.cache/
|
||||
config/deploy/*
|
||||
coverage
|
||||
docs/
|
||||
.env
|
||||
log/*.log
|
||||
neo4j/
|
||||
node_modules/
|
||||
public/assets/
|
||||
public/system/
|
||||
spec/
|
||||
tmp/
|
||||
.vagrant/
|
||||
vendor/bundle/
|
9
.postcssrc.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
plugins:
|
||||
postcss-smart-import: {}
|
||||
precss: {}
|
||||
autoprefixer:
|
||||
browsers:
|
||||
- last 2 versions
|
||||
- IE >= 11
|
||||
- iOS >= 9
|
||||
postcss-object-fit-images: {}
|
1
.profile
Normal file
@@ -0,0 +1 @@
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/app/.apt/lib/x86_64-linux-gnu:/app/.apt/usr/lib/x86_64-linux-gnu/mesa:/app/.apt/usr/lib/x86_64-linux-gnu/pulseaudio
|
117
.rubocop.yml
@@ -1,14 +1,46 @@
|
||||
Rails:
|
||||
Enabled: true
|
||||
AllCops:
|
||||
TargetRubyVersion: 2.3
|
||||
Exclude:
|
||||
- 'spec/**/*'
|
||||
- 'db/**/*'
|
||||
- 'app/views/**/*'
|
||||
- 'config/**/*'
|
||||
- 'bin/*'
|
||||
- 'Rakefile'
|
||||
- 'node_modules/**/*'
|
||||
- 'Vagrantfile'
|
||||
- 'vendor/**/*'
|
||||
- 'lib/json_ld/*'
|
||||
|
||||
Style/PerlBackrefs:
|
||||
AutoCorrect: false
|
||||
|
||||
Style/ClassAndModuleChildren:
|
||||
Bundler/OrderedGems:
|
||||
Enabled: false
|
||||
|
||||
Layout/AccessModifierIndentation:
|
||||
EnforcedStyle: indent
|
||||
|
||||
Layout/EmptyLineAfterMagicComment:
|
||||
Enabled: false
|
||||
|
||||
Layout/SpaceInsideHashLiteralBraces:
|
||||
EnforcedStyle: space
|
||||
|
||||
Metrics/AbcSize:
|
||||
Max: 100
|
||||
|
||||
Metrics/BlockLength:
|
||||
Max: 35
|
||||
Exclude:
|
||||
- 'lib/tasks/**/*'
|
||||
|
||||
Metrics/BlockNesting:
|
||||
Max: 2
|
||||
Max: 3
|
||||
|
||||
Metrics/ClassLength:
|
||||
CountComments: false
|
||||
Max: 300
|
||||
|
||||
Metrics/CyclomaticComplexity:
|
||||
Max: 25
|
||||
|
||||
Metrics/LineLength:
|
||||
AllowURI: true
|
||||
@@ -16,37 +48,30 @@ Metrics/LineLength:
|
||||
|
||||
Metrics/MethodLength:
|
||||
CountComments: false
|
||||
Max: 10
|
||||
|
||||
Metrics/AbcSize:
|
||||
Max: 100
|
||||
|
||||
Metrics/BlockNesting:
|
||||
Max: 3
|
||||
|
||||
Metrics/ClassLength:
|
||||
CountComments: false
|
||||
Max: 200
|
||||
|
||||
Metrics/CyclomaticComplexity:
|
||||
Max: 15
|
||||
|
||||
Metrics/MethodLength:
|
||||
Max: 55
|
||||
|
||||
Metrics/ModuleLength:
|
||||
CountComments: false
|
||||
Max: 200
|
||||
|
||||
Metrics/PerceivedComplexity:
|
||||
Max: 10
|
||||
|
||||
Metrics/ParameterLists:
|
||||
Max: 4
|
||||
Max: 5
|
||||
CountKeywordArgs: true
|
||||
|
||||
Style/AccessModifierIndentation:
|
||||
EnforcedStyle: indent
|
||||
Metrics/PerceivedComplexity:
|
||||
Max: 20
|
||||
|
||||
Rails:
|
||||
Enabled: true
|
||||
|
||||
Rails/HasAndBelongsToMany:
|
||||
Enabled: false
|
||||
|
||||
Rails/SkipsModelValidations:
|
||||
Enabled: false
|
||||
|
||||
Style/ClassAndModuleChildren:
|
||||
Enabled: false
|
||||
|
||||
Style/CollectionMethods:
|
||||
Enabled: true
|
||||
@@ -62,29 +87,25 @@ Style/DoubleNegation:
|
||||
Style/FrozenStringLiteralComment:
|
||||
Enabled: true
|
||||
|
||||
Style/SpaceInsideHashLiteralBraces:
|
||||
EnforcedStyle: space
|
||||
|
||||
Style/TrailingCommaInLiteral:
|
||||
EnforcedStyleForMultiline: 'comma'
|
||||
|
||||
Style/RegexpLiteral:
|
||||
Style/GuardClause:
|
||||
Enabled: false
|
||||
|
||||
Style/Lambda:
|
||||
Enabled: false
|
||||
|
||||
Rails/HasAndBelongsToMany:
|
||||
Style/PercentLiteralDelimiters:
|
||||
PreferredDelimiters:
|
||||
'%i': '()'
|
||||
'%w': '()'
|
||||
|
||||
Style/PerlBackrefs:
|
||||
AutoCorrect: false
|
||||
|
||||
Style/RegexpLiteral:
|
||||
Enabled: false
|
||||
|
||||
AllCops:
|
||||
TargetRubyVersion: 2.3
|
||||
Exclude:
|
||||
- 'spec/**/*'
|
||||
- 'db/**/*'
|
||||
- 'app/views/**/*'
|
||||
- 'config/**/*'
|
||||
- 'bin/*'
|
||||
- 'Rakefile'
|
||||
- 'node_modules/**/*'
|
||||
- 'Vagrantfile'
|
||||
Style/SymbolArray:
|
||||
Enabled: false
|
||||
|
||||
Style/TrailingCommaInLiteral:
|
||||
EnforcedStyleForMultiline: 'comma'
|
||||
|
@@ -1 +1 @@
|
||||
2.4.1
|
||||
2.5.0
|
||||
|
264
.scss-lint.yml
Normal file
@@ -0,0 +1,264 @@
|
||||
# Linter Documentation:
|
||||
# https://github.com/brigade/scss-lint/blob/v0.42.2/lib/scss_lint/linter/README.md
|
||||
|
||||
scss_files: 'app/javascript/styles/**/*.scss'
|
||||
|
||||
exclude:
|
||||
- app/javascript/styles/reset.scss
|
||||
|
||||
linters:
|
||||
# Reports when you use improper spacing around ! (the "bang") in !default,
|
||||
# !global, !important, and !optional flags.
|
||||
BangFormat:
|
||||
enabled: false
|
||||
|
||||
# Whether or not to prefer `border: 0` over `border: none`.
|
||||
BorderZero:
|
||||
enabled: false
|
||||
|
||||
# Reports when you define a rule set using a selector with chained classes
|
||||
# (a.k.a. adjoining classes).
|
||||
ChainedClasses:
|
||||
enabled: false
|
||||
|
||||
# Prefer hexadecimal color codes over color keywords.
|
||||
# (e.g. `color: green` is a color keyword)
|
||||
ColorKeyword:
|
||||
enabled: false
|
||||
|
||||
# Prefer color literals (keywords or hexadecimal codes) to be used only in
|
||||
# variable declarations. They should be referred to via variables everywhere
|
||||
# else.
|
||||
ColorVariable:
|
||||
enabled: true
|
||||
|
||||
# Which form of comments to prefer in CSS.
|
||||
Comment:
|
||||
enabled: false
|
||||
|
||||
# Reports @debug statements (which you probably left behind accidentally).
|
||||
DebugStatement:
|
||||
enabled: false
|
||||
|
||||
# Rule sets should be ordered as follows:
|
||||
# - @extend declarations
|
||||
# - @include declarations without inner @content
|
||||
# - properties, @include declarations with inner @content
|
||||
# - nested rule sets.
|
||||
DeclarationOrder:
|
||||
enabled: false
|
||||
|
||||
# `scss-lint:disable` control comments should be preceded by a comment
|
||||
# explaining why these linters are being disabled for this file.
|
||||
# See https://github.com/brigade/scss-lint#disabling-linters-via-source for
|
||||
# more information.
|
||||
DisableLinterReason:
|
||||
enabled: true
|
||||
|
||||
# Reports when you define the same property twice in a single rule set.
|
||||
DuplicateProperty:
|
||||
enabled: false
|
||||
|
||||
# Separate rule, function, and mixin declarations with empty lines.
|
||||
EmptyLineBetweenBlocks:
|
||||
enabled: true
|
||||
|
||||
# Reports when you have an empty rule set.
|
||||
EmptyRule:
|
||||
enabled: true
|
||||
|
||||
# Reports when you have an @extend directive.
|
||||
ExtendDirective:
|
||||
enabled: false
|
||||
|
||||
# Files should always have a final newline. This results in better diffs
|
||||
# when adding lines to the file, since SCM systems such as git won't
|
||||
# think that you touched the last line.
|
||||
FinalNewline:
|
||||
enabled: false
|
||||
|
||||
# HEX colors should use three-character values where possible.
|
||||
HexLength:
|
||||
enabled: false
|
||||
|
||||
# HEX color values should use lower-case colors to differentiate between
|
||||
# letters and numbers, e.g. `#E3E3E3` vs. `#e3e3e3`.
|
||||
HexNotation:
|
||||
enabled: true
|
||||
|
||||
# Avoid using ID selectors.
|
||||
IdSelector:
|
||||
enabled: false
|
||||
|
||||
# The basenames of @imported SCSS partials should not begin with an
|
||||
# underscore and should not include the filename extension.
|
||||
ImportPath:
|
||||
enabled: false
|
||||
|
||||
# Avoid using !important in properties. It is usually indicative of a
|
||||
# misunderstanding of CSS specificity and can lead to brittle code.
|
||||
ImportantRule:
|
||||
enabled: false
|
||||
|
||||
# Indentation should always be done in increments of 2 spaces.
|
||||
Indentation:
|
||||
enabled: true
|
||||
width: 2
|
||||
|
||||
# Don't write leading zeros for numeric values with a decimal point.
|
||||
LeadingZero:
|
||||
enabled: false
|
||||
|
||||
# Reports when you define the same selector twice in a single sheet.
|
||||
MergeableSelector:
|
||||
enabled: false
|
||||
|
||||
# Functions, mixins, variables, and placeholders should be declared
|
||||
# with all lowercase letters and hyphens instead of underscores.
|
||||
NameFormat:
|
||||
enabled: false
|
||||
|
||||
# Avoid nesting selectors too deeply.
|
||||
NestingDepth:
|
||||
enabled: false
|
||||
|
||||
# Always use placeholder selectors in @extend.
|
||||
PlaceholderInExtend:
|
||||
enabled: false
|
||||
|
||||
# Sort properties in a strict order.
|
||||
PropertySortOrder:
|
||||
enabled: false
|
||||
|
||||
# Reports when you use an unknown or disabled CSS property
|
||||
# (ignoring vendor-prefixed properties).
|
||||
PropertySpelling:
|
||||
enabled: false
|
||||
|
||||
# Configure which units are allowed for property values.
|
||||
PropertyUnits:
|
||||
enabled: false
|
||||
|
||||
# Pseudo-elements, like ::before, and ::first-letter, should be declared
|
||||
# with two colons. Pseudo-classes, like :hover and :first-child, should
|
||||
# be declared with one colon.
|
||||
PseudoElement:
|
||||
enabled: true
|
||||
|
||||
# Avoid qualifying elements in selectors (also known as "tag-qualifying").
|
||||
QualifyingElement:
|
||||
enabled: false
|
||||
|
||||
# Don't write selectors with a depth of applicability greater than 3.
|
||||
SelectorDepth:
|
||||
enabled: false
|
||||
|
||||
# Selectors should always use hyphenated-lowercase, rather than camelCase or
|
||||
# snake_case.
|
||||
SelectorFormat:
|
||||
enabled: false
|
||||
convention: hyphenated_lowercase
|
||||
|
||||
# Prefer the shortest shorthand form possible for properties that support it.
|
||||
Shorthand:
|
||||
enabled: true
|
||||
|
||||
# Each property should have its own line, except in the special case of
|
||||
# single line rulesets.
|
||||
SingleLinePerProperty:
|
||||
enabled: true
|
||||
allow_single_line_rule_sets: true
|
||||
|
||||
# Split selectors onto separate lines after each comma, and have each
|
||||
# individual selector occupy a single line.
|
||||
SingleLinePerSelector:
|
||||
enabled: true
|
||||
|
||||
# Commas in lists should be followed by a space.
|
||||
SpaceAfterComma:
|
||||
enabled: false
|
||||
|
||||
# Properties should be formatted with a single space separating the colon
|
||||
# from the property's value.
|
||||
SpaceAfterPropertyColon:
|
||||
enabled: true
|
||||
|
||||
# Properties should be formatted with no space between the name and the
|
||||
# colon.
|
||||
SpaceAfterPropertyName:
|
||||
enabled: true
|
||||
|
||||
# Variables should be formatted with a single space separating the colon
|
||||
# from the variable's value.
|
||||
SpaceAfterVariableColon:
|
||||
enabled: true
|
||||
|
||||
# Variables should be formatted with no space between the name and the
|
||||
# colon.
|
||||
SpaceAfterVariableName:
|
||||
enabled: false
|
||||
|
||||
# Operators should be formatted with a single space on both sides of an
|
||||
# infix operator.
|
||||
SpaceAroundOperator:
|
||||
enabled: true
|
||||
|
||||
# Opening braces should be preceded by a single space.
|
||||
SpaceBeforeBrace:
|
||||
enabled: true
|
||||
|
||||
# Parentheses should not be padded with spaces.
|
||||
SpaceBetweenParens:
|
||||
enabled: false
|
||||
|
||||
# Enforces that string literals should be written with a consistent form
|
||||
# of quotes (single or double).
|
||||
StringQuotes:
|
||||
enabled: false
|
||||
|
||||
# Property values, @extend, @include, and @import directives, and variable
|
||||
# declarations should always end with a semicolon.
|
||||
TrailingSemicolon:
|
||||
enabled: true
|
||||
|
||||
# Reports lines containing trailing whitespace.
|
||||
TrailingWhitespace:
|
||||
enabled: true
|
||||
|
||||
# Don't write trailing zeros for numeric values with a decimal point.
|
||||
TrailingZero:
|
||||
enabled: false
|
||||
|
||||
# Don't use the `all` keyword to specify transition properties.
|
||||
TransitionAll:
|
||||
enabled: false
|
||||
|
||||
# Numeric values should not contain unnecessary fractional portions.
|
||||
UnnecessaryMantissa:
|
||||
enabled: false
|
||||
|
||||
# Do not use parent selector references (&) when they would otherwise
|
||||
# be unnecessary.
|
||||
UnnecessaryParentReference:
|
||||
enabled: false
|
||||
|
||||
# URLs should be valid and not contain protocols or domain names.
|
||||
UrlFormat:
|
||||
enabled: true
|
||||
|
||||
# URLs should always be enclosed within quotes.
|
||||
UrlQuotes:
|
||||
enabled: true
|
||||
|
||||
# Properties, like color and font, are easier to read and maintain
|
||||
# when defined using variables rather than literals.
|
||||
VariableForProperty:
|
||||
enabled: false
|
||||
|
||||
# Avoid vendor prefixes. Or rather: don't write them yourself.
|
||||
VendorPrefix:
|
||||
enabled: false
|
||||
|
||||
# Omit length units on zero values, e.g. `0px` vs. `0`.
|
||||
ZeroUnit:
|
||||
enabled: true
|
@@ -2,4 +2,3 @@ node_modules/
|
||||
.cache/
|
||||
docs/
|
||||
spec/
|
||||
storybook/
|
||||
|
53
.travis.yml
@@ -1,42 +1,59 @@
|
||||
language: ruby
|
||||
cache: bundler
|
||||
cache:
|
||||
bundler: true
|
||||
yarn: true
|
||||
directories:
|
||||
- node_modules
|
||||
- public/assets
|
||||
- public/packs-test
|
||||
- tmp/cache/babel-loader
|
||||
dist: trusty
|
||||
sudo: false
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
notifications:
|
||||
email: false
|
||||
|
||||
env:
|
||||
matrix:
|
||||
- TRAVIS_NODE_VERSION="4"
|
||||
global:
|
||||
- LOCAL_DOMAIN=cb6e6126.ngrok.io
|
||||
- LOCAL_HTTPS=true
|
||||
- RAILS_ENV=test
|
||||
- CXX=g++-4.8
|
||||
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
|
||||
- PARALLEL_TEST_PROCESSORS=2
|
||||
|
||||
addons:
|
||||
postgresql: 9.4
|
||||
apt:
|
||||
sources:
|
||||
- trusty-media
|
||||
- sourceline: deb https://dl.yarnpkg.com/debian/ stable main
|
||||
key_url: https://dl.yarnpkg.com/debian/pubkey.gpg
|
||||
packages:
|
||||
- ffmpeg
|
||||
- libicu-dev
|
||||
- libprotobuf-dev
|
||||
- protobuf-compiler
|
||||
- yarn
|
||||
|
||||
rvm:
|
||||
- 2.4.1
|
||||
- 2.4.2
|
||||
- 2.5.0
|
||||
|
||||
services:
|
||||
- redis-server
|
||||
|
||||
bundler_args: --without development production --retry=3 --jobs=3
|
||||
|
||||
before_install:
|
||||
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||
- sudo apt-get -qq update
|
||||
- sudo apt-get -qq install g++-4.8
|
||||
install:
|
||||
- nvm install $TRAVIS_NODE_VERSION
|
||||
- npm install -g npm@3
|
||||
- npm install -g yarn
|
||||
- bundle install
|
||||
- nvm install
|
||||
- bundle install --path=vendor/bundle --without development production --retry=3 --jobs=16
|
||||
- yarn install
|
||||
|
||||
before_script:
|
||||
- bundle exec rails db:create db:migrate
|
||||
- ./bin/rails parallel:create parallel:load_schema parallel:prepare assets:precompile
|
||||
|
||||
script:
|
||||
- bundle exec rspec
|
||||
- npm test
|
||||
- travis_retry bundle exec parallel_test spec/ --group-by filesize --type rspec
|
||||
- yarn run test:jest
|
||||
- bundle exec i18n-tasks check-normalized && bundle exec i18n-tasks unused
|
||||
|
46
.yarnclean
Normal file
@@ -0,0 +1,46 @@
|
||||
# test directories
|
||||
__tests__
|
||||
test
|
||||
tests
|
||||
powered-test
|
||||
|
||||
# asset directories
|
||||
docs
|
||||
doc
|
||||
website
|
||||
images
|
||||
# assets
|
||||
|
||||
# examples
|
||||
example
|
||||
examples
|
||||
|
||||
# code coverage directories
|
||||
coverage
|
||||
.nyc_output
|
||||
|
||||
# build scripts
|
||||
Makefile
|
||||
Gulpfile.js
|
||||
Gruntfile.js
|
||||
|
||||
# configs
|
||||
.tern-project
|
||||
.gitattributes
|
||||
.editorconfig
|
||||
.*ignore
|
||||
.eslintrc
|
||||
.jshintrc
|
||||
.flowconfig
|
||||
.documentup.json
|
||||
.yarn-metadata.json
|
||||
.*.yml
|
||||
*.yml
|
||||
|
||||
# misc
|
||||
*.gz
|
||||
*.md
|
||||
|
||||
# for specific ignore
|
||||
!.svgo.yml
|
||||
|
450
AUTHORS.md
Normal file
@@ -0,0 +1,450 @@
|
||||
Mastodon is available on [GitHub](https://github.com/tootsuite/mastodon)
|
||||
and provided thanks to the work of the following contributors:
|
||||
|
||||
* [Gargron](https://github.com/Gargron)
|
||||
* [ykzts](https://github.com/ykzts)
|
||||
* [mjankowski](https://github.com/mjankowski)
|
||||
* [akihikodaki](https://github.com/akihikodaki)
|
||||
* [unarist](https://github.com/unarist)
|
||||
* [yiskah](https://github.com/yiskah)
|
||||
* [m4sk1n](https://github.com/m4sk1n)
|
||||
* [nolanlawson](https://github.com/nolanlawson)
|
||||
* [sorin-davidoi](https://github.com/sorin-davidoi)
|
||||
* [abcang](https://github.com/abcang)
|
||||
* [ThibG](https://github.com/ThibG)
|
||||
* [lynlynlynx](https://github.com/lynlynlynx)
|
||||
* [alpaca-tc](https://github.com/alpaca-tc)
|
||||
* [nclm](https://github.com/nclm)
|
||||
* [ineffyble](https://github.com/ineffyble)
|
||||
* [jeroenpraat](https://github.com/jeroenpraat)
|
||||
* [blackle](https://github.com/blackle)
|
||||
* [Quent-in](https://github.com/Quent-in)
|
||||
* [JantsoP](https://github.com/JantsoP)
|
||||
* [nullkal](https://github.com/nullkal)
|
||||
* [yookoala](https://github.com/yookoala)
|
||||
* [ysksn](https://github.com/ysksn)
|
||||
* [ashfurrow](https://github.com/ashfurrow)
|
||||
* [eramdam](https://github.com/eramdam)
|
||||
* [mayaeh](https://github.com/mayaeh)
|
||||
* [zunda](https://github.com/zunda)
|
||||
* [ticky](https://github.com/ticky)
|
||||
* [masarakki](https://github.com/masarakki)
|
||||
* [Wonderfall](https://github.com/Wonderfall)
|
||||
* [matteoaquila](https://github.com/matteoaquila)
|
||||
* [rkarabut](https://github.com/rkarabut)
|
||||
* [stephenburgess8](https://github.com/stephenburgess8)
|
||||
* [Kjwon15](https://github.com/Kjwon15)
|
||||
* [Artoria2e5](https://github.com/Artoria2e5)
|
||||
* [yukimochi](https://github.com/yukimochi)
|
||||
* [marrus-sh](https://github.com/marrus-sh)
|
||||
* [krainboltgreene](https://github.com/krainboltgreene)
|
||||
* [renatolond](https://github.com/renatolond)
|
||||
* [BoFFire](https://github.com/BoFFire)
|
||||
* [clworld](https://github.com/clworld)
|
||||
* [danhunsaker](https://github.com/danhunsaker)
|
||||
* [patf](https://github.com/patf)
|
||||
* [Quenty31](https://github.com/Quenty31)
|
||||
* [MitarashiDango](https://github.com/MitarashiDango)
|
||||
* [Aldarone](https://github.com/Aldarone)
|
||||
* [JeanGauthier](https://github.com/JeanGauthier)
|
||||
* [kschaper](https://github.com/kschaper)
|
||||
* [takayamaki](https://github.com/takayamaki)
|
||||
* [adbelle](https://github.com/adbelle)
|
||||
* [evanminto](https://github.com/evanminto)
|
||||
* [mabkenar](https://github.com/mabkenar)
|
||||
* [MightyPork](https://github.com/MightyPork)
|
||||
* [beatrix-bitrot](https://github.com/beatrix-bitrot)
|
||||
* [yhirano55](https://github.com/yhirano55)
|
||||
* [camponez](https://github.com/camponez)
|
||||
* [aschmitz](https://github.com/aschmitz)
|
||||
* [fpiesche](https://github.com/fpiesche)
|
||||
* [gandaro](https://github.com/gandaro)
|
||||
* [johnsudaar](https://github.com/johnsudaar)
|
||||
* [trebmuh](https://github.com/trebmuh)
|
||||
* [Sylvhem](https://github.com/Sylvhem)
|
||||
* [lindwurm](https://github.com/lindwurm)
|
||||
* [voidsatisfaction](https://github.com/voidsatisfaction)
|
||||
* [neetshin](https://github.com/neetshin)
|
||||
* [valentin2105](https://github.com/valentin2105)
|
||||
* [hikari-no-yume](https://github.com/hikari-no-yume)
|
||||
* [Angristan](https://github.com/Angristan)
|
||||
* [seefood](https://github.com/seefood)
|
||||
* [jackjennings](https://github.com/jackjennings)
|
||||
* [hcmiya](https://github.com/hcmiya)
|
||||
* [nightpool](https://github.com/nightpool)
|
||||
* [salvadorpla](https://github.com/salvadorpla)
|
||||
* [expenses](https://github.com/expenses)
|
||||
* [walf443](https://github.com/walf443)
|
||||
* [JoelQ](https://github.com/JoelQ)
|
||||
* [mistydemeo](https://github.com/mistydemeo)
|
||||
* [dunn](https://github.com/dunn)
|
||||
* [xqus](https://github.com/xqus)
|
||||
* [pfm-eyesightjp](https://github.com/pfm-eyesightjp)
|
||||
* [fakenine](https://github.com/fakenine)
|
||||
* [tsuwatch](https://github.com/tsuwatch)
|
||||
* [victorhck](https://github.com/victorhck)
|
||||
* [puckipedia](https://github.com/puckipedia)
|
||||
* [contraexemplo](https://github.com/contraexemplo)
|
||||
* [kazu9su](https://github.com/kazu9su)
|
||||
* [Komic](https://github.com/Komic)
|
||||
* [diomed](https://github.com/diomed)
|
||||
* [rainyday](https://github.com/rainyday)
|
||||
* [kadiix](https://github.com/kadiix)
|
||||
* [kodacs](https://github.com/kodacs)
|
||||
* [ProgVal](https://github.com/ProgVal)
|
||||
* [sterdev](https://github.com/sterdev)
|
||||
* [TheKinrar](https://github.com/TheKinrar)
|
||||
* [AA4ch1](https://github.com/AA4ch1)
|
||||
* [alexgleason](https://github.com/alexgleason)
|
||||
* [cpytel](https://github.com/cpytel)
|
||||
* [northerner](https://github.com/northerner)
|
||||
* [hnrysmth](https://github.com/hnrysmth)
|
||||
* [hugogameiro](https://github.com/hugogameiro)
|
||||
* [JohnD28](https://github.com/JohnD28)
|
||||
* [znz](https://github.com/znz)
|
||||
* [Naouak](https://github.com/Naouak)
|
||||
* [rtucker](https://github.com/rtucker)
|
||||
* [reneklacan](https://github.com/reneklacan)
|
||||
* [KScl](https://github.com/KScl)
|
||||
* [SerCom-KC](https://github.com/SerCom-KC)
|
||||
* [tcitworld](https://github.com/tcitworld)
|
||||
* [geta6](https://github.com/geta6)
|
||||
* [goofy-bz](https://github.com/goofy-bz)
|
||||
* [happycoloredbanana](https://github.com/happycoloredbanana)
|
||||
* [leopku](https://github.com/leopku)
|
||||
* [SansPseudoFix](https://github.com/SansPseudoFix)
|
||||
* [tomfhowe](https://github.com/tomfhowe)
|
||||
* [noraworld](https://github.com/noraworld)
|
||||
* [fvh-P](https://github.com/fvh-P)
|
||||
* [178inaba](https://github.com/178inaba)
|
||||
* [devkral](https://github.com/devkral)
|
||||
* [alyssais](https://github.com/alyssais)
|
||||
* [kodnaplakal](https://github.com/kodnaplakal)
|
||||
* [stalker314314](https://github.com/stalker314314)
|
||||
* [huertanix](https://github.com/huertanix)
|
||||
* [genesixx](https://github.com/genesixx)
|
||||
* [fhemberger](https://github.com/fhemberger)
|
||||
* [halkeye](https://github.com/halkeye)
|
||||
* [treby](https://github.com/treby)
|
||||
* [d6rkaiz](https://github.com/d6rkaiz)
|
||||
* [jpdevries](https://github.com/jpdevries)
|
||||
* [rndm-stranger](https://github.com/rndm-stranger)
|
||||
* [saper](https://github.com/saper)
|
||||
* [nevillepark](https://github.com/nevillepark)
|
||||
* [ornithocoder](https://github.com/ornithocoder)
|
||||
* [pierreozoux](https://github.com/pierreozoux)
|
||||
* [ramlmn](https://github.com/ramlmn)
|
||||
* [harukasan](https://github.com/harukasan)
|
||||
* [stamak](https://github.com/stamak)
|
||||
* [Eychics](https://github.com/Eychics)
|
||||
* [thor-the-norseman](https://github.com/thor-the-norseman)
|
||||
* [0x70b1a5](https://github.com/0x70b1a5)
|
||||
* [gled-rs](https://github.com/gled-rs)
|
||||
* [R0ckweb](https://github.com/R0ckweb)
|
||||
* [esetomo](https://github.com/esetomo)
|
||||
* [foxiehkins](https://github.com/foxiehkins)
|
||||
* [sdukhovni](https://github.com/sdukhovni)
|
||||
* [unsmell](https://github.com/unsmell)
|
||||
* [chriswmartin](https://github.com/chriswmartin)
|
||||
* [vahnj](https://github.com/vahnj)
|
||||
* [ikuradon](https://github.com/ikuradon)
|
||||
* [AndreLewin](https://github.com/AndreLewin)
|
||||
* [redtachyons](https://github.com/redtachyons)
|
||||
* [thurloat](https://github.com/thurloat)
|
||||
* [aaribaud](https://github.com/aaribaud)
|
||||
* [estuans](https://github.com/estuans)
|
||||
* [dissolve](https://github.com/dissolve)
|
||||
* [PurpleBooth](https://github.com/PurpleBooth)
|
||||
* [bradurani](https://github.com/bradurani)
|
||||
* [wavebeem](https://github.com/wavebeem)
|
||||
* [bruwalfas](https://github.com/bruwalfas)
|
||||
* [foxsan48](https://github.com/foxsan48)
|
||||
* [wchristian](https://github.com/wchristian)
|
||||
* [muffinista](https://github.com/muffinista)
|
||||
* [cdutson](https://github.com/cdutson)
|
||||
* [farlistener](https://github.com/farlistener)
|
||||
* [DavidLibeau](https://github.com/DavidLibeau)
|
||||
* [SirCmpwn](https://github.com/SirCmpwn)
|
||||
* [MasterGroosha](https://github.com/MasterGroosha)
|
||||
* [Fjoerfoks](https://github.com/Fjoerfoks)
|
||||
* [fmauNeko](https://github.com/fmauNeko)
|
||||
* [gloaec](https://github.com/gloaec)
|
||||
* [greysteil](https://github.com/greysteil)
|
||||
* [unstabler](https://github.com/unstabler)
|
||||
* [potato4d](https://github.com/potato4d)
|
||||
* [h-izumi](https://github.com/h-izumi)
|
||||
* [ErikXXon](https://github.com/ErikXXon)
|
||||
* [ian-kelling](https://github.com/ian-kelling)
|
||||
* [foozmeat](https://github.com/foozmeat)
|
||||
* [jasonrhodes](https://github.com/jasonrhodes)
|
||||
* [asm](https://github.com/asm)
|
||||
* [jviide](https://github.com/jviide)
|
||||
* [crakaC](https://github.com/crakaC)
|
||||
* [tkbky](https://github.com/tkbky)
|
||||
* [Kazhnuz](https://github.com/Kazhnuz)
|
||||
* [alimony](https://github.com/alimony)
|
||||
* [mig5](https://github.com/mig5)
|
||||
* [ndarville](https://github.com/ndarville)
|
||||
* [Abzol](https://github.com/Abzol)
|
||||
* [xPaw](https://github.com/xPaw)
|
||||
* [raymestalez](https://github.com/raymestalez)
|
||||
* [sim6](https://github.com/sim6)
|
||||
* [ekiru](https://github.com/ekiru)
|
||||
* [Technowix](https://github.com/Technowix)
|
||||
* [ThomasLeister](https://github.com/ThomasLeister)
|
||||
* [mcat-ee](https://github.com/mcat-ee)
|
||||
* [tototoshi](https://github.com/tototoshi)
|
||||
* [VirtuBox](https://github.com/VirtuBox)
|
||||
* [kaniini](https://github.com/kaniini)
|
||||
* [vayan](https://github.com/vayan)
|
||||
* [yannicka](https://github.com/yannicka)
|
||||
* [ikasoumen](https://github.com/ikasoumen)
|
||||
* [zacanger](https://github.com/zacanger)
|
||||
* [amazedkoumei](https://github.com/amazedkoumei)
|
||||
* [anon5r](https://github.com/anon5r)
|
||||
* [codl](https://github.com/codl)
|
||||
* [barzamin](https://github.com/barzamin)
|
||||
* [fhalna](https://github.com/fhalna)
|
||||
* [haoyayoi](https://github.com/haoyayoi)
|
||||
* [ik11235](https://github.com/ik11235)
|
||||
* [kawax](https://github.com/kawax)
|
||||
* [007lva](https://github.com/007lva)
|
||||
* [matsurai25](https://github.com/matsurai25)
|
||||
* [mecab](https://github.com/mecab)
|
||||
* [nicobz25](https://github.com/nicobz25)
|
||||
* [oliverkeeble](https://github.com/oliverkeeble)
|
||||
* [pinfort](https://github.com/pinfort)
|
||||
* [rbaumert](https://github.com/rbaumert)
|
||||
* [usagi-f](https://github.com/usagi-f)
|
||||
* [vidarlee](https://github.com/vidarlee)
|
||||
* [vjackson725](https://github.com/vjackson725)
|
||||
* [wxcafe](https://github.com/wxcafe)
|
||||
* [rinsuki](https://github.com/rinsuki)
|
||||
* [cygnan](https://github.com/cygnan)
|
||||
* [Awea](https://github.com/Awea)
|
||||
* [halcy](https://github.com/halcy)
|
||||
* [bounshi](https://github.com/bounshi)
|
||||
* [8398a7](https://github.com/8398a7)
|
||||
* [857b](https://github.com/857b)
|
||||
* [unascribed](https://github.com/unascribed)
|
||||
* [Aguay-val](https://github.com/Aguay-val)
|
||||
* [knu](https://github.com/knu)
|
||||
* [alxrcs](https://github.com/alxrcs)
|
||||
* [console-cowboy](https://github.com/console-cowboy)
|
||||
* [pointlessone](https://github.com/pointlessone)
|
||||
* [a2](https://github.com/a2)
|
||||
* [0xa](https://github.com/0xa)
|
||||
* [virtualpain](https://github.com/virtualpain)
|
||||
* [sapphirus](https://github.com/sapphirus)
|
||||
* [amandavisconti](https://github.com/amandavisconti)
|
||||
* [ameliavoncat](https://github.com/ameliavoncat)
|
||||
* [ilpianista](https://github.com/ilpianista)
|
||||
* [andydrop](https://github.com/andydrop)
|
||||
* [schas002](https://github.com/schas002)
|
||||
* [jumbosushi](https://github.com/jumbosushi)
|
||||
* [ayumin](https://github.com/ayumin)
|
||||
* [BaptisteGelez](https://github.com/BaptisteGelez)
|
||||
* [bzg](https://github.com/bzg)
|
||||
* [benediktg](https://github.com/benediktg)
|
||||
* [blakebarnett](https://github.com/blakebarnett)
|
||||
* [bradj](https://github.com/bradj)
|
||||
* [brycied00d](https://github.com/brycied00d)
|
||||
* [carlosjs23](https://github.com/carlosjs23)
|
||||
* [cgxxx](https://github.com/cgxxx)
|
||||
* [chrisheninger](https://github.com/chrisheninger)
|
||||
* [chris-martin](https://github.com/chris-martin)
|
||||
* [DoubleMalt](https://github.com/DoubleMalt)
|
||||
* [Moosh-be](https://github.com/Moosh-be)
|
||||
* [Motoma](https://github.com/Motoma)
|
||||
* [chriswk](https://github.com/chriswk)
|
||||
* [csu](https://github.com/csu)
|
||||
* [kklleemm](https://github.com/kklleemm)
|
||||
* [monsterpit-daggertooth](https://github.com/monsterpit-daggertooth)
|
||||
* [watilde](https://github.com/watilde)
|
||||
* [daprice](https://github.com/daprice)
|
||||
* [dar5hak](https://github.com/dar5hak)
|
||||
* [kant](https://github.com/kant)
|
||||
* [singingwolfboy](https://github.com/singingwolfboy)
|
||||
* [davidcelis](https://github.com/davidcelis)
|
||||
* [yipdw](https://github.com/yipdw)
|
||||
* [debanshuk](https://github.com/debanshuk)
|
||||
* [dblandin](https://github.com/dblandin)
|
||||
* [aranaur](https://github.com/aranaur)
|
||||
* [d3vgru](https://github.com/d3vgru)
|
||||
* [Elizafox](https://github.com/Elizafox)
|
||||
* [ericblade](https://github.com/ericblade)
|
||||
* [mikoim](https://github.com/mikoim)
|
||||
* [siuying](https://github.com/siuying)
|
||||
* [hattori6789](https://github.com/hattori6789)
|
||||
* [algernon](https://github.com/algernon)
|
||||
* [Fastbyte01](https://github.com/Fastbyte01)
|
||||
* [myfreeweb](https://github.com/myfreeweb)
|
||||
* [gfaivre](https://github.com/gfaivre)
|
||||
* [Fiaxhs](https://github.com/Fiaxhs)
|
||||
* [reedcourty](https://github.com/reedcourty)
|
||||
* [anneau](https://github.com/anneau)
|
||||
* [HellPie](https://github.com/HellPie)
|
||||
* [Habu-Kagumba](https://github.com/Habu-Kagumba)
|
||||
* [hinaloe](https://github.com/hinaloe)
|
||||
* [suzukaze](https://github.com/suzukaze)
|
||||
* [Hiromi-Kai](https://github.com/Hiromi-Kai)
|
||||
* [musashino205](https://github.com/musashino205)
|
||||
* [iwaim](https://github.com/iwaim)
|
||||
* [valrus](https://github.com/valrus)
|
||||
* [IMcD23](https://github.com/IMcD23)
|
||||
* [yi0713](https://github.com/yi0713)
|
||||
* [immae](https://github.com/immae)
|
||||
* [iblech](https://github.com/iblech)
|
||||
* [jack-michaud](https://github.com/jack-michaud)
|
||||
* [Floppy](https://github.com/Floppy)
|
||||
* [loomchild](https://github.com/loomchild)
|
||||
* [docjkl](https://github.com/docjkl)
|
||||
* [TrollDecker](https://github.com/TrollDecker)
|
||||
* [jmontane](https://github.com/jmontane)
|
||||
* [jonathanklee](https://github.com/jonathanklee)
|
||||
* [jguerder](https://github.com/jguerder)
|
||||
* [Jehops](https://github.com/Jehops)
|
||||
* [joshuap](https://github.com/joshuap)
|
||||
* [Tiwy57](https://github.com/Tiwy57)
|
||||
* [xuv](https://github.com/xuv)
|
||||
* [Jnsll](https://github.com/Jnsll)
|
||||
* [j0k3r](https://github.com/j0k3r)
|
||||
* [KEINOS](https://github.com/KEINOS)
|
||||
* [futoase](https://github.com/futoase)
|
||||
* [abjectio](https://github.com/abjectio)
|
||||
* [mkody](https://github.com/mkody)
|
||||
* [connyduck](https://github.com/connyduck)
|
||||
* [k0ta0uchi](https://github.com/k0ta0uchi)
|
||||
* [KrzysiekJ](https://github.com/KrzysiekJ)
|
||||
* [leowzukw](https://github.com/leowzukw)
|
||||
* [lmorchard](https://github.com/lmorchard)
|
||||
* [cacheflow](https://github.com/cacheflow)
|
||||
* [ldidry](https://github.com/ldidry)
|
||||
* [jemus42](https://github.com/jemus42)
|
||||
* [lfuelling](https://github.com/lfuelling)
|
||||
* [Grabacr07](https://github.com/Grabacr07)
|
||||
* [mistermantas](https://github.com/mistermantas)
|
||||
* [wirehack7](https://github.com/wirehack7)
|
||||
* [marvinkopf](https://github.com/marvinkopf)
|
||||
* [otsune](https://github.com/otsune)
|
||||
* [m-blc](https://github.com/m-blc)
|
||||
* [matt-auckland](https://github.com/matt-auckland)
|
||||
* [mattjmattj](https://github.com/mattjmattj)
|
||||
* [mtparet](https://github.com/mtparet)
|
||||
* [maximeborges](https://github.com/maximeborges)
|
||||
* [minacle](https://github.com/minacle)
|
||||
* [michaeljdeeb](https://github.com/michaeljdeeb)
|
||||
* [Themimitoof](https://github.com/Themimitoof)
|
||||
* [cyweo](https://github.com/cyweo)
|
||||
* [M1dgard](https://github.com/M1dgard)
|
||||
* [mike-burns](https://github.com/mike-burns)
|
||||
* [verymilan](https://github.com/verymilan)
|
||||
* [milmazz](https://github.com/milmazz)
|
||||
* [Mnkai](https://github.com/Mnkai)
|
||||
* [mitchhentges](https://github.com/mitchhentges)
|
||||
* [moritzheiber](https://github.com/moritzheiber)
|
||||
* [mouse-reeve](https://github.com/mouse-reeve)
|
||||
* [lae](https://github.com/lae)
|
||||
* [Nanamachi](https://github.com/Nanamachi)
|
||||
* [ngerakines](https://github.com/ngerakines)
|
||||
* [vonneudeck](https://github.com/vonneudeck)
|
||||
* [Ninetailed](https://github.com/Ninetailed)
|
||||
* [k24](https://github.com/k24)
|
||||
* [noiob](https://github.com/noiob)
|
||||
* [kwaio](https://github.com/kwaio)
|
||||
* [norayr](https://github.com/norayr)
|
||||
* [joyeusenoelle](https://github.com/joyeusenoelle)
|
||||
* [OlivierNicole](https://github.com/OlivierNicole)
|
||||
* [Otakan951](https://github.com/Otakan951)
|
||||
* [fahy](https://github.com/fahy)
|
||||
* [Pangoraw](https://github.com/Pangoraw)
|
||||
* [pwoolcoc](https://github.com/pwoolcoc)
|
||||
* [peterkeen](https://github.com/peterkeen)
|
||||
* [petzah](https://github.com/petzah)
|
||||
* [ignisf](https://github.com/ignisf)
|
||||
* [rfwatson](https://github.com/rfwatson)
|
||||
* [rfreebern](https://github.com/rfreebern)
|
||||
* [sylph01](https://github.com/sylph01)
|
||||
* [staticsafe](https://github.com/staticsafe)
|
||||
* [snwh](https://github.com/snwh)
|
||||
* [skoji](https://github.com/skoji)
|
||||
* [ScienJus](https://github.com/ScienJus)
|
||||
* [larkinscott](https://github.com/larkinscott)
|
||||
* [imolein](https://github.com/imolein)
|
||||
* [blinry](https://github.com/blinry)
|
||||
* [Noiwex](https://github.com/Noiwex)
|
||||
* [yuki764](https://github.com/yuki764)
|
||||
* [shnjp](https://github.com/shnjp)
|
||||
* [ernix](https://github.com/ernix)
|
||||
* [rosylilly](https://github.com/rosylilly)
|
||||
* [shouko](https://github.com/shouko)
|
||||
* [sossii](https://github.com/sossii)
|
||||
* [StefOfficiel](https://github.com/StefOfficiel)
|
||||
* [svetlik](https://github.com/svetlik)
|
||||
* [dereckson](https://github.com/dereckson)
|
||||
* [theboss](https://github.com/theboss)
|
||||
* [takp](https://github.com/takp)
|
||||
* [tkusano](https://github.com/tkusano)
|
||||
* [TheInventrix](https://github.com/TheInventrix)
|
||||
* [shug0](https://github.com/shug0)
|
||||
* [Fortyseven](https://github.com/Fortyseven)
|
||||
* [tobypinder](https://github.com/tobypinder)
|
||||
* [tomosm](https://github.com/tomosm)
|
||||
* [TomoyaShibata](https://github.com/TomoyaShibata)
|
||||
* [TrashMacNugget](https://github.com/TrashMacNugget)
|
||||
* [treyssatvincent](https://github.com/treyssatvincent)
|
||||
* [optikfluffel](https://github.com/optikfluffel)
|
||||
* [vmincev](https://github.com/vmincev)
|
||||
* [waldyrious](https://github.com/waldyrious)
|
||||
* [tahnok](https://github.com/tahnok)
|
||||
* [YDrogen](https://github.com/YDrogen)
|
||||
* [YOSHIOKAEiichiro](https://github.com/YOSHIOKAEiichiro)
|
||||
* [S-YOU](https://github.com/S-YOU)
|
||||
* [YaQ00](https://github.com/YaQ00)
|
||||
* [yanakend](https://github.com/yanakend)
|
||||
* [orzFly](https://github.com/orzFly)
|
||||
* [chansuke](https://github.com/chansuke)
|
||||
* [yuntan](https://github.com/yuntan)
|
||||
* [LogicalDash](https://github.com/LogicalDash)
|
||||
* [ZiiX](https://github.com/ZiiX)
|
||||
* [benklop](https://github.com/benklop)
|
||||
* [caasi](https://github.com/caasi)
|
||||
* [caesarologia](https://github.com/caesarologia)
|
||||
* [chrolis](https://github.com/chrolis)
|
||||
* [cormojs](https://github.com/cormojs)
|
||||
* [cpsdqs](https://github.com/cpsdqs)
|
||||
* [d0p1s4m4](https://github.com/d0p1s4m4)
|
||||
* [evilny0](https://github.com/evilny0)
|
||||
* [febrezo](https://github.com/febrezo)
|
||||
* [fsubal](https://github.com/fsubal)
|
||||
* [dikky1218](https://github.com/dikky1218)
|
||||
* [gentarok](https://github.com/gentarok)
|
||||
* [hakoai](https://github.com/hakoai)
|
||||
* [chaosbunker](https://github.com/chaosbunker)
|
||||
* [isati](https://github.com/isati)
|
||||
* [jkap](https://github.com/jkap)
|
||||
* [jirayudech](https://github.com/jirayudech)
|
||||
* [jukper](https://github.com/jukper)
|
||||
* [karlyeurl](https://github.com/karlyeurl)
|
||||
* [kedamaDQ](https://github.com/kedamaDQ)
|
||||
* [kuro5hin](https://github.com/kuro5hin)
|
||||
* [maxypy](https://github.com/maxypy)
|
||||
* [marcus-herrmann](https://github.com/marcus-herrmann)
|
||||
* [mshrtkch](https://github.com/mshrtkch)
|
||||
* [muan](https://github.com/muan)
|
||||
* [rch850](https://github.com/rch850)
|
||||
* [roikale](https://github.com/roikale)
|
||||
* [rysiekpl](https://github.com/rysiekpl)
|
||||
* [saturday06](https://github.com/saturday06)
|
||||
* [scriptjunkie](https://github.com/scriptjunkie)
|
||||
* [seekr](https://github.com/seekr)
|
||||
* [syui](https://github.com/syui)
|
||||
* [tackeyy](https://github.com/tackeyy)
|
||||
* [tmyt](https://github.com/tmyt)
|
||||
* [utam0k](https://github.com/utam0k)
|
||||
* [vpzomtrrfrt](https://github.com/vpzomtrrfrt)
|
||||
* [walfie](https://github.com/walfie)
|
||||
* [y-temp4](https://github.com/y-temp4)
|
||||
* [ymmtmdk](https://github.com/ymmtmdk)
|
||||
|
||||
This document is provided for informational purposes only. Since it is only updated once per release, the version you are looking at may be currently out of date. To see the full list of contributors, consider looking at the [git history](https://github.com/tootsuite/mastodon/graphs/contributors) instead.
|
10
Aptfile
Normal file
@@ -0,0 +1,10 @@
|
||||
ffmpeg
|
||||
libicu[0-9][0-9]
|
||||
libicu-dev
|
||||
libidn11
|
||||
libidn11-dev
|
||||
libpq-dev
|
||||
libprotobuf-dev
|
||||
libxdamage1
|
||||
libxfixes3
|
||||
protobuf-compiler
|
46
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at eugen@zeonfederated.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
@@ -7,7 +7,7 @@ There are three ways in which you can contribute to this repository:
|
||||
2. By working on the back-end application
|
||||
3. By working on the front-end application
|
||||
|
||||
Choosing what to work on in a large open source project is not easy. The list of GitHub issues may provide some ideas, but not every feature request has been greenlit. Likewise, not every change or feature that resolves a personal itch will be merged into the main repository. Some communication ahead of time may be wise. If your addition creates a new feature or setting, or otherwise changes how things work in some substantial way, please remember to submit a correlating pull request to document your changes in the [documentation](http://github.com/tootsuite/documentation).
|
||||
Choosing what to work on in a large open source project is not easy. The list of [GitHub issues](https://github.com/tootsuite/mastodon/issues) may provide some ideas, but not every feature request has been greenlit. Likewise, not every change or feature that resolves a personal itch will be merged into the main repository. Some communication ahead of time may be wise. If your addition creates a new feature or setting, or otherwise changes how things work in some substantial way, please remember to submit a correlating pull request to document your changes in the [documentation](http://github.com/tootsuite/documentation).
|
||||
|
||||
Below are the guidelines for working on pull requests:
|
||||
|
||||
@@ -21,9 +21,17 @@ Below are the guidelines for working on pull requests:
|
||||
- No orthographic mistakes
|
||||
- No Markdown syntax errors
|
||||
|
||||
## Requirements
|
||||
|
||||
- Ruby
|
||||
- Node.js
|
||||
- PostgreSQL
|
||||
- Redis
|
||||
- Nginx (optional)
|
||||
|
||||
## Back-end application
|
||||
|
||||
It is expected that you have a working development environment set up. The development environment includes rubocop, which checks your Ruby code for compliance with our style guide and best practices. Sublime Text, likely like other editors, has a Rubocop plugin that runs checks on files as you edit them. The codebase also has a test suite.
|
||||
It is expected that you have a working development environment set up. The development environment includes [rubocop](https://github.com/bbatsov/rubocop), which checks your Ruby code for compliance with our style guide and best practices. Sublime Text, likely like other editors, has a [Rubocop plugin](https://github.com/pderichs/sublime_rubocop) that runs checks on files as you edit them. The codebase also has a test suite.
|
||||
|
||||
* The codebase is not perfect, at the time of writing, but it is expected that you do not introduce new code style violations
|
||||
* The rspec test suite must pass
|
||||
@@ -41,4 +49,3 @@ It is expected that you have a working development environment set up (see back-
|
||||
* If you are introducing new strings, they must be using localization methods
|
||||
|
||||
If the JavaScript or CSS assets won't compile due to a syntax error, it's a good sign that the pull request isn't ready for submission yet.
|
||||
|
||||
|
2
Capfile
@@ -1,3 +1,4 @@
|
||||
# frozen_string_literal: true
|
||||
require 'capistrano/setup'
|
||||
require 'capistrano/deploy'
|
||||
require 'capistrano/scm/git'
|
||||
@@ -8,7 +9,6 @@ require 'capistrano/rbenv'
|
||||
require 'capistrano/bundler'
|
||||
require 'capistrano/yarn'
|
||||
require 'capistrano/rails/assets'
|
||||
require 'capistrano/faster_assets'
|
||||
require 'capistrano/rails/migrations'
|
||||
|
||||
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
|
||||
|
82
Dockerfile
@@ -1,39 +1,75 @@
|
||||
FROM ruby:2.4.1-alpine
|
||||
FROM ruby:2.5.0-alpine3.7
|
||||
|
||||
LABEL maintainer="https://github.com/tootsuite/mastodon" \
|
||||
description="A GNU Social-compatible microblogging server"
|
||||
description="Your self-hosted, globally interconnected microblogging community"
|
||||
|
||||
ENV RAILS_ENV=production \
|
||||
NODE_ENV=production
|
||||
ARG UID=991
|
||||
ARG GID=991
|
||||
|
||||
ENV RAILS_SERVE_STATIC_FILES=true \
|
||||
RAILS_ENV=production NODE_ENV=production
|
||||
|
||||
ARG LIBICONV_VERSION=1.15
|
||||
ARG LIBICONV_DOWNLOAD_SHA256=ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178
|
||||
|
||||
EXPOSE 3000 4000
|
||||
|
||||
WORKDIR /mastodon
|
||||
|
||||
COPY Gemfile Gemfile.lock package.json yarn.lock /mastodon/
|
||||
|
||||
RUN BUILD_DEPS=" \
|
||||
RUN apk -U upgrade \
|
||||
&& apk add -t build-dependencies \
|
||||
build-base \
|
||||
icu-dev \
|
||||
libidn-dev \
|
||||
libressl \
|
||||
libtool \
|
||||
postgresql-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
build-base" \
|
||||
&& apk -U upgrade && apk add \
|
||||
$BUILD_DEPS \
|
||||
nodejs \
|
||||
libpq \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
protobuf-dev \
|
||||
python \
|
||||
&& apk add \
|
||||
ca-certificates \
|
||||
ffmpeg \
|
||||
file \
|
||||
icu-libs \
|
||||
imagemagick \
|
||||
&& npm install -g npm@3 && npm install -g yarn \
|
||||
&& bundle install --deployment --without test development \
|
||||
&& yarn \
|
||||
&& yarn cache clean \
|
||||
&& npm -g cache clean \
|
||||
&& apk del $BUILD_DEPS \
|
||||
libidn \
|
||||
libpq \
|
||||
nodejs \
|
||||
protobuf \
|
||||
tini \
|
||||
tzdata \
|
||||
yarn \
|
||||
&& update-ca-certificates \
|
||||
&& mkdir -p /tmp/src \
|
||||
&& wget -O libiconv.tar.gz "https://ftp.gnu.org/pub/gnu/libiconv/libiconv-$LIBICONV_VERSION.tar.gz" \
|
||||
&& echo "$LIBICONV_DOWNLOAD_SHA256 *libiconv.tar.gz" | sha256sum -c - \
|
||||
&& tar -xzf libiconv.tar.gz -C /tmp/src \
|
||||
&& rm libiconv.tar.gz \
|
||||
&& cd /tmp/src/libiconv-$LIBICONV_VERSION \
|
||||
&& ./configure --prefix=/usr/local \
|
||||
&& make -j$(getconf _NPROCESSORS_ONLN)\
|
||||
&& make install \
|
||||
&& libtool --finish /usr/local/lib \
|
||||
&& cd /mastodon \
|
||||
&& rm -rf /tmp/* /var/cache/apk/*
|
||||
|
||||
COPY Gemfile Gemfile.lock package.json yarn.lock .yarnclean /mastodon/
|
||||
|
||||
RUN bundle config build.nokogiri --with-iconv-lib=/usr/local/lib --with-iconv-include=/usr/local/include \
|
||||
&& bundle install -j$(getconf _NPROCESSORS_ONLN) --deployment --without test development \
|
||||
&& yarn --pure-lockfile \
|
||||
&& yarn cache clean
|
||||
|
||||
RUN addgroup -g ${GID} mastodon && adduser -h /mastodon -s /bin/sh -D -G mastodon -u ${UID} mastodon \
|
||||
&& mkdir -p /mastodon/public/system /mastodon/public/assets /mastodon/public/packs \
|
||||
&& chown -R mastodon:mastodon /mastodon/public
|
||||
|
||||
COPY . /mastodon
|
||||
|
||||
VOLUME /mastodon/public/system /mastodon/public/assets
|
||||
RUN chown -R mastodon:mastodon /mastodon
|
||||
|
||||
VOLUME /mastodon/public/system /mastodon/public/assets /mastodon/public/packs
|
||||
|
||||
USER mastodon
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--"]
|
||||
|
189
Gemfile
@@ -1,97 +1,138 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
source 'https://rubygems.org'
|
||||
ruby '2.4.1'
|
||||
ruby '>= 2.3.0', '< 2.6.0'
|
||||
|
||||
gem 'rails', '~> 5.0.2'
|
||||
gem 'sass-rails', '~> 5.0'
|
||||
gem 'uglifier', '>= 1.3.0'
|
||||
gem 'coffee-rails', '~> 4.1.0'
|
||||
gem 'jquery-rails'
|
||||
gem 'puma'
|
||||
gem 'pkg-config', '~> 1.2'
|
||||
|
||||
gem 'hamlit-rails'
|
||||
gem 'pg'
|
||||
gem 'pghero'
|
||||
gem 'dotenv-rails'
|
||||
gem 'font-awesome-rails'
|
||||
gem 'best_in_place', '~> 3.0.1'
|
||||
gem 'puma', '~> 3.10'
|
||||
gem 'rails', '~> 5.1.4'
|
||||
|
||||
gem 'hamlit-rails', '~> 0.2'
|
||||
gem 'pg', '~> 0.20'
|
||||
gem 'pghero', '~> 1.7'
|
||||
gem 'dotenv-rails', '~> 2.2'
|
||||
|
||||
gem 'aws-sdk', '~> 2.10', require: false
|
||||
gem 'fog-core', '~> 1.45'
|
||||
gem 'fog-local', '~> 0.4', require: false
|
||||
gem 'fog-openstack', '~> 0.1', require: false
|
||||
gem 'paperclip', '~> 5.1'
|
||||
gem 'paperclip-av-transcoder'
|
||||
gem 'aws-sdk', '>= 2.0'
|
||||
gem 'paperclip-av-transcoder', '~> 0.6'
|
||||
gem 'streamio-ffmpeg', '~> 3.0'
|
||||
|
||||
gem 'addressable'
|
||||
gem 'devise'
|
||||
gem 'devise-two-factor'
|
||||
gem 'doorkeeper'
|
||||
gem 'fast_blank'
|
||||
gem 'goldfinger'
|
||||
gem 'hiredis'
|
||||
gem 'htmlentities'
|
||||
gem 'http'
|
||||
gem 'http_accept_language'
|
||||
gem 'httplog'
|
||||
gem 'kaminari'
|
||||
gem 'link_header'
|
||||
gem 'nokogiri'
|
||||
gem 'oj'
|
||||
gem 'ostatus2'
|
||||
gem 'ox'
|
||||
gem 'rabl'
|
||||
gem 'rack-attack'
|
||||
gem 'rack-cors', require: 'rack/cors'
|
||||
gem 'rack-timeout'
|
||||
gem 'rails-settings-cached'
|
||||
gem 'redis', '~>3.2', require: ['redis', 'redis/connection/hiredis']
|
||||
gem 'rqrcode'
|
||||
gem 'ruby-oembed', require: 'oembed'
|
||||
gem 'sidekiq'
|
||||
gem 'sidekiq-unique-jobs'
|
||||
gem 'simple-navigation'
|
||||
gem 'simple_form'
|
||||
gem 'statsd-instrument'
|
||||
gem 'twitter-text'
|
||||
gem 'tzinfo-data'
|
||||
gem 'active_model_serializers', '~> 0.10'
|
||||
gem 'addressable', '~> 2.5'
|
||||
gem 'bootsnap'
|
||||
gem 'browser'
|
||||
gem 'charlock_holmes', '~> 0.7.5'
|
||||
gem 'iso-639'
|
||||
gem 'chewy', '~> 5.0'
|
||||
gem 'cld3', '~> 3.2.0'
|
||||
gem 'devise', '~> 4.4'
|
||||
gem 'devise-two-factor', '~> 3.0'
|
||||
|
||||
gem 'react-rails'
|
||||
gem 'browserify-rails'
|
||||
gem 'autoprefixer-rails'
|
||||
gem 'devise_pam_authenticatable2', '~> 8.0', install_if: -> { ENV['PAM_ENABLED'] == 'true' }
|
||||
gem 'net-ldap', '~> 0.10'
|
||||
gem 'omniauth-cas', '~> 1.1'
|
||||
gem 'omniauth-saml', '~> 1.10'
|
||||
gem 'omniauth', '~> 1.2'
|
||||
|
||||
gem 'doorkeeper', '~> 4.2'
|
||||
gem 'fast_blank', '~> 1.0'
|
||||
gem 'fastimage'
|
||||
gem 'goldfinger', '~> 2.1'
|
||||
gem 'hiredis', '~> 0.6'
|
||||
gem 'redis-namespace', '~> 1.5'
|
||||
gem 'htmlentities', '~> 4.3'
|
||||
gem 'http', '~> 3.0'
|
||||
gem 'http_accept_language', '~> 2.1'
|
||||
gem 'httplog', '~> 0.99'
|
||||
gem 'idn-ruby', require: 'idn'
|
||||
gem 'kaminari', '~> 1.1'
|
||||
gem 'link_header', '~> 0.0'
|
||||
gem 'mime-types', '~> 3.1'
|
||||
gem 'nokogiri', '~> 1.8'
|
||||
gem 'nsa', '~> 0.2'
|
||||
gem 'oj', '~> 3.3'
|
||||
gem 'ostatus2', '~> 2.0'
|
||||
gem 'ox', '~> 2.8'
|
||||
gem 'pundit', '~> 1.1'
|
||||
gem 'premailer-rails'
|
||||
gem 'rack-attack', '~> 5.0'
|
||||
gem 'rack-cors', '~> 0.4', require: 'rack/cors'
|
||||
gem 'rack-timeout', '~> 0.4'
|
||||
gem 'rails-i18n', '~> 5.0'
|
||||
gem 'rails-settings-cached', '~> 0.6'
|
||||
gem 'redis', '~> 3.3', require: ['redis', 'redis/connection/hiredis']
|
||||
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
|
||||
gem 'rqrcode', '~> 0.10'
|
||||
gem 'ruby-oembed', '~> 0.12', require: 'oembed'
|
||||
gem 'ruby-progressbar', '~> 1.4'
|
||||
gem 'sanitize', '~> 4.4'
|
||||
gem 'sidekiq', '~> 5.0'
|
||||
gem 'sidekiq-scheduler', '~> 2.1'
|
||||
gem 'sidekiq-unique-jobs', '~> 5.0'
|
||||
gem 'sidekiq-bulk', '~>0.1.1'
|
||||
gem 'simple-navigation', '~> 4.0'
|
||||
gem 'simple_form', '~> 3.4'
|
||||
gem 'sprockets-rails', '~> 3.2', require: 'sprockets/railtie'
|
||||
gem 'strong_migrations'
|
||||
gem 'tty-command'
|
||||
gem 'tty-prompt'
|
||||
gem 'twitter-text', '~> 1.14'
|
||||
gem 'tzinfo-data', '~> 1.2017'
|
||||
gem 'webpacker', '~> 3.0'
|
||||
gem 'webpush'
|
||||
|
||||
gem 'json-ld-preloaded', '~> 2.2.1'
|
||||
gem 'rdf-normalize', '~> 0.3.1'
|
||||
|
||||
group :development, :test do
|
||||
gem 'rspec-rails'
|
||||
gem 'pry-rails'
|
||||
gem 'fuubar'
|
||||
gem 'fabrication'
|
||||
gem 'i18n-tasks', '~> 0.9.6'
|
||||
gem 'fabrication', '~> 2.18'
|
||||
gem 'fuubar', '~> 2.2'
|
||||
gem 'i18n-tasks', '~> 0.9', require: false
|
||||
gem 'pry-rails', '~> 0.3'
|
||||
gem 'rspec-rails', '~> 3.7'
|
||||
end
|
||||
|
||||
group :production, :test do
|
||||
gem 'private_address_check', '~> 0.4.1'
|
||||
end
|
||||
|
||||
group :test do
|
||||
gem 'faker'
|
||||
gem 'rails-controller-testing'
|
||||
gem 'rspec-sidekiq'
|
||||
gem 'simplecov', require: false
|
||||
gem 'webmock'
|
||||
gem 'capybara', '~> 2.15'
|
||||
gem 'climate_control', '~> 0.2'
|
||||
gem 'faker', '~> 1.7'
|
||||
gem 'microformats', '~> 4.0'
|
||||
gem 'rails-controller-testing', '~> 1.0'
|
||||
gem 'rspec-sidekiq', '~> 3.0'
|
||||
gem 'simplecov', '~> 0.14', require: false
|
||||
gem 'webmock', '~> 3.0'
|
||||
gem 'parallel_tests', '~> 2.17'
|
||||
end
|
||||
|
||||
group :development do
|
||||
gem 'active_record_query_trace', '~> 1.5'
|
||||
gem 'annotate', '~> 2.7'
|
||||
gem 'better_errors', '~> 2.4'
|
||||
gem 'binding_of_caller', '~> 0.7'
|
||||
gem 'bullet', '~> 5.5'
|
||||
gem 'letter_opener', '~> 1.4'
|
||||
gem 'letter_opener_web', '~> 1.3'
|
||||
gem 'memory_profiler'
|
||||
gem 'rubocop', require: false
|
||||
gem 'better_errors'
|
||||
gem 'binding_of_caller'
|
||||
gem 'letter_opener'
|
||||
gem 'letter_opener_web'
|
||||
gem 'bullet'
|
||||
gem 'active_record_query_trace'
|
||||
gem 'brakeman', '~> 4.0', require: false
|
||||
gem 'bundler-audit', '~> 0.6', require: false
|
||||
gem 'scss_lint', '~> 0.55', require: false
|
||||
|
||||
gem 'capistrano'
|
||||
gem 'capistrano-rails'
|
||||
gem 'capistrano-rbenv'
|
||||
gem 'capistrano-yarn'
|
||||
gem 'capistrano-faster-assets', '~> 1.0'
|
||||
gem 'capistrano', '~> 3.10'
|
||||
gem 'capistrano-rails', '~> 1.3'
|
||||
gem 'capistrano-rbenv', '~> 2.1'
|
||||
gem 'capistrano-yarn', '~> 2.0'
|
||||
end
|
||||
|
||||
group :production do
|
||||
gem 'rails_12factor'
|
||||
gem 'redis-rails'
|
||||
gem 'lograge'
|
||||
gem 'lograge', '~> 0.7'
|
||||
gem 'redis-rails', '~> 5.0'
|
||||
end
|
||||
|
833
Gemfile.lock
@@ -1,5 +0,0 @@
|
||||
[Issue text goes here].
|
||||
|
||||
* * * *
|
||||
|
||||
- [ ] I searched or browsed the repo’s other issues to ensure this is not a duplicate.
|
2
Procfile
@@ -1,2 +1,2 @@
|
||||
web: bundle exec puma -C config/puma.rb
|
||||
worker: bundle exec sidekiq -q default -q push -q pull -q mailers
|
||||
worker: bundle exec sidekiq
|
||||
|
4
Procfile.dev
Normal file
@@ -0,0 +1,4 @@
|
||||
web: env PORT=3000 bundle exec puma -C config/puma.rb
|
||||
sidekiq: env PORT=3000 bundle exec sidekiq
|
||||
stream: env PORT=4000 yarn run start
|
||||
webpack: ./bin/webpack-dev-server --listen-host 0.0.0.0
|
172
README.md
@@ -1,164 +1,77 @@
|
||||
Mastodon
|
||||

|
||||
========
|
||||
|
||||
[][travis]
|
||||
[][code_climate]
|
||||
[][travis]
|
||||
[][code_climate]
|
||||
|
||||
[travis]: https://travis-ci.org/tootsuite/mastodon
|
||||
[code_climate]: https://codeclimate.com/github/tootsuite/mastodon
|
||||
|
||||
Mastodon is a free, open-source social network server. A decentralized solution to commercial platforms, it avoids the risks of a single company monopolizing your communication. Anyone can run Mastodon and participate in the social network seamlessly.
|
||||
Mastodon is a **free, open-source social network server** based on **open web protocols** like ActivityPub and OStatus. The social focus of the project is a viable decentralized alternative to commercial social media silos that returns the control of the content distribution channels to the people. The technical focus of the project is a good user interface, a clean REST API for 3rd party apps and robust anti-abuse tools.
|
||||
|
||||
An alternative implementation of the GNU social project. Based on ActivityStreams, Webfinger, PubsubHubbub and Salmon.
|
||||
Click on the screenshot below to watch a demo of the UI:
|
||||
|
||||
Click on the screenshot to watch a demo of the UI:
|
||||
|
||||
[][youtube_demo]
|
||||
[][youtube_demo]
|
||||
|
||||
[youtube_demo]: https://www.youtube.com/watch?v=YO1jQ8_rAMU
|
||||
|
||||
The project focus is a clean REST API and a good user interface. Ruby on Rails is used for the back-end, while React.js and Redux are used for the dynamic front-end. A static front-end for public resources (profiles and statuses) is also provided.
|
||||
**Ruby on Rails** is used for the back-end, while **React.js** and Redux are used for the dynamic front-end. A static front-end for public resources (profiles and statuses) is also provided.
|
||||
|
||||
If you would like, you can [support the development of this project on Patreon][patreon]. Alternatively, you can donate to this BTC address: `17j2g7vpgHhLuXhN4bueZFCvdxxieyRVWd`
|
||||
If you would like, you can [support the development of this project on Patreon][patreon] or [Liberapay][liberapay]. Alternatively, you can donate to this BTC address: `17j2g7vpgHhLuXhN4bueZFCvdxxieyRVWd`
|
||||
|
||||
[patreon]: https://www.patreon.com/user?u=619786
|
||||
[liberapay]: https://liberapay.com/Mastodon/
|
||||
|
||||
---
|
||||
|
||||
## Resources
|
||||
|
||||
- [List of Mastodon instances](https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/List-of-Mastodon-instances.md)
|
||||
- [Use this tool to find Twitter friends on Mastodon](https://mastodon-bridge.herokuapp.com)
|
||||
- [API overview](https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md)
|
||||
- [Frequently Asked Questions](https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md)
|
||||
- [Use this tool to find Twitter friends on Mastodon](https://bridge.joinmastodon.org)
|
||||
- [API overview](https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md)
|
||||
- [List of Mastodon instances](https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/List-of-Mastodon-instances.md)
|
||||
- [List of apps](https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md)
|
||||
- [List of sponsors](https://joinmastodon.org/sponsors)
|
||||
|
||||
## Features
|
||||
|
||||
- **Fully interoperable with GNU social and any OStatus platform**
|
||||
Whatever implements Atom feeds, ActivityStreams, Salmon, PubSubHubbub and Webfinger is part of the network
|
||||
- **Real-time timeline updates**
|
||||
See the updates of people you're following appear in real-time in the UI via WebSockets
|
||||
- **Federated thread resolving**
|
||||
If someone you follow replies to a user unknown to the server, the server fetches the full thread so you can view it without leaving the UI
|
||||
- **Media attachments like images and WebM**
|
||||
Upload and view images and WebM videos attached to the updates
|
||||
- **OAuth2 and a straightforward REST API**
|
||||
Mastodon acts as an OAuth2 provider so 3rd party apps can use the API, which is RESTful and simple
|
||||
- **Background processing for long-running tasks**
|
||||
Mastodon tries to be as fast and responsive as possible, so all long-running tasks that can be delegated to background processing, are
|
||||
- **Deployable via Docker**
|
||||
You don't need to mess with dependencies and configuration if you want to try Mastodon, if you have Docker and Docker Compose the deployment is extremely easy
|
||||
**No vendor lock-in: Fully interoperable with any conforming platform**
|
||||
|
||||
## Configuration
|
||||
It doesn't have to be Mastodon, whatever implements ActivityPub or OStatus is part of the social network!
|
||||
|
||||
- `LOCAL_DOMAIN` should be the domain/hostname of your instance. This is **absolutely required** as it is used for generating unique IDs for everything federation-related
|
||||
- `LOCAL_HTTPS` set it to `true` if HTTPS works on your website. This is used to generate canonical URLs, which is also important when generating and parsing federation-related IDs
|
||||
**Real-time timeline updates**
|
||||
|
||||
Consult the example configuration file, `.env.production.sample` for the full list. Among other things you need to set details for the SMTP server you are going to use.
|
||||
See the updates of people you're following appear in real-time in the UI via WebSockets. There's a firehose view as well!
|
||||
|
||||
## Requirements
|
||||
**Federated thread resolving**
|
||||
|
||||
- Ruby
|
||||
- Node.js
|
||||
- PostgreSQL
|
||||
- Redis
|
||||
- Nginx
|
||||
If someone you follow replies to a user unknown to the server, the server fetches the full thread so you can view it without leaving the UI
|
||||
|
||||
## Running with Docker and Docker-Compose
|
||||
**Media attachments like images and short videos**
|
||||
|
||||
[](https://microbadger.com/images/gargron/mastodon "Get your own version badge on microbadger.com") [](https://microbadger.com/images/gargron/mastodon "Get your own image badge on microbadger.com")
|
||||
Upload and view images and WebM/MP4 videos attached to the updates. Videos with no audio track are treated like GIFs; normal videos are looped - like vines!
|
||||
|
||||
The project now includes a `Dockerfile` and a `docker-compose.yml` file (which requires at least docker-compose version `1.10.0`).
|
||||
**OAuth2 and a straightforward REST API**
|
||||
|
||||
Review the settings in `docker-compose.yml`. Note that it is not default to store the postgresql database and redis databases in a persistent storage location,
|
||||
so you may need or want to adjust the settings there.
|
||||
Mastodon acts as an OAuth2 provider so 3rd party apps can use the API
|
||||
|
||||
Before running the first time, you need to build the images:
|
||||
**Fast response times**
|
||||
|
||||
docker-compose build
|
||||
Mastodon tries to be as fast and responsive as possible, so all long-running tasks are delegated to background processing
|
||||
|
||||
Then, you need to fill in the `.env.production` file:
|
||||
**Deployable via Docker**
|
||||
|
||||
cp .env.production.sample .env.production
|
||||
nano .env.production
|
||||
You don't need to mess with dependencies and configuration if you want to try Mastodon, if you have Docker and Docker Compose the deployment is extremely easy
|
||||
|
||||
Do NOT change the `REDIS_*` or `DB_*` settings when running with the default docker configurations.
|
||||
---
|
||||
|
||||
You will need to fill in, at least: `LOCAL_DOMAIN`, `LOCAL_HTTPS`, `PAPERCLIP_SECRET`, `SECRET_KEY_BASE`, `OTP_SECRET`, and the `SMTP_*` settings. To generate the `PAPERCLIP_SECRET`, `SECRET_KEY_BASE`, and `OTP_SECRET`, you may use:
|
||||
## Development
|
||||
|
||||
docker-compose run --rm web rake secret
|
||||
Please follow the [development guide](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Development-guide.md) from the documentation repository.
|
||||
|
||||
Do this once for each of those keys, and copy the result into the `.env.production` file in the appropriate field.
|
||||
## Deployment
|
||||
|
||||
Then you should run the `db:migrate` command to create the database, or migrate it from an older release:
|
||||
|
||||
docker-compose run --rm web rails db:migrate
|
||||
|
||||
Then, you will also need to precompile the assets:
|
||||
|
||||
docker-compose run --rm web rails assets:precompile
|
||||
|
||||
before you can launch the docker image with:
|
||||
|
||||
docker-compose up
|
||||
|
||||
If you wish to run this as a daemon process instead of monitoring it on console, use instead:
|
||||
|
||||
docker-compose up -d
|
||||
|
||||
Then you may login to your new Mastodon instance by browsing to http://localhost:3000/
|
||||
|
||||
Following that, make sure that you read the [production guide](docs/Running-Mastodon/Production-guide.md). You are probably going to want to understand how
|
||||
to configure Nginx to make your Mastodon instance available to the rest of the world.
|
||||
|
||||
The container has two volumes, for the assets and for user uploads, and optionally two more, for the postgresql and redis databases.
|
||||
|
||||
The default docker-compose.yml maps them to the repository's `public/assets` and `public/system` directories, you may wish to put them somewhere else. Likewise, the PostgreSQL and Redis images have data containers that you may wish to map somewhere where you know how to find them and back them up.
|
||||
|
||||
**Note**: The `--rm` option for docker-compose will remove the container that is created to run a one-off command after it completes. As data is stored in volumes it is not affected by that container clean-up.
|
||||
|
||||
### Tasks
|
||||
|
||||
- `rake mastodon:media:clear` removes uploads that have not been attached to any status after a while, you would want to run this from a periodic cronjob
|
||||
- `rake mastodon:push:clear` unsubscribes from PuSH notifications for remote users that have no local followers. You may not want to actually do that, to keep a fuller footprint of the fediverse or in case your users will soon re-follow
|
||||
- `rake mastodon:push:refresh` re-subscribes PuSH for expiring remote users, this should be run periodically from a cronjob and quite often as the expiration time depends on the particular hub of the remote user
|
||||
- `rake mastodon:feeds:clear_all` removes all timelines, which forces them to be re-built on the fly next time a user tries to fetch their home/mentions timeline. Only for troubleshooting
|
||||
- `rake mastodon:feeds:clear` removes timelines of users who haven't signed in lately, which allows to save RAM and improve message distribution. This is required to be run periodically so that when they login again the regeneration process will trigger
|
||||
|
||||
Running any of these tasks via docker-compose would look like this:
|
||||
|
||||
docker-compose run --rm web rake mastodon:media:clear
|
||||
|
||||
### Updating
|
||||
|
||||
This approach makes updating to the latest version a real breeze.
|
||||
|
||||
1. `git pull` to download updates from the repository
|
||||
2. `docker-compose build` to compile the Docker image out of the changed source files
|
||||
3. (optional) `docker-compose run --rm web rails db:migrate` to perform database migrations. Does nothing if your database is up to date
|
||||
4. (optional) `docker-compose run --rm web rails assets:precompile` to compile new JS and CSS assets
|
||||
5. `docker-compose up -d` to re-create (restart) containers and pick up the changes
|
||||
|
||||
## Deployment without Docker
|
||||
|
||||
Docker is great for quickly trying out software, but it has its drawbacks too. If you prefer to run Mastodon without using Docker, refer to the [production guide](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md) for examples, configuration and instructions.
|
||||
|
||||
## Deployment on Scalingo
|
||||
|
||||
[](https://my.scalingo.com/deploy?source=https://github.com/tootsuite/mastodon#master)
|
||||
|
||||
[You can view a guide for deployment on Scalingo here.](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Scalingo-guide.md)
|
||||
|
||||
## Deployment on Heroku (experimental)
|
||||
|
||||
[](https://heroku.com/deploy)
|
||||
|
||||
Mastodon can run on [Heroku](https://heroku.com), but it gets expensive and impractical due to how Heroku prices resource usage. [You can view a guide for deployment on Heroku here](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Heroku-guide.md), but you have been warned.
|
||||
|
||||
## Development with Vagrant
|
||||
|
||||
A quick way to get a development environment up and running is with Vagrant. You will need recent versions of [Vagrant](https://www.vagrantup.com/) and [VirtualBox](https://www.virtualbox.org/) installed.
|
||||
|
||||
[You can find the guide for setting up a Vagrant development environment here.](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Vagrant-guide.md)
|
||||
There are guides in the documentation repository for [deploying on various platforms](https://github.com/tootsuite/documentation#running-mastodon).
|
||||
|
||||
## Contributing
|
||||
|
||||
@@ -166,9 +79,18 @@ You can open issues for bugs you've found or features you think are missing. You
|
||||
|
||||
**IRC channel**: #mastodon on irc.freenode.net
|
||||
|
||||
## License
|
||||
|
||||
Copyright (C) 2016-2018 Eugen Rochko & other Mastodon contributors (see AUTHORS.md)
|
||||
|
||||
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
---
|
||||
|
||||
## Extra credits
|
||||
|
||||
- The [Emoji One](https://github.com/Ranks/emojione) pack has been used for the emojis
|
||||
- The error page image courtesy of [Dopatwo](https://www.youtube.com/user/dopatwo)
|
||||
|
||||

|
||||
The elephant friend illustrations are created by [Dopatwo](https://mastodon.social/@dopatwo)
|
||||
|
63
Vagrantfile
vendored
@@ -1,6 +1,8 @@
|
||||
# -*- mode: ruby -*-
|
||||
# vi: set ft=ruby :
|
||||
|
||||
ENV["PORT"] ||= "3000"
|
||||
|
||||
$provision = <<SCRIPT
|
||||
|
||||
cd /vagrant # This is where the host folder/repo is mounted
|
||||
@@ -10,10 +12,10 @@ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
|
||||
sudo apt-add-repository 'deb https://dl.yarnpkg.com/debian/ stable main'
|
||||
|
||||
# Add repo for NodeJS
|
||||
curl -sL https://deb.nodesource.com/setup_4.x | sudo bash -
|
||||
curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
|
||||
|
||||
# Add firewall rule to redirect 80 to 3000 and save
|
||||
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
|
||||
# Add firewall rule to redirect 80 to PORT and save
|
||||
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port #{ENV["PORT"]}
|
||||
echo iptables-persistent iptables-persistent/autosave_v4 boolean true | sudo debconf-set-selections
|
||||
echo iptables-persistent iptables-persistent/autosave_v6 boolean true | sudo debconf-set-selections
|
||||
sudo apt-get install iptables-persistent -y
|
||||
@@ -31,47 +33,46 @@ sudo apt-get install \
|
||||
redis-tools \
|
||||
postgresql \
|
||||
postgresql-contrib \
|
||||
protobuf-compiler \
|
||||
yarn \
|
||||
libicu-dev \
|
||||
libidn11-dev \
|
||||
libprotobuf-dev \
|
||||
libreadline-dev \
|
||||
libpam0g-dev \
|
||||
-y
|
||||
|
||||
# Install rbenv
|
||||
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
|
||||
cd ~/.rbenv && src/configure && make -C src
|
||||
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
|
||||
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
|
||||
# Install rvm
|
||||
read RUBY_VERSION < .ruby-version
|
||||
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
|
||||
curl -sSL https://raw.githubusercontent.com/rvm/rvm/stable/binscripts/rvm-installer | bash -s stable --ruby=$RUBY_VERSION
|
||||
source /home/vagrant/.rvm/scripts/rvm
|
||||
|
||||
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
|
||||
|
||||
export PATH="$HOME/.rbenv/bin::$PATH"
|
||||
eval "$(rbenv init -)"
|
||||
|
||||
cd /vagrant
|
||||
|
||||
echo "Compiling Ruby $(cat .ruby-version): warning, this takes a while!!!"
|
||||
rbenv install $(cat .ruby-version)
|
||||
rbenv global $(cat .ruby-version)
|
||||
# Install Ruby
|
||||
rvm reinstall ruby-$RUBY_VERSION --disable-binary
|
||||
|
||||
# Configure database
|
||||
sudo -u postgres createuser -U postgres vagrant -s
|
||||
sudo -u postgres createdb -U postgres mastodon_development
|
||||
|
||||
# Install gems and node modules
|
||||
gem install bundler
|
||||
gem install bundler foreman
|
||||
bundle install
|
||||
yarn install
|
||||
|
||||
# Build Mastodon
|
||||
export $(cat ".env.vagrant" | xargs)
|
||||
bundle exec rails db:setup
|
||||
bundle exec rails assets:precompile
|
||||
|
||||
# Configure automatic loading of environment variable
|
||||
echo 'export $(cat "/vagrant/.env.vagrant" | xargs)' >> ~/.bash_profile
|
||||
|
||||
SCRIPT
|
||||
|
||||
$start = <<SCRIPT
|
||||
|
||||
cd /vagrant
|
||||
export $(cat ".env.vagrant" | xargs)
|
||||
rails s -d -b 0.0.0.0
|
||||
echo 'To start server'
|
||||
echo ' $ vagrant ssh -c "cd /vagrant && foreman start"'
|
||||
|
||||
SCRIPT
|
||||
|
||||
@@ -79,11 +80,11 @@ VAGRANTFILE_API_VERSION = "2"
|
||||
|
||||
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
||||
|
||||
config.vm.box = "ubuntu/trusty64"
|
||||
config.vm.box = "ubuntu/xenial64"
|
||||
|
||||
config.vm.provider :virtualbox do |vb|
|
||||
vb.name = "mastodon"
|
||||
vb.customize ["modifyvm", :id, "--memory", "1024"]
|
||||
vb.customize ["modifyvm", :id, "--memory", "2048"]
|
||||
|
||||
# Disable VirtualBox DNS proxy to skip long-delay IPv6 resolutions.
|
||||
# https://github.com/mitchellh/vagrant/issues/1172
|
||||
@@ -107,10 +108,16 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
||||
config.hostsupdater.remove_on_suspend = false
|
||||
end
|
||||
|
||||
config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ['rw', 'vers=3', 'tcp']
|
||||
if config.vm.networks.any? { |type, options| type == :private_network }
|
||||
config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ['rw', 'vers=3', 'tcp']
|
||||
else
|
||||
config.vm.synced_folder ".", "/vagrant"
|
||||
end
|
||||
|
||||
# Otherwise, you can access the site at http://localhost:3000
|
||||
config.vm.network :forwarded_port, guest: 80, host: 3000
|
||||
# Otherwise, you can access the site at http://localhost:3000 and http://localhost:4000 , http://localhost:8080
|
||||
config.vm.network :forwarded_port, guest: 3000, host: 3000
|
||||
config.vm.network :forwarded_port, guest: 4000, host: 4000
|
||||
config.vm.network :forwarded_port, guest: 8080, host: 8080
|
||||
|
||||
# Full provisioning script, only runs on first 'vagrant up' or with 'vagrant provision'
|
||||
config.vm.provision :shell, inline: $provision, privileged: false
|
||||
|
5
app.json
@@ -2,7 +2,7 @@
|
||||
"name": "Mastodon",
|
||||
"description": "A GNU Social-compatible microblogging server",
|
||||
"repository": "https://github.com/tootsuite/mastodon",
|
||||
"logo": "https://github.com/tootsuite/mastodon/raw/master/app/assets/images/logo.png",
|
||||
"logo": "https://github.com/tootsuite.png",
|
||||
"env": {
|
||||
"HEROKU": {
|
||||
"description": "Leave this as true",
|
||||
@@ -94,6 +94,9 @@
|
||||
}
|
||||
},
|
||||
"buildpacks": [
|
||||
{
|
||||
"url": "https://github.com/heroku/heroku-buildpack-apt"
|
||||
},
|
||||
{
|
||||
"url": "heroku/nodejs"
|
||||
},
|
||||
|
Before Width: | Height: | Size: 334 KiB |
Before Width: | Height: | Size: 369 KiB |
Before Width: | Height: | Size: 366 KiB |
Before Width: | Height: | Size: 349 KiB |
Before Width: | Height: | Size: 373 KiB |
Before Width: | Height: | Size: 331 KiB |
Before Width: | Height: | Size: 370 KiB |
Before Width: | Height: | Size: 362 KiB |
Before Width: | Height: | Size: 378 KiB |
Before Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 1.5 MiB |