Skip to content

Commit 660b510

Browse files
authored
Merge pull request #109 from saxbophone/develop
v0.19.1 - A Little bit of polish
2 parents ec168c9 + 5f45992 commit 660b510

File tree

6 files changed

+146
-10
lines changed

6 files changed

+146
-10
lines changed

.travis.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
language: c
2+
# build matrix with both OSes and Compilers
3+
os:
4+
- linux
5+
- osx
6+
compiler:
7+
- clang
8+
# commenting out gcc until installing GCC v5.x+ actually works on Travis CI
9+
# - gcc
10+
# exclude gcc on osx as this always points to clang
11+
matrix:
12+
exclude:
13+
- os: osx
14+
compiler: gcc
15+
cache:
16+
- ccache
17+
addons:
18+
apt:
19+
sources:
20+
- george-edison55-precise-backports # cmake 3.2.3 / doxygen 1.8.3
21+
packages:
22+
- cmake
23+
- cmake-data
24+
# commenting out gcc until installing GCC v5.x+ actually works on Travis CI
25+
# want gcc 5.x as 4.x gives incorrect warnings
26+
# - gcc-5
27+
# branches safelist
28+
branches:
29+
only:
30+
- master
31+
- develop
32+
- /^test\/.*$/
33+
before_script:
34+
- cmake .
35+
script:
36+
- make -j -k
37+
- ctest -V

CLA_INDIVIDUAL.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
### libsaxbospiral Individual Contributor Assignment Agreement
2+
3+
Thank you for your interest in contributing to libsaxbospiral ("We" or "Us").
4+
5+
This contributor agreement ("Agreement") documents the rights granted by contributors to Us. To make this document effective, please sign it and send it to Us by email, following the instructions at [https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md](https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md). This is a legally binding document, so please read it carefully before agreeing to it. The Agreement may cover more than one software project managed by Us.
6+
7+
#### 1. Definitions
8+
9+
"You" means the individual who Submits a Contribution to Us.
10+
11+
"Contribution" means any work of authorship that is Submitted by You to Us in which You own or assert ownership of the Copyright. If You do not own the Copyright in the entire work of authorship, please follow the instructions in [https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md](https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md).
12+
13+
"Copyright" means all rights protecting works of authorship owned or controlled by You, including copyright, moral and neighboring rights, as appropriate, for the full term of their existence including any extensions by You.
14+
15+
"Material" means the work of authorship which is made available by Us to third parties. When this Agreement covers more than one software project, the Material means the work of authorship to which the Contribution was Submitted. After You Submit the Contribution, it may be included in the Material.
16+
17+
"Submit" means any form of electronic, verbal, or written communication sent to Us or our representatives, including but not limited to electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, Us for the purpose of discussing and improving the Material, but excluding communication that is conspicuously marked or otherwise designated in writing by You as "Not a Contribution."
18+
19+
"Submission Date" means the date on which You Submit a Contribution to Us.
20+
21+
"Effective Date" means the date You execute this Agreement or the date You first Submit a Contribution to Us, whichever is earlier.
22+
23+
#### 2. Grant of Rights
24+
25+
##### 2.1 Copyright Assignment
26+
27+
(a) At the time the Contribution is Submitted, You assign to Us all right, title, and interest worldwide in all Copyright covering the Contribution; provided that this transfer is conditioned upon compliance with Section 2.3.
28+
29+
(b) To the extent that any of the rights in Section 2.1(a) cannot be assigned by You to Us, You grant to Us a perpetual, worldwide, exclusive, royalty-free, transferable, irrevocable license under such non-assigned rights, with rights to sublicense through multiple tiers of sublicensees, to practice such non-assigned rights, including, but not limited to, the right to reproduce, modify, display, perform and distribute the Contribution; provided that this license is conditioned upon compliance with Section 2.3.
30+
31+
(c) To the extent that any of the rights in Section 2.1(a) can neither be assigned nor licensed by You to Us, You irrevocably waive and agree never to assert such rights against Us, any of our successors in interest, or any of our licensees, either direct or indirect; provided that this agreement not to assert is conditioned upon compliance with Section 2.3.
32+
33+
(d) Upon such transfer of rights to Us, to the maximum extent possible, We immediately grant to You a perpetual, worldwide, non-exclusive, royalty-free, transferable, irrevocable license under such rights covering the Contribution, with rights to sublicense through multiple tiers of sublicensees, to reproduce, modify, display, perform, and distribute the Contribution. The intention of the parties is that this license will be as broad as possible and to provide You with rights as similar as possible to the owner of the rights that You transferred. This license back is limited to the Contribution and does not provide any rights to the Material.
34+
35+
##### 2.2 Patent License
36+
37+
For patent claims including, without limitation, method, process, and apparatus claims which You own, control or have the right to grant, now or in the future, You grant to Us a perpetual, worldwide, non-exclusive, transferable, royalty-free, irrevocable patent license, with the right to sublicense these rights to multiple tiers of sublicensees, to make, have made, use, sell, offer for sale, import and otherwise transfer the Contribution and the Contribution in combination with the Material (and portions of such combination). This license is granted only to the extent that the exercise of the licensed rights infringes such patent claims; and provided that this license is conditioned upon compliance with Section 2.3.
38+
39+
##### 2.3 Outbound License
40+
41+
Based on the grant of rights in Sections 2.1 and 2.2, if We include Your Contribution in a Material, We may license the Contribution under any license, including copyleft, permissive, commercial, or proprietary licenses. As a condition on the exercise of this right, We agree to also license the Contribution under the terms of the license or licenses which We are using for the Material on the Submission Date.
42+
43+
##### 2.4 Moral Rights.
44+
45+
If moral rights apply to the Contribution, to the maximum extent permitted by law, You waive and agree not to assert such moral rights against Us or our successors in interest, or any of our licensees, either direct or indirect.
46+
47+
##### 2.5 Our Rights.
48+
49+
You acknowledge that We are not obligated to use Your Contribution as part of the Material and may decide to include any Contribution We consider appropriate.
50+
51+
##### 2.6 Reservation of Rights.
52+
53+
Any rights not expressly assigned or licensed under this section are expressly reserved by You.
54+
55+
#### 3. Agreement
56+
57+
You confirm that:
58+
59+
(a) You have the legal authority to enter into this Agreement.
60+
61+
(b) You own the Copyright and patent claims covering the Contribution which are required to grant the rights under Section 2.
62+
63+
(c) The grant of rights under Section 2 does not violate any grant of rights which You have made to third parties, including Your employer. If You are an employee, You have had Your employer approve this Agreement or sign the Entity version of this document. If You are less than eighteen years old, please have Your parents or guardian sign the Agreement.
64+
65+
(d) You have followed the instructions in [https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md](https://github.com/saxbophone/libsaxbospiral/blob/master/CONTRIBUTING.md), if You do not own the Copyright in the entire work of authorship Submitted.
66+
67+
#### 4. Disclaimer
68+
69+
EXCEPT FOR THE EXPRESS WARRANTIES IN SECTION 3, THE CONTRIBUTION IS PROVIDED "AS IS". MORE PARTICULARLY, ALL EXPRESS OR IMPLIED WARRANTIES INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE EXPRESSLY DISCLAIMED BY YOU TO US AND BY US TO YOU. TO THE EXTENT THAT ANY SUCH WARRANTIES CANNOT BE DISCLAIMED, SUCH WARRANTY IS LIMITED IN DURATION TO THE MINIMUM PERIOD PERMITTED BY LAW.
70+
71+
#### 5. Consequential Damage Waiver
72+
73+
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT WILL YOU OR US BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF ANTICIPATED SAVINGS, LOSS OF DATA, INDIRECT, SPECIAL, INCIDENTAL, CONSEQUENTIAL AND EXEMPLARY DAMAGES ARISING OUT OF THIS AGREEMENT REGARDLESS OF THE LEGAL OR EQUITABLE THEORY (CONTRACT, TORT OR OTHERWISE) UPON WHICH THE CLAIM IS BASED.
74+
75+
#### 6. Miscellaneous
76+
77+
##### 6.1
78+
79+
This Agreement will be governed by and construed in accordance with the laws of the United Kingdom excluding its conflicts of law provisions. Under certain circumstances, the governing law in this section might be superseded by the United Nations Convention on Contracts for the International Sale of Goods ("UN Convention") and the parties intend to avoid the application of the UN Convention to this Agreement and, thus, exclude the application of the UN Convention in its entirety to this Agreement.
80+
81+
##### 6.2
82+
83+
This Agreement sets out the entire agreement between You and Us for Your Contributions to Us and overrides all other agreements or understandings.
84+
85+
##### 6.3
86+
87+
If You or We assign the rights or obligations received through this Agreement to a third party, as a condition of the assignment, that third party must agree in writing to abide by all the rights and obligations in the Agreement.
88+
89+
##### 6.4
90+
91+
The failure of either party to require performance by the other party of any provision of this Agreement in one situation shall not affect the right of a party to require such performance at any time in the future. A waiver of performance under a provision in one situation shall not be considered a waiver of the performance of the provision in the future or a waiver of the provision in its entirety.
92+
93+
##### 6.5
94+
95+
If any provision of this Agreement is found void and unenforceable, such provision will be replaced to the extent possible with a provision that comes closest to the meaning of the original provision and which is enforceable. The terms and conditions set forth in this Agreement shall apply notwithstanding any failure of essential purpose of this Agreement or any limited remedy to the maximum extent possible under law.
96+
97+
--------
98+
99+
##### Harmony (HA-CAA-I-ANY) Version 1.0

CONTRIBUTING.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
Thanks for considering contributing to libsaxbospiral!
44

5+
To get started, [sign the Contributor License Agreement](https://www.clahub.com/agreements/saxbophone/libsaxbospiral).
6+
7+
> [A copy of the CLA](CLA_INDIVIDUAL.md) is also available in this repository.
8+
59
Here are some tips and general info about contributing to this project. Following these tips will increase the likelihood of getting a speedy PR :smile:
610

711
## Checklist
@@ -29,10 +33,4 @@ In addition, please make sure:
2933

3034
The unit tests for libsaxbospiral currently all reside in one C source file, `tests.c`. This isn't ideal, and I'm planning to clean these up at some point. Build and run the unit tests when you first pull down the code, rebuild and run them again when you've made your changes. Changes adding larger pieces of functionality will likely have additional tests requested for them, or an offer made to write the tests for them.
3135

32-
Pull requests will also *soon* be going through [Travis CI](https://travis-ci.org/) for automated testing.
33-
34-
## Transfer of Copyright
35-
36-
I've yet to create a CLA (Contributor License Agreement), but I will likely be doing so soon and definitely when I start getting external contributions.
37-
38-
This will likely involve aggreeing of transfer of copyright ownership of contributed work to me (Joshua Saxby/@saxbophone), so I can be in the best position to defend copyright claims against me and also allow for dual-licensing should someone find this commercially valuable.
36+
Pull requests also go through [Travis CI](https://travis-ci.org/) for automated testing.

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# libsaxbospiral ![libsaxbospiral](libsaxbospiral.png "libsaxbospiral")
22

3-
![AGPL v3 Logo](agplv3-155x51.png "A logo used to show the AGPL v3.0 License")
3+
![AGPL v3 Logo](agplv3-88x31.png "A logo used to show the AGPL v3.0 License") [![Build Status](https://travis-ci.org/saxbophone/libsaxbospiral.svg?branch=develop)](https://travis-ci.org/saxbophone/libsaxbospiral)
44

55
Experimental generation of 2D spiralling lines based on input binary data.
66

@@ -16,6 +16,8 @@ When this is given as input data to the algorithm, the output is the shape shown
1616

1717
The algorithm is not limited to text however - any form of input binary data will work to produce a resulting figure, although the length of input data currently is a limiting factor in getting speedy results, if perfection is desired.
1818

19+
Although this project doesn't work in sprints, there is a [*sprint board*](https://github.com/saxbophone/libsaxbospiral/projects/1), which is used for organising issues.
20+
1921
## Please Note
2022

2123
- This is a library only. If you're looking for something that is immediately usable for the end-user, you probably want to look at [sxbp](https://github.com/saxbophone/sxbp) instead, which is a command-line program I wrote which uses libsaxbospiral to render input binary files to PNG images.
@@ -30,7 +32,7 @@ A full verbatim of this license may be found in the [LICENSE](LICENSE) file in t
3032

3133
Note that as well as being under the same copyleft protections as the GPL License, the AGPL enforces these protections further by **including provision of the software via a network service (such as a website) as one of its definitions of distribution**, hence requiring those who integrate libsaxbospiral into their website or other network service to also release the software into which they are integrating libsaxbospiral under this same license (AGPLv3).
3234

33-
## Building + Installing
35+
## Building
3436

3537
Libsaxbospiral can be built without installing for test purposes and for general usage, however if you plan on writing programs that use it I recommend you install it so it will be in your system's standard library and header include locations.
3638

@@ -48,7 +50,7 @@ You will need:
4850
4951
> Additionally, it is of worth noting that this library has only been thoroughly tested and developed on **Ubuntu GNU/Linux** with **GCC v5.4.0** and **Clang 3.8.0**. Although every effort has been made to make it as cross-platform as possible (including quite strict **ISO C 99** compliance), **Your Mileage May Vary**. Bug Reports and Patches for problems running on other systems, particularly **Microsoft Windows** and **Mac OSX** are most welcome.
5052
51-
## Recommended Library Build
53+
### Recommended Library Build
5254

5355
Invoke CMake within the root of this repository, with these arguments to make CMake build the library in release mode (with full optimisation) and as a shared library:
5456

agplv3-155x51.png

-3.47 KB
Binary file not shown.

agplv3-88x31.png

1.84 KB
Loading

0 commit comments

Comments
 (0)