Diff API returns incomplete results for large commits

Summary

Diff API does not return complete results for large commits

Steps to reproduce

  1. On GitLab.com, look at cryptsetup/cryptsetup@7dc7b90a
  2. On GitLab.com, look at HTTP response headers for https://gitlab.com/api/v4/projects/cryptsetup%2Fcryptsetup/repository/commits/7dc7b90a9b37626d933771a932b26bcd6a5d0ba6/diff
Original

Call diff curl command for a commit that had over 1000 files added or modified. We only receive around 20 files diff.

curl -XGET --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.disney.com/api/v4/projects/8758/repository/commits/88441b63f45e633a5d8a7a96f09d8b67406bf992/diff"

Example: We have one commit: 88441b63f45e633a5d8a7a96f09d8b67406bf992

  • This commit has over 1000 files were added or modified. https://gitlab.disney.com/dtss-appsec/dvna/commit/88441b63f45e633a5d8a7a96f09d8b67406bf992

  • Only return around 20 files diff. Is there any way to get all over 1000 files diff? curl -XGET --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.disney.com/api/v4/projects/8758/repository/commits/88441b63f45e633a5d8a7a96f09d8b67406bf992/diff"

Example Project

https://gitlab.com/cryptsetup/cryptsetup

What is the current bug behavior?

API returns 15 changes, while interface returns 112 changes

What is the expected correct behavior?

API should return 112 changes (paginated)

Edited Feb 25, 2019 by James Ramsay (ex-GitLab)
Assignee Loading
Time tracking Loading