Skip to content

Commit

Permalink
Merge branch 'pyccel:devel' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
EmilyBourne authored Oct 10, 2023
2 parents c5c2b48 + 893da3f commit 4f35c95
Show file tree
Hide file tree
Showing 81 changed files with 5,729 additions and 2,999 deletions.
1 change: 1 addition & 0 deletions .dict_custom.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ pyccelised
pyccelising
allocatable
deallocate
deallocation
conda
PyPI
CentOS
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ jobs:
touch report.txt
while read line; do
echo "python -m numpydoc --validate $line"
python -m numpydoc --validate $line 2>&1 | tee report.txt || true
python -m numpydoc --validate $line 2>&1 | tee -a report.txt || true
done < objects.txt
cd ..
python compare/ci_tools/process_results.py compare/report.txt $GITHUB_STEP_SUMMARY
Expand Down
43 changes: 43 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,45 @@ All notable changes to this project will be documented in this file.

### Added

- #1476 : Add C support for a class containing `Interfaces`.
- #1472 : Add C printing support for a class containing scalar data.
- #1492 : Types of arguments for class methods can be declared like function arguments.
- #1511 : Add support for the `cmath` library.

### Fixed

- #1484 : Use scope for classes to avoid name clashes.
- Stop raising warning for unrecognised functions imported via intermediate modules.

### Changed

- #1484 : Improve handling of `DottedName` in `_assign_lhs_variable`.

### Deprecated

- #1513 : Stop printing `@types` decorators in generated Python code.
- \[INTERNALS\] Remove `dtype_registry` in favour of `dtype_and_precision_registry`.
- \[INTERNALS\] Prefer `DataType` keys over string keys which describe data types.

## \[1.9.1\] - 2023-08-31

### Added

- #1497 : Add support for NumPy `copy` method: `a.copy`.
- #1497 : Add support for NumPy function `copy`.

### Fixed

- #1499 : Fix passing temporary arrays to functions.
- #1241 : Missing transpose when converting from a C-ordered array to F-ordered array.
- #1241 : Incorrect transpose when copying an F-ordered array.
- #1241 : Fix infinite loop when passing an array as the only argument to `np.array`.
- #1506 : Increment `Py_None` reference count to avoid unexpected deallocation.

## \[1.9.0\] - 2023-08-22

### Added

- #752 : Allow passing array variables to `numpy.array`.
- #1280 : Allow copying arrays using `numpy.array`.
- Allow interfaces in classes.
Expand All @@ -19,6 +58,7 @@ All notable changes to this project will be documented in this file.
- #682 : Wrong data layout when copying a slice of an array.
- #1453 : Fix error-level developer mode output.
- \[INTERNALS\] Fix string base class selection.
- #1496 : Fix interfaces which differ only by order or rank.

### Changed

Expand All @@ -30,9 +70,12 @@ All notable changes to this project will be documented in this file.
- \[INTERNALS\] In `ast.numpyext` rename `Shape` as `NumpyShape`, `NumpyArraySize` as `NumpySize`
- \[INTERNALS\] In `ast.internals` rename `PyccelArraySize` as `PyccelArraySizeElement`, create new `PyccelArraySize` w/out `index` argument
- \[INTERNALS\] Make `NumpySize` a factory class (which cannot be instantiated)
- \[INTERNALS\] Re-write C-Python API wrapping stage (#1477)

### Deprecated

- Using a `@types` decorator will raise a `FutureWarning` as this will be deprecated in a future version.
- Using a type specification header will raise a `FutureWarning` as this will be deprecated in a future version.
- Stop generating `numpy.bool` (deprecated from NumPy) in code.
- \[INTERNALS\] Removed `obsolete` folder.
- \[INTERNALS\] Removed out of date `samples` folder.
Expand Down
1 change: 0 additions & 1 deletion ci_tools/bot_messages/bot_commands.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@ This bot reacts to all comments which begin with `/bot`. This phrase can be foll
- `mark as ready` : Runs the PR tests. If they pass then it adds the appropriate review flag and requests reviews. This command should be used when the PR is first ready for review, or when a review has been answered.
- `commands` : Shows this list detailing all the commands which are understood.
- `trust user X` : Tells the bot that a new user X is trusted to run workflows (prevents misuse of GitHub actions for mining etc). This command can only be used by a trusted reviewer.
- `accept coverage` : Tells the bot that the coverage errors have been investigated and cannot be fixed in this PR.

Beware: if you have never contributed to this repository and you are not a member of the Pyccel organisation, the bot will ignore all requests to run tests until permitted by a trusted reviewer.
2 changes: 1 addition & 1 deletion ci_tools/bot_tools/bot_funcs.py
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ def run_tests(self, tests, python_version = None, force_run = False):
return []
else:
check_runs = self._GAI.get_check_runs(self._ref)['check_runs']
already_triggered = [c["name"] for c in check_runs if c['status'] in ('completed', 'in_progress')]
already_triggered = [c["name"] for c in check_runs if c['status'] in ('completed', 'in_progress') and c['conclusion'] != 'cancelled']
already_triggered_names = [self.get_name_key(t) for t in already_triggered]
already_programmed = {c["name"]:c for c in check_runs if c['status'] == 'queued'}
success_names = [self.get_name_key(c["name"]) for c in check_runs if c['status'] == 'completed' and c['conclusion'] == 'success']
Expand Down
2 changes: 1 addition & 1 deletion ci_tools/bot_tools/github_api_interactions.py
Original file line number Diff line number Diff line change
Expand Up @@ -767,7 +767,7 @@ def request_reviewers(self, pr_id, request_team = False, reviewers = ()):
url = f"https://api.github.com/repos/{self._org}/{self._repo}/pulls/{pr_id}/requested_reviewers"
review_requests = {}
if request_team:
review_requests['team_reviewers'] = 'pyccel/pyccel-dev'
review_requests['team_reviewers'] = ['pyccel-dev']
if reviewers:
review_requests['reviewers'] = list(reviewers)

Expand Down
3 changes: 3 additions & 0 deletions ci_tools/git_evaluation_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ def get_diff_as_json(filename):
current_file_deletions = []
current_file_name = l.split(' ')[3][2:]
i+=1
elif l.startswith('++') and '/dev/null' in l:
current_file_name = None
i += 1
elif l.startswith('@@'):
line_info = l.split('@@')[1].split()
for info in line_info:
Expand Down
Loading

0 comments on commit 4f35c95

Please sign in to comment.