Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Contributing

<!-- Use this text if your project is not accepting contributions. -->

Maintainers are not currently accepting patches and contributions to this project.

<!-- Use this text if your project is accepting contributions. -->

Maintainers are accepting patches and contributions to this project.

Please note the following contribution guidelines.

## Contributor License Agreement

Contributions to this project must be accompanied by a signed [Contributor Agreement](ContributorAgreement.txt).
You (or your employer) retain the copyright to your contribution, this simply gives us permission to use and redistribute your contributions as part of the project.

## Update documentation

Project documentation is stored in the `website` directory.
This project welcomes pull requests sugggesting updates to this documentation.
See the documentation [README](./website/README.md) for details.

## Code reviews

All submissions, including submissions by project members, require review.
We use GitHub pull requests for this purpose.
Consult [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more information on using pull requests.
56 changes: 56 additions & 0 deletions ContributorAgreement.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
Contributor Agreement

Version 1.1

Contributions to this software are accepted only when they are
properly accompanied by a Contributor Agreement. The Contributor
Agreement for this software is the Developer's Certificate of Origin
1.1 (DCO) as provided with and required for accepting contributions
to the Linux kernel.

In each contribution proposed to be included in this software, the
developer must include a "sign-off" that denotes consent to the
terms of the Developer's Certificate of Origin. The sign-off is
a line of text in the description that accompanies the change,
certifying that you have the right to provide the contribution
to be included. For changes provided in source code control (for
example, via a Git pull request) the sign-off must be included in
the commit message in source code control. For changes provided
in email or issue tracking, the sign-off must be included in the
email or the issue, and the sign-off will be incorporated into the
permanent commit message if the contribution is accepted into the
official source code.

If you can certify the below:

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.

then you just add a line saying

Signed-off-by: Random J Developer <random@developer.example.org>

using your real name (sorry, no pseudonyms or anonymous contributions.)
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ This project is written entirely in HTML, CSS, and Javascript.
Installation is therefore a matter of copying files to a webserver.

## Contributing
Maintainers are not currently accepting patches and contributions to this project.
Maintainers are accepting patches and contributions to this project.
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on contirbuting to this project.

## License
Except for the the contents of the `/images` folder, this project is licensed under the Apache 2.0 License.
Expand Down
240 changes: 240 additions & 0 deletions contributor-handbook.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,240 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>SAS Open Source Contributor Handbook</title>
<meta name="description" content="A guide to contributing to SAS's open source projects.">
<meta name="author" content="SAS Institute, Inc.">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" href="images/s-mark.png">
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/sassoftware.css">
<link rel="preload" href="https://www.sas.com/includes/fonts/sas/Anova-Regular.woff2" as="font" type="font/woff2" crossorigin/>
<link rel="preload" href="https://www.sas.com/includes/fonts/sas/Anova-Bold.woff2" as="font" type="font/woff2" crossorigin/>
<link rel="preload" href="https://www.sas.com/includes/fonts/sas/Anova-Light.woff2" as="font" type="font/woff2" crossorigin/>
</head>

<!-- Primary page layout -->

<body>

<!-- Banded section -->

<div class="header">
<h1>SAS Open Source Contributor Handbook</h1>
<p>Contributing to <a href="https://sassoftware.github.io/" title="sassoftware.github.io">open source projects from SAS Institute Inc.</a></p>
</div>

<!-- Body section -->

<div class="grid-container halves">
<div>
<img src="images/sas-screens.png">
</div>
<div>
<h2>Welcome, contributors</h2>
<hr>
<p class="u-embiggen">SAS is the founder and future of analytics.</p>
<p class="u-embiggen">When you contribute to SAS's open source projects, you'll build tools that help people make better decisions, faster.</p>
</div>
</div>

<!-- Banded section -->

<div class="divider">
<div>
<img class="u-img-divider" src="images/standard-section-divider.png">
</div>
</div>

<!-- Body section -->

<div class="grid-container halves">
<div>
<h2>Where to start</h2>
<p><a href="https://github.com/sassoftware" title="github.com/sassoftware">SAS Software on GitHub</a> is home to more than 200 open source projects from SAS. Find open projects, plugins, examples, and other resources for extending and integrating SAS's powerful tools with open source languages and frameworks.</p>
<a class="button button-classic" href="https://sassoftware.github.io">Browse projects</a>
</div>
<div>
<img class="u-half-width" src="images/icon-location.png">
</div>
</div>

<!-- Banded section -->

<div class="divider">
<div>
<img class="u-img-divider" src="images/standard-section-divider.png">
</div>
</div>

<!-- Body section -->

<div class="grid-container halves">
<div>
<img class="u-half-width" src="images/icon-guidelines.png">
</div>
<div>
<h2>Read the guidelines</h2>
<p>If a SAS open source project is accepting contributions, the project repository will contain a <span style="font-family:monospace;">CONTRIBUTING.md</span> file. Read that file carefully. It will contain important instructions for contributing to the project. It might also offer details about the project's development and code review processes.</p>
<p>When you understand (and follow) these guidelines, you'll increase the likelihood that project maintainers will accept your contributions.</p>
</div>
</div>

<!-- Banded section -->

<div class="divider">
<div>
<img class="u-img-divider" src="images/standard-section-divider.png">
</div>
</div>

<!-- Body section -->

<div class="grid-container halves">
<div>
<h2>Sign your work</h2>
<p>Everyone contributing to SAS projects must sign <a href="https://github.com/sassoftware/.github/blob/main/ContributorAgreement.txt" tite="ContributoAgreement.txt">SAS's standard contributor agreement</a>, which is built on the <a href="https://developercertificate.org/" title="Developer Certificate of Origin"> Developer Certificate of Origin</a>.
<p>To comply with the agreement and attest to your right to offer your contribution to a SAS project, simply add the following line to your commits:</p>
<pre><code>Signed-off-by: Firstname Lastname &lt;user@mail.com&gt;</code></pre>
<p>For example:</p>
<pre><code>Signed-off-by: Random J Developer &lt;random@developer.example.org&gt;</code></pre>
<p>You can add this line to your commits with this command:</p>
<pre><code>git commit -s</code></pre>
<p>SAS uses the <a href="https://github.com/apps/dco" title="DCO app">DCO app</a> to scan all commits in incoming pull requests and confirm this sign-off. The app will alert you if your commits aren't properly signed-off. It will also offer instructions for remediating the issue and providing proper sign-off. SAS project maintainers won't merge your commit unless you've added proper sign-off.</p>
</div>
<div class="boxed">
<h3>SAS Contributor Agreement</h3>
<p class="u-monospace">Version 1.1</p>
<p class="u-monospace">Contributions to this software are accepted only when they are properly accompanied by a Contributor Agreement. The Contributor Agreement for this software is the Developer's Certificate of Origin 1.1 (DCO) as provided with and required for accepting contributions to the Linux kernel.</p>
<p class="u-monospace">In each contribution proposed to be included in this software, the developer must include a "sign-off" that denotes consent to the terms of the Developer's Certificate of Origin. The sign-off is a line of text in the description that accompanies the change, certifying that you have the right to provide the contribution to be included. For changes provided in source code control (for example, via a Git pull request) the sign-off must be included in the commit message in source code control. For changes provided in email or issue tracking, the sign-off must be included in the email or the issue, and the sign-off will be incorporated into the permanent commit message if the contribution is accepted into the official source code.</p>
<a class="button" href="https://raw.githubusercontent.com/sassoftware/.github/refs/heads/main/ContributorAgreement.txt" tite="ContributoAgreement.txt">Read the full agreement</a>
</div>
</div>

<!-- Banded section -->

<div class="divider">
<div>
<img class="u-img-divider" src="images/standard-section-divider.png">
</div>
</div>

<!-- Body section -->

<div class="grid-container thirds">
<div>
<h2>Submit for review</h2>
<hr>
<p class="u-embiggen">Each of SAS's open source projects has its own team of maintainers at SAS. Each one therefore has its own set of code conventions and review process, too.</p>
</div>
<div>
<h3>What to expect</h3>
<p>A project's <span style="font-family:monospace;">CONTRIBUTING.md</span> file will detail the project's code review processes. All contributions require review from SAS project maintainers. They may run unit tests, development tests, integrations tests, and security scans using internal SAS infrastructure. In this case, they may not merge a contribution directly from GitHub; instead, they'll work with submissions internally first, vetting them to ensure they meet SAS standards.</p>
</div>
<div>
<h3>Our promise</h3>
<p>We’ll always do our best to work with contributors in public issues and pull requests; however, to ensure our code meets our internal compliance standards, we may need to incorporate your submission into a solution we push ourselves. And we work to ensure all contributors receive appropriate recognition for their contributions—at the very least, by acknowledging contributors in our release notes.</p>
</div>
</div>

<!-- Banded section -->

<div class="divider">
<div>
<img class="u-img-divider" src="images/standard-section-divider.png">
</div>
</div>

<!-- Body section -->

<div class="grid-container halves">
<div>
<h2>Let's get started</h2>
<p>Browse the <a href="https://github.com/sassoftware" title="SAS Software organization on GitHub">SAS Software organization on GitHub</a>.</p>
</div>
</div>
<div class="grid-container thirds">
<div id="just-launched">
<h4>Just launched</h4>
</div>
<div id="recently-updated">
<h4>Recently updated</h4>
</div>
<div id="most-forked">
<h4>Most forked</h4>
</div>
</div>

<script type="text/javascript" src="js/data.js"></script>
<script type="text/javascript">
function renderRepos(arr, tag, count) {
const list = document.getElementById(tag);
function makeElem(arrItem, arrIndex) {
let p = document.createElement('p');
let name = arrItem['name'];
let description = arrItem['description'];

/*<p><a href="PROJECT_URL" title="PROJECT_NAME">PROJECT_NAME</a><br />PROJECT_DESCRPTION</p>*/

p.innerHTML = `<p><a href="https://github.com/sassoftware/${name}" title="${name}">${name}</a><br />${description}</p>`;
console.log(arrItem);
return p;
}
let i = 0;
arr.forEach((item, index) => {
if (i < count){
try {
const listElement = makeElem(item, index);
list.append(listElement);
console.log("*");
} catch (Error) {
console.log(Error);
}}
i += 1;
});
}

data.sort(function(a,b){
if ( a['created_at'] < b['created_at'] )
{
return 1;
}
return -1;
});
renderRepos(data, "just-launched", 4);

data.sort(function(a,b){
if ( a['pushed_at'] < b['pushed_at'] )
{
return 1;
}
return -1;
});
renderRepos(data, "recently-updated", 4);

data.sort(function(a,b){
if ( a['forks_count'] < b['forks_count'] )
{
return 1;
}
return -1;
});
renderRepos(data, "most-forked", 4);

</script>

<!-- Footer section -->

<div class="footer">
<p>©2024 <a href="https://www.sas.com/" title="sas.com">SAS Institute Inc.</a> All Rights Reserved.</p>
<ul>
<li><a href="https://github.com/sassoftware/sassoftware.github.io" title="sasssoftware.github.io">Site Code</a></li>
<li><a href="https://github.com/sassoftware" title="github.com/sassoftware">SAS on GitHub</a></li>
<li><a href="https://www.sas.com/en_us/company-information/why-sas.html" title="sas.com">About SAS</a></li>
</ul>
</div>

<!-- Document end-->
</body>
</html>
Loading