Skip to content

parsley72/libqtaws

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Libqtaws

Build Status Coverage Status LGPLv3 License

Libqtaws is an open-source (LGPL) library for consuming Amazon Web Services (AWS) from Qt applications.

The library is in very early stages of development; only the AWS signature code and AWS endpoints information has been implemented so far, but what has been implemented is 100% documented (including the internal code) and currently has 100% unit test line coverage.

Specific AWS services are being implemented in the order in which they are of interest to me, but of course, anyone can contribute implementations for any services that are more important to them. Also, feel free to use the issue tracker to show interest in particular AWS services being implemented.

Next steps are roughly:

  1. add Amazon's official V4 signature test suite to the unit tests (done)
  2. implement base AwsService class(es) (in progress)
  3. SQS (in progress)
  4. SNS
  5. DynamoDB
  6. S3, EC2, Elasticache, ..., etc.

Requirements

Qt 5.1

Currently, libqtaws requires Qt 5.1+ This is because the library uses Qt's QMessageAuthenticationCode class for generating HMAC codes for AWS request signatures, and that class was not added until Qt 5.1.0.

It is possible to make the library work with Qt 5.0 by backporting QMessageAuthenticationCode from Qt 5.1 to Qt 5.0 - indeed, this is what this project does for travis-ci support (see .travis.yml for example), but that is not officially supported (might become so, if enough people show interest).

Note, the library will soon depend on Qt5's built-in JSON support, so it is unlikely that libqtaws will ever officially support earlier version of Qt, such as Qt4.8.

Building

This library supports out-of-source builds (highly recommended), for example:

mkdir -p <tmp-build-dir>
pushd <tmp-build-dir>
qmake -Wall -Wlogic -Wparser CONFIG+=debug_and_release <path-to-cloned-repo>
make # or `nmake` on Windows
make check
popd

API Documentation

See the doxygen-generated API documentation.

There's also internal documentation for those interested in the internal library implementation.

Test Coverage

See the test coverage report.

About

AWS library for Qt

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 98.2%
  • QMake 1.5%
  • C 0.3%