All Versions
69
Latest Version
Avg Release Cycle
69 days
Latest Release
-

Changelog History
Page 3

  • v1.0.1 Changes

    November 27, 2020

    Internal Changes

    • โšก๏ธ Updated project and CI to Xcode 12.1
    • โšก๏ธ Updated SourceKitten, Commander.

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix multiline method declarations parsing
    • ๐Ÿ›  Fix an issue, where "types.implementing." did not work due to an additional module name.
    • ๐Ÿ—„ Using tuple for associated values in enum case is deprecated since Swift 5.2. Fix AutoEquatable and AutoHashable templates to avoid the warning (#842)
  • v1.0.0 Changes

    August 14, 2020

    ๐Ÿ†• New Features

    • โž• Added support for associated types (#539)

    ๐Ÿ› Bug fixes

    • Disallow protocol compositions from being considered as the rawType of an enum (#830)
    • โž• Add missing documentation for the ProtocolComposition type.
    • ๐Ÿ›  Fix incorrectly taking closure optional return value as sign that whole variable is optional (#823)
    • ๐Ÿ›  Fix incorrectly taking return values with closure as generic type as sign that whole variable is a closure (#845)
    • ๐Ÿ›  Fix empty error at build time when using SwiftTemplate on Xcode 11.4 and higher (#817)
  • v0.18.0 Changes

    April 28, 2020

    ๐Ÿ†• New Features

    • โž• Added optional filter for variables
    • โž• Added json filter to output raw JSON objects
    • โž• Added .defaultValue to AssociatedValue
    • โž• Added support for parsing Protocol Compositions
    • โž• Added support for parsing free functions
    • โž• Added support for indirect enum cases
    • โž• Added support for accessing all typealiases via typealiases and typesaliasesByName
    • โž• Added support for parsing global typealiases

    Internal Changes

    • ๐Ÿ‘Œ Improved error logging when running with --watch option
    • โšก๏ธ Updated CI to Xcode 11.4.1

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fixed expansion of undefined environment variables (now consistent with command line behaviour, where such args are empty strings)
    • ๐Ÿ›  Fixed a bug in inferring extensions of Dictionary and Array types
    • ๐Ÿ›  Fixed a bug that was including default values as part of AssociatedValues type names
    • ๐Ÿ›  Fixed an issue with AutoMockable.stencil template when mocked function's return type was closure
    • ๐Ÿ›  Fixed missing SourceryRuntime dependency of SourceryFramework (SPM)
  • v0.17.0 Changes

    September 03, 2019

    Internal Changes

    • Parallelized combining phase that yields 5-10x speed improvement for New York Times codebase
    • Switched cache logic to rely on file modification date instead of content Sha256
    • โž• Additional benchmark logs showing how long does each phase take
    • โšก๏ธ update dependencies to fix cocoapods setup when using Swift 5.0 everywhere. Update Quick to 2.1.0, SourceKitten to 0.23.1 and Yams to 2.0.0
  • v0.16.2 Changes

    July 18, 2019

    ๐Ÿ†• New Features

    • ๐Ÿ‘Œ Support automatic linking of files generated by annotations to project target

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fixes always broken sourcery cache
    • โž• Add missing SourceryFramework library product in Package.swift
  • v0.16.1 Changes

    April 29, 2019

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix ReceivedInvocations's type for the method which have only one parameter in AutoMockable.stencil
    • ๐Ÿ›  Fix missing folder error that could happen when running a Swift template with existing cache
    • Don't add indentation to empty line when using inline generated code.
    • ๐Ÿ›  Fix issue where errors in Swift Template would not be reported correctly when using Xcode 10.2.
    • ๐Ÿ›  Fix annotations for enum cases with associated values that wouldn't parses them correctly when commas were used

    Internal Changes

    • โœ‚ Removed dependency on SwiftTryCatch pod in order to avoid Swift Package Manager errors.
  • v0.16.0 Changes

    March 08, 2019
    • ๐Ÿ”ง Replaces environment variables inside .yml configurations (like ${PROJECT_NAME}), if a value is set.
    • ๐Ÿ›  Fixes warning in generated AutoMockable methods that have implicit optional return values
    • ๐Ÿ‘Œ Support for optional methods in ObjC protocols
    • ๐Ÿ‘Œ Support for parsing lazy vars into Variable's attributes.
    • โšก๏ธ Updated Stencil to 0.13.1 and SwiftStencilKit to 2.7.0
    • In Swift templates CLI arguments should now be accessed via argument instead of arguments, to be consistent with Stencil and JS templates.
    • Now in swift templates you can define types, extensions and use other Swift features that require file scope, without using separate files. All templates code is now placed at the top level of the template executable code, instead of being placed inside an extension of TemplateContext type.
    • ๐Ÿ›  Fixed missing generated code annotated with inline annotation when corresponding annotation in sources are missing. This generated code will be now present in *.generated.swift file.
    • โšก๏ธ Updated AutoHashable template to use Swift 4.2's hash(into:) method from Hashable, and enable support for inheritance.
    • Record all method invocations in the AutoMockable template.
    • ๐Ÿ— Replace swiftc with the Swift Package Manager to build Swift templates
    • ๐Ÿ— Swift templates can now be used when using a SPM build of Sourcery.
  • v0.15.0 Changes

    September 23, 2018

    ๐Ÿ†• New Features

    • ๐Ÿ“œ You can now pass a json string as a command line arg or annotation and have it parsed into a Dictionary or Array to be used in the template.
    • ๐Ÿ‘Œ Support for Xcode 10 and Swift 4.2
    • โšก๏ธ Updated Stencil to 0.12.1
  • v0.14.0 Changes

    August 28, 2018

    ๐Ÿ†• New Features

    • You can now include entire Swift files in Swift templates
    • You can now use AutoEquatable with annotations
    • โœ… Content from multiple file annotations will now be concatenated instead of writing only the latest generated content.

    For example content generated by two following templates

    // sourcery:file:Generated/Foo.swift
    line one
    // sourcery:end
    

    and

    // sourcery:file:Generated/Foo.swift
    line two
    // sourcery:end
    

    will be written to one file:

    line one
    
    line two
    

    Internal Changes

    • ๐Ÿ‘‰ Use AnyObject for class-only protocols

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fixed parsing associated enum cases in Xcode 10
    • ๐Ÿ›  Fixed AutoEquatable access level for == func
    • ๐Ÿ›  Fixed path of generated files when linked to Xcode project
    • ๐Ÿ›  Fixed extraction of inline annotations in multi line comments with documentation style
    • ๐Ÿ›  Fixed compile error when used AutoHashable in NSObject subclass.
  • v0.13.1 Changes

    May 08, 2018

    ๐Ÿ†• New Features

    • โž• Added support for enums in AutoCodable template
    • You can now specify the base path for the Sourcery cache directory with a cacheBasePath key in the config file