Skip to content

Commit

Permalink
Merge branch 'master' into 353_strict_order
Browse files Browse the repository at this point in the history
  • Loading branch information
arporter authored Apr 22, 2024
2 parents 512cdfe + 45631e2 commit 2fea1f7
Show file tree
Hide file tree
Showing 131 changed files with 13,587 additions and 4,521 deletions.
26 changes: 26 additions & 0 deletions .github/workflows/python_publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Upload Python Package

on:
release:
types: [published]

jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: '3.x'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build
- name: Build package
run: python -m build --sdist --wheel
- name: Publish package
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_DEPLOYMENT_TOKEN }}
12 changes: 6 additions & 6 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# -----------------------------------------------------------------------------
# BSD 3-Clause License
#
# Copyright (c) 2020-2022, Science and Technology Facilities Council.
# Copyright (c) 2020-2023, Science and Technology Facilities Council.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -55,7 +55,7 @@ jobs:

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: psf/black@stable
with:
src: "./src ./example"
Expand All @@ -65,13 +65,13 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.6', '3.8', '3.10']
python-version: ['3.7', '3.8', '3.11']
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
Expand All @@ -85,6 +85,6 @@ jobs:
# LC_ALL (this is only relevant for versions before Python 3.7).
LC_ALL=POSIX pytest --cov=fparser --cov-report=xml src/fparser
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
verbose: true
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2018 Science and Technology Facilities Council
# Copyright (c) 2017-2023 Science and Technology Facilities Council.

# All rights reserved.

Expand Down Expand Up @@ -41,3 +41,7 @@ dist/
.coverage
fparser.log
src/fparser.egg-info
src/fparser/_version.py
doc/build
doc/source/autogenerated
doc/source/doxygen
63 changes: 63 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# -----------------------------------------------------------------------------
# BSD 3-Clause License
#
# Copyright (c) 2024, Science and Technology Facilities Council.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# * Neither the name of the copyright holder nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
# -----------------------------------------------------------------------------

# Read the Docs configuration file for the fparser documentation
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details.

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.12"
apt_packages:
- graphviz

# Build documentation in the doc/source directory with Sphinx
sphinx:
configuration: doc/source/conf.py

# If using Sphinx, optionally build your docs in additional formats such as PDF
# formats:
# - pdf

# Optionally declare the Python requirements required to build your docs.
python:
install:
- method: pip
path: .
extra_requirements:
- doc
64 changes: 62 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,66 @@ Modifications by (in alphabetical order):
* P. Vitt, University of Siegen, Germany
* A. Voysey, UK Met Office

09/04/2024 PR #442 for #440. Adds a new 'split file' example that splits a single source
file into separate units and creates a Makefile for them.

29/01/2024 PR #435 for #426. Add support for the CONVERT extension of the open()
intrinsic.

25/01/2024 PR #418 for #313. Allow intrinsic shadowing and improve fparser symbol table.

11/01/2024 PR #439 for #432. Fix RTD build and clean up setuptools config.

03/10/2023 PR #431 for #430. Fixes bug in WHERE handling in fparser1.

14/09/2023 PR #425 for #411. Splits the monolithic Fortran2008.py file
into separate classes.

12/09/2023 PR #423 for #403. Adds full support for DO CONCURRENT in F2008
(fixes bugs in previous implementation).

12/06/2023 PR #417 towards #411. Moves Fortran2008.py into a 'Fortran2008'
directory and moves the associated class generation into an '__init__.py'
in that directory.

16/05/2023 PR #414 for #412. Bug fix for disappearing line when parsing
include files.

15/05/2023 PR #415 for #165. Bug fix for code aborting when trying to match
'NAMELIST' in certain contexts.

15/05/2023 PR #408 for #403. Add support for the F2008 DO CONCURRENT.

26/04/2023 PR #406 for #405. Add support for F2008 optional "::" in PROCEDURE
statement.

03/04/2023 PR #392 for #326. Add support for F2008 block and critical constructs.

30/03/2023 PR #396 for #395. Fix trailing whitespace bug in CallBase.

13/03/2023 PR #391 for #324. Add GH workfow to automate a pypi upload during
GH releases.

01/02/2023 PR #389 for #388. Black 23.1 formatting changes.

01/02/2023 PR #377 for #342. Add an AutoAPI and Doxygen sections in the
documentation.

01/02/2023 PR #387 for #386. Support extension to permit in-line '!'
comments in fixed-format Fortran.

30/11/2022 PR #382 for #264. Ignore quotation marks in in-line comments.

18/10/2022 PR #380 towards #379. Improve support for operators and symbol
renaming in the use construct.

18/10/2022 PR #369 for #332. Add support for F2008 open intrinsic arguments.

13/10/2022 PR #381 for #298. Fix F2008 allocate statement with arguments.

20/09/2022 PR #376 for #349. Add support for use association to the
symbol table.

15/09/2022 PR #378 for #375. Permit source files containing only comments
to be parsed.

Expand All @@ -27,6 +87,8 @@ Modifications by (in alphabetical order):
05/09/2022 PR #372 fix for whitespace being lost when Format_Item_List is
contained within parentheses.

02/09/2022 PR #356 - add support for the mold allocate parameter.

11/08/2022 PR #368 for #367. Add support for visiting tuples in walk()
utility.

Expand All @@ -44,8 +106,6 @@ Modifications by (in alphabetical order):

20/06/2022 PR #345 - add fparser2 performance benchmark in the scripts folder.

02/09/2022 PR #356 - add support for the mold allocate parameter.

## Release 0.0.16 (16/06/2022) ##

14/06/2022 PR #337 towards #312 (performance improvements). Removes some
Expand Down
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# News #

* 31/01/2024 Version 0.1.4 released (resolves issues with WHERE statements and intrinsics).
* 18/09/2023 Version 0.1.3 released (resolves issues with support for DO CONCURRENT).
* 19/06/2023 Version 0.1.2 released (bug fix for handling of INCLUDE files).
* 28/04/2023 Version 0.1.1 released (extends F2008 support with the optional
"::" in the MODULE PROCEDURE statement).
* 18/04/2023 Version 0.1.0 released and status changed from `alpha` to `beta`. See the [CHANGELOG](CHANGELOG.md) for more details.
* 16/06/2022 Version 0.0.16 released. See the [CHANGELOG](CHANGELOG.md)
for details.
* 30/05/2022 Version 0.0.15 released. See the [CHANGELOG](CHANGELOG.md)
Expand Down
Loading

0 comments on commit 2fea1f7

Please sign in to comment.