Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ESInputTag to VPSet default added to cfi file #44344

Merged
merged 3 commits into from
Mar 9, 2024

Conversation

Dr15Jones
Copy link
Contributor

PR description:

Also added unit test for cfi content of VPSet.

PR validation:

Code compiles and new unit test passes.

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44344/39377

  • This PR adds an extra 20KB to repository

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@Dr15Jones
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44344/39378

  • This PR adds an extra 24KB to repository

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

A new Pull Request was created by @Dr15Jones for master.

It involves the following packages:

  • FWCore/ParameterSet (core)

@makortel, @Dr15Jones, @smuzaffar can you please review it and eventually sign? Thanks.
@makortel, @missirol, @wddgit this is something you requested to watch as well.
@antoniovilela, @rappoccio, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

Comment on lines +64 to +65
s_findTheRightFunction[edm::k_ESInputTag] = &fillDescriptionFromParameter<edm::ESInputTag>;
s_findTheRightFunction[edm::k_VESInputTag] = &fillDescriptionFromParameter<std::vector<edm::ESInputTag>>;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These were the two missing entries.

The rest should just be a direct replacement of the char with the same valued enum.

vl = cms.vint64(1),
vt = cms.VInputTag('foo'),
vui = cms.vuint32(1),
vul = cms.vuint64(1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see string, vstring, FileInPath, vbool are "missing" from this list. Are they tested well-enough elsewhere, or would there be value in adding them here?

(in principle also inner PSet and VPSet are not there, but maybe they are tested already well-enough elsewhere?)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't have a vbool in the system. Seems FileInPath's can't be created without the file being there (there is a special test in this unit test working around that). I'll definitely add the string and vstring.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have

class vbool(_ValidatingParameterListBase):

It is not listed in https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideAboutPythonConfigFile#Parameters though

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was able to add all the presently available options to the test.

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-3a6a0d/37961/summary.html
COMMIT: c8b0d1a
CMSSW: CMSSW_14_1_X_2024-03-06-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/44344/37961/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

Pull request #44344 was updated. @smuzaffar, @makortel, @Dr15Jones can you please check and sign again.

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 7, 2024

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-3a6a0d/37970/summary.html
COMMIT: 2506dd5
CMSSW: CMSSW_14_1_X_2024-03-06-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/44344/37970/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@makortel
Copy link
Contributor

makortel commented Mar 8, 2024

+core

@cmsbuild
Copy link
Contributor

cmsbuild commented Mar 8, 2024

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @rappoccio, @antoniovilela, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2)

@antoniovilela
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 9a93dd7 into cms-sw:master Mar 9, 2024
11 checks passed
@Martin-Grunewald
Copy link
Contributor

Martin-Grunewald commented Mar 10, 2024

In the most recent relvals (CMSSW_14_1_X_2024-03-10-0000), there are many errors of the type:

Traceback (most recent call last):
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/bin/el8_amd64_gcc12/cmsDriver.py", line 40, in <module>
    run()
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/bin/el8_amd64_gcc12/cmsDriver.py", line 16, in run
    configBuilder.prepare()
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/Configuration/Applications/python/ConfigBuilder.py", line 2284, in prepare
    self.loadAndRemember(self.EVTCONTDefaultCFF)  #load the event contents regardless
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/Configuration/Applications/python/ConfigBuilder.py", line 354, in loadAndRemember
    self.process.load(includeFile)
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/FWCore/ParameterSet/python/Config.py", line 761, in load
    module = __import__(moduleName)
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/Configuration/EventContent/python/EventContent_cff.py", line 64, in <module>
    from RecoHGCal.Configuration.RecoHGCal_EventContent_cff import *
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/RecoHGCal/Configuration/python/RecoHGCal_EventContent_cff.py", line 3, in <module>
    from RecoHGCal.TICL.iterativeTICL_cff import ticlIterLabelsMerge
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/RecoHGCal/TICL/python/iterativeTICL_cff.py", line 16, in <module>
    from RecoHGCal.TICL.tracksterSelectionTf_cfi import *
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/src/RecoHGCal/TICL/python/tracksterSelectionTf_cfi.py", line 1, in <module>
    from PhysicsTools.TensorFlow.tfGraphDefProducer_cfi import tfGraphDefProducer as _tfGraphDefProducer
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/week0/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_X_2024-03-10-0000/cfipython/el8_amd64_gcc12/PhysicsTools/TensorFlow/tfGraphDefProducer_cfi.py", line 5, in <module>
    FileName = cms.FileInPath(),
TypeError: __init__() missing 1 required positional argument: 'value'

It seems they originate from this PR which touches FileInPath though I do not understand why the PR tests of this PR went fine.
I suppose for fillDescriptions and cfi usage, both cms.FileInPath('') and cms.FileInPath() should be valid.

This PR changes:

cms.FileInPath('')

to

cms.FileInPath()

in fillDescriptions-generated cfi files like the above.

@Dr15Jones
Copy link
Contributor Author

@Martin-Grunewald thanks for reporting the problem. I'll work on a fix today.

@Martin-Grunewald
Copy link
Contributor

Fixed by #44362

@antoniovilela
Copy link
Contributor

Fixed by #44362

this is now merged

@antoniovilela
Copy link
Contributor

It seems they originate from this PR which touches FileInPath though I do not understand why the PR tests of this PR went fine.

It would be nice to understand why.

@Dr15Jones
Copy link
Contributor Author

It would be nice to understand why

This PR, I changed the 'empty' generated cfi version of FileInPath from cms.FileInPath('') to cms.FileInPath() which turned out not to parse properly in python.

@antoniovilela
Copy link
Contributor

It would be nice to understand why

This PR, I changed the 'empty' generated cfi version of FileInPath from cms.FileInPath('') to cms.FileInPath() which turned out not to parse properly in python.

Thanks. But why nothing showed up in PR tests?

@Dr15Jones
Copy link
Contributor Author

Thanks. But why nothing showed up in PR tests?

That I do not know but would like to find out.

@makortel
Copy link
Contributor

makortel commented Mar 11, 2024

This PR touched only source files in FWCore/ParameterSet and FWCore/Utilities, and therefore no other packages (except Utilities/RelMon and Utilities/StaticAnalyzer, don't know why those were) were checked out in the PR tests, and therefore none of the tests that failed in IBs were run in the PR tests.

In retrospect we maybe should have tested this PR with full_cmssw = true.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants