Skip to content

Removing ActiveSupport dependency #74

Description

@tomasmiguez

Hello!

We were looking for a gem to handle rrules, and found this one, which seems excellent. The only issue we found while trying it out is that it pulls ActiveSupport as a dependency. Internally, we try to keep dependencies as lean as possible, and this one is usually a no go due to issues we have had with it on previous projects.

Looking at the codebase, it also seems a bit disproportionate for what it is used for. As far as I've seen, it is used for blank?, present?, in_time_zone and Array.wrap; all of them easily replaceable in the standard library, or just with TZInfo (which ActiveSupport wraps). Changing this would remove quite a few transitive dependencies and a lot of code from ActiveSupport itself.

So, would there be any interest in merging a PR that aims to remove this dependency?

It would:

  • Reduce the amount of dependencies of this gem significantly (from ActiveSupport and 11 transitive dependencies to just TZInfo).
  • It would make this gem more accessible for non-rails Ruby users.

The only issue that I can think of with this change, would be the effort required to review it and that we currently support timezones through ActiveSupport aliases (e.g. Brisbane instead of Australia/Brisbane) which would be difficult to preserve.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions