File: TODO

package info (click to toggle)
phppgadmin 4.2.3-1.1squeeze2
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 5,396 kB
  • ctags: 6,174
  • sloc: php: 68,599; makefile: 215; sh: 41; sql: 16; awk: 9
file content (271 lines) | stat: -rw-r--r-- 6,864 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
PHPPGADMIN TODO LIST FOR DEVELOPERS
-----------------------------------

phpPgAdmin is an open source project which means that if you see something on 
this list that you would like to implement, just send us a patch.  You can find
our project page here:

	http://sourceforge.net/projects/phppgadmin/

An item is marked 'claimed' when a username in brackets is put after the TODO
item. If you want to work a claimed item, please contact the developers list.

An item is marked with a '-' if it has been completed.

Cluster
-------
* Allow reading of postgresql.conf and pg_hba.conf per pg_read_file() in 8.1
* Support pg_reload_conf(), pg_rotate_logfile() 8.1 commands


Export
------

* Switch to SPARQL format:
  http://www.w3.org/TR/2005/WD-rdf-sparql-XMLres-20050801/

  Actually...SQL/XML is maybe better.


Users
-----

* 7.3 user variables (eg. ALTER USER SET .. TO ...)


Groups
------


Roles
-----

* -Support for 8.1 roles (removing users and groups) (chriskl,javier)
* -Support for ALTER ROLE (done by ?)


Permissions
-----------

* Grant ... on all tables, views, ... to user, group, public
* Grant connect on database [8.2]


Databases
---------

* Add alter database variables for 7.3+
* -Comments on Create and Alter database [8.2]
* Add database stats
* REASSIGN OWNED & DROP OWNED support for 8.2+ 
	- http://www.postgresql.org/docs/8.2/interactive/sql-reassign-owned.html
	- http://www.postgresql.org/docs/8.2/interactive/sql-drop-owned.html


Schemas (7.3)
-------------

* -Rename (xzilla)
* -Alter owner (ioguix)
* Alter ... SET SCHEMA support per 8.1 


Large Objects
-------------

* Add support for large objects


Tables
------

* Allow PK and UNIQUE and FKs during create table (Jawed)
* -Vacuum & analyze individual tables (analyze by ioguix, vacuum already done)
* When adding a column or creating a table, prevent size on non-size types (eg. integer(2)).  You can find these by looking at format_type in the postgresql source code.
* When browsing a table, clicking on a FK value should jump to the
  PK row. (ioguix)
* When editing a table, turn FK columns into drop-downs based on estimated
  rows in the foreign table? (Jawed)
* -Auto-select 'WITHOUT OIDS' if 'default_with_oids' setting is false (Guillaume LELARGE)
* Add WITH storage_parameter option to create table [8.2]
* Add last vacuum and analyze information from statistics tables [8.2]
* Restrict operators (from $selectOps array) to appropriate types (ie. no LIKE for int4 fields)
* Alter column should handle types with implicit cast types distinctly from those requiring a USING clause
* Where ENUM types are an option, restrict choice to enum values [8.3]


Views
-----

* Support temporary views per 8.1?
* Allow INSERT and import on views with the appropriate rules.
* - Allow altering of comments (ioguix, with rename, owner & schema)


Sequences
---------

* -Alter sequence (Guillaume LELARGE)
* -setval & nextval (Guillaume LELARGE)
* -change schema (ioguix)
* -rename (done using alter table) (ioguix)


Functions
---------

* -Support 8.1 IN, OUT and INOUT parameters.(Jawed)
* Remove options for OUT/INOUT params in older servers
* Clean up javascript html spec warnings
* -Display owner (xzilla)
* -Alter owner (xzilla)
* -Alter schema (xzilla)
* GUC settings [8.3]
* Default param values

Indexes 
-------

* Support 8.1 Reindex [Database|System] commands
* Expressional indexes
* Allow indexes to be built concurrently [8.2]
* Create Index Asc/Desc, Nulls First/Last [8.3]


Types
-----

* Suppres psuedo-type options in type list for creating composite types. 


Operators
---------

* Create
* Create/Alter/Drop Operator Family


Operator Classes
----------------

* Create


Triggers
--------

* Allow functions from other schemas.
* -Support ENABLE/DISABLE trigger in 8.1 (Jawed)


Aggregates
----------

* -Properties (Javier)
* -Drop (Javier)
* -Create (Javier)
* Allow for multi-column aggregates [8.2]


Languages
---------

* Drop
* Create
* Alter owner [8.3]
* Alter name [8.3]


Domains (7.3)
-------------


Conversions (7.3)
-----------------

* Properties
* Drop
* Create


Casts (7.3)
-----------

* Properties
* Drop
* Create


Full Text Search (8.3)
----------------------

* Create/Alter/Drop parser 
* Help Pages 
* Alter Owner 


Miscellaneous
-------------

* Support 8.1 standard compliant strings (E'')
* -Allow management of built-in autovacuum in 8.1 (xzilla)
* Support per-user and per-database connection limits per 8.1
* Put a 'What's blocking this query' on Processes view
* -Show locks on database view (Javier)
* Show prepared statements on database view [8.2]
* Show cursors on database view [8.2]
* Show NOTICES on queries in SQL window/file
* -Add sslmode to connection variables (Eric Kinolik)
* Printable view of things
* Show comments for all objects (Dan Boren)
* Allow setting/dropping comments for all objects (Dan Boren)
* Show owner for all objects
* Allow changing owner for objects that have this feature [7.4+ generally]
* -Icons for all objects, for use in navigation widgets
  Most objects are now covered thanks to those provided by Niko,
  but we still need icons for:
    Introduction, Variables, Admin, Privileges, Reports
* Add CASCADE option to Truncate [8.2]
* Add information about synch tool to TRANSLATORS
* Translated FAQ
* Pull FAQ/HISTORY/CREDITS/etc... from CVS for website. 
* Add support for csvlogs [8.3]
* Add executed file scripts in history 


Exotic
------

* Support contrib/tsearch2 for easy full text indexes
* Pivot reports (ADODB has a feature for this)
* Parameterized reports (use prepared queries)
* Full web accessability conformance
* reversing the database stack inheritance
	it would have the following advantages:
	- less class to load when using the latests pg versions
	- every newer/up-to-date methods will be in the same class file. Other classes will have specific methods 
	for their pg versions and older
	- ... complete me please :)

Principles
----------

* register_globals off support
* maximum error_reporting support - enforces code quality, reduces bugs and 
  improves security
* PHP 4.2 features used
* No HTML font, colour, layout tags.  Use CSS for everything
* One day we should make it all XHTML
* everything properly escaped - prevent sql injection and cross-site scripting 
  probs
* Support Postgres 7.0 and upwards
* psql -E is a cool way of seeing how to do schema queries
* Checking out older versions of describe.c in src/bin/psql in the postgres 
  distro is a good way of seeing how to query older versions of postgres for 
  schema information
* Put functions in the highest class possible.  For instance, simple selects 
  should be in Postgres, whereas something that works for 7.1+ should be in the 
  7.1 class.  This will minimise bugs and duplicated code.
* Adhere to current coding standards
* Avoid using global variables if possible