{"push_id":716712583,"size":16,"distinct_size":16,"ref":"refs/heads/rr/zharkov","head":"4a8efc4c3ca65471d102b64a3971fa555ad54ee9","before":"63420d912d5ed088fef6ee945f8ea3703c57818f","commits":[{"sha":"26a77fc316907b9acc37bf9543ab04b7230e8e55","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Make project compilable after types enhancement","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/26a77fc316907b9acc37bf9543ab04b7230e8e55"},{"sha":"6326bd8e56f802df4ae52128150be2b774d064e1","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Add some marginal tests for types enhancement","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/6326bd8e56f802df4ae52128150be2b774d064e1"},{"sha":"a554da366c61c85c8da37bfc3e1288f0ef07c77d","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"++ !!","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/a554da366c61c85c8da37bfc3e1288f0ef07c77d"},{"sha":"2e824f1a4a56624d1d6c6f142097d5d35f323da6","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"++ (RN) spec","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/2e824f1a4a56624d1d6c6f142097d5d35f323da6"},{"sha":"80f8aaaee6c6356f0d00b7ad8cc7959ce27a969a","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Change traversal order for finding corresponding supertype from DFS to BFS\n\nIn most cases order doesn't matter as in supertype tree built from real code\ntypes with same type constructors should be completely equal.\n\nThe only case when order does matter is when we artificially add more specific supertype closer to the root.\n\nFor example specific annotation adding non-platform supertype MutableMap<K, V> to ConcurrentHashMap\nConcurrentHashMap<K, V> extends ConcurrentMap<K!, V!> that extends java.util.Map<K!, V!> (mapped to kotlin.MutableMap<K!, V!>)\n\nSo we want in that case to use refined (more specific) version when checking subtypes:\nConcurrentHashMap<String, Int> should not be a subtype Map<String!, Int!> (and respectively Map<String?, Int?>)\nIt should be pure non-platform Map<String, Int> that can be found only with BFS","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/80f8aaaee6c6356f0d00b7ad8cc7959ce27a969a"},{"sha":"29ef06dbdfabf5e5774f08f8e73a568e1e37c47e","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Add some collections to mockJDK\n\nIt's neccessary to test they loaded as pure implementation of kotlin collections","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/29ef06dbdfabf5e5774f08f8e73a568e1e37c47e"},{"sha":"1ff0987755d6900fb2c332172d36fb9ef99ea218","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Add PurelyImplements annotation\n\nIt's parameter is FQ-name of class (currently only from builtins) that added as supertype to annotated Java class.\n\nParameters of annotated class used as non-flexible arguments of added supertype, that helps to propagate more precise types when using in Kotlin.\nSome standard JDK collections loaded as they annotated with PurelyImplements.\n\nSee tests for clarification.\nBefore: ArrayList<Int>.add(x: Int!) // possible to add null\nAfter: ArrayList<Int>.add(x: Int)   // impossible to add null\n\n #KT-7628 Fixed\n #KT-7835 Fixed","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/1ff0987755d6900fb2c332172d36fb9ef99ea218"},{"sha":"070016c3b4026b1f0818b37d01cb3d26b74aae93","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Make project compilable after PurelyImplements annotation introduction","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/070016c3b4026b1f0818b37d01cb3d26b74aae93"},{"sha":"a6031e3e3da053c6161ac823096cd47041ecd4ca","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"~ Strange completetion change","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/a6031e3e3da053c6161ac823096cd47041ecd4ca"},{"sha":"01b801c0bcfa421d9a7e6084122c9c01b13b050e","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Change rendered descriptors in diagnostic/loadJava testData\n\nRefined java.util.Collection classes","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/01b801c0bcfa421d9a7e6084122c9c01b13b050e"},{"sha":"d818a19ce3e496e1a51589164a4b02a359dcdbb0","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Adjust testData: `value` in HashMap.put is non-flexible","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/d818a19ce3e496e1a51589164a4b02a359dcdbb0"},{"sha":"544ad779208cb6479a3c4d944afe2f38b65eabb6","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"~ Maybe change HashMap to another class?","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/544ad779208cb6479a3c4d944afe2f38b65eabb6"},{"sha":"310eb50ca7e81d95987487a60e978cf274f44c6a","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"~ Strange identityEquals behavior","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/310eb50ca7e81d95987487a60e978cf274f44c6a"},{"sha":"328c9850c15d3a86bb0ebe0b1097f34e910a63ee","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"~ no assertions on ArrayList :(","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/328c9850c15d3a86bb0ebe0b1097f34e910a63ee"},{"sha":"8ea1a38bfd75479442a6f9511069c3cb17b28f9e","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"++ J2K TD","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/8ea1a38bfd75479442a6f9511069c3cb17b28f9e"},{"sha":"4a8efc4c3ca65471d102b64a3971fa555ad54ee9","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Move creation of enhanced ValueParameterDescriptor to JavaCallableMemberDescriptor\n\nIt's needed because new parameter owner is not created while enhacing types\n(It was containing declaration of old value parameter that is wrong)\n\nAlso simplified SignatureParts' logic: `replaceType` is always an identity function","distinct":true,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/4a8efc4c3ca65471d102b64a3971fa555ad54ee9"}]}