copy.paste.file.names
[tfs.git] / ChangeLog
blobd0f7623bc239b1478b4fb03f342ca8f70b067c90
1 2007-02-05  Joel Reed  <joelwreed@comcast.com>
3         * v0.6.1 release notes
5         # NEW: add /path option to "tf labels" command for filtering by path
6         # NEW: add Workfold.CreateLocal option to automatically create
7         mapped local folders.
8         # COMPAT:
9         http://blogs.msdn.com/buckh/archive/2006/03/15/552288.aspx
10         http://blogs.msdn.com/buckh/archive/2005/10/26/485458.aspx
11         http://blogs.msdn.com/buckh/archive/2005/10/25/484854.aspx
12         http://blogs.msdn.com/jmanning/archive/2006/08/08/692281.aspx
13         
14 2007-10-07  Joel Reed  <joelwreed@comcast.com>
16         * v0.6.0 release notes
18         # CRUISECONTROL: add support for date range queries to the history
19         command, e.g. -version:"D2006-10-01T01:01:01Z~D2006-12-13T20:00:00Z"
20         # CRUISECONTROL: add -noprompt option
21         # CRUISECONTROL: add support for username@domain -login syntax
22         # TFSBOT: add new IRC commit notification daemon. 
23         # NEW: add alpha-quality MonoDevelop addin, with debian package
24         # NEW: implement "tf shelve <name> <path>" to create new shelvesets
25         # NEW: implement "tf shelve /delete <name>" for deleting shelvesets
26         # NEW: implement "tf merges <src> <dest>" for listing merge points
27         # NEW: implement "tf diff /ignorespace" option
28         # NEW: implement "tf rollback <changeset>" for undoing a changeset.
29         NOTE: only useful if no one else has changed the file since then.
30         # NEW: add Get.ChangesetMtimes setting: By enabling this option, 
31         the TF will set the modification time of any file subsequently fetched
32         to the date of the last changeset in which the file was modified. 
33         Warning: this mode of operation can significantly slow down "tf get".
34         NOTE: Is this the best we can do? Does the server have any better datetime info?
35         # NEW: add Get.DefaultToCwd setting: By enabling this option, the TF 
36         client will look for updates starting with the current working folder 
37         instead of pulling updates from all registered working folders.
38         # NEW: add Workspace.Default setting: If the TF client cannot determine the 
39         active workspace, first from the "/workspace:" option, and second the 
40         workspace cache, then it will use the Workspace.Default setting if non-null.
41         # BUGFIX: tf history with stopAfter > 256 shouldn't emit
42         duplicate entries (thanks to dion.olsthoorn for the report & fix)
43         # BUGFIX: tf online <path> shouldn't croak if <path> is an add awaiting 
44         its first checkin
45         # BUGFIX: tf undo <paths> shouldn't undo all local changes
46         # BUGFIX: when parsing changeset and shelveset datetimes don't 
47         drop the time portion
48         # BUGFIX: insert trailing tabs after filenames (a/b) in diffs to
49         help diffutils grok filenames with spaces
50         # BUGFIX: make sure tf ls-files <paths> is not passed a filename
51         # BUGFIX: set proper checkin time (by passing 0, not DateTime.Now - doh!)
52         # BUGFIX: fix tf ls-files /others breakage on windows for subdirectories
53         # BUGFIX: update local workspace cache when "tf workspaces" command called.
54         # BUGFIX: fix issue #8 "tf config expects ~/.tf/ to already exist"
55         # BUGFIX: teach tf that diffing binary files should print short 
56         "Binary files $1 and $2 differ" message
57         # BUGFIX: teach status command how to deal with locked files
58         # BUGFIX: teach tf branches command about server paths
59         # BUGFIX: don't clobber workspace info cache when there
60         are >1 TFS server
61         # BUGFIX: update build for monodevelop 0.18.1 changes
62         # BUGFIX: show renames correctly in changeset command
63         # API: Microsoft.TeamFoundation.Common: Artifact, ArtifactId, ILinking
64         LinkFilter, LinkingUtilities, ServiceInterfaces
65         # API: Microsoft.TeamFoundation.VersionControl.Client: ShelvingOptions,
66         ChangesetMerge
67         
68 2007-09-07  Joel Reed  <joelwreed@comcast.com>
70         * v0.5.2 release notes
71         # NEW: add VS2005 project files and solution for building opentf 
72         on Windows
73         # NEW: add spec file for building RPMs on OpenSuse
74         # NEW: add "lock" command
75         # NEW: add "show stats" command to show server statistics
76         # NEW: add "show tools" command to show registered tools
77         # NEW: add "show build" command to show build configuration
78         # NEW: add "show ident" command to show server account information
79         # NEW: rename "tf cache" to "tf show cache"
80         # NEW: implement "tf changeset /latest" and test case
81         # NEW: implement "tf history /user:FOO" for filtering history queries by user
82         # NEW: implement "tf history /version:<vspec>" - but not ranges!
83         # NEW: add "tf history /format:byowner" and test case
84         # NEW: add "tf version" command to print program version number
85         # NEW: add "Server.Default" setting 
86         # NEW: teach File.Excludes to support directory specifications as well as
87         file glob patterns
88         # NEW: teach tf shelveset the "name;owner" syntax for specifying a shelveset
89         
90         # API: add ICredentialsProvider, ArtifactType, ChangeType, Database, 
91         IGroupSecurityService, IRegistration, Identity, IdentityType, 
92         QueryMembership, OutboundLinkType, RegistrationEntry, SearchFactor 
93         and ServiceInterface classes
94         
95         # API: start work on Microsoft.TeamFoundation.WorkItemTracking.Client assembly
96         # BUGFIX: rework exit codes throughout for more consistency
97         # BUGFIX: tf shelveset /owner:<owner> should filter results by owner
98         # BUGFIX: add column headers to history /format:brief output
99         # BUGFIX: tf get /force shouldn't set preview mode!
100         # BUGFIX: properly label renames in tf status output
101         # BUGFIX: make sure all files in a directory are read-write before
102         attempting to delete a directory containing these files
103         # BUGFIX: handle QueryHistory requests with maxCount > 256
104         # API: implement VersionControlServer.GetLatestChangesetId
106 2007-08-02  Joel Reed  <joelwreed@comcast.com>
108         * v0.5.1 release notes
110         # NEW: add "explore" command for visually browsing a repository, sortable 
111         changeview columns, control-c to copy a changelist entry
112         # NEW: add gtk login dialog for missing auth credentials
113         # NEW: tf undo with no args will undo all local changes, previously the command
114         required at least one filename or path
115         # NEW: report on UndonePendingChange events (which can happen if file upload
116         fails on checkin for example)
117         # NEW: all commands now support reading arguments from stdin
118         # NEW: command chaining now supports output piping using %%. 
119         Implemented for ls-files and diff /q commands only!
120         For example, you can say tf ls-files /others %% add to add all
121         unknown files to the repository. 
122         # NEW: support wildcards in checkout paths
123         # NEW: teach tf workspaces command to filter by workspace name if requested
124         # NEW: add syntax guidance to tf help <cmd> invocations
125         # NEW: 8 more test cases for tf client program covering add, renaming, 
126         and deleting of directories, plus renaming files
127         # BUGFIX: tf rename <olddir> <newdir> should work now
128         # BUGFIX: teach diff /modified to check file hashes before reporting a modified file
129         # BUGFIX: when told to delete a directory, delete files within them too
130         # BUGFIX: implement CheckAuthentication call - this makes adding large numbers
131         of files more reliable as it prevents NTML authentication timeout related failures
132         # BUGFIX: on windows, must do case insensitive path comparisons 
133         when looking for cached workspace info
134         # BUGFIX: tf online <list-of-files> didn't pickup deletes to pend
135         # BUGFIX: GetLocalWorkspaceInfo(string path) should trim workspaceinfo directory
136         separators before looking for a match
137         # BUGFIX: TryGetServerItemForLocalItem and TryGetLocalItemForServerItem
138         should find longest match
139         # BUGFIX: teach tf workfold /unmap to accept relative paths
140         # BUGFIX: always sort items in an ItemSet (sorts tf dir output for example)
142 2007-07-31  Joel Reed  <joelwreed@comcast.com>
144         * v0.5.0.1 release notes (brown paper bag release)
146         # BUGFIX: Improved error reporting broke Command::GetLocalWorkspaceCache
147         function. Darn!
148         
149 2007-07-03  Joel Reed  <joelwreed@comcast.com>
151         * v0.5.0 release notes
153         # NEW: add "tf shelvesets" command (brief output only)
154         # NEW: add support for writable working folders
155         # NEW: implement tf help <cmd> with display of valid options for 
156         each command.
157         # NEW: add "tf branches" command (limited testing)
158         # NEW: add tf online <list of files>
159         # NEW: add tf diff /brief option
160         # NEW: support for tf add /recursive <path>
161         # NEW: 20 new test cases for tf client program
162         # NEW: add "tf help /list" helper for shell completion
163         # NEW: add History.StopAfter setting option
164         # NEW: --disable-magic option for windows/cygwin users
165         # NEW: add progress indicator to GetCommand when setting permissions
166         # NEW: add configure option "--with-mslibs=<dir>" to build just the 
167         TF client using the standard MS Team Foundation Assemblies
168         # NEW: teach view command to accept multiple item specs
169         # BUGFIX: don't try to upload new directories on checkin, only files
170         # BUGFIX: Command.VerifiedFullPaths should accept directories too
171         # BUGFIX: shell wrapper tf should quote $@ so /C:"This is my comment" 
172         will work
173         # BUGFIX: uninstall man page and pkg-config file too
174         # BUGFIX: fix /format:detailed output for added files in history cmd
175         # BUGFIX: tf delete <folder> should actually delete the folder
176         # BUGFIX: honor excludeFiles setting in tf ls-files /writable
177         
178 2007-06-18  Joel Reed  <joelwreed@gmail.com>
180         * v0.4.7 release notes
182         # Implement label and unlabel commands
183         # Add "cache" command which shows workspace cache settings
184         # Add /added, /modified, /deleted flags to Online command to
185         show just additions, just modifications, or just deletions 
186         respectively. These flags may be combined. With no flags, all
187         changes are incorporated.
188         # Add tf diff /modified option to show locally modified files as a
189         unified diff. Can be used to review changes before using the online
190         command.
191         # Add File.Excludes config option. Use in "online" command.
192         # Add Online.Recursive setting. Make default non-recursive to match
193         standard MS client.
194         # Add tf ls-files /writable option (mainly for windows users)
195         # BUGFIX: Fixed multiple issues related to running opentf on windows.
196         these include deleting read-only files and deleting files still open,
197         which succeed on *nix platforms, but not on windows.
198         # BUGFIX: Online command on windows. Replace server item path separator 
199         with platform path separator.
200         # BUGFIX: Replace windows path separators in diff headers with nix path 
201         separator so /usr/bin/patch is happy
202         # BUGFIX: Show deleted files in tf status as state "Deleted" not "544"
203         # BUGFIX: Compare file hashes when looking for modifications in tf online 
204         command. Previously just looked for files marked writable.
205         
206 2007-06-08  Joel Reed  <joelwreed@gmail.com>
208         * v0.4.6 release notes:
210         # Add Get.Recursive and History.DefaultToCwd config options 
211         for those looking to override the less helpful defaults of the
212         standard client
213         # Add Checkout.Latest option to ensure checkout of latest version 
214         of file rather than workspace version
215         # Change /usr/bin/cli to /usr/bin/mono in tf.sh
216         # BUGFIX: several diff fixes, including off by one error for files
217         not ending in "\n", new file diff format fixes, and B file context
218         calculation fixes
219         # BUGFIX: send local version updates to server after pending deletes
220         # BUGFIX: trailing slash on path confused online command 
221         # BUGFIX: Online, TreeClean, and ls-files command should pull item
222         list based on WorkspaceVersion not LatestVersion.
223         # BUGFIX: dont print blank lines for directories and new files for 
224         ls-files /old subcommand.
225         # BUGFIX: when upload new/changed files, send correct file length
226         # BUGFIX: add support for local paths to dir subcommand, and output
227         listing in a more unix-y format (which is, imho, far more useful)
228         # HELP: Warn that invalid options can be mistaken for paths.
229         # HELP: Add more CodePlex usage examples to README
230         
231 2007-04-27  Joel Reed  <joelwreed@gmail.com>
232         
233         * v0.4.4 release notes:
234         
235         NOTE: in this release VersionControl.config is now stored in ~/.tf/Cache/,
236         instead of ~/.tf/ - this change was made for consistency with the 
237         MS versions of the TFS assemblies. If you've used the TF tool previously,
238         just move VersionControl.config from ~/.tf/ to ~/.tf/Cache/
239         
240         # add basic version of TF Power Tool 1.1 "online" command to tf.exe,
241           includes /preview mode.
242         # add basic version of TF Power Tool 1.2 "treeclean" command to tf.exe,
243           includes /preview mode.
244         # add changeset command 
245         # add diff command with support for diff against server latest,
246           diff of pending changes, diff view of any changeset.
247         # add support for response file processing and multiple commands 
248           on a single command line, please see documentation for usage    
249         # add /format:detailed option to history command
250         # add basic "help" command
251         # add config command with options "Checkin.Validate", "Credentials.Save",
252           and "History.Recursive"
253         
254         # read server setings from cache file, don't need /server 
255           quite as much now
256         # load/store credentials from gnome-keyring if available, prompt for
257           password when not supplied.
258         
259         # undoing a delete restores the file now
260         # numerous API additions including: WorkspaceVersionSpec, IDiffItem, 
261           DiffItemVersionedFile, DiffOutputType, DiffOptionFlags, DiffOptions, 
262           Conflict*, ExceptionEvent* types
263         # add DisplayString property for all VersionSpec classes and test cases
264         # better man page
265         # better error messages
267         # BUGFIX: when a file is checked in mark it should be marked read-only
268         # BUGFIX: do case insensitive string comparisons in ls-files and
269         online commands on windows, and use Path.DirectorySeparatorChar
270         # BUGFIX: GetLocalWorkspaceInfo should find longest matching path,
271         not first matching path
272         # BUGFIX: tf get should use CWD only to find workspace
273         # BUGFIX: properly handle checkin of files marked read-only
274         # BUGFIX: on windows find correct TFS VersionControl.config file
275         
276 2007-04-22  Joel Reed  <joelwreed@gmail.com>
278         * v0.4.2 release: add support for querying ExtendedItems. Implement
279         tf.exe property command which uses ExtendedItems. Add GettingEventHandler,
280         PendingChangeEventHandler, ProcessingChangeEventHandler, 
281         and OperationStatus.
283         tf.exe now compiles/runs on MS CLR. Many bug fixes were made to APIs,
284         and client utility while testing on Windows.
286         tf.exe supports two new commands: "ls-files" and "properties".
287         The "status" command output was cleaned up. 
289         Added debian packages via "make dist"
290         
291         Started MonoDevelop plugin based on Subversion plugin. Work in progress.
292         Lots of code cleanups and bug fixes. 
294         Improved handling of ~/.tf/VersionControl.config cache.
296 2007-03-28 joel reed  <joelwreed@gmail.com>
298         * v0.4 release: support for add, delete, rename, edit, and 
299         history, and checkin commands. added file permissions handling
300         using libmagic. show changeset id from server. doc updates.
301         multiple API additions and bug fixes.
302         
303 2007-03-10 joel reed  <joelwreed@gmail.com>
305         * v0.3 release: much better support for tracking a repository,
306         including new files, deleted files, and renames. A preliminary
307         man page has been added, and utility commands like add, delete, 
308         checkout, and rename now modify the state of the server. The 
309         checkin command has a mysterious bug which prevents these 
310         modifications from being added back to the repository, 
311         but that should be cleaned up soon.
313 2006-12-29 joel reed  <joelwreed@gmail.com>
315         * v0.1 release: dir, labels, workspaces, view,
316         and permissions commands have initial implementations
317         
318 2006-12-28 joel reed  <joelwreed@gmail.com>
320         * initial setup of separate TFS tree