-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement API backlog #518
Comments
@baijat, should we move this issue back to Backlog? |
@frenchbread Would you be interested in this task? Brylie's rough estimate was 5-8 hours. |
Self-assigned. |
Did some good progress so far:
Screenshot of backlog items list: Screenshot of backlog form (stays in modal window): ToDo:
Working branch: Also, if i'm misunderstanding, @brylie, should each backlog item be attached to specific API Backend? |
@frenchbread Good work! The entire backlog should be for one API backend. And consequently each item in that backlog for that particular API backend. The purpose is to communicate what changes are planned to that particular API and the backlog is managed by the API manager. (Did this answer your question?) |
@frenchbread yes, each API Backend has its own backlog. I have updated the definition of done do include specific details about how to link the API Backlog and API Backend, as well as details about routing. My apologies for the omissions. |
Also note, the API Managers can only manage (add, update, delete) items in API Backlogs for their own API Backends. This can be done by comparing the apiBackend.managersId array to make sure it contains the API Manager user ID. |
Here is an example helper function you can use: // Get user ID
var userId = Meteor.user()._id;
// Get API Backend ID
var backendId = // you will need to determine how to get the API Backend ID
// Depending on the context, this could come from the router, template, or database operation (e.g. `allow.update`).
// Get API Backend (only managerIds field is necessary)
var backend = ApiBackends.findOne(backendId, {fields: {managerIds: 1}});
// Get the backend manager IDs
var managerIds = backend.managerIds;
// Check if user ID is in manager IDs
var userCanEdit = _.contains(managerIds, userId); |
@frenchbread Any updates on this task? |
@bajiat Almost finished this one. Just need to add inline comments describing the code. |
Created PR #757. This is quite heavy one so I would suggest that couple of @apinf/developers review it. For testing & playing with it, navigate to Design implementation was not a part of this issue, so probably would need to create another one which is going to relate to #643. |
@frenchbread Hi, have you had a chance to look at Brylie's feedback on the PR? |
@bajiat I am on it. After some refactoring & renaming was not able to run a project. Figuring out why stuff does not work.. |
@frenchbread are you getting any errors? I am available for pair programming here. |
Try the basic stuff first, start with the foundation and work up to higher level things. E.g.
|
@brylie Did not get any errors, backlog items were not able to load. Seems to be an issue with subscription/publication namings. |
OK, what are you naming the publication? |
@brylie It's |
@frenchbread is the branch working now? I can present at the review meeting. |
@brylie yes, it works. |
@frenchbread please focus on finalizing this branch today. The testing task is lower priority. |
Related to #482
Note: even though the wireframe contains labels / tags for backlog items, they are not in the scope of this task. That will be a continuation task.
Definition of done
apiBackendId
field contains unique ID of any given API BackendapiBackendId
field usesregEx: SimpleSchema.RegEx.Id
for validation/api/{{ _id }}/backlog
The text was updated successfully, but these errors were encountered: