gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnu-arch-users] patch: tla help clean-up


From: Derek Zhou
Subject: [Gnu-arch-users] patch: tla help clean-up
Date: Sat, 19 Nov 2005 14:39:13 -0800

This patch divides all tla commands into 4 classes: basic, advanced,
guru and deprecated. Right now basic is my selection of must-use
commands; deprecated is everything that has been marked deprecated;
advanced is everything else, guru is empty. I also modify cmd-help to
show only the basic set be default; add a new switch -a that shows
basic and advanced.  
The patch is not as massive as it looks. The bulk is in cmds.c which I
almost change every line. 

Derek

* looking for address@hidden/tla--derek--1.3--patch-2 to compare with
* comparing to address@hidden/tla--derek--1.3--patch-2
M  libarch/cmd-mv.c
M  libarch/cmd-archive-fixup.c
M  libarch/cmd-switch.c
M  libarch/cmd-tree-id.c
M  libarch/cmds.h
M  libarch/cmds.c
M  libarch/cmd-tag.c
M  libarch/cmd-help.c
M  libarch/cmd-update.c
M  libarch/cmd-rm.c

* modified files

--- orig/libarch/cmd-archive-fixup.c
+++ mod/libarch/cmd-archive-fixup.c
@@ -45,7 +45,7 @@
       "Override `my-default-archive'")
 
 
-t_uchar arch_cmd_archive_fixup_help[] = ("fix ancillary files (e.g. .listing 
files) in an archive\n"
+t_uchar arch_cmd_archive_fixup_help[] = ("fix ancillary files in an archive\n"
                                          "This is a kind of \"catch-all\" 
command to fix the non-standard,\n"
                                          "non-transactional state of an 
archive.  Currently its sole\n"
                                          "function is to repair .listing files 
in archives that use them.\n");


--- orig/libarch/cmd-help.c
+++ mod/libarch/cmd-help.c
@@ -34,6 +34,10 @@
       "Display a help message and exit.") \
   OP (opt_long_help, "H", 0, 0, \
       "Display a verbose help message and exit.") \
+  OP (opt_advanced, "a", "advanced", 0, \
+      "Display advanced commands too.") \
+  OP (opt_guru, "g", "guru", 0, \
+      "Display guru commands too.") \
   OP (opt_version, "V", "version", 0, \
       "Display a release identifier string\n" \
       "and exit.")
@@ -70,6 +74,7 @@
 arch_cmd_help (t_uchar * program_name, int argc, char * argv[])
 {
   int o;
+  enum arch_command_level level = arch_level_basic;
   struct opt_parsed * option;
 
   safe_buffer_fd (1, 0, O_WRONLY, 0);
@@ -94,6 +99,16 @@
           /* bogus_arg: */
           safe_printfmt (2, "ill-formed argument for `%s' (`%s')\n", 
option->opt_string, option->arg_string);
           goto usage_error;
+        case opt_advanced:
+          {
+            level = arch_level_advanced;
+            break;
+          }
+        case opt_guru:
+          {
+            level = arch_level_guru;
+            break;
+          }
         }
     }
 
@@ -107,7 +122,7 @@
     safe_printfmt (1, "                        ----------------");
 
     for (x = 0; arch_commands[x].name; ++x)
-      if (! arch_commands[x].deprecated)
+      if (arch_commands[x].level!=arch_level_deprecated && 
level>=arch_commands[x].level)
         {
           if (!arch_commands[x].fn)
             {


--- orig/libarch/cmd-mv.c
+++ mod/libarch/cmd-mv.c
@@ -37,7 +37,7 @@
       "Display a release identifier string\n" \
       "and exit.")
 
-t_uchar arch_cmd_mv_help[] = ("move a file (or dir, or symlink) and its 
explicit inventory tag (if any)\n"
+t_uchar arch_cmd_mv_help[] = ("move a file and its explicit inventory tag\n"
                               "This command is suitable as a replacement for 
mv(1) within any tla\n"
                               "tree for any move operation, regardless of id 
tagging method.\n");
 


--- orig/libarch/cmd-rm.c
+++ mod/libarch/cmd-rm.c
@@ -42,7 +42,9 @@
       "Display a release identifier string\n" \
       "and exit.")
 
-t_uchar arch_cmd_rm_help[] = ("remove a file (or dir, or symlink) and its 
explicit inventory tag (if any)\n");
+t_uchar arch_cmd_rm_help[] = ("remove a file and its explicit inventory tag\n"
+                              "This command is suitable as a replacement for 
rm(1) within any tla\n"
+                              "tree for any remove operation, regardless of id 
tagging method.\n");
 
 enum options
 {


--- orig/libarch/cmd-switch.c
+++ mod/libarch/cmd-switch.c
@@ -70,7 +70,7 @@
 
 
 t_uchar arch_cmd_switch_help[] = (
- "change the working trees version to that of package\n"
+ "change the working trees version\n"
  
  "change the working trees version to that of package, and make\n"
  "equivalent to revision. Preserves uncommitted changes.\n"


--- orig/libarch/cmd-tag.c
+++ mod/libarch/cmd-tag.c
@@ -66,7 +66,7 @@
   OP (opt_no_setup, 0, "no-setup", 0, \
       "Do not use `archive-setup' even if necessary.")
 
-t_uchar arch_cmd_tag_help[] = ("create a continuation revision (aka tag or 
branch)\n"
+t_uchar arch_cmd_tag_help[] = ("create a continuation revision \n"
                               "Create the continuation revision TAG-VERSION 
(branch point or tag)\n"
                               "which is equivalent to SOURCE-REVISION (plus a 
log entry).\n"
                               "\n"


--- orig/libarch/cmd-tree-id.c
+++ mod/libarch/cmd-tree-id.c
@@ -49,7 +49,7 @@
       N_("Display a release identifier string\n" \
       "and exit."))
 
-t_uchar arch_cmd_tree_id_help[] = N_("Print the tree identifier for a project 
tree->\nPrint the patchset identifier that represents the\ncurrent tree-> I.e. 
address@hidden/demo--1.0--patch-4.\nDefaults to the tree the current directory 
is in.\n");
+t_uchar arch_cmd_tree_id_help[] = N_("Print the tree identifier for a project 
tree\nPrint the patchset identifier that represents the\ncurrent tree-> I.e. 
address@hidden/demo--1.0--patch-4.\nDefaults to the tree the current directory 
is in.\n");
 
 enum options
 {


--- orig/libarch/cmd-update.c
+++ mod/libarch/cmd-update.c
@@ -70,7 +70,7 @@
       "show filenames in unescaped form")
 
 
-t_uchar arch_cmd_update_help[] = ("update a project tree to reflect recent 
archived changes\n"
+t_uchar arch_cmd_update_help[] = ("update a project tree\n"
 
                                   "Update a project tree by getting the latest 
revision of VERSION (or the\n"
                                   "default version of the project tree) and 
then applying a patch set of\n"


--- orig/libarch/cmds.c
+++ mod/libarch/cmds.c
@@ -115,214 +115,172 @@
 
 struct arch_command arch_commands[] =
 {
-  {"help", 0, 0, 0, 0},
 
-  {"help", arch_cmd_help, arch_cmd_help_help, 0, 0},
-
-
-  {"User Commands", 0, 0, 0, 0},
-
-  {"my-id", arch_cmd_my_id, arch_cmd_my_id_help, 0, 0},
-  {"", 0},
-  {"my-default-archive", arch_cmd_my_default_archive, 
arch_cmd_my_default_archive_help, 0, 0},
-  {"register-archive", arch_cmd_register_archive, 
arch_cmd_register_archive_help, 0, 0},
-  {"whereis-archive", arch_cmd_whereis_archive, arch_cmd_whereis_archive_help, 
0, 0},
-  {"archives", arch_cmd_archives, arch_cmd_archives_help, 0, 0},
-  {"ls-archives", arch_cmd_archives, arch_cmd_archives_help, "archives", 1},
-
-
-  {"Project Tree Commands", 0, 0, 0, 0},
-
-  {"init-tree", arch_cmd_init_tree, arch_cmd_init_tree_help, 0, 0},
-  {"tree-root", arch_cmd_tree_root, arch_cmd_tree_root_help, 0, 0},
-  {"", 0},
-  {"tree-version", arch_cmd_tree_version, arch_cmd_tree_version_help, 0, 0},
-  {"tree-id", arch_cmd_tree_id, arch_cmd_tree_id_help, 0, 0},
-  {"set-tree-version", arch_cmd_set_tree_version, 
arch_cmd_set_tree_version_help, 0, 0},
-  {"", 0},
-  {"undo", arch_cmd_undo, arch_cmd_undo_help, 0, 0},
-  {"undo-changes", arch_cmd_undo, arch_cmd_undo_help, "undo", 1},
-  {"redo", arch_cmd_redo, arch_cmd_redo_help, 0, 0},
-  {"redo-changes", arch_cmd_redo, arch_cmd_redo_help, "redo", 1},
-  {"", 0},
-  {"changes", arch_cmd_changes, arch_cmd_changes_help, 0, 0},
-  {"what-changed", arch_cmd_changes, arch_cmd_changes_help, "changes", 1},
-  {"file-diff", arch_cmd_file_diff, arch_cmd_file_diff_help, 0, 0},
-  {"file-diffs", arch_cmd_file_diff, arch_cmd_file_diff_help, "file-diff", 1},
-  {"diff", arch_cmd_diff, arch_cmd_diff_help, 0, 0},
-
-  {"Project Tree Inventory Commands", 0, 0, 0, 0},
-
-  {"inventory", arch_cmd_inventory, arch_cmd_inventory_help, 0, 0},
-  {"srcfind", arch_cmd_inventory, arch_cmd_inventory_help, "inventory", 1},
-  {"tree-lint", arch_cmd_tree_lint, arch_cmd_tree_lint_help, 0, 0},
-  {"lint", arch_cmd_tree_lint, arch_cmd_tree_lint_help, 0, 0},
-  {"id", arch_cmd_id, arch_cmd_id_help, 0, 0},
-  {"", 0},
-  {"id-tagging-method", arch_cmd_id_tagging_method, 
arch_cmd_id_tagging_method_help, 0, 0},
-  {"", 0},
-  {"add-id", arch_cmd_add_id, arch_cmd_add_id_help, 0, 0},
-  {"delete-id", arch_cmd_delete_id, arch_cmd_delete_id_help, 0, 0},
-  {"move-id", arch_cmd_move_id, arch_cmd_move_id_help, 0, 0},
-  {"touch", arch_cmd_touch, arch_cmd_touch_help, 0, 0},
-  {"rm", arch_cmd_rm, arch_cmd_rm_help, 0, 0},
-  {"mv", arch_cmd_mv, arch_cmd_mv_help, 0, 0},
-  {"explicit-default", arch_cmd_default_id, arch_cmd_default_id_help, 0, 0},
-  {"default-id", arch_cmd_default_id, arch_cmd_default_id_help, 
"explicit-default", 0},
-  {"", 0},
-  {"id-tagging-defaults", arch_cmd_id_tagging_defaults, 
arch_cmd_id_tagging_defaults_help, 0, 0},
-
-
-  {"Patch Set Commands", 0, 0, 0},
-
-  {"changeset", arch_cmd_changeset, arch_cmd_changeset_help, 0, 0},
-  {"mkpatch", arch_cmd_changeset, arch_cmd_changeset_help, "changeset", 0},
-  {"apply-changeset", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
0, 0},
-  {"dopatch", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
"apply-changeset", 0},
-  {"do-changeset", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
"apply-changeset", 1},
-  {"show-changeset", arch_cmd_show_changeset, arch_cmd_show_changeset_help, 0, 
0},
-
-
-  {"Archive Transaction Commands", 0, 0, 0, 0},
-
-  {"make-archive", arch_cmd_make_archive, arch_cmd_make_archive_help, 0, 0},
-  {"archive-setup",  arch_cmd_archive_setup,  arch_cmd_archive_setup_help, 0, 
0},
-  {"", 0},
-  {"make-category", arch_cmd_make_category, arch_cmd_make_category_help, 0, 0},
-  {"make-branch", arch_cmd_make_branch, arch_cmd_make_branch_help, 0, 0},
-  {"make-version", arch_cmd_make_version, arch_cmd_make_version_help, 0, 0},
-  {"", 0},
-  {"import", arch_cmd_import, arch_cmd_import_help, 0, 0},
-  {"imprev", arch_cmd_import, arch_cmd_import_help, "import", 1},
-  {"commit", arch_cmd_commit, arch_cmd_commit_help, 0, 0},
-  {"cmtrev", arch_cmd_commit, arch_cmd_commit_help, "commit", 1},
-  {"", 0},
-  {"get", arch_cmd_get, arch_cmd_get_help, 0, 0},
-  {"getrev", arch_cmd_get, arch_cmd_get_help, "get", 1},
-  {"get-changeset", arch_cmd_get_changeset, arch_cmd_get_changeset_help, 0, 0},
-  {"get-patch", arch_cmd_get_changeset, arch_cmd_get_changeset_help, 
"get-changeset", 1},
-  {"", 0},
-  {"lock-revision", arch_cmd_lock_revision, arch_cmd_lock_revision_help, 0, 0},
-  {"archive-mirror", arch_cmd_archive_mirror, arch_cmd_archive_mirror_help, 0, 
0},
-  {"push-mirror", arch_cmd_archive_mirror, arch_cmd_archive_mirror_help, 
"archive-mirror", 1},
-
-
-  {"Archive Commands", 0, 0, 0, 0},
-
-  {"abrowse", arch_cmd_abrowse, arch_cmd_abrowse_help, 0},
-  {"rbrowse", arch_cmd_rbrowse, arch_cmd_rbrowse_help, 0},
-  {"categories", arch_cmd_categories, arch_cmd_categories_help, 0, 0},
-  {"branches", arch_cmd_branches, arch_cmd_branches_help, 0, 0},
-  {"versions", arch_cmd_versions, arch_cmd_versions_help, 0, 0},
-  {"revisions", arch_cmd_revisions, arch_cmd_revisions_help, 0, 0},
-  {"ancestry", arch_cmd_ancestry, arch_cmd_ancestry_help, 0, 0},
-  {"ancestry-graph", arch_cmd_ancestry_graph, arch_cmd_ancestry_graph_help, 0, 
0},
-
-  {"", 0},
-  {"cat-archive-log", arch_cmd_cat_archive_log, arch_cmd_cat_archive_log_help, 
0, 0},
-  {"", 0},
-  {"cacherev", arch_cmd_cacherev, arch_cmd_cacherev_help, 0, 0},
-  {"cachedrevs", arch_cmd_cachedrevs, arch_cmd_cachedrevs_help, 0, 0},
-  {"uncacherev", arch_cmd_uncacherev, arch_cmd_uncacherev_help, 0, 0},
-  {"", 0},
-  {"archive-meta-info", arch_cmd_archive_meta_info, 
arch_cmd_archive_meta_info_help, 0, 0},
-  {"archive-snapshot", arch_cmd_archive_snapshot, 
arch_cmd_archive_snapshot_help, 0, 0},
-  {"archive-version", arch_cmd_archive_version, arch_cmd_archive_version_help, 
0, 0},
-  {"", 0},
-  {"archive-fixup", arch_cmd_archive_fixup, arch_cmd_archive_fixup_help, 0, 0},
-
-
-  {"Patch Log Commands", 0, 0, 0, 0},
-
-  {"make-log", arch_cmd_make_log, arch_cmd_make_log_help, 0, 0},
-  {"log-versions", arch_cmd_log_versions, arch_cmd_log_versions_help, 0, 0},
-  {"add-log-version", arch_cmd_add_log_version, arch_cmd_add_log_version_help, 
0, 0},
-  {"remove-log-version", arch_cmd_remove_log_version, 
arch_cmd_remove_log_version_help, 0, 0},
-  {"logs", arch_cmd_logs, arch_cmd_logs_help, 0, 0},
-  {"cat-log", arch_cmd_cat_log, arch_cmd_cat_log_help, 0, 0},
-  {"", 0},
-  {"changelog", arch_cmd_changelog, arch_cmd_changelog_help, 0, 0},
-  {"", 0},
-  {"log-for-merge", arch_cmd_log_for_merge, arch_cmd_log_for_merge_help, 0, 0},
-  {"merges", arch_cmd_merges, arch_cmd_merges_help, 0, 0},
-  {"new-merges", arch_cmd_new_merges, arch_cmd_new_merges_help, 0, 0},
-
-
-  {"Multi-project Configuration Commands", 0, 0, 0, 0},
-
-  {"build-config", arch_cmd_build_config, arch_cmd_build_config_help, 0, 0},
-  {"buildcfg", arch_cmd_build_config, arch_cmd_build_config_help, 
"build-config", 1},
-  {"cat-config", arch_cmd_cat_config, arch_cmd_cat_config_help, 0, 0},
-  {"catcfg", arch_cmd_cat_config, arch_cmd_cat_config_help, "cat-config", 1},
-  {"cfgcat", arch_cmd_cat_config, arch_cmd_cat_config_help, "cat-config", 1},
-
-
-  {"Commands for Branching and Merging", 0, 0, 0, 0},
-
-  {"tag", arch_cmd_tag, arch_cmd_tag_help, 0, 0},
-  {"branch", arch_cmd_tag, arch_cmd_tag_help, 0, 0},
-  {"switch", arch_cmd_switch, arch_cmd_switch_help, 0, 0},
-  {"tagrev", arch_cmd_tag, arch_cmd_tag_help, "tag", 1},
-  {"", 0},
-  {"update", arch_cmd_update, arch_cmd_update_help, 0, 0},
-  {"replay", arch_cmd_replay, arch_cmd_replay_help, 0, 0},
-  {"star-merge", arch_cmd_star_merge, arch_cmd_star_merge_help, 0, 0},
-  {"apply-delta", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 0, 0},
-  {"delta-patch", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 
"apply-delta", 1},
-  {"deltapatch", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 
"apply-delta", 1},
-  {"missing", arch_cmd_missing, arch_cmd_missing_help, 0, 0},
-  {"whats-missing", arch_cmd_missing, arch_cmd_missing_help, "missing", 1},
-  {"", 0},
-  {"join-branch", arch_cmd_join_branch, arch_cmd_join_branch_help, 0, 0},
-  {"sync-tree", arch_cmd_sync_tree, arch_cmd_sync_tree_help, 0, 0},
-  {"make-sync-tree", arch_cmd_sync_tree, arch_cmd_sync_tree_help, "sync-tree", 
1},
-  {"", 0},
-  {"delta", arch_cmd_delta, arch_cmd_delta_help, 0, 0},
-  {"revdelta", arch_cmd_delta, arch_cmd_delta_help, "delta", 1},
-
-
-  {"Local Cache Commands", 0, 0, 0, 0},
-
-  {"changes", arch_cmd_changes, arch_cmd_changes_help, 0, 0},
-  {"what-changed", arch_cmd_changes, arch_cmd_changes_help, "changes", 1},
-  {"file-diff", arch_cmd_file_diff, arch_cmd_file_diff_help, 0, 0},
-  {"file-find", arch_cmd_file_find, arch_cmd_file_find_help, 0, 0},
-  {"", 0},
-  {"pristines", arch_cmd_pristines, arch_cmd_pristines_help, 0, 0},
-  {"ls-pristines", arch_cmd_pristines, arch_cmd_pristines_help, "pristines", 
1},
-  {"lock-pristine", arch_cmd_lock_pristine, arch_cmd_lock_pristine_help, 0, 0},
-  {"add-pristine", arch_cmd_add_pristine, arch_cmd_add_pristine_help, 0, 0},
-  {"find-pristine", arch_cmd_find_pristine, arch_cmd_find_pristine_help, 0, 0},
-
-
-  {"Revision Library Commands", 0, 0, 0},
-
-  {"my-revision-library", arch_cmd_my_revision_library, 
arch_cmd_my_revision_library_help, 0, 0},
-  {"library-config", arch_cmd_library_config, arch_cmd_library_config_help, 0, 
0},
-  {"library-find", arch_cmd_library_find, arch_cmd_library_find_help, 0, 0},
-  {"library-add", arch_cmd_library_add, arch_cmd_library_add_help, 0, 0},
-  {"library-remove", arch_cmd_library_remove, arch_cmd_library_remove_help, 0, 
0},
-  {"library-archives", arch_cmd_library_archives, 
arch_cmd_library_archives_help, 0, 0},
-  {"library-categories", arch_cmd_library_categories, 
arch_cmd_library_categories_help, 0, 0},
-  {"library-branches", arch_cmd_library_branches, 
arch_cmd_library_branches_help, 0, 0},
-  {"library-versions", arch_cmd_library_versions, 
arch_cmd_library_versions_help, 0, 0},
-  {"library-revisions", arch_cmd_library_revisions, 
arch_cmd_library_revisions_help, 0, 0},
-  {"library-log", arch_cmd_library_log, arch_cmd_library_log_help, 0, 0},
-  {"library-file", arch_cmd_library_file, arch_cmd_library_file_help, 0, 0},
-
-
-  {"Published Revisions Commands", 0, 0, 0},
-
-  {"grab", arch_cmd_grab, arch_cmd_grab_help, 0, 0},
-
-
-
-  {"Miscellaneous Scripting Support", 0, 0, 0, 0},
-
-  {"parse-package-name", arch_cmd_parse_package_name, 
arch_cmd_parse_package_name_help, 0, 0},
-  {"valid-package-name", arch_cmd_valid_package_name, 
arch_cmd_valid_package_name_help, 0, 0},
-  {"escape", arch_cmd_escape, arch_cmd_escape_help, 0, 0},
+  {"User Commands", 0, 0, 0, arch_level_basic},
 
+  {"help", arch_cmd_help, arch_cmd_help_help, 0, arch_level_basic},
+  {"my-id", arch_cmd_my_id, arch_cmd_my_id_help, 0, arch_level_basic},
+  {"my-default-archive", arch_cmd_my_default_archive, 
arch_cmd_my_default_archive_help, 0, arch_level_basic},
+  {"register-archive", arch_cmd_register_archive, 
arch_cmd_register_archive_help, 0, arch_level_basic},
+  {"whereis-archive", arch_cmd_whereis_archive, arch_cmd_whereis_archive_help, 
0, arch_level_advanced},
+  {"archives", arch_cmd_archives, arch_cmd_archives_help, 0, arch_level_basic},
+  {"ls-archives", arch_cmd_archives, arch_cmd_archives_help, "archives", 
arch_level_deprecated},
+  {"my-revision-library", arch_cmd_my_revision_library, 
arch_cmd_my_revision_library_help, 0, arch_level_basic},
+
+
+  {"Project Tree Commands", 0, 0, 0, arch_level_basic},
+
+  {"init-tree", arch_cmd_init_tree, arch_cmd_init_tree_help, 0, 
arch_level_basic},
+  {"tree-root", arch_cmd_tree_root, arch_cmd_tree_root_help, 0, 
arch_level_advanced},
+  {"tree-version", arch_cmd_tree_version, arch_cmd_tree_version_help, 0, 
arch_level_advanced},
+  {"tree-id", arch_cmd_tree_id, arch_cmd_tree_id_help, 0, arch_level_basic},
+  {"set-tree-version", arch_cmd_set_tree_version, 
arch_cmd_set_tree_version_help, 0, arch_level_advanced},
+  {"undo", arch_cmd_undo, arch_cmd_undo_help, 0, arch_level_basic},
+  {"undo-changes", arch_cmd_undo, arch_cmd_undo_help, "undo", 
arch_level_deprecated},
+  {"redo", arch_cmd_redo, arch_cmd_redo_help, 0, arch_level_basic},
+  {"redo-changes", arch_cmd_redo, arch_cmd_redo_help, "redo", 
arch_level_deprecated},
+  {"changes", arch_cmd_changes, arch_cmd_changes_help, 0, arch_level_advanced},
+  {"what-changed", arch_cmd_changes, arch_cmd_changes_help, "changes", 
arch_level_deprecated},
+  {"file-diff", arch_cmd_file_diff, arch_cmd_file_diff_help, 0, 
arch_level_basic},
+  {"file-diffs", arch_cmd_file_diff, arch_cmd_file_diff_help, "file-diff", 
arch_level_deprecated},
+  {"diff", arch_cmd_diff, arch_cmd_diff_help, 0, arch_level_basic},
+
+  {"Project Tree Inventory Commands", 0, 0, 0, arch_level_basic},
+
+  {"inventory", arch_cmd_inventory, arch_cmd_inventory_help, 0, 
arch_level_basic},
+  {"srcfind", arch_cmd_inventory, arch_cmd_inventory_help, "inventory", 
arch_level_deprecated},
+  {"tree-lint", arch_cmd_tree_lint, arch_cmd_tree_lint_help, 0, 
arch_level_advanced},
+  {"lint", arch_cmd_tree_lint, arch_cmd_tree_lint_help, "tree-lint", 
arch_level_advanced},
+  {"id", arch_cmd_id, arch_cmd_id_help, 0, arch_level_advanced},
+  {"id-tagging-method", arch_cmd_id_tagging_method, 
arch_cmd_id_tagging_method_help, 0, arch_level_advanced},
+  {"add-id", arch_cmd_add_id, arch_cmd_add_id_help, 0, arch_level_basic},
+  {"delete-id", arch_cmd_delete_id, arch_cmd_delete_id_help, 0, 
arch_level_advanced},
+  {"move-id", arch_cmd_move_id, arch_cmd_move_id_help, 0, arch_level_advanced},
+  {"touch", arch_cmd_touch, arch_cmd_touch_help, 0, arch_level_advanced},
+  {"rm", arch_cmd_rm, arch_cmd_rm_help, 0, arch_level_basic},
+  {"mv", arch_cmd_mv, arch_cmd_mv_help, 0, arch_level_basic},
+  {"explicit-default", arch_cmd_default_id, arch_cmd_default_id_help, 0, 
arch_level_advanced},
+  {"default-id", arch_cmd_default_id, arch_cmd_default_id_help, 
"explicit-default", arch_level_advanced},
+  {"id-tagging-defaults", arch_cmd_id_tagging_defaults, 
arch_cmd_id_tagging_defaults_help, 0, arch_level_advanced},
+
+  {"Patch Set Commands", 0, 0, 0, arch_level_advanced},
+
+  {"changeset", arch_cmd_changeset, arch_cmd_changeset_help, 0, 
arch_level_advanced},
+  {"mkpatch", arch_cmd_changeset, arch_cmd_changeset_help, "changeset", 
arch_level_advanced},
+  {"apply-changeset", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
0, arch_level_advanced},
+  {"dopatch", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
"apply-changeset", arch_level_advanced},
+  {"do-changeset", arch_cmd_apply_changeset, arch_cmd_apply_changeset_help, 
"apply-changeset", arch_level_deprecated},
+  {"show-changeset", arch_cmd_show_changeset, arch_cmd_show_changeset_help, 0, 
arch_level_advanced},
+
+  {"Archive Transaction Commands", 0, 0, 0, arch_level_basic},
+
+  {"make-archive", arch_cmd_make_archive, arch_cmd_make_archive_help, 0, 
arch_level_basic},
+  {"archive-setup",  arch_cmd_archive_setup,  arch_cmd_archive_setup_help, 0, 
arch_level_basic},
+  {"make-category", arch_cmd_make_category, arch_cmd_make_category_help, 0, 
arch_level_advanced},
+  {"make-branch", arch_cmd_make_branch, arch_cmd_make_branch_help, 0, 
arch_level_advanced},
+  {"make-version", arch_cmd_make_version, arch_cmd_make_version_help, 0, 
arch_level_advanced},
+  {"import", arch_cmd_import, arch_cmd_import_help, 0, arch_level_basic},
+  {"imprev", arch_cmd_import, arch_cmd_import_help, "import", 
arch_level_deprecated},
+  {"commit", arch_cmd_commit, arch_cmd_commit_help, 0, arch_level_basic},
+  {"cmtrev", arch_cmd_commit, arch_cmd_commit_help, "commit", 
arch_level_deprecated},
+  {"get", arch_cmd_get, arch_cmd_get_help, 0, arch_level_basic},
+  {"getrev", arch_cmd_get, arch_cmd_get_help, "get", arch_level_deprecated},
+  {"get-changeset", arch_cmd_get_changeset, arch_cmd_get_changeset_help, 0, 
arch_level_advanced},
+  {"get-patch", arch_cmd_get_changeset, arch_cmd_get_changeset_help, 
"get-changeset", arch_level_advanced},
+  {"lock-revision", arch_cmd_lock_revision, arch_cmd_lock_revision_help, 0, 
arch_level_advanced},
+  {"archive-mirror", arch_cmd_archive_mirror, arch_cmd_archive_mirror_help, 0, 
arch_level_advanced},
+  {"push-mirror", arch_cmd_archive_mirror, arch_cmd_archive_mirror_help, 
"archive-mirror", arch_level_deprecated},
+
+  {"abrowse", arch_cmd_abrowse, arch_cmd_abrowse_help, 0, arch_level_advanced},
+  {"rbrowse", arch_cmd_rbrowse, arch_cmd_rbrowse_help, 0, arch_level_basic},
+  {"categories", arch_cmd_categories, arch_cmd_categories_help, 0, 
arch_level_advanced},
+  {"branches", arch_cmd_branches, arch_cmd_branches_help, 0, 
arch_level_advanced},
+  {"versions", arch_cmd_versions, arch_cmd_versions_help, 0, 
arch_level_advanced},
+  {"revisions", arch_cmd_revisions, arch_cmd_revisions_help, 0, 
arch_level_advanced},
+  {"ancestry", arch_cmd_ancestry, arch_cmd_ancestry_help, 0, 
arch_level_advanced},
+  {"ancestry-graph", arch_cmd_ancestry_graph, arch_cmd_ancestry_graph_help, 0, 
arch_level_advanced},
+  {"cat-archive-log", arch_cmd_cat_archive_log, arch_cmd_cat_archive_log_help, 
0, arch_level_advanced},
+  {"cacherev", arch_cmd_cacherev, arch_cmd_cacherev_help, 0, 
arch_level_advanced},
+  {"cachedrevs", arch_cmd_cachedrevs, arch_cmd_cachedrevs_help, 0, 
arch_level_advanced},
+  {"uncacherev", arch_cmd_uncacherev, arch_cmd_uncacherev_help, 0, 
arch_level_advanced},
+  {"archive-meta-info", arch_cmd_archive_meta_info, 
arch_cmd_archive_meta_info_help, 0, arch_level_advanced},
+  {"archive-snapshot", arch_cmd_archive_snapshot, 
arch_cmd_archive_snapshot_help, 0, arch_level_advanced},
+  {"archive-version", arch_cmd_archive_version, arch_cmd_archive_version_help, 
0, arch_level_advanced},
+  {"archive-fixup", arch_cmd_archive_fixup, arch_cmd_archive_fixup_help, 0, 
arch_level_advanced},
+
+  {"Patch Log Commands", 0, 0, 0, arch_level_basic},
+
+  {"make-log", arch_cmd_make_log, arch_cmd_make_log_help, 0, arch_level_basic},
+  {"log-versions", arch_cmd_log_versions, arch_cmd_log_versions_help, 0, 
arch_level_advanced},
+  {"add-log-version", arch_cmd_add_log_version, arch_cmd_add_log_version_help, 
0, arch_level_advanced},
+  {"remove-log-version", arch_cmd_remove_log_version, 
arch_cmd_remove_log_version_help, 0, arch_level_advanced},
+  {"logs", arch_cmd_logs, arch_cmd_logs_help, 0, arch_level_advanced},
+  {"cat-log", arch_cmd_cat_log, arch_cmd_cat_log_help, 0, arch_level_advanced},
+  {"changelog", arch_cmd_changelog, arch_cmd_changelog_help, 0, 
arch_level_basic},
+  {"log-for-merge", arch_cmd_log_for_merge, arch_cmd_log_for_merge_help, 0, 
arch_level_basic},
+  {"merges", arch_cmd_merges, arch_cmd_merges_help, 0, arch_level_advanced},
+  {"new-merges", arch_cmd_new_merges, arch_cmd_new_merges_help, 0, 
arch_level_advanced},
+
+  {"Multi-project Configuration Commands", 0, 0, 0, arch_level_advanced},
+
+  {"build-config", arch_cmd_build_config, arch_cmd_build_config_help, 0, 
arch_level_advanced},
+  {"buildcfg", arch_cmd_build_config, arch_cmd_build_config_help, 
"build-config", arch_level_deprecated},
+  {"cat-config", arch_cmd_cat_config, arch_cmd_cat_config_help, 0, 
arch_level_advanced},
+  {"catcfg", arch_cmd_cat_config, arch_cmd_cat_config_help, "cat-config", 
arch_level_deprecated},
+  {"cfgcat", arch_cmd_cat_config, arch_cmd_cat_config_help, "cat-config", 
arch_level_deprecated},
+
+  {"Commands for Branching and Merging", 0, 0, 0, arch_level_basic},
+
+  {"tag", arch_cmd_tag, arch_cmd_tag_help, 0, arch_level_basic},
+  {"branch", arch_cmd_tag, arch_cmd_tag_help, 0, arch_level_advanced},
+  {"switch", arch_cmd_switch, arch_cmd_switch_help, 0, arch_level_basic},
+  {"tagrev", arch_cmd_tag, arch_cmd_tag_help, "tag", arch_level_deprecated},
+  {"update", arch_cmd_update, arch_cmd_update_help, 0, arch_level_basic},
+  {"replay", arch_cmd_replay, arch_cmd_replay_help, 0, arch_level_advanced},
+  {"star-merge", arch_cmd_star_merge, arch_cmd_star_merge_help, 0, 
arch_level_basic},
+  {"apply-delta", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 0, 
arch_level_advanced},
+  {"delta-patch", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 
"apply-delta", arch_level_deprecated},
+  {"deltapatch", arch_cmd_apply_delta, arch_cmd_apply_delta_help, 
"apply-delta", arch_level_deprecated},
+  {"missing", arch_cmd_missing, arch_cmd_missing_help, 0, arch_level_basic},
+  {"whats-missing", arch_cmd_missing, arch_cmd_missing_help, "missing", 
arch_level_deprecated},
+  {"join-branch", arch_cmd_join_branch, arch_cmd_join_branch_help, 0, 
arch_level_advanced},
+  {"sync-tree", arch_cmd_sync_tree, arch_cmd_sync_tree_help, 0, 
arch_level_advanced},
+  {"make-sync-tree", arch_cmd_sync_tree, arch_cmd_sync_tree_help, "sync-tree", 
arch_level_advanced},
+  {"delta", arch_cmd_delta, arch_cmd_delta_help, 0, arch_level_advanced},
+  {"revdelta", arch_cmd_delta, arch_cmd_delta_help, "delta", 
arch_level_deprecated},
+
+  {"Local Cache Commands", 0, 0, 0, arch_level_advanced},
+
+  {"file-find", arch_cmd_file_find, arch_cmd_file_find_help, 0, 
arch_level_advanced},
+  {"pristines", arch_cmd_pristines, arch_cmd_pristines_help, 0, 
arch_level_advanced},
+  {"ls-pristines", arch_cmd_pristines, arch_cmd_pristines_help, "pristines", 
arch_level_deprecated},
+  {"lock-pristine", arch_cmd_lock_pristine, arch_cmd_lock_pristine_help, 0, 
arch_level_advanced},
+  {"add-pristine", arch_cmd_add_pristine, arch_cmd_add_pristine_help, 0, 
arch_level_advanced},
+  {"find-pristine", arch_cmd_find_pristine, arch_cmd_find_pristine_help, 0, 
arch_level_advanced},
+
+  {"Revision Library Commands", 0, 0, 0, arch_level_advanced},
+
+  {"library-config", arch_cmd_library_config, arch_cmd_library_config_help, 0, 
arch_level_advanced},
+  {"library-find", arch_cmd_library_find, arch_cmd_library_find_help, 0, 
arch_level_advanced},
+  {"library-add", arch_cmd_library_add, arch_cmd_library_add_help, 0, 
arch_level_advanced},
+  {"library-remove", arch_cmd_library_remove, arch_cmd_library_remove_help, 0, 
arch_level_advanced},
+  {"library-archives", arch_cmd_library_archives, 
arch_cmd_library_archives_help, 0, arch_level_advanced},
+  {"library-categories", arch_cmd_library_categories, 
arch_cmd_library_categories_help, 0, arch_level_advanced},
+  {"library-branches", arch_cmd_library_branches, 
arch_cmd_library_branches_help, 0, arch_level_advanced},
+  {"library-versions", arch_cmd_library_versions, 
arch_cmd_library_versions_help, 0, arch_level_advanced},
+  {"library-revisions", arch_cmd_library_revisions, 
arch_cmd_library_revisions_help, 0, arch_level_advanced},
+  {"library-log", arch_cmd_library_log, arch_cmd_library_log_help, 0, 
arch_level_advanced},
+  {"library-file", arch_cmd_library_file, arch_cmd_library_file_help, 0, 
arch_level_advanced},
+
+  {"Published Revisions Commands", 0, 0, 0, arch_level_advanced},
+
+  {"grab", arch_cmd_grab, arch_cmd_grab_help, 0, arch_level_advanced},
+
+  {"Miscellaneous Scripting Support", 0, 0, 0, arch_level_advanced},
+
+  {"parse-package-name", arch_cmd_parse_package_name, 
arch_cmd_parse_package_name_help, 0, arch_level_advanced},
+  {"valid-package-name", arch_cmd_valid_package_name, 
arch_cmd_valid_package_name_help, 0, arch_level_advanced},
+  {"escape", arch_cmd_escape, arch_cmd_escape_help, 0, arch_level_advanced},
 
   {0, },
 };


--- orig/libarch/cmds.h
+++ mod/libarch/cmds.h
@@ -15,13 +15,21 @@
 
 
 
+enum arch_command_level
+{
+  arch_level_basic,
+  arch_level_advanced,
+  arch_level_guru,
+  arch_level_deprecated,
+};
+
 struct arch_command
 {
   t_uchar * name;
   int (*fn) (t_uchar * name, int argc, char * argv[]);
   t_uchar * long_help;
   t_uchar * alias_of;
-  int deprecated;
+  enum arch_command_level level;
 };
 
 extern struct arch_command arch_commands[];







reply via email to

[Prev in Thread] Current Thread [Next in Thread]