Recent Releases of https://github.com/berkeleylab/julienne

https://github.com/berkeleylab/julienne - Tidy parallel output

In previous releases, some output unrelated to reporting test outcomes was being printed by all images. This release ensures single-image output except for error terminations. All output other than internal file output and error termination stop codes now happens via a call to the new one_image_prints subroutine.

What's Changed

  • doc(README): update compiler support table/text by @rouson in https://github.com/BerkeleyLab/julienne/pull/99
  • Documentation: add app dir to ford.md & match project description to GitHib About text by @rouson in https://github.com/BerkeleyLab/julienne/pull/100
  • Chores by @rouson in https://github.com/BerkeleyLab/julienne/pull/101
  • Fix parallel testing: output only on image 1 by @rouson in https://github.com/BerkeleyLab/julienne/pull/103
  • fix(tests): output only on image 1 by @rouson in https://github.com/BerkeleyLab/julienne/pull/102
  • Feature: centralize output to one image by @rouson in https://github.com/BerkeleyLab/julienne/pull/104
  • Fix: workaround nagfor issue by @rouson in https://github.com/BerkeleyLab/julienne/pull/106

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/3.1.0...3.1.1

- Fortran
Published by rouson 10 months ago

https://github.com/berkeleylab/julienne - New operands for `test_diagnosis_t` defined operations

New Features

  • Support new type/kind operands with the test_diagnosis_t operator .equalsExpected.
    • integer(c_size_t)
    • type(c_ptr)
  • Support integer(c_size_t) arguments in string_t constructor
  • Support user-concatenation of string_t and character values to test diagnoses via operator(//)

    refac(string_test):simplify via defined operations

Pull Request Log

  • Add testdiagnosist operators by @rouson in https://github.com/BerkeleyLab/julienne/pull/98

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/3.0.0...3.1.0

- Fortran
Published by rouson 10 months ago

https://github.com/berkeleylab/julienne - Automated test-suite scaffolding, simpler tests, logical assertions

New Features

Simple logical assertions ๐Ÿงช

Julienne's new logical assertions. are useful when a literal copy of the asserted condition suffices for diagnostic information when an assertion fails. Examples include call_julienne_assert(allocated(a)) and call julienne_assert(allocated(a)) for conditionally and unconditionally executed assertions, respectively.

Test simplification ๐Ÿ’ƒ

Julienne now hides the test-filtering logic so a user's definition of the required results function simply requires declaring an instance of a test_t child type, invoking the instance's inherited run function with a test_description_t array argument, and assigning the run result to the results function result: fortran function results() result(test_results) type(specimen_test_t) specimen_test type(test_result_t), allocatable :: test_results(:) test_results = specimen_test%run([test_description_t("checking something", diagnosis_function)]) end function where specimen_test_t extends test_t and diagnosis_function performs the test and conforms to Julienne's diagnosis_function_i abstract interface.

Scaffolding automation ๐Ÿค–

Given an existing demo/test subdirectory and a JSON file containing a "test subjects" key with an array value specifying test names, a command like the following creates the test suite for Julienne's demonstration project: bash fpm run scaffold --compiler flang-new --flag "-O3 -g" -- --json-file demo/test-suite.json --suite-path demo/test which instructs scaffold to incorporate each test name into a corresponding test_t child type (e.g., specimen_test_t type), create simple tests in a like-named module (e.g., specimen_test_m module), and write a main program in demo/driver.f90. Running the main program with the following command executes the tests: cd demo fpm test --compiler flang-new --flag "-O3"

The scaffold program currently builds only with the LLVM (flang-new) compiler, but the generated demonstration test suite (or an analogous handwritten test suite) builds with any of the supported compilers: LLVM (flang-new), GCC (gfortran), Intel (ifx), and NAG (nagfor). Minor fixes are under way to get the scaffold program itself working with the latter three compilers.

Breaking change

The previously deprecated vector_test_description_t type and vector_diagnosis_function_i abstract interface have been removed in order to simplify automatic driver creation.

Pull Request Log

  • ๐Ÿงน Assertion chores, fixes, documentation and new test by @rouson in https://github.com/BerkeleyLab/julienne/pull/84
  • ๐Ÿงถ Fix(julienne_assert): define string only for fails by @rouson in https://github.com/BerkeleyLab/julienne/pull/85
  • โ˜• Centralize the test filtering logic to testdescriptionm by @rouson in https://github.com/BerkeleyLab/julienne/pull/91
  • ๐Ÿšš Automatically generate demo test suite from JSON file by @rouson in https://github.com/BerkeleyLab/julienne/pull/92
  • ๐Ÿ‘ฉโ€โš•๏ธ Doc(testresultt): clarify role by @rouson in https://github.com/BerkeleyLab/julienne/pull/94
  • ๐Ÿฌ Feature: logicalassert thinner wrapper around Assert's assertalways by @rouson in https://github.com/BerkeleyLab/julienne/pull/95
  • ๐Ÿฉน Workaround gfortran 13 issue by @rouson in https://github.com/BerkeleyLab/julienne/pull/96

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.4.3...3.0.0

- Fortran
Published by rouson 10 months ago

https://github.com/berkeleylab/julienne - New test-diagnosis operators and JSON value getter

New In This Release

This release adds operators and operands that generate test_diagnosis_t results: * .equalsExpected. now accepts operand types character, string_t and combinations thereof, * .isBefore. and .isAfter. alphabetical and reverse-alphabetical check operators that accept character and string_t operands and combinations thereof * The .also. operator is synonymous with the test_diagnosis_t .and. operator but avoids confusion with the intrinsic .and. operator. * Corresponding new unit tests.

Merge Pull Requests

  • Feature: character operators and operands by @rouson in https://github.com/BerkeleyLab/julienne/pull/81
  • doc(README): fix and clarify example expressions by @rouson in https://github.com/BerkeleyLab/julienne/pull/75
  • Fix ifx issue, add json string value getter, add testdiagnosticst operator(.also.) by @rouson in https://github.com/BerkeleyLab/julienne/pull/82
  • doc(README): add .also. and explain motivation by @rouson in https://github.com/BerkeleyLab/julienne/pull/83

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.4.2...2.4.3

- Fortran
Published by rouson 11 months ago

https://github.com/berkeleylab/julienne - Use Assert 3.0.0

What's Changed

  • build(fpm.toml): update to Assert 3.0.0 by @rouson in https://github.com/BerkeleyLab/julienne/pull/78

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.4.1...2.4.2

- Fortran
Published by rouson 11 months ago

https://github.com/berkeleylab/julienne - Fix test filtering

This releases fixes a problem with broadcasting the --contains command-line argument (which is used for running only a subset set of a tests). The fix involves each image getting the search string from the command-line instead of only image 1 getting the string and broadcasting it to the other images, which do not know a priori the length of string to allocate for receiving the broadcast.

What's Changed

  • (fix): Fix bug related to assigning to an unallocated variable by @ktras in https://github.com/BerkeleyLab/julienne/pull/76

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.4.0...2.4.1

- Fortran
Published by rouson 12 months ago

https://github.com/berkeleylab/julienne - New operators, operand types and ranks

New In This Release

Features

  • New operators .isAtLeast. and .isAtMost. equivalent to .greaterThanOrEqualTo. and .lessThanOrEqualTo., respectively,
  • The above four operators accept real and double precision operands in addition their pre-existing support for integer operands
  • Operator .all. supports operands of all standard ranks (0-15)
  • The file_t component constructor is now pure

Build System

  • Updated Assert dependency to 3.0.0 release candidate to make progress toward supporting LFortran
  • Simplified fpm manifest with non-essential details removed

Documentation

  • Reorganized and updated README.md
  • Document the recently released assertion capability
  • Document the .separatedBy. operator in the root-directory README.md
  • More descriptive assertions example output
  • Reorganize examples into a directory structure: example โ”œโ”€โ”€ assertions โ”œโ”€โ”€ command-line-parsing โ””โ”€โ”€ strings
  • Improve the formatting of example/README.md.

Pull Requests In This Release

  • Build with lfortran by @rouson in https://github.com/BerkeleyLab/julienne/pull/72
  • fix(test_diagnosis): swap .isAtLeast. & .isAtMost. by @rouson in https://github.com/BerkeleyLab/julienne/pull/73

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.3.0...2.4.0

- Fortran
Published by rouson about 1 year ago

https://github.com/berkeleylab/julienne - Assertions, Compiler Support, Operators, & Documentation

New in this release

  • Idiomatic assertions: Julienne's expressive idioms can now be used in assertions that are conditionally compiled and executed inside a user's procedures. See the Assertions and Writing Assertions sections in this repository's root-directory README.md file.
  • Expanded compiler support: Run the Julienne test suite to see the tests, if any, that are skipped (unsupported) with your compiler.
    • GCC 15: full support -- the only unsupported feature (vector_test_description_t) is superseded by the newer .all. operator, is therefore deprecated and likely will be removed at some point).
    • GCC 13-14:- the only unsupported feature, bracket(), stems from a compiler bug that has been fixed in GCC 15.
  • New defined operations:
    • Relative tolerances: the two newly supported expressions below are equivalent.
      • x .approximates. y .withinFraction. 0.01
      • x .approximates. y .withinPercentage. 1.0
  • Expanded documentation: The root-directory README.md file has been updated to
    • Describe the above changes,
    • Provide background on the philosophy behind Julienne,
    • Give more detail on the functional programming patterns that Julienne supports,
    • Update the known issues with GCC,
    • Tabulate example expressions in a way that comprehensively covers Julienne operators and operand types, and
    • Tabulate the string_t constructor functions in a way that
      • Partially demonstrates the numeric types that Julienne can convert to strings,
      • Comprehensively demonstrates string_t's defined operations: .csv., .sv., .cat., and //., and
      • Partially demonstrates the string_t functionality that Julienne provides.

