Low priority. Nothing blocks on this, but it gets harder to change once people use ergo.
The package name
Everything in ergo lives in package ergo, which policies reach as data.ergo. Rego has no namespaces beyond the package path, and every file loaded into OPA shares one tree. So if another library or someone's own policy also declares package ergo, OPA merges the two into one package. At best that's a compile error. At worst, rules quietly combine.
Options:
- Keep
ergo. It's short and reads well, but it's a common word, so a clash is possible.
- Use a longer path, such as
kosli.ergo or finos.ergo. It's much less likely to clash, but every policy has to write import data.kosli.ergo, and the name ties ergo to an organisation.
Every policy imports this name, so changing it later means every user has to update their policies.
The project name
Before going public, check whether "ergo" is free to use. Other software already uses it, including a Go actor framework (ergo.services) and a blockchain (Ergo Platform). A trademark search would settle whether that's a problem.
Low priority. Nothing blocks on this, but it gets harder to change once people use ergo.
The package name
Everything in ergo lives in
package ergo, which policies reach asdata.ergo. Rego has no namespaces beyond the package path, and every file loaded into OPA shares one tree. So if another library or someone's own policy also declarespackage ergo, OPA merges the two into one package. At best that's a compile error. At worst, rules quietly combine.Options:
ergo. It's short and reads well, but it's a common word, so a clash is possible.kosli.ergoorfinos.ergo. It's much less likely to clash, but every policy has to writeimport data.kosli.ergo, and the name ties ergo to an organisation.Every policy imports this name, so changing it later means every user has to update their policies.
The project name
Before going public, check whether "ergo" is free to use. Other software already uses it, including a Go actor framework (ergo.services) and a blockchain (Ergo Platform). A trademark search would settle whether that's a problem.