Skip to content

Latest commit

 

History

History
95 lines (62 loc) · 4.78 KB

project_setup.md

File metadata and controls

95 lines (62 loc) · 4.78 KB

Project Setup

Here we provide some details about the project setup. Most of the choices are explained in the guide. Links to the relevant sections are included below. Feel free to remove this text when the development of the software package takes off.

For a quick reference on software development, we refer to the software guide checklist.

Package management and dependencies

You can use either pip or conda for installing dependencies and package management. This repository does not force you to use one or the other, as project requirements differ. For advice on what to use, please check the relevant section of the guide.

  • Runtime dependencies should be added to setup.cfg in the install_requires list under [options].
  • Development dependencies should be added to setup.cfg in one of the lists under [options.extras_require].

Packaging/One command install

You can distribute your code using PyPI. The guide can help you decide which tool to use for packaging.

Testing and code coverage

Documentation

Coding style conventions and code quality

Continuous code quality

Sonarcloud is used to perform quality analysis and code coverage report

  • sonar-project.properties is the SonarCloud configuration file
  • .github/workflows/sonar-cloud.yml is the GitHub action workflow which performs the SonarCloud analysis

Package version number

  • We recommend using semantic versioning.
  • For convenience, the package version is stored in a single place: nplinker/.bumpversion.cfg.
  • Don't forget to update the version number before making a release!

Logging

CHANGELOG.md

CITATION.cff

  • To allow others to cite your software, add a CITATION.cff file
  • It only makes sense to do this once there is something to cite (e.g., a software release with a DOI).
  • Follow the making software citable section in the guide.

CODE_OF_CONDUCT.md

CONTRIBUTING.md

MANIFEST.in

NOTICE