[midPoint] Plans for 4.0 release
Radovan Semancik
radovan.semancik at evolveum.com
Wed Apr 17 11:09:00 CEST 2019
Hi,
There has been some questions lately about the 4.0 release, especially
concerning the dates. And I guess I own you some explanations.
The short story is that our current plans for 4.0 release is
approximately May-June 2019.
You perhaps know, that the original plan was to release 4.0 approx. in
April, to keep our spring/autumn release pace. However, lots of things
happened during 4.0 development.
First of all, 4.0 is supposed to be long-term support (LTS) release.
Therefore we are making sure that we can support 4.0 for a long time.
Therefore there is a lot of code cleanups, interface stabilization,
interface improvements and removal of old dead code. We have figured
that it is worth to invest more time into this now, as that would make a
long-time support more efficient.
Secondly, you probably noticed that there is more activity in a security
area. This is partially motivated by the LTS nature of 4.0. But some of
you may have noticed that midPoint was chosen for a bug bounty program
which is a part of EU-Free and Open Source Software Auditing (EU FOSSA)
program. From security point of view the program is a success. And
personally I have to say that his is one of the most positive surprises
for me. However, the program resulted in a number of reports. Some of
those were already processed and resulted in fixes with accompanying
security advisories, other reports are being processed right now. While
this is a huge success and I'm extremely pleased that this will improve
security of midPoint, it also takes developer's time. We have always
placed security as one of our top priorities. Naturally the fixes and
improvements that resulted from the bug bounty program were highly
prioritized. Which meant that we have to postpone some of the planned
tasks. Obviously, the result was postponing of the release dates. But
all my information security instincts tell me that this was the right
decision to make.
Thirdly, we have changed our approach to midPoint development cycle. In
the past there was a single long "sprint" to develop features and
improvements for a new release. That ended in a "feature freeze".
Testing and fixing period followed after that, culminating in a release.
That approach was simple and it worked quite well for many years. But
there were downsides. One of the darker side was, that waiting time to
get some fixes might get as long as several months. Obviously, we are
prioritizing the fixes and some customers won't wait that long (a.k.a.
"subscribers first" principle), therefore this resulted in unpredictable
interruptions to the developer's work. Therefore in 4.0 we have decided
to implement milestone-based approach. Basically, there are 3-4
milestones in the development cycle. Development tasks are interleaved
with bugfixing parts. Then the feature freeze, final testing/fixing and
release (see
https://wiki.evolveum.com/display/midPoint/Support+Guidelines for a more
comprehensive solution). This process is much better overall, even
better that I was ready to admit. And this is the way to go in all the
future releases. But unfortunately, we are suffering from the effects of
everything that is new: it takes some time to adapt and fine-tune the
details. Therefore this has also caused some delays.
And all the delays added up, and the result is that the 4.0 release will
be later that we have originally planned. But I strongly believe that it
is worth it. This "Gutenberg" release is extremely exciting, with a lot
of new features. And not just some new features, but features that can
have systematic positive effects on how midPoint will be used in the
future. The "Gutenberg" will be really a revolutionary release.
However, nothing is for free, not even in open source. We had to take
some measures to get back on track. Therefore midPoint 4.1 will be much
smaller, to get back to the spring/autumn development pace. In fact, we
are already working on 4.1 development plan and it looks like it is
already full. The other effect is, that some of the features of midPoint
4.0 will be marked as "experimental". Those are features that are not
yet ready for the prime time. Those features are tested specially for
some specific use cases of the platform subscribers for which they are
developed. For other use cases - the features may work, but they may
also break. Full functionality of those feature is not yet implemented
and tested. Therefore, those features will not be officially supported
in 4.0.x (LTS) releases. Such features will be further developed in the
non-LTS releases (4.1, 4.2 and so on). And eventually, there will be a
full support for them. But not in 4.0. You can use them at your own
risk. But unless you have a special-purpose subscription that covers
them, we will not support those features. Not yet. We will support them
when they mature.
Anyway, I'm really excited about midPoint 4.0. This is really a giant
leap. We haven't made such a big step in years, perhaps since midPoint
3.0. Therefore let's get back to work and let's make it happen.
--
Radovan Semancik
Software Architect
evolveum.com
More information about the midPoint
mailing list