惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 司徒正美
M
MIT News - Artificial intelligence
博客园_首页
IT之家
IT之家
L
LangChain Blog
D
DataBreaches.Net
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News
Blog — PlanetScale
Blog — PlanetScale
人人都是产品经理
人人都是产品经理
博客园 - Franky
云风的 BLOG
云风的 BLOG
罗磊的独立博客
量子位
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
博客园 - 叶小钗
S
SegmentFault 最新的问题
Stack Overflow Blog
Stack Overflow Blog
B
Blog
T
Tailwind CSS Blog
A
About on SuperTechFans
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com

Nim Programming Language

Nim version 2.2.12 released Nim version 2.2.10 released NimConf 2026: Dates Announced, Registrations Open Nim version 2.2.8 released Nim version 2.2.6 released Nim versions 2.2.4 and 2.0.16 released Nim Community Survey 2024 Results Nim version 2.0.14 released Launching the 2024 Nim Community Survey Nim version 2.0.12 released NimConf 2024 - Nim Online Conference
Nim version 2.2.2 released
2025-02-05 · via Nim Programming Language

05 February 2025 The Nim Team

The Nim Team is happy to announce version 2.2.2, the first patch release for our stable release, Nim 2.2.

It comes four months after the 2.2.0 release and it contains 203 commits, bringing bugfixes and improvements.

If you’re still on Nim 1.6, take a look at the version 2.0 release article to see all the features you’re missing. If you’ve been using Nim 2.0, the version 2.2 release article shows the improvements available in Nim 2.2.

The Nim 2.2.2 changelog is available here.

Installing Nim 2.2.2

Check out if the package manager of your OS already ships version 2.2.2 or install it as described here.

If you have installed a previous version of Nim using choosenim, getting Nim 2.2.2 is as easy as:

$ choosenim update self
$ choosenim update stable

NOTE: Make sure that the version of choosenim you have installed is 0.8.5 or higher, otherwise visit choosenim’s repo and see there how to re-install it first, before updating Nim.

Alternatively, you can download Nim 2.2.2 from our nightlies builds.

Bugfixes

  • Fixed “compiler crash on len of varargs[untyped]” (#24258)
  • Fixed “Force compiler generate declaration of a type” (#19585)
  • Fixed “importc types alias doesn’t work with distinct” (#18896)
  • Fixed “Seg fault when adding deque element” (#24319)
  • Fixed “Nested iterator doesn’t work in proc” (#3824)
  • Fixed “internal error: not part of closure object type” (#19984)
  • Fixed “Size/Signedness issues with unordered enums” (#23952)
  • Fixed “Calling proc with nested ref/deref constructed object results in invalid generated code” (#18081)
  • Fixed “Error: VM problem: dest register is not set with const-bound proc” (#24359)
  • Fixed “C compiler error when default initializing an object field function when the default function is overloaded” (#23545)
  • Fixed “SIGSEGV with nim c -c and nim e on macro w(): untyped = result = genSym(nskType)” (#24379)
  • Fixed “build failed for lib/pure/selectors via mingw” (#24371)
  • Fixed “supportsCopyMem can fail from macro context with tuples” (#24378)
  • Fixed “Stop writing .ndi files” (#24395)
  • Fixed “Array field that has array-element type with copy-protector and default value set on a field will yield error” (#24369)
  • Fixed “Memory leak under Arc/Orc on inline iterators with nested seq.” (#24402)
  • Fixed “new-style concept fails to match” (#24451)
  • Fixed “No error checking on fclose” (#19600)
  • Fixed “let symbol created by template is reused in nimvm branch “ (#24472)
  • Fixed “redundant type cast causes errors with VCC” (#24476)
  • Fixed “asyncdispatch.drain returns before timeout even if there are pending operations” (#24506)
  • Fixed “ensureMove usage leading to memory leak for JsonNode !” (#24504)
  • Fixed “UB calling allocCStringArray([""]) with --mm:refc” (#22153)
  • Fixed “std/pegs with nim cpp --mm:orc --exceptions:goto creates invalid C++” (#22101)
  • Fixed “Word error” (#24538)
  • Fixed “Allow, but warn on, unknown hint/warning names” (#20908)
  • Fixed “building nimble 0.16.4 fails when running build_all.sh” (#24536)
  • Fixed “The compiler optimizes out unused constants marked with the exportc pragma” (#17681)
  • Fixed “Asyncdispatch leaks under –mm:arc” (#23212)
  • Fixed “Nim v2 emit / asm var param dereference inconsistency” (#23114)
  • Fixed “Incorrect/misleading error message with large array bounds” (#24599)
  • Fixed “static openArray backed by seq cannot be passed to another function” (#24630)
  • Fixed “size pragma on type used in type imported indirectly results in inconsistent C declarations of type size” (#24623)
  • Fixed “nimsuggest “outline” output does not list templates” (#21923)
  • Fixed “cpp compilation failure on Nim 2.2.x.” (#24658)

The complete list of changes is available here.