Skip to content
This repository has been archived by the owner on Feb 3, 2023. It is now read-only.

Commit

Permalink
Merge pull request #1304 from holochain/release-0.0.12-alpha1
Browse files Browse the repository at this point in the history
Release 0.0.12-alpha1
  • Loading branch information
thedavidmeister committed Apr 21, 2019
2 parents ab6983d + c0d1554 commit 96ce1d0
Show file tree
Hide file tree
Showing 134 changed files with 2,942 additions and 890 deletions.
2 changes: 1 addition & 1 deletion .circleci/Dockerfile..start
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ FROM nixorg/nix:circleci

# keep this matching nix-shell!
ENV NIX_PATH nixpkgs=https://github.com/Holo-Host/nixpkgs-channels/archive/680f9d7ea90dd0b48b51f29899c3110196b0e913.tar.gz
ENV HC_TARGET_PREFIX /tmp/holochain/
ENV HC_TARGET_PREFIX /tmp/holochain

WORKDIR /holochain-rust/build
COPY . .
19 changes: 16 additions & 3 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
Please check one of the following, relating to the [CHANGELOG](https://github.com/holochain/holochain-rust/blob/develop/CHANGELOG.md), which should be updated if relevant
- [ ] my changes to the code affect some exposed aspect of the developer experience, and I have added an item to relevant 'Added, Fixed, Changed, Removed, Deprecated, or Security' heading under the 'Unreleased' heading of the CHANGELOG, with the format `- summary of change [PR#1234](https://github.com/holochain/holochain-rust/pull/1234)`
- [ ] my changes to the code do not affect any exposed aspect of the developer experience
## PR summary

## testing/benchmarking notes

( if any manual testing or benchmarking was/should be done, add notes and/or screenshots here )

## followups

( any new tickets/concerns that were discovered or created during this work but aren't in scope for review here )

## changelog

Please check one of the following, relating to the [CHANGELOG](https://github.com/holochain/holochain-rust/blob/develop/CHANGELOG.md)

- [ ] this is a code change that effects some consumer (e.g. zome developers) of holochain core so there is an 'Unreleased' CHANGELOG item, with the format `- summary of change [PR#1234](https://github.com/holochain/holochain-rust/pull/1234)`
- [ ] this is not a code change, or doesn't effect anyone outside holochain core development
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,4 @@ tmp-test-conductor-config.toml
tmp-*-conductor-config.toml

Cargo.lock
dist/**
81 changes: 0 additions & 81 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,6 @@ _trusty_nodejs: &_trusty_nodejs
node_js:
- "8"

_trusty_bash: &_trusty_bash
dist: trusty
# https://github.com/travis-ci/travis-ci/issues/5175#issuecomment-215016943
language: bash

_cargo_cache_template: &_cargo_cache_template
# manually cache as we manually install rustup
# https://docs.travis-ci.com/user/caching/#rust-cargo-cache
Expand Down Expand Up @@ -177,87 +172,11 @@ _conductor_deploy_template: &_conductor_deploy_template
tags: true
name: $TRAVIS_TAG

_windows_template_lite: &_windows_template_lite
os: windows
language: rust
rust: nightly-2019-01-24-x86_64-pc-windows-msvc
before_install:
- CARGO_INCREMENTAL=1
- RUSTFLAGS="-Z thinlto -C codegen-units=16"
cache:
timeout: 1000
directories:
# only keep target directories
# as we don't keep .cargo everything will be redownloaded every time
# as travis downloads the cache every time, this doesn't make much
# difference, actually it can be a bit faster or slightly slower to pull
# the crates down vs. loading the cache - seems to be an overall benefit
# as we do CARGO_INCREMENTAL and keep the targets, the newly downloaded
# crates don't recompile, so we save *a lot* of time there
- target
- ${HC_TARGET_PREFIX}${TEST_PATH}target
- ${HC_TARGET_PREFIX}${TEST_PATH}${WASM_PATH}target
- ${HC_TARGET_PREFIX}${TEST_PATH}${WASM_PATH_2}target
install:
# "none" is a hack here to avoid "" ending up in the cache, potentially
# caching everything in the repo (we never want to accidentally do that)
- if [ ! -z "$WASM_PATH" ]; then rustup target add wasm32-unknown-unknown; fi;
- if [ ! -z "$WASM_PATH" ]; then cargo build --manifest-path ${TEST_PATH}${WASM_PATH}Cargo.toml --release --target wasm32-unknown-unknown --target-dir ${HC_TARGET_PREFIX}${TEST_PATH}${WASM_PATH}target; fi;
- if [ ! -z "$WASM_PATH_2" ]; then cargo build --manifest-path ${TEST_PATH}${WASM_PATH_2}Cargo.toml --release --target wasm32-unknown-unknown --target-dir ${HC_TARGET_PREFIX}${TEST_PATH}${WASM_PATH_2}target; fi;

script:
- cargo test -p $TEST_P --release --target-dir ${HC_TARGET_PREFIX}${TEST_PATH}target

jobs:
# test builds are ordered from slowest to quickest
# this allows us to keep walltimes down
include:

- name: "windows holochain_sodium"
<<: *_windows_template_lite
env:
- TEST_P=holochain_sodium
- TEST_PATH=sodium/

- name: "windows hc"
<<: *_windows_template_lite
env:
- TEST_P=hc
- TEST_PATH=cli/

- name: "windows holochain_net"
<<: *_windows_template_lite
env:
- TEST_P=holochain_net
- TEST_PATH=net/

- name: "windows core"
<<: *_windows_template_lite
env:
- TEST_P=holochain_core
- TEST_PATH=core/
- WASM_PATH=src/nucleus/actions/wasm-test/

- name: "C binding tests"
<<: *_trusty_bash
# sudo is needed for codecov, && system library install which makes things 20-50s slower
# https://docs.travis-ci.com/user/reference/overview/#virtualisation-environment-vs-operating-system
sudo: true
# manually cache as we manually install rustup
# https://docs.travis-ci.com/user/caching/#rust-cargo-cache
cache:
timeout: 1000
directories:
- $HOME/.cargo
# faster to build this than manage a cache for the target
# - $TRAVIS_BUILD_DIR/target
install:
- export PATH=$HOME/.cargo/bin:$PATH
script:
- make test_c_ci
before_cache:
- rm -rf $HOME/.cargo/registry/index

# holochain-cli releases section
- name: "CLI DEPLOY - 64 bit Linux"
<<: *_cli_deploy_template
Expand Down
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,42 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Security

## [0.0.12-alpha1] - 2019-04-21

### Added
- Allows the user to get headers using GetLinkOptions. [#1250](https://github.com/holochain/holochain-rust/pull/1250)

- `Config.bridge` added to Scenario API, allowing bridges to be configured [#1259]()https://github.com/holochain/holochain-rust/pull/1259

- Adds CAPABILITY_REQ global for access from a zome function call to the capability request that was used to make the call. This is important for doing validation of provenance for a zome call that wants to create a [capability grant](doc/architecture/decisions/0017-capabilities.md). [#1273](https://github.com/holochain/holochain-rust/pull/1273)

### Changed

- Increased timeout on n3h spawn and wait for `#P2P-READY#` message [#1276](https://github.com/holochain/holochain-rust/pull/1276).
- Clarifies the error received when attempting to add a DNA whose expected hash mismatches the actual hash [#1287](https://github.com/holochain/holochain-rust/pull/1287).
- Binary tarballs no longer extract to a subdirectory [#1265](https://github.com/holochain/holochain-rust/pull/1265)
- Linux binary tarballs are now named `generic` rather than `ubuntu` [#1265](https://github.com/holochain/holochain-rust/pull/1265)

### Deprecated

### Removed

### Fixed

- Don't publish private zome entries [#1233](https://github.com/holochain/holochain-rust/pull/1233)

- Fix unspecified errors that can occur during entry deletion/update [#1266](https://github.com/holochain/holochain-rust/pull/1266)

### Security

## [0.0.11-alpha1] - 2019-04-11

### Added

### Changed

- Performance optimization: Don't clone and parse WASM binaries for each distinct WASM execution such as Zome function calls and validation callbacks. Instead hold only one parsed module instance per zome on the heap and use that to initialize WASM instances. [#1211](https://github.com/holochain/holochain-rust/pull/1211)
- OpenSSL is vendored (statically linked) on nixos and other linux [#1245](https://github.com/holochain/holochain-rust/pull/1245)

### Deprecated

Expand Down
3 changes: 1 addition & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ TOOLS_RUST_VERSION ?= nightly-2019-01-24
CARGO = RUSTFLAGS="-Z external-macro-backtrace -D warnings" RUST_BACKTRACE=1 rustup run $(CORE_RUST_VERSION) cargo $(CARGO_ARGS)
CARGO_TOOLS = RUSTFLAGS="-Z external-macro-backtrace -D warnings" RUST_BACKTRACE=1 rustup run $(TOOLS_RUST_VERSION) cargo $(CARGO_ARGS)
CARGO_TARPULIN_INSTALL = RUSTFLAGS="--cfg procmacro2_semver_exempt -D warnings" RUST_BACKTRACE=1 cargo $(CARGO_ARGS) +$(CORE_RUST_VERSION)
OPENSSL_STATIC = 1

# list all the "C" binding tests that have been written
C_BINDING_DIRS = $(sort $(dir $(wildcard c_binding_tests/*/)))
Expand Down Expand Up @@ -176,8 +177,6 @@ build_nodejs_conductor: version_rustup core_toolchain
c_build: core_toolchain
cd dna_c_binding && $(CARGO) build

