)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"bc41e7f5cc7bec3e54a4d2ca8f5a75cb65fd3899","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"428affc5_d841874c","updated":"2022-09-05 10:18:21.000000000","message":"This seems to handle several serial numbers. Is it really the case? Your commit message suggests we just need another source of serial numbers, which could be lsblk. Does lsblk list serial numbers in your case?","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"91bcf17a0ccbb88ada2a380c50428353b1a13485","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"12ad5167_072e5278","in_reply_to":"12047a4d_e4c148a9","updated":"2022-09-05 11:59:13.000000000","message":"Ack","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"3a91744d92b1968cbd068db948f604a49e916385","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"173c5f7e_34b46ad8","in_reply_to":"12ad5167_072e5278","updated":"2022-09-07 05:01:42.000000000","message":"Done","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"565984472d900d0f9c3354dd140e2c198dbfe527","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a5a6dacf_2eef9340","in_reply_to":"428affc5_d841874c","updated":"2022-09-05 10:27:43.000000000","message":"There was one incident where lsblk had the correct number for a SCSI device but then there was a situation where lsblk also had the wrong value as far as I can recall. \n\nMy logic was to check all the serial numbers in case the defaults don\u0027t work to have the highest chance to find the correct device.","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"0395ab31d121cc32f7604f39b71578e390cc3331","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"12047a4d_e4c148a9","in_reply_to":"4fef8fde_971ba943","updated":"2022-09-05 11:30:40.000000000","message":"\u003e We could do both actually, I could modify it in a way that lsblk would be the primary source of truth and the udev serials would be the fallback values\n\nI\u0027d suggest we start with this. Several values seems like a corner case that should be fixed in the base OS.","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"09c750db3510f5573d81ca18cca19bdbe3b23f84","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"dba1802f_b7fb448f","in_reply_to":"a5a6dacf_2eef9340","updated":"2022-09-05 10:31:14.000000000","message":"I don\u0027t have enough data to say that lsblk is always correct either 😂. The issue with uedv is also not consistent. For some device it appers with a certain udev+kernel for some it happens with a newer udev+kernel.","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"9009d3eaf2bf5a1e2472d68f2927c73426310a14","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4fef8fde_971ba943","in_reply_to":"dba1802f_b7fb448f","updated":"2022-09-05 10:37:59.000000000","message":"We could do both actually, I could modify it in a way that lsblk would be the primary source of truth and the udev serials would be the fallback values that might be the best balance between speed and reliability but as I said I don\u0027t know whether on average lsblk is more or less reliable with serial numbers than udev.","commit_id":"5ad9ef492f028631a7c3988cd5c60ba7063f35e6"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"58624e165a2d81221fb51ac994ca89cf11b46ceb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"7d43e28d_e9a02c71","updated":"2022-09-22 11:47:26.000000000","message":"can you please add a releasenote for this? thanks","commit_id":"4fd854797fe966f9c477a93559dfd390d2c3f47e"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"9c82adc7bd149ea9ecd6cb36222de8b880c96acf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"0f1c1742_9aed6ddd","in_reply_to":"7d43e28d_e9a02c71","updated":"2022-09-23 07:13:12.000000000","message":"Done.","commit_id":"4fd854797fe966f9c477a93559dfd390d2c3f47e"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"13a96d62169aee8ae9b6a605578fc27469440443","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"2a9a4518_81b96827","updated":"2022-10-03 11:19:54.000000000","message":"thanks, looks ok, just a comment on the release note format","commit_id":"0edb8d4a5a644cd019503df67be6c0db4132dd18"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"f3e4a7711527d5d3571f730dbfc18c8a0102315d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"e35cd640_c072b635","updated":"2022-10-03 11:47:04.000000000","message":"thanks","commit_id":"70c00e5dac31b86d8179939c396341d587ca6411"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"3b623b50688f6594802f370abac5a78af9984acf","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":11,"id":"85b64507_0149f991","updated":"2022-10-11 05:58:11.000000000","message":"recheck","commit_id":"830fdfa4c6ec62fdd1f1ec761c6f92b0f218d252"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"c9a099894a310e24fd5280147880b4d557bd351c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"5122d99d_55de62f7","in_reply_to":"85b64507_0149f991","updated":"2022-10-11 12:53:24.000000000","message":"Done","commit_id":"830fdfa4c6ec62fdd1f1ec761c6f92b0f218d252"}],"ironic_python_agent/hardware.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c88121f178983adda7ec0b82f037806e80d58ade","unresolved":true,"context_lines":[{"line_number":669,"context_line":"            extra[\u0027serial\u0027] \u003d primary_serial"},{"line_number":670,"context_line":"            serials \u003d [primary_serial]"},{"line_number":671,"context_line":"            for prop in udev.properties:"},{"line_number":672,"context_line":"                if prop.__contains__(\"SERIAL\"):"},{"line_number":673,"context_line":"                    serials.append(udev.get(prop))"},{"line_number":674,"context_line":"            extra[\u0027all_serials\u0027] \u003d serials"},{"line_number":675,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"79e2bc1b_257477ce","line":672,"updated":"2022-09-19 10:41:41.000000000","message":"nit:\n\n if \"SERIAL\" in prop\n \ndon\u0027t use __methods__ explicitly","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"e53f3a5c47a0c02d0f61d69e96a54d8fd4950ec8","unresolved":false,"context_lines":[{"line_number":669,"context_line":"            extra[\u0027serial\u0027] \u003d primary_serial"},{"line_number":670,"context_line":"            serials \u003d [primary_serial]"},{"line_number":671,"context_line":"            for prop in udev.properties:"},{"line_number":672,"context_line":"                if prop.__contains__(\"SERIAL\"):"},{"line_number":673,"context_line":"                    serials.append(udev.get(prop))"},{"line_number":674,"context_line":"            extra[\u0027all_serials\u0027] \u003d serials"},{"line_number":675,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"4934f7c7_ebf87c65","line":672,"in_reply_to":"79e2bc1b_257477ce","updated":"2022-09-19 11:56:01.000000000","message":"Ack","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c88121f178983adda7ec0b82f037806e80d58ade","unresolved":true,"context_lines":[{"line_number":671,"context_line":"            for prop in udev.properties:"},{"line_number":672,"context_line":"                if prop.__contains__(\"SERIAL\"):"},{"line_number":673,"context_line":"                    serials.append(udev.get(prop))"},{"line_number":674,"context_line":"            extra[\u0027all_serials\u0027] \u003d serials"},{"line_number":675,"context_line":""},{"line_number":676,"context_line":"            for key, udev_key in udev_property_mappings:"},{"line_number":677,"context_line":"                if key in extra:"}],"source_content_type":"text/x-python","patch_set":3,"id":"1799d408_1c184b7d","line":674,"updated":"2022-09-19 10:41:41.000000000","message":"I don\u0027t quite like the all_serials approach. We\u0027re in a guessing territory, trying to workaround some bug that we don\u0027t understand. At the very least, we need to figure out of lsblk provides the correct serial. If neither serials are correct, I\u0027d prefer to use no serial at all that try to make an uninformed guess, unless somebody from the kernel/udev side tells us \"yes, this is how you proceed\".","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"e53f3a5c47a0c02d0f61d69e96a54d8fd4950ec8","unresolved":false,"context_lines":[{"line_number":671,"context_line":"            for prop in udev.properties:"},{"line_number":672,"context_line":"                if prop.__contains__(\"SERIAL\"):"},{"line_number":673,"context_line":"                    serials.append(udev.get(prop))"},{"line_number":674,"context_line":"            extra[\u0027all_serials\u0027] \u003d serials"},{"line_number":675,"context_line":""},{"line_number":676,"context_line":"            for key, udev_key in udev_property_mappings:"},{"line_number":677,"context_line":"                if key in extra:"}],"source_content_type":"text/x-python","patch_set":3,"id":"ac2fec63_e2090b3b","line":674,"in_reply_to":"1799d408_1c184b7d","updated":"2022-09-19 11:56:01.000000000","message":"Okay I will modify this change to use only lsblk.","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c88121f178983adda7ec0b82f037806e80d58ade","unresolved":true,"context_lines":[{"line_number":1478,"context_line":"            if not device:"},{"line_number":1479,"context_line":"                hint \u003d root_device_hints.get(\u0027serial\u0027, None)"},{"line_number":1480,"context_line":"                if hint is not None:"},{"line_number":1481,"context_line":"                    LOG.info(\"Serial sarch extended!!!!\")"},{"line_number":1482,"context_line":"                    max_serial_num \u003d BlockDevice.max_serial_num(block_devices)"},{"line_number":1483,"context_line":"                    for i in range(max_serial_num):"},{"line_number":1484,"context_line":"                        for dev in block_devices:"}],"source_content_type":"text/x-python","patch_set":3,"id":"fc34f2b7_7dc91c5d","line":1481,"updated":"2022-09-19 10:41:41.000000000","message":"If this is the path we take, needs to be changed to something meaningful.","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"e53f3a5c47a0c02d0f61d69e96a54d8fd4950ec8","unresolved":false,"context_lines":[{"line_number":1478,"context_line":"            if not device:"},{"line_number":1479,"context_line":"                hint \u003d root_device_hints.get(\u0027serial\u0027, None)"},{"line_number":1480,"context_line":"                if hint is not None:"},{"line_number":1481,"context_line":"                    LOG.info(\"Serial sarch extended!!!!\")"},{"line_number":1482,"context_line":"                    max_serial_num \u003d BlockDevice.max_serial_num(block_devices)"},{"line_number":1483,"context_line":"                    for i in range(max_serial_num):"},{"line_number":1484,"context_line":"                        for dev in block_devices:"}],"source_content_type":"text/x-python","patch_set":3,"id":"7983385f_b15200b2","line":1481,"in_reply_to":"fc34f2b7_7dc91c5d","updated":"2022-09-19 11:56:01.000000000","message":"Ack","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"c88121f178983adda7ec0b82f037806e80d58ade","unresolved":true,"context_lines":[{"line_number":1482,"context_line":"                    max_serial_num \u003d BlockDevice.max_serial_num(block_devices)"},{"line_number":1483,"context_line":"                    for i in range(max_serial_num):"},{"line_number":1484,"context_line":"                        for dev in block_devices:"},{"line_number":1485,"context_line":"                            dev.shuffle_dropp_serial()"},{"line_number":1486,"context_line":"                        serialized_devs \u003d ["},{"line_number":1487,"context_line":"                            dev.serialize() for dev in block_devices]"},{"line_number":1488,"context_line":"                        device \u003d il_utils.match_root_device_hints("}],"source_content_type":"text/x-python","patch_set":3,"id":"7c9085b0_6cc63fec","line":1485,"updated":"2022-09-19 10:41:41.000000000","message":"Assuming this is the path we take: is there a reason we cannot just try serials alphabetically? We\u0027re already in some weird territory, let\u0027s not add randomness to it.","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"e53f3a5c47a0c02d0f61d69e96a54d8fd4950ec8","unresolved":false,"context_lines":[{"line_number":1482,"context_line":"                    max_serial_num \u003d BlockDevice.max_serial_num(block_devices)"},{"line_number":1483,"context_line":"                    for i in range(max_serial_num):"},{"line_number":1484,"context_line":"                        for dev in block_devices:"},{"line_number":1485,"context_line":"                            dev.shuffle_dropp_serial()"},{"line_number":1486,"context_line":"                        serialized_devs \u003d ["},{"line_number":1487,"context_line":"                            dev.serialize() for dev in block_devices]"},{"line_number":1488,"context_line":"                        device \u003d il_utils.match_root_device_hints("}],"source_content_type":"text/x-python","patch_set":3,"id":"0a419eba_c072f019","line":1485,"in_reply_to":"7c9085b0_6cc63fec","updated":"2022-09-19 11:56:01.000000000","message":"I will modify the change to use only lsblk but just as a comment this does not \"shuffle\" the serials it just changes the selected serial for all block device to the next in line. The order of the serials is the same as the order provided by udev. I just couldn\u0027t think of a better name for this process at the time I agree that the naming is a bit confusing .","commit_id":"31cc7c6707a90cf59962725589b11da85552d562"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"16bf4b5a4c5fdba0bfea48b2ee1fce7c49b29d03","unresolved":true,"context_lines":[{"line_number":665,"context_line":"                (\u0027wwn_with_extension\u0027, \u0027WWN_WITH_EXTENSION\u0027),"},{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"}],"source_content_type":"text/x-python","patch_set":10,"id":"85e1d5d1_62d7b032","line":668,"updated":"2022-10-07 10:47:49.000000000","message":"This logic has to run even if pyudev fails (try block starting on line 651). Let\u0027s move it outside.","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"c11d7abbbaeab0ba539486fd526a9557388ac714","unresolved":true,"context_lines":[{"line_number":665,"context_line":"                (\u0027wwn_with_extension\u0027, \u0027WWN_WITH_EXTENSION\u0027),"},{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"}],"source_content_type":"text/x-python","patch_set":10,"id":"f32b8147_e1c168cd","line":668,"in_reply_to":"4629ad38_e8ab30dd","updated":"2022-10-07 12:01:00.000000000","message":"Ohh okay I see , I have missed the floppy filtering. OKay now I see why do we need the else branch","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"fd65780ef9caf03784ff486e1c3b84b026bf58c6","unresolved":true,"context_lines":[{"line_number":665,"context_line":"                (\u0027wwn_with_extension\u0027, \u0027WWN_WITH_EXTENSION\u0027),"},{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"}],"source_content_type":"text/x-python","patch_set":10,"id":"4629ad38_e8ab30dd","line":668,"in_reply_to":"85e1d5d1_62d7b032","updated":"2022-10-07 11:54:21.000000000","message":"I see what you mean but in this case shouldn\u0027t I move everything from L661-L682 under the \"try\" block? because in L679 and in L680 the udev is used again so if IPA hits an exception in L652 that would mess up everything that uses the \"udev\" object including L679 and L680.\n\nSo I would remove the \"else\" branch and I would move everything from L661-L682 under the \"try\" if it is okay for you.","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"23ac7e1a0b3c5ed3b0572e1f3854f847c7930d26","unresolved":false,"context_lines":[{"line_number":665,"context_line":"                (\u0027wwn_with_extension\u0027, \u0027WWN_WITH_EXTENSION\u0027),"},{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"}],"source_content_type":"text/x-python","patch_set":10,"id":"26488fcf_99d4aafe","line":668,"in_reply_to":"f32b8147_e1c168cd","updated":"2022-10-10 16:33:05.000000000","message":"Done","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"16bf4b5a4c5fdba0bfea48b2ee1fce7c49b29d03","unresolved":true,"context_lines":[{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"},{"line_number":672,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"71521618_10ba53d4","line":669,"updated":"2022-10-07 10:47:49.000000000","message":"this is just\n\n if not lsblk_serial:","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"23ac7e1a0b3c5ed3b0572e1f3854f847c7930d26","unresolved":false,"context_lines":[{"line_number":666,"context_line":"                (\u0027wwn_vendor_extension\u0027, \u0027WWN_VENDOR_EXTENSION\u0027)"},{"line_number":667,"context_line":"            ]"},{"line_number":668,"context_line":"            lsblk_serial \u003d device_raw.get(\u0027serial\u0027)"},{"line_number":669,"context_line":"            if lsblk_serial is None or lsblk_serial \u003d\u003d \u0027\u0027:"},{"line_number":670,"context_line":"                udev_property_mappings +\u003d ["},{"line_number":671,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL_SHORT\u0027),"},{"line_number":672,"context_line":"                    (\u0027serial\u0027, \u0027SERIAL\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"e227c982_55556f60","line":669,"in_reply_to":"71521618_10ba53d4","updated":"2022-10-10 16:33:05.000000000","message":"Done","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"}],"releasenotes/notes/prioritize-lsblk-device-serials-8cae406ca5164a01.yaml":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"13a96d62169aee8ae9b6a605578fc27469440443","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude: \u003e"},{"line_number":3,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL works"},{"line_number":4,"context_line":"    in most cases but the udev values seem to be unreliable."},{"line_number":5,"context_line":"    Based on experience it looks like lsblk might be a better"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"1753fc45_88f6c4c6","line":2,"updated":"2022-10-03 11:19:54.000000000","message":"please remove the prelude part and just combine all into features, thanks","commit_id":"0edb8d4a5a644cd019503df67be6c0db4132dd18"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"23663e6c2176b34d0f8efc4b5ee33a91703bde27","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude: \u003e"},{"line_number":3,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL works"},{"line_number":4,"context_line":"    in most cases but the udev values seem to be unreliable."},{"line_number":5,"context_line":"    Based on experience it looks like lsblk might be a better"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"cc863eda_8391b788","line":2,"in_reply_to":"1753fc45_88f6c4c6","updated":"2022-10-03 11:27:31.000000000","message":"Done","commit_id":"0edb8d4a5a644cd019503df67be6c0db4132dd18"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"f3e4a7711527d5d3571f730dbfc18c8a0102315d","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL"},{"line_number":5,"context_line":"    worked in most cases but the udev values seem to be unreliable."},{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regerards to serial number"},{"line_number":8,"context_line":"    information."},{"line_number":9,"context_line":"    This commit makes lsblk the default provider of block device serial"},{"line_number":10,"context_line":"    number information."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"481c26af_410a6e39","line":7,"range":{"start_line":7,"start_character":33,"end_line":7,"end_character":42},"updated":"2022-10-03 11:47:04.000000000","message":"nit: regards","commit_id":"70c00e5dac31b86d8179939c396341d587ca6411"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"e923d598f6219f35d173c97ecc8756eb0e2e1dfc","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL"},{"line_number":5,"context_line":"    worked in most cases but the udev values seem to be unreliable."},{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regerards to serial number"},{"line_number":8,"context_line":"    information."},{"line_number":9,"context_line":"    This commit makes lsblk the default provider of block device serial"},{"line_number":10,"context_line":"    number information."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"75233e90_78a06db2","line":7,"range":{"start_line":7,"start_character":33,"end_line":7,"end_character":42},"in_reply_to":"481c26af_410a6e39","updated":"2022-10-03 16:27:20.000000000","message":"Done","commit_id":"70c00e5dac31b86d8179939c396341d587ca6411"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"16bf4b5a4c5fdba0bfea48b2ee1fce7c49b29d03","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL"},{"line_number":5,"context_line":"    worked in most cases but the udev values seem to be unreliable."},{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regards to serial number"},{"line_number":8,"context_line":"    information."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3508ccf9_c916621a","line":5,"range":{"start_line":4,"start_character":4,"end_line":5,"end_character":67},"updated":"2022-10-07 10:47:49.000000000","message":"This will be out of context on the release notes page. You need something like\n\n When detecting a serial number of a block device, the agent now tries to use lsblk first and only falls back to udev if lsblk does not return a serial number.","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"23ac7e1a0b3c5ed3b0572e1f3854f847c7930d26","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The previous way of prioritizing ID/DM_SERIAL_SHORT or ID/DM_SERIAL"},{"line_number":5,"context_line":"    worked in most cases but the udev values seem to be unreliable."},{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regards to serial number"},{"line_number":8,"context_line":"    information."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"30ff73f5_39acb694","line":5,"range":{"start_line":4,"start_character":4,"end_line":5,"end_character":67},"in_reply_to":"3508ccf9_c916621a","updated":"2022-10-10 16:33:05.000000000","message":"Done","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"16bf4b5a4c5fdba0bfea48b2ee1fce7c49b29d03","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regards to serial number"},{"line_number":8,"context_line":"    information."},{"line_number":9,"context_line":"    This commit makes lsblk the default provider of block device serial"},{"line_number":10,"context_line":"    number information."},{"line_number":11,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":10,"id":"6e89d64c_145b9c37","line":9,"range":{"start_line":9,"start_character":3,"end_line":9,"end_character":16},"updated":"2022-10-07 10:47:49.000000000","message":"All release notes are merged together, there will be no \"this commit\" - see above.","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"},{"author":{"_account_id":35233,"name":"Adam Rozman","email":"adam.rozman@est.tech","username":"rozzix"},"change_message_id":"23ac7e1a0b3c5ed3b0572e1f3854f847c7930d26","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    Based on experience it looks like lsblk might be a better"},{"line_number":7,"context_line":"    source of truth than udev in regards to serial number"},{"line_number":8,"context_line":"    information."},{"line_number":9,"context_line":"    This commit makes lsblk the default provider of block device serial"},{"line_number":10,"context_line":"    number information."},{"line_number":11,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":10,"id":"92cb5db1_60a36fb7","line":9,"range":{"start_line":9,"start_character":3,"end_line":9,"end_character":16},"in_reply_to":"6e89d64c_145b9c37","updated":"2022-10-10 16:33:05.000000000","message":"Done","commit_id":"cba57bc035dbee1dde450e378627054b1f6558d6"}]}
