Description of problem: When attempting to 'rbt post' inside a repository created with 'git svn clone', posting fails and "CRITICAL: object of type 'NoneType' has no len()." is displayed. More detail is given Version-Release number of selected component (if applicable): NA How reproducible: Always Steps to Reproduce: 1. git svn clone a repository that is linked to an RB instance 2. rbt post in the new clone Actual results: CRITICAL: object of type 'NoneType' has no len(). Expected results: Successful RB posting. Additional info: Running 'rbt post --debug' produces: >>> RBTools 0.7.2 >>> Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] >>> Running on Linux-2.6.32-504.12.2.el6.x86_64-x86_64-with-centos-6.6-Final >>> Home = /home/cstapleton >>> Current directory = /home/cstapleton/public_html/2768_CS_MORENEWS/local/interface/ATECentral2 >>> Checking for a Subversion repository... >>> Running: svn info --non-interactive >>> Command exited with rc 1: ['svn', 'info', '--non-interactive'] svn: '.' is not a working copy --- >>> Checking for a Git repository... >>> Running: git rev-parse --git-dir >>> Running: git config core.bare >>> Running: git rev-parse --show-toplevel >>> Running: git symbolic-ref -q HEAD >>> Running: git svn info >>> Running: git svn rebase -n >>> repository info: Path: file:///home/svnroot, Base path: /trunk/AMSER2, Supports changesets: False >>> Making HTTP GET request to https://int.scout.wisc.edu/reviewboard/api/ >>> Making HTTP GET request to https://int.scout.wisc.edu/reviewboard/api/repositories/ >>> Cached response for HTTP GET https://int.scout.wisc.edu/reviewboard/api/repositories/ expired and was modified >>> Making HTTP GET request to https://int.scout.wisc.edu/reviewboard/api/repositories/1/info/ >>> Cached response for HTTP GET https://int.scout.wisc.edu/reviewboard/api/repositories/1/info/ expired and was modified >>> repository info: Path: file:///home/svnroot, Base path: /trunk/AMSER2, Supports changesets: False >>> Running: git rev-parse refs/heads/master >>> Running: git merge-base 727c08c23a00a1b209f4b1bdd862ced721b21e20 refs/remotes/git-svn >>> Running: git rev-parse 197babf39f7dcf9e880fdc8a559664f6691d6e65 >>> Running: git status --porcelain --untracked-files=no >>> Running: git rev-parse --git-dir >>> Running: git -c core.quotepath=false diff --no-color --no-prefix -r -u --no-ext-diff 197babf39f7dcf9e880fdc8a559664f6691d6e65..727c08c23a00a1b209f4b1bdd862ced721b21e20 >>> Command exited with rc 129: ['git', '-c', 'core.quotepath=false', 'diff', '--no-color', '--no-prefix', '-r', '-u', '--no-ext-diff', u'197babf39f7dcf9e880fdc8a559664f6691d6e65..727c08c23a00a1b209f4b1bdd862ced721b21e20'] []--- Traceback (most recent call last): File "/usr/bin/rbt", line 9, in <module> load_entry_point('RBTools==0.7.2', 'console_scripts', 'rbt')() File "/usr/lib/python2.6/site-packages/rbtools/commands/main.py", line 133, in main command.run_from_argv([RB_MAIN, command_name] + args) File "/usr/lib/python2.6/site-packages/rbtools/commands/__init__.py", line 555, in run_from_argv exit_code = self.main(*args) or 0 File "/usr/lib/python2.6/site-packages/rbtools/commands/post.py", line 639, in main extra_args=extra_args) File "/usr/lib/python2.6/site-packages/rbtools/clients/git.py", line 448, in diff exclude_patterns) File "/usr/lib/python2.6/site-packages/rbtools/clients/git.py", line 552, in make_diff results_unicode=False) File "/usr/lib/python2.6/site-packages/rbtools/utils/process.py", line 102, in execute if split_lines and len(data) > 0: TypeError: object of type 'NoneType' has no len() Manually running git -c core.quotepath=false diff --no-color --no-prefix -r -u --no-ext-diff 197babf39f7dcf9e880fdc8a559664f6691d6e65..727c08c23a00a1b209f4b1bdd862ced721b21e20 Produces: Unknown option: -c usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [--html-path] [-p|--paginate|--no-pager] [--no-replace-objects] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS] The installed git is: azure:~$ git --version git version 1.7.1 azure:~$ yum info git Loaded plugins: changelog, etckeeper, fastestmirror, security Loading mirror speeds from cached hostfile * base: bay.uchicago.edu * elrepo: mirror.symnds.com * epel: mirror.steadfast.net * extras: mirrors.tripadvisor.com * updates: mirror.nexcess.net Installed Packages Name : git Arch : x86_64 Version : 1.7.1 Release : 3.el6_4.1 Size : 15 M Repo : installed From repo : updates Summary : Fast Version Control System URL : http://git-scm.com/ License : GPLv2 Description : Git is a fast, scalable, distributed revision control system with an : unusually rich command set that provides both high-level operations : and full access to internals. : : The git rpm installs the core tools with minimal dependencies. To : install all git packages, including tools for integrating with other : SCMs, install the git-all meta-package. From the git release notes, it looks as though the '-c name=value' option was introduced with git 1.7.2 ? Changing line 477 of /usr/lib/python2.6/site-packages/rbtools/clients/git.py from git_cmd = [self.git, '-c', 'core.quotepath=false'] to git_cmd = [self.git] resolves the issue.
That may reduce the impact of the issue, but it would reintroduce other issues. Bugs would appear if any path in a diff includes characters greater than 0x80. I'm raising this issue with RBTools upstream: https://code.google.com/p/reviewboard/issues/detail?id=3876
RBTools-0.7.3-1.el7 has been submitted as an update for Fedora EPEL 7. https://admin.fedoraproject.org/updates/RBTools-0.7.3-1.el7
RBTools-0.7.3-1.el6 has been submitted as an update for Fedora EPEL 6. https://admin.fedoraproject.org/updates/RBTools-0.7.3-1.el6
RBTools-0.7.3-1.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/RBTools-0.7.3-1.fc20
RBTools-0.7.3-1.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/RBTools-0.7.3-1.fc22
RBTools-0.7.3-1.fc21 has been submitted as an update for Fedora 21. https://admin.fedoraproject.org/updates/RBTools-0.7.3-1.fc21
Package RBTools-0.7.3-1.el6: * should fix your issue, * was pushed to the Fedora EPEL 6 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=epel-testing RBTools-0.7.3-1.el6' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-EPEL-2015-6448/RBTools-0.7.3-1.el6 then log in and leave karma (feedback).
RBTools-0.7.3-1.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.3-1.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.3-1.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.4-1.el7 has been submitted as an update for Fedora EPEL 7. https://admin.fedoraproject.org/updates/RBTools-0.7.4-1.el7
RBTools-0.7.4-1.el6 has been submitted as an update for Fedora EPEL 6. https://admin.fedoraproject.org/updates/RBTools-0.7.4-1.el6
RBTools-0.7.4-1.fc21 has been submitted as an update for Fedora 21. https://admin.fedoraproject.org/updates/RBTools-0.7.4-1.fc21
RBTools-0.7.4-1.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/RBTools-0.7.4-1.fc20
RBTools-0.7.4-1.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/RBTools-0.7.4-1.fc22
RBTools-0.7.4-1.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.4-1.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.4-1.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.4-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.
RBTools-0.7.4-1.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.