• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Home
  • About Us
  • Contact Us

iHash

News and How to's

  • Prodigy Afterschool Masterclasses for Kids for $99

    Prodigy Afterschool Masterclasses for Kids for $99
  • 10.1" WiFi Digital Photo Frame with Photo/Video Sharing for $149

    10.1" WiFi Digital Photo Frame with Photo/Video Sharing for $149
  • 8" WiFi Cloud Photo Frame for $112

    8" WiFi Cloud Photo Frame for $112
  • 8" WiFi Digital Photo Frame with Auto Rotation & Photo/Video Sharing for $112

    8" WiFi Digital Photo Frame with Auto Rotation & Photo/Video Sharing for $112
  • Wireless Wall Tap Smart Plug for $39

    Wireless Wall Tap Smart Plug for $39
  • News
    • Rumor
    • Design
    • Concept
    • WWDC
    • Security
    • BigData
  • Apps
    • Free Apps
    • OS X
    • iOS
    • iTunes
      • Music
      • Movie
      • Books
  • How to
    • OS X
      • OS X Mavericks
      • OS X Yosemite
      • Where Download OS X 10.9 Mavericks
    • iOS
      • iOS 7
      • iOS 8
      • iPhone Firmware
      • iPad Firmware
      • iPod touch
      • AppleTV Firmware
      • Where Download iOS 7 Beta
      • Jailbreak News
      • iOS 8 Beta/GM Download Links (mega links) and How to Upgrade
      • iPhone Recovery Mode
      • iPhone DFU Mode
      • How to Upgrade iOS 6 to iOS 7
      • How To Downgrade From iOS 7 Beta to iOS 6
    • Other
      • Disable Apple Remote Control
      • Pair Apple Remote Control
      • Unpair Apple Remote Control
  • Special Offers
  • Contact us

Swift 4.1 Released!

Apr 17, 2022 by iHash Leave a Comment

Swift 4.1 is now officially released! It contains updates to the core language, including more support for generics, new build options, as well as minor enhancements to Swift Package Manager and Foundation. There was also significant progress made in stabilizing the ABI.

Doug Gregor and Ben Cohen recently discussed many of these features on a two-part episode of the Swift Unwrapped podcast. Check out the podcasts here: Part 1 and Part 2.

Table of Contents

  • Compiler Updates
    • Language improvements
    • Build improvements
    • Foundation
    • Additional updates
  • ABI Stability
  • Package Manager Enhancements
  • Migrating to Swift 4.1
  • Documentation
  • Platforms
    • Linux (Ubuntu 14.04, Ubuntu 16.04 and Ubuntu 16.10)
    • Apple (Xcode)
  • Sources

Compiler Updates

Swift 4.1 is a minor language release. It is source compatible with Swift 4.0. It contains the following language changes and updates, most of which went through the Swift Evolution process:

Language improvements

Swift 4.1 adds more generics features to the language, furthering the goals set out in the Swift Generics Manifesto. The following generics-related proposals have been implemented in this release:

  • SE-0143 Conditional Conformance
  • SE-0157 Support recursive constraints on associated types
  • SE-0185 Synthesizing Equatable and Hashable conformance
  • SE-0187 Introduce Sequence.compactMap(_:)
  • SE-0188 Make Standard Library Index Types Hashable
  • SE-0191 Eliminate IndexDistance from Collection

For more information about progress made with conditional conformance in Swift 4.1, check out this blog post.

Build improvements

This release provides more ways to configure your builds, including a new code size optimization and easier ways to specify target environment and platform support.

Code size optimization mode

The compiler now supports a new optimization mode which enables dedicated optimizations to reduce code size.

This was previously discussed in more detail in this blog post.

Build import test

The argument for the canImport() platform condition is the name of a module that may not be present on all platforms. This condition tests whether it’s possible to import the module, but doesn’t actually import it. If the module is present, the platform condition returns true; otherwise, it returns false.

See more at: SE-0075 Adding a Build Configuration Import Test and Conditional Compilation Block documentation.

Target environment condition

The targetEnvironment(simulator) platform condition returns true when code is compiled for a simulator; otherwise, it returns false.

See more at: SE-0190 Target environment platform condition and Conditional Compilation Block documentation.

Foundation

The JSONEncoder and JSONDecoder classes now support new strategies for converting keys during encoding and decoding.

