All Versions
51
Latest Version
Avg Release Cycle
88 days
Latest Release
382 days ago

Changelog History
Page 2

  • v5.2.0 Changes

    October 22, 2017

    πŸ”„ Changes in other SwiftGen modules

    πŸ†• New Features

    πŸ› Bug Fixes

  • v5.1.2 Changes

    September 25, 2017

    Internal Changes

  • v5.1.1 Changes

    August 21, 2017

    πŸ”„ Changes in core dependencies of SwiftGen

    πŸ› Bug Fixes

  • v5.1.0 Changes

    August 20, 2017

    πŸ”„ Changes in core dependencies of SwiftGen

    πŸ†• New Features

    • βž• Added Swift 4 templates. Use -t swift4 or whatever variant you want to use (see swiftgen templates list for the available names).
      David Jennes SwiftGen/templates/#67
    • 🍱 XCAssets: Added support for named colors. When using swiftgen xcassets the bundled templates will now also include colors found in the Asset Catalog in addition to the images.
      David Jennes SwiftGen/templates/#68
    • 0️⃣ Fonts: the path to fonts will now default to just the font filename, but you can disable this behaviour by enabling the preservePath parameter.
      David Jennes SwiftGen/templates/#71
    • Colors: new template that uses #colorLiterals.
      Use swiftgen colors -t literals-swift3 / swiftgen colors -t literals-swift4 to use them.
      David Jennes SwiftGen/templates/#72
  • v5.0.0 Changes

    πŸš€ ⚠️ This major version is a big milestone in which a lot of refactoring and cleaning has been done. Many features added over previous releases have been reworked and unified, while also preparing SwiftGen for future additions. This means that you'll need to adapt your command line invocations and custom templates to work with this new major version.

    πŸ“š Read the [SwiftGen 5.0 Migration Guide](Documentation/MigrationGuide.md#migrating-to-swiftgen-50) for a list of changes you'll need to apply.

    πŸ”„ Changes in core dependencies of SwiftGen

    πŸ’₯ Breaking Changes

    • βœ‚ Removed deprecated CLI options. Please consult the migration guide should you still use them.
      David Jennes #301
    • 0️⃣ Disable default value for named template option and ensure that there is a template option.
      Liquidsoul #283
    • 🚚 Templates are now grouped by parser on the filesystem. This is only important if you had custom templates in the Application Support directory. To migrate your templates, place them in a subfolder with the name of the parser, and remove the prefix of the template filename.
      David Jennes #304
    • 🍱 The images command has been renamed to xcassets to better reflect its functionality.
      Olivier Halligon #317

    Notable breaking changes from other SwiftGen repositories

    • πŸ“š Many deprecated templates have been removed (or merged), and others have been renamed to reflect new behaviours. Please check the [templates migration guide](Documentation/templates/MigrationGuide.md#deprecated-templates-in-20-swiftgen-50) for more information.
      David Jennes SwiftGen/templates#47
    • πŸ“š There have been some breaking changes in the generated code for storyboards. Please check the [templates migration guide](Documentation/templates/MigrationGuide.md#deprecated-templates-in-20-swiftgen-50) for more information, where we also provide a compatibility template.
      Olivier Halligon SwiftGen/templates#65
    • βœ‚ Removed deprecated template context variables, and restructured many others. Please check the [SwiftGenKit migration guide](Documentation/SwiftGenKit%20Contexts/MigrationGuide.md#swiftgenkit-20-swiftgen-50-migration-guide) for more information.
      David Jennes SwiftGen/SwiftGenKit#5
    • πŸ“š Some filters have been removed in favour of Stencil's built in versions, and other filters have been updated to accept parameters. Please consult the StencilSwiftKit migration guide for more information.
      David Jennes SwiftGen/StencilSwiftKit#5 SwiftGen/StencilSwiftKit#6

    πŸ†• New Features

    Internal Changes

    Notable internal changes from other SwiftGen repositories

    • πŸ”Š Switch back from actool to an internal parser to fix numerous issues with the former. This fixes issues a few people encountered when using asset catalogs that contained some of the less common set types.
      David Jennes #228 SwiftGen/SwiftGenKit#43
  • v4.2.1 Changes

    πŸ”„ Changes in core dependencies of SwiftGen

    πŸ› Bug Fixes

    • πŸ›  Fix a bug in which the version of SwiftGen was reported as v0.0 by swiftgen --version.
      Olivier Halligon

    Internal Changes

  • v4.2.0 Changes

    πŸ”„ Changes in core dependencies of SwiftGen

    πŸ†• New Features

    • You can now pass custom parameters to your templates using the --param X=Y syntax.
      @djbe #265
      • This command-line option can be repeated at will and used to pass structured custom parameters (e.g. --param tabs=2 --param foo.bar=1 --param foo.baz=2).
      • You can then use them in your templates using e.g. {{param.tabs}}, {{param.foo.bar}} & {{param.foo.baz}}.
    • Templates can now access environment variables via the env key of the Stencil context (e.g. {{env.USER}}, {{env.LANG}}).
      @djbe #265
      • This is especially useful when integrating SwiftGen as a Script Build Phase in your Xcode project as you can then access Xcode Build Settings exposed as environment variables by Xcode, e.g. {{env.PRODUCT_MODULE_NAME}}.

    Notable new features from other SwiftGen repositories

    πŸ—„ Deprecations

    🚚 In preparation for an upcoming cleanup of SwiftGen to remove some legacy code as well as Stencil old variables, tags and filters, and change the default templates to Swift 3, some things are being deprecated and will be removed in the next major version 5.0.

    As a result, if you wrote custom templates, you should already prepare for the upcoming 5.0 by migrating your templates to use the new variables (already avaiable in SwiftGen 4.2 / SwiftGenKit 1.0).

    πŸ“š See #244 and [the Migration Guide](Documentation/MigrationGuide.md) for a list of deprecations and their replacements.

    πŸ› Bug Fixes

    πŸ›  Notable bug fixes from other SwiftGen repositories

    Internal changes

    • SwiftGen has migrated to its own GitHub organization πŸŽ‰.
    • SwiftGen has been split in multiple repositories and separate modules.
      Olivier Halligon @djbe #240 #265
      • The present SwiftGen is the CLI parsing. It is in charge of calling the frameworks, feeding them appropriate parameters according to the command line arguments.
      • SwiftGenKit is the framework responsible for parsing your assets/resources and turning them into a structured representation compatible with Stencil templates.
      • StencilSwiftKit is a framework adding some extensions to the template engine Stencil used by SwiftGen. It adds some tags and filters as well as convenience methods shared both by SwiftGen itself and by Sourcery.
      • The SwiftGen templates has been moved into a dedicated templates repo so they can evolve and be unit-tested separately of SwiftGen.

    πŸ“š Note: The next minor version will focus on bringing more documentation for all this new structure and improve ease of future contributions.

  • v4.1.0 Changes

    πŸ†• New Features

    • βž• Added a script reference to simplify and automate localization of existing non localized project.
      HuguesBR
    • βž• Added a storyboards-osx-swift3 template.
      Felix Lisczyk #225
    • βž• Added a strings-no-comments-swift3 template that does not include the default translation of each key.
      LoΓ―s Di Qual #222
    • Images: new dot-syntax template, use dot-syntax-swift3 or dot-syntax (for Swift 2.3).
      David Jennes #206
    • Reworked the "dot-syntax" and "structured" templates to use the new macro and call tags, which greatly simplifies the templates, and also removes the limitation of 5-level deep structures.
      David Jennes #237
    • Storyboards: automatically detect the correct modules that need to be imported. The --import option has therefore been deprecated, as well as the extraImports template variable. Instead use the the new modules variable, which offers the same functionality.
      David Jennes #243
    • πŸ‘Œ Support multiple input paths for some commands.
      David Jennes #213
      • fonts accepts multiple input directories, all found fonts will be added to the families template variable.
      • images now supports multiple asset catalogs as input. Templates can now use the catalogs variable to access each individual catalog.
      • storyboards accepts multiple paths (to folders or storyboard files). All found storyboards will be available in the storyboards template variable.

    πŸ› Bug Fixes

    • Strings: fix issue with dot-syntax-swift3 where function definitions were not Swift 3 guidelines compliant.
      David Jennes #241 #247
    • Snake cased keys with uppercase letters are correctly camel cased again.
      Cihat GΓΌndΓΌz #226 #233

    Internal changes

    • πŸ‘ Better error handling in the colors command.
      David Jennes #227
    • πŸ‘€ Stencil: added two new tags macro and call, see the documentation. for in depth explanations on how to use them.
      David Jennes #237
    • SwiftLint: Remove switch_case_on_newline warning for generated color file.
      Mickael Titeca #239
    • βœ… Stencil: better string filter testing and fixed a small issue with lowerFirstWord.
      David Jennes #245
  • v4.0.1 Changes

    πŸ› Bug Fixes

    Internal changes

  • v4.0.0 Changes

    πŸ’₯ Breaking Changes

    • πŸ”„ Change swift 3 storyboard segue template's sender from AnyObject to Any.
      Derek Ostrander #197
    • πŸ›  Fix swift 3 storyboard templates to be compliant with swift 3 api design guidelines.
      Afonso #194
    • βœ‚ Remove the key param label from the tr function for Localized String in the Swift 3 template.
      AndrewSB #190
    • πŸ”Š The swiftgen images command now uses the actool utility to parse asset catalogs, ensuring that the parser correctly handles namespaced folders.
       ⚠️ Note that you now have to specify the exact path to your .xcassets assets catalogs  when using swiftgen images (and not just a directory to parse).
      David Jennes #199

    πŸ†• New Features

    • βž• Add support for multiline strings in *.strings file.
      Jeong Yonguk #192
    • βž• Add option to add import statements at the top of the generated swift file (for storyboards) using the import flag.
      David Jennes #175
    • Escape reserved swift keywords in the structured and dot-syntax generated strings code.
      Afonso #198