gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnu-arch-users] Inventory Tree


From: Saurabh Sehgal
Subject: [Gnu-arch-users] Inventory Tree
Date: Sun, 7 May 2006 01:56:35 -0400


Dear Sir/Madam,

My name is Saurabh Sehgal, and I am currently in the second year of the Electrical Engineering program at the University of Toronto. I am a young developer, learning his way through University, and very intersted in contributing to the GNU Arch project through the Google Summer of Code program. I have had extensive experience in C++ and C programming languages, and recently, I have programmed my own webserver, which I named Atlantis at my University. Through this experience, I have developed good knowledge of the UNIX file system, string parsing, I/O streams, sockets etc. Those of you, who have not heard about the Google Summer of Code program, it is a program that allows students to contribute to certain projects throughout the summer, and gain valuable developing experience. I am a passionate young individual, who is very eager to be the part of GNU Arch, and want to work on the Tree Inventory and and the Whole tree diff patch. The program does assign a mentor to the student throughout the summer, I just do not know who the mentor is going to be. Right now, I am busy writing a good proposal for the Tree Inventory tool and the Whole tree diff patch to get selected for this amazing project. I have been working on GNU/Linux systems, since I was in high school, and want to give back to the GNU community. The description of the Tree Inventory and Whole tree diff patch is:


  1. Tree inventory tool: a tree inventory examines the contents of a tree and distinguishes "important" files from "discardable" files. For example, if the tree is a C program, the ".c" and ".h" files are important but the ".o" files and Emacs back-up files ("*~") are "discardable".

    The inventory tool also assigns a logical ID to files such that that ID is independent of the file name. If you rename "foo.c" to be "bar.c", the inventory tool should say before hand that "foo.c" has logical identity X and, after, that "bar.c" now has logical identity X.

    There should be flexible ways for a user to assign logical identities to files.

    Directories, symbolic links, and special files should be able to have logical identities.

  2. Whole tree diff and patch: A traditional recursive diff compares files that have the same name in both trees and doesn't compare directories at all. An arch recursive diff and patch should be based on the logical IDs of the inventory too. If, in tree A, the file with ID X is called "foo.c" and in tree B the file with ID X is called "bar.c", Arch's whole tree diff should know to compare "foo.c" to "bar.c". If we apply the resulting patch to a third tree, in which the file with ID X is called "baz.c", Arch's whole tree patch should know to apply the differences to "baz.c". If comparison of two trees reveals that "foo.c" has been renamed to "bar.c", then applying that patch to a tree that still has "foo.c" should cause the file to be renamed "bar.c".
from :   http://www.gnu.org/software/soc-projects/ideas.html.

I have been trying to come up with creative and efficient algorithms to implement the feature described on the above website. However, in order to achieve my goals, I need to know what documentation am I going to have to work with, and what code is going to have to be changed in the GNU Arch software, for this tool to be successful. If there is anyone, who can be kind enough to point me in the right direction in my research, I would be more than grateful to them. I really want to be a part of this project, and become a successful contributer to GNU Arch. I am not looking for any algorithms, or any suggestions on implementation, since that is for me to come up with, I just need to know what kind of code am I going to have to work with, and what existing documentation that might exist on the GNU Arch archives that I can read over. If anyone can point me in the right direction, I will be more than grateful.

Thanking you,

Saurabh Sehgal

address@hidden







reply via email to

[Prev in Thread] Current Thread [Next in Thread]