7e86c1a5f5
Detect when variables are declared and not set
...
It is possible to declare a variable but not assign a value to it using
`export x`. When you do this, `declare -p x` shows the variable but does
not show an "=" nor any value afterwards.
When running another command, this variable will not be added to the
environment variables even though it is flagged as exported. Most likely
it's because the value is not a string and can't be easily converted to
a string; this is the same behavior as arrays.
Using `[[ -v x ]]` is also inadequate and I believe its because there
are false positives when trying to access data, which goes on to break
tests and the new braces and parenthesis indirection. Perhaps it could
be reviewed and made to work.
The best solution so far is to combine `declare -p` with `[[ -v` to see
if the variable is declared and if a value is set.
Closes #75 .
2024-07-24 12:22:03 -05:00
b595ad26b7
Documenting that parents are not supported
2024-06-21 20:44:16 -05:00
5a49fe9900
Releasing 3.0.6
2024-06-16 21:13:43 -05:00
8056ee6961
Only cut strings once
...
It's faster to loop through the string and check the character at an
index than it is to trim single characters from the end in a loop.
Trimming multiple characters in the loop is surprisingly slower than
trimming one.
Addresses more of the speed problem reported in #73 .
2024-06-16 21:11:45 -05:00
5db34e55d3
Caching function name lookups
...
Faster than dumping functions each time.
Related to #73 .
2024-06-16 21:11:02 -05:00
26ca5059d8
Fix slowness with larger templates
...
Closes #69 and #71
Released 3.0.5
3.0.5
2024-03-27 21:57:11 -05:00
6e57510ba9
Making it more clear that sourced files are shell
...
Addresses part of the concerns from #69
3.0.4
2023-11-16 16:04:52 -06:00
54b2184b70
Bumping version
3.0.3
2023-09-10 08:11:54 -05:00
84d17268c9
Work with symbolic links
2023-09-10 08:10:51 -05:00
68306c4c6d
More Bash 4.x compatibility issues found and fixed
3.0.2
2023-05-12 08:17:57 -05:00
6cc72acde0
Fix #67 - unbound variable error
...
Release 3.0.1
3.0.1
2023-05-12 07:44:48 -05:00
0ce41dedb1
Releasing 3.0.0
3.0.0
2023-05-07 21:18:00 -05:00
0617b2ed35
Various bugfixes
...
Specs: 181 total, 119 pass (with 7 overridden), 55 fail, 7 skip
2023-04-23 10:04:59 -05:00
1d4e186486
All tests pass.
...
Specs: 181 total, 111 pass (with 7 overridden), 63 fail, 7 skip.
2023-04-23 09:24:36 -05:00
0f150ccb19
Fixing standalone detection with blocks
...
27 tests pass, 18 still fail
2023-04-22 08:16:49 -05:00
00af7d49f0
Bugfixes
2023-04-21 21:18:55 -05:00
0896e2b966
Parser rewritten again
2023-04-21 20:59:31 -05:00
511a3187e8
Changing how parsed/unparsed content is tracked
...
Use global variables instead of passing to every function.
112 specs pass, 7 overridden, 62 fail, 7 skipped.
2023-04-10 21:07:45 -05:00
d32b912472
Moving delimiters and standalone to global vars
2023-04-10 13:24:06 -05:00
3a58ee390e
More bugfixes and shellcheck tweaks
2023-04-10 11:39:47 -05:00
7604ce3054
Pass shellcheck, more specs are handled, preserve function whitespace
...
This closes #49 .
2023-04-10 08:10:14 -05:00
e0e9189355
Bugfixes, pretty printing, new tests added
...
Spec result: 108 specs pass, 6 skipped, 67 fail
2023-04-09 18:53:55 -05:00
a1e4398547
Overriding some tests so they work with mo + bugfix
2023-04-09 10:20:45 -05:00
47e10012ee
Splitting parse function, fixing variable bug
2023-04-09 09:52:18 -05:00
a237d23a2d
Fix standalone tag detection
2023-04-08 19:06:04 -05:00
72a0e426c7
Starting support for skipping/altering tests
...
Bash doesn't support advanced data structures, like objects. The goal is
to switch simple objects to associative arrays automatically, then
override other tests so they don't use deeply-created structures.
2023-04-08 12:41:46 -05:00
501ca2144f
Need to trim whitespace in the tag
2023-04-08 12:41:31 -05:00
2085dc2792
Rewriting how specs run
2023-04-08 11:52:22 -05:00
d997ad0e0a
Passes all of the tests
2023-04-07 23:10:47 -05:00
febd3467c8
Attempting to address shortcomings and whitespace issues
2023-04-07 19:35:25 -05:00
8e9fd680d4
Fixing a test, release 2.4.1
2.4.1
2023-04-05 21:14:19 -05:00
24e80aedaa
Bumping version
...
2.3.0 was already tagged
2.4.0
2023-04-05 20:55:16 -05:00
4311f29879
Fixing the build, some doc cleanup, update version
2023-04-05 20:54:27 -05:00
d6794de1e2
Merge pull request #57 from Swivelgames/loop-accessors
...
Feature: Key and Index Accessors Inside Loops
2023-04-05 20:51:13 -05:00
b22baa9776
Added Functions/Helpers to README
2023-04-05 20:19:42 -05:00
c28bffe708
Added @key loop accessor
2023-04-05 20:19:29 -05:00
b01fc43580
Merge pull request #60 from Swivelgames/portability
...
Improved portability by using /usr/bin/env pragma
2023-04-04 09:50:21 -05:00
53e3208ba0
Improved portability by using /usr/bin/env pragma
2023-04-04 02:00:31 -05:00
6dc284f05a
Updating URLs
...
Closes #53
2023-04-03 12:57:14 -05:00
a62541fc98
Adding missing character, reported by brainchild0
2022-01-26 19:07:12 -06:00
b31a97cfb1
Merge pull request #51 from brainchild0/docker
...
improve docker image
2022-01-26 10:00:28 -06:00
71f85fa4f2
Use latest Alpine image as Docker base
2022-01-25 17:34:56 -05:00
14003ba24a
Introduce general improvements for Docker image
2022-01-24 20:51:27 -05:00
54195a6c6e
Fixing test script to return 0 on success
2.3.3
2021-11-25 16:02:21 -06:00
81f9ec326d
Leaning away from committing package.json
...
Thank you yutachaos!
2.3.2
2021-11-25 15:59:30 -06:00
dae1c66f8f
Merge branch 'feature/added_github_action' of https://github.com/yutachaos/mo into yutachaos-feature/added_github_action
2021-11-25 15:57:52 -06:00
08576fca7b
Adding script to run against official specs
2021-11-25 15:40:13 -06:00
3aa5c462f8
Quoting variable
...
This suggestion is brought to you by neema80 - thank you!
This closes #48 .
2021-11-25 15:36:47 -06:00
a28ed0ccd5
Added docker image push action
2021-04-23 13:01:42 +09:00
c86fd9a89b
Merge pull request #45 from yutachaos/feature/added_docker_release
...
Added dockerfile and release GitHub Action
2.3.1
2021-04-17 11:02:12 -05:00