Skip to content

Commit

Permalink
First commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
wolfmcnally committed Aug 10, 2020
0 parents commit 21d3511
Show file tree
Hide file tree
Showing 50 changed files with 10,836 additions and 0 deletions.
98 changes: 98 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# Created by https://www.gitignore.io/api/macos

### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# End of https://www.gitignore.io/api/macos

# Created by https://www.gitignore.io/api/c

### C ###
# Prerequisites
*.d

# Object files
*.o
*.ko
*.obj
*.elf

# Linker output
*.ilk
*.map
*.exp

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
*.idb
*.pdb

# Kernel Module Compile Results
*.mod*
*.cmd
.tmp_versions/
modules.order
Module.symvers
Mkfile.old
dkms.conf

# End of https://www.gitignore.io/api/c

*.tar.gz
autom4te.cache
autoscan.log
Makefile
config.log
config.status
configure.scan
config.h
15 changes: 15 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"version": "0.2.0",
"configurations": [
{
// You may need to install the extension "CodeLLDB" for debugging to work on Macs with Catalina.
"name": "Build and Debug",
"type": "lldb",
"request": "launch",
"program": "${workspaceFolder}/test/test",
"args": [],
"cwd": "${workspaceFolder}/test",
"preLaunchTask": "Build"
}
]
}
6 changes: 6 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"files.associations": {
"Makefile.in": "makefile",
"*.h": "c"
}
}
68 changes: 68 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Configure",
"type": "shell",
"command": "./configure",
"problemMatcher": []
},
{
"label": "Build",
"type": "shell",
"command": "make all && dsymutil test/test",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] },
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Test",
"type": "shell",
"command": "make check",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] },
"group": {
"kind": "test",
"isDefault": true
}
},
{
"label": "Distribution Test",
"type": "shell",
"command": "make distcheck",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] },
"group": "test"
},
{
"label": "Distribution",
"type": "shell",
"command": "make dist",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] }
},
{
"label": "Distribution Clean",
"type": "shell",
"command": "make distclean",
"problemMatcher": []
},
{
"label": "Clean",
"type": "shell",
"command": "make clean",
"problemMatcher": []
},
{
"label": "Install",
"type": "shell",
"command": "sudo make install",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] }
},
{
"label": "Uninstall",
"type": "shell",
"command": "sudo make uninstall",
"problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceRoot}/src"] }
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

# Contributor License Agreement

Version 1.0

Name: Wolf McNally

E-Mail: [email protected]

Legal Jurisdiction: Wyoming, United States of America

Project: https://github.com/BlockchainCommons/bc-ur

Date: July 30, 2020

## Purpose

This agreement gives Blockchain Commons, LLC the permission it needs in order to accept my contributions into its open software project and to manage the intellectual property in that project over time.

## License

I hereby license Blockchain Commons, LLC to:

1. do anything with my contributions that would otherwise infringe my copyright in them

2. do anything with my contributions that would otherwise infringe patents that I can or become able to license

3. sublicense these rights to others on any terms they like

## Reliability

I understand that Blockchain Commons will rely on this license. I may not revoke this license.

## Awareness

