dda 0.4.4.dev3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. dda-0.4.4.dev3/.gitattributes +2 -0
  2. dda-0.4.4.dev3/.github/dependabot.yml +10 -0
  3. dda-0.4.4.dev3/.github/workflows/build-distributions.yml +191 -0
  4. dda-0.4.4.dev3/.github/workflows/build.yml +590 -0
  5. dda-0.4.4.dev3/.github/workflows/test.yml +93 -0
  6. dda-0.4.4.dev3/.gitignore +26 -0
  7. dda-0.4.4.dev3/CHANGELOG.md +67 -0
  8. dda-0.4.4.dev3/LICENSE.txt +9 -0
  9. dda-0.4.4.dev3/PKG-INFO +47 -0
  10. dda-0.4.4.dev3/README.md +17 -0
  11. dda-0.4.4.dev3/hatch.toml +18 -0
  12. dda-0.4.4.dev3/pyoxidizer.bzl +82 -0
  13. dda-0.4.4.dev3/pyproject.toml +246 -0
  14. dda-0.4.4.dev3/release/README.md +5 -0
  15. dda-0.4.4.dev3/release/macos/build_pkg.py +119 -0
  16. dda-0.4.4.dev3/release/macos/pkg/distribution.xml +22 -0
  17. dda-0.4.4.dev3/release/macos/pkg/resources/icon.png +0 -0
  18. dda-0.4.4.dev3/release/unix/make_scripts_portable.py +53 -0
  19. dda-0.4.4.dev3/release/windows/make_scripts_portable.py +92 -0
  20. dda-0.4.4.dev3/ruff.toml +22 -0
  21. dda-0.4.4.dev3/ruff_defaults.toml +682 -0
  22. dda-0.4.4.dev3/src/deva/__init__.py +3 -0
  23. dda-0.4.4.dev3/src/deva/__main__.py +6 -0
  24. dda-0.4.4.dev3/src/deva/_version.py +16 -0
  25. dda-0.4.4.dev3/src/deva/cli/__init__.py +186 -0
  26. dda-0.4.4.dev3/src/deva/cli/application.py +61 -0
  27. dda-0.4.4.dev3/src/deva/cli/base.py +231 -0
  28. dda-0.4.4.dev3/src/deva/cli/config/__init__.py +20 -0
  29. dda-0.4.4.dev3/src/deva/cli/config/explore/__init__.py +20 -0
  30. dda-0.4.4.dev3/src/deva/cli/config/find/__init__.py +20 -0
  31. dda-0.4.4.dev3/src/deva/cli/config/restore/__init__.py +21 -0
  32. dda-0.4.4.dev3/src/deva/cli/config/set/__init__.py +94 -0
  33. dda-0.4.4.dev3/src/deva/cli/config/show/__init__.py +22 -0
  34. dda-0.4.4.dev3/src/deva/cli/env/__init__.py +14 -0
  35. dda-0.4.4.dev3/src/deva/cli/env/dev/__init__.py +24 -0
  36. dda-0.4.4.dev3/src/deva/cli/env/dev/code/__init__.py +39 -0
  37. dda-0.4.4.dev3/src/deva/cli/env/dev/gui/__init__.py +41 -0
  38. dda-0.4.4.dev3/src/deva/cli/env/dev/ls/__init__.py +52 -0
  39. dda-0.4.4.dev3/src/deva/cli/env/dev/remove/__init__.py +42 -0
  40. dda-0.4.4.dev3/src/deva/cli/env/dev/run/__init__.py +49 -0
  41. dda-0.4.4.dev3/src/deva/cli/env/dev/shell/__init__.py +39 -0
  42. dda-0.4.4.dev3/src/deva/cli/env/dev/start/__init__.py +82 -0
  43. dda-0.4.4.dev3/src/deva/cli/env/dev/status/__init__.py +35 -0
  44. dda-0.4.4.dev3/src/deva/cli/env/dev/stop/__init__.py +44 -0
  45. dda-0.4.4.dev3/src/deva/cli/env/dev/utils.py +43 -0
  46. dda-0.4.4.dev3/src/deva/cli/inv/__init__.py +59 -0
  47. dda-0.4.4.dev3/src/deva/cli/self/__init__.py +29 -0
  48. dda-0.4.4.dev3/src/deva/cli/self/dep/__init__.py +17 -0
  49. dda-0.4.4.dev3/src/deva/cli/self/dep/lock/Dockerfile +8 -0
  50. dda-0.4.4.dev3/src/deva/cli/self/dep/lock/__init__.py +69 -0
  51. dda-0.4.4.dev3/src/deva/cli/self/dep/sync/__init__.py +29 -0
  52. dda-0.4.4.dev3/src/deva/cli/self/remove/__init__.py +23 -0
  53. dda-0.4.4.dev3/src/deva/cli/self/restore/__init__.py +23 -0
  54. dda-0.4.4.dev3/src/deva/cli/self/update/__init__.py +23 -0
  55. dda-0.4.4.dev3/src/deva/cli/terminal.py +210 -0
  56. dda-0.4.4.dev3/src/deva/config/__init__.py +3 -0
  57. dda-0.4.4.dev3/src/deva/config/constants.py +32 -0
  58. dda-0.4.4.dev3/src/deva/config/file.py +71 -0
  59. dda-0.4.4.dev3/src/deva/config/model/__init__.py +61 -0
  60. dda-0.4.4.dev3/src/deva/config/model/env.py +18 -0
  61. dda-0.4.4.dev3/src/deva/config/model/git.py +43 -0
  62. dda-0.4.4.dev3/src/deva/config/model/github.py +15 -0
  63. dda-0.4.4.dev3/src/deva/config/model/orgs.py +16 -0
  64. dda-0.4.4.dev3/src/deva/config/model/storage.py +31 -0
  65. dda-0.4.4.dev3/src/deva/config/model/terminal.py +26 -0
  66. dda-0.4.4.dev3/src/deva/config/utils.py +37 -0
  67. dda-0.4.4.dev3/src/deva/env/__init__.py +3 -0
  68. dda-0.4.4.dev3/src/deva/env/dev/__init__.py +59 -0
  69. dda-0.4.4.dev3/src/deva/env/dev/interface.py +185 -0
  70. dda-0.4.4.dev3/src/deva/env/dev/types/__init__.py +3 -0
  71. dda-0.4.4.dev3/src/deva/env/dev/types/linux_container.py +241 -0
  72. dda-0.4.4.dev3/src/deva/env/models.py +23 -0
  73. dda-0.4.4.dev3/src/deva/env/shells/__init__.py +45 -0
  74. dda-0.4.4.dev3/src/deva/env/shells/bash.py +30 -0
  75. dda-0.4.4.dev3/src/deva/env/shells/interface.py +51 -0
  76. dda-0.4.4.dev3/src/deva/env/shells/nu.py +47 -0
  77. dda-0.4.4.dev3/src/deva/env/shells/zsh.py +30 -0
  78. dda-0.4.4.dev3/src/deva/env/ssh.py +12 -0
  79. dda-0.4.4.dev3/src/deva/py.typed +0 -0
  80. dda-0.4.4.dev3/src/deva/tools/__init__.py +29 -0
  81. dda-0.4.4.dev3/src/deva/tools/base.py +38 -0
  82. dda-0.4.4.dev3/src/deva/tools/docker.py +19 -0
  83. dda-0.4.4.dev3/src/deva/tools/uv.py +38 -0
  84. dda-0.4.4.dev3/src/deva/utils/__init__.py +3 -0
  85. dda-0.4.4.dev3/src/deva/utils/ci.py +10 -0
  86. dda-0.4.4.dev3/src/deva/utils/fs.py +84 -0
  87. dda-0.4.4.dev3/src/deva/utils/platform.py +37 -0
  88. dda-0.4.4.dev3/src/deva/utils/process.py +135 -0
  89. dda-0.4.4.dev3/src/deva/utils/retry.py +33 -0
  90. dda-0.4.4.dev3/src/deva/utils/ssh.py +66 -0
  91. dda-0.4.4.dev3/src/deva/utils/venv.py +63 -0
  92. dda-0.4.4.dev3/static-analysis.datadog.yml +1 -0
  93. dda-0.4.4.dev3/tests/__init__.py +3 -0
  94. dda-0.4.4.dev3/tests/cli/__init__.py +3 -0
  95. dda-0.4.4.dev3/tests/cli/config/__init__.py +3 -0
  96. dda-0.4.4.dev3/tests/cli/config/test_explore.py +12 -0
  97. dda-0.4.4.dev3/tests/cli/config/test_find.py +15 -0
  98. dda-0.4.4.dev3/tests/cli/config/test_restore.py +31 -0
  99. dda-0.4.4.dev3/tests/cli/config/test_set.py +164 -0
  100. dda-0.4.4.dev3/tests/cli/config/test_show.py +98 -0
  101. dda-0.4.4.dev3/tests/cli/inv/__init__.py +3 -0
  102. dda-0.4.4.dev3/tests/cli/inv/test_inv.py +113 -0
  103. dda-0.4.4.dev3/tests/cli/test_pin.py +50 -0
  104. dda-0.4.4.dev3/tests/conftest.py +158 -0
  105. dda-0.4.4.dev3/tests/env/__init__.py +3 -0
  106. dda-0.4.4.dev3/tests/env/dev/__init__.py +3 -0
  107. dda-0.4.4.dev3/tests/env/dev/test_interface.py +68 -0
  108. dda-0.4.4.dev3/tests/env/dev/types/__init__.py +3 -0
  109. dda-0.4.4.dev3/tests/env/dev/types/test_linux_container.py +740 -0
  110. dda-0.4.4.dev3/tests/helpers/__init__.py +3 -0
  111. dda-0.4.4.dev3/tests/helpers/api.py +63 -0
  112. dda-0.4.4.dev3/tests/utils/__init__.py +3 -0
  113. dda-0.4.4.dev3/tests/utils/test_fs.py +41 -0
  114. dda-0.4.4.dev3/tests/utils/test_platform.py +49 -0
  115. dda-0.4.4.dev3/tests/utils/test_process.py +116 -0
  116. dda-0.4.4.dev3/tests/utils/test_retry.py +47 -0
  117. dda-0.4.4.dev3/tests/utils/test_ssh.py +27 -0
  118. dda-0.4.4.dev3/uv.lock +1979 -0
