Recent Releases of gfort2py

gfort2py - Release v.2.6.1

Add support for for settings strings in derived types

- Python
Published by rjfarmer 12 months ago

gfort2py - Release v2.6.0

This release primarily updates support for numpy 2.0

- Python
Published by rjfarmer over 1 year ago

gfort2py - Release v2.5.0

  • Fix bug when returning a derived type containing an allocatable array
  • Raise AttributeError instead of IndexError when trying to slice scalar derived type
  • Better error message when passing wrong number of arguments to a procedure
  • Fotran names are now treated as case insensitive
  • Debug output now uses Python's logging module

- Python
Published by rjfarmer almost 2 years ago

gfort2py - Release: v2.4.2

  • Add support for new platforms
  • Switch compile function to be mostly keyword only arguments
  • Various packages needed for building have had their minimum version bumped
  • mod data can now be exported as JSON

- Python
Published by rjfarmer about 2 years ago

gfort2py - Release: v2.4.1

  • Add support for callback functions
  • Allows access to bind(C) variables and functions

- Python
Published by rjfarmer about 2 years ago

gfort2py - Release: v2.4.0

  • Adds the ability to load Fortran code from either a string or file. This avoids the user needing to have to compile and build a shared library themselves.
  • Update to support Python 3.12
  • Update to support gfortran 13

- Python
Published by rjfarmer over 2 years ago

gfort2py - Release: v2.3.0

  • Initial support for quad precision variables
  • Switch from pyparsing to cpyparsing for faster loading of the mod files
  • Add caching option of mod files for faster startups
  • Fix bug in optional character dummy arguments
  • Fix bug when we need to re-resolve runtime arguments

- Python
Published by rjfarmer over 2 years ago

gfort2py - Release: v2.2.1

Fix issue with assumed shape character arrays

- Python
Published by rjfarmer over 2 years ago

gfort2py - Release: v2.2.0

Add support for complex parameter arrays

Expand the kinds supported for integers, reals, and complex numbers

Allow functions to return an array as a result

- Python
Published by rjfarmer over 2 years ago

gfort2py - Release: v2.1.0

Fixes bugs in logical parameters

Enables support for runtime-defined explicit arrays where the dimension requires evaluating a unary op i.e dimension(n+1) or dimension((n*2)+1)

Be more careful about using np.double for double-precision variables

- Python
Published by rjfarmer over 2 years ago

gfort2py - Release: v2.0.0

After many years (and several complete re-writes) I am pleased to announce the release gfort2py v2.0.0. gfort2py is a Python library enabling the calling of Fortran code from Python. The main aim of this library is to make calling the Fortran code as easy as possible by minimising the number of changes to the Fortran code. All that is required is to have your code in a module and compiled as a shared library. No annotations or other changes needed.

Source code is available at https://github.com/rjfarmer/gfort2py

Gfort2py works with python >=3.7 and gfortran >=8. Note that there are many API breakages with the gfort2py 1.. series. Please refer to the README at https://github.com/rjfarmer/gfort2py/blob/main/README.md for examples of the new features.

Gfort2py supports many modern (and old) Fortran features including:

Scalars (ints, reals, logicals, characters) Arrays of (ints, reals, logicals, characters): explicit, assumed shape, assumed size, and allocatable arrays. Derived types including scalars and arrays. Explicit arrays of derived types (assumed shape are not yet supported) Allocatable strings (partial support) Calling functions and subroutines.

More features are planned to be added over time.

Installation via pip: python -m pip install --upgrade gfort2py

For those that want to get involved: Improvements to the test suite to include untested or new Fortran features (and Python code to test those features, even if it doesn’t yet work) is the most helpful. Otherwise, bug reports on broken features are also helpful.

- Python
Published by rjfarmer over 2 years ago

gfort2py - Bug fixs

Fix the build requirements Make ints and floats behave like ints and floats

- Python
Published by rjfarmer about 6 years ago

gfort2py - Fix functions with many string arguments

Fix functions with many string arguments

- Python
Published by rjfarmer over 6 years ago

gfort2py - Fix arrays

Integer and real (not double) pointer arrays now work better Arrays with dimension(n) should also work Starts work on function pointers

- Python
Published by rjfarmer over 7 years ago

gfort2py - Add function passing

Adds ability pass functions (either fortran or python) to a fortran function

- Python
Published by rjfarmer over 7 years ago

gfort2py - Add support for gfortran8

Adds support for gfortran8

- Python
Published by rjfarmer over 7 years ago

gfort2py - Bug fixes

More work on derived types and arrays

- Python
Published by rjfarmer over 7 years ago

gfort2py - Speed up load times

We now defer initializing most objects till they are needed, which should help start up times with large modules. Parsemod now uses dicts instead of lists thus its file version number has been bumped from 1 -> 2 Arrays in dt's are know mostly viewable without crashing, though setting them can still be an issue

- Python
Published by rjfarmer almost 8 years ago

gfort2py - Bug fix

Completly fixes the logical array bug, v1.0.9 did not fix this for explicit arrays

Add a version attribute

tag v1.0.10 was broken by changes to release scripts

- Python
Published by rjfarmer over 8 years ago

gfort2py - Bug fix

Fix issue with logical arrays when passed to functions

- Python
Published by rjfarmer over 8 years ago

gfort2py - Fix pip install issue

Pip installs where missing critical files as we didnt ship a MANIFEST.in file

Thanks to Liliana Novais for reporting this

- Python
Published by rjfarmer over 8 years ago

gfort2py - Bug fixes

Fix bugs when building and running on macs

Thanks to OrbitalMechanic for the bug reports and testing

- Python
Published by rjfarmer over 8 years ago

gfort2py - Bug fixes

Fix issue with function arguments to functions which are them selves arguments to a function Remove TEST_FLAG

- Python
Published by rjfarmer over 8 years ago

gfort2py - Speed increases

Caches various properties to speed up runtime

- Python
Published by rjfarmer over 8 years ago

gfort2py -

- Python
Published by rjfarmer over 8 years ago