Issue #70 provides a To Do list that includes items to add to the README.md to make it closer to a comprehensive delineation of Julienne's capabilities.

Pull requests since the last release

  • Feature: idiomatic assertions via a thin wrapper for Assert's assert subroutine by @rouson in https://github.com/BerkeleyLab/julienne/pull/65
  • Full support for gfortran 13, 14, and 15 by @rouson in https://github.com/BerkeleyLab/julienne/pull/68
  • Update README.md for latest features by @rouson in https://github.com/BerkeleyLab/julienne/pull/69

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.2.0...2.3.0

- Fortran
Published by rouson about 1 year ago

https://github.com/berkeleylab/julienne - Feature: Relative tolerances

This release adds

  1. operator(.withinFraction.) for real and double precision operands,
  2. operator(.withinPercentage.) for real and double precision operands, and
  3. Unit tests for each operator.

What's Changed

  • feat(test_diagnosis): fraction/percent tolerances by @rouson in https://github.com/BerkeleyLab/julienne/pull/64

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.1.0...2.1.1

- Fortran
Published by rouson about 1 year ago

https://github.com/berkeleylab/julienne - Automatic test diagnosis via expressions inspired by natural language

What's New

This release 1. Defines idioms for writing compact expressions that construct test diagnoses that encapsulate automatically generated diagnostic output when tests fail and 2. Reorganizes and enhances the example test suite and moves it a new demo subdirectory so that it builds as a separate fpm project with Julienne as a dependency.

The new operators eliminate much of the tedium of forming one's own diagnostics_string arguments when invoking test_diagnosis_t constructors as previously required.

