diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 7aee456668ed1cb0023bba8395281ff1b89cfb90..d434b1257396e295db0aa5b8b40317c5353ff698 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,9 +1,11 @@
 =========
 CHANGELOG
 =========
--`Future`
+- `2.0.2 <https://gitlab.pasteur.fr/nmaillet/rpg/-/releases/2.0.2>`_
     Add Elastase, #45
 
+    Update tmpdir to tmp_path in tests
+
 - `2.0.1 <https://gitlab.pasteur.fr/nmaillet/rpg/-/releases/2.0.1>`_
     Fix argparse bug preventing -h option to correctly be displayed
 
@@ -12,7 +14,7 @@ CHANGELOG
 - `2.0.0 <https://gitlab.pasteur.fr/nmaillet/rpg/-/releases/2.0.0>`_
     Tested on Python 3.10 et 3.11
     
-    Adding a new enzyme (43), Asp-N without cleaving Cysteines
+    Adding a two enzymes (43 and 44), Asp-N without cleaving Cysteines and ProAlanase
     
     Prevent RPG to take more CPUs than -c option
     
diff --git a/README.rst b/README.rst
index c9a93ff9caa48f7278d6bd03150b222c811d7fb5..64c3907c200e13ccc10a4c4ea8f855aa75cab481 100644
--- a/README.rst
+++ b/README.rst
@@ -37,7 +37,7 @@ RPG is a python tool taking a (multi-)fasta/fastq file (gzipped or not) of prote
 
 The resulting peptides contain information about positions of cleavage site, peptide sequences, length, mass as-well as an estimation of isoelectric point (pI) of each peptide. Shortly, the isoelectric point is the pH at which a peptide carries no net electrical charge and a good approximation can be computed on small molecules. Results are outputted in multi-fasta, CSV or TSV file.
 
