rust-just 1.35.0__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 (232) hide show
  1. rust_just-1.35.0/.editorconfig +18 -0
  2. rust_just-1.35.0/.gitattributes +1 -0
  3. rust_just-1.35.0/.github/workflows/npm-release.yml +140 -0
  4. rust_just-1.35.0/.github/workflows/py-release.yml +180 -0
  5. rust_just-1.35.0/.github/workflows/release.yml +24 -0
  6. rust_just-1.35.0/.github/workflows/sync.yml +68 -0
  7. rust_just-1.35.0/.gitignore +17 -0
  8. rust_just-1.35.0/CHANGELOG.md +1585 -0
  9. rust_just-1.35.0/CONTRIBUTING.md +8 -0
  10. rust_just-1.35.0/Cargo.lock +1385 -0
  11. rust_just-1.35.0/Cargo.toml +94 -0
  12. rust_just-1.35.0/GRAMMAR.md +140 -0
  13. rust_just-1.35.0/LICENSE +121 -0
  14. rust_just-1.35.0/PKG-INFO +4073 -0
  15. rust_just-1.35.0/README.md +4043 -0
  16. rust_just-1.35.0/README./344/270/255/346/226/207.md +2518 -0
  17. rust_just-1.35.0/Vagrantfile +18 -0
  18. rust_just-1.35.0/bin/forbid +12 -0
  19. rust_just-1.35.0/bin/package +56 -0
  20. rust_just-1.35.0/clippy.toml +1 -0
  21. rust_just-1.35.0/contrib/just.sh +33 -0
  22. rust_just-1.35.0/crates-io-readme.md +22 -0
  23. rust_just-1.35.0/examples/cross-platform.just +26 -0
  24. rust_just-1.35.0/examples/keybase.just +10 -0
  25. rust_just-1.35.0/examples/kitchen-sink.just +214 -0
  26. rust_just-1.35.0/examples/powershell.just +29 -0
  27. rust_just-1.35.0/examples/pre-commit.just +59 -0
  28. rust_just-1.35.0/examples/screenshot.just +15 -0
  29. rust_just-1.35.0/justfile +228 -0
  30. rust_just-1.35.0/npm/package.json.tmpl +32 -0
  31. rust_just-1.35.0/npm/rust-just/.gitignore +133 -0
  32. rust_just-1.35.0/npm/rust-just/.yarn/releases/yarn-4.5.0.cjs +925 -0
  33. rust_just-1.35.0/npm/rust-just/.yarnrc.yml +5 -0
  34. rust_just-1.35.0/npm/rust-just/package.json +94 -0
  35. rust_just-1.35.0/npm/rust-just/src/cli.ts +12 -0
  36. rust_just-1.35.0/npm/rust-just/src/getExePath.ts +33 -0
  37. rust_just-1.35.0/npm/rust-just/src/index.ts +96 -0
  38. rust_just-1.35.0/npm/rust-just/src/options.ts +50 -0
  39. rust_just-1.35.0/npm/rust-just/src/optionsToStringArgs.ts +44 -0
  40. rust_just-1.35.0/npm/rust-just/tsconfig.json +12 -0
  41. rust_just-1.35.0/npm/rust-just/tsup.config.ts +36 -0
  42. rust_just-1.35.0/npm/rust-just/yarn.lock +2913 -0
  43. rust_just-1.35.0/pypi/.gitignore +5 -0
  44. rust_just-1.35.0/pypi/LICENSE +121 -0
  45. rust_just-1.35.0/pypi/README.md +4043 -0
  46. rust_just-1.35.0/pypi/pyproject.toml +35 -0
  47. rust_just-1.35.0/pyproject.toml +35 -0
  48. rust_just-1.35.0/rustfmt.toml +6 -0
  49. rust_just-1.35.0/snapcraft.yaml +32 -0
  50. rust_just-1.35.0/src/alias.rs +59 -0
  51. rust_just-1.35.0/src/analyzer.rs +440 -0
  52. rust_just-1.35.0/src/argument_parser.rs +403 -0
  53. rust_just-1.35.0/src/assignment.rs +13 -0
  54. rust_just-1.35.0/src/assignment_resolver.rs +225 -0
  55. rust_just-1.35.0/src/ast.rs +31 -0
  56. rust_just-1.35.0/src/attribute.rs +140 -0
  57. rust_just-1.35.0/src/binding.rs +18 -0
  58. rust_just-1.35.0/src/color.rs +158 -0
  59. rust_just-1.35.0/src/color_display.rs +20 -0
  60. rust_just-1.35.0/src/command_color.rs +26 -0
  61. rust_just-1.35.0/src/command_ext.rs +47 -0
  62. rust_just-1.35.0/src/compilation.rs +19 -0
  63. rust_just-1.35.0/src/compile_error.rs +291 -0
  64. rust_just-1.35.0/src/compile_error_kind.rs +155 -0
  65. rust_just-1.35.0/src/compiler.rs +374 -0
  66. rust_just-1.35.0/src/completions.rs +336 -0
  67. rust_just-1.35.0/src/condition.rs +27 -0
  68. rust_just-1.35.0/src/conditional_operator.rs +22 -0
  69. rust_just-1.35.0/src/config.rs +1636 -0
  70. rust_just-1.35.0/src/config_error.rs +57 -0
  71. rust_just-1.35.0/src/constants.rs +15 -0
  72. rust_just-1.35.0/src/count.rs +25 -0
  73. rust_just-1.35.0/src/delimiter.rs +24 -0
  74. rust_just-1.35.0/src/dependency.rs +24 -0
  75. rust_just-1.35.0/src/dump_format.rs +7 -0
  76. rust_just-1.35.0/src/enclosure.rs +31 -0
  77. rust_just-1.35.0/src/error.rs +507 -0
  78. rust_just-1.35.0/src/evaluator.rs +393 -0
  79. rust_just-1.35.0/src/execution_context.rs +26 -0
  80. rust_just-1.35.0/src/executor.rs +161 -0
  81. rust_just-1.35.0/src/expression.rs +133 -0
  82. rust_just-1.35.0/src/fragment.rs +26 -0
  83. rust_just-1.35.0/src/function.rs +719 -0
  84. rust_just-1.35.0/src/fuzzing.rs +5 -0
  85. rust_just-1.35.0/src/interpreter.rs +29 -0
  86. rust_just-1.35.0/src/interrupt_guard.rs +16 -0
  87. rust_just-1.35.0/src/interrupt_handler.rs +86 -0
  88. rust_just-1.35.0/src/item.rs +72 -0
  89. rust_just-1.35.0/src/justfile.rs +1132 -0
  90. rust_just-1.35.0/src/keyed.rs +33 -0
  91. rust_just-1.35.0/src/keyword.rs +62 -0
  92. rust_just-1.35.0/src/lexer.rs +2311 -0
  93. rust_just-1.35.0/src/lib.rs +200 -0
  94. rust_just-1.35.0/src/line.rs +53 -0
  95. rust_just-1.35.0/src/list.rs +123 -0
  96. rust_just-1.35.0/src/load_dotenv.rs +59 -0
  97. rust_just-1.35.0/src/loader.rs +34 -0
  98. rust_just-1.35.0/src/main.rs +5 -0
  99. rust_just-1.35.0/src/module_path.rs +100 -0
  100. rust_just-1.35.0/src/name.rs +38 -0
  101. rust_just-1.35.0/src/namepath.rs +38 -0
  102. rust_just-1.35.0/src/node.rs +332 -0
  103. rust_just-1.35.0/src/ordinal.rs +10 -0
  104. rust_just-1.35.0/src/output.rs +34 -0
  105. rust_just-1.35.0/src/output_error.rs +27 -0
  106. rust_just-1.35.0/src/parameter.rs +30 -0
  107. rust_just-1.35.0/src/parameter_kind.rs +27 -0
  108. rust_just-1.35.0/src/parser.rs +2769 -0
  109. rust_just-1.35.0/src/platform.rs +115 -0
  110. rust_just-1.35.0/src/platform_interface.rs +21 -0
  111. rust_just-1.35.0/src/position.rs +7 -0
  112. rust_just-1.35.0/src/positional.rs +228 -0
  113. rust_just-1.35.0/src/ran.rs +17 -0
  114. rust_just-1.35.0/src/range_ext.rs +83 -0
  115. rust_just-1.35.0/src/recipe.rs +528 -0
  116. rust_just-1.35.0/src/recipe_resolver.rs +201 -0
  117. rust_just-1.35.0/src/recipe_signature.rs +16 -0
  118. rust_just-1.35.0/src/run.rs +36 -0
  119. rust_just-1.35.0/src/scope.rs +78 -0
  120. rust_just-1.35.0/src/search.rs +390 -0
  121. rust_just-1.35.0/src/search_config.rs +22 -0
  122. rust_just-1.35.0/src/search_error.rs +53 -0
  123. rust_just-1.35.0/src/set.rs +19 -0
  124. rust_just-1.35.0/src/setting.rs +50 -0
  125. rust_just-1.35.0/src/settings.rs +271 -0
  126. rust_just-1.35.0/src/shebang.rs +151 -0
  127. rust_just-1.35.0/src/show_whitespace.rs +18 -0
  128. rust_just-1.35.0/src/source.rs +61 -0
  129. rust_just-1.35.0/src/string_delimiter.rs +6 -0
  130. rust_just-1.35.0/src/string_kind.rs +85 -0
  131. rust_just-1.35.0/src/string_literal.rs +48 -0
  132. rust_just-1.35.0/src/subcommand.rs +703 -0
  133. rust_just-1.35.0/src/suggestion.rs +17 -0
  134. rust_just-1.35.0/src/summary.rs +374 -0
  135. rust_just-1.35.0/src/table.rs +97 -0
  136. rust_just-1.35.0/src/testing.rs +143 -0
  137. rust_just-1.35.0/src/thunk.rs +231 -0
  138. rust_just-1.35.0/src/token.rs +108 -0
  139. rust_just-1.35.0/src/token_kind.rs +85 -0
  140. rust_just-1.35.0/src/tree.rs +137 -0
  141. rust_just-1.35.0/src/unindent.rs +134 -0
  142. rust_just-1.35.0/src/unresolved_dependency.rs +23 -0
  143. rust_just-1.35.0/src/unresolved_recipe.rs +64 -0
  144. rust_just-1.35.0/src/unstable_feature.rs +20 -0
  145. rust_just-1.35.0/src/use_color.rs +8 -0
  146. rust_just-1.35.0/src/variables.rs +104 -0
  147. rust_just-1.35.0/src/verbosity.rs +45 -0
  148. rust_just-1.35.0/src/warning.rs +42 -0
  149. rust_just-1.35.0/tests/allow_duplicate_recipes.rs +38 -0
  150. rust_just-1.35.0/tests/allow_duplicate_variables.rs +21 -0
  151. rust_just-1.35.0/tests/assert_stdout.rs +6 -0
  152. rust_just-1.35.0/tests/assert_success.rs +7 -0
  153. rust_just-1.35.0/tests/assertions.rs +22 -0
  154. rust_just-1.35.0/tests/assignment.rs +31 -0
  155. rust_just-1.35.0/tests/attributes.rs +232 -0
  156. rust_just-1.35.0/tests/backticks.rs +17 -0
  157. rust_just-1.35.0/tests/byte_order_mark.rs +54 -0
  158. rust_just-1.35.0/tests/changelog.rs +9 -0
  159. rust_just-1.35.0/tests/choose.rs +247 -0
  160. rust_just-1.35.0/tests/command.rs +149 -0
  161. rust_just-1.35.0/tests/completions/just.bash +63 -0
  162. rust_just-1.35.0/tests/completions/justfile +5 -0
  163. rust_just-1.35.0/tests/completions/subdir/justfile +2 -0
  164. rust_just-1.35.0/tests/completions.rs +43 -0
  165. rust_just-1.35.0/tests/conditional.rs +207 -0
  166. rust_just-1.35.0/tests/confirm.rs +159 -0
  167. rust_just-1.35.0/tests/constants.rs +45 -0
  168. rust_just-1.35.0/tests/datetime.rs +27 -0
  169. rust_just-1.35.0/tests/delimiters.rs +107 -0
  170. rust_just-1.35.0/tests/directories.rs +85 -0
  171. rust_just-1.35.0/tests/dotenv.rs +409 -0
  172. rust_just-1.35.0/tests/edit.rs +178 -0
  173. rust_just-1.35.0/tests/equals.rs +29 -0
  174. rust_just-1.35.0/tests/error_messages.rs +129 -0
  175. rust_just-1.35.0/tests/evaluate.rs +105 -0
  176. rust_just-1.35.0/tests/examples.rs +20 -0
  177. rust_just-1.35.0/tests/explain.rs +22 -0
  178. rust_just-1.35.0/tests/export.rs +177 -0
  179. rust_just-1.35.0/tests/fallback.rs +376 -0
  180. rust_just-1.35.0/tests/fmt.rs +1098 -0
  181. rust_just-1.35.0/tests/functions.rs +1185 -0
  182. rust_just-1.35.0/tests/global.rs +65 -0
  183. rust_just-1.35.0/tests/groups.rs +284 -0
  184. rust_just-1.35.0/tests/ignore_comments.rs +137 -0
  185. rust_just-1.35.0/tests/imports.rs +362 -0
  186. rust_just-1.35.0/tests/init.rs +206 -0
  187. rust_just-1.35.0/tests/interrupts.rs +90 -0
  188. rust_just-1.35.0/tests/invocation_directory.rs +99 -0
  189. rust_just-1.35.0/tests/json.rs +1377 -0
  190. rust_just-1.35.0/tests/lib.rs +131 -0
  191. rust_just-1.35.0/tests/line_prefixes.rs +25 -0
  192. rust_just-1.35.0/tests/list.rs +440 -0
  193. rust_just-1.35.0/tests/man.rs +9 -0
  194. rust_just-1.35.0/tests/misc.rs +2072 -0
  195. rust_just-1.35.0/tests/modules.rs +1000 -0
  196. rust_just-1.35.0/tests/multibyte_char.rs +6 -0
  197. rust_just-1.35.0/tests/newline_escape.rs +104 -0
  198. rust_just-1.35.0/tests/no_aliases.rs +20 -0
  199. rust_just-1.35.0/tests/no_cd.rs +43 -0
  200. rust_just-1.35.0/tests/no_dependencies.rs +49 -0
  201. rust_just-1.35.0/tests/no_exit_message.rs +131 -0
  202. rust_just-1.35.0/tests/os_attributes.rs +103 -0
  203. rust_just-1.35.0/tests/parser.rs +13 -0
  204. rust_just-1.35.0/tests/positional_arguments.rs +143 -0
  205. rust_just-1.35.0/tests/private.rs +56 -0
  206. rust_just-1.35.0/tests/quiet.rs +239 -0
  207. rust_just-1.35.0/tests/quote.rs +43 -0
  208. rust_just-1.35.0/tests/readme.rs +38 -0
  209. rust_just-1.35.0/tests/recursion_limit.rs +32 -0
  210. rust_just-1.35.0/tests/regexes.rs +66 -0
  211. rust_just-1.35.0/tests/run.rs +19 -0
  212. rust_just-1.35.0/tests/script.rs +371 -0
  213. rust_just-1.35.0/tests/search.rs +201 -0
  214. rust_just-1.35.0/tests/search_arguments.rs +29 -0
  215. rust_just-1.35.0/tests/shadowing_parameters.rs +23 -0
  216. rust_just-1.35.0/tests/shebang.rs +125 -0
  217. rust_just-1.35.0/tests/shell.rs +189 -0
  218. rust_just-1.35.0/tests/shell_expansion.rs +159 -0
  219. rust_just-1.35.0/tests/show.rs +139 -0
  220. rust_just-1.35.0/tests/slash_operator.rs +131 -0
  221. rust_just-1.35.0/tests/string.rs +546 -0
  222. rust_just-1.35.0/tests/subsequents.rs +154 -0
  223. rust_just-1.35.0/tests/summary.rs +85 -0
  224. rust_just-1.35.0/tests/tempdir.rs +51 -0
  225. rust_just-1.35.0/tests/test.rs +333 -0
  226. rust_just-1.35.0/tests/timestamps.rs +31 -0
  227. rust_just-1.35.0/tests/undefined_variables.rs +102 -0
  228. rust_just-1.35.0/tests/unexport.rs +126 -0
  229. rust_just-1.35.0/tests/unstable.rs +68 -0
  230. rust_just-1.35.0/tests/windows.rs +15 -0
  231. rust_just-1.35.0/tests/windows_shell.rs +54 -0
  232. rust_just-1.35.0/tests/working_directory.rs +333 -0