@@ -0,0 +1,2 @@
1
+ # Auto detect text files and perform LF normalization
2
+ * text=auto
@@ -0,0 +1,10 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: github-actions
4
+ directory: /
5
+ schedule:
6
+ interval: monthly
7
+ groups:
8
+ all:
9
+ patterns:
10
+ - "*"
@@ -0,0 +1,191 @@
1
+ name: build distributions
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ version:
7
+ required: false
8
+ type: string
9
+
10
+ defaults:
11
+ run:
12
+ shell: bash
13
+
14
+ env:
15
+ DIST_URL: "https://github.com/astral-sh/python-build-standalone/releases/download"
16
+ DIST_VERSION: "20241219"
17
+ DIST_PYTHON_VERSION: "3.12.8"
18
+ PYTHONDONTWRITEBYTECODE: "1"
19
+ PIP_ONLY_BINARY: ":all:"
20
+ # Some pip environment variables are weird, this means do not compile
21
+ PIP_NO_COMPILE: "0"
22
+
23
+ jobs:
24
+ ensure-installable:
25
+ name: Ensure released to PyPI
26
+ runs-on: ubuntu-22.04
27
+
28
+ steps:
29
+ - name: Set up Python ${{ env.DIST_PYTHON_VERSION }}
30
+ uses: actions/setup-python@v5
31
+ with:
32
+ python-version: ${{ env.DIST_PYTHON_VERSION }}
33
+
34
+ - name: Install UV
35
+ uses: astral-sh/setup-uv@v5
36
+
37
+ - name: Install from PyPI
38
+ if: inputs.version
39
+ # Try to install the specific version that was just released until successful
40
+ run: |-
41
+ for i in {1..20}; do
42
+ uv pip install --system datadog-agent-dev==${{ inputs.version }} && break || sleep 5
43
+ done
44
+
45
+ linux:
46
+ name: Distribution ${{ matrix.job.target }}
47
+ needs: ensure-installable
48
+ runs-on: ubuntu-22.04
49
+ strategy:
50
+ fail-fast: false
51
+ matrix:
52
+ job:
53
+ - target: x86_64-unknown-linux-gnu
54
+ image: quay.io/pypa/manylinux2014_x86_64
55
+ target-override: x86_64_v3-unknown-linux-gnu
56
+ - target: aarch64-unknown-linux-gnu
57
+ image: quay.io/pypa/manylinux_2_28_aarch64
58
+ emulation: arm64
59
+
60
+ steps:
61
+ - name: Checkout code
62
+ uses: actions/checkout@v4
63
+ with:
64
+ fetch-depth: ${{ inputs.version && 1 || 0 }}
65
+
66
+ - name: Set up QEMU
67
+ if: matrix.job.emulation
68
+ uses: docker/setup-qemu-action@v3
69
+
70
+ - name: Set up Docker container
71
+ run: >-
72
+ docker run --rm -d
73
+ --name builder
74
+ --workdir /home
75
+ --env PYTHONDONTWRITEBYTECODE
76
+ --env PIP_ONLY_BINARY
77
+ --env PIP_NO_COMPILE
78
+ --volume ${{ github.workspace }}:/home/datadog-agent-dev
79
+ ${{ matrix.job.image }}
80
+ sleep infinity
81
+
82
+ - name: Download distribution
83
+ run: >-
84
+ docker exec builder
85
+ curl -LO
86
+ ${{ env.DIST_URL }}/${{ env.DIST_VERSION }}/cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target-override || matrix.job.target }}-install_only.tar.gz
87
+
88
+ - name: Unpack distribution
89
+ run: >-
90
+ docker exec builder
91
+ tar xzf cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target-override || matrix.job.target }}-install_only.tar.gz
92
+
93
+ - name: Install deva
94
+ run: >-
95
+ docker exec builder
96
+ /home/python/bin/python -m pip install
97
+ ${{ inputs.version && format('datadog-agent-dev=={0}', inputs.version) || '/home/datadog-agent-dev' }}
98
+
99
+ - name: Make scripts portable
100
+ run: >-
101
+ docker exec builder
102
+ /home/python/bin/python /home/datadog-agent-dev/release/unix/make_scripts_portable.py
103
+
104
+ - name: Strip debug symbols
105
+ run: >-
106
+ docker exec builder
107
+ sh -c "find /home/python -name '*.so' | xargs strip -S"
108
+
109
+ - name: Archive distribution
110
+ run: >-
111
+ docker exec builder
112
+ tar czf deva-dist-${{ matrix.job.target }}.tar.gz python
113
+
114
+ - name: Move to host
115
+ run: docker cp builder:/home/deva-dist-${{ matrix.job.target }}.tar.gz .
116
+
117
+ - name: Check original size
118
+ run: >-
119
+ docker exec builder
120
+ ls -lh cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target-override || matrix.job.target }}-install_only.tar.gz
121
+
122
+ - name: Check final size
123
+ run: ls -lh deva-dist-${{ matrix.job.target }}.tar.gz
124
+
125
+ - name: Upload archive
126
+ uses: actions/upload-artifact@v4
127
+ with:
128
+ name: distribution-${{ matrix.job.target }}
129
+ path: deva-dist-${{ matrix.job.target }}.tar.gz
130
+
131
+ windows-macos:
132
+ name: Distribution ${{ matrix.job.target }}
133
+ needs: ensure-installable
134
+ runs-on: ${{ matrix.job.os }}
135
+ strategy:
136
+ fail-fast: false
137
+ matrix:
138
+ job:
139
+ - target: x86_64-pc-windows-msvc
140
+ os: windows-2019
141
+ - target: aarch64-apple-darwin
142
+ os: macos-14
143
+ - target: x86_64-apple-darwin
144
+ os: macos-13
145
+
146
+ steps:
147
+ - name: Checkout code
148
+ uses: actions/checkout@v4
149
+ with:
150
+ fetch-depth: ${{ inputs.version && 1 || 0 }}
151
+
152
+ - name: Download distribution
153
+ run: curl -LO ${{ env.DIST_URL }}/${{ env.DIST_VERSION }}/cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target }}-install_only.tar.gz
154
+
155
+ - name: Unpack distribution
156
+ run: tar xzf cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target }}-install_only.tar.gz
157
+
158
+ - name: Install deva
159
+ run: >-
160
+ ${{ startsWith(matrix.job.os, 'windows-') && '.\\python\\python.exe' || './python/bin/python' }}
161
+ -m pip install
162
+ ${{ inputs.version && format('datadog-agent-dev=={0}', inputs.version) || '.' }}
163
+
164
+ - name: Make scripts portable
165
+ run: >-
166
+ ${{ startsWith(matrix.job.os, 'windows-') && '.\\python\\python.exe' || './python/bin/python' }}
167
+ release/${{ startsWith(matrix.job.os, 'windows-') && 'windows' || 'unix' }}/make_scripts_portable.py
168
+
169
+ - name: Strip debug symbols
170
+ if: startsWith(matrix.job.os, 'macos-')
171
+ run: find python -name '*.so' | xargs strip -S
172
+
173
+ - name: Remove debug symbols
174
+ if: startsWith(matrix.job.os, 'windows-')
175
+ run: Get-ChildItem -Path python -Filter "*.pdb" -Recurse | Remove-Item
176
+ shell: pwsh
177
+
178
+ - name: Archive distribution
179
+ run: tar czf deva-dist-${{ matrix.job.target }}.tar.gz python
180
+
181
+ - name: Check original size
182
+ run: ls -lh cpython-${{ env.DIST_PYTHON_VERSION }}+${{ env.DIST_VERSION }}-${{ matrix.job.target }}-install_only.tar.gz
183
+
184
+ - name: Check final size
185
+ run: ls -lh deva-dist-${{ matrix.job.target }}.tar.gz
186
+
187
+ - name: Upload archive
188
+ uses: actions/upload-artifact@v4
189
+ with:
190
+ name: distribution-${{ matrix.job.target }}
191
+ path: deva-dist-${{ matrix.job.target }}.tar.gz