ocaps is a library for working with object capabilities in Scala.
- Revoker / Revocable classes for revoking capabilities.
- Brand for sealing and unsealing capabilities
- RevocableMembrane for revocation as an effect.
- Macros for composition, attenuation, revocable and modulating capabilities.
- No libraries dependencies (other than
scala-reflect
)
Documentation can be found at https://tersesystems.github.io/ocaps/
Examples can be found at http://tersesystems.github.io/ocaps/examples/
A guide to object capabilities can be found at http://tersesystems.github.io/ocaps/guide/
The ocaps
library was presented as part of the Security in Scala presentation at Scaladays NYC 2018. Slides and video are available.
There is currently no compiled package available. RIP Bintray.
Add the following to build.sbt
// where latestVersion is defined up top
libraryDependencies = "ocaps" %% "ocaps-core" % latestVersion
To release a new version of ocaps
:
sbt release
To update the website, change version.sbt
so it's the release version and not snapshot (there should be a way to do this automatically) and then do the following:
sbt
> clean
> makeSite
> previewSite
> ghpagesPushSite