sogno-platform / dpsim

Real-time power system simulator including powerflow, (dynamic) phasors and EMT
https://sogno.energy/dpsim/
Mozilla Public License 2.0
67 stars 49 forks source link

Introduce a `CODEOWNERS` file #287

Closed stv0g closed 3 months ago

stv0g commented 5 months ago

See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners

As discussed in our meeting on the 23rd April:

We would like to introduce a CODEOWNERS file in the repo to more easily assign the task of reviewing to the corresponding experts of the changed code.

Lets first discuss how the initial file should look like.

I would like to ask everybody to indicate which parts of the code he has written or feels otherwise responsible for.

You can use the following command to get list of files which you have touched in the past:

git log --name-status --pretty=format:'' --author="Steffen Vogel" | sort | uniq

I will start with my contributions:

/cmake/ @stv0g
/pyproject.toml @stv0g
/gitlab-ci.yml @stv0g
/dpsim/src/pybind @stv0g
/.clang-format @stv0g
/.editorconfig @stv0g
/.git-blame-ignore-revs @stv0g
/configs/shmem_cosim/ @stv0g

# Packaging
/.dockerignore @stv0g
/packaging/Docker @stv0g

# VILLAS-related
/dpsim-villas/ @stv0g
/examples/villas @stv0g
/examples/villas-deprecated @stv0g
n-eiling commented 5 months ago
/dpsim/include/dpsim/GpuDenseAdapter.h                 @n-eiling
/dpsim/include/dpsim/GpuMagmaAdapter.h                 @n-eiling
/dpsim/include/dpsim/GpuSparseAdapter.h                @n-eiling
/dpsim/include/dpsim/MNASolverPlugin.h                 @n-eiling
/dpsim/include/dpsim/MNASolverFactory.h                @n-eiling
/dpsim/include/dpsim/MNASolverDynInterface.h           @n-eiling
/dpsim/src/GpuDenseAdapter.cpp                         @n-eiling
/dpsim/src/GpuMagmaAdapter.cpp                         @n-eiling
/dpsim/src/GpuSparseAdapter.cpp                        @n-eiling
/dpsim/src/MNASolverPlugin.cpp                         @n-eiling
/cmake/FindMAGMA.cmake                                 @n-eiling
/packaging/Docker/Dockerfile.dev-rocky                 @n-eiling
/dpsim/src/SolverPlugins                               @n-eiling
/dpsim/include/Utils.h                                 @n-eiling
/dpsim/src/Utils.h                                     @n-eiling

UPDATE:

/dpsim-villas/examples/cxx/FpgaExample.cpp                                     @n-eiling
georgii-tishenin commented 5 months ago

For me nothing in the master branch yet.

m-mirz commented 5 months ago

WIP

/.dockerignore @m-mirz
/.github @m-mirz
/.editorconfig @m-mirz
/.gitignore @m-mirz
/.devcontainer @m-mirz
/CMakeLists.txt @m-mirz
/README.md @m-mirz
/cmake @m-mirz
/docs @m-mirz
/dpsim-models @m-mirz
/examples @m-mirz
/python @m-mirz
/requirements.txt @m-mirz
/setup.cfg @m-mirz
/sonar-project.properties @m-mirz
/configs @m-mirz
/dpsim @m-mirz
/packaging @m-mirz
#/pytest.ini @stv0g  ?
#/requirements-manylinux.txt @dinkelbachjan ?
/scripts @m-mirz
/setup.py @m-mirz
stv0g commented 5 months ago

Quick reminder for:

leonardocarreras commented 4 months ago

From my side I could support with the workflows

.github/workflows @leonardocarreras

gnakti commented 4 months ago
/dpsim-models @gnakti
/dpsim @gnakti
/examples @gnakti
/python @gnakti
stv0g commented 4 months ago

I've consolidated the ownerships in this PR https://github.com/sogno-platform/dpsim/pull/290

leonardocarreras commented 4 months ago

WIP

/.dockerignore @m-mirz
/.github @m-mirz
/.editorconfig @m-mirz
/.gitignore @m-mirz
/.devcontainer @m-mirz
/CMakeLists.txt @m-mirz
/README.md @m-mirz
/cmake @m-mirz
/docs @m-mirz
/dpsim-models @m-mirz
/examples @m-mirz
/python @m-mirz
/requirements.txt @m-mirz
/setup.cfg @m-mirz
/sonar-project.properties @m-mirz
/configs @m-mirz
/dpsim @m-mirz
/packaging @m-mirz
#/pytest.ini @stv0g  ?
#/requirements-manylinux.txt @dinkelbachjan ?
/scripts @m-mirz
/setup.py @m-mirz

Hi @stv0g! I think this one got missing, I do not see Markus owning anything in the PR... It says WIP, maybe @m-mirz wants to add something more?

stv0g commented 4 months ago

@gnakti could you be a bit more specific one which files/models/directories you claim ownership?

The directories in your previous comment seem a bit too broad in my opinion..

stv0g commented 4 months ago

Sorry @m-mirz, I forgot you add you in the PR. I revised the change..

m-mirz commented 4 months ago

@stv0g no problem. Maybe it makes more sense to do it like in villas node? https://github.com/VILLASframework/node/blob/e26a5c1b48e4746839a83a8f942ac75cca25b3d2/CODEOWNERS#L8

This reduces the probability that a file is not covered by the CODEOWNERS file and I also like the idea that the more specific rules further down take precedence.

stv0g commented 4 months ago

@m-mirz Yes I think that makes sense. I've added you and Jan to the catch-all entry.

martinmoraga commented 4 months ago

@gnakti could you be a bit more specific one which files/models/directories you claim ownership?

The directories in your previous comment seem a bit too broad in my opinion..

@m-mirz @gnakti

I can take thee dpsim models that I implemented and once the branch sg-controllers take over the SG-controllers. I could also take over the matpower reader if you guys agree....

dpsim-models/include/dpsim-models/Base/Base_ReducedOrderSynchronGenerator.h @martinmoraga
dpsim-models/src/Base/Base_ReducedOrderSynchronGenerator.cpp @martinmoraga                                                                                                                                                         

dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGenerator3OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/EMT/EMT_Ph3_SynchronGenerator3OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGenerator3OrderVBR.h @martinmoraga 
dpsim-models/src/EMT/EMT_Ph3_SynchronGenerator3OrderVBR.cpp @martinmoraga 
dpsim-models/src/SP/SP_Ph1_SynchronGenerator3OrderVBR.cpp @martinmoraga 
dpsim-models/src/DP/DP_Ph1_SynchronGenerator3OrderVBR.cpp @martinmoraga 

dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGenerator4OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/EMT/EMT_Ph3_SynchronGenerator4OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGenerator4OrderVBR.h @martinmoraga 
dpsim-models/src/EMT/EMT_Ph3_SynchronGenerator4OrderVBR.cpp @martinmoraga 
dpsim-models/src/SP/SP_Ph1_SynchronGenerator4OrderVBR.cpp @martinmoraga 
dpsim-models/src/DP/DP_Ph1_SynchronGenerator4OrderVBR.cpp @martinmoraga 

dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGenerator5OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/EMT/EMT_Ph3_SynchronGenerator5OrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGenerator5OrderVBR.h @martinmoraga 
dpsim-models/src/EMT/EMT_Ph3_SynchronGenerator5OrderVBR.cpp @martinmoraga 
dpsim-models/src/SP/SP_Ph1_SynchronGenerator5OrderVBR.cpp @martinmoraga 
dpsim-models/src/DP/DP_Ph1_SynchronGenerator5OrderVBR.cpp @martinmoraga   

dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGenerator6aOrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/EMT/EMT_Ph3_SynchronGenerator6aOrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGenerator6aOrderVBR.h @martinmoraga 
dpsim-models/src/EMT/EMT_Ph3_SynchronGenerator6aOrderVBR.cpp @martinmoraga 
dpsim-models/src/SP/SP_Ph1_SynchronGenerator6aOrderVBR.cpp @martinmoraga 
dpsim-models/src/DP/DP_Ph1_SynchronGenerator6aOrderVBR.cpp @martinmoraga   

dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGenerator6bOrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/EMT/EMT_Ph3_SynchronGenerator6bOrderVBR.h @martinmoraga 
dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGenerator6bOrderVBR.h @martinmoraga 
dpsim-models/src/EMT/EMT_Ph3_SynchronGenerator6bOrderVBR.cpp @martinmoraga 
dpsim-models/src/SP/SP_Ph1_SynchronGenerator6bOrderVBR.cpp @martinmoraga 
dpsim-models/src/DP/DP_Ph1_SynchronGenerator6bOrderVBR.cpp @martinmoraga   

dpsim/examples/cxx/Circuits/DP_ReducedOrderSG_SMIB_Fault.cpp  @martinmoraga
dpsim/examples/cxx/Circuits/DP_ReducedOrderSG_VBR_Load_Fault.cpp @martinmoraga
dpsim/examples/cxx/Circuits/DP_SMIB_ReducedOrderSG_LoadStep.cpp @martinmoraga
dpsim/examples/cxx/Circuits/EMT_ReducedOrderSG_SMIB_Fault.cpp @martinmoraga
dpsim/examples/cxx/Circuits/EMT_ReducedOrderSG_VBR_Load_Fault.cpp @martinmoraga
dpsim/examples/cxx/Circuits/EMT_SMIB_ReducedOrderSG_LoadStep.cpp @martinmoraga
dpsim/examples/cxx/Circuits/SP_SMIB_ReducedOrderSG_LoadStep.cpp @martinmoraga
dpsim/examples/cxx/Circuits/SP_ReducedOrderSG_SMIB_Fault.cpp @martinmoraga
dpsim/examples/cxx/Circuits/SP_ReducedOrderSG_VBR_Load_Fault.cpp @martinmoraga

examples/Notebooks/Circuits/SP_Validation_ReducedOrderSG_VBR_SMIB_Fault_withPSAT.ipynb @martinmoraga
n-eiling commented 3 months ago

Can we make this happen? :)

gnakti commented 3 months ago

@gnakti could you be a bit more specific one which files/models/directories you claim ownership?

The directories in your previous comment seem a bit too broad in my opinion..

/dpsim-models/include/dpsim-models/CIM/Reader.h @gnakti
/dpsim-models/src/CIM/Reader.cpp @gnakti
/dpsim-models/include/dpsim-models/DP/DP_Ph1_SynchronGeneratorTrStab.h @gnakti
/dpsim-models/src/DP/DP_Ph1_SynchronGeneratorTrStab.cpp @gnakti
/dpsim-models/include/dpsim-models/SP/SP_Ph1_SynchronGeneratorTrStab.h @gnakti
/dpsim-models/src/SP/SP_Ph1_SynchronGeneratorTrStab.cpp @gnakti
/dpsim-models/include/dpsim-models/DP/DP_Ph1_varResSwitch.h @gnakti
/dpsim-models/src/DP/DP_Ph1_varResSwitch.cpp @gnakti
/dpsim-models/include/dpsim-models/SP/SP_Ph1_varResSwitch.h @gnakti
/dpsim-models/src/SP/SP_Ph1_varResSwitch.cpp @gnakti

/dpsim/include/dpsim/PFSolver.h @gnakti
/dpsim/src/PFSolver.cpp @gnakti
/dpsim/include/dpsim/PFSolverPowerPolar.h @gnakti
/dpsim/src/PFSolverPowerPolar.cpp @gnakti
/dpsim/examples/cxx/Examples.h @gnakti
/dpsim/examples/cxx/CIM @gnakti
/dpsim/examples/cxx/Circuits @gnakti

/python @gnakti

/examples/Notebooks/Circuits @gnakti
/examples/Notebooks/Grids @gnakti
stv0g commented 3 months ago

Can we make this happen? :)

I've added the latest additions by @gnakti and @martinmoraga.

Now awaiting further feedback and/or approval from somebody with merge permissions :)

pipeacosta commented 3 months ago

I think I could support with this one:

# VILLAS-related
/examples/villas @pipeacosta
dinkelbachjan commented 3 months ago

@m-mirz Yes I think that makes sense. I've added you and Jan to the catch-all entry.

Thanks, that's fine for me! I would suggest to additionally include the explanatory comment lines like in the villas node file: https://github.com/VILLASframework/node/blob/e26a5c1b48e4746839a83a8f942ac75cca25b3d2/CODEOWNERS#L4-L13 Like this it's clear how to interpret the file :)

stv0g commented 3 months ago

I would suggest to additionally include the explanatory comment lines like in the villas node file

Nice idea :) I've added it to the PR.

@dinkelbachjan, @m-mirz Please feel free to merge once you are happy