summaryrefslogtreecommitdiff
path: root/community/weblogs/ArneBab
diff options
context:
space:
mode:
Diffstat (limited to 'community/weblogs/ArneBab')
-rw-r--r--community/weblogs/ArneBab/2011-04-06-application-pyhurd.mdwn18
1 files changed, 11 insertions, 7 deletions
diff --git a/community/weblogs/ArneBab/2011-04-06-application-pyhurd.mdwn b/community/weblogs/ArneBab/2011-04-06-application-pyhurd.mdwn
index 00b1cff7..28beb812 100644
--- a/community/weblogs/ArneBab/2011-04-06-application-pyhurd.mdwn
+++ b/community/weblogs/ArneBab/2011-04-06-application-pyhurd.mdwn
@@ -20,7 +20,7 @@ For this years GSoC I want to turn the currently rudimentary Python Bindings of
## Preliminary Schedule
-*still very rough*
+*still needs a thorough reality check.*
* *Community bonding period.*
Read up on the current C-interface to the Hurd and Cython. Especially grok the Hurd hacking guide. Add docstrings to all existing source files (where they are missing) explaining what they do. Add auto-generated API-docs. Deliverable: Easy to understand API-docs of the current PyHurd, a simple way to generate them from the sources automatically.
@@ -28,7 +28,7 @@ For this years GSoC I want to turn the currently rudimentary Python Bindings of
Coding starts.
* *May 30.*
Finished a basic Hello World translator, naively implementing the necessary Mach parts directly in the translator.
- 1. A simple program which gets a Mach port and can receive messages on that port. It has to take and hold the port at startup and send a reply port, needs to use mach_msg to get the messages, should be able to deallocate the port and must have a kill condition (for example 10 received messages).
+ 1. A simple program which gets a Mach port and can receive messages on that port. It has to get and hold its port at startup and send a reply port, needs to use mach_msg to get the messages, should be able to deallocate the port and must have a kill condition (for example 10 received messages).
2. stdout functionality, to print all Mach messages (for debugging and to make sure that they really get received entirely).
3. a parser for the Mach read file message similar to trivfs\_S\_io\_read
* *June 6.*
@@ -43,26 +43,30 @@ For this years GSoC I want to turn the currently rudimentary Python Bindings of
* *June 13.*
Implemented single file read-write in the API. Added a simple writethrough translator. The API code is nicely commented.
* *June 20.*
-
+ Access Control and file attributes. Added lock_file translator which just adjusts the effective file access codes and can be used to lock a file as long as the translator is used. Might be useful for quick testing.
* *June 27.*
+ Translator commandline arguments and testing.
* *July 4.*
+ Translator: Overlay with backend store: write changes to a different file. Makes any file writeable, but keeps the changes only visible for the user who set up the translator. Effectively single-file unionmount.
* *July 11.*
Mid-term: trivfs in python works: It is possible to write translators in Python with relative ease.
* *July 18.*
+ More complex, specialized and helper translator libraries, along with example translators. This should recreate the Hurd libraries for Python and add some more convenience options. Showing directory trees, accessing disks (store), etc.
* *July 25.*
+ Full featured setttrans in Python
* *August 1.*
+ Redesigned and realized an updated controlling API with the existing direct Cython bindings.
* *August 8.*
+ More translators.
* *August 15.*
Suggested Pencils down. The translator API is easy to use, there are many example translators and there is a full featured settrans command in Python using the easier controlling API which shows how to control the Hurd directly from Python.
* *August 22.*
Firm pencils down.
-2. Check the existing API.
- 2. redesign and realize an updated low-level API.
- 3. design a pythonic high-level API for translators.
+2.
3. Realize a pythonic trivfs library and an example translator using it.
4. Mid-Term: trivfs works. Push the code to https://github.com/ArneBab/PyHurd
-5. Implement more complex and specialized translator libraries, along with example translators. This should recreate the Hurd libraries for Python. Ideally seperate the libraries, so programmes can simply import the convenience functionality they need.
+5. Ideally seperate the libraries, so programmes can simply import the convenience functionality they need.
6. Re-implement some hurd specific utils in pyhurd such as settrans.
7. With the remaining time, create as many interesting translators as possible. Ideas include all compression formats supported by Python, markdown to HTML translators to be accessed with nsmux (file.mdwn,,html), automatic version tracking directories and overlay stores which store changes to nonchanging files like squaschfs, but also simple translators like translator-based write-locking of files by not catching write-accesses.
8. Push the final code to https://github.com/ArneBab/PyHurd