-Currently, 43 enzymes and chemicals are included in RPG. The user can easily design new enzymes, using a simple yet powerful grammar. This grammar allows the user to design complex enzymes like trypsin or thrombin, including many exceptions and different cleavage sites. User-defined enzymes are then interpreted by RPG and included in the local installation of the software.
+Currently, 45 enzymes and chemicals are included in RPG. The user can easily design new enzymes, using a simple yet powerful grammar. This grammar allows the user to design complex enzymes like trypsin or thrombin, including many exceptions and different cleavage sites. User-defined enzymes are then interpreted by RPG and included in the local installation of the software.
 
 RPG follows the standards for software development with continuous integration on Gitlab (https://gitlab.pasteur.fr/nmaillet/rpg) and automatic on-line documentation (https://rapid-peptide-generator.readthedocs.io).
 
diff --git a/docs/enzymes.rst b/docs/enzymes.rst
index a9ef63abca24a8571e6511fe7764d17d0f4e3ee6..16f26f247594638f3dd2658221ef72a942abbc3e 100644
--- a/docs/enzymes.rst
+++ b/docs/enzymes.rst
@@ -38,7 +38,7 @@ Available enzymes
 34: :ref:`peps2`    35: :ref:`prol`     36: :ref:`protk`
 37: :ref:`staphI`   38: :ref:`therm`    39: :ref:`throm`
 40: :ref:`thromsg`  41: :ref:`tev`      42: :ref:`tryps`
-43: :ref:`asp-n2`   44: :ref:`proa`
+43: :ref:`asp-n2`   44: :ref:`proa`     45: :ref:`elast`
 ==================  ==================  ==================
 
 .. _arg-c:
@@ -898,3 +898,20 @@ cleaving rule:
 * ``(A or P,)``
 
 More information: https://france.promega.com/products/mass-spectrometry/proteases-and-surfactants/proalanase-mass-spec-grade?catNum=VA2161
+
+
+
+.. _elast:
+
+Elastase
+........
+
+Elastase preferentially cleaves after A, V, S, G, L, or I (`P1`).
+
+**RPG definition:**
+
+cleaving rule:
+
+* ``(A or V or S or G or L or or I,)``
+
+More information: https://france.promega.com/products/mass-spectrometry/proteases-and-surfactants/elastase/?catNum=V1891
diff --git a/docs/userguide.rst b/docs/userguide.rst
index 3b506a771511c7c6aac112acd4dc3d023247d354..3a759d8d4ac320cd1c076e4d78a5caac8e3e6927 100644
--- a/docs/userguide.rst
+++ b/docs/userguide.rst
@@ -480,7 +480,7 @@ The surrounding context is specified by adding other amino acids, before or afte
 
     (C)()(B)(,A)(D)
 
-Note that this enzyme will only cleave if it finds the motif C*BAD, where * could be **any** amino acid. It will **not** cleave BAD, nor C*BA, BA, etc. For example, creating and using enzyme `rpg_example_userguide` (enzyme id 43):
+Note that this enzyme will only cleave if it finds the motif C*BAD, where * could be **any** amino acid. It will **not** cleave BAD, nor C*BA, BA, etc. For example, creating and using enzyme `rpg_example_userguide` (enzyme id 46):
 
 .. code-block:: none
 
@@ -496,13 +496,13 @@ Note that this enzyme will only cleave if it finds the motif C*BAD, where * coul
     Add another enzyme? (y/n)
     n
 
-    $ rpg -s CWBADE -e 43
+    $ rpg -s CWBADE -e 46
     >Input_0_rpg_example_userguide_3_3_307.36728_5.46
     CWB
     >Input_1_rpg_example_userguide_6_3_333.29818_3.4
     ADE
 
-    $ rpg -s FAD -e 43
+    $ rpg -s FAD -e 46
     >Input_0_rpg_example_userguide_0_3_351.35928_3.6
     FAD
 
@@ -535,19 +535,19 @@ It is important to note that for each enzyme, it is enough that one of the rule
     Add another enzyme? (y/n)
     n
 
-    $ rpg -s CWBADE -e 43
+    $ rpg -s CWBADE -e 46
     >Input_0_rpg_example_userguide_3_3_307.36728_5.46
     CWB
     >Input_1_rpg_example_userguide_6_3_333.29818_3.4
     ADE
 
-    $ rpg -s FAD -e 43
+    $ rpg -s FAD -e 46
     >Input_0_rpg_example_userguide_1_1_165.19188_5.54
     F
     >Input_1_rpg_example_userguide_3_2_204.18268_3.6
     AD
 
-    $ rpg -s BAD -e 43
+    $ rpg -s BAD -e 46
     >Input_0_rpg_example_userguide_0_3_204.18268_3.6
     BAD
 
@@ -629,13 +629,13 @@ This enzyme will always cleave before A when not followed by P:
     Add another enzyme? (y/n)
     n
     
-    rpg -s CWBADE -e 43
+    rpg -s CWBADE -e 46
     >Input_0_rpg_example_userguide_3_3_307.36728_5.46
     CWB
     >Input_1_rpg_example_userguide_6_3_333.29818_3.4
     ADE
     
-    rpg -s CWBAPE -e 43
+    rpg -s CWBAPE -e 46
     >Input_0_rpg_example_userguide_0_6_604.67828_3.6
     CWBAPE
 
@@ -669,25 +669,25 @@ This enzyme will always cleave before A (`P1'` ) when not followed by P (`P2'` )
     Add another enzyme? (y/n)
     n
     
-    rpg -s CWBADE -e 43
+    rpg -s CWBADE -e 46
     >Input_0_rpg_example_userguide_3_3_307.36728_5.46
     CWB
     >Input_1_rpg_example_userguide_6_3_333.29818_3.4
     ADE
     
-    rpg -s CWBAPE -e 43
+    rpg -s CWBAPE -e 46
     >Input_0_rpg_example_userguide_0_6_604.67828_3.6
     CWBAPE
     
-    rpg -s GTBAMF -e 43
+    rpg -s GTBAMF -e 46
     >Input_0_rpg_example_userguide_0_6_525.62028_5.54
     GTBAMF
 
-    rpg -s GTBAPE -e 43
+    rpg -s GTBAPE -e 46
     >Input_0_rpg_example_userguide_0_6_473.48328_3.6
     GTBAPE
     
-    rpg -s GTBAME -e 43
+    rpg -s GTBAME -e 46
     >Input_0_rpg_example_userguide_3_3_176.17228_5.54
     GTB
     >Input_1_rpg_example_userguide_6_3_349.40218_3.6
diff --git a/rpg/RapidPeptidesGenerator.py b/rpg/RapidPeptidesGenerator.py
index 3c12518439227820fe15aa98b99d4e28dbcc44f7..5bac3155e751d04acb49d020f54b0271ab1dd134 100644
--- a/rpg/RapidPeptidesGenerator.py
+++ b/rpg/RapidPeptidesGenerator.py
@@ -29,9 +29,9 @@
 necessary functions
 """
 
-__version_info__ = ('2', '0', '1')
+__version_info__ = ('2', '0', '2')
 __version__ = '.'.join(__version_info__)
-__revision_date__ = "2023-03-14"
+__revision_date__ = "2023-10-06"
 __author__ = "Nicolas Maillet"
 
 import argparse
diff --git a/setup.py b/setup.py
index ab7f08da9c7e1e30bea645c4dd63e5dce17cc4eb..bb848aaa3353ad8bfde26b8eaab0d93f039b14e1 100644
--- a/setup.py
+++ b/setup.py
@@ -36,7 +36,7 @@ setup(
     # For a discussion on single-sourcing the version across setup.py and the
     # project code, see
     # https://packaging.python.org/en/latest/single_source_version.html
-    version='2.0.1',  # Required
+    version='2.0.2',  # Required
 
     # This is a one-line description or tagline of what your project does. This
     # corresponds to the "Summary" metadata field: