mirror of
https://github.com/oven-sh/bun
synced 2026-02-03 07:28:53 +00:00
Compare commits
6037 Commits
bun-build-
...
debugger-d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7c9352392d | ||
|
|
fef9853d5a | ||
|
|
7dae496847 | ||
|
|
92b060c6e2 | ||
|
|
2a64e8b3bb | ||
|
|
fde3b7fbb6 | ||
|
|
c16e769383 | ||
|
|
5badc728d0 | ||
|
|
c4b3b321c2 | ||
|
|
cf599e77d9 | ||
|
|
b727689a9b | ||
|
|
4a36470588 | ||
|
|
ca08cf6b0a | ||
|
|
10bd0fac3a | ||
|
|
c4e31551f3 | ||
|
|
52d11ce845 | ||
|
|
7d8b6d487b | ||
|
|
583c6d3644 | ||
|
|
aabb0b77ce | ||
|
|
59d7c47e3f | ||
|
|
21bc3a9c39 | ||
|
|
cfd73cec81 | ||
|
|
3e437a6ae0 | ||
|
|
d8e7436db0 | ||
|
|
f798a0cfe8 | ||
|
|
51846d0277 | ||
|
|
c4f237572d | ||
|
|
e20e695775 | ||
|
|
132ab63a32 | ||
|
|
bfd315fc72 | ||
|
|
72c2123e07 | ||
|
|
1f7d62bfd5 | ||
|
|
4d1c900cac | ||
|
|
97c522517c | ||
|
|
4c6245b2e5 | ||
|
|
b21a58e564 | ||
|
|
4df1d37ddc | ||
|
|
03ffd1c732 | ||
|
|
3e84f18cc0 | ||
|
|
42606d6aed | ||
|
|
c366b62160 | ||
|
|
42d8b7183c | ||
|
|
f9809f0044 | ||
|
|
4378ef8e97 | ||
|
|
2c1694f63b | ||
|
|
ae277a0dec | ||
|
|
473b219a37 | ||
|
|
be1833898e | ||
|
|
a64da8f0cb | ||
|
|
689434e012 | ||
|
|
a73a4d1e0b | ||
|
|
457f325773 | ||
|
|
5f80681295 | ||
|
|
fdcfcce9e7 | ||
|
|
1ca70b855c | ||
|
|
e632941c52 | ||
|
|
176fade220 | ||
|
|
110d0752f3 | ||
|
|
e24d579a32 | ||
|
|
a7c7128cd7 | ||
|
|
4c01454376 | ||
|
|
611f1d0e24 | ||
|
|
52c6609792 | ||
|
|
7057cb1982 | ||
|
|
68c1568075 | ||
|
|
4b34a7ce2a | ||
|
|
b284e09ce5 | ||
|
|
8f55f05871 | ||
|
|
58fcb60831 | ||
|
|
557aac6a34 | ||
|
|
0aab11a95d | ||
|
|
7376ae6980 | ||
|
|
148c6e7551 | ||
|
|
b0c38a3c15 | ||
|
|
756e15f6e2 | ||
|
|
10be26f011 | ||
|
|
12a0e2bfdd | ||
|
|
481f916f3f | ||
|
|
85565d95d5 | ||
|
|
fdbf8a5184 | ||
|
|
8e911d38c4 | ||
|
|
052df7d48c | ||
|
|
5990a9528f | ||
|
|
aa6801d5df | ||
|
|
d0185925ff | ||
|
|
9b6913e1a6 | ||
|
|
e2de1f5c13 | ||
|
|
2b04ef4fae | ||
|
|
8dfd3dbdbc | ||
|
|
63e2d78e76 | ||
|
|
1388ec0d60 | ||
|
|
4ba3ed512a | ||
|
|
f870f97a94 | ||
|
|
7094997eec | ||
|
|
79907fe84c | ||
|
|
1a30b4fe29 | ||
|
|
4298f36fc9 | ||
|
|
3a0735e164 | ||
|
|
42125b4351 | ||
|
|
0f2a79b9c1 | ||
|
|
62f05ec103 | ||
|
|
1f7ad0cc37 | ||
|
|
4c566f56c1 | ||
|
|
b395836080 | ||
|
|
801881dd7d | ||
|
|
7b4bba787d | ||
|
|
e95f9c6daa | ||
|
|
50bad43dbe | ||
|
|
48997eaeba | ||
|
|
f02561530f | ||
|
|
88d9bac5ec | ||
|
|
63740a382b | ||
|
|
ed1f62ffff | ||
|
|
4972934189 | ||
|
|
d73bce058a | ||
|
|
10c018df8e | ||
|
|
29969bc130 | ||
|
|
1ea74238cd | ||
|
|
3361814cab | ||
|
|
cc84c689ea | ||
|
|
b3d5f37598 | ||
|
|
31c967206a | ||
|
|
c3d402ce47 | ||
|
|
d9bdfcf131 | ||
|
|
6074d4e378 | ||
|
|
57d341f390 | ||
|
|
bf759b62c6 | ||
|
|
5b0fea7093 | ||
|
|
21002ed405 | ||
|
|
2a669a657a | ||
|
|
f71eb39b14 | ||
|
|
de185bdc05 | ||
|
|
1e3476ee08 | ||
|
|
5b38c55c3d | ||
|
|
83e7b9e198 | ||
|
|
879fd45ea2 | ||
|
|
e5501551f4 | ||
|
|
e57dcdfcf1 | ||
|
|
5cfa5edd63 | ||
|
|
fc40c690ea | ||
|
|
23d42dc237 | ||
|
|
e869fc092f | ||
|
|
2a6a5cf6d9 | ||
|
|
eebf44c709 | ||
|
|
05e98ed5d1 | ||
|
|
b71fa2b6d7 | ||
|
|
82e762fe2f | ||
|
|
a5acf7bfa0 | ||
|
|
3de350b24d | ||
|
|
2e54601a2d | ||
|
|
1f0dfacc0d | ||
|
|
7e17a91a1c | ||
|
|
3cbb1a429c | ||
|
|
8b3952baf9 | ||
|
|
24e0c269d2 | ||
|
|
9f935c4683 | ||
|
|
3c57911b59 | ||
|
|
1a2a52b3f3 | ||
|
|
fd21243efd | ||
|
|
d90f7c7bf6 | ||
|
|
91c9bd9dcc | ||
|
|
7d682c0fe7 | ||
|
|
b6007a860e | ||
|
|
eb3765ef93 | ||
|
|
b33f20d51b | ||
|
|
1e307e7690 | ||
|
|
6e6d34eca7 | ||
|
|
9834cba762 | ||
|
|
3870f674f9 | ||
|
|
12b34c6258 | ||
|
|
34af34db9f | ||
|
|
a29ee9f9a2 | ||
|
|
7ad1fc4f8f | ||
|
|
40ee435a4b | ||
|
|
ae8fc25b58 | ||
|
|
ef9555b9e1 | ||
|
|
3c2ac63d6e | ||
|
|
fdd5d49fe3 | ||
|
|
b27f4ceb9c | ||
|
|
1888c2df22 | ||
|
|
08043c5274 | ||
|
|
40de6d8cda | ||
|
|
d5c9e5ee79 | ||
|
|
def8824bc2 | ||
|
|
5a38c4bc0a | ||
|
|
7a91d40a24 | ||
|
|
b16ddd95d9 | ||
|
|
76e92abc7e | ||
|
|
db062a7c30 | ||
|
|
5959418605 | ||
|
|
ee40d9c3b4 | ||
|
|
cd28c2cd2b | ||
|
|
50bb4749af | ||
|
|
ff4df6b600 | ||
|
|
0e97f91f9f | ||
|
|
367f3a9c81 | ||
|
|
89e87a9050 | ||
|
|
7cf674a253 | ||
|
|
e453b0e7c1 | ||
|
|
1973975ce0 | ||
|
|
4db3d793cf | ||
|
|
0b6a32269f | ||
|
|
a3841a7de9 | ||
|
|
386ac374d5 | ||
|
|
9306103949 | ||
|
|
12d841a3f5 | ||
|
|
deeccb0dc4 | ||
|
|
aa34529b5b | ||
|
|
4101eeabde | ||
|
|
0036c3d8f5 | ||
|
|
bf0f5c9b3d | ||
|
|
9b28d2009d | ||
|
|
f910d791f9 | ||
|
|
d6223c7f73 | ||
|
|
c3233f1b21 | ||
|
|
a3e53b025e | ||
|
|
f862ae4050 | ||
|
|
958f5f8b99 | ||
|
|
ac64eb420d | ||
|
|
b76974a2a8 | ||
|
|
5bec0252a0 | ||
|
|
f7f0acbcd3 | ||
|
|
f3a1a3bb2b | ||
|
|
755c0d62c4 | ||
|
|
228ca3269a | ||
|
|
621232c197 | ||
|
|
642b3978a6 | ||
|
|
17c258eb34 | ||
|
|
aacbef3cf9 | ||
|
|
4f7198f780 | ||
|
|
21086c3a78 | ||
|
|
206b85e5db | ||
|
|
25447426f1 | ||
|
|
67f543daa7 | ||
|
|
6c847f638f | ||
|
|
8d90d79587 | ||
|
|
59adc6cb78 | ||
|
|
bff465a2a2 | ||
|
|
fb7fb0a537 | ||
|
|
f1b16cd36a | ||
|
|
84fd6a514a | ||
|
|
bf1216021e | ||
|
|
2f4162e692 | ||
|
|
ad20b13985 | ||
|
|
1ad8c54c90 | ||
|
|
78229da760 | ||
|
|
3adadffc0e | ||
|
|
366eba78f0 | ||
|
|
60bc804c58 | ||
|
|
65237b3054 | ||
|
|
c842f5bfe3 | ||
|
|
fe74c948cd | ||
|
|
9c85483a81 | ||
|
|
29572737ab | ||
|
|
dce4a15e69 | ||
|
|
a52715597a | ||
|
|
b2a750e186 | ||
|
|
dd11f02a45 | ||
|
|
1088a22802 | ||
|
|
9076a981e8 | ||
|
|
8eaf30c022 | ||
|
|
0a879be328 | ||
|
|
ddb6de2fe6 | ||
|
|
8a68f3aa71 | ||
|
|
386eec31ac | ||
|
|
9c19383843 | ||
|
|
47d2e2cb19 | ||
|
|
4d751db27a | ||
|
|
4ec2ed4f6c | ||
|
|
e7e4030299 | ||
|
|
d3a72a1254 | ||
|
|
44417e9d1e | ||
|
|
9acf854f5b | ||
|
|
8cce69e7c2 | ||
|
|
a425376c3d | ||
|
|
c367408233 | ||
|
|
328d09129a | ||
|
|
e096a03e3e | ||
|
|
bf9e40d5b4 | ||
|
|
2a66229b0f | ||
|
|
688637d835 | ||
|
|
893f70fee4 | ||
|
|
7f25aa9e08 | ||
|
|
f48f48795b | ||
|
|
8f3b648602 | ||
|
|
5f897589fc | ||
|
|
4d5d0d075a | ||
|
|
c815716899 | ||
|
|
6f0f506e95 | ||
|
|
da10cd6010 | ||
|
|
a46d3162ae | ||
|
|
02a8f99629 | ||
|
|
20f1057a7d | ||
|
|
f6bbfb16fd | ||
|
|
b5c70814e5 | ||
|
|
8340b98352 | ||
|
|
d2e09ce519 | ||
|
|
1e450dbcab | ||
|
|
231da81528 | ||
|
|
6070e135e9 | ||
|
|
f8c840aec7 | ||
|
|
273ccbc241 | ||
|
|
3f01e2a519 | ||
|
|
b0908b7b13 | ||
|
|
5b3e18e028 | ||
|
|
155110a03a | ||
|
|
3bb5c45385 | ||
|
|
e785b0872a | ||
|
|
99cce67d61 | ||
|
|
4381204cdb | ||
|
|
0cee7c028a | ||
|
|
bfcc0b8960 | ||
|
|
dfd0f3e252 | ||
|
|
136b50c746 | ||
|
|
5bb42c81e4 | ||
|
|
a008e49a40 | ||
|
|
56b8458c62 | ||
|
|
7141e19a10 | ||
|
|
5c08200b18 | ||
|
|
d67bdb7e9b | ||
|
|
77eb61a1fe | ||
|
|
6a163cf933 | ||
|
|
02cad591f8 | ||
|
|
3530cfac68 | ||
|
|
bc7d0adcf9 | ||
|
|
d032b73b10 | ||
|
|
9c166a1bdf | ||
|
|
e125ed2aa3 | ||
|
|
5ffee9477c | ||
|
|
4b79b37a99 | ||
|
|
f9831e1f6f | ||
|
|
8f4a5903ab | ||
|
|
0e5f0940ee | ||
|
|
9d3a95ed96 | ||
|
|
2abfa84db7 | ||
|
|
53fe8d61e7 | ||
|
|
e1c6adc737 | ||
|
|
5e0eedccb0 | ||
|
|
06a03df9a6 | ||
|
|
ed5dd3fee1 | ||
|
|
96dc0471ff | ||
|
|
85b4be5f71 | ||
|
|
643aa27a03 | ||
|
|
e7d4f5fb16 | ||
|
|
5fd838b9e4 | ||
|
|
5b2c3fe440 | ||
|
|
53a198f2f7 | ||
|
|
982dc0b441 | ||
|
|
1f8c60123d | ||
|
|
4ccca13001 | ||
|
|
1e8b9258b2 | ||
|
|
c7c5dc1438 | ||
|
|
a5b3056c76 | ||
|
|
e8989f9a60 | ||
|
|
4346f6afc0 | ||
|
|
38e72a528d | ||
|
|
eb2510170f | ||
|
|
1d72bbe96c | ||
|
|
a47e2c6021 | ||
|
|
5a18d24a96 | ||
|
|
d1dd7a7ebb | ||
|
|
65eb6db7fa | ||
|
|
ce3c7d2961 | ||
|
|
ff1edca9ee | ||
|
|
ffd48dc7a7 | ||
|
|
b3dc14ef0f | ||
|
|
22b801bb89 | ||
|
|
c35518e6d6 | ||
|
|
232a25b77f | ||
|
|
e74207650b | ||
|
|
aa85d7af92 | ||
|
|
0b52f9210a | ||
|
|
69ea6fd54f | ||
|
|
73b0d8a51c | ||
|
|
b874d0b387 | ||
|
|
5e366872f6 | ||
|
|
1a411e201b | ||
|
|
4a2d89d865 | ||
|
|
e422c849d5 | ||
|
|
c6c21eeba7 | ||
|
|
14597dbcdc | ||
|
|
f9d6a61676 | ||
|
|
3f895085a0 | ||
|
|
81e4203efe | ||
|
|
db44f41dd0 | ||
|
|
56bd410044 | ||
|
|
35685bbc86 | ||
|
|
af1cd23b8c | ||
|
|
d3ae9ac7ce | ||
|
|
1fbfaa5ca1 | ||
|
|
243847f992 | ||
|
|
25eecc3e07 | ||
|
|
0e1b934e27 | ||
|
|
2aa4fba99d | ||
|
|
cf4d13dcc0 | ||
|
|
4708835ae6 | ||
|
|
8975717bc3 | ||
|
|
5327940132 | ||
|
|
54d5f59f09 | ||
|
|
46a0a4d984 | ||
|
|
70e850bf76 | ||
|
|
d4b35d9ae6 | ||
|
|
f523b2187a | ||
|
|
41a59d0d03 | ||
|
|
9c9425bc8c | ||
|
|
01ce690a01 | ||
|
|
1da75791da | ||
|
|
3bc02e48ca | ||
|
|
9d7ecf7909 | ||
|
|
31cb49a026 | ||
|
|
f95a81e05d | ||
|
|
c3d512f27e | ||
|
|
9a09f9f532 | ||
|
|
3a01316707 | ||
|
|
e00017f7b8 | ||
|
|
386639a4c5 | ||
|
|
d9386a68a4 | ||
|
|
945d069290 | ||
|
|
7cb1404511 | ||
|
|
8e4f777d35 | ||
|
|
8b6dd0c7e1 | ||
|
|
c43c1b50ff | ||
|
|
1574ac7896 | ||
|
|
a66137bdce | ||
|
|
b2abf82494 | ||
|
|
d68786909c | ||
|
|
1183dd1a3f | ||
|
|
8e18229d5d | ||
|
|
243dfc177a | ||
|
|
f114e88bee | ||
|
|
2d0eaf9842 | ||
|
|
101f0ee6ba | ||
|
|
9b5caf7467 | ||
|
|
b2a50671ab | ||
|
|
ca776326cf | ||
|
|
1346293619 | ||
|
|
bc4a8bf595 | ||
|
|
2bc449656e | ||
|
|
6a74651eb4 | ||
|
|
755874a9ea | ||
|
|
082bc62589 | ||
|
|
2250f7a0c0 | ||
|
|
fe52627dea | ||
|
|
6bdc158e9c | ||
|
|
7a699c1ac2 | ||
|
|
c5df4e9477 | ||
|
|
b3c7d0ea23 | ||
|
|
1af4e1dce1 | ||
|
|
5d8027cd5a | ||
|
|
69b767fadc | ||
|
|
44fbd7719e | ||
|
|
0b2422b1f3 | ||
|
|
331a3cec8c | ||
|
|
c2a223802b | ||
|
|
c19c522744 | ||
|
|
1fc8639177 | ||
|
|
fe57932dfb | ||
|
|
59b3556fab | ||
|
|
8b53b3ed88 | ||
|
|
c0a1c76edb | ||
|
|
f26fef1010 | ||
|
|
f8b0730231 | ||
|
|
fe14b7244d | ||
|
|
0490bd3d2e | ||
|
|
137dc6e19f | ||
|
|
c05a6744bb | ||
|
|
f54fbaf3ba | ||
|
|
dd03a4f95d | ||
|
|
4be3548829 | ||
|
|
c3dc64d468 | ||
|
|
bd1f9d8370 | ||
|
|
0cb090f118 | ||
|
|
5fb014876b | ||
|
|
e7ff65ce2c | ||
|
|
e321e1c5f8 | ||
|
|
737822b2ba | ||
|
|
9a929ff873 | ||
|
|
3b6fb37497 | ||
|
|
229f5f7770 | ||
|
|
96e113f41c | ||
|
|
bc0c0f7d20 | ||
|
|
98583972df | ||
|
|
994c715700 | ||
|
|
e3a0c4e06d | ||
|
|
bc43d33be9 | ||
|
|
73d499ed22 | ||
|
|
912ae8d2b5 | ||
|
|
26d81fc5ba | ||
|
|
396416a91f | ||
|
|
4515a6373e | ||
|
|
c383638ddd | ||
|
|
af02b75f79 | ||
|
|
a06e90eec3 | ||
|
|
35d470d98a | ||
|
|
05abe8eabe | ||
|
|
48671b77be | ||
|
|
b7c13f2ccc | ||
|
|
64b9967fe6 | ||
|
|
ef894c57cf | ||
|
|
5734889cc7 | ||
|
|
59daabb6e7 | ||
|
|
36df170348 | ||
|
|
6cf4cabab1 | ||
|
|
1483d73c3a | ||
|
|
52c50e3737 | ||
|
|
3ee22065f0 | ||
|
|
0060e49923 | ||
|
|
87921520e4 | ||
|
|
73467a5736 | ||
|
|
5a8a418ef4 | ||
|
|
df59fe2843 | ||
|
|
990f53f986 | ||
|
|
9383333799 | ||
|
|
4558ea712a | ||
|
|
f1c1f556a3 | ||
|
|
6142f6eb61 | ||
|
|
316a75005b | ||
|
|
5b76ee769e | ||
|
|
3a203abc10 | ||
|
|
75e3546f3a | ||
|
|
6c6118e210 | ||
|
|
55c05c0a1f | ||
|
|
7d7748f69f | ||
|
|
8ba13f273c | ||
|
|
68ab71eb13 | ||
|
|
ab447e4ff7 | ||
|
|
149f097ffd | ||
|
|
3e374c0ee4 | ||
|
|
f42663ce9a | ||
|
|
c48f7e2663 | ||
|
|
0846a4fa80 | ||
|
|
2256d43a32 | ||
|
|
947634c9ed | ||
|
|
126885e1fe | ||
|
|
5353d41014 | ||
|
|
460563ee89 | ||
|
|
3c4f0920b9 | ||
|
|
6e16bb67eb | ||
|
|
e9e7645048 | ||
|
|
f2112fc0de | ||
|
|
923ac39c0b | ||
|
|
98209b8e10 | ||
|
|
4b24bb464c | ||
|
|
7d6b5f5358 | ||
|
|
9423693a6e | ||
|
|
8b9462fde5 | ||
|
|
caa90ba98e | ||
|
|
55d50565a5 | ||
|
|
dc55e11714 | ||
|
|
613bb4822e | ||
|
|
a4d0a1961a | ||
|
|
143ccdbeb6 | ||
|
|
b98f90fc6e | ||
|
|
281b810664 | ||
|
|
ffdac249ae | ||
|
|
541d16f8be | ||
|
|
b609f9be28 | ||
|
|
b473a0022d | ||
|
|
94cd68d7a6 | ||
|
|
6d5378566a | ||
|
|
c33df9e99f | ||
|
|
4dc0364201 | ||
|
|
aa4d47fe2d | ||
|
|
3a68ca775f | ||
|
|
d78ecc76c8 | ||
|
|
9e7bfdec8c | ||
|
|
f0dd5b8a43 | ||
|
|
ea47ed0ee5 | ||
|
|
36f9fd607a | ||
|
|
96a2ed1040 | ||
|
|
76deb51c29 | ||
|
|
5712fbd5b9 | ||
|
|
b5b4356d52 | ||
|
|
d1de291b2a | ||
|
|
af96e8fcdd | ||
|
|
9e1745ee1f | ||
|
|
05cb5bb659 | ||
|
|
dec5b07782 | ||
|
|
b758779c49 | ||
|
|
3a63fe457d | ||
|
|
a17624942e | ||
|
|
1ce60275d0 | ||
|
|
93a43c8fc1 | ||
|
|
bffe5e820b | ||
|
|
983d9428a6 | ||
|
|
fc539c278e | ||
|
|
d19005aa76 | ||
|
|
d2c64300f6 | ||
|
|
4cb739a8c5 | ||
|
|
01a03bcce4 | ||
|
|
6b758c809f | ||
|
|
746940d21e | ||
|
|
07b4b4ced0 | ||
|
|
e624dd6d4d | ||
|
|
ed2f24e409 | ||
|
|
c650b0b848 | ||
|
|
0514f59288 | ||
|
|
5a8cfd8390 | ||
|
|
a2d5e7c570 | ||
|
|
af0a4c5638 | ||
|
|
eec1a07907 | ||
|
|
30b0d006fe | ||
|
|
413ce0c7a5 | ||
|
|
c916a55ead | ||
|
|
31319c0177 | ||
|
|
255a805e00 | ||
|
|
eff48cd95c | ||
|
|
338565eea4 | ||
|
|
264f3b91b6 | ||
|
|
06dab241ef | ||
|
|
29cacb7da7 | ||
|
|
e05cc8db90 | ||
|
|
09357f55f9 | ||
|
|
33049fa6fd | ||
|
|
be5d21a4f1 | ||
|
|
2dc3f4e030 | ||
|
|
1a7c3cdf3b | ||
|
|
f1f7369897 | ||
|
|
4b3c483cd4 | ||
|
|
df88b998d6 | ||
|
|
b687c3ab88 | ||
|
|
d4436f278c | ||
|
|
530f5ef82c | ||
|
|
9e5efe61a3 | ||
|
|
82b2c5221b | ||
|
|
e977bfb5a7 | ||
|
|
81e11ae586 | ||
|
|
0d248568f6 | ||
|
|
96d522a7db | ||
|
|
b4989a316b | ||
|
|
8b897e1a6b | ||
|
|
730074b75d | ||
|
|
f6a4516d66 | ||
|
|
6c69c2b364 | ||
|
|
ba057e50c3 | ||
|
|
1e6dcef0c5 | ||
|
|
889462a891 | ||
|
|
3a2fd65f20 | ||
|
|
267a38f6fc | ||
|
|
011e157cac | ||
|
|
0cc56e8efc | ||
|
|
54ef58db48 | ||
|
|
476ab24081 | ||
|
|
8a2545a172 | ||
|
|
e9016415bc | ||
|
|
242aa0be12 | ||
|
|
041231d7ca | ||
|
|
bee743fd61 | ||
|
|
d7a8037899 | ||
|
|
d226a054ae | ||
|
|
aeb3bb949b | ||
|
|
db15a23a63 | ||
|
|
1cc4eb0e3f | ||
|
|
a03ee18262 | ||
|
|
108c54134c | ||
|
|
73216b10ce | ||
|
|
ff5c522712 | ||
|
|
14f87156a2 | ||
|
|
d8d4abb58e | ||
|
|
4b9b648f8a | ||
|
|
519f9aac80 | ||
|
|
a744f5369d | ||
|
|
14c6023e15 | ||
|
|
f91dc8c0d3 | ||
|
|
f4ab79d6bb | ||
|
|
373248ce9c | ||
|
|
5c37d0f2a5 | ||
|
|
7bd6a1f86d | ||
|
|
1e717dd941 | ||
|
|
e9d6a4042f | ||
|
|
c97cb4ec1e | ||
|
|
21acc50d88 | ||
|
|
b34f0da499 | ||
|
|
eb18101d84 | ||
|
|
2117723642 | ||
|
|
461ae27d31 | ||
|
|
ba7a8a9cb5 | ||
|
|
c764543af5 | ||
|
|
60fc80d4c4 | ||
|
|
6362414d65 | ||
|
|
c0c5f07218 | ||
|
|
0a91dd9f71 | ||
|
|
bed56ab406 | ||
|
|
4978a6b74d | ||
|
|
35b279a4bb | ||
|
|
c8e09f563f | ||
|
|
6baedd27bc | ||
|
|
5465a3980a | ||
|
|
b6bd7e24d7 | ||
|
|
e4e81bc49e | ||
|
|
b8aca35b76 | ||
|
|
68670eeb7b | ||
|
|
2b170c9d13 | ||
|
|
1d138057cb | ||
|
|
f788519263 | ||
|
|
8a73c2a453 | ||
|
|
21978dabe5 | ||
|
|
aa4c4a9b22 | ||
|
|
569d4940bb | ||
|
|
4af78c7d5a | ||
|
|
cfb1c661d5 | ||
|
|
864302a634 | ||
|
|
b50f3d3f6f | ||
|
|
65d646bc68 | ||
|
|
d8c467be42 | ||
|
|
fd680d6c1d | ||
|
|
f7d0eee0ac | ||
|
|
ac092a1e04 | ||
|
|
fd5bb6b201 | ||
|
|
d8360ab3cf | ||
|
|
a369fc8c89 | ||
|
|
54d6f95f43 | ||
|
|
76adc5be8a | ||
|
|
f3ab445c3f | ||
|
|
ae849528b8 | ||
|
|
6a66fffd39 | ||
|
|
9b0f12883c | ||
|
|
fcd8b82864 | ||
|
|
63d138b046 | ||
|
|
8904398619 | ||
|
|
685e298146 | ||
|
|
74cacffb0c | ||
|
|
977446ef3c | ||
|
|
1fa7c1f79e | ||
|
|
758daa7367 | ||
|
|
95cb2b2ac2 | ||
|
|
b0e0853360 | ||
|
|
f16995910a | ||
|
|
b2f3dbfd43 | ||
|
|
9f07073074 | ||
|
|
546f78a49e | ||
|
|
767fdfbb97 | ||
|
|
f0def8c770 | ||
|
|
786475ff58 | ||
|
|
b76384351c | ||
|
|
0a91490226 | ||
|
|
93585291f9 | ||
|
|
de46ad23e5 | ||
|
|
f455845a0a | ||
|
|
d5418052b1 | ||
|
|
cfceb26edd | ||
|
|
b2d90f07ba | ||
|
|
319efe9c7b | ||
|
|
52d27659a2 | ||
|
|
732c5e7fa9 | ||
|
|
5fd406ca2f | ||
|
|
31c2fea74a | ||
|
|
a5f92224b5 | ||
|
|
2bdaa81b1c | ||
|
|
8b92469d42 | ||
|
|
5915ab19fe | ||
|
|
58a5c2a3aa | ||
|
|
f3a91339fc | ||
|
|
54b62aad05 | ||
|
|
15f23d70d6 | ||
|
|
42eff1d917 | ||
|
|
02e5c5f795 | ||
|
|
2503b3409e | ||
|
|
6539f66642 | ||
|
|
4dd4bab7b9 | ||
|
|
035183eb12 | ||
|
|
aaef99ab68 | ||
|
|
1a25af5e3d | ||
|
|
343721627e | ||
|
|
6e0e140f2f | ||
|
|
0edd8d262d | ||
|
|
76622e41d6 | ||
|
|
7aa297012b | ||
|
|
9443cca1bb | ||
|
|
a83c5c996f | ||
|
|
b053dffca7 | ||
|
|
cb1b881746 | ||
|
|
9679cdb12c | ||
|
|
9ce18245d1 | ||
|
|
5a23d17620 | ||
|
|
8f02ef8294 | ||
|
|
e41e884747 | ||
|
|
1b7423412a | ||
|
|
41c4a66e4a | ||
|
|
7216bfe016 | ||
|
|
1c85e94977 | ||
|
|
25097cd632 | ||
|
|
d9711c64eb | ||
|
|
96fcecdcc9 | ||
|
|
12c4ed89e3 | ||
|
|
f1cfa5dfeb | ||
|
|
dd9ebe9c50 | ||
|
|
a9c41c67e6 | ||
|
|
1d4cc63154 | ||
|
|
c5f2b42649 | ||
|
|
37293cb26a | ||
|
|
57255ad565 | ||
|
|
2dd99a37fd | ||
|
|
baf8787fa4 | ||
|
|
d5ef247b3b | ||
|
|
b66df90b49 | ||
|
|
0befd9ad85 | ||
|
|
79a05d50ad | ||
|
|
9a5f78fa3b | ||
|
|
47865fe82a | ||
|
|
480567a5af | ||
|
|
976ef92473 | ||
|
|
abd34abf08 | ||
|
|
1f811980c3 | ||
|
|
654ba5b671 | ||
|
|
babbfc6404 | ||
|
|
86891a5d12 | ||
|
|
9b321c3b06 | ||
|
|
cb5b08b22e | ||
|
|
a4741f6fe1 | ||
|
|
ac970146b4 | ||
|
|
acd361855a | ||
|
|
b6ec31ba4b | ||
|
|
62acc096f5 | ||
|
|
7baaf2065a | ||
|
|
0f434f9457 | ||
|
|
d0522bb6a7 | ||
|
|
9b066ac6b1 | ||
|
|
7fcbffa19a | ||
|
|
fc11894235 | ||
|
|
4792abdb7f | ||
|
|
76b875e414 | ||
|
|
eb9e3e9aec | ||
|
|
851fd039da | ||
|
|
e1921ff8c5 | ||
|
|
2b5139aa46 | ||
|
|
d1d2d842d5 | ||
|
|
5d89efedec | ||
|
|
80f3bc64ed | ||
|
|
e613b501e2 | ||
|
|
6d50b90070 | ||
|
|
27f5012f50 | ||
|
|
ba994c52b8 | ||
|
|
4c38798142 | ||
|
|
f63c26208a | ||
|
|
ac9f8c0e93 | ||
|
|
8d320d1373 | ||
|
|
21f9fc828f | ||
|
|
8c91278a00 | ||
|
|
d61e90d558 | ||
|
|
a4fdc1e0d5 | ||
|
|
cc7d2cf343 | ||
|
|
d7e067902f | ||
|
|
c5e76f8bfe | ||
|
|
ebb42bb67b | ||
|
|
42edcaae8c | ||
|
|
ab02ab25b1 | ||
|
|
deb7a2b192 | ||
|
|
0fd9b2421e | ||
|
|
f22336b5b5 | ||
|
|
e16053c39e | ||
|
|
e389b6ef19 | ||
|
|
28346e4a39 | ||
|
|
95b59ea0ef | ||
|
|
24e90726fd | ||
|
|
cac4012a7e | ||
|
|
6505e5c3a4 | ||
|
|
9bf4d9b8a2 | ||
|
|
1d2b0bbc98 | ||
|
|
45ddf321b1 | ||
|
|
e84ff1d8b7 | ||
|
|
f7e4eb8369 | ||
|
|
36275a44ce | ||
|
|
68e58605b6 | ||
|
|
0a9cb0e13a | ||
|
|
b211fb1298 | ||
|
|
7f715e15cc | ||
|
|
a512bdad8d | ||
|
|
3e1d368a27 | ||
|
|
993fed51c1 | ||
|
|
d4bd156d9d | ||
|
|
c7bfb3aa3a | ||
|
|
7273713158 | ||
|
|
67422785cc | ||
|
|
42f6b35a5b | ||
|
|
665486dab8 | ||
|
|
a7cdd49244 | ||
|
|
0b4e7179b5 | ||
|
|
c34b92d16b | ||
|
|
339b811b48 | ||
|
|
adf8bae23c | ||
|
|
03997086ea | ||
|
|
cbfe17d95a | ||
|
|
f915abf3be | ||
|
|
c6b0e45a52 | ||
|
|
571ba8ef3f | ||
|
|
9963e1c3d8 | ||
|
|
9e2f6ef1be | ||
|
|
1843a37ebb | ||
|
|
f333a0c243 | ||
|
|
ffdc8a19d1 | ||
|
|
c1c8d6356f | ||
|
|
7a8a887d4b | ||
|
|
5ca4778746 | ||
|
|
28b80e6433 | ||
|
|
dcc46b2862 | ||
|
|
e4bd4d134d | ||
|
|
cfa21dc9d0 | ||
|
|
7dde3d4974 | ||
|
|
5c6cbb0283 | ||
|
|
6a1667a5f4 | ||
|
|
d77bd35556 | ||
|
|
ddb6624ad1 | ||
|
|
0eeac32ef4 | ||
|
|
31447fdc19 | ||
|
|
8e1d2a5af9 | ||
|
|
3626845051 | ||
|
|
d8d23f2594 | ||
|
|
122e6a8860 | ||
|
|
9f132ea241 | ||
|
|
7c367ff687 | ||
|
|
0f8f484e21 | ||
|
|
7e5dddd2fa | ||
|
|
838b37eed0 | ||
|
|
1f10e25bd9 | ||
|
|
18178b4e48 | ||
|
|
3456831b82 | ||
|
|
6a1701fedd | ||
|
|
3318ccfb4a | ||
|
|
9388b3f825 | ||
|
|
b469e50351 | ||
|
|
27c3579118 | ||
|
|
3852a52601 | ||
|
|
1ba007831d | ||
|
|
c0a49e405e | ||
|
|
78762e8305 | ||
|
|
57fcf8f9ba | ||
|
|
c81043bf5e | ||
|
|
156c1d4bec | ||
|
|
20930849ce | ||
|
|
efdf647460 | ||
|
|
167de9091a | ||
|
|
1be834b073 | ||
|
|
b9137dbdc8 | ||
|
|
706a3e8169 | ||
|
|
7c81d97684 | ||
|
|
6bc075e377 | ||
|
|
ba0706939d | ||
|
|
6e512eda0d | ||
|
|
1227a7b995 | ||
|
|
ef56961007 | ||
|
|
ff51a253e2 | ||
|
|
ee6f54180a | ||
|
|
cf8568ccff | ||
|
|
56ca48ece8 | ||
|
|
530cf4caf8 | ||
|
|
9a7333dd5e | ||
|
|
88b5cda109 | ||
|
|
45704a55dc | ||
|
|
714b8d10e0 | ||
|
|
931f23d360 | ||
|
|
1da8045ce4 | ||
|
|
e512be8c18 | ||
|
|
ec20fae57f | ||
|
|
fd19d01583 | ||
|
|
1826abbc65 | ||
|
|
7b9a17f9d7 | ||
|
|
bd91aa8c25 | ||
|
|
31389b4906 | ||
|
|
d93d1013a6 | ||
|
|
12d6db0cad | ||
|
|
ec7929b251 | ||
|
|
590219966e | ||
|
|
0a340d1920 | ||
|
|
56488d54d0 | ||
|
|
ae35f17a99 | ||
|
|
062b5565a7 | ||
|
|
4b62745754 | ||
|
|
0afb1693d3 | ||
|
|
7a4ac03338 | ||
|
|
630d2314b6 | ||
|
|
18cce50390 | ||
|
|
c8be1e9a5d | ||
|
|
f420e81e85 | ||
|
|
5d296f6228 | ||
|
|
16898a23e6 | ||
|
|
a55ca48797 | ||
|
|
94abc87d6e | ||
|
|
f89c4c3a0d | ||
|
|
451ccfd5ef | ||
|
|
2dd484c180 | ||
|
|
58685638e2 | ||
|
|
693be3d1c2 | ||
|
|
8ba65a4f0b | ||
|
|
4149b95543 | ||
|
|
38314c02f2 | ||
|
|
f58728ccc7 | ||
|
|
eb94e5b990 | ||
|
|
d4dfb79b72 | ||
|
|
45f4353453 | ||
|
|
735d48190d | ||
|
|
a819e3b723 | ||
|
|
8e09b1afff | ||
|
|
cf7a09c0d3 | ||
|
|
0d5d3e5dfc | ||
|
|
a931e21f49 | ||
|
|
8f67cf75ee | ||
|
|
0a7309c8f2 | ||
|
|
e6f33d9a52 | ||
|
|
e38cb9aa6a | ||
|
|
9b66e03a9b | ||
|
|
31627530b9 | ||
|
|
ae62825319 | ||
|
|
1e6faa3815 | ||
|
|
40ebc994f9 | ||
|
|
1e1b45b4d9 | ||
|
|
39fa458895 | ||
|
|
a6a0ccf6f0 | ||
|
|
0ecd773081 | ||
|
|
c72c2c2338 | ||
|
|
1836250542 | ||
|
|
1d85b5efa8 | ||
|
|
7455f385ec | ||
|
|
4c4da4aae2 | ||
|
|
3264ca991e | ||
|
|
599f63c204 | ||
|
|
26df7ca892 | ||
|
|
d33a53deb0 | ||
|
|
6d5f0167c5 | ||
|
|
f290b049e8 | ||
|
|
f0e5d54579 | ||
|
|
1c531472c9 | ||
|
|
dc8e845049 | ||
|
|
08308e2287 | ||
|
|
f366231bff | ||
|
|
e887a064fb | ||
|
|
6e4908e517 | ||
|
|
3f04f8d0a6 | ||
|
|
b5bdde28ed | ||
|
|
f54300578b | ||
|
|
5929daeeae | ||
|
|
4122cb0b19 | ||
|
|
e6e4e6b577 | ||
|
|
dc634d3b30 | ||
|
|
2c795e6a3c | ||
|
|
17f1649c87 | ||
|
|
93778a66d8 | ||
|
|
9024125d41 | ||
|
|
e687a1cf0c | ||
|
|
1d592a9489 | ||
|
|
17efd52ba3 | ||
|
|
0cf08c7e7b | ||
|
|
0143eccb27 | ||
|
|
583b29632c | ||
|
|
16ea1753b4 | ||
|
|
24d624b176 | ||
|
|
9c5f02e120 | ||
|
|
2a1558e4d6 | ||
|
|
0911bd3af2 | ||
|
|
9f53a2210c | ||
|
|
575291a301 | ||
|
|
ac3973016f | ||
|
|
9b5ddef598 | ||
|
|
424045835c | ||
|
|
e8c9c644ca | ||
|
|
629be18867 | ||
|
|
9be68ac235 | ||
|
|
ee60a5c55c | ||
|
|
2dc85c4e45 | ||
|
|
88c238dc5c | ||
|
|
12b2ad7363 | ||
|
|
d786dd6c0b | ||
|
|
e21796acf5 | ||
|
|
f6705a73c7 | ||
|
|
8bcf64c881 | ||
|
|
bcb7be4909 | ||
|
|
c006a7f054 | ||
|
|
8aa6ee5332 | ||
|
|
963bb54e87 | ||
|
|
8ff1ff16a5 | ||
|
|
7285b9cf75 | ||
|
|
7416672e93 | ||
|
|
fa10631c2f | ||
|
|
1106c8e2f2 | ||
|
|
20d9483cd0 | ||
|
|
155e3706b1 | ||
|
|
44cdb1ec8e | ||
|
|
d406ca6328 | ||
|
|
e542d9b4ed | ||
|
|
fb313f210a | ||
|
|
c60d7db178 | ||
|
|
d37daeb76a | ||
|
|
79f7d29d03 | ||
|
|
56b75dbac3 | ||
|
|
5007c6b218 | ||
|
|
d95404fd7a | ||
|
|
7762f3fad7 | ||
|
|
e7cd45d0fa | ||
|
|
0e688d62f9 | ||
|
|
ce01a31e94 | ||
|
|
37fafc208f | ||
|
|
88a8aa4797 | ||
|
|
610eb06ddc | ||
|
|
49cd122bda | ||
|
|
1125728097 | ||
|
|
597053ea91 | ||
|
|
1c221d33b0 | ||
|
|
e67b4e73b5 | ||
|
|
95e727162b | ||
|
|
e860e12be5 | ||
|
|
ad0bee532c | ||
|
|
c7d16d2ed5 | ||
|
|
d150a73b9b | ||
|
|
0d7cea69c2 | ||
|
|
c83eaf09b9 | ||
|
|
4320108add | ||
|
|
d91052516e | ||
|
|
c6ee401bf4 | ||
|
|
f19e3d66cb | ||
|
|
e63e3a0ca7 | ||
|
|
5598ea69f2 | ||
|
|
4dc6bf1b09 | ||
|
|
7597e4ad2a | ||
|
|
a80981c966 | ||
|
|
6e1a52691a | ||
|
|
ef75cd4658 | ||
|
|
af3f42e630 | ||
|
|
37186f4b0a | ||
|
|
f310d7414b | ||
|
|
739de2c9cd | ||
|
|
0db8cdf4e9 | ||
|
|
246db4fed0 | ||
|
|
aa0762e466 | ||
|
|
cdbc620104 | ||
|
|
bb2aaa36fb | ||
|
|
f4f88701c5 | ||
|
|
cc214baacf | ||
|
|
83473c60df | ||
|
|
8b4e58f3d2 | ||
|
|
30e82c5df4 | ||
|
|
9eba1e0e3f | ||
|
|
675529bd0c | ||
|
|
5528c0fa47 | ||
|
|
c208c4e319 | ||
|
|
10650cced2 | ||
|
|
8466e60e3a | ||
|
|
b1aac9ff6d | ||
|
|
ed2e0e1617 | ||
|
|
09585c4b24 | ||
|
|
5181aa54e2 | ||
|
|
995880a7ef | ||
|
|
941c6ed814 | ||
|
|
6052a3edbd | ||
|
|
6fd7c1921e | ||
|
|
119120d21c | ||
|
|
4bedd3833d | ||
|
|
2abfa8abd2 | ||
|
|
ad9d4fb0c4 | ||
|
|
523b112945 | ||
|
|
8aa29040e6 | ||
|
|
a2afb252bf | ||
|
|
abb89f489f | ||
|
|
ddec9e0bf6 | ||
|
|
4962bea4fc | ||
|
|
f31330d3e2 | ||
|
|
ee8ccca605 | ||
|
|
6fdbb25f9a | ||
|
|
b8c0554839 | ||
|
|
18807cef03 | ||
|
|
cbc28afd51 | ||
|
|
7886bce8c8 | ||
|
|
7cd26232b1 | ||
|
|
a0b0cd6844 | ||
|
|
52f9c3d05e | ||
|
|
f947987a2c | ||
|
|
30106c4f54 | ||
|
|
34b2d7fe57 | ||
|
|
153834cf5c | ||
|
|
6aea31f4fc | ||
|
|
0fd144993c | ||
|
|
6699fe14e7 | ||
|
|
add7b1101e | ||
|
|
5a19f8434b | ||
|
|
d5f3bb1c74 | ||
|
|
08e33fbd42 | ||
|
|
7ddbbc53b4 | ||
|
|
85611272c6 | ||
|
|
c40912b8dc | ||
|
|
77974f2a6e | ||
|
|
ed72bee373 | ||
|
|
05f3a22cba | ||
|
|
f5df1044d4 | ||
|
|
4329f6ad16 | ||
|
|
fd4668d97c | ||
|
|
8c4ed963ec | ||
|
|
e7f9ce47f4 | ||
|
|
98022bec1e | ||
|
|
397f559e77 | ||
|
|
ca2e708be1 | ||
|
|
8649136845 | ||
|
|
e8fe6dd2f8 | ||
|
|
df126b2f3b | ||
|
|
7d3a2ca382 | ||
|
|
b7c96bfaae | ||
|
|
a2fd20e5c0 | ||
|
|
de613baf81 | ||
|
|
4590e2b83a | ||
|
|
2758e0cab9 | ||
|
|
7d386bf1f1 | ||
|
|
164cd774f7 | ||
|
|
6469649f64 | ||
|
|
06d073003d | ||
|
|
50f1dd61a6 | ||
|
|
c64d7933a1 | ||
|
|
b289b51894 | ||
|
|
17ad8005c7 | ||
|
|
f572305013 | ||
|
|
17b4e5ce08 | ||
|
|
3933ccab3b | ||
|
|
92255d56c8 | ||
|
|
ba076b0a2b | ||
|
|
10600c4abd | ||
|
|
d16dffa2b4 | ||
|
|
65e0d10ee0 | ||
|
|
742368f03a | ||
|
|
242dcea2fe | ||
|
|
198322073d | ||
|
|
b12762af6c | ||
|
|
440a21eb1d | ||
|
|
2bc4858346 | ||
|
|
26d15cf542 | ||
|
|
8361513acf | ||
|
|
19eca76498 | ||
|
|
3c23f9ad57 | ||
|
|
76f3c9c07b | ||
|
|
3a3bf33335 | ||
|
|
69ee87d8e2 | ||
|
|
6d0fff4fab | ||
|
|
f7a93fe294 | ||
|
|
02fc87ea29 | ||
|
|
7f853af6f0 | ||
|
|
04309431bb | ||
|
|
fc712ead2f | ||
|
|
e7f2d34c44 | ||
|
|
0c3e55132c | ||
|
|
c69bbbd24f | ||
|
|
c0bfdebbd9 | ||
|
|
9c27b5d17f | ||
|
|
9973df028b | ||
|
|
a0be199b4f | ||
|
|
73d6c888b9 | ||
|
|
661fca9cde | ||
|
|
b0803298f9 | ||
|
|
6318017f84 | ||
|
|
696d4b6267 | ||
|
|
cc4326cd82 | ||
|
|
c57b37d29f | ||
|
|
b09896f06e | ||
|
|
b7816f3175 | ||
|
|
0dfde6f8c7 | ||
|
|
0788bc1d94 | ||
|
|
28a7f27633 | ||
|
|
b2daf3c982 | ||
|
|
9598868b57 | ||
|
|
79b32f80fa | ||
|
|
4bfdad2981 | ||
|
|
3ddd8b2fa5 | ||
|
|
da598a3f37 | ||
|
|
ad3295668f | ||
|
|
f9fd7e9d08 | ||
|
|
8b8bd6a405 | ||
|
|
aa10799d8a | ||
|
|
ec2c16fefa | ||
|
|
c11bb93552 | ||
|
|
5c30983d5d | ||
|
|
c9ca729493 | ||
|
|
9cd9df698a | ||
|
|
57edf3d91f | ||
|
|
f9b14dc87b | ||
|
|
a9bdc0fd44 | ||
|
|
703bee976b | ||
|
|
eb5105aa09 | ||
|
|
552a1940eb | ||
|
|
98becc3538 | ||
|
|
49d8316922 | ||
|
|
7a496fa41a | ||
|
|
4211f733d1 | ||
|
|
44eec0c5bb | ||
|
|
ac64d87a1c | ||
|
|
8e52e36846 | ||
|
|
348e72356b | ||
|
|
035d31904a | ||
|
|
192629c8ca | ||
|
|
75181ea1f3 | ||
|
|
d9c1a18776 | ||
|
|
f087388ebc | ||
|
|
48eb0c12ab | ||
|
|
fe389ad5ab | ||
|
|
97b637a0bc | ||
|
|
7e9c88aa41 | ||
|
|
07258bd559 | ||
|
|
0646efbf30 | ||
|
|
517bdbdd0c | ||
|
|
7f8be29f25 | ||
|
|
7db4b90837 | ||
|
|
cd48346ca8 | ||
|
|
1b6a99636d | ||
|
|
188c1f1f75 | ||
|
|
812490e4a4 | ||
|
|
128a293901 | ||
|
|
6557df2912 | ||
|
|
aff91436c0 | ||
|
|
8075158639 | ||
|
|
2757dc5e1b | ||
|
|
cd90342a76 | ||
|
|
8d622ad541 | ||
|
|
ed5bcf17fc | ||
|
|
9e46ca19d8 | ||
|
|
866646a98e | ||
|
|
4118c3d0a6 | ||
|
|
6029a57d0b | ||
|
|
309b741aa1 | ||
|
|
d90a00857b | ||
|
|
5ab2c8e4d6 | ||
|
|
c194f15418 | ||
|
|
3be8a4733a | ||
|
|
3243936d3e | ||
|
|
ec1ba91c38 | ||
|
|
ea55ef504b | ||
|
|
34b643e654 | ||
|
|
2e1c7f5597 | ||
|
|
6cccc0d26c | ||
|
|
0147647e06 | ||
|
|
ec010e4930 | ||
|
|
41af4b43e2 | ||
|
|
c1d05cf623 | ||
|
|
724f23c19f | ||
|
|
ddca89f425 | ||
|
|
805e87eeb6 | ||
|
|
8dc1140f43 | ||
|
|
b136125bb0 | ||
|
|
1da7f5fe5d | ||
|
|
655c19b07c | ||
|
|
ed5bcfc76b | ||
|
|
421588d631 | ||
|
|
915b46768c | ||
|
|
7169bbbb9c | ||
|
|
6d06606135 | ||
|
|
44c6ce11c4 | ||
|
|
b32b0b8736 | ||
|
|
fbe45fcb03 | ||
|
|
2c23d8736f | ||
|
|
f14032e4b4 | ||
|
|
d912214719 | ||
|
|
6c9e7de824 | ||
|
|
f8f989f667 | ||
|
|
781df80a90 | ||
|
|
b26ff0074d | ||
|
|
0a8e42a4ba | ||
|
|
b767f9a99a | ||
|
|
f61ee1ed42 | ||
|
|
a8743f0a34 | ||
|
|
468226fc90 | ||
|
|
9cb1ec2c58 | ||
|
|
0f2c9c9ff3 | ||
|
|
ed2a57fcc9 | ||
|
|
81b6878e1a | ||
|
|
325ffd70e1 | ||
|
|
d4ce045f9e | ||
|
|
7f65875406 | ||
|
|
ce38365106 | ||
|
|
a3cc911e7a | ||
|
|
ac7aff1b47 | ||
|
|
d714df48f9 | ||
|
|
fb1902448e | ||
|
|
f43b675200 | ||
|
|
e47fe2ca00 | ||
|
|
2edbf4d0ec | ||
|
|
645b7271f9 | ||
|
|
77c72b3193 | ||
|
|
34f97be86a | ||
|
|
2ffe77140e | ||
|
|
be79f6e893 | ||
|
|
bb5119f7eb | ||
|
|
6f682c6369 | ||
|
|
05b1ce39d2 | ||
|
|
6cf87d022f | ||
|
|
6c3842f67d | ||
|
|
63403741ff | ||
|
|
66643a5b57 | ||
|
|
e2f709b2a5 | ||
|
|
4ea104f5bd | ||
|
|
0fe7f7b6f0 | ||
|
|
566a2c668b | ||
|
|
ad692495a1 | ||
|
|
2c31beda75 | ||
|
|
cd684fdad0 | ||
|
|
ad40eec079 | ||
|
|
90d62ecc24 | ||
|
|
cab1f860e4 | ||
|
|
7ca867f7c8 | ||
|
|
fe03e90d80 | ||
|
|
f992942391 | ||
|
|
7420cb1d73 | ||
|
|
73961a1494 | ||
|
|
d7b5e4b901 | ||
|
|
efc024cfc4 | ||
|
|
b3533fb3a8 | ||
|
|
79c0b614ee | ||
|
|
f5cda8ff18 | ||
|
|
4570ff7780 | ||
|
|
aa456805dd | ||
|
|
efd33c398f | ||
|
|
9a2b586337 | ||
|
|
df999306c0 | ||
|
|
45296570ce | ||
|
|
f9306ff815 | ||
|
|
c530ead1e0 | ||
|
|
f6227bf6dd | ||
|
|
4f84c6bc34 | ||
|
|
d141783ebd | ||
|
|
d4ef935478 | ||
|
|
bf68df0070 | ||
|
|
407088f6ab | ||
|
|
2cce810190 | ||
|
|
eaea08ea45 | ||
|
|
4dfc09018f | ||
|
|
771db64cbe | ||
|
|
c6b941d803 | ||
|
|
3492248697 | ||
|
|
bc7192dca1 | ||
|
|
188f472ed2 | ||
|
|
befd97a891 | ||
|
|
481dbf7c6e | ||
|
|
8d692f1511 | ||
|
|
c08b546728 | ||
|
|
fefa4a1623 | ||
|
|
043e408b15 | ||
|
|
9f6658b981 | ||
|
|
5ce2b8e604 | ||
|
|
ee9893c4e1 | ||
|
|
8b0e2efd6e | ||
|
|
4d1e977399 | ||
|
|
0ee13892fd | ||
|
|
99d2d6e607 | ||
|
|
a2cfdf0e1c | ||
|
|
29a576a167 | ||
|
|
6424ce6397 | ||
|
|
fdb9472f88 | ||
|
|
17bde9bc86 | ||
|
|
fd29d05c6a | ||
|
|
f475802206 | ||
|
|
f0fa760479 | ||
|
|
24e8aa105f | ||
|
|
ed421855d7 | ||
|
|
627da44527 | ||
|
|
9955b74622 | ||
|
|
d955bfe50f | ||
|
|
b8648adf87 | ||
|
|
ff6fb587f6 | ||
|
|
e361ed4451 | ||
|
|
42e9f6e0b1 | ||
|
|
e3ed905b0a | ||
|
|
224312c014 | ||
|
|
bdf792adbc | ||
|
|
3c6616a23d | ||
|
|
ff7e984f0a | ||
|
|
3a100af876 | ||
|
|
7d7b535014 | ||
|
|
a98b1751a6 | ||
|
|
03ab4be9ee | ||
|
|
f993975ae6 | ||
|
|
53f7bd32d8 | ||
|
|
784496b773 | ||
|
|
4c0b0e2e8e | ||
|
|
bab7e63d7c | ||
|
|
3511a4b5be | ||
|
|
e485f7bb51 | ||
|
|
795cde6d62 | ||
|
|
9dfbf57397 | ||
|
|
e04fe64a82 | ||
|
|
495c70053f | ||
|
|
9bcd4952ce | ||
|
|
8745f10cd3 | ||
|
|
ac0dab3679 | ||
|
|
01c97e4033 | ||
|
|
cd5f2ab11f | ||
|
|
61736966ad | ||
|
|
8bdcded5c1 | ||
|
|
c0ec61cf16 | ||
|
|
d4e323b997 | ||
|
|
58cbd6b211 | ||
|
|
d8d148e3bb | ||
|
|
311185f6d6 | ||
|
|
7012d2fb74 | ||
|
|
2db04ef9d9 | ||
|
|
4cb6a34432 | ||
|
|
2016e8a0af | ||
|
|
0759530118 | ||
|
|
5ed46913c4 | ||
|
|
bd5b90fbf1 | ||
|
|
bba4054da3 | ||
|
|
d16951422b | ||
|
|
e0eeb1c07e | ||
|
|
216e872801 | ||
|
|
6fbf437f50 | ||
|
|
c00fadab9e | ||
|
|
9b260fb18b | ||
|
|
b931c19ba3 | ||
|
|
9e403fc8bf | ||
|
|
fd0edd7aa0 | ||
|
|
848658c533 | ||
|
|
37d2a98331 | ||
|
|
58d1ab02bd | ||
|
|
9f0d402a7d | ||
|
|
f927567b9f | ||
|
|
94ea41a60b | ||
|
|
8235e59a7f | ||
|
|
8924c521ba | ||
|
|
69875d86cd | ||
|
|
5bdc923838 | ||
|
|
25a2962186 | ||
|
|
c943dbadef | ||
|
|
aacaa9b85d | ||
|
|
74992f6f34 | ||
|
|
12b8416b64 | ||
|
|
8a5ff676ea | ||
|
|
f660f8d22f | ||
|
|
38cc947621 | ||
|
|
0546aa4fd5 | ||
|
|
b8b7ad4982 | ||
|
|
d21119b347 | ||
|
|
d3de366c67 | ||
|
|
a1b581621c | ||
|
|
274ae5de1b | ||
|
|
74b0a1939d | ||
|
|
6f432e8b7d | ||
|
|
a5f7a23307 | ||
|
|
88a8614abc | ||
|
|
b23327c283 | ||
|
|
c83d56c75d | ||
|
|
7dd28bbdd9 | ||
|
|
d54e23ca33 | ||
|
|
02f0212cbd | ||
|
|
3484502839 | ||
|
|
a345efd270 | ||
|
|
30bfb31bce | ||
|
|
eef0e8c6bf | ||
|
|
4648131c41 | ||
|
|
b0702ce7b1 | ||
|
|
ff3f5aa154 | ||
|
|
91bcfa9cb4 | ||
|
|
cf5f9df211 | ||
|
|
9eb4a4ff3a | ||
|
|
7932a55870 | ||
|
|
893ec2fb45 | ||
|
|
136014b13a | ||
|
|
d01ec47529 | ||
|
|
7fa023b8b5 | ||
|
|
aa9e56edfe | ||
|
|
88ffdc5fec | ||
|
|
fab42148e4 | ||
|
|
cce380ec37 | ||
|
|
828fd0cfea | ||
|
|
168bb1427f | ||
|
|
996ef44c02 | ||
|
|
734b5b89da | ||
|
|
490814aa35 | ||
|
|
ffa8913e54 | ||
|
|
73e9cd8e06 | ||
|
|
62cab3c719 | ||
|
|
d4f1d29393 | ||
|
|
2eac47a123 | ||
|
|
32f8cb31be | ||
|
|
297732bbb3 | ||
|
|
90be254373 | ||
|
|
034dd3d03d | ||
|
|
0384d3c558 | ||
|
|
00773e15f1 | ||
|
|
126809f20c | ||
|
|
fbe3f5dfb3 | ||
|
|
29b4c84b8c | ||
|
|
38f9bb96df | ||
|
|
6e0ec3248f | ||
|
|
35d0cf910d | ||
|
|
5cb84231b2 | ||
|
|
bbd4504954 | ||
|
|
a0b44e9873 | ||
|
|
90c395bdac | ||
|
|
c2b7cadd4f | ||
|
|
1a4685213b | ||
|
|
76e6a178e3 | ||
|
|
bb5efb67ab | ||
|
|
4bac561184 | ||
|
|
edf9757650 | ||
|
|
e65def0f82 | ||
|
|
7970704222 | ||
|
|
ced3226ffb | ||
|
|
1c20e05d70 | ||
|
|
4969f068f6 | ||
|
|
4a1470d26c | ||
|
|
5a3b634982 | ||
|
|
520ecc21ac | ||
|
|
8911c398d9 | ||
|
|
1738588f38 | ||
|
|
5e60a9363f | ||
|
|
cd20a84f18 | ||
|
|
e07dd6194a | ||
|
|
bcabf31121 | ||
|
|
5cb6890fad | ||
|
|
f1e6ea2254 | ||
|
|
56a6cf716e | ||
|
|
3517ce8e23 | ||
|
|
3c525b4962 | ||
|
|
e945be72b4 | ||
|
|
3002a7e14f | ||
|
|
c18165b30f | ||
|
|
e18863df1b | ||
|
|
41f23273b0 | ||
|
|
e62a422c14 | ||
|
|
91f7e6c66d | ||
|
|
946424cf86 | ||
|
|
270b07e85e | ||
|
|
b458abedbb | ||
|
|
4ef60da8a9 | ||
|
|
0e7f69f179 | ||
|
|
84ee02cb4b | ||
|
|
7a92bf87c8 | ||
|
|
55c1311aef | ||
|
|
beed35e55e | ||
|
|
5cd37e5e8a | ||
|
|
1761379135 | ||
|
|
30b10d5fb1 | ||
|
|
ca58556c54 | ||
|
|
a1b2c23671 | ||
|
|
5d60aae3b3 | ||
|
|
2392e48e9d | ||
|
|
3386afc0bc | ||
|
|
1a1014525b | ||
|
|
c30a110641 | ||
|
|
ced6201cb0 | ||
|
|
905a3313b5 | ||
|
|
f0475e89c5 | ||
|
|
cb75b4799f | ||
|
|
5f1150442a | ||
|
|
94b6ab02c2 | ||
|
|
631181a503 | ||
|
|
83a5c9f3da | ||
|
|
791f8ab0a1 | ||
|
|
da11bb4a82 | ||
|
|
94409770de | ||
|
|
c505f172b8 | ||
|
|
9972e553a0 | ||
|
|
cdbdc55cbf | ||
|
|
3f472bd511 | ||
|
|
4eb3067ef5 | ||
|
|
3c8701362b | ||
|
|
fadd1c0152 | ||
|
|
1e19d59273 | ||
|
|
cfd42c3999 | ||
|
|
98010efefc | ||
|
|
020f49dcd6 | ||
|
|
1e841a7881 | ||
|
|
b0d1cc1df7 | ||
|
|
0a835ba963 | ||
|
|
2b1b897375 | ||
|
|
87983464d8 | ||
|
|
d5565ab2cd | ||
|
|
8dc811e4aa | ||
|
|
1e1c817603 | ||
|
|
e2ed31b7e7 | ||
|
|
a7d9f16107 | ||
|
|
bbbb4835b4 | ||
|
|
f191993c8f | ||
|
|
994e58b5ea | ||
|
|
59639ba654 | ||
|
|
d22e3ebf9a | ||
|
|
0873a15a63 | ||
|
|
20718b972e | ||
|
|
a951859c55 | ||
|
|
3005d9e348 | ||
|
|
7f96f72d65 | ||
|
|
7550658fab | ||
|
|
80736043d6 | ||
|
|
3b259211df | ||
|
|
6b777c4b0b | ||
|
|
81a6aef771 | ||
|
|
f41bb3fb20 | ||
|
|
e0557d70e3 | ||
|
|
e2231f15e8 | ||
|
|
a19c7b4304 | ||
|
|
4a328609b9 | ||
|
|
021331f154 | ||
|
|
647093ff73 | ||
|
|
7df50add99 | ||
|
|
c99059db9f | ||
|
|
237bcdf99f | ||
|
|
0b395ca1dc | ||
|
|
c1fd06c56d | ||
|
|
f79301c620 | ||
|
|
4ae33cbf45 | ||
|
|
59655d0587 | ||
|
|
7edaf736a2 | ||
|
|
c770db7d52 | ||
|
|
cbc015d8d8 | ||
|
|
18e143ae7b | ||
|
|
8989a1883e | ||
|
|
983b747020 | ||
|
|
1ba95a65ee | ||
|
|
54b8cbd972 | ||
|
|
4eb9e8bb5a | ||
|
|
80c2da73ef | ||
|
|
4ba564dbf1 | ||
|
|
5fc8bc8f04 | ||
|
|
9fd3b5587b | ||
|
|
04b00229cf | ||
|
|
8a29c64302 | ||
|
|
2345e268bc | ||
|
|
97066d034d | ||
|
|
5f24c8a4a8 | ||
|
|
96438a4d58 | ||
|
|
5b3cf8bec5 | ||
|
|
c02b921983 | ||
|
|
0b0aadfc5f | ||
|
|
905aff3cfc | ||
|
|
9e6d39bae6 | ||
|
|
f651f74f9d | ||
|
|
01b908ad64 | ||
|
|
8a2729e75f | ||
|
|
9b3db96308 | ||
|
|
b86915c808 | ||
|
|
be706fecb4 | ||
|
|
2e94d1a033 | ||
|
|
fc6c4bbefb | ||
|
|
2fc6913085 | ||
|
|
f444e628ca | ||
|
|
42be4e52fe | ||
|
|
385c81d67b | ||
|
|
8b0a7b9fb8 | ||
|
|
2c5e1cb7d7 | ||
|
|
7be1e85c6d | ||
|
|
4cc9a43089 | ||
|
|
01c81a5f57 | ||
|
|
85eda20587 | ||
|
|
940ecd05a8 | ||
|
|
7c8a196c76 | ||
|
|
79a2f81447 | ||
|
|
0504bb8984 | ||
|
|
d726a17aca | ||
|
|
33e93e6789 | ||
|
|
c8da2618ee | ||
|
|
8e9af05d6a | ||
|
|
ba0b5baee4 | ||
|
|
384a9cda5e | ||
|
|
97ec866f85 | ||
|
|
ef3c9b7c6d | ||
|
|
6260aaac5f | ||
|
|
d3dab09690 | ||
|
|
f8f8353108 | ||
|
|
66234d9d57 | ||
|
|
3d60b870ee | ||
|
|
3ae23091c6 | ||
|
|
092b86321c | ||
|
|
da07811427 | ||
|
|
c0dd284136 | ||
|
|
504972fa5d | ||
|
|
f78f423d0b | ||
|
|
c4ca4c70d1 | ||
|
|
d94b96d9f4 | ||
|
|
74251fbf5e | ||
|
|
08a738c6c8 | ||
|
|
cc369ad9d0 | ||
|
|
a94bba6399 | ||
|
|
f6a62c01bf | ||
|
|
979074de2b | ||
|
|
958504296d | ||
|
|
75a3c25ff8 | ||
|
|
3da9c728d6 | ||
|
|
85733abe79 | ||
|
|
89625c0cc8 | ||
|
|
2d881b88f9 | ||
|
|
9ef33312b1 | ||
|
|
1d58da3cb3 | ||
|
|
c0dee9adf1 | ||
|
|
afd66c62ff | ||
|
|
57da449442 | ||
|
|
62d1e46b92 | ||
|
|
b988a63429 | ||
|
|
e322dfb589 | ||
|
|
989ac717fc | ||
|
|
3ceb2655d8 | ||
|
|
8c3a2ff6cc | ||
|
|
b9d143c99d | ||
|
|
f40d6bd94d | ||
|
|
4f7d06500c | ||
|
|
f6bbfa7e40 | ||
|
|
435fdbfddc | ||
|
|
83602b6834 | ||
|
|
3b808f5ac5 | ||
|
|
aaf1624346 | ||
|
|
a98e0adc7d | ||
|
|
06487ef64f | ||
|
|
b2fdcad77b | ||
|
|
51f9a91736 | ||
|
|
d7b73dd4fc | ||
|
|
5931e350cd | ||
|
|
e7a14f857d | ||
|
|
79abd245e2 | ||
|
|
2b622162ef | ||
|
|
5a3e0836b1 | ||
|
|
24c4d92c0b | ||
|
|
184c56704b | ||
|
|
feea8824f1 | ||
|
|
028e48ed97 | ||
|
|
609222d05e | ||
|
|
5d91922c5d | ||
|
|
d66831c4f3 | ||
|
|
7f1caaaa44 | ||
|
|
42fc49d413 | ||
|
|
72970ecd15 | ||
|
|
f9b573aa89 | ||
|
|
bbf8a17bf5 | ||
|
|
8c8accf968 | ||
|
|
24be0f4fc5 | ||
|
|
e59c6f642d | ||
|
|
1bdb4b2466 | ||
|
|
ca0ab9508f | ||
|
|
68fd43313d | ||
|
|
b06ca07eee | ||
|
|
01ed3045cb | ||
|
|
6b3be4d821 | ||
|
|
e399bceb3c | ||
|
|
a8fca7d679 | ||
|
|
b249d1b75b | ||
|
|
3495b7c1f8 | ||
|
|
3c20290e49 | ||
|
|
0df3485132 | ||
|
|
3ea983578f | ||
|
|
000a0c9dca | ||
|
|
c1d7ec9564 | ||
|
|
9e909dcae1 | ||
|
|
3c1ad4b568 | ||
|
|
743531b4ac | ||
|
|
d1834b5a92 | ||
|
|
e38a3e5d85 | ||
|
|
6a1fc20835 | ||
|
|
95c747f598 | ||
|
|
65302a1db5 | ||
|
|
c4557e57a1 | ||
|
|
f61d9e340d | ||
|
|
47a2548cbf | ||
|
|
5516adec57 | ||
|
|
4e920d73b7 | ||
|
|
a92258355d | ||
|
|
5bbaa7b400 | ||
|
|
de8ace9fbe | ||
|
|
375f69559f | ||
|
|
7d15a040fd | ||
|
|
3236a99b2d | ||
|
|
18d4cfd4f2 | ||
|
|
6255fe6a4b | ||
|
|
dd9691289f | ||
|
|
e98aae195c | ||
|
|
5741d4f9b4 | ||
|
|
1bed749d8c | ||
|
|
bbe66a4367 | ||
|
|
f649aae36f | ||
|
|
9f9db85a94 | ||
|
|
bbc2dacd84 | ||
|
|
0bb9493e47 | ||
|
|
14efd03b48 | ||
|
|
d5b11be769 | ||
|
|
007133d060 | ||
|
|
6279358cbc | ||
|
|
ca34a09a4d | ||
|
|
b746579863 | ||
|
|
8549134658 | ||
|
|
27e40b0836 | ||
|
|
b57f51fda2 | ||
|
|
fad1742410 | ||
|
|
768f4539e8 | ||
|
|
37b16a9007 | ||
|
|
a2d96f9040 | ||
|
|
b5519af7e7 | ||
|
|
9d94f148dc | ||
|
|
5cf64b07be | ||
|
|
e301fde96d | ||
|
|
2a7687fff8 | ||
|
|
780f7de843 | ||
|
|
660eb46b17 | ||
|
|
c6f3044654 | ||
|
|
b374c67c16 | ||
|
|
ce960f9506 | ||
|
|
ab49f95ef2 | ||
|
|
047754d5dd | ||
|
|
b400dfb386 | ||
|
|
88538b7c2c | ||
|
|
79138c4c7c | ||
|
|
24fbcb8f52 | ||
|
|
51e437e8a0 | ||
|
|
e6c2f48895 | ||
|
|
cf961336d0 | ||
|
|
b44615a916 | ||
|
|
fd740d41e5 | ||
|
|
46a9b124f5 | ||
|
|
7c2180194c | ||
|
|
3150ff49a7 | ||
|
|
2fe5b4da2f | ||
|
|
0b94ccdf8c | ||
|
|
845421c44b | ||
|
|
42ea8b2402 | ||
|
|
a13e64c286 | ||
|
|
60d0e6b73f | ||
|
|
a315ee7e03 | ||
|
|
57672eb266 | ||
|
|
511c0ab386 | ||
|
|
d9306c2681 | ||
|
|
aa17f97d13 | ||
|
|
e547efbf4a | ||
|
|
3d243e5e95 | ||
|
|
5ea8fe8c90 | ||
|
|
84b2cc1739 | ||
|
|
15ce587fa2 | ||
|
|
20a4b72ff4 | ||
|
|
41d778fbfb | ||
|
|
5f3a6f2bf3 | ||
|
|
58185e139a | ||
|
|
51d69d8c85 | ||
|
|
4dd2cb33b7 | ||
|
|
31f025fa02 | ||
|
|
81317a52ea | ||
|
|
7d29782896 | ||
|
|
1aa4cd2f6a | ||
|
|
c7f411bd88 | ||
|
|
60e6a47bb0 | ||
|
|
d9dc15115c | ||
|
|
159ee8ddfc | ||
|
|
84634117a9 | ||
|
|
5ea278e1c6 | ||
|
|
9e29159f44 | ||
|
|
e23832d1ce | ||
|
|
9665d7d216 | ||
|
|
c114956788 | ||
|
|
61bf957b99 | ||
|
|
2cbac4bbdd | ||
|
|
320c23543c | ||
|
|
0ea8de4087 | ||
|
|
7129303347 | ||
|
|
8582bc08ec | ||
|
|
eeea1707a1 | ||
|
|
b7e08cb937 | ||
|
|
054413ba1f | ||
|
|
04dcf180d5 | ||
|
|
79094e6643 | ||
|
|
682af03cdc | ||
|
|
1564f75d06 | ||
|
|
224f980081 | ||
|
|
2369bade48 | ||
|
|
10cd5aaa15 | ||
|
|
f4668e45f8 | ||
|
|
a1e62e6bf9 | ||
|
|
e009be1c5d | ||
|
|
af0bc28c51 | ||
|
|
bb5450fad0 | ||
|
|
5bb8c42bdb | ||
|
|
69114ac0a9 | ||
|
|
8830cbc51e | ||
|
|
23c90a76c2 | ||
|
|
714ce7619d | ||
|
|
34b2e9acc2 | ||
|
|
4c818b9364 | ||
|
|
cee33485d0 | ||
|
|
f052e66df5 | ||
|
|
46e34a3fa9 | ||
|
|
2bcae716d1 | ||
|
|
4281a68a2b | ||
|
|
ab020b2275 | ||
|
|
0617896d70 | ||
|
|
1c3cb22d1f | ||
|
|
275a635ad7 | ||
|
|
35bf039dfb | ||
|
|
de9a2b9fe5 | ||
|
|
201cbb20e4 | ||
|
|
8c51db0879 | ||
|
|
10b04fbd26 | ||
|
|
bdc43c1696 | ||
|
|
bc028168a8 | ||
|
|
00f428b627 | ||
|
|
d28a4dbb00 | ||
|
|
0a30bf0212 | ||
|
|
04658776e4 | ||
|
|
369e9f3fbd | ||
|
|
1b7b37232e | ||
|
|
fe4f39fd17 | ||
|
|
9cc03cd71a | ||
|
|
d9f9fc975b | ||
|
|
bdbc0f23e7 | ||
|
|
ba6908aed7 | ||
|
|
4e6b905a98 | ||
|
|
43f2a8eb85 | ||
|
|
c72629d88a | ||
|
|
33cf491fea | ||
|
|
2f917f7030 | ||
|
|
207282862e | ||
|
|
3c054253e1 | ||
|
|
2c0fd28e72 | ||
|
|
b8586b33da | ||
|
|
beaf91590a | ||
|
|
d84f79bcc1 | ||
|
|
917cbc8d5d | ||
|
|
074f236994 | ||
|
|
03eb000ad6 | ||
|
|
9a184c8279 | ||
|
|
b53a332809 | ||
|
|
a09b515a62 | ||
|
|
8eddfc61a8 | ||
|
|
37525db5cf | ||
|
|
e9eb88355b | ||
|
|
9f5564b4bc | ||
|
|
931ba9ad49 | ||
|
|
851b8acb76 | ||
|
|
7a158e68ae | ||
|
|
cb36b4d1ab | ||
|
|
2621fbf206 | ||
|
|
d7ab2c04ec | ||
|
|
f84f77d1ed | ||
|
|
425f4b0de1 | ||
|
|
7b70ed52fa | ||
|
|
8cf1707cd3 | ||
|
|
9f4d7690ac | ||
|
|
5854d39525 | ||
|
|
b4e6ca0462 | ||
|
|
f408749182 | ||
|
|
92da72beb0 | ||
|
|
a896d6c46c | ||
|
|
4eed310a45 | ||
|
|
1daa61a45f | ||
|
|
03490afdb3 | ||
|
|
e1e5f8c43b | ||
|
|
b655d09387 | ||
|
|
e0503faec7 | ||
|
|
bddf523ac9 | ||
|
|
1506a25198 | ||
|
|
1abc89e391 | ||
|
|
3cb462a3e6 | ||
|
|
f8b87e3ee2 | ||
|
|
e6f055e9fb | ||
|
|
f999bdca26 | ||
|
|
e75ce84c37 | ||
|
|
b631ea7d72 | ||
|
|
7b59d9d97c | ||
|
|
d28247573c | ||
|
|
56884b5f1d | ||
|
|
887496bcf9 | ||
|
|
da43761032 | ||
|
|
4efce63dad | ||
|
|
2a33bd2cc5 | ||
|
|
b337e36da1 | ||
|
|
77d0828179 | ||
|
|
eccd854dbc | ||
|
|
a64f2f5466 | ||
|
|
d3cd753d4d | ||
|
|
f423791e19 | ||
|
|
a6cadce6f6 | ||
|
|
51d0c3b79f | ||
|
|
7672ee95af | ||
|
|
512acf072e | ||
|
|
4ee11d922c | ||
|
|
885049831f | ||
|
|
e5106d320c | ||
|
|
ede2a494bc | ||
|
|
48df99c496 | ||
|
|
ed15259623 | ||
|
|
4272038743 | ||
|
|
002f4ecc9e | ||
|
|
495f25501f | ||
|
|
0992c3867d | ||
|
|
58a78ef8b7 | ||
|
|
740027975b | ||
|
|
706406af48 | ||
|
|
39493e5d94 | ||
|
|
a249c79983 | ||
|
|
6459288c85 | ||
|
|
4726b7e227 | ||
|
|
358f388a46 | ||
|
|
4f35d0537b | ||
|
|
1d9c982488 | ||
|
|
5e6e8ece4e | ||
|
|
964c4037de | ||
|
|
1bc76511ec | ||
|
|
35509126a6 | ||
|
|
8765092591 | ||
|
|
46678c46ee | ||
|
|
e8d948b9d9 | ||
|
|
f891d1df50 | ||
|
|
faad250559 | ||
|
|
74e87b5a8a | ||
|
|
819a63e3ec | ||
|
|
c65c320b09 | ||
|
|
a53ed1bde1 | ||
|
|
d2190ea6f3 | ||
|
|
b7850565f4 | ||
|
|
10996a797a | ||
|
|
949d715a14 | ||
|
|
90388aa7ea | ||
|
|
1671977af7 | ||
|
|
8aec181f16 | ||
|
|
37753e9787 | ||
|
|
8519ff02e6 | ||
|
|
397cb6600b | ||
|
|
bef469ea55 | ||
|
|
ac7ad4d5c6 | ||
|
|
0b27a26edb | ||
|
|
e12dc23c62 | ||
|
|
7fec8a96ab | ||
|
|
14b063d802 | ||
|
|
99fa95b954 | ||
|
|
f27fdf932b | ||
|
|
d0dbafb32f | ||
|
|
b5bd98c0ef | ||
|
|
e851e5fddb | ||
|
|
1aff60d2ba | ||
|
|
d5c81b7423 | ||
|
|
ddb6eced34 | ||
|
|
5c3c50372b | ||
|
|
af0acaff37 | ||
|
|
9090f06612 | ||
|
|
7a193ed243 | ||
|
|
c168c70e60 | ||
|
|
557c2e97d7 | ||
|
|
64871b2bfb | ||
|
|
ce2cdb44e1 | ||
|
|
348ad87013 | ||
|
|
0e900c8ca9 | ||
|
|
61673fa705 | ||
|
|
d1a4f4fd69 | ||
|
|
0b915fed03 | ||
|
|
7b23cb5cd7 | ||
|
|
04328c163b | ||
|
|
5a95fae533 | ||
|
|
47f0e14477 | ||
|
|
0ef25c65ec | ||
|
|
b0c89baac7 | ||
|
|
7bc20c994c | ||
|
|
033b8936c9 | ||
|
|
6336d01743 | ||
|
|
cc062855af | ||
|
|
d68f44d604 | ||
|
|
ffacc1d02d | ||
|
|
1be13fa192 | ||
|
|
46094189f4 | ||
|
|
0c8fe888b9 | ||
|
|
57fcd882fc | ||
|
|
b2e48477db | ||
|
|
e4805d0895 | ||
|
|
e9eaab727b | ||
|
|
2ded9af4f7 | ||
|
|
2aa304a29d | ||
|
|
3419d3bc02 | ||
|
|
a6644eac24 | ||
|
|
6c23035769 | ||
|
|
4a698ed52c | ||
|
|
e1fcc810cb | ||
|
|
6bfb65b312 | ||
|
|
dc330701d2 | ||
|
|
d434370500 | ||
|
|
9806c301dd | ||
|
|
73416ebb62 | ||
|
|
bddf484c2c | ||
|
|
21531f1e80 | ||
|
|
ac36ea51cf | ||
|
|
ae3fcb5bd8 | ||
|
|
5767ad3fc5 | ||
|
|
4f41c3fb40 | ||
|
|
b249ed7257 | ||
|
|
2b4dcc8c81 | ||
|
|
15a5aa1a68 | ||
|
|
3cf229a898 | ||
|
|
e94172255d | ||
|
|
d21aee5143 | ||
|
|
65a56c2560 | ||
|
|
1bd71f2f44 | ||
|
|
fe33073f2e | ||
|
|
14d52897ad | ||
|
|
ca434fba6e | ||
|
|
55f8029dc2 | ||
|
|
a3dc33c133 | ||
|
|
a274ddba3a | ||
|
|
8e36485a76 | ||
|
|
5f2e74bbcc | ||
|
|
ce6fc8609b | ||
|
|
a251669fa1 | ||
|
|
4f6636b3ca | ||
|
|
28a3093d48 | ||
|
|
fe0506b88e | ||
|
|
e78f891acd | ||
|
|
948fdfe482 | ||
|
|
757d19c2f7 | ||
|
|
a4b67ccbff | ||
|
|
1fca6becd3 | ||
|
|
6965b5c192 | ||
|
|
dfa62b660d | ||
|
|
5ff2cd3418 | ||
|
|
f56eec6fa3 | ||
|
|
65330a32cc | ||
|
|
003237b086 | ||
|
|
70f89b1bfc | ||
|
|
4f5f01a748 | ||
|
|
e41d7a0bd5 | ||
|
|
b745ae2667 | ||
|
|
2f1e9b2eb8 | ||
|
|
c68b11e8cb | ||
|
|
16d20bde09 | ||
|
|
bea44d948e | ||
|
|
b230e7a73a | ||
|
|
e024116b77 | ||
|
|
79b6d4734a | ||
|
|
dc26181da4 | ||
|
|
0603991beb | ||
|
|
17fa4211ac | ||
|
|
81a1d8f589 | ||
|
|
055f1e9639 | ||
|
|
cac11ee826 | ||
|
|
f8d9a8be87 | ||
|
|
9c601542d0 | ||
|
|
7c7769a7c7 | ||
|
|
17e8181b4e | ||
|
|
ee939f7a6d | ||
|
|
6cc89eff2c | ||
|
|
d6d04cab24 | ||
|
|
bb95f90a62 | ||
|
|
1806322554 | ||
|
|
38b5a85d8a | ||
|
|
68b55cd855 | ||
|
|
43b4e1b67b | ||
|
|
f3fb712051 | ||
|
|
f6779193c0 | ||
|
|
29f72efac3 | ||
|
|
4985a44fe2 | ||
|
|
6a9bc6f6c2 | ||
|
|
bf6b174233 | ||
|
|
5de98f23bb | ||
|
|
1d02104c51 | ||
|
|
4f22c39651 | ||
|
|
6c01a1191f | ||
|
|
b95f7d5bbc | ||
|
|
c32013dbba | ||
|
|
6cdb7e77dd | ||
|
|
0e7ed4c667 | ||
|
|
3b802c9a13 | ||
|
|
996e5dd235 | ||
|
|
025749027b | ||
|
|
44babb9ce5 | ||
|
|
a63fe2be24 | ||
|
|
bf75f61ddf | ||
|
|
1b608fcc8a | ||
|
|
c4cf38601b | ||
|
|
25fc19e7c6 | ||
|
|
9c3b2f7ad6 | ||
|
|
436b8e1461 | ||
|
|
272e71fec2 | ||
|
|
4ba97c7687 | ||
|
|
3df5843503 | ||
|
|
20eff9f6d2 | ||
|
|
69eedb4c92 | ||
|
|
4a8bbc2216 | ||
|
|
92b766095d | ||
|
|
b18e4064a2 | ||
|
|
58b67347e6 | ||
|
|
1a0fb4cf83 | ||
|
|
6393e1e709 | ||
|
|
a78b6f920d | ||
|
|
7da520b22e | ||
|
|
45dc75b3be | ||
|
|
1cce9da80a | ||
|
|
21bf3ddaf2 | ||
|
|
514f2a8edd | ||
|
|
5f5d74c534 | ||
|
|
b3b70035a1 | ||
|
|
666f5c5ea9 | ||
|
|
55488ad77f | ||
|
|
23fd28afc3 | ||
|
|
f6cb20f516 | ||
|
|
096abc638a | ||
|
|
d3fc1ee7d2 | ||
|
|
cd2bf2591d | ||
|
|
8428bd90a3 | ||
|
|
6872af907c | ||
|
|
dc906ba0c7 | ||
|
|
36b814de57 | ||
|
|
142ad97886 | ||
|
|
cbc3daf739 | ||
|
|
4f91f66a37 | ||
|
|
1671e3cc7e | ||
|
|
24a85f8de6 | ||
|
|
2432150321 | ||
|
|
38141e3aa7 | ||
|
|
5f5ef81f11 | ||
|
|
a1e786011d | ||
|
|
7b4c8802a1 | ||
|
|
dddbce8a41 | ||
|
|
7ce8328d28 | ||
|
|
b62c45fea3 | ||
|
|
7deca69820 | ||
|
|
8753c483ff | ||
|
|
2149e1f0a0 | ||
|
|
c52ebd96ba | ||
|
|
904716f56b | ||
|
|
a858261832 | ||
|
|
9fccbf9364 | ||
|
|
41a023e21d | ||
|
|
cf378d51fd | ||
|
|
7f5022db0c | ||
|
|
9ea025c543 | ||
|
|
477747142a | ||
|
|
29b0e3eaf7 | ||
|
|
9ab21ceb59 | ||
|
|
f7f1b60444 | ||
|
|
da257336b0 | ||
|
|
565996a087 | ||
|
|
fac1c49727 | ||
|
|
3a760ec0ec | ||
|
|
d90a638101 | ||
|
|
047a8d3f0d | ||
|
|
2c4777f579 | ||
|
|
0642cf31f3 | ||
|
|
b1b3f7af54 | ||
|
|
cb41d77d2a | ||
|
|
0fd7d3a8c3 | ||
|
|
8bc459ba99 | ||
|
|
5c312ec0c9 | ||
|
|
bf92c36be1 | ||
|
|
253cb391b3 | ||
|
|
55c262a321 | ||
|
|
af3931371e | ||
|
|
9ccc455f8d | ||
|
|
8b0a3c75cb | ||
|
|
fac4efb9b9 | ||
|
|
f17080df7f | ||
|
|
2077e563b7 | ||
|
|
1604666988 | ||
|
|
6c6e680d91 | ||
|
|
9f222c5ed2 | ||
|
|
3d0b297306 | ||
|
|
ce5cbb0491 | ||
|
|
9bf03a84c1 | ||
|
|
3e9bb6859b | ||
|
|
86f0b08b8d | ||
|
|
38db5f1c83 | ||
|
|
9f10724eda | ||
|
|
bb8c803bdf | ||
|
|
9d167deb10 | ||
|
|
093fe1bae9 | ||
|
|
9dc3fbcfc4 | ||
|
|
be9bab5c29 | ||
|
|
52eac73726 | ||
|
|
f05e23ed20 | ||
|
|
b4abb0f337 | ||
|
|
41c983b386 | ||
|
|
f84b2ec6d1 | ||
|
|
e0cb7e4342 | ||
|
|
204f514633 | ||
|
|
5005188a13 | ||
|
|
8189f78eed | ||
|
|
2eb19a96b1 | ||
|
|
fd26d2e9fa | ||
|
|
370d9c2931 | ||
|
|
c00359a521 | ||
|
|
71d0e14210 | ||
|
|
d925367cae | ||
|
|
179cd18f70 | ||
|
|
072cd5a745 | ||
|
|
c52d9fd1b6 | ||
|
|
e45f72e8e4 | ||
|
|
645cf90335 | ||
|
|
e5b2e3c602 | ||
|
|
897d7bd564 | ||
|
|
07cb04e311 | ||
|
|
b1fcc9e6bf | ||
|
|
1f174b9d95 | ||
|
|
c154402c45 | ||
|
|
17b8056b31 | ||
|
|
40160ec6d6 | ||
|
|
fe92a89b93 | ||
|
|
1cb5a73243 | ||
|
|
70fa1564c2 | ||
|
|
fcd8397db2 | ||
|
|
4688d72945 | ||
|
|
c55f59e030 | ||
|
|
be108c0fea | ||
|
|
4e3fb8ed5b | ||
|
|
9d3f1e0d26 | ||
|
|
88ca7fd738 | ||
|
|
30e1fe1035 | ||
|
|
562595fa02 | ||
|
|
d6520cd761 | ||
|
|
13cfca4814 | ||
|
|
e20461d961 | ||
|
|
d04c0d51fe | ||
|
|
a5b25c5a79 | ||
|
|
6142715c06 | ||
|
|
34e130a3e0 | ||
|
|
09434f1486 | ||
|
|
1a92b92f8a | ||
|
|
fb903bb091 | ||
|
|
34fce03f0f | ||
|
|
bfa40d1d3f | ||
|
|
f829bd7190 | ||
|
|
ab4e662484 | ||
|
|
35ba83584f | ||
|
|
50cf083668 | ||
|
|
dd9325d8c9 | ||
|
|
3b7626aacb | ||
|
|
a9aa3e732c | ||
|
|
ae0ea761ce | ||
|
|
1a3a0adc63 | ||
|
|
006a2f37dd | ||
|
|
65b543fba6 | ||
|
|
b459d09030 | ||
|
|
97fa2702d1 | ||
|
|
4af4d3eeca | ||
|
|
1e0155faf2 | ||
|
|
81033c52fb | ||
|
|
86639fe62a | ||
|
|
54e7a6f57a | ||
|
|
32826119fc | ||
|
|
12f586eeb7 | ||
|
|
f9f169bb9e | ||
|
|
2fe27fdeea | ||
|
|
19afe95cc6 | ||
|
|
af410879cd | ||
|
|
26e32ec1cb | ||
|
|
3a60764f32 | ||
|
|
5398ed52d8 | ||
|
|
6ede31cb04 | ||
|
|
88ddb103f2 | ||
|
|
525d055d4a | ||
|
|
4c8a08d6ba | ||
|
|
280c45c269 | ||
|
|
8bb080fc7c | ||
|
|
619d931568 | ||
|
|
50a3853eb4 | ||
|
|
0bfd00e734 | ||
|
|
0b1d4ff81b | ||
|
|
792ad30a8c | ||
|
|
ed5595f792 | ||
|
|
5c8cbf9806 | ||
|
|
57342459dd | ||
|
|
901c4f57aa | ||
|
|
1c6da5934d | ||
|
|
e5344bfcc5 | ||
|
|
46a85358d7 | ||
|
|
6632135ec0 | ||
|
|
7b73dcf906 | ||
|
|
75b1ef1ef4 | ||
|
|
830f83a44d | ||
|
|
88d6615e4e | ||
|
|
cc1b340cff | ||
|
|
8ccf5a07ca | ||
|
|
10a8c6acdd | ||
|
|
2cd1d44739 | ||
|
|
de536fc953 | ||
|
|
a1456767f7 | ||
|
|
e0feff22c9 | ||
|
|
44ff09015c | ||
|
|
3c45182097 | ||
|
|
c02da2c5a6 | ||
|
|
5cd91fa1a3 | ||
|
|
d21739af1a | ||
|
|
bd372e9cf4 | ||
|
|
afe04aa8bf | ||
|
|
9b2bad8bed | ||
|
|
7622f2e339 | ||
|
|
3d05cb017d | ||
|
|
1c54deab52 | ||
|
|
28d71e2d9f | ||
|
|
02c920f4fd | ||
|
|
1b50ecc52b | ||
|
|
f8ea534f3b | ||
|
|
9aea2f90a5 | ||
|
|
38cc698b4d | ||
|
|
f13f465024 | ||
|
|
e8d6ad6d66 | ||
|
|
434f1bffad | ||
|
|
0b0db78799 | ||
|
|
b3434a8b88 | ||
|
|
223ce77eca | ||
|
|
ec9787770e | ||
|
|
360a007f16 | ||
|
|
76652ac3ca | ||
|
|
14cec299f5 | ||
|
|
55c42f1663 | ||
|
|
85808700c8 | ||
|
|
73fba0c5f1 | ||
|
|
7060008b83 | ||
|
|
ae4f2d63c8 | ||
|
|
9129309f0a | ||
|
|
c987bdcbf9 | ||
|
|
f6a451256f | ||
|
|
71b942b581 | ||
|
|
cd2e9e9dcf | ||
|
|
347309b26f | ||
|
|
8d67870da4 | ||
|
|
04e0583c31 | ||
|
|
c37d0be027 | ||
|
|
4c136cddd7 | ||
|
|
b50dc40fb8 | ||
|
|
6160dc3995 | ||
|
|
a1f40400c1 | ||
|
|
c940f00e2d | ||
|
|
97ccbc189a | ||
|
|
0a2c101c28 | ||
|
|
c526a6bce8 | ||
|
|
da9b2452a7 | ||
|
|
210ae2ffb2 | ||
|
|
9f16906499 | ||
|
|
605c429770 | ||
|
|
b064872d9a | ||
|
|
ff36fa8a53 | ||
|
|
19682b4225 | ||
|
|
536bd72de9 | ||
|
|
87ca9948ec | ||
|
|
57e5c35277 | ||
|
|
8b4c3ec0c7 | ||
|
|
9c7eb75a9a | ||
|
|
b0fe167910 | ||
|
|
6223030360 | ||
|
|
1835e4b9f9 | ||
|
|
8ca49f906a | ||
|
|
dac6c48b1e | ||
|
|
2b0694ec8c | ||
|
|
26bfc4f0a3 | ||
|
|
fbec10758b | ||
|
|
30d43b027f | ||
|
|
693b1c9b23 | ||
|
|
ce0efc37cc | ||
|
|
11c105aa1d | ||
|
|
9167aedcc8 | ||
|
|
fc4c3e3199 | ||
|
|
61a8490c66 | ||
|
|
abd6e496ab | ||
|
|
8e1b2ba32e | ||
|
|
c7fc8fdf96 | ||
|
|
7f4bb93782 | ||
|
|
a10a8e9c70 | ||
|
|
b595ddf20d | ||
|
|
4bd9b20c8a | ||
|
|
9190061ba4 | ||
|
|
41f9fd85f6 | ||
|
|
cdff2697ef | ||
|
|
ca02695993 | ||
|
|
9a2f2a94bf | ||
|
|
e22c245d08 | ||
|
|
171242680d | ||
|
|
5995f2ed71 | ||
|
|
abbde39a02 | ||
|
|
e1a17aff4c | ||
|
|
b8c5646c49 | ||
|
|
62b0b601c2 | ||
|
|
e43b4815b5 | ||
|
|
923d9c1bbb | ||
|
|
e3a6007a76 | ||
|
|
00ae8f79e4 | ||
|
|
dc1330aef5 | ||
|
|
3c1e3792d6 | ||
|
|
603164e66a | ||
|
|
f19b5ce409 | ||
|
|
f356da1b5e | ||
|
|
07a2f80cbc | ||
|
|
2888f43c8a | ||
|
|
697e105ffa | ||
|
|
5d7174d789 | ||
|
|
ab3b072249 | ||
|
|
690e79445d | ||
|
|
bce68bc898 | ||
|
|
94091a7522 | ||
|
|
2852520d90 | ||
|
|
abf3a13433 | ||
|
|
cebd351e61 | ||
|
|
19cff80af8 | ||
|
|
9830e50a29 | ||
|
|
820e6605f8 | ||
|
|
c06bba77d4 | ||
|
|
4ba217bc42 | ||
|
|
a42a9e901c | ||
|
|
3482d76175 | ||
|
|
63c9315b24 | ||
|
|
40126bbe60 | ||
|
|
70615f4036 | ||
|
|
1b1b96aff8 | ||
|
|
de1e963ffa | ||
|
|
a299b1b8e3 | ||
|
|
4cc0eebf4b | ||
|
|
b1e97edc59 | ||
|
|
a56dfe486b | ||
|
|
e9c3529476 | ||
|
|
c9a4bdf44d | ||
|
|
c6fe82018a | ||
|
|
3016723198 | ||
|
|
e453b949dd | ||
|
|
1236e3f59c | ||
|
|
c6d314e954 | ||
|
|
2c548d45f8 | ||
|
|
4c741cc8b6 | ||
|
|
4b5af13ac0 | ||
|
|
35cbfa63a6 | ||
|
|
dd84681d30 | ||
|
|
0a1fca5d7d | ||
|
|
af033c02c5 | ||
|
|
40506e33e7 | ||
|
|
b542921f3d | ||
|
|
b0a7f8df92 | ||
|
|
32e16bda23 | ||
|
|
e32ada318a | ||
|
|
b011610bb3 | ||
|
|
723c7c56dc | ||
|
|
6b7a0c1d3f | ||
|
|
22f7981cff | ||
|
|
ad29d9ffb3 | ||
|
|
8200f43a04 | ||
|
|
3fceae8070 | ||
|
|
8cd8e34719 | ||
|
|
930981c9d9 | ||
|
|
f8b22d51a9 | ||
|
|
2b1b7eb6b3 | ||
|
|
e241e503b7 | ||
|
|
39940ec1f5 | ||
|
|
f725b7e1ab | ||
|
|
da66bed946 | ||
|
|
58fe024aea | ||
|
|
6205cf3fe4 | ||
|
|
fb6c87da07 | ||
|
|
d0fb442c59 | ||
|
|
1c949354c6 | ||
|
|
3a042cdb48 | ||
|
|
a97914fff3 | ||
|
|
ec00838a03 | ||
|
|
860bd53fb3 | ||
|
|
477638435c | ||
|
|
cb384dfa29 | ||
|
|
dd15a98879 | ||
|
|
6b2637468c | ||
|
|
ab4f4bca6d | ||
|
|
73a611a3b9 | ||
|
|
c5333ab597 | ||
|
|
75e8c4699c | ||
|
|
8fcb0ff0b6 | ||
|
|
dbd569d2ab | ||
|
|
40eca63653 | ||
|
|
e7eadcde5a | ||
|
|
36adee4dc8 | ||
|
|
9fe1ad93cb | ||
|
|
8311761c82 | ||
|
|
8702f965a2 | ||
|
|
888a685e26 | ||
|
|
51c1d18e68 | ||
|
|
af6476ca74 | ||
|
|
614d256cb6 | ||
|
|
3867431ed1 | ||
|
|
1f7f5646de | ||
|
|
40623cf967 | ||
|
|
d07e4f8bd1 | ||
|
|
e4bf189e9d | ||
|
|
2292ef8d0e | ||
|
|
a114af4eea | ||
|
|
5152aebde1 | ||
|
|
1310a1d99e | ||
|
|
a20d3eaebb | ||
|
|
3cc61f8e30 | ||
|
|
ef2c9c330c | ||
|
|
5db06105ba | ||
|
|
24433ceb27 | ||
|
|
ff797f7410 | ||
|
|
cef32c1123 | ||
|
|
50d4cedd92 | ||
|
|
27ad376071 | ||
|
|
eebcd30067 | ||
|
|
1afe2f05dc | ||
|
|
170e3117d7 | ||
|
|
fc08e69039 | ||
|
|
25918ddd2a | ||
|
|
edfd2af949 | ||
|
|
dffaeaca1e | ||
|
|
88bdae8218 | ||
|
|
fdfe00452b | ||
|
|
b38d553d60 | ||
|
|
0833275f03 | ||
|
|
4252d015ca | ||
|
|
9fd0072740 | ||
|
|
4dbbdb1671 | ||
|
|
4b5c9acc72 | ||
|
|
b63218206d | ||
|
|
349ccf229b | ||
|
|
85602b406a | ||
|
|
cc6077fbf5 | ||
|
|
495534a054 | ||
|
|
57513f38d3 | ||
|
|
0b3abf2c78 | ||
|
|
9294ef73b7 | ||
|
|
36ec06493e | ||
|
|
6068ad15d4 | ||
|
|
c2c9173eff | ||
|
|
99e7856269 | ||
|
|
1355d415e9 | ||
|
|
410059c9f3 | ||
|
|
80096884f6 | ||
|
|
d2dd2ae306 | ||
|
|
5c3ce875b2 | ||
|
|
6970250b57 | ||
|
|
c880c53199 | ||
|
|
75371d1462 | ||
|
|
2c762f47c9 | ||
|
|
3246efa580 | ||
|
|
4060afb7c7 | ||
|
|
e4d3f51161 | ||
|
|
1777e9d0b1 | ||
|
|
707b454bf4 | ||
|
|
ca4c99b1bf | ||
|
|
a302549d3e | ||
|
|
1a7418e890 | ||
|
|
c1219a3b48 | ||
|
|
632e4ac6ac | ||
|
|
18ae17871d | ||
|
|
09ebb217dd | ||
|
|
dbccfc2b26 | ||
|
|
28f7240dd3 | ||
|
|
9f10956ce1 | ||
|
|
c9a50b2f2d | ||
|
|
d683d7185d | ||
|
|
fc13938fc6 | ||
|
|
f8e8b10e10 | ||
|
|
050292229f | ||
|
|
906e97223a | ||
|
|
dc10b24730 | ||
|
|
d3ef6c330a | ||
|
|
4700762132 | ||
|
|
08d606c3d7 | ||
|
|
ed82b919a0 | ||
|
|
4fa065180b | ||
|
|
cd9b47315c | ||
|
|
062c3948ba | ||
|
|
bff3b902e8 | ||
|
|
3b4900193b | ||
|
|
bab317edd1 | ||
|
|
1dac9248ad | ||
|
|
c57b32fa0c | ||
|
|
43c22b4411 | ||
|
|
bee72be733 | ||
|
|
ea159b6004 | ||
|
|
ac72f28fc8 | ||
|
|
e4e7966d64 | ||
|
|
48cb526e0b | ||
|
|
fd6d28a9fa | ||
|
|
944dc988bf | ||
|
|
2fac218a36 | ||
|
|
16c184efdf | ||
|
|
6b5c49c269 | ||
|
|
af6a43c49b | ||
|
|
18310cfd7c | ||
|
|
9046767da4 | ||
|
|
f70c83345a | ||
|
|
52f5f9545a | ||
|
|
1434fb66d3 | ||
|
|
f325a0016b | ||
|
|
9d7bcac680 | ||
|
|
8d11ab3c35 | ||
|
|
56e491ad8a | ||
|
|
9296a369de | ||
|
|
9050e6ee87 | ||
|
|
84af4f0133 | ||
|
|
6338413696 | ||
|
|
fbec7bda6a | ||
|
|
0f371a2869 | ||
|
|
c30346cf5d | ||
|
|
64ef2389dc | ||
|
|
6ec55cbeeb | ||
|
|
3430cdd91b | ||
|
|
9702568161 | ||
|
|
016a9d6535 | ||
|
|
9f10c1a805 | ||
|
|
7631a47612 | ||
|
|
b8851143f9 | ||
|
|
f3028ff6f3 | ||
|
|
3d35fae890 | ||
|
|
1636291b03 | ||
|
|
e69e8d35b9 | ||
|
|
9438540bf9 | ||
|
|
d34179b9eb | ||
|
|
90074ce98c | ||
|
|
fd0054a800 | ||
|
|
0fb5f15673 | ||
|
|
16929129f0 | ||
|
|
524e48a81d | ||
|
|
76b1a3a88d | ||
|
|
b74351e55f | ||
|
|
a1b4dc42cb | ||
|
|
5ae5125919 | ||
|
|
82a68cd3da | ||
|
|
a41150836a | ||
|
|
e637b43117 | ||
|
|
443ba0f396 | ||
|
|
71ea4a2c9b | ||
|
|
a8ab18bd50 | ||
|
|
ce91423a19 | ||
|
|
5875d1419b | ||
|
|
24a9bc23b7 | ||
|
|
97c3688788 | ||
|
|
0b915b1dd2 | ||
|
|
5fcbfa780f | ||
|
|
a736010fdd | ||
|
|
b733125085 | ||
|
|
5ef36f1b6f | ||
|
|
7cc772cd39 | ||
|
|
7ae73fad68 | ||
|
|
96dcfd3cfe | ||
|
|
9833841101 | ||
|
|
1cd67b62e9 | ||
|
|
ffde9f7842 | ||
|
|
2819509786 | ||
|
|
5b222996c8 | ||
|
|
62e22b2995 | ||
|
|
2346be55fc | ||
|
|
61d0c4042b | ||
|
|
de0b373c7c | ||
|
|
2c1926993b | ||
|
|
e14a3af491 | ||
|
|
0968fd339f | ||
|
|
2ca1861a54 | ||
|
|
ce9daa4857 | ||
|
|
e15fb6b9b2 | ||
|
|
f1ffc72a62 | ||
|
|
37eee4235d | ||
|
|
871d530d6a | ||
|
|
16b1e84138 | ||
|
|
100ce7b62f | ||
|
|
c01cba3ab5 | ||
|
|
ef1607c088 | ||
|
|
123e8c8d2b | ||
|
|
9667eec9de | ||
|
|
26625f3e2a | ||
|
|
e94e6d8d95 | ||
|
|
f0bc50eb71 | ||
|
|
6163fb830e | ||
|
|
167948f5c3 | ||
|
|
37d191bc02 | ||
|
|
da7b648971 | ||
|
|
8b7f43f855 | ||
|
|
21770eb0f3 | ||
|
|
17be8023d9 | ||
|
|
9754c5b32b | ||
|
|
a16cb39423 | ||
|
|
dfefb05b10 | ||
|
|
55bdf2682c | ||
|
|
3a50ae92ec | ||
|
|
fe77f6a2f3 | ||
|
|
cd35218141 | ||
|
|
daeef8d5b3 | ||
|
|
184230058a | ||
|
|
a08b323e61 | ||
|
|
745cc5c655 | ||
|
|
3719c3b736 | ||
|
|
0e424de684 | ||
|
|
285ef0ca01 | ||
|
|
ce0df52b7e | ||
|
|
e03204dccf | ||
|
|
0dea2d8515 | ||
|
|
31469bb05b | ||
|
|
b4f8e5cdb9 | ||
|
|
cefec77646 | ||
|
|
7c7adc1361 | ||
|
|
af6609b0a3 | ||
|
|
3ae950d829 | ||
|
|
c2f64d4da1 | ||
|
|
9b941dd800 | ||
|
|
4b9f6baf79 | ||
|
|
a675cbd13b | ||
|
|
bd77afb2df | ||
|
|
681f5a521f | ||
|
|
f55b9a8530 | ||
|
|
da6f954e0d | ||
|
|
453eaf6871 | ||
|
|
0ce709d96a | ||
|
|
fd808dec52 | ||
|
|
ac949f8181 | ||
|
|
48c2c8c049 | ||
|
|
2e2e134a1b | ||
|
|
4e8bd97d9c | ||
|
|
a31eb6a80c | ||
|
|
b0dd7bee5b | ||
|
|
a291c1676f | ||
|
|
7bfa302b75 | ||
|
|
0935ab14d6 | ||
|
|
9797b676b1 | ||
|
|
2b02f7eb99 | ||
|
|
71e2c26577 | ||
|
|
b78b36ce33 | ||
|
|
0130efeedf | ||
|
|
35b51fcbb5 | ||
|
|
9a5aa059f9 | ||
|
|
8b91360a33 | ||
|
|
85d80d8fb7 | ||
|
|
695da9ee29 | ||
|
|
d114e9040b | ||
|
|
c600196b1a | ||
|
|
3d8edcb77b | ||
|
|
f496740c19 | ||
|
|
0c2a207d82 | ||
|
|
e9c456ff5c | ||
|
|
bcbe1b410a | ||
|
|
206820d27a | ||
|
|
8d8b72cf3f | ||
|
|
a3cc9aaf6f | ||
|
|
812424bf46 | ||
|
|
8af05c28a3 | ||
|
|
970600724d | ||
|
|
c038f513d3 | ||
|
|
1e5978ad4f | ||
|
|
2dbc991af9 | ||
|
|
c4b9c12677 | ||
|
|
d7759b88ee | ||
|
|
25e4fcf5c8 | ||
|
|
ce382788b0 | ||
|
|
c7874ed3fe | ||
|
|
65affacc50 | ||
|
|
6e9159a9ad | ||
|
|
dda23a6076 | ||
|
|
8d71a931a3 | ||
|
|
0a67d7e951 | ||
|
|
52f3377d9e | ||
|
|
b24a9b29d7 | ||
|
|
bac93e14ad | ||
|
|
1454e448e6 | ||
|
|
9b16e245ba | ||
|
|
c2f59e72d6 | ||
|
|
7a5cfc4bae | ||
|
|
f5129dbd1a | ||
|
|
07cbc0193a | ||
|
|
1c1346dfa9 | ||
|
|
58af6db3a7 | ||
|
|
342234eb64 | ||
|
|
93cfc7edbb | ||
|
|
5b6a2d9efe | ||
|
|
5ddfd912ef | ||
|
|
e9cc9ae816 | ||
|
|
ba2a7d72e7 | ||
|
|
308affdcf0 | ||
|
|
07e2c898c6 | ||
|
|
b9fad14f87 | ||
|
|
5a71521021 | ||
|
|
11aa17a57c | ||
|
|
d2397b60e7 | ||
|
|
c31422b308 | ||
|
|
7ea9909618 | ||
|
|
62fa5d59cb | ||
|
|
7acf5d3831 | ||
|
|
1112eb75e3 | ||
|
|
ef268c5ee5 | ||
|
|
15b7f9793f | ||
|
|
04cc1968db | ||
|
|
4891be8d0d | ||
|
|
cc46604bdb | ||
|
|
bcbd448767 | ||
|
|
892c020b00 | ||
|
|
8e5b1c44bc | ||
|
|
2340e7e6e5 | ||
|
|
98ecfc4f76 | ||
|
|
0ca42e81f3 | ||
|
|
8b2d07e82e | ||
|
|
3e9f7ab3e4 | ||
|
|
89524d55bd | ||
|
|
2dc07d7505 | ||
|
|
4e73726bee | ||
|
|
dfc27e3c30 | ||
|
|
c78f7463a9 | ||
|
|
793a42e7f5 | ||
|
|
700c31dd13 | ||
|
|
f023b89b73 | ||
|
|
5eb431dcd0 | ||
|
|
5d99398850 | ||
|
|
43fc696d7b | ||
|
|
bfe9d594a9 | ||
|
|
8651799097 | ||
|
|
9d8fb81413 | ||
|
|
34c0f77319 | ||
|
|
7b628ca09c | ||
|
|
5dc260d07e | ||
|
|
86ac5f09bc | ||
|
|
1c492e2791 | ||
|
|
d7dbe6f329 | ||
|
|
c1734c6ec5 | ||
|
|
b2141a204f | ||
|
|
ce90e0c372 | ||
|
|
296fb41e92 | ||
|
|
30992a8b05 | ||
|
|
af5c4dedca | ||
|
|
8b3afa5831 | ||
|
|
574ecfb9c4 | ||
|
|
466f9a3eb0 | ||
|
|
6644c2fd17 | ||
|
|
49447decdd | ||
|
|
4720270763 | ||
|
|
e49dcfeff7 | ||
|
|
70e778c2a8 | ||
|
|
975477d0f0 | ||
|
|
1580b5fb56 | ||
|
|
ebf4ac4e83 | ||
|
|
64b3d28d41 | ||
|
|
07a4b26697 | ||
|
|
cf55a38879 | ||
|
|
7a734e0a28 | ||
|
|
e0b35b3086 | ||
|
|
49bec758b7 | ||
|
|
950d03a9ea | ||
|
|
e6a1209c53 | ||
|
|
f2316a8eda | ||
|
|
8f58e07ea1 | ||
|
|
9943ca916d | ||
|
|
75a76fb836 | ||
|
|
2a0ab2aa9b | ||
|
|
fd5398ce80 | ||
|
|
633bef7ef1 | ||
|
|
fcd09abec6 | ||
|
|
38071ce9d5 | ||
|
|
8642ac8e86 | ||
|
|
57d6ef26e9 | ||
|
|
6a38441562 | ||
|
|
4b8409096d | ||
|
|
39dc989915 | ||
|
|
5273415ce5 | ||
|
|
47a91e7457 | ||
|
|
f5c6875da5 | ||
|
|
eec11a6651 | ||
|
|
b95e6602c3 | ||
|
|
6897372258 | ||
|
|
ee1d506d06 | ||
|
|
d620500757 | ||
|
|
65dd2214d9 | ||
|
|
3d8bc140aa | ||
|
|
d8f40e080d | ||
|
|
6ab53fca36 | ||
|
|
8fafc2f9ed | ||
|
|
c4580ee2ca | ||
|
|
a8fa61ed68 | ||
|
|
f3779b8e73 | ||
|
|
ca5b996299 | ||
|
|
baf218c233 | ||
|
|
7880e6e6c8 | ||
|
|
97305b7461 | ||
|
|
1fca65fdf6 | ||
|
|
aaa019ce37 | ||
|
|
32d2be0d08 | ||
|
|
83e4d04ce7 | ||
|
|
8901d23685 | ||
|
|
98a03c192d | ||
|
|
f4419bd240 | ||
|
|
07e1a158e9 | ||
|
|
2641884342 | ||
|
|
b1bc549cf7 | ||
|
|
8cf57eb582 | ||
|
|
aa404ded34 | ||
|
|
eee5046b82 | ||
|
|
9222a5d376 | ||
|
|
0a0f8ff41c | ||
|
|
fe7180bc74 | ||
|
|
bdf733973c | ||
|
|
0f45386673 | ||
|
|
88d2a97670 | ||
|
|
922c361f6a | ||
|
|
0e4db0b28f | ||
|
|
d150a2f4dd | ||
|
|
5eeb704f25 | ||
|
|
e3c2a95e5f | ||
|
|
e45ddc086f | ||
|
|
51ced7d3e3 | ||
|
|
036e580045 | ||
|
|
9eaed7cec7 | ||
|
|
eb5b298bc1 | ||
|
|
5de8271181 | ||
|
|
f4ff5ecbdf | ||
|
|
1ebebbc698 | ||
|
|
b3f5131981 | ||
|
|
8399d31af2 | ||
|
|
1d2b52d15c | ||
|
|
4fe8b8e5b7 | ||
|
|
cb1114dba6 | ||
|
|
c720bdc324 | ||
|
|
bc412e1f6f | ||
|
|
ddd151a23b | ||
|
|
ac20150d04 | ||
|
|
9594c82180 | ||
|
|
93b663e43d | ||
|
|
65820893c9 | ||
|
|
6a65631cbd | ||
|
|
382be2cb46 | ||
|
|
0aa3a0a5b0 | ||
|
|
77b449856d | ||
|
|
b59d93b01e | ||
|
|
afe34df3cc | ||
|
|
9af4c0420e | ||
|
|
952a4ab94a | ||
|
|
e210f271bb | ||
|
|
64b20cac88 | ||
|
|
f90c09d715 | ||
|
|
5644da1a3e | ||
|
|
a2d6e58875 | ||
|
|
0815c83974 | ||
|
|
65ca0503a7 | ||
|
|
5f68c562f9 | ||
|
|
9ba080e829 | ||
|
|
4df0385c23 | ||
|
|
75cad910db | ||
|
|
262f00df3e | ||
|
|
1dce0b2af1 | ||
|
|
c33f39b39c | ||
|
|
bcc4580cdc | ||
|
|
dba3aaedab | ||
|
|
c9cd8bd13b | ||
|
|
5c1ca0cc47 | ||
|
|
2ac8c83be0 | ||
|
|
66869f2239 | ||
|
|
1bc5036d2e | ||
|
|
bcdc68ac94 | ||
|
|
f8d5c4594f | ||
|
|
437dc22862 | ||
|
|
271178d1a5 | ||
|
|
5287b482e6 | ||
|
|
4fe24a4f3c | ||
|
|
551cb26afb | ||
|
|
d9ae284463 | ||
|
|
00d5f6699b | ||
|
|
3ca4bab2d5 | ||
|
|
e9c855f837 | ||
|
|
f09e7ac630 | ||
|
|
e511b14b2a | ||
|
|
6ca32d800d | ||
|
|
218ab7f967 | ||
|
|
099ad31deb | ||
|
|
2644b9d792 | ||
|
|
67cdf1c9b3 | ||
|
|
1eddf254e1 | ||
|
|
c148c33510 | ||
|
|
429abc1278 | ||
|
|
3dca3baaec | ||
|
|
bbb6e25c68 | ||
|
|
b428227895 | ||
|
|
6c8ba6c5fc | ||
|
|
01f567e915 | ||
|
|
f44f98be33 | ||
|
|
16f24086f8 | ||
|
|
f4ab46a8bd | ||
|
|
8ae4c745e1 | ||
|
|
b274d22205 | ||
|
|
159a1e4bf2 | ||
|
|
a6596ace70 | ||
|
|
28ad93f02f | ||
|
|
4575df38e6 | ||
|
|
b36b7fee16 | ||
|
|
01847cabd2 | ||
|
|
9a721adbff | ||
|
|
ceb78d2bb9 | ||
|
|
02644ab65a | ||
|
|
98c2d20ab0 | ||
|
|
84e76ce4ad | ||
|
|
05a382172f | ||
|
|
766ce5ab7b | ||
|
|
463f2b7dab | ||
|
|
a6b089bd17 | ||
|
|
05bca1e4e4 | ||
|
|
73a18c99e6 | ||
|
|
c795c6742d | ||
|
|
cc2c50ad09 | ||
|
|
f990df97ce | ||
|
|
5d7ed5cbce | ||
|
|
12dbc1ed7b | ||
|
|
cf78745271 | ||
|
|
52865750da | ||
|
|
6b45f39322 | ||
|
|
31b8ad8230 | ||
|
|
49c4f29c1f | ||
|
|
a35730a7b6 | ||
|
|
b8993dbd78 | ||
|
|
c94091d8b1 | ||
|
|
4c01845f32 | ||
|
|
b17f5b750e | ||
|
|
a16dcbbb5b | ||
|
|
c74df4c880 | ||
|
|
e34190fe66 | ||
|
|
7cbb9add48 | ||
|
|
35a6946b63 | ||
|
|
1cb8f0fa73 | ||
|
|
5bca8a1d47 | ||
|
|
7e93c2368e | ||
|
|
9fad889f26 | ||
|
|
95294d245c | ||
|
|
c5b600ad48 | ||
|
|
9cce277eaf | ||
|
|
7e3fe03fb0 | ||
|
|
1bc8c92e2f | ||
|
|
f0d332e287 | ||
|
|
e7ecedf3e9 | ||
|
|
d034c004f9 | ||
|
|
7ba61bc983 | ||
|
|
2b55f2d00f | ||
|
|
4d19970663 | ||
|
|
5ccb4f10d2 | ||
|
|
6375982d19 | ||
|
|
58882c0555 | ||
|
|
fd7be10f3a | ||
|
|
1c1ba17908 | ||
|
|
ef25009bcd | ||
|
|
3c5b68caa7 | ||
|
|
37fe03e1ca | ||
|
|
36d5d764d8 | ||
|
|
b310d7c40d | ||
|
|
290fb7f7e7 | ||
|
|
aa0be51d40 | ||
|
|
77bab6c782 | ||
|
|
9d81d24a7a | ||
|
|
de848d4e1c | ||
|
|
440eba7c9b | ||
|
|
cf81ee5f41 | ||
|
|
e29ef5561f | ||
|
|
6ef45c9e33 | ||
|
|
2094667417 | ||
|
|
928f6e068b | ||
|
|
e253ce0948 | ||
|
|
58feb81c36 | ||
|
|
f4ac41b5d9 | ||
|
|
033eebce29 | ||
|
|
40a187f0de | ||
|
|
a8d499208b | ||
|
|
a5a1435867 | ||
|
|
ed9abb0cb0 | ||
|
|
fcce3ff5ac | ||
|
|
85c4c25bc2 | ||
|
|
35bd08f7d7 | ||
|
|
cfa7a43ee7 | ||
|
|
52c962cb5b | ||
|
|
43c1f17d1f | ||
|
|
a04c29aaf1 | ||
|
|
af5a062424 | ||
|
|
8882e52539 | ||
|
|
ccc22bb968 | ||
|
|
05953a0680 | ||
|
|
d132c131eb | ||
|
|
1e8af74564 | ||
|
|
1ff60e7534 | ||
|
|
7b7b4b46af | ||
|
|
d61ef19ecf | ||
|
|
b765619ad6 | ||
|
|
e8b848dfcf | ||
|
|
467a106db0 | ||
|
|
3d6d2651da | ||
|
|
a5eaa907e2 | ||
|
|
50284f38a6 | ||
|
|
09c6802891 | ||
|
|
4bdad99ead | ||
|
|
56885fae4d | ||
|
|
d173f777a7 | ||
|
|
94ea5f28db | ||
|
|
b70f6fcb51 | ||
|
|
6fecda6b73 | ||
|
|
cbae4a31aa | ||
|
|
13364767fb | ||
|
|
3e73ea2e26 | ||
|
|
21b8f80a99 | ||
|
|
23f1e008a2 | ||
|
|
380e7e1cfb | ||
|
|
2106afc4d4 | ||
|
|
97cd944237 | ||
|
|
5cf39ef6c5 | ||
|
|
90727f305e | ||
|
|
78dd366272 | ||
|
|
dddc645d4b | ||
|
|
bd547ace80 | ||
|
|
194a5c896e | ||
|
|
7c5c4f5694 | ||
|
|
6b25e6935e | ||
|
|
bebce1ec63 | ||
|
|
eea925e7e0 | ||
|
|
a1e0af20b8 | ||
|
|
9e342c17b2 | ||
|
|
9bd4a8f7bb | ||
|
|
ed56c1350e | ||
|
|
0c6512cd33 | ||
|
|
75b14341af | ||
|
|
fa3404920a | ||
|
|
353f899309 | ||
|
|
bdbd70ca0f | ||
|
|
87746d611b | ||
|
|
a00eb95e29 | ||
|
|
e468a61811 | ||
|
|
4ee298fe20 | ||
|
|
999d39ec0b | ||
|
|
6772d3a102 | ||
|
|
ba0657410d | ||
|
|
03fde4c3fd | ||
|
|
b189b6e947 | ||
|
|
3b247daf75 | ||
|
|
6b556a186f | ||
|
|
03f0431800 | ||
|
|
b56979ebe1 | ||
|
|
4123ce1a4f | ||
|
|
5d52e22aee | ||
|
|
ae4595f9e2 | ||
|
|
8ccfe2957f | ||
|
|
63adad8caf | ||
|
|
162c3f2d13 | ||
|
|
e03cde7cd5 | ||
|
|
27736f1103 | ||
|
|
81dc410e50 | ||
|
|
731adbc9a0 | ||
|
|
dba221ba22 | ||
|
|
45249b4a71 | ||
|
|
0450615b61 | ||
|
|
9f45ec1959 | ||
|
|
4bb610c984 | ||
|
|
0769f90301 | ||
|
|
31db186baf | ||
|
|
2501cb0160 | ||
|
|
a2ac1d22af | ||
|
|
fcf77792bc | ||
|
|
b582d64df2 | ||
|
|
552e21c6ab | ||
|
|
2a0357814a | ||
|
|
583135aef7 | ||
|
|
80f9ae7789 | ||
|
|
959b6a80d0 | ||
|
|
3c1a9bcb74 | ||
|
|
386ba0abfd | ||
|
|
146aafed92 | ||
|
|
2f89501a6e | ||
|
|
b11069420d | ||
|
|
5a81acce3a | ||
|
|
8a43083415 | ||
|
|
6df6dac128 | ||
|
|
d3c4f5c444 | ||
|
|
e68c4f584b | ||
|
|
ff5f2c357d | ||
|
|
285b47ff36 | ||
|
|
0a113d7f0c | ||
|
|
dea662c796 | ||
|
|
4ec6520927 | ||
|
|
b0da58ad89 | ||
|
|
43b5105a5e | ||
|
|
c93ae8666c | ||
|
|
d8052f733d | ||
|
|
e7966f37ec | ||
|
|
7e6e1cbf96 | ||
|
|
2c39345fb4 | ||
|
|
43f74ebcfe | ||
|
|
aa44ac4b24 | ||
|
|
acf177f651 | ||
|
|
02a61e5277 | ||
|
|
8d138061a9 | ||
|
|
dd0dafbeec | ||
|
|
3ae3cdaa64 | ||
|
|
4f2d74edb9 | ||
|
|
4aa3bc7bee | ||
|
|
6c6e8509ad | ||
|
|
5875bb3195 | ||
|
|
25de617c92 | ||
|
|
1abe377e20 | ||
|
|
88b85752a2 | ||
|
|
fde64ace31 | ||
|
|
3369881e73 | ||
|
|
f42a0759f8 | ||
|
|
e19da7bb36 | ||
|
|
306132eda3 | ||
|
|
1be0100911 | ||
|
|
7896361084 | ||
|
|
bdf6b3e312 | ||
|
|
af36e99317 | ||
|
|
8e84f361ac | ||
|
|
c921e4a3f1 | ||
|
|
f524c72095 | ||
|
|
b09290b9cb | ||
|
|
7de90a82b0 | ||
|
|
c412d0069e | ||
|
|
277360e656 | ||
|
|
a61b959491 | ||
|
|
09da245aa0 | ||
|
|
872304852e | ||
|
|
75741d7d44 | ||
|
|
849c743cd2 | ||
|
|
52144c0577 | ||
|
|
1e9706d76d | ||
|
|
db51f285f8 | ||
|
|
8392a86300 | ||
|
|
6edae78c6f | ||
|
|
136c696043 | ||
|
|
2e71ea4db9 | ||
|
|
7914adff1e | ||
|
|
2dcd9e7eb9 | ||
|
|
2a6acf3c90 | ||
|
|
cd7f6db1d3 | ||
|
|
15e8e67017 | ||
|
|
105350b826 | ||
|
|
d003fb4288 | ||
|
|
c2d6ceb0f3 | ||
|
|
7c7cec0416 | ||
|
|
ddfd2fd442 | ||
|
|
c654a6fceb | ||
|
|
bced6fab58 | ||
|
|
cd9680c61c | ||
|
|
80f797b2e5 | ||
|
|
2960a5cd72 | ||
|
|
0d4b4c4942 | ||
|
|
c772256e93 | ||
|
|
4b5e7cdab7 | ||
|
|
588669ea6a | ||
|
|
e6c58ae4f2 | ||
|
|
afb1dc1d79 | ||
|
|
7500f4b2ca | ||
|
|
8d96b184df | ||
|
|
5c620959bb | ||
|
|
08bff8e090 | ||
|
|
8bcf68e5e0 | ||
|
|
e5af1ea3bc | ||
|
|
6afbf1b166 | ||
|
|
600929ee6d | ||
|
|
d2874f6a49 | ||
|
|
a1a0c18478 | ||
|
|
ba65185bcb | ||
|
|
a17221258d | ||
|
|
a00380c7c2 | ||
|
|
2ef7a12383 | ||
|
|
d54470ef98 | ||
|
|
17bbdf790e | ||
|
|
bcad0d4de7 | ||
|
|
9ab63dced8 | ||
|
|
e79ed4f738 | ||
|
|
b897ad3ec2 | ||
|
|
daed2a79f9 | ||
|
|
0a5470e802 | ||
|
|
a02b2d1c5b | ||
|
|
0cc88b8669 | ||
|
|
c4fbcaeb21 | ||
|
|
a85413c802 | ||
|
|
24a5f9ba29 | ||
|
|
e9f376825c | ||
|
|
3c0f18f704 | ||
|
|
f7e9b91701 | ||
|
|
e7246837a1 | ||
|
|
fd4a210b84 | ||
|
|
9a7874a680 | ||
|
|
5c2ec9cad2 | ||
|
|
5b248962e7 | ||
|
|
65027bff99 | ||
|
|
f35e13d57e | ||
|
|
04572506ba | ||
|
|
ebf78e5ea6 | ||
|
|
7e695c0086 | ||
|
|
40b7b99c2c | ||
|
|
61de6032af | ||
|
|
b901f55164 | ||
|
|
9eac93d176 | ||
|
|
a4ced701dc | ||
|
|
0d65a1fe10 | ||
|
|
de50c709a4 | ||
|
|
3b5ad05627 | ||
|
|
1ea4dc13f0 | ||
|
|
74a600b833 | ||
|
|
4b271ee430 | ||
|
|
6e4e5fa94c | ||
|
|
8e9042142c | ||
|
|
5a2425d585 | ||
|
|
bf19759188 | ||
|
|
0bcd812bd5 | ||
|
|
2769c74c74 | ||
|
|
64c93a0569 | ||
|
|
f01bc3c752 | ||
|
|
9bba47129a | ||
|
|
54b03f6e8a | ||
|
|
71930db9b0 | ||
|
|
e4016c1a77 | ||
|
|
b37ffde4ed | ||
|
|
dd7a346ac8 | ||
|
|
d3963d6ea2 | ||
|
|
0592b1dbed | ||
|
|
7b3dbf1108 | ||
|
|
60e8cf4746 | ||
|
|
a396e69384 | ||
|
|
6eebd11a06 | ||
|
|
56ac919f54 | ||
|
|
cbc1e407c3 | ||
|
|
e55d6eed2b | ||
|
|
ed18a318b9 | ||
|
|
80969a59a5 | ||
|
|
a0f8b8c68a | ||
|
|
5774069cfe | ||
|
|
83ad9fa780 | ||
|
|
a63a0ccc10 | ||
|
|
734775e410 | ||
|
|
4987067a18 | ||
|
|
a6ab6e2131 | ||
|
|
a9e4ff2029 | ||
|
|
7eea306b0f | ||
|
|
7b708255f5 | ||
|
|
46e8717e6c | ||
|
|
e85f8011d5 | ||
|
|
ae02cad3f5 | ||
|
|
f0529ca253 | ||
|
|
349eb9481d | ||
|
|
889ed66a01 | ||
|
|
ede7576899 | ||
|
|
299c61896e | ||
|
|
fb03027b5b | ||
|
|
d3ec0e204f | ||
|
|
9bd8e6e604 | ||
|
|
3086fff66d | ||
|
|
2b709315e3 | ||
|
|
a7adf3d369 | ||
|
|
59113ea3ae | ||
|
|
5fc353797f | ||
|
|
6190130626 | ||
|
|
f6cd941522 | ||
|
|
a6c216db00 | ||
|
|
4394169405 | ||
|
|
6e5665de4e | ||
|
|
ea6d96f409 | ||
|
|
2659febd1b | ||
|
|
1405158dfb | ||
|
|
d6d8c0b80d | ||
|
|
d9491fe022 | ||
|
|
3609063d81 | ||
|
|
7904f49b5d | ||
|
|
d35ca945c2 | ||
|
|
a20a341729 | ||
|
|
7381c33f76 | ||
|
|
1091ee2318 | ||
|
|
b79dd18ca5 | ||
|
|
3abfc3566b | ||
|
|
71992634a6 | ||
|
|
90ff529b55 | ||
|
|
5a8b3b8ad7 | ||
|
|
418972b423 | ||
|
|
c1d4917593 | ||
|
|
65d6e28b4f | ||
|
|
3c435f7856 | ||
|
|
659c3e0e12 | ||
|
|
1e9cba9972 | ||
|
|
c3bf97002d | ||
|
|
16452c16da | ||
|
|
05970fe1fb | ||
|
|
0f20d5913d | ||
|
|
0acf8a6618 | ||
|
|
547ac721fa | ||
|
|
8ff70a6224 | ||
|
|
b880c6663c | ||
|
|
66e52396dc | ||
|
|
92225faa82 | ||
|
|
36718c45fc | ||
|
|
118c134918 | ||
|
|
85dbb9cc92 | ||
|
|
e11f1476af | ||
|
|
f5d896542a | ||
|
|
961d0a159a | ||
|
|
1597424d17 | ||
|
|
465e185a74 | ||
|
|
5abee04991 | ||
|
|
a884ca155e | ||
|
|
d3f912a79e | ||
|
|
5d7aabb38a | ||
|
|
adda6f6dd1 | ||
|
|
5191a57037 | ||
|
|
7d1c9fa1a4 | ||
|
|
dd5996379d | ||
|
|
a0d471eda5 | ||
|
|
f58501fc62 | ||
|
|
80dc9b97f2 | ||
|
|
d018b08082 | ||
|
|
576ee66f20 | ||
|
|
b55b49ac4e | ||
|
|
712f4a7f5d | ||
|
|
528972ef8b | ||
|
|
8b4c7434c3 | ||
|
|
b0760bbab5 | ||
|
|
ac8bcb5edb | ||
|
|
2b98ffd776 | ||
|
|
b373126927 | ||
|
|
34bb627a54 | ||
|
|
92584630c3 | ||
|
|
6035ef353a | ||
|
|
4bd42e1cf0 | ||
|
|
f95919b5a3 | ||
|
|
43657c4dd8 | ||
|
|
e158ee542d | ||
|
|
6256b88768 | ||
|
|
57d9c500a8 | ||
|
|
35d1f51d75 | ||
|
|
1ee94d5bd2 | ||
|
|
d513a62862 | ||
|
|
76ef4fc976 | ||
|
|
fe858a9196 | ||
|
|
6770356c5b | ||
|
|
ebccbaeee9 | ||
|
|
b64c71eece | ||
|
|
4b4bc8a380 | ||
|
|
485ef8c4fc | ||
|
|
5b880512fb | ||
|
|
3b43a192f1 | ||
|
|
911f74496d | ||
|
|
7118df32bb | ||
|
|
73c0300d63 | ||
|
|
0cf76f628e | ||
|
|
ee83e25120 | ||
|
|
d6fb068230 | ||
|
|
e1e3cee16a | ||
|
|
fb6d438485 | ||
|
|
f84f7f8acb | ||
|
|
8e912b4a20 | ||
|
|
6c5472a84c | ||
|
|
1f887bb863 | ||
|
|
1739513095 | ||
|
|
621fe3f5d2 | ||
|
|
0196bbee21 | ||
|
|
e4670b7513 | ||
|
|
4601531bf0 | ||
|
|
520f7e78ac | ||
|
|
9962df69d6 | ||
|
|
47498eb375 | ||
|
|
c78c810294 | ||
|
|
8dc6f839a9 | ||
|
|
c8d51cc05a | ||
|
|
c99a9a6cb7 | ||
|
|
fb95f6b225 | ||
|
|
c747a08649 | ||
|
|
ee5144924b | ||
|
|
ba9c64dc14 | ||
|
|
57f2208bdf | ||
|
|
a2313cede3 | ||
|
|
996a7ade9f | ||
|
|
024233feeb | ||
|
|
48058fac99 | ||
|
|
9a9bb823f6 | ||
|
|
73ab469102 | ||
|
|
c6967634c9 | ||
|
|
f0c283c632 | ||
|
|
4654de7ee5 | ||
|
|
b59908d291 | ||
|
|
a22b333f2a | ||
|
|
636e71d54e | ||
|
|
6ea9332c87 | ||
|
|
72184748d8 | ||
|
|
797d52beb5 | ||
|
|
d875c9988a | ||
|
|
8c1157be22 | ||
|
|
f32153754c | ||
|
|
44ee4caf6f | ||
|
|
e4fb842757 | ||
|
|
780b919e26 | ||
|
|
f7c32745e0 | ||
|
|
bd8c7915b9 | ||
|
|
91cff94739 | ||
|
|
0c9fb7e063 | ||
|
|
70e2bda971 | ||
|
|
0d54275314 | ||
|
|
b64bfc0153 | ||
|
|
9afed496a8 | ||
|
|
3bf467375b | ||
|
|
aaffcb410f | ||
|
|
d3e0955ddc | ||
|
|
5d4fbf7f02 | ||
|
|
4a927e09b7 | ||
|
|
a577e3507f | ||
|
|
cb67add26a | ||
|
|
2470c0d090 | ||
|
|
2d8dfeff49 | ||
|
|
18290dee8b | ||
|
|
9137862bc7 | ||
|
|
288178e94c | ||
|
|
ebb4f85feb | ||
|
|
f5527c976e | ||
|
|
ab7f57239d | ||
|
|
a822135603 | ||
|
|
6190dc5da5 | ||
|
|
090a913660 | ||
|
|
db2f101971 | ||
|
|
41f4302d39 | ||
|
|
91cada219b | ||
|
|
7d3459f53d | ||
|
|
cf4c9912c3 | ||
|
|
b685cd49a6 | ||
|
|
9c960fcafd | ||
|
|
4acc0351cf | ||
|
|
2f212d1386 | ||
|
|
1e54e94cc2 | ||
|
|
48f64bc6e5 | ||
|
|
667303fc86 | ||
|
|
6768db9a6e | ||
|
|
d516e3523b | ||
|
|
a6d4283986 | ||
|
|
abd9d8bcab | ||
|
|
430532feec | ||
|
|
cf5939c425 | ||
|
|
bbcc08dbb4 | ||
|
|
77b5999b73 | ||
|
|
2f553df8be | ||
|
|
17045601e7 | ||
|
|
0f987a5601 | ||
|
|
fb48557154 | ||
|
|
14846710c5 | ||
|
|
2ba3a6fbbc | ||
|
|
027d64c78f | ||
|
|
d653341e03 | ||
|
|
fd09b30538 | ||
|
|
eea02d9500 | ||
|
|
c7e0ed8e21 | ||
|
|
c34e9ced81 | ||
|
|
344998a873 | ||
|
|
6f7af725ff | ||
|
|
e553e82acc | ||
|
|
78d5a0f201 | ||
|
|
53a8ab5715 | ||
|
|
544ab558dc | ||
|
|
edd550a5ee | ||
|
|
c3ea15f4bc | ||
|
|
efdc60372f | ||
|
|
6f3a092564 | ||
|
|
d1ad1089bc | ||
|
|
29af6560d3 | ||
|
|
ef742f2fa8 | ||
|
|
2c70badad6 | ||
|
|
0d9ebb1fd2 | ||
|
|
ba2c24e77c | ||
|
|
d1cc2b85cb | ||
|
|
7c996fe2e6 | ||
|
|
f9f573ebb4 | ||
|
|
476b3c7404 | ||
|
|
500e5ed949 | ||
|
|
b995e7797d | ||
|
|
69b32a01c4 | ||
|
|
d3ba6f0f12 | ||
|
|
f6002b799b | ||
|
|
874344eead | ||
|
|
6567224125 | ||
|
|
7907de58be | ||
|
|
b686003710 | ||
|
|
cd7dd0f007 | ||
|
|
6ecf7ec138 | ||
|
|
0ab0d35542 | ||
|
|
460ee12906 | ||
|
|
13e2ac08bd | ||
|
|
589993192a | ||
|
|
4812fb8faf | ||
|
|
e105cfcca8 | ||
|
|
f2569c8c6e | ||
|
|
4aec5151e5 | ||
|
|
ac8dd5e59b | ||
|
|
c9f1d146c2 | ||
|
|
180068e46c | ||
|
|
6e59b996ba | ||
|
|
39d111fa63 | ||
|
|
4821b9c10b | ||
|
|
457a13e238 | ||
|
|
6bc0bc2f63 | ||
|
|
856589bd98 | ||
|
|
2fa51493c5 | ||
|
|
4d3698e842 | ||
|
|
647110d513 | ||
|
|
425846f868 | ||
|
|
013dfb0498 | ||
|
|
7168a40328 | ||
|
|
66a297888f | ||
|
|
a02f42f84c | ||
|
|
7d5464adbe | ||
|
|
95c1785271 | ||
|
|
292f60a8a8 | ||
|
|
cfcd8a1531 | ||
|
|
cf4ec2b109 | ||
|
|
628cbc8eb3 | ||
|
|
f66c277e54 | ||
|
|
6544b2b57e | ||
|
|
3943ce5ac5 | ||
|
|
e93bdc79c7 | ||
|
|
3059d0fbb3 | ||
|
|
dc3a1170d4 | ||
|
|
07050901a6 | ||
|
|
f70784a6d1 | ||
|
|
77a0f335cb | ||
|
|
31cfcf2c9f | ||
|
|
5bd5678ba3 | ||
|
|
1c04073e5e | ||
|
|
8fbd92e37d | ||
|
|
7bb75f5553 | ||
|
|
6d6a89780b | ||
|
|
3decfcc442 | ||
|
|
32185fe791 | ||
|
|
3739816ce2 | ||
|
|
874692c9c9 | ||
|
|
a589153d89 | ||
|
|
252f8a0eec | ||
|
|
86173f355a | ||
|
|
b15d862275 | ||
|
|
729e55a357 | ||
|
|
da616966a8 | ||
|
|
92c6837460 | ||
|
|
d8a3c0f841 | ||
|
|
729d445b68 | ||
|
|
25f820c6bf | ||
|
|
a77825799e | ||
|
|
7db88ca6b5 | ||
|
|
9843a9de53 | ||
|
|
aa97c1da2f | ||
|
|
dce542a623 | ||
|
|
e4e915d2ec | ||
|
|
f05428e4f3 | ||
|
|
20249b9f80 | ||
|
|
41575b982c | ||
|
|
b4feb33df9 | ||
|
|
d8dfddffe2 | ||
|
|
8c81fd5fc0 | ||
|
|
0aa0eefd4e | ||
|
|
fa2d6a0d40 | ||
|
|
d1ae1771eb | ||
|
|
08314c328e | ||
|
|
d450c4cdee | ||
|
|
659d4497d0 | ||
|
|
772350a309 | ||
|
|
cf0ee82926 | ||
|
|
150f33c6fa | ||
|
|
56aec17b9b | ||
|
|
92aeb0af55 | ||
|
|
759bfadb93 | ||
|
|
93d03e5147 | ||
|
|
e3a00268eb | ||
|
|
527eb40a2c | ||
|
|
2cdbd2de83 | ||
|
|
d9f6a3f2d2 | ||
|
|
6db9e10ff1 | ||
|
|
1947c62539 | ||
|
|
0843e383b2 | ||
|
|
624bebd20f | ||
|
|
41b03b5c4c | ||
|
|
bfa5b29555 | ||
|
|
13693b7b63 | ||
|
|
1bc3747042 | ||
|
|
689666f17c | ||
|
|
0c12f1684f | ||
|
|
07c010a377 | ||
|
|
9e4c11e280 | ||
|
|
7f836f2d73 | ||
|
|
abd042ea4a | ||
|
|
f004115dae | ||
|
|
d057b89a33 | ||
|
|
dda85d92c9 | ||
|
|
ab888d2ebe | ||
|
|
be9efacf1b | ||
|
|
71025c8bcc | ||
|
|
89f08aae27 | ||
|
|
38cc869104 | ||
|
|
5d8a99e1d4 | ||
|
|
5eaf6d713e | ||
|
|
b4049016ca | ||
|
|
9eaa427ec9 | ||
|
|
5b1eaa7719 | ||
|
|
e6fbbd48db | ||
|
|
56e88fb4dd | ||
|
|
d93f093313 | ||
|
|
dbde52504d | ||
|
|
6d88a3d9c0 | ||
|
|
fddf8f8163 | ||
|
|
f4e578b598 | ||
|
|
a5d0706c78 | ||
|
|
0740cecbfb | ||
|
|
b86ca5f67b | ||
|
|
cc4a164f20 | ||
|
|
40184a9511 | ||
|
|
8859815d7b | ||
|
|
60a0b10174 | ||
|
|
9d54e2ca92 | ||
|
|
89c182e9c5 | ||
|
|
e441360ca7 | ||
|
|
fc26e92b3e | ||
|
|
3e70df3fb3 | ||
|
|
7cda36c601 | ||
|
|
5ccf606107 | ||
|
|
b8eea5cc4a | ||
|
|
c88dd2c52c | ||
|
|
78bf1150ff | ||
|
|
7a20836a1b | ||
|
|
1467ec137a | ||
|
|
552e93bfba | ||
|
|
e617dee621 | ||
|
|
609edc368f | ||
|
|
5b4dcb8d16 | ||
|
|
cdd1a2bdc0 | ||
|
|
43de33afc7 | ||
|
|
958fc3d4f5 | ||
|
|
aecc849692 | ||
|
|
882559f0b9 | ||
|
|
ca21c00f86 | ||
|
|
960cb1a8d5 | ||
|
|
8a3a5c3b74 | ||
|
|
99d61877d6 | ||
|
|
224cfa91fb | ||
|
|
1af67dbe15 | ||
|
|
55bfa6cd02 | ||
|
|
1d0124093c | ||
|
|
70078f48c0 | ||
|
|
44d1b217ac | ||
|
|
3672bb85eb | ||
|
|
6f741e8c10 | ||
|
|
d4767ca763 | ||
|
|
07e695da03 | ||
|
|
4f72021007 | ||
|
|
bc73d21917 | ||
|
|
7ca297a5cc | ||
|
|
e114fca5ee | ||
|
|
d0ca9f2499 | ||
|
|
95daafee0f | ||
|
|
37e4848c6f | ||
|
|
78cd9e89f3 | ||
|
|
15c40f5ea3 | ||
|
|
5f3256d939 | ||
|
|
a2b22c339e | ||
|
|
aed5e39f4d | ||
|
|
bd1e64b9b1 | ||
|
|
31f3050356 | ||
|
|
ba36f5db7e | ||
|
|
a372a0dd6d | ||
|
|
aba032e176 | ||
|
|
e31f44c3d1 | ||
|
|
0d12a1f9ee | ||
|
|
036eb2a9ed | ||
|
|
2eb889be89 | ||
|
|
dd07717b80 | ||
|
|
36a82cfb93 | ||
|
|
6fce02bd85 | ||
|
|
93767bf78f | ||
|
|
a779fc180f | ||
|
|
223ce6b22d | ||
|
|
5d4673742e | ||
|
|
05eb1e5684 | ||
|
|
b4ac7697ac | ||
|
|
2cfc1d42a3 | ||
|
|
be1f469ec5 | ||
|
|
a37f86e89d | ||
|
|
2bd0dcfdfa | ||
|
|
e75535d14c | ||
|
|
1d6923bead | ||
|
|
732124e3dd | ||
|
|
a15e66cc7b | ||
|
|
3eacfe2314 | ||
|
|
89c0d9dd56 | ||
|
|
b21d0f0b22 | ||
|
|
61b2821472 | ||
|
|
1f86e0c87e | ||
|
|
d1ea51e9f2 | ||
|
|
5de2e2c71e | ||
|
|
2c1051f539 | ||
|
|
247f4810c5 | ||
|
|
47b6dc9eea | ||
|
|
aea3b4e280 | ||
|
|
12e0496a79 | ||
|
|
aa87d40f4b | ||
|
|
7d1eced8c6 | ||
|
|
123267685f | ||
|
|
0bec7001ba | ||
|
|
3c87fbfd37 | ||
|
|
fd00950852 | ||
|
|
eb2a6aee4d | ||
|
|
84e8d08ec6 | ||
|
|
92e8eaf581 | ||
|
|
e8e58a511f | ||
|
|
08e40efe11 | ||
|
|
01a0aee1e8 | ||
|
|
8def37c14e | ||
|
|
b3760cd723 | ||
|
|
1cb870be16 | ||
|
|
35232fa422 | ||
|
|
77342a2268 | ||
|
|
b834e21192 | ||
|
|
f4188b3ddc | ||
|
|
963c08d472 | ||
|
|
29b9ced11a | ||
|
|
8ac108ba06 | ||
|
|
8014a0b8d8 | ||
|
|
3bd83eb134 | ||
|
|
a5ebcefeeb | ||
|
|
c806e778d6 | ||
|
|
3850fc5b0b | ||
|
|
6bac11f066 | ||
|
|
bc2ca8afbd | ||
|
|
e403b6111f | ||
|
|
d613ba5fcd | ||
|
|
4dee9be3eb | ||
|
|
61afb8955c | ||
|
|
61d548c7bf | ||
|
|
c1efeefb8a | ||
|
|
3b6c3d8196 | ||
|
|
97cceb47b9 | ||
|
|
94637711b9 | ||
|
|
bdf28e42f6 | ||
|
|
1687455a3f | ||
|
|
84e40a4f74 | ||
|
|
bce60a5a86 | ||
|
|
a7b0bc8790 | ||
|
|
30ca112260 | ||
|
|
b487eb7e13 | ||
|
|
5d24f45ac1 | ||
|
|
c1f65ef975 | ||
|
|
d6ce585ef3 | ||
|
|
c80e048ab3 | ||
|
|
b6a8675658 | ||
|
|
2c0c91e2d0 | ||
|
|
6b97680224 | ||
|
|
c76bebca0b | ||
|
|
b534c4d661 | ||
|
|
170d09b6bd | ||
|
|
b4fc584d18 | ||
|
|
5b2d9f8128 | ||
|
|
d629cfafd6 | ||
|
|
7b125c9731 | ||
|
|
0e3df25526 | ||
|
|
66e8d7346f | ||
|
|
d29dcf3680 | ||
|
|
164483c137 | ||
|
|
6ab5ae8a7a | ||
|
|
5b760fe7c4 | ||
|
|
162e8911db | ||
|
|
bea2cc9cbc | ||
|
|
ce2261dffa | ||
|
|
fa562fa56d | ||
|
|
5bfd241167 | ||
|
|
5a85cc4386 | ||
|
|
ed4a021f85 | ||
|
|
83c1d7c9ef | ||
|
|
de6aed65fb | ||
|
|
57ce49654c | ||
|
|
00bc2638ce | ||
|
|
4605aff04a | ||
|
|
d104c286c8 | ||
|
|
16d5325874 | ||
|
|
e3362a0fda | ||
|
|
f0fdda5678 | ||
|
|
bb2d67e361 | ||
|
|
91e96a8da8 | ||
|
|
8b1924f6c2 | ||
|
|
c6d732eee2 | ||
|
|
21ab47d9fe | ||
|
|
d70e92e79f | ||
|
|
15466865e0 | ||
|
|
125a4c747b | ||
|
|
69668d49e5 | ||
|
|
5cee316d8c | ||
|
|
98393ca849 | ||
|
|
012564d738 | ||
|
|
3403621fc2 | ||
|
|
de23f2f8aa | ||
|
|
b6aa988716 | ||
|
|
a3b48b3229 | ||
|
|
d7ef268e18 | ||
|
|
ba999c9ac3 | ||
|
|
92b27b338d | ||
|
|
eb129d9f90 | ||
|
|
5e270f9d77 | ||
|
|
7e13d6cbfe | ||
|
|
7e6fe52c46 | ||
|
|
893d245dca | ||
|
|
516b54578d | ||
|
|
d49ba50289 | ||
|
|
22f74756b4 | ||
|
|
f07463bdfd | ||
|
|
75374fdc32 | ||
|
|
0332d47424 | ||
|
|
d531d0851f | ||
|
|
e26f96b748 | ||
|
|
8fa1c5ebf1 | ||
|
|
ef18443b6e | ||
|
|
d066c7de30 | ||
|
|
fd56d0f116 | ||
|
|
77fbfb3fbb | ||
|
|
6590d1f8bf | ||
|
|
2d39e44520 | ||
|
|
2c6e5c3fc4 | ||
|
|
4b4df5095e | ||
|
|
1c11dc6630 | ||
|
|
2eb3319351 | ||
|
|
683b171c3f | ||
|
|
ea241fcec7 | ||
|
|
ab1d83fe8d | ||
|
|
5e739acfbb | ||
|
|
a4b8fccfa7 | ||
|
|
9822ea96b8 | ||
|
|
94db83040e | ||
|
|
12f97f1364 | ||
|
|
0aacddb971 | ||
|
|
7e866bb441 | ||
|
|
c2cf1d6493 | ||
|
|
612fad706f | ||
|
|
6728551dc4 | ||
|
|
64a2dda02f | ||
|
|
8d28e72e8a | ||
|
|
0137e5cf94 | ||
|
|
89ca887ea0 | ||
|
|
42414d5667 | ||
|
|
8bb283e616 | ||
|
|
32e2345e53 | ||
|
|
9e31602a20 | ||
|
|
5d0be616b7 | ||
|
|
e7251c0d55 | ||
|
|
1871bbc6a4 | ||
|
|
add1c91425 | ||
|
|
1788503892 | ||
|
|
95aa76b9fa | ||
|
|
95101870e4 | ||
|
|
f2c21b7733 | ||
|
|
d273948f16 | ||
|
|
bb79687f8e | ||
|
|
3db3057d42 | ||
|
|
f6d73cb06e | ||
|
|
b3522b2feb | ||
|
|
710edd34d2 | ||
|
|
743ad44c0a | ||
|
|
9db701ab41 | ||
|
|
a0f9a6ed60 | ||
|
|
1d79703d24 | ||
|
|
f357377de9 | ||
|
|
87adeb61c5 | ||
|
|
e6a5cab1d2 | ||
|
|
9884a5fe14 | ||
|
|
55ff561429 | ||
|
|
4708dd26ca | ||
|
|
3e969244ac | ||
|
|
ac3835227e | ||
|
|
c6393bcd27 | ||
|
|
7d164ad8c7 | ||
|
|
3abb72037b | ||
|
|
34c478a4c4 | ||
|
|
98592fb85d | ||
|
|
6edf0289ed | ||
|
|
faedbf0a61 | ||
|
|
b08d3b2cd6 | ||
|
|
1e810d229e | ||
|
|
a82c486878 | ||
|
|
d42ae4824b | ||
|
|
b1ebe54456 | ||
|
|
ac76e3b004 | ||
|
|
43b18663fd | ||
|
|
45e1fc946d | ||
|
|
65eb232028 | ||
|
|
7cd3d13011 | ||
|
|
764fb63617 | ||
|
|
4de7978b27 | ||
|
|
696bb3b026 | ||
|
|
fb82e2bf86 | ||
|
|
403a916bd5 | ||
|
|
20cdb197e2 | ||
|
|
1f68b8ada0 | ||
|
|
fdfbf16940 | ||
|
|
12c2659765 | ||
|
|
8561dcdee4 | ||
|
|
ded2bcfda5 | ||
|
|
d5173f71d4 | ||
|
|
61ca99cfd9 | ||
|
|
862155fa5e | ||
|
|
74309a1f9e | ||
|
|
8cdb55d94f | ||
|
|
489299cdcc | ||
|
|
b744634141 | ||
|
|
a8789fc858 | ||
|
|
14def643f7 | ||
|
|
a3398650b5 | ||
|
|
65daaf332d | ||
|
|
63995da2c2 | ||
|
|
f3b118d0ad | ||
|
|
f01a2a3360 | ||
|
|
a0566f0fbe | ||
|
|
4b8425938a | ||
|
|
8fa3536aba | ||
|
|
10712a790a | ||
|
|
9cd148de7d | ||
|
|
9b1d4e1a45 | ||
|
|
b089f1adae | ||
|
|
76d54c572a | ||
|
|
7d25dae75e | ||
|
|
282eaef435 | ||
|
|
80dcd30b48 | ||
|
|
76e04ad82b | ||
|
|
afa0d4f3a3 | ||
|
|
e21a65fd05 | ||
|
|
295249cf08 | ||
|
|
91fb170c4a | ||
|
|
0878659513 | ||
|
|
69cebbfca2 | ||
|
|
3c4510573e | ||
|
|
4285d8ec0b | ||
|
|
c2a8c10834 | ||
|
|
4e05fd0541 | ||
|
|
b97e81b27f | ||
|
|
e08cc968cb | ||
|
|
9bee40813f | ||
|
|
5ac6920591 | ||
|
|
70b1beb18b | ||
|
|
964aa40612 | ||
|
|
7e58c7e89a | ||
|
|
3db549fdb5 | ||
|
|
87401392ba | ||
|
|
795c172d9e | ||
|
|
cfe60996c2 | ||
|
|
da3f131185 | ||
|
|
ac06ce2160 | ||
|
|
69653729f0 | ||
|
|
81eb47de0e | ||
|
|
57cf035a73 | ||
|
|
ddaab5a836 | ||
|
|
f97e6d04a7 | ||
|
|
daeede28db | ||
|
|
70f9294e15 | ||
|
|
2c0e8e0a99 | ||
|
|
7f4b1a5797 | ||
|
|
138ee2803d | ||
|
|
c9fee3bd04 | ||
|
|
db5951337e | ||
|
|
d652e87473 | ||
|
|
57eac42a91 | ||
|
|
d61f877a94 | ||
|
|
7eb575d7f8 | ||
|
|
8e5eda79de | ||
|
|
82051a5f22 | ||
|
|
17b9167e52 | ||
|
|
30542225c6 | ||
|
|
759b6c18fd | ||
|
|
0e1941ce21 | ||
|
|
039fb0732c | ||
|
|
6c91aa6e51 | ||
|
|
2eed081b50 | ||
|
|
7551041fa1 | ||
|
|
41a97c5bf9 | ||
|
|
20ed1c32d3 | ||
|
|
969cf9fd48 | ||
|
|
d29930db3a | ||
|
|
015333de8c | ||
|
|
89b9d167d1 | ||
|
|
2693a3beff | ||
|
|
feb315cf9c | ||
|
|
779e5ccc16 | ||
|
|
7b19de97d4 | ||
|
|
5d71d0a0b4 | ||
|
|
42b47fe4d9 | ||
|
|
5a9e381d84 | ||
|
|
f4e118e40a | ||
|
|
071d4c155b | ||
|
|
044f23739c | ||
|
|
05a4991a5f | ||
|
|
078ceb7168 | ||
|
|
9554dd1c33 | ||
|
|
7fd12ca3ae | ||
|
|
e84494b0e0 | ||
|
|
afc7da33c9 | ||
|
|
d820a9890f | ||
|
|
a9f0d334bb | ||
|
|
cee3783e58 | ||
|
|
fceb88005d | ||
|
|
e3c888a7cc | ||
|
|
25267397f6 | ||
|
|
931e461c87 | ||
|
|
409758dd11 | ||
|
|
cd28c3ca83 | ||
|
|
25533b9e08 | ||
|
|
be70e08671 | ||
|
|
480d4b98c7 | ||
|
|
3b7e421eaf | ||
|
|
b069ff253e | ||
|
|
abc15f4d30 | ||
|
|
70bb8bda23 | ||
|
|
665acdb170 | ||
|
|
27ad502119 | ||
|
|
e8b2af1eae | ||
|
|
4d718931be | ||
|
|
290166adb0 | ||
|
|
c2ed8d0240 | ||
|
|
51e5d3ea70 | ||
|
|
c73fcb0731 | ||
|
|
e6b70c3e01 | ||
|
|
614f64ba82 | ||
|
|
b8263d0975 | ||
|
|
95d68b26a6 | ||
|
|
db39c8e109 | ||
|
|
449c248f08 | ||
|
|
66c5a941b3 | ||
|
|
4592b1ccb5 | ||
|
|
9bfd1801aa | ||
|
|
b099e7232f | ||
|
|
c657c7b846 | ||
|
|
eaf09310cd | ||
|
|
fffb69ce61 | ||
|
|
5c989c957a | ||
|
|
8af0764b3b | ||
|
|
c7727b136b | ||
|
|
7a6b6639bc | ||
|
|
08bf4694ca | ||
|
|
60cc51379d | ||
|
|
e035084e49 | ||
|
|
bed878f290 | ||
|
|
0066d162cb | ||
|
|
e0011fd6ba | ||
|
|
8e0ee052eb | ||
|
|
3207ae5570 | ||
|
|
996c1468fa | ||
|
|
fe973a5ab0 | ||
|
|
4f13208547 | ||
|
|
5fa5df02f5 | ||
|
|
89cd35f07f | ||
|
|
7b2ab994e5 | ||
|
|
1f77f2102e | ||
|
|
ab7183217a | ||
|
|
47a9a452d8 | ||
|
|
b3fa316c5e | ||
|
|
b09a22aaf5 | ||
|
|
ba3a7c2bcf | ||
|
|
7539e5b72c | ||
|
|
4dedb51a23 | ||
|
|
3e8d669398 | ||
|
|
c4c94731e1 | ||
|
|
e2f5a742ca | ||
|
|
c5538cfe10 | ||
|
|
d96dcfc398 | ||
|
|
88ea61cfca | ||
|
|
2e4b5f3037 | ||
|
|
e577e753a5 | ||
|
|
04b5e87f42 | ||
|
|
7a97f62c72 | ||
|
|
8bbcb5006e | ||
|
|
4f4c446bc4 | ||
|
|
b5bf409384 | ||
|
|
3fb96b9039 | ||
|
|
e3866b77fe | ||
|
|
c321ddfa9b | ||
|
|
ed4f4ae4e2 | ||
|
|
4bf5dc1df9 | ||
|
|
b6a3a655ae | ||
|
|
4df62a67e7 | ||
|
|
3cfafb6dc4 | ||
|
|
0651f195dd | ||
|
|
309350e74c | ||
|
|
0132b7164e | ||
|
|
2fc881540b | ||
|
|
29a759a655 | ||
|
|
b54a51adb9 | ||
|
|
0b222c2bb0 | ||
|
|
c49d46b6af | ||
|
|
ceefcfcbb7 | ||
|
|
75138577cd | ||
|
|
889ce65974 | ||
|
|
42bda98db7 | ||
|
|
5f482b4565 | ||
|
|
89af1474d8 | ||
|
|
690d22c8b6 | ||
|
|
dc4cc070fc | ||
|
|
7d84dca254 | ||
|
|
322780f649 | ||
|
|
e3fb88b06a | ||
|
|
be5789fe01 | ||
|
|
120b2670da | ||
|
|
a5027d46ae | ||
|
|
3434b9ecf3 | ||
|
|
92a46c292f | ||
|
|
142cce2f29 | ||
|
|
d83aa176a3 | ||
|
|
f105a2fea7 | ||
|
|
6d230fc93e | ||
|
|
b5cc5ca669 | ||
|
|
dead6e3afc | ||
|
|
dc3d0c41fe | ||
|
|
30bdaf80ef | ||
|
|
07d77c1e00 | ||
|
|
5e5f0bd293 | ||
|
|
9974142eef | ||
|
|
6e9be9f1cc | ||
|
|
b1389f1b02 | ||
|
|
b3bd413c3b | ||
|
|
7cd93e6670 | ||
|
|
fa343fa8ad | ||
|
|
1f93de264f | ||
|
|
735f4b5c38 | ||
|
|
2509613bbe | ||
|
|
0b5a8057f2 | ||
|
|
b0a397280e | ||
|
|
bc85dd2330 | ||
|
|
a6b128590d | ||
|
|
8313f19eb8 | ||
|
|
be99967d67 | ||
|
|
f787976bca | ||
|
|
af327cc4f1 | ||
|
|
ce742f665a | ||
|
|
521ccba387 | ||
|
|
b8c50936a6 | ||
|
|
c1e8f3b593 | ||
|
|
0134c14ebf | ||
|
|
d87ea9c88a | ||
|
|
7dc76bf709 | ||
|
|
20ec3d9bbd | ||
|
|
0ed0fd2db0 | ||
|
|
f4eecd3782 | ||
|
|
2e920aaac3 | ||
|
|
216300f2b5 | ||
|
|
394ec8dcbc | ||
|
|
dcb437b1ad | ||
|
|
1be9e3cf2d | ||
|
|
6b82b67065 | ||
|
|
d21cfe6202 | ||
|
|
88698bc998 | ||
|
|
475304c3f5 | ||
|
|
5d39d3a3b2 | ||
|
|
07379ecb4e | ||
|
|
257f3f997a | ||
|
|
d1aea89c7d | ||
|
|
6b33912f42 | ||
|
|
e4f67a7fc9 | ||
|
|
9737c01058 | ||
|
|
2a3438186a | ||
|
|
881a3b28a7 | ||
|
|
b3f4f8db24 | ||
|
|
7175422a2b | ||
|
|
8fad34a29b | ||
|
|
8526f77c70 | ||
|
|
86a4ab704d | ||
|
|
d5613308f9 | ||
|
|
3d1259ea36 | ||
|
|
a82eac2195 | ||
|
|
312ea407a2 | ||
|
|
695162e9fa | ||
|
|
7a978f9381 | ||
|
|
c78556048c | ||
|
|
3e68ead0fa | ||
|
|
74f4c8bcab | ||
|
|
89fb624c5b | ||
|
|
6bcaa33751 | ||
|
|
8b73afad95 | ||
|
|
f63ddac287 | ||
|
|
21ac71f740 | ||
|
|
7df84b38b7 | ||
|
|
8ce7c83779 | ||
|
|
5de13e0038 | ||
|
|
09a7b01ee7 | ||
|
|
fe89fc8a64 | ||
|
|
1a7b546055 | ||
|
|
e92c832697 | ||
|
|
b633573ad0 | ||
|
|
c97ca4830e | ||
|
|
3b78cfe71a | ||
|
|
422bdf692a | ||
|
|
fa1d4c2d7f | ||
|
|
942c70c795 | ||
|
|
75fa87482d | ||
|
|
1fc9b93ed6 | ||
|
|
38430fbf0e | ||
|
|
64466e3259 | ||
|
|
6918e20f22 | ||
|
|
6b903de12c | ||
|
|
f1f3501628 | ||
|
|
e866fa1203 | ||
|
|
90940ec240 | ||
|
|
79caba9506 | ||
|
|
7083ef47bb | ||
|
|
234dd04c86 | ||
|
|
6f095a6394 | ||
|
|
8a52e09e8b | ||
|
|
2ea7970a82 | ||
|
|
069fce0033 | ||
|
|
57e42cc538 | ||
|
|
2498784d14 | ||
|
|
ec14a2ef5d | ||
|
|
8f93cc37d2 | ||
|
|
9a43eb903d | ||
|
|
5a6010deda | ||
|
|
a168c51395 | ||
|
|
5aae8726ef | ||
|
|
aff9d232b1 | ||
|
|
d0a9b404c3 | ||
|
|
e3b3631634 | ||
|
|
7b8113c7c7 | ||
|
|
2d1538e698 | ||
|
|
1316dd1a4f | ||
|
|
13f1cdca7b | ||
|
|
00977c75ba | ||
|
|
0e9056eca5 | ||
|
|
4ab4ae77ac | ||
|
|
4638871050 | ||
|
|
13cd18e614 | ||
|
|
0a8976c1e0 | ||
|
|
19515ca63a | ||
|
|
f4504292cf | ||
|
|
6d71749c70 | ||
|
|
777e5f47be | ||
|
|
e97934a225 | ||
|
|
e65c82a032 | ||
|
|
6f39b8f576 | ||
|
|
7b93123133 | ||
|
|
d6831cf801 | ||
|
|
64f1af0aa6 | ||
|
|
313ad01e42 | ||
|
|
44b0c8153a | ||
|
|
c8f6337f1f | ||
|
|
7998a43b04 | ||
|
|
17c1f403c1 | ||
|
|
1422055304 | ||
|
|
3ca113059d | ||
|
|
f4f07f8993 | ||
|
|
187fd9f61f | ||
|
|
69eeff1f76 | ||
|
|
4204baabe6 | ||
|
|
01b1fee284 | ||
|
|
bdb5e4aa56 | ||
|
|
026657d83b | ||
|
|
e35895888e | ||
|
|
90ead2d992 | ||
|
|
43622a8eb7 | ||
|
|
eeff004ec2 | ||
|
|
1bf898828b | ||
|
|
0a742506ff | ||
|
|
701d6ec45d | ||
|
|
787769ac39 | ||
|
|
33950c0ae7 | ||
|
|
99ebef0b2f | ||
|
|
880f6a17b8 | ||
|
|
0456845256 | ||
|
|
ce081f15e9 | ||
|
|
da9a19037f | ||
|
|
d43a645535 | ||
|
|
50d5b872f9 | ||
|
|
ccf57c7f3e | ||
|
|
2cc265361d | ||
|
|
5ee063f6b2 | ||
|
|
50c8747c97 | ||
|
|
3598f0ed8a | ||
|
|
7c5c6cd519 | ||
|
|
093807391a | ||
|
|
18c923596a | ||
|
|
d3de5ff017 | ||
|
|
f8f2ec8f35 | ||
|
|
af6c18ccc5 | ||
|
|
4f5aa438d6 | ||
|
|
bd2f818500 | ||
|
|
29f240ac79 | ||
|
|
c53dc308be | ||
|
|
cb8e5d2cd9 | ||
|
|
d8d5b1a071 | ||
|
|
bb64920cf0 | ||
|
|
427c39b858 | ||
|
|
b0d5903aba | ||
|
|
dbc28a24ac | ||
|
|
51fbbea1d3 | ||
|
|
696710fd7a | ||
|
|
5ace39e4cb | ||
|
|
b878f9054c | ||
|
|
871780fd28 | ||
|
|
4c5eb4b4db | ||
|
|
117ca5355d | ||
|
|
1a02782539 | ||
|
|
c7941bfab0 | ||
|
|
88b60e6f10 | ||
|
|
c5a2172c7b | ||
|
|
b2d847a273 | ||
|
|
4fb5e068bc | ||
|
|
4be4540acf | ||
|
|
a9d99dc0e5 | ||
|
|
d1922d4742 | ||
|
|
d85c59208c | ||
|
|
17d625a735 | ||
|
|
42f61ebf8a | ||
|
|
5e55c02bc6 | ||
|
|
ea7d38cea7 | ||
|
|
4b36efd50a | ||
|
|
c3b96c90d3 | ||
|
|
c0584c5102 | ||
|
|
87c71207e3 | ||
|
|
149bbc12b5 | ||
|
|
78cae049d2 | ||
|
|
7b4f239d33 | ||
|
|
80d4faa8ab | ||
|
|
4bb3f207ed | ||
|
|
2ccb063d20 | ||
|
|
710303be7a | ||
|
|
f337082c82 | ||
|
|
a306d4ae40 | ||
|
|
ea80cd1cd8 | ||
|
|
114c0e8ed2 | ||
|
|
9ccb520e9e | ||
|
|
fb3a262f4b | ||
|
|
50560e169c | ||
|
|
36c249e9c1 | ||
|
|
608b906bd5 | ||
|
|
09146d1c11 | ||
|
|
3f9c5edbf5 | ||
|
|
1ed74ab59b | ||
|
|
0d4a2539a8 | ||
|
|
4cedceaae2 | ||
|
|
7eeacfe672 | ||
|
|
0a86a4ea80 | ||
|
|
d91e897413 | ||
|
|
953ddef482 | ||
|
|
effcad912d | ||
|
|
26a9c1c47b | ||
|
|
e9b4e5a374 | ||
|
|
7576caa54a | ||
|
|
a6901fdac1 | ||
|
|
8c271e5640 | ||
|
|
7600e94ddc | ||
|
|
c5804cd6ff | ||
|
|
5e4b50dc6c | ||
|
|
152f63b019 | ||
|
|
1958f7adb5 | ||
|
|
789b17d333 | ||
|
|
d08aa46381 | ||
|
|
f90ea81d58 | ||
|
|
7e96e82cad | ||
|
|
64b0087e84 | ||
|
|
fe5ef864f1 | ||
|
|
0d56e91e00 | ||
|
|
293a9bc811 | ||
|
|
b8c6865ce0 | ||
|
|
1795b6570c | ||
|
|
152e3cb7bf | ||
|
|
2bc873d8b6 | ||
|
|
2e817195d2 | ||
|
|
12dbc5dfa4 | ||
|
|
026e75c46b | ||
|
|
f6ea59dbd9 | ||
|
|
986895f8c1 | ||
|
|
0694bbce00 | ||
|
|
3bd12180de | ||
|
|
208885e3d2 | ||
|
|
896195f5e3 | ||
|
|
23596b48ca | ||
|
|
0b7897f26c | ||
|
|
08c4f8b103 | ||
|
|
a9b32275f1 | ||
|
|
d1eba784b9 | ||
|
|
ead77e074d | ||
|
|
a3ee0bb291 | ||
|
|
a71c1288a6 | ||
|
|
3182c5d304 | ||
|
|
8effa39410 | ||
|
|
5f50de2b39 | ||
|
|
b37cb73802 | ||
|
|
806e406b67 | ||
|
|
3ad7c23221 | ||
|
|
5b9d5d55e8 | ||
|
|
5c9859e7f2 | ||
|
|
2e1e50486f | ||
|
|
27be64cf12 | ||
|
|
4dd6472908 | ||
|
|
dfa3e19cbf | ||
|
|
fbac824975 | ||
|
|
e77a8db546 | ||
|
|
77a3d791b1 | ||
|
|
bb8626e120 | ||
|
|
931670b7cb | ||
|
|
427de61702 | ||
|
|
1d58a7aadd | ||
|
|
f49c3416d5 | ||
|
|
4f2fc299a9 | ||
|
|
efb4baacdf | ||
|
|
59109a309f | ||
|
|
8f1b2b2350 | ||
|
|
1ecd66e55d | ||
|
|
06ac065d4d | ||
|
|
946404a365 | ||
|
|
ab871d771a | ||
|
|
e11f44e039 | ||
|
|
c27577147c | ||
|
|
79974e4d81 | ||
|
|
eeab75998d | ||
|
|
3a0577ba96 | ||
|
|
37aafb61be | ||
|
|
ad9ced2cc7 | ||
|
|
a0717e6fa7 | ||
|
|
9cecbf42a6 | ||
|
|
cafa9cc3e4 | ||
|
|
a7181cb222 | ||
|
|
aa8080f441 | ||
|
|
65aae0ddad | ||
|
|
90f1f326ca | ||
|
|
8383544bb5 | ||
|
|
65f1733d6f | ||
|
|
37e63eff22 | ||
|
|
24dd80e69a | ||
|
|
7b8de76267 | ||
|
|
17ab2c18eb | ||
|
|
3db3413929 | ||
|
|
32eb20702e | ||
|
|
17a7e2b241 | ||
|
|
83c0ad11ac | ||
|
|
6db46c6d00 | ||
|
|
4ba0e7b7d8 | ||
|
|
7637cfb0a6 | ||
|
|
f5c7c81780 | ||
|
|
44bad4b8e6 | ||
|
|
906a4bd75a | ||
|
|
f8b48ebec6 | ||
|
|
a7bfc48bcc | ||
|
|
6f1891462d | ||
|
|
d00fe1f8af | ||
|
|
5a80a2e216 | ||
|
|
3ab56cee8a | ||
|
|
6f78decf44 | ||
|
|
68e5b0d842 | ||
|
|
fa6bb0fc7c | ||
|
|
103a527128 | ||
|
|
054d873936 | ||
|
|
9f2f33e4e6 | ||
|
|
acb7439232 | ||
|
|
635d553b64 | ||
|
|
fe55720c6c | ||
|
|
08e8eabc6f | ||
|
|
665a359413 | ||
|
|
022e399bff | ||
|
|
2578f426b6 | ||
|
|
37bc3c8872 | ||
|
|
55825c0e33 | ||
|
|
6e735b710a | ||
|
|
8ec958ec01 | ||
|
|
e5a71462b8 | ||
|
|
423d208790 | ||
|
|
83659b898d | ||
|
|
7653a2338e | ||
|
|
8325db48ab | ||
|
|
eadca53e7b | ||
|
|
8cb9391534 | ||
|
|
106979876e | ||
|
|
b9d82ee402 | ||
|
|
776909a72d | ||
|
|
91026d4d1d | ||
|
|
4749df7c51 | ||
|
|
6bf3ae5a18 | ||
|
|
a6de6d630a | ||
|
|
b1e7d38f72 | ||
|
|
cf566ab785 | ||
|
|
9c54b0605d | ||
|
|
ff38312b7d | ||
|
|
b06e520ae4 | ||
|
|
f33d23c0b4 | ||
|
|
b9567eb193 | ||
|
|
7139316ef5 | ||
|
|
6b215dcbbf | ||
|
|
d7c75937a1 | ||
|
|
272f1dea33 | ||
|
|
b4c50d1d28 | ||
|
|
4244e74d96 | ||
|
|
f71c4bb8a4 | ||
|
|
3141b928f8 | ||
|
|
614d810ef4 | ||
|
|
ac91f98528 | ||
|
|
1252b6b7df | ||
|
|
7842da78bc | ||
|
|
dad8b16878 | ||
|
|
3881b7a69c | ||
|
|
0471fae54a | ||
|
|
a3d0b45cc0 | ||
|
|
e72264608b | ||
|
|
eb93ae0d26 | ||
|
|
73836e19b7 | ||
|
|
4257373654 | ||
|
|
297ddfd972 | ||
|
|
969fcd2213 | ||
|
|
18b1a36d84 | ||
|
|
89c99700f6 | ||
|
|
7c6386d81e | ||
|
|
757a1686f0 | ||
|
|
611cdd69b1 | ||
|
|
90c573cd42 | ||
|
|
71ca909008 | ||
|
|
8570b4a9d7 | ||
|
|
d67c95d8eb | ||
|
|
bfd7f3398c | ||
|
|
fce94e29a0 | ||
|
|
5d51b4c397 | ||
|
|
5ec5b657be | ||
|
|
3d057950b9 | ||
|
|
29f0159eae | ||
|
|
95c0f28dee | ||
|
|
185f74dfae | ||
|
|
9369663317 | ||
|
|
e7626b6e04 | ||
|
|
29a718e25d | ||
|
|
8fca3f2487 | ||
|
|
ce442aa3e1 | ||
|
|
6470f26be2 | ||
|
|
9018986600 | ||
|
|
25f15688f0 | ||
|
|
078a7c4c55 | ||
|
|
cc1e19ade0 | ||
|
|
27501a0576 | ||
|
|
2e2521c638 | ||
|
|
bcdd2cf220 | ||
|
|
e8394905d4 | ||
|
|
afe42bc327 | ||
|
|
86f6e30cca | ||
|
|
4a24240d9f | ||
|
|
347b348865 | ||
|
|
d4afa5477d | ||
|
|
7792ef1bde | ||
|
|
5dce6f63d0 | ||
|
|
d43f7aa6aa | ||
|
|
705325d6c5 | ||
|
|
1430cb5e34 | ||
|
|
71fcb7b86c | ||
|
|
3a48954586 | ||
|
|
49aee10cfa | ||
|
|
a571c56b4c | ||
|
|
7b5bf62ad5 | ||
|
|
869eea4bb2 | ||
|
|
ffc900e1b3 | ||
|
|
dded255306 | ||
|
|
9c5dead232 | ||
|
|
0191cabe6e | ||
|
|
e1747c0dd7 | ||
|
|
e50ccc25db | ||
|
|
3a788fa035 | ||
|
|
9715c9223a | ||
|
|
ca6cdb4e98 | ||
|
|
e431dbe5bd | ||
|
|
3063df9b78 | ||
|
|
d8f174e54c | ||
|
|
51abe58a1a | ||
|
|
7f1415c7ae | ||
|
|
6cf3a08780 | ||
|
|
2b45c8dffe | ||
|
|
860d7e93c0 | ||
|
|
dabcac2e96 | ||
|
|
c03b7a6f19 | ||
|
|
909e6a6bab | ||
|
|
a2f91b167d | ||
|
|
b2b8c7f0b7 | ||
|
|
29554f4de3 | ||
|
|
735dc8f1d6 | ||
|
|
a9577c9ba8 | ||
|
|
a89726b30c | ||
|
|
3225a4e7e8 | ||
|
|
432e823f7e | ||
|
|
62541f1ac8 | ||
|
|
faf137b9be | ||
|
|
3c9e30ffcd | ||
|
|
b22a3f5973 | ||
|
|
4232000020 | ||
|
|
475aab6cc3 | ||
|
|
dddd9c23e4 | ||
|
|
1064b9dada | ||
|
|
baffe26dd1 | ||
|
|
1993f9f9a5 | ||
|
|
7f00482cfe | ||
|
|
b2a69a35b8 | ||
|
|
a52a948a70 | ||
|
|
94cbfa4579 | ||
|
|
1a4ccd3f5c | ||
|
|
68cb6130d3 | ||
|
|
64b74ede87 | ||
|
|
213960a04a | ||
|
|
170e58a99d | ||
|
|
f3c4bfcbae | ||
|
|
fa971895a8 | ||
|
|
a5a9f8e821 | ||
|
|
0a547304a7 | ||
|
|
45e7bb0027 | ||
|
|
5d7c34093f | ||
|
|
9322cec8f2 | ||
|
|
047501999d | ||
|
|
30f5e0d37c | ||
|
|
205a6d45b5 | ||
|
|
d47e0de175 | ||
|
|
8c470194ce | ||
|
|
410a6bd32d | ||
|
|
af69b47c22 | ||
|
|
fb2c7e5f38 | ||
|
|
4a1c195b24 | ||
|
|
1489e48950 | ||
|
|
5922ba29ac | ||
|
|
1de275325e | ||
|
|
14301284af | ||
|
|
adeb880d7f | ||
|
|
857e9bee00 | ||
|
|
711e0cef78 | ||
|
|
73449bf433 | ||
|
|
4aabccfc79 | ||
|
|
1e2a61c6a0 | ||
|
|
844fae826f | ||
|
|
ef8d1a95a4 | ||
|
|
bf4943eec1 | ||
|
|
97d17904d3 | ||
|
|
98af486b89 | ||
|
|
8f27b27a0e | ||
|
|
aced5882d1 | ||
|
|
839fd03472 | ||
|
|
fb5a90cb1b | ||
|
|
64a83f1427 | ||
|
|
f684a16051 | ||
|
|
2666b45f2a | ||
|
|
aad33c2611 | ||
|
|
ff2335a910 | ||
|
|
32733210dc | ||
|
|
9f5a1705a5 | ||
|
|
b4c1cea735 | ||
|
|
2572636004 | ||
|
|
3a962f3bad | ||
|
|
bfa2bc6736 | ||
|
|
354ed2880c | ||
|
|
9db4d195a7 | ||
|
|
0808f29375 | ||
|
|
7dbfb3ef41 | ||
|
|
333bccee5d | ||
|
|
25c35e59b4 | ||
|
|
ff7785e023 | ||
|
|
0e138bcc8f | ||
|
|
ecea12d206 | ||
|
|
61d1c7b6b2 | ||
|
|
b5cec4b704 | ||
|
|
e895605e5f | ||
|
|
f5a79ea6d2 | ||
|
|
de0cf42111 | ||
|
|
ec9e4eb97e | ||
|
|
47b6a82920 | ||
|
|
28f77b9823 | ||
|
|
4ac8c1bd84 | ||
|
|
962b7fa8d9 | ||
|
|
d6ebb478e3 | ||
|
|
2b8893da53 | ||
|
|
744f52fb27 | ||
|
|
43b9f9462f | ||
|
|
d89aa9a9e6 | ||
|
|
084d78be29 | ||
|
|
9c627e884d | ||
|
|
da83583cdf | ||
|
|
4d9ae0df06 | ||
|
|
4d95e44317 | ||
|
|
4b7235ac5f | ||
|
|
4152c1b177 | ||
|
|
dc5745080d | ||
|
|
3dfac788fa | ||
|
|
c56ff7efb4 | ||
|
|
114c560912 | ||
|
|
1576d183c9 | ||
|
|
0e0bfe91d0 | ||
|
|
d3559d1cca | ||
|
|
222a1cc9e8 | ||
|
|
03103925bd | ||
|
|
9e470cb48e | ||
|
|
376602a65c | ||
|
|
8493cfe983 | ||
|
|
d11ac34dcb | ||
|
|
08bc06dfe0 | ||
|
|
f4fbf84294 | ||
|
|
56ae4bcb55 | ||
|
|
ec61dc0665 | ||
|
|
b21b0ea849 | ||
|
|
318c423e14 | ||
|
|
834ff71157 | ||
|
|
39a187d32e | ||
|
|
146d2cc231 | ||
|
|
87c95d45f7 | ||
|
|
f7f2f6e6b8 | ||
|
|
3e803b3a58 | ||
|
|
22c01ca14c | ||
|
|
111f0921f5 | ||
|
|
8c515c7077 | ||
|
|
04579909ff | ||
|
|
40ff3e4618 | ||
|
|
c0a446df02 | ||
|
|
8f7cf6bf47 | ||
|
|
4a7b5892af | ||
|
|
9a5aa95893 | ||
|
|
8d623e21b6 | ||
|
|
7a87e41ab8 | ||
|
|
f62f184241 | ||
|
|
8ea69cb5d1 | ||
|
|
97f0cef391 | ||
|
|
85084c6db9 | ||
|
|
a09b995651 | ||
|
|
4098484ff5 | ||
|
|
91b24c6032 | ||
|
|
38d0f0bbd0 | ||
|
|
d3e39632bf | ||
|
|
43ae61e095 | ||
|
|
bd31c88814 | ||
|
|
02c59df1b3 | ||
|
|
f6c05ef7a1 | ||
|
|
505e4b80fd | ||
|
|
cd8d88716f | ||
|
|
d3a93d5273 | ||
|
|
ed9637de50 | ||
|
|
4e744c057b | ||
|
|
4b717fe554 | ||
|
|
236a0fde35 | ||
|
|
306d309209 | ||
|
|
a8f4cd271e | ||
|
|
3cd129544e | ||
|
|
1004e924ff | ||
|
|
c013ede227 | ||
|
|
914b363a37 | ||
|
|
8ad349dcf0 | ||
|
|
7146bfc04a | ||
|
|
e852bc0980 | ||
|
|
8a9b1416ed | ||
|
|
9da7a1ff0a | ||
|
|
219aa57fbd | ||
|
|
5930ac09b7 | ||
|
|
8837c3c10b | ||
|
|
0d0dd65a6a | ||
|
|
0ac9c4276f | ||
|
|
0edf6fd1e4 | ||
|
|
c9d6c25f71 | ||
|
|
73fed6c093 | ||
|
|
75f238fcb3 | ||
|
|
8706f77eb7 | ||
|
|
3cf0689d46 | ||
|
|
623f77e097 | ||
|
|
61d6f8f18f | ||
|
|
6480193c65 | ||
|
|
23a31b3771 | ||
|
|
112b352b03 | ||
|
|
a48c20d470 | ||
|
|
5fd47bc613 | ||
|
|
6966d94d90 | ||
|
|
5311219de7 | ||
|
|
4119f60010 | ||
|
|
0960f3d6d1 | ||
|
|
64b49ddd95 | ||
|
|
2c27526a34 | ||
|
|
fe6b340382 | ||
|
|
8148b8824f | ||
|
|
be0c4b5451 | ||
|
|
168c6138d8 | ||
|
|
b9555a5775 | ||
|
|
b78fff9386 | ||
|
|
963c89cab2 | ||
|
|
d7ef6efd04 | ||
|
|
35fef33868 | ||
|
|
8a9e81d514 | ||
|
|
b17df61043 | ||
|
|
4e0cdf34b6 | ||
|
|
a97dec5c30 | ||
|
|
ad0834bedb | ||
|
|
b53c63910d | ||
|
|
5c0908ee52 | ||
|
|
7f33846005 | ||
|
|
4afda10b82 | ||
|
|
cc0e581bc3 | ||
|
|
df1aa76cc5 | ||
|
|
a3a2fb1e4f | ||
|
|
915dadd9d7 | ||
|
|
d899e0ac6f | ||
|
|
3915e01cfb | ||
|
|
2fc6da125f | ||
|
|
ba4013816d | ||
|
|
b64113b7d9 | ||
|
|
a9483dd8dc | ||
|
|
5f2fb86a76 | ||
|
|
386ba990bf | ||
|
|
7f1b5c09de | ||
|
|
fcfdd71c06 | ||
|
|
73336bbc00 | ||
|
|
e7fa50635f | ||
|
|
fddec80755 | ||
|
|
dac3389b27 | ||
|
|
c952eb7dea | ||
|
|
6a28cfd2ba | ||
|
|
e4693b8aaf | ||
|
|
87e78e2a48 | ||
|
|
6ac9b5fa9d | ||
|
|
71449c8638 | ||
|
|
a17088363f | ||
|
|
83004f0a0a | ||
|
|
c42fbbd10e | ||
|
|
d068d80ab9 | ||
|
|
eb142a6be5 | ||
|
|
9fde2b28e1 | ||
|
|
195723180b | ||
|
|
2e051cebaa | ||
|
|
795d0b056c | ||
|
|
d7c69d3b78 | ||
|
|
059aa425b7 | ||
|
|
aaf5c28c5b | ||
|
|
3083bbadc1 | ||
|
|
150ca5d686 | ||
|
|
58d1e2e1be | ||
|
|
090bae9a94 | ||
|
|
113f0427ab | ||
|
|
36520d6ec1 | ||
|
|
2a7d8df4c5 | ||
|
|
ac6a2bf2e5 | ||
|
|
3c1cb806d4 | ||
|
|
e5587c2b31 | ||
|
|
8128c79e81 | ||
|
|
ae5e2f5af2 | ||
|
|
a8b7b2a6b9 | ||
|
|
111bef7f06 | ||
|
|
6f1c6fbc1a | ||
|
|
31cd05191d | ||
|
|
efb8c4e36b | ||
|
|
ed71379aa1 | ||
|
|
b1c3fce49b | ||
|
|
e75c711c68 | ||
|
|
8d031f13c0 | ||
|
|
42a73f91fe | ||
|
|
c508fd9b13 | ||
|
|
c62949b98e | ||
|
|
0b640c785f | ||
|
|
fe17d51b03 | ||
|
|
565cf23d92 | ||
|
|
020e2e00c3 | ||
|
|
f4870050e0 | ||
|
|
f31e67b13d | ||
|
|
6f4d48cc6c | ||
|
|
fb34ebc674 | ||
|
|
6c867c34d7 | ||
|
|
70a56028b6 | ||
|
|
08327e2748 | ||
|
|
6d6b7f93f3 | ||
|
|
0d95cf8f5b | ||
|
|
471f9aec19 | ||
|
|
b5beb20e08 | ||
|
|
c8b6e2d5cd | ||
|
|
8ccb833421 | ||
|
|
93ec969005 | ||
|
|
5a42b59e91 | ||
|
|
266870fee8 | ||
|
|
ca5245bb9b | ||
|
|
84b3c952d9 | ||
|
|
6ef71a800f | ||
|
|
77778aeadf | ||
|
|
e8275b767e | ||
|
|
efdf7fb93e | ||
|
|
1fd2d26185 | ||
|
|
cac19d9e8b | ||
|
|
1d03df7d33 | ||
|
|
90ae5cd897 | ||
|
|
bb346c8d2b | ||
|
|
317932204e | ||
|
|
a48c7e1d83 | ||
|
|
336a4b6ac2 | ||
|
|
c9c7521f4f | ||
|
|
b455bc467d | ||
|
|
d1df057d08 | ||
|
|
062aebeba0 | ||
|
|
cff83a3fec | ||
|
|
b08d5267cb | ||
|
|
1ce37acde6 | ||
|
|
b7cd0c63e5 | ||
|
|
a866da84d9 | ||
|
|
6908f44aa2 | ||
|
|
181b8a2744 | ||
|
|
5a7bebc8b5 | ||
|
|
536d6ab302 | ||
|
|
99446ffa8a | ||
|
|
143973e031 | ||
|
|
bb5ad6e1ad | ||
|
|
6ae433249d | ||
|
|
5f5b824ade | ||
|
|
34abc8116c | ||
|
|
1efaaefd63 | ||
|
|
cfd635786a | ||
|
|
11e3faa8da | ||
|
|
1002990619 | ||
|
|
a94bbd8f3c | ||
|
|
46354da728 | ||
|
|
2c7c2b3fa6 | ||
|
|
938d866c1b | ||
|
|
42ff5415ba | ||
|
|
0e52be8427 | ||
|
|
5105614b83 | ||
|
|
77fc310a70 | ||
|
|
3541177d50 | ||
|
|
3c3ab57cf6 | ||
|
|
b73e7a9732 | ||
|
|
2047140dda | ||
|
|
b7e2f6c71a | ||
|
|
e1505d88b1 | ||
|
|
d04e5ea0ba | ||
|
|
3ebcd9bbe7 | ||
|
|
ab9ccc985a | ||
|
|
2188be219e | ||
|
|
a34792ce16 | ||
|
|
9160c9ae31 | ||
|
|
8e05fbf43f | ||
|
|
c59ff7416a | ||
|
|
c943072193 | ||
|
|
d39cc1fb5f | ||
|
|
005a0ec931 | ||
|
|
2cfdf29364 | ||
|
|
7254c71683 | ||
|
|
328534605f | ||
|
|
5eb7383613 | ||
|
|
75c2f4f394 | ||
|
|
6cbe506915 | ||
|
|
3d6ac8face | ||
|
|
14fe014fdf | ||
|
|
8f16eeb82a | ||
|
|
84e5072741 | ||
|
|
3f72da9d0b | ||
|
|
873e12c7c6 | ||
|
|
fecfb784ee | ||
|
|
5a7014a418 | ||
|
|
ceae7ef672 | ||
|
|
67b09911c1 | ||
|
|
3043bb70e1 | ||
|
|
ff99155f7d | ||
|
|
dc2dae5d87 | ||
|
|
76eeb5df42 | ||
|
|
185a985a85 | ||
|
|
834e8359ee | ||
|
|
503f70bba4 | ||
|
|
c3e45b662a | ||
|
|
4f16f87b4d | ||
|
|
9db1a5786d | ||
|
|
b9b150f147 | ||
|
|
0eecec75e2 | ||
|
|
581f3540b6 | ||
|
|
68dabd4d25 | ||
|
|
59b171db04 | ||
|
|
e97ebfb036 | ||
|
|
7380d03e00 | ||
|
|
5be558ef15 | ||
|
|
a7116cf353 | ||
|
|
3147f69435 | ||
|
|
0ef9b00dc7 | ||
|
|
bc05793cbe | ||
|
|
fd349f3020 | ||
|
|
df5a3c4da4 | ||
|
|
fe415a30c5 | ||
|
|
382208e59c | ||
|
|
ed02a24e0e | ||
|
|
e712d3458c | ||
|
|
685681dedc | ||
|
|
b412da6b8a | ||
|
|
03dc674c2d | ||
|
|
d0bcd3c6fb | ||
|
|
6649218e17 | ||
|
|
453fae4a5c | ||
|
|
3f32222360 | ||
|
|
479705e8ce | ||
|
|
e8fc9d5c9b | ||
|
|
38d3b200b5 | ||
|
|
a0551a9b8b | ||
|
|
be03fc273a | ||
|
|
ab496e9e34 | ||
|
|
81e7576150 | ||
|
|
2e69f15c20 | ||
|
|
0c7b35d0ab | ||
|
|
e12f10ae0e | ||
|
|
961b704a8e | ||
|
|
4ee8055f17 | ||
|
|
394335fa91 | ||
|
|
8125c05be0 | ||
|
|
059f01d23a | ||
|
|
5f80f9c814 | ||
|
|
0cee57f1d9 | ||
|
|
eab99b3bae | ||
|
|
a1e1509358 | ||
|
|
39d8b0c8c1 | ||
|
|
1356029bea | ||
|
|
b8af8a1af0 | ||
|
|
06c79cffae | ||
|
|
430fe09d6d | ||
|
|
5455c71f93 | ||
|
|
e2d6c692c4 | ||
|
|
501fab0bef | ||
|
|
1f1c337eb6 | ||
|
|
1c9131a5d7 | ||
|
|
fb758a32e1 | ||
|
|
d4c55557c3 | ||
|
|
0e39174c48 | ||
|
|
40401a6ed2 | ||
|
|
74ea36ac1c | ||
|
|
2d48674c5b | ||
|
|
42c7d887d3 | ||
|
|
8dcaaa9e09 | ||
|
|
267e926a38 | ||
|
|
11e6ffaae9 | ||
|
|
6a5dd6ed58 | ||
|
|
bcd68b937d | ||
|
|
9fab7ca06c | ||
|
|
4082a34599 | ||
|
|
f9debc72fa | ||
|
|
b363402f45 | ||
|
|
b0942fbc37 | ||
|
|
e3a12ea1a9 | ||
|
|
5dd6fb8547 | ||
|
|
8586d2e41c | ||
|
|
ba1e95fd43 | ||
|
|
e7538d7b26 | ||
|
|
2b7ebaceb2 | ||
|
|
3de3c3c143 | ||
|
|
0e0e325e5b | ||
|
|
e97106c770 | ||
|
|
50f8e0daa8 | ||
|
|
efcf846b2c | ||
|
|
afe3e13345 | ||
|
|
461c769ac4 | ||
|
|
0dc0d6c31c | ||
|
|
49d8ea4886 | ||
|
|
e66776a79f | ||
|
|
3036cbe552 | ||
|
|
393aa076bc | ||
|
|
0ef6f81843 | ||
|
|
339fe00dfe | ||
|
|
6382bb5333 | ||
|
|
41c60fb848 | ||
|
|
8df49bc823 | ||
|
|
ab4129061e | ||
|
|
021a670d86 | ||
|
|
fa27551428 | ||
|
|
538243dc3b | ||
|
|
d83c610002 | ||
|
|
196f7eb101 | ||
|
|
a1167d80b2 | ||
|
|
a765b13f52 | ||
|
|
45b3e9d03c | ||
|
|
5844166047 | ||
|
|
c6dcc1cd9e | ||
|
|
118ed4d2ab | ||
|
|
9fcd2c53c8 | ||
|
|
da80830bc5 | ||
|
|
b060056480 | ||
|
|
b71df3a3d4 | ||
|
|
128e9861f9 | ||
|
|
5d2cb27562 | ||
|
|
75e340bfbf | ||
|
|
b5744e5da4 | ||
|
|
7bad5770a1 | ||
|
|
809c1e46d8 | ||
|
|
c056093125 | ||
|
|
88ea1de80f | ||
|
|
7c8a835fa0 | ||
|
|
c6317888da | ||
|
|
9f1946ce70 | ||
|
|
32be2866f6 | ||
|
|
448d60ebbf | ||
|
|
c536370ab8 | ||
|
|
dccc6bf1af | ||
|
|
e331ebbf7d | ||
|
|
b1660fa468 | ||
|
|
4af743766d | ||
|
|
8f35f16c7e | ||
|
|
e08710e373 | ||
|
|
48b9af1298 | ||
|
|
cec59bc580 | ||
|
|
dff23f5a7b | ||
|
|
bcdff7f6f0 | ||
|
|
49dbf79e81 | ||
|
|
1610ff33ea | ||
|
|
b5fd121f26 | ||
|
|
c292ea7b94 | ||
|
|
de56f3a562 | ||
|
|
94e469c803 | ||
|
|
0d369baf9d | ||
|
|
0ab00df154 | ||
|
|
6167d95167 | ||
|
|
d582e42d4d | ||
|
|
6da14ae310 | ||
|
|
442f85e89e | ||
|
|
8cf8bf441e | ||
|
|
2cc25f64f2 | ||
|
|
035008cd9d | ||
|
|
e7f1ff14d6 | ||
|
|
c092d2ba70 | ||
|
|
d1783babd9 | ||
|
|
7519f364e5 | ||
|
|
7f9ab7dfce | ||
|
|
f9d87f28f6 | ||
|
|
dd7225fb2a | ||
|
|
134748a238 | ||
|
|
b57d890cbd | ||
|
|
50163e1385 | ||
|
|
fde4cd4d17 | ||
|
|
b6e164355b | ||
|
|
2e9af40bca | ||
|
|
2f45c3d2cd | ||
|
|
d763c0ab4e | ||
|
|
baa93d4b37 | ||
|
|
dd7659c643 | ||
|
|
aed6f89772 | ||
|
|
39af1ccc7c | ||
|
|
52f4ba767a | ||
|
|
0f853a2fee | ||
|
|
ca807afba2 | ||
|
|
e349e54cb8 | ||
|
|
39218ec0f7 | ||
|
|
908d9d86b3 | ||
|
|
92f3efeac2 | ||
|
|
a772b56cb6 | ||
|
|
bd6b9a58d3 | ||
|
|
873cacc15a | ||
|
|
55ff681976 | ||
|
|
618ecdb76c | ||
|
|
8af6ad7278 | ||
|
|
c07de8c4d3 | ||
|
|
e10fe8aaad | ||
|
|
feb45edf6d | ||
|
|
0a916543b3 | ||
|
|
2c53ff2980 | ||
|
|
b2fcc027a9 | ||
|
|
1dc78ba4b7 | ||
|
|
04e0910dea | ||
|
|
d19a6199ea | ||
|
|
e8925e47b0 | ||
|
|
cc712668f0 | ||
|
|
f7dbf5ac38 | ||
|
|
283a01493c | ||
|
|
f82aa92c38 | ||
|
|
7660f72745 | ||
|
|
4e4f2058c2 | ||
|
|
ca25e32c0f | ||
|
|
5a1f60c729 | ||
|
|
ac242f94ca | ||
|
|
9ab9b01a64 | ||
|
|
cdeb39bd7f | ||
|
|
1d01ffeb9e | ||
|
|
25a49005cc | ||
|
|
875b60dfe5 | ||
|
|
c071037485 | ||
|
|
4edfa171f0 | ||
|
|
0eb3cdc43c | ||
|
|
f747fd9dfa | ||
|
|
c06e34c687 | ||
|
|
7f62169b5e | ||
|
|
5b2c7ad1f3 | ||
|
|
c535cd7613 | ||
|
|
6e21c9927c | ||
|
|
c3d9804e85 | ||
|
|
30c79875a3 | ||
|
|
a79153f6e0 | ||
|
|
87319ba73d | ||
|
|
cb18bf7e5d | ||
|
|
304a36b814 | ||
|
|
6ee673095c | ||
|
|
cf4964c8f4 | ||
|
|
a1b88e85fd | ||
|
|
46a8215092 | ||
|
|
62694f0ee9 | ||
|
|
e8bdf1c7db | ||
|
|
2af4192756 | ||
|
|
fd80d0a22d | ||
|
|
86743ab361 | ||
|
|
cca8081f2e | ||
|
|
5c5b246cc3 | ||
|
|
469a36e3b6 | ||
|
|
f9d333bec2 | ||
|
|
38879cd3d9 | ||
|
|
eb3123adb8 | ||
|
|
2b4f20b94c | ||
|
|
19949c0743 | ||
|
|
8d03e0cf02 | ||
|
|
265b1035f4 | ||
|
|
8e0230b756 | ||
|
|
478273e044 | ||
|
|
d0c2f5495c | ||
|
|
4a09ad51f0 | ||
|
|
5bef1b46d3 | ||
|
|
3bec430192 | ||
|
|
18f0093b18 | ||
|
|
adfaa21d03 | ||
|
|
01d1f1d258 | ||
|
|
4e775d275c | ||
|
|
035f6fe5e1 | ||
|
|
bba74499e5 | ||
|
|
b61cbb1df8 | ||
|
|
1a60d7df98 | ||
|
|
89a7e3bf2f | ||
|
|
fe1a6cee10 | ||
|
|
6a66d9f7fb | ||
|
|
fadbcca99c | ||
|
|
0b48e7272d | ||
|
|
23bdc6f792 | ||
|
|
de7274fcff | ||
|
|
b126392a8e | ||
|
|
d2a9e31fd3 | ||
|
|
6d61bcc4e1 | ||
|
|
d8e3ca4a88 | ||
|
|
351184991a | ||
|
|
14b51ef57c | ||
|
|
7a836382b3 | ||
|
|
360dec4fb9 | ||
|
|
83cf1be2b9 | ||
|
|
241525947c | ||
|
|
76a99eaa18 | ||
|
|
4bceb57ad1 | ||
|
|
c7705a6325 | ||
|
|
4f78e2c47c | ||
|
|
6789aed119 | ||
|
|
291f26cba0 | ||
|
|
a3458ce6e3 | ||
|
|
a7eb5397a4 | ||
|
|
fc03ed2969 | ||
|
|
12f1991771 | ||
|
|
57946e114c | ||
|
|
8b3463e73f | ||
|
|
3cb7dbe921 | ||
|
|
d11102d858 | ||
|
|
183911514a | ||
|
|
bc3c17ffc8 | ||
|
|
3379289024 | ||
|
|
562a8df46b | ||
|
|
68e2869d64 | ||
|
|
c6818cc55c | ||
|
|
08b3bab2ec | ||
|
|
34771aad22 | ||
|
|
109d53d461 | ||
|
|
958520f557 | ||
|
|
12c311da3f | ||
|
|
d7d9df726b | ||
|
|
a368182769 | ||
|
|
2a9fd30d36 | ||
|
|
082a944e0b | ||
|
|
e1b68665db | ||
|
|
c64ef1e2f4 | ||
|
|
3063c2e64d | ||
|
|
38f46169d9 | ||
|
|
c1aa0323dc | ||
|
|
673b755987 | ||
|
|
3d6fab6e49 | ||
|
|
d0823beef5 | ||
|
|
b0e98892e5 | ||
|
|
0006d28cbb | ||
|
|
42dcc4e217 | ||
|
|
13582981e4 | ||
|
|
d4c1bf6c67 | ||
|
|
3ef55d10ae | ||
|
|
5ce171d92c | ||
|
|
e409148941 | ||
|
|
d44abd8e4d | ||
|
|
5c38b6c355 | ||
|
|
04ecfdd794 | ||
|
|
fc59a32b63 | ||
|
|
fd57e2d9a6 | ||
|
|
303a5ea898 | ||
|
|
d502d0bcd6 | ||
|
|
2018f5020a | ||
|
|
92a7849e98 | ||
|
|
59bdb62966 | ||
|
|
eab1938012 | ||
|
|
d97bd79c86 | ||
|
|
35c05f61e5 | ||
|
|
a5181c8ed1 | ||
|
|
aa545ac0dc | ||
|
|
ac9bd094f3 | ||
|
|
becf55febc | ||
|
|
c41cc80700 | ||
|
|
20b1a27d05 | ||
|
|
a027e9b6bc | ||
|
|
3fe676e9c9 | ||
|
|
bffe8e918b | ||
|
|
92e5fe9fd5 | ||
|
|
b107ac1659 | ||
|
|
5537c03569 | ||
|
|
4ab7c82405 | ||
|
|
6e8cd2e3e5 | ||
|
|
c0c7527497 | ||
|
|
e71cb5c8c9 | ||
|
|
cdbb4cf68a | ||
|
|
204d468ad2 | ||
|
|
1844212f34 | ||
|
|
fbb0342511 | ||
|
|
92b174b315 | ||
|
|
0ba9784be2 | ||
|
|
2c50cf7284 | ||
|
|
bea0dca55d | ||
|
|
1676af9de9 | ||
|
|
3d48bdaad1 | ||
|
|
1b474d4f97 | ||
|
|
4467167f99 | ||
|
|
36ec8bb99b | ||
|
|
bc5f99dc43 | ||
|
|
4d4966592e | ||
|
|
f1fff3af7e | ||
|
|
83e553d6a9 | ||
|
|
173724b402 | ||
|
|
64d3927879 | ||
|
|
49ad70b11c | ||
|
|
0d0b769bcc | ||
|
|
fb2aa186b7 | ||
|
|
ef94826f95 | ||
|
|
d79f34e960 | ||
|
|
4ce6e4a9cb | ||
|
|
9cf2771549 | ||
|
|
daf583e4cb | ||
|
|
51e55f4b6e | ||
|
|
f30527b6d9 | ||
|
|
17b186933d | ||
|
|
fd57edceff | ||
|
|
1876c0e11a | ||
|
|
cd5c740368 | ||
|
|
e2eef2bb25 | ||
|
|
ad3c19a160 | ||
|
|
07bb25f7b1 | ||
|
|
edd0223377 | ||
|
|
34a8a623f4 | ||
|
|
f854539ea9 | ||
|
|
cd1b8ccde7 | ||
|
|
cf3f8d2bb0 | ||
|
|
f1a0e718b3 | ||
|
|
08e0a51036 | ||
|
|
8e0f21cc91 | ||
|
|
ae7843f244 | ||
|
|
b5b47e6525 | ||
|
|
e7a4f9f507 | ||
|
|
658926189f | ||
|
|
154c8372e3 | ||
|
|
a68b5eef86 | ||
|
|
65ea1e4647 | ||
|
|
f8f85430c0 | ||
|
|
d8a2eb81e3 | ||
|
|
9a9c0df6b0 | ||
|
|
0a86beccc7 | ||
|
|
2fe9791127 | ||
|
|
b856d50c3f | ||
|
|
dde2b80e1d | ||
|
|
49b954462d | ||
|
|
c51dac1282 | ||
|
|
0d002c7057 | ||
|
|
1d03e90b5c | ||
|
|
25ac773cf3 | ||
|
|
ecb069ac85 | ||
|
|
a6cf6c4069 | ||
|
|
6854d83842 | ||
|
|
4aab78f619 | ||
|
|
95d2860930 | ||
|
|
70db76a798 | ||
|
|
07bf3eb1e9 | ||
|
|
237e672e70 | ||
|
|
61d436c29d | ||
|
|
22ea3e76f9 | ||
|
|
0089d04459 | ||
|
|
26ee46ad5b | ||
|
|
417c4e0faa | ||
|
|
b6675dd0ab | ||
|
|
dff40c5220 | ||
|
|
1fd426432e | ||
|
|
97c43ef787 | ||
|
|
a546e56669 | ||
|
|
4b52192974 | ||
|
|
fb10e0c4cb | ||
|
|
a44cb9708f | ||
|
|
c7fc08056a | ||
|
|
12ba37e43a | ||
|
|
928346b842 | ||
|
|
b81c895e1d | ||
|
|
d434e5aeac | ||
|
|
2250db41b4 | ||
|
|
826db9021e | ||
|
|
ad61279621 | ||
|
|
5ce1b36130 | ||
|
|
a1f17f70eb | ||
|
|
a0f086ba85 | ||
|
|
8d095a235f | ||
|
|
ff1417421b | ||
|
|
00fb04f309 | ||
|
|
a3cc17fbe6 | ||
|
|
fd27d403d7 | ||
|
|
6d29e314a0 | ||
|
|
902e438e6c | ||
|
|
096d668d83 | ||
|
|
49c5c32714 | ||
|
|
9a70d8daa2 | ||
|
|
79eb8d9d78 | ||
|
|
221b280856 | ||
|
|
933378ab80 | ||
|
|
bd51d194cf | ||
|
|
1e27c7d8ce | ||
|
|
7d554ed175 | ||
|
|
e72d765961 | ||
|
|
9ce38b86ab | ||
|
|
05bdda7b07 | ||
|
|
d68f18c77a | ||
|
|
ae6349e573 | ||
|
|
0541cff2ad | ||
|
|
e69f8c36d2 | ||
|
|
e7f191c08b | ||
|
|
6a2372b0b2 | ||
|
|
0592515639 | ||
|
|
a6c4bba6c2 | ||
|
|
5691bf385b | ||
|
|
a149f0abb9 | ||
|
|
eae7051111 | ||
|
|
adb6be05d1 | ||
|
|
4e889c7b47 | ||
|
|
2ed6605cc3 | ||
|
|
42c264bf7b | ||
|
|
fe6564b533 | ||
|
|
f6923f21b1 | ||
|
|
edfc61889c | ||
|
|
08c8ca18a7 | ||
|
|
9e4f16ac8b | ||
|
|
03ece0568d | ||
|
|
2dcb465d50 | ||
|
|
c93655c717 | ||
|
|
6f6510169e | ||
|
|
cfe159f636 | ||
|
|
213f361551 | ||
|
|
3582941791 | ||
|
|
a3cd9347e6 | ||
|
|
449c8b5f36 | ||
|
|
1f7af3754d | ||
|
|
72df6b9be2 | ||
|
|
044c0cfdc3 | ||
|
|
3c43f65234 | ||
|
|
bd2d284c53 | ||
|
|
ffea9c010b | ||
|
|
44351b57f7 | ||
|
|
4bbb938de8 | ||
|
|
437270e0af | ||
|
|
09b7f4c95d | ||
|
|
38f83c50c4 | ||
|
|
2f06dc5755 | ||
|
|
d6b66e2155 | ||
|
|
309298fa42 | ||
|
|
a0a2fa964b | ||
|
|
0c769d0f61 | ||
|
|
1b90619890 | ||
|
|
0ea34216de | ||
|
|
53374ac54a | ||
|
|
6355ac219e | ||
|
|
384ad96637 | ||
|
|
0361b0df70 | ||
|
|
a1b8c20c3f | ||
|
|
de01d581c1 | ||
|
|
f1bda194e0 | ||
|
|
a84b62452c | ||
|
|
e039ba5130 | ||
|
|
e67dd8947b | ||
|
|
2d6a4a4956 | ||
|
|
f394581ed8 | ||
|
|
33b0c89e7c | ||
|
|
4e3aa3c289 | ||
|
|
58b196c583 | ||
|
|
3dc53c3d13 | ||
|
|
4f2c1cfe85 | ||
|
|
6e16b3cf84 | ||
|
|
9f0ab479b0 | ||
|
|
884b5e13ee | ||
|
|
7d4aab4cf1 | ||
|
|
6bb0c03d8d | ||
|
|
797c94b0e9 | ||
|
|
e63fbcefe9 | ||
|
|
dcc29d3db6 | ||
|
|
be66c01829 | ||
|
|
21b9884606 | ||
|
|
fd6d93292c | ||
|
|
9000165718 | ||
|
|
54b313cc5a | ||
|
|
2461c11536 | ||
|
|
f17345ffe4 | ||
|
|
4908a63f61 | ||
|
|
da7de899e1 | ||
|
|
44108d6a26 | ||
|
|
c7fb978b7b | ||
|
|
0db94d94d6 | ||
|
|
92e489760d | ||
|
|
decee7616f | ||
|
|
deafd3d0d4 | ||
|
|
b9bbd819be | ||
|
|
b956ea5a5e | ||
|
|
cf2e81b036 | ||
|
|
bf2732599c | ||
|
|
10696680ff | ||
|
|
7e159cb5cd | ||
|
|
74cda61c88 | ||
|
|
9dfe57a3f7 | ||
|
|
f10dcd780c | ||
|
|
bee7efb5d9 | ||
|
|
0039b53d21 | ||
|
|
9f86acbe58 | ||
|
|
bbc1bcbed1 | ||
|
|
3ed824fe0f | ||
|
|
fe24b96d61 | ||
|
|
4b6d8a152f | ||
|
|
e21b9afdf2 | ||
|
|
901d7d8759 | ||
|
|
4b618f9ad1 | ||
|
|
0f7bc76f39 | ||
|
|
6d997ab201 | ||
|
|
8f7f4ae72f | ||
|
|
c85b5f6a87 | ||
|
|
ba5f9887fb | ||
|
|
9e3e9a2d6d | ||
|
|
88a5e2d34d | ||
|
|
afc346d6f1 | ||
|
|
4dd398ca7a | ||
|
|
756bfc9077 | ||
|
|
f646250a91 | ||
|
|
24c567086f | ||
|
|
05b1696df7 | ||
|
|
0baa3b511e | ||
|
|
d793088575 | ||
|
|
9aa7f9ed18 | ||
|
|
e7f6cf12a5 | ||
|
|
e2ba468924 | ||
|
|
85760c0a4c | ||
|
|
0db7af6166 | ||
|
|
5e3d1dd4b5 | ||
|
|
6eb9a36a22 | ||
|
|
e88e9401f1 | ||
|
|
829b4287dd | ||
|
|
2bf7b5a7ab | ||
|
|
1c83f3091c | ||
|
|
dfd08e7c55 | ||
|
|
3b28af17db | ||
|
|
5a03dfb9a4 | ||
|
|
fa1aa301e8 | ||
|
|
ae7b91efe2 | ||
|
|
6d9ccd9b8e | ||
|
|
0d79435ce2 | ||
|
|
4ee2fdf1c6 | ||
|
|
cd273daa1b | ||
|
|
c2e9d49f69 | ||
|
|
38a9c92eec | ||
|
|
1d0f442718 | ||
|
|
1e8babe185 | ||
|
|
69d3b5ca60 | ||
|
|
a493c18193 | ||
|
|
5370ea71c0 | ||
|
|
0afec7739b | ||
|
|
a7173d54ce | ||
|
|
3b10cfae80 | ||
|
|
bd14ad9e6e | ||
|
|
9507cd8ed6 | ||
|
|
dfe74cb5c4 | ||
|
|
00e7b7c3d5 | ||
|
|
d2be50bf4d | ||
|
|
f0f3d6d4eb | ||
|
|
21d918921a | ||
|
|
55095edee6 | ||
|
|
6a7deab74d | ||
|
|
7db27f11d0 | ||
|
|
3ebb4feb98 | ||
|
|
e8dab9bfcf | ||
|
|
dc3eee44a9 | ||
|
|
9e8463af33 | ||
|
|
dd2bdd09db | ||
|
|
0eb3c1d393 | ||
|
|
cb6a1b7225 | ||
|
|
38c73788e1 | ||
|
|
2c89122ce9 | ||
|
|
2eae013ebf | ||
|
|
1247a9c93d | ||
|
|
5c6dd19826 | ||
|
|
9d0ee5c5cd | ||
|
|
3affc2a2d8 | ||
|
|
02bdaa6d10 | ||
|
|
aee263d050 | ||
|
|
7ac4abf8a0 | ||
|
|
139622e0b8 | ||
|
|
aaa4aaf53f | ||
|
|
73c27a9a25 | ||
|
|
82bf89a946 | ||
|
|
f4a4e793aa | ||
|
|
cdabcfd9d0 | ||
|
|
ac7a96b088 | ||
|
|
6932f3d543 | ||
|
|
222027991f | ||
|
|
5bb5091fe0 | ||
|
|
c8127d0ae6 | ||
|
|
8764fa6d4e | ||
|
|
86b7b5b8d8 | ||
|
|
127426f506 | ||
|
|
09cc970b9e | ||
|
|
03f7c5be1f | ||
|
|
4ecf513662 | ||
|
|
76b450386f | ||
|
|
38a54898a3 | ||
|
|
147d1f3951 | ||
|
|
d47419f471 | ||
|
|
367f9c9674 | ||
|
|
f9a906873e | ||
|
|
4be8aaeab8 | ||
|
|
5fdaad9a2f | ||
|
|
5855fb7cc6 | ||
|
|
f226f52200 | ||
|
|
db24a27e61 | ||
|
|
f8297aee4d | ||
|
|
b267aace71 | ||
|
|
b4bd8e4169 | ||
|
|
fdda1078f8 | ||
|
|
88e7e12a50 | ||
|
|
4cdc8939ab | ||
|
|
ec256209a8 | ||
|
|
74db7809eb | ||
|
|
5dac4e6108 | ||
|
|
e51155d8e6 | ||
|
|
2bb7f71b9c | ||
|
|
2f8be4f13f | ||
|
|
8e9d85f10f | ||
|
|
70bae801dc | ||
|
|
37ffe4501c | ||
|
|
13f6297312 | ||
|
|
f9dfa226a5 | ||
|
|
0da19a25cf | ||
|
|
3b92a867e2 | ||
|
|
1ada4a2c67 | ||
|
|
97ad21dc68 | ||
|
|
54dc9cfc8b | ||
|
|
1ed51e8866 | ||
|
|
9e0511995a | ||
|
|
62d51f7d2e | ||
|
|
4f9558dd71 | ||
|
|
86109dcfd0 | ||
|
|
adf22db8b6 | ||
|
|
eb3473125c | ||
|
|
b3894994c0 | ||
|
|
e1306be4be | ||
|
|
002d46d0c4 | ||
|
|
018ba2c83b | ||
|
|
66ed7c1f30 | ||
|
|
a113603f10 | ||
|
|
6f6d62d915 | ||
|
|
ff8393ce32 | ||
|
|
8b209aecf9 | ||
|
|
a515a2d039 | ||
|
|
d0fec462c9 | ||
|
|
20e2040e7e | ||
|
|
538f73b2fa | ||
|
|
a0fb04d6e5 | ||
|
|
44497ef384 | ||
|
|
5fb38b92d9 | ||
|
|
4737588aac | ||
|
|
a5d3ce4e96 | ||
|
|
66b29654c0 | ||
|
|
940570af59 | ||
|
|
bdfb5a91b1 | ||
|
|
29b986684d | ||
|
|
e48a0877ef | ||
|
|
22837d69b7 | ||
|
|
af306b523b | ||
|
|
ba20fd7566 | ||
|
|
6d1330d601 | ||
|
|
f3be0c79c2 | ||
|
|
10c01af692 | ||
|
|
a68a1983cf | ||
|
|
90a647fb72 | ||
|
|
3cbf209d5b | ||
|
|
bee45c4fdc | ||
|
|
61202cb464 | ||
|
|
0091944161 | ||
|
|
78cd857bf6 | ||
|
|
4fe1b4df1c | ||
|
|
2a1235c9db | ||
|
|
4bb41b95a8 | ||
|
|
f78f4854a4 | ||
|
|
ff01dfa03d | ||
|
|
638b204d1e | ||
|
|
58e88c4aed | ||
|
|
8433919342 | ||
|
|
8150b9aeba | ||
|
|
01601fc8a7 | ||
|
|
7b24042d5f | ||
|
|
2177dda242 | ||
|
|
0585c86390 | ||
|
|
528caab47c | ||
|
|
b150df34e0 | ||
|
|
da80c3b309 | ||
|
|
e8804bd80f | ||
|
|
2300886008 | ||
|
|
57ed3c89a2 | ||
|
|
1a284a1c94 | ||
|
|
f12dd51c00 | ||
|
|
e00c1e99d6 | ||
|
|
39323b46ba | ||
|
|
9dff80aeee | ||
|
|
9f7d05bab4 | ||
|
|
53c0a4b568 | ||
|
|
8f460a9be3 | ||
|
|
204b07f46b | ||
|
|
a48a02bade | ||
|
|
2326a1e105 | ||
|
|
c4dc6d9bff | ||
|
|
6213a73e6f | ||
|
|
9c109b744f | ||
|
|
42c1d54b3f | ||
|
|
5e634cd612 | ||
|
|
79c7fe0f7a | ||
|
|
8e86d2cf1d | ||
|
|
4e12a4c013 | ||
|
|
e869cdca9f | ||
|
|
ab565f1a3c | ||
|
|
90cd3bf4cb | ||
|
|
9752ee8819 | ||
|
|
9f1e0660dd | ||
|
|
7c05bb7d1d | ||
|
|
bb0faacf06 | ||
|
|
9ae35ec581 | ||
|
|
b1ca1eb228 | ||
|
|
832502555c | ||
|
|
1176a07c93 | ||
|
|
3770102843 | ||
|
|
cf7c80d42d | ||
|
|
84632571c7 | ||
|
|
af1061e47a | ||
|
|
e1ce0e8467 | ||
|
|
468c475359 | ||
|
|
8902a19bb4 | ||
|
|
f4e72be58f | ||
|
|
c20b5414c4 | ||
|
|
1a0438b3b1 | ||
|
|
da2f85ba4b | ||
|
|
bc65e40313 | ||
|
|
a188c7d791 | ||
|
|
f2cccdd1fb | ||
|
|
6621de709e | ||
|
|
98e9b93b7e | ||
|
|
3aef65597b | ||
|
|
c98e007ff7 | ||
|
|
3350e63004 | ||
|
|
d71b37e292 | ||
|
|
1c7485e58c | ||
|
|
872428de89 | ||
|
|
93441babd8 | ||
|
|
1328285bbc | ||
|
|
9912a4ce98 | ||
|
|
d5186ee663 | ||
|
|
9e2910365a | ||
|
|
3be2571a31 | ||
|
|
6352e95d0f | ||
|
|
b6a72f7d72 | ||
|
|
b923134023 | ||
|
|
6e82fa0dab | ||
|
|
9511bf94d5 | ||
|
|
03983ac24e | ||
|
|
347dbc6237 | ||
|
|
b2a6f3f81c | ||
|
|
5a89f30841 | ||
|
|
244585b82a | ||
|
|
bc727e8d79 | ||
|
|
472589aa14 | ||
|
|
ba9825eca9 | ||
|
|
f4d1a3c33d | ||
|
|
be05f65339 | ||
|
|
dcabe86ea8 | ||
|
|
2a98c323c1 | ||
|
|
be5ed44580 | ||
|
|
93010b71b4 | ||
|
|
62d9a18ec6 | ||
|
|
b0bb65f494 | ||
|
|
09ab634d32 | ||
|
|
bba102c076 | ||
|
|
9719ae096d | ||
|
|
0854188f3c | ||
|
|
0cfcb96e5c | ||
|
|
39bbb7b9cd | ||
|
|
e3d828648e | ||
|
|
ed8f381b5c | ||
|
|
516369d748 | ||
|
|
dff9fd8ae1 | ||
|
|
3f3dc56da5 | ||
|
|
5dbbad5cc4 | ||
|
|
24522f7d74 |
1539
.docker/chrome.json
Normal file
1539
.docker/chrome.json
Normal file
File diff suppressed because it is too large
Load Diff
14
.docker/chromium.pref
Normal file
14
.docker/chromium.pref
Normal file
@@ -0,0 +1,14 @@
|
||||
# Note: 2 blank lines are required between entries
|
||||
Package: *
|
||||
Pin: release a=eoan
|
||||
Pin-Priority: 500
|
||||
|
||||
Package: *
|
||||
Pin: origin "ftp.debian.org"
|
||||
Pin-Priority: 300
|
||||
|
||||
# Pattern includes 'chromium', 'chromium-browser' and similarly
|
||||
# named dependencies:
|
||||
Package: chromium*
|
||||
Pin: origin "ftp.debian.org"
|
||||
Pin-Priority: 700
|
||||
8
.docker/copy-bun-binary.sh
Normal file
8
.docker/copy-bun-binary.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
name=$(openssl rand -hex 12)
|
||||
id=$(docker create --name=bun-binary-$name $CONTAINER_TAG)
|
||||
docker container cp bun-binary-$name:$BUN_RELEASE_DIR bun-binary
|
||||
echo -e "bun-binary-$name"
|
||||
3
.docker/debian.list
Normal file
3
.docker/debian.list
Normal file
@@ -0,0 +1,3 @@
|
||||
deb http://deb.debian.org/debian buster main
|
||||
deb http://deb.debian.org/debian buster-updates main
|
||||
deb http://deb.debian.org/debian-security buster/updates main
|
||||
34
.docker/dockerfile-common.sh
Normal file
34
.docker/dockerfile-common.sh
Normal file
@@ -0,0 +1,34 @@
|
||||
export DOCKER_BUILDKIT=1
|
||||
|
||||
export BUILDKIT_ARCH=$(uname -m)
|
||||
export ARCH=${BUILDKIT_ARCH}
|
||||
|
||||
if [ "$BUILDKIT_ARCH" == "amd64" ]; then
|
||||
export BUILDKIT_ARCH="amd64"
|
||||
export ARCH=x64
|
||||
fi
|
||||
|
||||
if [ "$BUILDKIT_ARCH" == "x86_64" ]; then
|
||||
export BUILDKIT_ARCH="amd64"
|
||||
export ARCH=x64
|
||||
fi
|
||||
|
||||
if [ "$BUILDKIT_ARCH" == "arm64" ]; then
|
||||
export BUILDKIT_ARCH="arm64"
|
||||
export ARCH=aarch64
|
||||
fi
|
||||
|
||||
if [ "$BUILDKIT_ARCH" == "aarch64" ]; then
|
||||
export BUILDKIT_ARCH="arm64"
|
||||
export ARCH=aarch64
|
||||
fi
|
||||
|
||||
if [ "$BUILDKIT_ARCH" == "armv7l" ]; then
|
||||
echo "Unsupported platform: $BUILDKIT_ARCH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
export BUILD_ID=$(cat build-id)
|
||||
export CONTAINER_NAME=bun-linux-$ARCH
|
||||
export DEBUG_CONTAINER_NAME=debug-bun-linux-$ARCH
|
||||
export TEMP=/tmp/bun-0.0.$BUILD_ID
|
||||
11
.docker/pull.sh
Normal file
11
.docker/pull.sh
Normal file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
docker pull bunbunbunbun/bun-test-base:latest --platform=linux/amd64
|
||||
docker pull bunbunbunbun/bun-base:latest --platform=linux/amd64
|
||||
docker pull bunbunbunbun/bun-base-with-zig-and-webkit:latest --platform=linux/amd64
|
||||
|
||||
docker tag bunbunbunbun/bun-test-base:latest bun-base:latest
|
||||
docker tag bunbunbunbun/bun-base:latest bun-base:latest
|
||||
docker tag bunbunbunbun/bun-base-with-zig-and-webkit:latest bun-base-with-zig-and-webkit:latest
|
||||
47
.docker/run-dockerfile.sh
Normal file
47
.docker/run-dockerfile.sh
Normal file
@@ -0,0 +1,47 @@
|
||||
#!/bin/bash
|
||||
|
||||
source "dockerfile-common.sh"
|
||||
|
||||
export $CONTAINER_NAME=$CONTAINER_NAME-local
|
||||
|
||||
rm -rf $TEMP
|
||||
mkdir -p $TEMP
|
||||
|
||||
docker build . --target release --progress=plain -t $CONTAINER_NAME:latest --build-arg BUILDKIT_INLINE_CACHE=1 --platform=linux/$BUILDKIT_ARCH --cache-from $CONTAINER_NAME:latest
|
||||
|
||||
if (($?)); then
|
||||
echo "Failed to build container"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
id=$(docker create $CONTAINER_NAME:latest)
|
||||
docker cp $id:/home/ubuntu/bun-release $TEMP/$CONTAINER_NAME
|
||||
if (($?)); then
|
||||
echo "Failed to cp container"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $TEMP
|
||||
mkdir -p $TEMP/$CONTAINER_NAME $TEMP/$DEBUG_CONTAINER_NAME
|
||||
mv $CONTAINER_NAME/bun-profile $DEBUG_CONTAINER_NAME/bun
|
||||
zip -r $CONTAINER_NAME.zip $CONTAINER_NAME
|
||||
zip -r $DEBUG_CONTAINER_NAME.zip $DEBUG_CONTAINER_NAME
|
||||
docker rm -v $id
|
||||
abs=$(realpath $TEMP/$CONTAINER_NAME.zip)
|
||||
debug_abs=$(realpath $TEMP/$DEBUG_CONTAINER_NAME.zip)
|
||||
|
||||
case $(uname -s) in
|
||||
"Linux") target="linux" ;;
|
||||
*) target="other" ;;
|
||||
esac
|
||||
|
||||
if [ "$target" = "linux" ]; then
|
||||
if command -v bun --version >/dev/null; then
|
||||
cp $TEMP/$CONTAINER_NAME/bun $(which bun)
|
||||
cp $TEMP/$DEBUG_CONTAINER_NAME/bun $(which bun-profile)
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "Saved to:"
|
||||
echo $debug_abs
|
||||
echo $abs
|
||||
9
.docker/run-test.sh
Executable file
9
.docker/run-test.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
bun install
|
||||
bun install --cwd ./test/snippets
|
||||
bun install --cwd ./test/scripts
|
||||
|
||||
make $BUN_TEST_NAME
|
||||
5
.docker/runner.sh
Normal file
5
.docker/runner.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
docker container run --security-opt seccomp=.docker/chrome.json --env GITHUB_WORKSPACE=$GITHUB_WORKSPACE --env BUN_TEST_NAME=$BUN_TEST_NAME --ulimit memlock=-1:-1 --init --rm bun-test:latest
|
||||
5
.docker/unit-tests.sh
Normal file
5
.docker/unit-tests.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
docker container run --security-opt seccomp=.docker/chrome.json --env GITHUB_WORKSPACE=$GITHUB_WORKSPACE --ulimit memlock=-1:-1 --init --rm bun-unit-tests:latest
|
||||
17
.dockerignore
Normal file
17
.dockerignore
Normal file
@@ -0,0 +1,17 @@
|
||||
node_modules
|
||||
**/node_modules
|
||||
src/bun.js/WebKit/LayoutTests
|
||||
zig-out
|
||||
zig-build
|
||||
**/*.o
|
||||
**/*.a
|
||||
|
||||
examples
|
||||
|
||||
**/.next
|
||||
.git
|
||||
src/bun.js/WebKit
|
||||
**/CMakeCache.txt
|
||||
packages/**/bun
|
||||
packages/**/bun-profile
|
||||
zig-cache
|
||||
33
.gitattributes
vendored
Normal file
33
.gitattributes
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
.vscode/launch.json linguist-generated
|
||||
src/api/schema.d.ts linguist-generated
|
||||
fixture.*.c linguist-generated
|
||||
src/api/schema.js linguist-generated
|
||||
src/bun.js/bindings/sqlite/sqlite3.c linguist-vendored
|
||||
src/bun.js/bindings/sqlite/sqlite3_local.h linguist-vendored
|
||||
*.lockb binary diff=lockb
|
||||
*.zig text eol=lf
|
||||
src/bun.js/bindings/simdutf.cpp linguist-vendored
|
||||
src/bun.js/bindings/simdutf.h linguist-vendored
|
||||
|
||||
src/js/out/WebCoreJSBuiltins.cpp linguist-generated
|
||||
src/js/out/WebCoreJSBuiltins.h linguist-generated
|
||||
src/js/out/WebCoreJSBuiltins.d.ts linguist-generated
|
||||
|
||||
src/bun.js/bindings/ZigGeneratedClasses.h linguist-generated
|
||||
src/bun.js/bindings/ZigGeneratedClasses.cpp linguist-generated
|
||||
|
||||
src/bun.js/bindings/ZigGeneratedCode.h linguist-generated
|
||||
src/bun.js/bindings/ZigGeneratedCode.cpp linguist-generated
|
||||
|
||||
src/bun.js/bindings/headers.h linguist-generated
|
||||
src/bun.js/bindings/headers.zig linguist-generated
|
||||
|
||||
src/bun.js/bindings/JSSink.h linguist-generated
|
||||
src/bun.js/bindings/JSSink.zig linguist-generated
|
||||
|
||||
src/bun.js/bindings/ZigGeneratedClasses+DOMClientIsoSubspaces.h linguist-generated
|
||||
src/bun.js/bindings/ZigGeneratedClasses+DOMIsoSubspaces.h linguist-generated
|
||||
src/bun.js/bindings/ZigGeneratedClasses+lazyStructureHeader.h linguist-generated
|
||||
src/bun.js/bindings/ZigGeneratedClasses+lazyStructureImpl.h linguist-generated
|
||||
|
||||
docs/**/* linguist-documentation
|
||||
35
.github/ISSUE_TEMPLATE/1-install-problem.yml
vendored
Normal file
35
.github/ISSUE_TEMPLATE/1-install-problem.yml
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
name: 📥 Install Problem
|
||||
description: Report an issue during install or upgrade
|
||||
labels: [bug, install]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for submitting a bug report. It helps make Bun better.
|
||||
|
||||
If you need help or support using Bun, and are not reporting an issue, please
|
||||
join our [Discord](https://discord.gg/CXdq2DP29u) server, where you can ask questions in the [`#help`](https://discord.gg/32EtH6p7HN) forum.
|
||||
|
||||
Please try to include as much information as possible.
|
||||
- type: input
|
||||
attributes:
|
||||
label: What platform is your computer?
|
||||
description: |
|
||||
For MacOS and Linux: copy the output of `uname -mprs`
|
||||
For Windows: copy the output of `"$([Environment]::OSVersion | ForEach-Object VersionString) $(if ([Environment]::Is64BitOperatingSystem) { "x64" } else { "x86" })"` in the PowerShell console
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: How did you attempt to install or upgrade?
|
||||
description: Please provide the commands you ran to install or upgrade.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What do you see instead?
|
||||
description: If possible, please provide text instead of a screenshot.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional information
|
||||
description: Is there anything else you think we should know?
|
||||
41
.github/ISSUE_TEMPLATE/2-bug-report.yml
vendored
Normal file
41
.github/ISSUE_TEMPLATE/2-bug-report.yml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
name: 🐛 Bug Report
|
||||
description: Report an issue that should be fixed
|
||||
labels: [bug]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for submitting a bug report. It helps make Bun better.
|
||||
|
||||
If you need help or support using Bun, and are not reporting a bug, please
|
||||
join our [Discord](https://discord.gg/CXdq2DP29u) server, where you can ask questions in the [`#help`](https://discord.gg/32EtH6p7HN) forum.
|
||||
|
||||
Please try to include as much information as possible.
|
||||
- type: input
|
||||
attributes:
|
||||
label: What version of Bun is running?
|
||||
description: Copy the output of `bun -v`
|
||||
- type: input
|
||||
attributes:
|
||||
label: What platform is your computer?
|
||||
description: |
|
||||
For MacOS and Linux: copy the output of `uname -mprs`
|
||||
For Windows: copy the output of `"$([Environment]::OSVersion | ForEach-Object VersionString) $(if ([Environment]::Is64BitOperatingSystem) { "x64" } else { "x86" })"` in the PowerShell console
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What steps can reproduce the bug?
|
||||
description: Explain the bug and provide a code snippet that can reproduce it.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What is the expected behavior?
|
||||
description: If possible, please provide text instead of a screenshot.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What do you see instead?
|
||||
description: If possible, please provide text instead of a screenshot.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional information
|
||||
description: Is there anything else you think we should know?
|
||||
24
.github/ISSUE_TEMPLATE/3-feature-request.yml
vendored
Normal file
24
.github/ISSUE_TEMPLATE/3-feature-request.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
name: 🚀 Feature Request
|
||||
description: Suggest an idea, feature, or enhancement
|
||||
labels: [enhancement]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for submitting an idea. It helps make Bun better.
|
||||
|
||||
If you want to discuss Bun, or learn how others are using Bun, please
|
||||
join our [Discord](https://discord.gg/CXdq2DP29u) server, where you can share in the [`#feedback-ideas`](https://discord.gg/unwUnHBNqy) channel.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What is the problem this feature would solve?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What is the feature you are proposing to solve the problem?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What alternatives have you considered?
|
||||
29
.github/ISSUE_TEMPLATE/4-docs-issue.yml
vendored
Normal file
29
.github/ISSUE_TEMPLATE/4-docs-issue.yml
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
name: 📗 Documentation Issue
|
||||
description: Tell us if there is missing or incorrect documentation
|
||||
labels: [docs]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for submitting a documentation request. It helps make Bun better.
|
||||
|
||||
We are working on moving documentation from the [README](https://github.com/oven-sh/bun#table-of-contents) to a documentation website. Please report as many issues or missing content requests as you can so we can incoperate that in the new documentation.
|
||||
- type: dropdown
|
||||
attributes:
|
||||
label: What is the type of issue?
|
||||
multiple: true
|
||||
options:
|
||||
- Documentation is missing
|
||||
- Documentation is incorrect
|
||||
- Documentation is confusing
|
||||
- Example code is not working
|
||||
- Something else
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What is the issue?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Where did you find it?
|
||||
description: If possible, please provide the URL(s) where you found this issue.
|
||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
blank_issues_enabled: true
|
||||
contact_links:
|
||||
- name: 💬 Ask a Question
|
||||
url: https://discord.com/invite/CXdq2DP29u
|
||||
about: Join our Discord server for questions, support requests, or just to chat.
|
||||
18
.github/workflows/bun-deploy-site.yml
vendored
Normal file
18
.github/workflows/bun-deploy-site.yml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
# redeploy Vercel site when a file in `docs` changes
|
||||
# using VERCEL_DEPLOY_HOOK environment variable
|
||||
|
||||
name: Deploy site
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- "docs/**"
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
name: Deploy site
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
steps:
|
||||
- name: Trigger Vercel build
|
||||
run: curl ${{ secrets.VERCEL_DEPLOY_HOOK }}
|
||||
50
.github/workflows/bun-ecosystem-test.yml
vendored
Normal file
50
.github/workflows/bun-ecosystem-test.yml
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
name: bun-ecosystem-test
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 15 * * *" # every day at 7am PST
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: "The version of Bun to run"
|
||||
required: true
|
||||
default: "canary"
|
||||
type: string
|
||||
jobs:
|
||||
test:
|
||||
name: ${{ matrix.tag }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 10
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
tag: linux-x64
|
||||
url: linux/x64?avx2=true
|
||||
- os: ubuntu-latest
|
||||
tag: linux-x64-baseline
|
||||
url: linux/x64?baseline=true
|
||||
# FIXME: runner fails with "No tests found"?
|
||||
#- os: macos-latest
|
||||
# tag: darwin-x64
|
||||
# url: darwin/x64?avx2=true
|
||||
- os: macos-latest
|
||||
tag: darwin-x64-baseline
|
||||
url: darwin/x64?baseline=true
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: Bhacaz/checkout-files@v2
|
||||
with:
|
||||
files: packages/bun-internal-test
|
||||
- id: setup
|
||||
name: Setup
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-download-url: https://bun.sh/download/${{ github.event.inputs.version }}/${{ matrix.url }}
|
||||
- id: test
|
||||
name: Test
|
||||
working-directory: packages/bun-internal-test
|
||||
run: bun run test:ecosystem
|
||||
41
.github/workflows/bun-framework-next.yml
vendored
Normal file
41
.github/workflows/bun-framework-next.yml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
name: bun-framework-next
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- packages/bun-framework-next/**/*
|
||||
branches: [main, bun-framework-next-actions]
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/bun-framework-next/**/*
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: lint, test and build on Node ${{ matrix.node }} and ${{ matrix.os }}
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node: ["14.x"]
|
||||
os: [macOS-latest]
|
||||
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Use Node ${{ matrix.node }}
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node }}
|
||||
|
||||
- name: Install PNPM
|
||||
uses: pnpm/action-setup@v2.0.1
|
||||
with:
|
||||
version: 6.21.0
|
||||
|
||||
- name: Install dependencies
|
||||
run: cd packages/bun-framework-next && pnpm install
|
||||
|
||||
- name: Type check bun-framework-next
|
||||
run: cd packages/bun-framework-next && pnpm check
|
||||
136
.github/workflows/bun-linux-aarch64.yml
vendored
Normal file
136
.github/workflows/bun-linux-aarch64.yml
vendored
Normal file
@@ -0,0 +1,136 @@
|
||||
name: bun-linux
|
||||
|
||||
concurrency:
|
||||
group: bun-linux-aarch64-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
TEST_TAG: bun-test'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
name: ${{matrix.tag}}
|
||||
runs-on: ${{matrix.runner}}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- cpu: native
|
||||
tag: linux-aarch64
|
||||
arch: aarch64
|
||||
build_arch: arm64
|
||||
runner: linux-arm64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-linux-arm64-lto.tar.gz"
|
||||
webkit_basename: "bun-webkit-linux-arm64-lto"
|
||||
build_machine_arch: aarch64
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
id: buildx
|
||||
with:
|
||||
install: true
|
||||
- name: Run
|
||||
run: |
|
||||
rm -rf ${{runner.temp}}/release
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: |
|
||||
mkdir -p /tmp/.buildx-cache-${{matrix.tag}}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=local,src=/tmp/.buildx-cache-${{matrix.tag}}
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache-${{matrix.tag}}
|
||||
build-args: |
|
||||
ARCH=${{matrix.arch}}
|
||||
BUILDARCH=${{matrix.build_arch}}
|
||||
BUILD_MACHINE_ARCH=${{matrix.build_machine_arch}}
|
||||
CPU_TARGET=${{matrix.cpu}}
|
||||
WEBKIT_URL=${{matrix.webkit_url}}
|
||||
GIT_SHA=${{github.sha}}
|
||||
WEBKIT_BASENAME=${{matrix.webkit_basename}}
|
||||
platforms: linux/${{matrix.build_arch}}
|
||||
target: artifact
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- name: Zip
|
||||
run: |
|
||||
# if zip is not found
|
||||
if [ ! -x "$(command -v zip)" ]; then
|
||||
sudo apt-get update && sudo apt-get install -y zip --no-install-recommends
|
||||
fi
|
||||
|
||||
if [ ! -x "$(command -v strip)" ]; then
|
||||
sudo apt-get update && sudo apt-get install -y binutils --no-install-recommends
|
||||
fi
|
||||
|
||||
cd ${{runner.temp}}/release
|
||||
chmod +x bun-profile bun
|
||||
|
||||
mkdir bun-${{matrix.tag}}-profile
|
||||
mkdir bun-${{matrix.tag}}
|
||||
|
||||
strip bun
|
||||
|
||||
mv bun-profile bun-${{matrix.tag}}-profile/bun-profile
|
||||
mv bun bun-${{matrix.tag}}/bun
|
||||
|
||||
zip -r bun-${{matrix.tag}}-profile.zip bun-${{matrix.tag}}-profile
|
||||
zip -r bun-${{matrix.tag}}.zip bun-${{matrix.tag}}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-${{matrix.tag}}-profile
|
||||
path: ${{runner.temp}}/release/bun-${{matrix.tag}}-profile.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/bun-${{matrix.tag}}.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-obj-${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/bun-obj
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}-dependencies
|
||||
path: ${{runner.temp}}/release/bun-dependencies
|
||||
- name: Release
|
||||
id: release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: |
|
||||
github.repository_owner == 'oven-sh'
|
||||
&& github.ref == 'refs/heads/main'
|
||||
with:
|
||||
prerelease: true
|
||||
body: "This canary release of Bun corresponds to the commit [${{ github.sha }}]"
|
||||
allowUpdates: true
|
||||
replacesArtifacts: true
|
||||
generateReleaseNotes: true
|
||||
artifactErrorsFailBuild: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
name: "Canary (${{github.sha}})"
|
||||
tag: "canary"
|
||||
artifacts: "${{runner.temp}}/release/bun-${{matrix.tag}}.zip,${{runner.temp}}/release/bun-${{matrix.tag}}-profile.zip"
|
||||
227
.github/workflows/bun-linux-build.yml
vendored
Normal file
227
.github/workflows/bun-linux-build.yml
vendored
Normal file
@@ -0,0 +1,227 @@
|
||||
name: bun-linux
|
||||
|
||||
concurrency:
|
||||
group: bun-linux-build-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
TEST_TAG: bun-test'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
name: ${{matrix.tag}}
|
||||
runs-on: ${{matrix.runner}}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- cpu: haswell
|
||||
tag: linux-x64
|
||||
arch: x86_64
|
||||
build_arch: amd64
|
||||
runner: big-ubuntu
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-linux-amd64-lto.tar.gz"
|
||||
webkit_basename: "bun-webkit-linux-amd64-lto"
|
||||
build_machine_arch: x86_64
|
||||
- cpu: nehalem
|
||||
tag: linux-x64-baseline
|
||||
arch: x86_64
|
||||
build_arch: amd64
|
||||
runner: big-ubuntu
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-linux-amd64-lto.tar.gz"
|
||||
webkit_basename: "bun-webkit-linux-amd64-lto"
|
||||
build_machine_arch: x86_64
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
id: buildx
|
||||
with:
|
||||
install: true
|
||||
- name: Run
|
||||
run: |
|
||||
rm -rf ${{runner.temp}}/release
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: |
|
||||
mkdir -p /tmp/.buildx-cache-${{matrix.tag}}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=local,src=/tmp/.buildx-cache-${{matrix.tag}}
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache-${{matrix.tag}}
|
||||
build-args: |
|
||||
ARCH=${{matrix.arch}}
|
||||
BUILDARCH=${{matrix.build_arch}}
|
||||
BUILD_MACHINE_ARCH=${{matrix.build_machine_arch}}
|
||||
CPU_TARGET=${{matrix.cpu}}
|
||||
WEBKIT_URL=${{matrix.webkit_url}}
|
||||
GIT_SHA=${{github.sha}}
|
||||
WEBKIT_BASENAME=${{matrix.webkit_basename}}
|
||||
platforms: linux/${{matrix.build_arch}}
|
||||
target: artifact
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- name: Zip
|
||||
run: |
|
||||
# if zip is not found
|
||||
if [ ! -x "$(command -v zip)" ]; then
|
||||
sudo apt-get update && sudo apt-get install -y zip --no-install-recommends
|
||||
fi
|
||||
|
||||
if [ ! -x "$(command -v strip)" ]; then
|
||||
sudo apt-get update && sudo apt-get install -y binutils --no-install-recommends
|
||||
fi
|
||||
|
||||
cd ${{runner.temp}}/release
|
||||
chmod +x bun-profile bun
|
||||
|
||||
mkdir bun-${{matrix.tag}}-profile
|
||||
mkdir bun-${{matrix.tag}}
|
||||
|
||||
strip bun
|
||||
|
||||
mv bun-profile bun-${{matrix.tag}}-profile/bun-profile
|
||||
mv bun bun-${{matrix.tag}}/bun
|
||||
|
||||
zip -r bun-${{matrix.tag}}-profile.zip bun-${{matrix.tag}}-profile
|
||||
zip -r bun-${{matrix.tag}}.zip bun-${{matrix.tag}}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-${{matrix.tag}}-profile
|
||||
path: ${{runner.temp}}/release/bun-${{matrix.tag}}-profile.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/bun-${{matrix.tag}}.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bun-obj-${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/bun-obj
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}-dependencies
|
||||
path: ${{runner.temp}}/release/bun-dependencies
|
||||
- name: Release
|
||||
id: release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: |
|
||||
github.repository_owner == 'oven-sh'
|
||||
&& github.ref == 'refs/heads/main'
|
||||
with:
|
||||
prerelease: true
|
||||
body: "This canary release of Bun corresponds to the commit [${{ github.sha }}]"
|
||||
allowUpdates: true
|
||||
replacesArtifacts: true
|
||||
generateReleaseNotes: true
|
||||
artifactErrorsFailBuild: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
name: "Canary (${{github.sha}})"
|
||||
tag: "canary"
|
||||
artifacts: "${{runner.temp}}/release/bun-${{matrix.tag}}.zip,${{runner.temp}}/release/bun-${{matrix.tag}}-profile.zip"
|
||||
|
||||
linux-test:
|
||||
name: Tests ${{matrix.tag}}
|
||||
runs-on: ubuntu-latest
|
||||
needs: [linux]
|
||||
if: github.event_name == 'pull_request'
|
||||
timeout-minutes: 20
|
||||
outputs:
|
||||
failing_tests: ${{ steps.test.outputs.failing_tests }}
|
||||
failing_tests_count: ${{ steps.test.outputs.failing_tests_count }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- tag: linux-x64
|
||||
- tag: linux-x64-baseline
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: false
|
||||
- id: download
|
||||
name: Download
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: bun-${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release
|
||||
- id: install
|
||||
name: Install
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
unzip bun-${{matrix.tag}}.zip
|
||||
cd bun-${{matrix.tag}}
|
||||
chmod +x bun
|
||||
sudo mv bun /usr/local/bin/bun
|
||||
bun --version
|
||||
- id: test
|
||||
name: Test (node runner)
|
||||
# if: ${{github.event.inputs.use_bun == 'false'}}
|
||||
run: |
|
||||
bun install
|
||||
bun install --cwd test
|
||||
bun install --cwd packages/bun-internal-test
|
||||
node packages/bun-internal-test/src/runner.node.mjs || true
|
||||
- name: Comment on PR
|
||||
if: steps.test.outputs.failing_tests != '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
message: |
|
||||
❌ @${{ github.actor }} ${{ steps.test.outputs.failing_tests_count }} files with test failures on ${{ matrix.tag }}:
|
||||
|
||||
${{ steps.test.outputs.failing_tests }}
|
||||
|
||||
**[View test output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Uncomment on PR
|
||||
if: steps.test.outputs.failing_tests == '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ test failures on ${{ matrix.tag }} have been resolved.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- id: fail
|
||||
name: Fail the build
|
||||
if: steps.test.outputs.failing_tests != ''
|
||||
run: exit 1
|
||||
466
.github/workflows/bun-mac-aarch64.yml
vendored
Normal file
466
.github/workflows/bun-mac-aarch64.yml
vendored
Normal file
@@ -0,0 +1,466 @@
|
||||
name: bun-macOS-aarch64
|
||||
|
||||
concurrency:
|
||||
group: bun-macOS-aarch64-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
TEST_TAG: bun-test'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
pull_request:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
macos-object-files:
|
||||
name: macOS Object
|
||||
runs-on: med-ubuntu
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-obj-darwin-x64-baseline
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-obj-darwin-x64
|
||||
- cpu: native
|
||||
arch: aarch64
|
||||
tag: bun-obj-darwin-aarch64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
id: buildx
|
||||
with:
|
||||
install: true
|
||||
- name: Run
|
||||
run: |
|
||||
rm -rf ${{runner.temp}}/release
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'X64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=amd64
|
||||
BUILD_MACHINE_ARCH=x86_64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/amd64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'ARM64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=arm64
|
||||
BUILD_MACHINE_ARCH=aarch64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/arm64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}
|
||||
path: ${{runner.temp}}/release/bun.o
|
||||
macOS-cpp:
|
||||
name: macOS C++
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: true
|
||||
# compile_obj: false
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: true
|
||||
# compile_obj: false
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: false
|
||||
# compile_obj: true
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: false
|
||||
# compile_obj: true
|
||||
- cpu: native
|
||||
arch: aarch64
|
||||
tag: bun-darwin-aarch64
|
||||
obj: bun-obj-darwin-aarch64
|
||||
artifact: bun-obj-darwin-aarch64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-arm64-lto.tar.gz"
|
||||
runner: macos-arm64
|
||||
dependencies: true
|
||||
compile_obj: true
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install ccache rust llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix ccache)/bin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}
|
||||
- name: Download WebKit
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: Compile dependencies
|
||||
if: matrix.dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $BUN_DEPS_OUT_DIR
|
||||
make vendor-without-check
|
||||
- name: Compile C++
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $OBJ_DIR $BUN_DEPS_OUT_DIR
|
||||
make clean-bindings
|
||||
make -j $(sysctl -n hw.ncpu) release-bindings
|
||||
- name: Upload C++
|
||||
if: matrix.compile_obj
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Upload Dependencies
|
||||
if: matrix.dependencies
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{runner.temp}}/bun-deps
|
||||
macOS:
|
||||
name: macOS Link
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
needs: [macOS-cpp, macos-object-files]
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# package: bun-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# package: bun-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
- cpu: native
|
||||
arch: aarch64
|
||||
tag: bun-darwin-aarch64
|
||||
obj: bun-obj-darwin-aarch64
|
||||
package: bun-darwin-aarch64
|
||||
artifact: bun-obj-darwin-aarch64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-arm64-lto.tar.gz"
|
||||
runner: macos-arm64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install rust ccache llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
- name: Download WebKit
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: Download C++
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Download Dependencies
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{ runner.temp }}/bun-deps
|
||||
- name: Download Object
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.obj }}
|
||||
path: ${{ runner.temp }}/release
|
||||
- name: Link
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf packages/${{ matrix.package }}
|
||||
mkdir -p packages/${{ matrix.package }}
|
||||
mv ${{ runner.temp }}/release/* packages/${{ matrix.package }}/
|
||||
make bun-link-lld-release copy-to-bun-release-dir-bin
|
||||
- name: Zip
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
chmod +x bun-profile bun
|
||||
|
||||
mkdir ${{matrix.tag}}-profile
|
||||
mkdir ${{matrix.tag}}
|
||||
|
||||
/usr/bin/strip -S bun
|
||||
|
||||
mv bun-profile ${{matrix.tag}}-profile/bun-profile
|
||||
mv bun ${{matrix.tag}}/bun
|
||||
|
||||
zip -r ${{matrix.tag}}-profile.zip ${{matrix.tag}}-profile
|
||||
zip -r ${{matrix.tag}}.zip ${{matrix.tag}}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}-profile
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}-profile.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}.zip
|
||||
- name: Release
|
||||
id: release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: |
|
||||
github.repository_owner == 'oven-sh'
|
||||
&& github.ref == 'refs/heads/main'
|
||||
with:
|
||||
prerelease: true
|
||||
body: "This canary release of Bun corresponds to the commit [${{ github.sha }}]"
|
||||
allowUpdates: true
|
||||
replacesArtifacts: true
|
||||
generateReleaseNotes: true
|
||||
artifactErrorsFailBuild: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
name: "Canary (${{github.sha}})"
|
||||
tag: "canary"
|
||||
artifacts: "${{runner.temp}}/release/${{matrix.tag}}.zip,${{runner.temp}}/release/${{matrix.tag}}-profile.zip"
|
||||
macOS-test:
|
||||
name: Tests ${{matrix.tag}}
|
||||
runs-on: ${{ matrix.runner }}
|
||||
needs: [macOS]
|
||||
if: github.event_name == 'pull_request' && github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 10
|
||||
outputs:
|
||||
failing_tests: ${{ steps.test.outputs.failing_tests }}
|
||||
failing_tests_count: ${{ steps.test.outputs.failing_tests_count }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- tag: bun-darwin-aarch64
|
||||
runner: macos-arm64
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: false
|
||||
- id: download
|
||||
name: Download
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release
|
||||
- id: install
|
||||
name: Install
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
unzip ${{matrix.tag}}.zip
|
||||
cd ${{matrix.tag}}
|
||||
chmod +x bun
|
||||
sudo mv bun /usr/local/bin/bun
|
||||
bun --version
|
||||
- id: test
|
||||
name: Test (node runner)
|
||||
# if: ${{github.event.inputs.use_bun == 'false'}}
|
||||
run: |
|
||||
bun install
|
||||
bun install --cwd test
|
||||
bun install --cwd packages/bun-internal-test
|
||||
node packages/bun-internal-test/src/runner.node.mjs || true
|
||||
- name: Comment on PR
|
||||
if: steps.test.outputs.failing_tests != '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
message: |
|
||||
❌ @${{ github.actor }} ${{ steps.test.outputs.failing_tests_count }} files with test failures on ${{ matrix.tag }}:
|
||||
|
||||
${{ steps.test.outputs.failing_tests }}
|
||||
|
||||
**[View test output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Uncomment on PR
|
||||
if: steps.test.outputs.failing_tests == '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ test failures on ${{ matrix.tag }} have been resolved.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- id: fail
|
||||
name: Fail the build
|
||||
if: steps.test.outputs.failing_tests != ''
|
||||
run: exit 1
|
||||
470
.github/workflows/bun-mac-x64-baseline.yml
vendored
Normal file
470
.github/workflows/bun-mac-x64-baseline.yml
vendored
Normal file
@@ -0,0 +1,470 @@
|
||||
name: bun-macOS-x64-baseline
|
||||
|
||||
concurrency:
|
||||
group: bun-macOS-x64-baseline-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
TEST_TAG: bun-test'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
pull_request:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
macos-object-files:
|
||||
name: macOS Object
|
||||
runs-on: med-ubuntu
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- cpu: nehalem
|
||||
arch: x86_64
|
||||
tag: bun-obj-darwin-x64-baseline
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-obj-darwin-x64
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-obj-darwin-aarch64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
id: buildx
|
||||
with:
|
||||
install: true
|
||||
- name: Run
|
||||
run: |
|
||||
rm -rf ${{runner.temp}}/release
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'X64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=amd64
|
||||
BUILD_MACHINE_ARCH=x86_64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/amd64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'ARM64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=arm64
|
||||
BUILD_MACHINE_ARCH=aarch64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/arm64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}
|
||||
path: ${{runner.temp}}/release/bun.o
|
||||
macOS-cpp:
|
||||
name: macOS C++
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- cpu: nehalem
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64-baseline
|
||||
obj: bun-obj-darwin-x64-baseline
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64-baseline
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
dependencies: true
|
||||
compile_obj: false
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: true
|
||||
# compile_obj: false
|
||||
- cpu: nehalem
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64-baseline
|
||||
obj: bun-obj-darwin-x64-baseline
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64-baseline
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
dependencies: false
|
||||
compile_obj: true
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: false
|
||||
# compile_obj: true
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-darwin-aarch64
|
||||
# obj: bun-obj-darwin-aarch64
|
||||
# artifact: bun-obj-darwin-aarch64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# runner: macos-arm64
|
||||
# dependencies: true
|
||||
# compile_obj: true
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install ccache rust llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix ccache)/bin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: ccache (dependencies)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
if: matrix.dependencies
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-dependencies
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-dependencies
|
||||
- name: ccache (c++)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
if: matrix.compile_obj
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-obj
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-obj
|
||||
- name: Download WebKit
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: Compile dependencies
|
||||
if: matrix.dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $OBJ_DIR $BUN_DEPS_OUT_DIR
|
||||
make vendor-without-check
|
||||
- name: Compile C++
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $OBJ_DIR $BUN_DEPS_OUT_DIR
|
||||
make -j $(sysctl -n hw.ncpu) release-bindings
|
||||
- name: Upload C++
|
||||
if: matrix.compile_obj
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Upload Dependencies
|
||||
if: matrix.dependencies
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{runner.temp}}/bun-deps
|
||||
macOS:
|
||||
name: macOS Link
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
needs: [macOS-cpp, macos-object-files]
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- cpu: nehalem
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64-baseline
|
||||
obj: bun-obj-darwin-x64-baseline
|
||||
package: bun-darwin-x64
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64-baseline
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# - cpu: haswell
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64
|
||||
# obj: bun-obj-darwin-x64
|
||||
# package: bun-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-darwin-aarch64
|
||||
# obj: bun-obj-darwin-aarch64
|
||||
# package: bun-darwin-aarch64
|
||||
# artifact: bun-obj-darwin-aarch64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# runner: macos-arm64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install ccache rust llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: ccache (link)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
- name: Download WebKit
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: Download C++
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Download Dependencies
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{ runner.temp }}/bun-deps
|
||||
- name: Download Object
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.obj }}
|
||||
path: ${{ runner.temp }}/release
|
||||
- name: Link
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf packages/${{ matrix.package }}
|
||||
mkdir -p packages/${{ matrix.package }}
|
||||
mv ${{ runner.temp }}/release/* packages/${{ matrix.package }}/
|
||||
make bun-link-lld-release copy-to-bun-release-dir-bin
|
||||
- name: Zip
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
chmod +x bun-profile bun
|
||||
|
||||
mkdir ${{matrix.tag}}-profile
|
||||
mkdir ${{matrix.tag}}
|
||||
|
||||
/usr/bin/strip -S bun
|
||||
|
||||
mv bun-profile ${{matrix.tag}}-profile/bun-profile
|
||||
mv bun ${{matrix.tag}}/bun
|
||||
|
||||
zip -r ${{matrix.tag}}-profile.zip ${{matrix.tag}}-profile
|
||||
zip -r ${{matrix.tag}}.zip ${{matrix.tag}}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}-profile
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}-profile.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}.zip
|
||||
- name: Release
|
||||
id: release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: |
|
||||
github.repository_owner == 'oven-sh'
|
||||
&& github.ref == 'refs/heads/main'
|
||||
with:
|
||||
prerelease: true
|
||||
body: "This canary release of Bun corresponds to the commit [${{ github.sha }}]"
|
||||
allowUpdates: true
|
||||
replacesArtifacts: true
|
||||
generateReleaseNotes: true
|
||||
artifactErrorsFailBuild: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
name: "Canary (${{github.sha}})"
|
||||
tag: "canary"
|
||||
artifacts: "${{runner.temp}}/release/${{matrix.tag}}.zip,${{runner.temp}}/release/${{matrix.tag}}-profile.zip"
|
||||
macOS-test:
|
||||
name: Tests ${{matrix.tag}}
|
||||
runs-on: ${{ matrix.runner }}
|
||||
needs: [macOS]
|
||||
if: github.event_name == 'pull_request' && github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 30
|
||||
outputs:
|
||||
failing_tests: ${{ steps.test.outputs.failing_tests }}
|
||||
failing_tests_count: ${{ steps.test.outputs.failing_tests_count }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- tag: bun-darwin-x64-baseline
|
||||
runner: macos-11
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: false
|
||||
- id: download
|
||||
name: Download
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release
|
||||
- id: install
|
||||
name: Install
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
unzip ${{matrix.tag}}.zip
|
||||
cd ${{matrix.tag}}
|
||||
chmod +x bun
|
||||
sudo mv bun /usr/local/bin/bun
|
||||
bun --version
|
||||
- id: test
|
||||
name: Test (node runner)
|
||||
# if: ${{github.event.inputs.use_bun == 'false'}}
|
||||
run: |
|
||||
bun install
|
||||
bun install --cwd test
|
||||
bun install --cwd packages/bun-internal-test
|
||||
node packages/bun-internal-test/src/runner.node.mjs || true
|
||||
- name: Comment on PR
|
||||
if: steps.test.outputs.failing_tests != '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
message: |
|
||||
❌ @${{ github.actor }} ${{ steps.test.outputs.failing_tests_count }} files with test failures on ${{ matrix.tag }}:
|
||||
|
||||
${{ steps.test.outputs.failing_tests }}
|
||||
|
||||
**[View test output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Uncomment on PR
|
||||
if: steps.test.outputs.failing_tests == '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ test failures on ${{ matrix.tag }} have been resolved.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- id: fail
|
||||
name: Fail the build
|
||||
if: steps.test.outputs.failing_tests != ''
|
||||
run: exit 1
|
||||
472
.github/workflows/bun-mac-x64.yml
vendored
Normal file
472
.github/workflows/bun-mac-x64.yml
vendored
Normal file
@@ -0,0 +1,472 @@
|
||||
name: bun-macOS-x64
|
||||
|
||||
concurrency:
|
||||
group: bun-macOS-x64-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
TEST_TAG: bun-test'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
pull_request:
|
||||
branches: [main]
|
||||
paths:
|
||||
- "src/**/*"
|
||||
- "test/**/*"
|
||||
- "build.zig"
|
||||
- "Makefile"
|
||||
- "Dockerfile"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
macos-object-files:
|
||||
name: macOS Object
|
||||
runs-on: med-ubuntu
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-obj-darwin-x64-baseline
|
||||
- cpu: haswell
|
||||
arch: x86_64
|
||||
tag: bun-obj-darwin-x64
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-obj-darwin-aarch64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
id: buildx
|
||||
with:
|
||||
install: true
|
||||
- name: Run
|
||||
run: |
|
||||
rm -rf ${{runner.temp}}/release
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'X64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=amd64
|
||||
BUILD_MACHINE_ARCH=x86_64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/amd64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v3
|
||||
if: runner.arch == 'ARM64'
|
||||
with:
|
||||
context: .
|
||||
push: false
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=min
|
||||
build-args: |
|
||||
ARCH=${{ matrix.arch }}
|
||||
BUILDARCH=arm64
|
||||
BUILD_MACHINE_ARCH=aarch64
|
||||
CPU_TARGET=${{ matrix.cpu }}
|
||||
TRIPLET=${{matrix.arch}}-macos-none
|
||||
GIT_SHA=${{github.sha}}
|
||||
platforms: linux/arm64
|
||||
target: build_release_obj
|
||||
outputs: type=local,dest=${{runner.temp}}/release
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}
|
||||
path: ${{runner.temp}}/release/bun.o
|
||||
macOS-cpp:
|
||||
name: macOS C++
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: true
|
||||
# compile_obj: false
|
||||
- cpu: haswell
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64
|
||||
obj: bun-obj-darwin-x64
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
dependencies: true
|
||||
compile_obj: false
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# dependencies: false
|
||||
# compile_obj: true
|
||||
- cpu: haswell
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64
|
||||
obj: bun-obj-darwin-x64
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
dependencies: false
|
||||
compile_obj: true
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-darwin-aarch64
|
||||
# obj: bun-obj-darwin-aarch64
|
||||
# artifact: bun-obj-darwin-aarch64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-arm64-lto.tar.gz"
|
||||
# runner: macos-arm64
|
||||
# dependencies: true
|
||||
# compile_obj: true
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install rust ccache llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: Download WebKit
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: ccache (dependencies)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
if: matrix.dependencies
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-dependencies
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-dependencies
|
||||
- name: ccache (c++)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
if: matrix.compile_obj
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-obj
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-obj
|
||||
- name: Compile dependencies
|
||||
if: matrix.dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $OBJ_DIR $BUN_DEPS_OUT_DIR
|
||||
make vendor-without-check
|
||||
- name: Compile C++
|
||||
if: matrix.compile_obj
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
mkdir -p $OBJ_DIR $BUN_DEPS_OUT_DIR
|
||||
make -j $(sysctl -n hw.ncpu) release-bindings
|
||||
- name: Upload C++
|
||||
if: matrix.compile_obj
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Upload Dependencies
|
||||
if: matrix.dependencies
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{runner.temp}}/bun-deps
|
||||
|
||||
macOS:
|
||||
name: macOS Link
|
||||
runs-on: ${{ matrix.runner }}
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
needs: [macOS-cpp, macos-object-files]
|
||||
timeout-minutes: 90
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
# - cpu: nehalem
|
||||
# arch: x86_64
|
||||
# tag: bun-darwin-x64-baseline
|
||||
# obj: bun-obj-darwin-x64-baseline
|
||||
# package: bun-darwin-x64
|
||||
# runner: macos-11
|
||||
# artifact: bun-obj-darwin-x64-baseline
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
- cpu: haswell
|
||||
arch: x86_64
|
||||
tag: bun-darwin-x64
|
||||
obj: bun-obj-darwin-x64
|
||||
package: bun-darwin-x64
|
||||
runner: macos-11
|
||||
artifact: bun-obj-darwin-x64
|
||||
webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-amd64-lto.tar.gz"
|
||||
# - cpu: native
|
||||
# arch: aarch64
|
||||
# tag: bun-darwin-aarch64
|
||||
# obj: bun-obj-darwin-aarch64
|
||||
# package: bun-darwin-aarch64
|
||||
# artifact: bun-obj-darwin-aarch64
|
||||
# webkit_url: "https://github.com/oven-sh/WebKit/releases/download/may20/bun-webkit-macos-arm64-lto.tar.gz"
|
||||
# runner: macos-arm64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive --depth=1 --progress -j $(sysctl -n hw.ncpu)
|
||||
- name: Install dependencies
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
|
||||
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||
HOMEBREW_NO_INSTALL_CLEANUP: 1
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
run: |
|
||||
brew install rust ccache llvm@15 pkg-config coreutils libtool cmake libiconv automake openssl@1.1 ninja gnu-sed pkg-config esbuild --force
|
||||
echo "export PATH=$(brew --prefix coreutils)/libexec/gnubin:\$PATH" >> $GITHUB_ENV
|
||||
echo "export PATH=$(brew --prefix llvm@15)/bin:\$PATH" >> $GITHUB_ENV
|
||||
brew link --overwrite llvm@15
|
||||
- name: Download WebKit
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf $JSC_BASE_DIR
|
||||
mkdir -p $JSC_BASE_DIR
|
||||
curl -L ${{ matrix.webkit_url }} | tar -xz -C $JSC_BASE_DIR --strip-components=1
|
||||
- name: Download C++
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-cpp
|
||||
path: ${{ runner.temp }}/bun-cpp-obj
|
||||
- name: Download Dependencies
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.tag }}-deps
|
||||
path: ${{ runner.temp }}/bun-deps
|
||||
- name: Download Object
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.obj }}
|
||||
path: ${{ runner.temp }}/release
|
||||
- name: ccache (link)
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
key: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ matrix.tag }}-link
|
||||
- name: Link
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
rm -rf packages/${{ matrix.package }}
|
||||
mkdir -p packages/${{ matrix.package }}
|
||||
mv ${{ runner.temp }}/release/* packages/${{ matrix.package }}/
|
||||
make bun-link-lld-release copy-to-bun-release-dir-bin
|
||||
- name: Zip
|
||||
env:
|
||||
CPU_TARGET: ${{ matrix.cpu }}
|
||||
JSC_BASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
JSC_LIB: ${{ runner.temp }}/bun-webkit/lib
|
||||
BUN_DEPLOY_DIR: ${{ runner.temp }}/release/bun
|
||||
OBJ_DIR: ${{ runner.temp }}/bun-cpp-obj
|
||||
BUN_DEPS_OUT_DIR: ${{runner.temp}}/bun-deps
|
||||
BUN_RELEASE_DIR: ${{ runner.temp }}/release
|
||||
WEBKIT_RELEASE_DIR: ${{ runner.temp }}/bun-webkit
|
||||
WEBKIT_RELEASE_DIR_LTO: ${{ runner.temp }}/bun-webkit
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
chmod +x bun-profile bun
|
||||
|
||||
mkdir ${{matrix.tag}}-profile
|
||||
mkdir ${{matrix.tag}}
|
||||
|
||||
/usr/bin/strip -S bun
|
||||
|
||||
mv bun-profile ${{matrix.tag}}-profile/bun-profile
|
||||
mv bun ${{matrix.tag}}/bun
|
||||
|
||||
zip -r ${{matrix.tag}}-profile.zip ${{matrix.tag}}-profile
|
||||
zip -r ${{matrix.tag}}.zip ${{matrix.tag}}
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}-profile
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}-profile.zip
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release/${{matrix.tag}}.zip
|
||||
- name: Release
|
||||
id: release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: |
|
||||
github.repository_owner == 'oven-sh'
|
||||
&& github.ref == 'refs/heads/main'
|
||||
with:
|
||||
prerelease: true
|
||||
body: "This canary release of Bun corresponds to the commit [${{ github.sha }}]"
|
||||
allowUpdates: true
|
||||
replacesArtifacts: true
|
||||
generateReleaseNotes: true
|
||||
artifactErrorsFailBuild: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
name: "Canary (${{github.sha}})"
|
||||
tag: "canary"
|
||||
artifacts: "${{runner.temp}}/release/${{matrix.tag}}.zip,${{runner.temp}}/release/${{matrix.tag}}-profile.zip"
|
||||
macOS-test:
|
||||
name: Tests ${{matrix.tag}}
|
||||
runs-on: ${{ matrix.runner }}
|
||||
needs: [macOS]
|
||||
if: github.event_name == 'pull_request' && github.repository_owner == 'oven-sh'
|
||||
timeout-minutes: 30
|
||||
outputs:
|
||||
failing_tests: ${{ steps.test.outputs.failing_tests }}
|
||||
failing_tests_count: ${{ steps.test.outputs.failing_tests_count }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- tag: bun-darwin-x64
|
||||
runner: macos-11
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: false
|
||||
- id: download
|
||||
name: Download
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{matrix.tag}}
|
||||
path: ${{runner.temp}}/release
|
||||
- id: install
|
||||
name: Install
|
||||
run: |
|
||||
cd ${{runner.temp}}/release
|
||||
unzip ${{matrix.tag}}.zip
|
||||
cd ${{matrix.tag}}
|
||||
chmod +x bun
|
||||
sudo mv bun /usr/local/bin/bun
|
||||
bun --version
|
||||
- id: test
|
||||
name: Test (node runner)
|
||||
# if: ${{github.event.inputs.use_bun == 'false'}}
|
||||
run: |
|
||||
bun install
|
||||
bun install --cwd test
|
||||
bun install --cwd packages/bun-internal-test
|
||||
node packages/bun-internal-test/src/runner.node.mjs || true
|
||||
- name: Comment on PR
|
||||
if: steps.test.outputs.failing_tests != '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
message: |
|
||||
❌ @${{ github.actor }} ${{ steps.test.outputs.failing_tests_count }} files with test failures on ${{ matrix.tag }}:
|
||||
|
||||
${{ steps.test.outputs.failing_tests }}
|
||||
|
||||
**[View test output](https://github.com/oven-sh/bun/actions/runs/${{github.run_id}})**
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Uncomment on PR
|
||||
if: steps.test.outputs.failing_tests == '' && github.event_name == 'pull_request'
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: test-failures-${{matrix.tag}}
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ test failures on ${{ matrix.tag }} have been resolved.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- id: fail
|
||||
name: Fail the build
|
||||
if: steps.test.outputs.failing_tests != ''
|
||||
run: exit 1
|
||||
179
.github/workflows/bun-release-canary.yml
vendored
Normal file
179
.github/workflows/bun-release-canary.yml
vendored
Normal file
@@ -0,0 +1,179 @@
|
||||
name: bun-release-canary
|
||||
concurrency: release-canary
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 14 * * *" # every day at 6am PST
|
||||
workflow_dispatch:
|
||||
jobs:
|
||||
sign:
|
||||
name: Sign Release
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-gpg
|
||||
name: Setup GPG
|
||||
uses: crazy-max/ghaction-import-gpg@v5
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.GPG_PASSPHRASE }}
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Sign Release
|
||||
run: |
|
||||
echo "$GPG_PASSPHRASE" | bun upload-assets -- "canary"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
||||
npm:
|
||||
name: Release to NPM
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Release
|
||||
run: bun upload-npm -- canary publish
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
# npm-types:
|
||||
# name: Release types to NPM
|
||||
# runs-on: ubuntu-latest
|
||||
# defaults:
|
||||
# run:
|
||||
# working-directory: packages/bun-types
|
||||
# steps:
|
||||
# - id: checkout
|
||||
# name: Checkout
|
||||
# uses: actions/checkout@v3
|
||||
# - id: setup-node
|
||||
# name: Setup Node.js
|
||||
# uses: actions/setup-node@v3
|
||||
# with:
|
||||
# node-version: latest
|
||||
# - id: setup-bun
|
||||
# name: Setup Bun
|
||||
# uses: oven-sh/setup-bun@v1
|
||||
# with:
|
||||
# bun-version: canary
|
||||
# - id: bun-install
|
||||
# name: Install Dependencies
|
||||
# run: bun install
|
||||
# - id: setup-env
|
||||
# name: Setup Environment
|
||||
# run: |
|
||||
# SHA=$(git rev-parse --short "$GITHUB_SHA")
|
||||
# VERSION=$(bun --version)
|
||||
# TAG="${VERSION}-canary.$(date '+%Y%m%d').1+${SHA}"
|
||||
# echo "Setup tag: ${TAG}"
|
||||
# echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
# - id: bun-run
|
||||
# name: Build
|
||||
# run: bun run build
|
||||
# env:
|
||||
# BUN_VERSION: ${{ env.TAG }}
|
||||
# - id: npm-publish
|
||||
# name: Release
|
||||
# uses: JS-DevTools/npm-publish@v1
|
||||
# with:
|
||||
# package: packages/bun-types/dist/package.json
|
||||
# token: ${{ secrets.NPM_TOKEN }}
|
||||
# tag: canary
|
||||
docker:
|
||||
name: Release to Dockerhub
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: qemu
|
||||
name: Setup Docker QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
- id: buildx
|
||||
name: Setup Docker buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64
|
||||
- id: metadata
|
||||
name: Setup Docker metadata
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: oven/bun
|
||||
tags: canary
|
||||
- id: login
|
||||
name: Login to Docker
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- id: push
|
||||
name: Push to Docker
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: ./dockerhub
|
||||
file: ./dockerhub/Dockerfile-debian
|
||||
platforms: linux/amd64,linux/arm64
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
push: true
|
||||
tags: ${{ steps.metadata.outputs.tags }}
|
||||
labels: ${{ steps.metadata.outputs.labels }}
|
||||
build-args: |
|
||||
BUN_VERSION=canary
|
||||
s3:
|
||||
name: Upload to S3
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Release
|
||||
run: bun upload-s3 -- canary
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
AWS_ENDPOINT: ${{ secrets.AWS_ENDPOINT }}
|
||||
AWS_BUCKET: bun
|
||||
54
.github/workflows/bun-release-types-canary.yml
vendored
Normal file
54
.github/workflows/bun-release-types-canary.yml
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
name: bun-release-canary
|
||||
concurrency: release-canary
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- "packages/bun-types/**"
|
||||
workflow_dispatch:
|
||||
jobs:
|
||||
npm-types:
|
||||
name: Release types to NPM
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-types
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-node
|
||||
name: Setup Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: latest
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
SHA=$(git rev-parse --short "$GITHUB_SHA")
|
||||
VERSION=$(bun --version)
|
||||
TAG="${VERSION}-canary.$(date +'%Y%m%dT%H%M%S')"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: bun-run
|
||||
name: Build
|
||||
run: bun run build
|
||||
env:
|
||||
BUN_VERSION: ${{ env.TAG }}
|
||||
- id: npm-publish
|
||||
name: Release
|
||||
uses: JS-DevTools/npm-publish@v1
|
||||
with:
|
||||
package: packages/bun-types/dist/package.json
|
||||
token: ${{ secrets.NPM_TOKEN }}
|
||||
tag: canary
|
||||
257
.github/workflows/bun-release.yml
vendored
Normal file
257
.github/workflows/bun-release.yml
vendored
Normal file
@@ -0,0 +1,257 @@
|
||||
name: bun-release
|
||||
concurrency: release
|
||||
on:
|
||||
release:
|
||||
types:
|
||||
- published
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
tag:
|
||||
type: string
|
||||
description: The tag to publish
|
||||
required: true
|
||||
jobs:
|
||||
sign:
|
||||
name: Sign Release
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: setup-gpg
|
||||
name: Setup GPG
|
||||
uses: crazy-max/ghaction-import-gpg@v5
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.GPG_PASSPHRASE }}
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Sign Release
|
||||
run: |
|
||||
echo "$GPG_PASSPHRASE" | bun upload-assets -- "${{ env.TAG }}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
||||
npm:
|
||||
name: Release to NPM
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Release
|
||||
run: bun upload-npm -- "${{ env.TAG }}" publish
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
npm-types:
|
||||
name: Release types to NPM
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-types
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: setup-node
|
||||
name: Setup Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: latest
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Build
|
||||
run: bun run build
|
||||
env:
|
||||
BUN_VERSION: ${{ env.TAG }}
|
||||
- id: npm-publish
|
||||
name: Release
|
||||
uses: JS-DevTools/npm-publish@v1
|
||||
with:
|
||||
package: packages/bun-types/dist/package.json
|
||||
token: ${{ secrets.NPM_TOKEN }}
|
||||
docker:
|
||||
name: Release to Dockerhub
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: environment
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: qemu
|
||||
name: Setup Docker QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
- id: buildx
|
||||
name: Setup Docker buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64
|
||||
- id: metadata
|
||||
name: Setup Docker metadata
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: oven/bun
|
||||
tags: |
|
||||
type=match,pattern=(bun-v)?(\d.\d.\d),group=2,value=${{ env.TAG }}
|
||||
type=match,pattern=(bun-v)?(\d.\d),group=2,value=${{ env.TAG }}
|
||||
- id: login
|
||||
name: Login to Docker
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- id: push
|
||||
name: Push to Docker
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: ./dockerhub
|
||||
file: ./dockerhub/Dockerfile-debian
|
||||
platforms: linux/amd64,linux/arm64
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
push: true
|
||||
tags: ${{ steps.metadata.outputs.tags }}
|
||||
labels: ${{ steps.metadata.outputs.labels }}
|
||||
build-args: |
|
||||
BUN_VERSION=${{ env.TAG }}
|
||||
homebrew:
|
||||
name: Release to Homebrew
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: oven-sh/homebrew-bun
|
||||
token: ${{ secrets.ROBOBUN_TOKEN }}
|
||||
- id: setup-gpg
|
||||
name: Setup GPG
|
||||
uses: crazy-max/ghaction-import-gpg@v5
|
||||
with:
|
||||
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.GPG_PASSPHRASE }}
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: setup-ruby
|
||||
name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: "2.6"
|
||||
- id: update-tap
|
||||
name: Update Tap
|
||||
run: ruby scripts/release.rb "${{ env.TAG }}"
|
||||
- id: commit-tap
|
||||
name: Commit Tap
|
||||
uses: stefanzweifel/git-auto-commit-action@v4
|
||||
with:
|
||||
commit_options: --gpg-sign=${{ steps.setup-gpg.outputs.keyid }}
|
||||
commit_message: Release ${{ env.TAG }}
|
||||
commit_user_name: robobun
|
||||
commit_user_email: robobun@oven.sh
|
||||
commit_author: robobun <robobun@oven.sh>
|
||||
s3:
|
||||
name: Upload to S3
|
||||
runs-on: ubuntu-latest
|
||||
needs: sign
|
||||
if: github.repository_owner == 'oven-sh'
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-release
|
||||
steps:
|
||||
- id: checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: setup-env
|
||||
name: Setup Environment
|
||||
run: |
|
||||
TAG="${{ github.event.inputs.tag }}"
|
||||
TAG="${TAG:-"${{ github.event.release.tag_name }}"}"
|
||||
echo "Setup tag: ${TAG}"
|
||||
echo "TAG=${TAG}" >> ${GITHUB_ENV}
|
||||
- id: setup-bun
|
||||
name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
- id: bun-install
|
||||
name: Install Dependencies
|
||||
run: bun install
|
||||
- id: bun-run
|
||||
name: Release
|
||||
run: bun upload-s3 -- "${{ env.TAG }}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
AWS_ENDPOINT: ${{ secrets.AWS_ENDPOINT }}
|
||||
AWS_BUCKET: bun
|
||||
41
.github/workflows/bun-types-tests.yml
vendored
Normal file
41
.github/workflows/bun-types-tests.yml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
name: bun-types
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- "packages/bun-types/**"
|
||||
branches: [main]
|
||||
pull_request:
|
||||
paths:
|
||||
- "packages/bun-types/**"
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
name: type-tests
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: packages/bun-types
|
||||
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Install bun
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: canary
|
||||
|
||||
- name: Install node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: latest
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
bun install
|
||||
|
||||
- name: Generate package
|
||||
run: bun run build
|
||||
|
||||
- name: Tests
|
||||
run: bun run test
|
||||
76
.github/workflows/prettier-fmt.yml
vendored
Normal file
76
.github/workflows/prettier-fmt.yml
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
name: prettier
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
- jarred/test-actions
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
prettier-fmt:
|
||||
name: prettier
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
prettier_fmt_errs: ${{ steps.fmt.outputs.prettier_fmt_errs }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- id: setup
|
||||
name: Setup
|
||||
uses: oven-sh/setup-bun@v1
|
||||
with:
|
||||
bun-version: latest
|
||||
- id: install
|
||||
name: Install prettier
|
||||
run: bun install
|
||||
- name: Run prettier
|
||||
id: fmt
|
||||
run: |
|
||||
rm -f .failed
|
||||
bun prettier --check "./bench/**/*.{ts,tsx,js,jsx,mjs}" "./test/**/*.{ts,tsx,js,jsx,mjs}" "./src/**/*.{ts,tsx,js,jsx}" --config .prettierrc.cjs 2> prettier-fmt.err > prettier-fmt1.err || echo 'failed' > .failed
|
||||
|
||||
if [ -s .failed ]; then
|
||||
delimiter="$(openssl rand -hex 8)"
|
||||
echo "prettier_fmt_errs<<${delimiter}" >> "${GITHUB_OUTPUT}"
|
||||
cat prettier-fmt.err >> "${GITHUB_OUTPUT}"
|
||||
cat prettier-fmt1.err >> "${GITHUB_OUTPUT}"
|
||||
echo "${delimiter}" >> "${GITHUB_OUTPUT}"
|
||||
fi
|
||||
- name: Comment on PR
|
||||
if: steps.fmt.outputs.prettier_fmt_errs != ''
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: prettier-fmt
|
||||
message: |
|
||||
❌ @${{ github.actor }} `prettier` reported errors
|
||||
|
||||
```js
|
||||
${{ steps.fmt.outputs.prettier_fmt_errs }}
|
||||
```
|
||||
|
||||
To one-off fix this manually, run:
|
||||
```sh
|
||||
bun fmt
|
||||
```
|
||||
|
||||
You might need to run `bun install` locally and configure your text editor to [auto-format on save](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode).
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Uncomment on PR
|
||||
if: steps.fmt.outputs.prettier_fmt_errs == ''
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: prettier-fmt
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ `prettier` errors have been resolved. Thank you.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
- name: Fail the job
|
||||
if: steps.fmt.outputs.prettier_fmt_errs != ''
|
||||
run: exit 1
|
||||
87
.github/workflows/zig-fmt.yml
vendored
Normal file
87
.github/workflows/zig-fmt.yml
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
name: zig-fmt
|
||||
|
||||
env:
|
||||
ZIG_VERSION: 0.11.0-dev.2571+31738de28
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
- jarred/test-actions
|
||||
paths:
|
||||
- "src/**/*.zig"
|
||||
- "src/*.zig"
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
zig-fmt:
|
||||
name: zig fmt
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
zig_fmt_errs: ${{ steps.fmt.outputs.zig_fmt_errs }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Install zig
|
||||
run: |
|
||||
curl https://ziglang.org/builds/zig-linux-x86_64-${{env.ZIG_VERSION}}.tar.xz -L -o zig.tar.xz
|
||||
tar -xf zig.tar.xz
|
||||
sudo mv zig-linux-x86_64-${{env.ZIG_VERSION}}/zig /usr/local/bin
|
||||
- name: Run zig fmt
|
||||
id: fmt
|
||||
run: |
|
||||
zig fmt --check src/*.zig src/**/*.zig 2> zig-fmt.err > zig-fmt.err2 || echo "Failed"
|
||||
delimiter="$(openssl rand -hex 8)"
|
||||
echo "zig_fmt_errs<<${delimiter}" >> "${GITHUB_OUTPUT}"
|
||||
|
||||
if [ -s zig-fmt.err ]; then
|
||||
echo "// The following errors occurred:" >> "${GITHUB_OUTPUT}"
|
||||
cat zig-fmt.err >> "${GITHUB_OUTPUT}"
|
||||
fi
|
||||
|
||||
if [ -s zig-fmt.err2 ]; then
|
||||
echo "// The following files were not formatted:" >> "${GITHUB_OUTPUT}"
|
||||
cat zig-fmt.err2 >> "${GITHUB_OUTPUT}"
|
||||
fi
|
||||
|
||||
echo "${delimiter}" >> "${GITHUB_OUTPUT}"
|
||||
- name: Comment on PR
|
||||
if: steps.fmt.outputs.zig_fmt_errs != ''
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: zig-fmt
|
||||
message: |
|
||||
❌ @${{ github.actor }} `zig fmt` reported errors. Consider configuring your text editor to [auto-format on save](https://github.com/ziglang/vscode-zig)
|
||||
|
||||
```zig
|
||||
// # zig fmt --check src/*.zig src/**/*.zig
|
||||
${{ steps.fmt.outputs.zig_fmt_errs }}
|
||||
```
|
||||
|
||||
To one-off fix this manually, run:
|
||||
|
||||
```sh
|
||||
zig fmt src/*.zig src/**/*.zig
|
||||
```
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
<sup>zig v${{env.ZIG_VERSION}}</sup>
|
||||
|
||||
- name: Uncomment on PR
|
||||
if: steps.fmt.outputs.zig_fmt_errs == ''
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: zig-fmt
|
||||
mode: upsert
|
||||
create_if_not_exists: false
|
||||
message: |
|
||||
✅ `zig fmt` errors have been resolved. Thank you.
|
||||
|
||||
<sup>[#${{github.sha}}](https://github.com/oven-sh/bun/commits/${{github.sha}})</sup>
|
||||
<sup>zig v${{env.ZIG_VERSION}}</sup>
|
||||
|
||||
- name: Fail the job
|
||||
if: steps.fmt.outputs.zig_fmt_errs != ''
|
||||
run: exit 1
|
||||
68
.gitignore
vendored
68
.gitignore
vendored
@@ -1,7 +1,6 @@
|
||||
.DS_Store
|
||||
zig-cache
|
||||
*.wasm
|
||||
|
||||
packages/*/*.wasm
|
||||
*.o
|
||||
*.a
|
||||
profile.json
|
||||
@@ -10,9 +9,11 @@ node_modules
|
||||
.swcrc
|
||||
yarn.lock
|
||||
dist
|
||||
*.tmp
|
||||
*.log
|
||||
*.out.js
|
||||
/package-lock.json
|
||||
*.out.refresh.js
|
||||
**/package-lock.json
|
||||
build
|
||||
*.wat
|
||||
zig-out
|
||||
@@ -30,7 +31,6 @@ cover
|
||||
coverage
|
||||
coverv
|
||||
*.trace
|
||||
bench
|
||||
github
|
||||
out.*
|
||||
out
|
||||
@@ -45,6 +45,7 @@ outcss
|
||||
txt.js
|
||||
.idea
|
||||
.vscode/cpp*
|
||||
.vscode/clang*
|
||||
|
||||
node_modules_*
|
||||
*.jsb
|
||||
@@ -62,4 +63,61 @@ src/node-fallbacks/node_modules
|
||||
sign.json
|
||||
release/
|
||||
*.dmg
|
||||
sign.*.json
|
||||
sign.*.json
|
||||
packages/debug-*
|
||||
packages/bun-cli/postinstall.js
|
||||
packages/bun-*/bun
|
||||
packages/bun-*/bun-profile
|
||||
packages/bun-*/debug-bun
|
||||
packages/bun-*/*.o
|
||||
packages/bun-cli/postinstall.js
|
||||
|
||||
packages/bun-cli/bin/*
|
||||
bun-test-scratch
|
||||
misctools/fetch
|
||||
|
||||
src/deps/libiconv
|
||||
src/deps/openssl
|
||||
src/tests.zig
|
||||
*.blob
|
||||
src/deps/s2n-tls
|
||||
.npm
|
||||
.npm.gz
|
||||
|
||||
bun-binary
|
||||
|
||||
src/deps/PLCrashReporter/
|
||||
|
||||
*.dSYM
|
||||
*.crash
|
||||
misctools/sha
|
||||
packages/bun-wasm/*.mjs
|
||||
packages/bun-wasm/*.cjs
|
||||
packages/bun-wasm/*.map
|
||||
packages/bun-wasm/*.js
|
||||
packages/bun-wasm/*.d.ts
|
||||
*.bc
|
||||
|
||||
src/fallback.version
|
||||
src/runtime.version
|
||||
*.sqlite
|
||||
*.database
|
||||
*.db
|
||||
misctools/machbench
|
||||
*.big
|
||||
.eslintcache
|
||||
|
||||
bun-webkit
|
||||
|
||||
src/deps/c-ares/build
|
||||
src/bun.js/bindings-obj
|
||||
src/bun.js/debug-bindings-obj
|
||||
|
||||
failing-tests.txt
|
||||
test.txt
|
||||
myscript.sh
|
||||
|
||||
cold-jsc-start
|
||||
cold-jsc-start.d
|
||||
|
||||
/test.ts
|
||||
|
||||
80
.gitmodules
vendored
80
.gitmodules
vendored
@@ -1,15 +1,71 @@
|
||||
# [submodule "src/deps/zig-clap"]
|
||||
# path = src/deps/zig-clap
|
||||
# url = https://github.com/Hejsil/zig-clap
|
||||
[submodule "src/deps/picohttpparser"]
|
||||
path = src/deps/picohttpparser
|
||||
url = https://github.com/h2o/picohttpparser/
|
||||
ignore = dirty
|
||||
path = src/deps/picohttpparser
|
||||
url = https://github.com/h2o/picohttpparser.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/javascript/jsc/WebKit"]
|
||||
path = src/javascript/jsc/WebKit
|
||||
url = git@github.com:/Jarred-Sumner/WebKit
|
||||
ignore = dirty
|
||||
path = src/bun.js/WebKit
|
||||
url = https://github.com/oven-sh/WebKit.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
update = none
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/mimalloc"]
|
||||
path = src/deps/mimalloc
|
||||
url = https://github.com/microsoft/mimalloc
|
||||
ignore = dirty
|
||||
path = src/deps/mimalloc
|
||||
url = https://github.com/Jarred-Sumner/mimalloc.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/zlib"]
|
||||
path = src/deps/zlib
|
||||
url = https://github.com/cloudflare/zlib.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/libarchive"]
|
||||
path = src/deps/libarchive
|
||||
url = https://github.com/libarchive/libarchive.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/boringssl"]
|
||||
path = src/deps/boringssl
|
||||
url = https://github.com/oven-sh/boringssl.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/lol-html"]
|
||||
path = src/deps/lol-html
|
||||
url = https://github.com/cloudflare/lol-html
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/uws"]
|
||||
path = src/deps/uws
|
||||
url = https://github.com/Jarred-Sumner/uWebSockets
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = true
|
||||
[submodule "src/deps/tinycc"]
|
||||
path = src/deps/tinycc
|
||||
url = https://github.com/Jarred-Sumner/tinycc.git
|
||||
ignore = dirty
|
||||
depth = 1
|
||||
shallow = true
|
||||
fetchRecurseSubmodules = false
|
||||
[submodule "src/deps/c-ares"]
|
||||
path = src/deps/c-ares
|
||||
url = https://github.com/c-ares/c-ares.git
|
||||
[submodule "src/deps/zstd"]
|
||||
path = src/deps/zstd
|
||||
url = https://github.com/facebook/zstd.git
|
||||
ignore = dirty
|
||||
13
.prettierignore
Normal file
13
.prettierignore
Normal file
@@ -0,0 +1,13 @@
|
||||
src/fallback.html
|
||||
src/bun.js/WebKit
|
||||
src/js/out
|
||||
src/*.out.js
|
||||
src/*out.*.js
|
||||
src/deps
|
||||
src/test/fixtures
|
||||
src/react-refresh.js
|
||||
test/snapshots
|
||||
test/snapshots-no-hmr
|
||||
test/js/deno/*.test.ts
|
||||
test/js/deno/**/*.test.ts
|
||||
bench/react-hello-world/react-hello-world.node.js
|
||||
15
.prettierrc.cjs
Normal file
15
.prettierrc.cjs
Normal file
@@ -0,0 +1,15 @@
|
||||
module.exports = {
|
||||
arrowParens: "avoid",
|
||||
printWidth: 120,
|
||||
trailingComma: "all",
|
||||
useTabs: false,
|
||||
quoteProps: "preserve",
|
||||
overrides: [
|
||||
{
|
||||
files: "README.md",
|
||||
options: {
|
||||
printWidth: 80,
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
13
.scripts/postinstall.sh
Executable file
13
.scripts/postinstall.sh
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
set -euxo pipefail
|
||||
|
||||
# if bun-webkit node_modules directory exists
|
||||
if [ -d ./node_modules/bun-webkit ]; then
|
||||
rm -f bun-webkit
|
||||
# get the first matching bun-webkit-* directory name
|
||||
ln -s ./node_modules/$(ls ./node_modules | grep bun-webkit- | head -n 1) ./bun-webkit
|
||||
fi
|
||||
|
||||
# sets up vscode C++ intellisense
|
||||
rm -f .vscode/clang++
|
||||
ln -s $(which clang++-15 || which clang++) .vscode/clang++ 2>/dev/null
|
||||
32
.scripts/write-versions.sh
Normal file
32
.scripts/write-versions.sh
Normal file
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
set -euxo pipefail
|
||||
|
||||
WEBKIT_VERSION=$(git rev-parse HEAD:./src/bun.js/WebKit)
|
||||
MIMALLOC_VERSION=$(git rev-parse HEAD:./src/deps/mimalloc)
|
||||
LIBARCHIVE_VERSION=$(git rev-parse HEAD:./src/deps/libarchive)
|
||||
PICOHTTPPARSER_VERSION=$(git rev-parse HEAD:./src/deps/picohttpparser)
|
||||
BORINGSSL_VERSION=$(git rev-parse HEAD:./src/deps/boringssl)
|
||||
ZLIB_VERSION=$(git rev-parse HEAD:./src/deps/zlib)
|
||||
UWS_VERSION=$(git rev-parse HEAD:./src/deps/uws)
|
||||
LOLHTML=$(git rev-parse HEAD:./src/deps/lol-html)
|
||||
TINYCC=$(git rev-parse HEAD:./src/deps/tinycc)
|
||||
C_ARES=$(git rev-parse HEAD:./src/deps/c-ares)
|
||||
USOCKETS=$(cd src/deps/uws/uSockets && git rev-parse HEAD)
|
||||
|
||||
rm -rf src/generated_versions_list.zig
|
||||
echo "// AUTO-GENERATED FILE. Created via .scripts/write-versions.sh" >src/generated_versions_list.zig
|
||||
echo "" >>src/generated_versions_list.zig
|
||||
echo "pub const boringssl = \"$BORINGSSL_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const libarchive = \"$LIBARCHIVE_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const mimalloc = \"$MIMALLOC_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const picohttpparser = \"$PICOHTTPPARSER_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const uws = \"$UWS_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const webkit = \"$WEBKIT_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const zig = @import(\"std\").fmt.comptimePrint(\"{}\", .{@import(\"builtin\").zig_version});" >>src/generated_versions_list.zig
|
||||
echo "pub const zlib = \"$ZLIB_VERSION\";" >>src/generated_versions_list.zig
|
||||
echo "pub const tinycc = \"$TINYCC\";" >>src/generated_versions_list.zig
|
||||
echo "pub const lolhtml = \"$LOLHTML\";" >>src/generated_versions_list.zig
|
||||
echo "pub const c_ares = \"$C_ARES\";" >>src/generated_versions_list.zig
|
||||
echo "" >>src/generated_versions_list.zig
|
||||
|
||||
zig fmt src/generated_versions_list.zig
|
||||
56
.vscode/c_cpp_properties.json
vendored
56
.vscode/c_cpp_properties.json
vendored
@@ -2,26 +2,45 @@
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Mac",
|
||||
"forcedInclude": [
|
||||
"${workspaceFolder}/src/javascript/jsc/bindings/root.h"
|
||||
],
|
||||
"forcedInclude": ["${workspaceFolder}/src/bun.js/bindings/root.h"],
|
||||
"includePath": [
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/JavaScriptCore/PrivateHeaders/",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/WTF/Headers",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/*",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/bindings/",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/Source/bmalloc/",
|
||||
"${workspaceFolder}/src/javascript/jsc/WebKit/WebKitBuild/Release/ICU/Headers/"
|
||||
"${workspaceFolder}/../webkit-build/include/",
|
||||
"${workspaceFolder}/bun-webkit/include/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/ICU/Headers/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/JavaScriptCore/PrivateHeaders/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/WTF/Headers",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/bmalloc/Headers/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/webcore/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/sqlite/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/webcrypto/",
|
||||
"${workspaceFolder}/src/js/builtins/",
|
||||
"${workspaceFolder}/src/js/out",
|
||||
"${workspaceFolder}/src/deps/boringssl/include/",
|
||||
"${workspaceFolder}/src/deps",
|
||||
"${workspaceFolder}/src/deps/uws/uSockets/src",
|
||||
"${workspaceFolder}/src/deps/uws/src"
|
||||
],
|
||||
"browse": {
|
||||
"path": [
|
||||
"${workspaceFolder}/src/javascript/jsc/bindings/*",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/JavaScriptCore/PrivateHeaders/",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/WTF/Headers/**",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/WebKitBuild/Release/*",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/bindings/**",
|
||||
"${workspaceFolder}/src/JavaScript/jsc/WebKit/Source/bmalloc/**",
|
||||
"${workspaceFolder}/src/javascript/jsc/WebKit/WebKitBuild/Release/ICU/Headers/"
|
||||
"${workspaceFolder}/bun-webkit/include/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/ICU/Headers/",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/JavaScriptCore/PrivateHeaders/**",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/WTF/Headers/**",
|
||||
"${workspaceFolder}/src/bun.js/WebKit/WebKitBuild/Release/bmalloc/Headers/**",
|
||||
"${workspaceFolder}/src/bun.js/bindings/*",
|
||||
"${workspaceFolder}/src/bun.js/bindings/sqlite/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/webcrypto/",
|
||||
"${workspaceFolder}/src/bun.js/bindings/webcore/",
|
||||
"${workspaceFolder}/src/js/builtins/*",
|
||||
"${workspaceFolder}/src/js/out/*",
|
||||
"${workspaceFolder}/src/bun.js/modules/*",
|
||||
"${workspaceFolder}/src/deps",
|
||||
"${workspaceFolder}/src/deps/boringssl/include/",
|
||||
"${workspaceFolder}/src/deps/uws/uSockets/src",
|
||||
"${workspaceFolder}/src/deps/uws/src"
|
||||
],
|
||||
"limitSymbolsToIncludedHeaders": true,
|
||||
"databaseFilename": ".vscode/cppdb"
|
||||
@@ -38,10 +57,9 @@
|
||||
"DU_DISABLE_RENAMING=1"
|
||||
],
|
||||
"macFrameworkPath": [],
|
||||
"compilerPath": "/usr/local/opt/llvm/bin/clang",
|
||||
"compilerPath": "${workspaceFolder}/.vscode/clang++",
|
||||
"cStandard": "c17",
|
||||
"cppStandard": "c++11",
|
||||
"intelliSenseMode": "macos-clang-x64"
|
||||
"cppStandard": "c++20"
|
||||
}
|
||||
],
|
||||
"version": 4
|
||||
|
||||
10
.vscode/extensions.json
vendored
Normal file
10
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"recommendations": [
|
||||
"ziglang.vscode-zig",
|
||||
"esbenp.prettier-vscode",
|
||||
"xaver.clang-format",
|
||||
"vadimcn.vscode-lldb",
|
||||
"bierner.comment-tagged-templates",
|
||||
"ms-vscode.cpptools"
|
||||
]
|
||||
}
|
||||
792
.vscode/launch.json
generated
vendored
792
.vscode/launch.json
generated
vendored
@@ -1,506 +1,370 @@
|
||||
{
|
||||
// The usage of BUN_GARBAGE_COLLECTOR_LEVEL=2 is important for debugging
|
||||
// It will force the garbage collector to run after every test and every call to expect()
|
||||
// it makes our tests very slow
|
||||
// But it helps catch memory bugs
|
||||
|
||||
// SIGHUP must be ignored or the debugger will pause when a spawned subprocess exits:
|
||||
// { "initCommands": ["process handle -p false -s false -n false SIGHUP"] }
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Transpile small",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
// "/Users/jarred/Desktop/webpack4.js"
|
||||
// "/Users/jarred/Code/bun/examples/css-stress-test/nexty/node_modules/next/dist/build/utils.js"
|
||||
"./dotenv-load-check.ts"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/css-stress-test",
|
||||
"name": "bun test [file]",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1",
|
||||
"BUN_GARBAGE_COLLECTOR_LEVEL": "2"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Eval Error",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/spjs",
|
||||
"args": [
|
||||
"error.js",
|
||||
"--resolve=dev",
|
||||
"--outdir=outcss"
|
||||
// "--origin=https://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": ".bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"./examples/hello-next/node_modules.server.bun"
|
||||
// "--origin=https://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Discord",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"discord"
|
||||
// "--origin=https://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Eval",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/spjs",
|
||||
"args": [
|
||||
"./src/index.tsx"
|
||||
// "--origin=https://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/css-stress-test",
|
||||
"name": "bun test [file] (fast)",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Dev Launch",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"./simple.css",
|
||||
"--resolve=dev",
|
||||
"--outdir=outcss",
|
||||
"--origin=https://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"name": "bun test [file] (verbose)",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun test [file] --watch",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "--watch", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun test [file] --only",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "--only", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun test [*]",
|
||||
"program": "bun-debug",
|
||||
"args": ["test"],
|
||||
"cwd": "${workspaceFolder}/test",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1",
|
||||
"BUN_GARBAGE_COLLECTOR_LEVEL": "2"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun test [*] (fast)",
|
||||
"program": "bun-debug",
|
||||
"args": ["test"],
|
||||
"cwd": "${workspaceFolder}/test",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun test [*] --only",
|
||||
"program": "bun-debug",
|
||||
"args": ["test", "--only"],
|
||||
"cwd": "${workspaceFolder}/test",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [file]",
|
||||
"program": "bun-debug",
|
||||
"args": ["run", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [Inspect]",
|
||||
"program": "bun-debug",
|
||||
"args": ["--inspect-brk", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [file] (gc)",
|
||||
"program": "bun-debug",
|
||||
"args": ["run", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1",
|
||||
"BUN_DEBUG_QUIET_LOGS": "1",
|
||||
"BUN_GARBAGE_COLLECTOR_LEVEL": "2"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [file] (verbose)",
|
||||
"program": "bun-debug",
|
||||
"args": ["run", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [file] --watch",
|
||||
"program": "bun-debug",
|
||||
"args": ["run", "--watch", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun run [file] --hot",
|
||||
"program": "bun-debug",
|
||||
"args": ["run", "--hot", "${file}"],
|
||||
"cwd": "${fileDirname}",
|
||||
"env": {
|
||||
"FORCE_COLOR": "1"
|
||||
},
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"],
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "HTTP bench",
|
||||
"program": "${workspaceFolder}/misctools/http_bench",
|
||||
"args": ["https://twitter.com", "--count=100"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun build debug",
|
||||
"program": "bun-debug",
|
||||
"args": ["bun", "${file}"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"BUN_CONFIG_MINIFY_WHITESPACE": "1"
|
||||
},
|
||||
// SIGHUP must be ignored or the debugger will pause when a spawned subprocess exits.
|
||||
"initCommands": ["process handle -p false -s false -n false SIGHUP"]
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun build debug out.js",
|
||||
"program": "bun-debug",
|
||||
"args": ["--outfile=out.js", "bun", "${file}"],
|
||||
"cwd": "${file}/../",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"BUN_CONFIG_MINIFY_WHITESPACE": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun build debug STDOUT",
|
||||
"program": "bun-debug",
|
||||
"args": ["bun", "${file}"],
|
||||
"cwd": "${file}/../",
|
||||
"console": "internalConsole",
|
||||
"env": {}
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Release Serve",
|
||||
"program": "${workspaceFolder}/build/macos-x86_64/bun",
|
||||
// "args": ["--serve", "--origin=http://localhost:3000"],
|
||||
"args": ["dev", "--origin=http://localhost:3000"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Serve",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "args": ["--serve", "--origin=http://localhost:3000"],
|
||||
"args": ["dev", "--origin=http://localhost:3000"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Serve aarch64",
|
||||
"program": "${workspaceFolder}/build/macos-aarch64/bun",
|
||||
// "args": ["--serve", "--origin=http://localhost:3000"],
|
||||
"args": ["dev", "--origin=http://ci.local:3000"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Lazy Build",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"name": "bun build debug (no splitting, browser entry)",
|
||||
"program": "bun-debug",
|
||||
"args": [
|
||||
"./src/index.tsx",
|
||||
"--resolve=lazy",
|
||||
"--origin=http://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/simple-react",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Build",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"./src/index.tsx",
|
||||
"--resolve=dev",
|
||||
"--outdir=outcss",
|
||||
"--entry-names=./[name].[ext]",
|
||||
"--outdir=/Users/jarred/Code/bun-rsc/.rsc-no-split",
|
||||
"--platform=browser",
|
||||
"--origin=http://localhost:9000/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/css-stress-test",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Fixture serve",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo .bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["bun", "--use=bun-framework-next"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "PNPM .bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["bun", "./pages/index.js"],
|
||||
"cwd": "/Users/jarred/Build/pnpm-bun/packages/app",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "PNPM serve",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [],
|
||||
"cwd": "/Users/jarred/Build/pnpm-bun/packages/app",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Mixed case resolve",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"build",
|
||||
"./index.js",
|
||||
"--origin=http://localhost:9000/",
|
||||
// "--use=./bun-framework-next",
|
||||
"--platform=browser"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/lotta-modules/",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Build .bun lotta-modules",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["bun", "./index.js", "--platform=browser"],
|
||||
"cwd": "${workspaceFolder}/examples/lotta-modules/",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Dev CRA",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["dev", "--platform=browser"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-create-react-app/",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Fragment",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Context Bun Bug",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["bun", "./code.js"],
|
||||
"cwd": "/Users/jarred/Build/context/www",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Context Bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["bun", "--use=next"],
|
||||
"cwd": "/Users/jarred/Build/context/www",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Fixtures Dev",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["dev"],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "cppvsdbg",
|
||||
"request": "launch",
|
||||
"name": "Fixtures Rel",
|
||||
"program": "${workspaceFolder}/build/macos-x86_64/bun",
|
||||
"args": ["dev"],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
|
||||
"request": "launch",
|
||||
"name": "Context Dev",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [],
|
||||
"cwd": "/Users/jarred/Build/context/www",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Context Rel",
|
||||
"program": "${workspaceFolder}/build/macos-x86_64/bun",
|
||||
"args": [],
|
||||
"cwd": "/Users/jarred/Build/context/www",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Debug Dev",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["dev"],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next/bun-framework-next",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Type-only import",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"bun",
|
||||
"./src/test/fixtures/type-only-import.ts",
|
||||
"--external=react"
|
||||
"./quick.tsx"
|
||||
],
|
||||
"cwd": "/Users/jarred/Code/bun-rsc",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"NODE_ENV": "production"
|
||||
// "BUN_DEBUG_QUIET_LOGS": "1"
|
||||
// "BUN_DUMP_SYMBOLS": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun build debug (splitting, rsc)",
|
||||
"program": "bun-debug",
|
||||
"args": [
|
||||
"--entry-names=./[name].[ext]",
|
||||
"--outdir=/Users/jarred/Code/bun-rsc/.rsc-split",
|
||||
"--server-components",
|
||||
"--platform=bun",
|
||||
"--splitting",
|
||||
"bun",
|
||||
"/Users/jarred/Code/bun-rsc/components/Message.tsx",
|
||||
"/Users/jarred/Code/bun-rsc/components/Button.tsx"
|
||||
],
|
||||
"cwd": "/Users/jarred/Code/bun-rsc",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"NODE_ENV": "production"
|
||||
// "BUN_DEBUG_QUIET_LOGS": "1"
|
||||
// "BUN_DUMP_SYMBOLS": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun build debug (NO splitting, rsc)",
|
||||
"program": "bun-debug",
|
||||
"args": [
|
||||
"--entry-names=./[name].[ext]",
|
||||
"--outdir=/Users/jarred/Code/bun-rsc/.rsccheck",
|
||||
"--server-components",
|
||||
"--platform=bun",
|
||||
"bun",
|
||||
"/Users/jarred/Code/bun-rsc/pages/index.js"
|
||||
],
|
||||
"cwd": "/Users/jarred/Code/bun-rsc",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"NODE_ENV": "production"
|
||||
// "BUN_DEBUG_QUIET_LOGS": "1"
|
||||
// "BUN_DUMP_SYMBOLS": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bunx debug",
|
||||
"program": "bun-debug",
|
||||
"args": ["--bun", "x", "tsc", "--help"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "bun install",
|
||||
"program": "bun-debug",
|
||||
"args": ["install"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole",
|
||||
"env": {
|
||||
"BUN_DEBUG_QUIET_LOGS": "1"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "fetch debug",
|
||||
"program": "${workspaceFolder}/misctools/fetch",
|
||||
"args": ["https://example.com", "--verbose"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Dev lotta-modules",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["dev", "./index.js", "--platform=browser"],
|
||||
"cwd": "${workspaceFolder}/examples/lotta-modules/",
|
||||
"name": "Build zig unit test",
|
||||
"program": "make",
|
||||
"args": ["build-unit", "${file}"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Build .bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": [
|
||||
"bun",
|
||||
// "./index.js",
|
||||
"--origin=http://localhost:9000/",
|
||||
"--use=./bun-framework-next",
|
||||
"--platform=browser"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/examples/hello-next/",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "PNPM Resolve symlink",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["--resolve=dev", "test-pnpm.js", "--platform=browser"],
|
||||
"cwd": "${workspaceFolder}/examples/css-stress-test",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Demo Print .bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"args": ["./node_modules.bun"],
|
||||
"cwd": "${workspaceFolder}/examples/simple-react",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "DAev Launch",
|
||||
"program": "${workspaceFolder}/build/macos-x86_64/bun",
|
||||
"args": ["./simple.jsx", "--resolve=disable"],
|
||||
"cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"name": "esbuild",
|
||||
"type": "go",
|
||||
"request": "launch",
|
||||
"mode": "debug",
|
||||
"program": "/Users/jarred/Code/esbuild/cmd/esbuild",
|
||||
"cwd": "/Users/jarred/Code/bun/src/test/fixtures",
|
||||
"args": ["--bundle", "--outfile=out.esbuild.js", "await.ts"]
|
||||
},
|
||||
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch (other)",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "args": ["./simple.jsx", "--resolve=disable"],
|
||||
// "cwd": "${workspaceFolder}/src/test/fixtures",
|
||||
// "console": "internalConsole"
|
||||
// },
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "preLaunchTask": "build",
|
||||
// "args": [
|
||||
// "--resolve=disable",
|
||||
// "--cwd",
|
||||
// "/Users/jarredsumner/Code/bun/src/test/fixtures",
|
||||
// "escape-chars.js"
|
||||
// ],
|
||||
// "cwd": "${workspaceFolder}",
|
||||
// "console": "internalConsole"
|
||||
// }
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "preLaunchTask": "build",
|
||||
// "args": [
|
||||
// "--resolve=dev",
|
||||
// "--cwd",
|
||||
// "/Users/jarredsumner/Builds/esbuild/bench/three/src/",
|
||||
// "./entry.js",
|
||||
// "-o",
|
||||
// "out"
|
||||
// ],
|
||||
// "cwd": "/Users/jarredsumner/Builds/esbuild/bench/three/src",
|
||||
// "console": "internalConsole"
|
||||
// }
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "preLaunchTask": "build",
|
||||
// "args": [
|
||||
// "--resolve=dev",
|
||||
// "--cwd",
|
||||
// "/Users/jarredsumner/Builds/esbuild/bench/three/src/",
|
||||
// "./entry.js",
|
||||
// "-o",
|
||||
// "out"
|
||||
// ],
|
||||
// "cwd": "${workspaceFolder}",
|
||||
// "console": "internalConsole"
|
||||
// }
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// // "preLaunchTask": "build",
|
||||
// "args": [
|
||||
// "--resolve=dev",
|
||||
// "--cwd",
|
||||
// "./src/api/demo",
|
||||
// "pages/index.jsx",
|
||||
// "-o",
|
||||
// "out",
|
||||
// "--origin=https://hello.com/",
|
||||
// "--serve"
|
||||
// ],
|
||||
// "cwd": "${workspaceFolder}",
|
||||
// "console": "internalConsole"
|
||||
// }
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Rome",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"program": "${workspaceFolder}/build/macos-x86_64/bun",
|
||||
// "preLaunchTask": "build",
|
||||
"args": [
|
||||
"--resolve=dev",
|
||||
// "--resolve=lazy",
|
||||
"--cwd",
|
||||
"${workspaceFolder}/bench/rome/src",
|
||||
"entry",
|
||||
"--platform=node",
|
||||
// "@romejs/js-analysis/evaluators/modules/ImportCall.ts",
|
||||
"--outdir=${workspaceFolder}/bench/rome/src/out",
|
||||
// "@romejs/cli-diagnostics/banners/success.json",
|
||||
"--origin=https://hello.com/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/bench/rome/src",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"name": "Rome Dev",
|
||||
// "program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
"program": "${workspaceFolder}/build/debug/macos-x86_64/bun",
|
||||
// "preLaunchTask": "build",
|
||||
"args": [
|
||||
"--resolve=dev",
|
||||
// "--resolve=lazy",
|
||||
"--cwd",
|
||||
"${workspaceFolder}/bench/rome/src",
|
||||
"entry",
|
||||
"--platform=node",
|
||||
// "@romejs/js-analysis/evaluators/modules/ImportCall.ts",
|
||||
"--outdir=${workspaceFolder}/bench/rome/src/out",
|
||||
// "@romejs/cli-diagnostics/banners/success.json",
|
||||
"--origin=https://hello.com/"
|
||||
],
|
||||
"cwd": "${workspaceFolder}/bench/rome/src",
|
||||
"name": "Run zig unit test",
|
||||
"program": "${workspaceFolder}/zig-out/bin/test",
|
||||
"args": ["abc"],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"console": "internalConsole"
|
||||
}
|
||||
// {
|
||||
// "type": "lldb",
|
||||
// "request": "launch",
|
||||
// "name": "Dev Launch",
|
||||
// "program": "${workspaceFolder}/build/bin/debug/bun",
|
||||
// "preLaunchTask": "build",
|
||||
// "args": [
|
||||
// "--resolve=dev",
|
||||
// "--cwd",
|
||||
// "/",
|
||||
// "/Users/jarredsumner/Code/bun/src/test/fixtures/img-bug.js",
|
||||
// "-o",
|
||||
// "out"
|
||||
// ],
|
||||
// "cwd": "${workspaceFolder}",
|
||||
// "console": "internalConsole",
|
||||
// "presentation": {
|
||||
// "hidden": false,
|
||||
// "group": "",
|
||||
// "order": 1
|
||||
// }
|
||||
// }
|
||||
]
|
||||
}
|
||||
|
||||
144
.vscode/settings.json
vendored
144
.vscode/settings.json
vendored
@@ -3,32 +3,99 @@
|
||||
"search.quickOpen.includeSymbols": false,
|
||||
"search.seedWithNearestWord": true,
|
||||
"search.smartCase": true,
|
||||
"search.exclude": {
|
||||
"src/javascript/jsc/WebKit/**/*": true
|
||||
},
|
||||
"search.exclude": {},
|
||||
"search.followSymlinks": false,
|
||||
"search.useIgnoreFiles": true,
|
||||
"zig.buildOnSave": false,
|
||||
"zig.buildArgs": ["obj", "-Dfor-editor"],
|
||||
"zig.buildOption": "build",
|
||||
"zig.buildFilePath": "${workspaceFolder}/build.zig",
|
||||
"[zig]": {
|
||||
"editor.defaultFormatter": "tiehuis.zig"
|
||||
"editor.tabSize": 4,
|
||||
"editor.useTabStops": false,
|
||||
"editor.defaultFormatter": "ziglang.vscode-zig",
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"[ts]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"[js]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"zig.zls.enableInlayHints": false,
|
||||
|
||||
"[jsx]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"[tsx]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"[yaml]": {
|
||||
"editor.formatOnSave": true
|
||||
},
|
||||
"[markdown]": {
|
||||
"editor.unicodeHighlight.ambiguousCharacters": false,
|
||||
"editor.unicodeHighlight.invisibleCharacters": false,
|
||||
"diffEditor.ignoreTrimWhitespace": false,
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true,
|
||||
"editor.wordWrap": "on",
|
||||
"editor.quickSuggestions": {
|
||||
"comments": "off",
|
||||
"strings": "off",
|
||||
"other": "off"
|
||||
}
|
||||
},
|
||||
"lldb.verboseLogging": false,
|
||||
"files.exclude": {
|
||||
"**/.git": true,
|
||||
"**/.svn": true,
|
||||
"**/.hg": true,
|
||||
"**/CVS": true,
|
||||
"**/.DS_Store": true,
|
||||
"**/Thumbs.db": true,
|
||||
"**/*.xcworkspacedata": true,
|
||||
"**/*.xcscheme": true,
|
||||
"**/*.pem": true,
|
||||
"**/*.xcodeproj": true,
|
||||
"test/snapshots": true,
|
||||
"test/snapshots-no-hmr": true,
|
||||
"src/bun.js/WebKit": true,
|
||||
"src/deps/libarchive": true,
|
||||
"src/deps/mimalloc": true,
|
||||
"src/deps/s2n-tls": true,
|
||||
"src/deps/boringssl": true,
|
||||
"src/deps/openssl": true,
|
||||
"src/deps/uws": true,
|
||||
"src/deps/zlib": true,
|
||||
"src/deps/lol-html": true,
|
||||
"src/deps/c-ares": true,
|
||||
"src/deps/tinycc": true,
|
||||
"src/deps/zstd": true,
|
||||
"test/snippets/package-json-exports/_node_modules_copy": true,
|
||||
"src/js/out": true
|
||||
},
|
||||
"C_Cpp.files.exclude": {
|
||||
"**/.vscode": true,
|
||||
"src/javascript/jsc/WebKit/JSTests": true,
|
||||
"src/javascript/jsc/WebKit/Tools": true,
|
||||
"src/javascript/jsc/WebKit/WebDriverTests": true,
|
||||
"src/javascript/jsc/WebKit/WebKit.xcworkspace": true,
|
||||
"src/javascript/jsc/WebKit/WebKitLibraries": true,
|
||||
"src/javascript/jsc/WebKit/Websites": true,
|
||||
"src/javascript/jsc/WebKit/resources": true,
|
||||
"src/javascript/jsc/WebKit/LayoutTests": true,
|
||||
"src/javascript/jsc/WebKit/ManualTests": true,
|
||||
"src/javascript/jsc/WebKit/PerformanceTests": true,
|
||||
"src/javascript/jsc/WebKit/WebKitLegacy": true,
|
||||
"src/javascript/jsc/WebKit/WebCore": true,
|
||||
"src/javascript/jsc/WebKit/WebDriver": true,
|
||||
"src/javascript/jsc/WebKit/WebKitBuild": true,
|
||||
"src/javascript/jsc/WebKit/WebInspectorUI": true
|
||||
"src/bun.js/WebKit/JSTests": true,
|
||||
"src/bun.js/WebKit/Tools": true,
|
||||
"src/bun.js/WebKit/WebDriverTests": true,
|
||||
"src/bun.js/WebKit/WebKit.xcworkspace": true,
|
||||
"src/bun.js/WebKit/WebKitLibraries": true,
|
||||
"src/bun.js/WebKit/Websites": true,
|
||||
"src/bun.js/WebKit/resources": true,
|
||||
"src/bun.js/WebKit/LayoutTests": true,
|
||||
"src/bun.js/WebKit/ManualTests": true,
|
||||
"src/bun.js/WebKit/PerformanceTests": true,
|
||||
"src/bun.js/WebKit/WebKitLegacy": true,
|
||||
"src/bun.js/WebKit/WebCore": true,
|
||||
"src/bun.js/WebKit/WebDriver": true,
|
||||
"src/bun.js/WebKit/WebKitBuild": true,
|
||||
"src/bun.js/WebKit/WebInspectorUI": true
|
||||
},
|
||||
"[cpp]": {
|
||||
"editor.defaultFormatter": "xaver.clang-format"
|
||||
@@ -40,6 +107,7 @@
|
||||
"editor.defaultFormatter": "xaver.clang-format"
|
||||
},
|
||||
"files.associations": {
|
||||
"*.lock": "yarnlock",
|
||||
"*.idl": "cpp",
|
||||
"memory": "cpp",
|
||||
"iostream": "cpp",
|
||||
@@ -117,8 +185,40 @@
|
||||
"numeric": "cpp",
|
||||
"set": "cpp",
|
||||
"__memory": "cpp",
|
||||
"memory_resource": "cpp"
|
||||
"memory_resource": "cpp",
|
||||
"resource.h": "c",
|
||||
"sysinfo.h": "c",
|
||||
"*.tcc": "cpp",
|
||||
"list": "cpp",
|
||||
"shared_mutex": "cpp",
|
||||
"cinttypes": "cpp",
|
||||
"variant": "cpp",
|
||||
"sysctl.h": "c",
|
||||
"interface_adresses.h": "c",
|
||||
"interface_addresses.h": "c",
|
||||
"ctype.h": "c",
|
||||
"ethernet.h": "c",
|
||||
"inet.h": "c",
|
||||
"packet.h": "c",
|
||||
"queue": "cpp",
|
||||
"compare": "cpp",
|
||||
"concepts": "cpp",
|
||||
"typeindex": "cpp",
|
||||
"__verbose_abort": "cpp",
|
||||
"__std_stream": "cpp",
|
||||
"any": "cpp",
|
||||
"charconv": "cpp",
|
||||
"csignal": "cpp",
|
||||
"format": "cpp",
|
||||
"forward_list": "cpp",
|
||||
"future": "cpp",
|
||||
"regex": "cpp",
|
||||
"span": "cpp",
|
||||
"valarray": "cpp",
|
||||
"codecvt": "cpp"
|
||||
},
|
||||
"go.logging.level": "off",
|
||||
"cmake.configureOnOpen": false
|
||||
"cmake.configureOnOpen": false,
|
||||
"C_Cpp.errorSquiggles": "enabled",
|
||||
"eslint.workingDirectories": ["packages/bun-types"],
|
||||
"typescript.tsdk": "node_modules/typescript/lib"
|
||||
}
|
||||
|
||||
25
.vscode/tasks.json
vendored
25
.vscode/tasks.json
vendored
@@ -29,31 +29,6 @@
|
||||
"showReuseMessage": false,
|
||||
"clear": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "test",
|
||||
"type": "shell",
|
||||
"command": "zig",
|
||||
"args": [
|
||||
"test",
|
||||
"${file}",
|
||||
"--main-pkg-path",
|
||||
"${workspaceFolder}",
|
||||
"-femit-bin=${workspaceFolder}/zig-out/bin/test",
|
||||
";",
|
||||
"true"
|
||||
],
|
||||
|
||||
"group": {
|
||||
"kind": "test",
|
||||
"isDefault": true
|
||||
},
|
||||
"presentation": {
|
||||
"showReuseMessage": false,
|
||||
"clear": true,
|
||||
"panel": "new",
|
||||
"reveal": "always"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
12
CODE_OF_CONDUCT.md
Normal file
12
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,12 @@
|
||||
## Code of conduct
|
||||
|
||||
- We are committed to providing a friendly, safe and welcoming environment for all, regardless of level of experience, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, nationality, or other similar characteristic.
|
||||
- Please avoid using overtly sexual aliases or other nicknames that might detract from a friendly, safe and welcoming environment for all.
|
||||
- Please be kind and courteous. There’s no need to be mean or rude.
|
||||
- Respect that people have differences of opinion and that every design or implementation choice carries a trade-off and numerous costs. There is seldom a right answer.
|
||||
- Please keep unstructured critique to a minimum. If you have solid ideas you want to experiment with, make a fork and see how it works.
|
||||
- We will exclude you from interaction if you insult, demean or harass anyone. That is not welcome behavior. We interpret the term “harassment” as including the definition in the [Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md); if you have any lack of clarity about what might be included in that concept, please read their definition. In particular, we don’t tolerate behavior that excludes people in socially marginalized groups.
|
||||
- Private harassment is also unacceptable. No matter who you are, if you feel you have been or are being harassed or made uncomfortable by a community member, please contact one of the channel ops or an employee of Oven immediately. Whether you’re a regular contributor or a newcomer, we care about making this community a safe place for you and we’ve got your back.
|
||||
- Likewise any spamming, trolling, flaming, baiting or other attention-stealing behavior is not welcome.
|
||||
|
||||
This code of conduct is adapted from the [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct).
|
||||
92
CONTRIBUTING.md
Normal file
92
CONTRIBUTING.md
Normal file
@@ -0,0 +1,92 @@
|
||||
# Contributing to Bun
|
||||
|
||||
> **Important:** All contributions need test coverage. If you are adding a new feature, please add a test. If you are fixing a bug, please add a test that fails before your fix and passes after your fix.
|
||||
|
||||
## Bun's codebase
|
||||
|
||||
Bun is written mostly in Zig, but WebKit & JavaScriptCore (the JavaScript engine) is written in C++.
|
||||
|
||||
Today (February 2023), Bun's codebase has five distinct parts:
|
||||
|
||||
- JavaScript, JSX, & TypeScript transpiler, module resolver, and related code
|
||||
- JavaScript runtime ([`src/bun.js/`](src/bun.js/))
|
||||
- JavaScript runtime bindings ([`src/bun.zig/bindings/**/*.cpp`](src/bun.zig/bindings/))
|
||||
- Package manager ([`src/install/`](src/install/))
|
||||
- Shared utilities ([`src/string_immutable.zig`](src/string_immutable.zig))
|
||||
|
||||
The JavaScript transpiler & module resolver is mostly independent from the runtime. It predates the runtime and is entirely in Zig. The JavaScript parser is mostly in [`src/js_parser.zig`](src/js_parser.zig). The JavaScript AST data structures are mostly in [`src/js_ast.zig`](src/js_ast.zig). The JavaScript lexer is in [`src/js_lexer.zig`](src/js_lexer.zig). A lot of this code started as a port of esbuild's equivalent code from Go to Zig, but has had many small changes since then.
|
||||
|
||||
## Getting started
|
||||
|
||||
Please refer to [Bun's Development Guide](https://bun.sh/docs/project/development) to get your dev environment setup!
|
||||
|
||||
## Memory management in Bun
|
||||
|
||||
For the Zig code, please:
|
||||
|
||||
1. Do your best to avoid dynamically allocating memory.
|
||||
2. If we need to allocate memory, carefully consider the owner of that memory. If it's a JavaScript object, it will need a finalizer. If it's in Zig, it will need to be freed either via an arena or manually.
|
||||
3. Prefer arenas over manual memory management. Manually freeing memory is leak & crash prone.
|
||||
4. If the memory needs to be accessed across threads, use `bun.default_allocator`. Mimalloc threadlocal heaps are not safe to free across threads.
|
||||
|
||||
The JavaScript transpiler has special-handling for memory management. The parser allocates into a single arena and the memory is recycled after each parse.
|
||||
|
||||
## JavaScript runtime
|
||||
|
||||
Most of Bun's JavaScript runtime code lives in [`src/bun.js`](src/bun.js).
|
||||
|
||||
### Calling C++ from Zig & Zig from C++
|
||||
|
||||
TODO: document this (see [`bindings.zig`](src/bun.js/bindings/bindings.zig) and [`bindings.cpp`](src/bun.js/bindings/bindings.cpp) for now)
|
||||
|
||||
### Adding a new JavaScript class
|
||||
|
||||
1. Add a new file in [`src/bun.js/*.classes.ts`](src/bun.js) to define the instance and static methods for the class.
|
||||
2. Add a new file in [`src/bun.js/**/*.zig`](src/bun.js) and expose the struct in [`src/bun.js/generated_classes_list.zig`](src/bun.js/generated_classes_list.zig)
|
||||
3. Run `make codegen`
|
||||
|
||||
Copy from examples like `Subprocess` or `Response`.
|
||||
|
||||
### ESM modules
|
||||
|
||||
Bun implements ESM modules in a mix of native code and JavaScript.
|
||||
|
||||
Several Node.js modules are implemented in JavaScript and loosely based on browserify polyfills.
|
||||
|
||||
The ESM modules in Bun are located in [`src/bun.js/*.exports.js`](src/bun.js/). Unlike other code in Bun, these files are NOT transpiled. They are loaded directly into the JavaScriptCore VM. That means `require` does not work in these files. Instead, you must use `import.meta.require`, or ideally, not use require/import other files at all.
|
||||
|
||||
The module loader is in [`src/bun.js/module_loader.zig`](src/bun.js/module_loader.zig).
|
||||
|
||||
### JavaScript Builtins
|
||||
|
||||
TODO: update this with the new build process that uses TypeScript and `$` instead of `@`.
|
||||
|
||||
JavaScript builtins are located in [`src/js/builtins/*.ts`](src/js/builtins).
|
||||
|
||||
These files support a JavaScriptCore-only syntax for internal slots. `@` is used to access an internal slot. For example: `new @Array(123)` will create a new `Array` similar to `new Array(123)`, except if a library modifies the `Array` global, it will not affect the internal slot (`@Array`). These names must be allow-listed in `BunBuiltinNames.h` (though JavaScriptCore allowlists some names by default).
|
||||
|
||||
They can not use or reference ESM-modules. The files that end with `*Internals.js` are automatically loaded globally. Most usage of internals right now are the stream implementations (which share a lot of code from Safari/WebKit) and ImportMetaObject (which is how `require` is implemented in the runtime)
|
||||
|
||||
To regenerate the builtins:
|
||||
|
||||
```sh
|
||||
make clean-bindings && make generate-builtins && make bindings -j10
|
||||
```
|
||||
|
||||
It is recommended that you have ccache installed or else you will spend a lot of time waiting for the bindings to compile.
|
||||
|
||||
### Memory management in Bun's JavaScript runtime
|
||||
|
||||
TODO: fill this out (for now, use `JSC.Strong` in most cases)
|
||||
|
||||
### Strings
|
||||
|
||||
TODO: fill this out (for now, use `JSValue.toSlice()` in most cases)
|
||||
|
||||
#### JavaScriptCore C API
|
||||
|
||||
Do not copy from examples leveraging the JavaScriptCore C API. Please do not use this in new code. We will not accept PRs that add new code that uses the JavaScriptCore C API.
|
||||
|
||||
## Testing
|
||||
|
||||
See [`test/README.md`](test/README.md) for information on how to run tests.
|
||||
663
Dockerfile
Normal file
663
Dockerfile
Normal file
@@ -0,0 +1,663 @@
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG GITHUB_WORKSPACE=/build
|
||||
ARG ZIG_PATH=${GITHUB_WORKSPACE}/zig
|
||||
ARG WEBKIT_DIR=${GITHUB_WORKSPACE}/bun-webkit
|
||||
ARG BUN_RELEASE_DIR=${GITHUB_WORKSPACE}/bun-release
|
||||
ARG BUN_DEPS_OUT_DIR=${GITHUB_WORKSPACE}/bun-deps
|
||||
ARG BUN_DIR=${GITHUB_WORKSPACE}/bun
|
||||
ARG CPU_TARGET=native
|
||||
ARG ARCH=x86_64
|
||||
ARG BUILD_MACHINE_ARCH=x86_64
|
||||
ARG TRIPLET=${ARCH}-linux-gnu
|
||||
ARG BUILDARCH=amd64
|
||||
ARG WEBKIT_TAG=may20
|
||||
ARG ZIG_TAG=jul1
|
||||
ARG ZIG_VERSION="0.11.0-dev.2571+31738de28"
|
||||
ARG WEBKIT_BASENAME="bun-webkit-linux-$BUILDARCH"
|
||||
|
||||
ARG ZIG_FOLDERNAME=zig-linux-${BUILD_MACHINE_ARCH}-${ZIG_VERSION}
|
||||
ARG ZIG_FILENAME=${ZIG_FOLDERNAME}.tar.xz
|
||||
ARG WEBKIT_URL="https://github.com/oven-sh/WebKit/releases/download/$WEBKIT_TAG/${WEBKIT_BASENAME}.tar.gz"
|
||||
ARG ZIG_URL="https://ziglang.org/builds/${ZIG_FILENAME}"
|
||||
ARG GIT_SHA=""
|
||||
ARG BUN_BASE_VERSION=0.6
|
||||
|
||||
FROM bitnami/minideb:bullseye as bun-base
|
||||
|
||||
RUN install_packages ca-certificates curl wget lsb-release software-properties-common gnupg gnupg1 gnupg2
|
||||
|
||||
RUN wget https://apt.llvm.org/llvm.sh && \
|
||||
chmod +x llvm.sh && \
|
||||
./llvm.sh 15
|
||||
|
||||
RUN install_packages \
|
||||
cmake \
|
||||
curl \
|
||||
file \
|
||||
git \
|
||||
gnupg \
|
||||
libc-dev \
|
||||
libxml2 \
|
||||
libxml2-dev \
|
||||
make \
|
||||
ninja-build \
|
||||
perl \
|
||||
python3 \
|
||||
rsync \
|
||||
ruby \
|
||||
unzip \
|
||||
xz-utils \
|
||||
bash tar gzip ccache
|
||||
|
||||
ENV CXX=clang++-15
|
||||
ENV CC=clang-15
|
||||
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \
|
||||
install_packages nodejs && \
|
||||
npm install -g esbuild
|
||||
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG BUILDARCH
|
||||
ARG ZIG_PATH
|
||||
ARG WEBKIT_URL
|
||||
ARG ZIG_URL
|
||||
ARG ZIG_FOLDERNAME
|
||||
ARG ZIG_FILENAME
|
||||
|
||||
ENV WEBKIT_OUT_DIR=${WEBKIT_DIR}
|
||||
ENV BUILDARCH=${BUILDARCH}
|
||||
ENV AR=/usr/bin/llvm-ar-15
|
||||
ENV ZIG "${ZIG_PATH}/zig"
|
||||
ENV PATH="$ZIG/bin:$PATH"
|
||||
ENV LD=lld-15
|
||||
|
||||
RUN mkdir -p $BUN_DIR $BUN_DEPS_OUT_DIR
|
||||
|
||||
FROM bun-base as bun-base-with-zig-and-webkit
|
||||
|
||||
WORKDIR $GITHUB_WORKSPACE
|
||||
|
||||
ADD $ZIG_URL .
|
||||
RUN tar xf ${ZIG_FILENAME} && \
|
||||
rm ${ZIG_FILENAME} && mv ${ZIG_FOLDERNAME} zig;
|
||||
|
||||
|
||||
|
||||
WORKDIR $GITHUB_WORKSPACE
|
||||
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG BUILDARCH
|
||||
ARG ZIG_PATH
|
||||
ARG WEBKIT_URL
|
||||
ARG ZIG_URL
|
||||
ARG WEBKIT_BASENAME
|
||||
|
||||
ADD ${WEBKIT_URL} .
|
||||
|
||||
RUN mkdir -p ${WEBKIT_DIR} && cd ${GITHUB_WORKSPACE} && \
|
||||
gunzip ${WEBKIT_BASENAME}.tar.gz && tar -xf ${WEBKIT_BASENAME}.tar && \
|
||||
cat ${WEBKIT_DIR}/include/cmakeconfig.h > /dev/null
|
||||
|
||||
LABEL org.opencontainers.image.title="bun base image with zig & webkit ${BUILDARCH} (glibc)"
|
||||
LABEL org.opencontainers.image.source=https://github.com/oven-sh/bun
|
||||
|
||||
FROM bun-base as c-ares
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/c-ares ${BUN_DIR}/src/deps/c-ares
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && make c-ares && rm -rf ${BUN_DIR}/src/deps/c-ares ${BUN_DIR}/Makefile
|
||||
|
||||
|
||||
FROM bun-base as lolhtml
|
||||
|
||||
RUN install_packages build-essential && curl https://sh.rustup.rs -sSf | sh -s -- -y
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/lol-html ${BUN_DIR}/src/deps/lol-html
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache export PATH=$PATH:$HOME/.cargo/bin && export CC=$(which clang-15) && cd ${BUN_DIR} && \
|
||||
make lolhtml && rm -rf src/deps/lol-html Makefile
|
||||
|
||||
FROM bun-base as mimalloc
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/mimalloc ${BUN_DIR}/src/deps/mimalloc
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd ${BUN_DIR} && \
|
||||
make mimalloc && rm -rf src/deps/mimalloc Makefile
|
||||
|
||||
FROM bun-base as zlib
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/zlib ${BUN_DIR}/src/deps/zlib
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && \
|
||||
make zlib && rm -rf src/deps/zlib Makefile
|
||||
|
||||
FROM bun-base as libarchive
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
RUN install_packages autoconf automake libtool pkg-config
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/libarchive ${BUN_DIR}/src/deps/libarchive
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && \
|
||||
make libarchive && rm -rf src/deps/libarchive Makefile
|
||||
|
||||
|
||||
|
||||
FROM bun-base as tinycc
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
RUN install_packages libtcc-dev && cp /usr/lib/$(uname -m)-linux-gnu/libtcc.a ${BUN_DEPS_OUT_DIR}
|
||||
|
||||
FROM bun-base as boringssl
|
||||
|
||||
RUN install_packages golang
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/boringssl ${BUN_DIR}/src/deps/boringssl
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd ${BUN_DIR} && make boringssl && rm -rf src/deps/boringssl Makefile
|
||||
|
||||
FROM bun-base as uws
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/uws ${BUN_DIR}/src/deps/uws
|
||||
COPY src/deps/zlib ${BUN_DIR}/src/deps/zlib
|
||||
COPY src/deps/boringssl/include ${BUN_DIR}/src/deps/boringssl/include
|
||||
COPY src/deps/libuwsockets.cpp ${BUN_DIR}/src/deps/libuwsockets.cpp
|
||||
COPY src/deps/_libusockets.h ${BUN_DIR}/src/deps/_libusockets.h
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
RUN cd $BUN_DIR && \
|
||||
make uws && rm -rf src/deps/uws Makefile
|
||||
|
||||
FROM bun-base as picohttp
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/picohttpparser ${BUN_DIR}/src/deps/picohttpparser
|
||||
COPY src/deps/*.c ${BUN_DIR}/src/deps/
|
||||
COPY src/deps/*.h ${BUN_DIR}/src/deps/
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
RUN cd $BUN_DIR && \
|
||||
make picohttp
|
||||
|
||||
|
||||
FROM bun-base-with-zig-and-webkit as identifier_cache
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/js_lexer/identifier_data.zig ${BUN_DIR}/src/js_lexer/identifier_data.zig
|
||||
COPY src/js_lexer/identifier_cache.zig ${BUN_DIR}/src/js_lexer/identifier_cache.zig
|
||||
|
||||
RUN cd $BUN_DIR && \
|
||||
make identifier-cache && rm -rf zig-cache Makefile
|
||||
|
||||
FROM bun-base-with-zig-and-webkit as node_fallbacks
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/node-fallbacks ${BUN_DIR}/src/node-fallbacks
|
||||
RUN cd $BUN_DIR && \
|
||||
make node-fallbacks && rm -rf src/node-fallbacks/node_modules Makefile
|
||||
|
||||
FROM bun-base-with-zig-and-webkit as prepare_release
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
COPY ./root.zig ${BUN_DIR}/root.zig
|
||||
COPY ./src ${BUN_DIR}/src
|
||||
COPY ./build.zig ${BUN_DIR}/build.zig
|
||||
COPY ./completions ${BUN_DIR}/completions
|
||||
COPY ./packages ${BUN_DIR}/packages
|
||||
COPY ./src/build-id ${BUN_DIR}/src/build-id
|
||||
COPY ./package.json ${BUN_DIR}/package.json
|
||||
COPY ./misctools ${BUN_DIR}/misctools
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
|
||||
|
||||
FROM prepare_release as compile_release_obj
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY .prettierrc.cjs ${BUN_DIR}/.prettierrc.cjs
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
ARG ARCH
|
||||
ARG TRIPLET
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
ARG GIT_SHA
|
||||
ARG BUN_BASE_VERSION
|
||||
|
||||
ENV BUN_BASE_VERSION=${BUN_BASE_VERSION}
|
||||
ENV GIT_SHA=${GIT_SHA}
|
||||
|
||||
COPY --from=identifier_cache ${BUN_DIR}/src/js_lexer/*.blob ${BUN_DIR}/src/js_lexer/
|
||||
COPY --from=node_fallbacks ${BUN_DIR}/src/node-fallbacks/out ${BUN_DIR}/src/node-fallbacks/out
|
||||
|
||||
COPY ./src/build-id ${BUN_DIR}/src/build-id
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && mkdir -p src/bun.js/bindings-obj && rm -rf $HOME/.cache zig-cache && make prerelease && \
|
||||
mkdir -p $BUN_RELEASE_DIR && \
|
||||
OUTPUT_DIR=/tmp/bun-${TRIPLET}-${GIT_SHA} $ZIG_PATH/zig build obj -Doutput-dir=/tmp/bun-${TRIPLET}-${GIT_SHA} -Doptimize=ReleaseFast -Dtarget="${TRIPLET}" -Dcpu="${CPU_TARGET}" && \
|
||||
cp /tmp/bun-${TRIPLET}-${GIT_SHA}/bun.o /tmp/bun-${TRIPLET}-${GIT_SHA}/bun-${BUN_BASE_VERSION}.$(cat ${BUN_DIR}/src/build-id).o && cd / && rm -rf $BUN_DIR
|
||||
|
||||
FROM scratch as build_release_obj
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG GIT_SHA
|
||||
ARG TRIPLET
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY --from=compile_release_obj /tmp/bun-${TRIPLET}-${GIT_SHA}/*.o /
|
||||
|
||||
FROM prepare_release as compile_cpp
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY .prettierrc.cjs ${BUN_DIR}/.prettierrc.cjs
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
|
||||
# Required for webcrypto bindings
|
||||
COPY src/deps/boringssl/include ${BUN_DIR}/src/deps/boringssl/include
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && mkdir -p src/bun.js/bindings-obj && rm -rf $HOME/.cache zig-cache && mkdir -p $BUN_RELEASE_DIR && \
|
||||
make release-bindings -j10 && mv src/bun.js/bindings-obj/* /tmp
|
||||
|
||||
FROM bun-base as sqlite
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/bun.js/bindings/sqlite ${BUN_DIR}/src/bun.js/bindings/sqlite
|
||||
COPY .prettierrc.cjs ${BUN_DIR}/.prettierrc.cjs
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && make sqlite
|
||||
|
||||
FROM bun-base as zstd
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
ENV CCACHE_DIR=/ccache
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY src/deps/zstd ${BUN_DIR}/src/deps/zstd
|
||||
COPY .prettierrc.cjs ${BUN_DIR}/.prettierrc.cjs
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
|
||||
RUN --mount=type=cache,target=/ccache cd $BUN_DIR && make zstd
|
||||
|
||||
FROM scratch as build_release_cpp
|
||||
|
||||
COPY --from=compile_cpp /tmp/*.o /
|
||||
|
||||
FROM prepare_release as build_release
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
ARG CPU_TARGET
|
||||
ENV CPU_TARGET=${CPU_TARGET}
|
||||
|
||||
COPY Makefile ${BUN_DIR}/Makefile
|
||||
COPY .prettierrc.cjs ${BUN_DIR}/.prettierrc.cjs
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV JSC_BASE_DIR=${WEBKIT_DIR}
|
||||
ENV LIB_ICU_PATH=${WEBKIT_DIR}/lib
|
||||
|
||||
COPY --from=zlib ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=libarchive ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=boringssl ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=lolhtml ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=mimalloc ${BUN_DEPS_OUT_DIR}/*.o ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=picohttp ${BUN_DEPS_OUT_DIR}/*.o ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=sqlite ${BUN_DEPS_OUT_DIR}/*.o ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=zstd ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=tinycc ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=uws ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=uws ${BUN_DEPS_OUT_DIR}/*.o ${BUN_DEPS_OUT_DIR}/
|
||||
COPY --from=c-ares ${BUN_DEPS_OUT_DIR}/*.a ${BUN_DEPS_OUT_DIR}/
|
||||
|
||||
COPY --from=build_release_obj /*.o /tmp
|
||||
COPY --from=build_release_cpp /*.o ${BUN_DIR}/src/bun.js/bindings-obj/
|
||||
COPY --from=build_release_cpp /*.a ${BUN_DEPS_OUT_DIR}/
|
||||
|
||||
RUN cd $BUN_DIR && mkdir -p ${BUN_RELEASE_DIR} && make bun-relink copy-to-bun-release-dir && \
|
||||
rm -rf $HOME/.cache zig-cache misctools package.json build-id completions build.zig $(BUN_DIR)/packages
|
||||
|
||||
|
||||
|
||||
FROM scratch as artifact
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
COPY --from=build_release ${BUN_RELEASE_DIR}/bun /bun
|
||||
COPY --from=build_release ${BUN_RELEASE_DIR}/bun-profile /bun-profile
|
||||
COPY --from=build_release ${BUN_DEPS_OUT_DIR}/* /bun-dependencies
|
||||
COPY --from=build_release_obj /*.o /bun-obj
|
||||
|
||||
|
||||
FROM prepare_release as build_unit
|
||||
|
||||
ARG DEBIAN_FRONTEND
|
||||
ARG GITHUB_WORKSPACE
|
||||
ARG ZIG_PATH
|
||||
# Directory extracts to "bun-webkit"
|
||||
ARG WEBKIT_DIR
|
||||
ARG BUN_RELEASE_DIR
|
||||
ARG BUN_DEPS_OUT_DIR
|
||||
ARG BUN_DIR
|
||||
|
||||
WORKDIR $BUN_DIR
|
||||
|
||||
ENV PATH "$ZIG_PATH:$PATH"
|
||||
ENV LIB_ICU_PATH "${WEBKIT_DIR}/lib"
|
||||
|
||||
CMD make headers \
|
||||
api \
|
||||
analytics \
|
||||
bun_error \
|
||||
fallback_decoder \
|
||||
bindings -j10 && \
|
||||
make \
|
||||
run-all-unit-tests
|
||||
|
||||
|
||||
|
||||
# FROM bun-test-base as test_base
|
||||
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# ARG GITHUB_WORKSPACE=/build
|
||||
# ARG ZIG_PATH=${GITHUB_WORKSPACE}/zig
|
||||
# # Directory extracts to "bun-webkit"
|
||||
# ARG WEBKIT_DIR=${GITHUB_WORKSPACE}/bun-webkit
|
||||
# ARG BUN_RELEASE_DIR=${GITHUB_WORKSPACE}/bun-release
|
||||
# ARG BUN_DEPS_OUT_DIR=${GITHUB_WORKSPACE}/bun-deps
|
||||
# ARG BUN_DIR=${GITHUB_WORKSPACE}/bun
|
||||
|
||||
# ARG BUILDARCH=amd64
|
||||
# RUN groupadd -r chromium && useradd -d ${BUN_DIR} -M -r -g chromium -G audio,video chromium \
|
||||
# && mkdir -p /home/chromium/Downloads && chown -R chromium:chromium /home/chromium
|
||||
|
||||
# USER chromium
|
||||
# WORKDIR $BUN_DIR
|
||||
|
||||
# ENV NPM_CLIENT bun
|
||||
# ENV PATH "${BUN_DIR}/packages/bun-linux-x64:${BUN_DIR}/packages/bun-linux-aarch64:$PATH"
|
||||
# ENV CI 1
|
||||
# ENV BROWSER_EXECUTABLE /usr/bin/chromium
|
||||
|
||||
# COPY ./test ${BUN_DIR}/test
|
||||
# COPY Makefile ${BUN_DIR}/Makefile
|
||||
# COPY package.json ${BUN_DIR}/package.json
|
||||
# COPY .docker/run-test.sh ${BUN_DIR}/run-test.sh
|
||||
# COPY ./bun.lockb ${BUN_DIR}/bun.lockb
|
||||
|
||||
# # # We don't want to worry about architecture differences in this image
|
||||
# COPY --from=release /opt/bun/bin/bun ${BUN_DIR}/packages/bun-linux-aarch64/bun
|
||||
# COPY --from=release /opt/bun/bin/bun ${BUN_DIR}/packages/bun-linux-x64/bun
|
||||
|
||||
# USER root
|
||||
# RUN chgrp -R chromium ${BUN_DIR} && chmod g+rwx ${BUN_DIR} && chown -R chromium:chromium ${BUN_DIR}
|
||||
# USER chromium
|
||||
|
||||
# CMD [ "bash", "run-test.sh" ]
|
||||
|
||||
# FROM release
|
||||
522
README.md
522
README.md
@@ -1,459 +1,135 @@
|
||||
# Bun: a fast bundler & transpiler for developing web software
|
||||
<p align="center">
|
||||
<a href="https://bun.sh"><img src="https://user-images.githubusercontent.com/709451/182802334-d9c42afe-f35d-4a7b-86ea-9985f73f20c3.png" alt="Logo" height=170></a>
|
||||
</p>
|
||||
<h1 align="center">Bun</h1>
|
||||
|
||||
Bun is a new:
|
||||
<p align="center">
|
||||
<a href="https://bun.sh/discord" target="_blank"><img height=20 src="https://img.shields.io/discord/876711213126520882" /></a>
|
||||
<img src="https://img.shields.io/github/stars/oven-sh/bun" alt="stars">
|
||||
<a href="https://twitter.com/jarredsumner/status/1542824445810642946"><img src="https://img.shields.io/static/v1?label=speed&message=fast&color=success" alt="Bun speed" /></a>
|
||||
</p>
|
||||
|
||||
- JavaScript/TypeScript/JSX transpiler
|
||||
- JavaScript & CSS bundler
|
||||
- Development server with 60fps Hot Module Reloading (& WIP support for React Fast Refresh)
|
||||
- JavaScript Runtime Environment (powered by JavaScriptCore, what WebKit/Safari uses)
|
||||
<div align="center">
|
||||
<a href="https://bun.sh/docs">Documentation</a>
|
||||
<span> • </span>
|
||||
<a href="https://discord.com/invite/CXdq2DP29u">Discord</a>
|
||||
<span> • </span>
|
||||
<a href="https://github.com/oven-sh/bun/issues/new">Issues</a>
|
||||
<span> • </span>
|
||||
<a href="https://github.com/oven-sh/bun/issues/159">Roadmap</a>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
All in one fast & easy-to-use tool. Instead of 1,000 node_modules for development, you only need Bun.
|
||||
### [Read the docs →](https://bun.sh/docs)
|
||||
|
||||
**Bun is experimental software**. Join [Bun's Discord](https://bun.sh/discord) for help and have a look at [things that don't work yet](#things-that-dont-work-yet).
|
||||
## What is Bun?
|
||||
|
||||
## Install:
|
||||
> **Bun is still under development.** Use it to speed up your development workflows or run simpler production code in resource-constrained environments like serverless functions. We're working on more complete Node.js compatibility and integration with existing frameworks. Join the [Discord](https://bun.sh/discord) and watch the [GitHub repository](https://github.com/oven-sh/bun) to keeps tabs on future releases.
|
||||
|
||||
```
|
||||
# Global install is recommended so bun appears in your $PATH
|
||||
npm install -g bun-cli
|
||||
```
|
||||
Bun is an all-in-one toolkit for JavaScript and TypeScript apps. It ships as a single executable called `bun`.
|
||||
|
||||
### Getting started
|
||||
|
||||
## Using Bun with Next.js
|
||||
|
||||
In your project folder root (where `package.json` is):
|
||||
At its core is the _Bun runtime_, a fast JavaScript runtime designed as a drop-in replacement for Node.js. It's written in Zig and powered by JavaScriptCore under the hood, dramatically reducing startup times and memory usage.
|
||||
|
||||
```bash
|
||||
npm install -D bun-framework-next
|
||||
bun bun --use next
|
||||
bun
|
||||
bun run index.tsx # TS and JSX supported out of the box
|
||||
```
|
||||
|
||||
Here are some features of Next.js that **aren't supported** yet:
|
||||
|
||||
- `getStaticPaths`
|
||||
- `fetch` inside of `getStaticProps` or `getServerSideProps`
|
||||
- locales, zones, `assetPrefix` (workaround: change `--origin \"http://localhsot:3000/assetPrefixInhere\"`)
|
||||
- `next/image` - `<Image />` component
|
||||
|
||||
Currently, any time you import new dependencies from `node_modules`, you will need to re-run `bun bun --use next`. This will eventually be automatic.
|
||||
|
||||
## Using Bun without a framework or with Create React App
|
||||
|
||||
In your project folder root (where `package.json` is):
|
||||
The `bun` command-line tool also implements a test runner, script runner, and Node.js-compatible package manager. Instead of 1,000 node_modules for development, you only need `bun`. Bun's built-in tools are significantly faster than existing options and usable in existing Node.js projects with little to no changes.
|
||||
|
||||
```bash
|
||||
bun bun ./entry-point-1.js ./entry-point-2.jsx
|
||||
bun dev ./entry-point-1.js ./entry-point-2.jsx --origin https://localhost:3000
|
||||
bun test # run tests
|
||||
bun run start # run the `start` script in `package.json`
|
||||
bun install <pkg> # install a package
|
||||
bunx cowsay 'Hello, world!' # execute a package
|
||||
```
|
||||
|
||||
By default, `bun dev` will look for any HTML files in the `public` directory and serve that. For browsers navigating to the page, the `.html` file extension is optional in the URL, and `index.html` will automatically rewrite for the directory.
|
||||
## Install
|
||||
|
||||
Here are examples of routing from `public/` and how they're matched:
|
||||
| File Path | Dev Server URL |
|
||||
| --------- | ------------- |
|
||||
| public/dir/index.html | /dir |
|
||||
| public/index.html | / |
|
||||
| public/hi.html | /hi |
|
||||
| public/file.html | /file |
|
||||
| public/font/Inter.woff2 | /font/Inter.woff2 |
|
||||
Bun supports Linux (x64 & arm64) and macOS (x64 & Apple Silicon).
|
||||
|
||||
For **Create React App** users, note that Bun does not transpile HTML yet, so `%PUBLIC_URL%` will need to be replaced with '/'`.
|
||||
> **Linux users** — Kernel version 5.6 or higher is strongly recommended, but the minimum is 5.1.
|
||||
>
|
||||
> **Windows users** — Bun does not currently provide a native Windows build. We're working on this; progress can be tracked at [this issue](https://github.com/oven-sh/bun/issues/43). In the meantime, use one of the installation methods below for Windows Subsystem for Linux.
|
||||
|
||||
From there, Bun relies on the filesystem for mapping dev server paths to source files. All URL paths are relative to the project root (where `package.json` is).
|
||||
```sh
|
||||
# with install script (recommended)
|
||||
curl -fsSL https://bun.sh/install | bash
|
||||
|
||||
Here are examples of routing source code file paths:
|
||||
# with npm
|
||||
npm install -g bun
|
||||
|
||||
| File Path (relative to cwd) | Dev Server URL |
|
||||
| --------------------------- | -------------------------- |
|
||||
| src/components/Button.tsx | /src/components/Button.tsx |
|
||||
| src/index.tsx | /src/index.tsx |
|
||||
| pages/index.js | /pages/index.js |
|
||||
# with Homebrew
|
||||
brew tap oven-sh/bun
|
||||
brew install bun
|
||||
|
||||
You can override the public directory by passing `--public-dir="path-to-folder"`.
|
||||
|
||||
If no directory is specified and `./public/` doesn't exist, Bun will try `./static/`. If `./static/` does not exist, but won't serve from a public directory. If you pass `--public-dir=./` Bun will serve from the current directory, but it will check the current directory last instead of first.
|
||||
|
||||
## Using Tailwind with Bun
|
||||
|
||||
[Tailwind](https://tailwindcss.com/) is a popular CSS utility framework. Currently, the easiest way to use Tailwind with Bun is through Tailwind's CLI. That means running both `bun` and `tailwind`, and importing the file `tailwind`'s CLI outputs.
|
||||
|
||||
Tailwind's docs talk more about [Tailwind's CLI usage](https://tailwindcss.com/docs/installation#watching-for-changes), but the gist is you'll want to run this:
|
||||
|
||||
```bash
|
||||
npx tailwindcss -i ./src/tailwind.css -o ./dist/tailwind.css --watch
|
||||
# with Docker
|
||||
docker pull oven/bun
|
||||
docker run --rm --init --ulimit memlock=-1:-1 oven/bun
|
||||
```
|
||||
|
||||
From there, make sure to import the `dist/tailwind.css` file (or what you chose as the output).
|
||||
### Upgrade
|
||||
|
||||
## Things that don't work yet
|
||||
To upgrade to the latest version of Bun, run:
|
||||
|
||||
Bun is a project with incredibly large scope, and it's early days.
|
||||
|
||||
| Feature | In |
|
||||
| ---------------------------------------------------------------------------------------------------------------------- | -------------- |
|
||||
| Symlinks | Resolver |
|
||||
| [Finish Fast Refresh](https://github.com/Jarred-Sumner/bun/issues/18) | JSX Transpiler |
|
||||
| Source Maps | JavaScript |
|
||||
| Source Maps | CSS |
|
||||
| [Private Class Fields](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_class_fields) | JS Transpiler |
|
||||
| [Import Assertions](https://github.com/tc39/proposal-import-assertions) | JS Transpiler |
|
||||
| [`extends`](https://www.typescriptlang.org/tsconfig#extends) in tsconfig.json | TS Transpiler |
|
||||
| [jsx](https://www.typescriptlang.org/tsconfig)\* in tsconfig.json | TS Transpiler |
|
||||
| [TypeScript Decorators](https://www.typescriptlang.org/docs/handbook/decorators.html) | TS Transpiler |
|
||||
| `@jsxPragma` comments | JS Transpiler |
|
||||
| JSX source file name | JS Transpiler |
|
||||
| Sharing `.bun` files | Bun |
|
||||
| [Finish fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) | Bun.js |
|
||||
| [setTimeout](https://developer.mozilla.org/en-US/docs/Web/API/setTimeout) | Bun.js |
|
||||
| `bun run` command | Bun.js |
|
||||
|
||||
<sup>JS Transpiler == JavaScript Transpiler</sup><br/>
|
||||
<sup>TS Transpiler == TypeScript Transpiler</sup><br/>
|
||||
<sup>Bun.js == Bun's JavaScriptCore integration that executes JavaScript. Similar to how Node.js & Deno embed V8.</sup><br/>
|
||||
|
||||
### Limitations & intended usage
|
||||
|
||||
Bun is great for building websites & webapps. For libraries, consider using Rollup or esbuild instead. Bun currently doesn't minify code and Bun's dead code elimination doesn't look beyond the current file.
|
||||
|
||||
Bun is focused on:
|
||||
|
||||
- Development, not production
|
||||
- Compatibility with existing frameworks & tooling
|
||||
|
||||
Ideally, most projects can use Bun with their existing tooling while making few changes to their codebase. That means using Bun in development, and continuing to use Webpack, esbuild, or another bundler in production. Using two bundlers might sound strange at first, but after all the production-only AST transforms, minification, and special development/production-only imported files...it's not far from the status quo.
|
||||
|
||||
# Configuration
|
||||
|
||||
### Loaders
|
||||
|
||||
A loader determines how to map imports & file extensions to transforms and output.
|
||||
|
||||
Currently, Bun implements the following loaders:
|
||||
|
||||
| Input | Loader | Output |
|
||||
| ----- | ----------------------------- | ------ |
|
||||
| .js | JSX + JavaScript | .js |
|
||||
| .jsx | JSX + JavaScript | .js |
|
||||
| .ts | TypeScript + JavaScript | .js |
|
||||
| .tsx | TypeScript + JSX + JavaScript | .js |
|
||||
| .mjs | JavaScript | .js |
|
||||
| .css | CSS | .css |
|
||||
| .env | Env | N/A |
|
||||
| .\* | file | string |
|
||||
|
||||
Everything else is treated as `file`. `file` replaces the import with a URL (or a path).
|
||||
|
||||
You can configure which loaders map to which extensions by passing `--loaders` to `bun`. For example:
|
||||
|
||||
```
|
||||
bun --loader=.js:js
|
||||
```sh
|
||||
bun upgrade
|
||||
```
|
||||
|
||||
This will disable JSX transforms for `.js` files.
|
||||
Bun automatically releases a canary build on every commit to `main`. To upgrade to the latest canary build, run:
|
||||
|
||||
#### CSS in JS
|
||||
|
||||
When importing CSS in JavaScript-like loaders, CSS is treated special.
|
||||
|
||||
By default, Bun will transform a statement like this:
|
||||
|
||||
```js
|
||||
import "../styles/global.css";
|
||||
```sh
|
||||
bun upgrade --canary
|
||||
```
|
||||
|
||||
##### When `platform` is `browser`:
|
||||
[View canary build](https://github.com/oven-sh/bun/releases/tag/canary)
|
||||
|
||||
```js
|
||||
globalThis.document?.dispatchEvent(
|
||||
new CustomEvent("onimportcss", {
|
||||
detail: "http://localhost:3000/styles/globals.css",
|
||||
})
|
||||
);
|
||||
```
|
||||
## Quick links
|
||||
|
||||
An event handler for turning that into a `<link>` is automatically registered when HMR is enabled. That event handler can be turned off either in a framework's `package.json` or by setting `globalThis["Bun_disableCSSImports"] = true;` in client-side code. Additionally, you can get a list of every .css file imported this way via `globalThis["__BUN"].allImportedStyles`.
|
||||
- Intro
|
||||
- [What is Bun?](https://bun.sh/docs/index)
|
||||
- [Installation](https://bun.sh/docs/installation)
|
||||
- [Quickstart](https://bun.sh/docs/quickstart)
|
||||
- CLI
|
||||
- [`bun run`](https://bun.sh/docs/cli/run)
|
||||
- [`bun install`](https://bun.sh/docs/cli/install)
|
||||
- [`bun test`](https://bun.sh/docs/cli/test)
|
||||
- [`bun create`](https://bun.sh/docs/cli/create)
|
||||
- [`bunx`](https://bun.sh/docs/cli/bunx)
|
||||
- Runtime
|
||||
- [Runtime](https://bun.sh/docs/runtime/index)
|
||||
- [Module resolution](https://bun.sh/docs/runtime/modules)
|
||||
- [Hot & live reloading](https://bun.sh/docs/runtime/hot)
|
||||
- [Plugins](https://bun.sh/docs/bundler/plugins)
|
||||
- Ecosystem
|
||||
- [Node.js](https://bun.sh/docs/ecosystem/nodejs)
|
||||
- [TypeScript](https://bun.sh/docs/ecosystem/typescript)
|
||||
- [React](https://bun.sh/docs/ecosystem/react)
|
||||
- [Elysia](https://bun.sh/docs/ecosystem/elysia)
|
||||
- [Hono](https://bun.sh/docs/ecosystem/hono)
|
||||
- [Express](https://bun.sh/docs/ecosystem/express)
|
||||
- [awesome-bun](https://github.com/apvarun/awesome-bun)
|
||||
- API
|
||||
- [HTTP](https://bun.sh/docs/api/http)
|
||||
- [WebSockets](https://bun.sh/docs/api/websockets)
|
||||
- [TCP Sockets](https://bun.sh/docs/api/tcp)
|
||||
- [File I/O](https://bun.sh/docs/api/file-io)
|
||||
- [SQLite](https://bun.sh/docs/api/sqlite)
|
||||
- [FileSystemRouter](https://bun.sh/docs/api/file-system-router)
|
||||
- [Globals](https://bun.sh/docs/api/globals)
|
||||
- [Spawn](https://bun.sh/docs/api/spawn)
|
||||
- [Transpiler](https://bun.sh/docs/api/transpiler)
|
||||
- [Console](https://bun.sh/docs/api/console)
|
||||
- [FFI](https://bun.sh/docs/api/ffi)
|
||||
- [HTMLRewriter](https://bun.sh/docs/api/html-rewriter)
|
||||
- [Testing](https://bun.sh/docs/api/test)
|
||||
- [Utils](https://bun.sh/docs/api/utils)
|
||||
- [DNS](https://bun.sh/docs/api/dns)
|
||||
- [Node-API](https://bun.sh/docs/api/node-api)
|
||||
|
||||
##### When `platform` is `bun`:
|
||||
## Contributing
|
||||
|
||||
```js
|
||||
//@import url("http://localhost:3000/styles/globals.css");
|
||||
```
|
||||
Refer to the [Project > Development](https://bun.sh/docs/project/development) guide to start contributing to Bun.
|
||||
|
||||
Additionally, Bun exposes an API for SSR/SSG that returns a flat list of URLs to css files imported. That function is `Bun.getImportedStyles()`.
|
||||
## License
|
||||
|
||||
```ts
|
||||
addEventListener("fetch", async (event: FetchEvent) => {
|
||||
var route = Bun.match(event);
|
||||
const App = await import("pages/_app");
|
||||
|
||||
// This returns all .css files that were imported in the line above.
|
||||
// It's recursive, so any file that imports a CSS file will be included.
|
||||
const appStylesheets = Bun.getImportedStyles();
|
||||
|
||||
// ...rest of code
|
||||
});
|
||||
```
|
||||
|
||||
This is useful for preventing flash of unstyled content.
|
||||
|
||||
### CSS Loader
|
||||
|
||||
Bun bundles `.css` files imported via `@import` into a single file. It doesn't autoprefix or minify CSS today. Multiple `.css` files imported in one JavaScript file will _not_ be bundled into one file. You'll have to import those from a `.css` file.
|
||||
|
||||
This input:
|
||||
|
||||
```css
|
||||
@import url("./hi.css");
|
||||
@import url("./hello.css");
|
||||
@import url("./yo.css");
|
||||
```
|
||||
|
||||
Becomes:
|
||||
|
||||
```css
|
||||
/* hi.css */
|
||||
/* ...contents of hi.css */
|
||||
/* hello.css */
|
||||
/* ...contents of hello.css */
|
||||
/* yo.css */
|
||||
/* ...contents of yo.css */
|
||||
```
|
||||
|
||||
#### CSS runtime
|
||||
|
||||
To support hot CSS reloading, Bun inserts `@supports` annotations into CSS that tag which files a stylesheet is composed of. Browsers ignore this, so it doesn't impact styles.
|
||||
|
||||
By default, Bun's runtime code automatically listens to `onimportcss` and will insert the `event.detail` into a `<link rel="stylesheet" href={${event.detail}}>` if there is no existing `link` tag with that stylesheet. That's how Bun's equivalent of `style-loader` works.
|
||||
|
||||
### Frameworks
|
||||
|
||||
Frameworks preconfigure Bun to enable developers to use Bun with their existing tooling.
|
||||
|
||||
Frameworks are configured via the `framework` object in the `package.json` of the framework (not in the application's `package.json`):
|
||||
|
||||
Here is an example:
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "bun-framework-next",
|
||||
"version": "0.0.0-18",
|
||||
"description": "",
|
||||
"framework": {
|
||||
"displayName": "Next.js",
|
||||
"static": "public",
|
||||
"assetPrefix": "_next/",
|
||||
"router": {
|
||||
"dir": ["pages", "src/pages"],
|
||||
"extensions": [".js", ".ts", ".tsx", ".jsx"]
|
||||
},
|
||||
"css": "onimportcss",
|
||||
"development": {
|
||||
"client": "client.development.tsx",
|
||||
"fallback": "fallback.development.tsx",
|
||||
"server": "server.development.tsx",
|
||||
"css": "onimportcss",
|
||||
"define": {
|
||||
"client": {
|
||||
".env": "NEXT_PUBLIC_",
|
||||
"defaults": {
|
||||
"process.env.__NEXT_TRAILING_SLASH": "false",
|
||||
"process.env.NODE_ENV": "\"development\"",
|
||||
"process.env.__NEXT_ROUTER_BASEPATH": "''",
|
||||
"process.env.__NEXT_SCROLL_RESTORATION": "false",
|
||||
"process.env.__NEXT_I18N_SUPPORT": "false",
|
||||
"process.env.__NEXT_HAS_REWRITES": "false",
|
||||
"process.env.__NEXT_ANALYTICS_ID": "null",
|
||||
"process.env.__NEXT_OPTIMIZE_CSS": "false",
|
||||
"process.env.__NEXT_CROSS_ORIGIN": "''",
|
||||
"process.env.__NEXT_STRICT_MODE": "false",
|
||||
"process.env.__NEXT_IMAGE_OPTS": "null"
|
||||
}
|
||||
},
|
||||
"server": {
|
||||
".env": "NEXT_",
|
||||
"defaults": {
|
||||
"process.env.__NEXT_TRAILING_SLASH": "false",
|
||||
"process.env.__NEXT_OPTIMIZE_FONTS": "false",
|
||||
"process.env.NODE_ENV": "\"development\"",
|
||||
"process.env.__NEXT_OPTIMIZE_IMAGES": "false",
|
||||
"process.env.__NEXT_OPTIMIZE_CSS": "false",
|
||||
"process.env.__NEXT_ROUTER_BASEPATH": "''",
|
||||
"process.env.__NEXT_SCROLL_RESTORATION": "false",
|
||||
"process.env.__NEXT_I18N_SUPPORT": "false",
|
||||
"process.env.__NEXT_HAS_REWRITES": "false",
|
||||
"process.env.__NEXT_ANALYTICS_ID": "null",
|
||||
"process.env.__NEXT_CROSS_ORIGIN": "''",
|
||||
"process.env.__NEXT_STRICT_MODE": "false",
|
||||
"process.env.__NEXT_IMAGE_OPTS": "null",
|
||||
"global": "globalThis",
|
||||
"window": "undefined"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Here are type definitions:
|
||||
|
||||
```ts
|
||||
type Framework = Environment & {
|
||||
// This changes what's printed in the console on load
|
||||
displayName?: string;
|
||||
|
||||
// This allows a prefix to be added (and ignored) to requests.
|
||||
// Useful for integrating an existing framework that expects internal routes to have a prefix
|
||||
// e.g. "_next"
|
||||
assetPrefix?: string;
|
||||
|
||||
development?: Environment;
|
||||
production?: Environment;
|
||||
|
||||
// The directory used for serving unmodified assets like fonts and images
|
||||
// Defaults to "public" if exists, else "static", else disabled.
|
||||
static?: string;
|
||||
|
||||
// "onimportcss" disables the automatic "onimportcss" feature
|
||||
// If the framework does routing, you may want to handle CSS manually
|
||||
// "facade" removes CSS imports from JavaScript files,
|
||||
// and replaces an imported object with a proxy that mimics CSS module support without doing any class renaming.
|
||||
css?: "onimportcss" | "facade";
|
||||
|
||||
// Bun's filesystem router
|
||||
router?: Router;
|
||||
};
|
||||
|
||||
type Define = {
|
||||
// By passing ".env", Bun will automatically load .env.local, .env.development, and .env if exists in the project root
|
||||
// (in addition to the processes' environment variables)
|
||||
// When "*", all environment variables will be automatically injected into the JavaScript loader
|
||||
// When a string like "NEXT_PUBLIC_", only environment variables starting with that prefix will be injected
|
||||
|
||||
".env": string | "*";
|
||||
|
||||
// These environment variables will be injected into the JavaScript loader
|
||||
// These are the equivalent of Webpack's resolve.alias and esbuild's --define.
|
||||
// Values are parsed as JSON, so they must be valid JSON. The only exception is '' is a valid string, to simplify writing stringified JSON in JSON.
|
||||
// If not set, `process.env.NODE_ENV` will be transformed into "development".
|
||||
defaults: Record<string, string>;
|
||||
};
|
||||
|
||||
type Environment = {
|
||||
// This is a wrapper for the client-side entry point for a route.
|
||||
// This allows frameworks to run initialization code on pages.
|
||||
client: string;
|
||||
// This is a wrapper for the server-side entry point for a route.
|
||||
// This allows frameworks to run initialization code on pages.
|
||||
server: string;
|
||||
// This runs when "server" code fails to load due to an exception.
|
||||
fallback: string;
|
||||
|
||||
// This is how environment variables and .env is configured.
|
||||
define?: Define;
|
||||
};
|
||||
|
||||
// Bun's filesystem router
|
||||
// Currently, Bun supports pages by either an absolute match or a parameter match.
|
||||
// pages/index.tsx will be executed on navigation to "/" and "/index"
|
||||
// pages/posts/[id].tsx will be executed on navigation to "/posts/123"
|
||||
// Routes & parameters are automatically passed to `fallback` and `server`.
|
||||
type Router = {
|
||||
// This determines the folder to look for pages
|
||||
dir: string[];
|
||||
|
||||
// These are the allowed file extensions for pages.
|
||||
extensions?: string[];
|
||||
};
|
||||
```
|
||||
|
||||
To use a framework, you pass `bun bun --use package-name`.
|
||||
|
||||
Your framework's package.json `name` should start with `bun-framework-`. This is so that people can type something like `bun bun --use next` and it will check `bun-framework-next` first. This is similar to how Babel plugins tend to start with `babel-plugin-`.
|
||||
|
||||
For developing frameworks, you can also do `bun bun --use ./relative-path-to-framework`.
|
||||
|
||||
If you're interested in adding a framework integration, please reach out. There's a lot here and it's not entirely documented yet.
|
||||
|
||||
# Credits
|
||||
|
||||
- While written in Zig instead of Go, Bun's JS transpiler, CSS lexer, and node module resolver source code is based off of @evanw's esbuild project. @evanw did a fantastic job with esbuild.
|
||||
|
||||
# License
|
||||
|
||||
Bun itself is MIT-licensed.
|
||||
|
||||
However, JavaScriptCore (and WebKit) is LGPL-2 and Bun statically links it.
|
||||
|
||||
Per LGPL2:
|
||||
|
||||
> (1) If you statically link against an LGPL'd library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application.
|
||||
|
||||
You can find the patched version of WebKit used by Bun here: https://github.com/jarred-sumner/webkit. If you would like to relink Bun with changes:
|
||||
|
||||
- `git submodule update --init --recursive`
|
||||
- `make jsc`
|
||||
- `zig build`
|
||||
|
||||
This compiles JavaScriptCore, compiles Bun's `.cpp` bindings for JavaScriptCore (which are the object files using JavaScriptCore) and outputs a new `bun` binary with your changes.
|
||||
|
||||
To successfully run `zig build`, you will need to install a patched version of Zig available here: https://github.com/jarred-sumner/zig/tree/jarred/zig-sloppy.
|
||||
|
||||
Bun also statically links these libraries:
|
||||
|
||||
- `libicu`, which can be found here: https://github.com/unicode-org/icu/blob/main/icu4c/LICENSE
|
||||
- [`picohttp`](https://github.com/h2o/picohttpparser), which is dual-licensed under the Perl License or the MIT License
|
||||
- [`mimalloc`](https://github.com/microsoft/mimalloc), which is MIT licensed
|
||||
|
||||
For compatibiltiy reasons, these NPM packages are embedded into Bun's binary and injected if imported.
|
||||
|
||||
- [`assert`](https://npmjs.com/package/assert) (MIT license)
|
||||
- [`browserify-zlib`](https://npmjs.com/package/browserify-zlib) (MIT license)
|
||||
- [`buffer`](https://npmjs.com/package/buffer) (MIT license)
|
||||
- [`constants-browserify`](https://npmjs.com/package/constants-browserify) (MIT license)
|
||||
- [`crypto-browserify`](https://npmjs.com/package/crypto-browserify) (MIT license)
|
||||
- [`domain-browser`](https://npmjs.com/package/domain-browser) (MIT license)
|
||||
- [`events`](https://npmjs.com/package/events) (MIT license)
|
||||
- [`https-browserify`](https://npmjs.com/package/https-browserify) (MIT license)
|
||||
- [`os-browserify`](https://npmjs.com/package/os-browserify) (MIT license)
|
||||
- [`path-browserify`](https://npmjs.com/package/path-browserify) (MIT license)
|
||||
- [`process`](https://npmjs.com/package/process) (MIT license)
|
||||
- [`punycode`](https://npmjs.com/package/punycode) (MIT license)
|
||||
- [`querystring-es3`](https://npmjs.com/package/querystring-es3) (MIT license)
|
||||
- [`stream-browserify`](https://npmjs.com/package/stream-browserify) (MIT license)
|
||||
- [`stream-http`](https://npmjs.com/package/stream-http) (MIT license)
|
||||
- [`string_decoder`](https://npmjs.com/package/string_decoder) (MIT license)
|
||||
- [`timers-browserify`](https://npmjs.com/package/timers-browserify) (MIT license)
|
||||
- [`tty-browserify`](https://npmjs.com/package/tty-browserify) (MIT license)
|
||||
- [`url`](https://npmjs.com/package/url) (MIT license)
|
||||
- [`util`](https://npmjs.com/package/util) (MIT license)
|
||||
- [`vm-browserify`](https://npmjs.com/package/vm-browserify) (MIT license)
|
||||
|
||||
# Developing Bun
|
||||
|
||||
Estimated: 30-90 minutes :(
|
||||
|
||||
Compile Zig:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/jarred-sumner/zig
|
||||
cd zig
|
||||
git checkout jarred/zig-sloppy-with-small-structs
|
||||
cmake . -DCMAKE_PREFIX_PATH=$(brew --prefix llvm) -DZIG_STATIC_LLVM=ON -DCMAKE_BUILD_TYPE=Release && make -j 16
|
||||
```
|
||||
|
||||
Note that `brew install zig` won't work. Bun uses a build of Zig with a couple patches.
|
||||
|
||||
You'll want to make sure `zig` is in `$PATH`. The `zig` binary wil be in the same folder as the newly-cloned `zig` repo. If you use fish, you can run `fish_add_path (pwd)`.
|
||||
|
||||
In `bun`:
|
||||
|
||||
```bash
|
||||
git submodule update --init --recursive --progress --depth=1
|
||||
make vendor
|
||||
zig build headers
|
||||
make jsc-bindings-mac
|
||||
zig build -Drelease-fast
|
||||
```
|
||||
Refer to the [Project > License](https://bun.sh/docs/project/licensing) page for information about Bun's licensing.
|
||||
|
||||
3
bench/.env
Normal file
3
bench/.env
Normal file
@@ -0,0 +1,3 @@
|
||||
BUN=bun
|
||||
DENO=deno
|
||||
NODE=node
|
||||
2
bench/.gitignore
vendored
Normal file
2
bench/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
ffi/src/target
|
||||
ffi/src/*.node
|
||||
13
bench/README.md
Normal file
13
bench/README.md
Normal file
@@ -0,0 +1,13 @@
|
||||
```bash
|
||||
npm install
|
||||
|
||||
bun run ffi
|
||||
bun run log
|
||||
bun run gzip
|
||||
bun run async
|
||||
bun run sqlite
|
||||
|
||||
# to use custom version of bun/deno/node binary
|
||||
BUN=path/to/bun bun run ffi
|
||||
# or edit .env file
|
||||
```
|
||||
3
bench/async/.env
Normal file
3
bench/async/.env
Normal file
@@ -0,0 +1,3 @@
|
||||
BUN=bun
|
||||
DENO=deno
|
||||
NODE=node
|
||||
7
bench/async/bun.js
Normal file
7
bench/async/bun.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import { run, bench } from "mitata";
|
||||
|
||||
bench("sync", () => {});
|
||||
bench("async", async () => {});
|
||||
bench("await 1", async () => await 1);
|
||||
|
||||
await run();
|
||||
7
bench/async/deno.js
Normal file
7
bench/async/deno.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import { run, bench } from "../node_modules/mitata/src/cli.mjs";
|
||||
|
||||
bench("sync", () => {});
|
||||
bench("async", async () => {});
|
||||
bench("await 1", async () => await 1);
|
||||
|
||||
await run();
|
||||
7
bench/async/node.mjs
Normal file
7
bench/async/node.mjs
Normal file
@@ -0,0 +1,7 @@
|
||||
import { run, bench } from "mitata";
|
||||
|
||||
bench("sync", () => {});
|
||||
bench("async", async () => {});
|
||||
bench("await 1", async () => await 1);
|
||||
|
||||
await run();
|
||||
11
bench/async/package.json
Normal file
11
bench/async/package.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"name": "bench",
|
||||
"scripts": {
|
||||
"deps": "exit 0",
|
||||
"build": "exit 0",
|
||||
"bench:bun": "$BUN bun.js",
|
||||
"bench:node": "$NODE node.mjs",
|
||||
"bench:deno": "$DENO run -A --unstable deno.js",
|
||||
"bench": "bun run bench:bun && bun run bench:node && bun run bench:deno"
|
||||
}
|
||||
}
|
||||
BIN
bench/bun.lockb
Executable file
BIN
bench/bun.lockb
Executable file
Binary file not shown.
171
bench/bundle/.gitignore
vendored
Normal file
171
bench/bundle/.gitignore
vendored
Normal file
@@ -0,0 +1,171 @@
|
||||
# Based on https://raw.githubusercontent.com/github/gitignore/main/Node.gitignore
|
||||
|
||||
# Logs
|
||||
|
||||
logs
|
||||
_.log
|
||||
npm-debug.log_
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
|
||||
report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
|
||||
|
||||
# Runtime data
|
||||
|
||||
pids
|
||||
_.pid
|
||||
_.seed
|
||||
\*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
|
||||
coverage
|
||||
\*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
|
||||
\*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
|
||||
.eslintcache
|
||||
|
||||
# Optional stylelint cache
|
||||
|
||||
.stylelintcache
|
||||
|
||||
# Microbundle cache
|
||||
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
|
||||
\*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variable files
|
||||
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.local
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
|
||||
.cache/
|
||||
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
|
||||
.vuepress/dist
|
||||
|
||||
# vuepress v2.x temp and cache directory
|
||||
|
||||
.temp
|
||||
.cache
|
||||
|
||||
# Docusaurus cache and generated files
|
||||
|
||||
.docusaurus
|
||||
|
||||
# Serverless directories
|
||||
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.\*
|
||||
|
||||
esbuild
|
||||
40
bench/bundle/README.md
Normal file
40
bench/bundle/README.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Bundler benchmark
|
||||
|
||||
This is a performance benchmark of the following bundlers:
|
||||
|
||||
- Bun
|
||||
- esbuild
|
||||
- Parcel 2
|
||||
- Rollup + Terser
|
||||
- Webpack
|
||||
|
||||
It is an exact copy of [`esbuild`'s benchmark](https://github.com/evanw/esbuild/blob/main/Makefile), aside from the fact that Bun [has been added](https://github.com/colinhacks/esbuild/commit/1b928b7981aa7edfadf77fcf8931bb8d6f38cd96). The benchmark bundles 10 copies of the large [three.js](https://threejs.org/), with minification and source maps enabled.
|
||||
|
||||
To run the benchmark:
|
||||
|
||||
```sh
|
||||
$ chmod +x run-bench.sh
|
||||
$ ./run-bench.sh
|
||||
```
|
||||
|
||||
Various output will be written to the console by each bundler. Scan through the results for lines that look like this underneath each bundler output:
|
||||
|
||||
```sh
|
||||
real <number>
|
||||
user <number>
|
||||
sys <number>
|
||||
```
|
||||
|
||||
These lines are generated by the `time` command which is used to benchmark each build.
|
||||
|
||||
## Results
|
||||
|
||||
The `real` results, as run on a 16-inch M1 Macbook Pro:
|
||||
|
||||
| Bundler | Time |
|
||||
| ------- | ------ |
|
||||
| Bun | 0.17s |
|
||||
| esbuild | 0.33s |
|
||||
| Rollup | 18.82s |
|
||||
| Webpack | 26.21 |
|
||||
| Parcel | 17.95s |
|
||||
BIN
bench/bundle/bun.lockb
Executable file
BIN
bench/bundle/bun.lockb
Executable file
Binary file not shown.
1
bench/bundle/index.ts
Normal file
1
bench/bundle/index.ts
Normal file
@@ -0,0 +1 @@
|
||||
console.log("Hello via Bun!");
|
||||
8
bench/bundle/package.json
Normal file
8
bench/bundle/package.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "bundle",
|
||||
"module": "index.ts",
|
||||
"type": "module",
|
||||
"devDependencies": {
|
||||
"bun-types": "^0.5.0"
|
||||
}
|
||||
}
|
||||
3
bench/bundle/run-bench.sh
Executable file
3
bench/bundle/run-bench.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
git clone git@github.com:colinhacks/esbuild.git
|
||||
cd esbuild
|
||||
make bench-three
|
||||
20
bench/bundle/tsconfig.json
Normal file
20
bench/bundle/tsconfig.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"ESNext"
|
||||
],
|
||||
"module": "esnext",
|
||||
"target": "esnext",
|
||||
"moduleResolution": "bundler",
|
||||
"strict": true,
|
||||
"downlevelIteration": true,
|
||||
"skipLibCheck": true,
|
||||
"jsx": "react-jsx",
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"allowJs": true,
|
||||
"types": [
|
||||
"bun-types" // add Bun global
|
||||
]
|
||||
}
|
||||
}
|
||||
5
bench/cat/bun.js
Normal file
5
bench/cat/bun.js
Normal file
@@ -0,0 +1,5 @@
|
||||
import { resolve } from "path";
|
||||
const { write, stdout, file } = Bun;
|
||||
const input = resolve(process.argv[process.argv.length - 1]);
|
||||
|
||||
await write(stdout, file(input));
|
||||
9
bench/cat/cat.mjs
Normal file
9
bench/cat/cat.mjs
Normal file
@@ -0,0 +1,9 @@
|
||||
// works in both bun & node
|
||||
import { readFileSync } from "node:fs";
|
||||
const count = parseInt(process.env.ITERATIONS || "1", 10) || 1;
|
||||
|
||||
const arg = process.argv.slice(1);
|
||||
|
||||
// TODO: remove Buffer.from() when readFileSync() returns Buffer
|
||||
|
||||
for (let i = 0; i < count; i++) console.log(arg.map(file => Buffer.from(readFileSync(file, "utf8"))).join(""));
|
||||
6
bench/cat/node.js
Normal file
6
bench/cat/node.js
Normal file
@@ -0,0 +1,6 @@
|
||||
const fs = require("fs");
|
||||
const path = require("path");
|
||||
|
||||
const input = path.resolve(process.argv[process.argv.length - 1]);
|
||||
|
||||
fs.createReadStream(input).pipe(process.stdout);
|
||||
5
bench/copyfile/bun.js
Normal file
5
bench/copyfile/bun.js
Normal file
@@ -0,0 +1,5 @@
|
||||
import path from "path";
|
||||
const input = path.resolve(process.argv[process.argv.length - 2]);
|
||||
const output = path.resolve(process.argv[process.argv.length - 1]);
|
||||
|
||||
await Bun.write(Bun.file(output), Bun.file(input));
|
||||
4
bench/copyfile/node-streams.js
Normal file
4
bench/copyfile/node-streams.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { createReadStream, createWriteStream } from "node:fs";
|
||||
|
||||
const arg = process.argv.slice(2);
|
||||
createReadStream(arg[0]).pipe(createWriteStream(arg[1]));
|
||||
34
bench/copyfile/node.mitata.mjs
Normal file
34
bench/copyfile/node.mitata.mjs
Normal file
@@ -0,0 +1,34 @@
|
||||
import { copyFileSync, writeFileSync, readFileSync, statSync } from "node:fs";
|
||||
import { bench, run } from "mitata";
|
||||
|
||||
function runner(ready) {
|
||||
for (let size of [1, 10, 100, 1000, 10000, 100000, 1000000, 10000000]) {
|
||||
const rand = new Int32Array(size);
|
||||
for (let i = 0; i < size; i++) {
|
||||
rand[i] = (Math.random() * 1024 * 1024) | 0;
|
||||
}
|
||||
const dest = `/tmp/fs-test-copy-file-${((Math.random() * 10000000 + 100) | 0).toString(32)}`;
|
||||
const src = `/tmp/fs-test-copy-file-${((Math.random() * 10000000 + 100) | 0).toString(32)}`;
|
||||
writeFileSync(src, Buffer.from(rand.buffer), { encoding: "buffer" });
|
||||
const { size: fileSize } = statSync(src);
|
||||
if (fileSize !== rand.byteLength) {
|
||||
throw new Error("size mismatch");
|
||||
}
|
||||
ready(src, dest, new Uint8Array(rand.buffer));
|
||||
}
|
||||
}
|
||||
runner((src, dest, rand) =>
|
||||
bench(`copyFileSync(${rand.buffer.byteLength} bytes)`, () => {
|
||||
copyFileSync(src, dest);
|
||||
// const output = readFileSync(dest).buffer;
|
||||
|
||||
// for (let i = 0; i < output.length; i++) {
|
||||
// if (output[i] !== rand[i]) {
|
||||
// throw new Error(
|
||||
// "Files are not equal" + " " + output[i] + " " + rand[i] + " " + i
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
}),
|
||||
);
|
||||
await run();
|
||||
5
bench/copyfile/node.mjs
Normal file
5
bench/copyfile/node.mjs
Normal file
@@ -0,0 +1,5 @@
|
||||
import { copyFileSync } from "node:fs";
|
||||
|
||||
const arg = process.argv.slice(2);
|
||||
|
||||
copyFileSync(arg[0], arg[1]);
|
||||
31
bench/emitter/implementations.mjs
Normal file
31
bench/emitter/implementations.mjs
Normal file
@@ -0,0 +1,31 @@
|
||||
import EventEmitter3 from "eventemitter3";
|
||||
import { group } from "mitata";
|
||||
import EventEmitterNative from "node:events";
|
||||
|
||||
export const implementations = [
|
||||
{
|
||||
EventEmitter: EventEmitterNative,
|
||||
name: process.isBun ? (EventEmitterNative.init ? "bun" : "C++") : "node:events",
|
||||
monkey: true,
|
||||
},
|
||||
// { EventEmitter: EventEmitter3, name: "EventEmitter3" },
|
||||
].filter(Boolean);
|
||||
|
||||
for (const impl of implementations) {
|
||||
impl.EventEmitter?.setMaxListeners?.(Infinity);
|
||||
}
|
||||
|
||||
export function groupForEmitter(name, cb) {
|
||||
if (implementations.length === 1) {
|
||||
return cb({
|
||||
...implementations[0],
|
||||
name: `${name}: ${implementations[0].name}`,
|
||||
});
|
||||
} else {
|
||||
return group(name, () => {
|
||||
for (let impl of implementations) {
|
||||
cb(impl);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
96
bench/emitter/microbench.mjs
Normal file
96
bench/emitter/microbench.mjs
Normal file
@@ -0,0 +1,96 @@
|
||||
import { bench, run } from "mitata";
|
||||
import { groupForEmitter } from "./implementations.mjs";
|
||||
|
||||
var id = 0;
|
||||
|
||||
groupForEmitter("single emit", ({ EventEmitter, name }) => {
|
||||
const emitter = new EventEmitter();
|
||||
|
||||
emitter.on("hello", event => {
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
bench(name, () => {
|
||||
emitter.emit("hello", {
|
||||
preventDefault() {
|
||||
id++;
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
groupForEmitter("on x 10_000 (handler)", ({ EventEmitter, name }) => {
|
||||
const emitter = new EventEmitter();
|
||||
|
||||
bench(name, () => {
|
||||
var cb = event => {
|
||||
event.preventDefault();
|
||||
};
|
||||
emitter.on("hey", cb);
|
||||
var called = false;
|
||||
for (let i = 0; i < 10_000; i++)
|
||||
emitter.emit("hey", {
|
||||
preventDefault() {
|
||||
id++;
|
||||
called = true;
|
||||
},
|
||||
});
|
||||
|
||||
if (!called) throw new Error("not called");
|
||||
});
|
||||
});
|
||||
|
||||
// for (let { impl: EventEmitter, name, monkey } of []) {
|
||||
// if (monkey) {
|
||||
// var monkeyEmitter = Object.assign({}, EventEmitter.prototype);
|
||||
// monkeyEmitter.on("hello", event => {
|
||||
// event.preventDefault();
|
||||
// });
|
||||
|
||||
// bench(`[monkey] ${className}.emit`, () => {
|
||||
// var called = false;
|
||||
// monkeyEmitter.emit("hello", {
|
||||
// preventDefault() {
|
||||
// id++;
|
||||
// called = true;
|
||||
// },
|
||||
// });
|
||||
|
||||
// if (!called) {
|
||||
// throw new Error("monkey failed");
|
||||
// }
|
||||
// });
|
||||
|
||||
// bench(`[monkey] ${className}.on x 10_000 (handler)`, () => {
|
||||
// var cb = () => {
|
||||
// event.preventDefault();
|
||||
// };
|
||||
// monkeyEmitter.on("hey", cb);
|
||||
// for (let i = 0; i < 10_000; i++)
|
||||
// monkey.emit("hey", {
|
||||
// preventDefault() {
|
||||
// id++;
|
||||
// },
|
||||
// });
|
||||
// monkeyEmitter.off("hey", cb);
|
||||
// });
|
||||
// }
|
||||
// }
|
||||
|
||||
// var target = new EventTarget();
|
||||
// target.addEventListener("hello", event => {});
|
||||
// bench("EventTarget.dispatch", () => {
|
||||
// target.dispatchEvent(event);
|
||||
// });
|
||||
|
||||
// var hey = new Event("hey");
|
||||
|
||||
// bench("EventTarget.on x 10_000 (handler)", () => {
|
||||
// var handler = event => {};
|
||||
// target.addEventListener("hey", handler);
|
||||
|
||||
// for (let i = 0; i < 10_000; i++) target.dispatchEvent(hey);
|
||||
// target.removeEventListener("hey", handler);
|
||||
// });
|
||||
|
||||
await run();
|
||||
40
bench/emitter/microbench_once.mjs
Normal file
40
bench/emitter/microbench_once.mjs
Normal file
@@ -0,0 +1,40 @@
|
||||
import { bench, run } from "mitata";
|
||||
import { groupForEmitter } from "./implementations.mjs";
|
||||
|
||||
var id = 0;
|
||||
|
||||
groupForEmitter("test 1", ({ EventEmitter, name }) => {
|
||||
const emitter = new EventEmitter();
|
||||
|
||||
emitter.on("hello", event => {
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
bench(name, () => {
|
||||
emitter.once("hello", event => {
|
||||
event.preventDefault();
|
||||
});
|
||||
emitter.emit("hello", {
|
||||
preventDefault() {
|
||||
id++;
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
groupForEmitter("test 2", ({ EventEmitter, name }) => {
|
||||
const emitter = new EventEmitter();
|
||||
|
||||
bench(name, () => {
|
||||
emitter.once("hello", event => {
|
||||
event.preventDefault();
|
||||
});
|
||||
emitter.emit("hello", {
|
||||
preventDefault() {
|
||||
id++;
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
await run();
|
||||
63
bench/emitter/realworld_stream.mjs
Normal file
63
bench/emitter/realworld_stream.mjs
Normal file
@@ -0,0 +1,63 @@
|
||||
import { bench, run } from "mitata";
|
||||
import { groupForEmitter } from "./implementations.mjs";
|
||||
|
||||
// Psuedo RNG is derived from https://stackoverflow.com/a/424445
|
||||
let rngState = 123456789;
|
||||
function nextInt() {
|
||||
const m = 0x80000000; // 2**31;
|
||||
const a = 1103515245;
|
||||
const c = 12345;
|
||||
rngState = (a * rngState + c) % m;
|
||||
return rngState;
|
||||
}
|
||||
function nextRange(start, end) {
|
||||
// returns in range [start, end): including start, excluding end
|
||||
// can't modulu nextInt because of weak randomness in lower bits
|
||||
const rangeSize = end - start;
|
||||
const randomUnder1 = nextInt() / 0x7fffffff; // 2**31 - 1
|
||||
return start + Math.floor(randomUnder1 * rangeSize);
|
||||
}
|
||||
|
||||
const chunks = new Array(1024).fill(null).map((_, j) => {
|
||||
const arr = new Uint8Array(1024);
|
||||
for (let i = 0; i < arr.length; i++) {
|
||||
arr[i] = nextRange(0, 256);
|
||||
}
|
||||
return arr;
|
||||
});
|
||||
|
||||
groupForEmitter("stream simulation", ({ EventEmitter, name }) => {
|
||||
bench(name, () => {
|
||||
let id = 0;
|
||||
const stream = new EventEmitter();
|
||||
|
||||
stream.on("start", res => {
|
||||
if (res.status !== 200) throw new Error("not 200");
|
||||
});
|
||||
|
||||
const recived = [];
|
||||
stream.on("data", req => {
|
||||
recived.push(req);
|
||||
});
|
||||
|
||||
stream.on("end", ev => {
|
||||
ev.preventDefault();
|
||||
});
|
||||
|
||||
// simulate a stream
|
||||
stream.emit("start", { status: 200 });
|
||||
for (let chunk of chunks) {
|
||||
stream.emit("data", chunk);
|
||||
}
|
||||
stream.emit("end", {
|
||||
preventDefault() {
|
||||
id++;
|
||||
},
|
||||
});
|
||||
|
||||
if (id !== 1) throw new Error("not implemented right");
|
||||
if (recived.length !== 1024) throw new Error("not implemented right");
|
||||
});
|
||||
});
|
||||
|
||||
await run();
|
||||
169
bench/expect-to-equal/.gitignore
vendored
Normal file
169
bench/expect-to-equal/.gitignore
vendored
Normal file
@@ -0,0 +1,169 @@
|
||||
# Based on https://raw.githubusercontent.com/github/gitignore/main/Node.gitignore
|
||||
|
||||
# Logs
|
||||
|
||||
logs
|
||||
_.log
|
||||
npm-debug.log_
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
|
||||
report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
|
||||
|
||||
# Runtime data
|
||||
|
||||
pids
|
||||
_.pid
|
||||
_.seed
|
||||
\*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
|
||||
coverage
|
||||
\*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
|
||||
\*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
|
||||
.eslintcache
|
||||
|
||||
# Optional stylelint cache
|
||||
|
||||
.stylelintcache
|
||||
|
||||
# Microbundle cache
|
||||
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
|
||||
\*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variable files
|
||||
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.local
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
|
||||
.cache/
|
||||
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
|
||||
.vuepress/dist
|
||||
|
||||
# vuepress v2.x temp and cache directory
|
||||
|
||||
.temp
|
||||
.cache
|
||||
|
||||
# Docusaurus cache and generated files
|
||||
|
||||
.docusaurus
|
||||
|
||||
# Serverless directories
|
||||
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.\*
|
||||
43
bench/expect-to-equal/README.md
Normal file
43
bench/expect-to-equal/README.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# expect-to-equal
|
||||
|
||||
To install dependencies:
|
||||
|
||||
```bash
|
||||
bun install
|
||||
```
|
||||
|
||||
To run in Bun:
|
||||
|
||||
```bash
|
||||
# so it doesn't run the vitest one
|
||||
bun wiptest expect-to-equal.test.js
|
||||
```
|
||||
|
||||
To run in Jest:
|
||||
|
||||
```bash
|
||||
# If you remove the import the performance doesn't change much
|
||||
NODE_OPTIONS="--experimental-vm-modules" ./node_modules/.bin/jest expect-to-equal.test.js
|
||||
```
|
||||
|
||||
To run in Vitest:
|
||||
|
||||
```bash
|
||||
./node_modules/.bin/vitest --run expect-to-equal.vitest.test.js
|
||||
```
|
||||
|
||||
Output on my machine (M1):
|
||||
|
||||
bun:test (bun v0.3.0):
|
||||
|
||||
> [36.40ms] expect().toEqual() x 10000
|
||||
|
||||
jest (node v18.11.0)
|
||||
|
||||
> expect().toEqual() x 10000: 5053 ms
|
||||
|
||||
vitest (node v18.11.0)
|
||||
|
||||
> expect().toEqual() x 10000: 401.08ms
|
||||
|
||||
This project was created using `bun init` in bun v0.3.0. [Bun](https://bun.sh) is a fast all-in-one JavaScript runtime.
|
||||
BIN
bench/expect-to-equal/bun.lockb
Executable file
BIN
bench/expect-to-equal/bun.lockb
Executable file
Binary file not shown.
42
bench/expect-to-equal/expect-to-equal.test.js
Normal file
42
bench/expect-to-equal/expect-to-equal.test.js
Normal file
@@ -0,0 +1,42 @@
|
||||
// bun:test automatically rewrites this import to bun:test when run in bun
|
||||
import { test, expect } from "@jest/globals";
|
||||
|
||||
const N = parseInt(process.env.RUN_COUNT || "10000", 10);
|
||||
if (!Number.isSafeInteger(N)) {
|
||||
throw new Error("Invalid RUN_COUNT");
|
||||
}
|
||||
|
||||
const label = "expect().toEqual() x " + N;
|
||||
|
||||
test(label, () => {
|
||||
console.time(label);
|
||||
for (let runsLeft = N; runsLeft > 0; runsLeft--) {
|
||||
expect("hello").toEqual("hello");
|
||||
expect(123).toEqual(123);
|
||||
|
||||
expect({ a: 1, b: 2 }).toEqual({ b: 2, a: 1 });
|
||||
expect([1, 2, 3]).toEqual([1, 2, 3]);
|
||||
expect({ a: 1, b: 2 }).not.toEqual({ b: 2, a: 1, c: 3 });
|
||||
expect([1, 2, 3]).not.toEqual([1, 2, 3, 4]);
|
||||
expect({ a: 1, b: 2, c: 3 }).not.toEqual({ a: 1, b: 2 });
|
||||
expect([1, 2, 3, 4]).not.toEqual([1, 2, 3]);
|
||||
|
||||
let a = [{ a: 1 }, { b: 2, c: 3, d: 4 }, { e: 5, f: 6 }];
|
||||
let b = [{ a: 1 }, { b: 2, c: 3, d: 4 }, { e: 5, f: 6 }];
|
||||
expect(a).toEqual(b);
|
||||
expect(b).toEqual(a);
|
||||
a[0].a = 2;
|
||||
expect(a).not.toEqual(b);
|
||||
expect(b).not.toEqual(a);
|
||||
|
||||
let c = { [Symbol("test")]: 1 };
|
||||
let d = { [Symbol("test")]: 1 };
|
||||
expect(c).not.toEqual(d);
|
||||
expect(d).not.toEqual(c);
|
||||
|
||||
a = { a: 1, b: 2, c: 3 };
|
||||
b = { a: 1, b: 2 };
|
||||
expect(a).not.toEqual(b);
|
||||
}
|
||||
console.timeEnd(label);
|
||||
});
|
||||
41
bench/expect-to-equal/expect-to-equal.vitest.test.js
Normal file
41
bench/expect-to-equal/expect-to-equal.vitest.test.js
Normal file
@@ -0,0 +1,41 @@
|
||||
import { test, expect } from "vitest";
|
||||
|
||||
const N = parseInt(process.env.RUN_COUNT || "10000", 10);
|
||||
if (!Number.isSafeInteger(N)) {
|
||||
throw new Error("Invalid RUN_COUNT");
|
||||
}
|
||||
|
||||
const label = "expect().toEqual() x " + N;
|
||||
|
||||
test(label, () => {
|
||||
console.time(label);
|
||||
for (let runsLeft = N; runsLeft > 0; runsLeft--) {
|
||||
expect("hello").toEqual("hello");
|
||||
expect(123).toEqual(123);
|
||||
|
||||
expect({ a: 1, b: 2 }).toEqual({ b: 2, a: 1 });
|
||||
expect([1, 2, 3]).toEqual([1, 2, 3]);
|
||||
expect({ a: 1, b: 2 }).not.toEqual({ b: 2, a: 1, c: 3 });
|
||||
expect([1, 2, 3]).not.toEqual([1, 2, 3, 4]);
|
||||
expect({ a: 1, b: 2, c: 3 }).not.toEqual({ a: 1, b: 2 });
|
||||
expect([1, 2, 3, 4]).not.toEqual([1, 2, 3]);
|
||||
|
||||
let a = [{ a: 1 }, { b: 2, c: 3, d: 4 }, { e: 5, f: 6 }];
|
||||
let b = [{ a: 1 }, { b: 2, c: 3, d: 4 }, { e: 5, f: 6 }];
|
||||
expect(a).toEqual(b);
|
||||
expect(b).toEqual(a);
|
||||
a[0].a = 2;
|
||||
expect(a).not.toEqual(b);
|
||||
expect(b).not.toEqual(a);
|
||||
|
||||
let c = { [Symbol("test")]: 1 };
|
||||
let d = { [Symbol("test")]: 1 };
|
||||
expect(c).not.toEqual(d);
|
||||
expect(d).not.toEqual(c);
|
||||
|
||||
a = { a: 1, b: 2, c: 3 };
|
||||
b = { a: 1, b: 2 };
|
||||
expect(a).not.toEqual(b);
|
||||
}
|
||||
console.timeEnd(label);
|
||||
});
|
||||
1
bench/expect-to-equal/index.ts
Normal file
1
bench/expect-to-equal/index.ts
Normal file
@@ -0,0 +1 @@
|
||||
console.log("Hello via Bun!");
|
||||
9
bench/expect-to-equal/package.json
Normal file
9
bench/expect-to-equal/package.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"name": "expect-to-equal",
|
||||
"module": "index.ts",
|
||||
"type": "module",
|
||||
"devDependencies": {
|
||||
"jest": "^29.3.1",
|
||||
"vitest": "^0.25.3"
|
||||
}
|
||||
}
|
||||
20
bench/expect-to-equal/tsconfig.json
Normal file
20
bench/expect-to-equal/tsconfig.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"lib": [
|
||||
"ESNext"
|
||||
],
|
||||
"module": "esnext",
|
||||
"target": "esnext",
|
||||
"moduleResolution": "nodenext",
|
||||
"strict": true,
|
||||
"downlevelIteration": true,
|
||||
"skipLibCheck": true,
|
||||
"jsx": "preserve",
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"allowJs": true,
|
||||
"types": [
|
||||
"bun-types" // add Bun global
|
||||
]
|
||||
}
|
||||
}
|
||||
15
bench/fetch/bun.js
Normal file
15
bench/fetch/bun.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import { bench, run } from "mitata";
|
||||
|
||||
const count = 100;
|
||||
|
||||
bench(`fetch(https://example.com) x ${count}`, async () => {
|
||||
const requests = new Array(count);
|
||||
|
||||
for (let i = 0; i < requests.length; i++) {
|
||||
requests[i] = fetch(`https://www.example.com/?cachebust=${i}`).then(r => r.text());
|
||||
}
|
||||
|
||||
await Promise.all(requests);
|
||||
});
|
||||
|
||||
await run();
|
||||
15
bench/fetch/deno.js
Normal file
15
bench/fetch/deno.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import { bench, run } from "https://esm.run/mitata";
|
||||
|
||||
const count = 100;
|
||||
|
||||
bench(`fetch(https://example.com) x ${count}`, async () => {
|
||||
const requests = new Array(count);
|
||||
|
||||
for (let i = 0; i < requests.length; i++) {
|
||||
requests[i] = fetch(`https://www.example.com/?cachebust=${i}`).then(r => r.text());
|
||||
}
|
||||
|
||||
await Promise.all(requests);
|
||||
});
|
||||
|
||||
await run();
|
||||
15
bench/fetch/node.mjs
Normal file
15
bench/fetch/node.mjs
Normal file
@@ -0,0 +1,15 @@
|
||||
import { bench, run } from "mitata";
|
||||
|
||||
const count = 100;
|
||||
|
||||
bench(`fetch(https://example.com) x ${count}`, async () => {
|
||||
const requests = new Array(count);
|
||||
|
||||
for (let i = 0; i < requests.length; i++) {
|
||||
requests[i] = fetch(`https://www.example.com/?cachebust=${i}`).then(r => r.text());
|
||||
}
|
||||
|
||||
await Promise.all(requests);
|
||||
});
|
||||
|
||||
await run();
|
||||
3
bench/ffi/.env
Normal file
3
bench/ffi/.env
Normal file
@@ -0,0 +1,3 @@
|
||||
BUN=bun
|
||||
DENO=deno
|
||||
NODE=node
|
||||
35
bench/ffi/bun.js
Normal file
35
bench/ffi/bun.js
Normal file
@@ -0,0 +1,35 @@
|
||||
import { ptr, dlopen, CString, toBuffer } from "bun:ffi";
|
||||
import { run, bench, group } from "mitata";
|
||||
|
||||
const { napiNoop, napiHash, napiString } = require(import.meta.dir + "/src/ffi_napi_bench.node");
|
||||
|
||||
const {
|
||||
symbols: {
|
||||
ffi_noop: { native: ffi_noop },
|
||||
ffi_hash: { native: ffi_hash },
|
||||
ffi_string: { native: ffi_string },
|
||||
},
|
||||
} = dlopen(import.meta.dir + "/src/ffi_napi_bench.node", {
|
||||
ffi_noop: { args: [], returns: "void" },
|
||||
ffi_string: { args: [], returns: "ptr" },
|
||||
ffi_hash: { args: ["ptr", "u32"], returns: "u32" },
|
||||
});
|
||||
|
||||
const bytes = new Uint8Array(64);
|
||||
|
||||
group("bun:ffi", () => {
|
||||
bench("noop", () => ffi_noop());
|
||||
bench("hash", () => ffi_hash(ptr(bytes), bytes.byteLength));
|
||||
|
||||
bench("c string", () => new CString(ffi_string()));
|
||||
});
|
||||
|
||||
if (process.env.SHOW_NAPI)
|
||||
group("bun:napi", () => {
|
||||
bench("noop", () => napiNoop());
|
||||
bench("hash", () => napiHash(bytes));
|
||||
|
||||
bench("string", () => napiString());
|
||||
});
|
||||
|
||||
await run();
|
||||
22
bench/ffi/deno.js
Normal file
22
bench/ffi/deno.js
Normal file
@@ -0,0 +1,22 @@
|
||||
import { run, bench, group } from "../node_modules/mitata/src/cli.mjs";
|
||||
|
||||
const extension = "darwin" !== Deno.build.os ? "so" : "dylib";
|
||||
const path = new URL("src/target/release/libffi_napi_bench." + extension, import.meta.url).pathname;
|
||||
|
||||
const {
|
||||
symbols: { ffi_noop, ffi_hash, ffi_string },
|
||||
} = Deno.dlopen(path, {
|
||||
ffi_noop: { parameters: [], result: "void" },
|
||||
ffi_string: { parameters: [], result: "pointer" },
|
||||
ffi_hash: { parameters: ["buffer", "u32"], result: "u32" },
|
||||
});
|
||||
|
||||
const bytes = new Uint8Array(64);
|
||||
|
||||
group("deno:ffi", () => {
|
||||
bench("noop", () => ffi_noop());
|
||||
bench("hash", () => ffi_hash(bytes, bytes.byteLength));
|
||||
bench("c string", () => Deno.UnsafePointerView.getCString(ffi_string()));
|
||||
});
|
||||
|
||||
await run();
|
||||
16
bench/ffi/node.mjs
Normal file
16
bench/ffi/node.mjs
Normal file
@@ -0,0 +1,16 @@
|
||||
import { run, bench, group } from "mitata";
|
||||
import { createRequire } from "node:module";
|
||||
|
||||
const require = createRequire(import.meta.url);
|
||||
const { napiNoop, napiHash, napiString } = require("./src/ffi_napi_bench.node");
|
||||
|
||||
const bytes = new Uint8Array(64);
|
||||
|
||||
group("napi", () => {
|
||||
bench("noop", () => napiNoop());
|
||||
bench("hash", () => napiHash(bytes));
|
||||
|
||||
bench("string", () => napiString());
|
||||
});
|
||||
|
||||
await run();
|
||||
11
bench/ffi/package.json
Normal file
11
bench/ffi/package.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"name": "bench",
|
||||
"scripts": {
|
||||
"bench:bun": "$BUN bun.js",
|
||||
"bench:node": "$NODE node.mjs",
|
||||
"deps": "cd src && bun run deps",
|
||||
"build": "cd src && bun run build",
|
||||
"bench:deno": "$DENO run -A --unstable deno.js",
|
||||
"bench": "bun run bench:bun && bun run bench:node && bun run bench:deno"
|
||||
}
|
||||
}
|
||||
202
bench/ffi/src/Cargo.lock
generated
Normal file
202
bench/ffi/src/Cargo.lock
generated
Normal file
@@ -0,0 +1,202 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
|
||||
[[package]]
|
||||
name = "aho-corasick"
|
||||
version = "0.7.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cfg-if"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "convert_case"
|
||||
version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fb4a24b1aaf0fd0ce8b45161144d6f42cd91677fd5940fd431183eb023b3a2b8"
|
||||
|
||||
[[package]]
|
||||
name = "ctor"
|
||||
version = "0.1.22"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c"
|
||||
dependencies = [
|
||||
"quote",
|
||||
"syn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ffi_napi_bench"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"napi",
|
||||
"napi-build",
|
||||
"napi-derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "libloading"
|
||||
version = "0.7.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "memchr"
|
||||
version = "2.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
|
||||
|
||||
[[package]]
|
||||
name = "napi"
|
||||
version = "2.6.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3517d4a4af99e0a9960e26332ee1e1bcb9e0298657f58e7e97157a8532dfcd4b"
|
||||
dependencies = [
|
||||
"ctor",
|
||||
"napi-sys",
|
||||
"once_cell",
|
||||
"thread_local",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "napi-build"
|
||||
version = "2.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "882a73d9ef23e8dc2ebbffb6a6ae2ef467c0f18ac10711e4cc59c5485d41df0e"
|
||||
|
||||
[[package]]
|
||||
name = "napi-derive"
|
||||
version = "2.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3aaa8a11b0ae982306d311627cafd997ef556abdf1d79a01e6e75bc1ac5cfced"
|
||||
dependencies = [
|
||||
"convert_case",
|
||||
"napi-derive-backend",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "napi-derive-backend"
|
||||
version = "1.0.34"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0cdb9be87524eccc14f988825b26eaa3752e07a81cb04c34436057823d91e421"
|
||||
dependencies = [
|
||||
"convert_case",
|
||||
"once_cell",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"regex",
|
||||
"syn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "napi-sys"
|
||||
version = "2.2.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "529671ebfae679f2ce9630b62dd53c72c56b3eb8b2c852e7e2fa91704ff93d67"
|
||||
dependencies = [
|
||||
"libloading",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "once_cell"
|
||||
version = "1.13.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
version = "1.0.40"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7"
|
||||
dependencies = [
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "quote"
|
||||
version = "1.0.20"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3bcdf212e9776fbcb2d23ab029360416bb1706b1aea2d1a5ba002727cbcab804"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex"
|
||||
version = "1.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"memchr",
|
||||
"regex-syntax",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex-syntax"
|
||||
version = "0.6.27"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "1.0.98"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thread_local"
|
||||
version = "1.1.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180"
|
||||
dependencies = [
|
||||
"once_cell",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicode-ident"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c"
|
||||
|
||||
[[package]]
|
||||
name = "winapi"
|
||||
version = "0.3.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
||||
dependencies = [
|
||||
"winapi-i686-pc-windows-gnu",
|
||||
"winapi-x86_64-pc-windows-gnu",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "winapi-i686-pc-windows-gnu"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
|
||||
[[package]]
|
||||
name = "winapi-x86_64-pc-windows-gnu"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
18
bench/ffi/src/Cargo.toml
Normal file
18
bench/ffi/src/Cargo.toml
Normal file
@@ -0,0 +1,18 @@
|
||||
[package]
|
||||
edition = "2021"
|
||||
version = "0.1.0"
|
||||
name = "ffi_napi_bench"
|
||||
|
||||
[lib]
|
||||
crate-type = ["cdylib"]
|
||||
|
||||
[features]
|
||||
default = []
|
||||
enable-napi = []
|
||||
|
||||
[dependencies]
|
||||
napi = "2"
|
||||
napi-derive = "2"
|
||||
|
||||
[build-dependencies]
|
||||
napi-build = "2.0.1"
|
||||
5
bench/ffi/src/build.rs
Normal file
5
bench/ffi/src/build.rs
Normal file
@@ -0,0 +1,5 @@
|
||||
#[cfg(feature="enable-napi")] extern crate napi_build;
|
||||
|
||||
fn main() {
|
||||
#[cfg(feature="enable-napi")] napi_build::setup();
|
||||
}
|
||||
BIN
bench/ffi/src/bun.lockb
Executable file
BIN
bench/ffi/src/bun.lockb
Executable file
Binary file not shown.
17
bench/ffi/src/package.json
Normal file
17
bench/ffi/src/package.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "bench",
|
||||
"napi": {
|
||||
"name": "napi"
|
||||
},
|
||||
"dependencies": {
|
||||
"@napi-rs/cli": "^2.10.1",
|
||||
"@node-rs/helper": "^1.3.3"
|
||||
},
|
||||
"scripts": {
|
||||
"deps": "bun install",
|
||||
"build:ffi": "cargo build --release",
|
||||
"build": "bun run build:napi && bun run build:ffi",
|
||||
"cleanup": "rm -f index.js index.d.ts && mv napi.*.node ffi_napi_bench.node",
|
||||
"build:napi": "napi build --release --platform --no-dts-header --features enable-napi && bun run cleanup"
|
||||
}
|
||||
}
|
||||
49
bench/ffi/src/src/lib.rs
Normal file
49
bench/ffi/src/src/lib.rs
Normal file
@@ -0,0 +1,49 @@
|
||||
// double src o.O
|
||||
|
||||
#[cfg(feature="enable-napi")] use napi_derive::napi;
|
||||
#[cfg(feature="enable-napi")] use napi::bindgen_prelude::*;
|
||||
|
||||
static STRING: &'static str = "Hello, world!\0";
|
||||
|
||||
fn hash(buf: &[u8]) -> u32 {
|
||||
let mut hash: u32 = 0;
|
||||
|
||||
for byte in buf {
|
||||
hash = hash.wrapping_mul(0x10001000).wrapping_add(*byte as u32);
|
||||
}
|
||||
|
||||
return hash;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#[cfg(feature="enable-napi")]
|
||||
#[napi] pub fn napi_noop() {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
#[no_mangle] unsafe extern "C" fn ffi_noop() {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
|
||||
|
||||
#[cfg(feature="enable-napi")]
|
||||
#[napi] pub fn napi_string() -> &'static str {
|
||||
return &STRING[0..(STRING.len() - 1)];
|
||||
}
|
||||
|
||||
#[no_mangle] unsafe extern "C" fn ffi_string() -> *const u8 {
|
||||
return STRING.as_ptr();
|
||||
}
|
||||
|
||||
|
||||
|
||||
#[cfg(feature="enable-napi")]
|
||||
#[napi] pub fn napi_hash(buffer: Buffer) -> u32 {
|
||||
return hash(&buffer);
|
||||
}
|
||||
|
||||
#[no_mangle] unsafe extern "C" fn ffi_hash(ptr: *const u8, length: u32) -> u32 {
|
||||
return hash(std::slice::from_raw_parts(ptr, length as usize));
|
||||
}
|
||||
3
bench/gzip/.env
Normal file
3
bench/gzip/.env
Normal file
@@ -0,0 +1,3 @@
|
||||
BUN=bun
|
||||
DENO=deno
|
||||
NODE=node
|
||||
20
bench/gzip/bun.js
Normal file
20
bench/gzip/bun.js
Normal file
@@ -0,0 +1,20 @@
|
||||
import { run, bench } from "mitata";
|
||||
import { gzipSync, gunzipSync } from "bun";
|
||||
|
||||
const data = new TextEncoder().encode("Hello World!".repeat(9999));
|
||||
|
||||
const compressed = gzipSync(data);
|
||||
|
||||
bench(`roundtrip - "Hello World!".repeat(9999))`, () => {
|
||||
gunzipSync(gzipSync(data));
|
||||
});
|
||||
|
||||
bench(`gzipSync("Hello World!".repeat(9999)))`, () => {
|
||||
gzipSync(data);
|
||||
});
|
||||
|
||||
bench(`gunzipSync("Hello World!".repeat(9999)))`, () => {
|
||||
gunzipSync(compressed);
|
||||
});
|
||||
|
||||
await run();
|
||||
85
bench/gzip/deno.js
Normal file
85
bench/gzip/deno.js
Normal file
@@ -0,0 +1,85 @@
|
||||
import { run, bench } from "../node_modules/mitata/src/cli.mjs";
|
||||
|
||||
const data = new TextEncoder().encode("Hello World!".repeat(9999));
|
||||
|
||||
const compressed = await compress(data);
|
||||
|
||||
bench(`roundtrip - "Hello World!".repeat(9999))`, async () => {
|
||||
await decompress(await compress(data));
|
||||
});
|
||||
|
||||
bench(`gzip("Hello World!".repeat(9999)))`, async () => {
|
||||
await compress(data);
|
||||
});
|
||||
|
||||
bench(`gunzip("Hello World!".repeat(9999)))`, async () => {
|
||||
await decompress(compressed);
|
||||
});
|
||||
|
||||
await run();
|
||||
|
||||
async function compress(buffer) {
|
||||
const cs = new CompressionStream("gzip");
|
||||
|
||||
const writer = cs.writable.getWriter();
|
||||
|
||||
writer.write(buffer);
|
||||
|
||||
writer.close();
|
||||
const chunks = [];
|
||||
const reader = cs.readable.getReader();
|
||||
|
||||
let length = 0;
|
||||
|
||||
while (true) {
|
||||
const { done, value } = await reader.read();
|
||||
|
||||
if (done) break;
|
||||
chunks.push(value);
|
||||
length += value.length;
|
||||
}
|
||||
|
||||
const u8 = new Uint8Array(length);
|
||||
|
||||
let offset = 0;
|
||||
|
||||
for (const chunk of chunks) {
|
||||
u8.set(chunk, offset);
|
||||
offset += chunk.length;
|
||||
}
|
||||
|
||||
return u8;
|
||||
}
|
||||
|
||||
async function decompress(buffer) {
|
||||
const ds = new DecompressionStream("gzip");
|
||||
|
||||
const writer = ds.writable.getWriter();
|
||||
|
||||
writer.write(buffer);
|
||||
|
||||
writer.close();
|
||||
const chunks = [];
|
||||
const reader = ds.readable.getReader();
|
||||
|
||||
let length = 0;
|
||||
|
||||
while (true) {
|
||||
const { done, value } = await reader.read();
|
||||
|
||||
if (done) break;
|
||||
chunks.push(value);
|
||||
length += value.length;
|
||||
}
|
||||
|
||||
const u8 = new Uint8Array(length);
|
||||
|
||||
let offset = 0;
|
||||
|
||||
for (const chunk of chunks) {
|
||||
u8.set(chunk, offset);
|
||||
offset += chunk.length;
|
||||
}
|
||||
|
||||
return u8;
|
||||
}
|
||||
20
bench/gzip/node.mjs
Normal file
20
bench/gzip/node.mjs
Normal file
@@ -0,0 +1,20 @@
|
||||
import { run, bench } from "mitata";
|
||||
import { gzipSync, gunzipSync } from "zlib";
|
||||
|
||||
const data = new TextEncoder().encode("Hello World!".repeat(9999));
|
||||
|
||||
const compressed = gzipSync(data);
|
||||
|
||||
bench(`roundtrip - "Hello World!".repeat(9999))`, () => {
|
||||
gunzipSync(gzipSync(data));
|
||||
});
|
||||
|
||||
bench(`gzipSync("Hello World!".repeat(9999)))`, () => {
|
||||
gzipSync(data);
|
||||
});
|
||||
|
||||
bench(`gunzipSync("Hello World!".repeat(9999)))`, () => {
|
||||
gunzipSync(compressed);
|
||||
});
|
||||
|
||||
await run();
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user