Skip to content

@djbe djbe released this Jan 29, 2019

Changes in core dependencies of SwiftGen

New Features

Bug Fixes

  • Colors: Fix an issue where the public access modifier was not being added correctly in the literals-swift3 and literals-swift4 templates when the publicAccess parameter was specified. Also remove some uneccessary public access modifiers from the swift3 and swift4 templates.
    Isaac Halvorson
    #549

Internal Changes

  • Resolve path if the binary is a symbolic link in order to find bundled templates.
    Liquidsoul
    #559
  • Update to SwiftLint 0.30.1 and enable some extra SwiftLint rules.
    David Jennes
    #574
    #583
Assets 3

@AliSoftware AliSoftware released this Oct 7, 2018 · 208 commits to master since this release

Changes in other SwiftGen modules

Bug Fixes

  • Strings: rolled back the changes in #503, to ensure %% is correctly unescaped.
    David Jennes
    #542
  • Strings: generate the correct types for %c and %p.
    David Jennes
    #543
  • SPM/Mint: SwiftGen now provides correct version information, instead of "0.0".
    David Jennes
    #544
Assets 3

@AliSoftware AliSoftware released this Oct 4, 2018 · 247 commits to master since this release

Changes in other SwiftGen modules

Bug Fixes

Internal Changes

Assets 3

@AliSoftware AliSoftware released this Sep 29, 2018 · 306 commits to master since this release

⚠️ 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 configuration files (or command line invocations) and custom templates to work with this new major version.

Read the SwiftGen 6.0 Migration Guide for a list of changes you'll need to apply.

Changes in other SwiftGen modules

Breaking Changes

  • Don't normalize string keys while parsing, let all transformation be done on template side. This makes the developer responsible to keep the language file organized, duplications won't be removed.
    Diego Chohfi
    #257
  • Remove Swift 2 support.
    David Jennes
    #420
  • Renamed the storyboards command to ib, to better reflect it's purpose. An alias for storyboards still exists, but it will be removed at some point.
    David Jennes
    #423
  • XCAssets: the generated templates won't namespace groups by default anymore, use the forceProvidesNamespaces flag to enable this behaviour again.
    jechris
    #453
  • XCAssets: the templates won't generate any all-values accessors anymore by default. Use the allValues flag to enable this behaviour again. Note: this replaces the old noAllValues flag (with an inverse behaviour).
    David Jennes
    #480
  • XCAssets: Dropped the deprecated allValues constant, use the type specific constants such as allColors, allDataItems and allImages. The default value of imageAlias has also been changed from Image to AssetImageTypeAlias, to be consistent with the other types.
    David Jennes
    #482
  • Interface Builder: split up the storyboards template into 2 parts, one for scenes and one for segues.
    David Jennes
    #419

New Features

  • Add ability to list all custom fonts and register them using FontFamily.registerAllCustomFonts.
    Olivier Halligon
    #394
  • Add support for Swift Package Manager and Mint.
    Yonas Kolb
    #411
  • The swiftgen.yml config file now accepts multiple outputs for each command, allowing you to generate multiple outputs from the same files and content. This also means that the output parameter is now deprecated, in favour of the outputs parameter, and it may be removed in a future version of SwiftGen. Similarly, the paths parameter has been renamed to inputs for consistency. You can always use swiftgen config lint to validate your configuration file.
    David Jennes
    #424
    #510
  • Use swiftlint:disable all in generated files to avoid interference with SwiftLint rules custom to the host project.
    Frederick Pietschmann
    David Jennes
    #409
    #506
  • XCAssets: Added support for NSDataAssets.
    Oliver Jones
    #444
  • Organised the generated code in sections for better readability, with all generated constants at the top of the file.
    David Jennes
    Olivier Halligon
    #456
    #481
  • Added support for JSON, Plist and YAML files using the swiftgen json, swiftgen plist and swiftgen yaml commands. The parsed contexts and the generated files for each command have been kept quite similar, for easier switching between file formats.
    John T McIntosh
    Toshihiro Suzuki
    Peter Livesey
    David Jennes
    #379
    #359
    #288
    #188
    #493
    #504
  • Updated the playgrounds with the new json, plist and yaml commands, and updated the other pages to reflect the template changes.
    David Jennes
    #495
  • We're deprecating the old --template CLI option in favor of --templateName, to better match the naming of the other options and the configuration file. The old --template option will remain until the next major version.
    David Jennes
    #509

Bug Fixes

  • Fix memory leak in generated code for Fonts.
    Olivier Halligon
    #394
  • Interface Builder: ensure the templates handle GLKViewController, AVPlayerViewController and NSPageController correctly.
    David Jennes
    #404
    #414
  • Interface Builder: ensure the parser can handle files with and without "trait variations".
    David Jennes
    #367
    #429
  • Restrict SceneType and InitialSceneType to UIViewController when not targeting AppKit. When targeting AppKit, remove superfluous Any.
    Darron Schall
    #463
    #464
  • Fonts: disable a warning in generated font files for projects with conditional_returns_on_newlines SwiftLint rule enabled.
    Ryan Davies
    #436
    #465
  • Interface Builder: the parser and templates now handle the "Inherit module from target" setting.
    David Jennes
    #435
    #485
  • Strings: the parser now correctly handles formats such as % d and %#x.
    David Jennes
    #502
  • Strings: ensure strings without arguments are not processed using String(format:).
    David Jennes
    #503

Internal Changes

Assets 3

@AliSoftware AliSoftware released this May 16, 2018 · 658 commits to master since this release

Changes in other SwiftGen modules

New Features

Internal Changes

  • Merged the SwiftGenKit and templates repositories back into this repository for easier development and maintenance.
    David Jennes
    #356
Assets 3

@AliSoftware AliSoftware released this Oct 24, 2017 · 702 commits to master since this release

Bug Fixes

  • Fix SwiftGen no longer working using CLI parameters (instead of config file).
    David Jennes
    #347
  • Errors now properly exit with a non-zero exit code.
    Olivier Halligon
    #348
  • swiftgen --help prints the full help back again
    (and not just the help of the default config run subcommand).
    Olivier Halligon
    #349
Assets 3

@AliSoftware AliSoftware released this Oct 22, 2017 · 714 commits to master since this release

Changes in other SwiftGen modules

New Features

Bug Fixes

Assets 3

@AliSoftware AliSoftware released this Sep 25, 2017 · 751 commits to master since this release

Assets 3

@AliSoftware AliSoftware released this Aug 21, 2017 · 760 commits to master since this release

Changes in other SwiftGen modules

Bug Fixes

Assets 3

@AliSoftware AliSoftware released this Aug 20, 2017 · 764 commits to master since this release

Changes in other SwiftGen modules

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
  • 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
Assets 3
You can’t perform that action at this time.