We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5a03508 commit 4210c6fCopy full SHA for 4210c6f
+stdlib/filename.m
@@ -8,17 +8,21 @@
8
function f = filename(p, backend)
9
arguments
10
p string
11
- backend = 'pattern'
+ backend = 'fileparts'
12
end
13
14
-% the pattern backend is a few percent faster than regexp
+% the pattern backend is a litle slower than
15
+% fileparts is 5x to 10x faster than regexp and pattern
16
switch backend
17
+ case 'fileparts'
18
+ [~, f, ext] = fileparts(p);
19
+ f = f + ext;
20
case 'pattern'
21
f = extractAfter(p, asManyOfPattern(wildcardPattern + ("/" | filesep)));
22
case 'regexp'
23
f = regexp(p, ['[^/\' filesep ']*$'], 'match', 'once');
24
f(ismissing(f)) = "";
- otherwise, error('must be backend "pattern" or "regexp"')
25
+ otherwise, error('must be backend "pattern", "regexp" or "fileparts"')
26
27
28
+stdlib/h5save.m
@@ -42,7 +42,7 @@ function h5save(filename, varname, A, opts)
42
h5save_exist(filename, varname, A, opts.size)
43
catch e
44
switch e.identifier
45
- case {'MATLAB:imagesci:hdf5io:resourceNotFound', 'MATLAB:imagesci:h5info:unableToFind'}
+ case {'MATLAB:imagesci:hdf5io:resourceNotFound', 'MATLAB:imagesci:h5info:unableToFind', 'MATLAB:imagesci:h5info:fileOpenErr'}
46
h5save_new(filename, varname, A, opts.size, opts.compressLevel)
47
otherwise
48
rethrow(e)
+stdlib/ini2struct.m
@@ -4,9 +4,6 @@
4
% Based on init2struct.m by Andriy Nych
5
6
function Struct = ini2struct(filename)
7
-arguments
- filename {mustBeFile}
-end
f = fopen(filename,'r'); % open file
+stdlib/platform_tell.m
@@ -2,8 +2,13 @@
2
3
function json = platform_tell()
-r = matlabRelease();
-raw = struct("matlab_release", r.Release, ...
+try
+ r = matlabRelease().Release;
+catch
+ r = "R" + version('-release');
+end
+
+raw = struct("matlab_release", r, ...
"matlab_arch", computer('arch'), ...
"cpu_arch", stdlib.cpu_arch(), ...
"hdf5", stdlib.h5get_version(), ...
@@ -38,6 +43,14 @@
38
39
40
41
-json = jsonencode(raw, "PrettyPrint", true);
+ json = jsonencode(raw, "PrettyPrint", true);
+catch e
49
+ if e.identifier ~= "MATLAB:json:UnmatchedParameter"
50
+ rethrow(e)
51
+ end
52
53
+ json = jsonencode(raw);
54
55
56
+stdlib/private/h5save_new.m
@@ -23,14 +23,15 @@ function h5save_new(filename, varname, A, sizeA, compressLevel)
h5save_scalar(filename, varname, A)
return
else
- h5create(filename, varname, sizeA, Datatype=class(A))
+ h5create(filename, varname, sizeA, 'Datatype', class(A))
elseif ~compressLevel || stdlib.isoctave()
29
30
31
- h5create(filename, varname, sizeA, Datatype=class(A), Fletcher32=true, Shuffle=true, ...
32
- Chunksize=stdlib.auto_chunk_size(sizeA), ...
33
- Deflate=compressLevel)
+ h5create(filename, varname, sizeA, 'Datatype', class(A), ...
+ 'Fletcher32', true, 'Shuffle', true, ...
+ 'Chunksize', stdlib.auto_chunk_size(sizeA), ...
34
+ 'Deflate', compressLevel)
35
36
37
h5write(filename, varname, A)
+stdlib/set_permissions.m
@@ -13,9 +13,9 @@
function [ok, b] = set_permissions(file, readable, writable, executable, backend)
file (1,1) string
- readable (1,1) {mustBeInteger, mustBeInRange(readable, -1, 1)}
- writable (1,1) {mustBeInteger, mustBeInRange(writable, -1, 1)}
- executable (1,1) {mustBeInteger, mustBeInRange(executable, -1, 1)}
+ readable (1,1) {mustBeInteger}
+ writable (1,1) {mustBeInteger}
+ executable (1,1) {mustBeInteger}
backend (1,:) string = ["native", "legacy"]
test/TestHDF5.m
@@ -46,7 +46,7 @@ function setup_file(tc)
stdlib.h5save(tc.file, '/A1', tc.A1)
stdlib.h5save(tc.file, '/A2', tc.A2)
-stdlib.h5save(tc.file, '/A3', tc.A3, size=size(tc.A3))
+stdlib.h5save(tc.file, '/A3', tc.A3, 'size', size(tc.A3))
stdlib.h5save(tc.file, '/A4', tc.A4)
if ~stdlib.matlabOlderThan("R2020b")
test/TestNetCDF.m
@@ -59,7 +59,7 @@ function setup_file(tc)
59
methods (Test, TestTags=["R2019b", "netcdf"])
60
61
function test_netcdf_version(tc)
62
-tc.verifyTrue(stdlib.version_atleast(stdlib.nc_get_version(), "4.7"), "version unexpected")
+tc.verifyTrue(stdlib.version_atleast(stdlib.nc_get_version(), "4.6"), "version unexpected")
63
64
65
function test_get_variables(tc)
test/TestParent.m
@@ -23,7 +23,14 @@ function test_parent(tc, p, backend)
tc.verifyEqual(pr, p{2}, sprintf("parent(%s, %s)", p{1}, backend))
+methods (Test, TestTags=["R2020b", "pure"])
function test_parent_array(tc)
+tc.assumeFalse(stdlib.matlabOlderThan('R2020b'))
in = ["", ".", "..", "../..", "a/", "a/b", "ab/.parent", "ab/.parent.txt", "a/b/../.parent.txt"];
exp = [".", ".", ".", "..", ".", "a", "ab", "ab", fullfile("a", "b", "..")];
@@ -32,7 +39,6 @@ function test_parent_array(tc)
-
test/TestStem.m
@@ -28,7 +28,12 @@ function test_stem(tc, p)
tc.verifyEqual(stdlib.stem(p{1}), p{2})
function test_stem_array(tc)
in = ["", ".txt", "a/b/c.txt", "a/b/c.txt.gz", "a/b/c"];
exp = ["", ".txt", "c", "c.txt", "c"];
out = stdlib.stem(in);
0 commit comments