contexts are not strict now - preparation for incremental contexts. (#52)
This is in preparation for contexts being incremental,
an aspect can add (merge) additional data to an existing context.
for example, a host configuration starts with { host } but later for each of it users it merges currentContext // { user } leading to { host, user } augmented context.
This allows contexts to be incremental, so parametric-aspects (functions) can specify what is the context they need:
{ user, ...} - At least user data in context.
{ user, host, gaming } - Need the three of them.
Will invalidate and close #51.
Breaking Change
Your existing functions taking context like { host } will likely need to be { host, ... } now. See this PR diff for how batteries were updated.
authored by
oeiuwq.com
and committed by