Python 2 support
Typical Microsoft. Python 2 is already end-of-life; there will be no maintenance beyond the end of next year.
https://pythonclock.org/
Microsoft this week announced something that may have surprised a few devs who'd seen it lurking in Azure for a while – Python 2 support has finally moved out of preview for Azure runbooks. A runbook is a sequence of operations to automate a routine job. Examples would be managing resources or restarting VMs. Some can be …
Yes. I'm still on 2, but did a lot of prelim porting work to go to 3 (which went surprisingly smoothly).
I have some heavily optimized code that joins large data sets from different sources. It's only about 250 lines of code and I've tried hard to wring any performance I could out of it. 3.6 surprised me by cutting Python2.7's time pretty much in half. Supposedly 3.7 would be even better.
MS is nice to support Python, but doing 2-only is an odd choice. Maybe they rely on Fabric, whose main implementation is also currently 2-only?
MS is nice to support Python, but doing 2-only is an odd choice
You'd think so but I think Python 2 is still standard for lots of the infrastructure stuff (openstack, et al.) Probbably won't make a lot of difference when Python 2 is no longer officially supported for this kind of stuff.
It's only about 250 lines of code and I've tried hard to wring any performance I could out of it. 3.6 surprised me by cutting Python2.7's time pretty much in half.
That does surprise me because 3.6 isn't noticeably faster as far as I can tell, unless you can take advantage of asyncio. 3.7 has faster dictionaries.
it relies very heavily on multi-field attrgetter/itemgetter from the operator module. Could be that was optimized.
besides async, 3.7 has cut function call overhead by 20% supposedly
FWIW 3.x has been outperfoming 2.7 for a while (3.5+ ?) in many use cases.
https://speed.python.org/comparison/