microsoft / CCF

Confidential Consortium Framework
https://microsoft.github.io/CCF/
Apache License 2.0
766 stars 208 forks source link

Nest all public CCF code under `ccf` namespace #3580

Open eddyashton opened 2 years ago

eddyashton commented 2 years ago

We currently define CCF types in various namespaces, along historic divisions in the codebase. This introduces some confusion for consumers in finding the correct name for our types, and may lead to naming conflicts in C++ projects with other large dependencies.

Ideally we should move everything under ccf::, nested as appropriate (eg ccf::kv::, ccf::crypto::).

For an approximation of the namespaces exposed by our public headers:

$ find . -type f | xargs grep -h -e "namespace" | sort -u

namespace ccf
namespace ccf::endpoints
namespace ccf::historical
namespace ccf::indexing
namespace ccf::indexing::strategies
namespace ccf::js
namespace ccfapp
namespace crypto
namespace ds
namespace enclave
namespace http
namespace kv
namespace kv::serialisers
namespace logger
namespace nonstd
namespace serdes
namespace siphash
namespace std
namespace threading
achamayou commented 3 days ago
$ find . -type f | xargs grep -h -e "^namespace" | sort -u | grep -v "namespace ccf::"
namespace ccf
namespace ccfapp
namespace crypto
namespace http
namespace http2
namespace kv
namespace kv::serialisers
namespace kv::untyped
namespace logger
namespace nonstd
namespace serdes
namespace std
achamayou commented 2 days ago

Still left to do:

namespace ccfapp
namespace kv
namespace kv::serialisers
namespace kv::untyped
namespace logger