This was discussed in more detail in this forum post.

Additional updates

These are additional Swift Evolution proposals that were implemented in this release:

  • SE-0184 Unsafe[Mutable][Raw][Buffer]Pointer: add missing methods, adjust existing labels for clarity, and remove deallocation size
  • SE-0186 Remove ownership keyword support in protocols
  • SE-0189 Restrict Cross-module Struct Initializers
  • SE-0198 Playground QuickLook API Revamp

ABI Stability

Swift 4.1 contains a number of under-the-hood changes that are part of the effort to stabilize the ABI in Swift 5. Here is list of the tasks that were completed in this release:

  • Use word-size field in native object header for reference counting (SR-4353)
  • Review the efficiency of interacting with the enum discriminator through the witness table (SR-4332)
  • Decide the layout of existential type metadata, including protocol descriptors (SR-4341)
  • Define canonicalization of generic and protocol requirements for order-agnostic mangling (SR-3733)
  • Audit of every runtime function for desirability and behavior (SR-3735)
  • Enforce appropriate constraints on Sequences and Collections (SR-3453)
  • Collapse various collection wrappers using conditional conformance (SR-3458)

For more information about the progress of ABI Stability for Swift, check out the ABI Dashboard.

Package Manager Enhancements

There are a couple of enhancements to Swift Package Manager in Swift 4.1:

Swift Package Manager now correctly resolves dependences in package graphs that use different URL schemes, such as ssh and http.
Performance has been significantly improved for package graphs that have shared dependencies.

Migrating to Swift 4.1

Swift 4.1 is source compatible with Swift 4.0. To help with moving to Swift 4.1 from earlier releases of Swift, Apple’s Xcode 9.3 contains a code migrator that can automatically handle many of the needed source changes. There is also a migration guide available to guide you through many of the changes — especially through the ones that are less mechanical and require more direct scrutiny.

Documentation

An updated version of The Swift Programming Language for Swift 4.1 is now available on Swift.org. It is also available for free on Apple’s iBooks store.

Platforms

Linux (Ubuntu 14.04, Ubuntu 16.04 and Ubuntu 16.10)

Official binaries for Ubuntu 14.04, Ubuntu 16.04 and Ubuntu 16.10 are available for download

Apple (Xcode)

For development on Apple’s platforms, Swift 4.1 ships as part of Xcode 9.3.

Sources

Development on Swift 4.1 was tracked in the swift-4.1-branch on the following repositories on GitHub:

  • swift
  • swift-llvm
  • swift-clang
  • swift-lldb
  • swift-cmark
  • swift-corelibs-foundation
  • swift-corelibs-libdispatch
  • swift-corelibs-xctest
  • swift-llbuild
  • swift-package-manager
  • swift-xcode-playground-support
  • swift-compiler-rt

The tag swift-4.1-RELEASE designates the specific revisions in those repositories that make up the final version of Swift 4.1.

The swift-4.1-branch will remain open, but under the same release management process, to accumulate changes for a potential future bug-fix “dot” release.

Swift 4.1 Released!

Share this:

  • Facebook
  • Twitter
  • Pinterest
  • LinkedIn

Filed Under: News Tagged With: Apple

Special Offers

  • Prodigy Afterschool Masterclasses for Kids for $99

    Prodigy Afterschool Masterclasses for Kids for $99
  • 10.1" WiFi Digital Photo Frame with Photo/Video Sharing for $149

    10.1" WiFi Digital Photo Frame with Photo/Video Sharing for $149
  • 8" WiFi Cloud Photo Frame for $112

    8" WiFi Cloud Photo Frame for $112
  • 8" WiFi Digital Photo Frame with Auto Rotation & Photo/Video Sharing for $112

    8" WiFi Digital Photo Frame with Auto Rotation & Photo/Video Sharing for $112
  • Wireless Wall Tap Smart Plug for $39

    Wireless Wall Tap Smart Plug for $39

Reader Interactions

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

E-mail Newsletter

  • Facebook
  • GitHub
  • Instagram
  • Pinterest
  • Twitter
  • YouTube

More to See

insideBIGDATA Latest News – 6/27/2022

Jun 27, 2022 By iHash

Cybersecurity Experts Warn of Emerging Threat of “Black Basta” Ransomware

Jun 27, 2022 By iHash

