Author Archives: cristocrat

[UCOSP] Status Reports: Feb 21, 2015


Chris Arnold

1) What project are you working on?
  • Mute and Archive Review Requests
2) What you accomplished this week.
  • fixed archive query
  • POST request for archiving works (yay!)
  • discovered the magic of PDB!
  • hid “Hide” button when review request is already hidden (archived/muted)
  • added “show archived/hide archived” button on dashboard and hooked it up to a URL query
3) Links to anything you’ve done this week:
4) What you plan to do next week.
  • complete banner for unarchiving
  • implement unarchiving
  • write tests
5) What, if anything, is blocking you from making progress?
  • my “show-archived=1” URL query seems to work fine except when I want to combine it with other queries, such as “?view=outgoing”. I am able to append my own query with a “&” but my problem is when the query is already combined “?view=outgoing&show-archived=1” and I want to change the 1 to a 0. I am trying to figure out how to index strings or either rethink the logic and am currently stuck here
6) Any other questions
  • unarchiving should happen automatically when the submitter rbt posts again, any other scenarios to be considered? I was thinking maybe when the submitter responds to a comment or marks something as “fixed” or other actions?
  • should my “show archived/hide archived” button be changed to “show hidden/hide hidden” when I add muting, or should I add a separate “show muted/hide muted” button?
  • difference between archiving and muting: review request should unarchive itself when there’s new activity, while muted should stay muted until manually unmated… any other things?


Vincent Le

1) What project are you working on?

– I am working on the file provider framework

2) What you accomplished this week.

– Addressed to the rest of Barret’s and Christian’s issues
– added get_queryset to both file_provider.py and file_provider_file.py, and made any necessary changes to get and get_list
– cleaned up the test cases and the two files above
– did some manual testing with uploads from DropBox and http requests
– added file upload logic to base_file_attachment.py
– added test cases for the above
– added unique account check
– fixed initialization of fileproviders/fileproviderfile.py
– removed WIP from two of my review requests

3) Links to anything you’ve done this week:

– FileProvider module implementation with Django: https://reviews.reviewboard.org/r/6806/
– FileProvider WebApi integration: https://reviews.reviewboard.org/r/6948/
– New Error for Djblets WebApi – DUPLICATE_ITEM: https://reviews.reviewboard.org/r/6968/              – Examples of uploading files: https://reviewboard.hackpad.com/Extra-Log-for-Vinces-Reports-38dBJnwv9IW

4) What you plan to do next week.

– Design the UI for the upload
– Start looking into backbone and how the file uploads are done with files from local machine
– Start working on the UI, at least get the base ui looks done without any api calls.

5) What, if anything, is blocking you from making progress?

– Nothing yet

6) Any other questions
1) I wasn’t sure about the error I added for the file provider api (DUPLICATE_ITEM), whether it should be part of djblets, reviewboard or not included at all. What should I do?
2) When are the mid-term reports coming out? I would like to know how I’m doing and what improvements I can make.



Jessica Yuen

1) What project are you working on?
  • rb-gateway
2) What you accomplished this week.
  • Refactored rb-gateway into a state suitable for submission based on feedback
  • Reorganized my hackpad
  • Landed initial rb-gateway patch.
3) Links to anything you’ve done this week:
4) What you plan to do next week.
  • Implement APIs for post commit UI (get branches, get changes, get commits)
5) What, if anything, is blocking you from making progress?
  • Nothing, sorry I’ve been a bit busier this week and didn’t accomplish as much as I hoped.
6) Any other questions
  • Nope.

Jason Tseng
1) What project are you working on?
  • Responsive UI
2) What you accomplished this week.
  • Learning on Backbone.js
  • Moved previous banner menu toggle logic into new backbone view
  • Fixed tab display/align issue in user page
3) Links to anything you’ve done this week:
4) What you plan to do next week.
  • Properly setting up the backbone view file/insertion
  • Confirm side menu toggle design
  • rebase changes through all branches
5) What, if anything, is blocking you from making progress?
  • Lack of input on the design side (previously posted on google dev)
