NYCPlanning / ae-zoning-api

This application is API for serving data related to zoning and tax lots.
2 stars 0 forks source link

238 Open API: Document an endpoint to return a single capital project #282

Closed dhochbaum-dcp closed 3 months ago

dhochbaum-dcp commented 4 months ago

Fixed the issue in the CapitalProjectBudgeted schema, and added the /capital-projects/{managingCode}/{capitalProjectid} endpoint.

Completes #238

dhochbaum-dcp commented 4 months ago

resolve conflicts & consolidate to one commit and I'll approve

Resolved conflicts, will squash when merging.

TangoYankee commented 4 months ago

resolve conflicts & consolidate to one commit and I'll approve

Resolved conflicts, will squash when merging.

Squashing is disabled. Only rebasing is enabled

dhochbaum-dcp commented 4 months ago

resolve conflicts & consolidate to one commit and I'll approve

Resolved conflicts, will squash when merging.

Squashing is disabled. Only rebasing is enabled

I'm encountering issues attempting to squash locally. Do you have a good set of instructions?

TangoYankee commented 4 months ago

resolve conflicts & consolidate to one commit and I'll approve

Resolved conflicts, will squash when merging.

Squashing is disabled. Only rebasing is enabled

I'm encountering issues attempting to squash locally. Do you have a good set of instructions?

Standby

TangoYankee commented 4 months ago

resolve conflicts & consolidate to one commit and I'll approve

Resolved conflicts, will squash when merging.

Squashing is disabled. Only rebasing is enabled

I'm encountering issues attempting to squash locally. Do you have a good set of instructions?

Standby

The heart of what we're doing is rewriting the history of the feature branch to make it more succinct. That way, when we place it in the shared history of main (which we never rewrite), we have an easy to read log of changes. A better overview for squash v rebase than I could give

With that in mind, the first thing we'll do is a soft reset back to the last commit that came from main:

git reset  d6d9acc5ec5c110a72903c4a52a61894f023cdcb --soft

This gives us all of the relevant code changes while removing the commits from the history.

While we're here, I noticed that Id should be capitalized. So let's make that change in the source code before we commit.

/capital-projects/{managingCode}/{capitalProjectId}:

It also seems the non-200 endpoints seem to have gone missing from the /boroughs/{boroughId}/community-districts/{communityDistrictId}/capital-projects: just above the capital project endpoint. (I think git saw the duplicate code and calculated that they were literally the same lines, rather than the same code repeated in different places.) Anyway, Let's copy those back in:

  /boroughs/{boroughId}/community-districts/{communityDistrictId}/capital-projects:
    get:
      summary: 🚧 Find paginated capital projects within a specified community district
      operationId: findCapitalProjectsByBoroughIdCommunityDistrictId
      tags:
      - Capital Projects
      parameters:
        - $ref: "#/components/parameters/boroughIdParam"
        - $ref: "#/components/parameters/communityDistrictIdParam"
      responses:
        '200':
          description: An object containing pagination metadata and an array of capital projects for the community district
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CapitalProjectPage"
        '400':
          $ref: "#/components/responses/BadRequest"
        '404':
          $ref: "#/components/responses/NotFound"
        '500':
          $ref: "#/components/responses/InternalServerError"

We'll stage these changes to the code

git add openapi/openapi.yaml

Then commit

git commit -m "your message here"

Then rebase onto main

git rebase --onto origin main

Finally, force push your feature branch

git push origin 238/Open-API-Document-an-endpoint-to-return-a-single-capital-project --force-with-lease
dhochbaum-dcp commented 4 months ago

Thanks, @TangoYankee.