None
None
- XCAssets: exposed getter for image name string.
Abbey Jackson #85 - XCAssets: exposed getter for color name string.
Stephan Diederich #87 - Allows to set all properties as
public
by using--param publicAccess
on all templates.
Olivier Halligon #84 Txai Wieser #81
None
- Fonts: fix code which checks if a font is already registered.
Vladimir Burdukov #77 - Documentation: Fix link to generated XCAssets example.
Alvar Hansen #80 - SwiftLint rules: Disabled the
superfluous_disable_command
rule for allswiftlint:disable
exceptions in all templates.
Olivier Halligon SwiftGen/SwiftGen#334 #83
- Storyboards: Added a new
ignoreTargetModule
parameter if you're using storyboards in multiple targets, to avoid issues with the generated code.
Julien Quéré #36
- Colors and XCAssets: fix a naming conflict of
typealias
es.
David Jennes #76 - XCAssets: fix a compatibility issue with the swift 3 template on Xcode 8.
David Jennes #76
- Templates now use the "pretty" mode of the
swiftIdentifier
filter, fixing some issues with identifiers starting with a number.
David Jennes #74
- Swift 4 templates.
David Jennes #67 - XCAssets: Added support for named colors.
David Jennes #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 #71 - Colors: new template that uses
#colorLiteral
s.
David Jennes #72
- Ensure
swiftlint
is run usingbundler
.
David Jennes #66
- Fixed
swiftlint
errors for the latest version.
David Jennes #46 - Images: fixed issue with catalogs that have an empty folder.
David Jennes #51 - Fonts: fixed font registration mechanism, which was broken in some situations.
David Jennes #58
- Templates are now organized in subdirectories for each command.
David Jennes #13 - Update templates to use the Stencil built-in
join
filter instead of our own.
David Jennes #22 - Many deprecated templates have been removed, and others have been renamed to reflect new behaviours. We've prepared a migration guide which you can find here: Documentation/MigrationGuide.
David Jennes #47 - Since Swift 2 is no longer actively supported, we now consider those templates as "legacy" and cannot guarantee that there won't be issues with the generated code.
David Jennes #53 - The iOS and macOS storyboard templates have been unified into one. The generated code also no longer uses enum cases for scenes but instead uses a generic struct. See the documentation for some examples.
David Jennes #57 - The code generated by SwiftGen 5's storyboard templates is not retro-compatible with the one previously generated by SwiftGen 4.x. You'll find all the details with steps for adapting your codebase to the new API in the migration guide. We've also provided a compatibility template in the wiki to make that migration easier and automatable.
Olivier Halligon #65
- Strings: the templates have been updated to support multiple string tables.
David Jennes #49 - Colors: the templates have been updated to support multiple color palettes.
David Jennes #55
- Removed deprecated variables. See SwiftGenKit#5 for more information.
David Jennes #45 #50 - We can now re-generate the output files used for testing by using the "Generate Output" Xcode scheme.
David Jennes #56
- Fixed
swiftlint
warnings in generated color extensions.
Roman Laitarenko #32 - The storyboards macOS swift3 template was missing the "current target" module ignore code.
David Jennes #27 - Fix the
images
templates so that they work on watchOS again.
David Jennes SwiftGen/SwiftGen#275 #30
- More variables have been deprecated, while new variables have been added. See SwiftGenKit#5 for more information.
David Jennes #28 #39 #43
- Switch from Travis CI to Circle CI, clean up the Rakefile in the process.
David Jennes #24 #40 - Disable SwiftLint
conditional_returns_on_newline
in the font template.
Tom Baranes #33 - Updated templates to use Stencil 0.9.0 features, such as for loops with a where condition.
David Jennes #42
The templates tagged with this version are the ones embedded in SwiftGen 4.2.
- Initial tagging of templates as part of being split in their own repository.
- Templates are now linted and unit-tested, to ensure the code generated compiles properly.
David Jennes #5 #6 #15 #16
- Use
escapeReservedKeywords
in all templates — to ensure compilation even for scenes named with a reserved keyword.
David Jennes #3 #14 - Storyboards templates don't
import
your app module anymore, removing that annoying warning.
David Jennes #19- It works by checking the environment variable
PRODUCT_MODULE_NAME
, which is automatically injected by Xcode if you runswiftgen
as part of a Script Build Phase in your Xcode project. - If you don't use
swiftgen
in a Script Build Phase of your Xcode project but manually in the terminal, you can instead useswiftgen storyboards --param module=YourAppModuleName …
when invoking SwiftGen to inject it manually instead.
- It works by checking the environment variable
- Use an explicit bundle parameter to support frameworks for all templates.
@NachoSoto David Jennes SwiftGen/SwiftGen#255 #17 - Use
enum
instead ofstruct
for namespacing in all templates.
David Jennes #7 - Reworked templates to get rid of deprecated Stencil variables.
David Jennes #8 #9
See SwitftGen's own CHANGELOG pre SwiftGen 4.2 version, before the refactoring that led us to split the code in frameworks
Note that in preparation for the upcoming SwiftGen 5.0, some variables available in the SwiftGen's Stencil templates have been deprecated and will be renamed. To prepare for SwiftGen 5.0, we strongly advise to migrate your custom templates so they use the new variables (already available in SwiftGen 4.2 / SwiftGenKit 1.0.1) instead of the old ones, so that they will continue to work in SwiftGen 5.0