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