6) Any other questions
  • Nope.


Theo Belaire

1) What project are you working on?

RBTools

2) What you accomplished this week.

Almost landed r/6797

3) Links to anything you’ve done this week:

review request: https://reviews.reviewboard.org/r/6797/

4) What you plan to do next week.

Get a new project

5) What, if anything, is blocking you from making progress?
Nothing atm.


Tien Vu

1) What project are you working on?
    Diff Doctor
2) What you accomplished this week
    Finally understood how GitWeb (cgit probably has a similar issue)’s availability has the potential for failing a patch.
    More stepping around with the code, now I understand what context data is being grabbed and how the page is rendered (this seriously confused me before, with the inheritance)
    Adjusted some code to render my custom template (instead of the diff_fragment_error one), but it doesn’t do anything special except print stuff from the exception in patch(), where I stick a lot more data into. This is not really what I intend to actually code, but I’m testing around for now.
3) Links to anything you’ve done this week:
    None. I’ve taken notes local to my computer, but it is just the usual code investigation with PDB that won’t make that much sense to anyone else. If this is necessary then I’ll put it on Hackpad.
4) What you plan to do next week.
   I have kind of been delaying work for my templates review request, since I wanted to figure out the big idea behind my more recent project first (Diff Doctor), it’s harder. I will get back to that when I can finish these items:
   – Display a download link for failed diffs, including the original file, the diff, and possibly the .rej file
   – Figure out how to display anything at all with pygments (syntax highlighter). I would like to display the contents of the original file and the diff on the web page.
Then I will attend to my templates code. After that, I want to:
   – “Investigate” the patch problem, like if original file is empty or looks like error HTML, act accordingly
5) What, if anything, is blocking you from making progress?
  – I lost some time this week on not so useful things, like trying to recreate the diff problem with GitHub, or fixing compilation issues with cgit.
6) Any other questions
  – patch()’s parameters for original file and diff are strings. It is writing them to temp files on the local machine, but to get download links, we would need them to be stored somewhere on the server (according to my understanding, you can’t href into local directories, it’s platform/machine dependent). So two problems
  – The original file needs to be stored somewhere
  – The diff can be pulled out of context data, with reverse() which gives a url like: http://localhost:8080/r/99/diff/1/download/111/orig/. But the patch function itself doesn’t have such data. Should I rewrite the function, and should the scope of my work go outside just the patch() function (like other parts that renders the page)

Chester Li

1) What project are you working on?

  • Post-commit review request support for GitLab

2) What you accomplished this week.

  • Fixed the issue in the unit test for review #6786.
  • Roughly implemented all needed functions and classes for the GitLab project.
  • Read GitLab API.
  • Helped peers.

3) Links to anything you’ve done this week:

4) What you plan to do next week.

  • Write unit tests.
  • Debug the code.

5) What, if anything, is blocking you from making progress?

  • The GitLab API document.
  • Haven’t built up very good understanding on Git.
  • Not very useful GitLab community / IRC channel.
  • Network connection.
  • Bad time management because of traveling

6) Any other questions

  • For the `get_change()` function in `GitHub` class in review board.hostingsvce.github, I want to confirm if I understand it in the right way:
    • All we want is to get `author_name`, `revision`, `parent_revision`, `date`, `message`, `diff` to return a Commit object.
    • The goal of getting `tree` and `blobs` is to build up diff.
  • Could you please explain the cache in `get_change()` function, I don’t quite understand how the cache is generated and how it works.
  • Could you please explain the term `revision` in here? Is it sha? Or id of the project or branch?
  • Is `parent_revision` necessary? Because it is default as an empty string in the definition. In GitLab API, I haven’t seen any description about `revision`  (maybe I missed something).
  • Any tips to test the GitLab project on virtual environment? Say, Bitnami.
  • In GitLab class, when we call self.client.http_get(), are we calling the function from HostingService from service.py or GitHubClient in the same file? Because in GitLab class, we are calling http_get() function from HostingService, but if so, what is the purpose of http_get() in GitHubClient / GitLabClient classes and how to call this function?