DataBrewery / cubes

[NOT MAINTAINED] Light-weight Python OLAP framework for multi-dimensional data analysis
http://cubes.databrewery.org
Other
1.49k stars 313 forks source link

Type Annotations (Python 3.6) #393

Open Stiivi opened 7 years ago

Stiivi commented 7 years ago

Add type annotations and remove all unnecessary type ambiguity.

This is backward incompatible change and will make Cubes depend on Python ≧3.6. Lower versions of python will not be supported.

Annotate:

Tech debt

The following list is being updated as annotations are added.

mattyangk commented 7 years ago

Good to see that :+1:

martianboy commented 7 years ago

On the client side I had to rewrite the cubes.js lib in typescript just to get static type checking. Good to have it here, too. 👍🏼

Stiivi commented 7 years ago

@martianboy Is that cube.js in typescript open-sourceable?

martianboy commented 7 years ago

@Stiivi Yes. It needs a bit of polishing and removing a few dependencies. Will publish it in a day or two.

Stiivi commented 7 years ago

Collection of non-intuitive types discovered during this process.

Stiivi commented 7 years ago

This change is needed in MyPy Typeshed to progress further with annotations of SQL browser.

More typeshed updates to come for the query builder.

Stiivi commented 7 years ago

Removed server from the list of needed packages as it now lives in it's own repo: https://github.com/DataBrewery/slicer-flask.

See separated issue: DataBrewery/slicer-flask#1