How to Contribute to PVLIB

Solar Panels Figure 1: PVLIB

Introduction

If you are not familiar with Git and Github it might be a daunting task to contritube code to pvlib. This is a step-by-step guide that should help. Please note there are many different ways of interacting with software repositories and the best way to do something may change depending on the open source project maintainers, the context of the code itself, or the team that you work in. This workflow I believe is reasonable for a change like the one that I present, but may not work well for all types of changes.

Definitions

Things you should know before embarking

Github Account

First you need to make an account on Github. Github is an online code respository that stores software projects in the cloud. There are many alternatives to Github which is owned by Microsoft, for example Azure Devops, also owned by Microsoft, Atlassian’s Bitbucket, Gitlab, Gitea, etc. but most of the open source community has landed on Github as the defacto standard for managing software repositories.

“Forking” pvlib

Once you have an account on github, you will want to create a fork for the pvlib respository. A fork is a copy of an existing project with a different main owner. We will be forking pvlib (owned by the maintainers) in order to create a special version of pvlib owned by us.

fork

fork pvlib

clone pvlib

git clone

git clone success

Creating a new function in pvlib

vscode new file

transformer function

vscode commit

vscode git graph

Writing a test for the function

vscode test.py

alt text

Creating a Pull Request (PR)

alt text

alt text

alt text

Waiting for Comments

· pvlib