Skip to content
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

Add type hints for the (Python) codebase. #1464

Open
teymour-aldridge opened this issue May 25, 2020 · 4 comments
Open

Add type hints for the (Python) codebase. #1464

teymour-aldridge opened this issue May 25, 2020 · 4 comments

Comments

@teymour-aldridge
Copy link
Contributor

teymour-aldridge commented May 25, 2020

One thing I think would make it substantially easier to refactor code and catch bugs which aren't possible to catch otherwise. In addition, having types makes it possible to use the wealth of code analysis tools which are out there.
I imagine for the Javascript stuff, Flow or Typescript could be used.
I'd be happy to work on this.

@teymour-aldridge teymour-aldridge changed the title Add type hints for the codebase. Add type hints for the (Python) codebase. May 25, 2020
@czlee
Copy link
Member

czlee commented May 25, 2020

Sure, I'd support seeing type hints added where useful. It'll be a lot of work, of course, so it's fine if the transition is gradual, like a lot of refactoring work we've done on the Tabbycat code base.

@daankoning
Copy link
Contributor

@teymour-aldridge still intend to do this? If not I'd be happy to begin a bit of work on this.

@czlee
Copy link
Member

czlee commented Dec 17, 2022

@daankoning Sorry I haven't had a chance to reply sooner. You're welcome to work on this if you're particularly interested in it, but I should say, I think there are much more egregious areas of technical debt in Tabbycat than type hints, examples:

  • Our unit test coverage is currently pretty bad.
  • There are some classes that have outgrown themselves and need to be refactored for DRY and separation of concerns. (Our tables generators, in files named tables.py, come to mind.)
  • Our action logs are a bit ad hoc and not as useful as they could be.
  • Things like Rework the preferences module to be more user-friendly #500

Happy to discuss what you're interested in! I just wanted to say it's probably not the most pressing thing on our backlog.

@daankoning
Copy link
Contributor

Oh thats fine too. I'll have a look at some of those as well :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants