Compare commits
929 commits
unplug_dep
...
main
Author | SHA1 | Date | |
---|---|---|---|
![]() |
dbb0e4a974 | ||
![]() |
5c02435ee4 | ||
![]() |
0a1e555b13 | ||
![]() |
be668d7d7a | ||
![]() |
87e50ec941 | ||
![]() |
6d7ca1b926 | ||
![]() |
00bfaaa53d | ||
![]() |
f939caf2d9 | ||
![]() |
0f3615ee65 | ||
![]() |
567bcf26b5 | ||
![]() |
9d49764b84 | ||
![]() |
5c9f493b67 | ||
![]() |
4fe8e9a79f | ||
![]() |
f975dd9697 | ||
![]() |
10832f7001 | ||
![]() |
86b050865f | ||
![]() |
6f07aaf87a | ||
![]() |
634e8bd2d0 | ||
![]() |
6853dfbf66 | ||
![]() |
136cf252a1 | ||
![]() |
cad28ebba5 | ||
![]() |
460fdf9eaf | ||
![]() |
bec1b502ad | ||
![]() |
70bbf11db5 | ||
![]() |
c00c7becae | ||
![]() |
89dc6c19bf | ||
![]() |
972a91d59f | ||
![]() |
045358ddbf | ||
![]() |
c7217a92ba | ||
![]() |
3da7a21cde | ||
![]() |
351e18f638 | ||
![]() |
4f2129c4e0 | ||
![]() |
d7a1c667dd | ||
![]() |
4de0bfa36d | ||
![]() |
0443de88ce | ||
![]() |
f830bac873 | ||
![]() |
517ae5ded9 | ||
![]() |
6062f85000 | ||
![]() |
e2205c3849 | ||
![]() |
0b46eff16e | ||
![]() |
df67982bca | ||
![]() |
d44866b3c0 | ||
![]() |
6ee18bffe6 | ||
![]() |
a881dd2d79 | ||
![]() |
b767e1f072 | ||
![]() |
e3cb1faba4 | ||
![]() |
5c5f988055 | ||
![]() |
c7d2adf091 | ||
![]() |
a4ad37f309 | ||
![]() |
73c2cc1222 | ||
![]() |
9380900aaf | ||
![]() |
02f4d5c717 | ||
![]() |
1f4b26d269 | ||
![]() |
e253825da6 | ||
![]() |
2bddd947ba | ||
![]() |
b7173346d2 | ||
![]() |
01641975c0 | ||
![]() |
7abd80cdba | ||
![]() |
aeb5ea1874 | ||
![]() |
d2a371b92c | ||
![]() |
3ea3b24bb6 | ||
![]() |
0c3bc0cae6 | ||
![]() |
d56410984a | ||
![]() |
4dd2eb9349 | ||
![]() |
709aec5eeb | ||
![]() |
f1aa431c22 | ||
![]() |
86d0e565ed | ||
![]() |
92bb447cac | ||
![]() |
08966e7af7 | ||
![]() |
2c732ff713 | ||
![]() |
1493b7c478 | ||
![]() |
efd816a627 | ||
![]() |
f24c4c27fc | ||
![]() |
88a5de766c | ||
![]() |
a0e523e64c | ||
![]() |
69ce3eb2a8 | ||
![]() |
99b8273e2d | ||
![]() |
a95b6d61e7 | ||
![]() |
1a349e1641 | ||
![]() |
f1b6fa55df | ||
![]() |
6c95ab8a1c | ||
![]() |
5987b0899c | ||
![]() |
664a92132b | ||
![]() |
26b13ed6d4 | ||
![]() |
be7c66b145 | ||
![]() |
7e8d7f6874 | ||
![]() |
c1805ee2ac | ||
![]() |
eff1d642cf | ||
![]() |
a05d7afe00 | ||
![]() |
c2650646d1 | ||
![]() |
f73e4adf5a | ||
![]() |
7c67a5a0f9 | ||
![]() |
6dde9209af | ||
![]() |
264fd4c36e | ||
![]() |
4c0bc82090 | ||
![]() |
f3598fa5a1 | ||
![]() |
8097d7239d | ||
![]() |
7962b245b5 | ||
![]() |
ce0450becf | ||
![]() |
0762ed1127 | ||
![]() |
3563a0b64a | ||
![]() |
0342cdcfc0 | ||
![]() |
b1cb6a1d21 | ||
![]() |
615e4184f6 | ||
![]() |
54091f23da | ||
![]() |
e4a8324db2 | ||
![]() |
01bb55be39 | ||
![]() |
e551a364f6 | ||
![]() |
7e65f85377 | ||
![]() |
e6a21606a3 | ||
![]() |
f275b48770 | ||
![]() |
de4fcf9a4c | ||
![]() |
a1455d281f | ||
![]() |
cfbe2bbac6 | ||
![]() |
398c10ce4b | ||
![]() |
c7d21b092d | ||
![]() |
031fa71e7d | ||
![]() |
948e843ad6 | ||
![]() |
7b0ea0a069 | ||
![]() |
8887b6e642 | ||
![]() |
597ff13393 | ||
![]() |
4ab61b94a4 | ||
![]() |
e19652d62a | ||
![]() |
a341e78909 | ||
![]() |
48e52ac48c | ||
![]() |
6dbb87708f | ||
![]() |
d15d51eae6 | ||
![]() |
0058368681 | ||
![]() |
746c821698 | ||
![]() |
3f2d8c902c | ||
![]() |
3637db2563 | ||
![]() |
8ac84c59af | ||
![]() |
a2b1323568 | ||
![]() |
d35391288d | ||
![]() |
d5c1b76de0 | ||
![]() |
4600a49e88 | ||
![]() |
96a2a67aa6 | ||
![]() |
bb380b5794 | ||
![]() |
47004fd20a | ||
![]() |
c9bf024109 | ||
![]() |
529795d393 | ||
![]() |
79ae07623f | ||
![]() |
6bdb524489 | ||
![]() |
480693fb9f | ||
![]() |
e150930072 | ||
![]() |
edd92ef81a | ||
![]() |
49cd5be352 | ||
![]() |
b1665779b5 | ||
![]() |
a82192db42 | ||
![]() |
589b740f49 | ||
![]() |
3c10de3e5d | ||
![]() |
41a04062c9 | ||
![]() |
db9d10c302 | ||
![]() |
5596d04040 | ||
![]() |
341f69e301 | ||
![]() |
ef0464690b | ||
![]() |
199ebeb4ea | ||
![]() |
c949670d4c | ||
![]() |
9dcd583b58 | ||
![]() |
097e320490 | ||
![]() |
c9bfda91f4 | ||
![]() |
2d6a3ebf45 | ||
![]() |
d0d4bd23fb | ||
![]() |
edb0a768d0 | ||
![]() |
4cc647ac07 | ||
![]() |
bcd1d830e6 | ||
![]() |
2597324876 | ||
![]() |
69b404f5d4 | ||
![]() |
e94b0d0b02 | ||
![]() |
ed1bf37287 | ||
![]() |
3946f56261 | ||
![]() |
fc53dab007 | ||
![]() |
e836abdef7 | ||
![]() |
826482b1f0 | ||
![]() |
45bd00919c | ||
![]() |
4e1bae6daf | ||
![]() |
8f23c8ab3f | ||
![]() |
4d32f26631 | ||
![]() |
c11abe1bd3 | ||
![]() |
4d12566b0d | ||
![]() |
2200dca69d | ||
![]() |
d41dd3bdda | ||
![]() |
c5c24b3ac9 | ||
![]() |
462ade2145 | ||
![]() |
bfef16ce37 | ||
![]() |
aa4351c8e9 | ||
![]() |
2dff6a2ed3 | ||
![]() |
7808cc8ed2 | ||
![]() |
5b84f078c6 | ||
![]() |
cf5f44a4a5 | ||
![]() |
ed05ea553f | ||
![]() |
4418c38878 | ||
![]() |
6391a01b57 | ||
![]() |
9dbcec198d | ||
![]() |
78fbeb595f | ||
![]() |
d894a87e87 | ||
![]() |
4f62cac213 | ||
![]() |
ce081274da | ||
![]() |
fd997f4849 | ||
![]() |
3ddd671c47 | ||
![]() |
c19de13cac | ||
![]() |
f65809ef30 | ||
![]() |
2823ed8612 | ||
![]() |
420bf9ec54 | ||
![]() |
5f67e5efda | ||
![]() |
daed1a77a0 | ||
![]() |
b39eb09d91 | ||
![]() |
f6ec8626e5 | ||
![]() |
97b12f2131 | ||
![]() |
8e4e36513a | ||
![]() |
c8bf4ab3a0 | ||
![]() |
3fa01a328b | ||
![]() |
60686dcdbd | ||
![]() |
fddd17e531 | ||
![]() |
f99750169f | ||
![]() |
daad76d0dd | ||
![]() |
b3542e2fab | ||
![]() |
a9b1543e20 | ||
![]() |
e6d8e5c5f2 | ||
![]() |
c24353cc24 | ||
![]() |
4855e1d5f5 | ||
![]() |
5d3fb9a537 | ||
![]() |
b55d80a7cd | ||
![]() |
16f92bdc99 | ||
![]() |
4c5738416a | ||
![]() |
45d4920e0f | ||
![]() |
94e738532a | ||
![]() |
c4ae12d53f | ||
![]() |
4ff78452f9 | ||
![]() |
9465f2ecd8 | ||
![]() |
93c2f1f12f | ||
![]() |
ca8a3fc77d | ||
![]() |
00936e06bc | ||
![]() |
a6dea50d74 | ||
![]() |
28b04e6a4a | ||
![]() |
d228a86f48 | ||
![]() |
0cb234aa47 | ||
![]() |
6b554c28b7 | ||
![]() |
8a0accd8ea | ||
![]() |
d66ae62cf4 | ||
![]() |
b01d1c659d | ||
![]() |
751f3b2547 | ||
![]() |
11514e3836 | ||
![]() |
71689c1497 | ||
![]() |
2742075edc | ||
![]() |
7f16232f8b | ||
![]() |
0b0703e6d1 | ||
![]() |
3e376c44e3 | ||
![]() |
bfe2d4bb4a | ||
![]() |
7253a0a1d9 | ||
![]() |
f2c5810023 | ||
![]() |
2e5b9105b8 | ||
![]() |
d14411d72e | ||
![]() |
5226513b26 | ||
![]() |
334449f8aa | ||
![]() |
7f43d0c69d | ||
![]() |
6f18276e7a | ||
![]() |
9ff18a18a5 | ||
![]() |
999e72fb1f | ||
![]() |
4733e663a3 | ||
![]() |
b48eeb16c3 | ||
![]() |
0aa2584e82 | ||
![]() |
eb8c704d84 | ||
![]() |
e93fa14703 | ||
![]() |
16a6815b69 | ||
![]() |
b08e9731b8 | ||
![]() |
9bd4fb2d79 | ||
![]() |
647aeda1de | ||
![]() |
78ff748d91 | ||
![]() |
31f8cf1169 | ||
![]() |
14bcf7b6c9 | ||
![]() |
74adddd1e7 | ||
![]() |
0e43bc0042 | ||
![]() |
b40d539611 | ||
![]() |
654663d17f | ||
![]() |
75830c3a98 | ||
![]() |
1b5078eb96 | ||
![]() |
a5e019e290 | ||
![]() |
a812f3400a | ||
![]() |
15af5635f0 | ||
![]() |
cee6d62791 | ||
![]() |
6aee51bd45 | ||
![]() |
599a84e634 | ||
![]() |
1c3d19cca4 | ||
![]() |
9986e8e7ce | ||
![]() |
e19f7a7b7f | ||
![]() |
d570146378 | ||
![]() |
8a9e4370e5 | ||
![]() |
ce357679e9 | ||
![]() |
acab402747 | ||
![]() |
e385926046 | ||
![]() |
e9b8d0ceb7 | ||
![]() |
a2c1ebe675 | ||
![]() |
3ef8e9ea24 | ||
![]() |
c99334889c | ||
![]() |
7ce9aba517 | ||
![]() |
46257a058b | ||
![]() |
979dc35cfc | ||
![]() |
c99a447a04 | ||
![]() |
6dd9fd5abd | ||
![]() |
0d37cb293c | ||
![]() |
27d04c95a1 | ||
![]() |
cd830cdf25 | ||
![]() |
5b06ea94f9 | ||
![]() |
aba4f90485 | ||
![]() |
350621ed52 | ||
![]() |
69b4324c78 | ||
![]() |
b2be0a7c0b | ||
![]() |
cab0dfba39 | ||
![]() |
296ca47d63 | ||
![]() |
1cad18a681 | ||
![]() |
bdd052f90c | ||
![]() |
32fe8d0a85 | ||
![]() |
31338066ef | ||
![]() |
07398169c8 | ||
![]() |
1632c83217 | ||
![]() |
0c29ff1ab4 | ||
![]() |
2a8029ba02 | ||
![]() |
337eae73c6 | ||
![]() |
0a90502658 | ||
![]() |
1246af2551 | ||
![]() |
e0b19ef011 | ||
![]() |
63201934a5 | ||
![]() |
4a6f90b95b | ||
![]() |
a747f4fc46 | ||
![]() |
b782cedc85 | ||
![]() |
7435a7ebba | ||
![]() |
48c6d97d69 | ||
![]() |
9a45aeb3e6 | ||
![]() |
72c9b28ebe | ||
![]() |
9cf271a5f2 | ||
![]() |
1d280028a6 | ||
![]() |
5f24b59025 | ||
![]() |
9169e2bf3f | ||
![]() |
13467d52cf | ||
![]() |
af5ebb25e7 | ||
![]() |
25a875cbbc | ||
![]() |
78b13261bf | ||
![]() |
6356fcaeed | ||
![]() |
443235a861 | ||
![]() |
95fccb0822 | ||
![]() |
1fa476d1f9 | ||
![]() |
88b888cd25 | ||
![]() |
e3eede72cf | ||
![]() |
efb341eb99 | ||
![]() |
dae7dc9541 | ||
![]() |
29e573e9b5 | ||
![]() |
3df14149f0 | ||
![]() |
6ba1867781 | ||
![]() |
1026ce383c | ||
![]() |
2795cefc1b | ||
![]() |
637593c1bc | ||
![]() |
08f7c5447b | ||
![]() |
051b6e3093 | ||
![]() |
250c1f069b | ||
![]() |
3e4a1e9645 | ||
![]() |
4629580650 | ||
![]() |
c29f6b9c6f | ||
![]() |
036317e333 | ||
![]() |
4afe32650f | ||
![]() |
c021bb3d7c | ||
![]() |
783fd9e2c6 | ||
![]() |
d789c67649 | ||
![]() |
3ab29569db | ||
![]() |
099c6e10c6 | ||
![]() |
76ae6f5a88 | ||
![]() |
9bd2b0c953 | ||
![]() |
3fc07a5b60 | ||
![]() |
94e18ab36b | ||
![]() |
1c54d18c3c | ||
![]() |
d2efa73fd7 | ||
![]() |
b47c80cccd | ||
![]() |
b72e515931 | ||
![]() |
65fcc657a7 | ||
![]() |
65ced2cc7b | ||
![]() |
af17698334 | ||
![]() |
5e930d08eb | ||
![]() |
0c89d8bd2d | ||
![]() |
cb23506c1f | ||
![]() |
bf9072dbd4 | ||
![]() |
6abdd73a31 | ||
![]() |
421b5c5487 | ||
![]() |
465530841f | ||
![]() |
0057a5d6ff | ||
![]() |
b736dab3c1 | ||
![]() |
951d965304 | ||
![]() |
29e8de3238 | ||
![]() |
eeeacabaa8 | ||
![]() |
51ca8229b8 | ||
![]() |
a6a19a391e | ||
![]() |
f6cdb7916c | ||
![]() |
eafb064d79 | ||
![]() |
ba050681f7 | ||
![]() |
4780629549 | ||
![]() |
79a44aa51f | ||
![]() |
dd72769841 | ||
![]() |
d8f1c66fd5 | ||
![]() |
afe9967d26 | ||
![]() |
27bea444cc | ||
![]() |
7a571dec0a | ||
![]() |
8c57f505be | ||
![]() |
973612bf4f | ||
![]() |
702a1286eb | ||
![]() |
a45b5b69b5 | ||
![]() |
321353f26c | ||
![]() |
db4607d4aa | ||
![]() |
f0531d68cb | ||
![]() |
8a00d159a6 | ||
![]() |
d244cc0d5f | ||
![]() |
6a2aa4b148 | ||
![]() |
3ee49416f8 | ||
![]() |
ae1e86e19f | ||
![]() |
9f76e389e2 | ||
![]() |
6e2240e60c | ||
![]() |
cd37c951bb | ||
![]() |
c4c3dfb823 | ||
![]() |
c4b6f17ebc | ||
![]() |
71ce938cb1 | ||
![]() |
dc76113915 | ||
![]() |
6583ff6cd9 | ||
![]() |
69ea947857 | ||
![]() |
eab78b3a95 | ||
![]() |
3097f7f063 | ||
![]() |
126989df82 | ||
![]() |
a25eb178c5 | ||
![]() |
18dae26b8e | ||
![]() |
5bc8157d4d | ||
![]() |
f29826e917 | ||
![]() |
ba7cbb989b | ||
![]() |
d4579ce21e | ||
![]() |
ed14d2dfb7 | ||
![]() |
64f1fe59c2 | ||
![]() |
207ef9f3e5 | ||
![]() |
3ea0435459 | ||
![]() |
7668713dd6 | ||
![]() |
f6bc1c3084 | ||
![]() |
4203ff9a0c | ||
![]() |
0281724196 | ||
![]() |
94bd319279 | ||
![]() |
373cfad1f7 | ||
![]() |
59107f8553 | ||
![]() |
e066b6a126 | ||
![]() |
a0e4926135 | ||
![]() |
b1b244a2cf | ||
![]() |
b4a38d9dcc | ||
![]() |
71e2a4187e | ||
![]() |
c94f9c1a60 | ||
![]() |
b9907924be | ||
![]() |
d4c188c096 | ||
![]() |
2ccaf490df | ||
![]() |
cd893b41d7 | ||
![]() |
3838358081 | ||
![]() |
1a388f00c3 | ||
![]() |
bd71422fab | ||
![]() |
3e1697f47f | ||
![]() |
032cde7723 | ||
![]() |
34b956b482 | ||
![]() |
681e0378ae | ||
![]() |
609e85f926 | ||
![]() |
e4ca310707 | ||
![]() |
d606493356 | ||
![]() |
5ef6c5c14a | ||
![]() |
0188f290f9 | ||
![]() |
676cf36f8d | ||
![]() |
f8aef6c8ef | ||
![]() |
5bf8cf49c1 | ||
![]() |
51cd0a4dad | ||
![]() |
1d06ffe9d5 | ||
![]() |
dbf532f55e | ||
![]() |
ca6dbc0053 | ||
![]() |
1bb5980b45 | ||
![]() |
a02a28774b | ||
![]() |
2d9b3578b6 | ||
![]() |
3d5e747590 | ||
![]() |
94467747ac | ||
![]() |
cebab59a02 | ||
![]() |
09e1a892ca | ||
![]() |
7b1eec21e5 | ||
![]() |
a58262d584 | ||
![]() |
a8f03e157b | ||
![]() |
a401962bcd | ||
![]() |
9759814f63 | ||
![]() |
c7cf53722c | ||
![]() |
8cb33dc906 | ||
![]() |
1d73e4f072 | ||
![]() |
0a0f82ea3d | ||
![]() |
f9b1f40ddf | ||
![]() |
0562b0a621 | ||
![]() |
15ed1fd789 | ||
![]() |
5001496c7b | ||
![]() |
0a1080ce2a | ||
![]() |
4802d7e876 | ||
![]() |
bcd95cdbe9 | ||
![]() |
d50c4440c2 | ||
![]() |
921c30f641 | ||
![]() |
22540ee834 | ||
![]() |
4f4443a882 | ||
![]() |
80dbacf933 | ||
![]() |
dc77ff3e45 | ||
![]() |
6515dcf487 | ||
![]() |
d0fd6b98df | ||
![]() |
345efacb44 | ||
![]() |
d0dba1b66d | ||
![]() |
da119af8b2 | ||
![]() |
a5da42bddd | ||
![]() |
12767237d2 | ||
![]() |
230c96dcf1 | ||
![]() |
e2696fcd1a | ||
![]() |
a621cf1e3b | ||
![]() |
db35b9fcab | ||
![]() |
880db1038a | ||
![]() |
414b090efb | ||
![]() |
41e2136bc0 | ||
![]() |
378ecedfcc | ||
![]() |
06d4200909 | ||
![]() |
22a8cc90f1 | ||
![]() |
5cf84e31b0 | ||
![]() |
31e7aaf253 | ||
![]() |
8ec3d37c18 | ||
![]() |
857c6af946 | ||
![]() |
de081fe786 | ||
![]() |
0aeeb2d1cf | ||
![]() |
e589029722 | ||
![]() |
b265a39b63 | ||
![]() |
ed5cfd86db | ||
![]() |
a1a3e9f586 | ||
![]() |
a40b17b141 | ||
![]() |
18181ed9df | ||
![]() |
0ae028db73 | ||
![]() |
79971be672 | ||
![]() |
e4fcd738c3 | ||
![]() |
6827e5e218 | ||
![]() |
b91cd7e232 | ||
![]() |
735d89cdaa | ||
![]() |
e8db412bc2 | ||
![]() |
bf855bb26e | ||
![]() |
41cd377145 | ||
![]() |
d798864caf | ||
![]() |
cef1998f0e | ||
![]() |
c2cbf44594 | ||
![]() |
de2e167582 | ||
![]() |
547a79e231 | ||
![]() |
5a3afb3b17 | ||
![]() |
66ef4be656 | ||
![]() |
c5d0d63ddd | ||
![]() |
36f07c691a | ||
![]() |
ac0390e7c3 | ||
![]() |
0477507a6a | ||
![]() |
3e7856c895 | ||
![]() |
6778a80f21 | ||
![]() |
d4d49454a6 | ||
![]() |
04b52e6773 | ||
![]() |
2a1859e4be | ||
![]() |
dd9a9c68cb | ||
![]() |
9147ff5d49 | ||
![]() |
503b84531b | ||
![]() |
fe8ca828fb | ||
![]() |
03a4a3f2ab | ||
![]() |
3a8607d146 | ||
![]() |
93b6e65554 | ||
![]() |
5984e4c3e7 | ||
![]() |
b4257c10ea | ||
![]() |
c164bde847 | ||
![]() |
883df939dd | ||
![]() |
c7807d0f9e | ||
![]() |
fc90343aaa | ||
![]() |
fbcb45c3a2 | ||
![]() |
179d8eaaa1 | ||
![]() |
38685c1861 | ||
![]() |
cdf42fbe2d | ||
![]() |
9be4c002b7 | ||
![]() |
a16c5307a0 | ||
![]() |
d5536f5430 | ||
![]() |
b1d88b15be | ||
![]() |
ff78285e43 | ||
![]() |
1a26221385 | ||
![]() |
54113abe2a | ||
![]() |
afe385aed4 | ||
![]() |
f055e52e06 | ||
![]() |
fab5d18064 | ||
![]() |
a1e654a0d0 | ||
![]() |
aa835268ea | ||
![]() |
74b4312928 | ||
![]() |
e91a832152 | ||
![]() |
4f95bbee3f | ||
![]() |
b9c9f74d0c | ||
![]() |
e535cd504c | ||
![]() |
db0360860a | ||
![]() |
aa2b5f3b74 | ||
![]() |
6241661e27 | ||
![]() |
25047bf46d | ||
![]() |
a1820ed212 | ||
![]() |
0a1d1624e8 | ||
![]() |
7367de6832 | ||
![]() |
f0abfe89fc | ||
![]() |
d1244d165a | ||
![]() |
106d8f9192 | ||
![]() |
1d86ba8fcb | ||
![]() |
f20a947f8a | ||
![]() |
19b9de05ae | ||
![]() |
1d751c0fbe | ||
![]() |
fa2564e164 | ||
![]() |
330bff0124 | ||
![]() |
ca57c8e7b5 | ||
![]() |
a82b9a0c8a | ||
![]() |
ea7e9d73c4 | ||
![]() |
117b7b4b99 | ||
![]() |
b4bf11d9da | ||
![]() |
0306e10469 | ||
![]() |
0ab47013f2 | ||
![]() |
836883b82d | ||
![]() |
ed671be9c5 | ||
![]() |
9676a2586c | ||
![]() |
e95ba61c7f | ||
![]() |
a0718aea26 | ||
![]() |
156fa7a618 | ||
![]() |
8d006ece30 | ||
![]() |
037c994040 | ||
![]() |
a164ba291d | ||
![]() |
610fba2601 | ||
![]() |
398338c8f8 | ||
![]() |
34be157d8e | ||
![]() |
76372fe357 | ||
![]() |
46879c336b | ||
![]() |
aef9e936bd | ||
![]() |
8cb92d9678 | ||
![]() |
52db89de81 | ||
![]() |
c5af8dfc05 | ||
![]() |
27ad8e6959 | ||
![]() |
c4a1502f70 | ||
![]() |
d1d6c753c4 | ||
![]() |
3bd63f7674 | ||
![]() |
376466d9b2 | ||
![]() |
e100c52bbc | ||
![]() |
d4830dec01 | ||
![]() |
7e11821021 | ||
![]() |
4715e019a2 | ||
![]() |
794cd8734a | ||
![]() |
14d42b26bb | ||
![]() |
6bb44afd91 | ||
![]() |
c82345aeeb | ||
![]() |
72ab08a0d0 | ||
![]() |
f2d1b47e40 | ||
![]() |
d9ee2c5be2 | ||
![]() |
eb59902cf7 | ||
![]() |
002074e4d1 | ||
![]() |
45b55068f9 | ||
![]() |
157eee5d93 | ||
![]() |
d5f2b4f6eb | ||
![]() |
a7a93497e8 | ||
![]() |
8f96f0ed7a | ||
![]() |
3f064176f2 | ||
![]() |
c7b0c7dfa8 | ||
![]() |
df20dd46db | ||
![]() |
6dfd09989e | ||
![]() |
fc821709e2 | ||
![]() |
e986abaab5 | ||
![]() |
a006fb3119 | ||
![]() |
2af812eaf1 | ||
![]() |
d13c975f94 | ||
![]() |
1f7e4dd184 | ||
![]() |
8b04216998 | ||
![]() |
27ff25b70e | ||
![]() |
dc3a41e4bb | ||
![]() |
94448bb5d8 | ||
![]() |
9a568b0f73 | ||
![]() |
a1ee491dc5 | ||
![]() |
e5c118c262 | ||
![]() |
1bef1279e6 | ||
![]() |
c511f259c7 | ||
![]() |
f77ed8ef94 | ||
![]() |
a4929af2ee | ||
![]() |
095811dda9 | ||
![]() |
480d5879ba | ||
![]() |
c0722b173b | ||
![]() |
f07c8e4bd4 | ||
![]() |
baf4b2c1d2 | ||
![]() |
a6039bd99a | ||
![]() |
7c0010c902 | ||
![]() |
596a0f1a02 | ||
![]() |
efda3df09b | ||
![]() |
ec35f46d45 | ||
![]() |
c64fa2f47c | ||
![]() |
6ce42a0101 | ||
![]() |
d40c74c072 | ||
![]() |
d722206916 | ||
![]() |
19e4c8bf5e | ||
![]() |
ee656b868b | ||
![]() |
5e79d28bbf | ||
![]() |
25ffd6b803 | ||
![]() |
a08fe8087f | ||
![]() |
fe273a9107 | ||
![]() |
06170d8d7d | ||
![]() |
62d231ae41 | ||
![]() |
4a72097921 | ||
![]() |
23b8cdc4a1 | ||
![]() |
2646b756a9 | ||
![]() |
28e058c6e8 | ||
![]() |
8dea171115 | ||
![]() |
aef9254713 | ||
![]() |
31b7396006 | ||
![]() |
be0a2649da | ||
![]() |
bf8f91f83d | ||
![]() |
effdfebc19 | ||
![]() |
f4816e6c9a | ||
![]() |
152a5cbd27 | ||
![]() |
1488763115 | ||
![]() |
bbb35d16fc | ||
![]() |
ef07045ee9 | ||
![]() |
3ba673b424 | ||
![]() |
9c4032ebea | ||
![]() |
05bb12c978 | ||
![]() |
df957f07e3 | ||
![]() |
b510284e01 | ||
![]() |
205a1ed637 | ||
![]() |
2073c735a5 | ||
![]() |
34085ac6fb | ||
![]() |
3d6559921b | ||
![]() |
15a7f0e71a | ||
![]() |
3e56243d6f | ||
![]() |
032fcb938d | ||
![]() |
e98393452b | ||
![]() |
302b624504 | ||
![]() |
e00d9d2ca0 | ||
![]() |
9ab4601c8d | ||
![]() |
19e43bdb1a | ||
![]() |
49832e7944 | ||
![]() |
916e98936a | ||
![]() |
31d1eef7f7 | ||
![]() |
2648d9a813 | ||
![]() |
b24b576209 | ||
![]() |
faee38bffd | ||
![]() |
65f3503fe8 | ||
![]() |
054023b791 | ||
![]() |
383c3a68fa | ||
![]() |
7d22b1c15c | ||
![]() |
c71e7cd926 | ||
![]() |
83ad069c5d | ||
![]() |
081108d9ba | ||
![]() |
8f3df56a2b | ||
![]() |
d02124f4e5 | ||
![]() |
09e351fedb | ||
![]() |
ad4b85b095 | ||
![]() |
0bf7d8beae | ||
![]() |
1ae7cca394 | ||
![]() |
bc1c7a8ae1 | ||
![]() |
c22c5e4584 | ||
![]() |
ac3646836c | ||
![]() |
7a31ab75d6 | ||
![]() |
c49dc35ab5 | ||
![]() |
06cedd11d8 | ||
![]() |
f496376fb3 | ||
![]() |
091e2a57e8 | ||
![]() |
0d40ef6796 | ||
![]() |
1be33ba4c3 | ||
![]() |
aaeb311928 | ||
![]() |
a7a38c07ac | ||
![]() |
56f49752b4 | ||
![]() |
892d8b6fe2 | ||
![]() |
cec2005436 | ||
![]() |
0eb86c0096 | ||
![]() |
b8e39d76c1 | ||
![]() |
1c3ff526b7 | ||
![]() |
373767248c | ||
![]() |
d7965b2748 | ||
![]() |
cbcd2ec87a | ||
![]() |
c74d37fc48 | ||
![]() |
66f9352a06 | ||
![]() |
e5eef3aba0 | ||
![]() |
d261c81cd0 | ||
![]() |
634e3bbb67 | ||
![]() |
f8c9e67063 | ||
![]() |
18eddea6f8 | ||
![]() |
c6d655c5f5 | ||
![]() |
46867c1a4d | ||
![]() |
d29903bab6 | ||
![]() |
3415cae093 | ||
![]() |
408fd5a0c6 | ||
![]() |
0a16ee64fe | ||
![]() |
22b00479b4 | ||
![]() |
5311e74266 | ||
![]() |
5be7db7788 | ||
![]() |
3bd1547ce3 | ||
![]() |
a1fe15f7a9 | ||
![]() |
19b8921f28 | ||
![]() |
6b7879ba15 | ||
![]() |
bd5f492a73 | ||
![]() |
67311cc002 | ||
![]() |
f39d3aca5b | ||
![]() |
8e47491e3c | ||
![]() |
0036d527bd | ||
![]() |
f565f1d950 | ||
![]() |
8e35dfa4b7 | ||
![]() |
f911473be9 | ||
![]() |
71624f1897 | ||
![]() |
17de6ea7e1 | ||
![]() |
6aad7cd207 | ||
![]() |
63af335877 | ||
![]() |
8cd7a138ab | ||
![]() |
f69cdc7b03 | ||
![]() |
2ca649cf31 | ||
![]() |
f2ada08201 | ||
![]() |
54ba1f69e5 | ||
![]() |
f13a99f5fd | ||
![]() |
e9bba6fd3a | ||
![]() |
f0d1a70c87 | ||
![]() |
56f0aef21d | ||
![]() |
75e266cb9e | ||
![]() |
b9bb83c0ce | ||
![]() |
da645c5ab3 | ||
![]() |
318af5757d | ||
![]() |
b1cc156a25 | ||
![]() |
79d71ca161 | ||
![]() |
cedd50b366 | ||
![]() |
0d5dcdd8ec | ||
![]() |
d2b0fb144b | ||
![]() |
053852b46c | ||
![]() |
6ad349d379 | ||
![]() |
f7d33c7164 | ||
![]() |
b53b67328f | ||
![]() |
573ffbfcf3 | ||
![]() |
501ac0e99f | ||
![]() |
959a11293a | ||
![]() |
fee1f1a3a7 | ||
![]() |
b0fbe0bb58 | ||
![]() |
0087c70007 | ||
![]() |
36e496dd7c | ||
![]() |
f2e2030e85 | ||
![]() |
0c3737dc19 | ||
![]() |
f7471119e1 | ||
![]() |
9bd97b95e9 | ||
![]() |
b7400c198f | ||
![]() |
f87036e3a8 | ||
![]() |
a43e5ef724 | ||
![]() |
913ced70b0 | ||
![]() |
6ffce30a36 | ||
![]() |
f5a57d886c | ||
![]() |
e8ba49ecca | ||
![]() |
c79a5dc94b | ||
![]() |
4db83ae678 | ||
![]() |
84ceb7ffd2 | ||
![]() |
e215ac4343 | ||
![]() |
bc8048790f | ||
![]() |
886ccf84c1 | ||
![]() |
c067cb9fe4 | ||
![]() |
6b2389cdc3 | ||
![]() |
d93916b159 | ||
![]() |
c34f548e45 | ||
![]() |
6fcd56cc86 | ||
![]() |
8f88a87c93 | ||
![]() |
f8c2f84322 | ||
![]() |
46c4947871 | ||
![]() |
64759ec2da | ||
![]() |
5f7e768e64 | ||
![]() |
4bc189f1c5 | ||
![]() |
71721ab198 | ||
![]() |
5536a48966 | ||
![]() |
f77e29d3c9 | ||
![]() |
4b1fc718a2 | ||
![]() |
1708c3f8a0 | ||
![]() |
352e02028d | ||
![]() |
1bbb639c83 | ||
![]() |
c14265f103 | ||
![]() |
c030a6b3d8 | ||
![]() |
af997ea658 | ||
![]() |
efa4d7fc60 | ||
![]() |
f714aaa0e9 | ||
![]() |
aee6e60583 | ||
![]() |
4e602687d5 | ||
![]() |
d026152ac8 | ||
![]() |
3f21a358d2 | ||
![]() |
dc55e47c98 | ||
![]() |
3b804e2321 | ||
![]() |
b32f851a90 | ||
![]() |
479d20e76f | ||
![]() |
fae4553fc8 | ||
![]() |
cb74b23e45 | ||
![]() |
af8f12c33a | ||
![]() |
a148c4d1f6 | ||
![]() |
f7190c0c9c | ||
![]() |
c00d7765a9 | ||
![]() |
2b651d86e2 | ||
![]() |
9be3517093 | ||
![]() |
fcfedaf7e7 | ||
![]() |
0b82794e9c | ||
![]() |
2a52e398cb | ||
![]() |
c31e882ad2 | ||
![]() |
2f0903e0eb | ||
![]() |
2396053bc1 | ||
![]() |
17fd12305e | ||
![]() |
425ea4374d | ||
![]() |
c076c3c74a | ||
![]() |
547cdfd8ec | ||
![]() |
a0af8f0025 | ||
![]() |
c970b1ea68 | ||
![]() |
4d1e2dec26 | ||
![]() |
108408a944 | ||
![]() |
18d07d431f | ||
![]() |
cbc024f67a | ||
![]() |
55ec5970da | ||
![]() |
58bdca6659 | ||
![]() |
ef49b0d3f8 | ||
![]() |
9cb691e5ad | ||
![]() |
04d09582d4 | ||
![]() |
8f90dc172b | ||
![]() |
f759261919 | ||
![]() |
2606f6d929 | ||
![]() |
c288e5d8dc | ||
![]() |
4b76d4b71e | ||
![]() |
72310130d2 | ||
![]() |
f9e51ef06e | ||
![]() |
92a5eb0d98 | ||
![]() |
77d2ea1a1f | ||
![]() |
92f96ddb84 | ||
![]() |
15a914e25e | ||
![]() |
912a29d091 | ||
![]() |
b2c32ce70e | ||
![]() |
ed1a708c40 | ||
![]() |
e905128d45 | ||
![]() |
fd598f372a | ||
![]() |
7a3946a9e2 | ||
![]() |
cbdd2584d0 | ||
![]() |
f3161c2712 | ||
![]() |
148542dd5a | ||
![]() |
d2b2c339f2 | ||
![]() |
d2578c48f0 | ||
![]() |
fecfd54728 | ||
![]() |
17e4162d3e | ||
![]() |
742209d773 |
4019 changed files with 70872 additions and 34183 deletions
7
.github/ci.env
vendored
7
.github/ci.env
vendored
|
@ -4,13 +4,14 @@ DB_USERNAME=std_notes_user
|
|||
DB_PASSWORD=changeme123
|
||||
DB_DATABASE=standard_notes_db
|
||||
DB_PORT=3306
|
||||
DB_DEBUG_LEVEL=all
|
||||
DB_SQLITE_DATABASE_PATH=standard_notes_db
|
||||
REDIS_PORT=6379
|
||||
REDIS_HOST=cache
|
||||
AUTH_SERVER_ACCESS_TOKEN_AGE=4
|
||||
AUTH_SERVER_REFRESH_TOKEN_AGE=10
|
||||
AUTH_SERVER_EPHEMERAL_SESSION_AGE=300
|
||||
SYNCING_SERVER_REVISIONS_FREQUENCY=5
|
||||
SYNCING_SERVER_REVISIONS_FREQUENCY=2
|
||||
AUTH_SERVER_LOG_LEVEL=debug
|
||||
SYNCING_SERVER_LOG_LEVEL=debug
|
||||
FILES_SERVER_LOG_LEVEL=debug
|
||||
|
@ -25,3 +26,7 @@ MYSQL_ROOT_PASSWORD=changeme123
|
|||
AUTH_JWT_SECRET=f95259c5e441f5a4646d76422cfb3df4c4488842901aa50b6c51b8be2e0040e9
|
||||
AUTH_SERVER_ENCRYPTION_SERVER_KEY=1087415dfde3093797f9a7ca93a49e7d7aa1861735eb0d32aae9c303b8c3d060
|
||||
VALET_TOKEN_SECRET=4b886819ebe1e908077c6cae96311b48a8416bd60cc91c03060e15bdf6b30d1f
|
||||
|
||||
SYNCING_SERVER_CONTENT_SIZE_TRANSFER_LIMIT=100000
|
||||
|
||||
HTTP_REQUEST_PAYLOAD_LIMIT_MEGABYTES=1
|
||||
|
|
53
.github/dependabot.yml
vendored
53
.github/dependabot.yml
vendored
|
@ -9,91 +9,134 @@ updates:
|
|||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/analytics"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/api-gateway"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/auth"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/common"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/domain-core"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/domain-events"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/domain-events-infra"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/event-store"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/files"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/home-server"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/predicates"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/revisions"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/scheduler"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/security"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/settings"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/sncrypto-node"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/syncing-server"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/time"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/websockets"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-type: "direct"
|
||||
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
|
|
16
.github/workflows/analytics.yml
vendored
16
.github/workflows/analytics.yml
vendored
|
@ -20,19 +20,3 @@ jobs:
|
|||
deploy_web: false
|
||||
package_path: packages/analytics
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_ANALYTICS_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
14
.github/workflows/api-gateway.yml
vendored
14
.github/workflows/api-gateway.yml
vendored
|
@ -20,17 +20,3 @@ jobs:
|
|||
deploy_worker: false
|
||||
package_path: packages/api-gateway
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_API_GATEWAY_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
24
.github/workflows/auth.yml
vendored
24
.github/workflows/auth.yml
vendored
|
@ -19,27 +19,3 @@ jobs:
|
|||
workspace_name: "@standardnotes/auth-server"
|
||||
package_path: packages/auth
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_AUTH_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_AUTH_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
2
.github/workflows/common-deploy.yml
vendored
2
.github/workflows/common-deploy.yml
vendored
|
@ -24,7 +24,7 @@ jobs:
|
|||
steps:
|
||||
|
||||
- name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@v1
|
||||
uses: aws-actions/configure-aws-credentials@v3
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
|
|
25
.github/workflows/common-docker-image.yml
vendored
25
.github/workflows/common-docker-image.yml
vendored
|
@ -27,23 +27,18 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Create Bundle Dir
|
||||
id: bundle-dir
|
||||
run: echo "temp_dir=$(mktemp -d -t ${{ inputs.service_name }}-${{ github.sha }}-XXXXXXX)" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
|
@ -57,20 +52,16 @@ jobs:
|
|||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Bundle
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn workspace ${{ inputs.workspace_name }} bundle --no-compress --output-directory ${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
run: yarn build
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@v1
|
||||
uses: aws-actions/configure-aws-credentials@v3
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
|
@ -78,7 +69,7 @@ jobs:
|
|||
|
||||
- name: Login to Amazon ECR
|
||||
id: login-ecr
|
||||
uses: aws-actions/amazon-ecr-login@v1
|
||||
uses: aws-actions/amazon-ecr-login@v2
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@master
|
||||
|
@ -90,11 +81,11 @@ jobs:
|
|||
uses: docker/setup-buildx-action@master
|
||||
|
||||
- name: Publish Docker image
|
||||
uses: docker/build-push-action@v3
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: ${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
file: ${{ steps.bundle-dir.outputs.temp_dir }}/${{ inputs.package_path }}/Dockerfile
|
||||
context: .
|
||||
file: ${{ inputs.package_path }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
|
|
128
.github/workflows/common-e2e.yml
vendored
128
.github/workflows/common-e2e.yml
vendored
|
@ -7,122 +7,20 @@ on:
|
|||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
secrets:
|
||||
DOCKER_USERNAME:
|
||||
required: true
|
||||
DOCKER_PASSWORD:
|
||||
required: true
|
||||
AWS_ACCESS_KEY_ID:
|
||||
required: true
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
required: true
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
name: (Docker) E2E Test Suite
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Run Server
|
||||
run: docker compose -f docker-compose.ci.yml up -d
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
|
||||
- name: Wait for server to start
|
||||
run: docker/is-available.sh http://localhost:3123 $(pwd)/logs
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 1200000 -f http://localhost:9001/mocha/test.html
|
||||
e2e-self-hosted:
|
||||
uses: standardnotes/server/.github/workflows/e2e-self-hosted.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag }}
|
||||
suite: ${{ inputs.suite }}
|
||||
|
||||
e2e-home-server:
|
||||
name: (Home Server) E2E Test Suite
|
||||
strategy:
|
||||
matrix:
|
||||
db_type: [mysql, sqlite]
|
||||
cache_type: [redis, memory]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
cache:
|
||||
image: redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
db:
|
||||
image: mysql
|
||||
ports:
|
||||
- 3306:3306
|
||||
env:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: standardnotes
|
||||
MYSQL_USER: standardnotes
|
||||
MYSQL_PASSWORD: standardnotes
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install Dependencies
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
||||
- name: Copy dotenv file
|
||||
run: cp packages/home-server/.env.sample packages/home-server/.env
|
||||
|
||||
- name: Fill in env variables
|
||||
run: |
|
||||
sed -i "s/JWT_SECRET=/JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/AUTH_JWT_SECRET=/AUTH_JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/ENCRYPTION_SERVER_KEY=/ENCRYPTION_SERVER_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/PSEUDO_KEY_PARAMS_KEY=/PSEUDO_KEY_PARAMS_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/VALET_TOKEN_SECRET=/VALET_TOKEN_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
echo "ACCESS_TOKEN_AGE=4" >> packages/home-server/.env
|
||||
echo "REFRESH_TOKEN_AGE=7" >> packages/home-server/.env
|
||||
echo "REVISIONS_FREQUENCY=5" >> packages/home-server/.env
|
||||
echo "DB_HOST=db" >> packages/home-server/.env
|
||||
echo "DB_PORT=3306" >> packages/home-server/.env
|
||||
echo "DB_USERNAME=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_PASSWORD=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_TYPE=${{ matrix.db_type }}" >> packages/home-server/.env
|
||||
echo "REDIS_URL=redis://cache" >> packages/home-server/.env
|
||||
echo "CACHE_TYPE=${{ matrix.cache_type }}" >> packages/home-server/.env
|
||||
|
||||
- name: Run Server
|
||||
run: nohup yarn workspace @standardnotes/home-server start &
|
||||
env:
|
||||
PORT: 3123
|
||||
|
||||
- name: Wait for server to start
|
||||
run: for i in {1..30}; do curl -s http://localhost:3123/healthcheck && break || sleep 1; done
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 1200000 -f http://localhost:9001/mocha/test.html?skip_paid_features=true
|
||||
uses: standardnotes/server/.github/workflows/e2e-home-server.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag }}
|
||||
suite: ${{ inputs.suite }}
|
||||
|
|
6
.github/workflows/common-self-hosting.yml
vendored
6
.github/workflows/common-self-hosting.yml
vendored
|
@ -17,10 +17,10 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
@ -35,7 +35,7 @@ jobs:
|
|||
uses: docker/setup-buildx-action@master
|
||||
|
||||
- name: Publish Docker image
|
||||
uses: docker/build-push-action@v3
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: .
|
||||
|
|
36
.github/workflows/common-server-application.yml
vendored
36
.github/workflows/common-server-application.yml
vendored
|
@ -42,26 +42,26 @@ jobs:
|
|||
workspace_name: ${{ inputs.workspace_name }}
|
||||
secrets: inherit
|
||||
|
||||
deploy-web:
|
||||
if: ${{ inputs.deploy_web }}
|
||||
# deploy-web:
|
||||
# if: ${{ inputs.deploy_web }}
|
||||
|
||||
needs: publish
|
||||
# needs: publish
|
||||
|
||||
name: Deploy Web
|
||||
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
with:
|
||||
service_name: ${{ inputs.service_name }}
|
||||
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
secrets: inherit
|
||||
# name: Deploy Web
|
||||
# uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
# with:
|
||||
# service_name: ${{ inputs.service_name }}
|
||||
# docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
# secrets: inherit
|
||||
|
||||
deploy-worker:
|
||||
if: ${{ inputs.deploy_worker }}
|
||||
# deploy-worker:
|
||||
# if: ${{ inputs.deploy_worker }}
|
||||
|
||||
needs: publish
|
||||
# needs: publish
|
||||
|
||||
name: Deploy Worker
|
||||
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
with:
|
||||
service_name: ${{ inputs.service_name }}-worker
|
||||
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
secrets: inherit
|
||||
# name: Deploy Worker
|
||||
# uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
# with:
|
||||
# service_name: ${{ inputs.service_name }}-worker
|
||||
# docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
# secrets: inherit
|
||||
|
|
106
.github/workflows/e2e-home-server.yml
vendored
Normal file
106
.github/workflows/e2e-home-server.yml
vendored
Normal file
|
@ -0,0 +1,106 @@
|
|||
name: E2E Home Server Test Suite
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
|
||||
jobs:
|
||||
e2e-home-server:
|
||||
name: (Home Server) E2E Test Suite
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
db_type: [mysql, sqlite]
|
||||
cache_type: [redis, memory]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
cache:
|
||||
image: redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
db:
|
||||
image: mysql
|
||||
ports:
|
||||
- 3306:3306
|
||||
env:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: standardnotes
|
||||
MYSQL_USER: standardnotes
|
||||
MYSQL_PASSWORD: standardnotes
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install Dependencies
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
||||
- name: Copy dotenv file
|
||||
run: cp packages/home-server/.env.sample packages/home-server/.env
|
||||
|
||||
- name: Fill in env variables
|
||||
run: |
|
||||
sed -i "s/JWT_SECRET=/JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/AUTH_JWT_SECRET=/AUTH_JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/ENCRYPTION_SERVER_KEY=/ENCRYPTION_SERVER_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/PSEUDO_KEY_PARAMS_KEY=/PSEUDO_KEY_PARAMS_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/VALET_TOKEN_SECRET=/VALET_TOKEN_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
echo "ACCESS_TOKEN_AGE=4" >> packages/home-server/.env
|
||||
echo "REFRESH_TOKEN_AGE=10" >> packages/home-server/.env
|
||||
echo "REVISIONS_FREQUENCY=2" >> packages/home-server/.env
|
||||
echo "CONTENT_SIZE_TRANSFER_LIMIT=100000" >> packages/home-server/.env
|
||||
echo "HTTP_REQUEST_PAYLOAD_LIMIT_MEGABYTES=1" >> packages/home-server/.env
|
||||
echo "DB_HOST=localhost" >> packages/home-server/.env
|
||||
echo "DB_PORT=3306" >> packages/home-server/.env
|
||||
echo "DB_DATABASE=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_SQLITE_DATABASE_PATH=homeserver.db" >> packages/home-server/.env
|
||||
echo "DB_USERNAME=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_PASSWORD=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_TYPE=${{ matrix.db_type }}" >> packages/home-server/.env
|
||||
echo "DB_DEBUG_LEVEL=all" >> packages/home-server/.env
|
||||
echo "REDIS_URL=redis://localhost:6379" >> packages/home-server/.env
|
||||
echo "CACHE_TYPE=${{ matrix.cache_type }}" >> packages/home-server/.env
|
||||
echo "FILES_SERVER_URL=http://localhost:3123" >> packages/home-server/.env
|
||||
echo "E2E_TESTING=true" >> packages/home-server/.env
|
||||
|
||||
- name: Run Server
|
||||
run: nohup yarn workspace @standardnotes/home-server start > logs/output.log 2>&1 &
|
||||
env:
|
||||
PORT: 3123
|
||||
|
||||
- name: Wait for server to start
|
||||
run: for i in {1..30}; do curl -s http://localhost:3123/healthcheck && break || sleep 1; done
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: home-server-failure-logs-${{ inputs.suite }}-${{ matrix.db_type }}-${{ matrix.cache_type }}
|
||||
retention-days: 5
|
||||
path: |
|
||||
logs/output.log
|
70
.github/workflows/e2e-self-hosted.yml
vendored
Normal file
70
.github/workflows/e2e-self-hosted.yml
vendored
Normal file
|
@ -0,0 +1,70 @@
|
|||
name: E2E Self Hosted Test Suite
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
name: (Self Hosting) E2E Test Suite
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
service_proxy_type: [http, grpc]
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Run Server
|
||||
run: docker compose -f docker-compose.ci.yml up -d
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
SERVICE_PROXY_TYPE: ${{ matrix.service_proxy_type }}
|
||||
|
||||
- name: Output Server Logs to File
|
||||
run: docker compose -f docker-compose.ci.yml logs -f > logs/docker-compose.log 2>&1 &
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
SERVICE_PROXY_TYPE: ${{ matrix.service_proxy_type }}
|
||||
|
||||
- name: Wait for server to start
|
||||
run: docker/is-available.sh http://localhost:3123 $(pwd)/logs
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: self-hosted-failure-logs-${{ inputs.suite }}
|
||||
retention-days: 5
|
||||
path: |
|
||||
logs/*.err
|
||||
logs/*.log
|
18
.github/workflows/e2e-test-suite.yml
vendored
18
.github/workflows/e2e-test-suite.yml
vendored
|
@ -1,4 +1,6 @@
|
|||
name: E2E Test Suite On Self Hosted Server
|
||||
name: E2E Test Suite
|
||||
|
||||
run-name: E2E ${{ inputs.suite }} Test Suite against ${{ inputs.ref_name }} by ${{ inputs.author }}
|
||||
|
||||
on:
|
||||
schedule:
|
||||
|
@ -9,6 +11,18 @@ on:
|
|||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
author:
|
||||
type: string
|
||||
default: unknown
|
||||
description: The author that triggered the workflow
|
||||
ref_name:
|
||||
type: string
|
||||
default: unknown
|
||||
description: The ref name from which the workflow was triggered
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
|
@ -16,4 +30,4 @@ jobs:
|
|||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag || 'latest' }}
|
||||
secrets: inherit
|
||||
suite: ${{ inputs.suite || 'all' }}
|
||||
|
|
24
.github/workflows/files.yml
vendored
24
.github/workflows/files.yml
vendored
|
@ -19,27 +19,3 @@ jobs:
|
|||
workspace_name: "@standardnotes/files-server"
|
||||
package_path: packages/files
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_FILES_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_FILES_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
29
.github/workflows/pr.yml
vendored
29
.github/workflows/pr.yml
vendored
|
@ -9,7 +9,7 @@ jobs:
|
|||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -26,7 +26,7 @@ jobs:
|
|||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
run: yarn install
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
@ -37,7 +37,7 @@ jobs:
|
|||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -54,7 +54,7 @@ jobs:
|
|||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
run: yarn install
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
|
@ -69,7 +69,7 @@ jobs:
|
|||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -86,7 +86,7 @@ jobs:
|
|||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
run: yarn install
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
|
@ -95,9 +95,18 @@ jobs:
|
|||
- name: Test
|
||||
run: yarn test
|
||||
|
||||
e2e:
|
||||
e2e-base:
|
||||
needs: build
|
||||
|
||||
name: E2E
|
||||
name: E2E Base Suite
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
secrets: inherit
|
||||
with:
|
||||
snjs_image_tag: 'latest'
|
||||
suite: 'base'
|
||||
|
||||
e2e-vaults:
|
||||
needs: build
|
||||
name: E2E Vaults Suite
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
with:
|
||||
snjs_image_tag: 'latest'
|
||||
suite: 'vaults'
|
||||
|
|
39
.github/workflows/publish.yml
vendored
39
.github/workflows/publish.yml
vendored
|
@ -4,12 +4,15 @@ on:
|
|||
push:
|
||||
branches: [ main ]
|
||||
|
||||
permissions:
|
||||
id-token: write
|
||||
|
||||
jobs:
|
||||
build:
|
||||
if: contains(github.event.head_commit.message, 'chore(release)') == false
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -37,7 +40,7 @@ jobs:
|
|||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -69,7 +72,7 @@ jobs:
|
|||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
|
@ -95,26 +98,38 @@ jobs:
|
|||
- name: Test
|
||||
run: yarn test
|
||||
|
||||
e2e:
|
||||
needs: build
|
||||
name: E2E
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
secrets: inherit
|
||||
# e2e-base:
|
||||
# needs: build
|
||||
# name: E2E Base Suite
|
||||
# uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
# with:
|
||||
# snjs_image_tag: 'latest'
|
||||
# suite: 'base'
|
||||
|
||||
# e2e-vaults:
|
||||
# needs: build
|
||||
# name: E2E Vaults Suite
|
||||
# uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
# with:
|
||||
# snjs_image_tag: 'latest'
|
||||
# suite: 'vaults'
|
||||
|
||||
publish-self-hosting:
|
||||
needs: [ test, lint, e2e ]
|
||||
# needs: [ test, lint, e2e-base, e2e-vaults ]
|
||||
needs: [ test, lint ]
|
||||
name: Publish Self Hosting Docker Image
|
||||
uses: standardnotes/server/.github/workflows/common-self-hosting.yml@main
|
||||
secrets: inherit
|
||||
|
||||
publish-services:
|
||||
needs: [ test, lint, e2e ]
|
||||
# needs: [ test, lint, e2e-base, e2e-vaults ]
|
||||
needs: [ test, lint ]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
token: ${{ secrets.CI_PAT_TOKEN }}
|
||||
fetch-depth: 0
|
||||
|
@ -133,7 +148,7 @@ jobs:
|
|||
git config --global user.email "ci@standardnotes.com"
|
||||
|
||||
- name: Import GPG key
|
||||
uses: crazy-max/ghaction-import-gpg@v5
|
||||
uses: crazy-max/ghaction-import-gpg@v6
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.PASSPHRASE }}
|
||||
|
|
24
.github/workflows/revisions.yml
vendored
24
.github/workflows/revisions.yml
vendored
|
@ -19,27 +19,3 @@ jobs:
|
|||
workspace_name: "@standardnotes/revisions-server"
|
||||
package_path: packages/revisions
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_REVISIONS_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_REVISIONS_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
16
.github/workflows/scheduler.yml
vendored
16
.github/workflows/scheduler.yml
vendored
|
@ -20,19 +20,3 @@ jobs:
|
|||
deploy_web: false
|
||||
package_path: packages/scheduler
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_SCHEDULER_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
24
.github/workflows/syncing-server.yml
vendored
24
.github/workflows/syncing-server.yml
vendored
|
@ -19,27 +19,3 @@ jobs:
|
|||
workspace_name: "@standardnotes/syncing-server"
|
||||
package_path: packages/syncing-server
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_SYNCING_SERVER_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_SYNCING_SERVER_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
24
.github/workflows/websockets.yml
vendored
24
.github/workflows/websockets.yml
vendored
|
@ -19,27 +19,3 @@ jobs:
|
|||
workspace_name: "@standardnotes/websockets-server"
|
||||
package_path: packages/websockets
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_WEBSOCKETS_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_WEBSOCKETS_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
|
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -4,7 +4,6 @@
|
|||
dist
|
||||
coverage
|
||||
.env
|
||||
newrelic_agent.log
|
||||
|
||||
.yarn/*
|
||||
!.yarn/cache
|
||||
|
@ -14,6 +13,8 @@ newrelic_agent.log
|
|||
!.yarn/sdks
|
||||
!.yarn/versions
|
||||
|
||||
yarn.build-error.log
|
||||
|
||||
packages/files/uploads/*
|
||||
!packages/files/uploads/.gitkeep
|
||||
|
||||
|
|
2
.nvmrc
2
.nvmrc
|
@ -1 +1 @@
|
|||
20.2.0
|
||||
20.10.0
|
||||
|
|
9150
.pnp.cjs
generated
9150
.pnp.cjs
generated
File diff suppressed because one or more lines are too long
221
.pnp.loader.mjs
generated
221
.pnp.loader.mjs
generated
|
@ -1,9 +1,9 @@
|
|||
import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url';
|
||||
import fs from 'fs';
|
||||
import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url';
|
||||
import path from 'path';
|
||||
import moduleExports, { Module } from 'module';
|
||||
import { createHash } from 'crypto';
|
||||
import { EOL } from 'os';
|
||||
import moduleExports, { isBuiltin } from 'module';
|
||||
import assert from 'assert';
|
||||
|
||||
const SAFE_TIME = 456789e3;
|
||||
|
@ -16,14 +16,16 @@ const PortablePath = {
|
|||
const npath = Object.create(path);
|
||||
const ppath = Object.create(path.posix);
|
||||
npath.cwd = () => process.cwd();
|
||||
ppath.cwd = () => toPortablePath(process.cwd());
|
||||
ppath.resolve = (...segments) => {
|
||||
if (segments.length > 0 && ppath.isAbsolute(segments[0])) {
|
||||
return path.posix.resolve(...segments);
|
||||
} else {
|
||||
return path.posix.resolve(ppath.cwd(), ...segments);
|
||||
}
|
||||
};
|
||||
ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd;
|
||||
if (process.platform === `win32`) {
|
||||
ppath.resolve = (...segments) => {
|
||||
if (segments.length > 0 && ppath.isAbsolute(segments[0])) {
|
||||
return path.posix.resolve(...segments);
|
||||
} else {
|
||||
return path.posix.resolve(ppath.cwd(), ...segments);
|
||||
}
|
||||
};
|
||||
}
|
||||
const contains = function(pathUtils, from, to) {
|
||||
from = pathUtils.normalize(from);
|
||||
to = pathUtils.normalize(to);
|
||||
|
@ -37,17 +39,13 @@ const contains = function(pathUtils, from, to) {
|
|||
return null;
|
||||
}
|
||||
};
|
||||
npath.fromPortablePath = fromPortablePath;
|
||||
npath.toPortablePath = toPortablePath;
|
||||
npath.contains = (from, to) => contains(npath, from, to);
|
||||
ppath.contains = (from, to) => contains(ppath, from, to);
|
||||
const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/;
|
||||
const UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/;
|
||||
const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/;
|
||||
const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/;
|
||||
function fromPortablePath(p) {
|
||||
if (process.platform !== `win32`)
|
||||
return p;
|
||||
function fromPortablePathWin32(p) {
|
||||
let portablePathMatch, uncPortablePathMatch;
|
||||
if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP))
|
||||
p = portablePathMatch[1];
|
||||
|
@ -57,9 +55,7 @@ function fromPortablePath(p) {
|
|||
return p;
|
||||
return p.replace(/\//g, `\\`);
|
||||
}
|
||||
function toPortablePath(p) {
|
||||
if (process.platform !== `win32`)
|
||||
return p;
|
||||
function toPortablePathWin32(p) {
|
||||
p = p.replace(/\\/g, `/`);
|
||||
let windowsPathMatch, uncWindowsPathMatch;
|
||||
if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))
|
||||
|
@ -68,6 +64,10 @@ function toPortablePath(p) {
|
|||
p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`;
|
||||
return p;
|
||||
}
|
||||
const toPortablePath = process.platform === `win32` ? toPortablePathWin32 : (p) => p;
|
||||
const fromPortablePath = process.platform === `win32` ? fromPortablePathWin32 : (p) => p;
|
||||
npath.fromPortablePath = fromPortablePath;
|
||||
npath.toPortablePath = toPortablePath;
|
||||
function convertPath(targetPathUtils, sourcePath) {
|
||||
return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath);
|
||||
}
|
||||
|
@ -89,7 +89,6 @@ async function copyPromise(destinationFs, destination, sourceFs, source, opts) {
|
|||
}));
|
||||
}
|
||||
async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) {
|
||||
var _a, _b, _c;
|
||||
const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null;
|
||||
const sourceStat = await sourceFs.lstatPromise(source);
|
||||
const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
|
||||
|
@ -115,8 +114,8 @@ async function copyImpl(prelayout, postlayout, destinationFs, destination, sourc
|
|||
throw new Error(`Unsupported file type (${sourceStat.mode})`);
|
||||
}
|
||||
}
|
||||
if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) {
|
||||
if (updated || ((_b = destinationStat == null ? void 0 : destinationStat.mtime) == null ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat == null ? void 0 : destinationStat.atime) == null ? void 0 : _c.getTime()) !== atime.getTime()) {
|
||||
if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) {
|
||||
if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) {
|
||||
postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime));
|
||||
updated = true;
|
||||
}
|
||||
|
@ -186,7 +185,7 @@ async function copyFileViaIndex(prelayout, postlayout, destinationFs, destinatio
|
|||
let indexStat = await maybeLStat(destinationFs, indexPath);
|
||||
if (destinationStat) {
|
||||
const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino;
|
||||
const isIndexModified = (indexStat == null ? void 0 : indexStat.mtimeMs) !== defaultTimeMs;
|
||||
const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs;
|
||||
if (isDestinationHardlinkedFromIndex) {
|
||||
if (isIndexModified && linkStrategy.autoRepair) {
|
||||
atomicBehavior = 0 /* Lock */;
|
||||
|
@ -256,8 +255,7 @@ async function copyFileDirect(prelayout, postlayout, destinationFs, destination,
|
|||
return true;
|
||||
}
|
||||
async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) {
|
||||
var _a;
|
||||
if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) === `HardlinkFromIndex`) {
|
||||
if (opts.linkStrategy?.type === `HardlinkFromIndex`) {
|
||||
return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy);
|
||||
} else {
|
||||
return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts);
|
||||
|
@ -387,7 +385,7 @@ class FakeFS {
|
|||
throw error;
|
||||
}
|
||||
}
|
||||
createdDirectory ?? (createdDirectory = subPath);
|
||||
createdDirectory ??= subPath;
|
||||
if (chmod != null)
|
||||
await this.chmodPromise(subPath, chmod);
|
||||
if (utimes != null) {
|
||||
|
@ -418,7 +416,7 @@ class FakeFS {
|
|||
throw error;
|
||||
}
|
||||
}
|
||||
createdDirectory ?? (createdDirectory = subPath);
|
||||
createdDirectory ??= subPath;
|
||||
if (chmod != null)
|
||||
this.chmodSync(subPath, chmod);
|
||||
if (utimes != null) {
|
||||
|
@ -613,12 +611,14 @@ class FakeFS {
|
|||
throw error;
|
||||
}
|
||||
}
|
||||
async writeJsonPromise(p, data) {
|
||||
return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)}
|
||||
async writeJsonPromise(p, data, { compact = false } = {}) {
|
||||
const space = compact ? 0 : 2;
|
||||
return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}
|
||||
`);
|
||||
}
|
||||
writeJsonSync(p, data) {
|
||||
return this.writeFileSync(p, `${JSON.stringify(data, null, 2)}
|
||||
writeJsonSync(p, data, { compact = false } = {}) {
|
||||
const space = compact ? 0 : 2;
|
||||
return this.writeFileSync(p, `${JSON.stringify(data, null, space)}
|
||||
`);
|
||||
}
|
||||
async preserveTimePromise(p, cb) {
|
||||
|
@ -852,7 +852,7 @@ class ProxiedFS extends FakeFS {
|
|||
readFileSync(p, encoding) {
|
||||
return this.baseFs.readFileSync(this.fsMapToBase(p), encoding);
|
||||
}
|
||||
async readdirPromise(p, opts) {
|
||||
readdirPromise(p, opts) {
|
||||
return this.baseFs.readdirPromise(this.mapToBase(p), opts);
|
||||
}
|
||||
readdirSync(p, opts) {
|
||||
|
@ -902,6 +902,12 @@ class ProxiedFS extends FakeFS {
|
|||
}
|
||||
}
|
||||
|
||||
function direntToPortable(dirent) {
|
||||
const portableDirent = dirent;
|
||||
if (typeof dirent.path === `string`)
|
||||
portableDirent.path = npath.toPortablePath(dirent.path);
|
||||
return portableDirent;
|
||||
}
|
||||
class NodeFS extends BasePortableFakeFS {
|
||||
constructor(realFs = fs) {
|
||||
super();
|
||||
|
@ -932,12 +938,24 @@ class NodeFS extends BasePortableFakeFS {
|
|||
this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject));
|
||||
}
|
||||
}).then((dir) => {
|
||||
return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true });
|
||||
const dirWithFixedPath = dir;
|
||||
Object.defineProperty(dirWithFixedPath, `path`, {
|
||||
value: p,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
return dirWithFixedPath;
|
||||
});
|
||||
}
|
||||
opendirSync(p, opts) {
|
||||
const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p));
|
||||
return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true });
|
||||
const dirWithFixedPath = dir;
|
||||
Object.defineProperty(dirWithFixedPath, `path`, {
|
||||
value: p,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
return dirWithFixedPath;
|
||||
}
|
||||
async readPromise(fd, buffer, offset = 0, length = 0, position = -1) {
|
||||
return await new Promise((resolve, reject) => {
|
||||
|
@ -1215,16 +1233,32 @@ class NodeFS extends BasePortableFakeFS {
|
|||
}
|
||||
async readdirPromise(p, opts) {
|
||||
return await new Promise((resolve, reject) => {
|
||||
if (opts == null ? void 0 : opts.withFileTypes) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), { withFileTypes: true }, this.makeCallback(resolve, reject));
|
||||
if (opts) {
|
||||
if (opts.recursive && process.platform === `win32`) {
|
||||
if (opts.withFileTypes) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject));
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject));
|
||||
}
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject));
|
||||
}
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject));
|
||||
this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject));
|
||||
}
|
||||
});
|
||||
}
|
||||
readdirSync(p, opts) {
|
||||
if (opts == null ? void 0 : opts.withFileTypes) {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), { withFileTypes: true });
|
||||
if (opts) {
|
||||
if (opts.recursive && process.platform === `win32`) {
|
||||
if (opts.withFileTypes) {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable);
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath);
|
||||
}
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts);
|
||||
}
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p));
|
||||
}
|
||||
|
@ -1359,14 +1393,9 @@ class VirtualFS extends ProxiedFS {
|
|||
}
|
||||
|
||||
const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10));
|
||||
const HAS_CONSOLIDATED_HOOKS = major > 16 || major === 16 && minor >= 12;
|
||||
const HAS_UNFLAGGED_JSON_MODULES = major > 17 || major === 17 && minor >= 5 || major === 16 && minor >= 15;
|
||||
const HAS_JSON_IMPORT_ASSERTION_REQUIREMENT = major > 17 || major === 17 && minor >= 1 || major === 16 && minor > 14;
|
||||
const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13;
|
||||
const HAS_LAZY_LOADED_TRANSLATORS = major > 19 || major === 19 && minor >= 3;
|
||||
const HAS_LAZY_LOADED_TRANSLATORS = major === 20 && minor < 6 || major === 19 && minor >= 3;
|
||||
|
||||
const builtinModules = new Set(Module.builtinModules || Object.keys(process.binding(`natives`)));
|
||||
const isBuiltinModule = (request) => request.startsWith(`node:`) || builtinModules.has(request);
|
||||
function readPackageScope(checkPath) {
|
||||
const rootSeparatorIndex = checkPath.indexOf(npath.sep);
|
||||
let separatorIndex;
|
||||
|
@ -1427,11 +1456,7 @@ function getFileFormat(filepath) {
|
|||
);
|
||||
}
|
||||
case `.json`: {
|
||||
if (HAS_UNFLAGGED_JSON_MODULES)
|
||||
return `json`;
|
||||
throw new Error(
|
||||
`Unknown file extension ".json" for ${filepath}`
|
||||
);
|
||||
return `json`;
|
||||
}
|
||||
case `.js`: {
|
||||
const pkg = readPackageScope(filepath);
|
||||
|
@ -1452,38 +1477,15 @@ function getFileFormat(filepath) {
|
|||
}
|
||||
}
|
||||
|
||||
async function getFormat$1(resolved, context, defaultGetFormat) {
|
||||
const url = tryParseURL(resolved);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
return defaultGetFormat(resolved, context, defaultGetFormat);
|
||||
const format = getFileFormat(fileURLToPath(url));
|
||||
if (format) {
|
||||
return {
|
||||
format
|
||||
};
|
||||
}
|
||||
return defaultGetFormat(resolved, context, defaultGetFormat);
|
||||
}
|
||||
|
||||
async function getSource$1(urlString, context, defaultGetSource) {
|
||||
const url = tryParseURL(urlString);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
return defaultGetSource(urlString, context, defaultGetSource);
|
||||
return {
|
||||
source: await fs.promises.readFile(fileURLToPath(url), `utf8`)
|
||||
};
|
||||
}
|
||||
|
||||
async function load$1(urlString, context, nextLoad) {
|
||||
var _a;
|
||||
const url = tryParseURL(urlString);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
if (url?.protocol !== `file:`)
|
||||
return nextLoad(urlString, context, nextLoad);
|
||||
const filePath = fileURLToPath(url);
|
||||
const format = getFileFormat(filePath);
|
||||
if (!format)
|
||||
return nextLoad(urlString, context, nextLoad);
|
||||
if (HAS_JSON_IMPORT_ASSERTION_REQUIREMENT && format === `json` && ((_a = context.importAssertions) == null ? void 0 : _a.type) !== `json`) {
|
||||
if (format === `json` && context.importAssertions?.type !== `json`) {
|
||||
const err = new TypeError(`[ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module "${urlString}" needs an import assertion of type "json"`);
|
||||
err.code = `ERR_IMPORT_ASSERTION_TYPE_MISSING`;
|
||||
throw err;
|
||||
|
@ -1500,7 +1502,7 @@ async function load$1(urlString, context, nextLoad) {
|
|||
}
|
||||
return {
|
||||
format,
|
||||
source: await fs.promises.readFile(filePath, `utf8`),
|
||||
source: format === `commonjs` ? void 0 : await fs.promises.readFile(filePath, `utf8`),
|
||||
shortCircuit: true
|
||||
};
|
||||
}
|
||||
|
@ -1981,7 +1983,7 @@ async function resolvePrivateRequest(specifier, issuer, context, nextResolve) {
|
|||
}
|
||||
async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
const { findPnpApi } = moduleExports;
|
||||
if (!findPnpApi || isBuiltinModule(originalSpecifier))
|
||||
if (!findPnpApi || isBuiltin(originalSpecifier))
|
||||
return nextResolve(originalSpecifier, context, nextResolve);
|
||||
let specifier = originalSpecifier;
|
||||
const url = tryParseURL(specifier, isRelativeRegexp.test(specifier) ? context.parentURL : void 0);
|
||||
|
@ -1991,7 +1993,7 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
|||
specifier = fileURLToPath(url);
|
||||
}
|
||||
const { parentURL, conditions = [] } = context;
|
||||
const issuer = parentURL ? fileURLToPath(parentURL) : process.cwd();
|
||||
const issuer = parentURL && tryParseURL(parentURL)?.protocol === `file:` ? fileURLToPath(parentURL) : process.cwd();
|
||||
const pnpapi = findPnpApi(issuer) ?? (url ? findPnpApi(specifier) : null);
|
||||
if (!pnpapi)
|
||||
return nextResolve(originalSpecifier, context, nextResolve);
|
||||
|
@ -2040,36 +2042,49 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
|||
|
||||
if (!HAS_LAZY_LOADED_TRANSLATORS) {
|
||||
const binding = process.binding(`fs`);
|
||||
const originalfstat = binding.fstat;
|
||||
const ZIP_MASK = 4278190080;
|
||||
const ZIP_MAGIC = 704643072;
|
||||
binding.fstat = function(...args) {
|
||||
const [fd, useBigint, req] = args;
|
||||
if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) {
|
||||
const originalReadFile = binding.readFileUtf8 || binding.readFileSync;
|
||||
if (originalReadFile) {
|
||||
binding[originalReadFile.name] = function(...args) {
|
||||
try {
|
||||
const stats = fs.fstatSync(fd);
|
||||
return new Float64Array([
|
||||
stats.dev,
|
||||
stats.mode,
|
||||
stats.nlink,
|
||||
stats.uid,
|
||||
stats.gid,
|
||||
stats.rdev,
|
||||
stats.blksize,
|
||||
stats.ino,
|
||||
stats.size,
|
||||
stats.blocks
|
||||
]);
|
||||
return fs.readFileSync(args[0], {
|
||||
encoding: `utf8`,
|
||||
flag: args[1]
|
||||
});
|
||||
} catch {
|
||||
}
|
||||
}
|
||||
return originalfstat.apply(this, args);
|
||||
};
|
||||
return originalReadFile.apply(this, args);
|
||||
};
|
||||
} else {
|
||||
const binding2 = process.binding(`fs`);
|
||||
const originalfstat = binding2.fstat;
|
||||
const ZIP_MASK = 4278190080;
|
||||
const ZIP_MAGIC = 704643072;
|
||||
binding2.fstat = function(...args) {
|
||||
const [fd, useBigint, req] = args;
|
||||
if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) {
|
||||
try {
|
||||
const stats = fs.fstatSync(fd);
|
||||
return new Float64Array([
|
||||
stats.dev,
|
||||
stats.mode,
|
||||
stats.nlink,
|
||||
stats.uid,
|
||||
stats.gid,
|
||||
stats.rdev,
|
||||
stats.blksize,
|
||||
stats.ino,
|
||||
stats.size,
|
||||
stats.blocks
|
||||
]);
|
||||
} catch {
|
||||
}
|
||||
}
|
||||
return originalfstat.apply(this, args);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
const resolve = resolve$1;
|
||||
const getFormat = HAS_CONSOLIDATED_HOOKS ? void 0 : getFormat$1;
|
||||
const getSource = HAS_CONSOLIDATED_HOOKS ? void 0 : getSource$1;
|
||||
const load = HAS_CONSOLIDATED_HOOKS ? load$1 : void 0;
|
||||
const load = load$1;
|
||||
|
||||
export { getFormat, getSource, load, resolve };
|
||||
export { load, resolve };
|
||||
|
|
Binary file not shown.
BIN
.yarn/cache/@ampproject-remapping-npm-2.2.1-3da3d624be-e15fecbf3b.zip
vendored
Normal file
BIN
.yarn/cache/@ampproject-remapping-npm-2.2.1-3da3d624be-e15fecbf3b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-crc32-npm-3.0.0-10d83e85b0-672d593fd9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-crc32-npm-3.0.0-10d83e85b0-672d593fd9.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-crc32c-npm-3.0.0-79c813b90d-3e604ad7a8.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-crc32c-npm-3.0.0-79c813b90d-3e604ad7a8.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-ie11-detection-npm-3.0.0-71f24dcf6a-f5aee4a11a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-ie11-detection-npm-3.0.0-71f24dcf6a-f5aee4a11a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha1-browser-npm-3.0.0-f8218a7691-8c30fa1e42.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha1-browser-npm-3.0.0-f8218a7691-8c30fa1e42.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha256-browser-npm-3.0.0-467f48a447-4e075906c4.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha256-browser-npm-3.0.0-467f48a447-4e075906c4.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha256-js-npm-3.0.0-2ba1013fd6-f9fc2d5163.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha256-js-npm-3.0.0-2ba1013fd6-f9fc2d5163.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-supports-web-crypto-npm-3.0.0-55222d294a-8a48788d28.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-supports-web-crypto-npm-3.0.0-55222d294a-8a48788d28.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-util-npm-3.0.0-6c4b38c78e-92c835b83d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-util-npm-3.0.0-6c4b38c78e-92c835b83d.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-apigatewaymanagementapi-npm-3.484.0-93b1df90f3-98de54d618.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-apigatewaymanagementapi-npm-3.484.0-93b1df90f3-98de54d618.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-cloudwatch-npm-3.485.0-afe4ac001f-0e02739ef1.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-cloudwatch-npm-3.485.0-afe4ac001f-0e02739ef1.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-s3-npm-3.484.0-681638ab7a-701523f3b3.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-s3-npm-3.484.0-681638ab7a-701523f3b3.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.484.0-9b2324ab20-22085f4087.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.484.0-9b2324ab20-22085f4087.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.490.0-2cd839225d-4d8875521c.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.490.0-2cd839225d-4d8875521c.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.462.0-b5a0620ba3-2d09272c5e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.462.0-b5a0620ba3-2d09272c5e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.484.0-33759d74cc-1fe91d60c4.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.484.0-33759d74cc-1fe91d60c4.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.460.0-105b35ffb2-88506ab10d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.460.0-105b35ffb2-88506ab10d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.484.0-f5e5a564ba-2a63f49f74.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.484.0-f5e5a564ba-2a63f49f74.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.485.0-5f6733bd23-635de0e310.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.485.0-5f6733bd23-635de0e310.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.490.0-26ec4a8978-785147e3c2.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.490.0-26ec4a8978-785147e3c2.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.462.0-ae696980b2-066fe4913a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.462.0-ae696980b2-066fe4913a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.484.0-5ea7bc6077-3d81f5b9cc.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.484.0-5ea7bc6077-3d81f5b9cc.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.485.0-cc69ab3505-98c7f4d722.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.485.0-cc69ab3505-98c7f4d722.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.490.0-f3cd7f7c70-19d1b98694.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.490.0-f3cd7f7c70-19d1b98694.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-core-npm-3.451.0-cf30d69a73-6f1fd70ef3.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-core-npm-3.451.0-cf30d69a73-6f1fd70ef3.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-core-npm-3.481.0-26466cae44-0bc324627f.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-core-npm-3.481.0-26466cae44-0bc324627f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-core-npm-3.485.0-77ed30ee18-b84dafb213.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-core-npm-3.485.0-77ed30ee18-b84dafb213.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-core-npm-3.490.0-3725a806be-3e81f37825.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-core-npm-3.490.0-3725a806be-3e81f37825.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.460.0-9195fdd390-b2a2e84046.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.460.0-9195fdd390-b2a2e84046.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.468.0-c10d791ad8-5e8fe5c7a9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.468.0-c10d791ad8-5e8fe5c7a9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.485.0-0fda7f74e0-b8346ea6f5.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.485.0-0fda7f74e0-b8346ea6f5.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.489.0-e86b20f5e4-95ab96ee49.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.489.0-e86b20f5e4-95ab96ee49.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.460.0-0801b5a18f-7ab592ef92.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.460.0-0801b5a18f-7ab592ef92.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.484.0-1ac0286a6e-0c5440bc8f.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.484.0-1ac0286a6e-0c5440bc8f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.485.0-bec3aaa989-3176b03ee1.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.485.0-bec3aaa989-3176b03ee1.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.490.0-51f9d0faff-4e4cd2633a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.490.0-51f9d0faff-4e4cd2633a.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.460.0-f11139cc8a-9e8ef3c25a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.460.0-f11139cc8a-9e8ef3c25a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.484.0-34d535702b-cdbe0b61b8.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.484.0-34d535702b-cdbe0b61b8.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.485.0-9f40e4a3cf-d31e5a95ea.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.485.0-9f40e4a3cf-d31e5a95ea.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.490.0-3cbe0ec5e6-2f8141c3e1.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.490.0-3cbe0ec5e6-2f8141c3e1.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.460.0-ed3352d712-962a4e3b04.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.460.0-ed3352d712-962a4e3b04.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.468.0-b7b56db295-7a345716ac.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.468.0-b7b56db295-7a345716ac.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.485.0-62d3460338-e740fb949e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.485.0-62d3460338-e740fb949e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.489.0-9370bfd061-42f4f5f21d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.489.0-9370bfd061-42f4f5f21d.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.460.0-0ac01b44fc-5882906132.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.460.0-0ac01b44fc-5882906132.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.484.0-716e7ba5ab-e6b1a40862.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.484.0-716e7ba5ab-e6b1a40862.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.485.0-42db25db09-7269315797.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.485.0-42db25db09-7269315797.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.490.0-9acb6828c0-ef2eff8fbc.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.490.0-9acb6828c0-ef2eff8fbc.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.460.0-48e9cb2a6d-138b22389a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.460.0-48e9cb2a6d-138b22389a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.468.0-27b7ef7b56-a5fac59563.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.468.0-27b7ef7b56-a5fac59563.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.485.0-420b04bcce-33125ce0b7.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.485.0-420b04bcce-33125ce0b7.zip
vendored
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue