WMCore 1.4.9 central services production release
This release contains major Python3 code modernization, while keeping compatibility with Python2.
In addition to that, there is the removal of all the old Dashboard/DashboardMonitor libraries. Last but not least, it also contains a few bug-fixes and overall enhancements.
Release date: 15 June 2021.
Changes since release: 1.4.8.
Central services
Software stack
- PY3: Ramp up Rucio Client vesion (Todor Ivanov) #10567 cms-sw/cmsdist#6959
- PY3: added Cheetah3 to requirements_py3.txt (Dario Mapelli) #10491
- Replace mox dependency with mock. Remove deprecated testMkdir test (khurtado) #10484
- Removed pystack from our Python2 COMP stack (Alan Malta Rodrigues) dmwm/deployment#1056
- Create new spec for py2-cmscouchapp; remove old couchapp/restkit specs (Alan Malta Rodrigues) cms-sw/cmsdist#6892 cms-sw/cmsdist#6897
- Created new spec for py3-cmscouchapp, version (Alan Malta Rodrigues) 1.3.4 cms-sw/cmsdist#6984
- Created new spec for CouchDB 1.6 with python3 CMSCouchapp (Alan Malta Rodrigues) cms-sw/cmsdist#6919
- Created new spec for Python3 DBS clients (Todor Ivanov) cms-sw/cmsdist#6837 cms-sw/cmsdist#6946
- Created new spec for py3-mysqclient (Todor Ivanov) cms-sw/cmsdist#6926
- Add condor python3 version and make wmagentpy3 require it (khurtado) cms-sw/cmsdist#6925
Features and/or feature changes
- Remove Services/Dashboard package; WMRuntime DashboardMonitor and DashboardInterface (Alan Malta Rodrigues) #10494
- Adjust couchapp push command to match CMSCouchapp (Alan Malta Rodrigues) #10485
- Remake MSTransferor alert subject; increase alert expiration time to 1h (Alan Malta Rodrigues) #10475
- Add couchdb manage function to update couchapps (Erik Gough) #1045 #1057
Bug Fixes
- Fix DID existence check in global workqueue (Alan Malta Rodrigues) #10557
Enhancements
WMAgent
Features and/or feature changes
- Remove Services/Dashboard package; WMRuntime DashboardMonitor and DashboardInterface (Alan Malta Rodrigues) #10494
- Decouple CMSSW and WMCore python versions from PSet tweak (khurtado) #10179
- Add support to OverrideCatalog, allowing use of different storage (germanfgv) #10344
- Adjust couchapp push command to match CMSCouchapp (Alan Malta Rodrigues) #10485
- Add couchdb manage function to update couchapps (Erik Gough) #1045 #1057
Bug Fixes
- PY3: source init.sh script from the wmagentpy3 directory (Alan Malta Rodrigues) #1055
- PY3: Fix WMCORE_ROOT environment variable for WMAgent PY3 (Alan Malta Rodrigues) #1052
- PY3: Fix python interpreter to be used in wmagentpy3 spec (Alan Malta Rodrigues) #6922
Enhancements
- Fix Rucio-related unit tests (Alan Malta Rodrigues) #10576
- Flowchart with the WMCore Jenkins CI setup (Alan Malta Rodrigues) #10560
- Python3 workflow test templates (Alan Malta Rodrigues) #10480
- PY3: Add devtools variant to wmagentpy3 deploy script, for unittests (Alan Malta Rodrigues) #1053
Python3 related changes
- fix unittests from #10295 - src (Dario Mapelli) #10581
- Sort files by name in EventAwareLumiByWork; fix slice 7 unit tests (Alan Malta Rodrigues) #10583
- fix unittests from Slice 3 in py3 (Dario Mapelli) #10579
- Fix unittests from Slice 1 in py3 (Dario Mapelli) #10575
- Fix Py3 unit tests for slice 6, CouchService_t (Alan Malta Rodrigues) #10578
- Fix unittest from #10529, Proxy_t (Erik Gough) #10577
- Open parsed file in bytes. (Todor Ivanov) #10571
- Fix DBFormatter unit test (Alan Malta Rodrigues) #10574
- Re-execute REST/Main with the correct python version (Alan Malta Rodrigues) #10573
- fix unittests from WMCore/Datastructs in py3 (Dario Mapelli) #10562
- Adapt to renaming of assertItemsEqual to assertCountEqual in py3 (Dario Mapelli) #10563
- List of unstable python3 unit tests (Alan Malta Rodrigues) #10565
- fix unittests from WMCore/Algorithms in py3 (Dario Mapelli) #10561
- fix unittests from WMCoreConfigCache (Dario Mapelli) #10522
- Fix missing exceptions module in python3 (Todor Ivanov) #10524
- Fix some problems with string handling in src/python/WMCore/Services/Requests.py (Dario Mapelli) #10508
- futurize src/python/WMCore/Configuration.py (Dario Mapelli) #9974
- fix unittests in test/python/Utils_t - #10500 - src (Dario Mapelli) #10500
- new variables Utils.PythonVersion.PY2/3 (Dario Mapelli) #10518
- MySQLCore - update use of arguments in list.sort() to reflect py3-compatible interface (Dario Mapelli) #10506
- fix stuck unittest in test/python/Utils_t (Dario Mapelli) #10503
- Do not convert unicode to bytes when parsing data from Databases (Dario Mapelli) #10504
- pycurl_manager: converting response to unicode before parsing - src (Dario Mapelli) #10501
- setup_test.py compatible with both py2 and py3 (Dario Mapelli) #10499
- new unittest deploy scripts for wmagentpy3 (Dario Mapelli) #10496
- Modernized bin/ scripts to support py3 (Dario Mapelli) #10482