An Expressive Idiom Constructing Test Diagnoses

For real or double precision values x, y, and tolerance and for integer values i and j, expressions of the following forms now evaluate to test_diagnosis_t objects constructed with descriptive diagnostic_string arguments tailored to the operators involved in the expressions: ```fortran x .approximates. y .within. tolerance x .lessThan. y x .greaterThan. y

i .equalsExpected. j i .lessThan. j i .greaterThan. j i .lessThanOrEqualTo. j i .greaterThanOrEqualTo. j `` where all of the above operators areelemental` and accept conformable arguments, i.e., same-shaped array operands or array/scalar operand combinations.

When the operands are arrays, the expressions evaluate to test_diagnosis_t arrays, which could be used as the result of a vector test function satisfying Julienne's vector_diagnosis_function_i abstract interface. Alternatively, array results can be aggregated into one test_diagnosis_t object using the .all. operator that this pull request also provides. For example, fortran .all. ([i,j] .lessThan. k) ! test passes if i < k .and. j < k .all. (i .greaterThan. [j,k]) ! test passes if i > j .and. i > k .all. ([i,j] .equalsExpected. [m,n]) ! test passes if i == m .and. j == n where expressions operated on by.all.will result in diagnostic strings displaying only for the elements corresponding to test failures. See [test/testdiagnosistest_m.F90`] for examples of the use of the above operators.

Equivalently, if pairwise aggregation suffices, then the user-defined .and. operator in this PR can be used as follows: fortran (2 .greaterThanOrEqualTo. expected_min) .and. (1 .equalsExpected. 1) which is currently implemented using .all. with a size-2 array: fortran .all. ([lhs,rhs]) where lhs = 2 .greaterThanOrEqualTo. expected_min and rhs = 1 .equalsExpected. 1.

What's Changed

  • Chores by @rouson in https://github.com/BerkeleyLab/julienne/pull/53
  • Chores and minor new feature by @rouson in https://github.com/BerkeleyLab/julienne/pull/54
  • Feature: support comparison expressions that evaluate to test diagnoses by @rouson in https://github.com/BerkeleyLab/julienne/pull/55
  • Reorganize examples and add string-handling example by @rouson in https://github.com/BerkeleyLab/julienne/pull/59
  • fix(test_diagnosis): finish To Do item from PR #55 by @rouson in https://github.com/BerkeleyLab/julienne/pull/61
  • doc(README): describe operators & improve structure by @rouson in https://github.com/BerkeleyLab/julienne/pull/62
  • Revise example test suite by @rouson in https://github.com/BerkeleyLab/julienne/pull/63

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/2.0.0...2.1.0

- Fortran
Published by rouson about 1 year ago

https://github.com/berkeleylab/julienne - Features: Tally skipped tests and enhance documentation

Breaking Release

  1. BREAKING: Remove the legacy test and vector test functions that lack diagnostic information. ๐Ÿ’”
  2. Support vector tests in which one function produces multiple diagnoses. โš•๏ธ
  3. Support skipping but tallying tests by omitting the diagnosis function argument in test_description_t and vector_test_description_t constructors. โ—€๏ธ
  4. Add a detailed example-test-suite README.md and a better introduction in the root-directory README.md. ๐Ÿซš
  5. Add ASCII art in the root-directory README.md. ๐ŸŽจ
  6. Tally but skips three tests when executing Julienne's test suite built by gfortran. 3๏ธโƒฃ

