#4847 Add url_path property to class User.
Merged 3 years ago by pingou. Opened 3 years ago by xyzzyx.
xyzzyx/pagure master  into  master

@@ -6,6 +6,12 @@ 

  

   Authors:

     Patrick Uiterwijk <puiterwijk@redhat.com>

+  

+  Notes:

+    If you've installed Pagure with a virtual environment, replace the

+    interpreter path like this:

+    

+    #!/path/to/pagure_env/bin/python

  

  """

  
@@ -13,6 +19,7 @@ 

  

  import os

  import sys

+  

  # The following is only needed if you did not install pagure

  # as a python module (for example if you run it from a git clone).

  #sys.path.insert(0, '/path/to/pagure/')

file modified
+13 -1
@@ -230,6 +230,13 @@ 

          return self.user

  

      @property

+     def url_path(self):

+         """ Return the path at which this user can be accessed in the web UI.

+         """

+ 

+         return "user/%s" % (self.user)

+ 

+     @property

      def html_title(self):

          """ Return the ``fullname (username)`` or simply ``username`` to be

          used in the html templates.
@@ -275,7 +282,12 @@ 

  

      def to_json(self, public=False):

          """ Return a representation of the User in a dictionary. """

-         output = {"name": self.user, "fullname": self.fullname}

+         output = {

+             "name": self.user,

+             "fullname": self.fullname,

+             "url_path": self.url_path,

+         }

+ 

          if not public:

              output["default_email"] = self.default_email

              output["emails"] = sorted([email.email for email in self.emails])

file modified
+3
@@ -27,9 +27,12 @@ 

  PRINTLOCK = None

  RUNNING = []

  FAILED = []

+ 

  NUMPROCS = multiprocessing.cpu_count() - 1

  if os.environ.get("BUILD_ID"):

      NUMPROCS = multiprocessing.cpu_count()

+ if NUMPROCS < 1:

+     NUMPROCS = 1

I like this change but could you move it to its own commit?

  

  HERE = os.path.join(os.path.dirname(os.path.abspath(__file__)))

  LOG = logging.getLogger(__name__)

@@ -450,7 +450,11 @@ 

                          "parent": None,

                          "priorities": {},

                          "tags": [],

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "remote_git": None,

                      "repo_from": {
@@ -484,7 +488,11 @@ 

                          "parent": None,

                          "priorities": {},

                          "tags": [],

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "status": "Open",

                      "tags": [],
@@ -492,7 +500,11 @@ 

                      "title": "test pull-request",

                      "uid": "1431414800",

                      "updated_on": "1431414800",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_requests": 1,
@@ -777,7 +789,11 @@ 

                  "parent": None,

                  "priorities": {},

                  "tags": [],

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "remote_git": None,

              "repo_from": {
@@ -807,7 +823,11 @@ 

                  "parent": None,

                  "priorities": {},

                  "tags": [],

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "status": "Open",

              "tags": [],
@@ -815,7 +835,11 @@ 

              "title": "test pull-request",

              "uid": "1431414800",

              "updated_on": "1431414800",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertDictEqual(data, expected_data)

  
@@ -923,7 +947,11 @@ 

                  "parent": None,

                  "priorities": {},

                  "tags": [],

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "remote_git": None,

              "repo_from": {
@@ -953,7 +981,11 @@ 

                  "parent": None,

                  "priorities": {},

                  "tags": [],

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "status": "Open",

              "tags": [],
@@ -961,7 +993,11 @@ 

              "title": "test pull-request",

              "uid": uid,

              "updated_on": "1431414800",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertDictEqual(data, expected_data)

  
@@ -3026,7 +3062,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "remote_git": None,

                  "repo_from": {
@@ -3056,7 +3096,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "status": "Open",

                  "tags": [],
@@ -3064,7 +3108,11 @@ 

                  "title": "Test PR",

                  "uid": "e8b68df8711648deac67c3afed15a798",

                  "updated_on": "1516348115",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3151,7 +3199,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "remote_git": None,

                  "repo_from": {
@@ -3181,7 +3233,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "status": "Open",

                  "tags": [],
@@ -3189,7 +3245,11 @@ 

                  "title": "Test PR",

                  "uid": "e8b68df8711648deac67c3afed15a798",

                  "updated_on": "1516348115",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3498,7 +3558,11 @@ 

                  "priorities": {},

                  "tags": [],

                  "url_path": "test",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "remote_git": None,

              "repo_from": {
@@ -3528,7 +3592,11 @@ 

                  "priorities": {},

                  "tags": [],

                  "url_path": "test",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

              "status": "Open",

              "tags": [],
@@ -3536,7 +3604,11 @@ 

              "title": "Test PR",

              "uid": "e8b68df8711648deac67c3afed15a798",

              "updated_on": "1516348115",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

  

      def test_api_pull_request_no_comments(self):

@@ -282,7 +282,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "remote_git": None,

                  "repo_from": {
@@ -334,12 +338,20 @@ 

                          "priorities": {},

                          "tags": [],

                          "url_path": "test",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "priorities": {},

                      "tags": [],

                      "url_path": "fork/pingou/test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "status": "Open",

                  "tags": [],
@@ -347,7 +359,11 @@ 

                  "title": "edited test PR",

                  "uid": "a2bddecc8ea548e88c22a0df77670092",

                  "updated_on": "1551276260",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -422,7 +438,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "remote_git": None,

                  "repo_from": {
@@ -474,12 +494,20 @@ 

                          "priorities": {},

                          "tags": [],

                          "url_path": "test",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "priorities": {},

                      "tags": [],

                      "url_path": "fork/pingou/test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "status": "Open",

                  "tags": [],
@@ -487,7 +515,11 @@ 

                  "title": "edited test PR",

                  "uid": "a2bddecc8ea548e88c22a0df77670092",

                  "updated_on": "1551276260",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -582,7 +614,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "remote_git": None,

                  "repo_from": {
@@ -634,12 +670,20 @@ 

                          "priorities": {},

                          "tags": [],

                          "url_path": "test",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "priorities": {},

                      "tags": [],

                      "url_path": "fork/pingou/test",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "status": "Open",

                  "tags": [],
@@ -647,7 +691,11 @@ 

                  "title": "edited test PR",

                  "uid": "a2bddecc8ea548e88c22a0df77670092",

                  "updated_on": "1551276260",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  

@@ -162,6 +162,7 @@ 

              "description": None,

              "creator": {

                  "fullname": "PY C",

+                 "url_path": "user/pingou",

                  "default_email": "bar@pingou.com",

                  "emails": ["bar@pingou.com", "foo@pingou.com"],

                  "name": "pingou",
@@ -185,7 +186,11 @@ 

          exp = {

              "display_name": "Some Group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": ["pingou"],

              "date_created": "1492020239",

              "group_type": "user",
@@ -232,6 +237,7 @@ 

                  "default_email": "bar@pingou.com",

                  "emails": ["bar@pingou.com", "foo@pingou.com"],

                  "name": "pingou",

+                 "url_path": "user/pingou",

              },

              "members": ["pingou", "mprahl"],

              "date_created": "1492020239",
@@ -274,6 +280,7 @@ 

                  "default_email": "bar@pingou.com",

                  "emails": ["bar@pingou.com", "foo@pingou.com"],

                  "name": "pingou",

+                 "url_path": "user/pingou",

              },

              "members": ["pingou"],

              "date_created": "1492020239",
@@ -311,7 +318,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test2",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

          }
@@ -344,7 +355,11 @@ 

          exp = {

              "display_name": "Some Group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": ["pingou"],

              "date_created": "1492020239",

              "group_type": "user",
@@ -381,7 +396,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test2",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

          }
@@ -406,7 +425,11 @@ 

          exp = {

              "display_name": "Some Group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": ["pingou"],

              "date_created": "1492020239",

              "group_type": "user",
@@ -443,7 +466,11 @@ 

                      "priorities": {},

                      "tags": [],

                      "url_path": "test2",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

          }
@@ -480,7 +507,11 @@ 

          exp = {

              "display_name": "Some Group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": ["pingou"],

              "date_created": "1492020239",

              "group_type": "user",
@@ -514,7 +545,11 @@ 

          exp = {

              "display_name": "Some Group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": ["pingou"],

              "date_created": "1492020239",

              "group_type": "user",
@@ -546,7 +581,11 @@ 

          exp = {

              "display_name": "Release engineering group",

              "description": None,

-             "creator": {"fullname": "PY C", "name": "pingou"},

+             "creator": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

              "members": [],

              "date_created": "1492020239",

              "group_type": "user",

@@ -53,10 +53,18 @@ 

          "status": "Closed",

          "tags": [],

          "title": "Test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

-         "assignee": {"fullname": "foo bar", "name": "foo"},

+         "assignee": {

+             "fullname": "foo bar",

+             "name": "foo",

+             "url_path": "user/foo",

+         },

          "blocks": [],

          "close_status": None,

          "closed_at": None,
@@ -75,7 +83,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue1",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -97,7 +109,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -119,7 +135,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -141,7 +161,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -163,7 +187,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -185,7 +213,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -207,7 +239,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -229,7 +265,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

  ]

  
@@ -255,7 +295,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "Issue #2",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -277,7 +321,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "Issue #1",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

  ]

  
@@ -2497,7 +2545,11 @@ 

                          "status": "Open",

                          "tags": [],

                          "title": "Issue #3",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      }

                  ],

                  "pagination": {
@@ -2561,7 +2613,11 @@ 

                  "status": "Open",

                  "tags": [],

                  "title": "test issue",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -2661,7 +2717,11 @@ 

                  "status": "Open",

                  "tags": [],

                  "title": "Test issue",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -2693,7 +2753,11 @@ 

                  "status": "Open",

                  "tags": [],

                  "title": "Test issue",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3303,7 +3367,11 @@ 

                  "id": 1,

                  "parent": None,

                  "reactions": {},

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3327,7 +3395,11 @@ 

                  "id": 1,

                  "parent": None,

                  "reactions": {},

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3422,7 +3494,11 @@ 

                  "id": 1,

                  "parent": None,

                  "reactions": {},

-                 "user": {"fullname": "foo bar", "name": "foo"},

+                 "user": {

+                     "fullname": "foo bar",

+                     "name": "foo",

+                     "url_path": "user/foo",

+                 },

              },

          )

  

@@ -160,7 +160,11 @@ 

                      "status": "Open",

                      "tags": [],

                      "title": "test issue",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  "message": "Issue created",

              },
@@ -212,7 +216,11 @@ 

                      "status": "Open",

                      "tags": [],

                      "title": "test issue",

-                     "user": {"fullname": "foo bar", "name": "foo"},

+                     "user": {

+                         "fullname": "foo bar",

+                         "name": "foo",

+                         "url_path": "user/foo",

+                     },

                  },

                  "message": "Issue created",

              },
@@ -264,7 +272,11 @@ 

                      "status": "Open",

                      "tags": [],

                      "title": "test issue",

-                     "user": {"fullname": "foo bar", "name": "foo"},

+                     "user": {

+                         "fullname": "foo bar",

+                         "name": "foo",

+                         "url_path": "user/foo",

+                     },

                  },

                  "message": "Issue created",

              },

@@ -263,6 +263,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -334,6 +335,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -387,6 +389,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -445,6 +448,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -498,6 +502,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -800,6 +805,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -861,6 +867,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -915,6 +922,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -1076,7 +1084,11 @@ 

                          "pull_request_uid": "72a61033c2fc464aa9ef514c057aa62c",

                          "status": "success",

                          "url": "http://jenkins.cloud.fedoraproject.org",

-                         "user": {"fullname": "foo bar", "name": "foo"},

+                         "user": {

+                             "fullname": "foo bar",

+                             "name": "foo",

+                             "url_path": "user/foo",

+                         },

                          "username": "jenkins",

                      }

                  ]
@@ -1150,7 +1162,11 @@ 

                          "pull_request_uid": "72a61033c2fc464aa9ef514c057aa62c",

                          "status": "pending",

                          "url": "http://travis.io",

-                         "user": {"fullname": "foo bar", "name": "foo"},

+                         "user": {

+                             "fullname": "foo bar",

+                             "name": "foo",

+                             "url_path": "user/foo",

+                         },

                          "username": "travis",

                      },

                      {
@@ -1161,7 +1177,11 @@ 

                          "pull_request_uid": "72a61033c2fc464aa9ef514c057aa62c",

                          "status": "success",

                          "url": "http://jenkins.cloud.fedoraproject.org",

-                         "user": {"fullname": "foo bar", "name": "foo"},

+                         "user": {

+                             "fullname": "foo bar",

+                             "name": "foo",

+                             "url_path": "user/foo",

+                         },

                          "username": "jenkins",

                      },

                  ]

@@ -338,7 +338,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_projects": 1,
@@ -550,7 +554,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": ["infra"],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_projects": 1,
@@ -607,7 +615,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": ["infra"],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -636,7 +648,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -665,7 +681,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              ],

              "total_projects": 3,
@@ -722,7 +742,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": ["infra"],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -751,7 +775,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -780,7 +808,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              ],

              "total_projects": 3,
