1. Oct 06, 2023
  2. Sep 28, 2023
    • vector-of-bool's avatar
      CDRIVER-4730 TLS Backend Cleanup (#1408) · ef706a70
      vector-of-bool authored
      * Clean up of TLS detection and import
      * Earthly TLS controls and cleaner build envs
      Adds a --tls build parameter to switch TLS backends. This PR also adds
      a "str" utility for doing more concise string manipulation in POSIX sh.
      * EVG Earthly tasks for more build configurations
      This refactors earthly.py for extensibility and to match the
      parameterization used in Earthfile.
      * Support "auto" in Earthfile
      * Tweak name spacing
      * More feature and package summary information
      * Unused LibreSSL compat
      ef706a70
  3. Sep 19, 2023
    • vector-of-bool's avatar
      FindSASL2 cleanup (#1405) · 264fd418
      vector-of-bool authored
      * Redefine the handling of SASL imports
      
      Tweak importing of libsasl2 for user requirements
      
      Tweaks the import of libsasl2 so that at import-time we don't
      *require* the pkg-config files, since the dynamic library's dep
      on libsasl should be sufficient to satisfy the runtime linking.
      
      * Add FeatureSummary
      * Bump Earthly version, allow setting sasl options
      * Include dependencies for finding libsasl2
      * Define more Earthly tasks
      * make _mongo_pick public, tweak signature of bool01
      * Add Earthly target for testing against cxx-driver
      
      Build +test-cxx-driver to run a default mongo-cxx-driver using the
      local mongo-c-driver as the driver backend.
      
      * Better Earthly target docs
      * Fix SASL path finding for Windows, and use parallel Make
      264fd418
  4. Sep 02, 2023
    • vector-of-bool's avatar
      An Even-More-Basic Earthly Project (#1395) · c3ba4ffe
      vector-of-bool authored
      * An earthly.sh shim script
      * Tweak find-cmake to use download.sh for downloader-agnosticism.
      * A cmake.sh shim to run the managed CMake version
      * Fix checks in ResSearch, since libmusl does not have res_close
      * Add a simple Earthfile with a few platforms
      * Add EVG Earthly tasks
      c3ba4ffe
  5. Aug 12, 2023
    • vector-of-bool's avatar
      Update Poetry and requests (#1377) · 7f627215
      vector-of-bool authored
      * Update Poetry and requests
      * Hold back PyYAML to avoid Cython errors
      
      This fixes an issue on newer Python installs that don't have distutils handy, as well as address a dependabot PR that could not merge correctly (#1284). Also, hold back PyYAML to avoid Cython-related issues (fixed in PyYAML 6, but Shrub requires PyYAML 5)
      7f627215
  6. Jun 13, 2023
    • vector-of-bool's avatar
      [CDRIVER-4637] A config settings command (#1289) · ca0dd70b
      vector-of-bool authored
      * New config settings code and defaults.
      
      Almost all setting values have remained the same, and most setting
      handling logic has remained unmodified, but this will serve as a basis
      for better configuration settings handling in the future tasks for
      CDRIVER-4637.
      
      * Aside: message() cleanup
      
      Using `message()` without a mode argument will write the message
      as a NOTICE to stderr. We want to use STATUS as the default, which goes
      to stdout. Systems which colorize stderr output would seemingly-randomly
      color certain lines where the mode argument was missing.
      
      * Use new CMake in more build tasks
      
      Several build tasks still relied on older find-cmake logic. With the
      new CMake changes, a more recent CMake version is required. These
      tasks and scripts have been updated to use the same logic to find
      the same CMake version as is used in the main build tasks.
      
      * Don't use Batch scripts to compile for MinGW
      
      Batch scripting is fraught with peril and will almost never do what
      one expects. Any other scripting language is preferable. Since we have
      Bash available and the tools to properly convert paths, just use Bash
      to do this work.
      
      * Redundant ENABLE_SHM_COUNTERS logic
      * Update the "Ask for Help" section
      * No longer applicable SASL checks
      * Remove ENABLE_BSON, as its purpose is confusing.
      - ENABLE_BSON=ON did the same as ENABLE_BSON=AUTO
      - There is no "ENABLE_BSON=OFF" since then there would be nothing to build.
      - USE_SYSTEM_LIBBSON=ON replaces ENABLE_BSON=SYSTEM.
      - To alleviate downstreams from needing to check versions before configuring,
        allow ENABLE_BSON=SYSTEM to be specified if USE_SYSTEM_LIBBSON=ON is also set,
        thus allowing one option pair to build both before and after this revision.
      - If ENABLE_BSON=SYSTEM is set but USE_SYSTEM_LIBBSON is not TRUE, then
        downstream will want to update their scripts to build with the new
        option rather than miscompile without being noticed.
      * New toolchain for the build
      * Don't inject the toolchain SSL into LD_LIBRARY_PATH
      
      The toolchain CMake is incompatible with OpenSSL 1.1.0, so having it on the
      library path breaks CMake. We don't need to modify LD_LIBRARY_PATH to cause
      CMake to use the OpenSSL that we want. It is sufficient to prepend the SSL root
      to the CMAKE_PREFIX_PATH.
      
      * Coverage link options are usage requirements
      * More Bash, less Sh
      * Don't depend on distro_id
      ca0dd70b
  7. Jun 02, 2023
  8. May 26, 2023
    • vector-of-bool's avatar
      CDRIVER-4641: A Poetry project file (#1276) · a5df73c6
      vector-of-bool authored
      * A basic Poetry project for managing dev scripts and tools
        Fixup several other scripts to be set -u safe since we now import that
        setting.
      * Use Poetry to run Sphinx
      * Change variant used for release archive
        The release archive build invokes Sphinx, and since Sphinx is now installed by
        Poetry, we require a newer Python version. make-release-archive now runs
        on Ubuntu 22.04
      * abi-compliance-check needs u18
        The abi-compliance-check task assumes an external `abi-compliance-checker`
        tool is installed, but that is only true on the Ubuntu 18.04 EVG
        distros.
      * Significant script refactoring:
      - Split components into separate files, and provide a way to selectively
        import them from other scripts.
      - Download install-poetry.py on-the-fly when it is needed, not committed
        into the repository.
      - Add a download-file utility.
      - python.sh/poetry.sh are importable to be reused in other scripts.
      * Add notes about building docs to CONTRIBUTING
      * Parallelize the HTML build
      * Add a console script for EVG generation
      a5df73c6
  9. Mar 02, 2014
  10. Feb 14, 2014
  11. Feb 11, 2014
  12. Nov 19, 2013
  13. Oct 10, 2013
  14. Aug 16, 2013
  15. Jul 25, 2013
  16. Jul 24, 2013