prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  `dvc status` print something even if project is just initialized
  Empty outputs look like a bug
  
  </issue>
  <code>
  [start of dvc/command/status.py]
  1 from dvc.command.data_sync import CmdDataBase
  2 
  3 
  4 class CmdDataStatus(CmdDataBase):
  5     STATUS_LEN = 10
  6     STATUS_INDENT = '\t'
  7 
  8     def _normalize(self, s):
  9         s += ':'
  10         assert len(s) < self.STATUS_LEN
  11         return s + (self.STATUS_LEN - len(s))*' '
  12 
  13     def _show(self, status, indent=0):
  14         ind = indent * self.STATUS_INDENT
  15 
  16         for key, value in status.items():
  17             if isinstance(value, dict):
  18                 self.project.logger.info('{}{}'.format(ind, key))
  19                 self._show(value, indent+1)
  20             else:
  21                 msg = '{}{}{}'.format(ind, self._normalize(value), key)
  22                 self.project.logger.info(msg)
  23 
  24     def do_run(self, target=None):
  25         indent = 1 if self.args.cloud else 0
  26         try:
  27             st = self.project.status(target=target,
  28                                      jobs=self.args.jobs,
  29                                      cloud=self.args.cloud,
  30                                      show_checksums=self.args.show_checksums,
  31                                      remote=self.args.remote)
  32             self._show(st, indent)
  33         except Exception as exc:
  34             self.project.logger.error('Failed to obtain data status', exc)
  35             return 1
  36         return 0
  37
  [end of dvc/command/status.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/dvc/command/status.py b/dvc/command/status.py
  --- a/dvc/command/status.py
  +++ b/dvc/command/status.py
  @@ -29,7 +29,11 @@
                                        cloud=self.args.cloud,
                                        show_checksums=self.args.show_checksums,
                                        remote=self.args.remote)
  -            self._show(st, indent)
  +            if st:
  +                self._show(st, indent)
  +            else:
  +                self.project.logger.info("Nothing to reproduce. "
  +                                         "Pipeline is up to date.")
           except Exception as exc:
               self.project.logger.error('Failed to obtain data status', exc)
               return 1
  
verification_info: {"golden_diff": "diff --git a/dvc/command/status.py b/dvc/command/status.py\n--- a/dvc/command/status.py\n+++ b/dvc/command/status.py\n@@ -29,7 +29,11 @@\n                                      cloud=self.args.cloud,\n                                      show_checksums=self.args.show_checksums,\n                                      remote=self.args.remote)\n-            self._show(st, indent)\n+            if st:\n+                self._show(st, indent)\n+            else:\n+                self.project.logger.info(\"Nothing to reproduce. \"\n+                                         \"Pipeline is up to date.\")\n         except Exception as exc:\n             self.project.logger.error('Failed to obtain data status', exc)\n             return 1\n", "issue": "`dvc status` print something even if project is just initialized\nEmpty outputs look like a bug\n", "before_files": [{"content": "from dvc.command.data_sync import CmdDataBase\n\n\nclass CmdDataStatus(CmdDataBase):\n    STATUS_LEN = 10\n    STATUS_INDENT = '\\t'\n\n    def _normalize(self, s):\n        s += ':'\n        assert len(s) < self.STATUS_LEN\n        return s + (self.STATUS_LEN - len(s))*' '\n\n    def _show(self, status, indent=0):\n        ind = indent * self.STATUS_INDENT\n\n        for key, value in status.items():\n            if isinstance(value, dict):\n                self.project.logger.info('{}{}'.format(ind, key))\n                self._show(value, indent+1)\n            else:\n                msg = '{}{}{}'.format(ind, self._normalize(value), key)\n                self.project.logger.info(msg)\n\n    def do_run(self, target=None):\n        indent = 1 if self.args.cloud else 0\n        try:\n            st = self.project.status(target=target,\n                                     jobs=self.args.jobs,\n                                     cloud=self.args.cloud,\n                                     show_checksums=self.args.show_checksums,\n                                     remote=self.args.remote)\n            self._show(st, indent)\n        except Exception as exc:\n            self.project.logger.error('Failed to obtain data status', exc)\n            return 1\n        return 0\n", "path": "dvc/command/status.py"}]}