[Update: we are switching to Semantic versioning, which has required a major version bump. Now the current development is on 3.x branch, and the next stable release will be 3.0.0.]

Just outlining some thoughts here for what needs to be done before a 3.x release:

3.0.x-alpha

  • Merge all relevant PRs from github.
  • Migration path for settings from RNG 1.x
  • Make compatible with Drupal 8.8+
  • Implement max registrants functionality (as opposed to max registrations and max registrants per registration) (IN PROGRESS)
  • Rename Event classes to RngEvent to avoid other module (and core) conflicts
  • Add a registration state base field to allow pending/unconfirmed registrations (e.g. before a registration is paid for)
  • Move entity validation business rules from form functionality to entity, to better support web services (IN PROGRESS)
  • Allow for guest registrants without another identity
  • Automatically link registrant to user accounts by email
  • Rework registration editing forms (IN PROGRESS)
  • Added experimental "pretty date field" and "single date filter/sort" views handlers to facilitate displaying upcoming events in views.

3.0.x-beta

3.0.x-rc

  • Full upgrade path from RNG 1.x

3.0.0

  • All major issues found up through the RC releases are fixed.

Comments

freelock created an issue. See original summary.

freelock’s picture

Issue summary: View changes
freelock’s picture

Issue summary: View changes

Correcting version of next stable release (2.0, not 1.0!)

freelock’s picture

Issue summary: View changes

Some progress updates.

freelock’s picture

Title: Roadmap for 8.x-2.x release » Roadmap for 3.0.0 release
Issue summary: View changes
freelock’s picture

Issue summary: View changes

Drupal 9 compatibility done.

anybody’s picture

@freelock, thank you very much for your hard work on this module.

Is the work still going on for the new maintainer team?
I'm asking as 3.0.0-alpha1 released 14 April 2020 still says "Requires Drupal: ^8.8.4" - not Drupal 9 and has 11 Test errors. Could you give us an update? Thank you :)

varenius’s picture

I also wonder about this: If the D9 compatibility is done, then it would be nice to be able to use the code in Drupal 9 :). The current "Requires Drupal: ^8.8.4" means I cannot enable the module in my Drupal 9.2.5 install.

Great work with this!

freelock’s picture

Hi,

I think the main client we worked on this for is finally getting back involved, so we'll be fixing any outstanding d9 issues shortly...

I haven't touched this codebase in a while, but I think the main things that need attention are tests...

I think the d9 compatibility should be available on the dev branch? I don't have permissions to create a release,

Cheers,
John

anybody’s picture

Version: 8.x-2.x-dev » 3.x-dev

Thank you @freelock! :) Looking very much forward to that!
You're right! I just checked the .info file from 3.x dev and it contains
core_version_requirement: ^8.8.4 || ^9.0! :)

Sooner or later a new 3.0-alpha2 would be nice to make Drupal 9 compatibility transparent in the download section, which is a bit confusing, see #8.

anybody’s picture

Hi @freelock any news? Are you still working on this? I saw MegaChriz also being involved?

This project is still very relevant to Drupal I guess, could you update the plan?

Issues I from GitHub also never were resolved, but are still relevant:
https://github.com/dpi/rng/issues
https://github.com/dpi/courier/issues

Is there any plan to check them?

anybody’s picture

Seems the project is dead (once again). Sad story.

megachriz’s picture

@Anybody
Yes, the client had only given me so much time to work on this project. I did what I could in that timeframe. Trying to fix the registration UI was one step too far, especially since for my client I was already using a custom built UI.

anybody’s picture

Assigned: freelock » Unassigned

@MegaChriz, thank you for your reply! What's your opinion about the state of this module after that?

Unassigning @freelock as he seems inactive.

megachriz’s picture

@Anybody
The registration UI looks broken, so out of the box without custom code, the module is not usable. On the API side, the basic stuff seems to work correctly. That is: creating a registration; creating registrants;, using a content type (or a bundle from an other entity type) as event; associating a content entity type (person/identity) with a registrant. In the code I also came across things I do not use, so it could be that these do not work. That is (probably among others): wait list, groups and rules. I also do not do anything with capacity/maximum registrants in my custom implementation, but it looks like that feature is covered by the automated tests.

megachriz’s picture

Oh, and I think I fixed all the issues on the RNG configuration forms. So you can configure event types, registration types and registrant types in the UI. And you can create events in the UI. Users just cannot register for an event in the UI.

freelock’s picture

I'm not entirely inactive -- we did just hear from our dormant client, and are trying to get the project back on our calendar to upgrade to D9! I hope to be back on this in the next month...

yaach’s picture

I was trying to install the module in Drupal 9.3.16 using the version 3.0@alpha. That didn't work because require Drupal 8.8.4. I was able to successfully install it using version 3.x-dev.

megachriz’s picture

@yaach
I did not create a new release yet because the module in its current state is not usable without custom code in my opinion. Users cannot register for an event in the UI that RNG provides.

yaach’s picture

@MegaChriz thanks for clarification. I would add that after installing the module it broke the View offered by the Calendar module and using a date range field type.

maplinx’s picture

Thank you @MegaChriz and @yaach. I got myself into a pickle trying to install on d9.4.

@yaach was there any issues since you installed other than above comment re breaking the View by calender module. I am getting the message "The service "rng_easy_email.dispatch" has a dependency on a non-existent service "easy_email.handler".

When I uninstall rng module, I get various other messages, and the website is stock "...unexpected error". The service access_check.rng.event_registrations_allowed" has a dependency on a non-existent service "entity.manager".

I am trying to avoid having to reinstall the whole site from scratch!

megachriz’s picture

Try the dev version first. Maybe I should release a new alpha despite it being unstable? (The UI for registering for an event is unstable.)

maplinx’s picture

@MegaChriz, thank you for your prompt reply. Will do that.

maplinx’s picture

Just to feedback on install of rng:3.x-dev on D9.4, I finally got this installed but after having to grapple with this message 'The service "rng_easy_email.dispatch" has a dependency on a non-existent service "easy_email.handler".' which prevented the process and persistently threw a "this website has encountered an error ..." message.

I am not sure if what I did was the solution, but it seem to work.
In the rng_easy_email.services.yml file, I deleted the "@easy_email.handler" dependent object in the service 'rng_easy_email.dispatch' ...
I considered if swiftmailer, a dependency of easy_email, has been abandoned and symfony/mailer is advised, then @easy_email.handler could not be that important.

Any pointers would be appreciated.

megachriz’s picture

@Maplinx
I see that "RNG Easy Email" is a separate module in the project. I don't have that one installed, so that's probably why I didn't ran into @easy_email.handler issues.
So perhaps it would be good to uninstall that one. I do see that it doesn't declare a dependency on an other module (other than RNG), so perhaps it should do that: https://git.drupalcode.org/project/rng/-/blob/3.x/rng_easy_email/rng_eas...

I haven't checked if there are other places in the code where @easy_email.handler is required. I'm on mobile right now, so that's harder to check for me right now.

maplinx’s picture

@MegaChriz
Thank you for clarifying this.
I dont recall specifically installing the rng_easy_email module. Just checked composer.json and its not listed. It seemed to me it came with the installation of rng itself. It has been more trouble than not in my case so I am glad it is not a requirement. omitting it seems to work okay.