The Future chamber was lit by hundreds of candles with strange symbols glowing on the walls. In the center of the chamber stood I, wearing the ceremonial robe and preparing for the task that lies before me.

Somebody opened the doors, I turned around to see, who that could be. “Oh, a pleasant surprise, traveler. Stand near the door and watch this, you will love it.” I focused back to my thoughts and added. “Today I will show you the future that is waiting for this realm, but first we need to see current situation to understand the changes.”

Current situation

I started to cite the incantations and above my head the image started to take some form. “This is the manuscript to help you understand, how the release-monitoring.org is working now. It’s simplified, so you don’t be bothered by details.”

Manuscript of the current situation

“As you can see, first thing that will happen is to let Anitya know that there is project it should track. This project is added either by Abstract Positive Intuition (API) or by some outside entity (User). “

“When the project is added to Anitya. We start to send messengers to every project and wait, if there is something new happening (cron job is checking every project for new version). If we see something new, we will sent the message using magical mirror (Fedora messaging).”

“And here is when the-new-hotness comes into play. It needs to commune with Great Oraculum (scm-requests pagure repository) and see if Ever Vigilant Guard (package maintainer) wants to be notified about the news. In case he wants to be notified, we send a messenger to land of Bugzilla. Optionally we send another to realm of Koji, if Ever Vigilant Guard wants this (create a scratch build in Koji).”

“This is simplified description about the current situation of release-monitoring.org. There is also plenty of additional smaller or larger issues that needs to be addressed, but this is all for now. If you want to know more about the other issues, traveler, please visit Bugcronomicon of Anitya and the-new-hotness.”

Near future

I broke my concentration and the image started to fade away. I started to collect my power again, this time to reveal more than just a current state of things. My mind must flow through the currents of time. “Now I will show you the future that is lying in front of us.” I concentrated again and new image started to take shape above my head.

Manuscript of the near future

“What you can see here is the near future. Something that is either being worked on or is already planned. So what is the difference from current situation. Let’s see.”

“There will be new option for adding a new project. Now we will welcome the messengers from the far away realm of libraries.io. This new connection was requested by the mages from the realm of copr.”

“The next change is to stop sending messengers periodically on every project, instead we will use queue (replace cron job by service) that will first send the messengers to the projects, which denied access to previous messengers (rate limiting).”

“We also want to establish new connection between the-new-hotness and Flathub to help them in their journey. We want to use Abstract Positive Intuition (API) of the realm of GitHub to notify them about news related to their projects.”

“Great Oraculum (scm-requests pagure repository) will be no longer bothered with our requests and we will ask Ever Vigilant Guards (package maintainers) directly. This will allow them to easily choose, if they want to be notified or not. We can thank to my fellow mage Pierre-Yves Chibon for this change.”

“Bugzilla will no longer be used and we will instead use connection with the realm of Pagure, more specifically with the large island in Pagure known as dist-git or Fedora package sources. You can read more about this in previous entry of my journal.”

“There will also be other changes that are not visible on the first sight. Most important of these changes is to look only for the news that are really new. Right now our messengers are always collecting everything in the archive and not all of them are really new. So we will add a few small changes to prevent this. First is to remember where the last news was delivered and check against this date every time a messenger is sent (check HTTP header field If-modified-since). The situation is slightly different in case of the realm of GitHub, where we must remember some identifier (tag id) instead of date.”

“Other not visible change is mechanism to prevent addition of duplicate projects. We will show the outside entity (user) the projects that are similar, so he can check if he isn’t adding project that is already in Anitya. Another change in this will be some normalization of the project (Use normalized homepage as ecosystem instead of the one user added).”

“This will be everything I will show you from the near future and now I need some rest, before I will go further.” The image above my head slowly fade away as I started to think about something else. I looked at the traveler, if he is still by the doors. Traveler was still standing there waiting for any new information that I could reveal, but for now I must rest.

Far away future

When I returned from the rest and entered the Future chamber again, traveler already stood there, waiting for me. I get to my position in the center of the room and started to concentrate again. “Now we will look further in the time. We will see, how the release-monitoring.org could look one day. This is not a clear future, so there could be changes that will prevent this vision to came true, but you will at least see what I’m talking about.” Another image started to form above my head.

Manuscript of the far future

“As you can see the far future is not that different from the near one, but don’t be fooled. There is more than the eye can meet. First I will talk about the visible change. When there will be new project added by Ever Vigilant Guard (package maintainer) to Fedora universe and the Ever Vigilant Guard will want to be notified about it, it will be automatically added to Anitya. No need to do this manually anymore. There could even be something similar for Flathub.”

“What about the other things that can’t be seen in the manuscript? One of them is allowing to add project simply by giving address of it to Anitya (reading all metadata from URL). This could be really a life changer for plenty of people, who work with Anitya.”

“There will also be a statistics collector, because every mage loves information (new page containing statistics about the recent runs with information about failed, ratelimited or succeeded checks) and we will use nice magic images (graphs) to show these to others.”

“We also allow Ever Vigilant Guard (package maintainer) to show us where the news should be delivered in land of Pagure (allow to map version prefix to branch for creating PR).”

“In the future Anitya will not only send latest news when sending message through magical mirror (Fedora messaging), but all the news received from the latest messenger (Fedora messaging message will contain all new versions retrieved in latest check). Together with previous change this will be really helpful to every Ever Vigilant Guard.”

“To make project more simple to read, we will introduce the division of news to categories specified by outside entities (users could create a version stream for different version prefixes like ‘3.’ or ‘4.’ and show them as tabs on the project page).”

“This will be all I will show you today, I hope you are excited as I am about the future that lies before us, traveler. Things will probably change before we get there, but that is life. Ever changing shapeshifter.” I slowly focused my mind away from the future and started to walk away from Future chamber together with the traveler.

Post scriptum

This is all for now from the world of release-monitoring.org. Do you like this world and want to join our conclave of mages? Seek me (mkonecny) in the magical yellow pages (IRC freenode #fedora-apps) and ask how can you help. Or visit the Bugcronomicon (GitHub issues on Anitya or the-new-hotness) directly and pick something to work on.