Remove Lipmaaa references
This commit is contained in:
parent
f88abf7fd2
commit
05022b7306
|
@ -26,8 +26,9 @@ Email `contact@vaporsoft.xyz` if you have any questions.
|
||||||
|
|
||||||
# TODO
|
# TODO
|
||||||
|
|
||||||
|
- [ ] Add forgery protection tests
|
||||||
- [ ] Add a real testing lib to DRY things up.
|
- [ ] Add a real testing lib to DRY things up.
|
||||||
- [ ] Validate and scrutinize `depth`, `lipmaa`, `prev` fields when ingesting message bundles to account for poorly written peer clients.
|
- [ ] Validate and scrutinize `depth`, `prev` fields when ingesting message bundles to account for poorly written peer clients.
|
||||||
- [ ] Get a good CI system going? Run tests at PR time, provide prebuilt binaries, prevent coverage slips, etc..
|
- [ ] Get a good CI system going? Run tests at PR time, provide prebuilt binaries, prevent coverage slips, etc..
|
||||||
- [ ] Add a `transact()` helper to ensure all transactions are closed out.
|
- [ ] Add a `transact()` helper to ensure all transactions are closed out.
|
||||||
- [ ] Switch to [SQLX](https://github.com/jmoiron/sqlx) for extra sanity.
|
- [ ] Switch to [SQLX](https://github.com/jmoiron/sqlx) for extra sanity.
|
||||||
|
@ -40,7 +41,7 @@ Email `contact@vaporsoft.xyz` if you have any questions.
|
||||||
|
|
||||||
# Protocol Changes?
|
# Protocol Changes?
|
||||||
|
|
||||||
- [ ] Rename `lipmaa` to `backlink` as Bamboo protocol has done?
|
- [X] Just ditch `lipmaa` altogether in the name of time?
|
||||||
- [ ] Don't enforce a structure on how blobs are packed into bundles- the client is forced to determine the SHA checksum regardless. Forced structure just complicates protocol design.
|
- [ ] Don't enforce a structure on how blobs are packed into bundles- the client is forced to determine the SHA checksum regardless. Forced structure just complicates protocol design.
|
||||||
- [ ] Mandate usage of ZIP files so that bundles are always a single file?
|
- [ ] Mandate usage of ZIP files so that bundles are always a single file?
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 0
|
depth 0
|
||||||
kind FILE.ET9C7B9N82XR0F021CXEWSPDH23H4CHMX866WWA3R2PXEFZM67PG
|
kind FILE.ET9C7B9N82XR0F021CXEWSPDH23H4CHMX866WWA3R2PXEFZM67PG
|
||||||
lipmaa NONE
|
|
||||||
prev NONE
|
prev NONE
|
||||||
|
|
||||||
a:"b"
|
a:"b"
|
||||||
|
@ -11,7 +10,6 @@ signature TKVXZ5EJV0GRDY60V2ZHN4ART60FYYJ99SJQGXAK8AF80X1ZFQCR18P5JVJZWMFME5Q7WF
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 1
|
depth 1
|
||||||
kind a
|
kind a
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.0HG26KBTYFD3FW8K72GFJJ5CV9KXSDRG2WJS15P3XQ5V56XNX8E0
|
prev TEXT.0HG26KBTYFD3FW8K72GFJJ5CV9KXSDRG2WJS15P3XQ5V56XNX8E0
|
||||||
|
|
||||||
FILE.7Z2CSZKMB1RE5G6SKXRZ63ZGCNP8VVEM3K0XFMYKETRDQSM5WBSG:"b"
|
FILE.7Z2CSZKMB1RE5G6SKXRZ63ZGCNP8VVEM3K0XFMYKETRDQSM5WBSG:"b"
|
||||||
|
@ -21,7 +19,6 @@ signature DPBY0XEKZPMFT0DM7JFFZVPZG4FR248SQVAXJ7T3T7QB1QYV3MKKS1V9FHWK9P33MECKBE
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 2
|
depth 2
|
||||||
kind a
|
kind a
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.BJEPB3TPZM2ZSQWHYB4N5ECMF0S9H4VKH0WYE1QY5T911YYZEA5G
|
prev TEXT.BJEPB3TPZM2ZSQWHYB4N5ECMF0S9H4VKH0WYE1QY5T911YYZEA5G
|
||||||
|
|
||||||
b:FILE.HDDSVC617PS44NP856N3CJN91HPJXEHHHE93595BJC9VJN6KANFG
|
b:FILE.HDDSVC617PS44NP856N3CJN91HPJXEHHHE93595BJC9VJN6KANFG
|
||||||
|
@ -31,7 +28,6 @@ signature P6DK52KZ2KWHDJJ7Y7GZA2VGDRNQ9FDBFTDJY1ME6V21BDCCKYMFF3TEZ5EENJMRR4B8NC
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 3
|
depth 3
|
||||||
kind a8df9e36-7c32-431c-af4c-855b6c398c87
|
kind a8df9e36-7c32-431c-af4c-855b6c398c87
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.TCZ4GCD45ETX73EEGRHPFX1BBPNBG70S03GC6V0F2QE07SCQ18T0
|
prev TEXT.TCZ4GCD45ETX73EEGRHPFX1BBPNBG70S03GC6V0F2QE07SCQ18T0
|
||||||
|
|
||||||
foo:"fe3d0f08-13a3-47eb-b605-cc9c1dd1811c"
|
foo:"fe3d0f08-13a3-47eb-b605-cc9c1dd1811c"
|
||||||
|
@ -41,7 +37,6 @@ signature R4RZ2DXD624C5TT0JCS1CP8ZA89KVMP8C2X39H7N0H6T4CPZNHGN5DA1B6B7B35V4WBB6X
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 4
|
depth 4
|
||||||
kind dcf7d089-b5ef-4f8b-8fe7-c176e7c7605b
|
kind dcf7d089-b5ef-4f8b-8fe7-c176e7c7605b
|
||||||
lipmaa TEXT.BJEPB3TPZM2ZSQWHYB4N5ECMF0S9H4VKH0WYE1QY5T911YYZEA5G
|
|
||||||
prev TEXT.94NPGGDTM456TFBJTQH2YFSQ2W46AJ9GGVYYYGXHGTR9A27ZPG2G
|
prev TEXT.94NPGGDTM456TFBJTQH2YFSQ2W46AJ9GGVYYYGXHGTR9A27ZPG2G
|
||||||
|
|
||||||
foo:"bar"
|
foo:"bar"
|
||||||
|
@ -51,7 +46,6 @@ signature 95TCVY0CP01NZVHQSR8CNXDGYW9BK4CJADXQGA1R5G5Y8HD05N8MZ4KTSSAGP785BXQYMY
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 5
|
depth 5
|
||||||
kind 485d10d6-87b3-4f1f-baf3-752796afec64
|
kind 485d10d6-87b3-4f1f-baf3-752796afec64
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.HWR2DNDWJYP60348W0M78QF4H0B5B7X6NT6KVS9GNJSP207PDB9G
|
prev TEXT.HWR2DNDWJYP60348W0M78QF4H0B5B7X6NT6KVS9GNJSP207PDB9G
|
||||||
|
|
||||||
foo:"16c4ad9b-34cc-4c37-a4c9-3ab0161ea4b5"
|
foo:"16c4ad9b-34cc-4c37-a4c9-3ab0161ea4b5"
|
||||||
|
@ -61,7 +55,6 @@ signature 0NPJG4A0VWP0HPS2SV3DJH696QMWBWZZ27CKCTX5JK8WJ1JE818PPJGRJRAC4QQ7K10GT2
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 6
|
depth 6
|
||||||
kind 74be7129-06b8-4cb6-8aa9-d549710cd657
|
kind 74be7129-06b8-4cb6-8aa9-d549710cd657
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.YEBFRRM6HCX514HBHBTB3AK2HF5B71MPDMB5HNQW4ACYETQYDNZ0
|
prev TEXT.YEBFRRM6HCX514HBHBTB3AK2HF5B71MPDMB5HNQW4ACYETQYDNZ0
|
||||||
|
|
||||||
foo:"123"
|
foo:"123"
|
||||||
|
@ -71,7 +64,6 @@ signature HD7VNKTMARQ3294C6KDGXV4BP0GKFWEXBC5R8RHWF8VKBMFXDB2NCX4XQN6Q524ZWPNTM0
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 7
|
depth 7
|
||||||
kind f06d3a2b-a1c0-4bf5-83e7-29409ac0c9b4
|
kind f06d3a2b-a1c0-4bf5-83e7-29409ac0c9b4
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.XQRKXB46M6HZAWTADNXWFTHQS8PGEPDZ581J40REFNT3YWG8YZ70
|
prev TEXT.XQRKXB46M6HZAWTADNXWFTHQS8PGEPDZ581J40REFNT3YWG8YZ70
|
||||||
|
|
||||||
foo:"123"
|
foo:"123"
|
||||||
|
@ -81,7 +73,6 @@ signature ZYHVXQGZ9G78AD69A9SFMF281B4WHX05AG8TEKBKSFH706HXNYRTPH9G5VP01ZC515MMP6
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 8
|
depth 8
|
||||||
kind a4df2c79-17ef-4c90-ba11-3021fe23269c
|
kind a4df2c79-17ef-4c90-ba11-3021fe23269c
|
||||||
lipmaa TEXT.HWR2DNDWJYP60348W0M78QF4H0B5B7X6NT6KVS9GNJSP207PDB9G
|
|
||||||
prev TEXT.49S2F3Y6AXHDD8F62RKXPFWC2BYBV5D16VQY34F40NTQFZW1R0G0
|
prev TEXT.49S2F3Y6AXHDD8F62RKXPFWC2BYBV5D16VQY34F40NTQFZW1R0G0
|
||||||
|
|
||||||
foo:"bar"
|
foo:"bar"
|
||||||
|
@ -91,7 +82,6 @@ signature W57NQEX8HD3DQG1F8G6SD8960QRP0HYPWXCKTN6AZ5SXZCWABPBWHM84EFDH5MJTJ4YYVZ
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 9
|
depth 9
|
||||||
kind a2c49e15-befd-4a62-8a7d-f4a28d052c38
|
kind a2c49e15-befd-4a62-8a7d-f4a28d052c38
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.NRK3MEG982X5N76RFF4F9WC405452YNZFCH5WTP9G8ERRTYNN3V0
|
prev TEXT.NRK3MEG982X5N76RFF4F9WC405452YNZFCH5WTP9G8ERRTYNN3V0
|
||||||
|
|
||||||
foo:"3b39df57-9dee-4a66-8d49-ee4944631f33"
|
foo:"3b39df57-9dee-4a66-8d49-ee4944631f33"
|
||||||
|
@ -101,7 +91,6 @@ signature ATRMAPBKQ7VZWRDSX4ASSVZ3D9CKSS3PZ8ZP229H96MA9DGD7RM5TA1E4CZD42BWK6Q9XJ
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 10
|
depth 10
|
||||||
kind 7a1a2b5a-32c2-4b3f-b287-42e4a73e340d
|
kind 7a1a2b5a-32c2-4b3f-b287-42e4a73e340d
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.FKH08FA04MCC7RPYN1GZZT0VAGHAW0VRHQD6QZX3C6YCTAZM9WE0
|
prev TEXT.FKH08FA04MCC7RPYN1GZZT0VAGHAW0VRHQD6QZX3C6YCTAZM9WE0
|
||||||
|
|
||||||
foo:"bar"
|
foo:"bar"
|
||||||
|
@ -111,7 +100,6 @@ signature 3F774WW8NVA3HAQRV7M4CWKBYH86QB8F9QPQ6FV96MG6S9KHBG519WKPNBZR7YRFFBWHZZ
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 11
|
depth 11
|
||||||
kind c8cfac48-460f-47c6-a6b3-34daa431fcab
|
kind c8cfac48-460f-47c6-a6b3-34daa431fcab
|
||||||
lipmaa NONE
|
|
||||||
prev TEXT.DQH1TX6QM3223PNX4Y352AQSDJM91SMFYJFG6PPC182ZW9PYR70G
|
prev TEXT.DQH1TX6QM3223PNX4Y352AQSDJM91SMFYJFG6PPC182ZW9PYR70G
|
||||||
|
|
||||||
foo:"450024fc-ea1c-4144-b7b9-16c60ff00e45"
|
foo:"450024fc-ea1c-4144-b7b9-16c60ff00e45"
|
||||||
|
@ -121,7 +109,6 @@ signature AT3VWBJXP7NZBGADPWGX0PVHPKS0W14SAY12XZHYQ3EF025641M29P46ZNYM3M4Q0HKZYH
|
||||||
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
author USER.PJC0W5XRFX4JBFPX929PQETB58VM7A4P5RDMW7Y8E9P4CRZDWEBG
|
||||||
depth 12
|
depth 12
|
||||||
kind 6ecac9f1-e5dc-4274-a0fd-633c2cd56832
|
kind 6ecac9f1-e5dc-4274-a0fd-633c2cd56832
|
||||||
lipmaa TEXT.NRK3MEG982X5N76RFF4F9WC405452YNZFCH5WTP9G8ERRTYNN3V0
|
|
||||||
prev TEXT.Y3K7WH4R9W9EBTZB27NJCYR6VBKYTHZX97Y05841VPM5G50ZYG00
|
prev TEXT.Y3K7WH4R9W9EBTZB27NJCYR6VBKYTHZX97Y05841VPM5G50ZYG00
|
||||||
|
|
||||||
foo:"fc1a7066-2af2-4437-98e3-dbc33e67d7c6"
|
foo:"fc1a7066-2af2-4437-98e3-dbc33e67d7c6"
|
||||||
|
|
|
@ -1,29 +1,26 @@
|
||||||
author USER.09XBQDDGZPEKFBFBY67XNR5QA0TRWAKYKYNEDNQTZJV0F1JB0DGG
|
author USER.59X51RSZQZR15BX86VDWG37AAMVP43PTBWD1WS66FQFCDPHAQDZ0
|
||||||
depth 0
|
depth 0
|
||||||
kind example
|
kind example
|
||||||
lipmaa NONE
|
|
||||||
prev NONE
|
prev NONE
|
||||||
|
|
||||||
file_name:FILE.FV0FJ0YZADY7C5JTTFYPKDBHTZJ5JVVP5TCKP0605WWXYJG4VMRG
|
file_name:FILE.FV0FJ0YZADY7C5JTTFYPKDBHTZJ5JVVP5TCKP0605WWXYJG4VMRG
|
||||||
|
|
||||||
signature ZYSCKNFP8TW9DME9P9DK4Z4RV09APVEE762HK628K18NMS4DX084XKED71TCRXJNZBWY3TWDYVK1W3K496QF7Y55SCKEWP1D0SP5R30
|
signature N33N7D8KFFVVPHTDE17JS7708YPAVF2F0F0AZS1FFW3D15ZH1K3HEFNQJK7KT7NMSAF8PDC1YDD5M57NPG2PTEEYPBKC1G3HFHN3J08
|
||||||
|
|
||||||
author USER.09XBQDDGZPEKFBFBY67XNR5QA0TRWAKYKYNEDNQTZJV0F1JB0DGG
|
author USER.59X51RSZQZR15BX86VDWG37AAMVP43PTBWD1WS66FQFCDPHAQDZ0
|
||||||
depth 1
|
depth 1
|
||||||
kind example
|
kind example
|
||||||
lipmaa NONE
|
prev TEXT.S5G187G11N2T76E2TSPS40K5QEY6S9ZC68TKEVH7JBPN27VDTKY0
|
||||||
prev TEXT.RGKRHC0APNN9FCJTVBN1NR1ZYQ9ZY34PYYASSMJ6016S30ZTWHR0
|
|
||||||
|
|
||||||
file_name:FILE.YPF11E5N9JFVB6KB1N1WDVVT9DXMCHE0XJWBZHT2CQ29S5SEPCSG
|
file_name:FILE.YPF11E5N9JFVB6KB1N1WDVVT9DXMCHE0XJWBZHT2CQ29S5SEPCSG
|
||||||
|
|
||||||
signature GAZGWG8PWZSP4VSSNYD8J873CQ6KDM93SBMA9VGGC1YW66FER96HEGZQ4CJBH51YN22WMGYADNY2SCWS0JY6YPX4APFDQ60X751JJ1R
|
signature 53454CZKNSBK4D8NZCKWRWWE37DVANJWCS891XGRR2M8M4AJP2XNTC86MQAWAMYX3W517KWW6JD9MX3FMXNNBQ1TJS5HSK9CTW9G018
|
||||||
|
|
||||||
author USER.09XBQDDGZPEKFBFBY67XNR5QA0TRWAKYKYNEDNQTZJV0F1JB0DGG
|
author USER.59X51RSZQZR15BX86VDWG37AAMVP43PTBWD1WS66FQFCDPHAQDZ0
|
||||||
depth 2
|
depth 2
|
||||||
kind example
|
kind example
|
||||||
lipmaa NONE
|
prev TEXT.5BBGSKGBHKYE6R0SJSZAGNEQA8PGJ5CMTQD1XGKKP2CHYPZR8G90
|
||||||
prev TEXT.Z3QS1HPX756E22XWKXAXH7NTSTJGY0AHEM9KQNATTC6HHCACZGN0
|
|
||||||
|
|
||||||
file_name:FILE.622PRNJ7C0S05XR2AHDPKWMG051B1QW5SXMN2RQHF2AND6J8VGPG
|
file_name:FILE.622PRNJ7C0S05XR2AHDPKWMG051B1QW5SXMN2RQHF2AND6J8VGPG
|
||||||
|
|
||||||
signature W94BVC4ED00Z4TJC0T3BEVC63RJYJC1J4DDS13BJTTGGXK40JSX276B9MV3GPS5JJHZW92YKAZNZ1Q4DCG0K58SCD9ZD0TVZVX7100G
|
signature JVN1YPVA637NF6GGPCX8GXT5FXTZPA1YM68ZWQQNXYD36CX0PSDBHXQMY7PMJYMCPFYW5BR56P2GVETM8AVYSKAFSYPVM3F7KVDW020
|
||||||
|
|
|
@ -32,7 +32,6 @@ func formatMessage(message pigeonMessage) rawMessage {
|
||||||
str.WriteString(fmt.Sprintf("author %s\n", message.author))
|
str.WriteString(fmt.Sprintf("author %s\n", message.author))
|
||||||
str.WriteString(fmt.Sprintf("depth %d\n", message.depth))
|
str.WriteString(fmt.Sprintf("depth %d\n", message.depth))
|
||||||
str.WriteString(fmt.Sprintf("kind %s\n", message.kind))
|
str.WriteString(fmt.Sprintf("kind %s\n", message.kind))
|
||||||
str.WriteString(fmt.Sprintf("lipmaa %s\n", message.lipmaa))
|
|
||||||
str.WriteString(fmt.Sprintf("prev %s\n\n", message.prev))
|
str.WriteString(fmt.Sprintf("prev %s\n\n", message.prev))
|
||||||
for _, item := range message.body {
|
for _, item := range message.body {
|
||||||
str.WriteString(fmt.Sprintf("%s:%s\n", item.key, item.value))
|
str.WriteString(fmt.Sprintf("%s:%s\n", item.key, item.value))
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
)
|
)
|
||||||
|
|
||||||
const insertMessageQuery = "INSERT INTO messages(author, depth, kind, lipmaa, prev, signature, mhash) VALUES(?1, ?2, ?3, ?4, ?5, ?6, $7)"
|
const insertMessageQuery = "INSERT INTO messages(author, depth, kind, prev, signature, mhash) VALUES(?1, ?2, ?3, ?4, ?5, ?6)"
|
||||||
const insertBodyItemQuery = "INSERT INTO body_items(parent, key, value, rank) VALUES(?1, ?2, ?3, ?4)"
|
const insertBodyItemQuery = "INSERT INTO body_items(parent, key, value, rank) VALUES(?1, ?2, ?3, ?4)"
|
||||||
|
|
||||||
func ingestOneMessage(msg pigeonMessage, blobIndex map[string]bool) {
|
func ingestOneMessage(msg pigeonMessage, blobIndex map[string]bool) {
|
||||||
|
@ -19,7 +19,6 @@ func ingestOneMessage(msg pigeonMessage, blobIndex map[string]bool) {
|
||||||
msg.author,
|
msg.author,
|
||||||
msg.depth,
|
msg.depth,
|
||||||
msg.kind,
|
msg.kind,
|
||||||
msg.lipmaa,
|
|
||||||
msg.prev,
|
msg.prev,
|
||||||
msg.signature,
|
msg.signature,
|
||||||
mhash)
|
mhash)
|
||||||
|
@ -60,8 +59,6 @@ func ingestBlobs(p string, blobIndex map[string]bool) {
|
||||||
if blobIndex[mhash] {
|
if blobIndex[mhash] {
|
||||||
addBlob(mhash, data)
|
addBlob(mhash, data)
|
||||||
blobIndex[mhash] = false
|
blobIndex[mhash] = false
|
||||||
} else {
|
|
||||||
fmt.Printf("Don't need %s\n", mhash)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,9 +23,9 @@ func TestImportBundle(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
messages := []string{
|
messages := []string{
|
||||||
"TEXT.RGKRHC0APNN9FCJTVBN1NR1ZYQ9ZY34PYYASSMJ6016S30ZTWHR0",
|
"FILE.622PRNJ7C0S05XR2AHDPKWMG051B1QW5SXMN2RQHF2AND6J8VGPG",
|
||||||
"TEXT.V52B1GH1XS8K1QKJG3AK127XYA23E82J0A2ZQTJ08TF8NZN2A1Y0",
|
"FILE.FV0FJ0YZADY7C5JTTFYPKDBHTZJ5JVVP5TCKP0605WWXYJG4VMRG",
|
||||||
"TEXT.Z3QS1HPX756E22XWKXAXH7NTSTJGY0AHEM9KQNATTC6HHCACZGN0",
|
"FILE.YPF11E5N9JFVB6KB1N1WDVVT9DXMCHE0XJWBZHT2CQ29S5SEPCSG",
|
||||||
}
|
}
|
||||||
for _, mhash := range messages {
|
for _, mhash := range messages {
|
||||||
if !messageExists(mhash) {
|
if !messageExists(mhash) {
|
||||||
|
|
|
@ -34,7 +34,6 @@ var migrations = []migration{
|
||||||
author string NOT NULL,
|
author string NOT NULL,
|
||||||
depth int NOT NULL,
|
depth int NOT NULL,
|
||||||
kind string NOT NULL,
|
kind string NOT NULL,
|
||||||
lipmaa string NOT NULL,
|
|
||||||
prev string NOT NULL,
|
prev string NOT NULL,
|
||||||
signature string NOT NULL,
|
signature string NOT NULL,
|
||||||
mhash string NOT NULL
|
mhash string NOT NULL
|
||||||
|
|
|
@ -15,7 +15,6 @@ type pigeonMessage struct {
|
||||||
author string
|
author string
|
||||||
depth int64
|
depth int64
|
||||||
kind string
|
kind string
|
||||||
lipmaa string
|
|
||||||
prev string
|
prev string
|
||||||
body []pigeonBodyItem
|
body []pigeonBodyItem
|
||||||
signature string
|
signature string
|
||||||
|
@ -42,7 +41,7 @@ type parserState struct {
|
||||||
type parserOutput struct {
|
type parserOutput struct {
|
||||||
/** `messages` is an array of messages. The messages are SHALLOW
|
/** `messages` is an array of messages. The messages are SHALLOW
|
||||||
verified. That means the message has a valid signature and syntax,
|
verified. That means the message has a valid signature and syntax,
|
||||||
but `depth`, `lipmaa` and `prev` have not been scrutinized for validity. */
|
but `depth` and `prev` have not been scrutinized for validity. */
|
||||||
messages []pigeonMessage
|
messages []pigeonMessage
|
||||||
/** `blobIndex` is a hash where keys represent each unique blob
|
/** `blobIndex` is a hash where keys represent each unique blob
|
||||||
foud in a bundle. This is required to avoid ingesting unwanted
|
foud in a bundle. This is required to avoid ingesting unwanted
|
||||||
|
@ -118,9 +117,6 @@ func parseHeader(state *parserState) {
|
||||||
case "kind":
|
case "kind":
|
||||||
state.buffer.kind = chunks[1]
|
state.buffer.kind = chunks[1]
|
||||||
return
|
return
|
||||||
case "lipmaa":
|
|
||||||
state.buffer.lipmaa = chunks[1]
|
|
||||||
return
|
|
||||||
case "prev":
|
case "prev":
|
||||||
state.buffer.prev = chunks[1]
|
state.buffer.prev = chunks[1]
|
||||||
return
|
return
|
||||||
|
|
|
@ -108,7 +108,6 @@ func verifyShallow(message *pigeonMessage) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
buffer.Write([]byte(fmt.Sprintf("kind %s\n", message.kind)))
|
buffer.Write([]byte(fmt.Sprintf("kind %s\n", message.kind)))
|
||||||
buffer.Write([]byte(fmt.Sprintf("lipmaa %s\n", message.lipmaa)))
|
|
||||||
buffer.Write([]byte(fmt.Sprintf("prev %s\n", message.prev)))
|
buffer.Write([]byte(fmt.Sprintf("prev %s\n", message.prev)))
|
||||||
buffer.Write([]byte("\n"))
|
buffer.Write([]byte("\n"))
|
||||||
for count, bodyItem := range message.body {
|
for count, bodyItem := range message.body {
|
||||||
|
|
Loading…
Reference in New Issue