Skip to content

Commit cdd4e80

Browse files
committed
Move swift/codegen to misc/codegen
1 parent 6d192cd commit cdd4e80

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+116
-86
lines changed

.github/workflows/swift.yml

+2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
paths:
66
- "swift/**"
77
- "misc/bazel/**"
8+
- "misc/codegen/**"
89
- "*.bazel*"
910
- .github/workflows/swift.yml
1011
- .github/actions/**
@@ -19,6 +20,7 @@ on:
1920
paths:
2021
- "swift/**"
2122
- "misc/bazel/**"
23+
- "misc/codegen/**"
2224
- "*.bazel*"
2325
- .github/workflows/swift.yml
2426
- .github/actions/**

.pre-commit-config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,5 @@ repos:
5353
name: Run Swift code generation unit tests
5454
files: ^swift/codegen/.*\.py$
5555
language: system
56-
entry: bazel test //swift/codegen/test
56+
entry: bazel test //misc/codegen/test
5757
pass_filenames: false

CODEOWNERS

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
/python/ @github/codeql-dynamic
77
/ruby/ @github/codeql-dynamic
88
/swift/ @github/codeql-swift
9+
/misc/codegen/ @github/codeql-swift
910
/java/kotlin-extractor/ @github/codeql-kotlin
1011
/java/kotlin-explorer/ @github/codeql-kotlin
1112

misc/bazel/workspace.bzl

+10
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,13 @@ def codeql_workspace(repository_name = "codeql"):
3333
"https://github.com/bazelbuild/rules_python/archive/refs/tags/0.8.1.tar.gz",
3434
],
3535
)
36+
37+
maybe(
38+
repo_rule = http_archive,
39+
name = "bazel_skylib",
40+
sha256 = "b8a1527901774180afc798aeb28c4634bdccf19c4d98e7bdd1ce79d1fe9aaad7",
41+
urls = [
42+
"https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.4.1/bazel-skylib-1.4.1.tar.gz",
43+
"https://github.com/bazelbuild/bazel-skylib/releases/download/1.4.1/bazel-skylib-1.4.1.tar.gz",
44+
],
45+
)

misc/bazel/workspace_deps.bzl

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
22
load("@rules_python//python:pip.bzl", "pip_install")
3+
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
34

45
def codeql_workspace_deps(repository_name = "codeql"):
56
pip_install(
6-
name = "swift_codegen_deps",
7-
requirements = "@%s//swift/codegen:requirements.txt" % repository_name,
7+
name = "codegen_deps",
8+
requirements = "@%s//misc/codegen:requirements.txt" % repository_name,
89
)
10+
bazel_skylib_workspace()
911
rules_pkg_dependencies()
File renamed without changes.

misc/codegen/BUILD.bazel

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
load("@codegen_deps//:requirements.bzl", "requirement")
2+
3+
py_binary(
4+
name = "codegen",
5+
srcs = ["codegen.py"],
6+
data = [
7+
"//misc/codegen/templates:cpp",
8+
"//misc/codegen/templates:trap",
9+
],
10+
visibility = ["//visibility:public"],
11+
deps = [
12+
"//misc/codegen/generators",
13+
],
14+
)

swift/codegen/README.md renamed to misc/codegen/README.md

+4-4

swift/codegen/codegen.py renamed to misc/codegen/codegen.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
_repo_root = pathlib.Path(__file__).resolve().parents[2]
1515
sys.path.append(str(_repo_root))
1616

17-
from swift.codegen.lib import render, paths
18-
from swift.codegen.generators import generate
17+
from misc.codegen.lib import render, paths
18+
from misc.codegen.generators import generate
1919

2020

2121
def _parse_args() -> argparse.Namespace:

misc/codegen/generators/BUILD.bazel

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
load("@codegen_deps//:requirements.bzl", "requirement")
2+
3+
py_library(
4+
name = "generators",
5+
srcs = glob(["*.py"]),
6+
visibility = ["//misc/codegen:__subpackages__"],
7+
deps = [
8+
"//misc/codegen/lib",
9+
"//misc/codegen/loaders",
10+
],
11+
)

swift/codegen/generators/cppgen.py renamed to misc/codegen/generators/cppgen.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
import inflection
1818

19-
from swift.codegen.lib import cpp, schema
20-
from swift.codegen.loaders import schemaloader
19+
from misc.codegen.lib import cpp, schema
20+
from misc.codegen.loaders import schemaloader
2121

2222

2323
def _get_type(t: str, add_or_none_except: typing.Optional[str] = None) -> str:

swift/codegen/generators/dbschemegen.py renamed to misc/codegen/generators/dbschemegen.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717

1818
import inflection
1919

20-
from swift.codegen.lib import schema
21-
from swift.codegen.loaders import schemaloader
22-
from swift.codegen.lib.dbscheme import *
20+
from misc.codegen.lib import schema
21+
from misc.codegen.loaders import schemaloader
22+
from misc.codegen.lib.dbscheme import *
2323

2424
log = logging.getLogger(__name__)
2525

swift/codegen/generators/qlgen.py renamed to misc/codegen/generators/qlgen.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929

3030
import inflection
3131

32-
from swift.codegen.lib import schema, ql
33-
from swift.codegen.loaders import schemaloader
32+
from misc.codegen.lib import schema, ql
33+
from misc.codegen.loaders import schemaloader
3434

3535
log = logging.getLogger(__name__)
3636

swift/codegen/generators/trapgen.py renamed to misc/codegen/generators/trapgen.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
import inflection
1818
from toposort import toposort_flatten
1919

20-
from swift.codegen.lib import dbscheme, cpp
21-
from swift.codegen.loaders import dbschemeloader
20+
from misc.codegen.lib import dbscheme, cpp
21+
from misc.codegen.loaders import dbschemeloader
2222

2323
log = logging.getLogger(__name__)
2424

swift/codegen/lib/BUILD.bazel renamed to misc/codegen/lib/BUILD.bazel

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
load("@swift_codegen_deps//:requirements.bzl", "requirement")
1+
load("@codegen_deps//:requirements.bzl", "requirement")
22

33
py_library(
44
name = "lib",
55
srcs = glob(["*.py"]),
6-
visibility = ["//swift/codegen:__subpackages__"],
6+
visibility = ["//misc/codegen:__subpackages__"],
77
deps = [
88
requirement("pystache"),
99
requirement("inflection"),
File renamed without changes.
File renamed without changes.

swift/codegen/lib/paths.py renamed to misc/codegen/lib/paths.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@
44
import sys
55
import os
66

7+
_this_file = pathlib.Path(__file__).resolve()
8+
79
try:
810
workspace_dir = pathlib.Path(os.environ['BUILD_WORKSPACE_DIRECTORY']).resolve() # <- means we are using bazel run
911
root_dir = workspace_dir / 'swift'
1012
except KeyError:
11-
_this_file = pathlib.Path(__file__).resolve()
1213
root_dir = _this_file.parents[2]
1314
workspace_dir = root_dir.parent
1415

15-
lib_dir = root_dir / 'codegen' / 'lib'
16-
templates_dir = root_dir / 'codegen' / 'templates'
16+
lib_dir = _this_file.parents[2] / 'codegen' / 'lib'
17+
templates_dir = _this_file.parents[2] / 'codegen' / 'templates'
1718

1819
exe_file = pathlib.Path(sys.argv[0]).resolve()
File renamed without changes.
File renamed without changes.
File renamed without changes.

swift/codegen/schemadefs.py renamed to misc/codegen/lib/schemadefs.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from typing import Callable as _Callable
2-
from swift.codegen.lib import schema as _schema
2+
from misc.codegen.lib import schema as _schema
33
import inspect as _inspect
44
from dataclasses import dataclass as _dataclass
55

swift/codegen/loaders/BUILD.bazel renamed to misc/codegen/loaders/BUILD.bazel

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
load("@swift_codegen_deps//:requirements.bzl", "requirement")
1+
load("@codegen_deps//:requirements.bzl", "requirement")
22

33
py_library(
44
name = "loaders",
55
srcs = glob(["*.py"]),
6-
visibility = ["//swift/codegen:__subpackages__"],
6+
visibility = ["//misc/codegen:__subpackages__"],
77
deps = [
88
requirement("toposort"),
99
requirement("inflection"),

swift/codegen/loaders/dbschemeloader.py renamed to misc/codegen/loaders/dbschemeloader.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import pathlib
22
import re
3-
from swift.codegen.lib import dbscheme
3+
from misc.codegen.lib import dbscheme
44

55

66
class _Re:

swift/codegen/loaders/schemaloader.py renamed to misc/codegen/loaders/schemaloader.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from dataclasses import dataclass
99
from toposort import toposort_flatten
1010

11-
from swift.codegen.lib import schema, schemadefs
11+
from misc.codegen.lib import schema, schemadefs
1212

1313

1414
@dataclass
@@ -99,7 +99,7 @@ def load(m: types.ModuleType) -> schema.Schema:
9999
classes = {}
100100
known = {"int", "string", "boolean"}
101101
known.update(n for n in m.__dict__ if not n.startswith("__"))
102-
import swift.codegen.lib.schemadefs as defs
102+
import misc.codegen.lib.schemadefs as defs
103103
null = None
104104
for name, data in m.__dict__.items():
105105
if hasattr(defs, name):
File renamed without changes.

swift/codegen/lib/schemadefs.py renamed to misc/codegen/schemadefs.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from typing import Callable as _Callable
2-
from swift.codegen.lib import schema as _schema
2+
from misc.codegen.lib import schema as _schema
33
import inspect as _inspect
44
from dataclasses import dataclass as _dataclass
55

swift/codegen/templates/BUILD.bazel renamed to misc/codegen/templates/BUILD.bazel

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package(default_visibility = ["//swift:__subpackages__"])
1+
package(default_visibility = ["//misc/codegen:__subpackages__"])
22

33
filegroup(
44
name = "trap",

swift/codegen/test/BUILD.bazel renamed to misc/codegen/test/BUILD.bazel

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
load("@swift_codegen_deps//:requirements.bzl", "requirement")
1+
load("@codegen_deps//:requirements.bzl", "requirement")
22

33
py_library(
44
name = "utils",
55
testonly = True,
66
srcs = ["utils.py"],
77
deps = [
8-
"//swift/codegen/lib",
8+
"//misc/codegen/lib",
99
requirement("pytest"),
1010
],
1111
)
@@ -17,7 +17,7 @@ py_library(
1717
srcs = [src],
1818
deps = [
1919
":utils",
20-
"//swift/codegen/generators",
20+
"//misc/codegen/generators",
2121
],
2222
)
2323
for src in glob(["test_*.py"])

swift/codegen/test/test_cpp.py renamed to misc/codegen/test/test_cpp.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
import pytest
55

6-
from swift.codegen.lib import cpp
6+
from misc.codegen.lib import cpp
77

88

99
@pytest.mark.parametrize("keyword", cpp.cpp_keywords)

swift/codegen/test/test_cppgen.py renamed to misc/codegen/test/test_cppgen.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import sys
22

3-
from swift.codegen.generators import cppgen
4-
from swift.codegen.lib import cpp
5-
from swift.codegen.test.utils import *
3+
from misc.codegen.generators import cppgen
4+
from misc.codegen.lib import cpp
5+
from misc.codegen.test.utils import *
66

77
output_dir = pathlib.Path("path", "to", "output")
88

swift/codegen/test/test_dbscheme.py renamed to misc/codegen/test/test_dbscheme.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import sys
22
from copy import deepcopy
33

4-
from swift.codegen.lib import dbscheme
5-
from swift.codegen.test.utils import *
4+
from misc.codegen.lib import dbscheme
5+
from misc.codegen.test.utils import *
66

77

88
def test_dbcolumn_name():

swift/codegen/test/test_dbschemegen.py renamed to misc/codegen/test/test_dbschemegen.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import collections
22
import sys
33

4-
from swift.codegen.generators import dbschemegen
5-
from swift.codegen.lib import dbscheme
6-
from swift.codegen.test.utils import *
4+
from misc.codegen.generators import dbschemegen
5+
from misc.codegen.lib import dbscheme
6+
from misc.codegen.test.utils import *
77

88
InputExpectedPair = collections.namedtuple("InputExpectedPair", ("input", "expected"))
99

swift/codegen/test/test_dbschemelaoder.py renamed to misc/codegen/test/test_dbschemelaoder.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import sys
22
from copy import deepcopy
33

4-
from swift.codegen.lib import dbscheme
5-
from swift.codegen.loaders.dbschemeloader import iterload
6-
from swift.codegen.test.utils import *
4+
from misc.codegen.lib import dbscheme
5+
from misc.codegen.loaders.dbschemeloader import iterload
6+
from misc.codegen.test.utils import *
77

88

99
@pytest.fixture

swift/codegen/test/test_ql.py renamed to misc/codegen/test/test_ql.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import sys
22
from copy import deepcopy
33

4-
from swift.codegen.lib import ql
5-
from swift.codegen.test.utils import *
4+
from misc.codegen.lib import ql
5+
from misc.codegen.test.utils import *
66

77

88
def test_property_has_first_table_param_marked():

swift/codegen/test/test_qlgen.py renamed to misc/codegen/test/test_qlgen.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
import pytest
66

7-
from swift.codegen.generators import qlgen
8-
from swift.codegen.lib import ql
9-
from swift.codegen.test.utils import *
7+
from misc.codegen.generators import qlgen
8+
from misc.codegen.lib import ql
9+
from misc.codegen.test.utils import *
1010

1111

1212
@pytest.fixture(autouse=True)

swift/codegen/test/test_render.py renamed to misc/codegen/test/test_render.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import pytest
44

5-
from swift.codegen.test.utils import *
5+
from misc.codegen.test.utils import *
66

77
import hashlib
88

swift/codegen/test/test_schemaloader.py renamed to misc/codegen/test/test_schemaloader.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
import pytest
44

5-
from swift.codegen.test.utils import *
6-
from swift.codegen.lib import schemadefs as defs
7-
from swift.codegen.loaders.schemaloader import load
5+
from misc.codegen.test.utils import *
6+
from misc.codegen.lib import schemadefs as defs
7+
from misc.codegen.loaders.schemaloader import load
88

99

1010
def test_empty_schema():

0 commit comments

Comments
 (0)