GFAL2-PYTHON RELEASE NOTES
==========================

* Wed Jul 31 2024 Louis Regnier <loregnie@cern.ch> - 1.13.0-1
** Task
- [DMC-1413] - Data Management Clients for Fedora 39 and Fedora 40
- [DMC-1414] - Stop building Data Management Clients for CC7
** Improvement
- [DMC-1386] - Gfal2 Python bindings CMake should allow building with non-system Python3 and Boost libraries
- [DMC-1416] - Disable the automatic clean-up when a copy fails
- [DMC-1417] - Remove Python2 CMake building for Gfal2 Python
** Support Request
- [DMC-1383] - gfal2 python3.11 bindings for RHEL9/AlmaLinux9

* Tue Dec 12 2023 Mihai Patrascoiu <mipatras@cern.ch> - 1.12.2-1
** New Feature
- [DMC-1344] - Propagate Scitags during TPC transfers
** Task
- [DMC-1392] - Support for Gfal2 Python bindings + Python 3.13 (Fedora 41)

* Tue Sep 05 2023 Mihai Patrascoiu <mipatras@cern.ch> - 1.12.1-1
** Task
- [DMC-1327] - DMC packages for Centos Stream 9
- [DMC-1330] - Support for Gfal2 Python bindings compiled with Python 3.11 (Fedora 37)
- [DMC-1336] - Data Management Clients for Fedora 36
- [DMC-1359] - Data Management Clients for Fedora 37
- [DMC-1379] - Move DMC projects to Alma8 and Alma9
- [DMC-1385] - Support for Gfal2 Python bindings compiled with Python 3.12 (Fedora 39) (bugzilla#2220000)
- [DMC-1387] - Data Management Clients for Fedora 38
- [DMC-1389] - Port Gfal2 Python3 projects away from "distutils"

* Fri Jul 08 2022 Joao Lopes <batistal@cern.ch> - 1.12.0-1
** Improvement
- [DMC-1260] - Expose Gfal2 XRootD eviction via the file API
- [DMC-1312] - Provide release file function without token argument in Gfal2 Python bindings
- [DMC-1325] - Expose gfal2_archive_poll via Gfal2 Python bindings
- [DMC-1326] - Expose gfal2_bring_online_v2 via Gfal2 Python bindings

* Mon Mar 07 2022 Mihai Patrascoiu <mipatras@cern.ch> - 1.11.1-1
** Bug
- [DMC-1277] - Use of uninitialized variable in "cred_get" method
- [DMC-1287] - GridFTP SEGV during positional read on CentOS 7
** Improvement
- [DMC-1274] - Provide credential delete method in the Gfal2 credential API
- [DMC-1308] - Move Data Management Clients to Fedora 34 & 35

* Thu Sep 23 2021 Joao Lopes <batistal@cern.ch> - 1.11.0-1
** Epic
- [DMC-1249] - Migrate CI infrastructure to gitlab-CI
** Bug
- [DMC-1263] - Gfal2 bindings segfault on Python3.9 due to improper GIL release
** New Feature
- [DMC-1265] - Export SE token retrieval in Gfal2 Python binding
** Task
- [DMC-1250] - Gfal2 packages for Centos8
- [DMC-1264] - Gfal2 packages for Fedora >= 33

* Wed Mar 24 2021 Mihai Patrascoiu <mipatras at cern.ch> - 1.10.1
** Bug
- [DMC-1241] - Segfault when using cred set/clean methods (gfal2-python bindings)
- [DMC-1242] - UnicodeDecodeError encountered in Python3 on File read/pread methods (gfal2-python bindings)

* Fri Dec 04 2020 Mihai Patrascoiu <mipatras at cern.ch> - 1.10.0
** Bug
- [DMC-1128] - gfal2-python cannot be installed with python 3.6 and 3.7
** Task
- [DMC-1059] - Extend the gfal2 HTTP plugin to implement CDMI QoS operations
- [DMC-1180] - merge f29+ and EPEL8 changes to develop
** Improvement
- [DMC-1229] - Introduce Gfal2 transfer parameter to enable/disable proxy delegation
- [DMC-1232] - Expose local transfers permission flag in Gfal2 transfer parameters
** Interface
- This version exposes the QoS Gfal2 API

* Thu Oct 25 2018 Andrea Manzi <amanzi at cern.ch> - 1.9.5
** Bug
- [DMC-1104] - [python 3] gfal2-python segfaults when freeing the context
- [DMC-1105] - [python 3] The gfal2-python examples have python2 only syntax
** Task
- [DMC-1079] - Add gfal2-python3 to EPEL7

* Tue Aug 28 2018 Andrea Manzi <amanzi at cern.ch> - 1.9.4
** Task
- [DMC-980] - Build gfal2-python for Python 3 in CC7
- [DMC-1045] - Add support for multiple credentials on gfal2-python

* Wed Jun 21 2017 Alejandro Álvarez <aalvarez at cern.ch> - 1.9.3
** Bug
- [DMC-930] - Avoid "no handlers could be found for logger gfal2"

* Wed Mar 01 2017 Alejandro Álvarez <aalvarez at cern.ch> - 1.9.2
** Bug
- [DMC-922] - Deadlock on listdir when logging is verbose

* Mon Feb 20 2017 Alejandro Álvarez <aalvarez at cern.ch> - 1.9.1
** Bug
- [DMC-920] - Missing incref on GfaltParams callbacks

* Mon Jan 06 2017 Alejandro Álvarez <aalvarez at cern.ch> - 1.9.0
** Bug
- [DMC-911] - setup.py broken
** New Feature
- [DMC-892] - Generalize checksum methods
** Improvement
- [DMC-873] - Explicit context destructor for gfal2 python bindings
- [DMC-875] - Make possible to build gfal2-python with Python3

* Mon Aug 01 2016 Alejandro Álvarez <aalvarez at cern.ch> - 1.8.5
** Bug
- [DMC-814] - No to_python (by-value) converter found for C++ type: boost::shared_ptr<PyGfal2::Directory>
- [DMC-832] - Segmentation Fault in gridftp plugin with thread locking

* Mon Oct 12 2015 Alejandro Álvarez <aalvarez at cern.ch> - 1.8.4
 - [DMC-698] - Port DMC clients to MacOSX
 - [DMC-725] - Provide a gfal2-python build linked against python2.7,
system stdc++ and statically against boost python

* Fri Jul 03 2015 Alejandro Álvarez <aalvarez at cern.ch> - 1.8.3
** Bug
 - [DMC-690] - Segfault inside set_opt_string_list
** New feature
 - [DMC-689] - Add __version__ to gfal2 bindings

* Fri Jun 19 2015 Alejandro Álvarez <aalvarez at cern.ch> - 1.8.2
** Bug
 - [DMC-677] - Need to reduce scope of ScopedGILRelease (see DMC-670)
 - [DMC-686] - Missing GIL release on gfal2 context constructor (Was Listing endpoints via WebFTS intermittently fails )
** Improvement
 - [DMC-674] - Validate version as part of the packaging

* Mon Apr 13 2015 Alejandro Álvarez <aalvarez at cern.ch> - 1.8.1
** Bug
 - [DMC-670] - Several calls are missing a ScopedGILRelease
** Improvement
 - [DMC-649] - Core: Improve logger system, deprecate old methods
 - [DMC-651] - Core and plugins: Allow to send custom key/value to the servers
** New Feature
 - [DMC-641] - Core: Allow to register multiple event listeners

* Fri Feb 03 2015 Alejandro Álvarez <aalvarez at cern.ch> - 1.7.0
 - [DMC-543] - listdir leaks the file descriptor
 - [DMC-546] - Expose bulk bring-online operations in gfal2-python
 - [DMC-583] - Core: Add call to recover list of installed plugins
 - [DMC-623] - Expose abort files call
 - [DMC-616] - Facilitate build integration with PH-SFT tools

* Fri Nov 07 2014 Alejandro Álvarez <aalvarez at cern.ch> - 1.6.0
 - [DMC-479] - Expose gfal_version in the Python wrappers
 - [DMC-496] - Pythonize names transfer_parameters and gfalt_event
 - [DMC-459] - Core: New method to load configuration from a file (gfal2_load_opts_from_file)
 - [DMC-481] - Expose 'strict mode' parameter via Python bindings and gfal2-util
 - [DMC-495] - Improve docstrings generated by boost::python 

* Tue Jul 01 2014 Alejandro Álvarez <aalvarez at cern.ch> - 1.5.0
 - [LCGUTIL-387] - Add buffer size parameter to gfal-cp
 - [LCGUTIL-391] - Python bindings do not expose create parent option for copies

* 1.4.1-1 :
 - fix [LCGUTIL-351] 

* 1.4.0-1 :
- [LCGUTIL-329] - GFal segmentation fault listing folders with a huge quantity of files
- Bug correction and shared_ptr support for Stat() and readdirpp()
- Fix a problem in the __str__() value of Gfal::Stat() 

* 1.3.0-1 : 
 - Correct a GError to python exception translation problem
 - implement callback for transfer ( performance marker )
 - correct bug concerning verbose level
 - add calls needed by LHCb ( stating )
 - several bug fixes related to gfal2-utils
 - implement partial list directory content ( readdir / readdirpp )
 - First release compatible with gfal2-utils

* Fri Apr 26 2013 Adrien Devresse <adevress at cern.ch> - 1.2.0-0
 - include partial r/w operations (pread/pwrite)
 - switch the internal api from old style posix to gfal2 file api
 - switch the license from EGEE to EMI
 - map the gfal2_cancel function
 - initial compatible EPEL release

* Thu Nov 29 2012 Adrien Devresse <adevress at cern.ch> - 1.1.0-0 
 - bug correction for set integer function
 - map the new parameter system properly
 - add verbose level management and new namespace to gfal python bindings
 - add pydoc
 - convert to off_t =64 bits on the 32 bits platform

* Fri Jul 20 2012 Adrien Devresse <adevress at cern.ch> - 1.0.0-1
 - initial 1.0 release for gfal 2.0 python bindings
