Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
calibra-opensource committed Jun 17, 2019
0 parents commit 5e034dd
Show file tree
Hide file tree
Showing 1,063 changed files with 138,786 additions and 0 deletions.
Binary file added .assets/libra.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
39 changes: 39 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
version: 2
jobs:
build:
docker:
- image: circleci/rust:stretch
resource_class: xlarge
steps:
- checkout
- run:
name: Version Information
command: rustc --version; cargo --version; rustup --version
- run:
name: Install Dependencies
command: |
sudo sh -c 'echo "deb http://deb.debian.org/debian stretch-backports main" > /etc/apt/sources.list.d/backports.list'
sudo apt-get update
sudo apt-get install -y protobuf-compiler/stretch-backports cmake golang curl
sudo apt-get clean
sudo rm -r /var/lib/apt/lists/*
rustup component add clippy rustfmt
- run:
name: Setup Env
command: |
echo 'export TAG=0.1.${CIRCLE_BUILD_NUM}' >> $BASH_ENV
echo 'export IMAGE_NAME=myapp' >> $BASH_ENV
- run:
name: Linting
command: |
./scripts/clippy.sh
cargo fmt -- --check
- run:
name: Build All Targets
command: RUST_BACKTRACE=1 cargo build -j 16 --all --all-targets
- run:
name: Run All Unit Tests
command: cargo test --all --exclude testsuite
- run:
name: Run All End to End Tests
command: RUST_TEST_THREADS=2 cargo test --package testsuite
3 changes: 3 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.git/
**/.terraform/
target/
12 changes: 12 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Ensure that text files that any contributor introduces to the repository
# have their line endings normalized to LF
* text=auto

# All known text filetypes
*.md text
*.proto text
*.rs text
*.sh text eol=lf
*.toml text
*.txt text
*.yml text
43 changes: 43 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
name: "\U0001F41B Bug report"
about: Create a bug report to help improve Libra Core
title: "[Bug]"
labels: bug
assignees: ''

---

# 🐛 Bug

<!-- A clear and concise description of what the bug is.
To report a security issue, please email [email protected]. -->

## To reproduce

** Code snippet to reproduce **
```rust
# Your code goes here
# Please make sure it does not require any external dependencies
```

** Stack trace/error message **
```
// Paste the output here
```

## Expected Behavior

<!-- A clear and concise description of what you expected to happen. -->

## System information

**Please complete the following information:**
- <!-- Libra Version -->
- <!-- Rust Version -->
- <!-- Computer OS -->


## Additional context

Add any other context about the problem here.
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: "\U0001F680 Feature request"
about: Suggest a new feature in Libra Core
title: "[Feature Request]"
labels: enhancement
assignees: ''

---

# 🚀 Feature Request

<!-- A clear and concise description of the feature you are requesting -->

## Motivation

**Is your feature request related to a problem? Please describe.**
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
<!-- Please link to any relevant issues or other PRs! -->

## Pitch

**Describe the solution you'd like**
<!-- A clear and concise description of what you want to happen. -->

**Describe alternatives you've considered**
<!-- A clear and concise description of any alternative solutions or features you've considered. -->

**Are you willing to open a pull request?** (See [CONTRIBUTING](../CONTRIBUTING.md))

## Additional context

<!-- Add any other context or screenshots about the feature request here. -->
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/questions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: ❓ Questions/Help
about: If you have questions, please check Discourse
---

## ❓ Questions and Help

### Please note that this issue tracker is not a help form and this issue will be closed.

Please contact the development team on [Discourse](https://community.libra.org)
21 changes: 21 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<!--
Thank you for sending a PR. We appreciate you spending time to help improve the Libra project.
The project is undergoing daily changes. Pull Requests will be reviewed and responded to as time permits.
-->

## Motivation

(Write your motivation for proposed changes here.)

### Have you read the [Contributing Guidelines on pull requests](https://github.com/libra/libra/master/CONTRIBUTING.md#pull-requests)?

(Write your answer here.)

## Test Plan

(Share your test plan here. If you changed code, please provide us with clear instrutions for verifying that your changes work.)

## Related PRs

(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/libra/website, and link to your PR here.)
33 changes: 33 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Rust specific ignores
/target
**/*.rs.bk
# Cargo.lock is needed for deterministic testing and repeatable builds.
#
# Having it in the repo slows down development cycle.
#
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock

# Ignore generated files in proto folders
**/proto/*.rs
!**/proto/mod.rs
!**/proto/converter.rs
**/proto/*/*.rs
!**/proto/*/mod.rs
!**/proto/*/converter.rs

# IDE
.idea
.idea/*
*.iml
.vscode

# Ignore wallet mnemonic files used for deterministic key derivation
*.mnemonic

# Generated Parser File by LALRPOP
language/compiler/src/parser/syntax.rs
language/move_ir/

# GDB related
**/.gdb_history
3 changes: 3 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Code of Conduct

The Libra Core project has adopted a Code of Conduct that we expect project participants to adhere to. Please [read the full text](https://developers.libra.org/docs/policies/code-of-conduct) so that you can and understand what actions will and will not be tolerated.
55 changes: 55 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Contributing to Libra

Our goal is to make contributing to the Libra project easy and transparent.

> **Note**: As the Libra Core project is currently an early-stage prototype, it is undergoing rapid development. While we welcome contributions, before making substantial contributions be sure to discuss them in the Discourse forum to ensure that they fit into the project roadmap.
## On Contributing


### Libra Core

To contribute to the Libra Core implementation, first start with the proper development copy.

To get the development installation with all the necessary dependencies for linting, testing, and building the documentation, run the following:
```bash
git clone https://github.com/libra/libra.git
cd libra
./scripts/dev_setup.sh
cargo build
cargo test
```

## Our Development Process

#### Code Style, Hints, and Testing

Refer to our [Coding Guidelines](https://developers.libra.org/docs/coding-guidelines) for detailed guidance about how to contribute to the project.

#### Documentation

Libra's website is also open source (the
code can be found in this [repository](https://github.com/libra/website/)).
It is built using [Docusaurus](https://docusaurus.io/):

If you know Markdown, you can already contribute! This lives in the the [website repo](https://github.com/libra/website).

## Pull Requests
During the initial phase of heavy development, we plan to only audit and review pull requests. As the codebase stabilizes, we will be better able to accept pull requests from the community.

1. Fork the repo and create your branch from `master`.
2. If you have added code that should be tested, add unit tests.
3. If you have changed APIs, update the documentation. Make sure the
documentation builds.
4. Ensure the test suite passes.
5. Make sure your code passes both linters.
6. If you haven't already, complete the Contributor License Agreement (CLA).
7. Submit your pull request.

## Contributor License Agreement

For pull request to be accepted by any Libra projects, a CLA must be signed. You will only need to do this once to work on any of Libra's open source projects. Individuals contributing on their own behalf can sign the [Individual CLA](https://github.com/libra/libra/blob/master/contributing/individual-cla.pdf). If you are contributing on behalf of your employer, please ask them to sign the [Corporate CLA](https://github.com/libra/libra/blob/master/contributing/corporate-cla.pdf).

## Issues

Libra uses [GitHub issues](https://github.com/libra/libra/issues) to track bugs. Please include necessary information and instructions to reproduce your issue.
67 changes: 67 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
[workspace]

members = [
"admission_control/admission_control_service",
"admission_control/admission_control_proto",
"client",
"client/libra_wallet",
"common/canonical_serialization",
"common/crash_handler",
"common/debug_interface",
"common/executable_helpers",
"common/failure_ext",
"common/grpcio-client",
"common/jemalloc",
"common/logger",
"common/metrics",
"common/proptest_helpers",
"common/proto_conv",
"config",
"config/config_builder",
"config/generate_keypair",
"consensus",
"crypto/legacy_crypto",
"crypto/nextgen_crypto",
"crypto/secret_service",
"execution/execution_client",
"execution/execution_proto",
"execution/execution_service",
"execution/executor",
"language/bytecode_verifier",
"language/bytecode_verifier/invalid_mutations",
"language/functional_tests",
"language/compiler",
"language/stdlib/natives",
"language/vm",
"language/vm/vm_runtime",
"language/vm/cost_synthesis",
"language/vm/vm_runtime/vm_cache_map",
"language/vm/vm_genesis",
"language/vm/vm_runtime/vm_runtime_tests",
"libra_node",
"libra_swarm",
"network",
"network/memsocket",
"network/netcore",
"network/noise",
"mempool",
"storage/accumulator",
"storage/libradb",
"storage/schemadb",
"storage/scratchpad",
"storage/sparse_merkle",
"storage/storage_client",
"storage/state_view",
"storage/storage_proto",
"storage/storage_service",
"testsuite",
"testsuite/libra_fuzzer",
"types",
"vm_validator",
]

[profile.release]
debug = true

[profile.bench]
debug = true
Loading

0 comments on commit 5e034dd

Please sign in to comment.