@@ -833,7 +865,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": ["infra"],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_projects": 1,
@@ -886,7 +922,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_projects": 1,
@@ -955,7 +995,11 @@ 

              "parent": None,

              "priorities": {},

              "tags": ["infra"],

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertDictEqual(data, expected_data)

  
@@ -1044,7 +1088,11 @@ 

              "parent": None,

              "priorities": {},

              "tags": ["infra"],

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertDictEqual(data, expected_data)

  
@@ -1101,7 +1149,11 @@ 

              "parent": None,

              "priorities": {},

              "tags": ["infra"],

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertDictEqual(data, expected_data)

  
@@ -1162,7 +1214,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -1191,7 +1247,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -1220,7 +1280,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              ],

              "total_projects": 3,
@@ -1287,7 +1351,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  }

              ],

              "total_projects": 3,
@@ -1446,6 +1514,7 @@ 

                  "emails": ["foo@bar.com"],

                  "fullname": "foo bar",

                  "name": "foo",

+                 "url_path": "user/foo",

              },

          }

          self.assertEqual(data, expected_output)
@@ -1500,6 +1569,7 @@ 

                  "emails": ["foo@bar.com"],

                  "fullname": "foo bar",

                  "name": "foo",

+                 "url_path": "user/foo",

              },

          }

          self.assertEqual(data, expected_output)
@@ -1564,6 +1634,7 @@ 

                  "emails": ["foo@bar.com"],

                  "fullname": "foo bar",

                  "name": "foo",

+                 "url_path": "user/foo",

              },

          }

          self.assertEqual(data, expected_output)
@@ -1620,6 +1691,7 @@ 

                  "emails": ["foo@bar.com"],

                  "fullname": "foo bar",

                  "name": "foo",

+                 "url_path": "user/foo",

              },

          }

          self.assertEqual(data, expected_output)
@@ -1678,6 +1750,7 @@ 

                  "emails": ["foo@bar.com"],

                  "fullname": "foo bar",

                  "name": "foo",

+                 "url_path": "user/foo",

              },

          }

          self.assertEqual(data, expected_output)
@@ -3040,6 +3113,7 @@ 

                      "emails": ["bar@pingou.com", "foo@pingou.com"],

                      "fullname": "PY C",

                      "name": "pingou",

+                     "url_path": "user/pingou",

                  },

                  "username": "Jenkins",

              },
@@ -3091,6 +3165,7 @@ 

                      "emails": ["bar@pingou.com", "foo@pingou.com"],

                      "fullname": "PY C",

                      "name": "pingou",

+                     "url_path": "user/pingou",

                  },

                  "username": "Jenkins",

              },
@@ -3149,6 +3224,7 @@ 

                      "emails": ["bar@pingou.com", "foo@pingou.com"],

                      "fullname": "PY C",

                      "name": "pingou",

+                     "url_path": "user/pingou",

                  },

                  "username": "Jenkins",

              },
@@ -3286,7 +3362,11 @@ 

                      "percent": None,

                      "status": "pending",

                      "url": "https://koji.fp.o/koji...",

-                     "user": {"fullname": "foo bar", "name": "foo"},

+                     "user": {

+                         "fullname": "foo bar",

+                         "name": "foo",

+                         "url_path": "user/foo",

+                     },

                      "username": "simple-koji-ci",

                  },

                  {
@@ -3297,7 +3377,11 @@ 

                      "percent": None,

                      "status": "success",

                      "url": "https://koji.fp.o/koji...",

-                     "user": {"fullname": "foo bar", "name": "foo"},

+                     "user": {

+                         "fullname": "foo bar",

+                         "name": "foo",

+                         "url_path": "user/foo",

+                     },

                      "username": "complex-koji-ci",

                  },

              ],
@@ -3488,7 +3572,11 @@ 

              "priorities": {},

              "tags": [],

              "url_path": "test",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertEqual(data, expected_output)

  
@@ -3548,7 +3636,11 @@ 

              "priorities": {},

              "tags": [],

              "url_path": "test",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

          self.assertEqual(data, expected_output)

  
@@ -3663,7 +3755,11 @@ 

              "priorities": {},

              "tags": [],

              "url_path": "test",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

  

          self.assertEqual(data, expected_output)
@@ -3726,7 +3822,11 @@ 

              "priorities": {},

              "tags": [],

              "url_path": "test",

-             "user": {"fullname": "PY C", "name": "pingou"},

+             "user": {

+                 "fullname": "PY C",

+                 "name": "pingou",

+                 "url_path": "user/pingou",

+             },

          }

  

          self.assertEqual(data, expected_output)

@@ -42,7 +42,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "Test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -64,7 +68,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -86,7 +94,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -108,7 +120,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -130,7 +146,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -152,7 +172,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -174,7 +198,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

      {

          "assignee": None,
@@ -196,7 +224,11 @@ 

          "status": "Open",

          "tags": [],

          "title": "test issue",

-         "user": {"fullname": "PY C", "name": "pingou"},

+         "user": {

+             "fullname": "PY C",

+             "name": "pingou",

+             "url_path": "user/pingou",

+         },

      },

  ]

  
@@ -1387,7 +1419,11 @@ 

                              "parent": None,

                              "priorities": {},

                              "tags": ["infra"],

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          }

                      ],

                  },
@@ -1441,7 +1477,11 @@ 

                              "parent": None,

                              "priorities": {},

                              "tags": ["infra"],

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          }

                      ],

                  },
@@ -1571,7 +1611,11 @@ 

                                  "parent": None,

                                  "priorities": {},

                                  "tags": [],

-                                 "user": {"fullname": "PY C", "name": "pingou"},

+                                 "user": {

+                                     "fullname": "PY C",

+                                     "name": "pingou",

+                                     "url_path": "user/pingou",

+                                 },

                              },

                              "remote_git": None,

                              "repo_from": {
@@ -1600,7 +1644,11 @@ 

                                  "parent": None,

                                  "priorities": {},

                                  "tags": [],

-                                 "user": {"fullname": "PY C", "name": "pingou"},

+                                 "user": {

+                                     "fullname": "PY C",

+                                     "name": "pingou",

+                                     "url_path": "user/pingou",

+                                 },

                              },

                              "status": "Open",

                              "tags": [],
@@ -1608,7 +1656,11 @@ 

                              "title": "test pull-request",

                              "uid": "1431414800",

                              "updated_on": "1431414800",

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          }

                      ],

                      "total_requests": 1,