I promise that I am familiar with legal rules, like ["work made for hire" rules](http://worksmadeforhire.com), that can give employers and clients ownership of intellectual property in work that I do. I am also aware that legal agreements I might sign, like confidential information and invention assignment agreements, will usually give ownership of intellectual property in my work to employers, clients, and companies that I found. If someone else owns intellectual property in my work, I need their permission to license it.

## Copyright Guarantee

I promise not to offer contributions to the project that contain copyrighted work that I do not have legally binding permission to contribute under these terms. When I offer a contribution with permission, I promise to document in the contribution who owns copyright in what work, and how they gave permission to contribute it. If I later become aware that one of my contributions may have copyrighted work of others that I did not have permission to contribute, I will notify Blockchain Commons, in confidence, immediately.

## Patent Guarantee

I promise not to offer contributions to the project that I know infringe patents of others that I do not have permission to contribute under these terms.

## Open Source Guarantee

I promise not to offer contributions that contain or depend on the work of others, unless that work is available under a license that [Blue Oak Council rates bronze or better](https://blueoakconcil.org/list), such as the MIT License, two- or three-clause BSD License, the Apache License Version 2.0, or the Blue Oak Model License 1.0.0. When I offer a contribution containing or depending on others' work, I promise to document in the contribution who licenses that work, along with copies of their license terms.

## Disclaimers

***As far as the law allows, my contributions come as is, without any warranty or condition. Other than under [Copyright Guarantee](#copyright-guarantee), [Patent Guarantee](#patent-guarantee), or [Open Source Guarantee](#open-source-guarantee), I will not be liable to anyone for any damages related to my contributions or this contributor license agreement, under any kind of legal claim.***
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIzBAEBCgAdFiEElDZS7jhEF2DD3DU2S2wvz4lHgK4FAl8ktlIACgkQS2wvz4lH
gK6ohg/9HJd+ZbI2JWE+lgtLPi4IVGLSw2JqS815sb/ykd3IIJs1JMbGMwV9pd1O
61b6atbr7i/nqlYKakttdZysURj5UNAG9Y+SaNGOBaXlRO4ZqkRBEJdcVauzZOP7
IdIe9PXDvEmpgH1r6HYSzv5BJBptCn9YEbeetbIraaSQSejDBOpgG9b7eLT89lU3
ud+fWNBVo0v3V2Za4/p6s6QcEf4ZfP21oYY3b7XO4Y3JY9KObfhFJzf14uz8Rsvc
lEdbScj2Klm+57zybgw9mamVQCGb/2ffqWn18OqlHBNEObjYy//OBY6FJ9/8/XRg
/Yn4udTQmMWJPVwysQBtfsx/kfImURlqwCQGoZgZDj7Vo7r34WDMi1Hrb6wL/wco
T7yk9F87fCh+/o6pQg7GpaSt7nAaYvmWI6Zmtq55zYJXxHuSbR5tWUrycml/0C76
jKTGd5MEHQZ8mGai9Z/6kFg32VGzwx8YQiHtPsyXQ842aB/QPTLw4Wn2E0TyhAQE
KnNRTfaGTs12PijnL/TZogm1sp7nVSYx88OiyPl7VGCu+rnOc43NfV+/H2vzU7Y2
eJIoJZVfBRKc7t23RrjYnRXE8bQxUfdA0J0/SvshAsXBSgtphRJYdjcb19QCNZjR
KOJjlPXcuqVJslPgI4lqoeLFOooU+edu+CVzy9GVJ0psvXBIOnc=
=irDI
-----END PGP SIGNATURE-----
55 changes: 55 additions & 0 deletions CLA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Contributor License Agreement

Version 1.0

Name: `$name`

E-Mail: `$email`

Legal Jurisdiction: Wyoming, United States of America

Project: https://github.com/BlockchainCommons/bc-ur

Date: `$date`

## Purpose

This agreement gives Blockchain Commons, LLC the permission it needs in order to accept my contributions into its open software project and to manage the intellectual property in that project over time.

## License

I hereby license Blockchain Commons, LLC to:

1. do anything with my contributions that would otherwise infringe my copyright in them

2. do anything with my contributions that would otherwise infringe patents that I can or become able to license

3. sublicense these rights to others on any terms they like

## Reliability

I understand that Blockchain Commons will rely on this license. I may not revoke this license.

## Awareness

I promise that I am familiar with legal rules, like ["work made for hire" rules](http://worksmadeforhire.com), that can give employers and clients ownership of intellectual property in work that I do. I am also aware that legal agreements I might sign, like confidential information and invention assignment agreements, will usually give ownership of intellectual property in my work to employers, clients, and companies that I found. If someone else owns intellectual property in my work, I need their permission to license it.

## Copyright Guarantee

I promise not to offer contributions to the project that contain copyrighted work that I do not have legally binding permission to contribute under these terms. When I offer a contribution with permission, I promise to document in the contribution who owns copyright in what work, and how they gave permission to contribute it. If I later become aware that one of my contributions may have copyrighted work of others that I did not have permission to contribute, I will notify Blockchain Commons, in confidence, immediately.

## Patent Guarantee

I promise not to offer contributions to the project that I know infringe patents of others that I do not have permission to contribute under these terms.

## Open Source Guarantee

I promise not to offer contributions that contain or depend on the work of others, unless that work is available under a license that [Blue Oak Council rates bronze or better](https://blueoakconcil.org/list), such as the MIT License, two- or three-clause BSD License, the Apache License Version 2.0, or the Blue Oak Model License 1.0.0. When I offer a contribution containing or depending on others' work, I promise to document in the contribution who licenses that work, along with copies of their license terms.

## Disclaimers

***As far as the law allows, my contributions come as is, without any warranty or condition. Other than under [Copyright Guarantee](#copyright-guarantee), [Patent Guarantee](#patent-guarantee), or [Open Source Guarantee](#open-source-guarantee), I will not be liable to anyone for any damages related to my contributions or this contributor license agreement, under any kind of legal claim.***

---

To sign this Contributor License Agreement, fill in `$name`, `$email`, and `$date` above. Then sign using GPG using the following command `gpg --armor --clearsign --output cla.YOURGITHUBNAME.YOURGPGFINGERPRINT.asc CLA.md`, then either submit your signed Contributor License Agreement to this repo as a GPG signed Pull Request or email it to [[email protected]](mailto:[email protected]).
3 changes: 3 additions & 0 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These owners will be the default owners for everything in this repo.

* @ChristopherA @wolfmcnally
62 changes: 62 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Contributing

We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:

- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer

## We Develop with Github
We use GitHub to host code, to track issues and feature requests, as well as accept Pull Requests.

## Report bugs using Github's [issues](https://github.com/blockchaincommons/bc-ur/issues)
We use GitHub issues to track public bugs.

If you find bugs, mistakes, inconsistencies in this project's code or documents, please let us know by [opening a new issue](./issues), but consider searching through existing issues first to check and see if the problem has already been reported. If it has, it never hurts to add a quick "+1" or "I have this problem too". This helps prioritize the most common problems and requests.

## Write bug reports with detail, background, and sample code
[This is an example](http://stackoverflow.com/q/12488905/180626) of a good bug report by @briandk. Here's [another example from craig.hockenberry](http://www.openradar.me/11905408).

**Great Bug Reports** tend to have:

- A quick summary and/or background
- Steps to reproduce
- Be specific!
- Give sample code if you can. [The stackoverflow bug report](http://stackoverflow.com/q/12488905/180626) includes sample code that *anyone* with a base R setup can run to reproduce what I was seeing
- What you expected would happen
- What actually happens
- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work)

People *love* thorough bug reports. I'm not even kidding.

## Submitting code changes through Pull Requests

Simple Pull Requests to fix typos, document, or fix small bugs are always welcome.

We ask that more significant improvements to the project be first proposed before anybody starts to code as an [issue](./issues) or as a [draft Pull Request](./pulls) (GitHub has a nice new feature for simple Pull Requests called [Draft Pull Requests](https://github.blog/2019-02-14-introducing-draft-pull-requests/). This gives other contributors a chance to point you in the right direction, give feedback on the design, and maybe point out if related work is already under way.

## We Use [Github Flow](https://guides.github.com/introduction/flow/index.html), So All Code Changes Happen Through Pull Requests
Pull Requests are the best way to propose changes to the codebase (we use [Github Flow](https://guides.github.com/introduction/flow/index.html)). We actively welcome your Pull Requests:

1. Fork the repo and create your branch from `master`.
2. If you've added code that should be tested, add tests.
3. If you've changed APIs, update the documentation.
4. Ensure the test suite passes.
5. Make sure your code lints.
6. Issue that Pull Request!

## Any code contributions you make will be under the BSD-2-Clause Plus Patent License
In short, when you submit code changes, your submissions are understood will be available under the same [BSD-2-Clause Plus Patent License](./LICENSE.md) that covers the project. We also ask all code contributors to GPG sign the [Contributor License Agreement (CLA.md)](./CLA.md) to protect future users of this project. Feel free to contact the maintainers if that's a concern.

## Use a Consistent Coding Style
* We indent using two spaces (soft tabs)
* We ALWAYS put spaces after list items and method parameters ([1, 2, 3], not [1,2,3]), around operators (x += 1, not x+=1), and around hash arrows.
* This is open source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.

## References

Portions of this CONTRIBUTING.md document were adopted from best practices of a number of open source projects, including:
* [Facebook's Draft](https://github.com/facebook/draft-js/blob/a9316a723f9e918afde44dea68b5f9f39b7d9b00/CONTRIBUTING.md)
* [IPFS Contributing](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)
Loading

0 comments on commit 21d3511

Please sign in to comment.