• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pantsbuild / pants / 19015773527

02 Nov 2025 05:33PM UTC coverage: 17.872% (-62.4%) from 80.3%
19015773527

Pull #22816

github

web-flow
Merge a12d75757 into 6c024e162
Pull Request #22816: Update Pants internal Python to 3.14

4 of 5 new or added lines in 3 files covered. (80.0%)

28452 existing lines in 683 files now uncovered.

9831 of 55007 relevant lines covered (17.87%)

0.18 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/python/pants/backend/sql/target_types.py
1
# Copyright 2024 Pants project contributors (see CONTRIBUTORS.md).
2
# Licensed under the Apache License, Version 2.0 (see LICENSE).
3

UNCOV
4
from pants.backend.python.target_types import PexBinary
×
UNCOV
5
from pants.core.target_types import ResourcesGeneratorTarget, ResourceSourceField, ResourceTarget
×
UNCOV
6
from pants.engine.target import (
×
7
    COMMON_TARGET_FIELDS,
8
    Dependencies,
9
    MultipleSourcesField,
10
    OverridesField,
11
    Target,
12
    TargetFilesGenerator,
13
    generate_file_based_overrides_field_help_message,
14
    generate_multiple_sources_field_help_message,
15
)
UNCOV
16
from pants.util.strutil import help_text
×
17

18

19
# Subclassing ResourceSourceField will make sure the sql is included in
20
# distributions as a resource.
UNCOV
21
class SqlSourceField(ResourceSourceField):
×
UNCOV
22
    pass
×
23

24

UNCOV
25
class SqlDependenciesField(Dependencies):
×
UNCOV
26
    pass
×
27

28

UNCOV
29
class SqlSourcesGeneratingSourcesField(MultipleSourcesField):
×
UNCOV
30
    default = ("*.sql",)
×
UNCOV
31
    help = generate_multiple_sources_field_help_message(
×
32
        "Example: `sources=['example.sql', 'new_*.sql', '!old_ignore.sql']`"
33
    )
34

35

UNCOV
36
class SqlSourceTarget(Target):
×
UNCOV
37
    alias = "sql_source"
×
UNCOV
38
    core_fields = (
×
39
        *COMMON_TARGET_FIELDS,
40
        SqlSourceField,
41
        SqlDependenciesField,
42
    )
UNCOV
43
    help = help_text(
×
44
        f"""
45
        A single SQL source file.
46

47
        `{alias}` is treated like `{ResourceTarget.alias}` by other targets like
48
        `{PexBinary.alias}`.
49
        """
50
    )
51

52

UNCOV
53
class SqlSourcesOverridesField(OverridesField):
×
UNCOV
54
    help = generate_file_based_overrides_field_help_message(
×
55
        SqlSourceTarget.alias,
56
        """
57
        overrides={
58
            "query.sql": {"skip_sqlfluff": True},
59
            ("upload.sql", "download.sql"): {"tags": ["hive"]},
60
        }
61
        """,
62
    )
63

64

UNCOV
65
class SqlSourcesGeneratorTarget(TargetFilesGenerator):
×
UNCOV
66
    alias = "sql_sources"
×
UNCOV
67
    core_fields = (
×
68
        *COMMON_TARGET_FIELDS,
69
        SqlSourcesGeneratingSourcesField,
70
        SqlSourcesOverridesField,
71
    )
UNCOV
72
    generated_target_cls = SqlSourceTarget
×
UNCOV
73
    copied_fields = COMMON_TARGET_FIELDS
×
UNCOV
74
    moved_fields = (SqlDependenciesField,)
×
UNCOV
75
    help = help_text(
×
76
        f"""
77
        Generate a `{SqlSourceTarget.alias}` target for each file in the
78
        `sources` field.
79

80
        `{alias}` are treated like `{ResourcesGeneratorTarget.alias}` by other
81
        targets like `{PexBinary.alias}`.
82
        """
83
    )
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc