[ANN] MicroPython 1.5

Paul Sokolovsky pmiscml at gmail.com
Sun Nov 8 15:27:58 EST 2015


Hello,

On Sun, 08 Nov 2015 10:28:24 -0800
Paul Rubin <no.email at nospam.invalid> wrote:

> Paul Sokolovsky <pmiscml at gmail.com> writes:
> > Recent 1.5 release is an important milestone for the project, major
> > changes including:
> 
> Thanks for posting this.  We don't hear enough about MicroPython on
> this newsgroup so it's good to get these announcements.
> 
> Is the language still Python 3.4?  Will it implement 3.5 sometime
> soon?

Yes, we already implement the most important 3.5 feature - ability to
format bytes: b"foo%s" % b"bar" ;-).

> > 1. Advanced REPL support with smart auto-indent and auto-completion
> 
> Hmm does this make the code footprint significantly bigger?

No, as everything else in MicroPython, code implementing this feature
is well-optimized, it did cost few hundreds of bytes to implement.

> > 2. Support for client SSL connections.
> 
> Nice.  Does it check the server certificate?  

The driving force for adding SSL was being able to download package
from PyPI (for builtin upip package manager). Unfortunately, PyPI forces
SSL, so previously we had to fallback to wget for downloads, which
limited upip to unix-like systems. So, the way we use SSL is as bloated
plain HTTP, just to workaround PyPI's maintainers' decision to raise
the bar too high to access it. Consequently, nobody yet worked on
certificate checking and other stuff.

> Is it based on TLSLite by any chance?

I had an idea to port TLSLite and even submitted couple of patches to
it, I had an idea to write a module titled "insecureSSL" which would
just emulate SSL by doing as little as possible processing and using
static session keys, etc. - just to prove the point that there can't be
security without both parties consenting, and mis-applied "security" is
nothing but a denial-of-service. But I gave up in the end, deciding to
take that productively and add generic SSL client support using axTLS
library (which was also optimized to meet MicroPython code size
standards).

(You see, these questions touched ranty feelings - thanks for
asking ;-) ).

> > 5. There're now 2 well-supported microcontroller boards for
> > MicroPython, and dozen(s) community-supported ones.
> 
> The PyBoard is very nice, but what is the other one?  I don't see
> anything about it on the MicroPython web site.  (Hmm, maybe you mean
> the Micro Bit).

It's WiPy, http://wipy.io/ , WiFi-enabled board which had successful
kickstarter in the spring and last month shipped ready boards. Micro
Bit would take some time before general availability of course.

> Btw, I notice that the "store" page doesn't show any products under my
> normal adblock settings.  It's probably best to make it a normal page
> instead of an AJAX one.
> 
> > MicroPython supports growing subset of Python3 standard library
> > (including simplified asyncio package)
> 
> This would look much nicer with the new Python 3.5 syntax.

There was initial patch to add initial async/await support a week within
corresponding PEP was initially posted. But we decided not to haste with
it, or we can add feature which nobody really uses (while we have bunch
of features which almost everyone would use, but which aren't yet
there). So, we decided yo do our homework, and let asyncio/async-await
people do theirs on popularizing it (every 10th Python programmer
using it seems like good target, now it's probably every 10,000th if not
100,000th).


Thanks for the feedback!

-- 
Best regards,
 Paul                          mailto:pmiscml at gmail.com



More information about the Python-list mailing list