-
Notifications
You must be signed in to change notification settings - Fork 2
GSoC:2008 Collections 2.0 Todo list
Erik Massop edited this page Nov 4, 2017
·
1 revision
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
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 pageWork on the querying proposal- Work more on the querying proposal
Use strings in the medialib everywhereImplement NATCOLL- Add prefix-matching
For BINARY collationFor NOCASE collation- For other collations (how is prefix defined for INTCOLL, NATCOLL when ending in numerals?)
Abolish case-sensitive attributesed "s|FULLORDER|COMPARE|g"
- Implement an "index" in the idlist virtual table
Readd DAG-checking
Implement an id-wise operatorImplement the token-operator- Implement a similar-operator (extra)
Revisit the "is this id in the collection"-function
-
Implement global source-preferenceChange databaseUse it for collection-queriesUse it for medialib_info-variantHave a config-value system to change the prioritiesAllow 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
Content is available under GNU Free Documentation License 1.2 unless otherwise noted.
- Community
- Development