Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • ParaView ParaView
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,962
    • Issues 1,962
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 98
    • Merge requests 98
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ParaViewParaView
  • ParaViewParaView
  • Issues
  • #18867
Closed
Open
Issue created Mar 14, 2019 by Mathieu Westphal@mwestphalMaintainer

ParaView python backward compatibility mechanism does not allow to change enumeration value

When changing the enumeration value of a property in a proxy, a user using paraview.compatibility would expect to be able to use the old value in setter and getter. It is possible to set it but it is not possible to get the value, as it is stored in the locals of the python object hence no backward compatibility code is ever called.

How to reproduce :

  • Apply this backwardCompat.patch on master. This patch change an enum name from "Points" to "Foo" in the PlotDataOverTime filter, and tries to handle the backward compatibility.
  • build paraview with python enabled
  • run paraview
  • open python shell
  • run the following commands
paraview.compatibility.major=5
paraview.compatibility.major=5
Wavelet()
a=PlotDataOverTime()
a.FieldAssociation = "Cells" 
a.FieldAssociation = "Points" -> the setter is working great
a.FieldAssociation -> Here we expect "Points" but we get "Foo"

I added a print trace to the getter, it is never called.

it impacts !2038 (merged) and !3095 (merged)

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking