Skip to content

Arcana.cpp is a collection of helpers and utility code for low overhead, cross platform C++ implementation of task-based asynchrony.

License

Notifications You must be signed in to change notification settings

microsoft/arcana.cpp

CI

Arcana.cpp

Arcana is a collection of general purpose C++ utilities with no code that is specific to a particular project or specialized technology area, sort of like an extension to the STL. At present, the most notable of these utilities is the Arcana task library.

You can learn more about API usage in the arcana.cpp documentation.

Getting Started

  1. Clone the repo and checkout the master branch.

Prerequisites

  • CMake 3.15 or higher
  • A C++17 compatible compiler (Visual Studio 2019+, GCC 8+, or Clang 7+)

Building with CMake

Configure and Build

From the root directory of the repository:

# Configure the project
cmake -B Build

Build Options

  • ARCANA_TESTS: Enable/disable building tests (default: ON if this is the top-level project)

Platform-Specific Examples

Windows (Visual Studio)

cmake -B Build
start Build\arcana.cpp.sln

macOS (Xcode)

cmake -B Build -G Xcode
open Build/arcana.cpp.xcodeproj

Deployment

There is no official deployment mechanism available at this time.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

arcana.cpp does not use SemVer. Instead, it uses a version derived from the current date. Therefore, the version contains no semantic information.

Maintainers

With questions, please contact one of the maintainers:

Credits

Arcana owes especial thanks to:

Reporting Security Issues

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at [email protected]. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

About

Arcana.cpp is a collection of helpers and utility code for low overhead, cross platform C++ implementation of task-based asynchrony.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 10