Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Monomodule support #266

Merged
merged 12 commits into from Mar 23, 2023
Merged

Monomodule support #266

merged 12 commits into from Mar 23, 2023

Commits on Mar 21, 2023

  1. HashTreeCollections: Qualify internal type names with “Hash”

    This makes them unique throughout the package, allowing this code to be built as a single, huge module.
    lorentey committed Mar 21, 2023
    Copy the full SHA
    424c8ec View commit details
    Browse the repository at this point in the history
  2. HeapModule: _Node → _HeapNode

    This makes this name unique throughout the package, allowing this code to be built as a single, huge module.
    lorentey committed Mar 21, 2023
    Copy the full SHA
    cc181a3 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2023

  1. Copy the full SHA
    cbab9e3 View commit details
    Browse the repository at this point in the history
  2. Copy the full SHA
    ea60d29 View commit details
    Browse the repository at this point in the history
  3. Copy the full SHA
    e1ef053 View commit details
    Browse the repository at this point in the history

Commits on Mar 23, 2023

  1. Add gyb 😞

    lorentey committed Mar 23, 2023
    Copy the full SHA
    688dbdf View commit details
    Browse the repository at this point in the history
  2. _CollectionsUtilities: Use gyb to allow defining these helpers as int…

    …ernal or public depending on COLLECTIONS_SINGLE_MODULE
    
    This is a thoroughly disgusting solution, but needs must. 😞
    
    Hopefully macros will let us eventually replace this mess.
    lorentey committed Mar 23, 2023
    Copy the full SHA
    c287334 View commit details
    Browse the repository at this point in the history
  3. Copy the full SHA
    2453c1b View commit details
    Browse the repository at this point in the history
  4. Add support building with COLLECTIONS_SINGLE_MODULE

    - Sources/_CollectionsTestSupport → Tests/_CollectionsTestSupport
    - Refactor Package.swift to allow switching between the default
       polymodule and the new monomodule product configurations
       (by editing the manifest file).
    - Fix build errors in the monomodule variant.
    lorentey committed Mar 23, 2023
    Copy the full SHA
    f17cf64 View commit details
    Browse the repository at this point in the history
  5. Disable COLLECTIONS_SINGLE_MODULE by default

    Also, remove COLLECTIONS_ENABLE_UNSTABLE_MODULES as it is no longer doing anything.
    lorentey committed Mar 23, 2023
    Copy the full SHA
    8a4c842 View commit details
    Browse the repository at this point in the history
  6. Add an Xcode project exercising a monomodule configuration

    This is going to ship as is, with no promises about it remaining in future versions. It is going to be a load bearing component of the package, though — just not necessary a stable one.
    lorentey committed Mar 23, 2023
    Copy the full SHA
    0a55894 View commit details
    Browse the repository at this point in the history
  7. Add READMEs calling out the fact that the contents of Tests/, Utils/ …

    …& Xcode/ are unstable
    lorentey committed Mar 23, 2023
    Copy the full SHA
    1666222 View commit details
    Browse the repository at this point in the history