Add TFS support for VS2017 users.

Review Request #8833 - Created March 21, 2017 and submitted

David Trowbridge
RBTools
release-0.7.x
54a41aa...
rbtools

Visual Studio 2017 changes the on-disk format of the user cache for TFS
workspaces, and Team Explorer Everywhere and the TFS Java SDK don't have
support for the new format. This meant that our two methods for interfacing
with TFS on the client would not work against VS2017 workspaces.

Fortunately, the tf.exe command-line tool that ships with VS2017 restores
some of the features that were removed in VS2015 (which prompted our move to
Team Explorer Everywhere), and is sufficient for posting pending changes. This
change implements support for that, and adds some documentation about the three
TFS methods and how to use them.

  • Posted a few TFS changes involving edits, adds, deletes, moves, and copies on
    various types of files, including binary files.
  • Built the docs and looked at the new page.
  • 0
  • 0
  • 4
  • 2
  • 6
Description From Last Updated
Review Bot
  1. Tool: Pyflakes
    Processed Files:
        rbtools/clients/tfs.py
    
    Ignored Files:
        docs/rbtools/rbt/configuration/index.rst
        docs/rbtools/rbt/configuration/tfs.rst
        docs/rbtools/index.rst
    
    
    
    Tool: PEP8 Style Checker
    Processed Files:
        rbtools/clients/tfs.py
    
    Ignored Files:
        docs/rbtools/rbt/configuration/index.rst
        docs/rbtools/rbt/configuration/tfs.rst
        docs/rbtools/index.rst
    
    
  2. rbtools/clients/tfs.py (Diff revision 1)
     
     
    Col: 80
     E501 line too long (83 > 79 characters)
    
  3. rbtools/clients/tfs.py (Diff revision 1)
     
     
    Col: 80
     E501 line too long (81 > 79 characters)
    
  4. rbtools/clients/tfs.py (Diff revision 1)
     
     
    Col: 33
     E221 multiple spaces before operator
    
  5. 
      
David Trowbridge
Review Bot
  1. Tool: Pyflakes
    Processed Files:
        rbtools/clients/tfs.py
    
    Ignored Files:
        docs/rbtools/rbt/configuration/index.rst
        docs/rbtools/rbt/configuration/tfs.rst
        docs/rbtools/index.rst
    
    
    
    Tool: PEP8 Style Checker
    Processed Files:
        rbtools/clients/tfs.py
    
    Ignored Files:
        docs/rbtools/rbt/configuration/index.rst
        docs/rbtools/rbt/configuration/tfs.rst
        docs/rbtools/index.rst
    
    
  2. 
      
Christian Hammond
  1. \o/

    Man, what a fustercluck. Thanks, Microsoft. Glad we're going to get some compatibiliy back though.

  2. docs/rbtools/rbt/configuration/tfs.rst (Diff revision 2)
     
     
     
     
     
     
     

    We should state the versions here, too, like we do in the other sections.

  3. 
      
David Trowbridge
Barret Rennie
  1. 
      
  2. rbtools/clients/tfs.py (Diff revision 3)
     
     
     

    None of the code paths return a dict with this key.

    1. True (for now), but I'd like to keep this comment consistent with the implementation in all the other clients.

  3. rbtools/clients/tfs.py (Diff revision 3)
     
     

    Aren't we deprecating all usages of die in favour of SCMError etc?

    1. Are we? There are still a bunch. I think perhaps I'll leave this for now and if we're actually getting rid of it, we can do so along with al the other uses.

    2. If we use die, then the client cannot be instantiated from within a script and do its own graceful error handling because we will kill their script.

    3. See https://reviews.reviewboard.org/r/8899/

  4. 
      
Barret Rennie
  1. Ship It!
  2. 
      
David Trowbridge
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to release-0.7.x (e5b3533)
Loading...