//----------------------------------------------------------------------------
//
// TSDuck - The MPEG Transport Stream Toolkit
// Copyright (c) 2005-2025, Thierry Lelegard
// BSD-2-Clause license, see LICENSE.txt file or https://tsduck.io/license
//
//----------------------------------------------------------------------------

[#chap-maintenance]
== Maintaining TSDuck Code

This chapter is dedicated to TSDuck maintainers and contributors.

The first sections describe the testing and automation processes which drive the evolutions of the project.
The last sections focus on various technical topics such as the modular structure of the project,
adding new signalization tables and descriptors, the internal design of the `tsp` utility,
the support of hardware devices, etc.

This chapter is meant to help developers.
It does not pretend to cover all technical topics in TSDuck and remains a work in progress.
As usual, remember that "the answer is in the code".

include::104-01-testing.adoc[]
include::104-02-automation.adoc[]
include::104-03-modularity.adoc[]
include::104-04-new-signalization.adoc[]
include::104-05-tsp-design.adoc[]
include::104-06-hardware.adoc[]
