Skip to content

Commit

Permalink
Added Robin's errr package to prepare for better exception handling (
Browse files Browse the repository at this point in the history
…#82)

* Added Robin's `errr` package to prepare for better exception handling

* Added `errr` to the package requirement files.
  • Loading branch information
Helveg committed Sep 10, 2020
1 parent 768e347 commit bb23709
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 169 deletions.
216 changes: 47 additions & 169 deletions bsb/exceptions.py
Original file line number Diff line number Diff line change
@@ -1,172 +1,50 @@
class ScaffoldError(Exception):
pass


class SpatialDimensionError(ScaffoldError):
pass


## Configuration


class ConfigurationError(ScaffoldError):
pass


class ConfigurationFormatError(ConfigurationError):
pass


class DynamicClassError(ConfigurationError):
pass


class ConfigurableClassNotFoundError(DynamicClassError):
pass


class CastError(ConfigurationError):
pass


class CastConfigurationError(ConfigurationError):
pass


class UnionCastError(CastError):
pass


class ConfigurableCastError(CastError):
pass


class UnknownDistributionError(ConfigurableCastError):
pass


class InvalidDistributionError(ConfigurableCastError):
pass


class TypeNotFoundError(ScaffoldError):
pass


class LayerNotFoundError(ScaffoldError):
pass


class SimulationNotFoundError(ScaffoldError):
pass


## Nest


class NestError(ScaffoldError):
pass


class AdapterError(NestError):
pass


class NestKernelError(AdapterError):
pass


class KernelLockedError(NestKernelError):
pass


class SuffixTakenError(KernelLockedError):
pass


class NestModelError(NestError):
pass


class NestModuleError(NestKernelError):
pass


class ReceptorSpecificationError(NestError):
pass


## Connectivity


class ConnectivityError(ScaffoldError):
pass


## Morphologies


class MorphologyError(ScaffoldError):
pass


class MorphologyRepositoryError(MorphologyError):
pass


class MissingMorphologyError(MorphologyError):
pass


class IncompleteMorphologyError(MorphologyError):
pass


class MorphologyDataError(MorphologyError):
pass


class CompartmentError(MorphologyError):
pass


class TreeError(ScaffoldError):
pass


class VoxelizationError(ScaffoldError):
pass


class VoxelTransformError(VoxelizationError):
pass


## Resources (HDF5, ...)


class ResourceError(ScaffoldError):
pass


class DatasetNotFoundError(ResourceError):
pass


class IntersectionDataNotFoundError(DatasetNotFoundError):
pass


class DataNotFoundError(ResourceError):
pass


class DataNotProvidedError(ScaffoldError):
pass


class AttributeMissingError(ResourceError):
pass
from errr import make_tree as _t, exception as _e

_t(
globals(),
ScaffoldError=_e(
SpatialDimensionError=_e(),
ConfigurationError=_e(
ConfigurationFormatError=_e(),
DynamicClassError=_e(ConfigurableClassNotFoundError=_e(),),
CastError=_e(
UnionCastError=_e(),
ConfigurableCastError=_e(
UnknownDistributionError=_e(), InvalidDistributionError=_e(),
),
),
CastConfigurationError=_e(),
),
TypeNotFoundError=_e(),
LayerNotFoundError=_e(),
SimulationNotFoundError=_e(),
AdapterError=_e(
NestError=_e(
NestKernelError=_e(NestModuleError=_e(),),
NestModelError=_e(),
KernelLockedError=_e(),
SuffixTakenError=_e(),
ReceptorSpecificationError=_e(),
)
),
ConnectivityError=_e(),
MorphologyError=_e(
MorphologyRepositoryError=_e(),
MissingMorphologyError=_e(),
IncompleteMorphologyError=_e(),
MorphologyDataError=_e(),
CompartmentError=_e(),
),
TreeError=_e(),
VoxelizationError=_e(VoxelTransformError=_e(),),
ResourceError=_e(
DatasetNotFoundError=_e(IntersectionDataNotFoundError=_e(),),
DataNotFoundError=_e(),
AttributeMissingError=_e(),
),
DataNotProvidedError=_e(),
),
)


## Warnings
Expand Down
1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ pre-commit==1.21.0
black==19.10b0
sphinx_rtd_theme==0.4.3
colour==0.1.5
errr==0.2.0
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ sphinx_rtd_theme==0.4.3
nrn-patch==2.1.1
dbbs_models==1.1.1
colour==0.1.5
errr==0.2.0
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
"scikit-learn>=0.20.3",
"plotly>=4.1.0",
"colour>=0.1.5",
"errr>=0.2.0",
]

if not os.getenv("READTHEDOCS", False):
Expand Down

0 comments on commit bb23709

Please sign in to comment.