Difference between revisions of "User:Alsroot/trash/Object Bundles"
Line 25: | Line 25: | ||
This feature is a first approach to unified format for all types of bundles(in 0.86 it will support only Journal entries and new library bundles). | This feature is a first approach to unified format for all types of bundles(in 0.86 it will support only Journal entries and new library bundles). | ||
− | + | === Bundle files hierarchy === | |
* ''MANIFEST'' EOL-terminalted list of files inside bundle | * ''MANIFEST'' EOL-terminalted list of files inside bundle | ||
* ''METADATA'' file in [http://docs.python.org/library/configparser.html INI] format which describes bundle | * ''METADATA'' file in [http://docs.python.org/library/configparser.html INI] format which describes bundle | ||
− | + | === METADATA file === | |
METADATA files consists of several sections: | METADATA files consists of several sections: | ||
− | * ''[Metadata]'' | + | * ''[Metadata]'' |
* ... | * ... | ||
Any field in METADATA file can have ''_file'' suffix, in that case content of this field(substring w/o ''_file'' suffix) will be fetched from file inside bundle. | Any field in METADATA file can have ''_file'' suffix, in that case content of this field(substring w/o ''_file'' suffix) will be fetched from file inside bundle. | ||
+ | |||
+ | ==== [Metadata] section ==== | ||
+ | |||
+ | This section is mandatory. It describes Datastore metadata fields of final entry in Journal. | ||
+ | |||
+ | {| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | ||
+ | |-style="background:#787878; color: white;" | ||
+ | ! Field | ||
+ | ! Flags | ||
+ | ! Notes | ||
+ | |- | ||
+ | | mime_type | ||
+ | | mandatory | ||
+ | | | ||
+ | |- | ||
+ | | * | ||
+ | | optional | ||
+ | | any Datastore field, predefined or user defined | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | |||
+ | <br>each field in this section is equal to proper Datastore field<br>should contain at least ''mime_type'' field | ||
== Benefit to Sugar == | == Benefit to Sugar == |
Revision as of 23:29, 21 July 2009
Summary
Package Journal objects to bundles to preserve sugar related metadata.
Owner
- Name: Aleksey Lim
- Email: send an email
Current status
- Targeted release: 0.86
- Last updated: Tue Jul 21 02:18:17 UTC 2009
- Percentage of completion: 0%
Detailed Description
This feature is a first approach to unified format for all types of bundles(in 0.86 it will support only Journal entries and new library bundles).
Bundle files hierarchy
- MANIFEST EOL-terminalted list of files inside bundle
- METADATA file in INI format which describes bundle
METADATA file
METADATA files consists of several sections:
- [Metadata]
- ...
Any field in METADATA file can have _file suffix, in that case content of this field(substring w/o _file suffix) will be fetched from file inside bundle.
[Metadata] section
This section is mandatory. It describes Datastore metadata fields of final entry in Journal.
Field | Flags | Notes |
---|---|---|
mime_type | mandatory | |
* | optional | any Datastore field, predefined or user defined |
each field in this section is equal to proper Datastore field
should contain at least mime_type field
Benefit to Sugar
Let users export/import Journal objects.
Scope
- deprecate .xol bundles
- deprecate .xoj bundles
- provide unified format for metadata file in .xo bundles which should support
- activities, former .xo bundles (0.88)
- libraries, former .xol bundles (0.86)
- journal entries, former .xoj bundles (0.86)
- make Browse upload object bundles when the server says so
- InfoSlicer generates object bundles in 0.86 environment
How To Test
- Create a new TurtleArt activity
- Upload the new entry to the SL wiki using Browse
- Use Browse to download the entry back to Journal
- Resume it from Journal
User Experience
If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice.
Dependencies
Fructose dependencies.
Contingency Plan
None necessary, revert to previous release behaviour.
Documentation
Release Notes
The Sugar Release Notes inform end-users about what is new in the release. An Example is 0.84/Notes. The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns. If there are any such changes involved in this feature, indicate them here. You can also link to upstream documentation if it satisfies this need. This information forms the basis of the release notes edited by the release team and shipped with the release.