[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnu-arch-users] Release announcement: Fai (pyaba) 0.2
From: |
Aaron Bentley |
Subject: |
[Gnu-arch-users] Release announcement: Fai (pyaba) 0.2 |
Date: |
Mon, 19 Jul 2004 09:05:43 -0400 |
User-agent: |
Mozilla Thunderbird 0.5 (X11/20040309) |
Hi all,
I'm pleased to announce the first official release of Fai, the Friendly
Arch Interface. It's a commandline util that's intended to be easier to
use than tla, for newbies and seasoned hands alike. See the README
below for more.
You can get it here:
address@hidden/fai--dist--0.2-patch-6
http://sourcecontrol.net/~abentley/archives/tlasrc/
It ships with its own version of PyArch, but it's just a temporary fork.
I'm committed to working with David Allouche to merge my changes into
the PyArch mainline.
Enjoy!
Aaron
From the README:
FAI (The Friendly Arch Interface) 0.2 (aka pyaba)
Fai is a commandline-based Arch tool with interactive prompting. It
aims to be a better commandline user interface than tla. By combining
functionality that is handled as separate commands in tla, it aims to
have smaller command
set than tla.
What's there now?
* Compatibility with aba commands
* Alias expansion (no prefix required for native commands)
* Automatic aliases; these determine the revision by performing functions
* tla fallthrough (to be removed when redundant)
* smart colorizing (which can be turned off)
* prompts that can be configured to take defaults
Commands: ('fai help -n' for a full list)
* get: an improved get that can use URLs and automatically create
local mirrors.
* revisions: a combination of logs, missing, revisions, cachedrevs, etc.
also provides:
--missing-from (which of my revisions are missing from the
target?)
--modified (which revisions modified this file?)
--modified (which revisions modified this file?)
--ancestry (iterates through the tree's patchlog ancestry)
* commit: prompts on empty commits, missing log messages
* update: updates to the requested revision, while retaining local
changes.
prompts to change tree version.
* revert: undo command that can undo specific types of changes
* changes: can take two arguments, making delta redundant
What's coming soon?
More native implementations of the common commands.
An init command that will do my-id, make-archive, archive-setup,
init-tree
Option defaults are high on the list, too.
Aren't you that guy who wrote that aba thing?
Yeah. aba's nice and all, but POSIX shell isn't my favourite
language. It's not geared at producing reliable, unambiguous programs.
I won't say "impossible", since the original Arch implementation was
in shell. Python (like many other languages) has facilities that make
it *easy* to write dependable programs. Things like variable scope,
string manipulation and exceptions are not to be sneezed at.
But I wrote an aba command!
Fai supports aba's external commands, which make up 78% of the aba tree
anyway. So Fai (like aba) is extensible in any language, but Python
commands
have full access to Fai's tools.
What about pyaba?
Fai is just a new name for pyaba. I hate programs that are named for
their programming language. The language is a tool, not your program's
raison d'etre. (If the language *is* your program's reason for being,
don't write it!) On the other hand, PyArch makes sense, because it's
Python-specific.
NOTES
revisions --modified works on filenames, not inventory ids, so it
doesn't track renames.
revisions --modified FILE:LINE uses the line's contents to check for
matches,
so it will generate false matches. It's also kinda slow, since it gets
the changesets for revisions that modify a file.
the tdate alias behaves strangely if no day is specified.
Aaron
--
Aaron Bentley
Director of Technology
Panometrics, Inc.
- [Gnu-arch-users] Release announcement: Fai (pyaba) 0.2,
Aaron Bentley <=