Note: Anything with a gist URL may not reflect updated material available at github URLs.
See also: Accepted, Alive-ish, Dead, Intermediate products, or the Worthy Abandoned
See also: Buildage
In progress: Updating Changelog
-
Introducing an Unwrap or Die operator to the stdlib. Pull request, Previous
-
Introducing Configuration Tests to detect debugging conditions: Pull request, branch. Old stuff here
-
Sequence Extensions: gist, forum active thread1, core thread
-
Counted Set forum thread
-
Revisiting
with
, adding local scope tied to the instance in the parens. Forum thread -
Introducing some form of
attempt
, which provides a default error handler and returns an optional -
Slicing -> Update to subsequences? Lazy? First go: https://gist.github.com/erica/64e785c6178d2b1bd699913000771d69
-
Streams: https://gist.github.com/erica/17d3e86a65bc6eaf247a9c8a268ac0d1
-
MapApply: https://gist.github.com/erica/888cf55457ee600ca1582935a3fb8172
-
Striding: https://gist.github.com/erica/69f2fd1079482e17d924c0f42fb78e5e and Pitch
-
My version of Dave's namespaced errors: https://gist.github.com/erica/925bd996e96e182596d3aa49d1926396
-
Sequence Extensions: https://gist.github.com/erica/6af2e5d6382d814f39b936333fc0a016
-
Counted Set (laid aside for now): https://gist.github.com/erica/8abad5f7154fb4dc7dfc9d924a0a7a1b
-
Comment formatting: https://gist.github.com/erica/fbf91d6742e2fd01cc3ee34561ee4c38
-
Fixing guard case / if case syntax. Old stuff: https://gist.github.com/erica/6dd173ed1c94abf63feaa167a90b49bb
-
Flexible Access Control Scoping: https://gist.github.com/erica/a13e35c24ccca1714abe657ea4332694
-
Checked array indexing (substandard library?) https://gist.github.com/erica/5abc26762d0b9c4876ba59950417b24b
-
Keypath initialization: code sample exploration
-
Raw Strings
- Dave's setprotocol
- Making endian a conditional compilation thing?
- Steven Celis' automatically derive properties for enum cases
- John H's Raw Mode string literals (see forum thread)
- Flexible access control scoping: proposal, branch
- Rearchitecting if/guard case: branch
- Platform configuration tests: branch
- Checked array
Death to enumerated, throwing subscripts, rehydrating labels for use at call sites and closures, extending swift literals, with
/rebinding self, more platform config (https://gist.github.com/erica/c9c11b540a2439696b2f514c2ffc6298), extending range operators for lhs open/closed, macros, decimal numbers, self rebinding (evan m's proposal, which is merged), result type, version numbers for canImport, de-init stacks (like defer), prebuilt stderr/stdout, stored values in extensions, better pattern matching
- guard let value = try throwingFunction() catch let error { print (error); return },
- Promises, promises, Lenses,Method cascades
- Symbology Update. Discussions on-list.
- Removing
enumerated()
draft See previous: Introducing indexed() collections
Starter proposals here
- Unwrap
- Unwrappable
- Index
- Boolean raw enumeration type
- Warning/Error
- Throwing subscripts
- SE-????: Promoting _isDebugAssertConfiguration, _isReleaseAssertConfiguration, and _isFastAssertConfiguration Pitched 5/29
- Better optional comparison Old pitch
- Simplifying if-case/guard-case, pitched 10/24
- Rehydrating Labels: Re-introducing labels for use at call sites and closures once they've been removed from the type system.
- SE-YYYY: Extending Swift Literals Pitched 7/10
- SE-YYYY Introducing
with
to the Standard Library: Pull request here Out of scope for Swift 3 - SE-YYYY Enhancing the Platform Configuration Test Suite for Conditional Compilation Blocks Chris L: "I think that this is a fine proposal, but will need to wait for Swift 3.x where x > 0, since it is an additive proposal. We'd like the community to stay as focused as possible on Swift 3.0 related work. Thanks!" Pull request here
- SE-YYYY: Boolean Raw Value Enumerations "@ericasadun @clattner_llvm In seriousness, extending the set of enum raw value literals to include bools seems reasonable, albeit additive. (Joe G)"
- SE-YYYY: Extending Swift Switch Statements with Continue Pitched 7/10 Lattner: deliberately removed
- if case/guard case with ~= or :
- Switch expressions and if expressions vs statements.
- Len/loc operator?
- That newtype thing that's been brought up a few times.
- Possible to establish requirement external to protocol, e.g. this type can be initialized by Double?
- SE-XXXX Range Operators, ditto
- Expanding Cocoa and Cocoa Touch Defaults / Would have to go through as radar requests, not sure which ones mattter.
- Brent's string format stuff
- CoreError, NilError, DefaultError: github also, attempt?
import as
to enable modules to import with different names (primarily to disambiguate conflicts and simplify access to multi-level- macros, Better option sets, Decimal numbers (Joe Groff/Ranier Brockerhoff)
- Method Cascades and older submitted as bug report for now
- The strong/weak dance: proposed by Evan M: optional binding to upgrade self
- Enumerated members: PR
- Result type
- Lenses: see http://twitter.com/mbrandonw/status/739538002641358848
- Version Numbers for canImport
- Swift tuples for bytes of arb length/type for c interop with = 0x0
- Graham Perks' de-init/defer: http://thread.gmane.org/gmane.comp.lang.swift.evolution/20019
- Stderr, stdout prebuilt
- Sequence with "until"/"while"
- Failable literal initializers
- Enums with stored properties (for it)
- curried argument labels and SE-0111 - is there a future way forward
- Joe Groff: array/dict (string) pattern matching
- John McCall / Manual Memory Management in Swift
- Newtype