Recent Releases of Pyccel
Pyccel - Version 2.0.1
What's Changed
Added
- [INTERNALS] Added developer documentation about tests.
Fixed
- #2364 : Fix the use of the
--export-compiler-configflag. - #2372 : Fix passing arrays of size 0 to Fortran translations.
- [INTERNALS] Fix unsorted
__all__variables. - [INTERNALS] Allow CI scripts
check_pyccel_conventions.py,check_pylint_commands.py, andci_tools/check_python_capitalisation.pyto be called easily locally.
Changed
- [INTERNALS] Rename
check_slots.py->check_pyccel_conventions.py.
Deprecated
Full list of changes: v2.0.0..v2.0.1
Scientific Software - Peer-reviewed
- Python
Published by github-actions[bot] 8 months ago
Pyccel - Version 2.0.0
What's Changed
Added
- #1720 : Add support for
Ellipsisas the only index for an array. - #1787 : Ensure STC v5.0 (
ef322ae) is installed with Pyccel. - #1656 : Ensure gFTL is installed with Pyccel.
- #1694 : Add Python support for list method
extend(). - #1700 : Add Python support for list method
sort(). - #1696 : Add Python support for list method
copy(). - #1693 : Add Python support for list method
remove(). - #1895 : Add Python support for dict initialisation with
{}. - #1895 : Add Python support for dict initialisation with
dict(). - #1881 : Add Python support for dict method
copy(). - #1888 : Add Python support for dict method
setdefault(). - #1885 : Add Python and C support for dict method
get(). - #1844 : Add line numbers and code to errors from built-in function calls.
- #1655 : Add the appropriate C language equivalent for declaring a Python
listcontainer using the STC library. - #1659 : Add the appropriate C language equivalent for declaring a Python
setcontainer using the STC library. - #1944 : Add the appropriate C language equivalent for declaring a Python
dictcontainer using the STC library. - #1657 : Add the appropriate Fortran language equivalent for declaring a Python
listcontainer using the gFTL library. - #1658 : Add the appropriate Fortran language equivalent for declaring a Python
setcontainer using the gFTL library. - #1944 : Add the appropriate Fortran language equivalent for declaring a Python
dictcontainer using the gFTL library. - #2009 : Add support for
inoperator forlist,set,dictand class containers. - #1874 : Add C and Fortran support for the
len()function for thelistcontainer. - #1875 : Add C and Fortran support for the
len()function for thesetcontainer. - #1908 : Add C and Fortran support for the
len()function for thedictcontainer. - #1665 : Add C and Fortran support for returning lists from functions.
- #1663 : Add C and Fortran support for lists as arguments.
- #1689 : Add C and Fortran support for list method
append(). - #1876 : Add C support for indexing lists.
- #1690 : Add C and Fortran support for list method
pop(). - #1695 : Add C and Fortran support for list method
reverse(). - #2256 : Add C and Fortran support for list method
clear(). - #2259 : Add C and Fortran support for list method
insert(). - #2298 : Add support for
list.__eq__. - #1663 : Add C and Fortran support for sets as arguments.
- #1664 : Add C and Fortran support for returning sets from functions.
- #2023 : Add support for iterating over a
set. - #1893 : Add support for set initialisation with
set(). - #1877 : Add C and Fortran Support for set method
pop(). - #1917 : Add C and Fortran support for set method
add(). - #1918 : Add support for set method
clear(). - #1918 : Add support for set method
copy(). - #1743 : Add support for set method
discard(). - #1750 : Add support for set method
remove(). - #1753 : Add support for set method
union(). - #1754 : Add support for set method
update(). - #1744 : Add support for set method
intersection(). - #1745 : Add support for set method
intersection_update(). - #1745 : Add support for set method
isdisjoint(). - #2059 : Add C and Fortran support for returning dictionaries from functions.
- #2164 : Add support for dict indexing.
- #1880 : Add support for dict method
clear(). - #1884 : Add support for dict method
items(). - #1884 : Add support for dict method
keys(). - #1884 : Add support for dict method
values(). - #1886 : Add support for dict method
pop(). - #1887 : Add support for dict method
popitem(). - #1936 : Add missing C output for inline decorator example in documentation
- #1937 : Optimise
pyccel.ast.basic.PyccelAstNode.substitutemethod. - #1544 : Add support for
typing.TypeAlias. - #1583 : Allow inhomogeneous tuples in classes.
- #738 : Add support for homogeneous tuples with scalar elements as arguments.
- Add a warning about containers in lists.
- #2016 : Add support for translating arithmetic magic methods.
- #2106 : Add support for
__len__magic method. - #1980 : Extend The C support for min and max to more than two variables
- #2081 : Add support for multi operator expressions
- #2061 : Add C support for string declarations.
- Add support for inhomogeneous tuple annotations.
- #1834 : Add support for
@propertydecorator. - #2099 : Fix translation of modules containing
__all__. - #983 : Add support for built-in function
round. - Add support for
typeas a type annotation. - #2182 : Add support for
isinstance. - #2183 : Add compile time analysis of if block conditions.
- #2139 : Add support for
__getitem__ - #337 : Add support for returning tuples from functions.
- #2194 : Add support for strings as arguments.
- #2192 : Add support for the floor division assignment operator.
- #2279 : Allow scalar literals (including Type hints) and recognised modules to be deduced from a function's context.
- #2210 : Add preliminary support for containers of containers (e.g. lists of lists).
- #2132 : Add support for
typing.TypeVarto replace@template. - #2253 : Add multiple levels of verbosity.
- Generate stub files to allow double compilation to potentially be bypassed.
- Add
context_dictargument toepyccelfor passing non-globaltyping.TypeVarobjects. - #2293 : Add
pyccel-testcommand to run unit tests. Improve docs. - #2358 : Add support for bitwise operators with NumPy arrays.
- [INTERNALS] Add abstract class
SetMethodto handle calls to various set methods. - [INTERNALS] Add
container_rankproperty toast.datatypes.PyccelTypeobjects. - [INTERNALS] Add a
__call__method toFunctionDefto createFunctionCallinstances. - [INTERNALS] Allow the use of magic methods to describe container methods.
- [INTERNALS] Add a simplify method to
PyccelGtfor literals. - [DEVELOPER] Add an improved traceback to the developer-mode errors for errors in function calls.
- [DEVELOPER] Add an environment variable to globally activate developer-mode for errors.
- [DEVELOPER] Add a spell checker for the code itself.
- [DEVELOPER] Add a test to main CI to check if deployment to TestPyPI is working correctly.
Fixed
- #2025 : Optimise min/max to avoid unnecessary temporary variables.
- #1720 : Fix Undefined Variable error when the function definition is after the variable declaration.
- #1763 Use
np.result_typeto avoid mistakes in non-trivial NumPy type promotion rules. - Fix some cases where a Python built-in type is returned in place of a NumPy type.
- Stop printing numbers with more decimal digits than their precision.
- Allow printing the result of a function returning multiple objects of different types.
- #1732 : Fix multidimensional list indexing in Python.
- #1785 : Add missing cast when creating an array of booleans from non-boolean values.
- #1821 : Ensure an error is raised when creating an ambiguous interface.
- #1842 : Fix homogeneous tuples incorrectly identified as inhomogeneous.
- Link and mention
develbranch, notmaster. - #1913 : Fix function calls to renamed functions.
- #1930 : Preserve ordering of import targets.
- #1892 : Fix implementation of list function when an iterable is passed as parameter.
- #1979 : Fix memory leaks in C due to homogeneous container redefinition.
- #1972 : Simplified
printfstatement for Literal String. - #2026 : Fix missing loop in slice assignment.
- #2008 : Ensure list/set/dict assignment is recognised as a reference.
- #2039 : Ensure any expressions in the iterable of a for loop are calculated before the loop.
- #2013 : Stop limiting the length of strings to 128 characters.
- #2078 : Fix translation of classes containing comments.
- #2041 : Include all type extension methods by default.
- #2082 : Allow the use of a list comprehension to initialise an array.
- #2094 : Fix slicing of array allocated in an if block.
- #2085 : Fix calling class methods before they are defined.
- #2111 : Fix declaration of class attributes with name conflicts using type annotations.
- #2115 : Fix integer handling with NumPy 2.0 on Windows.
- Fix handling of union
typing.TypeAliasobjects as type hints. - #2141 : Fix error when removing
test_node. - #2148 : Fix error due to missing file
numpy_version.h. - #2001 : Ensure all memory is correctly deallocated in the Python interface in a way that is compatible with all compilers.
- #2153 : Fix missing line information when an unknown class method is called.
- #2149 : Fix multi-line expressions in
ifconditions. - #2181 : Allow saving an array result of a function to a slice but raise a warning about suboptimal performance.
- #2190 : Fix missing error for list pointer assignment.
- #2198 : Fix saving an empty string in Fortran.
- #2195 : Fix string comparisons.
- Fixed returning strings from functions.
- #2197 : Allow strings as dictionary keys in C.
- #2104 : Add support for Pythonic swapping and raise errors for expressions which are too complex.
- Lifted the restriction on ndarrays limiting them to rank<15.
- #2175 : Fix the shape of multi-level containers.
- Catch all internal errors arising in the syntactic, semantic, printing or code generation stages.
- #2206 : Fix returning an array of unknown literal size.
- #2112 : Improve floor division.
- #2220 : Fix premature
stc/cspanimport. - #2214 : Fix returning a local variable from an inline function.
- #1321 : Fix use of tuples returned from functions in a non-assign statement.
- #2229 : Fix annotation of variables that are returned in a function whose result type is annotated.
- #2238 : Fix incorrect memory handling for temporary variable.
- #2239 : Fix missing library directory for Python shared library.
- #1410 : Fix conditional statement not working inside of a list comprehension.
- #1297 : Fix iteration over an
enumerate,maporzipin a list comprehension. - #2098 : Fix using multiple list comprehensions.
- #1948 : Fix list comprehension does not work in C.
- #2245 : Fix internal error when an inhomogeneous tuple appears as an indexed element.
- #2258 : Fix missing errors for bad pointer handling in the case of containers with mutable elements.
- #2274 : Do not pass include flags to linker (they are useless).
- #2274 : Always use the C compiler to build the C wrapper for NumPy arrays (fixes Intel failures).
- #2285 : Reduce number of warnings in unit tests.
- #2295 : Fix wrapper handling of constant array arguments.
- #2097 : Fix printing of an empty list.
- #2235 : Fix negative numbers in slice indices when translating to C.
- #2144 : Fix accidental imports due to modules making their contents public by default.
- #2312 : Fix rounding direction for negative integer elements in
np.linspace. - #2125 : Fix missing type check for argument of known type in a function with arguments whose type can be one of several types.
- #2042 : Fix missing index in loop unravelling for loop of length 1.
- #2093 : Fix scoping issue preventing class methods from sharing a name with locals in another class method.
- #1814 : Fix class method visitation order to correctly access the global scope from methods.
- #1668 : Fix handling of
is not Nonecheck to ensure it is always checked before accessing the variable. - #802 : Add if blocks in Python output to ensure support for implementations that differ for different types.
- #2286 : Fix warnings due to non-existent include directories.
- Fix casting of arrays in Python translation.
- #2167 : Stop modifying variables to add
Finalannotation. - #2216 : Ensure compilation dependencies added by Pyccel are indicated for compilation of files which import the module.
- #2261 : Add LLVM compilers.
- #2344 : Allow language to be set using a capitalised name (Fortran, C, Python).
- #2322 : Fix inline functions calling inline functions with their own local variables.
Changed
- #2282 : Change the order of the function arguments (out arguments are now first).
- #2008 : Remove dependency on
astunparsepackage. - #1920 : Add a maximum version for NumPy.
- #1836 : Move
epyccelmodule topyccel.commands.epycceland add support for shortcut importfrom pyccel import epyccel. - #1720 : functions with the
@inlinedecorator are no longer exposed to Python in the shared library. - #1720 : Error raised when incompatible arguments are passed to an
inlinedfunction is now fatal. - #1964 : Improve the error message when the wrong type is passed as a NumPy array argument.
- #1941 : Rename "target" in
AsNametolocal_aliasto better illustrate its use in the local context. - #1961 : Use STC's
cspanto describenp.ndarrayin C. This results in a large speed-up for pathological cases. - #2187 : Removed use of pickle.
- #2234 : Print all constant C variables with
constspecifier. - #2249 : Improve installation docs and recommend virtual environment.
- #2242 : Change format of compiler info files.
- #2302 : Print the deallocation in a 1 line if statement.
- #2125 : Add information about received data type to type errors when calling a function with the wrong type.
- #297 : Parse generated
.pyifiles instead of.pyfiles when importing to speed up translation. - #2330 : Inline functions in the semantic stage.
- #2322 : Stop raising an error when checking if non-optional variable is
None. - #2348 : Improve parameters of
pyccelcommand andepyccelfunction. - [INTERNALS]
FunctionDefis annotated when it is called, or at the end of theCodeBlockif it is never called. - [INTERNALS]
InlinedFunctionDefis only annotated if it is called. - [INTERNALS] Build
utilities.metaclasses.ArgumentSingletonon the fly to ensure correct docstrings. - [INTERNALS] Rewrite datatyping system. See #1722.
- [INTERNALS] Moved precision from
ast.basic.TypedAstNodeto an internal property ofast.datatypes.FixedSizeNumericTypeobjects. - [INTERNALS] Moved rank from
ast.basic.TypedAstNodeto an internal property ofast.datatypes.PyccelTypeobjects. - [INTERNALS] Moved order from
ast.basic.TypedAstNodeto an internal property ofast.datatypes.PyccelTypeobjects. - [INTERNALS] Use cached
__add__method to determine result type of arithmetic operations. - [INTERNALS] Use cached
__and__method to determine result type of bitwise comparison operations. - [INTERNALS] Stop storing
FunctionDef,ClassDef, andImportobjects insideCodeBlocks. - [INTERNALS] Remove the
orderargument from thepyccel.ast.core.Allocateconstructor. - [INTERNALS] Remove
rankandorderarguments frompyccel.ast.variable.Variableconstructor. - [INTERNALS] Ensure
SemanticParser.infer_typereturns all documented information. - [INTERNALS] Enforce correct value for
pyccel_stagingproperty ofPyccelAstNode. - [INTERNALS] Allow visiting objects containing both syntactic and semantic elements in
SemanticParser. - [INTERNALS] Rename
pyccel.ast.internals.PyccelInternalFunctiontopyccel.ast.internals.PyccelFunction. - [INTERNALS] All internal classes which can be generated from
FunctionCalls must inherit fromPyccelFunction. - [INTERNALS]
PyccelFunctionobjects which do not represent objects in memory have the typeSymbolicType. - [INTERNALS] Rename
_visitfunctions called from aFunctionCallwhich don't match the documented naming pattern to_buildfunctions. - [INTERNALS] Remove unnecessary argument
kindtoErrors.set_target. - [INTERNALS] Handle STC imports with Pyccel objects.
- [INTERNALS] Stop using ndarrays as an intermediate step to call Fortran code.
- [INTERNALS] Stop using ndarrays as an intermediate step to return arrays from Fortran code.
- [INTERNALS] Unify the strategy for handling additional imports in the printing stage for different languages.
- [INTERNALS] Make
Iterableinto a super-class instead of a storage class. - [INTERNALS] Change the order of the constructor arguments of
FunctionDef. - [INTERNALS] Use
_extract_X_FunctionDefResultmethods in Fortran-to-C wrapper. - [INTERNALS] Rename
BindCVariable->BindCModuleVariable. - [INTERNALS] Save a shape whose length is limited to the container length.
- [INTERNALS] Restrict use of
FunctionDefResultto one instance per function. - [INTERNALS] Use
_extract_X_FunctionDefArgumentmethods in Fortran-to-C wrapper. - [INTERNALS] Replace internal
.pyhheader files with.pyifiles.
Deprecated
- #2008 : Remove support for Python 3.8.
- #1786 : Remove support for
realandintegeras type annotations. - #1487 : Remove support for
@templatedecorator. - #1487 : Remove support for
@typesdecorator. - #1487 : Remove support for
#$ headersyntax. - #1812 : Stop allowing multiple main blocks inside a module.
- Removed
templatesargument fromlambdify. Replaced withcontext_dict. - #2339 : Remove
consttype modifier in favour oftyping.TypeVar. - #1287 : Remove unused method
BasicParser.copy(). - #2345 : Remove undocumented macro syntax in favour of inline methods.
- #2345 : Break support for
scipy.linalg.lapack.dgbtrf,scipy.linalg.lapack.dgbtrs,scipy.linalg.lapack.dgetrf, andscipy.linalg.lapack.dgetrs. - Remove undocumented, untested, obsolete Lua printer.
- [INTERNALS] Remove property
ast.basic.TypedAstNode.precision. - [INTERNALS] Remove class
ast.datatypes.DataType(replaced byast.datatypes.PrimitiveTypeandast.datatypes.PyccelType). - [INTERNALS] Remove unused properties
prefixandaliasfromCustomDataType. - [INTERNALS] Remove
ast.basic.TypedAstNode._dtype. The datatype can still be accessed as it is contained within the class type. - [INTERNALS] Remove unused parameters
expr,statusandlikefrompyccel.ast.core.Assign. - [INTERNALS] Remove
pyccel.ast.utilities.builtin_functions. - [INTERNALS] Remove unused/unnecessary functions in
pyccel.parser.utilities:read_file,header_statement,accelerator_statement,get_module_name,view_tree. - [INTERNALS] Remove unused functions
Errors.unset_target, andErrors.reset_target. - [INTERNALS] Remove unused classes
SymbolicAssignandSymbolicPrint. - [INTERNALS] Remove
ast.bind_c.BindCFunctionDefResult(replaced byast.bind_c.BindCArrayTypeandast.bind_c.BindCResultVariable). - [INTERNALS] Remove
ast.bind_c.BindCFunctionDefArgument(replaced byast.bind_c.BindCArrayTypeandast.bind_c.BindCResultVariable). - [INTERNALS] Remove unused class
ast.core.FuncAddressDeclare. - [INTERNALS] Remove unnecessary function
ast.utilities.flatten_tuple_var(replaced by calls toScope.collect_all_tuple_elements).
New Contributors
- Mohamed Jalal Maaouni
- Shoaib Moeen
- Kush Choudhary
- Emmmanuel Ferdman
- Mohammed Ayaz Shaikh
- Amir Movassaghi
- Leonardo Merlin Paloschi
- Joao Antonio Gomes
- Nandini Raja
- Brijesh Thummar
- Max Lindqvist
Full list of changes: v1.12.1..v2.0.0
Scientific Software - Peer-reviewed
- Python
Published by github-actions[bot] 8 months ago
Pyccel - Version 1.12.1
What's Changed
Added
- #1915 : Add support for NumPy v2
signfunction. - #1988 : Add support for NumPy v2 (fix
floor, fix type mixing, update tests).
Fixed
- #1853 : Fix translation of a file whose name conflicts with Fortran keywords.
- #1047 : Print the value of an unrecognised constant.
- #1951 : Fix return type for class whose argument cannot be wrapped.
- #1903 : Fix memory leak when using type annotations on local variables.
- #1927 : Improve error Message for missing target language compiler in Pyccel
- #1933 : Improve code printing speed.
- #1924 : Fix internal error arising in Duplicate or list comprehensions.
- #1970 : Fix missing
TypeErrorfor wrong type passed as optional argument. - #1985 : Fix implementation of
gcdandlcmfor C and Fortran. - #1998 : Fix compiler error when using a variable named
I.
New Contributors
- Said Mazouz
Full list of changes: v1.12.0..v1.12.1
Scientific Software - Peer-reviewed
- Python
Published by github-actions[bot] over 1 year ago
Pyccel - Version 1.12.0
What's Changed
Added
- #1830 : Add a
pyccel.lambdifyfunction to accelerate SymPy expressions. - #1867 : Add a
use_outparameter topyccel.lambdifyto avoid unnecessary memory allocation. - #1867 : Auto-generate a docstring for functions generated via calls to
pyccel.lambdify. - #1868 : Hide traceback for
epyccelandlambdifyerrors.
Fixed
- #1762 : Fix array copy between different data types.
- #1792 : Fix array unpacking.
- #1795 : Fix bug when returning slices in C.
- #1218 : Fix bug when assigning an array to a slice in Fortran.
- #1830 : Fix missing allocation when returning an annotated array expression.
- #1853 : Fix translation of a file whose name conflicts with Fortran keywords.
- Link and mention
develbranch, notmaster.
Changed
- #1866 : Raise a more informative error when mixing scalar and array return types.
- [TESTS] Filter out cast warnings in cast tests.
- [INTERNALS] Removed unused
fcode,ccode,cwrappercode,luacode, andpycodefunctions from printers. - [INTERNALS] Removed unused arguments from methods in
pyccel.codegen.codegen.Codegen.
Deprecated
- #1820 : Deprecated unused decorator
@lambdify - [INTERNALS] Removed unused and undocumented function
get_function_from_ast. - [INTERNALS] Remove function
Module.set_name. - [INTERNALS] Remove unused
assign_toargument ofCodePrinter.doprint.
New Contributors
- Varadarajan Rengaraj
Full Changelog: v1.11.2..v1.12.0
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 1 year ago
Pyccel - Version 1.11.2
What's Changed
- Fix Pyccel checks by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1726
- List support: append method by @Farouk-Echaref in https://github.com/pyccel/pyccel/pull/1709
- Variable type annotations for homogeneous tuples by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1575
- Remove unnecessary dtype property from Declare by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1730
- List support: pop method by @mustapha-belbiad in https://github.com/pyccel/pyccel/pull/1710
- Minor bot fix by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1733
- List support: clear method by @mustapha-belbiad in https://github.com/pyccel/pyccel/pull/1734
- Support NumPy functions
isnan,isinf,isfiniteby @neet-14 in https://github.com/pyccel/pyccel/pull/1552 - List support/insert method by @Farouk-Echaref in https://github.com/pyccel/pyccel/pull/1727
- Remove dead code by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1761
- Set support: constructor and
addmethod by @mustapha-belbiad in https://github.com/pyccel/pyccel/pull/1757 - Improve argument singletons by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1760
- Fix pytest error following deprecation by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1776
- Fix partial templates by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1780
New Contributors
- @neet-14 made their first contribution in https://github.com/pyccel/pyccel/pull/1552
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.11.1...v1.11.2
Scientific Software - Peer-reviewed
- Python
Published by yguclu almost 2 years ago
Pyccel - Version 1.11.1
What's Changed
- Minor bot fix by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1725
- Fix returns in for loops by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1724
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.11.0...v1.11.1
Scientific Software - Peer-reviewed
- Python
Published by yguclu about 2 years ago
Pyccel - Version 1.11.0
What's Changed
- Remove dead code by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1584
- Add documentation for classes. by @sboof911 in https://github.com/pyccel/pyccel/pull/1580
- Fix unnecessarily long epyccel file names by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1588
- Fix bot coverage issue by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1600
- Fix fork PR commit check by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1603
- Support call to built-in
tuple()by @mudit-loya in https://github.com/pyccel/pyccel/pull/1589 - Add preliminary wrapper for Python class by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1596
- Apply some Pylint fixes : Part 1 by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1591
- Apply some Pylint fixes : Part 2 by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1592
- Raise an error for ifs in comprehension statements by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1598
- Apply some pylint fixes : part 3 by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1609
- Ensure support for functions which pass and return classes by @sboof911 in https://github.com/pyccel/pyccel/pull/1576
- Remove dead code by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1625
- Improve TypedAstNode to fully describe container types by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1590
- Remove GCC intrinsics from Fortran printing of sign function by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1627
- Add documentation for AST nodes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1616
- Remove HomogeneousTupleVariable by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1623
- Fix builtins overriding imports by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1622
- Make type annotation optional for
selfargument of bound methods by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1626 - Fix compiler configuration path resolution by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1617
- Fix infinite loop when slices are found in
arraycall by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1615 - Handle scalar optionals as per the standard by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1629
- Handle class docstrings by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1620
- Fix exit statement in Fortran with Intel compiler by @harsha-mangena in https://github.com/pyccel/pyccel/pull/1624
- Update docs wrong path by @bauom in https://github.com/pyccel/pyccel/pull/1642
- Add wrapping of a FunctionDefResult containing a class by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1604
- Migrate from Setuptools to Hatch to support Python 3.12 by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1638
- Add
numpy.maxto C printer by @PriyabrataMo in https://github.com/pyccel/pyccel/pull/1640 - Clean PythonRange printing by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1644
- Add
numpy.minto C printer by @PriyabrataMo in https://github.com/pyccel/pyccel/pull/1649 - Fix scoping issue by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1652
- Add missing type error by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1533
- Manage Pylint errors via bot by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1653
- Update Intel environment by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1672
- Use Python 3.10 with new Intel compiler by @yguclu in https://github.com/pyccel/pyccel/pull/1673
- Add wrapping of a FunctionDefArgument containing a class by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1606
- Use new class
ast.Constantto avoid deprecation warnings by @PriyabrataMo in https://github.com/pyccel/pyccel/pull/1675 - Fix class type of builtin reduction functions by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1679
- Correct wrapper stage link in documentation by @mustapha-belbiad in https://github.com/pyccel/pyccel/pull/1681
- Class simplifications by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1676
- Allow classes without init functions by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1685
- Fix name collision issue for class methods by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1682
- Allow calling class methods from Python by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1607
- Make
PythonComplexa subclass ofPyccelInternalFunctionby @Farouk-Echaref in https://github.com/pyccel/pyccel/pull/1704 - Add typing.Final and simplify type inference by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1683
- Get actual Homebrew directory with
brew --prefixby @yguclu in https://github.com/pyccel/pyccel/pull/1713 - Fix target/pointer issues with classes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1686
- Add timers and fix set usage by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1711
- Allow class usage in a project by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1707
- Fix: handle paths with dots by @bauom in https://github.com/pyccel/pyccel/pull/1717
- Minor bot fixes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1718
- Allow returning pointers which point to arguments by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1715
- Wrap class variables by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1706
New Contributors
- @harsha-mangena made their first contribution in https://github.com/pyccel/pyccel/pull/1624
- @PriyabrataMo made their first contribution in https://github.com/pyccel/pyccel/pull/1640
- @mustapha-belbiad made their first contribution in https://github.com/pyccel/pyccel/pull/1681
- @Farouk-Echaref made their first contribution in https://github.com/pyccel/pyccel/pull/1704
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.10.0...v1.11.0
Scientific Software - Peer-reviewed
- Python
Published by yguclu about 2 years ago
Pyccel - Version 1.10.0
What's Changed
- Remove Python 3.7 support by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1512
- Return instance of user class. Reuse variable for multiple instances by @sboof911 in https://github.com/pyccel/pyccel/pull/1557
- Fix coverage trigger by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1563
- Fix #1520: Misleading type names by @imperial-chief in https://github.com/pyccel/pyccel/pull/1545
- Add commas to format specifiers by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1558
- Fix Windows runner by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1573
- Change default type handling behaviour by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1523
- Add type annotations for variable by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1574
- Update CHANGELOG.md by @yguclu in https://github.com/pyccel/pyccel/pull/1579
New Contributors
- @imperial-chief made their first contribution in https://github.com/pyccel/pyccel/pull/1545
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.9.2...v1.10.0
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 2 years ago
Pyccel - Version 1.9.2
What's Changed
- Improve handling of
DottedNamein_assign_lhs_variableby @sboof911 in https://github.com/pyccel/pyccel/pull/1484 - Add C support for a class containing only scalar data by @sboof911 in https://github.com/pyccel/pyccel/pull/1472
- Add C support for a class containing
Interfacesby @sboof911 in https://github.com/pyccel/pyccel/pull/1476 - Add support for type annotations to class methods by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1510
- Add support for cmath by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1511
- Tidy up Python printing by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1513
- Fix docstring bot by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1515
- Cleanup some datatype handling by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1525
- Change default type handling behaviour - Part 1 by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1524
- Fix Variable.clone function by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1537
- Fix homepage badges by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1542
- Fix devel branch tests by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1543
- Bot bug fixes for collaborators on forks by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1546
- Don't auto-create checklists to fix fork problems by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1549
- Clean up backtrace error by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1535
- Add Intel tests to devel branch by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1547
- Fix minor bugs by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1550
- Add C support for a class destructor by @sboof911 in https://github.com/pyccel/pyccel/pull/1508
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.9.1...v1.9.2
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 2 years ago
Pyccel - Version 1.9.1
What's Changed
- Allowing the bot to re-run cancelled tests by @mkaddani in https://github.com/pyccel/pyccel/pull/1502
- Fix review request by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1504
- Fix passing temporary arrays to functions by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1499
- Improve np.array implementation by @jalalium in https://github.com/pyccel/pyccel/pull/1256
- Add copy() method to ndarray by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1497
- Fix none_dealloc bug by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1506
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.9.0...v1.9.1
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 2 years ago
Pyccel - Version 1.9.0
What's Changed
- Fix race condition by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1445
- Tidy up the Pyccel homepage by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1438
- Adding Python support for a simple class by @sboof911 in https://github.com/pyccel/pyccel/pull/1446
- Fix generic methods in classes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1431
- Add a new cleaner bot by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1449
- View bot access token reply by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1458
- Correct bot ids by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1459
- Rename
__pyccel__and__epyccel__folders by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1451 - Minor developer doc improvement by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1447
- Bot fixes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1460
- Reorganize AST nodes related to size and shape of arrays by @yguclu in https://github.com/pyccel/pyccel/pull/1394
- Fix docs setup by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1463
- [BOT] Always post run duration by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1464
- Stop bot reacting to comments by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1465
- Fix non-fatal developer-mode output by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1454
- Bot fixes by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1466
- [BOT] Don't cancel dependent jobs by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1475
- Fix review status by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1473
- Improve class
ConstructorCallby @sboof911 in https://github.com/pyccel/pyccel/pull/1457 - Fortran ordering, array of arrays, nested arrays by @ohachim in https://github.com/pyccel/pyccel/pull/1280
- Fix bot clean up by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1478
- Add C support for a class containing only functions by @sboof911 in https://github.com/pyccel/pyccel/pull/1452
- [BOT] Fix docs for ci_tools by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1483
- Fix anaconda_windows problems by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1481
- Fix uninitialised ndarray order by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1486
- Clean PythonCodePrinter and add dtype property by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1260
- Reduce use of types decorator by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1470
- Add warnings to Type specification deprecations by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1488
- C to Python wrapper rewrite by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1477
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.8.1...v1.9.0
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 2 years ago
Pyccel - Version 1.8.1
What's Changed
- Fix AugAssign with templates and literal rhs by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1428
- Add conjugate methods for ints and floats by @EmilyBourne in https://github.com/pyccel/pyccel/pull/1432
- Update CHANGELOG.md by @yguclu in https://github.com/pyccel/pyccel/pull/1433
Full Changelog: https://github.com/pyccel/pyccel/compare/v1.8.0...v1.8.1
Scientific Software - Peer-reviewed
- Python
Published by yguclu over 2 years ago