ats_utilities.info.component_bundle module

Module

component_bundle.py

Copyright

Copyright (C) 2017 - 2026 Vladimir Roncevic <elektron.ronca@gmail.com> ats_utilities is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ats_utilities is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Info

Defines component bundle data classe for dependency group simplification. Encapsulates info components to minimize constructor overhead.

class ats_utilities.info.component_bundle.InfoComponentBundle(name: IName | None = None, version: IVersion | None = None, licence: ILicence | None = None, build_date: IBuildDate | None = None, repository: IRepository | None = None, organization: IOrganization | None = None, use_github: IUseGitHub | None = None, logo_path: ILogoPath | None = None, info_ok: IInfoOk | None = None, context_bundle: ContextBundle | None = None)[source]

Bases: object

Defines component bundle data classe for dependency group simplification. Encapsulates info components to minimize constructor overhead.

It defines:

attributes:
name - The ATS name (default None).
version - The ATS version (default None).
licence - The ATS licence (default None).
build_date - The ATS build date (default None).
repository - The ATS repository (default None).
organization - The ATS organization (default None).
use_github - The ATS use GitHub infrastructure status (default None).
logo_path - The ATS logo path (default None).
info_ok - The ATS information status (default None).
context_bundle - The context bundle (default None).
methods:
validate - Validates that essential components are set.
merge - Merges non-None values from another bundle into this one.
to_dict - Converts the bundle attributes to a dictionary.
build_date: IBuildDate | None = None
context_bundle: ContextBundle | None = None
info_ok: IInfoOk | None = None
licence: ILicence | None = None
logo_path: ILogoPath | None = None
merge(other: InfoComponentBundle) None[source]

Merges non-None values from another bundle into this one.

Parameters:

other (<InfoComponentBundle>) – Another bundle to merge into this one.

Exceptions:

None.

name: IName | None = None
organization: IOrganization | None = None
repository: IRepository | None = None
to_dict() dict[source]

Converts the bundle attributes to a dictionary.

Returns:

Dictionary representation of the bundle attributes.

Return type:

<dict>

Exceptions:

None.

use_github: IUseGitHub | None = None
validate() None[source]

Validates that essential components are set.

Exceptions:

ATSValueError.

version: IVersion | None = None