{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,4]],"date-time":"2026-02-04T17:28:57Z","timestamp":1770226137289,"version":"3.49.0"},"reference-count":64,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"2","license":[{"start":{"date-parts":[[2024,2,1]],"date-time":"2024-02-01T00:00:00Z","timestamp":1706745600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"},{"start":{"date-parts":[[2024,2,1]],"date-time":"2024-02-01T00:00:00Z","timestamp":1706745600000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-029"},{"start":{"date-parts":[[2024,2,1]],"date-time":"2024-02-01T00:00:00Z","timestamp":1706745600000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-037"}],"funder":[{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["62272219"],"award-info":[{"award-number":["62272219"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["62025202"],"award-info":[{"award-number":["62025202"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Postgraduate Research &#x0026; Practice Innovation Program of Jiangsu Province","award":["SJCX22_0018"],"award-info":[{"award-number":["SJCX22_0018"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IIEEE Trans. Software Eng."],"published-print":{"date-parts":[[2024,2]]},"DOI":"10.1109\/tse.2023.3346474","type":"journal-article","created":{"date-parts":[[2023,12,25]],"date-time":"2023-12-25T19:50:49Z","timestamp":1703533849000},"page":"258-279","source":"Crossref","is-referenced-by-count":5,"title":["Revisiting Knowledge-Based Inference of Python Runtime Environments: A Realistic and Adaptive Approach"],"prefix":"10.1109","volume":"50","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-6128-7293","authenticated-orcid":false,"given":"Wei","family":"Cheng","sequence":"first","affiliation":[{"name":"State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3635-6335","authenticated-orcid":false,"given":"Wei","family":"Hu","sequence":"additional","affiliation":[{"name":"State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7970-1384","authenticated-orcid":false,"given":"Xiaoxing","family":"Ma","sequence":"additional","affiliation":[{"name":"State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China"}]}],"member":"263","reference":[{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2018.8330214"},{"key":"ref2","doi-asserted-by":"publisher","DOI":"10.1145\/3460319.3464797"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00023"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2018.00031"},{"key":"ref5","doi-asserted-by":"crossref","first-page":"391","DOI":"10.1145\/2901739.2901767","article-title":"From query to usable code: An analysis of stack overflow code snippets","volume-title":"Proc. 13th Int. Conf. Mining Softw. Repositories","author":"Yang","year":"2016"},{"key":"ref6","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2012.6405249"},{"key":"ref7","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00047"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2019.00052"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00144"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510127"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510078"},{"key":"ref12","article-title":"API and feature removals in Python 3.8","year":"2023"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409735"},{"key":"ref14","article-title":"Changes of jinja2 in version 3.1.0","year":"2023"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380426"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1016\/0096-0551(78)90009-7"},{"key":"ref17","article-title":"PyPI FAQs","year":"2023"},{"key":"ref18","article-title":"PEP 508 - Dependency specification for Python software packages","author":"Collins","year":"2023"},{"key":"ref19","article-title":"PEP 440 - Version identification and dependency specification","author":"Coghlan","year":"2023"},{"key":"ref20","article-title":"PyPI APIs: Simple","year":"2023"},{"key":"ref21","article-title":"PyPI APIs: JSON","year":"2023"},{"key":"ref22","article-title":"Core metadata specifications","year":"2023"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2018.8330201"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2022.3191353"},{"key":"ref25","article-title":"Python module index","year":"2023"},{"key":"ref26","article-title":"Python built-in functions","year":"2023"},{"key":"ref27","article-title":"Inspect live objects","year":"2023"},{"key":"ref28","article-title":"PEP 427 - The wheel binary package format 1.0","author":"Holth","year":"2023"},{"key":"ref29","article-title":"PEP 508 - Simple repository API","author":"Stufft","year":"2023"},{"key":"ref30","article-title":"Documentation of tree-sitter","year":"2023"},{"key":"ref31","article-title":"Whats new in Python","year":"2023"},{"key":"ref32","article-title":"New features in Python 3.5.","year":"2023"},{"key":"ref33","doi-asserted-by":"publisher","DOI":"10.1145\/174662.174663"},{"key":"ref34","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-78800-3_24"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.1109\/SANER48275.2020.9054837"},{"key":"ref36","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2006.49"},{"key":"ref37","article-title":"Broad functionality overview.\u201d","year":"2023"},{"key":"ref38","article-title":"Documentation of pip freeze","year":"2023"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2017.31"},{"key":"ref40","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2019.2900307"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2020.3023664"},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-021-10113-2"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1109\/ICWS.2013.48"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2017.7884616"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2016.04.008"},{"key":"ref46","doi-asserted-by":"publisher","DOI":"10.1109\/SANER48275.2020.9054800"},{"key":"ref47","doi-asserted-by":"publisher","DOI":"10.1109\/MSR.2012.6224274"},{"key":"ref48","first-page":"197","article-title":"On SAT technologies for dependency management and beyond","volume-title":"Proc. 1st Workshop Analyses Softw. Product Lines","author":"Berre","year":"2008"},{"key":"ref49","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2012.02.018"},{"key":"ref50","doi-asserted-by":"publisher","DOI":"10.1145\/3180155.3180184"},{"key":"ref51","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409689"},{"key":"ref52","doi-asserted-by":"publisher","DOI":"10.1145\/3551349.3560437"},{"key":"ref53","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE55969.2022.00052"},{"key":"ref54","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.1996.565039"},{"key":"ref55","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2005.1553570"},{"key":"ref56","doi-asserted-by":"publisher","DOI":"10.1145\/1806799.1806848"},{"key":"ref57","doi-asserted-by":"publisher","DOI":"10.1145\/2000799.2000805"},{"key":"ref58","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227179"},{"key":"ref59","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2014.33"},{"key":"ref60","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2016.71"},{"key":"ref61","first-page":"138","article-title":"Assessing and restoring reproducibility of Jupyter notebooks","volume-title":"Proc. 35th IEEE\/ACM Int. Conf. Automat. Softw. Eng.","author":"Wang","year":"2021"},{"key":"ref62","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00020"},{"key":"ref63","doi-asserted-by":"publisher","DOI":"10.1109\/ASE51524.2021.9678889"},{"key":"ref64","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-031-02462-7_12"}],"container-title":["IEEE Transactions on Software Engineering"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/32\/10433390\/10373775.pdf?arnumber=10373775","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,3,3]],"date-time":"2024-03-03T05:57:32Z","timestamp":1709445452000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/10373775\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,2]]},"references-count":64,"journal-issue":{"issue":"2"},"URL":"https:\/\/doi.org\/10.1109\/tse.2023.3346474","relation":{},"ISSN":["0098-5589","1939-3520","2326-3881"],"issn-type":[{"value":"0098-5589","type":"print"},{"value":"1939-3520","type":"electronic"},{"value":"2326-3881","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,2]]}}}