Skip to content

Releases: uber/needle

Deterministic output file

28 Oct 00:14
Compare
Choose a tag to compare

Same input source files should lead to exactly the same generated needle file. (#369)

Bug fixes for 0.16.0

22 Oct 23:45
Compare
Choose a tag to compare
  • Fix dyld issue by shipping the lib_SwiftSyntaxParser.dylib with alongside needle binary
  • Fix an import issue for statements like import protocol Foo.Bar

SwiftSyntax, performance and code size reduction

21 Oct 18:29
Compare
Choose a tag to compare
  • This release uses SwiftSyntax to parse source code.
  • The code generator's runtime performance has improved by about 35% with optimization changes enabled by SwiftSyntax.
  • Reduces the generated file's lines of code.

Source hashing and reduced generated code

18 Jun 21:53
Compare
Choose a tag to compare
  • The generated file now contains a hash of all the files that needle actually looked at. This allows optimizations where we can decide to skip recompiling the generated file if nothing has changed since last time.
  • The generated code is now optimized for the case where a specific needle scope may be attached at various different points in the tree. Until now, this lead to a provider class being generated for every unique path. Now, paths that have similar providers use a base class to shared most of the code.

Generator fix for Swift 5.2

22 Apr 21:43
Compare
Choose a tag to compare
  • Fix generator for Swift 5.2
  • Downgrade orphan scopes from warning to info log

v0.13.0

28 Feb 01:37
Compare
Choose a tag to compare

Make needle binary run faster without accumulating all the extension files' import statements.

Errors now include a complete list of missing dependencies

11 Sep 21:40
Compare
Choose a tag to compare
  • Key new feature is that the command-line tool does not exit on the first error. Instead it produces a full report.

Explicit root scope API

14 May 20:50
Compare
Choose a tag to compare
v0.10.0

Update generator binary and version file for v0.10.0

Fix podspec

24 Apr 22:39
Compare
Choose a tag to compare

Various strict validation, extension support and renames