summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/ISSUE_TEMPLATE/bug_report.yml16
-rw-r--r--.github/ISSUE_TEMPLATE/config.yml16
-rw-r--r--.github/PULL_REQUEST_TEMPLATE.md2
-rw-r--r--.github/workflows/linux_builds.yml16
-rw-r--r--.github/workflows/macos_builds.yml12
-rw-r--r--.github/workflows/release.yml337
-rw-r--r--.github/workflows/windows_builds.yml16
7 files changed, 380 insertions, 35 deletions
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 6803d9afd5..bb9d2ce66b 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -1,5 +1,5 @@
name: Bug report
-description: Report a bug in Godot
+description: Report a bug in Redot
body:
- type: markdown
@@ -8,8 +8,8 @@ body:
When reporting bugs, please follow the guidelines in this template. This helps identify the problem precisely and thus enables contributors to fix it faster.
- Write a descriptive issue title above.
- The golden rule is to **always open *one* issue for *one* bug**. If you notice several bugs and want to report them, make sure to create one new issue for each of them.
- - Search [open](https://github.com/godotengine/godot/issues) and [closed](https://github.com/godotengine/godot/issues?q=is%3Aissue+is%3Aclosed) issues to ensure it has not already been reported. If you don't find a relevant match or if you're unsure, don't hesitate to **open a new issue**. The bugsquad will handle it from there if it's a duplicate.
- - Verify that you are using a [supported Godot version](https://docs.godotengine.org/en/latest/about/release_policy.html). Please always check if your issue is reproducible in the latest version – it may already have been fixed!
+ - Search [open](https://github.com/Redot-Engine/redot-engine/issues) and [closed](https://github.com/Redot-Engine/redot-engine/issues?q=is%3Aissue+is%3Aclosed) issues to ensure it has not already been reported. If you don't find a relevant match or if you're unsure, don't hesitate to **open a new issue**. The bugsquad will handle it from there if it's a duplicate.
+ - Verify that you are using a [supported Redot version](https://docs.redotengine.org/en/latest/about/release_policy.html). Please always check if your issue is reproducible in the latest version – it may already have been fixed!
- If you use a custom build, please test if your issue is reproducible in official builds too. Likewise if you use any C++ modules, GDExtensions, or editor plugins, you should check if the bug is reproducible in a project without these.
- type: textarea
@@ -17,8 +17,8 @@ body:
label: Tested versions
description: |
To properly fix a bug, we need to identify if the bug was recently introduced in the engine, or if it was always present.
- - Please specify the Godot version you found the issue in, including the **Git commit hash** if using a development or non-official build. The exact Godot version (including the commit hash) can be copied by clicking the version shown in the editor (bottom bar) or in the project manager (top bar).
- - If you can, **please test earlier Godot versions** (previous stable branch, and development snapshots of the current feature release) and, if applicable, newer versions (development snapshots for the next feature release). Mention whether the bug is reproducible or not in the versions you tested. You can find all Godot releases in our [download archive](https://godotengine.org/download/archive/).
+ - Please specify the Redot version you found the issue in, including the **Git commit hash** if using a development or non-official build. The exact Redot version (including the commit hash) can be copied by clicking the version shown in the editor (bottom bar) or in the project manager (top bar).
+ - If you can, **please test earlier Redot versions** (previous stable branch, and development snapshots of the current feature release) and, if applicable, newer versions (development snapshots for the next feature release). Mention whether the bug is reproducible or not in the versions you tested. You can find all Redot releases in our [download archive](https://redotengine.org/download/archive/).
- The aim is for us to identify whether a bug is a **regression**, i.e. an issue that didn't exist in a previous version, but was introduced later on, breaking existing functionality. For example, if a bug is reproducible in 4.2.stable but not in 4.1.stable, we would like you to test intermediate 4.2 dev and beta snapshots to find which snapshot is the first one where the issue can be reproduced.
placeholder: |
@@ -35,8 +35,8 @@ body:
- For issues that are likely OS-specific and/or graphics-related, please specify the CPU model and architecture.
- For graphics-related issues, specify the GPU model, driver version, and the rendering backend (GLES2, GLES3, Vulkan).
- **Bug reports not including the required information may be closed at the maintainers' discretion.** If in doubt, always include all the requested information; it's better to include too much information than not enough information.
- - **Starting from Godot 4.1, you can copy this information to your clipboard by using *Help > Copy System Info* at the top of the editor window.**
- placeholder: Windows 10 - Godot v4.0.3.stable - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 970 (nvidia, 510.85.02) - Intel Core i7-10700KF CPU @ 3.80GHz (16 Threads)
+ - **Starting from Redot 4.1, you can copy this information to your clipboard by using *Help > Copy System Info* at the top of the editor window.**
+ placeholder: Windows 10 - Redot v4.0.3.stable - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 970 (nvidia, 510.85.02) - Intel Core i7-10700KF CPU @ 3.80GHz (16 Threads)
validations:
required: true
@@ -63,7 +63,7 @@ body:
attributes:
label: Minimal reproduction project (MRP)
description: |
- - A small Godot project which reproduces the issue, with no unnecessary files included. Be sure to not include the `.godot` folder in the archive (but keep `project.godot`).
+ - A small Redot project which reproduces the issue, with no unnecessary files included. Be sure to not include the `.godot` folder in the archive (but keep `project.godot`).
- Having an MRP is very important for contributors to be able to reproduce the bug in the same way that you are experiencing it. When testing a potential fix for the issue, contributors will use the MRP to validate that the fix is working as intended.
- If the reproduction steps are not project dependent (e.g. the bug is visible in a brand new project), you can write "N/A" in the field.
- Drag and drop a ZIP archive to upload it (max 10 MB). **Do not select another field until the project is done uploading.**
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
index f787bec00e..730f333b58 100644
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -1,14 +1,14 @@
blank_issues_enabled: false
contact_links:
- - name: Godot proposals
- url: https://github.com/godotengine/godot-proposals
- about: Please submit feature proposals on the Godot proposals repository, not here.
+ - name: Redot proposals
+ url: https://github.com/Redot-Engine/redot-proposals
+ about: Please submit feature proposals on the Redot proposals repository, not here.
- - name: Godot documentation repository
- url: https://github.com/godotengine/godot-docs
- about: Please report issues with documentation on the Godot documentation repository, not here.
+ - name: Redot documentation repository
+ url: https://github.com/Redot-Engine/redot-docs
+ about: Please report issues with documentation on the Redot documentation repository, not here.
- - name: Godot community channels
- url: https://godotengine.org/community
+ - name: Redot community channels
+ url: https://redotengine.org/community
about: Please ask for technical support on one of the other community channels, not here.
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index e739982c2b..bdf4c8d57f 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -4,5 +4,5 @@ Please target the `master` branch in priority.
Relevant fixes are cherry-picked for stable branches as needed by maintainers.
To speed up the contribution process and avoid CI errors, please set up pre-commit hooks locally:
-https://docs.godotengine.org/en/latest/contributing/development/code_style_guidelines.html
+https://docs.redotengine.org/en/latest/contributing/development/code_style_guidelines.html
-->
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml
index dc3d9f3786..911c377c50 100644
--- a/.github/workflows/linux_builds.yml
+++ b/.github/workflows/linux_builds.yml
@@ -27,7 +27,7 @@ jobs:
cache-name: linux-editor-mono
target: editor
sconsflags: module_mono_enabled=yes
- bin: ./bin/godot.linuxbsd.editor.x86_64.mono
+ bin: ./bin/redot.linuxbsd.editor.x86_64.mono
build-mono: true
tests: false # Disabled due freeze caused by mix Mono build and CI
doc-test: true
@@ -40,7 +40,7 @@ jobs:
target: editor
# Debug symbols disabled as they're huge on this build and we hit the 14 GB limit for runners.
sconsflags: dev_build=yes scu_build=yes debug_symbols=no precision=double use_asan=yes use_ubsan=yes linker=gold
- bin: ./bin/godot.linuxbsd.editor.dev.double.x86_64.san
+ bin: ./bin/redot.linuxbsd.editor.dev.double.x86_64.san
build-mono: false
tests: true
proj-test: true
@@ -53,7 +53,7 @@ jobs:
cache-name: linux-editor-llvm-sanitizers
target: editor
sconsflags: dev_build=yes use_asan=yes use_ubsan=yes use_llvm=yes linker=lld
- bin: ./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san
+ bin: ./bin/redot.linuxbsd.editor.dev.x86_64.llvm.san
build-mono: false
tests: true
# Skip 2GiB artifact speeding up action.
@@ -66,7 +66,7 @@ jobs:
target: editor
tests: true
sconsflags: dev_build=yes use_tsan=yes use_llvm=yes linker=lld
- bin: ./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san
+ bin: ./bin/redot.linuxbsd.editor.dev.x86_64.llvm.san
build-mono: false
# Skip 2GiB artifact speeding up action.
artifact: false
@@ -75,7 +75,7 @@ jobs:
cache-name: linux-template-mono
target: template_release
sconsflags: module_mono_enabled=yes
- bin: ./bin/godot.linuxbsd.template_release.x86_64.mono
+ bin: ./bin/redot.linuxbsd.template_release.x86_64.mono
build-mono: false
tests: true
artifact: true
@@ -84,7 +84,7 @@ jobs:
cache-name: linux-template-minimal
target: template_release
sconsflags: modules_enabled_by_default=no disable_3d=yes disable_advanced_gui=yes deprecated=no minizip=no
- bin: ./bin/godot.linuxbsd.template_release.x86_64
+ bin: ./bin/redot.linuxbsd.template_release.x86_64
tests: true
artifact: true
@@ -162,8 +162,8 @@ jobs:
- name: Prepare artifact
if: matrix.artifact
run: |
- strip bin/godot.*
- chmod +x bin/godot.*
+ strip bin/redot.*
+ chmod +x bin/redot.*
- name: Upload artifact
uses: ./.github/actions/upload-artifact
diff --git a/.github/workflows/macos_builds.yml b/.github/workflows/macos_builds.yml
index fcf4b00afb..cc789d4c4a 100644
--- a/.github/workflows/macos_builds.yml
+++ b/.github/workflows/macos_builds.yml
@@ -24,14 +24,14 @@ jobs:
cache-name: macos-editor
target: editor
tests: true
- bin: ./bin/godot.macos.editor.universal
+ bin: ./bin/redot.macos.editor.universal
- name: Template (target=template_release, tests=yes)
cache-name: macos-template
target: template_release
tests: true
sconsflags: debug_symbols=no
- bin: ./bin/godot.macos.template_release.universal
+ bin: ./bin/redot.macos.template_release.universal
steps:
- name: Checkout
@@ -76,10 +76,10 @@ jobs:
- name: Prepare artifact
run: |
- lipo -create ./bin/godot.macos.${{ matrix.target }}.x86_64 ./bin/godot.macos.${{ matrix.target }}.arm64 -output ./bin/godot.macos.${{ matrix.target }}.universal
- rm ./bin/godot.macos.${{ matrix.target }}.x86_64 ./bin/godot.macos.${{ matrix.target }}.arm64
- strip bin/godot.*
- chmod +x bin/godot.*
+ lipo -create ./bin/redot.macos.${{ matrix.target }}.x86_64 ./bin/redot.macos.${{ matrix.target }}.arm64 -output ./bin/redot.macos.${{ matrix.target }}.universal
+ rm ./bin/redot.macos.${{ matrix.target }}.x86_64 ./bin/redot.macos.${{ matrix.target }}.arm64
+ strip bin/redot.*
+ chmod +x bin/redot.*
- name: Upload artifact
uses: ./.github/actions/upload-artifact
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 0000000000..12bb6abca0
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,337 @@
+name: Build Redot Project
+
+on:
+ workflow_dispatch:
+
+jobs:
+ build-linux:
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine # Adjust this to the actual repo
+ ref: master
+
+ - name: Install Dependencies
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y \
+ scons \
+ pkg-config \
+ libx11-dev \
+ libxcursor-dev \
+ libxrandr-dev \
+ libxi-dev \
+ libgl1-mesa-dev \
+ libglu1-mesa-dev \
+ build-essential \
+ gcc \
+ g++ \
+ python3
+
+ - name: Build Redot Project for Linux
+ run: |
+ scons platform=linuxbsd production=yes
+
+ - name: Upload Linux dev artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-linux-dev
+ path: bin
+
+ build-linux-template:
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+
+ - name: Install Dependencies
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y \
+ scons \
+ pkg-config \
+ libx11-dev \
+ libxcursor-dev \
+ libxrandr-dev \
+ libxi-dev \
+ libgl1-mesa-dev \
+ libglu1-mesa-dev \
+ build-essential \
+ gcc \
+ g++ \
+ python3
+
+ - name: Build Redot Templates for Linux
+ run: |
+ scons platform=linuxbsd target=template_release
+
+ - name: Upload Linux Template Artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-linux-template
+ path: bin
+
+ build-windows:
+ runs-on: windows-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+
+ - name: Setup Scoop
+ uses: MinoruSekine/setup-scoop@v4.0.1
+ with:
+ buckets: extras
+ apps: gcc python scons make mingw
+
+ - name: Build Redot Project for Windows
+ run: |
+ scons platform=windows production=yes
+
+ - name: Upload Windows dev artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-windows-dev
+ path: bin
+
+ build-windows-template:
+ runs-on: windows-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+
+ - name: Setup Scoop
+ uses: MinoruSekine/setup-scoop@v4.0.1
+ with:
+ buckets: extras
+ apps: gcc python scons make mingw
+
+ - name: Build Redot Templates for Windows
+ run: |
+ scons platform=windows target=template_release
+
+ - name: Upload Windows Template Artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-windows-template
+ path: bin
+
+ build-macos-x64:
+ runs-on: macos-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+ - name: Setup Vulkan SDK
+ run: |
+ sh misc/scripts/install_vulkan_sdk_macos.sh
+ - name: Install Dependencies
+ run: |
+ brew install scons pkg-config
+
+ - name: Build Redot Project for macOS x64
+ run: |
+ scons platform=macos arch=x64 production=yes
+
+ - name: Upload macOS x64 dev artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-macos-x64-dev
+ path: bin
+
+ build-macos-arm64:
+ runs-on: macos-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+
+ - name: Setup Vulkan SDK
+ run: |
+ sh misc/scripts/install_vulkan_sdk_macos.sh
+ - name: Install Dependencies
+ run: |
+ brew install scons pkg-config
+
+ - name: Build Redot Project for macOS arm64
+ run: |
+ scons platform=macos arch=arm64
+
+ - name: Upload macOS arm64 dev artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-macos-arm64-dev
+ path: bin
+
+ build-macos-x64-template:
+ runs-on: macos-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+ - name: Setup Vulkan SDK
+ run: |
+ sh misc/scripts/install_vulkan_sdk_macos.sh
+ - name: Install Dependencies
+ run: |
+ brew install scons pkg-config
+
+ - name: Build Redot Templates for macOS x64
+ run: |
+ scons platform=macos arch=x64 target=template_release
+
+ - name: Upload macOS x64 Template Artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-macos-x64-template
+ path: bin
+
+ build-macos-arm64-template:
+ runs-on: macos-latest
+
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v3
+ with:
+ repository: Redot-Engine/redot-engine
+ ref: master
+ - name: Setup Vulkan SDK
+ run: |
+ sh misc/scripts/install_vulkan_sdk_macos.sh
+ - name: Install Dependencies
+ run: |
+ brew install scons pkg-config
+
+ - name: Build Redot Templates for macOS arm64
+ run: |
+ scons platform=macos arch=arm64 target=template_release
+
+ - name: Upload macOS arm64 Template Artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: redot-macos-arm64-template
+ path: bin
+
+ release:
+ needs: [build-linux, build-windows, build-linux-template, build-windows-template, build-macos-x64, build-macos-arm64, build-macos-x64-template, build-macos-arm64-template]
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+
+ steps:
+ - name: Download Linux dev artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-linux-dev
+ path: redot-linux-dev
+
+ - name: Download Windows dev artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-windows-dev
+ path: redot-windows-dev
+
+ - name: Download Linux template artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-linux-template
+ path: redot-linux-template
+
+ - name: Download Windows template artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-windows-template
+ path: redot-windows-template
+
+ - name: Download macOS x64 dev artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-macos-x64-dev
+ path: redot-macos-x64-dev
+
+ - name: Download macOS arm64 dev artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-macos-arm64-dev
+ path: redot-macos-arm64-dev
+
+ - name: Download macOS x64 template artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-macos-x64-template
+ path: redot-macos-x64-template
+
+ - name: Download macOS arm64 template artifact
+ uses: actions/download-artifact@v4
+ with:
+ name: redot-macos-arm64-template
+ path: redot-macos-arm64-template
+
+ - name: Get the current date
+ id: date
+ run: echo "CURRENT_DATE=$(date +'%Y%m%d%H')" >> $GITHUB_ENV
+
+ - name: Zip the dev artifact
+ run: |
+ zip -r redot-linuxbsd.zip redot-linux-dev/*
+ zip -r redot-windowsx64.zip redot-windows-dev/*
+ zip -r redot-macos-x64.zip redot-macos-x64-dev/*
+ zip -r redot-macos-arm64.zip redot-macos-arm64-dev/*
+ zip -r redot-linux-template.zip redot-linux-template/*
+ zip -r redot-windows-template.zip redot-windows-template/*
+ zip -r redot-macos-x64-template.zip redot-macos-x64-template/*
+ zip -r redot-macos-arm64-template.zip redot-macos-arm64-template/*
+
+ # - name: Upload release artifacts
+ # uses: actions/upload-artifact@v4
+ # with:
+ # name: redot-release-${{ env.CURRENT_DATE }}
+ # path: |
+ # redot-linuxbsd.zip
+ # redot-windowsx64.zip
+ # redot-macos-x64.zip
+ # redot-macos-arm64.zip
+ # redot-linux-template.zip
+ # redot-windows-template.zip
+ # redot-macos-x64-template.zip
+ # redot-macos-arm64-template.zip
+
+ - name: Upload dev build artifacts to GitHub dev
+ uses: softprops/action-gh-release@v2
+ with:
+ tag_name: ${{ env.CURRENT_DATE }}
+ name: Build ${{ env.CURRENT_DATE }}
+ draft: false
+ make_latest: true
+ files: |
+ redot-linuxbsd.zip
+ redot-windowsx64.zip
+ redot-macos-x64.zip
+ redot-macos-arm64.zip
+ redot-linux-template.zip
+ redot-windows-template.zip
+ redot-macos-x64-template.zip
+ redot-macos-arm64-template.zip
diff --git a/.github/workflows/windows_builds.yml b/.github/workflows/windows_builds.yml
index 384284b604..240ea6a535 100644
--- a/.github/workflows/windows_builds.yml
+++ b/.github/workflows/windows_builds.yml
@@ -29,7 +29,7 @@ jobs:
tests: true
# Skip debug symbols, they're way too big with MSVC.
sconsflags: debug_symbols=no vsproj=yes vsproj_gen_only=no windows_subsystem=console
- bin: ./bin/godot.windows.editor.x86_64.exe
+ bin: ./bin/redot.windows.editor.x86_64.exe
compiler: msvc
- name: Editor w/ clang-cl (target=editor, tests=yes, use_llvm=yes)
@@ -37,7 +37,7 @@ jobs:
target: editor
tests: true
sconsflags: debug_symbols=no windows_subsystem=console use_llvm=yes
- bin: ./bin/godot.windows.editor.x86_64.llvm.exe
+ bin: ./bin/redot.windows.editor.x86_64.llvm.exe
compiler: clang
- name: Template (target=template_release, tests=yes)
@@ -45,7 +45,7 @@ jobs:
target: template_release
tests: true
sconsflags: debug_symbols=no
- bin: ./bin/godot.windows.template_release.x86_64.console.exe
+ bin: ./bin/redot.windows.template_release.x86_64.console.exe
compiler: msvc
- name: Template w/ GCC (target=template_release, tests=yes, use_mingw=yes)
@@ -54,7 +54,7 @@ jobs:
target: template_release
tests: true
sconsflags: debug_symbols=no use_mingw=yes
- bin: ./bin/godot.windows.template_release.x86_64.console.exe
+ bin: ./bin/redot.windows.template_release.x86_64.console.exe
compiler: gcc
steps:
@@ -102,6 +102,14 @@ jobs:
target: ${{ matrix.target }}
tests: ${{ matrix.tests }}
+ - name: Generate Glue Code
+ if: ${{ matrix.cache-name == 'windows-editor-mono' }}
+ run: ./bin/redot.windows.editor.x86_64.mono.exe --headless --generate-mono-glue modules/mono/glue
+
+ - name: Build GodotSharp
+ if: ${{ matrix.cache-name == 'windows-editor-mono' }}
+ run: python modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin
+
- name: Save Godot build cache
uses: ./.github/actions/godot-cache-save
with: