File Annotation
Not logged in
ba486fec5a 2007-09-03       drh: Possible ticket file format:
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    "Ticket"
ba486fec5a 2007-09-03       drh:    title: TEXT
ba486fec5a 2007-09-03       drh:    ticketid: TEXT
ba486fec5a 2007-09-03       drh:    exists-in: BASELINE   -- 0 or more
ba486fec5a 2007-09-03       drh:    fixed-in: BASELINE    -- 0 or more
ba486fec5a 2007-09-03       drh:    tag: TAG              -- 0 or more
ba486fec5a 2007-09-03       drh:    created: DATETIME
ba486fec5a 2007-09-03       drh:    attachment: FILENAME DESCRIPTION
ba486fec5a 2007-09-03       drh:    parent: UUID*
ba486fec5a 2007-09-03       drh:    derived-from: TICKET-FILENAME
ba486fec5a 2007-09-03       drh:    description: MULTILINE-TEXT
ba486fec5a 2007-09-03       drh:    remarks: MULTILINE-TEXT
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * Things handles with tags:
ba486fec5a 2007-09-03       drh:      created-by
ba486fec5a 2007-09-03       drh:      assigned-to
ba486fec5a 2007-09-03       drh:      priority
ba486fec5a 2007-09-03       drh:      severity
ba486fec5a 2007-09-03       drh:      target-release
ba486fec5a 2007-09-03       drh:      status
ba486fec5a 2007-09-03       drh:      resolution
ba486fec5a 2007-09-03       drh:      type
ba486fec5a 2007-09-03       drh:      subsystem
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Wiki header format:
ba486fec5a 2007-09-03       drh:    "WikiPage"
ba486fec5a 2007-09-03       drh:    parent: UUID*
ba486fec5a 2007-09-03       drh:    title: TEXT
ba486fec5a 2007-09-03       drh:    pagename: TEXT
ba486fec5a 2007-09-03       drh:    mode: (readonly|appendonly|readwrite)
ba486fec5a 2007-09-03       drh:    attachment: UUID name description
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * Header ends with a blank line.  wiki content follows.
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Cluster format:
ba486fec5a 2007-09-03       drh: 
e1c1877c99 2007-09-08       drh:        M+ uuid
e1c1877c99 2007-09-08       drh:        Z manifest-cksum
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * Cluster generated in server mode only.
ba486fec5a 2007-09-03       drh:    * Embargo cluster that reference phantoms or other embargoed clusters.
ba486fec5a 2007-09-03       drh:    * Never send or ihave an embargoed cluster
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: New sync algorithm based on clusters:
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * Keep a table of unclustered artifacts.  Strive to keep this table
ba486fec5a 2007-09-03       drh:      less than 100 entries.
ba486fec5a 2007-09-03       drh:    * Client sends content of unclustered table as ihaves to server
ba486fec5a 2007-09-03       drh:    * Server builds a new cluster if size of cluster table >100.
ba486fec5a 2007-09-03       drh:    * Server sends unclustered table to client
ba486fec5a 2007-09-03       drh:    * Server sends gimme for all unknown ihave received from client
ba486fec5a 2007-09-03       drh:    * Client sends gimme for all unknown ihave received from server
ba486fec5a 2007-09-03       drh:    * Previous two steps repeat until no more gimmes
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Details of new push algorithm:
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * Table "unsent" contains all files never pushed
ba486fec5a 2007-09-03       drh:    * TEMP table "wanted" contains files the server does not have
ba486fec5a 2007-09-03       drh:    Loop:
ba486fec5a 2007-09-03       drh:      * Client sends login and "push" record
ba486fec5a 2007-09-03       drh:      * Client sends file message for all files in unsent and removes
ba486fec5a 2007-09-03       drh:        those files from the table.
ba486fec5a 2007-09-03       drh:      * Client sends file message for all files in wanted.
ba486fec5a 2007-09-03       drh:      * Client sends ihave messages for each entry in unclustered
ba486fec5a 2007-09-03       drh:      ------
ba486fec5a 2007-09-03       drh:      * Server receives file message
ba486fec5a 2007-09-03       drh:      * Server creates phantoms for unknown ihaves
ba486fec5a 2007-09-03       drh:      * Server sends gimme messages for all phantoms
ba486fec5a 2007-09-03       drh:      ------
e1c1877c99 2007-09-08       drh:      * Client clears its unsent table
ba486fec5a 2007-09-03       drh:      * For each gimme message add an entry to wanted
ba486fec5a 2007-09-03       drh:      * Halt if the wanted table is empty
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Details on new pull algorithm:
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    Loop:
ba486fec5a 2007-09-03       drh:      * Client sends login and "pull" record
ba486fec5a 2007-09-03       drh:      * Client sends "prior" message with repository id and max record number
ba486fec5a 2007-09-03       drh:      * Client sends "gimme" for each phantom
ba486fec5a 2007-09-03       drh:      --------
ba486fec5a 2007-09-03       drh:      * Server creates new clusters to get unclustered size below 100
ba486fec5a 2007-09-03       drh:      * If there is "prior" message with repository id that matches this
ba486fec5a 2007-09-03       drh:        server, then send file messages for all record ids greater than
ba486fec5a 2007-09-03       drh:        prior
ba486fec5a 2007-09-03       drh:      * Server sends ihave messages for each entry in unclustered
ba486fec5a 2007-09-03       drh:      * Server sends maxrid message
ba486fec5a 2007-09-03       drh:      --------
ba486fec5a 2007-09-03       drh:      * Client receives file records
ba486fec5a 2007-09-03       drh:      * Client creates phantoms for unknown ihaves
ba486fec5a 2007-09-03       drh:      * If no phantoms exist, record maxrid for the server and halt
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Need a dephantomize algorithm
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh: Auxiliary tables needed for new sync algorithm:
ba486fec5a 2007-09-03       drh: 
ba486fec5a 2007-09-03       drh:    * unsent:  files that have never been sent to another repository
ba486fec5a 2007-09-03       drh:    * unclustered: non-phantom files not mentioned by a cluster
ba486fec5a 2007-09-03       drh: 
634fd117b1 2007-08-25       drh: Random thoughts:
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   *  Changes to manifest to support:
634fd117b1 2007-08-25       drh:      +  Trees of wiki pages and tickets
634fd117b1 2007-08-25       drh:      +  The ability to cap or close a branch
fd8b28ad87 2007-08-26       drh:      +  See "Extended Manifests" below
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   *  Add the concept of "clusters" to speed the transfer of "tips"
634fd117b1 2007-08-25       drh:      on a sync.
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   *  Auxiliary tables:
634fd117b1 2007-08-25       drh:      +  tip
634fd117b1 2007-08-25       drh:      +  phantom
634fd117b1 2007-08-25       drh:      +  mlink
634fd117b1 2007-08-25       drh:      +  plink
634fd117b1 2007-08-25       drh:      +  branch
634fd117b1 2007-08-25       drh:      +  tree
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   * Plink.isprim changed to record:
fd8b28ad87 2007-08-26       drh:      +  child is the principal descendent of parent. (1)
fd8b28ad87 2007-08-26       drh:      +  child is a branch from parent (2)
fd8b28ad87 2007-08-26       drh:      +  child uses parent as a merge (0)
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   * tree records
634fd117b1 2007-08-25       drh:      + type  (code, wiki, ticket)
634fd117b1 2007-08-25       drh:      + name  (for wiki and ticket only)
634fd117b1 2007-08-25       drh:      + treeid
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   * branch records
634fd117b1 2007-08-25       drh:      + treeid
634fd117b1 2007-08-25       drh:      + origin_rid
634fd117b1 2007-08-25       drh:      + origin_time
634fd117b1 2007-08-25       drh:      + tip_rid
634fd117b1 2007-08-25       drh:      + tip_time
634fd117b1 2007-08-25       drh:      + color
634fd117b1 2007-08-25       drh: 
634fd117b1 2007-08-25       drh:   * website can toggle isprim between principal and branch.
634fd117b1 2007-08-25       drh:      + How to preserve across rebuild.  A new record type?
634fd117b1 2007-08-25       drh:      + How to share with other repositories
634fd117b1 2007-08-25       drh:   * isprim guessed using userid of parent and child.  Change
634fd117b1 2007-08-25       drh:     in id suggests a branch.  Same id suggests principal.
fd8b28ad87 2007-08-26       drh:     For a tie, go with the earliest check-in as the principal'
fd8b28ad87 2007-08-26       drh: 
fd8b28ad87 2007-08-26       drh:   * Autosync mode
fd8b28ad87 2007-08-26       drh:      + Set a preferred remote repository to use as a server
fd8b28ad87 2007-08-26       drh:         =  Clone repository is the default
fd8b28ad87 2007-08-26       drh:      + On commit, first pull.  If commit baseline is not a tip
fd8b28ad87 2007-08-26       drh:        prompt user to cancel or branch.  Default is cancel.
fd8b28ad87 2007-08-26       drh:      + Push after commit
fd8b28ad87 2007-08-26       drh:      + Automatically pull prior to update.
fd8b28ad87 2007-08-26       drh:      + Need an "undo" capability
fd8b28ad87 2007-08-26       drh:      + Designed to avoid branching in highly collaborative
fd8b28ad87 2007-08-26       drh:        environments.
fd8b28ad87 2007-08-26       drh: 
fd8b28ad87 2007-08-26       drh:   * Archeological webpage improvements:
fd8b28ad87 2007-08-26       drh:      + Use a small amount of CSS+javascript on timelines so that
fd8b28ad87 2007-08-26       drh:        branching structure is displayed on mouseover.  On mouseover
fd8b28ad87 2007-08-26       drh:        of a checkin, highlight other checkins that are direct (non-merge)
fd8b28ad87 2007-08-26       drh:        descendents and ancestors of the mouseover checkin.
fd8b28ad87 2007-08-26       drh:      + Timeline showing individual branches
fd8b28ad87 2007-08-26       drh:      + Timeline shows forks and merges
fd8b28ad87 2007-08-26       drh:      + Tags shown on timeline (maybe) and in vinfo (surely).
fd8b28ad87 2007-08-26       drh: 
251545cd43 2007-09-02       drh: Features needed:
251545cd43 2007-09-02       drh:   * Means to suppress artifacts
251545cd43 2007-09-02       drh:   * Means to cap a branch
251545cd43 2007-09-02       drh:   * Ticketing
251545cd43 2007-09-02       drh:      +  Problem is/is-not expressed in baseline X.
251545cd43 2007-09-02       drh:      +  Append comment and zero or more attachments
251545cd43 2007-09-02       drh:   * Modify comments on baselines
251545cd43 2007-09-02       drh:   * Append comments to any artifact
251545cd43 2007-09-02       drh:   * Wiki?
251545cd43 2007-09-02       drh: 
251545cd43 2007-09-02       drh: 
251545cd43 2007-09-02       drh: 
fd8b28ad87 2007-08-26       drh: Extended manifests.
fd8b28ad87 2007-08-26       drh:   * normal manifest has:
fd8b28ad87 2007-08-26       drh:        C comment
fd8b28ad87 2007-08-26       drh:        D date-time
fd8b28ad87 2007-08-26       drh:        F* filename uuid
fd8b28ad87 2007-08-26       drh:        P uuid ...           -- omitted for first manifest
fd8b28ad87 2007-08-26       drh:        R repository-md5sum
fd8b28ad87 2007-08-26       drh:        U user-login
fd8b28ad87 2007-08-26       drh:        Z manifest-checksum
251545cd43 2007-09-02       drh: 
251545cd43 2007-09-02       drh:   * Accessory:
251545cd43 2007-09-02       drh:        A uuid|* attachment-uuid description
251545cd43 2007-09-02       drh:        D date-time
251545cd43 2007-09-02       drh:        E uuid new-comment
251545cd43 2007-09-02       drh:        G uuid appended-remark
251545cd43 2007-09-02       drh:        S repositoryid serial-number
2bc0e2c565 2007-09-21       drh:        T (+|-)tag uuid
2bc0e2c565 2007-09-21       drh:        U userid
251545cd43 2007-09-02       drh:        X uuid-to-surpress
251545cd43 2007-09-02       drh:        Z this-file-checksum
251545cd43 2007-09-02       drh: 
fd8b28ad87 2007-08-26       drh:   * Change the comment on a version:   -- always a leaf except in cluster
fd8b28ad87 2007-08-26       drh:        D date-time
fd8b28ad87 2007-08-26       drh:        E new-comment
fd8b28ad87 2007-08-26       drh:        P uuid              -- baseline whose comment is changed
fd8b28ad87 2007-08-26       drh:        U user-login
fd8b28ad87 2007-08-26       drh:        Z checksum
fd8b28ad87 2007-08-26       drh:        -- most recent wins
fd8b28ad87 2007-08-26       drh:   * Wiki edit
fd8b28ad87 2007-08-26       drh:        A* name uuid   -- zero or more attachments
fd8b28ad87 2007-08-26       drh:        C? comment
fd8b28ad87 2007-08-26       drh:        D date-time
fd8b28ad87 2007-08-26       drh:        N name         -- name of the wiki page
fd8b28ad87 2007-08-26       drh:        P uuid ...     -- omit for new wiki
fd8b28ad87 2007-08-26       drh:        U user-login
fd8b28ad87 2007-08-26       drh:        W uuid         -- The content file
fd8b28ad87 2007-08-26       drh:        Z manifest-cksum
fd8b28ad87 2007-08-26       drh:   * Ticket edit
fd8b28ad87 2007-08-26       drh:        A* name uuid   -- zero or more attachments
fd8b28ad87 2007-08-26       drh:        D date-time
fd8b28ad87 2007-08-26       drh:        N name         -- name of the ticket
fd8b28ad87 2007-08-26       drh:        P uuid         -- omit for new ticket
fd8b28ad87 2007-08-26       drh:        T uuid         -- content of the ticket
fd8b28ad87 2007-08-26       drh:        U user-login
fd8b28ad87 2007-08-26       drh:        Z manifest-cksum
fd8b28ad87 2007-08-26       drh:   * Set or erase a tag    -- most recent date wins
fd8b28ad87 2007-08-26       drh:        B* (+|-)tag uuid
fd8b28ad87 2007-08-26       drh:        C? comment
fd8b28ad87 2007-08-26       drh:        D date-time
fd8b28ad87 2007-08-26       drh:        V* (+|-) tag uuid    -- + to set, - to clear.
fd8b28ad87 2007-08-26       drh:        Z manifest-cksum
fd8b28ad87 2007-08-26       drh:        -- Must have at least one B or V.
2bc0e2c565 2007-09-21       drh:        -- Branch tag "hidden" means do not sync
2bc0e2c565 2007-09-21       drh:        -- Version tag "closed" means do not display as a leaf
8c828207a2 2007-08-27       drh:   * A cluster
8c828207a2 2007-08-27       drh:        M+ uuid
8c828207a2 2007-08-27       drh:        Z manifest-cksum
2bc0e2c565 2007-09-21       drh: 
2bc0e2c565 2007-09-21       drh:   * Complete set of cards in a control file:
fd8b28ad87 2007-08-26       drh:        A filename uuid
fd8b28ad87 2007-08-26       drh:        B (+|-)branch-tag uuid
fd8b28ad87 2007-08-26       drh:        C comment
fd8b28ad87 2007-08-26       drh:        D date-time
2bc0e2c565 2007-09-21       drh:        E uuid edited-comment
fd8b28ad87 2007-08-26       drh:        F filename uuid
2bc0e2c565 2007-09-21       drh:        M uuid
fd8b28ad87 2007-08-26       drh:        N name
fd8b28ad87 2007-08-26       drh:        P uuid ...
fd8b28ad87 2007-08-26       drh:        R repository-md5sum
fd8b28ad87 2007-08-26       drh:        T uuid
fd8b28ad87 2007-08-26       drh:        U user-login
fd8b28ad87 2007-08-26       drh:        V (+|-)version-tag uuid
fd8b28ad87 2007-08-26       drh:        W uuid
fd8b28ad87 2007-08-26       drh:        Z manifest-checksum