Changelog History
Page 2
-
v6.0.2 Changes
October 07, 2018π 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
- Strings: rolled back the changes in #503, to ensure
-
v6.0.1 Changes
October 04, 2018π Changes in core dependencies of SwiftGen
π Bug Fixes
- IB: Fix missing
import AppKit
/import UIKit
in some rare cases.
David Jennes #515 #519 - π IB: Fix issue with segues-swift4 template when compiled with Swift 4.2 on macOS.
Olivier Halligon #515 #518 - β‘οΈ SPM/Mint: Update the Stencil version to 0.13.1.
David Jennes #527 - π Ensure the
templates
subcommand properly works with the deprecatedstoryboards
subcommand.
David Jennes #525 #530 - π§ Ensure configuration file errors show as red in Xcode.
Olivier Halligon #516 #533 - π Strings: Ensure the parser correctly handles keys ending with a
.
and empty key components.
David Jennes #528 #531
Internal Changes
- β Integrated Danger to help on contributions by giving automatic feedback.
Olivier Halligon #520 #524
- IB: Fix missing
-
v6.0.0 Changes
September 29, 2018π β οΈ 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 toib
, to better reflect it's purpose. An alias forstoryboards
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 oldnoAllValues
flag (with an inverse behaviour).
David Jennes
#480 - π± XCAssets: Dropped the deprecated
allValues
constant, use the type specific constants such asallColors
,allDataItems
andallImages
. The default value ofimageAlias
has also been changed fromImage
toAssetImageTypeAlias
, 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 theoutput
parameter is now deprecated, in favour of theoutputs
parameter, and it may be removed in a future version of SwiftGen. Similarly, thepaths
parameter has been renamed toinputs
for consistency. You can always useswiftgen 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
andswiftgen 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
andyaml
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
andNSPageController
correctly.
David Jennes
#404
#414 - π Interface Builder: ensure the parser can handle files with and without "trait variations".
David Jennes
#367
#429 - π Restrict
SceneType
andInitialSceneType
to UIViewController when not targeting AppKit. When targeting AppKit, remove superfluousAny
.
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
- Migrated to CircleCI 2.0.
David Jennes
#403 - π Switched to using SwiftLint via CocoaPods instead of our own install scripts.
David Jennes
#401 - π Enabled some extra SwiftLint rules for better code consistency.
David Jennes
#402
#476 - β‘οΈ Updated to latest Xcode (10.0.0) and Swift 4.2.
David Jennes
#415
#498 - β‘οΈ Update to Stencil 0.13.0, and use some of it's new filters in our templates.
David Jennes
#416
#475
#498 - β
Store testing contexts as YAML files instead of PLISTs.
David Jennes
#418
#461 - π¨ Refactor the parsers as they're getting more complex.
David Jennes
#417
#422 - π Disabled a SwiftLint rule for function parameter count.
Oleg Gorbatchev
#428 - π Fix missing link in the README.
Takeshi Fujiki
#459
- π 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.
-
v5.3.0 Changes
May 16, 2018π Changes in core dependencies of SwiftGen
π New Features
- π± XCAssets: exposed getter for image name string.
Abbey Jackson SwiftGen/templates#85 - π± XCAssets: exposed getter for color name string.
Stephan Diederich SwiftGen/templates#87 - π Allows to set all properties as
public
by using--param publicAccess
on all templates.
Olivier Halligon SwiftGen/templates#84 Txai Wieser SwiftGen/templates#81
Internal Changes
- π§ Merged the
SwiftGenKit
andtemplates
repositories back into this repository for easier development and maintenance.
David Jennes #356
- π± XCAssets: exposed getter for image name string.
-
v5.2.1 Changes
October 24, 2017π 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 defaultconfig run
subcommand).
Olivier Halligon #349
- π Fix SwiftGen no longer working using CLI parameters (instead of config file).
-
v5.2.0 Changes
October 22, 2017π Changes in other SwiftGen modules
π New Features
- π§ You can now use a
swiftgen.yml
file to configure SwiftGen! π
π Read more about it in the dedicated documentation.
Olivier Halligon
#337 - Storyboards: Added a new
ignoreTargetModule
parameter if you're using storyboards in multiple targets, to avoid issues with the generated code.
Julien QuΓ©rΓ©
SwiftGen/templates#36
π Bug Fixes
- π Fixes an issue in High Sierra where the output of the processed Catalog Entries was not ordered alphabetically.
Yusuke Kuroiwa
Francisco Diaz
SwiftGen/SwiftGenKit#57 - Fonts: fix code which checks if a font is already registered.
Vladimir Burdukov
SwiftGen/templates#77 - SwiftLint rules: Disabled the
superfluous_disable_command
rule
π for allswiftlint:disable
exceptions in all templates.
Olivier Halligon
SwiftGen/SwiftGen#334
SwiftGen/templates#83 - When installing SwiftGen via CocoaPods, the unneeded
file.zip
is not kept inPods/SwiftGen/
anymore (freeing ~5MB on each install of SwiftGen made via CocoaPods!).
Olivier Halligon
#342
- π§ You can now use a
-
v5.1.2 Changes
September 25, 2017Internal Changes
- π Allows the SwiftGen source code to be built with Xcode 9.
This also has the nice side-effect of making the homebrew installation of SwiftGen also available for macOS 10.13.
Olivier Halligon David Jennes #330 SwiftGen/Eve#10
- π Allows the SwiftGen source code to be built with Xcode 9.
This also has the nice side-effect of making the homebrew installation of SwiftGen also available for macOS 10.13.
-
v5.1.1 Changes
August 21, 2017π Changes in core dependencies of SwiftGen
π Bug Fixes
- π± XCAssets: fixed some compatibility issues with the swift 3 template on Xcode 8, and with other templates.
David Jennes SwiftGen/templates#76
- π± XCAssets: fixed some compatibility issues with the swift 3 template on Xcode 8, and with other templates.
-
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 (seeswiftgen 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
#colorLiteral
s.
Useswiftgen colors -t literals-swift3
/swiftgen colors -t literals-swift4
to use them.
David Jennes SwiftGen/templates/#72
- β Added Swift 4 templates. Use
-
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 toxcassets
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
- Colors and strings commandsΒ now accept multiple input files. With these 2 additions, all swiftgen generator commands are able to handle multiple input files.
David Jennes #313 SwiftGen/SwiftGenKit#40 SwiftGen/SwiftGenKit#41
Internal Changes
- π Improved installation instructions in the README.
Olivier Halligon #303
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
- β Removed deprecated CLI options. Please consult the migration guide should you still use them.