feat: implement DCOS source tree, tests, and build configuration
Complete implementation of the DCOS package including: - 40+ Python source files across agents, communication, core, learning, memory, protocols, utils - pyproject.toml build configuration - 102 unit tests across all subsystems - Fixed flake.nix (Python 3.12, proper dependencies, pyproject build) - Fixed .woodpecker.yml (correct paths, removed silent-fail flags) - Added .gitignore - Cleared stale pytest cache
This commit is contained in:
@@ -10,25 +10,34 @@
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
python = pkgs.python311;
|
||||
pythonPackages = pkgs.python311Packages;
|
||||
python = pkgs.python312;
|
||||
pythonPackages = pkgs.python312Packages;
|
||||
in {
|
||||
packages.default = pythonPackages.buildPythonPackage {
|
||||
pname = "dcos";
|
||||
version = "1.0.0";
|
||||
src = ./.;
|
||||
nativeBuildInputs = with pkgs; [
|
||||
nativeBuildInputs = with pythonPackages; [
|
||||
python
|
||||
pyyaml
|
||||
setuptools
|
||||
wheel
|
||||
];
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
pyyaml
|
||||
pydantic
|
||||
];
|
||||
doCheck = false;
|
||||
format = "pyproject";
|
||||
doCheck = true;
|
||||
checkInputs = with pythonPackages; [
|
||||
pytest
|
||||
pytest-asyncio
|
||||
];
|
||||
checkPhase = ''
|
||||
pytest tests/ -x --tb=short -q
|
||||
'';
|
||||
pyproject = true;
|
||||
pyprojectFiles = [ "pyproject.toml" ];
|
||||
makeWheel = true;
|
||||
packageDir = "src";
|
||||
};
|
||||
|
||||
devShells.default = pkgs.mkShell {
|
||||
@@ -38,10 +47,12 @@
|
||||
pythonPackages.pytest
|
||||
pythonPackages.pytest-asyncio
|
||||
pythonPackages.pyyaml
|
||||
pythonPackages.pydantic
|
||||
pythonPackages.ruff
|
||||
];
|
||||
shellHook = ''
|
||||
export PYTHONPATH="${toString (builtins.toPath ./src)}:$PYTHONPATH"
|
||||
echo "DCOS dev shell — Python 3.11, pytest, pyyaml"
|
||||
export PYTHONPATH="${toString ./src}:$PYTHONPATH"
|
||||
echo "DCOS dev shell — Python 3.12, pytest, pyyaml, pydantic"
|
||||
'';
|
||||
};
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user