<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gh_mirror/jhunkeler/stasis.git/tests, branch fix-pandoc-arguments</title>
<subtitle>A pipeline delivery generator
</subtitle>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/'/>
<entry>
<title>Add test_environment.c (#39)</title>
<updated>2024-08-29T14:04:47+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-29T14:04:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=5ff95541df361856c4a86ab73dc17627115a6e8e'/>
<id>5ff95541df361856c4a86ab73dc17627115a6e8e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>More tests (#36)</title>
<updated>2024-08-26T19:44:54+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-26T19:44:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=97a6697b9fdebda0be31bc03c4db3846d0947281'/>
<id>97a6697b9fdebda0be31bc03c4db3846d0947281</id>
<content type='text'>
* Add test_copy.c

* Add test_wheel.c</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add test_copy.c

* Add test_wheel.c</pre>
</div>
</content>
</entry>
<entry>
<title>CI add pandoc (and bug fixes) (#35)</title>
<updated>2024-08-20T15:08:30+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-20T15:08:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=b91f8c354b60f9db22d4ad65a1e6f72b13c8b693'/>
<id>b91f8c354b60f9db22d4ad65a1e6f72b13c8b693</id>
<content type='text'>
* Fix pandoc command regression

* Add space between destination and input

* Add pandoc dependency

* Dump output of indexed files</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Fix pandoc command regression

* Add space between destination and input

* Add pandoc dependency

* Dump output of indexed files</pre>
</div>
</content>
</entry>
<entry>
<title>indexer: Handle destination directories more gracefully (#28)</title>
<updated>2024-08-15T14:04:56+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-15T14:04:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=7c061ae7c293de0b52bad6a9d51a326005c4395c'/>
<id>7c061ae7c293de0b52bad6a9d51a326005c4395c</id>
<content type='text'>
* Handle destination directories more gracefully

* The storage.output_dir is now the storage.root to avoid generating a sub-directory beneath the temporary working directory
* The destination directory is created, then resolved by realpath to avoid generating the destination directory within the temporary working directory when a relative path is used as input

* Replace the original file instead of using rename()

* rename() cannot operate across file system boundaries

* Dynamically allocate rootdirs array

* Use realpath on positional arguments

* Convert all markdown files to HTML

* README.html files are considered entry points and are linked as index.html

* Assign retcode after indexing</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Handle destination directories more gracefully

* The storage.output_dir is now the storage.root to avoid generating a sub-directory beneath the temporary working directory
* The destination directory is created, then resolved by realpath to avoid generating the destination directory within the temporary working directory when a relative path is used as input

* Replace the original file instead of using rename()

* rename() cannot operate across file system boundaries

* Dynamically allocate rootdirs array

* Use realpath on positional arguments

* Convert all markdown files to HTML

* README.html files are considered entry points and are linked as index.html

* Assign retcode after indexing</pre>
</div>
</content>
</entry>
<entry>
<title>Add test_recipe.c (#25)</title>
<updated>2024-08-13T19:34:57+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-13T19:34:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=4550b38cd0db6b89c913af0b3444dfd3f1beba36'/>
<id>4550b38cd0db6b89c913af0b3444dfd3f1beba36</id>
<content type='text'>
* Add test_recipe.c

* Unit test for recipe functions

* Add error cases

* Add missing explicit members in testcase array definition</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add test_recipe.c

* Unit test for recipe functions

* Add error cases

* Add missing explicit members in testcase array definition</pre>
</div>
</content>
</entry>
<entry>
<title>More unit tests (and fixing bugs) (#23)</title>
<updated>2024-08-12T19:11:17+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-12T19:11:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=95672b2e7a6cc0c07306893d5bb0b80ee3570f7a'/>
<id>95672b2e7a6cc0c07306893d5bb0b80ee3570f7a</id>
<content type='text'>
* Add test_artifactory.c to suite

* Add test_ini_getval_wrapper to ini.c

* basic ini_getval_TYPE() conversion checks

* bugfix: use strtof in INIVAL_TYPE_FLOAT case

* Include stdio.h to pull in FILE structure

* bugfix: free data at index during strlist_set operation

* Previous behavior of setting the pointer to NULL introduced a subtle memory leak

* Set strlist error when index it out of range

* Import private delivery functions required for mock context creation

* Remove static declaration

* populate_delivery_cfg()

* Add test_junitxml.c

* Fix duplicate define value for JUNIT_RESULT_STATE_ERROR
* Add static junit test data
* Copy test data to current test directory</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add test_artifactory.c to suite

* Add test_ini_getval_wrapper to ini.c

* basic ini_getval_TYPE() conversion checks

* bugfix: use strtof in INIVAL_TYPE_FLOAT case

* Include stdio.h to pull in FILE structure

* bugfix: free data at index during strlist_set operation

* Previous behavior of setting the pointer to NULL introduced a subtle memory leak

* Set strlist error when index it out of range

* Import private delivery functions required for mock context creation

* Remove static declaration

* populate_delivery_cfg()

* Add test_junitxml.c

* Fix duplicate define value for JUNIT_RESULT_STATE_ERROR
* Add static junit test data
* Copy test data to current test directory</pre>
</div>
</content>
</entry>
<entry>
<title>Return of the INI refactor (#20)</title>
<updated>2024-08-08T16:45:05+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-08T16:45:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=c9579598c5a1b49f7fe8e353623175bf8f3cc236'/>
<id>c9579598c5a1b49f7fe8e353623175bf8f3cc236</id>
<content type='text'>
* Continuation of #19

* Fixes always_update_base_environment override bug added by PR #19

* Finish type hinting implementation

* ini_getval_* functions now able to affect rendering mode using INI_READ_RAW and INI_READ_RENDER
* Created pointers to deeply nested structures to increase readability
* Output from ini_write() is more consistent, with fewer errant spaces and line feeds
* Fixes accidental regression in #19. INIVAL_TYPE_STR_ARRAY never produced an array of pointers to char. This needs to be corrected in the future. i.e. It has always generated a new-line delimited string, not a StrList, or array.

* Fix strlist_append_tokenize

* original pointer is no longer modified
* token strings are stripped of leading space before appending to the list

* Use defines instead of magic numbers

* delivery_init: add render_mode argument

* test_conda: Add render mode

* test_ini: Add render mode

* Only add conda packages and wheels to the image

* docker images are saved to the packages directory and will be consumed by the image if present.

* Render template variables after bootstrapping the delivery</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Continuation of #19

* Fixes always_update_base_environment override bug added by PR #19

* Finish type hinting implementation

* ini_getval_* functions now able to affect rendering mode using INI_READ_RAW and INI_READ_RENDER
* Created pointers to deeply nested structures to increase readability
* Output from ini_write() is more consistent, with fewer errant spaces and line feeds
* Fixes accidental regression in #19. INIVAL_TYPE_STR_ARRAY never produced an array of pointers to char. This needs to be corrected in the future. i.e. It has always generated a new-line delimited string, not a StrList, or array.

* Fix strlist_append_tokenize

* original pointer is no longer modified
* token strings are stripped of leading space before appending to the list

* Use defines instead of magic numbers

* delivery_init: add render_mode argument

* test_conda: Add render mode

* test_ini: Add render mode

* Only add conda packages and wheels to the image

* docker images are saved to the packages directory and will be consumed by the image if present.

* Render template variables after bootstrapping the delivery</pre>
</div>
</content>
</entry>
<entry>
<title>Refactor ini getter and setter usage (#19)</title>
<updated>2024-08-07T17:52:10+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-08-07T17:52:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=1d5e5f26014ceefd824382acec732f326d8d6ce2'/>
<id>1d5e5f26014ceefd824382acec732f326d8d6ce2</id>
<content type='text'>
* Add handler for space-delimited lists

* This needs attention, however. The INI writer has no way to know a list with spaces is a list; this happens in the value conversion functions.
* Add type_hint member to INIData structure. At some point support with be added for all INIVAL_TYPE_* defines. Right now it's only used with arrays.
* Zero out line buffer in ini_open after each iteration
* Do not strip raw INI data. Let the conversion functions handle it
* Add spaces to key value pairs in rendered INI output.

* Add ini_getvar_TYPE() functions

* These replace the functionality of static conv_TYPE() functions in delivery.c
* Add support for missing types: U/CHAR, U/SHORT, STRLIST

* ini_getval: expand template variables immediately before processing the output

* Strip leading space to avoid issues with string comparisons against the result

* ini_getval: Return copies, not the original.

* This forces one to use ini_setval to replace/append values to the data array(s). It's safer this way.

* fix_tox_conf(): Use ini_getval and ini_setval instead of modifying the original pointers directly

* Tests: Free resources

* Replace ini_getval(), ini_getval_required() and conv_*() usage

* Now using ini_getval_TYPE() functions and ini_setval()
* Remove unused helper functions and variables

* download() returns long, not int

* actions: update apt cache</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add handler for space-delimited lists

* This needs attention, however. The INI writer has no way to know a list with spaces is a list; this happens in the value conversion functions.
* Add type_hint member to INIData structure. At some point support with be added for all INIVAL_TYPE_* defines. Right now it's only used with arrays.
* Zero out line buffer in ini_open after each iteration
* Do not strip raw INI data. Let the conversion functions handle it
* Add spaces to key value pairs in rendered INI output.

* Add ini_getvar_TYPE() functions

* These replace the functionality of static conv_TYPE() functions in delivery.c
* Add support for missing types: U/CHAR, U/SHORT, STRLIST

* ini_getval: expand template variables immediately before processing the output

* Strip leading space to avoid issues with string comparisons against the result

* ini_getval: Return copies, not the original.

* This forces one to use ini_setval to replace/append values to the data array(s). It's safer this way.

* fix_tox_conf(): Use ini_getval and ini_setval instead of modifying the original pointers directly

* Tests: Free resources

* Replace ini_getval(), ini_getval_required() and conv_*() usage

* Now using ini_getval_TYPE() functions and ini_setval()
* Remove unused helper functions and variables

* download() returns long, not int

* actions: update apt cache</pre>
</div>
</content>
</entry>
<entry>
<title>Fixes readout of packages in delivery (#16)</title>
<updated>2024-07-31T14:02:30+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-07-31T14:02:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=d3a1a8a15a92bfbf16d99529ab1ef7d34b48f37f'/>
<id>d3a1a8a15a92bfbf16d99529ab1ef7d34b48f37f</id>
<content type='text'>
* Fixes readout of packages in delivery

* Now that the overview is displayed after deferred packages are filtered out of the main list, filtered packages were no longer displayed
* This combines the main list and deferred list for both conda, and pip packages.

* Read the main and deferred lists no matter what

* Use new style package definition in test config</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Fixes readout of packages in delivery

* Now that the overview is displayed after deferred packages are filtered out of the main list, filtered packages were no longer displayed
* This combines the main list and deferred list for both conda, and pip packages.

* Read the main and deferred lists no matter what

* Use new style package definition in test config</pre>
</div>
</content>
</entry>
<entry>
<title>Version in package name (#15)</title>
<updated>2024-07-30T21:58:35+00:00</updated>
<author>
<name>Joseph Hunkeler</name>
<email>jhunkeler@users.noreply.github.com</email>
</author>
<published>2024-07-30T21:58:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.einval.net/gh_mirror/jhunkeler/stasis.git/commit/?id=15eef8db2c06f536edee84fe524f5d8fcefd0a5f'/>
<id>15eef8db2c06f536edee84fe524f5d8fcefd0a5f</id>
<content type='text'>
* Compile test installation with debug symbols enabled

* Fix typo in environment variable name

* STASIS_GITHUB_TOKEN is supposed to be STASIS_GH_TOKEN

* Add pattern matching mode selector to get_wheel_file()

* Adds modes WHEEL_MATCH_EXACT and WHEEL_MATCH_ANY

* test block version key is now optional

* Now that *_packages lists define the package version through detection, because the end-result version cannot be guaranteed to be identical to the tag.

* Find the just-compiled package matching the name and version in the package list.
* If compiling master/main this can also match against post-commits (x.y.z.devN+hash)
* Versions are extracted from the package name in the list, only if a matching test block exists. Otherwise the string is passed through to pip directly.

* Changes indentation level of output

* Do not replace @PIP_ARGUMENTS@ with an artifactory URL unless artifactory is enabled

* Sequence change

* Build requested packages before executing tests. A necessary evil if test blocks are no longer responsible for setting the version data
* Show the delivery summary just before test execution, instead of at the start of the program

* Terminate package name at version operator when a package is filtered for testing</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Compile test installation with debug symbols enabled

* Fix typo in environment variable name

* STASIS_GITHUB_TOKEN is supposed to be STASIS_GH_TOKEN

* Add pattern matching mode selector to get_wheel_file()

* Adds modes WHEEL_MATCH_EXACT and WHEEL_MATCH_ANY

* test block version key is now optional

* Now that *_packages lists define the package version through detection, because the end-result version cannot be guaranteed to be identical to the tag.

* Find the just-compiled package matching the name and version in the package list.
* If compiling master/main this can also match against post-commits (x.y.z.devN+hash)
* Versions are extracted from the package name in the list, only if a matching test block exists. Otherwise the string is passed through to pip directly.

* Changes indentation level of output

* Do not replace @PIP_ARGUMENTS@ with an artifactory URL unless artifactory is enabled

* Sequence change

* Build requested packages before executing tests. A necessary evil if test blocks are no longer responsible for setting the version data
* Show the delivery summary just before test execution, instead of at the start of the program

* Terminate package name at version operator when a package is filtered for testing</pre>
</div>
</content>
</entry>
</feed>
