Closed tzarebczan closed 5 years ago
moving the checked items down to here:
[x] add file hash to all claim resolve, populate on publish. Populate file name on publish (ensure it shows on resolve).
hash
, size
, file_name
attributes[x] stream/claim list and claim search (and any claim related API commands) don't show channel certificate details/metadata for stream claims that have channels.
[x] channel not cleared with --clear_channel
and claim list breaks (shows nothing)
"has_signature": true,
"height": 545887,
"hex": "019c9f1e240bf55ceaabba0ffafc41c4e1b97ac6bfe75381029791003f42dd28212d018d5f7d6dd4c561181a31c8864bac908bb9a21478634f03ab5a4661d5b55982ad7eb24b860bc694c4bdc604d77fd71a7402090a740a30174a152f51f192001f904e82900e3afdf54adba23e3e79cdab68425f08e73f3c679129801b82d7dbea962df343424db1120c6d657461342d7570646174651a04746573742a0574616773312a0574616773322a057461677333420674686f6d61736a09696d6167652f706e67720410849701",
"name": "test-new-metadata5",
"normalized_name": "test-new-metadata5",
"nout": 0,
"permanent_url": "lbry://test-new-metadata5#8ea6229ecd0e0b39ad1b00ff05230bcdda742692",
"signature_is_valid": false,
[x] add image/video/audio metadata processing to populate height/width/duration where applicable.
[x] consider removing different durations (audio vs video) with stream type mapping now configured
[x] this succeeded, but no response (happens whenever channel id is passed, but works with channel name)
(fresh3-27) C:\Users\thoma\Documents\lbry>lbrynet stream update --claim_id=b0dbc11b0925f1f522b72aac33816045525198de --channel_id=da0a132d7261cb52052f39ca43c983d1c0995187 --claim_address=bEoE989Q6TMhi1HqTVVsLcth9nQrppNms5 --tags="transfer with channel"
[x] remove --stream_type
and use mapping instead, add media_category
to responses
[x] claim list (and possible others) shows: "valid_signature": null,
- needs to be correct and consistently named (signature_is_valid)
[x] newly updated claims error out on victor's server (below), but are valid signatures on mine.
Traceback (most recent call last):
File "c:\users\thoma\documents\lbry\lbrynet\wallet\ledger.py", line 70, in resolve
return await resolver._handle_resolutions(resolutions, uris, page, page_size)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 33, in _handle_resolutions
await self._handle_resolve_uri_response(uri, resolution, page, page_size)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 103, in _handle_resolve_uri_response
raw)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 189, in parse_and_validate_claim_result
cert_tx = await self.network.get_transaction(certificate['txid']) if certificate else None
KeyError: 'txid'
[x] channel is cleared out when doing a stream update (or publish) to a pre 0.35 claim. It should keep the same channel unless the clear channel tag is passed. This is updating an existing claim with no params. If no channel info passed, permanent url changes to "permanent_url": "None#0758ec3a5b56945eb70a0b9712784d189090ad20/whippany-church-12-30-2"
.
My correct claim id is: 20ad9090184d7812970b0ab75e94565b3aec5807
repro from 0.35.0, no channel info passed (notice permanent url claim id changes, signature not valid).
"channel_name": "@jiggytom",
"claim_id": "1951bede44f976ef31a72d342f6224082b71e4a2",
"has_signature": true,
"name": "whippany-church-12-30-2",
"nout": 0,
"permanent_url": "@jiggytom#0758ec3a5b56945eb70a0b9712784d189090ad20/whippany-church-12-30-2",
"signature_is_valid": true,
"supports": [],
"txid": "607a7aa8b1fee48b9b2a57f7caf141e5bb585ffc8206ee70d4a76f52767e506e",
[x] resolve is missing certificate data (doesn't show channel details) - probably related to the missing cert logs. It seems to work for new signed claims.
[x] resolve is missing publisher data in value section.
[x] resolve missing channel in permanent url + signature not valid:
"nout": 0,
"permanent_url": "None#e6c81c78e8308ab5d182686a0792f654b0f35291/coinboys",
"signature_is_valid": false,
[x] permanent url incorrect on signed old claimes (my spv doesn't even show the cert, victor's shows this):
"claim_id": "768578fc59c1ba6a2b5c3b92458f6053788b46e3",
"decoded_claim": true,
"name": "@PremiumTrends",
"permanent_url": "@PremiumTrends#768578fc59c1ba6a2b5c3b92458f6053788b46e3",
"value": {
"channel": {
"public_key": "3056301006072a8648ce3d020106052b8104000a03420004fd815046ab8bc32f681867129eda574219375d9446a350fdf5aee8ffea6b858c1d92a55c4f90cca60331c553812065db79db96f589e22ba236fd952d3cc0a9d7"
}
}
},
"claim": {
"channel_name": "@PremiumTrends",
"claim_id": "7d066008b06b34d203349e385182b6354bee7d5b",
"permanent_url": "@PremiumTrends#e3468b7853608f45923b5c2b6abac159fc788576/five"
[x] language input and output should be the condensed RFC 5646 format instead of dictionary
[x] claim not found on get, but it downloads with traceback (sometimes). file list entry not created.
(fresh3-27) C:\Users\thoma\Documents\lbry>lbrynet get 333333333
{
"error": "claim not found"
}
2019-03-28 03:39:57,900 INFO lbrynet.blob_exchange.client:126: downloaded b585a8f7 from 18.213.255.15:5567
2019-03-28 03:39:58,424 INFO lbrynet.blob_exchange.client:126: downloaded b0873e16 from 18.213.255.15:5567
2019-03-28 03:39:58,717 INFO lbrynet.blob_exchange.client:126: downloaded 5e4f1325 from 18.213.255.15:5567
Task was destroyed but it is pending!
task: <Task pending coro=<Node._accumulate_search_junction() running at c:\users\thoma\documents\lbry\lbrynet\dht\node.py:233> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x1BC81910>()]>>
Exception ignored in: <coroutine object Node._accumulate_search_junction at 0x1BC92150>
RuntimeError: coroutine ignored GeneratorExit
Task was destroyed but it is pending!
task: <Task pending coro=<Node.stream_peer_search_junction.<locals>._add_hashes_from_queue() running at c:\users\thoma\documents\lbry\lbrynet\dht\node.py:193> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x1BC889B0>()]>>
Task was destroyed but it is pending!
task: <Task pending coro=<AsyncGeneratorJunction.wait_for_generators() running at c:\users\thoma\documents\lbry\lbrynet\dht\protocol\async_generator_junction.py:49> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x1BC991D0>()]>>
2019-03-28 03:39:59,032 INFO lbrynet.blob_exchange.client:126: downloaded e8d28725 from 18.213.255.15:5567
Task exception was never retrieved
future: <Task finished coro=<AsyncGeneratorJunction.aclose.<locals>._aclose() done, defined at c:\users\thoma\documents\lbry\lbrynet\dht\protocol\async_generator_junction.py:75> exception=StopAsyncIteration()>
Traceback (most recent call last):
File "c:\users\thoma\documents\lbry\lbrynet\dht\protocol\async_generator_junction.py", line 82, in _aclose
raise StopAsyncIterati
[x] resolve has "channel_name": null,
for valid content w/ channels like lbry://five
[x] certificate missing?
2019-03-29 10:11:08,628 WARNING lbrynet.wallet.resolve:413: lbry://amazing-tiny-house-skoolie-conversion#e41ea08c93fc01f7b1ec05312331411e879b7c43 has an invalid signature
2019-03-29 10:11:08,631 WARNING lbrynet.wallet.resolve:188: Certificate b949499dee6f17f4e06c9e2fcdd1c797c1ee0be5 not found
2019-03-29 10:11:08,633 WARNING lbrynet.wallet.resolve:413: lbry://crypto-market-trends-privacy-navcoin#c2a848e3c49c0d95861fbe8c1bbe8d78da6e1577 has an
[x] Saw this in my metadata:
"txid": "a74036697a12819561d34409196982a1661a56d8b9c6f60a75203e09f85e742f",
"type": "update",
"value": {
"stream": {
"fee": {
"address": "bJa4G6jo68EBbrx6odBwiiucTu8DAhxDLm",
"currency": "USD"
"permanent_url": "testdeletepub#dea11f631c090511af627b1ff3780e5dddcd5260",
"txid": "dfe9e5c86f2dd527e056ce80cc8931e8c03257b5273e45500077d4afbb82e33f",
"type": "claim",
"value": {
"stream": {
"fee": {
"address": "bDAHvFTYqeMBMqGwuah1ssSiK8WqVL9JxT",
"amount": "200000000"
},
[x] pagination not working on claim search - doesn't return correct number of pages or items. See lbrynet claim search --channel_id=20ad9090184d7812970b0ab75e94565b3aec5807 --page_size=5
Traceback (most recent call last):
File "c:\users\thoma\documents\lbry\lbrynet\wallet\ledger.py", line 70, in resolve
return await resolver._handle_resolutions(resolutions, uris, page, page_size)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 33, in _handle_resolutions
await self._handle_resolve_uri_response(uri, resolution, page, page_size)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 140, in _handle_resolve_uri_response
page=page, page_size=page_size)
File "c:\users\thoma\documents\lbry\lbrynet\wallet\resolve.py", line 293, in get_channel_claims_page
raise IndexError("claim %i greater than max %i" % (start_position, upper_bound))
IndexError: claim 5 greater than max 4
[x] when switching between protobuf changes in rc1>rc2, I get protobuf parse errors
[x] when using support abandon to keep a certain amount of LBC, the kept amount should return to the address of the claim (original spent address).
[x] lots of these when closing lbrynet
task: <Task pending coro=<KademliaProtocol.handle_response_datagram() running at c:\users\thoma\documents\lbry\lbrynet\dht\protocol\protocol.py:462> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x08B73C50>()]>>
Task was destroyed but it is pending!
[x] when running locally from source, I get
c:\Users\thoma\Documents\lbry>lbrynet publish --name=test-new-metadata --bid="0.001" --file_path="C:\Users\thoma\Downloads\LBRY\linux-sucks-in-space-april-27.mp4" --title=metaaaaaaa1 --description="first new metadata publish on mainnet!" --channel_id=20ad9090184d7812970b0ab75e94565b3aec5807 --author=thomas --tags=FIRSTTAG! --tags=SECOND-TAG! --preview
"a bytes-like object is required, not 'Claim'"
[x] cannot update channel: C:\Users\thoma\Documents\lbry>lbrynet channel update --claim_id=da0a132d7261cb52052f39ca43c983d1c0995187 --tags="new tags" --tags=tag2 --title="new title" --description="new desc" --language="en" --contact_email="tom@lbry.io" --homepage_url="test.com" --thumbnail_url="test2.com" --cover_url="test3.com" --preview "'Channel' object has no attribute 'clear-tags'"
[x] rename hash > sd_hash
[x] fix public key encoding "public_key": "MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEFrKgYK3xxrX/ZMD8dclfCBpDXSy4wZvzRGVHWwaUm6CXjqw5F6CUDAUhOy6dTqwmipuXovpwOQzHVLu+p0oCGw==",
[x] can't update claim: C:\Users\thoma\Desktop>lbrynet stream update --claim_id=b9e94a3fa339886e1d44b8cca771c9a1ef983d7d --tags="thirddddd" --preview "'Stream' object has no attribute 'clear-tags'"
[x] cannot publish with a channel (bring back --channel_name too!) No error from this:
lbrynet publish --name=test-new-metadata --bid="0.001" --file_path="C:\Users\thoma\Downloads\LBRY\xxxxx.mp4" --stream_type="video" --title=metaaaaaaa1 --description="first new metadata publish on mainnet!" --channel_id=20ad9090184d7812970b0ab75e94565b3aec5807 --author=thomas --preview
[x] fix publish to allow metadata only / file only updates.
more checked items
[x] --preview not working on publish/stream when channel_id is used. In 0.36, it's working with channel_id, broken for channel_name. Update: broken for channel_id on 36 sometimes too.
[x] doc strings in usage for publish command are not in the same order as the options.
[x] The below command with channel_name didn't work to sign with channel
lbrynet publish --name=036pub2 --bid=0.0001 --file_path="C:\Users\thoma\Downloads\LBRY\fXGcXN6e-qLjnc7_5_OJzE0n.jpg" --tags="tag1" --tags="tag2" --languages="en" --languages="es" --locations="42.990605:-71.460989" --locations="::Manchester" --title="2nd 0.36 pub with channel" --description="0.36!!!!\nwhoop!" --fee_amount=1 --fee_currency=USD --author="036author" --license="All Rights Reserved 0.36" --license_url="tom.com" --release_time=1555951920 --channel_name=@036chan
[x] stream update / publish WITH A NEW FILE should delete old file list entry (not file on disk) + blobs (confirmed this is not happening). For metadata update, it should update the file list entry with new metadata/outpoint (confirmed this is not happening until restart or if you call get again).
[x] publish api needs --clear_channel
[x] Allow channel_name on claim search also (and anywhere we allow channel id)? It must allow the channel to be passed via URL also - this is how the apps used to do claim list by channel and is a blocker for release. We used to do this and it should still be supported: lbrynet claim list_by_channel @jiggytom#20ad9090184d7812970b0ab75e94565b3aec5807
[x] add clear_fee to publish/stream update commands.
[x] file size / file name as options for publish/update - For Niko + YT sync updates.
[x] permanent url format in resolve vs claim list: "permanent_url": "lbry://036pub1#cda25338628bada976a78e7d04367ca075bde397", / "permanent_url": "036pub1#cda25338628bada976a78e7d04367ca075bde397".
Made comments/broke out existing issues
Will continue to add more as I find em...
[ ] WILL NOT BE HANDLED PER LEX handle null case when passed to various stream/channel commands. Currently it fails with:
[x] if resolve match existing file list entry, update file list entry. SAVE RESOLVE RESULTS. Victor aware of this one.
[x] standardize on confirmations vs depth - we use one in some places, and the other in others.
[ ] ALREADY FILED we need to be able to sort by release time (default to claim transaction time if not set): https://github.com/lbryio/lbry/issues/1983. We may also want the ability to sort by claim transaction time vs release timestamp.
[ ] seeing lots of these on shutdown:
[ ] WILL BE CLEANED UP LATER Resolve has "has signature" (even without a channel), claim list doesn't (if there is a channel, it does have "is channel_signature_valid")
[ ] HAVEN'T SEEN THIS HAPPENING AND IT DIDN'T CAUSE ERRORS. Seeing the below assertion error when updating a claim with metadata only
[ ] seeing this on shutdown after publishing
[ ] FILED Are we still keeping the certificate part of a resolve if we're adding channel value to the claim itself? Now we have repeating info in about 3 places (i.e claim name in certificate, claim, and signing channel).
[ ] ALREADY FILED claim search should return total number of items that meet the criteria. When passing channel id/name, it should show the total in the channel.
[ ] FILED pass file list data through json encoder (i.e. sdhash in metadata is incorrect -
K9Mekqefe8mWphH+cIaL8Mu/kroN4kTU9SoPSvGLANx4j0pJOgVT71GdcNqqUUSJ
)[ ] better handling of publish failures (and possibly other commands). If something were wrong, you'd just get the syntax back without any hint as is missing/what to fix.
[ ] ALREADY FILED return error when broadcast fails
[ ] FILED add --blocking to more calls? Might be good for things like channel creation / publishing, to make sure it actually goes through before making other calls like claim/channel list.