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

Intern 5 development #1095

Open
jason0x43 opened this issue Feb 6, 2020 · 0 comments
Open

Intern 5 development #1095

jason0x43 opened this issue Feb 6, 2020 · 0 comments
Labels
information Issue is purely informational

Comments

@jason0x43
Copy link
Member

jason0x43 commented Feb 6, 2020

The list of updates planned for Intern 5 is still being determined, but a few things are already known or in progress. As this is a major release there will be a few breaking changes, but we hope to keep those to a manageable level.

You can track Intern 5's development on the project board.

Simplifying development

Intern’s development has been relatively slow for the last few months. A big part of that is maintenance overhead and organization. Intern has more projects than it has people regularly working on it, and keeping up with them was slowing down the development process. A big behind-the-scenes part of the next release therefore involves simplifying the development and maintenance process. We want any potential contributors, including ourselves, to be able to easily setup a full Intern dev environment, make changes, and run tests.

One part of this is consolidating the code base. The core Intern projects (Leadfoot, Dig Dug, and the cli) are all being pulled back into the main Intern repository. These three projects were originally part of a single code base, and have always been closely dependent. Having them together makes development and testing new features much simpler. The non-Intern repositories are being deprecated; while they’ll still receive bug fixes, they may not receive new features, and any new feature requests should come through Intern’s issue tracker. That’s not to say that standalone Dig Dug and Leadfoot are necessarily finished, but future releases would be generated from the code in the Intern repository rather than from separate repositories.

New features

There are a lot of things we want to do with Intern, much more than will fit into the next release (well, assuming we want to actually get the next release out the door). A discovery process is ongoing (take a look at the list in #1080, and feel free to make suggestions!). A few of the more significant features we plan to include are:

Other big features that may make it in include:

Once we’ve finished the discovery process we’ll have a firmer idea of what new features will be included.

Other improvements

Along with adding new features, we also want to improve Intern’s existing functionality and fix some annoyances.

Breaking changes

As we work to improve Intern, some of the changes may not always be backwards compatible. Breaking changes will include:

  • Changed export paths. As part of cleaning up the API, some module locations will change.
  • Changed configuration options. Some options will be renamed or restructured to improve configuration consistency. In general we'll deprecate existing config options rather than removing them entirely.
  • Switch to native Promises. Async APIs will switch from custom Task and CancellablePromise classes to native Promises.
@jason0x43 jason0x43 added the information Issue is purely informational label Feb 6, 2020
@jason0x43 jason0x43 pinned this issue Feb 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
information Issue is purely informational
Projects
None yet
Development

No branches or pull requests

1 participant