test_c_ci: c_build c_binding_tests ${C_BINDING_TESTS}

.PHONY: wasm_build
wasm_build: ensure_wasm_target
@echo -e "\033[0;93m## Building wasm targets... ##\033[0m"
Expand Down
12 changes: 6 additions & 6 deletions app_spec/test/regressions.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ scenario.runTape('calling get_links before link_entries makes no difference', as
const get2 = alice.call("blog", "my_posts", {})
t.ok(get2.Ok)

t.equal(get2.Ok.addresses.length, 1)
t.equal(get2.Ok.links.length, 1)
})

scenario.runTape('calling get_links twice in a row is no different than calling it once', async (t, {alice}) => {
Expand All @@ -40,7 +40,7 @@ scenario.runTape('calling get_links twice in a row is no different than calling
const get2 = alice.call("blog", "my_posts", {})
t.ok(get2.Ok)

t.equal(get2.Ok.addresses.length, 1)
t.equal(get2.Ok.links.length, 1)
})

scenario.runTape('not calling get_links in the beginning is also ok', async (t, {alice}) => {
Expand All @@ -51,7 +51,7 @@ scenario.runTape('not calling get_links in the beginning is also ok', async (t,
const get1 = alice.call("blog", "my_posts", {})
t.ok(get1.Ok)

t.equal(get1.Ok.addresses.length, 1)
t.equal(get1.Ok.links.length, 1)
})

scenario.runTape('alice create & publish post -> recommend own post to self', async (t, {alice, tash}) => {
Expand All @@ -76,7 +76,7 @@ scenario.runTape('alice create & publish post -> recommend own post to self', as
console.log("recommendedPosts", recommendedPosts)
console.log('agent addresses: ', alice.agentId, alice.agentId)

t.equal(recommendedPosts.Ok.addresses.length, 1)
t.equal(recommendedPosts.Ok.links.length, 1)
})

scenario.runTape('alice create & publish post -> tash recommend to self', async (t, {alice, tash}) => {
Expand All @@ -100,7 +100,7 @@ scenario.runTape('alice create & publish post -> tash recommend to self', async
console.log("recommendedPosts", recommendedPosts)
console.log('agent addresses: ', alice.agentId, tash.agentId)

t.equal(recommendedPosts.Ok.addresses.length, 1)
t.equal(recommendedPosts.Ok.links.length, 1)
})

scenario.runTape('create & publish post -> recommend to other agent', async (t, {alice, tash}) => {
Expand All @@ -124,5 +124,5 @@ scenario.runTape('create & publish post -> recommend to other agent', async (t,
console.log("recommendedPosts", recommendedPosts)
console.log('agent addresses: ', alice.agentId, tash.agentId)

t.equal(recommendedPosts.Ok.addresses.length, 1)
t.equal(recommendedPosts.Ok.links.length, 1)
})
Loading

0 comments on commit 96ce1d0

Please sign in to comment.