Directory reorg: move code into redo/, generate binaries in bin/.
It's time to start preparing for a version of redo that doesn't work unless we build it first (because it will rely on C modules, and eventually be rewritten in C altogether). To get rolling, remove the old-style symlinks to the main programs, and rename those programs from redo-*.py to redo/cmd_*.py. We'll also move all library functions into the redo/ dir, which is a more python-style naming convention. Previously, install.do was generating wrappers for installing in /usr/bin, which extend sys.path and then import+run the right file. This made "installed" redo work quite differently from running redo inside its source tree. Instead, let's always generate the wrappers in bin/, and not make anything executable except those wrappers. Since we're generating wrappers anyway, let's actually auto-detect the right version of python for the running system; distros can't seem to agree on what to call their python2 binaries (sigh). We'll fill in the right #! shebang lines. Since we're doing that, we can stop using /usr/bin/env, which will a) make things slightly faster, and b) let us use "python -S", which tells python not to load a bunch of extra crap we're not using, thus improving startup times. Annoyingly, we now have to build redo using minimal/do, then run the tests using bin/redo. To make this less annoying, we add a toplevel ./do script that knows the right steps, and a Makefile (whee!) for people who are used to typing 'make' and 'make test' and 'make clean'.
This commit is contained in:
parent
5bc7c861b6
commit
f6fe00db5c
140 changed files with 256 additions and 99 deletions
|
|
@ -1,67 +0,0 @@
|
|||
# License
|
||||
|
||||
My version of redo was written without ever seeing redo code by Bernstein or
|
||||
Grosskurth, so I own the entire copyright. It's distributed under the terms
|
||||
of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0),
|
||||
which you can find in the file called
|
||||
[LICENSE](https://github.com/apenwarr/redo/tree/master/LICENSE). (Previous
|
||||
versions of redo were distributed under the GNU LGPL, but this [changed in
|
||||
2018](https://groups.google.com/forum/#!topic/redo-list/wLMZMxtn4wo).)
|
||||
|
||||
minimal/do is in the public domain so that it's as easy as possible
|
||||
to include inside your own projects, to help end users who don't
|
||||
have a copy of redo.
|
||||
|
||||
|
||||
# How can I help?
|
||||
|
||||
Nowadays, redo is good enough for real production use, and some people
|
||||
are using it for real work. That said, it has
|
||||
not reached version 1.0 and there are surely still bugs.
|
||||
|
||||
If you run into a problem, it's really helpful if you report it to the
|
||||
mailing list below (with or without subscribing first). We really want to
|
||||
know if redo is acting weird for you. Even if the problem turns out to be
|
||||
operator error, we can use that information to try to improve this
|
||||
documentation.
|
||||
|
||||
Small feature additions are also welcome, but you might want to ask on the
|
||||
mailing list before you start working on it. The code is still evolving and
|
||||
might not be the same by the time you submit your pull request.
|
||||
|
||||
The best things you can do for redo are:
|
||||
|
||||
- Convert your projects to using it. Without users, no project is
|
||||
successful.
|
||||
|
||||
- Build new infrastructure around redo, especially things to make it easier
|
||||
for people to get started. For example, an automake-like tool that filled
|
||||
in default redo build rules for common program types would probably be
|
||||
very popular.
|
||||
|
||||
- Convince your favourite OS distro to build and include (up to date!) redo
|
||||
packages.
|
||||
|
||||
- Help proofreading this documentation, and send patches or pull requests
|
||||
with improvements.
|
||||
|
||||
- Join the mailing list (below) to discuss design changes or bugs.
|
||||
|
||||
- Tell your friends!
|
||||
|
||||
|
||||
# Mailing list
|
||||
|
||||
You should join the `redo-list@googlegroups.com` mailing list.
|
||||
|
||||
You can find the mailing list archives here:
|
||||
<http://groups.google.com/group/redo-list>
|
||||
|
||||
It might not look like it, but you can subscribe without having a
|
||||
Google Account. Just send a message to
|
||||
`redo-list+subscribe@googlegroups.com` (note the plus sign).
|
||||
|
||||
It's okay to send a message directly to the mailing list
|
||||
without subscribing first. If you reply to someone who writes to the
|
||||
list, please leave them in the cc: list, since if they
|
||||
haven't subscribed, they won't get your reply otherwise.
|
||||
Loading…
Add table
Add a link
Reference in a new issue