Tags

* Apple Cisco computer security cyber attacks cyber crime cyber news Cyber Security cybersecurity cyber security news cyber security news today cyber security updates cyber threats cyber updates data breach data breaches google hacker hacker news Hackers hacking hacking news how to hack incident response information security iOS iOS 7 iOS 8 iPhone iPhone 6 Malware microsoft network security Privacy ransomware malware risk management security security breaches security vulnerabilities software vulnerability the hacker news Threat update video web applications

Latest

Prodigy Afterschool Masterclasses for Kids for $99

Expires June 28, 2122 23:59 PST Buy now and get 85% off KEY FEATURES Unlock Your Child’s Potential For Success! No dream is too big when you have the tools to achieve it. Whether your child dreams of saving lives as a doctor or inspiring people through the arts, Prodigy will give them the tools […]

10.1" WiFi Digital Photo Frame with Photo/Video Sharing for $149

Expires June 25, 2122 23:59 PST Buy now and get 6% off KEY FEATURES Send Pictures and Videos from your smartphone to eco4life WiFi Digital Photo Frame, from anywhere in the world using the eco4life App. The eco4life smart frame is simply the best way to enjoy your favorite photos and videos with your families […]

Charlie Klein

Key-Thoughts on Cross-Organizational Observability Strategy

Logz.io ran two surveys earlier this year to better understand current trends, challenges, and strategies for implementing more effective and efficient observability – including the DevOps Pulse Survey and a survey we ran with Forrester Research. Together, we received responses from 1300+ DevOps and IT Ops practitioners on observability challenges, opportunities, and ownership strategies. Additionally, […]

Wi-Fi 1080p Indoor 360° View PTZ IP Camera for $57

Expires June 25, 2122 23:59 PST Buy now and get 17% off KEY FEATURES Experience the flexibility and power of 7/24 all-day recording with this 360° PTZ IP Camera. It shows you live videos on your phone in 1920×1080 full HD resolution, day or night. It’s also packed with two-way audio, advanced night vision, and […]

Survey Results Identifying the Benefits and Challenges of RPA

Robocorp, a top provider of Gen2 robotic process automation (RPA), announced the results of their State of RPA survey, which was designed to understand the challenges users face with current RPA solutions. The results will help usher in the next generation of enterprise automation – Gen2 RPA. Conducted online in May 2022, The State of […]

How is IoT Changing the Future of Cruising?

In this special guest feature, Ian Richardson, CEO & Co-Founder, theICEway, discusses how as the world continues to open for travel, cruise industry leaders are looking to leverage the next wave of travel technology to improve the passenger experience. With 20+ years of experience in both IT and the cruise industry, Ian Richardson co-founded theICEway […]

Jailbreak

Pangu Releases Updated Jailbreak of iOS 9 Pangu9 v1.2.0

Pangu has updated its jailbreak utility for iOS 9.0 to 9.0.2 with a fix for the manage storage bug and the latest version of Cydia. Change log V1.2.0 (2015-10-27) 1. Bundle latest Cydia with new Patcyh which fixed failure to open url scheme in MobileSafari 2. Fixed the bug that “preferences -> Storage&iCloud Usage -> […]

Apple Blocks Pangu Jailbreak Exploits With Release of iOS 9.1

Apple has blocked exploits used by the Pangu Jailbreak with the release of iOS 9.1. Pangu was able to jailbreak iOS 9.0 to 9.0.2; however, in Apple’s document on the security content of iOS 9.1, PanguTeam is credited with discovering two vulnerabilities that have been patched.

Pangu Releases Updated Jailbreak of iOS 9 Pangu9 v1.1.0

  Pangu has released an update to its jailbreak utility for iOS 9 that improves its reliability and success rate.   Change log V1.1.0 (2015-10-21) 1. Improve the success rate and reliability of jailbreak program for 64bit devices 2. Optimize backup process and improve jailbreak speed, and fix an issue that leads to fail to […]

Activator 1.9.6 Released With Support for iOS 9, 3D Touch

  Ryan Petrich has released Activator 1.9.6, an update to the centralized gesture, button, and shortcut manager, that brings support for iOS 9 and 3D Touch.

Copyright iHash.eu © 2022
We use cookies on this website. By using this site, you agree that we may store and access cookies on your device. Accept Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT