<!DOCTYPE author [ <!ENTITY non_empty_re "qr/./" > ]> <machine id="VCP::Source::cvs" xmlns="http://slaysys.com/StateML/1.0"> <!-- ================ TRANSITIONS =================== --> <state id="source_cvs_cvsroot_prompt" class-ids="prompt_class"> <name>Source CVSROOT</name> <description> The CVSROOT to read revisions from. Defaults to the CVSROOT environment variable. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->repo_server; $is_current_value = 1; } else { $default = empty( $ENV{CVSROOT} ) ? undef : $ENV{CVSROOT}; } </entry-handler> <arc from="source_prompt" guard="'cvs'" > <description>cvs</description> <handler> $ui->new_source( $answer ); </handler> </arc> <arc to="source_cvs_filespec_prompt" guard="&non_empty_re;"> <description>cvsroot spec</description> <handler> $ui->source->repo_server( $answer ) unless empty $answer; </handler> </arc> </state> <state id="source_cvs_filespec_prompt" class-ids="prompt_class"> <name>Source CVS filespec</name> <description> Enter the cvs filespec of the file(s) to copy. This must start with a CVS module name and end in a filename, directory name, or "..." wildcard: module/... module/file module/path/to/subdir/... module/path/to/subdir/file </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->repo_filespec; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_working_directory_prompt" guard="&non_empty_re;"> <description>module/filepath/...</description> <handler> $ui->source->repo_filespec( $answer ); </handler> </arc> </state> <state id="source_cvs_working_directory_prompt" class-ids="prompt_class"> <name>Source CVS working directory</name> <description> Enter the CVS working directory (Optional). VCP::Source::cvs will cd to this directory before calling cvs and won't initialize a CVS workspace of its own. Leave blank to allow VCP to use a temporary directory. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_WORK_DIR} ; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_binary_checkout_prompt"> <handler> $ui->source->ui_set_cvs_work_dir( $answer ) unless empty $answer; </handler> </arc> </state> <state id="source_cvs_binary_checkout_prompt" class-ids="prompt_class"> <name>Force binary checkout</name> <description> Pass the -kb option to cvs, to force a binary checkout. This is useful when you want a text file to be checked out with Unix linends, or if you know that some files in the repository are not flagged as binary files and should be. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_K_OPTION} =~ /b/ ? "yes" : "no" ; $is_current_value = 1; } else { $default = "no"; } </entry-handler> <arc to="source_cvs_use_cvs_prompt" guard="'yes'"> <description>yes</description> <handler>$ui->source->{CVS_K_OPTION} = "b";</handler> </arc> <arc to="source_cvs_use_cvs_prompt" guard="'no'"> <description>no</description> </arc> </state> <state id="source_cvs_use_cvs_prompt" class-ids="prompt_class"> <name>Use cvs executable</name> <description> This forces VCP to use the cvs executable rather than read local CVSROOT directories directly. This is slower, but may be used to work around any limitations that might crop up in VCP's RCS file parser. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_USE_CVS} ? "yes" : "no" ; $is_current_value = 1; } else { $default = "no"; } </entry-handler> <arc to="dest_prompt" guard="'yes'"> <description>yes</description> <handler>$ui->source->{CVS_USE_CVS} = 1;</handler> </arc> <arc to="dest_prompt" guard="'no'"> <description>no</description> <handler>$ui->source->{CVS_USE_CVS} = 0;</handler> </arc> </state> <!-- REMOVED FOR NOW, the -r and -d options are not supported in raw RCS file scans and are problematic within the context of doing a conversion, plus we want to keep the newbie UI simple. <state id="source_cvs_revision_prompt" class-ids="prompt_class"> <name>Source cvs revision specification</name> <description> Passed to "cvs log" as a "-r" revision specification. This corresponds to the "-r" option for the rlog command, not either of the "-r" options for the cvs command. See rlog(1) man page for the format. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->rev_spec; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_date_spec_prompt"> <handler> unless( empty $answer ) { $ui->source->rev_spec( $answer ); $ui->source->force_missing( defined $ui->source->rev_spec ); } </handler> </arc> </state> <state id="source_cvs_date_spec_prompt" class-ids="prompt_class"> <name>Source cvs date specification</name> <description> Passed to 'cvs log' as a "-d" date specification. See rlog(1) man page for the format. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->date_spec; $is_current_value = 1; } </entry-handler> <arc to="dest_prompt"> <handler> $ui->source->date_spec( $answer ) unless empty $answer; </handler> </arc> </state> --> </machine>
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#22 | 5398 | barrie_slaymaker |
- Tweak source .stml files to re-enable a multiple choice listing. |
||
#21 | 4581 | barrie_slaymaker | - user prompts have been improved, but not tested | ||
#20 | 4064 | barrie_slaymaker |
- RevML is no longer offered in the UI - Sources and dests are given an id in the UI - The .vcp file name defaulting now works |
||
#19 | 4002 | barrie_slaymaker | - Interactive UI no longer prompts for CVS -r and -d options | ||
#18 | 3859 | barrie_slaymaker | - New UI files | ||
#17 | 3675 | barrie_slaymaker | - More of a .vcp file is now editable | ||
#16 | 3667 | barrie_slaymaker |
- VCP-Source-vss.stml now has atomic questions instead of asking for a command-line-like vss: spec |
||
#15 | 3647 | barrie_slaymaker |
- All UI prompts & descriptions rewritten. - Minor tweak to VCP::Dest::p4 P4USER defaulting |
||
#14 | 3640 | barrie_slaymaker |
- xmllint no longer require to build UI - UI now offers multiple choices where appropriate |
||
#13 | 3547 | john_fetkovich | Added defaults to yes/no questions (no in all cases) | ||
#12 | 3523 | john_fetkovich | more ui defaults and checks added | ||
#11 | 3521 | john_fetkovich | default cvsroot from $ENV{CVSROOT} | ||
#10 | 3502 | john_fetkovich | removed obsolete commented out (source,dest)->init calls in stml files | ||
#9 | 3486 | john_fetkovich | moved (source or dest)->init calls to bin/vcp | ||
#8 | 3403 | john_fetkovich |
options given on all multiple choice prompts, and most free-form prompts where it makes sense |
||
#7 | 3399 | john_fetkovich | ui fixes | ||
#6 | 3395 | john_fetkovich | various ui refinements | ||
#5 | 3390 | john_fetkovich | handlers for cvs ui | ||
#4 | 3306 | barrie_slaymaker | Add StateML namespace support | ||
#3 | 3260 | john_fetkovich | Improve some help texts | ||
#2 | 3254 | barrie_slaymaker | Redo machine naminf convention. | ||
#1 | 3248 | john_fetkovich |
Created VCP-Source-cvs.stml. Small changes VCP-Source-p4.stml. |