Skip to content

Commit 447c6af

Browse files
authored
Merge branch 'master' into master
2 parents 46b2402 + 3b98bd8 commit 447c6af

31 files changed

+697
-184
lines changed

.github/FUNDING.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ github: gnikit # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [u
44
patreon: # Replace with a single Patreon username
55
open_collective: # Replace with a single Open Collective username
66
ko_fi: # Replace with a single Ko-fi username
7-
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
7+
tidelift: pypi/fortls
88
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
99
liberapay: # Replace with a single Liberapay username
1010
issuehunt: # Replace with a single IssueHunt username

.github/workflows/main.yml

+9-6
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ jobs:
1010
strategy:
1111
matrix:
1212
os: [ubuntu-latest, windows-latest]
13-
python-version: ["3.7", "3.8", "3.9", "3.10"]
13+
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11-dev"]
1414
fail-fast: false
1515
runs-on: ${{ matrix.os }}
1616

1717
steps:
1818
- uses: actions/checkout@v3
19-
- uses: actions/setup-python@v3
19+
- uses: actions/setup-python@v4
2020
with:
2121
python-version: ${{ matrix.python-version }}
2222
architecture: x64
@@ -25,7 +25,7 @@ jobs:
2525
run: pip install .[dev]
2626

2727
- name: Unittests
28-
run: pytest -v
28+
run: pytest --doctest-modules
2929

3030
- name: Lint
3131
run: black --diff --check --verbose .
@@ -34,18 +34,21 @@ jobs:
3434
strategy:
3535
matrix:
3636
os: [ubuntu-latest, windows-latest]
37+
python-version: ["3.8","3.10"]
38+
fail-fast: false
3739
runs-on: ${{ matrix.os }}
3840

3941
steps:
4042
- uses: actions/checkout@v3
41-
- uses: actions/setup-python@v3
43+
- uses: actions/setup-python@v4
4244
with:
43-
python-version: "3.10"
45+
python-version: ${{ matrix.python-version }}
4446

4547
- name: Coverage report
4648
run: |
4749
pip install .[dev]
48-
pytest --cov=fortls --cov-report=xml
50+
pytest --doctest-modules
51+
shell: bash
4952

5053
- name: Upload coverage to Codecov
5154
uses: codecov/codecov-action@v3

.github/workflows/python-publish.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
steps:
2020
- uses: actions/checkout@v3
2121
- name: Set up Python
22-
uses: actions/setup-python@v3
22+
uses: actions/setup-python@v4
2323
with:
2424
python-version: "3.x"
2525

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,4 @@ fortls/_version.py
1515
*.log
1616

1717
.coverage
18+
coverage.xml

.pre-commit-config.yaml

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,19 @@
22
# See https://pre-commit.com/hooks.html for more hooks
33
repos:
44
- repo: https://github.com/pre-commit/pre-commit-hooks
5-
rev: v4.2.0
5+
rev: v4.3.0
66
hooks:
77
- id: trailing-whitespace
88
- id: end-of-file-fixer
99
- id: check-yaml
1010
- id: check-added-large-files
1111
args: ['--maxkb=2000']
12-
- repo: https://gitlab.com/pycqa/flake8
13-
rev: 3.9.2
12+
- repo: https://github.com/PyCQA/flake8
13+
rev: 4.0.1
1414
hooks:
1515
- id: flake8
1616
- repo: https://github.com/asottile/pyupgrade
17-
rev: v2.32.1
17+
rev: v2.37.2
1818
hooks:
1919
- id: pyupgrade
2020
- repo: https://github.com/pycqa/isort
@@ -23,6 +23,6 @@ repos:
2323
- id: isort
2424
name: isort (python)
2525
- repo: https://github.com/psf/black
26-
rev: 22.3.0
26+
rev: 22.6.0
2727
hooks:
2828
- id: black

CHANGELOG.md

+84
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,90 @@
22

33
## Unreleased
44