@@ -1690,7 +1742,11 @@ 

                          "parent": None,

                          "priorities": {},

                          "tags": [],

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "remote_git": None,

                      "repo_from": {
@@ -1719,7 +1775,11 @@ 

                          "parent": None,

                          "priorities": {},

                          "tags": [],

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      "status": "Open",

                      "tags": [],
@@ -1727,7 +1787,11 @@ 

                      "title": "test pull-request",

                      "uid": "1431414800",

                      "updated_on": "1431414800",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              )

  
@@ -1983,6 +2047,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -2036,6 +2101,7 @@ 

                          "emails": ["bar@pingou.com", "foo@pingou.com"],

                          "fullname": "PY C",

                          "name": "pingou",

+                         "url_path": "user/pingou",

                      },

                      "username": "Jenkins",

                  },
@@ -2489,7 +2555,11 @@ 

                              "status": "Open",

                              "tags": [],

                              "title": "test issue",

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          }

                      ],

                      "pagination": {
@@ -2566,7 +2636,11 @@ 

                              "status": "Open",

                              "tags": [],

                              "title": "Test issue",

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          },

                          {

                              "assignee": None,
@@ -2588,7 +2662,11 @@ 

                              "status": "Open",

                              "tags": [],

                              "title": "test issue",

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          },

                      ],

                      "pagination": {
@@ -2658,7 +2736,11 @@ 

                          "status": "Open",

                          "tags": [],

                          "title": "Test issue",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      {

                          "assignee": None,
@@ -2680,7 +2762,11 @@ 

                          "status": "Open",

                          "tags": [],

                          "title": "test issue",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                  ],

                  "pagination": {
@@ -2821,7 +2907,11 @@ 

                          "status": "Open",

                          "tags": [],

                          "title": "Test issue",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                      {

                          "assignee": None,
@@ -2843,7 +2933,11 @@ 

                          "status": "Open",

                          "tags": [],

                          "title": "test issue",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      },

                  ],

                  "pagination": {
@@ -2920,7 +3014,11 @@ 

                      "status": "Open",

                      "tags": [],

                      "title": "test issue",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              )

  
@@ -2969,7 +3067,11 @@ 

                  "status": "Open",

                  "tags": [],

                  "title": "test issue",

-                 "user": {"fullname": "PY C", "name": "pingou"},

+                 "user": {

+                     "fullname": "PY C",

+                     "name": "pingou",

+                     "url_path": "user/pingou",

+                 },

              },

          )

  
@@ -3275,7 +3377,11 @@ 

                      "id": 1,

                      "parent": None,

                      "reactions": {},

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              )

  
@@ -3299,7 +3405,11 @@ 

                      "id": 1,

                      "parent": None,

                      "reactions": {},

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              )

  

@@ -94,6 +94,7 @@ 

              "user": {

                  "fullname": "PY C",

                  "name": "pingou",

+                 "url_path": "user/pingou",

                  "avatar_url": "https://seccdn.libravatar.org/avatar/...",

              },

          }
@@ -164,7 +165,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -193,7 +198,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "access_groups": {"admin": [], "commit": [], "ticket": []},
@@ -222,7 +231,11 @@ 

                      "parent": None,

                      "priorities": {},

                      "tags": [],

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              ],

              "repos_pagination": {
@@ -237,6 +250,7 @@ 

              "user": {

                  "fullname": "PY C",

                  "name": "pingou",

+                 "url_path": "user/pingou",

                  "avatar_url": "https://seccdn.libravatar.org/avatar/...",

              },

          }
@@ -387,7 +401,11 @@ 

                      "id": 1,

                      "ref_id": "1",

                      "type": "created",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "date": date,
@@ -397,7 +415,11 @@ 

                      "id": 2,

                      "ref_id": "1",

                      "type": "commented",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "date": date,
@@ -407,7 +429,11 @@ 

                      "id": 3,

                      "ref_id": "1",

                      "type": "closed",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

                  {

                      "date": date,
@@ -417,7 +443,11 @@ 

                      "id": 4,

                      "ref_id": "1",

                      "type": "commented",

-                     "user": {"fullname": "PY C", "name": "pingou"},

+                     "user": {

+                         "fullname": "PY C",

+                         "name": "pingou",

+                         "url_path": "user/pingou",

+                     },

                  },

              ],

              "date": date,
