bump v0.1.0
This commit is contained in:
@@ -11847,91 +11847,414 @@ Add a gitea workflow for this project in a way that mirrors my AMZNCharTools ext
|
|||||||
|
|
||||||
_**Agent (model default, mode Agent)**_
|
_**Agent (model default, mode Agent)**_
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
The user wants me to add a Gitea workflow for the Dynamic-Link-Manager project, mirroring the structure from the AMZNCharTools (AmazonCharacterTools) extension they modeled the project after. I need to:
|
||||||
|
|
||||||
|
1. Look at the AmazonCharacterTools project for its Gitea workflow(s)
|
||||||
|
2. Create similar workflow(s) in Dynamic-Link-Manager
|
||||||
|
|
||||||
|
Let me search for Gitea workflow files in the AmazonCharacterTools project.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="glob_file_search">
|
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
|
||||||
<details>
|
<details>
|
||||||
<summary>Tool use: **glob_file_search**</summary>
|
<summary>Tool use: **glob_file_search** • Searched codebase "undefined" • **2** results in **1** directory</summary>
|
||||||
|
|
||||||
Status: **loading**
|
Directory: **T:\AmazonCharacterTools** (2 files)
|
||||||
|
|
||||||
|
| File |
|
||||||
|
|------|
|
||||||
|
| `../..\AmazonCharacterTools\.gitea\workflows\release.yml` |
|
||||||
|
| `../..\AmazonCharacterTools\.gitea\docker-compose.runner.yml` |
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="glob_file_search">
|
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
|
||||||
<details>
|
<details>
|
||||||
<summary>Tool use: **glob_file_search**</summary>
|
<summary>Tool use: **glob_file_search** • Searched codebase "undefined" • **2** results in **1** directory</summary>
|
||||||
|
|
||||||
Status: **loading**
|
Directory: **T:\AmazonCharacterTools** (2 files)
|
||||||
|
|
||||||
|
| File |
|
||||||
|
|------|
|
||||||
|
| `../..\AmazonCharacterTools\.gitea\workflows\release.yml` |
|
||||||
|
| `../..\AmazonCharacterTools\.gitea\docker-compose.runner.yml` |
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
Found the Gitea workflow and docker-compose in AmazonCharacterTools. Let me read those files and also check if Dynamic-Link-Manager has any .gitea folder yet.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="read_file_v2">
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
<details>
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\AmazonCharacterTools\.gitea\workflows\release.yml</summary>
|
||||||
<summary>Tool use: **read_file_v2**</summary>
|
|
||||||
|
|
||||||
Status: **loading**
|
|
||||||
|
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="read_file_v2">
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
<details>
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\AmazonCharacterTools\.gitea\docker-compose.runner.yml</summary>
|
||||||
<summary>Tool use: **read_file_v2**</summary>
|
|
||||||
|
|
||||||
Status: **loading**
|
|
||||||
|
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="glob_file_search">
|
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
|
||||||
<details>
|
<details>
|
||||||
<summary>Tool use: **glob_file_search**</summary>
|
<summary>Tool use: **glob_file_search** • Searched codebase "undefined" • **0** result in **1** directory</summary>
|
||||||
|
|
||||||
Status: **loading**
|
|
||||||
|
|
||||||
|
Directory: **T:\Dynamic-Link-Manager** (0 file)
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<tool-use data-tool-type="unknown" data-tool-name="read_file_v2">
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
<details>
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\Dynamic-Link-Manager\blender_manifest.toml</summary>
|
||||||
<summary>Tool use: **read_file_v2**</summary>
|
|
||||||
|
|
||||||
Status: **loading**
|
|
||||||
|
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
</tool-use>
|
</tool-use>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\AmazonCharacterTools\blender_manifest.toml</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
I have what I need. The AmazonCharacterTools has:
|
||||||
|
1. `.gitea/workflows/release.yml` - A workflow that:
|
||||||
|
- Triggers on workflow_dispatch with input release_tag
|
||||||
|
- Gets version from blender_manifest.toml using Python/tomllib
|
||||||
|
- Creates a zip with addon dir name "amzncharactertools" and copies __init__.py, blender_manifest.toml, ops, ui, utils
|
||||||
|
- Creates a release via API and uploads the zip as asset
|
||||||
|
|
||||||
|
2. `.gitea/docker-compose.runner.yml` - Runner config (user-specific, with tokens/paths) - I should NOT copy this verbatim; it's environment-specific. I could add a similar file but with placeholders, or skip it since the user said "workflow" and the workflow is the main thing. I'll add the workflow and optionally a docker-compose that mirrors structure but with neutral placeholders so they can duplicate and fill in.
|
||||||
|
|
||||||
|
For Dynamic-Link-Manager:
|
||||||
|
- Addon id in manifest is "dynamiclinkmanager", name "Dynamic Link Manager"
|
||||||
|
- Structure: has ops/, ui/, and from the conversation also utils might exist. Let me check.
|
||||||
|
- Top-level: __init__.py, blender_manifest.toml (and maybe others)
|
||||||
|
|
||||||
|
I'll create:
|
||||||
|
1. `.gitea/workflows/release.yml` - adapted for Dynamic-Link-Manager:
|
||||||
|
- Same structure (workflow_dispatch, get version from blender_manifest.toml)
|
||||||
|
- ADDON_DIR=dynamiclinkmanager (lowercase, from manifest id or typical zip name)
|
||||||
|
- zip_name=dynamiclinkmanager_${version}.zip or dynamic_link_manager_${version}.zip - the AMZN one uses amzncharactertools_version.zip so I'll use dynamiclinkmanager_version.zip
|
||||||
|
- Copy same kind of files: __init__.py, blender_manifest.toml, ops, ui, utils if present
|
||||||
|
|
||||||
|
Let me check Dynamic-Link-Manager structure for dirs and top-level files.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
Checking Dynamic-Link-Manager layout to match the zip structure:
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
|
||||||
|
<details>
|
||||||
|
<summary>Tool use: **glob_file_search** • Searched codebase "undefined" • **28** results in **1** directory</summary>
|
||||||
|
|
||||||
|
Directory: **T:\Dynamic-Link-Manager** (28 files)
|
||||||
|
|
||||||
|
| File |
|
||||||
|
|------|
|
||||||
|
| `../ui/preferences.py` |
|
||||||
|
| `../ops/__init__.py` |
|
||||||
|
| `../__init__.py` |
|
||||||
|
| `../ops/migrator.py` |
|
||||||
|
| `../ui/__init__.py` |
|
||||||
|
| `../utils/__init__.py` |
|
||||||
|
| `../blender_manifest.toml` |
|
||||||
|
| `../.cursorindexingignore` |
|
||||||
|
| `../ui/operators.py` |
|
||||||
|
| `../.specstory/history/2025-08-20_22-43Z-creating-a-blender-extension-for-asset-replacement.md` |
|
||||||
|
| `../ops\tweak_tools.py` |
|
||||||
|
| `../ui\properties.py` |
|
||||||
|
| `../ui/panels.py` |
|
||||||
|
| `../ui\__pycache__\properties.cpython-311.pyc` |
|
||||||
|
| `../.specstory/history/2026-02-18_23-39Z-character-migrator-workflow-integration.md` |
|
||||||
|
| `../ui\panels.py` |
|
||||||
|
| `../.specstory/.gitignore` |
|
||||||
|
| `../ui\__pycache__\operators.cpython-311.pyc` |
|
||||||
|
| `../ui\operators.py` |
|
||||||
|
| `../ui\__pycache__\panels.cpython-311.pyc` |
|
||||||
|
| `../ops\__pycache__\migrator.cpython-311.pyc` |
|
||||||
|
| `../ops\migrator.py` |
|
||||||
|
| `../.specstory\history\2026-02-19_18-53Z-blendfile-local-datablocks-analysis.md` |
|
||||||
|
| `../.specstory\.what-is-this.md` |
|
||||||
|
| `../.specstory\history\2026-02-18_23-39Z-character-migrator-workflow-integration.md` |
|
||||||
|
| `../.gitignore` |
|
||||||
|
| `../ui/properties.py` |
|
||||||
|
| `../ops/library.py` |
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\Dynamic-Link-Manager\__init__.py</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
Dynamic-Link-Manager has:
|
||||||
|
- __init__.py (root)
|
||||||
|
- blender_manifest.toml
|
||||||
|
- ops/ (with __init__.py, migrator.py, tweak_tools.py, library.py)
|
||||||
|
- ui/ (with __init__.py, operators.py, panels.py, properties.py, preferences.py)
|
||||||
|
- utils/ (with __init__.py)
|
||||||
|
|
||||||
|
The addon is loaded by Blender with a module name - from the manifest, id = "dynamiclinkmanager". The folder name when installed is often the repo name "Dynamic-Link-Manager" but for zips it's usually a single token. AMZN uses "amzncharactertools" as the folder inside the zip. For Blender extensions/addons the folder name in the zip should match what the addon expects. Looking at the manifest, `id = "dynamiclinkmanager"` - so the zip could be structured as a folder "dynamiclinkmanager" or "Dynamic-Link-Manager". The AMZN workflow uses ADDON_DIR=amzncharactertools (manifest id). So I'll use dynamiclinkmanager.
|
||||||
|
|
||||||
|
Creating the workflow and the docker-compose. For docker-compose I'll mirror the structure but use placeholder/example values so the user can duplicate and configure (or I'll use generic names like "dlm-runner" and leave tokens/paths as placeholders).
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
Adding `.gitea/workflows/release.yml` and `.gitea/docker-compose.runner.yml` to mirror AmazonCharacterTools.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="write" data-tool-name="edit_file_v2">
|
||||||
|
|
||||||
|
<details><summary>Tool use: **edit_file_v2** • Edit file: T:\Dynamic-Link-Manager\.gitea\workflows\release.yml</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\AmazonCharacterTools\.gitea\docker-compose.runner.yml</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
I'll add a docker-compose.runner.yml that mirrors the structure but is clearly for Dynamic-Link-Manager (different runner name, placeholder token). The user can reuse the same runner for multiple repos or duplicate and change the token/name. I'll use placeholder token and a distinct runner name so it doesn't conflict with the AMZN one if they want a separate runner.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="write" data-tool-name="edit_file_v2">
|
||||||
|
|
||||||
|
<details><summary>Tool use: **edit_file_v2** • Edit file: T:\Dynamic-Link-Manager\.gitea\docker-compose.runner.yml</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
Done. I've added:
|
||||||
|
1. `.gitea/workflows/release.yml` - mirrors AMZNCharTools release workflow, adapted for Dynamic-Link-Manager (version from blender_manifest.toml, zip name dynamiclinkmanager_<version>.zip, ADDON_DIR=dynamiclinkmanager, same ops/ui/utils copy pattern).
|
||||||
|
2. `.gitea/docker-compose.runner.yml` - mirrors the runner compose file with container name gitea-act-runner-dlm, runner name dlm-runner, and placeholder token so they can register a runner for this repo (or reuse the same runner as AMZN if they prefer).
|
||||||
|
|
||||||
|
No need to run linters on YAML. I'll summarize for the user.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
Summary of what was added to mirror your AMZNCharacterTools setup:
|
||||||
|
|
||||||
|
**1. `.gitea/workflows/release.yml`**
|
||||||
|
- **Trigger:** `workflow_dispatch` with input `release_tag` (e.g. `v0.3.0`).
|
||||||
|
- **Version:** Read from `blender_manifest.toml` via Python/tomllib; outputs `version` and `zip_name=dynamiclinkmanager_<version>.zip`.
|
||||||
|
- **ZIP layout:** Top-level `__init__.py` and `blender_manifest.toml`, plus `ops/`, `ui/`, and `utils/` (if present), all under a single folder `dynamiclinkmanager` (manifest `id`).
|
||||||
|
- **Release:** Creates a draft release for the given tag and uploads the zip as an asset using `GITEA_TOKEN`.
|
||||||
|
|
||||||
|
**2. `.gitea/docker-compose.runner.yml`**
|
||||||
|
- Same layout as AMZN’s runner compose.
|
||||||
|
- `container_name`: `gitea-act-runner-dlm`, `GITEA_RUNNER_NAME`: `dlm-runner`.
|
||||||
|
- `GITEA_RUNNER_REGISTRATION_TOKEN` is set to `<your-runner-token>`; replace with the token from **Repository → Settings → Actions → Runners → New Runner** (or point the repo at your existing `amzn-tools-runner` and skip this file).
|
||||||
|
|
||||||
|
If you already use one Gitea Actions runner for all repos, you can ignore the docker-compose file and only use the workflow; it uses `runs-on: ubuntu-latest`, which works with a standard runner.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
_**User**_
|
||||||
|
|
||||||
|
bump version to 0.1.0 and update the changelog to concisely summarize the last 9 commits.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
_**Agent (model default, mode Agent)**_
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
The user wants me to:
|
||||||
|
1. Bump version to 0.1.0 in the project (likely blender_manifest.toml)
|
||||||
|
2. Update the changelog to concisely summarize the last 9 commits
|
||||||
|
|
||||||
|
I need to:
|
||||||
|
1. Find where version is defined (blender_manifest.toml)
|
||||||
|
2. Find the changelog file (CHANGELOG.md or similar)
|
||||||
|
3. Get the last 9 commits from git
|
||||||
|
4. Update version and write changelog entries
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="read" data-tool-name="read_file_v2">
|
||||||
|
<details><summary>Tool use: **read_file_v2** • Read file: T:\Dynamic-Link-Manager\blender_manifest.toml</summary>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
|
||||||
|
<details>
|
||||||
|
<summary>Tool use: **glob_file_search** • Searched codebase "undefined" • **0** result in **1** directory</summary>
|
||||||
|
|
||||||
|
Directory: **T:\Dynamic-Link-Manager** (0 file)
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="shell" data-tool-name="run_terminal_command_v2">
|
||||||
|
<details><summary>Tool use: **run_terminal_command_v2** • Run command: cd /d T:\Dynamic-Link-Manager && git log -9 --oneline</summary>
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /d T:\Dynamic-Link-Manager && git log -9 --oneline
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
Set-Location: C:\Users\Nathan\AppData\Local\Temp\ps-script-24013b75-b893-4570-9bbb-ef187ab3e60b.ps1:7
|
||||||
|
Line |
|
||||||
|
7 | cd /d T:\Dynamic-Link-Manager && git log -9 --oneline
|
||||||
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
| A positional parameter cannot be found that accepts argument 'T:\Dynamic-Link-Manager'.
|
||||||
|
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<think><details><summary>Thought Process</summary>
|
||||||
|
|
||||||
|
PowerShell doesn't use `cd /d`. I need to use Set-Location or cd without /d. Also there's no CHANGELOG file - I'll need to create one. Let me get the git log with a proper PowerShell command.
|
||||||
|
</details></think>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="shell" data-tool-name="run_terminal_command_v2">
|
||||||
|
<details><summary>Tool use: **run_terminal_command_v2** • Run command: Set-Location T:\Dynamic-Link-Manager; git log -9 --oneline</summary>
|
||||||
|
|
||||||
|
```bash
|
||||||
|
Set-Location T:\Dynamic-Link-Manager; git log -9 --oneline
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
6d9fb0f gitea composer
|
||||||
|
1f28932 MigNLA action slot behavior and reports
|
||||||
|
ae38056 refactor operator labels and document operators
|
||||||
|
55afba3 NLAMig AnimLayers feature
|
||||||
|
a3868e1 tweak tools (untested for now)
|
||||||
|
4dee5cb fix BBod Shapekeys liboverride and copy values
|
||||||
|
4b6a351 truncate names
|
||||||
|
4d5706d specify icons
|
||||||
|
7642ff5 redefine and fix migrate basebody shapkeys
|
||||||
|
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<tool-use data-tool-type="shell" data-tool-name="run_terminal_command_v2">
|
||||||
|
<details><summary>Tool use: **run_terminal_command_v2** • Run command: Set-Location T:\Dynamic-Link-Manager; git log -9 --format="%s"</summary>
|
||||||
|
|
||||||
|
```bash
|
||||||
|
Set-Location T:\Dynamic-Link-Manager; git log -9 --format="%s"
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
gitea composer
|
||||||
|
MigNLA action slot behavior and reports
|
||||||
|
refactor operator labels and document operators
|
||||||
|
NLAMig AnimLayers feature
|
||||||
|
tweak tools (untested for now)
|
||||||
|
fix BBod Shapekeys liboverride and copy values
|
||||||
|
truncate names
|
||||||
|
specify icons
|
||||||
|
redefine and fix migrate basebody shapkeys
|
||||||
|
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
</tool-use>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
## [0.1.0] - 2026-02-19
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Gitea release workflow and runner docker-compose.
|
||||||
|
- Tweak tools subsection: add/remove/bake constraints for arms, legs, and both; track name and post-clean options.
|
||||||
|
- MigNLA: when no NLA, copy active action and action slot (incl. last_slot_identifier, blend/extrapolation/influence); debug logging for slot migration.
|
||||||
|
- NLAMig: AnimLayers support (mirror `als.turn_on`), strip timing and properties; active-action-only path when no NLA tracks.
|
||||||
|
- Operator icons (CopyAttr, MigNLA, CustProps, BoneConst, RetargRelatives, MigBBodyShapeKeys, pickers, tweak ops).
|
||||||
|
- BaseBody shapekeys step: prefer original base body’s shape-key action slot; library override + editable; copy shape key values.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Operator labels refactored to canonical short names (CopyAttr, MigNLA, MigCustProps, etc.) with `bl_description` on all UI operators.
|
||||||
|
- Migrate BaseBody shapekeys redefined: find base body in hierarchy, override mesh/key data when linked, then apply shape-key action.
|
||||||
|
- Button labels truncated (e.g. “NLA”, “BaseBody ShapeKeys”).
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- BaseBody shapekeys: lib override creation and value copy; correct original-base-body lookup and slot assignment.
|
||||||
@@ -3,7 +3,7 @@ schema_version = "1.0.0"
|
|||||||
id = "dynamiclinkmanager"
|
id = "dynamiclinkmanager"
|
||||||
name = "Dynamic Link Manager"
|
name = "Dynamic Link Manager"
|
||||||
tagline = "Character migrator and linked library tools"
|
tagline = "Character migrator and linked library tools"
|
||||||
version = "0.0.2"
|
version = "0.1.0"
|
||||||
type = "add-on"
|
type = "add-on"
|
||||||
|
|
||||||
# Optional: Semantic Versioning
|
# Optional: Semantic Versioning
|
||||||
|
|||||||
Reference in New Issue
Block a user