Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GH-41385: [CI][MATLAB][Packaging] Add support for MATLAB R2024a in CI and crossbow packaging workflows #41504

Merged
merged 6 commits into from
May 3, 2024
Merged
6 changes: 3 additions & 3 deletions .github/workflows/matlab.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v2
with:
release: R2023a
release: R2024a
- name: Install ccache
run: sudo apt-get install ccache
- name: Setup ccache
Expand Down Expand Up @@ -110,7 +110,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v2
with:
release: R2023a
release: R2024a
- name: Install ccache
run: brew install ccache
- name: Setup ccache
Expand Down Expand Up @@ -148,7 +148,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v2
with:
release: R2023a
release: R2024a
- name: Download Timezone Database
shell: bash
run: ci/scripts/download_tz_database.sh
Expand Down
8 changes: 4 additions & 4 deletions dev/tasks/matlab/github.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v1
with:
release: R2023a
release: R2024a
- name: Build MATLAB Interface
env:
{{ macros.github_set_sccache_envvars()|indent(8) }}
Expand Down Expand Up @@ -68,7 +68,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v1
with:
release: R2023a
release: R2024a
- name: Build MATLAB Interface
env:
{{ macros.github_set_sccache_envvars()|indent(8) }}
Expand Down Expand Up @@ -103,7 +103,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v1
with:
release: R2023a
release: R2024a
- name: Install sccache
shell: bash
run: arrow/ci/scripts/install_sccache.sh pc-windows-msvc $(pwd)/sccache
Expand Down Expand Up @@ -149,7 +149,7 @@ jobs:
- name: Install MATLAB
uses: matlab-actions/setup-matlab@v1
with:
release: R2023a
release: R2024a
- name: Run commands
env:
MATLABPATH: arrow/matlab/tools
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@
end

if opts.BoldFont
link = compose("<a href=""matlab:helpPopup %s""" + ...
link = compose("<a href=""matlab:helpPopup('%s')""" + ...
" style=""font-weight:bold"">%s</a>", ...
opts.FullClassName, opts.ClassName);
else
link = compose("<a href=""matlab:helpPopup %s"">%s</a>", ...
link = compose("<a href=""matlab:helpPopup('%s')"">%s</a>", ...
opts.FullClassName, opts.ClassName);
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
classNameAndIDs = strings([1 numel(typeIDs) * 2]);
classNameAndIDs(1:2:end-1) = classNames;
classNameAndIDs(2:2:end) = typeIDs;
typeIDs = compose("<a href=""matlab:helpPopup %s"" style=""font-weight:bold"">%s</a>", classNameAndIDs);
typeIDs = compose("<a href=""matlab:helpPopup('%s')"" style=""font-weight:bold"">%s</a>", classNameAndIDs);
end

text = names + ": " + typeIDs;
Expand Down
15 changes: 12 additions & 3 deletions matlab/tools/packageMatlabInterface.m
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,18 @@
opts.SupportedPlatforms.Glnxa64 = true;
opts.SupportedPlatforms.MatlabOnline = true;

% Interface is only qualified against R2023a at the moment
opts.MinimumMatlabRelease = "R2023a";
opts.MaximumMatlabRelease = "R2023a";
% MEX files use run-time libraries shipped with MATLAB (e.g. libmx, libmex,
% etc.). MEX files linked against earlier versions of MALTAB run-time libraries
% will most likely work on newer versions of MATLAB. However, this may not
% always be the case.
%
% For now, set the earliest and latest compatible releases of MATLAB to
sgilmore10 marked this conversation as resolved.
Show resolved Hide resolved
% the release of MATLAB used to build and package the MATLAB Arrow Interface.
%
% See: https://www.mathworks.com/help/matlab/matlab_external/version-compatibility.html
currentRelease = matlabRelease.Release;
opts.MinimumMatlabRelease = currentRelease;
opts.MaximumMatlabRelease = currentRelease;

opts.OutputFile = fullfile(outputFolder, compose("matlab-arrow-%s.mltbx", toolboxVersionRaw));
disp("Output File: " + opts.OutputFile);
Expand Down
Loading