Skip to content

Commit 6126056

Browse files
Merge pull request #80 from mihaiconstantin/release/1.3.0
Release `1.3.0`
2 parents d893d17 + 8d5d75e commit 6126056

File tree

3 files changed

+49
-2
lines changed

3 files changed

+49
-2
lines changed

DESCRIPTION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Package: parabar
22
Title: Progress Bar for Parallel Tasks
3-
Version: 1.2.1
3+
Version: 1.3.0
44
Authors@R:
55
person(given = "Mihai",
66
family = "Constantin",

NEWS.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,50 @@
1+
# parabar 1.3.0
2+
3+
## Added
4+
- Update `AsyncBackend` to allow forceful stopping of the cluster. This is
5+
controlled by the package option `stop_forceful`, which, when set to `TRUE`,
6+
permits the backend to stop the cluster even if tasks are running or if tasks
7+
have finished but their results have not yet been read into the main session.
8+
The stopping logic is now based on the newly added class `SessionState`.
9+
Closes [#59](https://github.com/mihaiconstantin/parabar/issues/59).
10+
- Add `SessionState` class to easily check if an asynchronous backend is ready
11+
for certain operations.
12+
- Add tests for the `SessionState` and `TaskState` classes, and other
13+
improvements to the existing tests.
14+
- Introduce "pseudo-tests" for `SyncBackend` and `AsyncBackend` finalizers.
15+
These tests don't perform real assertions but instead verify that finalizers
16+
are invoked when backend instances are garbage collected. As of now, there
17+
appears to be no reliable way to programmatically capture conditions handled
18+
within a finalizer triggered by manual `gc()` invocation.
19+
20+
## Changed
21+
- Remove `SyncBackend` and `AsyncBackend` destructors in favour of `R`
22+
finalizers registered via `base::reg.finalizer`.
23+
- Rename `Service` to `BackendService` for clarity and consistency. While the
24+
name `Service` makes sense in the context of the `parabar` package, it can be
25+
confusing when using `parabar` in conjunction with other packages (e.g., in
26+
the context of the `powerly` package). The new name `BackendService` is
27+
hopefully more descriptive and less likely to clash with other packages.
28+
- Update `comparison.Rmd` vignette to refresh the comparison between `parabar`
29+
and `pbapply` packages.
30+
- Update design diagram and improved its readability and the client code
31+
examples.
32+
- Refactor `task_is_running` test helper to accept more context types.
33+
- Update `Specification` to allow backends with a single core. Closes
34+
[#71](https://github.com/mihaiconstantin/parabar/issues/71).
35+
36+
## Fixed
37+
- Fix error triggered by the invocation of the backend destructors (i.e., see
38+
issue [#61](https://github.com/mihaiconstantin/parabar/issues/61)). Clean-up
39+
of resources is now handled via the `base::reg.finalizer` mechanism, with
40+
finalizers being automatically registered when a backend is created. This
41+
ensures that the cluster is stopped and resources are released even if the
42+
user forgets to call `stop_backend` explicitly. Closes
43+
[#61](https://github.com/mihaiconstantin/parabar/issues/61).
44+
- Fix the `sink` redirect to use the correct destination on `Windows` (i.e.,
45+
`nul` instead of `/dev/null`). Closes
46+
[#74](https://github.com/mihaiconstantin/parabar/issues/74).
47+
148
# parabar 1.2.1
249

350
## Fixed

R/Warning.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#' \item{\code{Warning$requested_cluster_cores_too_high()}}{Warning for requesting too many cluster cores.}
1414
#' \item{\code{Warning$requested_cluster_type_not_supported()}}{Warning for requesting an unsupported cluster type.}
1515
#' \item{\code{Warning$progress_not_supported_for_backend()}}{Warning for using a backend incompatible with progress tracking.}
16-
#' \item{\code{Warning$error_in_backend_finalizer()}}{Warning for errors in the backend finalizer during garbage collection.}
16+
#' \item{\code{Warning$error_in_backend_finalizer()}}{Warning for errors in the backend finalizer during garbage collection.}
1717
#' }
1818
#'
1919
#' @export

0 commit comments

Comments
 (0)