{"push_id":885464923,"size":41,"distinct_size":1,"ref":"refs/heads/rr/stdlib/toMap","head":"421d15c4f73ea0bcfed1a0b6bcb0f2eae4446a3f","before":"51508268fb7c5ca3475d97d185b494794bab2a31","commits":[{"sha":"aca355acdc7e25351c3c97d48ac3d6b216169cb2","author":{"email":"60483c369f91bdc3f363738db99132133bec8cfa@jetbrains.com","name":"Andrey Breslav"},"message":"'...' reserved as a token\n\nKT-9708 Ambiguous syntax for Double ranges: `.1...2` (triple dot)\n\n #KT-9708 Fixed","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/aca355acdc7e25351c3c97d48ac3d6b216169cb2"},{"sha":"8544a5ab5f6be21d4498670270946447fed194ac","author":{"email":"60483c369f91bdc3f363738db99132133bec8cfa@jetbrains.com","name":"Andrey Breslav"},"message":"Remove \"This\" keyword","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/8544a5ab5f6be21d4498670270946447fed194ac"},{"sha":"45db5db7e8b99f10f3c4ec3231439c9a643a9066","author":{"email":"60483c369f91bdc3f363738db99132133bec8cfa@jetbrains.com","name":"Andrey Breslav"},"message":"Forbid prefixes and suffixes for numeric literals","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/45db5db7e8b99f10f3c4ec3231439c9a643a9066"},{"sha":"f596d9ac234ad98a01c23210ef3fe8c24dfc0050","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Provide asIterable also for CharSequences, Maps and Iterables.\nKT-10152 Fixed","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/f596d9ac234ad98a01c23210ef3fe8c24dfc0050"},{"sha":"6ca647aecda0c0747b443dd827fa786cfed23b02","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Minor: cleanup asSequence() documentation.","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/6ca647aecda0c0747b443dd827fa786cfed23b02"},{"sha":"f107559a3ce099e2e01a77a844b59eec9e49f86d","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Docs: proper pluralization of 'entry'","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/f107559a3ce099e2e01a77a844b59eec9e49f86d"},{"sha":"ea60ab74a759edf996dee2f42af1ea9c62090ab1","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Replace deprecated toMap usages with toMapBy","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/ea60ab74a759edf996dee2f42af1ea9c62090ab1"},{"sha":"0ffce063565b534e845fe736ee23656debbc659a","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Hide toMap with keySelector\n#KT-6657","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/0ffce063565b534e845fe736ee23656debbc659a"},{"sha":"e5dd719eeca19dcb83368f4d1cf82c1f6d68cb8c","author":{"email":"b30b0df721c7fceb2c9cdf5649c30d7087c24f40@jetbrains.com","name":"Ilya Gorbunov"},"message":"Fix warning about incompatible types.","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/e5dd719eeca19dcb83368f4d1cf82c1f6d68cb8c"},{"sha":"8a748703c82d04b7eef107fa5211ae926b022025","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Simplify type mapping for builtin types","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/8a748703c82d04b7eef107fa5211ae926b022025"},{"sha":"6cf7cd5c07c028e62f21f9b46d49d3c304b3a14d","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Minor. Rename VALUE -> DEFAULT","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/6cf7cd5c07c028e62f21f9b46d49d3c304b3a14d"},{"sha":"d8297cd6f1bb83a3c9e970bdc05b0069dd830689","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Extract, rename and konvert TypeMappingMode","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/d8297cd6f1bb83a3c9e970bdc05b0069dd830689"},{"sha":"d22aaf9d5279119ae76007e30668722bcf65f19a","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Introduce writeDeclarationSiteProjections option into TypeMappingMode","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/d22aaf9d5279119ae76007e30668722bcf65f19a"},{"sha":"ef2bc28463f67b832b38518cf529337a972f3cce","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Minor. Rename TypeMappingMode entries","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/ef2bc28463f67b832b38518cf529337a972f3cce"},{"sha":"faf1e17888325feaa21de282c866c563a1e351be","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Introduce TypeMappingMode.toGenericArgumentMode","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/faf1e17888325feaa21de282c866c563a1e351be"},{"sha":"917420f3320a4aec7b2f697a0473d8d84e8a24f3","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Convert TypeMappingMode from enum to plain class with constant instances","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/917420f3320a4aec7b2f697a0473d8d84e8a24f3"},{"sha":"1731cb8b40e15631356fc62912c1be0cd2c29f58","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Make jvmSignature optional in WriteSignatureTest","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/1731cb8b40e15631356fc62912c1be0cd2c29f58"},{"sha":"406e31f54a251fc26f0b267ad65bcdc05440c85e","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Change default rules for declaration-site wildcards\n\nMostly this commit is about skipping wildcards that are redundant in some sense.\nThe motivation is that they looks `long` in Java code.\n\nThere are basically two important parts: return types and value parameters.\n\n1. For return types default behaviour is skipping all declaration-site wildcards.\nThe intuition behind this rule is simple: return types are basically used in subtype position\n(as an argument for another call), and here everything works well in case of 'out'-variance.\nFor example we have 'Out<Out<T>>>' as subtype both for 'Out<Out<T>>>' and 'Out<? extends Out<? extends T>>>',\nso values of such type is more flexible in contrast to `Out<? extends Out<? extends T>>>` that could be used only\nfor the second case.\n\nBut we have choosen to treat `in`-variance in a different way: argument itself\nshould be rendered without wildcard while nested arguments are rendered by the rules\ndescribed further (see second part).\n\nFor example: 'In<Out<OpenClass>>' will have generic signature 'In<Out<? extends OpenClass>>'.\nIf we omit all wildcards here, then value of type 'In<Out<OpenClass>>'\nwill be impossible to use as argument for function expecting 'In<? super Out<? extends Derived>>'\nwhere Derived <: OpenClass (you can check it manually :]).\n\nAnd this exception should not be very inconvinient because in-variance is rather rare.\n\n2. For value parameters we decided to skip wildcards if it doesn't make obtained signature weaker\nin a sense of set of acceptable arguments.\n\nMore precisely:\n    a. We write wildcard for 'Out<T>' iff T ``can have subtypes ignoring nullability''\n    b. We write wildcard for 'In<T>' iff T is not equal to it's class upper bound (ignoring nullability again)\n\nDefinition of ``can have subtypes ignoring nullability'' is straightforward and you can see it in commit.\n\n #KT-9801 Fixed\n #KT-9890 Fixed","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/406e31f54a251fc26f0b267ad65bcdc05440c85e"},{"sha":"0255be7debb80f5c8df242d53ef11e5f9f0df34d","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Minor. Pass callableDescriptor into writeParameter","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/0255be7debb80f5c8df242d53ef11e5f9f0df34d"},{"sha":"20cbceb56d24e3fcdff8e7db4168d31cc5df4dcd","author":{"email":"276f7c78acc09fc746a1726a24dcd6b001c0a652@jetbrains.com","name":"Denis Zharkov"},"message":"Add temporary hack for wildcards in Collections\n\nBy default we would render 'MutableCollection<String>.addAll(Collection<String>)' as\n'(LCollection<String>;)' (without wildcard) because String is final and\neffectively it's the same as '(LCollection<? extends String>;)'.\n\nBut that's wrong signature in a sense that java.util.Collection has different\nsignature: '(LCollection<? extends E>)'.\n\nActually the problem is much wider than collections,\nit concerns any Java code that uses Kotlin classes with covariant\nparameters without '? extends E' wildcards.\n\nTemporary solution is just to hardcode/enumerate builtin methods\nwith special signature.","distinct":false,"url":"https://api.github.com/repos/JetBrains/kotlin/commits/20cbceb56d24e3fcdff8e7db4168d31cc5df4dcd"}]}