A path check is done prior to loading the vagrant ssl helper, but it was
only checking for a file with a `.so` suffix so `.bundle` files on macos
would be ignored and the helper not loaded.
Include both paths when checking for the library existence.
This workflow will update files in the repository for a new release. It
will:
* Update version in version.txt, CHANGELOG.md, and LICENSE
* Commit changes to main
* Create new release tag
* Generate a new development version string (patch incremented + .dev)
* Update dev version in version.txt, CHANGELOG.md, and LICENSE
* Commit changes to main
* Push changes on main to origin
* Push release tag to origin
This ensures all files are updated consistently and correctly. The
creation of the tag will then trigger the release workflow.
When the reported architecture is unknown and the provider is listed as
the default architecture, add the box without architecture information
so it is installed without architecture information on the path within
the collection.
With the initial layout of `provider/architecture`, after installing a
box with architecture support downgrading Vagrant would result in it
being unable to process the box collection. Swapping the layout to be
`architecture/provider` allows downgrades to still properly process the
box collection.
When expanding the box url, prefer the API endpoint which is updated to
include provider architecture information. Test the API endpoint and the
legacy endpoint and use which ever is valid, with the API taking
precedence. This allows Vagrant to continue with non Vagrant Cloud
servers that do not implement the API endpoint.
Introduce support for handling box architecture. Adds a new
`box_architecture` setting that defaults to `:auto` which will perform
automatic detection of the host system, but can be overridden with a
custom value. Can also be set to `nil` which will result in it fetching
the box flagged with the default architecture within the metadata.
Box collection has been modified to allow existing boxes already
downloaded and unpacked to still function as expected when architecture
information is not available.