<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p" -->

---
title: The Mypy Blog: Mypy 1.2 Released | daily.dev
description: Mypy 1.2 has been released, bringing improvements to dataclass transforms, native unboxed float support in mypyc for faster floating-point code, and new native...
canonical: https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: The Mypy Blog: Mypy 1.2 Released | daily.dev
og:description: Mypy 1.2 has been released, bringing improvements to dataclass transforms, native unboxed float support in mypyc for faster floating-point code, and new native...
og:url: https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p
og:image: https://api.daily.dev/og/posts/sT9hw7E3p.png
og:image:alt: The Mypy Blog: Mypy 1.2 Released
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# The Mypy Blog: Mypy 1.2 Released

**[mypy - Optional Static Typing for Python](https://daily.dev/sources/mypy-lang)** · 5 min read · 0 upvotes · 0 comments

## Summary

Mypy 1.2 has been released, bringing improvements to dataclass transforms, native unboxed float support in mypyc for faster floating-point code, and new native 32-bit and 64-bit signed integer types (i32/i64) via mypy_extensions to speed up integer-heavy code. The release also includes numerous crash fixes, error reporting improvements, and documentation updates. Typeshed is now distributed as modular, separate PyPI packages instead of a single bundle. The float changes introduce behavior changes: float subclass instances are now implicitly converted to float when compiled, and int values can no longer be implicitly assigned to float-typed variables in compiled code.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://mypy-lang.blogspot.com/2023/04/mypy-12-released.html>

## Questions this post answers

### Why can't I assign an int to a float variable in my mypyc compiled Python code anymore?

As of mypy 1.2, mypyc uses a native unboxed representation for float values, making int and float incompatible representations in compiled code. Assigning an int directly to a float-typed variable is now an error; you must explicitly convert using float(n). Int values passed as function arguments expecting float are still implicitly converted.

_daily.dev helps python developers catch mypyc breaking changes like this before they hit production._

### What happens when I assign a float subclass instance to a float-typed variable in mypyc compiled code?

Starting in mypy 1.2, mypyc implicitly converts instances of float subclasses to plain float instances when assigned to a variable typed as float in compiled code. Previously this implicit conversion only applied to int subclasses, not float subclasses, so calling type() on the result now returns float rather than the subclass.

_track mypyc's evolving float handling behavior on daily.dev before it surprises your codebase._

### How do I speed up integer-heavy Python code using mypyc native integer types?

Mypy 1.2 adds mypyc support for signed 32-bit and 64-bit integer types, mypy_extensions.i32 and mypy_extensions.i64, alongside the existing arbitrary-precision int type. Annotating variables or function parameters with i64, for example, lets mypyc generate faster native integer operations instead of using Python's boxed int objects.

_developers optimizing python performance can follow mypyc updates like this on daily.dev._

## Similar posts on daily.dev

- [The Mypy Blog: Mypy 2.3 Released](https://daily.dev/posts/the-mypy-blog-mypy-2-3-released-rpucascf7) · mypy - Optional Static Typing for Python · 0 upvotes · 0 comments
- [From Scripts to Scale](https://daily.dev/posts/from-scripts-to-scale-z15peccf4) · Simple Thread · 0 upvotes · 0 comments
- [Migrate From mypy To ty And pyrefly](https://daily.dev/posts/migrate-from-mypy-to-ty-and-pyrefly-qlfxaaw4n) · Planet Python · 0 upvotes · 0 comments
- [The Joy of Typing](https://daily.dev/posts/the-joy-of-typing-r5aiqx2dz) · Towards Data Science · 0 upvotes · 0 comments

---

Tags: [#general-programming](https://daily.dev/tags/general-programming), [#python](https://daily.dev/tags/python), [#performance](https://daily.dev/tags/performance)

[View this post on daily.dev](https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"The Mypy Blog: Mypy 1.2 Released","url":"https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p"},"datePublished":"2026-08-23T12:17:41.557Z","dateModified":"2026-08-23T12:20:47.969Z","description":"Mypy 1.2 has been released, bringing improvements to dataclass transforms, native unboxed float support in mypyc for faster floating-point code, and new native...","image":"https://media.daily.dev/image/upload/s--ZrL_HSsR--/f_auto/v1722860399/public/Placeholder%2006","thumbnailUrl":"https://media.daily.dev/image/upload/s--ZrL_HSsR--/f_auto/v1722860399/public/Placeholder%2006","isAccessibleForFree":true,"articleSection":"mypy - Optional Static Typing for Python","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"mypy - Optional Static Typing for Python","logo":"https://media.daily.dev/image/upload/logos/placeholder.jpg","url":"https://daily.dev/sources/mypy-lang"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"general-programming,python,performance","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"mypy - Optional Static Typing for Python","item":"https://daily.dev/sources/mypy-lang"},{"@type":"ListItem","position":3,"name":"The Mypy Blog: Mypy 1.2 Released"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/the-mypy-blog-mypy-1-2-released-st9hw7e3p#faq","mainEntity":[{"@type":"Question","name":"Why can't I assign an int to a float variable in my mypyc compiled Python code anymore?","acceptedAnswer":{"@type":"Answer","text":"As of mypy 1.2, mypyc uses a native unboxed representation for float values, making int and float incompatible representations in compiled code. Assigning an int directly to a float-typed variable is now an error; you must explicitly convert using float(n). Int values passed as function arguments expecting float are still implicitly converted. daily.dev helps python developers catch mypyc breaking changes like this before they hit production."}},{"@type":"Question","name":"What happens when I assign a float subclass instance to a float-typed variable in mypyc compiled code?","acceptedAnswer":{"@type":"Answer","text":"Starting in mypy 1.2, mypyc implicitly converts instances of float subclasses to plain float instances when assigned to a variable typed as float in compiled code. Previously this implicit conversion only applied to int subclasses, not float subclasses, so calling type() on the result now returns float rather than the subclass. track mypyc's evolving float handling behavior on daily.dev before it surprises your codebase."}},{"@type":"Question","name":"How do I speed up integer-heavy Python code using mypyc native integer types?","acceptedAnswer":{"@type":"Answer","text":"Mypy 1.2 adds mypyc support for signed 32-bit and 64-bit integer types, mypy_extensions.i32 and mypy_extensions.i64, alongside the existing arbitrary-precision int type. Annotating variables or function parameters with i64, for example, lets mypyc generate faster native integer operations instead of using Python's boxed int objects. developers optimizing python performance can follow mypyc updates like this on daily.dev."}}]}
```

