Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: apple/swift-argument-parser
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1.2.3
Choose a base ref
...
head repository: apple/swift-argument-parser
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1.3.0
Choose a head ref
  • 16 commits
  • 61 files changed
  • 9 contributors

Commits on Oct 24, 2023

  1. Configuration menu
    Copy the full SHA
    753aed3 View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2023

  1. Configuration menu
    Copy the full SHA
    b7f5d8c View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2023

  1. Don't remove nested option group titles (#592)

    When option groups are nested, any titles of the nested groups are
    removed, even when the containing group doesn't have a title. This
    change preserves the nested groups' titles when grouped in an
    untitled option group. Nesting within a titled option group continues
    to override any nested option groups.
    
    Fixes #585.
    natecook1000 authored Nov 5, 2023
    Configuration menu
    Copy the full SHA
    c5967d4 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2023

  1. Rename allValues to allValueStrings (#593)

    Renames an internal property of argument parser to simplify tracking
    values through the code base. Should have no functional changes.
    rauhul authored Nov 7, 2023
    Configuration menu
    Copy the full SHA
    e2dd9ed View commit details
    Browse the repository at this point in the history
  2. Fix crash in string diff printer (#595)

    Updates string diff printer to fix an OOB indexing bug.
    rauhul authored Nov 7, 2023
    Configuration menu
    Copy the full SHA
    6387339 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2023

  1. [Bash completion]: Respects .file() extensions, uses _filedir (#590)

    Bash completion scripts: Respects the `extensions` array for `CompletionKind.file()`
    and uses `_filedir` when available for `.file` and `.directory`.
    gwynne authored Nov 14, 2023
    Configuration menu
    Copy the full SHA
    ecac862 View commit details
    Browse the repository at this point in the history
  2. Display possible option values in help (#594)

    Updates HelpGenerator to print possible value options as a suffix to the
    user defined help string. In practice this looks like:
    
    > Set diagnostic level to report public declarations without an
    > availability attribute. (values: error, warn, ignore; default: warn)
    rauhul authored Nov 14, 2023
    Configuration menu
    Copy the full SHA
    75dae3d View commit details
    Browse the repository at this point in the history

Commits on Nov 15, 2023

  1. Respect the COLUMNS and LINES environment variables when present (#596)

    * Respect the `COLUMNS` and `LINES` environment variables, if set, when determining screen size.
    * Add test for COLUMNS environment override
    * Make columns test idempotent against there being a COLUMNS value already set in the environment
    * Make help tests be more explicit about screen widths.
    gwynne authored Nov 15, 2023
    Configuration menu
    Copy the full SHA
    c10af98 View commit details
    Browse the repository at this point in the history

Commits on Nov 16, 2023

  1. Add AsyncParsableCommand to README (#565)

    * See issue #561
    robertmryan authored Nov 16, 2023
    Configuration menu
    Copy the full SHA
    51ec3ed View commit details
    Browse the repository at this point in the history

Commits on Nov 17, 2023

  1. Add Sendable conformance (#582)

    This change adds conditional `Sendable` conformance to all
    property wrapper types when their `Value` is `Sendable`, enabling
    commands to be used in concurrent contexts. Some notes on
    the implementation:
    
    * Fix flag exclusivity issues
    
    This derives the `hasUpdated` check from the parsed values data type,
    rather than storing it in the closure (which breaks sendability) or
    passing it through the closure invocation (which wasn't finished
    enough to actually work).
    
    * Mark all `transform` methods as `@Sendable`
    
    This allows for a stronger, compiler-supported guarantee of
    sendability when a compound `ParsableArguments` or `ParsableCommand`
    type is marked `Sendable`. Most transformations shouldn't be a
    problem, since the general case is that these are pure string ->
    value transformations.
    
    In cases where making such a transformation sendable is impossible,
    an author can always change the property to be just a string and
    perform the transformation within the context of the command's
    execution, in either the `run()` or `validate()` methods.
    
    * Add `@preconcurrency` to Sendable closure APIs
    
    This adds the `@preconcurrency` attribute to all public APIs that
    have changed to take a `@Sendable` closure. This will ease the
    migration path for sendable adoption for ArgumentParser users, since
    a warning will only appear for using these APIs (like the `transform`
    parameter in an @option or @argument) once they've turned on strict
    concurrency checking.
    
    I'm also backing out changes that avoided those warnings in the tests
    and examples, since in most cases those warnings are spurious;
    unapplied functions don't capture state. See
    https://forums.swift.org/t/pitch-inferring-sendable-for-methods-and-key-path-literals/68011
    for more on this and hopefully an upcoming fix for these issues.
    
    * Raise minimum Swift version to 5.7
    
    In order to provide `@preconcurrency` support, the package needs to
    have a minimum Swift requirement of 5.7. This makes that change and
    updates the README to indicate this for the next version.
    vlm authored Nov 17, 2023
    Configuration menu
    Copy the full SHA
    511a72a View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2023

  1. Configuration menu
    Copy the full SHA
    ac615d4 View commit details
    Browse the repository at this point in the history

Commits on Nov 20, 2023

  1. Bash does not like '-' in function names (#573)

    Co-authored-by: Kenny York <kenny_york@apple.com>
    kennyyork and Kenny York authored Nov 20, 2023
    Configuration menu
    Copy the full SHA
    9eded54 View commit details
    Browse the repository at this point in the history
  2. Update documentation (#602)

    Update some documentation, mark some code samples as being
    Swift so that syntax highlighting works properly, and hide some
    other infrequently-used symbols by adding internal parameter
    name underscores.
    natecook1000 authored Nov 20, 2023
    Configuration menu
    Copy the full SHA
    c769981 View commit details
    Browse the repository at this point in the history
  3. Suppress retroactive conformance errors (#603)

    These warnings are showing up in tests about types and protocols
    that are defined within this package, so they don't pose a problem
    for future library evolution. Instead of using the `@retroactive`
    attribute, which isn't supported by older compilers, this change
    fully qualifies the type and protocol in the relevant conformance
    declarations, which suppresses the issue.
    
    Re: https://github.com/apple/swift-evolution/blob/main/proposals/0364-retroactive-conformance-warning.md
    natecook1000 authored Nov 20, 2023
    Configuration menu
    Copy the full SHA
    d9182a9 View commit details
    Browse the repository at this point in the history

Commits on Dec 4, 2023

  1. Tests: repair the build on Windows (#604)

    These use APIs which are not available on Windows, so skipping the test
    is insufficient as it does not build.
    compnerd authored Dec 4, 2023
    Configuration menu
    Copy the full SHA
    66e0d7d View commit details
    Browse the repository at this point in the history

Commits on Dec 6, 2023

  1. Configuration menu
    Copy the full SHA
    c8ed701 View commit details
    Browse the repository at this point in the history
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy