# nofrills

## 0.3.2

  Nofrills now depends on a stable release of rlang, version 1.0.0 and above.
  (A minor internal fix was made to address a change in the behavior of
  `rlang::is_expression()`.) There are no user-facing changes.

## 0.3.1

  This minor update eliminates a warning caused by the deprecation of
  `rlang::is_expr()` in 0.2.0, and fixes a breakage in `curry()` caused by
  `rlang::as_closure()`. Tests are updated to accommodate an upcoming change in
  `all.equal()`. There are no user-facing changes.

## 0.3.0

  * Currying operators `curry()` and `curry_fn()` are introduced (#10). Notably,
    `curry_fn()` supports quasiquotation, which enables more easily inspectable
    functions. For example:
    ```
    compare_to <- curry_fn(target, x ~ identical(x, QUQ(target)))
    print(compare_to("this"))
    #> function (x)
    #> identical(x, "this")
    ```

  * `fn()` now accepts closures as part of the body. In particular, nested calls
    of `fn()` can be unquoted, e.g., `fn(x ~ !!fn(y ~ !!fn(z ~ x + y + z)))`
    yields `function(x) function(y) function(z) x + y + z`.

  * Literal unquoting operators `QUQ()`, `QUQS()` now resolve to their
    bang-operator forms (`!!`, `!!!`), rather than their functional aliases
    (`UQ()`, `UQS()`), as these aliases are slated for potential deprecation in
    rlang (#9). `rlang::UQE()` has already been axed, so `QUQE()` is gone too.

## 0.2.1

  * Tests are now compatible with testthat 2.0.0.

  * Alias `..()` is removed.

## 0.2.0

  * `fn()` now comprehends literal unquoting operators via the use of `QUQ()`,
    `QUQS()` and `QUQE()`. This allows you to make functions with `fn()` that
    contain unquoting operators, which is handy when programming with dplyr or
    other tidyverse packages.

  * `make_fn_aware()` is a new functional operator that enhances a function by
    enabling it to interpret abbreviated functional arguments (cf. `as_fn()`).

  * In order to keep the package namespace slim, `..()` has been softly
    deprecated.

## 0.1.0

  * Initial release
