text:
incorrect results with tags + not_tags being same tag value

When you run a claim search with tags/not_tags being the same value, you get bogus results, see below. This should return a blank list.
{"method": "claim_search", "params":{"any_tags": ["porn"], "not_tags": ["mature", "porn", "nsfw", "xxx"], "no_totals": true, "page": 1}}
Results:
    "jsonrpc": "2.0",
    "result": {
        "items": [
            {
                "address": "bQt1P1w4wL7pynogAnkPgDxKjr4WpM5YAB",
                "amount": "0.01",
                "canonical_url": "lbry://@Jason-McVicar#e/defining-true-blessedness-dexter-chua#6",
                "claim_id": "6c8944ed2f19c839b8afeb9162040a6ad0e3ffff",
                "claim_op": "create",
                "confirmations": 25263,
                "height": 591065,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 591065,
                    "creation_height": 591065,
                    "creation_timestamp": 1561627097,
                    "effective_amount": "0.01",
                    "expiration_height": 2693465,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 591065,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "defining-true-blessedness-dexter-chua",
                "normalized_name": "defining-true-blessedness-dexter-chua",
                "nout": 0,
                "permanent_url": "lbry://defining-true-blessedness-dexter-chua#6c8944ed2f19c839b8afeb9162040a6ad0e3ffff",
                "short_url": "lbry://defining-true-blessedness-dexter-chua#6",
                "signing_channel": {
                    "address": "bK9881qmfPe3hh8Uybx5Cv36B8V65zKiSe",
                    "amount": "0.01",
                    "canonical_url": "lbry://@Jason-McVicar#e",
                    "claim_id": "e3cc9c350d3dcfce05c1699b08db34f2c5cce1b7",
                    "claim_op": "create",
                    "confirmations": 25264,
                    "height": 591064,
                    "meta": {
                        "activation_height": 591064,
                        "claims_in_channel": 38,
                        "creation_height": 591064,
                        "creation_timestamp": 1561626695,
                        "effective_amount": "0.01",
                        "expiration_height": 2693464,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 591064,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@Jason-McVicar",
                    "normalized_name": "@jason-mcvicar",
                    "nout": 0,
                    "permanent_url": "lbry://@Jason-McVicar#e3cc9c350d3dcfce05c1699b08db34f2c5cce1b7",
                    "short_url": "lbry://@Jason-McVicar#e",
                    "timestamp": 1561626695,
                    "txid": "2dea897b04f6f7e96453ef5f84c326802e4cf2fad199cdad2967d488bc74cdd5",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCQfwXUI1NROpXrrdChaqyig"
                        },
                        "description": "Preaching and teaching.",
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004361105b291261cea08526b489b664ce3b314cfc5585024d0f6bf45e846cdbadf8e1ad7664e9d824b265461fdf37c092a5e9eaff52b1da3e892772c0c6bd45796",
                        "public_key_id": "bEERBAZoM5cFRwWzQBuNnyf2nUiJSzyndx",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCQfwXUI1NROpXrrdChaqyig"
                        },
                        "title": "Jason McVicar"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1561627097,
                "txid": "5a4c8d33972bf309dad5065a2bfc7b4d2db28e991b54454bcd12c910f549e92d",
                "type": "claim",
                "value": {
                    "description": "This channel features teaching and preaching out of Fredericton Christian Church as well as creative and experimental projects.\n...\nhttps://www.youtube.com/watch?v=QYmre8IanJg",
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1548770757",
                    "source": {
                        "hash": "15683f79fa3a9c304fdb34e5286ea3b8be3ecbd0a8f938eac894a94a359f8a1dbab9d59e464df52a8be763593f94329d",
                        "media_type": "video/mp4",
                        "name": "defining-true-blessedness.mp4",
                        "sd_hash": "0dc442af5d88d3f40a56bd848134bb5c3a11d4e5c4bf899a20c1ba1dc39d1e913b5d5869c995fa1d1ce340c3d2201388",
                        "size": "107229564"
                    },
                    "stream_type": "video",
                    "tags": [
                        "beliefs",
                        "bible",
                        "christian",
                        "church",
                        "fredericton",
                        "fredericton christian church",
                        "fredericton new brunswick",
                        "god",
                        "holy spirit",
                        "jason mcvicar",
                        "jesus",
                        "new brunswick",
                        "preaching",
                        "teaching",
                        "education"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/QYmre8IanJg"
                    },
                    "title": "Defining True Blessedness - Dexter Chua - Fredericton Christian Church",
                    "video": {
                        "duration": 2561,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bLVQT7Q6LiGeSo2wWRJuFYPhomDoRbtFee",
                "amount": "0.01",
                "canonical_url": "lbry://@CaserosenYoutube#f/si-aloe-vera-y-aceite-esencial-pueden#a",
                "claim_id": "a9397df01364d9c58c744584866e3261eedeffff",
                "claim_op": "create",
                "confirmations": 26812,
                "height": 589516,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 589516,
                    "creation_height": 589516,
                    "creation_timestamp": 1561378883,
                    "effective_amount": "0.01",
                    "expiration_height": 2691916,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 589516,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "si-aloe-vera-y-aceite-esencial-pueden",
                "normalized_name": "si-aloe-vera-y-aceite-esencial-pueden",
                "nout": 0,
                "permanent_url": "lbry://si-aloe-vera-y-aceite-esencial-pueden#a9397df01364d9c58c744584866e3261eedeffff",
                "short_url": "lbry://si-aloe-vera-y-aceite-esencial-pueden#a",
                "signing_channel": {
                    "address": "bVGDMKhfZxcW5rNTWuftdQ4v4g6PscszZp",
                    "amount": "0.01",
                    "canonical_url": "lbry://@CaserosenYoutube#f",
                    "claim_id": "f58b8ec9dc69bd7875a5e991afd1a594368f845e",
                    "claim_op": "create",
                    "confirmations": 26813,
                    "height": 589515,
                    "meta": {
                        "activation_height": 589515,
                        "claims_in_channel": 107,
                        "creation_height": 589515,
                        "creation_timestamp": 1561378672,
                        "effective_amount": "0.01",
                        "expiration_height": 2691915,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 589515,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@CaserosenYoutube",
                    "normalized_name": "@caserosenyoutube",
                    "nout": 0,
                    "permanent_url": "lbry://@CaserosenYoutube#f58b8ec9dc69bd7875a5e991afd1a594368f845e",
                    "short_url": "lbry://@CaserosenYoutube#f",
                    "timestamp": 1561378672,
                    "txid": "2e250091680f9b93e702e558457eef85158bae80ee0065979c8132f31b7bf63c",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCHRwi1a-WFadE9w3JakBeUA"
                        },
                        "description": "Caseros En YouTube Es un canal que tiene como finalidad darte los mejores consejos para que tengas una vida plena, además de ello tenemos para ti los mejores consejos naturales de salud y tips para asegurar tu bienestar físico y emocional. Tenemos para ti las mejores dietas y bebidas adelgazantes para que pierdas peso en poco tiempo, además de muchos consejos para la belleza del rostro, cabello y cuerpo en general. Visítanos y disfruta de toda esta valiosa información",
                        "locations": [
                            {
                                "country": "US"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004eede06de9673b372ba5337ab943194c5c38d94082c9947f3fb3a31c0e12373c9be69890b6020fdcf523e09715ea5e140b4afa68ccf41b5a5b406d13cc2a07073",
                        "public_key_id": "bQNLL8QVzpxaXkXkSqr8r12twej8JhhE1E",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCHRwi1a-WFadE9w3JakBeUA"
                        },
                        "title": "Caseros En Youtube"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1561378883,
                "txid": "5f7a087f335627e432c95b06084fc30f051d3e3974d6cfaab79ef9c627cc4b66",
                "type": "claim",
                "value": {
                    "description": "Si! 😱 Aloe Vera y Aceite esencial pueden volver atrás cualquier parte de tu piel\nSuscríbete es Gratis:  https://goo.gl/SCvFnX\n\n\n IMPORTANTE: Las informaciones expuestas en este video, tienen el único propósito de educar y no pretenden sustituir el consejo o diagnostico de un médico.\n...\nhttps://www.youtube.com/watch?v=uHpLnRE_w3c",
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1555808080",
                    "source": {
                        "hash": "f29cb41f8d5b3786c670eb19846af071152bfb0152e4ecca0de118806626e8a2c0093a21786bcda82e3f9172d4fc81c8",
                        "media_type": "video/mp4",
                        "name": "si-aloe-vera-y-aceite-esencial.mp4",
                        "sd_hash": "2f2af3334b38fa4c98c21834b3b8d0b3c9f225fb40dce1cf4eccfc3852b680adad0e17adf172466d238490ddb3dcb397",
                        "size": "29656053"
                    },
                    "stream_type": "video",
                    "tags": [
                        "aceite esencial de incienso",
                        "aceite esencial de menta",
                        "aceite esencial de romero",
                        "aloe vera",
                        "remedios caseros",
                        "remedios para la piel",
                        "howto & style"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/uHpLnRE_w3c"
                    },
                    "title": "Si! 😱 Aloe Vera y Aceite esencial pueden volver atrás cualquier parte de tu piel",
                    "video": {
                        "duration": 288,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bP9CBtSYZXL3HuPtg9MdRY1z46aP4cf1CX",
                "amount": "0.01",
                "canonical_url": "lbry://@aseedoflight#1/dcbc51b7fedd64d-1#2",
                "claim_id": "2d037b88af4e6a18e5cea5e5423db85b0edcffff",
                "claim_op": "create",
                "confirmations": 1778,
                "height": 614550,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 614550,
                    "creation_height": 614550,
                    "creation_timestamp": 1565426558,
                    "effective_amount": "0.01",
                    "expiration_height": 2716950,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 614550,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "dcbc51b7fedd64d-1",
                "normalized_name": "dcbc51b7fedd64d-1",
                "nout": 0,
                "permanent_url": "lbry://dcbc51b7fedd64d-1#2d037b88af4e6a18e5cea5e5423db85b0edcffff",
                "short_url": "lbry://dcbc51b7fedd64d-1#2",
                "signing_channel": {
                    "address": "bQdriXNSfpRapGsmhPEfqiL3irULxYPnhU",
                    "amount": "0.01",
                    "canonical_url": "lbry://@aseedoflight#1",
                    "claim_id": "1160a618a567cb5ea42dcce422f969f63615a143",
                    "claim_op": "create",
                    "confirmations": 1793,
                    "height": 614535,
                    "meta": {
                        "activation_height": 614535,
                        "claims_in_channel": 318,
                        "creation_height": 614535,
                        "creation_timestamp": 1565424361,
                        "effective_amount": "0.01",
                        "expiration_height": 2716935,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 614535,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@aseedoflight",
                    "normalized_name": "@aseedoflight",
                    "nout": 0,
                    "permanent_url": "lbry://@aseedoflight#1160a618a567cb5ea42dcce422f969f63615a143",
                    "short_url": "lbry://@aseedoflight#1",
                    "timestamp": 1565424361,
                    "txid": "71d2f8b30ebc311d58a749464af170ca1d32f17ad6611885496639af6cd62fd2",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UClXAk91DXIjSW4jZgEp6tww"
                        },
                        "description": "القناة الرسمية للباحث محمد الكيلاني\nhttp://mkilani.com",
                        "public_key": "3056301006072a8648ce3d020106052b8104000a034200042cf06552415cf662e63671325a812d416e9850d9e2dba919973c3eec3a75a44efd0060949a43a16613573a52bbd77be19623f02c11c5553009fefe115427988d",
                        "public_key_id": "bKXaattrF1CWrVjKcw2kiy4Lx2EtJ5XSWf",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UClXAk91DXIjSW4jZgEp6tww"
                        },
                        "title": "Mohammed Kilani"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1565426558,
                "txid": "4e28f30a27b16950cc6863be918898a60ee539df6e21f677695386afd8d6797e",
                "type": "claim",
                "value": {
                    "description": "الصور التي تحدثت عنها السيدة هيا\nhttp://mkilani.com/files/haya-photos.pdf\n\nللاستماع إلى بث الراديو كل يوم جمعة\nhttp://mkilani.com\n\n* جميع المعلومات و الإجراءات تطوعية من قبل الأصدقاء و مقدمة كمعلومات للبحث العلمي، و ليس كمعلومات طبية علاجية.\n...\nhttps://www.youtube.com/watch?v=g8UJmTEfJFk",
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1525343093",
                    "source": {
                        "hash": "44a1a54842764e35f25dd2dc813cd9a462151db8ed63474cf93e72a30fe595114b42578c5e7c39160660216f381c260b",
                        "media_type": "video/mp4",
                        "name": "g8UJmTEfJFk.mp4",
                        "sd_hash": "e398b5d87c1450da84a87946c40cc65efef35b8bc191aa47340086a15afb06b54b27e10dcf8048fab36c7604bca24cb1",
                        "size": "82137554"
                    },
                    "stream_type": "video",
                    "tags": [
                        "cancer cure",
                        "caroline myss",
                        "chakras",
                        "dmso",
                        "dmt",
                        "kundalini",
                        "pineal",
                        "santos bonacci",
                        "people & blogs"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/g8UJmTEfJFk"
                    },
                    "title": "وصفات لشهر رمضان | مشاركات من الأصدقاء",
                    "video": {
                        "duration": 3205,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bR7zG9UphEve1iNybdJzrV9Vsuu9ExNQDR",
                "amount": "0.01",
                "canonical_url": "lbry://@GamingGazer#1/rebuilding-foundation-super-mario-maker#6",
                "claim_id": "6bb3ab493833e049d5237eaa4fab4e0bf7d8ffff",
                "claim_op": "create",
                "confirmations": 19353,
                "height": 596975,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 596975,
                    "creation_height": 596975,
                    "creation_timestamp": 1562599242,
                    "effective_amount": "0.01",
                    "expiration_height": 2699375,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 596975,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "rebuilding-foundation-super-mario-maker",
                "normalized_name": "rebuilding-foundation-super-mario-maker",
                "nout": 0,
                "permanent_url": "lbry://rebuilding-foundation-super-mario-maker#6bb3ab493833e049d5237eaa4fab4e0bf7d8ffff",
                "short_url": "lbry://rebuilding-foundation-super-mario-maker#6",
                "signing_channel": {
                    "address": "bTYjkNSSsri2gP8WeKFyTj741ZN7yzzuAU",
                    "amount": "0.01",
                    "canonical_url": "lbry://@GamingGazer#1",
                    "claim_id": "1029769e83baad5a6dc6aef06090c51414f79078",
                    "claim_op": "create",
                    "confirmations": 19376,
                    "height": 596952,
                    "meta": {
                        "activation_height": 596952,
                        "claims_in_channel": 1059,
                        "creation_height": 596952,
                        "creation_timestamp": 1562595798,
                        "effective_amount": "0.01",
                        "expiration_height": 2699352,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 596952,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@GamingGazer",
                    "normalized_name": "@gaminggazer",
                    "nout": 0,
                    "permanent_url": "lbry://@GamingGazer#1029769e83baad5a6dc6aef06090c51414f79078",
                    "short_url": "lbry://@GamingGazer#1",
                    "timestamp": 1562595798,
                    "txid": "8da48b497ac36e6e25e5c4fc1d913f92782aa2a0644420e563ac8c602c8053f8",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UC7PjmXtfQ_dzlS6bEpruRxg"
                        },
                        "description": "Hey guys, my name is Bradley AKA GamingGazer and welcome to my YouTube channel!\n\nAll business inquiries please send me an email at GamingGazer@Gmail.com labeled \"Business Inquiry\"",
                        "languages": [
                            "en"
                        ],
                        "locations": [
                            {
                                "country": "US"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004f055810ab7949a73356a4aed934d771c6f715322ac983094a2d7a58d18609464656a98f99da70afe02dffc75b92cc25fbb656b8c60c4dd5522fb3e9ec3ff59b2",
                        "public_key_id": "bN6eaRNbQgs9bNq4oLsAyxkxDC4hvjcb9Q",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UC7PjmXtfQ_dzlS6bEpruRxg"
                        },
                        "title": "GamingGazer"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1562599242,
                "txid": "1b012d35f4b70a6c13ec0a14cf1eae6e935132db26f8a0cbf965f3890b53e7b4",
                "type": "claim",
                "value": {
                    "description": "REBUILDING FOUNDATION | Super Mario Maker 2 | Gameplay Playthrough Part 1 | Nintendo Switch\nNEXT PART ► PLAYLIST ► \nSUBSCRIBE ► http://bit.ly/GamingGazer ► Thanks for every Like, Share, and Comment! ◄\n\nThis is part 1 of the story mode playthrough for Super Mario Maker 2.  This includes the levels to complete the castle foundation.\n\n►Thanks for watching my [] gameplay and walkthrough! I'm playing this game on [], but it is also available for other platforms as well! You may have seen a trailer or review, but this playthrough will feature my impressions, reactions, and commentary throughout the full story including the ending! If you're a fan of [], then let's play []!\n\n►[GAME SUMMARY]◄\n\n...\nhttps://www.youtube.com/watch?v=FIJSYp_g5Jw",
                    "languages": [
                        "en"
                    ],
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1561917541",
                    "source": {
                        "hash": "c5e817c423ebd8c1fc7e9f84748d677f741d6ea15044d7879f2fbda806d8a85a4e1797dcc9c3bcbee6337443066d4701",
                        "media_type": "video/mp4",
                        "name": "rebuilding-foundation-super.mp4",
                        "sd_hash": "6bd0c9b2e8544117566c82d6d4a6a66402876e3ae91e257f3eaa75617c07fa2d234b0bfe2970bbd3e7f70178f8ab4099",
                        "size": "151264818"
                    },
                    "stream_type": "video",
                    "tags": [
                        "gaming",
                        "castle",
                        "foundation",
                        "game",
                        "gameplay",
                        "gamer",
                        "games",
                        "gaminggazer",
                        "gazer",
                        "maker",
                        "mario",
                        "mario maker",
                        "playthrough",
                        "super mario",
                        "super mario maker",
                        "super mario maker 2",
                        "videogame",
                        "walkthrough",
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/FIJSYp_g5Jw"
                    },
                    "title": "REBUILDING FOUNDATION | Super Mario Maker 2 | Gameplay Playthrough Part 1 | Nintendo Switch",
                    "video": {
                        "duration": 873,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bQRGNyLgmnHgpg2vNG5f4281byq642hrgn",
                "amount": "0.01",
                "canonical_url": "lbry://@GamingwithAzlin#5/minecraft-azlin-s-land-of-fun-s3-ep-6#a",
                "claim_id": "acd8d19c2056c2dfb9485e1e1494683fc1d6ffff",
                "claim_op": "update",
                "confirmations": 18566,
                "height": 597762,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 442087,
                    "creation_height": 442087,
                    "creation_timestamp": 1537808302,
                    "effective_amount": "0.01",
                    "expiration_height": 2544487,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 442087,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "minecraft-azlin-s-land-of-fun-s3-ep-6",
                "normalized_name": "minecraft-azlin-s-land-of-fun-s3-ep-6",
                "nout": 0,
                "permanent_url": "lbry://minecraft-azlin-s-land-of-fun-s3-ep-6#acd8d19c2056c2dfb9485e1e1494683fc1d6ffff",
                "short_url": "lbry://minecraft-azlin-s-land-of-fun-s3-ep-6#a",
                "signing_channel": {
                    "address": "bJUFrjxRMXdeKMt4ehUzMbRTgbqBZpZrm6",
                    "amount": "0.01",
                    "canonical_url": "lbry://@GamingwithAzlin#5",
                    "claim_id": "551c5a93ad4cec6d4560b0f26ffc17c605cadeac",
                    "claim_op": "update",
                    "confirmations": 18568,
                    "height": 597760,
                    "meta": {
                        "activation_height": 442073,
                        "claims_in_channel": 171,
                        "creation_height": 442073,
                        "creation_timestamp": 1537806330,
                        "effective_amount": "0.01",
                        "expiration_height": 2544473,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 442073,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@GamingwithAzlin",
                    "normalized_name": "@gamingwithazlin",
                    "nout": 0,
                    "permanent_url": "lbry://@GamingwithAzlin#551c5a93ad4cec6d4560b0f26ffc17c605cadeac",
                    "short_url": "lbry://@GamingwithAzlin#5",
                    "timestamp": 1562729100,
                    "txid": "1a98964ff1ca3fefb8c5b4c5b02ad95f1d2e577784c91c1f105f0cc8f427cba1",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCGykw1s2LUJS-So2vT7WTdg"
                        },
                        "description": "Hello and welcome to my channel I think we will have a great time together\n I hope you all will enjoy my content.:D",
                        "locations": [
                            {
                                "country": "CA"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004dc19f961ccf76b303c6dc839fe7fb50348dec845be45e223f4166cdd6eaa3f8173af89047643d5390e3db4b0e2a66643d2a7fc0d809fd5b75a190de9fee3ebef",
                        "public_key_id": "bSUhWeK6ohDLdoWjjA22yM9TLcqkj64jMb",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCGykw1s2LUJS-So2vT7WTdg"
                        },
                        "title": "GamingwithAzlin"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1562729289,
                "txid": "8cd257f4aefd40f97256035e03cd741984413b87aff7894c1723d3fbf3fb01ac",
                "type": "claim",
                "value": {
                    "description": "Hope you all have a good day! :D\n...\nhttps://www.youtube.com/watch?v=hqnKfecocyA",
                    "languages": [
                        "en"
                    ],
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1511134732",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "4170f121d4c6c812c2e69f82ae966e4dae5e37d73c4fb66bfb49afa729d2c9e54ef583c9236829c3fadfb708b07c34f3",
                        "size": "483286055"
                    },
                    "stream_type": "video",
                    "tags": [
                        "gaming",
                        "azlin'slandoffun",
                        "gamingwithazlin",
                        "minecraft",
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/hqnKfecocyA"
                    },
                    "title": "Minecraft | Azlin's Land Of Fun | S3 EP 6 | Look at the Sheep!?!?!",
                    "video": {
                        "duration": 1883,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "baNU6ifSyFnTkXRmNNG7U4yCPkQtrYf3Jv",
                "amount": "0.01",
                "canonical_url": "lbry://@Vandel#f/shantae-half-genie-hero-ep-03-fake#d",
                "claim_id": "d7c3192b8e609c874a904e0d782d011de9d2ffff",
                "claim_op": "update",
                "confirmations": 13874,
                "height": 602454,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 430949,
                    "creation_height": 430949,
                    "creation_timestamp": 1536034697,
                    "effective_amount": "0.01",
                    "expiration_height": 2533349,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 430949,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "shantae-half-genie-hero-ep-03-fake",
                "normalized_name": "shantae-half-genie-hero-ep-03-fake",
                "nout": 0,
                "permanent_url": "lbry://shantae-half-genie-hero-ep-03-fake#d7c3192b8e609c874a904e0d782d011de9d2ffff",
                "short_url": "lbry://shantae-half-genie-hero-ep-03-fake#d",
                "signing_channel": {
                    "address": "bV5J98qRN9KzYi3CtKhoitpwKgmcWEMwCT",
                    "amount": "0.01",
                    "canonical_url": "lbry://@Vandel#f",
                    "claim_id": "f3d36daf18fc8770bd36d78bbb0e01a9e84ad232",
                    "claim_op": "update",
                    "confirmations": 18480,
                    "height": 597848,
                    "meta": {
                        "activation_height": 430943,
                        "claims_in_channel": 216,
                        "creation_height": 430943,
                        "creation_timestamp": 1536034015,
                        "effective_amount": "0.01",
                        "expiration_height": 2533343,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 430943,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@Vandel",
                    "normalized_name": "@vandel",
                    "nout": 0,
                    "permanent_url": "lbry://@Vandel#f3d36daf18fc8770bd36d78bbb0e01a9e84ad232",
                    "short_url": "lbry://@Vandel#f",
                    "timestamp": 1562743431,
                    "txid": "a871c3c0fd86f404d1481ff3f04b00a51e9d9981086e22471c511c1450b1b3d3",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCmIc3OIlJjlM0POa3-sZHYA"
                        },
                        "description": "Just doing what I do best, and sharing for everyone to enjoy.",
                        "locations": [
                            {
                                "country": "GB"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004803e384d4b3100ebe15bb513d77c537294f140fff93f1f9963cd0e209197f428de79138e5ef0d77b5acc3b45022027f6439926e080da0d12957ddf6ac0546b3e",
                        "public_key_id": "bXqNp2x27YWvBGbKshy2fjokiC4TkThC7M",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCmIc3OIlJjlM0POa3-sZHYA"
                        },
                        "title": "Vandel"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1563484721,
                "txid": "d99d67dcbfdaf3297f248d310c6380ff9257da275be75939bd66fd3ead924e0b",
                "type": "claim",
                "value": {
                    "description": "Patreon: https://www.patreon.com/vandel\nWe infiltrate a mermaid counterfeiting business. Fight off the head honcho, save the mermaid queen, and become a crab?!\n\nIf you just started on this series click the link below to watch the playlist:\nhttps://www.youtube.com/playlist?list=PLYZwnavoEIgUA33MnKCRpU1WVURVlyFk6\n\nPrevious Episode: https://youtu.be/bdelROoBzvI\n\nNew to this channel? Try my Terra Tech series!\nhttps://www.youtube.com/watch?v=4eDzZE3c79M&list=PLYZwnavoEIgUjZRb63xacJiBxAX2q9NpZ\n...\nhttps://www.youtube.com/watch?v=5l8fEVQBTe8",
                    "languages": [
                        "en-GB"
                    ],
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1484472630",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "0d0f89b76ce9a3204d8318c62bfdcf6fa49ab0e779e0289ff564f65b70bb4c6799f7a6513108e8557f4a3be3cf428f04",
                        "size": "506296084"
                    },
                    "stream_type": "video",
                    "tags": [
                        "pop culture",
                        "anime",
                        "bolo",
                        "fake mermaid",
                        "genie",
                        "hard hair",
                        "kidnapped",
                        "magic",
                        "magic hair",
                        "megaman like game",
                        "mermaid",
                        "mermaid queen",
                        "new game",
                        "platformer",
                        "shantae",
                        "shantae half genie hero",
                        "techno baron",
                        "transform",
                        "vandel",
                        "way forward",
                        "wayforward",
                        "weapon hair",
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/5l8fEVQBTe8"
                    },
                    "title": "Shantae Half-Genie Hero Ep 03 - Fake Mermaids?!",
                    "video": {
                        "duration": 1921,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bQ3WmMMg7nDWCfCQWCStNKr2kGtEth5syB",
                "amount": "0.01",
                "canonical_url": "lbry://@jaysgaming#1/fr-stellaris-megacorps-la-f-d-ration-21#8",
                "claim_id": "8e6f725daff4cc32e422e8d210c63f8690d2ffff",
                "claim_op": "update",
                "confirmations": 28000,
                "height": 588328,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 511694,
                    "creation_height": 511694,
                    "creation_timestamp": 1548926083,
                    "effective_amount": "0.01",
                    "expiration_height": 2614094,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 511694,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "fr-stellaris-megacorps-la-f-d-ration-21",
                "normalized_name": "fr-stellaris-megacorps-la-f-d-ration-21",
                "nout": 0,
                "permanent_url": "lbry://fr-stellaris-megacorps-la-f-d-ration-21#8e6f725daff4cc32e422e8d210c63f8690d2ffff",
                "short_url": "lbry://fr-stellaris-megacorps-la-f-d-ration-21#8",
                "signing_channel": {
                    "address": "bHa8Rpt8UFhTZPcS5rb5AWX7seXZWCJzsU",
                    "amount": "0.01",
                    "canonical_url": "lbry://@jaysgaming#1",
                    "claim_id": "12fb5a1e4c2b6bb75b624951a8a8eab3cc39a446",
                    "claim_op": "update",
                    "confirmations": 28033,
                    "height": 588295,
                    "meta": {
                        "activation_height": 352345,
                        "claims_in_channel": 2808,
                        "creation_height": 352345,
                        "creation_timestamp": 1523475474,
                        "effective_amount": "0.01",
                        "expiration_height": 2454745,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 352345,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@jaysgaming",
                    "normalized_name": "@jaysgaming",
                    "nout": 0,
                    "permanent_url": "lbry://@jaysgaming#12fb5a1e4c2b6bb75b624951a8a8eab3cc39a446",
                    "short_url": "lbry://@jaysgaming#1",
                    "timestamp": 1561184856,
                    "txid": "d9bc28190b0ea35bee6793a94bbc4b49830c8f8173013140a283ab1d1f9e3e04",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCFAkedtc3jjDZQqqIULxqWg"
                        },
                        "description": "Chaîne de gameplay et d'aperçus sur des jeux de stratégie/gestion/simulation et jeux indépendants.\n\nJe fais des vidéos commentées de jeux, en général de stratégie tels que Hearts of Iron 4, Total War Warhammer, Stellaris, etc.\n\nSi vous appréciez mon travail, n'hésitez pas à commenter sur les vidéos qui vous plaise, vous abonner et cliquer sur j'aime, cela m'aidera beaucoup à atteindre une audience plus large !\n\nSi vous désirez me contacter, je vous conseille de passer par mes pages Google Plus/Facebook/Twitter ou encore Steam !\n\nEn tout cas, merci de votre visite et à très bientôt.\n\nConfig: \n\n- Intel Core i7 6700K, 16 Go DDRAM 4 DoubleChannel, ASUS Motherboard\n- Carte Graphique : Geforce GTX 980 4Go\n- Périphériques : Microphone AT2020 USB+, Joystick Saitek X52 + Palonnier, TrackIR, Souris Razer Naga Chroma, Casque Hyper X Cloud Revolver S\n\n- Logiciels de montage : Adobe Premiere Pro CC\n- Logiciel de capture & Traitement Audio : OBS Studio",
                        "languages": [
                            "fr"
                        ],
                        "locations": [
                            {
                                "country": "FR"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004a113c9174355ee578dbc2b24febc948ac4b9dc7848fcb88029676ff210342e8e6b10e79c898c541070874ef9e189bab00934ff9d251b1cfa150bff7c5b5396ea",
                        "public_key_id": "bNdU5hws1nu6u3FXeND5pPGsGKs1xF4sJR",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCFAkedtc3jjDZQqqIULxqWg"
                        },
                        "title": "Jay's"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1561190014,
                "txid": "51d7a7e712bdb27d646c1d4c52d3ec06fda680eb80fd2043c8367c3894fc8986",
                "type": "claim",
                "value": {
                    "description": "Stellaris Gameplay FR 1080p HD\r\n\r\nBonjour Citoyens ! Pour servir la Fédération et la défendre contre les Hordes d'Aliens ruches et défendre la Galaxie et tous les êtres doués de consciences partageant nos valeurs de liberté, d'égalité, et de fraternité, rejoignez l'Infanterie Mobile ! Et ainsi aidez nous à faire de notre galaxie un Havre de paix et de prospérité... Vous voulez en savoir plus ?\r\n\r\nVous pouvez trouver le jeu en suivant le lien suivant : \r\nhttp://store.steampowered.com/app/281990/Stellaris/\r\n\r\nVous pouvez suivre la série grâce à la playlist suivante :\r\nhttps://www.youtube.com/playlist?list=PLwN5tmMR349J__X3vTNswGfc-qac9RboA\r\n\r\n...\nhttps://www.youtube.com/watch?v=_jCz6aVwcEs",
                    "languages": [
                        "fr"
                    ],
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1548867610",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "c7e2e25c0187b20c9fbaf8ecea184ddbf25e522653b2062fecb528966cfe9766abde8c12e525b9557280f8bee56d6995",
                        "size": "163939900"
                    },
                    "stream_type": "video",
                    "tags": [
                        "4x",
                        "aruba stellaris",
                        "gaming",
                        "grand strategy",
                        "let's play stellaris",
                        "megacorps",
                        "paradox",
                        "stellaris battle",
                        "stellaris combat",
                        "stellaris combat gameplay",
                        "stellaris ep 1",
                        "stellaris francais",
                        "stellaris gameplay",
                        "stellaris gameplay fr",
                        "stellaris gameplay pc",
                        "stellaris let's play",
                        "stellaris megacorp",
                        "stellaris music",
                        "stellaris paradox",
                        "stellaris pc",
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/_jCz6aVwcEs"
                    },
                    "title": "[FR] Stellaris MegaCorps : La Fédération des Citoyens Unis - Épisode 21",
                    "video": {
                        "duration": 1660,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bMNs164xCptQhfu1rEwyNnQQEbZ1ak1ih2",
                "amount": "0.01",
                "canonical_url": "lbry://@GamingOnCaffeine#4/goc-qPwJpFvI4Kg#d",
                "claim_id": "d4aef2907be19d2f60d858783e9c317135c0ffff",
                "claim_op": "create",
                "confirmations": 386653,
                "height": 229675,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 229675,
                    "creation_height": 229675,
                    "creation_timestamp": 1503760524,
                    "effective_amount": "0.01",
                    "expiration_height": 2332075,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 229675,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "goc-qPwJpFvI4Kg",
                "normalized_name": "goc-qpwjpfvi4kg",
                "nout": 0,
                "permanent_url": "lbry://goc-qPwJpFvI4Kg#d4aef2907be19d2f60d858783e9c317135c0ffff",
                "short_url": "lbry://goc-qPwJpFvI4Kg#d",
                "signing_channel": {
                    "address": "bWcZtJqLp3uoRmu18LEQMPvSyvNzo6bd6B",
                    "amount": "0.01",
                    "canonical_url": "lbry://@GamingOnCaffeine#4",
                    "claim_id": "41945b55989bdd9697a6cf2c4afdca9d660b13cf",
                    "claim_op": "create",
                    "confirmations": 419067,
                    "height": 197261,
                    "meta": {
                        "activation_height": 197261,
                        "claims_in_channel": 1582,
                        "creation_height": 197261,
                        "creation_timestamp": 1498464884,
                        "effective_amount": "0.01",
                        "expiration_height": 2299661,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 197261,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@GamingOnCaffeine",
                    "normalized_name": "@gamingoncaffeine",
                    "nout": 0,
                    "permanent_url": "lbry://@GamingOnCaffeine#41945b55989bdd9697a6cf2c4afdca9d660b13cf",
                    "short_url": "lbry://@GamingOnCaffeine#4",
                    "timestamp": 1498464884,
                    "txid": "aa63d64fcca1536658bd1c3c24656bfe44cc6751b0d502286b209a69ee936fb3",
                    "type": "claim",
                    "value": {
                        "public_key": "3056301006072a8648ce3d020106052b8104000a034200042aa9bc443a98af199e2ab93419846e97cbd70ad6917b95a1ef67fbfe1d91b227b670b82094f91a1360f4365b5e1c854fa506b41114c6da80fa18b54625371cfe",
                        "public_key_id": "bDYU6Ab3F4gUneCvmKZZsDADDHG7qKvMAm"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1503760524,
                "txid": "1e9fa7cba99aa69390fff60607e2a5555e9d49f856a22e7aacbba1f650df39ca",
                "type": "claim",
                "value": {
                    "author": "Gaming On Caffeine",
                    "description": "As the sole survivor of the cataclysm you must rebuild and repopulate the planet while defeating minions of darkness that leak through from the nether realms. You must create your resources out of nothing. As the pack evolves you will need to complete quests to earn extra lives and extra rewards towards the goal of rebuilding the planet.\n\nIf you're new here's episode 1 - http://goo.gl/rH4zd0\n\nPlease Like/Fav to support the Series! It helps a lot. =D\n\nWorld Download - http://goo.gl/ADSf6j\n\nNext Episode: \nShaders - http://www.minecraftforum.net/topic/1953873-164-172-sildurs-shaders-pcmacintel/\n\nForget everything you know about Minecraft. This pack is a conversion pack. Wooden tools? Ha.. no. Try not to die in a pack inspired by Don't Starve, Terrafirmacraft , Diablo 3 and the Cooking Channel. This world wants you dead and you will need to carve out a safe place to survive.\n\nMod List:\nApplied Energistics - AlgorithmX2\nCode Chicken Core - ChickenBones\nCofh Core - King Lemming and Zeldo\nExtra Utilities - RWTema\nExtrabees and Extra Trees - Binnie\nExNihilo- ErasamusCrowley\nExAquhila - Zerokyuuni\nFlatsigns - Myrathi\nAOBD - ganymedes01\nExtraCells - m3gafr3ak\nMinetweaker -StanH\nForestry - SirSengir\nForge - Lex Manos and the Forge Team\nGravestone Mod - NightKosh\nHunger Overhaul - IguanaMan\nInfernal Mobs -- Atomic Stryker\nIronchest - Cpw\nMagic Bees - Mysterious Ages\nMineFactory Reloaded - Powercystals and Skyboy\nNEI - Chicken Bones\nNot Enough Keys - Mr. Okushama\nObsidiplates- Myrathi\nPam's Harvest Craft- Matrexsvigil\nNether Ores and PowerCrystals Core - PowerCrystals and Skyboy\nRedstone Arsenal - KingLemming and Zeldo\nSwitches - Myrathi\nThaumcraft 4 - Azanor\nThermal Expansion 3 - KingLemming and Zeldo\nBibliocraft - Nuchaz\nInfinibow - Myrathi\nOpen Blocks - OpenMods Team\nNatura and Tinker's Construct - mDiyo\nFancy Fences - Koopinator\nBlood Magic - Way of Time\nJABBA,WAILA,OPIS - Prof Mobius\nMariculture - Joshie\nJadedspawn - Minalien\nIguanaTinkersTweeks - Iguanaman\nREI Minimap - ReiFNSK\nZan's Minimap - MamiyaOtaru\nJourney Map -techbrew\n\n♥ Music: Kevin MacLeod (incompetech.com)\n\n♦ WATCH SOMETHING DIFFERENT: \n○ FTB Horizins: http://goo.gl/BJyCCJ\n○ FTB Tech World 2: http://goo.gl/fGijzs\n○ New Tekkit Season 4 : http://goo.gl/5eGLzU\n○ Charity Live Streams! : http://goo.gl/N1z9UI\n○ Adventure Map : http://goo.gl/qGI6uV\n○ Big Dig Wars : http://goo.gl/c035Ns\n○ Race For The Wool : http://goo.gl/0idPov\n○ Hexxit Let's Play : http://goo.gl/rmH8Nq\n○ Something Random : http://goo.gl/0SoowF\n\n\n●Twitter: https://twitter.com/CaffineRich\n●Subscribe: http://tinyurl.com/q9c5lrs\n\n\nTags:",
                    "languages": [
                        "en"
                    ],
                    "license": "Copyrighted (Contact Author)",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "5765184bc4dac0ddc93219ed65f128fc68ab3cdba6c02bd9ae25e939368ecccaa0c6476a28c1f24e175b71d810b8c303"
                    },
                    "stream_type": "video",
                    "thumbnail": {
                        "url": "http://berk.ninja/thumbnails/qPwJpFvI4Kg"
                    },
                    "title": "Agrarian Skies a Hardcore Quest - Part 15 - Questing!"
                },
                "value_type": "stream"
            },
            {
                "address": "bUE4p1ip3SriURhTR8UvpXqpTe29NvsswV",
                "amount": "0.01",
                "canonical_url": "lbry://@LeagueVoices#d/pulsfeuer-caitlyn-voice-deutsch-german#3",
                "claim_id": "3d45ecc4deaee1217da4ba0e55e6ee2f85a9ffff",
                "claim_op": "update",
                "confirmations": 26434,
                "height": 589894,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 430864,
                    "creation_height": 430864,
                    "creation_timestamp": 1536021486,
                    "effective_amount": "0.01",
                    "expiration_height": 2533264,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 430864,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "pulsfeuer-caitlyn-voice-deutsch-german",
                "normalized_name": "pulsfeuer-caitlyn-voice-deutsch-german",
                "nout": 0,
                "permanent_url": "lbry://pulsfeuer-caitlyn-voice-deutsch-german#3d45ecc4deaee1217da4ba0e55e6ee2f85a9ffff",
                "short_url": "lbry://pulsfeuer-caitlyn-voice-deutsch-german#3",
                "signing_channel": {
                    "address": "bN4jBGDUK2zw5WrVXTCqQeb2QoVNVz1i55",
                    "amount": "0.01",
                    "canonical_url": "lbry://@LeagueVoices#d",
                    "claim_id": "da9203df9739c60b707f04bd8644d2061d5b9b8c",
                    "claim_op": "update",
                    "confirmations": 26438,
                    "height": 589890,
                    "meta": {
                        "activation_height": 430838,
                        "claims_in_channel": 1290,
                        "creation_height": 430838,
                        "creation_timestamp": 1536017199,
                        "effective_amount": "0.01",
                        "expiration_height": 2533238,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 430838,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@LeagueVoices",
                    "normalized_name": "@leaguevoices",
                    "nout": 0,
                    "permanent_url": "lbry://@LeagueVoices#da9203df9739c60b707f04bd8644d2061d5b9b8c",
                    "short_url": "lbry://@LeagueVoices#d",
                    "timestamp": 1561438244,
                    "txid": "456972e48062d0433439cec9c3a57fdcb53ec07701a0b797b1279e0d50079691",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UCdkonRjBLzr1Adf7Jhu1bWQ"
                        },
                        "description": "Voices of the champions in League of Legends in English & Korean.",
                        "locations": [
                            {
                                "country": "US"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004ec1df2215ca8f97e2aa3b83fdf61c71dd24bf4104d0fac36b2a7896c79035f0b107ad5bc6091d780b288b917237d11964c15b90676b72e9d77ef997331a4a628",
                        "public_key_id": "bKiY6fyarJFCxmkFmFoUq1aUWNZyftEwoo",
                        "tags": [
                            "gaming"
                        ],
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UCdkonRjBLzr1Adf7Jhu1bWQ"
                        },
                        "title": "LeagueVoices"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1561438932,
                "txid": "e7dda41f9a916a5b4a8070abf4fea693b6f2a0212d3c7db00c2b22933bd26052",
                "type": "claim",
                "value": {
                    "description": "This is League of Legends Champion Pulsfeuer-Caitlyn's voice in Deutsch (German)\r\nAll sounds are taken from the ingame voice over sound banks, Champion Selection voice is not in the video.\r\nSplash art is taken from in game as well.\n...\nhttps://www.youtube.com/watch?v=G9ZxKfT1LnM",
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1494169785",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "4dd401cb491d5b6f4ff07fe227a36684d1e02d46d63913d07f7feec62f5e342ce0c13198d9b0431edafaa84ee4c21e92",
                        "size": "25377525"
                    },
                    "stream_type": "video",
                    "tags": [
                        "beliefs",
                        "gaming",
                        "death",
                        "league",
                        "league of legends",
                        "pulsfeuer-caitlyn",
                        "pulsfeuer-caitlyn champion",
                        "pulsfeuer-caitlyn german",
                        "pulsfeuer-caitlyn german voice",
                        "pulsfeuer-caitlyn league of legends voice",
                        "pulsfeuer-caitlyn voice",
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/G9ZxKfT1LnM"
                    },
                    "title": "Pulsfeuer-Caitlyn Voice - Deutsch (German) - League of Legends",
                    "video": {
                        "duration": 743,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            },
            {
                "address": "bM5wTc2BYt5ZCyCSs5VNmSsTZwTr6njcYB",
                "amount": "0.01",
                "canonical_url": "lbry://@MySelfAkashH#4/pubg-pc-bengali-live-ft-noone-xd-7#3",
                "claim_id": "31799565c7e2722d8b6ca021ebf664c6cf8affff",
                "claim_op": "update",
                "confirmations": 18139,
                "height": 598189,
                "is_channel_signature_valid": true,
                "meta": {
                    "activation_height": 497710,
                    "creation_height": 497710,
                    "creation_timestamp": 1546695885,
                    "effective_amount": "0.01",
                    "expiration_height": 2600110,
                    "is_controlling": true,
                    "support_amount": "0.0",
                    "take_over_height": 497710,
                    "trending_global": 0,
                    "trending_group": 0,
                    "trending_local": 0,
                    "trending_mixed": 0
                },
                "name": "pubg-pc-bengali-live-ft-noone-xd-7",
                "normalized_name": "pubg-pc-bengali-live-ft-noone-xd-7",
                "nout": 0,
                "permanent_url": "lbry://pubg-pc-bengali-live-ft-noone-xd-7#31799565c7e2722d8b6ca021ebf664c6cf8affff",
                "short_url": "lbry://pubg-pc-bengali-live-ft-noone-xd-7#3",
                "signing_channel": {
                    "address": "bGhDgMatDXL6vp6cajknQ2LDcEsXTM3TFP",
                    "amount": "0.01",
                    "canonical_url": "lbry://@MySelfAkashH#4",
                    "claim_id": "428698205802c3a3d86467ae9682266589bf7093",
                    "claim_op": "update",
                    "confirmations": 18139,
                    "height": 598189,
                    "meta": {
                        "activation_height": 486348,
                        "claims_in_channel": 37,
                        "creation_height": 486348,
                        "creation_timestamp": 1544877037,
                        "effective_amount": "0.01",
                        "expiration_height": 2588748,
                        "is_controlling": true,
                        "support_amount": "0.0",
                        "take_over_height": 486348,
                        "trending_global": 0,
                        "trending_group": 0,
                        "trending_local": 0,
                        "trending_mixed": 0
                    },
                    "name": "@MySelfAkashH",
                    "normalized_name": "@myselfakashh",
                    "nout": 0,
                    "permanent_url": "lbry://@MySelfAkashH#428698205802c3a3d86467ae9682266589bf7093",
                    "short_url": "lbry://@MySelfAkashH#4",
                    "timestamp": 1562797197,
                    "txid": "490e882be985ea9860511c3d9a60a29d76fd47d2e5f549af64eaeaa28145aecf",
                    "type": "claim",
                    "value": {
                        "cover": {
                            "url": "https://thumbnails.lbry.com/banner-UC7IrMXOHigzanjQbY1EoXJQ"
                        },
                        "description": "Its All About Gaming ....",
                        "locations": [
                            {
                                "country": "IN"
                            }
                        ],
                        "public_key": "3056301006072a8648ce3d020106052b8104000a03420004fac355e9fbaee98a654109b408260541fde84b64dc838e462fcbc4d48a9635a3fee4eb7d83cacd8458fe86cded33bc2659b67822237638b4ec53c3290386a312",
                        "public_key_id": "bGYFhBYoCtNTE1y6gJFjvuAhVSiygtkn5Q",
                        "thumbnail": {
                            "url": "https://thumbnails.lbry.com/UC7IrMXOHigzanjQbY1EoXJQ"
                        },
                        "title": "MySelfAkashH"
                    },
                    "value_type": "channel"
                },
                "timestamp": 1562797197,
                "txid": "edec26808746698eca4537089501420bf0793892cecb5fe0af93a53008c445d1",
                "type": "claim",
                "value": {
                    "description": "Support the stream: https://streamlabs.com/myselfakashh \n\nEnjoy :)\n\nDiscord - https://discord.gg/dSdpYz\n \n#pubgpcindia #pubgpcbengalilivestream #pubgbengali\n...\nhttps://www.youtube.com/watch?v=4P3tRhWEFxY",
                    "license": "Copyrighted (contact publisher)",
                    "release_time": "1546677082",
                    "source": {
                        "media_type": "video/mp4",
                        "sd_hash": "4f051f0a070043d214fc8046bd5faab60324150e32f60c4e1983b96a3fcd5adaad7fdcb36739dd89ba2cf6652acf6d84",
                        "size": "254882138"
                    },
                    "stream_type": "video",
                    "tags": [
                        "gaming"
                    ],
                    "thumbnail": {
                        "url": "https://thumbnails.lbry.com/4P3tRhWEFxY"
                    },
                    "title": "PUBG PC Bengali Live Ft. NoOne xD",
                    "video": {
                        "duration": 3048,
                        "height": 720,
                        "width": 1280
                    }
                },
                "value_type": "stream"
            }
        ],
        "page": 1,
        "page_size": 10
    }
}```

l

repo: lbryio/lbry-sdk


text:
search not working

This is code,
SearchChoices.single(
items: userNamesList,
value: valueNew,
//        hint: "Select one",
disabledHint: true,
searchHint: "",
dialogBox: false,
onChanged: (value) {
setState(() {
valueNew = value;
print(valueNew);
});
},
                          displayClearIcon: false,

                          isExpanded: true,
                          menuConstraints:
                              BoxConstraints.tight(Size.fromHeight(350)),
                        ),

Search not working only I can select from the list.

Thanks for the Help

Hello @MuhammadSufyanMalik ,
Thanks for raising this issue.
Sorry for the inconvenience.
The default searchFn search function is defined as follows:
        searchFn = (keyword, items) {
          List<int> shownIndexes = [];
          int i = 0;
          widget.items!.forEach((item) {
            if (matchFn(item, keyword) || (keyword?.isEmpty ?? true)) {
              shownIndexes.add(i);
            }
            i++;
          });
          return (shownIndexes);
        };

This makes use of the default case insensitive matchFn defined as follows:
          matchFn = (item, keyword) {
            return (item.value
                .toString()
                .toLowerCase()
                .contains(keyword.toLowerCase()));
          };

Here, the match can only happen if the item has a value member with a toString() method defined returning the string to search for.
Is this the case for the elements in your userNamesList list?

Thanks for the reply,
Let me share the list creation with you.
userNamesList.add(DropdownMenuItem(
child: Text(userName), value: userId.toString()));
Username and its value, same list I was using with drop down it is working perfectly.
If I don't search just select the item from list it works.

Hello @MuhammadSufyanMalik ,
Thanks for raising this issue. Sorry for the inconvenience.
The default searchFn search function is defined as follows:
        searchFn = (keyword, items) {
          List<int> shownIndexes = [];
          int i = 0;
          widget.items!.forEach((item) {
            if (matchFn(item, keyword) || (keyword?.isEmpty ?? true)) {
              shownIndexes.add(i);
            }
            i++;
          });
          return (shownIndexes);
        };

This makes use of the default case insensitive matchFn defined as follows:
          matchFn = (item, keyword) {
            return (item.value
                .toString()
                .toLowerCase()
                .contains(keyword.toLowerCase()));
          };

Here, the match can only happen if the item has a value member with a toString() method defined returning the string to search for.
Is this the case for the elements in your userNamesList list?

Thanks for the reply,
Let me share the list creation with you.
userNamesList.add(DropdownMenuItem(
child: Text(userName), value: userId.toString()));
Username and its value, same list I was using with drop down it is working perfectly.
If I don't search just select the item from list it works.

Hello @MuhammadSufyanMalik ,
I understand that you want to search through the text, not the value since it is an id.
In that case, you may want to consider the solution that consists in changing the search function as explained in #37 ?

Thanks, and sorry I didn't get actually.
What do I have to add to current widget can you edit it please?
Here
SearchChoices.single(
items: userNamesList,
value: valueNew,
// hint: "Select one",
disabledHint: true,
searchHint: "",
dialogBox: false,
onChanged: (value) {
setState(() {
valueNew = value;
print(valueNew);
});
},

Sure, this should work:
SearchChoices.single(
        items: userNamesList,
        value: valueNew,
        // hint: "Select one",
        disabledHint: true,
        searchHint: "",
        dialogBox: false,
        onChanged: (value) {
                setState(() {
                        valueNew = value;
                        print(valueNew);
                });
        },
        searchFn: (String keyword, items) {
          List<int> ret = [];
          if (items != null && keyword.isNotEmpty) {
            keyword.split(" ").forEach((k) {
              int i = 0;
              items.forEach((item) {
                if (k.isNotEmpty && (item.child as Text).data.toString().toLowerCase().contains(k.toLowerCase())) {
                  ret.add(i);
                }
                i++;
              });
            });
          }
          if (keyword.isEmpty) {
            ret = Iterable<int>.generate(items.length).toList();
          }
          return (ret);
        },
);

Closing for inactivity. Feel free to reopen if needed.

source: gharchive/issue

authors: MuhammadSufyanMalik lcuis

license: MIT

license_type: permissive

license_source: github-api


text:
🛑 Sonarr is down

In 8959e47, Sonarr (https://sonarr.thonk.xyz) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Sonarr is back up in 257e361 after 7 minutes.

repo: le-server/thonk-upptime


text:
🛑 Thonk Cloud is down

In ae74789, Thonk Cloud (https://www.thonk.cloud) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Thonk Cloud is back up in f935efe.


text:
create and use the home directory as part of creating jenkins user

Pull Request Template
Description
Create and use the home directory as part of the user creation. Currently the home directory is not actually used, even though it is created.
Fixes # (issue)
Type of change

[X] Bug fix (non-breaking change which fixes an issue)

Reviews
Checklist:

[X] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing tests pass with my changes

I have not run tests myself, I expect travis will do that.

source: gharchive/pull-request


text:
Too slow

This is too slow that I cant use it well. I used Chrome 101 on Ubuntu 20.04.4
Is it slow only for me?

This is a virtual machine running on a web browser... this feat on it's own is pretty tremendous. Of course it's slow.

I tried it on i7-3770, 12GB of RAM. I did not know WASM is very very slow and I thought WASM is really fast so can use on VM.

This is a virtual machine running on a web browser... this feat on it's own is pretty tremendous. Of course it's slow.

It's not tremendous. There's also v86, which actually works.

repo: leaningtech/webvm


text:
refactor(AlgebraicGeometry): Restate ΓRestrictAlgebra in terms of Γ(U, ⊤).

Thanks!
bors merge

authors: erdOne riccardobrasca


text:
feat(RelSeries): head_singleton, last_singleton

from the Carleson project.

bors merge

authors: j-loreaux nomeata


text:
chore: move batteries back to main; bump

Batteries was accidentally moved to another branch when #17985 was merged prematurely.

bors p=10

bors merge


text:
feat(AlgebraicGeometry): define immersions

Otherwise, it looks very good to me!

Thanks!
bors merge

authors: erdOne joelriou


text:
chore(Mathport/Syntax): mark some tactics S

Mark some tactics S since they are not strict prelims for porting

bors r+


text:
feat: port NumberTheory.Cyclotomic.Gal

Having a look.

It should now work. I don't exactly understand why but generalize_proofs behave differently.

I don't have time anymore, I didn't fix docs/names.

authors: Ruben-VandeVelde riccardobrasca


text:
feat: star self dot product eq zero and kernel lemmas apply to matrices not just vectors

This generalizes two results about vectors to matrices:

dotProduct_star_self_eq_zero to conjTranspose_mul_self_eq_zero
dotProduct_self_star_eq_zero to self_mul_conjTranspose_eq_zero

It also adds lemmas linking the kernel (under left-multiplication, right-multiplication, vecMul, and mulVec) of $A$, $A^HA$, and $AA^H$.
Some of these lemmas are used in the SVD decomposition theorem of R or C matrices #6042

old description:

Three lemmas:

conjTranspose_mul_self_eq_zero_iff : a matrix is zero iff its conjugate transpose multiplied by the matrix is zero.
ker_conj_transpose_mul_self_eq_ker : The Kernel of a matrix $A$ and the matrix $A^HA$ are the same.
ker_self_mul_conj_transpose_eq_ker_conj_transpose : The Kernel of a matrix $A^H$ and the matrix multiplied by conjugate transpose $AA^H$ are the same.

bors d+
Please check you are happy with the updated PR description (and adjust it if not!) before merging

bors r+

authors: MohanadAhmed eric-wieser


text:
chore: bump Std for #251

Some minor renaming:

Sum.not_isLeft becomes Sum.bnot_isLeft
Sum.Not_isLeft becomes Sum.not_isLeft

A few explicit arguments also became implicit.

bors d+

bors merge

authors: PatrickMassot semorrison


text:
feat: the category of CategoryTheory.Limits.Bicones

We already had this for Limits.Cone and Limits.Cocone.
This also promotes Bicone.toCone and Bicone.toCocone to functors, leaving the old names as a shorthand for Functor.obj.

Thanks!
bors merge

authors: eric-wieser joelriou


text:
Emacs syntax highlighting breaks when opening the second file

If I open a single .lean file everything works fine, however when I try to open a second file (or close and reopen the same one) jit-lock breaks with Variable binding depth exceeds max-specpdl-size and syntax highlighting doesn’t work. The rest seems to work fine.
I also tried starting emacs -q but I run into the same problem there so it doesn’t seem to be related to my config.
I searched around but I couldn’t find a solution. max-specpdl-size is set to 1000 so that shouldn’t be a problem. Also I can’t recall encountering that bug with some other package.
My emacs version is
GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.6) of 2015-09-10 on foutrelis

and I used the master branch of lean for both the emacs mode and the binary. Also I get my dependencies from elpa.
When I enable jit-lock-debug-mode I get the following backtrace
Debugger entered--Lisp error: (error "Variable binding depth exceeds max-specpdl-size")
  cl-remove(nil nil :if-not #[(ovl) "\303\304\"\205\f\305	\n#\207" [ovl pos type overlay-get mmm mmm-included-p] 4])
  apply(cl-remove nil nil :if-not #[(ovl) "\303\304\"\205\f\305	\n#\207" [ovl pos type overlay-get mmm mmm-included-p] 4] nil)
  remove-if-not(#[(ovl) "\303\304\"\205\f\305	\n#\207" [ovl pos type overlay-get mmm mmm-included-p] 4] nil)
  mmm-overlays-at(1 nil)
  mmm-beginning-of-syntax()
 … a lot more of this
  mmm-beginning-of-syntax()
  #[0 "\302\242\203=\300\242\302\242Z\306HA\306H@T\245\307_W\203=\310H\211@T\240\266\310H\211A\300\242\302\242Z\\\241\266\311\302\242\300\242\312\211\301%\207\302\242\204\214\301\203\214\304\313\301!\206P\307\3018\240\203\214\304\242\300\242X\203\214\300\242\304\242ZW\203\214\314H\211@T\240\266\314H\211A\300\242\304\242Z\\\241\266\303\311\304\242\300\242\"\240\210\202E\312ee\312\203\254\300\242\211@@\262W\203\254\262A\262\202\222\203\301\211@@\262\262\303\211@A\262\240\210\204\322\204\322\315\316\317\320\211$\210\302\242\203\336\302\242W\203\350\262\303\242\262\202\321H\211@T\240\266\321H\211A\300\242\302\242Z\\\241\266\302\242\262\301\262\204 \322\323!\203 \203 \324\325!\210\203a\300\242b\210 \210`V\203a`\300\242W\203a\326`\327\"\330>\204a\306H\211@T\240\266\306H\211A\300\242`Z\\\241\266`\262\312\262\300\242ZW\203\222\307H\211@T\240\266\307H\211A\300\242Z\\\241\266\303\311\300\242\312\211%\240\210\202C\331H\211@T\240\266\331H\211A\300\242Z\\\241\266\300\242Z\307_V\203\350\303\311\211\300\242\\\307\245\211\262\312\211\303\242%\240\210\303\242B\203\336\211AB\241\266\202\344\211B\210\202\253\303\311\300\242\312\211\303\242%\240\210\300\242\303\242B\203\211@@\262\300\242ZV\203\211AB\241\266\202B\240\210\202B\2034\211@@\262\300\242ZV\203=\211B\202B\240\210\210\266\300\242\303\242B\303\242\207" [(1) nil (nil) (nil) (1) syntax-ppss-stats 5 2 0 parse-partial-sexp nil syntax-ppss-toplevel-pos 1 add-hook before-change-functions syntax-ppss-flush-cache t 4 boundp font-lock-beginning-of-syntax-function make-local-variable syntax-begin-function get-text-property face (font-lock-string-face font-lock-doc-face font-lock-comment-face) 3 syntax-ppss-max-span syntax-ppss-cache syntax-ppss-last] 12 "\n\n(fn)"]()
  funcall(#[0 "\302\242\203=\300\242\302\242Z\306HA\306H@T\245\307_W\203=\310H\211@T\240\266\310H\211A\300\242\302\242Z\\\241\266\311\302\242\300\242\312\211\301%\207\302\242\204\214\301\203\214\304\313\301!\206P\307\3018\240\203\214\304\242\300\242X\203\214\300\242\304\242ZW\203\214\314H\211@T\240\266\314H\211A\300\242\304\242Z\\\241\266\303\311\304\242\300\242\"\240\210\202E\312ee\312\203\254\300\242\211@@\262W\203\254\262A\262\202\222\203\301\211@@\262\262\303\211@A\262\240\210\204\322\204\322\315\316\317\320\211$\210\302\242\203\336\302\242W\203\350\262\303\242\262\202\321H\211@T\240\266\321H\211A\300\242\302\242Z\\\241\266\302\242\262\301\262\204 \322\323!\203 \203 \324\325!\210\203a\300\242b\210 \210`V\203a`\300\242W\203a\326`\327\"\330>\204a\306H\211@T\240\266\306H\211A\300\242`Z\\\241\266`\262\312\262\300\242ZW\203\222\307H\211@T\240\266\307H\211A\300\242Z\\\241\266\303\311\300\242\312\211%\240\210\202C\331H\211@T\240\266\331H\211A\300\242Z\\\241\266\300\242Z\307_V\203\350\303\311\211\300\242\\\307\245\211\262\312\211\303\242%\240\210\303\242B\203\336\211AB\241\266\202\344\211B\210\202\253\303\311\300\242\312\211\303\242%\240\210\300\242\303\242B\203\211@@\262\300\242ZV\203\211AB\241\266\202B\240\210\202B\2034\211@@\262\300\242ZV\203=\211B\202B\240\210\210\266\300\242\303\242B\303\242\207" [(1) nil (nil) (nil) (1) syntax-ppss-stats 5 2 0 parse-partial-sexp nil syntax-ppss-toplevel-pos 1 add-hook before-change-functions syntax-ppss-flush-cache t 4 boundp font-lock-beginning-of-syntax-function make-local-variable syntax-begin-function get-text-property face (font-lock-string-face font-lock-doc-face font-lock-comment-face) 3 syntax-ppss-max-span syntax-ppss-cache syntax-ppss-last] 12 "\n\n(fn)"])
  syntax-ppss(1)
  font-lock-fontify-syntactically-region(1 626 nil)
  font-lock-default-fontify-region(1 626 nil)
  #[(reg) "@b\210\305	!\210\306	!\210\n@\211A@\262\307#\210\310\f\"\207" [reg mode func mmm-current-overlay mmm-current-submode mmm-set-current-submode mmm-set-local-variables nil mmm-save-changed-local-variables] 4]((1 626))
  mapc(#[(reg) "@b\210\305	!\210\306	!\210\n@\211A@\262\307#\210\310\f\"\207" [reg mode func mmm-current-overlay mmm-current-submode mmm-set-current-submode mmm-set-local-variables nil mmm-save-changed-local-variables] 4] ((1 626)))
  mmm-fontify-region-list(lean-mode ((1 626)))
  #[(elt) "@\301N\205\302@A\"\207" [elt mmm-font-lock-mode mmm-fontify-region-list] 3]((lean-mode (1 626)))
  mapc(#[(elt) "@\301N\205\302@A\"\207" [elt mmm-font-lock-mode mmm-fontify-region-list] 3] ((lean-mode (1 626))))
  mmm-fontify-region(1 626 nil)
  font-lock-fontify-region(1 626)
  run-hook-with-args(font-lock-fontify-region 1 626)
  #[0 "\302\303\300\242\301\242#\207" [(1) (626) run-hook-with-args jit-lock-functions] 4 "\n\n(fn)"]()
  funcall(#[0 "\302\303\300\242\301\242#\207" [(1) (626) run-hook-with-args jit-lock-functions] 4 "\n\n(fn)"])
  jit-lock-fontify-now(1 626)
  jit-lock--debug-fontify()
  apply(jit-lock--debug-fontify nil)
  byte-code("r\301\302H\303H\"\210)\301\207" [timer apply 5 6] 4)
  timer-event-handler([t 0 0 0 t jit-lock--debug-fontify nil idle 0])
```.

@cocreature, does it happen with any .lean file? If not, could you send me (or copy/paste here) the one that shows this behavior?

@soonhokong Sadly it happens with any .lean file.

@cocreature, could you check whether you have version 0.2 or 0.5 of cl-lib package installed on your emacs system?

@soonhokong According to describe-package I have version 1.0 which is built-in aka bundled with my emacs version (which I got from the archlinux repos).

Yes, cl-lib 1.0 comes with emacs24.5 but somehow it's still possible to install other versions, and it's known to cause this problem. Could you run package-list-packages and check the other versions are not installed.

I checked and as far as I can see it’s not installed. I also checked ~/.emacs.d/elpa. Also when running emacs -q I set HOME to an empty directory to make sure that packages I had installed didn’t affect it.

@cocreature, thanks for checking things up. I'll install archlinux VM and try to reproduce this.

Sorry for the confusion, for some reason I now can’t reproduce it with a clean config, so it looks like it is related to my config after all. Not sure why I managed to reproduce it earlier with a clean config. In that case I’ll tinker around with it and try to figure out which part of my config is screwing things up. Thanks a lot for the excellent support.

I see. Good luck!

For anybody finding this issue the problem was the mmm-mode bundled by proofgeneral which I had installed globally so even nuking ~/.emacs.d didn’t help. After I removed proofgeneral everything seems to work now. Maybe this should be added to the docs somewhere since I could imagine that the audience is reasonably likely to have installed proofgeneral.
Thanks for a great emacs mode @soonhokong (and whoever else was involved) and the support.

Thanks for the information. Could you check the version of mmm-mode and proofgeneral that you have on ArchLinux? I'm using proofgeneral as well but doesn't have this problem. I'll add a note in the README.md file later.

I had proofgeneral version 4.2 which bundled mmm-mode in the contrib directory in version 0.4.8 which seems to be pretty ancient. Ofc you can use proofgeneral alongside lean, but you probably need to make sure you’re not using that version of mmm-mode.

@cocreature, thanks again for the report and investigation. I mentioned the problem and possible solutions at src/emacs/README.md.

authors: cocreature soonhokong

repo: leanprover/lean

license_source: bigquery


text:
Unification not working on simple expected case.

Prerequisites

[X] Put an X between the brackets on this line if you have done all of the following:

Checked that your issue isn't already filed.
Reduced the issue to a self-contained, reproducible test case.

Description
example (a b c : Nat) : a = b → a * c = b * c := congrArg _ --fails, works with (· * c) requires you to explicitly spell out the function. In lean3, this is not required, and often used in mathlib.
Expected behavior: Success.
Actual behavior:
type mismatch
  congrArg ?m.56535
has type
  ?m.56533 = ?m.56534 → ?m.56535 ?m.56533 = ?m.56535 ?m.56534 : Prop
but is expected to have type
  a = b → a * c = b * c : Prop

Reproduces how often: 100%
Versions
Lean (version 4.0.0-nightly-2023-01-16, commit 5349a089e5bb, Release)
OSX Ventura 13.1, M1 Mac

Just want to confirm that this is still an issue on new Lean4 releases.

@leodemoura, do we know what exactly changed in Lean4 that resulted in this change in behaviour? I don't know here whether to say this is an unavoidable regression due to some deeper change, or something that could potentially be addressed.

@semorrison I believe this is https://github.com/leanprover/lean4/blob/29b09b0900966e7ed2f5c57abba17ef178a47db9/src/Lean/Elab/Config.lean#L14
Indeed, carefully arranging the proof of a similar example such that Lean is sure that a may be used in the hole but b/c may not (making it a regular pattern unification problem) makes it work.
example : ∀ (a b c : Nat), b = c → b * a = c * a :=
  fun a =>
    let f := _
    fun b c => congrArg f  -- replace `f` with `_` to break it

authors: Kha ericrbg semorrison


text:
docs(code-review): add check list

This is meant to facilitate the review of pull requests by volunteer reviewers

I'm fine with this. At least it will tell people again where to find the style guide and the naming conventions.

repo: leanprover/mathlib


text:
The website has changed, please update the links.

The Leap Motion website has changed recently and some of the links are not working properly.

Thanks for the issue!  We'll get those updated pretty quick here now.

The links are back online, thanks!  Please let me know if there's anything we overlooked.
https://developer.leapmotion.com/javascript#plugins

authors: neolwc pehrlich

repo: leapmotion/leapjs-plugins


text:
Create logging_to_mysql.md

From issue #470

Hey, would you be up to reviewing each other’s work?

@Tahasp Hi, sorry I have already found teammate to review my work.

Hi Tien, the PR looks good overall, I like the visuals and images you included, especially the video.
One thing you could add is you can explain your logs table in Step 2. For instance, the user might not know what a level is or why it needs to be added. You have a pretty good explanation for users table in part 3, maybe you can do something similar for logs table.
On a similar note, since you are adding a users table, but not all logging requires a user, you can add a section explaining a use case where someone would need a users table, and explain that this tutorial will be most helpful in similar cases.

@OliviaYZhou Hi Olivia, thank you for your review and I have made changes based on your suggestion.

Hi Tien, I've seen the changes and they look great. The explanations make the tutorial clearer. This will be a great guide for anyone who wants to create logging using mysql.

authors: OliviaYZhou Tahasp hantien2002


text:
Cos fix

Looks like the size of the payload was too big - this worked locally but the dev Cloud Foundry deployment is currently broken.
I have added a function called getPreSignedUrl() to cos.service that creates an authenticated url to the specific image in COS - this is now passed to the  component on the front end.
This has fixed the issue locally for me when I run 'npm run build && npm run start'

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to dev, including commit d00187cade04881acb3481a0d828da45b615912b

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to dev, including commit d00187cade04881acb3481a0d828da45b615912b

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to test, including commit d00187cade04881acb3481a0d828da45b615912b

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to test, including commit d00187cade04881acb3481a0d828da45b615912b

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to test, including commit d00187cade04881acb3481a0d828da45b615912b

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to prod, including commit d00187cade04881acb3481a0d828da45b615912b

authors: MadelinTom arnoldst

repo: lebanon-relief-project/LRP-web-app


text:
Add session expiry

Add session expiry
Reorganize files
Fix typos in README.md

thank you! I had a quick look and there are couple of issues you may want to look into:

There are some stray dependencies in go.sum which you may want to clean up using go mod tidy
The expiration is currently only checked when the the session is being accessed, and this is not a good time to expire the session, because it means someone needs it. This also does not clean up the sessions that have not been accessed for a long time.

I suggest that you try to organise sessions in a priority queue, prioritised by the time since the last access (you can use container/heap for that), and introduce a configurable limit of how many active sessions there may be at any given time. That way, oldest sessions will be removed when room for a new session is required.

thank you! I had a quick look and there are couple of issues you may want to look into:

There are some stray dependencies in go.sum which you may want to clean up using go mod tidy
The expiration is currently only checked when the the session is being accessed, and this is not a good time to expire the session, because it means someone needs it. This also does not clean up the sessions that have not been accessed for a long time.

I suggest that you try to organise sessions in a priority queue, prioritised by the time since the last access (you can use container/heap for that), and introduce a configurable limit of how many active sessions there may be at any given time. That way, oldest sessions will be removed when room for a new session is required.

I think LRU is a good candidate to implement it.

I think LRU is a good candidate to implement it.

Yes, definitely LRU cache from a library can also be used

Updated PR with LRU

Should UiSessions also be turned into LRU cache? Is the lock for the nodeSessionMap still required? Default value of max.sessions of 50 is way too low, I would say 5000 :)

Can you also email me at tg@torquem.ch quoting your GitHub name, I need to check something with you

Should UiSessions also be turned into LRU cache? Is the lock for the nodeSessionMap still required? Default value of max.sessions of 50 is way too low, I would say 5000 :)

Yeah, I missed the UiSessions.
Updated pr:

LRU for ui sessions
Remove locks for both uiSessions and nodeSessions maps
Changed the default value to 5000

Thank you, I will take a look shortly. Now that we have linter, could you please also fix lint errors?

Fixed lint errors

Thanks, can you also tidy up go.sum with go mod tidy?

Thanks, can you also tidy up go.sum with go mod tidy?

I ran go mod tidy but nothing changed.

repo: ledgerwatch/diagnostics