From 96e8d201e4e6ab2459726316ce405ee662ae4af0 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 08:50:16 -0700 Subject: [PATCH 01/10] Ignore .claude --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a55b8bd..ded7098 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,4 @@ npm-debug.log* # Archived reference v1-reference/ +.claude From b359b995d34b3f31158ba705851ef95bcee44949 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 09:05:55 -0700 Subject: [PATCH 02/10] Comment and reorder items --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ded7098..44e1874 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,8 @@ npm-debug.log* *.tmp *.bak +# Ignore Claude +.claude + # Archived reference v1-reference/ -.claude From cd94a92af80e0a8b3c3d7ba0aa04de4f9e3da751 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 09:31:53 -0700 Subject: [PATCH 03/10] Add CY2027 Draft and update support guidance --- _config.yml | 2 +- _data/platforms/CY2027.yml | 61 ++++++++++++++++++++++++++++++++++++++ _data/status_updates.yml | 5 ++++ index.html | 2 +- 4 files changed, 68 insertions(+), 2 deletions(-) create mode 100644 _data/platforms/CY2027.yml diff --git a/_config.yml b/_config.yml index f5fb494..89292f1 100644 --- a/_config.yml +++ b/_config.yml @@ -7,7 +7,7 @@ baseurl: "" # Platform year configuration current_year: 2026 -supported_years_count: 4 +supported_years_count: 3 # Build settings markdown: kramdown diff --git a/_data/platforms/CY2027.yml b/_data/platforms/CY2027.yml new file mode 100644 index 0000000..e8f2e8e --- /dev/null +++ b/_data/platforms/CY2027.yml @@ -0,0 +1,61 @@ +year: 2027 +status: draft +last_updated: "2026-04-08" + +linux: + gcc: + version: "14.2" + min_max: true + glibc: + version: "2.34" + min_max: true + +macos: + deployment_target: + version: "15.0" + note: footnote-macos + +windows: + visual_studio: + version: "Visual Studio 2022 v17.14 or later" + sdk: + version: "10.0.22621 or later" + +components: + python: + version: "3.13.x" + qt: + version: "6.8.x" + pyqt: + version: "6.8.x" + pyside: + version: "6.8.x" + numpy: + version: "2.4.x" + imath: + version: "3.2.x" + openexr: + version: "3.5.x" + ptex: + version: "2.5.x" + opensubdiv: + version: "3.7.x" + openvdb: + version: "14.x" + alembic: + version: "1.8.x" + fbx: + version: "2020.2 - 2020.latest" + opencolorio: + version: "2.6.x" + aces: + version: "2.0" + boost: + version: "1.91" + onetbb: + version: "2022.x" + min_max: true + onemkl: + version: "2025" + cpp_standard: + version: "C++20" diff --git a/_data/status_updates.yml b/_data/status_updates.yml index ca4408b..b193752 100644 --- a/_data/status_updates.yml +++ b/_data/status_updates.yml @@ -1,4 +1,9 @@ updates: + - date: "2026-04-12" + display_date: "12th April 2026" + content: | + CY2027 Draft published, with a number of significant changes to XXXXXXXXXXX. We are currently soliciting feedback on this Draft so please either send to [feedback@vfxplatform.com](mailto:feedback@vfxplatform.com) or share on [vfx-platform-discuss](https://groups.google.com/g/vfx-platform-discuss). + - date: "2025-11-05" display_date: "5th November 2025" content: | diff --git a/index.html b/index.html index b876113..8156719 100644 --- a/index.html +++ b/index.html @@ -130,7 +130,7 @@

Support Guidance

Support Window

- Providers of software libraries focused on VFX and animation content creation should aim to support their releases for the current calendar year and the three preceding years with compatible updates. Studios and end users should have no expectation of support for older libraries. + Providers of open source software libraries focused on VFX and animation content creation should aim to support their releases for the current calendar year and the three preceding years with compatible updates. Studios and end users should have no expectation of support for older libraries.

From a7e195998a2b24761ed1b9ac09b1e74e127fdb64 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 09:43:28 -0700 Subject: [PATCH 04/10] Updated current_year to 2027 --- _config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_config.yml b/_config.yml index 89292f1..9d1e9ab 100644 --- a/_config.yml +++ b/_config.yml @@ -6,7 +6,7 @@ url: "https://vfxplatform.com" baseurl: "" # Platform year configuration -current_year: 2026 +current_year: 2027 supported_years_count: 3 # Build settings From fe6950a04fd3dff15adf00fa24aabcf69485f010 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 10:54:39 -0700 Subject: [PATCH 05/10] Use latest final year instead of current_year for homepage description The hero description now dynamically references the most recent platform year with 'final' status, rather than hardcoding to current_year which may be a draft. Co-Authored-By: Claude Opus 4.6 --- index.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 8156719..06a557b 100644 --- a/index.html +++ b/index.html @@ -5,6 +5,14 @@ --- {% assign current_year = site.current_year %} +{% assign latest_final_year = 0 %} +{% for platform in site.data.platforms %} + {% assign year_num = platform[0] | remove: "CY" | plus: 0 %} + {% assign year_data = platform[1] %} + {% if year_data.status == 'final' and year_num > latest_final_year %} + {% assign latest_final_year = year_num %} + {% endif %} +{% endfor %} {% assign supported_years = "" | split: "" %} {% assign final_count = 0 %} {% assign max_finals = site.supported_years_count %} @@ -62,7 +70,7 @@

Current Status

- The Calendar Year {{ current_year }} (CY{{ current_year }}) Reference Platform is the target for all major software releases in {{ current_year }}. + The Calendar Year {{ latest_final_year }} (CY{{ latest_final_year }}) Reference Platform is the target for all major software releases in {{ latest_final_year }}.

{% include status-updates.html limit=4 style="cards" %} From 8db8453673a019c6de0ece51affa830361b9dc6b Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 11:02:24 -0700 Subject: [PATCH 06/10] Revert to 4 supported years --- _config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_config.yml b/_config.yml index 9d1e9ab..59fe2b8 100644 --- a/_config.yml +++ b/_config.yml @@ -7,7 +7,7 @@ baseurl: "" # Platform year configuration current_year: 2027 -supported_years_count: 3 +supported_years_count: 4 # Build settings markdown: kramdown From e3ac2d15eea98ded0fbb6d0c012d17768ded7bf8 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Wed, 8 Apr 2026 13:04:04 -0700 Subject: [PATCH 07/10] Add Draft label to Compare page table headers and dropdowns Co-Authored-By: Claude Opus 4.6 --- assets/js/year-comparison.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/assets/js/year-comparison.js b/assets/js/year-comparison.js index ae2c98e..cf200b0 100644 --- a/assets/js/year-comparison.js +++ b/assets/js/year-comparison.js @@ -33,8 +33,9 @@ // Populate select dropdowns function populateSelects() { years.forEach(function(year, index) { - const option1 = new Option(year, year, index === 0, index === 0); - const option2 = new Option(year, year, index === 1, index === 1); + const label = platformData[year] && platformData[year].status !== 'final' ? year + ' (Draft)' : year; + const option1 = new Option(label, year, index === 0, index === 0); + const option2 = new Option(label, year, index === 1, index === 1); year1Select.add(option1); year2Select.add(option2); }); @@ -99,8 +100,8 @@ let html = '
'; html += ''; html += ''; - html += ''; - html += ''; + html += ''; + html += ''; html += ''; if (filtered.length === 0) { From 3c1dec257a1762c00335b9a11cf4bf2712344386 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Thu, 9 Apr 2026 13:45:41 -0700 Subject: [PATCH 08/10] Bumped OpenSubDiv --- _data/platforms/CY2027.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/platforms/CY2027.yml b/_data/platforms/CY2027.yml index e8f2e8e..1ac3423 100644 --- a/_data/platforms/CY2027.yml +++ b/_data/platforms/CY2027.yml @@ -39,7 +39,7 @@ components: ptex: version: "2.5.x" opensubdiv: - version: "3.7.x" + version: "3.8.x" openvdb: version: "14.x" alembic: From ebb66a8a2c68d6538c06b1b6929c996e1314a6e0 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Thu, 9 Apr 2026 13:51:50 -0700 Subject: [PATCH 09/10] Fix version-changed highlight hidden by alternate row striping Co-Authored-By: Claude Opus 4.6 --- assets/css/main.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/assets/css/main.css b/assets/css/main.css index 672527e..f9d3a75 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -131,6 +131,10 @@ @apply bg-gray-50 dark:bg-gray-800/30; } + .platform-table tr.row-alt td.version-changed { + @apply bg-amber-50 dark:bg-amber-900/30; + } + .platform-table .category-header td { @apply font-bold text-left text-sm tracking-wider bg-gray-200 dark:bg-gray-700/70 py-2; color: rgb(var(--color-text-heading)); From 185c20e711bfb8ac622ca54a30d9a45cc95957f7 Mon Sep 17 00:00:00 2001 From: Nick Cannon Date: Thu, 9 Apr 2026 14:07:25 -0700 Subject: [PATCH 10/10] Use darker amber shade for version-changed highlight on alternate rows Co-Authored-By: Claude Opus 4.6 --- assets/css/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/css/main.css b/assets/css/main.css index f9d3a75..c3260e7 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -132,7 +132,7 @@ } .platform-table tr.row-alt td.version-changed { - @apply bg-amber-50 dark:bg-amber-900/30; + @apply bg-amber-100 dark:bg-amber-900/40; } .platform-table .category-header td {
CategoryComponent' + year1 + '' + year2 + '' + year1 + (platformData[year1] && platformData[year1].status !== 'final' ? ' DRAFT' : '') + '' + year2 + (platformData[year2] && platformData[year2].status !== 'final' ? ' DRAFT' : '') + '