Rename CLI and ExecutableCLI folders by Mcrich23 · Pull Request #625 · apple/container

added 30 commits

September 10, 2025 23:04
commit 449f1d2
Author: J Logan <sgtbakerrahulnet@yahoo.com>
Date:   Tue Sep 16 13:37:55 2025 -0700

    Replace scattered defaults subcommands with `system property`. (apple#604)

    Common subcommands for all defaults.

    - Closes apple#384.
    - Replaces `registry default` and `system dns default` subcommands with
    `system property`.
    - Users can use `system property ls` to see details about each supported
    default value.
    - `system property set` implements reasonable validation for all
    properties.
    - NOTE: Probing of the registry for `registry default set` was removed,
    which means users will find out about a botched setting when pulling or
    pushing.
    - Updates docs.

    ## Type of Change
    - [ ] Bug fix
    - [x] New feature
    - [x] Breaking change
    - [x] Documentation update

    ## Motivation and Context
    See apple#384.

    ## Testing
    - [x] Tested locally
    - [x] Added/updated tests
    - [x] Added/updated docs

commit 386fd87
Author: Kathryn Baldauf <k_baldauf@apple.com>
Date:   Tue Sep 16 10:52:08 2025 -0700

    Enumerate using relative paths to avoid mismatch with symlink resolution of special paths like /tmp (apple#613)

    ## Type of Change
    - [x] Bug fix
    - [ ] New feature
    - [ ] Breaking change
    - [ ] Documentation update

    ## Motivation and Context
    Fixes apple#588. This PR changes the
    archiver compression file enumeration to use the
    [enumerator(atPath:)](https://developer.apple.com/documentation/foundation/filemanager/enumerator(atpath:))
    version. This version returns relative paths instead of full file paths
    from the filesystem. /tmp is symlinked to /private/tmp and some swift
    packages will handle that path differently. While a call to Foundation's
    `URL.resolvingSymlinksInPath()` will return "/tmp", a call to
    `FileManager.enumerator(at:)` will return "/private/tmp". This
    difference causes a container image build to fail when the user is using
    a path under /tmp or other special case paths as the context directory.

    ## Testing
    - [x] Tested locally
    - [x] Added/updated tests
    - [ ] Added/updated docs

    Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>

commit 79cc363
Author: J Logan <sgtbakerrahulnet@yahoo.com>
Date:   Tue Sep 16 10:14:14 2025 -0700

    Relocates API server to Helpers, service to Services. (apple#616)

    - Closes apple#615.

    Improves project organization. Separates service so it can be tested and
    used separately from the executable target. No functional changes.

commit a54be36
Author: J Logan <sgtbakerrahulnet@yahoo.com>
Date:   Mon Sep 15 11:27:51 2025 -0700

    Add `--labels` for networks. (apple#600)

    - Closes apple#557.
    - Breaking change: removes `.upToNextOption` for labels on volumes as
    this is not what is done for containers, and it forces the argument to
    precede the options if a label is supplied, which is non-intuitive.

    ## Type of Change
    - [ ] Bug fix
    - [x] New feature
    - [x] Breaking change
    - [x] Documentation update

    ## Motivation and Context
    Consistent features and UX across managed resources.

    ## Testing
    - [x] Tested locally
    - [x] Added/updated tests
    - [x] Added/updated docs

@Mcrich23

@Mcrich23

@Mcrich23

commit dd6bdc2
Author: Morris Richman <81453549+Mcrich23@users.noreply.github.com>
Date:   Wed Sep 17 15:24:26 2025 -0700

    Expose Command Structs for Plugins (apple#603)

    ## Type of Change
    - [ ] Bug fix
    - [x] New feature
    - [ ] Breaking change
    - [ ] Documentation update

    ## Motivation and Context
    Plugins technically exist, but to add shortcuts or to do existing things
    with functions in `container` requires calling a compiled binary. This
    pull request aims to remove that hurdle and instability by exposing
    commands as a new `ContainerCommands ` target.

    Simply import `ContainerCommands` and you can access almost
    any command as if it were a native part of the binary. This makes
    plugin development significantly easier.

    Closes apple#609.

@Mcrich23

@Mcrich23

@Mcrich23

@Mcrich23

…iner into rename-cli-folder

@Mcrich23 Mcrich23 marked this pull request as ready for review

September 17, 2025 23:41