What's Changed

  • (fix): Update README.md to fix docs link by @ktras in https://github.com/BerkeleyLab/julienne/pull/47 ๐Ÿ“
  • Add test diagnostics output by @rouson in https://github.com/BerkeleyLab/julienne/pull/44 ๐Ÿฉบ
  • Feature: Skip tests and report skipped tests by @rouson in https://github.com/BerkeleyLab/julienne/pull/48 ๐Ÿƒโ€โ™€๏ธ
  • Documentation: Add example-test-suite README.md by @rouson in https://github.com/BerkeleyLab/julienne/pull/49 ๐Ÿ“˜
  • doc(README): update introduction by @rouson in https://github.com/BerkeleyLab/julienne/pull/50 ๐Ÿ“–
  • doc(README): restructure test definition steps by @rouson in https://github.com/BerkeleyLab/julienne/pull/52 ๐Ÿ“š

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.8.4...2.0.0

- Fortran
Published by rouson about 1 year ago

https://github.com/berkeleylab/julienne - Dependency update and minor fix

What's Changed

  • Update assert by @rouson in https://github.com/BerkeleyLab/julienne/pull/42
  • fix(juliennetests): include language-support.F90 by @rouson in https://github.com/BerkeleyLab/julienne/pull/43

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.8.3...1.8.4

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Fix and improve assertions

This release

  1. Works around an Assert 2.0.1 issue that prevents a procedure containing an assertion from having a variable named string.
  2. Converts several file name extensions to .F90 so that most compilers will automatically preprocess such files.
  3. Switches all assertions to use the new Assert 2.0 macros such as call_assert and call_assert_diagnose to facilitate the complete removal of the assertions by the preprocessor when the ASSERTIONS macro is not set (i.e., when the compiler flag -DASSERTIONS is not present.

What's Changed

  • Fix and improve assertions by @rouson in https://github.com/BerkeleyLab/julienne/pull/41

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.8.2...1.8.3

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - 1.8.1 Update Assert dependency URL in fpm.toml

What's Changed

  • fix(fpm): update Assert URL to berkeleylab by @rouson in https://github.com/BerkeleyLab/julienne/pull/39

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.8.0...1.8.1

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - 1.8.0 Support Intel ifx compiler

This release * Fixes some compiler-dependent code in the test suite so that all tests pass with the Intel ifx compiler and * Works around a gfortran 14.2.0 issue and thereby reduces to one the number of checks that must be disabled with gfortran.

What's Changed

  • Update dependency Assert to 2.0.1 by @rouson in https://github.com/BerkeleyLab/julienne/pull/33
  • Fix: work around gfortran 14.2.0 bug by @rouson in https://github.com/BerkeleyLab/julienne/pull/35
  • test(string_t): fix line continuation by @rouson in https://github.com/BerkeleyLab/julienne/pull/36
  • Fix edit descriptors and add ifx build command to README.md by @rouson in https://github.com/BerkeleyLab/julienne/pull/37

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.7.0...1.8.0

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - String_t construction from logical and complex types

What's Changed

  • Feature: construct string_t objects from logical & complex arguments by @rouson in https://github.com/BerkeleyLab/julienne/pull/30
  • Documentation: Fix link to example directory in README by @ktras in https://github.com/BerkeleyLab/julienne/pull/31
  • Testing: temporary test-suite workaround for NAG compiler by @rouson in https://github.com/BerkeleyLab/julienne/pull/32

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.6.0...1.7.0

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Diagnostic output, test-suite example, and UML diagrams

What's New

  • A capability for producing diagnostic output when a test fails. ๐Ÿฉน ๐Ÿค•
  • An example test suite demonstrating the use of diagnostic in a test failure. ๐Ÿฉบ
  • A doc/uml/ subdirectory containing UML class and sequence diagrams describing the example test suite. ๐Ÿ“–

Executing fpm run --example main runs the new example test suite.

Changelog Summary

  • Add unit tests for testdescriptiont and simplify the derived type definition by @rouson in https://github.com/BerkeleyLab/julienne/pull/27
  • Feature: produce diagnostic output for test failures by @rouson in https://github.com/BerkeleyLab/julienne/pull/28

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.5.4...1.6.0

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Improve test coverage and robustness

This release 1. Replaces the previously fragile unit tests for the command_line_t type with tests that no longer require launching an fpm subprocess via execute_command_line and checking that child process's exit status. 2. Improves test output: if the flags for running the command_line_t tests are not detected in the fpm test command, the main test program prints instructions for running the command_line_t tests . 3. Updates the CI testing from macOS 12 to the GitHub CI-supported version 13. 4. Add the.smod generated submodule file extensions to the .gitignore file. 5. Fixes some issues that led to crashes when searched-for flags were not present or the flag value is not present. 6. Adds command_line_t unit tests.

What's Changed

  • Improve test coverage and robustness by @rouson in https://github.com/BerkeleyLab/julienne/pull/26

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.5.3...1.5.4

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Fix: eliminate line wrapping in file_t write_lines procedure

What's Changed

  • Fix: eliminate line wrap in filet writelines by @rouson in https://github.com/BerkeleyLab/julienne/pull/25

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.5.2...1.5.3

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Fix: eliminate line wrapping in test-subject report output

This release replaces list-directed printing of the test_t subject with formatted printing to work around flang's relatively short wrapping length for list-directed printing.

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - 1.5.0

This release

  1. A unary operator(.csv.) with a string_t result encapsulating a comma-separated value (CSV) created from a. a string_t array or b. a character array,
  2. A binary operator(.sv.) with a string_t result encapsulating a CSV created from left- and right-hand operands: a. a string_t array and a string_t separator or b. a string_t array and a character separator. c. a character array and a character separator d. a character array and a string_t separator
  3. A unit test that verifies the following identities: ``` "a,bc,def" == .csv. [stringt("a"), stringt("bc"), string_t("def")] "abc,def" == .csv. ["abc", "def"]

"do|re|mi" == (stringt(["do", "re", "mi"]) .sv. "|" ) "dore|mi" == (([stringt("dore"), stringt("mi")]) .sv. stringt("|")) "do|re|mi" == ( ["do", "re", "mi"] .sv. "|" ) "do|re|mi" == ( ["do", "re", "mi"] .sv. stringt("|")) 4. A `bracket` type-bound procedure and a test verifying the following identities: scalar%bracket() == stringt("[do re mi]") & all(array%bracket() == [stringt("[do]"), stringt("[re]"), stringt("[mi]")]) & all(array%bracket('"') == [stringt('"do"'), stringt('"re"'), stringt('"mi"')]) & all(array%bracket("{","}") == [stringt('{do}'), stringt('{re}'), stringt('{mi}')]) & `` 5. Agetstringtarrayspecific procedure supporting the genericgetjsonvaluebinding and test verifying the following identities: associate(json_line => string_t('"lead singer" : ["stevie", "ray", "vaughn"],')) all( json_line%get_json_value(key=string_t("lead singer"), mold=[string_t::]) == [string_t("stevie"), string_t("ray"), string_t("vaughn")])) end associate `

What's Changed

  • Features: string bracketing, CSV operators, and JSON array value reader by @rouson in https://github.com/BerkeleyLab/julienne/pull/23

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.4.0...1.5.0

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Feature: get_json_value reads string-array value from key/value pair

What's Changed

  • Read string_t-array value from JSON key/value pair by @rouson in https://github.com/BerkeleyLab/julienne/pull/22

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.3.1...1.4.0

- Fortran
Published by rouson over 1 year ago

https://github.com/berkeleylab/julienne - Improved testing

What's Changed

  • Add LLVM Flang to CI by @ktras in https://github.com/BerkeleyLab/julienne/pull/15
  • chore(fpm.toml): update version by @rouson in https://github.com/BerkeleyLab/julienne/pull/18
  • Fix n doc test workflow by @rouson in https://github.com/BerkeleyLab/julienne/pull/19
  • doc(README): instruct to export FPM_{FC,FFLAGS) by @rouson in https://github.com/BerkeleyLab/julienne/pull/20
  • Use language-feature macros and work around flang I/O issue by @rouson in https://github.com/BerkeleyLab/julienne/pull/21

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.3.0...1.3.1

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - Public GitHub_CI detector and generic test-description search function

What's Changed

  • Feature-based macros by @rouson in https://github.com/BerkeleyLab/julienne/pull/16
  • Make GitHub_CI detector public and description search function generic by @rouson in https://github.com/BerkeleyLab/julienne/pull/17

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.2.2...1.3.0

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - Double-precision separated value format

What's Changed

  • Feature: add double-precision separated value format and unit test by @rouson in https://github.com/BerkeleyLab/julienne/pull/14

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.2.1...1.2.2

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - JSON double-precision array value getter to string_t

What's Changed

  • feat(stringt):add json getdoubleprecisionarray
  • chore(string_m): make specific binding private by @rouson in https://github.com/BerkeleyLab/julienne/pull/13

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.2.0...1.2.1

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - Double-precision JSON value getters

When a JSON line contains a string with a key and corresponding real value such as "some-key" : 1.234 and when the get_json_value's mold argument is a double-precision scalar value, the result is now a double-precision real value.

What's Changed

  • Merge sourceryinstitute main into berkeleylab main by @rouson in https://github.com/BerkeleyLab/julienne/pull/11
  • Merge sourceryinstitute fork main into berkeleylab fork main by @rouson in https://github.com/BerkeleyLab/julienne/pull/12

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.1.1...1.2.0

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - Test JSON-value character getters and add copyrights

This release 1. Adds passing tests for three private string_t type-bound procedures supporting the public generic binding get_json_value: - get_character ๐Ÿ”  - get_character_with_character_key ๐Ÿ”‘ - get_string_with_character_key ๐Ÿงถ 2. Adds missing copyright headers to all files in two subdirectories: - example/ and ๐Ÿš— - test/. โ˜‘๏ธ

What's Changed

  • Feature/Chore: new getjsonvalue getters / add copyrights by @rouson in https://github.com/BerkeleyLab/julienne/pull/10

Full Changelog: https://github.com/BerkeleyLab/julienne/compare/1.1.0...1.1.1

- Fortran
Published by rouson almost 2 years ago

https://github.com/berkeleylab/julienne - JSON value getters with intrinsic-character key

With this release, each of the specific type-bound procedures that can be invoked through the json_get_value generic binding now has an alternative implementation that accepts a JSON key value as an intrinsic character argument that the implementation passes as an argument to a string_t constructor and uses the result to invoke the corresponding original JSON value getter.

What's Changed

  • chore(testresultt): make components private by @rouson in https://github.com/BerkeleyLab/julienne/pull/1
  • Eliminate NAG compiler warnings by @rouson in https://github.com/BerkeleyLab/julienne/pull/2
  • Merge sourceryinstitute fork into berkeleylab fork by @rouson in https://github.com/BerkeleyLab/julienne/pull/3
  • chore(read_lines): safer variable scoping by @rouson in https://github.com/BerkeleyLab/julienne/pull/4
  • Add file_t constructor & make some type-bound procedures elemental by @rouson in https://github.com/BerkeleyLab/julienne/pull/5
  • Add installable target to fpm toml file by @ktras in https://github.com/BerkeleyLab/julienne/pull/6
  • Update license by @ktras in https://github.com/BerkeleyLab/julienne/pull/7
  • Add copyright notice to license by @ktras in https://github.com/BerkeleyLab/julienne/pull/8
  • Trims and character keys by @rouson in https://github.com/BerkeleyLab/julienne/pull/9

New Contributors

  • @rouson made their first contribution in https://github.com/BerkeleyLab/julienne/pull/1
  • @ktras made their first contribution in https://github.com/BerkeleyLab/julienne/pull/6

Full Changelog: https://github.com/BerkeleyLab/julienne/commits/1.1.0

- Fortran
Published by rouson almost 2 years ago