# # # patch "cmd_ws_commit.cc" # from [a81d478bf4c7ef569dd8ae9ccc4d745772005eae] # to [5e01949b77bdf89507d02973c1bc717a5317568d] # # patch "file_io.cc" # from [db9fdc218edf3af90593b19807f91552d6164bba] # to [a74b57835fef76ba5820cc320a6fa2660537a2b6] # # patch "file_io.hh" # from [dbfff55ce5a054fe319093f1f733137ca15322b4] # to [0853be25c7f81131940cc798a35c28f58acefcdf] # # patch "options_list.hh" # from [3aab7d6a0a012ca2a71ad664d6533760db2ba096] # to [7545baff2d4a096ee05ad81ef5543b4e540e4cb4] # # patch "tests/(imp)_deleting_directories/__driver__.lua" # from [7c4b0f70436cb7aa04916d8b6125acf124769304] # to [d93d73aa7d1f9804e763eaba12d540b84806e47a] # # patch "tests/(imp)_merge((patch_foo_a),_(delete_foo_))/__driver__.lua" # from [735444cd52e8bba4f174d3a7535bb6bd49022a24] # to [7369a583460c9839c752d40173538c32ea635a0a] # # patch "tests/(minor)_drop_in_subdir/__driver__.lua" # from [787ecbc541ca640b3389be3c9335a96047b8c30f] # to [c155368d19b887122b3ed0c2c10676f4d46ab2de] # # patch "tests/(minor)_update_cleans_emptied_directories/__driver__.lua" # from [c6010182ca0b06e2f20bb0d91a31a2dcc00714a8] # to [37a361b49f4fa2bb420d24469cbc1c42224e93d1] # # patch "tests/_MTN_revision_is_required/__driver__.lua" # from [69297e83d80bddb26d885cac8d9171f1079df2ef] # to [873b4b867d8ce0e5630e301ad2a91b0dd0a4dfed] # # patch "tests/add_unknown_recursive/__driver__.lua" # from [718038d1d2f01f5d0f9d226cd0ceac0b5a0784ed] # to [5660b8f315d9ced31c4c9115cd7404bce44b7d36] # # patch "tests/add_unknown_recursive_ignored/__driver__.lua" # from [4b6cbf98282313988cc49c82125235d342669315] # to [e89b9df6f24316cf0dd8188a48ace704ea50cc28] # # patch "tests/annotate_file_whose_name_changed/__driver__.lua" # from [4f44e0851966931403a59662e98a2ffd9aad67a6] # to [2d20d0616dbfbd86dac99b2a70a049889ca93a79] # # patch "tests/automate_get_corresponding_path/__driver__.lua" # from [d2822a27e5486c586730f386dea2bf7bfb16b21a] # to [a40c3a12d101610834ebd79bb9f251ba8599e928] # # patch "tests/automate_inventory/__driver__.lua" # from [21d9c672d0dc7c25066da114ac100a25060e6838] # to [0b95df31fd7cf04f76c777f76d220d91aa423e92] # # patch "tests/db_check_and_non-serious_errors/__driver__.lua" # from [bfe9ef29c9bcd7afb113328f14bbf01cd1529ad1] # to [a96021255cd73d0de4101d20c6ef103438fd54c2] # # patch "tests/diff_shows_renames/__driver__.lua" # from [e410c09e7e75cfeed8334183ab2a47e6d1a675e7] # to [2923fb883a3683388133bb8b3862bb84ae207982] # # patch "tests/drop_directory_with_unversioned_files_and_update/__driver__.lua" # from [ba27d76247f484248766ddd48db30be4b1728d49] # to [0906a982336aa7de871c4ad1161883582aea19f3] # # patch "tests/drop_missing_and_unknown_files/__driver__.lua" # from [56107612c8f75868ae090a8bf379bde522026922] # to [6e145212c1085b0f6dc31673386efffdb680d23c] # # patch "tests/drop_removes_attributes/__driver__.lua" # from [2d617fcf68e52e4564f5f1ca3775138fc4571d9c] # to [1d5015801ddf16285db6fa7fce9a25cba336556a] # # patch "tests/drop_with_actual_removal/__driver__.lua" # from [db133ade4e4ac20c8cca33e99e2505447cbee94c] # to [98f288fab80ec44a18b1b62c5a1da291410af66b] # # patch "tests/empty_string_as_a_path_name/__driver__.lua" # from [d9a7dcd36790a95523614f361b470ebe0a807515] # to [27e2081cdc69c569f84956584692067953ce3aac] # # patch "tests/filenames_in_diff_after_rename/__driver__.lua" # from [f7d87b46a41ca490c41a8d910705bfb34646227a] # to [e1c86bf6daaebc6afa7ebde4a4af3ff2f3a8ea0e] # # patch "tests/files_with_intermediate__MTN_path_elements/__driver__.lua" # from [a964a38aa1159ba141398e70c309866eacdf989f] # to [07c283c38ec48dc3dfcb2c1e7cf65d4e5f801a92] # # patch "tests/importing_files_with_non-english_names/__driver__.lua" # from [ed1240654dad2a24ed0ff72c8b1103336eccf589] # to [bbdb40ff9758961ba4dd4b738fd3e8079a9f0d7c] # # patch "tests/list_missing_files/__driver__.lua" # from [b134a041b42a0cd745398b98fad82aa016df949b] # to [20fab850622e786832dd0b9800c72b9f1a00ae5a] # # patch "tests/listing_changed_files/__driver__.lua" # from [9c8c71b62aa71fd7ef57fc655b78b281be785811] # to [d0b3fa21acfb76b2bb688b787cd6df82c026776b] # # patch "tests/listing_workspace_manifests/__driver__.lua" # from [84c0efaf39ebdb33b1b8b3b83e5c5e78ed4671ee] # to [2a0a4649b1e147bfe14eb15666ce1ff47aa77a23] # # patch "tests/log_--diffs/__driver__.lua" # from [afd7dc0ac92acbe635da087c82813f29a1f48acd] # to [731ccabe31f55e2930ca5f47a79aaf838f9ec2ad] # # patch "tests/log_hides_deleted_renamed_files/__driver__.lua" # from [552e127f6f14474295e744bc045c560e32190daf] # to [9f4ef42a007376b5ff0bdcbc784315281be10665] # # patch "tests/log_with_restriction/__driver__.lua" # from [0b049235864e9f6687f478d58e0d54d83fc82e57] # to [b6b73b9435a5440043f7f9c80c0fa7b0e135e00d] # # patch "tests/manifest_restrictions/__driver__.lua" # from [0eea8a13102d0725bfb212125b29c6e33c945119] # to [aa910e255f6d111a094570a41c30e88a4c2a54fd] # # patch "tests/merge((),_(add_a,_drop_a,_add_a))/__driver__.lua" # from [9384feb450710524e13b240b368fd869f8ccfdbd] # to [1a6121393c79af7e5a7083ad6637d6d6559631e6] # # patch "tests/merge((),_(add_a,_patch_a,_drop_a,_add_a))/__driver__.lua" # from [d7995b80865ef73c393105bf48f05333b281b108] # to [23ae9125a277a0b5bee70dc2861d83e2e96f65a3] # # patch "tests/merge((),_(drop_a,_rename_b_a,_patch_a))/__driver__.lua" # from [baaeb528eaf48031cbae198f4cb2d133a6996540] # to [a277fa82e2e8b0820a84c972b3ad0aad86848c7c] # # patch "tests/merge((),_(patch_a,_drop_a,_add_a))/__driver__.lua" # from [1a72edadfc966221a7b4d2c88ee234a299256c4b] # to [9a0d1dcc69eda3954a15bdd2fc2f6fc31731b3b4] # # patch "tests/merge((add_a),_(add_a,_drop_a,_add_a))/__driver__.lua" # from [7fb698f24b8fd9a9580ca750682743eeb0972939] # to [a935b16a54b815a6e6b1ddc9c2e5d6e0a13750ac] # # patch "tests/merge((drop_a),_(drop_a,_add_a))/__driver__.lua" # from [a7a463c31f1d6e223fbfed77555044754f898823] # to [27fee0d798fbab4bafdd93da456a9bf32398b269] # # patch "tests/merge((drop_a),_(rename_a_b,_patch_b))/__driver__.lua" # from [6fd049ff377e80271b69e41a84ccc19fe6d2d0e7] # to [7c6a662fa620c7515804cb6e5e513549429015c5] # # patch "tests/merge((patch_a),_(drop_a,_add_a))/__driver__.lua" # from [86bce67fd140cdcf1685ee694bfd9ed41c5d3dbd] # to [9fa8b98418f195441770ae5069b8417245ace48f] # # patch "tests/merge((patch_foo_a),_(rename_foo__bar_))/__driver__.lua" # from [9caec745c7278f1c91d55ffc5261b724c6a9c063] # to [17e0759d1977200afa473c363ef160d66bbc4c4f] # # patch "tests/merge((rename_a_b),_(rename_a_c))/__driver__.lua" # from [9321316dd8f07d73f429075d838059da35587abb] # to [43fda6d867442f92475b2b6897d4177fdc69336d] # # patch "tests/merge_rename_file_and_rename_dir/__driver__.lua" # from [d70a9ff66618082f0941927ed79a09be99565fc1] # to [27cebc14f86e462cad63c953305935a53a5cb656] # # patch "tests/merge_with_add,_rename_file,_and_rename_dir/__driver__.lua" # from [705e5c74ebaf2d8e9f0be9bf247821c96d079818] # to [21221aef01bc565b0ca0f21a73dea4843c07c6ca] # # patch "tests/merging_(add_a)_with_(add_a,_drop_a)/__driver__.lua" # from [40ff359a25f6c765645a432641b5c3a941c05055] # to [95963fea52aff5dbd3ac034f8792f70ba9c6485e] # # patch "tests/merging_(add_a,_rename_a_b)_with_(add_b)/__driver__.lua" # from [b37feaf5408df2ec82bf70df8ae3ca74d3199c90] # to [9fa4a98d0e5d1d2d14b6c16c06ab9ac2d9fba344] # # patch "tests/merging_a_rename_twice/__driver__.lua" # from [4159fe861a5be46dc91d37530a0f0e944985750a] # to [8c1d022f0f792ba9eff453c7f7797aa1da7a10c2] # # patch "tests/no-change_deltas_disappear/__driver__.lua" # from [93be632c2e4e6ee8d6f8a9bea2ca8969c16c86f6] # to [75c66ed8d2a7836fe1759c208fc6404123f53437] # # patch "tests/pivot_root/__driver__.lua" # from [c16c49bd7cca6d5b343151c9d87007431c4237ee] # to [74d3f9a78052165a356b5958f1119f2309038a4c] # # patch "tests/pivot_root_to_new_dir/__driver__.lua" # from [4cab92c63770bfdeffaf281f97426739d1e54b62] # to [1aced95b97d46debcd4087b1624980c159de369f] # # patch "tests/pluck_basics/__driver__.lua" # from [9379aaadf1a3df8333535db2c08f969421ff3d84] # to [c2868ffdd9505db3747facd10fedf4f0122a63bc] # # patch "tests/pluck_lifecycle/__driver__.lua" # from [f5be8a837d2e51ec5fad7bf2abdbf105965b749a] # to [9108772eb30390339e6e827295af01751a471562] # # patch "tests/rename_cannot_overwrite_files/__driver__.lua" # from [f6e813874fc679c957fecc77f83d0e4ff2ac2c09] # to [aeb55851afe7fe777767dc0983e27688f8aef538] # # patch "tests/rename_dir_to_non-sibling/__driver__.lua" # from [1431ca822db0dfe690b2dface707fe280fedb8bd] # to [a1a89705c4ccf2389fade6d76db3d37e80f404ff] # # patch "tests/rename_file_to_dir/__driver__.lua" # from [fa70ea43a4f9b4a1560d96ace0ce03a3dbfd774b] # to [f6eee8a739b375232f503815fbd3ab0d12c0d5c0] # # patch "tests/rename_files_into_a_directory/__driver__.lua" # from [b6594e77f04c1ecdfc10a23ec08740695cd0ec7e] # to [a3ecc06ad296b8fe854ca4c672d8145c6c582182] # # patch "tests/rename_in_new_workspace/__driver__.lua" # from [1d1d242f813c900802263ac080bdfedef98fbcc6] # to [51c7bc24a789c4fe6642522e5d3c65212b51d135] # # patch "tests/rename_in_subdir/__driver__.lua" # from [c7e95641f60f08909952598f3a668e19a00b0e91] # to [0bad5a225dcf3aa776630d083c9d3068e0953cbb] # # patch "tests/rename_moves_attributes/__driver__.lua" # from [1c100548abe65110e89fa57d7a271abd1a65f904] # to [70560f4011b8606c8fced92a9e857531344adfe5] # # patch "tests/rename_with_actual_file_rename/__driver__.lua" # from [eba1a60bad4f749e7c609d233cc6c4828823622e] # to [4fa04fa6e2050d4de89175cdf4ffc5d45596f98f] # # patch "tests/renaming_a_deleted_file/__driver__.lua" # from [6ba1866a11f40f2101c2265c3d9f1f792cd40bf2] # to [dc9832c80a30deb255e8a062380ceb4b0d344680] # # patch "tests/renaming_a_directory/__driver__.lua" # from [f8d5fecc9166f44d54d382d249bd8157021b64c9] # to [9fb630300dcc1992c8bff1e2d64aa803938b13d6] # # patch "tests/renaming_a_directory_and_then_adding_a_new_with_the_old_name/__driver__.lua" # from [e2aa0980b891adfb61f0785e69c62bf82e5acf26] # to [e5f63ad4836f7aae57d37950ee10b1d8bbd86fe2] # # patch "tests/renaming_a_file/__driver__.lua" # from [4961bcc15ba436f72099ec495863b6e3f04ea04b] # to [e50cef4ee28f3032e8468da7d41548b0bd1a78e9] # # patch "tests/renaming_a_patched_file/__driver__.lua" # from [8fd738fcfcbdac05ca85563b46af53a976fe5672] # to [f81d2aa8d28583b905938d8715cd4e4756065d9c] # # patch "tests/renaming_and_editing_a_file/__driver__.lua" # from [0e8b972b0de53d89db21e0cab967bdfa39aed23b] # to [0a642d8215a047f22a1baf695ec0ecf437092c09] # # patch "tests/restricted_commands_are_consistent/__driver__.lua" # from [2859490ab866d2bcb418b6738123b58cf87dc760] # to [c0e5031b850d122bc5568d053101937e1f201a93] # # patch "tests/restrictions_with_deletes/__driver__.lua" # from [c0448c63d3666caef975f943a3617fda1d59ebcd] # to [032fed8ccdfdf54292c5ede154934918a47dcbe4] # # patch "tests/restrictions_with_renames_and_adds/__driver__.lua" # from [80407049b9742d5c8391b52709c82b35cf252316] # to [7a202360833e8a12a30b62e76df826cd0589bcac] # # patch "tests/revert_file_blocked_by_unversioned_directory/__driver__.lua" # from [2d44447cc9210396b96b166837449336da5d007c] # to [c85d6f7894b2834e9ef56a32c89d792255fa9321] # # patch "tests/revert_file_to_base_revision/__driver__.lua" # from [1e36ec7995901b57a394fe9c5a97d116720eaecc] # to [a216dddc220abf1d3e0ecd727086283a1925b952] # # patch "tests/revert_moving_a_file_to_a_renamed_directory/__driver__.lua" # from [f8a5e9e2519fa8eda989d08d9c2e47dca89e36f7] # to [2ecd85d93318ac48767c1a88db18f79050afc392] # # patch "tests/revert_renames/__driver__.lua" # from [eae91aa09c58db76a12752c76140b68476236edb] # to [c171502cfeb96de9391e0733365a45aaf6bff0b6] # # patch "tests/revert_the_middle_of_a_sequence/__driver__.lua" # from [f0626d4f58950a5e95cf58a18a5f6c3e72a0a247] # to [38fd09afc38afbee8acfc700507186a9c1fbf007] # # patch "tests/reverting_a_pivot_root/__driver__.lua" # from [b2e210fb6d037e9acf9f46b92feb4c193db12c86] # to [36d99a86c367367863e36a2af9d0911543d074f6] # # patch "tests/schema_migration/__driver__.lua" # from [f6ec1d90bd69e6cce3fcc9a4f2e6ae29b7da3a7f] # to [d708709c691b1536d54702969a8ffbffd5fa3c5f] # # patch "tests/schema_migration_with_rosterify/__driver__.lua" # from [7de4d8c9f78f2f3ac4912b508e6aae17c40ade1b] # to [5b2bd19e135432bf53511d7fd1f422b5177544c4] # # patch "tests/show_conflicts/__driver__.lua" # from [e46639299f55d6d83e9962004a89319a70d1f52e] # to [4cc6d804eb657c20e67c5bf3ebf6bfd2a0f9b20d] # # patch "tests/single_character_filename_support/__driver__.lua" # from [45e9d332c9f379e34eed7687d25c6b0b4b5f8662] # to [1838b034aea2dbb2128ef03412223ff720c378a0] # # patch "tests/status/__driver__.lua" # from [f64c0e5e613e3b6141ba3cf2cd455b94ac8ccfa7] # to [5519d34d6454fca8744c29a67239f96de1248b37] # # patch "tests/test_annotate_command/__driver__.lua" # from [46efc71c1e02bc32a0238b3c6e8904be42530422] # to [b0c643f1034a5b7ff9ae61b4473aae3adba4cb87] # # patch "tests/two_parent_workspace_add_drop_rename/__driver__.lua" # from [3c1cbba19fd6ccf653e860f09008b6863f938b4b] # to [f2edf6e4783c744259d791f4452fdabd211451e6] # # patch "tests/two_parent_workspace_list/__driver__.lua" # from [19d063bce48abde9cc3aaa20540a3a189f1a7371] # to [edd02fb185c0e70962c9c86d67d8255f7ef31d3c] # # patch "tests/two_parent_workspace_pivot_root/__driver__.lua" # from [4648648d122fa1ecdbfe277c214c002594767656] # to [4cd99ef70412ee23cc86fcd2b6dce7a2c49c2bb0] # # patch "tests/update_with_blocked_rename/__driver__.lua" # from [45d2da529267f5a4c45aca31307e7b0ea8d64107] # to [a93e2215543253fb346e4a9804c75467486769fd] # # patch "tests/update_with_pending_drop/__driver__.lua" # from [388d2e4de749215846e0e500cd30a25777db3f4e] # to [a34fff42aeca7e154a19e18bec3153dcf99791a5] # # patch "tests/update_with_pending_rename/__driver__.lua" # from [e0ae7330da24f2ddbbb92719323ff7ac8cc59dde] # to [02683106cc068157342c8dfd3c8998d58cd15406] # # patch "tests/updating_through_a_pivot_root/__driver__.lua" # from [0d9d824956af2a0247748a9f812dfaf09b84c775] # to [aab50af65ba043424b85556957569396cf687c23] # # patch "tests/workspace_migration/basic.lua" # from [49dbed3e6b96fb6c0ded16315b5b8aca148595e6] # to [04c86f17abd3d575bee28d3f3152b9f899ac4b35] # # patch "tests/workspace_migration/inodeprints.lua" # from [1e810ab1fa2ffff1e74c05ca4fce226a5098e80b] # to [57960c6f4766c6ed3cad53c6436f4922d7c75895] # # patch "tests/ws_ops_with_wrong_node_type/__driver__.lua" # from [5f39da8675c46f269919536afdb54fac031496f7] # to [b3a0c7b6203070f1a6e5d201bf29537f0843d157] # # patch "work.cc" # from [8bb12080223afb25dc95e119bf6d29883c3e87c8] # to [fb11d5182575d735e9b1cc731e616b8d2eb396bf] # # patch "work.hh" # from [5515f5af71490b7fd5ffc7e0d64f712df5b72a27] # to [c7af9fc988d22316359a3f95611630cb07a5b6e1] # ============================================================ --- cmd_ws_commit.cc a81d478bf4c7ef569dd8ae9ccc4d745772005eae +++ cmd_ws_commit.cc 5e01949b77bdf89507d02973c1bc717a5317568d @@ -340,7 +340,7 @@ CMD(drop, N_("workspace"), N_("[PATH]... CMD(drop, N_("workspace"), N_("[PATH]..."), N_("drop files from workspace"), - options::opts::execute | options::opts::missing | options::opts::recursive) + options::opts::bookkeep_only | options::opts::missing | options::opts::recursive) { if (!app.opts.missing && (args.size() < 1)) throw usage(name); @@ -362,7 +362,7 @@ CMD(drop, N_("workspace"), N_("[PATH]... else split_paths(args_to_paths(args), paths); - app.work.perform_deletions(paths, app.opts.recursive, app.opts.execute); + app.work.perform_deletions(paths, app.opts.recursive, app.opts.bookkeep_only); } ALIAS(rm, drop); @@ -372,7 +372,7 @@ CMD(rename, N_("workspace"), N_("SRC DEST\n" "SRC1 [SRC2 [...]] DEST_DIR"), N_("rename entries in the workspace"), - options::opts::execute) + options::opts::bookkeep_only) { if (args.size() < 2) throw usage(name); @@ -387,7 +387,7 @@ CMD(rename, N_("workspace"), file_path s = file_path_external(idx(args, i)); src_paths.insert(s); } - app.work.perform_rename(src_paths, dst_path, app.opts.execute); + app.work.perform_rename(src_paths, dst_path, app.opts.bookkeep_only); } ALIAS(mv, rename); @@ -400,8 +400,8 @@ CMD(pivot_root, N_("workspace"), N_("NEW "will be the root directory, and the directory " "that is currently the root\n" "directory will have name PUT_OLD.\n" - "Using --execute is strongly recommended."), - options::opts::execute) + "Use of --bookkeep-only is NOT recommended."), + options::opts::bookkeep_only) { if (args.size() != 2) throw usage(name); @@ -409,7 +409,7 @@ CMD(pivot_root, N_("workspace"), N_("NEW app.require_workspace(); file_path new_root = file_path_external(idx(args, 0)); file_path put_old = file_path_external(idx(args, 1)); - app.work.perform_pivot_root(new_root, put_old, app.opts.execute); + app.work.perform_pivot_root(new_root, put_old, app.opts.bookkeep_only); } CMD(status, N_("informative"), N_("[PATH]..."), N_("show status of workspace"), ============================================================ --- file_io.cc db9fdc218edf3af90593b19807f91552d6164bba +++ file_io.cc a74b57835fef76ba5820cc320a6fa2660537a2b6 @@ -131,6 +131,17 @@ file_exists(any_path const & p) return get_path_status(p) == path::file; } +bool +directory_empty(any_path const & path) +{ + vector files; + vector subdirs; + + read_directory(path, files, subdirs); + + return files.empty() && subdirs.empty(); +} + static bool did_char_is_binary_init; static bool char_is_binary[256]; ============================================================ --- file_io.hh dbfff55ce5a054fe319093f1f733137ca15322b4 +++ file_io.hh 0853be25c7f81131940cc798a35c28f58acefcdf @@ -42,6 +42,8 @@ bool file_exists(any_path const & path); bool directory_exists(any_path const & path); // returns true if there is a file at 'path' bool file_exists(any_path const & path); +// returns true if there is a directory at 'path' with no files or sub-directories +bool directory_empty(any_path const & path); // returns true if the string content is binary according to monotone heuristic ============================================================ --- options_list.hh 3aab7d6a0a012ca2a71ad664d6533760db2ba096 +++ options_list.hh 7545baff2d4a096ee05ad81ef5543b4e540e4cb4 @@ -249,11 +249,11 @@ OPTION(exclude, exclude, true, "exclude" } #endif -OPT(execute, "execute,e", bool, false, - gettext_noop("perform the associated file operation")) +OPT(bookkeep_only, "bookkeep-only", bool, false, + gettext_noop("only update monotone's internal bookkeeping, not the filesystem")) #ifdef option_bodies { - execute = true; + bookkeep_only = true; } #endif ============================================================ --- tests/(imp)_deleting_directories/__driver__.lua 7c4b0f70436cb7aa04916d8b6125acf124769304 +++ tests/(imp)_deleting_directories/__driver__.lua d93d73aa7d1f9804e763eaba12d540b84806e47a @@ -15,10 +15,10 @@ rename("rename-in", "groundzero/rename-i addfile("bystander2", "6") addfile("groundzero/new-file", "7") rename("rename-in", "groundzero/rename-in") -check(mtn("rename", "rename-in", "groundzero/rename-in"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "rename-in", "groundzero/rename-in"), 0, false, false) rename("groundzero/rename-out", "rename-out") -check(mtn("rename", "groundzero/rename-out", "rename-out"), 0, false, false) -check(mtn("drop", "-e", "groundzero/double-kill"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "groundzero/rename-out", "rename-out"), 0, false, false) +check(mtn("drop", "groundzero/double-kill"), 0, false, false) commit() revs.other = base_revision() @@ -31,8 +31,8 @@ remove("groundzero/new-file") remove("groundzero/rename-in") remove("groundzero/new-file") -check(mtn("drop", "-e", "groundzero"), 1, false, false) -check(mtn("drop", "--recursive", "-e", "groundzero"), 0, false, false) +check(mtn("drop", "groundzero"), 1, false, false) +check(mtn("drop", "--recursive", "groundzero"), 0, false, false) commit() revs.dir_del = base_revision() @@ -41,8 +41,8 @@ check(mtn("update", "-r", revs.other), 0 check(mtn("merge"), 1, false, false) check(mtn("update", "-r", revs.other), 0, false, false) -check(mtn("drop", "groundzero/new-file"), 0, false, false) -check(mtn("drop", "groundzero/rename-in"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "groundzero/new-file"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "groundzero/rename-in"), 0, false, false) commit() check(mtn("merge"), 0, false, false) ============================================================ --- tests/(imp)_merge((patch_foo_a),_(delete_foo_))/__driver__.lua 735444cd52e8bba4f174d3a7535bb6bd49022a24 +++ tests/(imp)_merge((patch_foo_a),_(delete_foo_))/__driver__.lua 7369a583460c9839c752d40173538c32ea635a0a @@ -6,7 +6,7 @@ base = base_revision() commit() base = base_revision() -check(mtn("drop", "--recursive", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "--recursive", "foo"), 0, false, false) commit() remove("foo") ============================================================ --- tests/(minor)_drop_in_subdir/__driver__.lua 787ecbc541ca640b3389be3c9335a96047b8c30f +++ tests/(minor)_drop_in_subdir/__driver__.lua c155368d19b887122b3ed0c2c10676f4d46ab2de @@ -13,8 +13,8 @@ chdir("subdir") check(mtn("checkout", "--revision", rev, "codir"), 0, false, false) chdir("subdir") -check(mtn("drop", "foo"), 0, false, false) -check(mtn("drop", "--recursive", "anotherdir"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "--recursive", "anotherdir"), 0, false, false) chdir("..") commit() ============================================================ --- tests/(minor)_update_cleans_emptied_directories/__driver__.lua c6010182ca0b06e2f20bb0d91a31a2dcc00714a8 +++ tests/(minor)_update_cleans_emptied_directories/__driver__.lua 37a361b49f4fa2bb420d24469cbc1c42224e93d1 @@ -7,7 +7,7 @@ remove("testdir") base = base_revision() remove("testdir") -check(mtn("drop", "testdir/foo", "testdir"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testdir/foo", "testdir"), 0, false, false) commit() revert_to(base) ============================================================ --- tests/_MTN_revision_is_required/__driver__.lua 69297e83d80bddb26d885cac8d9171f1079df2ef +++ tests/_MTN_revision_is_required/__driver__.lua 873b4b867d8ce0e5630e301ad2a91b0dd0a4dfed @@ -5,7 +5,7 @@ check(mtn("ls", "missing"), 0, false, fa addfile("bar", "blah blah") remove("foo") check(mtn("ls", "missing"), 0, false, false) -check(mtn("drop", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo"), 0, false, false) check(mtn("ls", "missing"), 0, false, false) commit() ============================================================ --- tests/add_unknown_recursive/__driver__.lua 718038d1d2f01f5d0f9d226cd0ceac0b5a0784ed +++ tests/add_unknown_recursive/__driver__.lua 5660b8f315d9ced31c4c9115cd7404bce44b7d36 @@ -7,7 +7,7 @@ check(not qgrep("adddir/test.txt", "stdo check(mtn("add", "--unknown"), 0, false, false) check(mtn("ls", "known"), 0, true, false) check(not qgrep("adddir/test.txt", "stdout")) -check(mtn("drop", "adddir"), 0, true, false) +check(mtn("drop", "--bookkeep-only", "adddir"), 0, true, false) check(mtn("add", "--unknown", "--recursive"), 0, false, false) check(mtn("ls", "known"), 0, true, false) check(qgrep("adddir/test.txt", "stdout")) ============================================================ --- tests/add_unknown_recursive_ignored/__driver__.lua 4b6cbf98282313988cc49c82125235d342669315 +++ tests/add_unknown_recursive_ignored/__driver__.lua e89b9df6f24316cf0dd8188a48ace704ea50cc28 @@ -9,8 +9,8 @@ check(not qgrep("adddir/fake_test_hooks. check(mtn("ls", "known"), 0, true, false) check(qgrep("adddir/test.txt", "stdout")) check(not qgrep("adddir/fake_test_hooks.lua", "stdout")) -check(mtn("drop", "adddir/test.txt"), 0, true, false) -check(mtn("drop", "adddir"), 0, true, false) +check(mtn("drop", "--bookkeep-only", "adddir/test.txt"), 0, true, false) +check(mtn("drop", "--bookkeep-only", "adddir"), 0, true, false) check(mtn("add", "--unknown", "--recursive", "--no-respect-ignore"), 0, false, false) check(mtn("ls", "known"), 0, true, false) check(qgrep("adddir/fake_test_hooks.lua", "stdout")) ============================================================ --- tests/annotate_file_whose_name_changed/__driver__.lua 4f44e0851966931403a59662e98a2ffd9aad67a6 +++ tests/annotate_file_whose_name_changed/__driver__.lua 2d20d0616dbfbd86dac99b2a70a049889ca93a79 @@ -18,7 +18,7 @@ copy("foo.rightnewname", "foo") remove("junk") copy("foo.rightnewname", "foo") -check(mtn("rename", "-e", "foo", "foo.new"), 0, false, false) +check(mtn("rename", "foo", "foo.new"), 0, false, false) commit() revs.right = base_revision() ============================================================ --- tests/automate_get_corresponding_path/__driver__.lua d2822a27e5486c586730f386dea2bf7bfb16b21a +++ tests/automate_get_corresponding_path/__driver__.lua a40c3a12d101610834ebd79bb9f251ba8599e928 @@ -9,7 +9,7 @@ old_rev = base_revision() check(mtn("commit", "--date=2005-05-21T12:30:51", "--branch=testbranch", "--message=blah-blah"), 0, false, false) old_rev = base_revision() -check(mtn("rename", "foo", "foo2"), 0, true, false) +check(mtn("rename", "--bookkeep-only", "foo", "foo2"), 0, true, false) rename("foo", "foo2") check(mtn("commit", "--date=2005-05-21T12:30:51", "--branch=testbranch", "--message=blah-blah"), 0, false, false) ============================================================ --- tests/automate_inventory/__driver__.lua 21d9c672d0dc7c25066da114ac100a25060e6838 +++ tests/automate_inventory/__driver__.lua 0b95df31fd7cf04f76c777f76d220d91aa423e92 @@ -22,8 +22,8 @@ check(mtn("add", "added"), 0, false, fal writefile("patched", "something has changed") check(mtn("add", "added"), 0, false, false) -check(mtn("rename", "original", "renamed"), 0, false, false) -check(mtn("drop", "dropped"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "renamed"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "dropped"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^ M 0 0 missing$', "stdout"), 0, false, false) @@ -40,9 +40,9 @@ check(mtn("revert", "."), 0, false, fals check(mtn("revert", "."), 0, false, false) -check(mtn("rename", "unchanged", "temporary"), 0, false, false) -check(mtn("rename", "original", "unchanged"), 0, false, false) -check(mtn("rename", "temporary", "original"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "unchanged", "temporary"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "unchanged"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "temporary", "original"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^RRP 1 2 original$', "stdout"), 0, false, false) @@ -62,7 +62,7 @@ check(mtn("revert", "."), 0, false, fals check(mtn("revert", "."), 0, false, false) -check(mtn("rename", "original", "renamed"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "renamed"), 0, false, false) check(mtn("add", "original"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) @@ -75,10 +75,10 @@ check(mtn("revert", "."), 0, false, fals check(mtn("revert", "."), 0, false, false) -check(mtn("rename", "original", "temporary"), 0, false, false) -check(mtn("rename", "missing", "original"), 0, false, false) -check(mtn("rename", "dropped", "missing"), 0, false, false) -check(mtn("rename", "temporary", "dropped"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "temporary"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "missing", "original"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "dropped", "missing"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "temporary", "dropped"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^RRP 1 3 dropped$', "stdout"), 0, false, false) @@ -101,7 +101,7 @@ check(mtn("revert", "."), 0, false, fals check(mtn("revert", "."), 0, false, false) -check(mtn("drop", "dropped"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "dropped"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^D U 0 0 dropped$', "stdout"), 0, false, false) @@ -121,7 +121,7 @@ remove("renamed") check(mtn("revert", "."), 0, false, false) remove("renamed") -check(mtn("rename", "original", "renamed"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "renamed"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(qgrep('^R U 1 0 original$', "stdout")) @@ -144,7 +144,7 @@ remove("original") writefile("renamed", "renamed and patched") remove("original") -check(mtn("rename", "original", "renamed"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "renamed"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^R 1 0 original$', "stdout"), 0, false, false) @@ -169,7 +169,7 @@ remove("new_dir") check(grep('^ 0 0 new_dir\/$', "stdout"), 0, false, false) remove("new_dir") -check(mtn("drop", "new_dir"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "new_dir"), 0, false, false) check(mtn("automate", "inventory", "--rcfile=inventory_hooks.lua"), 0, true, false) check(grep('^D 0 0 new_dir\/$', "stdout"), 0, false, false) ============================================================ --- tests/db_check_and_non-serious_errors/__driver__.lua bfe9ef29c9bcd7afb113328f14bbf01cd1529ad1 +++ tests/db_check_and_non-serious_errors/__driver__.lua a96021255cd73d0de4101d20c6ef103438fd54c2 @@ -16,7 +16,7 @@ check(mtn("cert", rev, "author", "extra_ -- if we drop the file, we'll have a roster that doesn't -- reference its own revision. -- we can then remove the revision to end up with a clean unreferenced roster. -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) check(mtn("commit", "-m", "goingaway"), 0, false, false) del_rev = base_revision() for a,b in pairs({revisions = "id", revision_certs = "id", revision_ancestry = "child"}) do ============================================================ --- tests/diff_shows_renames/__driver__.lua e410c09e7e75cfeed8334183ab2a47e6d1a675e7 +++ tests/diff_shows_renames/__driver__.lua 2923fb883a3683388133bb8b3862bb84ae207982 @@ -5,7 +5,7 @@ root_rev = base_revision() commit() root_rev = base_revision() -check(mtn("mv", "-e", "foo/bar", "foo/newbar"), 0, false, false) +check(mtn("mv", "foo/bar", "foo/newbar"), 0, false, false) writefile("foo/newbar", "version 2!\n") check(mtn("diff"), 0, true, false) check(qgrep("^--- foo/bar\t", "stdout")) @@ -17,7 +17,7 @@ revert_to(root_rev) remove("foo") revert_to(root_rev) -check(mtn("mv", "-e", "foo", "newfoo"), 0, false, false) +check(mtn("mv", "foo", "newfoo"), 0, false, false) writefile("newfoo/bar", "version 2!\n") check(mtn("diff"), 0, true, false) xfail(qgrep("^--- foo/bar\t", "stdout")) ============================================================ --- tests/drop_directory_with_unversioned_files_and_update/__driver__.lua ba27d76247f484248766ddd48db30be4b1728d49 +++ tests/drop_directory_with_unversioned_files_and_update/__driver__.lua 0906a982336aa7de871c4ad1161883582aea19f3 @@ -7,7 +7,7 @@ base0 = base_revision() base0 = base_revision() -check(mtn("drop", "-R", "-e", "subdir"), 0, false, false) +check(mtn("drop", "-R", "subdir"), 0, false, false) check(mtn("commit", "-m", "subdir removed"), 0, false, false) -- Now, move back to the first revision, add an unversioned ============================================================ --- tests/drop_missing_and_unknown_files/__driver__.lua 56107612c8f75868ae090a8bf379bde522026922 +++ tests/drop_missing_and_unknown_files/__driver__.lua 6e145212c1085b0f6dc31673386efffdb680d23c @@ -9,7 +9,7 @@ remove("maude") remove("maude") -check(mtn("drop", "maude"), 0, false, true) +check(mtn("drop", "--bookkeep-only", "maude"), 0, false, true) check(qgrep('dropping maude from workspace manifest', "stderr")) check(mtn("status"), 0, true) @@ -23,7 +23,7 @@ remove("places/cemetery") remove("harold") remove("places/cemetery") -check(mtn("drop", "--missing"), 0, false, true) +check(mtn("drop", "--bookkeep-only", "--missing"), 0, false, true) check(qgrep('dropping harold from workspace manifest', "stderr")) check(qgrep('dropping places/cemetery from workspace manifest', "stderr")) ============================================================ --- tests/drop_removes_attributes/__driver__.lua 2d617fcf68e52e4564f5f1ca3775138fc4571d9c +++ tests/drop_removes_attributes/__driver__.lua 1d5015801ddf16285db6fa7fce9a25cba336556a @@ -9,5 +9,5 @@ commit() commit() -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) check(mtn("attr", "get", "testfile"), 1, true, false) ============================================================ --- tests/drop_with_actual_removal/__driver__.lua db133ade4e4ac20c8cca33e99e2505447cbee94c +++ tests/drop_with_actual_removal/__driver__.lua 98f288fab80ec44a18b1b62c5a1da291410af66b @@ -1,14 +1,23 @@ addfile("file2", "file 2") mtn_setup() addfile("file0", "file 0") addfile("file1", "file 1") addfile("file2", "file 2") +addfile("file3", "file 3") +writefile("file2", "a change") +writefile("file3", "a change") + check(mtn("drop", "file0"), 0, false, false) -check(mtn("drop", "--execute", "file1"), 0, false, false) -check(mtn("drop", "-e", "file2"), 0, false, false) +check(not exists("file0")) +check(mtn("drop", "--bookkeep-only", "file1"), 0, false, false) +check(exists("file1")) + +check(mtn("drop", "file2"), 0, false, true) +check(qgrep("file file2 changed", "stderr")) +check(exists("file2")) + +check(mtn("drop", "--bookkeep-only", "file3"), 0, false, false) +check(exists("file3")) -check(exists("file0")) -check(not exists("file1")) -check(not exists("file2")) ============================================================ --- tests/empty_string_as_a_path_name/__driver__.lua d9a7dcd36790a95523614f361b470ebe0a807515 +++ tests/empty_string_as_a_path_name/__driver__.lua 27e2081cdc69c569f84956584692067953ce3aac @@ -10,9 +10,9 @@ check(indir("foo", mtn("checkout", "--br check(indir("foo", mtn("checkout", "--revision", rev, "")), 1, false, false) check(indir("foo", mtn("checkout", "--branch=testbranch", "")), 1, false, false) -check(mtn("add", ""), 1, false, false) -check(mtn("drop", ""), 1, false, false) -check(mtn("rename", "testfile", ""), 1, false, false) -check(mtn("rename", "", "otherfile"), 1, false, false) +check(mtn("--bookkeep-only", "add", ""), 1, false, false) +check(mtn("--bookkeep-only", "drop", ""), 1, false, false) +check(mtn("--bookkeep-only", "rename", "testfile", ""), 1, false, false) +check(mtn("--bookkeep-only", "rename", "", "otherfile"), 1, false, false) check(mtn("revert", ""), 1, false, false) ============================================================ --- tests/filenames_in_diff_after_rename/__driver__.lua f7d87b46a41ca490c41a8d910705bfb34646227a +++ tests/filenames_in_diff_after_rename/__driver__.lua e1c86bf6daaebc6afa7ebde4a4af3ff2f3a8ea0e @@ -10,7 +10,7 @@ writefile("testfile", "stuff stuff") commit() writefile("testfile", "stuff stuff") -check(mtn("rename", "--execute", "testfile", "otherfile"), 0, false, false) +check(mtn("rename", "testfile", "otherfile"), 0, false, false) check(exists("otherfile")) ============================================================ --- tests/files_with_intermediate__MTN_path_elements/__driver__.lua a964a38aa1159ba141398e70c309866eacdf989f +++ tests/files_with_intermediate__MTN_path_elements/__driver__.lua 07c283c38ec48dc3dfcb2c1e7cf65d4e5f801a92 @@ -31,9 +31,6 @@ check(mtn("rename", "dir3", "dir3x"), 0, check(mtn("rename", "dir1/_MTN/testfile1", "dir1/_MTN/testfile1x"), 0, false, false) check(mtn("rename", "dir2/_MTN", "dir2/TM"), 0, false, false) check(mtn("rename", "dir3", "dir3x"), 0, false, false) -rename("dir1/_MTN/testfile1", "dir1/_MTN/testfile1x") -rename("dir2/_MTN", "dir2/TM") -rename("dir3", "dir3x") commit() check(mtn("checkout", "outdir2"), 0, false, false) @@ -44,7 +41,7 @@ check(samefile("dir3x/_MTN", "outdir2/di -- explicit drop -check(mtn("drop", "dir1/_MTN/testfile2"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "dir1/_MTN/testfile2"), 0, false, false) commit() check(mtn("checkout", "outdir3"), 0, false, false) @@ -53,7 +50,7 @@ check(not exists("outdir3/dir1/_MTN/test -- recursive drop -check(mtn("drop", "--recursive", "dir1"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "--recursive", "dir1"), 0, false, false) commit() check(mtn("checkout", "outdir4"), 0, false, false) ============================================================ --- tests/importing_files_with_non-english_names/__driver__.lua ed1240654dad2a24ed0ff72c8b1103336eccf589 +++ tests/importing_files_with_non-english_names/__driver__.lua bbdb40ff9758961ba4dd4b738fd3e8079a9f0d7c @@ -60,7 +60,7 @@ check(qgrep(european_utf8, "manifest")) -- the tree, then, monotone will attempt to convert them to the current -- locale, and fail miserably. so get rid of them first. -check(mtn("drop", "utf8/" .. european_utf8, "utf8/" .. japanese_utf8), 0, false, false) +check(mtn("drop", "--bookkeep-only", "utf8/" .. european_utf8, "utf8/" .. japanese_utf8), 0, false, false) commit() -- OS X expects data passed to the OS to be utf8, so these tests don't make @@ -88,7 +88,7 @@ if ostype ~= "Darwin" then -- okay, clean up again if ostype ~= "Darwin" then - check(mtn("drop", "8859-1/" .. european_8859_1), 0, false, false) + check(mtn("drop", "--bookkeep-only", "8859-1/" .. european_8859_1), 0, false, false) commit() end ============================================================ --- tests/list_missing_files/__driver__.lua b134a041b42a0cd745398b98fad82aa016df949b +++ tests/list_missing_files/__driver__.lua 20fab850622e786832dd0b9800c72b9f1a00ae5a @@ -20,7 +20,7 @@ writefile("foo") check(samefile("stdout", "missingfoo")) writefile("foo") -check(mtn("drop", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo"), 0, false, false) remove("foo") check(mtn("ls", "missing"), 0, 0, 0) @@ -33,6 +33,6 @@ writefile("bar") check(samefile("stdout", "missingbar")) writefile("bar") -check(mtn("drop", "bar"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "bar"), 0, false, false) remove("bar") check(mtn("ls", "missing"), 0, 0, 0) ============================================================ --- tests/listing_changed_files/__driver__.lua 9c8c71b62aa71fd7ef57fc655b78b281be785811 +++ tests/listing_changed_files/__driver__.lua d0b3fa21acfb76b2bb688b787cd6df82c026776b @@ -9,7 +9,7 @@ check(mtn("drop", "foo"), 0, false, fals check(mtn("ls", "changed"), 0, "") check(mtn("drop", "foo"), 0, false, false) -check(mtn("rename", "--execute", "bar", "bartender"), 0, false, false) +check(mtn("rename", "bar", "bartender"), 0, false, false) check(mtn("ls", "changed"), 0, true, 0) check(samelines("stdout", {"bar", "foo"})) commit() ============================================================ --- tests/listing_workspace_manifests/__driver__.lua 84c0efaf39ebdb33b1b8b3b83e5c5e78ed4671ee +++ tests/listing_workspace_manifests/__driver__.lua 2a0a4649b1e147bfe14eb15666ce1ff47aa77a23 @@ -23,11 +23,9 @@ check(sort("stdout"), 0, "bar\ndir\ndir/ check(mtn("ls", "known"), 0, true) check(sort("stdout"), 0, "bar\ndir\ndir/bar\ndir/foo\nfoo\n") -check(mtn("drop", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo"), 0, false, false) check(mtn("rename", "dir", "dir2"), 0, false, false) -rename("dir", "dir2") check(mtn("rename", "bar", "baz"), 0, false, false) -rename("bar", "baz") check(mtn("ls", "known"), 0, true) check(sort("stdout"), 0, "baz\ndir2\ndir2/bar\ndir2/foo\n") ============================================================ --- tests/log_--diffs/__driver__.lua afd7dc0ac92acbe635da087c82813f29a1f48acd +++ tests/log_--diffs/__driver__.lua 731ccabe31f55e2930ca5f47a79aaf838f9ec2ad @@ -20,7 +20,7 @@ writefile("bar", "bar again\n") writefile("foo", "foo again\n") writefile("bar", "bar again\n") -check(mtn("rename", "-e", "foo", "foo2"), 0, false, false) +check(mtn("rename", "foo", "foo2"), 0, false, false) commit() REV4=base_revision() ============================================================ --- tests/log_hides_deleted_renamed_files/__driver__.lua 552e127f6f14474295e744bc045c560e32190daf +++ tests/log_hides_deleted_renamed_files/__driver__.lua 9f4ef42a007376b5ff0bdcbc784315281be10665 @@ -13,13 +13,13 @@ commit("testbranch", "Addition of baz.") addfile("baz", "baz") commit("testbranch", "Addition of baz.") -check(mtn("drop", "bar", "baz"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "bar", "baz"), 0, false, false) commit() remove("bar") remove("baz") rename("foo", "bar") -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) commit() check(mtn("log", "foo"), 1, 0, false) ============================================================ --- tests/log_with_restriction/__driver__.lua 0b049235864e9f6687f478d58e0d54d83fc82e57 +++ tests/log_with_restriction/__driver__.lua b6b73b9435a5440043f7f9c80c0fa7b0e135e00d @@ -18,7 +18,7 @@ rev_foo2 = base_revision() commit("testbranch", "foo has changed once.") rev_foo2 = base_revision() -check(mtn("drop", "bar"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "bar"), 0, false, false) commit("testbranch", "Dropped bar.") writefile("foo", "changed foo again") ============================================================ --- tests/manifest_restrictions/__driver__.lua 0eea8a13102d0725bfb212125b29c6e33c945119 +++ tests/manifest_restrictions/__driver__.lua aa910e255f6d111a094570a41c30e88a4c2a54fd @@ -73,8 +73,8 @@ writefile("work/A/B/fileAB", "version 2 writefile("work/A/fileA", "version 2 of fileA with some changes") writefile("work/A/B/fileAB", "version 2 of fileAB with some changes") -check(mtn("rename", "work/fileX", "work/file1"), 0, false, false) -check(mtn("drop", "work/file2"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "work/fileX", "work/file1"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "work/file2"), 0, false, false) check(mtn("add", "work/file4"), 0, false, false) -- moved fileX to file1 ============================================================ --- tests/merge((),_(add_a,_drop_a,_add_a))/__driver__.lua 9384feb450710524e13b240b368fd869f8ccfdbd +++ tests/merge((),_(add_a,_drop_a,_add_a))/__driver__.lua 1a6121393c79af7e5a7083ad6637d6d6559631e6 @@ -13,7 +13,7 @@ remove("testfile") commit() remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() copy("v2", "testfile") ============================================================ --- tests/merge((),_(add_a,_patch_a,_drop_a,_add_a))/__driver__.lua d7995b80865ef73c393105bf48f05333b281b108 +++ tests/merge((),_(add_a,_patch_a,_drop_a,_add_a))/__driver__.lua 23ae9125a277a0b5bee70dc2861d83e2e96f65a3 @@ -17,7 +17,7 @@ remove("testfile") commit() remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() copy("v2a", "testfile") ============================================================ --- tests/merge((),_(drop_a,_rename_b_a,_patch_a))/__driver__.lua baaeb528eaf48031cbae198f4cb2d133a6996540 +++ tests/merge((),_(drop_a,_rename_b_a,_patch_a))/__driver__.lua a277fa82e2e8b0820a84c972b3ad0aad86848c7c @@ -13,8 +13,8 @@ remove("testfile") base = base_revision() remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) -check(mtn("rename", "renamefile", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "renamefile", "testfile"), 0, false, false) rename("renamefile", "testfile") commit() ============================================================ --- tests/merge((),_(patch_a,_drop_a,_add_a))/__driver__.lua 1a72edadfc966221a7b4d2c88ee234a299256c4b +++ tests/merge((),_(patch_a,_drop_a,_add_a))/__driver__.lua 9a0d1dcc69eda3954a15bdd2fc2f6fc31731b3b4 @@ -14,7 +14,7 @@ remove("testfile") commit() remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() copy("v2a", "testfile") ============================================================ --- tests/merge((add_a),_(add_a,_drop_a,_add_a))/__driver__.lua 7fb698f24b8fd9a9580ca750682743eeb0972939 +++ tests/merge((add_a),_(add_a,_drop_a,_add_a))/__driver__.lua a935b16a54b815a6e6b1ddc9c2e5d6e0a13750ac @@ -21,7 +21,7 @@ remove("testfile") commit() remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() copy("right_2_a", "testfile") ============================================================ --- tests/merge((drop_a),_(drop_a,_add_a))/__driver__.lua a7a463c31f1d6e223fbfed77555044754f898823 +++ tests/merge((drop_a),_(drop_a,_add_a))/__driver__.lua 27fee0d798fbab4bafdd93da456a9bf32398b269 @@ -11,13 +11,13 @@ base = base_revision() base = base_revision() -- drop it -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() revert_to(base) -- on the other side of the fork, drop it ... -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) -- we add this file so that we don't end up with the same revision as -- our first "drop" commit check(mtn("add", "nonce"), 0, false, false) ============================================================ --- tests/merge((drop_a),_(rename_a_b,_patch_b))/__driver__.lua 6fd049ff377e80271b69e41a84ccc19fe6d2d0e7 +++ tests/merge((drop_a),_(rename_a_b,_patch_b))/__driver__.lua 7c6a662fa620c7515804cb6e5e513549429015c5 @@ -8,14 +8,14 @@ base = base_revision() base = base_revision() -- drop it -check(mtn("drop", "original"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "original"), 0, false, false) commit() revert_to(base) -- patch and rename it rename("original", "different") -check(mtn("rename", "original", "different"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "original", "different"), 0, false, false) append("different", "more\n") commit() ============================================================ --- tests/merge((patch_a),_(drop_a,_add_a))/__driver__.lua 86bce67fd140cdcf1685ee694bfd9ed41c5d3dbd +++ tests/merge((patch_a),_(drop_a,_add_a))/__driver__.lua 9fa8b98418f195441770ae5069b8417245ace48f @@ -19,7 +19,7 @@ remove("testfile") revert_to(base) remove("testfile") -check(mtn("drop", "testfile"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile"), 0, false, false) commit() copy("new_right", "testfile") ============================================================ --- tests/merge((patch_foo_a),_(rename_foo__bar_))/__driver__.lua 9caec745c7278f1c91d55ffc5261b724c6a9c063 +++ tests/merge((patch_foo_a),_(rename_foo__bar_))/__driver__.lua 17e0759d1977200afa473c363ef160d66bbc4c4f @@ -7,7 +7,6 @@ check(mtn("rename", "foo", "bar"), 0, fa base = base_revision() check(mtn("rename", "foo", "bar"), 0, false, false) -rename("foo", "bar") commit() remove("bar") ============================================================ --- tests/merge((rename_a_b),_(rename_a_c))/__driver__.lua 9321316dd8f07d73f429075d838059da35587abb +++ tests/merge((rename_a_b),_(rename_a_c))/__driver__.lua 43fda6d867442f92475b2b6897d4177fdc69336d @@ -8,14 +8,14 @@ rename("a", "b") base = base_revision() rename("a", "b") -check(mtn("rename", "a", "b"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "a", "b"), 0, false, false) commit() rename("b", "a") revert_to(base) rename("a", "c") -check(mtn("rename", "a", "c"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "a", "c"), 0, false, false) commit() check(mtn("merge", "--branch=testbranch"), 1, false, false) ============================================================ --- tests/merge_rename_file_and_rename_dir/__driver__.lua d70a9ff66618082f0941927ed79a09be99565fc1 +++ tests/merge_rename_file_and_rename_dir/__driver__.lua 27cebc14f86e462cad63c953305935a53a5cb656 @@ -13,13 +13,11 @@ check(mtn("rename", "foo", "foof"), 0, f -- rename directory check(mtn("rename", "foo", "foof"), 0, false, false) -rename("foo", "foof") commit() -- rename file in directory revert_to(base) -rename("foo/bar", "foo/barf") check(mtn("rename", "foo/bar", "foo/barf"), 0, false, false) commit() ============================================================ --- tests/merge_with_add,_rename_file,_and_rename_dir/__driver__.lua 705e5c74ebaf2d8e9f0be9bf247821c96d079818 +++ tests/merge_with_add,_rename_file,_and_rename_dir/__driver__.lua 21221aef01bc565b0ca0f21a73dea4843c07c6ca @@ -29,7 +29,7 @@ revs.base = base_revision() commit() revs.base = base_revision() -check(mtn("rename", "foo/", "bar/"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo/", "bar/"), 0, false, false) rename("foo", "bar") commit() revs.rename_dir = base_revision() @@ -43,7 +43,7 @@ rename("foo/a", "foo/b") check(mtn("merge"), 0, false, false) rename("foo/a", "foo/b") -check(mtn("rename", "foo/a", "foo/b"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo/a", "foo/b"), 0, false, false) commit() revs.rename_file = base_revision() ============================================================ --- tests/merging_(add_a)_with_(add_a,_drop_a)/__driver__.lua 40ff359a25f6c765645a432641b5c3a941c05055 +++ tests/merging_(add_a)_with_(add_a,_drop_a)/__driver__.lua 95963fea52aff5dbd3ac034f8792f70ba9c6485e @@ -48,7 +48,7 @@ revert_to(revs.c, "branch.main") -- produce state E revert_to(revs.c, "branch.main") -check(mtn("drop", "bar"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "bar"), 0, false, false) commit("branch.main") revs.e = base_revision() ============================================================ --- tests/merging_(add_a,_rename_a_b)_with_(add_b)/__driver__.lua b37feaf5408df2ec82bf70df8ae3ca74d3199c90 +++ tests/merging_(add_a,_rename_a_b)_with_(add_b)/__driver__.lua 9fa4a98d0e5d1d2d14b6c16c06ab9ac2d9fba344 @@ -19,7 +19,7 @@ revs.a = base_revision() revs.a = base_revision() -- produce state B -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("foo", "bar") commit() revs.b = base_revision() ============================================================ --- tests/merging_a_rename_twice/__driver__.lua 4159fe861a5be46dc91d37530a0f0e944985750a +++ tests/merging_a_rename_twice/__driver__.lua 8c1d022f0f792ba9eff453c7f7797aa1da7a10c2 @@ -43,7 +43,7 @@ revert_to(revs.a) -- produce state E revert_to(revs.a) -check(mtn("rename", "x", "y"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "x", "y"), 0, false, false) rename("x", "y") commit("branch.y") revs.e = base_revision() ============================================================ --- tests/no-change_deltas_disappear/__driver__.lua 93be632c2e4e6ee8d6f8a9bea2ca8969c16c86f6 +++ tests/no-change_deltas_disappear/__driver__.lua 75c66ed8d2a7836fe1759c208fc6404123f53437 @@ -23,7 +23,7 @@ addfile("end_file", "end file") writefile("testfile", "version 1") addfile("end_file", "end file") -check(mtn("drop", "start_file"), 0, true, false) +check(mtn("drop", "--bookkeep-only", "start_file"), 0, true, false) commit() revs.new = base_revision() files.new = sha1("testfile") ============================================================ --- tests/pivot_root/__driver__.lua c16c49bd7cca6d5b343151c9d87007431c4237ee +++ tests/pivot_root/__driver__.lua 74d3f9a78052165a356b5958f1119f2309038a4c @@ -23,18 +23,18 @@ check(indir("workspace", mtn("commit", " check(indir("workspace", mtn("commit", "-m", "foo")), 0, false, false) -check(indir("workspace", mtn("pivot_root", "nosuchdir", "foo")), 1, false, false) -check(indir("workspace", mtn("pivot_root", "dir1/file1", "foo")), 1, false, false) -check(indir("workspace", mtn("pivot_root", "dir3", "old_root")), 1, false, false) -check(indir("workspace", mtn("pivot_root", "dir1", "nosuchdir/old_root")), 1, false, false) -check(indir("workspace", mtn("pivot_root", "dir1", "file1/old_root")), 1, false, false) -check(indir("workspace", mtn("pivot_root", "dir1", "dir2")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "nosuchdir", "foo")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "dir1/file1", "foo")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "dir3", "old_root")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "dir1", "nosuchdir/old_root")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "dir1", "file1/old_root")), 1, false, false) +check(indir("workspace", mtn("pivot_root", "--bookkeep-only", "dir1", "dir2")), 1, false, false) check(indir("workspace", mtn("ls", "changed")), 0) check(indir("workspace", mtn("ls", "missing")), 0) check(indir("workspace", mtn("ls", "unknown")), 0) -check(indir("workspace", mtn("pivot_root", "--execute", "dir1", "old_root")), 0, false, false) +check(indir("workspace", mtn("pivot_root", "dir1", "old_root")), 0, false, false) check(isdir("workspace/_MTN")) check(isdir("workspace/dir2")) ============================================================ --- tests/pivot_root_to_new_dir/__driver__.lua 4cab92c63770bfdeffaf281f97426739d1e54b62 +++ tests/pivot_root_to_new_dir/__driver__.lua 1aced95b97d46debcd4087b1624980c159de369f @@ -14,7 +14,7 @@ check(indir("workspace", mtn("add", "new mkdir("workspace/new_root") check(indir("workspace", mtn("add", "new_root")), 0, false, false) -check(indir("workspace", mtn("pivot_root", "-e", "new_root", "Attic")), +check(indir("workspace", mtn("pivot_root", "new_root", "Attic")), 0, false, false) check(isdir("workspace/_MTN")) ============================================================ --- tests/pluck_basics/__driver__.lua 9379aaadf1a3df8333535db2c08f969421ff3d84 +++ tests/pluck_basics/__driver__.lua c2868ffdd9505db3747facd10fedf4f0122a63bc @@ -15,7 +15,7 @@ remove("somefile") revert_to(root_rev) remove("somefile") -check(mtn("rename", "-e", "testfile", "otherfile"), 0, false, false) +check(mtn("rename", "testfile", "otherfile"), 0, false, false) writefile("otherfile", "1\n2\n3\n4\n5-changed\n") check(mtn("pluck", "-r", second_rev), 0, false, false) @@ -39,7 +39,7 @@ check(readfile("_MTN/log") == "") check(mtn("pluck", "-r", root_rev, "-r", second_rev), 1, false, false) check(readfile("_MTN/log") == "") -check(mtn("drop", "-e", "somefile"), 0, false, false) +check(mtn("drop", "somefile"), 0, false, false) -- now it should work again check(mtn("pluck", "-r", root_rev, "-r", second_rev), 0, false, false) newtext = readfile("otherfile") ============================================================ --- tests/pluck_lifecycle/__driver__.lua f5be8a837d2e51ec5fad7bf2abdbf105965b749a +++ tests/pluck_lifecycle/__driver__.lua 9108772eb30390339e6e827295af01751a471562 @@ -35,7 +35,7 @@ addfile("d", "original\n") -- and two_rev revert_to(root_rev) addfile("d", "original\n") -check(mtn("drop", "-e", "c"), 0, false, false) +check(mtn("drop", "c"), 0, false, false) commit() two_rev = base_revision() ============================================================ --- tests/rename_cannot_overwrite_files/__driver__.lua f6e813874fc679c957fecc77f83d0e4ff2ac2c09 +++ tests/rename_cannot_overwrite_files/__driver__.lua aeb55851afe7fe777767dc0983e27688f8aef538 @@ -12,12 +12,12 @@ addfile("rename_dir/file", "bar bar") mkdir("rename_dir") addfile("rename_dir/file", "bar bar") -check(mtn("rename", "unknown_file", "other_file"), 1, false, false) -check(mtn("rename", "rename_file", "target_file"), 1, false, false) -check(mtn("rename", "rename_dir", "target_file"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "unknown_file", "other_file"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "rename_file", "target_file"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "rename_dir", "target_file"), 1, false, false) commit() +check(mtn("rename", "--bookkeep-only", "unknown_file", "other_file"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "rename_file", "target_file"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "rename_dir", "target_file"), 1, false, false) -check(mtn("rename", "unknown_file", "other_file"), 1, false, false) -check(mtn("rename", "rename_file", "target_file"), 1, false, false) -check(mtn("rename", "rename_dir", "target_file"), 1, false, false) ============================================================ --- tests/rename_dir_to_non-sibling/__driver__.lua 1431ca822db0dfe690b2dface707fe280fedb8bd +++ tests/rename_dir_to_non-sibling/__driver__.lua a1a89705c4ccf2389fade6d76db3d37e80f404ff @@ -26,15 +26,15 @@ addfile(old_dir .. "/new-file", "foo pin addfile("subdir1/bystander2", "asdfasknb") addfile(old_dir .. "/new-file", "foo ping") -check(mtn("rename", old_dir .. "/rename-out-file", "rename-out-file"), 0, false, false) +check(mtn("rename", "--bookkeep-only", old_dir .. "/rename-out-file", "rename-out-file"), 0, false, false) rename(old_dir .. "/rename-out-file", "rename-out-file") -check(mtn("rename", old_dir .. "/rename-out-dir", "rename-out-dir"), 0, false, false) +check(mtn("rename", "--bookkeep-only", old_dir .. "/rename-out-dir", "rename-out-dir"), 0, false, false) rename(old_dir .. "/rename-out-dir", "rename-out-dir") -check(mtn("rename", "rename-in-dir", old_dir .. "/rename-in-dir"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "rename-in-dir", old_dir .. "/rename-in-dir"), 0, false, false) rename("rename-in-dir", old_dir .. "/rename-in-dir") -check(mtn("rename", "rename-in-file", old_dir .. "/rename-in-file"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "rename-in-file", old_dir .. "/rename-in-file"), 0, false, false) rename("rename-in-file", old_dir .. "/rename-in-file") -check(mtn("drop", old_dir .. "/doomed"), 0, false, false) +check(mtn("drop", "--bookkeep-only", old_dir .. "/doomed"), 0, false, false) commit() left = base_revision() @@ -42,7 +42,7 @@ revert_to(base) revert_to(base) -check(mtn("rename", old_dir, new_dir), 0, false, false) +check(mtn("rename", "--bookkeep-only", old_dir, new_dir), 0, false, false) rename(old_dir, new_dir) commit() right = base_revision() ============================================================ --- tests/rename_file_to_dir/__driver__.lua fa70ea43a4f9b4a1560d96ace0ce03a3dbfd774b +++ tests/rename_file_to_dir/__driver__.lua f6eee8a739b375232f503815fbd3ab0d12c0d5c0 @@ -9,6 +9,6 @@ mkdir("dir") commit() mkdir("dir") -check(mtn("rename", "file", "dir"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "file", "dir"), 1, false, false) check(mtn("status"), 0, false, false) check(mtn("diff"), 0, false, false) ============================================================ --- tests/rename_files_into_a_directory/__driver__.lua b6594e77f04c1ecdfc10a23ec08740695cd0ec7e +++ tests/rename_files_into_a_directory/__driver__.lua a3ecc06ad296b8fe854ca4c672d8145c6c582182 @@ -26,15 +26,15 @@ co() co() -- basics -check(indir("checkout", mtn("rename", "ant", "foo")), 0, false, false) -check(indir("checkout", mtn("rename", "mosquito", "termite", "foo")), +check(indir("checkout", mtn("rename", "--bookkeep-only", "ant", "foo")), 0, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "mosquito", "termite", "foo")), 0, false, false) co() -- with --execute -check(indir("checkout", mtn("--execute", "rename", "ant", "foo")), 0, false, false) -check(indir("checkout", mtn("--execute", "rename", "mosquito", "termite", "foo")), +check(indir("checkout", mtn("rename", "ant", "foo")), 0, false, false) +check(indir("checkout", mtn("rename", "mosquito", "termite", "foo")), 0, false, false) for _,x in pairs{"ant", "mosquito", "termite"} do check(exists("checkout/foo/"..x)) @@ -42,27 +42,27 @@ end end -- to root -check(indir("checkout", mtn("--execute", "rename", "foo/ant", ".")), +check(indir("checkout", mtn("rename", "foo/ant", ".")), 0, false, false) -check(indir("checkout", mtn("rename", "foo/termite", ".")), 0, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "foo/termite", ".")), 0, false, false) check(exists("checkout/ant") and exists("checkout/foo/termite")) check(not exists("checkout/foo/ant") and not exists("checkout/termite")) co() -- conflicts -check(indir("checkout", mtn("rename", "gnat", "foo")), 1, false, false) -check(indir("checkout", mtn("rename", "gnat", "termite", "foo")), 1, false, false) -check(indir("checkout", mtn("rename", "termite", "foo")), 0, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "gnat", "foo")), 1, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "gnat", "termite", "foo")), 1, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "termite", "foo")), 0, false, false) -check(indir("checkout", mtn("rename", "mosquito", "foo/ant")), 0, false, false) -check(indir("checkout", mtn("rename", "ant", "foo")), 1, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "mosquito", "foo/ant")), 0, false, false) +check(indir("checkout", mtn("rename", "--bookkeep-only", "ant", "foo")), 1, false, false) co() -check(indir("checkout", mtn("--execute", "rename", "gnat", "foo")), 1, false, false) -check(indir("checkout", mtn("--execute", "rename", "gnat", "termite", "foo")), 1, false, false) -check(indir("checkout", mtn("--execute", "rename", "termite", "foo")), 0, false, false) +check(indir("checkout", mtn("rename", "gnat", "foo")), 1, false, false) +check(indir("checkout", mtn("rename", "gnat", "termite", "foo")), 1, false, false) +check(indir("checkout", mtn("rename", "termite", "foo")), 0, false, false) check(exists("checkout/foo/termite") and not exists("checkout/termite")) check(exists("checkout/gnat") and exists("checkout/foo/gnat/.")) check(not exists("foo/gnat/gnat")) ============================================================ --- tests/rename_in_new_workspace/__driver__.lua 1d1d242f813c900802263ac080bdfedef98fbcc6 +++ tests/rename_in_new_workspace/__driver__.lua 51c7bc24a789c4fe6642522e5d3c65212b51d135 @@ -1,4 +1,4 @@ mtn_setup() mtn_setup() -check(mtn("rename", "unversioned", "also-unversioned"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "unversioned", "also-unversioned"), 1, false, false) check(mtn("status"), 0, false, false) ============================================================ --- tests/rename_in_subdir/__driver__.lua c7e95641f60f08909952598f3a668e19a00b0e91 +++ tests/rename_in_subdir/__driver__.lua 0bad5a225dcf3aa776630d083c9d3068e0953cbb @@ -9,10 +9,8 @@ commit() commit() rev = base_revision() -rename("subdir/foo", "subdir/foo-renamed") check(indir("subdir", mtn("rename", "foo", "foo-renamed")), 0, false, false) check(indir("subdir", mtn("rename", "anotherdir", "../anotherdir-renamed")), 0, false, false) -rename("subdir/anotherdir", "anotherdir-renamed") commit() check(mtn("checkout", "--revision", rev, "codir"), 0, false, false) ============================================================ --- tests/rename_moves_attributes/__driver__.lua 1c100548abe65110e89fa57d7a271abd1a65f904 +++ tests/rename_moves_attributes/__driver__.lua 70560f4011b8606c8fced92a9e857531344adfe5 @@ -9,7 +9,7 @@ commit() commit() -check(mtn("rename", "testfile", "otherfile"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "testfile", "otherfile"), 0, false, false) rename("testfile", "otherfile") commit() ============================================================ --- tests/rename_with_actual_file_rename/__driver__.lua eba1a60bad4f749e7c609d233cc6c4828823622e +++ tests/rename_with_actual_file_rename/__driver__.lua 4fa04fa6e2050d4de89175cdf4ffc5d45596f98f @@ -1,17 +1,13 @@ addfile("file1", "file 1") mtn_setup() addfile("file0", "file 0") addfile("file1", "file 1") -addfile("file2", "file 2") -check(mtn("rename", "file0", "newfile0"), 0, false, false) -check(mtn("rename", "--execute", "file1", "newfile1"), 0, false, false) -check(mtn("rename", "-e", "file2", "newfile2"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "file0", "newfile0"), 0, false, false) +check(mtn("rename", "file1", "newfile1"), 0, false, false) check(exists("file0")) check(not exists("file1")) -check(not exists("file2")) check(not exists("newfile0")) check(exists("newfile1")) -check(exists("newfile2")) ============================================================ --- tests/renaming_a_deleted_file/__driver__.lua 6ba1866a11f40f2101c2265c3d9f1f792cd40bf2 +++ tests/renaming_a_deleted_file/__driver__.lua dc9832c80a30deb255e8a062380ceb4b0d344680 @@ -12,7 +12,7 @@ check(mtn("add", "baz"), 0, false, false -- produce move edge check(mtn("add", "baz"), 0, false, false) -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("foo", "bar") commit() @@ -22,7 +22,7 @@ remove("baz") remove("baz") -- make a delete edge on the move preimage -check(mtn("drop", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo"), 0, false, false) commit() -- merge the del and the rename ============================================================ --- tests/renaming_a_directory/__driver__.lua f8d5fecc9166f44d54d382d249bd8157021b64c9 +++ tests/renaming_a_directory/__driver__.lua 9fb630300dcc1992c8bff1e2d64aa803938b13d6 @@ -13,7 +13,7 @@ root_f_sha = sha1("foo/foo") root_f_sha = sha1("foo/foo") -- produce move edge -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("foo", "bar") commit() ============================================================ --- tests/renaming_a_directory_and_then_adding_a_new_with_the_old_name/__driver__.lua e2aa0980b891adfb61f0785e69c62bf82e5acf26 +++ tests/renaming_a_directory_and_then_adding_a_new_with_the_old_name/__driver__.lua e5f63ad4836f7aae57d37950ee10b1d8bbd86fe2 @@ -8,7 +8,7 @@ commit() commit() -- rename 'foo' dir to 'bar' -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("foo", "bar") -- add new 'foo' dir ============================================================ --- tests/renaming_a_file/__driver__.lua 4961bcc15ba436f72099ec495863b6e3f04ea04b +++ tests/renaming_a_file/__driver__.lua e50cef4ee28f3032e8468da7d41548b0bd1a78e9 @@ -11,7 +11,7 @@ root_f_sha = sha1("foo") root_f_sha = sha1("foo") -- produce move edge -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) copy("foo", "bar") commit() @@ -32,23 +32,23 @@ check(qgrep("bleh", "manifest")) check(qgrep("bleh", "manifest")) -- rename a rename target -check(mtn("rename", "bleh", "blah"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "bleh", "blah"), 0, false, false) check(qgrep("bleh", "_MTN/revision")) check(qgrep("blah", "_MTN/revision")) -check(mtn("rename", "blah", "blyh"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "blah", "blyh"), 0, false, false) check(qgrep("bleh", "_MTN/revision")) check(not qgrep("blah", "_MTN/revision")) check(qgrep("blyh", "_MTN/revision")) -- undo a rename -check(mtn("rename", "blyh", "bleh"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "blyh", "bleh"), 0, false, false) check(not qgrep("blyh", "_MTN/revision")) check(not qgrep("bleh", "_MTN/revision")) -- move file before renaming it check(mtn("status"), 0, false, false) rename("bar", "barfoo") -check(mtn("rename", "bar", "barfoo"), 0, false, true) +check(mtn("rename", "--bookkeep-only", "bar", "barfoo"), 0, false, true) check(qgrep('renaming bar to barfoo in workspace manifest', "stderr")) check(mtn("status"), 0, false, false) @@ -57,6 +57,6 @@ rename("bar", "barfoofoo") check(mtn("revert", "."), 0, false, false) check(mtn("status"), 0, false, false) rename("bar", "barfoofoo") -check(mtn("rename", "bar", "barfoo"), 0, false, true) +check(mtn("rename", "--bookkeep-only", "bar", "barfoo"), 0, false, true) check(qgrep('renaming bar to barfoo in workspace manifest', "stderr")) check(mtn("status"), 1, false, false) ============================================================ --- tests/renaming_a_patched_file/__driver__.lua 8fd738fcfcbdac05ca85563b46af53a976fe5672 +++ tests/renaming_a_patched_file/__driver__.lua f81d2aa8d28583b905938d8715cd4e4756065d9c @@ -11,7 +11,7 @@ root_f_sha = sha1("foo") root_f_sha = sha1("foo") -- produce move edge -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("foo", "bar") commit() ============================================================ --- tests/renaming_and_editing_a_file/__driver__.lua 0e8b972b0de53d89db21e0cab967bdfa39aed23b +++ tests/renaming_and_editing_a_file/__driver__.lua 0a642d8215a047f22a1baf695ec0ecf437092c09 @@ -17,7 +17,7 @@ check(mtn("commit", "--message=edit-foo" -- produce 4-step path with move in the middle rename("foo2", "foo") check(mtn("commit", "--message=edit-foo"), 0, false, false) -check(mtn("rename", "foo", "bar"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo", "bar"), 0, false, false) rename("bar1", "bar") check(mtn("commit", "--message=rename-to-bar"), 0, false, false) rename("bar2", "bar") ============================================================ --- tests/restricted_commands_are_consistent/__driver__.lua 2859490ab866d2bcb418b6738123b58cf87dc760 +++ tests/restricted_commands_are_consistent/__driver__.lua c0e5031b850d122bc5568d053101937e1f201a93 @@ -97,14 +97,14 @@ commit() -- ls unknown -- dropped files are valid for restriction but are unknown in the post-state -check(mtn("drop", unpack(allfiles)), 0, false, false) +check(mtn("drop", "--bookkeep-only", unpack(allfiles)), 0, false, false) checkall({"ls", "unknown"}, "stdout") check(mtn("revert", "."), 0, false, false) -- ls ignored check(get("ignore.lua")) -- only unknown files are considered by ls ignored -check(mtn("drop", unpack(allfiles)), 0, false, false) +check(mtn("drop", "--bookkeep-only", unpack(allfiles)), 0, false, false) checkall({"ls", "ignored", "--rcfile=ignore.lua"}, "stdout") check(mtn("revert", "."), 0, false, false) ============================================================ --- tests/restrictions_with_deletes/__driver__.lua c0448c63d3666caef975f943a3617fda1d59ebcd +++ tests/restrictions_with_deletes/__driver__.lua 032fed8ccdfdf54292c5ede154934918a47dcbe4 @@ -20,5 +20,5 @@ root_rev = base_revision() commit() root_rev = base_revision() -check(mtn("drop", "foo/bar", "foo"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "foo/bar", "foo"), 0, false, false) check(mtn("st", "--exclude", "foo/bar"), 1, false, false) ============================================================ --- tests/restrictions_with_renames_and_adds/__driver__.lua 80407049b9742d5c8391b52709c82b35cf252316 +++ tests/restrictions_with_renames_and_adds/__driver__.lua 7a202360833e8a12a30b62e76df826cd0589bcac @@ -25,7 +25,7 @@ rev_with_testdir = base_revision() commit() rev_with_testdir = base_revision() -check(mtn("mv", "-e", "testdir", "newdir"), 0, false, false) +check(mtn("mv", "testdir", "newdir"), 0, false, false) addfile("newdir/foo", "blah blah\n") -- these should succeed. check(mtn("diff"), 0, false, false) @@ -33,8 +33,9 @@ check(mtn("commit", "-m", "foo"), 0, fal -- or: rename a dir A, add a replacement B, add something C to the -- replacement, then use a restriction that includes A and C only -revert_to(rev_with_testdir) -check(mtn("mv", "-e", "testdir", "newdir"), 0, false, false) +check(mtn("up", "-r", rev_with_testdir), 0, false, false) +check(not exists("newdir")) +check(mtn("mv", "testdir", "newdir"), 0, false, false) mkdir("testdir") addfile("testdir/newfile", "asdfasdf") -- these are nonsensical, and should error out gracefully @@ -43,13 +44,13 @@ check(mtn("commit", "newdir", "testdir/n -- or: rename A, then rename B under it, and use a restriction that includes -- only B -revert_to(root_rev) +check(mtn("up", "-r", root_rev), 0, false, false) mkdir("A") mkdir("B") check(mtn("add", "A", "B"), 0, false, false) commit() -check(mtn("rename", "-e", "A", "newA"), 0, false, false) -check(mtn("rename", "-e", "B", "newA/B"), 0, false, false) +check(mtn("rename", "A", "newA"), 0, false, false) +check(mtn("rename", "B", "newA/B"), 0, false, false) -- these are nonsensical, and should error out gracefully check(mtn("diff", "newA/B"), 1, false, false) check(mtn("commit", "newA/B"), 1, false, false) ============================================================ --- tests/revert_file_blocked_by_unversioned_directory/__driver__.lua 2d44447cc9210396b96b166837449336da5d007c +++ tests/revert_file_blocked_by_unversioned_directory/__driver__.lua c85d6f7894b2834e9ef56a32c89d792255fa9321 @@ -12,7 +12,7 @@ commit() commit() -check(mtn("--execute", "mv", "foo", "bar"), 0, false, false) +check(mtn("mv", "foo", "bar"), 0, false, false) -- create directory blocking revert of foo mkdir("foo") ============================================================ --- tests/revert_file_to_base_revision/__driver__.lua 1e36ec7995901b57a394fe9c5a97d116720eaecc +++ tests/revert_file_to_base_revision/__driver__.lua a216dddc220abf1d3e0ecd727086283a1925b952 @@ -29,7 +29,7 @@ check(not qgrep("testfile0", "stdout")) -- check reverting a delete -check(mtn("drop", "testfile0"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile0"), 0, false, false) check(qgrep("testfile0", "_MTN/revision")) check(mtn("status"), 0, true) check(qgrep("testfile0", "stdout")) @@ -44,7 +44,7 @@ f:close() f = io.open("testfile0", "a") f:write("liver and maude\n") f:close() -check(mtn("drop", "testfile0"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile0"), 0, false, false) check(qgrep("testfile0", "_MTN/revision")) check(mtn("status"), 0, true) check(qgrep("testfile0", "stdout")) @@ -101,8 +101,8 @@ copy("sub/testfile2", "sub/foofile2") copy("testfile0", "foofile0") copy("sub/testfile2", "sub/foofile2") -check(mtn("rename", "testfile0", "foofile0"), 0, false, false) -check(mtn("rename", "sub/testfile2", "sub/foofile2"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "testfile0", "foofile0"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "sub/testfile2", "sub/foofile2"), 0, false, false) check(mtn("status"), 0, true) check(qgrep("foofile0", "stdout")) ============================================================ --- tests/revert_moving_a_file_to_a_renamed_directory/__driver__.lua f8a5e9e2519fa8eda989d08d9c2e47dca89e36f7 +++ tests/revert_moving_a_file_to_a_renamed_directory/__driver__.lua 2ecd85d93318ac48767c1a88db18f79050afc392 @@ -8,6 +8,6 @@ commit() commit() -check(mtn("--execute", "mv", "file", "dir"), 0, false, false) -check(mtn("--execute", "mv", "dir", "foo"), 0, false, false) +check(mtn("mv", "file", "dir"), 0, false, false) +check(mtn("mv", "dir", "foo"), 0, false, false) check(mtn("revert", "dir"), 0, false, false) ============================================================ --- tests/revert_renames/__driver__.lua eae91aa09c58db76a12752c76140b68476236edb +++ tests/revert_renames/__driver__.lua c171502cfeb96de9391e0733365a45aaf6bff0b6 @@ -8,7 +8,7 @@ writefile("foofile0", "squirrils monkeys commit() writefile("foofile0", "squirrils monkeys dingos") -check(mtn("rename", "testfile0", "foofile0"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "testfile0", "foofile0"), 0, false, false) check(qgrep("testfile0", "_MTN/revision")) check(qgrep("foofile0", "_MTN/revision")) check(mtn("status"), 0, true) @@ -22,7 +22,7 @@ writefile("foofile0", "squirrils monkeys check(not qgrep("foofile0", "stdout")) writefile("foofile0", "squirrils monkeys dingos") -check(mtn("rename", "testfile0", "foofile0"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "testfile0", "foofile0"), 0, false, false) check(qgrep("testfile0", "_MTN/revision")) check(qgrep("foofile0", "_MTN/revision")) check(mtn("status"), 0, true) ============================================================ --- tests/revert_the_middle_of_a_sequence/__driver__.lua f0626d4f58950a5e95cf58a18a5f6c3e72a0a247 +++ tests/revert_the_middle_of_a_sequence/__driver__.lua 38fd09afc38afbee8acfc700507186a9c1fbf007 @@ -1,10 +1,10 @@ commit() mtn_setup() addfile("file1", "original file1") commit() -- setup -check(mtn("rename", "file1", "file2"), 0, true, true) +check(mtn("rename", "--bookkeep-only", "file1", "file2"), 0, true, true) addfile("file1", "new file1") -- first check; revert the new file which will end up reverting both changes @@ -13,7 +13,7 @@ check(mtn("revert", "file1"), 0, true, t -- check results -- setup -check(mtn("rename", "file1", "file3"), 0, true, true) +check(mtn("rename", "--bookkeep-only", "file1", "file3"), 0, true, true) addfile("file1", "new file1") -- second check; revert the renamed file which will.. uh.. trip an I() ============================================================ --- tests/reverting_a_pivot_root/__driver__.lua b2e210fb6d037e9acf9f46b92feb4c193db12c86 +++ tests/reverting_a_pivot_root/__driver__.lua 36d99a86c367367863e36a2af9d0911543d074f6 @@ -17,7 +17,7 @@ check(indir("workspace", mtn("commit", " check(indir("workspace", mtn("commit", "-m", "foo")), 0, false, false) -check(indir("workspace", mtn("pivot_root", "--execute", "dir1", "old_root")), 0, false, false) +check(indir("workspace", mtn("pivot_root", "dir1", "old_root")), 0, false, false) check(isdir("workspace/_MTN")) check(isdir("workspace/dir2")) ============================================================ --- tests/schema_migration/__driver__.lua f6ec1d90bd69e6cce3fcc9a4f2e6ae29b7da3a7f +++ tests/schema_migration/__driver__.lua d708709c691b1536d54702969a8ffbffd5fa3c5f @@ -63,7 +63,7 @@ check(mtn("update"), 0, false, false) check(mtn("propagate", "--date=2002-01-01T12:00:00", "testbranch2", "testbranch1"), 0, false, false) check(mtn("update"), 0, false, false) -check(mtn("drop", "testfile1"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile1"), 0, false, false) writefile("testfile4", "f4v2\n") check(mtn("commit", "--branch=testbranch3", "--date=2003-01-01T12:00:00", "--message-file=blah_blah.txt"), 0, false, false) ============================================================ --- tests/schema_migration_with_rosterify/__driver__.lua 7de4d8c9f78f2f3ac4912b508e6aae17c40ade1b +++ tests/schema_migration_with_rosterify/__driver__.lua 5b2bd19e135432bf53511d7fd1f422b5177544c4 @@ -51,7 +51,7 @@ check(mtn("update"), 0, false, false) "--message-file=old_revs_propagate_log"), 0, false, false) check(mtn("update"), 0, false, false) -check(mtn("drop", "testfile1"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "testfile1"), 0, false, false) writefile("testfile4", "f4v2\n") check(mtn("commit", "--branch=testbranch3", "--message-file=blah_blah.txt"), 0, false, false) ============================================================ --- tests/show_conflicts/__driver__.lua e46639299f55d6d83e9962004a89319a70d1f52e +++ tests/show_conflicts/__driver__.lua 4cc6d804eb657c20e67c5bf3ebf6bfd2a0f9b20d @@ -6,13 +6,13 @@ base = base_revision() commit("branch") base = base_revision() -check(mtn("mv", "-e", "foo", "baz"), 0, false, false) +check(mtn("mv", "foo", "baz"), 0, false, false) append("bar", "xxx\n") commit("branch") left = base_revision() check(mtn("update", "-r", base), 0, false, false) -check(mtn("mv", "-e", "foo", "quux"), 0, false, false) +check(mtn("mv", "foo", "quux"), 0, false, false) append("bar", "yyy\n") commit("branch") right = base_revision() ============================================================ --- tests/single_character_filename_support/__driver__.lua 45e9d332c9f379e34eed7687d25c6b0b4b5f8662 +++ tests/single_character_filename_support/__driver__.lua 1838b034aea2dbb2128ef03412223ff720c378a0 @@ -6,12 +6,12 @@ revs.a = base_revision() commit() revs.a = base_revision() -check(mtn("rename", "a", "b"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "a", "b"), 0, false, false) rename("a", "b") commit() revs.b = base_revision() -check(mtn("drop", "b"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "b"), 0, false, false) remove("b") commit() revs.null = base_revision() ============================================================ --- tests/status/__driver__.lua f64c0e5e613e3b6141ba3cf2cd455b94ac8ccfa7 +++ tests/status/__driver__.lua 5519d34d6454fca8744c29a67239f96de1248b37 @@ -21,13 +21,13 @@ writefile("patched", "patched \npatched" writefile("from_patched", "from_patched \npatched") writefile("patched", "patched \npatched") -check(mtn("drop", "dropped"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "dropped"), 0, false, false) rename("from", "to") rename("from_patched", "to_patched") -check(mtn("rename", "from", "to"), 0, false, false) -check(mtn("rename", "from_patched", "to_patched"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "from", "to"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "from_patched", "to_patched"), 0, false, false) check(mtn("status"), 0, true, false) check(qgrep('^ dropped dropped', "stdout")) ============================================================ --- tests/test_annotate_command/__driver__.lua 46efc71c1e02bc32a0238b3c6e8904be42530422 +++ tests/test_annotate_command/__driver__.lua b0c643f1034a5b7ff9ae61b4473aae3adba4cb87 @@ -59,9 +59,9 @@ check(greplines("stdout", {revs[1], revs -- -- OK, now try some renames -- -check(mtn("rename", "foo0", "tmp"), 0, false, false) -check(mtn("rename", "bar0", "foo0"), 0, false, false) -check(mtn("rename", "tmp", "bar0"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "foo0", "tmp"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "bar0", "foo0"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "tmp", "bar0"), 0, false, false) rename("foo0", "tmp") rename("bar0", "foo0") rename("tmp", "bar0") ============================================================ --- tests/two_parent_workspace_add_drop_rename/__driver__.lua 3c1cbba19fd6ccf653e860f09008b6863f938b4b +++ tests/two_parent_workspace_add_drop_rename/__driver__.lua f2edf6e4783c744259d791f4452fdabd211451e6 @@ -19,10 +19,10 @@ check(qgrep("adding fudgie", "stderr")) check(mtn("add", "fudgie"), 0, false, true) check(qgrep("adding fudgie", "stderr")) -check(mtn("drop", "fudgie"), 0, false, true) +check(mtn("drop", "--bookkeep-only", "fudgie"), 0, false, true) check(qgrep("dropping fudgie", "stderr")) -check(mtn("rename", "-e", "foo", "bar"), 0, false, true) +check(mtn("rename", "foo", "bar"), 0, false, true) check(qgrep("renaming foo to bar", "stderr")) commit() ============================================================ --- tests/two_parent_workspace_list/__driver__.lua 19d063bce48abde9cc3aaa20540a3a189f1a7371 +++ tests/two_parent_workspace_list/__driver__.lua edd02fb185c0e70962c9c86d67d8255f7ef31d3c @@ -39,5 +39,5 @@ check(mtn("ls", "missing"), 0, "file4\n" -- this is drop because revert doesn't work in a 2-parent workspace yet, -- and all that matters is we get commit to be happy -check(mtn("drop", "--missing"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "--missing"), 0, false, false) commit() ============================================================ --- tests/two_parent_workspace_pivot_root/__driver__.lua 4648648d122fa1ecdbfe277c214c002594767656 +++ tests/two_parent_workspace_pivot_root/__driver__.lua 4cd99ef70412ee23cc86fcd2b6dce7a2c49c2bb0 @@ -28,7 +28,7 @@ check(not qgrep("ancestor", "w3/testfile check(qgrep("right", "w3/testfile")) check(not qgrep("ancestor", "w3/testfile")) -check(indir("w3", mtn("pivot_root", "-e", "newroot", "oldroot")), +check(indir("w3", mtn("pivot_root", "newroot", "oldroot")), 0, nil, false) check(exists("w3/fileinroot")) ============================================================ --- tests/update_with_blocked_rename/__driver__.lua 45d2da529267f5a4c45aca31307e7b0ea8d64107 +++ tests/update_with_blocked_rename/__driver__.lua a93e2215543253fb346e4a9804c75467486769fd @@ -29,9 +29,9 @@ writefile("bob/bar", "bob's bar") writefile("bob/bar", "bob's bar") -- Alice renames some files -check(indir("alice", mtn("rename", "file.3", "bar")), 0, false, false) -check(indir("alice", mtn("rename", "file.4", "bar.4")), 0, false, false) -check(indir("alice", mtn("rename", "file.5", "bar.5")), 0, false, false) +check(indir("alice", mtn("rename", "--bookkeep-only", "file.3", "bar")), 0, false, false) +check(indir("alice", mtn("rename", "--bookkeep-only", "file.4", "bar.4")), 0, false, false) +check(indir("alice", mtn("rename", "--bookkeep-only", "file.5", "bar.5")), 0, false, false) rename("alice/file.3", "alice/bar") rename("alice/file.4", "alice/bar.4") rename("alice/file.5", "alice/bar.5") ============================================================ --- tests/update_with_pending_drop/__driver__.lua 388d2e4de749215846e0e500cd30a25777db3f4e +++ tests/update_with_pending_drop/__driver__.lua a34fff42aeca7e154a19e18bec3153dcf99791a5 @@ -8,13 +8,13 @@ remove("file") check(mtn("--branch=testbranch", "co", "codir"), 0, false, false) remove("file") -check(mtn("drop", "file"), 0, false, false) +check(mtn("drop", "--bookkeep-only", "file"), 0, false, false) commit() rev = base_revision() -check(indir("codir", mtn("drop", "file")), 0, false, false) +check(indir("codir", mtn("drop", "--bookkeep-only", "file")), 0, false, false) check(indir("codir", mtn("update")), 0, false, false) check(indir("codir", mtn("automate", "get_revision", rev)), 0, false, false) ============================================================ --- tests/update_with_pending_rename/__driver__.lua e0ae7330da24f2ddbbb92719323ff7ac8cc59dde +++ tests/update_with_pending_rename/__driver__.lua 02683106cc068157342c8dfd3c8998d58cd15406 @@ -8,14 +8,14 @@ rename("file", "file2") check(mtn("--branch", "testbranch", "co", "codir"), 0, false, false) rename("file", "file2") -check(mtn("rename", "file", "file2"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "file", "file2"), 0, false, false) commit() rev = base_revision() rename("codir/file", "codir/file2") -check(indir("codir", mtn("rename", "file", "file2")), 0, false, false) +check(indir("codir", mtn("rename", "--bookkeep-only", "file", "file2")), 0, false, false) check(indir("codir", mtn("update")), 0, false, false) check(indir("codir", mtn("automate", "get_revision", rev)), 0, false, false) ============================================================ --- tests/updating_through_a_pivot_root/__driver__.lua 0d9d824956af2a0247748a9f812dfaf09b84c775 +++ tests/updating_through_a_pivot_root/__driver__.lua aab50af65ba043424b85556957569396cf687c23 @@ -11,7 +11,7 @@ base = indir("workspace", {base_revision check(indir("workspace", mtn("commit", "-m", "foo")), 0, false, false) base = indir("workspace", {base_revision})[1]() -check(indir("workspace", mtn("pivot_root", "--execute", "dir1", "old_root")), 0, false, false) +check(indir("workspace", mtn("pivot_root", "dir1", "old_root")), 0, false, false) check(indir("workspace", mtn("commit", "-m", "foo")), 0, false, false) check(mtn("co", "-r", base, "testspace"), 0, false, false) ============================================================ --- tests/workspace_migration/basic.lua 49dbed3e6b96fb6c0ded16315b5b8aca148595e6 +++ tests/workspace_migration/basic.lua 04c86f17abd3d575bee28d3f3152b9f899ac4b35 @@ -18,7 +18,7 @@ return { writefile("testfile1", "new stuff\n") writefile("testfile2", "more new stuff\n") -- and some tree rearrangement stuff too - check(mtn("rename", "--execute", "testfile2", "renamed-testfile2"), + check(mtn("rename", "testfile2", "renamed-testfile2"), 0, false, false) check(mtn("attr", "set", "renamed-testfile2", "test:attr2", "asdf"), 0, false, false) ============================================================ --- tests/workspace_migration/inodeprints.lua 1e810ab1fa2ffff1e74c05ca4fce226a5098e80b +++ tests/workspace_migration/inodeprints.lua 57960c6f4766c6ed3cad53c6436f4922d7c75895 @@ -19,7 +19,7 @@ return { writefile("testfile1", "new stuff\n") writefile("testfile2", "more new stuff\n") -- and some tree rearrangement stuff too - check(mtn("rename", "--execute", "testfile2", "renamed-testfile2"), + check(mtn("rename", "testfile2", "renamed-testfile2"), 0, false, false) check(mtn("attr", "set", "renamed-testfile2", "test:attr2", "asdf"), 0, false, false) ============================================================ --- tests/ws_ops_with_wrong_node_type/__driver__.lua 5f39da8675c46f269919536afdb54fac031496f7 +++ tests/ws_ops_with_wrong_node_type/__driver__.lua b3a0c7b6203070f1a6e5d201bf29537f0843d157 @@ -9,12 +9,12 @@ rename("stdout", "orig_rev") rename("stdout", "orig_rev") -- fail to move a dir under a file -check(mtn("rename", "dir", "file/subdir"), 1, false, false) +check(mtn("rename", "--bookkeep-only", "dir", "file/subdir"), 1, false, false) check(mtn("automate", "get_revision"), 0, true, false) check(samefile("stdout", "orig_rev")) -- running a recursive add what's supposed to be a file, but is actually a -- dir... mkdir("dir2") -check(mtn("rename", "file", "dir2"), 0, false, false) +check(mtn("rename", "--bookkeep-only", "file", "dir2"), 0, false, false) check(mtn("add", "dir2"), 0, false, false) ============================================================ --- work.cc 8bb12080223afb25dc95e119bf6d29883c3e87c8 +++ work.cc fb11d5182575d735e9b1cc731e616b8d2eb396bf @@ -1292,7 +1292,7 @@ workspace::perform_deletions(path_set co void workspace::perform_deletions(path_set const & paths, - bool recursive, bool execute) + bool recursive, bool bookkeep_only) { if (paths.empty()) return; @@ -1341,10 +1341,28 @@ workspace::perform_deletions(path_set co continue; } } + if (!bookkeep_only && path_exists(name)) + { + if (is_dir_t(n)) + { + if (directory_empty(name)) + delete_file_or_dir_shallow(name); + else + W(F("directory %s not empty - it will be dropped but not deleted") % name); + } + else + { + file_t file = downcast_to_file_t(n); + file_id fid; + I(ident_existing_file(name, fid)); + if (file->content == fid) + delete_file_or_dir_shallow(name); + else + W(F("file %s changed - it will be dropped but not deleted") % name); + } + } P(F("dropping %s from workspace manifest") % name); new_roster.drop_detached_node(new_roster.detach_node(p)); - if (execute && path_exists(name)) - delete_file_or_dir_shallow(name); } todo.pop_front(); if (i != paths.rend()) @@ -1366,7 +1384,7 @@ workspace::perform_rename(set void workspace::perform_rename(set const & src_paths, file_path const & dst_path, - bool execute) + bool bookkeep_only) { temp_node_id_source nis; roster_t new_roster; @@ -1456,7 +1474,7 @@ workspace::perform_rename(set make_revision_for_workspace(parents, new_roster, new_work); put_work_rev(new_work); - if (execute) + if (!bookkeep_only) { for (set< pair >::const_iterator i = renames.begin(); i != renames.end(); i++) @@ -1476,11 +1494,11 @@ workspace::perform_rename(set } else if (have_src && have_dst) { - W(F("destination %s already exists in workspace, skipping") % d); + W(F("destination %s already exists in workspace, skipping filesystem rename") % d); } else { - L(FL("skipping move_path %s->%s silently, src doesn't exist, dst does") + W(F("skipping move_path in filesystem %s->%s, source doesn't exist, destination does") % s % d); } } @@ -1491,7 +1509,7 @@ workspace::perform_pivot_root(file_path void workspace::perform_pivot_root(file_path const & new_root, file_path const & put_old, - bool execute) + bool bookkeep_only) { split_path new_root_sp, put_old_sp, root_sp; new_root.split(new_root_sp); @@ -1548,7 +1566,7 @@ workspace::perform_pivot_root(file_path make_revision_for_workspace(parents, new_roster, new_work); put_work_rev(new_work); } - if (execute) + if (!bookkeep_only) { content_merge_empty_adaptor cmea; perform_content_update(cs, cmea); ============================================================ --- work.hh 5515f5af71490b7fd5ffc7e0d64f712df5b72a27 +++ work.hh c7af9fc988d22316359a3f95611630cb07a5b6e1 @@ -82,15 +82,15 @@ struct workspace bool respect_ignore = true); void perform_deletions(path_set const & targets, bool recursive, - bool execute); + bool bookkeep_only); void perform_rename(std::set const & src_paths, file_path const & dst_dir, - bool execute); + bool bookkeep_only); void perform_pivot_root(file_path const & new_root, file_path const & put_old, - bool execute); + bool bookkeep_only); void perform_content_update(cset const & cs, content_merge_adaptor const & ca,