GSoC:2008/Collections 2.0/Todo list
From XMMS2
(Redirected from Summer of Code 2008/Collections 2.0/Todo list)
bold are the larger tasks.
italic are the not-so-important tasks.
- Attributes
- Allow general xmmsv_ts as attributes
- Several values for field, value (except for MATCH), source. To be interpreted as a union.
- Allow general xmmsv_ts as attributes
- Chop history in logical chunks
- Documentation
- Add documentation for most functions
- Add documentation on the wiki
- Querying
- Work on querying proposal
- Implement querying proposal
- Matching
- Define pattern-matching for some of the collations
- Disable for those collations in the meantime.
- Prefix
- Make prefix-matching work for collations.
- Fix prefix for non-ascii characters like Å‚
- Move idlist to the attributes.
- IdlistVirtual
- Implement an index
- Checking
- Set default value for type-attribute of idlist to "list"
- Check for cyclic behavior in jumplist
- Check source-attribute
- Check source-preference-attribute
- Make default values configureable
- Sourcerank
- Add default sourcerank to more plugins
- Medialib
- Change schema to use value ids, which then appear in MediaTokens, MediaValues and MediaBackend tables
- Abolish INTERSECTION_ORDERED
- Change attributes to LIMIT (to not use UINT_MAX)
- Fix FIXMEs
- Do TODOs
- Add optimizations to collquery
- Serialize as a true DAG
Pre February 10 2009
Notation: In bold high-priority stuff, in italic optional/low-priority stuff, in normal font normal-priority stuff.
- Finish this todo list
- Prefix does not work with non-ascii characters like Å‚ (in the NATCOLL-collation at least).
-
Create a Collections 2.0 operator documentation page -
Work on the querying proposal - Work more on the querying proposal
-
Use strings in the medialib everywhere -
Implement NATCOLL - Add prefix-matching
-
For BINARY collation -
For NOCASE collation - For other collations (how is prefix defined for INTCOLL, NATCOLL when ending in numerals?)
-
-
Abolish case-sensitive attribute -
sed "s|FULLORDER|COMPARE|g"
- Implement an "index" in the idlist virtual table
-
Readd DAG-checking
-
Implement an id-wise operator -
Implement the token-operator - Implement a similar-operator (extra)
-
Revisit the "is this id in the collection"-function
-
Implement global source-preference-
Change database -
Use it for collection-queries -
Use it for medialib_info-variant -
Have a config-value system to change the priorities -
Allow plugins to set default sourcerank values. (Create a function that sets the [pluginname].sourcerank config if it is an empty string (signifying that the user wants the default or never set a value.) or does not exist.) -
Change the config names from "server.sourcerank", "plugin/[pluginname].sourcerank" and "client/[clientname].sourcerank" to something different.
-
- Implement per collection-node source preference
-
Add default-properties when saving a collection.(still double-checked when querying, not for pshuffle/queue, as those are to be abolished) - Make these properties configureable
- Change the uniqueness of the medialib table + change the xforms accordingly
- Allow all the funky querying (needs value_t!)
- Abolish json-like string for requesting. Request using xmmsv_t instead.
- Better error handling
-
implement query_medialist -
implement query_clustered- Change syntax to avoid ambiguity
- Allow distinct tuples
- Allow collations for clustering diction
- Allow ordering
- Aggregates:
-
implode- only distinct values
-
min, max, avg - list
- tuple
- named-tuple?
- dict
- only distinct keys
-
- Functions:
-
url-decode - source-name
- source-rank
-
- Maybe use a dict for the collection-attributes?
- Add a specials namespace
-
Add proper database updating (once all is stabilized)Done for now - Add some optimizations to collquery.c
-
Update collparser - Do the FIXMEs
- Do the TODOs

