Skip to content

Latest commit

 

History

History
89 lines (89 loc) · 7.54 KB

ToDo.md

File metadata and controls

89 lines (89 loc) · 7.54 KB
  • Make bucket and iso3166-updates.json file publicly accessible (https://storage.googleapis.com/iso3166-updates/iso3166-updates.json).
  • Update <title> and logo on page (world emoji).
  • http://127.0.0.1:5000/api?alpha2=dasdjasd and http://127.0.0.1:5000/api?year=dasdjasd, should catch this alpha2 and year input error.
  • Make index.html into a more appealing front-end.
  • For API, instead of returning all data when invalid alpha2/year input, return a jsonifed error message. Return all when any of args are empty.
  • Make Storage Bucket unpublic.
  • Use Python GCP client library instead of requests library:
  • Figure out how to upload secrets.json to vercel, pass in SA json into env var.
  • Passing in alpha-3 code should still return data, convert to alpha-2 code in the code.
  • Rename iso3166-updates-frontend to iso3166-api.
  • Remove request.args or request_json from api, probably only need one.
  • Error for > amd < symbols in url: https://iso3166-updates-frontend-amckenna41.vercel.app/api/year/%3E2012 . Need to decode ['%3E2012'] to > 2012. Implement for all paths not just /year.
  • https://iso3166-updates-frontend-amckenna41.vercel.app/api/alpha2/AD/year - if no year passed in after year path then return all updates for AD.
  • For status_code return parameter in functions, mention two status codes 200 - 400.
  • If not blob.exists() return error message.
  • Update endpoint function parameter comments.
  • Check which route https://iso3166-updates.com/?year=2002-2010 this applies to, should throw error that /api needs to be prepended. https://iso3166-updates.com/api?year=2002-2010 should work.
  • If query string params appended to /api path then redirect to respective url.
  • Move error_message outside of individual functions.
  • Append url to error message.
  • Add name endpoint to API
  • Add unit tests for name endpoint - can take from iso3166-2 unit tests for name.
  • Update api.md file, need to add example of using /name path. Update readme about list of endpoints to include /name.
  • https://iso3166-updates-frontend-amckenna41.vercel.app/alpha2/bt - this should either raise Error or bring you to BT country updates.
  • In API, raise error if length of input alpha-2 code > 3.
  • Add API path /name/input_name/year/2015. Add unit tests.
  • Update API to incorporate Date Issued Corrected functionality.
  • Update api unit tests script to include updates from main iso3166-updates repo.
  • Go over main repo readmes.
  • Change all comment underlining from "------" to "=======".
  • Update index.html and error.html to that of iso3166-2-api.
  • Validate that .vercelignore is being executed.
  • In Api.md and readme, change reference of query string parameters to endpoints/paths.
  • Read over app.py
  • Update API routes such that "/" and "/api" return the documentation.
  • Add "/all" endpoint to return all data - need to update api.md file as well.
  • Update demo notebook with new API examples.
  • Remove request.args.get (query string parameters)
  • Use f string literasl for javascript and Python examples in api.md: https://stackoverflow.com/questions/610406/javascript-equivalent-to-printf-string-format
  • In await.fetch, need to change "" to ``.
  • Copy API tests over to iso3166-updates.
  • In api unit tests need to update requests calls, append to endpoint rather than query string params.
  • Read over demo notebook - update API examples.
  • Update readme's.
  • ISO used to announce changes in newsletters which updated the currently valid standard, and releasing new editions which comprise a consolidation of newsletter changes. As of July 2013, changes are published in the online catalogue of ISO only and no newsletters are published anymore. Past newsletters remain available on the ISO website.
  • Add readthedocs badge.
  • Remove gcp storage backend, just use software.
  • Make example links clickable.
  • Increase border-bottom to 1px to 2px.
  • Remove additional app.routes for each endpoint with trailing slashes.
  • Change /alpha2 endpoint to /alpha, allowing all iso3166-1 alpha codes to be input. Update unit tests, documentation and examples.
  • Refer to iso3166-2 docs to help with docs for this.
  • Update closeness function to thefuzz
  • Update API error messages to include more info: message: "Invalid ISO 3166-1 alpha country code input, cannot convert into corresponding alpha-2 code: ZZ.".
  • Parameter typing https://docs.python.org/3/library/typing.html
  • Double check spelling using code-spell-checker extension
  • Automatically split path string on comma by default, regardless if one is present or not in string.
  • Update invalid year input error message.
  • Create endpoint /months/{months}/alpha/{alpha}, where you can get all updates over the past X months for input alpha code.
  • Add more examples index.html that combine the multiple endpoint paths.
  • On index.html, copy button copies html tag not link.
  • Remove '2 letter' and '3 letter' when referencing alpha-2 or alpha-3
  • Change 'name' and 'alpha code' to 'country "" '
  • Add unit tests for /months/alpha and /months/name endpoints.
  • Update API.md and README.md for /months/alpha and /months/name endpoints.
  • For year range function, if lesser number is on right or left of '-', it should still return the year range updates.
  • Ensure that if no parameter value provided for some of the endpoints that a specific error is returned, rather than returning all of the data.
  • reorder app.routes to be more consistent.
  • In headers/titles of api.md examples, include alpha code as well as name?
  • Remove /months/name endpoint.
  • Read over unit tests.
  • https://iso3166-updates-frontend-amckenna41.vercel.app/api/year/<2002 - not including updates from year 2000.
  • In sw and API, should less than functionality include the year to get less than?
  • /alpha + /year endpoint not working, returning all updates data.
  • When looking for name matches using thefuzz, data objects may still be returned even though their likeness score is <50 etc. Add validation such that score has to be above 75.
  • For name endpoints, do we need to title().
  • Tests validating that date issued is within specific time frame not working.
  • When searching for a specific country via its name, if closeness score is high enough, in the error message include "Did you mean {country}?"
  • Include return type for parameter typed functions.
  • In months functionality, add support for month range e.g /months/12-36, updates published over the past 12-36 months. Add unit tests, update API.md.
  • In build_test workflow, split up build, test, linting into separate sections. But need to install the required dependencies on each job as they are separate and run on different machines. Combine build and test into one workflow?
  • Double check artifacts are being exported in workflow file.
  • Raise error in API if multiple comma separated year ranges input: https://iso3166-updates.com/api/year/2021-2022,2001-2002.
  • Switch string formatting to f string.
  • Programmatically pull last updated date from pypi - refer to iso3166-2-api.
  • In index.html, update number of endpoints in Endpoints section.
  • In index.html, reorder credits and contributing sections.
  • Add api_months_name endpoint - /name endpoint example not working - https://iso3166-updates.com/api/name/Senegal,Suriname,Sri lanka/months/60
  • Add "?from_dage" parameter, used for testing /months endpoints - update uni tests, unskip months tests.