5+
## 2.14.0
6+
7+
### Added
8+
9+
- Added coverage testing for multiple Python versions
10+
([#168](https://github.com/gnikit/fortls/pull/178))
11+
12+
## 2.13.0
13+
14+
### Added
15+
16+
- Added pre-commit.ci to `fortls`
17+
([#168](https://github.com/gnikit/fortls/issues/168))
18+
19+
### Fixed
20+
21+
- Fixed `intent(in out)` not being parsed correctly
22+
([#160](https://github.com/gnikit/fortls/issues/160))
23+
24+
## 2.12.0
25+
26+
### Fixed
27+
28+
- Fixed issue where `pip` would install without `--user` and fail
29+
([#163](https://github.com/gnikit/fortls/issues/163))
30+
31+
## 2.11.0
32+
33+
### Fixed
34+
35+
- Fixed bug thorowing diagnostic errors if arguments were named `pure`, `elemental`, etc.
36+
([#157](https://github.com/gnikit/fortls/issues/157))
37+
38+
## 2.10.0
39+
40+
### Fixed
41+
42+
- Fixed `workspace/didChangeConfiguration` requests that caused errors in VS Code logs
43+
([#114](https://github.com/gnikit/fortls/issues/114))
44+
45+
## 2.9.0
46+
47+
### Fixed
48+
49+
- Fixed glob pattern resolution for command line arguments
50+
([#142](https://github.com/gnikit/fortls/issues/142))
51+
52+
### Changed
53+
54+
- Changed the default value of the following options when a mix the command line
55+
interface and the `json` interface are used. Instead of having the `json` interface
56+
default the values to an empty set it now defaults to the values of the
57+
command line: `excl_paths`, `source_dirs`, `incl_suffixes`, `excl_suffixes`, `include_dirs`
58+
([#143](https://github.com/gnikit/fortls/issues/143))
59+
60+
## 2.8.0
61+
62+
### Added
63+
64+
- Added support for comments in the `json` configuration files
65+
([#137](https://github.com/gnikit/fortls/issues/137))
66+
- Added `sitemap.xml` to documentation webpage
67+
([#134](https://github.com/gnikit/fortls/pull/134))
68+
69+
### Fixed
70+
71+
- Fixed bug where error messages did not post correctly
72+
([#135](https://github.com/gnikit/fortls/issues/135))
73+
74+
## 2.7.0
75+
76+
### Added
77+
78+
- Added doctests in the pytest test suite
79+
([#131](https://github.com/gnikit/fortls/issues/131))
80+
81+
### Changed
82+
83+
- Renamed variables to simplify parser
84+
([#133](https://github.com/gnikit/fortls/pull/133))
85+
- Redesigned parsing functions for short-hand declarations of array dimensions,
86+
character length and parsing of kind
87+
([#130](https://github.com/gnikit/fortls/pull/130))
88+
589
## 2.6.0
690

791
### Changed

README.md

+5
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,11 @@ If you want to support this project you can do it through
172172
When [filing bugs](https://github.com/gnikit/fortls/issues/new)
173173
please provide example code to reproduce the observed issue.
174174

175+
## Security Policy
176+
177+
To report a security vulnerability please follow the instructions in our
178+
[Security page](https://github.com/gnikit/fortls/security/policy).
179+
175180
## License
176181

177182
This project is made available under the [MIT License](https://github.com/gnikit/fortls/blob/master/LICENSE).

docs/conf.py

+8
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@
8080
"sphinx_design",
8181
"sphinx_copybutton",
8282
"myst_parser",
83+
"sphinx_sitemap",
8384
]
8485
# For sphinx_design in Markdown
8586
myst_enable_extensions = ["colon_fence"]
@@ -106,12 +107,19 @@
106107
html_title = "fortls"
107108
html_logo = "../assets/logo.svg"
108109
html_favicon = "../assets/icon.svg"
110+
html_baseurl = "https://gnikit.github.io/fortls/"
109111

110112
# Add any paths that contain custom static files (such as style sheets) here,
111113
# relative to this directory. They are copied after the builtin static files,
112114
# so a file named "default.css" will overwrite the builtin "default.css".
113115
html_static_path = ["_static"]
114116

117+
# Add any extra paths that contain custom files (such as robots.txt or
118+
# .htaccess) here, relative to this directory. These files are copied
119+
# directly to the root of the documentation.
120+
html_extra_path = ["html_extra"]
121+
# Default is {version}{lang}{link}
122+
sitemap_url_scheme = "{link}"
115123

116124
display_toc = True
117125
# autodoc_default_flags = ["members"]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
google-site-verification: google3e426562ce42e98f.html

docs/html_extra/robots.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
User-agent: *
2+
Disallow:
3+
Sitemap: https://gnikit.github.io/fortls/sitemap.xml

docs/index.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ fortls
158158

159159
Features
160160

161-
.. grid-item-card:: :material-sharp:`settings;5em;sd-text-primary`
161+
.. grid-item-card:: :material-outlined:`settings;5em;sd-text-primary`
162162
:link-type: doc
163163
:link: options
164164
:class-body: sd-text-center

docs/options.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Configuration using the command line
1818

1919
.. argparse::
2020
:module: fortls
21-
:func: commandline_args
21+
:func: cli
2222
:prog: fortls
2323
:nodefault:
2424

fortls/__init__.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from multiprocessing import freeze_support
88

99
from .helper_functions import only_dirs, resolve_globs
10-
from .interface import commandline_args
10+
from .interface import cli
1111
from .jsonrpc import JSONRPC2Connection, ReadWriter, path_from_uri
1212
from .langserver import LangServer
1313
from .parse_fortran import FortranFile
@@ -24,7 +24,7 @@ def error_exit(error_str: str):
2424
def main():
2525
#
2626
freeze_support()
27-
args = commandline_args(__name__).parse_args()
27+
args = cli(__name__).parse_args()
2828

2929
if args.version:
3030
print(__version__)

fortls/ftypes.py

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ class VarInfo:
1515
#: keywords associated with this variable e.g. SAVE, DIMENSION, etc.
1616
keywords: list[str] #: Keywords associated with variable
1717
var_names: list[str] #: Variable names
18+
var_kind: str = field(default=None) #: Kind of variable e.g. ``INTEGER*4`` etc.
1819

1920

2021
@dataclass

0 commit comments

Comments
 (0)