Fix ProcessManager.canRun to be consistent with LocalProcessManager (#62)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index e434226..3c9c001 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+#### 4.2.0
+
+* Fix the signature of `ProcessManager.canRun` to be consistent with
+  `LocalProcessManager`.
+
 #### 4.1.1
 
 * Fixed `getExecutablePath()` to only return path items that are
diff --git a/lib/src/interface/process_manager.dart b/lib/src/interface/process_manager.dart
index 205c238..8862a14 100644
--- a/lib/src/interface/process_manager.dart
+++ b/lib/src/interface/process_manager.dart
@@ -163,7 +163,7 @@
   });
 
   /// Returns `true` if the [executable] exists and if it can be executed.
-  bool canRun(dynamic executable, {String workingDirectory});
+  bool canRun(dynamic executable, {String? workingDirectory});
 
   /// Kills the process with id [pid].
   ///
diff --git a/pubspec.yaml b/pubspec.yaml
index cdd3bb3..f98baa6 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: process
-version: 4.1.1
+version: 4.2.0
 description: A pluggable, mockable process invocation abstraction for Dart.
 homepage: https://github.com/google/process.dart