async_nursery 0.2.0

Primitive for structured concurrency
Documentation
package:

  # When releasing to crates.io:
  #
  # - last check for all TODO, FIXME, expect, unwrap.
  # - recheck log statements (informative, none left that were just for development, ...)
  # - `cargo +nightly doc` and re-read and final polish of documentation.
  #
  # - Update CHANGELOG.md.
  # - Update version numbers in Cargo.yml, Cargo.toml, install section of readme.
  #
  # - `touch **.rs && cargo clippy --tests --examples --benches --all-features`
  # - `cargo update`
  # - `cargo udeps --all-targets --all-features`
  # - `cargo audit`
  # - `cargo crev crate verify --show-all --recursive` and review.
  # - 'cargo test --all-targets --all-features'
  #
  # - push dev and verify CI result
  # - `cargo test` on dependent crates
  #
  # - cargo publish
  # - `git checkout master && git merge dev --no-ff`
  # - `git tag x.x.x` with version number.
  # - `git push && git push --tags`
  #
  version       : 0.2.0
  name          : async_nursery
  authors       : [ Naja Melan <najamelan@autistici.org> ]
  description   : Primitive for structured concurrency
  documentation : https://docs.rs/async_nursery
  repository    : https://github.com/najamelan/async_nursery
  readme        : README.md
  keywords      : [ async, executor, futures ]
  categories    : [ asynchronous, concurrency ]
  license       : Unlicense
  edition       : "2018"
  exclude       : []

  metadata:
    docs:
      rs:
        all-features: true
        targets     : []


badges:

  maintenance : { status     : actively-developed      }
  travis-ci   : { repository : najamelan/async_nursery }


features:

  default: [ not_wasm ]

  # Avoid compiling examples when doing wasm testing.
  #
  not_wasm: []


dependencies:

  # Public dependencies (bump major if changing any version number here)
  # Means we use types from these crates in our public API.
  #
  futures        : { version: ^0.3 }
  async_executors: { version: ^0.3 }

  # Private dependencies
  #
  thiserror   : ^1


dev-dependencies:

  # pretty_assertions : ^0.6
  # loom              : ^0.3
  tokio             : { version: ^0.2, features: [ sync ] }
  futures-timer     : ^3
  rand              : ^0.7


target:

  'cfg(not( target_arch = "wasm32" ))':

    dev-dependencies:

      async_executors: { version: ^0.3, features: [ async_std, tokio_ct, tokio_tp ] }
      async-std      : { version: ^1.6.0-beta, features: [ attributes ] }
      flexi_logger   : ^0.15
      indicatif      : ^0.14
      log            : ^0.4


  'cfg( target_arch = "wasm32" )':

    dev-dependencies:

      async_executors  : { version: ^0.3, features: [ bindgen ] }
      futures-timer    : { version: ^3  , features: [ wasm-bindgen ] }
      wasm-bindgen-test: ^0.3


build-dependencies:

  rustc_version: ^0.2


# Needed to avoid them being compiled when running: wasm-pack test --firefox --headless -- --no-default-features
#
example:

  - name             : cancel_coop
    required-features: [ not_wasm ]

  - name             : cancel_coop_all
    required-features: [ not_wasm ]

  - name             : resource_await
    required-features: [ not_wasm ]

  - name             : resource_drop
    required-features: [ not_wasm ]

  - name             : resource_outlive
    required-features: [ not_wasm ]

  - name             : return_catch_unwind
    required-features: [ not_wasm ]

  - name             : return_error
    required-features: [ not_wasm ]

  - name             : return_progress
    required-features: [ not_wasm ]

  - name             : return_value
    required-features: [ not_wasm ]

  - name             : single_thread
    required-features: [ not_wasm ]

  - name             : subtask_ref
    required-features: [ not_wasm ]

  - name             : subtask_spawn
    required-features: [ not_wasm ]

  - name             : type_bound
    required-features: [ not_wasm ]