Developer Information

The goal behind type annotations is to make developer lives easier by introducing optional static typing for Python programs.

This allows you to catch bugs and issues which are related to variable types earlier and faster (aka when you run locally either manually or integrated in your editor / IDE and also as part of you CI/CD build pipeline).

An example of how to use type annotations correctly is shown below.

If you reference an invalid object attribute or a method, you would see an error similar to the one beloe when running mypy:

This is needed because of how Libcloud utilizes meta programming for the and related methods (there is no other way without writing a mypy plugin to achieve that).

Mailing Lists

All of the communication about Libcloud development happens on our mailing lists.

  • - Moderated and low volume mailing list which is only used for distributing important project announcements and updates. (announce-archive)
  • - General mailing list for developers (dev-archive)
  • - Commits messages and other automatically generated notifications go to this mailing list. Keep in mind that unlike the others, this mailing list is fairly noisy. (notifications-archive, )

Archive of old incubator mailing lists:

Issue Tracker

For bug and issue tracking we use Github issues located at https://github.com/apache/libcloud/issues.

Continuous Integration

For continuous integration we use Travis-CI. You can find build reports on the following links:

Travis-CI builder is also integrated with Github which means that if you open a pull request there, Travis-CI will automatically build it.

If you want to validate the build before raising the PR, Travis-CI can be enabled for personal accounts and branches separately.

Test coverage report is automatically generated after every push and can be found at https://codecov.io/github/apache/libcloud?branch=trunk.