@@ -0,0 +1,18 @@
1
+ # EditorConfig is awesome: https://EditorConfig.org
2
+
3
+ # top-most EditorConfig file
4
+ root = true
5
+
6
+ [*]
7
+ # Text is UTF-8
8
+ charset = utf-8
9
+ # Unix-style newlines
10
+ end_of_line = lf
11
+ # Newline ending every file
12
+ insert_final_newline = true
13
+ # Soft tabs
14
+ indent_style = space
15
+ # Two-space indentation
16
+ indent_size = 2
17
+ # Trim trailing whitespace
18
+ trim_trailing_whitespace = true
@@ -0,0 +1 @@
1
+ * -text
@@ -0,0 +1,140 @@
1
+ name: NPM Release
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ publish-binaries:
8
+ name: Publish binaries
9
+ needs: generate-changelog
10
+ runs-on: ${{ matrix.build.OS }}
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ build:
15
+ - {
16
+ NAME: linux-x64-musl,
17
+ OS: ubuntu-22.04,
18
+ TOOLCHAIN: stable,
19
+ TARGET: x86_64-unknown-linux-musl,
20
+ }
21
+ - {
22
+ NAME: linux-arm64-musl,
23
+ OS: ubuntu-22.04,
24
+ TOOLCHAIN: stable,
25
+ TARGET: aarch64-unknown-linux-musl,
26
+ }
27
+ - {
28
+ NAME: linux-arm-musleabihf,
29
+ OS: ubuntu-22.04,
30
+ TOOLCHAIN: stable,
31
+ TARGET: arm-unknown-linux-musleabihf,
32
+ }
33
+ - {
34
+ NAME: win32-x64-msvc,
35
+ OS: windows-2022,
36
+ TOOLCHAIN: stable,
37
+ TARGET: x86_64-pc-windows-msvc,
38
+ }
39
+ - {
40
+ NAME: win32-arm64-msvc,
41
+ OS: windows-2022,
42
+ TOOLCHAIN: stable,
43
+ TARGET: aarch64-pc-windows-msvc,
44
+ }
45
+ - {
46
+ NAME: darwin-x64,
47
+ OS: macos-14,
48
+ TOOLCHAIN: stable,
49
+ TARGET: x86_64-apple-darwin,
50
+ }
51
+ - {
52
+ NAME: darwin-arm64,
53
+ OS: macos-14,
54
+ TOOLCHAIN: stable,
55
+ TARGET: aarch64-apple-darwin,
56
+ }
57
+ steps:
58
+ - name: Checkout repository
59
+ uses: actions/checkout@v4
60
+ - name: Find latest tag
61
+ uses: oprypin/find-latest-tag@v1
62
+ with:
63
+ repository: gnpaone/rust-just
64
+ releases-only: true
65
+ id: latesttag
66
+ - name: Download release artifact
67
+ uses: actions/download-artifact@v4
68
+ with:
69
+ name: just-${{ steps.latesttag.outputs.tag }}-${{ matrix.build.TARGET }}.*
70
+ path: ./release
71
+ - name: Extract and Copy Binary
72
+ run: |
73
+ mkdir -p ./target/${{ matrix.build.TARGET }}/release
74
+ if [[ ${{ matrix.build.OS }} == 'windows-2022' ]]; then
75
+ unzip ./release/just-${{ steps.latesttag.outputs.tag }}-${{ matrix.build.TARGET }}.zip -d ./target/${{ matrix.build.TARGET }}/release/
76
+ else
77
+ tar -xzf ./release/just-${{ steps.latesttag.outputs.tag }}-${{ matrix.build.TARGET }}.tar.gz -C ./target/${{ matrix.build.TARGET }}/release/
78
+ fi
79
+ - name: Install node
80
+ uses: actions/setup-node@v4
81
+ with:
82
+ node-version: 18
83
+ registry-url: "https://registry.npmjs.org"
84
+ - name: Publish to NPM
85
+ shell: bash
86
+ run: |
87
+ cd npm
88
+ bin="just"
89
+ node_os=$(echo "${{ matrix.build.NAME }}" | cut -d '-' -f1)
90
+ export node_os
91
+ node_arch=$(echo "${{ matrix.build.NAME }}" | cut -d '-' -f2)
92
+ export node_arch
93
+ export version="${{ steps.latesttag.outputs.tag }}"
94
+ if [ "${{ matrix.build.OS }}" = "windows-2022" ]; then
95
+ export node_pkg="rust-${bin}-windows-${node_arch}"
96
+ else
97
+ export node_pkg="rust-${bin}-${node_os}-${node_arch}"
98
+ fi
99
+ mkdir -p "${node_pkg}/bin"
100
+ envsubst < package.json.tmpl > "${node_pkg}/package.json"
101
+ if [ "${{ matrix.build.OS }}" = "windows-2022" ]; then
102
+ bin="${bin}.exe"
103
+ fi
104
+ cp "../target/${{ matrix.build.TARGET }}/release/${bin}" "${node_pkg}/bin"
105
+ cp ../README.md "${node_pkg}"
106
+ cd "${node_pkg}"
107
+ npm publish
108
+ env:
109
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
110
+
111
+ publish-npm:
112
+ name: Publish the base package to NPM
113
+ needs: publish-binaries
114
+ runs-on: ubuntu-22.04
115
+ steps:
116
+ - name: Checkout
117
+ uses: actions/checkout@v4
118
+ - name: Install node
119
+ uses: actions/setup-node@v4
120
+ with:
121
+ node-version: 18
122
+ registry-url: "https://registry.npmjs.org"
123
+ - name: Publish the package
124
+ shell: bash
125
+ working-directory: npm/rust-just
126
+ run: |
127
+ yarn config set npmAuthToken ${NODE_AUTH_TOKEN}
128
+ yarn config set npmPublishRegistry "https://registry.npmjs.org"
129
+ yarn install
130
+ yarn build
131
+ cp ../../README.md .
132
+ cp ../../CHANGELOG.md .
133
+ if [ ${{ contains(github.ref, '-') }} = "true" ]; then
134
+ yarn npm publish --tag rc
135
+ else
136
+ yarn npm publish
137
+ fi
138
+ env:
139
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
140
+ YARN_ENABLE_IMMUTABLE_INSTALLS: false
@@ -0,0 +1,180 @@
1
+ # This file is autogenerated by maturin v1.7.0
2
+ # To update, run
3
+ #
4
+ # maturin generate-ci github
5
+ #
6
+ name: PIP Release
7
+
8
+ on:
9
+ workflow_dispatch:
10
+
11
+ permissions:
12
+ contents: read
13
+
14
+ jobs:
15
+ linux:
16
+ runs-on: ${{ matrix.runner }}
17
+ if: github.actor == 'gnpaone'
18
+ strategy:
19
+ matrix:
20
+ runner: [ubuntu-latest]
21
+ target: [x86_64, x86, aarch64, armv7, s390x, ppc64le]
22
+ steps:
23
+ - uses: actions/checkout@v4
24
+ - name: Copy README.md and LICENSE
25
+ run: |
26
+ cp README.md pypi/
27
+ cp LICENSE pypi/
28
+ rm -f README.md
29
+ rm -f LICENSE
30
+ - name: Build wheels
31
+ uses: PyO3/maturin-action@v1
32
+ with:
33
+ working-directory: pypi
34
+ target: ${{ matrix.target }}
35
+ args: --release --out dist
36
+ sccache: 'true'
37
+ manylinux: auto
38
+ - name: Upload wheels
39
+ uses: actions/upload-artifact@v4
40
+ with:
41
+ name: "wheels-linux-${{ matrix.target }}"
42
+ path: pypi/dist
43
+
44
+ musllinux:
45
+ runs-on: ${{ matrix.runner }}
46
+ if: github.actor == 'gnpaone'
47
+ strategy:
48
+ matrix:
49
+ runner: [ubuntu-latest]
50
+ target: [x86_64, x86, aarch64, armv7]
51
+ steps:
52
+ - uses: actions/checkout@v4
53
+ - name: Copy README.md and LICENSE
54
+ run: |
55
+ cp README.md pypi/
56
+ cp LICENSE pypi/
57
+ rm -f README.md
58
+ rm -f LICENSE
59
+ - name: Build wheels
60
+ uses: PyO3/maturin-action@v1
61
+ with:
62
+ working-directory: pypi
63
+ target: ${{ matrix.target }}
64
+ args: --release --out dist
65
+ sccache: 'true'
66
+ manylinux: musllinux_1_2
67
+ - name: Upload wheels
68
+ uses: actions/upload-artifact@v4
69
+ with:
70
+ name: "wheels-musllinux-${{ matrix.target }}"
71
+ path: pypi/dist
72
+
73
+ windows:
74
+ runs-on: ${{ matrix.runner }}
75
+ if: github.actor == 'gnpaone'
76
+ strategy:
77
+ matrix:
78
+ runner: [windows-latest]
79
+ target: [x64, x86]
80
+ steps:
81
+ - uses: actions/checkout@v4
82
+ - name: Copy README.md and LICENSE
83
+ run: |
84
+ cp README.md pypi/
85
+ cp LICENSE pypi/
86
+ del README.md
87
+ del LICENSE
88
+ - name: Build wheels
89
+ uses: PyO3/maturin-action@v1
90
+ with:
91
+ working-directory: pypi
92
+ target: ${{ matrix.target }}
93
+ args: --release --out dist
94
+ sccache: 'true'
95
+ - name: Upload wheels
96
+ uses: actions/upload-artifact@v4
97
+ with:
98
+ name: "wheels-windows-${{ matrix.target }}"
99
+ path: pypi/dist
100
+
101
+ macos:
102
+ runs-on: ${{ matrix.runner }}
103
+ if: github.actor == 'gnpaone'
104
+ strategy:
105
+ matrix:
106
+ runner: [macos-14]
107
+ target: [x86_64, aarch64]
108
+ steps:
109
+ - uses: actions/checkout@v4
110
+ - name: Copy README.md and LICENSE
111
+ run: |
112
+ cp README.md pypi/
113
+ cp LICENSE pypi/
114
+ rm -f README.md
115
+ rm -f LICENSE
116
+ - name: Build wheels
117
+ uses: PyO3/maturin-action@v1
118
+ with:
119
+ working-directory: pypi
120
+ target: ${{ matrix.target }}
121
+ args: --release --out dist
122
+ sccache: 'true'
123
+ - name: Upload wheels
124
+ uses: actions/upload-artifact@v4
125
+ with:
126
+ name: "wheels-macos-${{ matrix.target }}"
127
+ path: pypi/dist
128
+
129
+ sdist:
130
+ runs-on: ubuntu-latest
131
+ if: github.actor == 'gnpaone'
132
+ steps:
133
+ - uses: actions/checkout@v4
134
+ - name: Copy README.md and LICENSE
135
+ run: |
136
+ cp README.md pypi/
137
+ cp LICENSE pypi/
138
+ rm -f README.md
139
+ rm -f LICENSE
140
+ - name: Build sdist
141
+ uses: PyO3/maturin-action@v1
142
+ with:
143
+ working-directory: pypi
144
+ command: sdist
145
+ args: --out dist
146
+ - name: Upload sdist
147
+ uses: actions/upload-artifact@v4
148
+ with:
149
+ name: "wheels-sdist"
150
+ path: pypi/dist
151
+
152
+ release:
153
+ name: Release
154
+ runs-on: ubuntu-latest
155
+ # if: startsWith(github.ref, 'refs/tags/') && github.actor == 'gnpaone'
156
+ if: github.actor == 'gnpaone'
157
+ needs: [linux, musllinux, windows, macos, sdist]
158
+ steps:
159
+ - uses: actions/download-artifact@v4
160
+ with:
161
+ path: pypi/dist
162
+ pattern: wheels-*
163
+ merge-multiple: true
164
+ # - name: Check if version tag
165
+ # id: check-tag
166
+ # run: |
167
+ # if [[ ${{ github.ref }} =~ ^refs/tags/[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
168
+ # echo "is_version=true" >> $GITHUB_ENV
169
+ # else
170
+ # echo "is_version=false" >> $GITHUB_ENV
171
+ # fi
172
+ - name: Publish to PyPI
173
+ # if: env.is_version == 'true'
174
+ uses: PyO3/maturin-action@v1
175
+ env:
176
+ MATURIN_PYPI_TOKEN: ${{ vars.USE_TESTPYPI == 'true' && secrets.TESTPYPI_API_TOKEN || secrets.PYPI_API_TOKEN }}
177
+ MATURIN_REPOSITORY: ${{ vars.USE_TESTPYPI == 'true' && 'testpypi' || 'pypi' }}
178
+ with:
179
+ command: upload
180
+ args: --non-interactive --skip-existing pypi/dist/*
@@ -0,0 +1,24 @@
1
+ name: Copy release artifacts
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ release:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - name: Find latest tag
11
+ uses: oprypin/find-latest-tag@v1
12
+ with:
13
+ repository: casey/just
14
+ releases-only: true
15
+ id: latesttag
16
+
17
+ - name: Copy Release
18
+ uses: marchbold/copy-release-to-repository-action@v2
19
+ with:
20
+ source_repo: 'casey/just'
21
+ destination_repo: 'gnpaone/rust-just'
22
+ github_token: ${{ secrets.GITHUB_TOKEN }}
23
+ tag: ${{ steps.latesttag.outputs.tag }}
24
+
@@ -0,0 +1,68 @@
1
+ name: Sync repo
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ commits:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - uses: actions/checkout@v4
11
+
12
+ - uses: actions/checkout@v4
13
+ with:
14
+ repository: casey/just
15
+ token: ${{ secrets.GITHUB_TOKEN }}
16
+ path: ./.sync-repo
17
+ ref: master
18
+
19
+ - name: Replace files
20
+ shell: bash
21
+ run: |
22
+ rm -rf ./.sync-repo/.git
23
+ rsync -av --exclude='.github/' ./.sync-repo/ .
24
+ rm -rf ./.sync-repo/
25
+
26
+ - name: Create PR
27
+ id: cpr
28
+ uses: peter-evans/create-pull-request@v7
29
+ with:
30
+ token: ${{ secrets.GITHUB_TOKEN }}
31
+ commit-message: "chore: sync files from source repo"
32
+ committer: gnpaone <78990165+gnpaone@users.noreply.github.com>
33
+ author: gnpaone <78990165+gnpaone@users.noreply.github.com>
34
+ branch: sync-action
35
+ base: master
36
+ delete-branch: true
37
+ title: Sync source repo
38
+ labels: ":zap: pull"
39
+
40
+ # - name: Identify merge conflict
41
+ # if: steps.cpr.outputs.pull-request-operation == 'created'
42
+ # id: conf
43
+ # uses: codytseng/auto-comment-merge-conflicts@v1
44
+ # with:
45
+ # token: ${{ secrets.GITHUB_TOKEN }}
46
+ # label-name: ":no_entry: merge-conflict"
47
+
48
+ # - name: Assign PR
49
+ # if: steps.conf.outputs.new-conflicting-prs && (Object.keys(steps.conf.outputs.new-conflicting-prs).length > 0) && (String(steps.cpr.outputs.pull-request-number) == String(steps.conf.outputs.new-conflicting-prs.number))
50
+ # uses: wow-actions/auto-assign@v3
51
+ # with:
52
+ # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53
+ # assignees: gnpaone
54
+
55
+ - name: Enable pull request automerge
56
+ if: steps.cpr.outputs.pull-request-operation == 'created'
57
+ uses: peter-evans/enable-pull-request-automerge@v3
58
+ with:
59
+ token: ${{ secrets.GITHUB_TOKEN }}
60
+ pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
61
+
62
+ - name: Delete PRs head branch
63
+ if: steps.cpr.outputs.pull-request-operation == 'created'
64
+ uses: dawidd6/action-delete-branch@v3
65
+ with:
66
+ github_token: ${{ secrets.GITHUB_TOKEN }}
67
+ numbers: ${{ steps.cpr.outputs.pull-request-number }}
68
+
@@ -0,0 +1,17 @@
1
+ .DS_Store
2
+ .idea
3
+ /.vagrant
4
+ /.vscode
5
+ /README.html
6
+ /book/en/build
7
+ /book/en/src
8
+ /book/zh/build
9
+ /book/zh/src
10
+ /fuzz/artifacts
11
+ /fuzz/corpus
12
+ /fuzz/target
13
+ /man
14
+ /target
15
+ /test-utilities/Cargo.lock
16
+ /test-utilities/target
17
+ /tmp