@@ -1757,13 +1787,21 @@ 

                              "priorities": {},

                              "tags": [],

                              "url_path": "test",

-                             "user": {"fullname": "PY C", "name": "pingou"},

+                             "user": {

+                                 "fullname": "PY C",

+                                 "name": "pingou",

+                                 "url_path": "user/pingou",

+                             },

                          },

                          "related_prs": [],

                          "status": "Open",

                          "tags": [],

                          "title": "Test issue",

-                         "user": {"fullname": "PY C", "name": "pingou"},

+                         "user": {

+                             "fullname": "PY C",

+                             "name": "pingou",

+                             "url_path": "user/pingou",

+                         },

                      }

                  ],

                  "pagination_issues_assigned": {

file modified
+13 -8
@@ -1411,7 +1411,7 @@ 

  index 0000000..60f7480

  --- /dev/null

  +++ b/456

- @@ -0,0 +1,30 @@

+ @@ -0,0 +1,31 @@

  +{

  +    "assignee": null,

  +    "blocks": [],
@@ -1438,7 +1438,8 @@ 

  +            "foo@pingou.com"

  +        ],

  +        "fullname": "PY C",

- +        "name": "pingou"

+ +        "name": "pingou",

+ +        "url_path": "user/pingou"

  +    }

  +}

  \ No newline at end of file
@@ -1512,7 +1513,7 @@ 

  index 458821a..77674a8

  --- a/123

  +++ b/456

- @@ -4,13 +4,32 @@

+ @@ -4,13 +4,33 @@

       "close_status": null,

       "closed_at": null,

  -    "comments": [],
@@ -1532,7 +1533,8 @@ 

  +                    "foo@bar.com"

  +                ],

  +                "fullname": "foo bar",

- +                "name": "foo"

+ +                "name": "foo",

+ +                "url_path": "user/foo"

  +            }

  +        }

  +    ],
@@ -1681,7 +1683,7 @@ 

  index 0000000..60f7480

  --- /dev/null

  +++ b/456

- @@ -0,0 +1,147 @@

+ @@ -0,0 +1,150 @@

  +{

  +    "assignee": null,

  +    "branch": "master",
@@ -1751,7 +1753,8 @@ 

  +                "foo@pingou.com"

  +            ],

  +            "fullname": "PY C",

- +            "name": "pingou"

+ +            "name": "pingou",

+ +            "url_path": "user/pingou"

  +        }

  +    },

  +    "remote_git": null,
@@ -1810,7 +1813,8 @@ 

  +                "foo@pingou.com"

  +            ],

  +            "fullname": "PY C",

- +            "name": "pingou"

+ +            "name": "pingou",

+ +            "url_path": "user/pingou"

  +        }

  +    },

  +    "status": "Open",
@@ -1826,7 +1830,8 @@ 

  +            "foo@pingou.com"

  +        ],

  +        "fullname": "PY C",

- +        "name": "pingou"

+ +        "name": "pingou",

+ +        "url_path": "user/pingou"

  +    }

  +}

  \ No newline at end of file

Add url_path @property to the class User in order to make it consistent with class Project that already has that property.

I like the idea, but you'll have to adjust a good number of tests before this passes CI :)

rebased onto 49543eae00f60951b018404a65f448cdce29d020

3 years ago

@xyzzyx This looks good, but could you please rebase this on upstream master to eliminate the merge commits? :smile:

rebased onto fdcad2b411ffd5117524530e544c2ec8635be187

3 years ago

I like this change but could you move it to its own commit?

One small comment and let's get this in :)

(Could you rebase while you adjust the commit? Otherwise I'll do it via the UI)

I like this change but could you move it to its own commit?

Same merge request or should I open a new one?

Same MR is fine for me, I consider the unit of change to be the commit more than the MR (thus the rebase and fast-forward merges)

rebased onto 936ebbe

3 years ago

Pull-Request has been merged by pingou

3 years ago