|
Paraslash Audio Streaming |
About News Download Documentation Development |
Most of the development happens in topic branches where each development topic corresponds to one git branch. Each topic branch is merged into either of two integration branches named next and pu ("proposed updates"). The integration branches are pushed to the public repository but the topic branches are not.
Topics in early development are only merged into the pu integration branch. When the topic is feature-complete, has been tested, has no known bugs, and is fully documented, it graduates to next. Thus, topics in next are expected to be of higher quality than those in pu.
When a topic is ready for mainline, it is merged into the master integration branch and vanishes from here, since it is no longer considered as being in development. Since releases are cut from master, the commits of the topic will become part of the next release.
The table below shows the current development topics. Run git
checkout pu
to get all topics or git checkout next
to enable only the mature topics.
Topic | IB | #C | Description |
---|---|---|---|
afh | pu | 6 | Require libid3tag for mp3, cleanups |
doxygen | pu | 33 | Improve the API reference web page |
misc | pu | 7 | Smallish changes for master |
rm_sha1 | next | 4 | Remove all traces of sha1 |
Pass the hash value shown as sha1 below to git
checkout
to check out one particular topic branch.
A small series which cleans up audio format handlers. In particular, some rarely tested code of the mp3 audio format handler has been removed.
Makefile.in | 1 +
Makefile.real | 26 +++++++++++++-----
aac_afh.c | 3 +--
afh.c | 2 +-
afh.h | 7 +++--
afh_common.c | 41 ++++++++++------------------
afh_recv.c | 3 +--
aft.c | 2 +-
flac_afh.c | 2 +-
mp3_afh.c | 80 +++++++------------------------------------------------
ogg_afh.c | 2 +-
opus_afh.c | 3 +--
spx_afh.c | 3 +--
t/t0004-server.sh | 16 +++++------
web/manual.md | 13 +++------
wma_afh.c | 3 +--
16 files changed, 67 insertions(+), 140 deletions(-)
This revamps the doxygen part of the documentation web page, adding a couple of entry points for users to get started with the code base. We provide links to header files which describe the API of central subsystems and links to the main file of each paraslash executable.
The \file comment of the source files reachable through these links have been extended to contain a detailed description of the API or executable. Unlike the introductory text of the manual pages, these comments focus on the code, particularly the interaction between the various subsystems.
This also reactivates the source browser, since it is actually quite useful to quickly check for some detail.
aacdec_filter.c | 2 +
afh.c | 34 ++++--
afh.h | 95 ++++++++++------
afh_common.c | 90 ++++++++-------
afh_recv.c | 2 +
afs.c | 2 +-
afs.h | 116 +++++++++++--------
alsa_write.c | 3 +-
amp_filter.c | 2 +
ao_write.c | 3 +-
audioc.c | 25 +++--
audiod.c | 110 ++++++++++--------
audiod_command.c | 4 +-
buffer_tree.h | 5 +-
client.c | 27 ++++-
command.h | 11 +-
compress_filter.c | 2 +
crypt.h | 69 +++++++-----
dccp_recv.c | 2 +
error.h | 54 +++++----
fec.h | 25 ++++-
fecdec_filter.c | 2 +
file_write.c | 3 +-
filter.c | 46 ++++----
filter.h | 85 +++++++++-----
flacdec_filter.c | 2 +
gui.c | 50 ++++++---
http_recv.c | 2 +
interactive.h | 28 ++++-
mixer.c | 33 ++++--
mp3dec_filter.c | 2 +
oggdec_filter.c | 2 +
opusdec_filter.c | 2 +
oss_write.c | 2 +
play.c | 54 +++++----
prebuffer_filter.c | 2 +
recv.c | 35 ++++--
recv.h | 15 ++-
resample_filter.c | 2 +
sched.c | 6 +-
sched.h | 39 ++++---
send.h | 107 ++++++++++--------
send_common.c | 2 +-
server.c | 36 ++++--
spxdec_filter.c | 2 +
sync_filter.c | 2 +
udp_recv.c | 2 +
vss.c | 121 ++++++++++----------
vss.h | 29 +++--
wav_filter.c | 2 +
Doxyfile => web/Doxyfile | 14 +--
web/DoxygenLayout.xml | 21 ++++
web/documentation.in.html | 71 ++++++++++--
web/para.css | 276 +---------------------------------------------
wmadec_filter.c | 2 +
write.c | 33 ++++--
write.h | 34 +++++-
write_common.c | 2 +-
58 files changed, 1044 insertions(+), 807 deletions(-)
The stuff in here is too small to get its own topic branch. The commits are generally regarded as safe enough to be applied directly to “master” without cooking in “next” first. However, if a commit induces a merge conflict or is important enough to get mentioned in an item of the NEWS file, the commit should get a dedicated topic branch.
Unlike most other topic branches, this branch never promotes to “next”. When a set of commits is ready to graduate to “master”, the branch is rebased onto “master” and its commits are re-ordered so that the graduating commits appear at the beginning. The last such commit is merged to “master”. This always results in a fast-forward merge, so no merge message needs to be supplied.
afs.c | 14 ++++++--------
aft.c | 52 +++++++++++-----------------------------------------
attribute.c | 6 +++---
audioc.c | 14 ++++++--------
audiod.c | 22 +++++++++++-----------
blob.c | 4 ++--
client.c | 33 ++++++++++++++++-----------------
error.h | 25 +++++--------------------
filter.c | 14 ++++++--------
gui.c | 14 +++++++-------
mood.c | 8 +++++++-
play.c | 21 ++++++++++-----------
playlist.c | 10 ++++++++--
recv.c | 14 ++++++--------
sched.c | 50 ++++++++++++++++++++++++++++++++++++++++++++------
sched.h | 34 ++--------------------------------
score.c | 4 ++--
server.c | 28 +++++++++++++---------------
write.c | 13 ++++++-------
19 files changed, 171 insertions(+), 209 deletions(-)
The series first drops the para_upgrade_db executable because it is no longer needed. This removes the penultimate user of the sha1 infrastructure. The remaining user is the handshake between para_client and para_server.
Since paraslash-0.7.0, client and server employ sha256 by default, but fall back to sha1 in order to stay compatible to old 0.6.x versions. This series instructs server and client to always employ sha256 as the hash algorithm, breaking compatibility with 0.6.x clients. As a result, the sha1 hash algorithm is no longer used anywhere, so the corresponding infrastructure is no longer needed. This gets rid of a fair amount of code.
Makefile.real | 9 +-
aft.c | 44 +++---
client_common.c | 43 ++---
command.c | 36 ++---
crypt.h | 49 +-----
crypt_common.c | 25 ---
gcrypt.c | 18 +--
m4/lls/upgrade_db.suite.m4 | 33 ----
openssl.c | 15 --
upgrade_db.c | 384 ---------------------------------------------
web/documentation.in.html | 1 -
11 files changed, 48 insertions(+), 609 deletions(-)