1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 15:04:11 -05:00

feat: Rename --unstable-hmr to --watch-hmr (#24975)

This commit stabilizes HMR functionality and renames
`--unstable-hmr` to `--watch-hmr`. The `--unstable-hmr`
flag is still working, but hidden from the help output.
It will be removed in Deno 2.

Once https://github.com/denoland/deno/pull/24958 lands
we should improve grouping of `--watch` and `--watch-hmr`
flags.
This commit is contained in:
Bartek Iwańczuk 2024-08-11 23:10:55 +01:00 committed by GitHub
parent b61fd622a5
commit 004b74c8c6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 35 additions and 8 deletions

View file

@ -3604,8 +3604,10 @@ fn seed_arg() -> Arg {
fn hmr_arg(takes_files: bool) -> Arg { fn hmr_arg(takes_files: bool) -> Arg {
let arg = Arg::new("hmr") let arg = Arg::new("hmr")
.long("unstable-hmr") .long("watch-hmr")
.help("UNSTABLE: Watch for file changes and hot replace modules") // NOTE(bartlomieju): compatibility with Deno pre-1.46
.alias("unstable-hmr")
.help("Watch for file changes and hot replace modules")
.conflicts_with("watch"); .conflicts_with("watch");
if takes_files { if takes_files {
@ -5249,6 +5251,31 @@ mod tests {
} }
); );
let r = flags_from_vec(svec![
"deno",
"run",
"--watch-hmr",
"--no-clear-screen",
"script.ts"
]);
let flags = r.unwrap();
assert_eq!(
flags,
Flags {
subcommand: DenoSubcommand::Run(RunFlags {
script: "script.ts".to_string(),
watch: Some(WatchFlagsWithPaths {
hmr: true,
paths: vec![],
no_clear_screen: true,
exclude: vec![],
}),
}),
code_cache_enabled: true,
..Flags::default()
}
);
let r = flags_from_vec(svec![ let r = flags_from_vec(svec![
"deno", "deno",
"run", "run",
@ -5277,7 +5304,7 @@ mod tests {
let r = flags_from_vec(svec![ let r = flags_from_vec(svec![
"deno", "deno",
"run", "run",
"--unstable-hmr=foo.txt", "--watch-hmr=foo.txt",
"--no-clear-screen", "--no-clear-screen",
"script.ts" "script.ts"
]); ]);

View file

@ -117,7 +117,7 @@ impl crate::worker::HmrRunner for HmrRunner {
// If after filtering there are no paths it means it's either a file // If after filtering there are no paths it means it's either a file
// we can't HMR or an external file that was passed explicitly to // we can't HMR or an external file that was passed explicitly to
// `--unstable-hmr=<file>` path. // `--watch-hmr=<file>` path.
if filtered_paths.is_empty() { if filtered_paths.is_empty() {
let _ = self.watcher_communicator.force_restart(); let _ = self.watcher_communicator.force_restart();
continue; continue;

View file

@ -1675,7 +1675,7 @@ console.log("Listening...")
let mut child = util::deno_cmd() let mut child = util::deno_cmd()
.current_dir(t.path()) .current_dir(t.path())
.arg("run") .arg("run")
.arg("--unstable-hmr") .arg("--watch-hmr")
.arg("--allow-net") .arg("--allow-net")
.arg("-L") .arg("-L")
.arg("debug") .arg("debug")
@ -1748,7 +1748,7 @@ export function foo() {
let mut child = util::deno_cmd() let mut child = util::deno_cmd()
.current_dir(t.path()) .current_dir(t.path())
.arg("run") .arg("run")
.arg("--unstable-hmr") .arg("--watch-hmr")
.arg("-L") .arg("-L")
.arg("debug") .arg("debug")
.arg(&file_to_watch) .arg(&file_to_watch)
@ -1806,7 +1806,7 @@ export function foo() {
let mut child = util::deno_cmd() let mut child = util::deno_cmd()
.current_dir(t.path()) .current_dir(t.path())
.arg("run") .arg("run")
.arg("--unstable-hmr") .arg("--watch-hmr")
.arg("-L") .arg("-L")
.arg("debug") .arg("debug")
.arg(&file_to_watch) .arg(&file_to_watch)
@ -1871,7 +1871,7 @@ export function foo() {
let mut child = util::deno_cmd() let mut child = util::deno_cmd()
.current_dir(t.path()) .current_dir(t.path())
.arg("run") .arg("run")
.arg("--unstable-hmr") .arg("--watch-hmr")
.arg("-L") .arg("-L")
.arg("debug") .arg("debug")
.arg(&file_to_watch) .arg(&file_to_watch)