Skip to content

v1.0.0

Compare
Choose a tag to compare
@Pebaz Pebaz released this 11 Apr 15:33
· 272 commits to master since this release

Major Release v1.0.0

After 2 months of hard work, I am proud to announce the release of Nimporter version 1.0.0! I have now implemented all of features necessary to consider Nimporter complete but will continue to provide bug fixes and small enhancements as they become necessary. The greatest feature in this release is the ability to distribute libraries using Nim code without requiring the end user to install a Nim compiler. Here is a list of the new features introduced in this version:

  • Distribute libraries with Nim code without requiring end users to install a Nim compiler!
  • Much easier installation: pip install nimporter.
  • Nimporter can work with Nim installed via Choosenim or manually.
  • Nimporter finds Nim standard library automatically.
  • Entire Nim projects with .nimble dependencies are now officially supported.
  • Binary (wheel) distributions are officially supported and are effortless to create (1 extra line of code).
  • Source distributions now directly imply that they contain bundled Nim source files.
  • Absolute control over CLI args are 100% supported for an arbitrary number of platforms and situations.
  • Arbitrarily complex namespacing is maintained for libraries packaged with Nim code.
  • 44 unit tests and 5 integration tests.
  • 94% code coverage
  • Official Nimporter CLI for cleaning cached builds and compiling extensions in the terminal.
  • Generated documentation.
  • New logo. 😃

There is now no excuse not to make your Python code more performant using Nim. All of the hard work has been done for you: simply plop a Nim source file into your project, import nimporter, and then directly import your Nim code. You can now think of Nimporter as Cython for Nim, but seamless.

Furthermore, none of your end users have to install a Nim compiler (or a C compiler for that matter). Distribution is 1 extra line of code.

Using Nim with Python now involves the same effort as writing pure Python.

Welcome to Nimporter 1.0.0.