For the next major release of Envisage (which will currently be 7.0), we plan to remove the IPython plugin and associated machinery.
The main motivations for the removal are:
The IPython plugin is only tangentially (if at all) related to the design goals of Envisage (those of providing a framework for extensible Traits-based applications)
IPython development (sometimes) moves rather fast compared to Envisage development
The IPython plugin is closely coupled to the IPython internals, so is rather fragile to IPython updates
Historically, keeping Envisage up to date with IPython updates has occupied as much development time (if not more) than the whole of the rest of Envisage, despite that it's only incidentally related to the goals of Envisage. At the moment, we've only been able to keep Envisage CI running by pinning ipykernel and traitlets to old versions, and it looks as though it would require days-to-weeks of work to get the IPython kernel up and running again with the latest version. This isn't a recipe for sustainable maintenance for the Envisage project.
For the next major release of Envisage (which will currently be 7.0), we plan to remove the IPython plugin and associated machinery.
The main motivations for the removal are:
Historically, keeping Envisage up to date with IPython updates has occupied as much development time (if not more) than the whole of the rest of Envisage, despite that it's only incidentally related to the goals of Envisage. At the moment, we've only been able to keep Envisage CI running by pinning ipykernel and traitlets to old versions, and it looks as though it would require days-to-weeks of work to get the IPython kernel up and running again with the latest version. This isn't a recipe for sustainable maintenance for the Envisage project.