Skip to content

Commit 960bd91

Browse files
committed
mark 0.3.0rc
1 parent 9a68e63 commit 960bd91

File tree

6 files changed

+27
-31
lines changed

6 files changed

+27
-31
lines changed

DESCRIPTION

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
Package: nanonext
22
Type: Package
33
Title: NNG (Nanomsg Next Gen) Lightweight Messaging Library
4-
Version: 0.2.0.9005
4+
Version: 0.2.0.9006
55
Description: R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ. NNG is
66
a socket library providing high-performance scalability protocols,
77
implementing a cross-platform standard for messaging and communications.
88
Serves as a concurrency framework for building distributed applications,
9-
utilising 'Aio' objects which return an unresolved value whilst an
10-
asynchronous operation is ongoing, automatically resolving to a final value
11-
once complete.
9+
utilising 'Aio' objects which automatically resolve upon completion of
10+
asynchronous operations.
1211
Authors@R:
1312
c(person(given = "Charlie",
1413
family = "Gao",

NEWS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# nanonext 0.2.0.9005 (development)
1+
# nanonext 0.2.0.9006 (development)
22

33
#### New Features
44

R/nanonext-package.R

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,8 @@
66
#' library providing high-performance scalability protocols, implementing a
77
#' cross-platform standard for messaging and communications. Serves as a
88
#' concurrency framework for building distributed applications, utilising
9-
#' 'Aio' objects which return an unresolved value whilst an asynchronous
10-
#' operation is ongoing, automatically resolving to a final value once
11-
#' complete.
9+
#' 'Aio' objects which automatically resolve upon completion of asynchronous
10+
#' operations.
1211
#'
1312
#' @section Usage notes:
1413
#'

README.Rmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ knitr::opts_chunk$set(
2121
[![R-CMD-check](https://github.com/shikokuchuo/nanonext/workflows/R-CMD-check/badge.svg)](https://github.com/shikokuchuo/nanonext/actions)
2222
<!-- badges: end -->
2323

24-
R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ. NNG is a socket library providing high-performance scalability protocols, implementing a cross-platform standard for messaging and communications. Serves as a concurrency framework for building distributed applications, utilising 'Aio' objects which return an unresolved value whilst an asynchronous operation is ongoing, automatically resolving to a final value once complete.
24+
R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ. NNG is a socket library providing high-performance scalability protocols, implementing a cross-platform standard for messaging and communications. Serves as a concurrency framework for building distributed applications, utilising 'Aio' objects which automatically resolve upon completion of asynchronous operations.
2525

2626
Designed for performance and reliability, the NNG library is written in C and {nanonext} is a lightweight wrapper depending on no other packages. Provides the interface for code and processes to communicate with each other - receive data generated in Python, perform analysis in R, and send results to a C++ program – all on the same computer or on networks spanning the globe.
2727

README.md

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@ R binding for NNG (Nanomsg Next Gen), a successor to ZeroMQ. NNG is a
1616
socket library providing high-performance scalability protocols,
1717
implementing a cross-platform standard for messaging and communications.
1818
Serves as a concurrency framework for building distributed applications,
19-
utilising ‘Aio’ objects which return an unresolved value whilst an
20-
asynchronous operation is ongoing, automatically resolving to a final
21-
value once complete.
19+
utilising ‘Aio’ objects which automatically resolve upon completion of
20+
asynchronous operations.
2221

2322
Designed for performance and reliability, the NNG library is written in
2423
C and {nanonext} is a lightweight wrapper depending on no other
@@ -371,7 +370,7 @@ aio
371370
#> < recvAio >
372371
#> - $data for message data
373372
aio$data |> str()
374-
#> num [1:100000000] -1.273 -0.196 -1.701 0.82 1.226 ...
373+
#> num [1:100000000] 1.231 -2.553 1.338 0.882 0.158 ...
375374
```
376375

377376
As `call_aio()` is blocking and will wait for completion, an alternative
@@ -406,37 +405,37 @@ an environment variable `NANONEXT_LOG`.
406405

407406
``` r
408407
logging(level = "info")
409-
#> 2022-03-05 18:12:59 [ log level ] set to: info
408+
#> 2022-03-05 20:14:17 [ log level ] set to: info
410409

411410
pub <- socket("pub", listen = "inproc://nanobroadcast")
412-
#> 2022-03-05 18:12:59 [ sock open ] id: 9 | protocol: pub
413-
#> 2022-03-05 18:12:59 [ list start ] sock: 9 | url: inproc://nanobroadcast
411+
#> 2022-03-05 20:14:17 [ sock open ] id: 9 | protocol: pub
412+
#> 2022-03-05 20:14:17 [ list start ] sock: 9 | url: inproc://nanobroadcast
414413
sub <- socket("sub", dial = "inproc://nanobroadcast")
415-
#> 2022-03-05 18:12:59 [ sock open ] id: 10 | protocol: sub
416-
#> 2022-03-05 18:12:59 [ dial start ] sock: 10 | url: inproc://nanobroadcast
414+
#> 2022-03-05 20:14:17 [ sock open ] id: 10 | protocol: sub
415+
#> 2022-03-05 20:14:17 [ dial start ] sock: 10 | url: inproc://nanobroadcast
417416

418417
sub |> subscribe(topic = "examples")
419-
#> 2022-03-05 18:12:59 [ subscribe ] sock: 10 | topic: examples
418+
#> 2022-03-05 20:14:17 [ subscribe ] sock: 10 | topic: examples
420419
pub |> send(c("examples", "this is an example"), mode = "raw", echo = FALSE)
421420
sub |> recv(mode = "character", keep.raw = FALSE)
422421
#> [1] "examples" "this is an example"
423422

424423
pub |> send(c("other", "this other topic will not be received"), mode = "raw", echo = FALSE)
425424
sub |> recv(mode = "character", keep.raw = FALSE)
426-
#> 2022-03-05 18:12:59 [ 8 ] Try again
425+
#> 2022-03-05 20:14:17 [ 8 ] Try again
427426

428427
# specify NULL to subscribe to ALL topics
429428
sub |> subscribe(topic = NULL)
430-
#> 2022-03-05 18:12:59 [ subscribe ] sock: 10 | topic: ALL
429+
#> 2022-03-05 20:14:17 [ subscribe ] sock: 10 | topic: ALL
431430
pub |> send(c("newTopic", "this is a new topic"), mode = "raw", echo = FALSE)
432431
sub |> recv("character", keep.raw = FALSE)
433432
#> [1] "newTopic" "this is a new topic"
434433

435434
sub |> unsubscribe(topic = NULL)
436-
#> 2022-03-05 18:12:59 [ unsubscribe ] sock: 10 | topic: ALL
435+
#> 2022-03-05 20:14:17 [ unsubscribe ] sock: 10 | topic: ALL
437436
pub |> send(c("newTopic", "this topic will now not be received"), mode = "raw", echo = FALSE)
438437
sub |> recv("character", keep.raw = FALSE)
439-
#> 2022-03-05 18:12:59 [ 8 ] Try again
438+
#> 2022-03-05 20:14:17 [ 8 ] Try again
440439

441440
# however the topics explicitly subscribed to are still received
442441
pub |> send(c("examples", "this example will still be received"), mode = "raw", echo = FALSE)
@@ -445,7 +444,7 @@ sub |> recv(mode = "character", keep.raw = FALSE)
445444

446445
# set logging level back to the default of errors only
447446
logging(level = "error")
448-
#> 2022-03-05 18:12:59 [ log level ] set to: error
447+
#> 2022-03-05 20:14:17 [ log level ] set to: error
449448

450449
close(pub)
451450
close(sub)
@@ -496,7 +495,7 @@ aio2$data
496495
# after the survey expires, the second resolves into a timeout error
497496
Sys.sleep(0.5)
498497
aio2$data
499-
#> 2022-03-05 18:13:00 [ 5 ] Timed out
498+
#> 2022-03-05 20:14:18 [ 5 ] Timed out
500499
#> 'errorValue' int 5
501500

502501
close(sur)
@@ -522,11 +521,11 @@ ncurl("http://httpbin.org/headers")
522521
#> [1] 7b 0a 20 20 22 68 65 61 64 65 72 73 22 3a 20 7b 0a 20 20 20 20 22 48 6f 73
523522
#> [26] 74 22 3a 20 22 68 74 74 70 62 69 6e 2e 6f 72 67 22 2c 20 0a 20 20 20 20 22
524523
#> [51] 58 2d 41 6d 7a 6e 2d 54 72 61 63 65 2d 49 64 22 3a 20 22 52 6f 6f 74 3d 31
525-
#> [76] 2d 36 32 32 33 61 38 32 63 2d 34 31 36 31 62 61 61 65 30 35 35 64 34 34 33
526-
#> [101] 65 36 38 31 39 62 30 38 64 22 0a 20 20 7d 0a 7d 0a
524+
#> [76] 2d 36 32 32 33 63 34 39 61 2d 33 32 62 31 31 63 66 37 36 61 31 61 62 33 61
525+
#> [101] 63 36 62 36 30 30 61 36 33 22 0a 20 20 7d 0a 7d 0a
527526
#>
528527
#> $data
529-
#> [1] "{\n \"headers\": {\n \"Host\": \"httpbin.org\", \n \"X-Amzn-Trace-Id\": \"Root=1-6223a82c-4161baae055d443e6819b08d\"\n }\n}\n"
528+
#> [1] "{\n \"headers\": {\n \"Host\": \"httpbin.org\", \n \"X-Amzn-Trace-Id\": \"Root=1-6223c49a-32b11cf76a1ab3ac6b600a63\"\n }\n}\n"
530529
```
531530

532531
For advanced use, supports additional HTTP methods such as POST or PUT.

man/nanonext-package.Rd

Lines changed: 2 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)