| In no particular order... |
| |
| * Develop a trusted variant of PL/Python. Now that RExec has been shown |
| to be full of holes, this may take a while :-( |
| |
| * Allow arrays as function arguments and return values. (almost done) |
| |
| * Create a new restricted execution class that will allow me to pass |
| function arguments in as locals. Passing them as globals means |
| functions cannot be called recursively. |
| |
| * Functions cache the input and output functions for their arguments, |
| so the following will make PostgreSQL unhappy: |
| |
| create table users (first_name text, last_name text); |
| create function user_name(user) returns text as 'mycode' language plpython; |
| select user_name(user) from users; |
| alter table add column user_id integer; |
| select user_name(user) from users; |
| |
| You have to drop and create the function(s) each time its arguments |
| are modified (not nice), or don't cache the input and output functions |
| (slower?), or check if the structure of the argument has been |
| altered (is this possible, easy, quick?) and recreate cache. |
| |
| * Better documentation |
| |
| * Add a DB-API compliant interface on top of the SPI interface. |