Skip to content
ReimarBauer edited this page Dec 10, 2020 · 6 revisions

FAQ How To Start

  • Where is the link to a setup guide for new developers?

    use the section where we describe this option

    conda install mss / mamba install mss

    By conda remove mss --force you can remove only the mss package and keep all needed packages in your environment. While you add the development path to the PYTHONPATH you don't have conflicts by installed packages with the recent source.

    https://mss.readthedocs.io/en/stable/development.html

  • Are there any unusual libraries/applications that need to be installed first?

    We are based on anaconda3 and conda-forge. All development is done with python 3.

    On linux install xvfb. This is used to run tests on a virtual display.

  • How do I have to setup my environment?

    Dependent on the IDE there are differences, we try to describe this for anycase.

    • After you installed by conda-forge all mss dependencies by conda install mss uninstall mss from your env (conda remove mss --force).
    • Add the path of your development mss directory to $PYTHONPATH
    • Verify by pytest in your mss directory that tests are executed
    • python workspace/mss/mslib/mswms/demodata.py (see output on screen)
    • python workspace/mss/mslib/mswms/mswms.py
    • python workspace/mss/mslib/msui/mss_pyui.py
  • What type of source control do you use?

  • Which branch have I to use?

    We have two branches in the project.

    • stable is meant for bugfixes only of the current major release.
    • develop is for all kind of development. This is the branch which is used for new features and API changes. develop should always be in a functional state. If you work on something you make a new branch based on develop in your repository. Of course if you do a bug fix for a stable release this has to be done in a branch based of stable. In case of doubt ask one of the mentors.
  • What's the process for submitting your first bug fix?

    We like to have a fork of the project, creating a branch based on the develop/stable branch, claiming an issue, working on that issue, talking about that, sending a pull request

  • Where should students look to find easy issues to try out?

    look for "First Issue" labeled Issues