IP Library Patent Application 16233958
Patent Application
App. No. 16/233,958

TREE-CONVERSION DELTA ENCODING

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
16/233,958
Abstract

A first data tree of a first version of the software and a second data tree of a second version of the software may be provided. The first data tree may be converted into a first data tree file, and the second data tree may be converted into a second data tree file. A delta for the first data tree and the second data tree may be generated based on a comparison of the first data tree file and the second data tree file. The delta may be packaged for provision to a client-side agent. The client-side agent may be configured to modify a client-side version of the software based on the delta.

Claims (43)

1 . A system for modifying software using a tree-conversion delta encoding, the system comprising:

a software manager configured to provide a first data tree of a first version of the software and a second data tree of a second version of the software to a tree-to-file converter;

the tree-to-file converter configured to convert the first data tree into a first data tree file and convert the second data tree into a second data tree file, the first data tree including a first set of directory nodes and a first set of file nodes, and the second data tree including a second set of directory nodes and a second set of file nodes; and

a file-delta encoding engine configured to generate a delta for the first data tree and the second data tree based on a comparison of the first data tree file and the second data tree file;

wherein:

a pack format of a data tree file includes a tree definition in a header, defines individual file nodes of the data tree using a file name, a file type, and a data location, and defines individual directory nodes of the data tree using a directory name and a directory type;

data of the individual file nodes are placed within the data tree file in an order of data-tree traversal; and

the delta is packaged for provision to a client-side agent, the client-side agent configured to modify a client-side version of the software based on the delta.

2 . The system of claim 1 , wherein the pack format of the data tree file is platform independent and does not include time stamp information, ownership information or version information.

3 . A system for modifying software using a tree-conversion delta encoding, the system comprising:

a software manager configured to provide a first data tree of a first version of the software and a second data tree of a second version of the software to a tree-to-file converter;

the tree-to-file converter configured to convert the first data tree into a first data tree file and convert the second data tree into a second data tree file, the first data tree including a first set of directory nodes and a first set of file nodes, and the second data tree including a second set of directory nodes and a second set of file nodes; and

a file-delta encoding engine configured to generate a delta for the first data tree and the second data tree based on a comparison of the first data tree file and the second data tree file;

wherein the delta is packaged for provision to a client-side agent, the client-side agent configured to modify a client-side version of the software based on the delta.

4 . The system of claim 3 , wherein the comparison of the first data tree file and the second data tree file is performed using bsdiff, xdelta, or zdelta.

5 . The system of claim 3 , wherein conversion of a data tree into a data tree file is performed using tar.

6 . The system of claim 3 , wherein a pack format of a data tree file is platform independent and does not include time stamp information, ownership information or version information.

7 . The system of claim 6 , wherein the pack format of the data tree file includes a tree definition in a header, defines individual file nodes of the data tree using a file name, a file type, and a data location, and defines individual directory nodes of the data tree using a directory name and a directory type.

8 . The system of claim 7 , wherein data of the individual file nodes are placed within the data tree file in an order of data-tree traversal.

9 . The system of claim 3 , wherein the delta for the first data tree and the second data tree is generated as a set of differences to be applied to a copy of the first data tree file to construct a copy of the second data tree file, and the copy of the second data tree file is converted into a copy of the second data tree.

0 . The system of claim 9 , wherein the client-side agent, responsive to receiving the delta, is configured to perform:

accessing the first data tree and the delta;

converting the first data tree into the copy of the first data tree file;

constructing the copy of the second data tree file by applying the delta to the copy of the first data tree file; and

converting the copy of the second data tree file into the copy of the second data tree.

11 . The system of claim 3 , wherein the delta for the first data tree and the second data tree is generated as a set of differences to be applied to an empty file to construct a copy of the second data tree file, and the copy of the second data tree file is converted into a copy of the second data tree.

12 . A method for modifying software using a tree-conversion delta encoding, the method comprising:

providing a first data tree of a first version of the software and a second data tree of a second version of the software;

converting the first data tree into a first data tree file and converting the second data tree into a second data tree file, the first data tree including a first set of directory nodes and a first set of file nodes, and the second data tree including a second set of directory nodes and a second set of file nodes; and

generating a delta for the first data tree and the second data tree based on a comparison of the first data tree file and the second data tree file;

wherein the delta is packaged for provision to a client-side agent, the client-side agent configured to modify a client-side version of the software based on the delta.

13 . The method of claim 12 , wherein the comparison of the first data tree file and the second data tree file is performed using bsdiff, xdelta, or zdelta.

14 . The method of claim 12 , wherein conversion of a data tree into a data tree file is performed using tar.

15 . The method of claim 12 , wherein a pack format of a data tree file is platform independent and does not include time stamp information, ownership information or version information.

16 . The method of claim 15 , wherein the pack format of the data tree file includes a tree definition in a header, defines individual file nodes of the data tree using a file name, a file type, and a data location, and defines individual directory nodes of the data tree using a directory name and a directory type.

17 . The method of claim 16 , wherein data of the individual file nodes are placed within the data tree file in an order of data-tree traversal.

18 . The method of claim 12 , wherein the delta for the first data tree and the second data tree is generated as a set of differences to be applied to a copy of the first data tree file to construct a copy of the second data tree file, and the copy of the second data tree file is converted into a copy of the second data tree.

19 . The method of claim 18 , wherein the client-side agent, responsive to receiving the delta, is configured to perform:

accessing the first data tree and the delta;

converting the first data tree into the copy of the first data tree file;

constructing the copy of the second data tree file by applying the delta to the copy of the first data tree file; and

converting the copy of the second data tree file into the copy of the second data tree.

20 . The method of claim 12 , wherein the delta for the first data tree and the second data tree is generated as a set of differences to be applied to an empty file to construct a copy of the second data tree file, and the copy of the second data tree file is converted into a copy of the second data tree.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2020
From: VOYAGER (HK) CO., LTD.
To: BEIJING VOYAGER TECHNOLOGY CO., LTD.
Reel/Frame 052175/0748 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2020
From: DIDI RESEARCH AMERICA, LLC
To: VOYAGER (HK) CO., LTD.
Reel/Frame 052203/0152 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2018
From: REN, LIWEI; ZHANG, JIANG; YI, XIAOYONG
To: DIDI RESEARCH AMERICA, LLC
Reel/Frame 047862/0019 →