pak

A namespaced package system for Ruby (by lloeki)

Pak Alternatives

Similar projects and alternatives to pak

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better pak alternative or higher similarity.

pak reviews and mentions

Posts with mentions or reviews of pak. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-03.
  • Pragmatic Versioning – An Alternative to Semver
    9 projects | news.ycombinator.com | 3 Dec 2023
    From your issue link:

    > Then commons-logging changes its API incompatibly and is released as commons-logging 2.0.1. Authentication adopts commons-logging 2.0.1 while other libraries still depend on 1.1.1

    > Now my-application is broken, because the dependency tree includes two versions of commons-logging which share packages, class / functions names, and thus can not be loaded simultaneously.

    I absolutely don't see how this is a problem with semver, it is not the responsibility of semver to tell a language how packages should be isolated and loaded. That is a problem of a) the language and b) dependency resolution in the package manager.

    > SemVer is a product of Ruby community.

    Bundler, by design, does not allow the above, instead having a flat, consistent vision of dependencies.

    NPM though, allows that, allowing nested dependencies, by virtue of the ES6 module system importing to a variable in a lexical scope. Go also allows that, by virtue of its imports being scoped to a package (or file, I can't recall).

    Ruby can do that kind of isolation too. In fact, I've done it: https://github.com/lloeki/pak

    Unless packages leak to globals each version is oblivious to the one next to it. Unless package dependents communicate with one another using objects from the packages they can happily live in their own world. Now if they do, then it's like hitting a HTTP /api/v1 with an HTTP /api/v2 client and somehow wishing things will work. Either the package (which should not leak globals / disallow cross-version communication) or the language (which should not allow leaking globals / detect incompatible communication).

    None of this is the responsibility of semver.

  • Rails is not written in Ruby
    4 projects | news.ycombinator.com | 4 Feb 2022
    (the link jumps to some random place for me)

    Well, you always could, it was just a bit more involved:

    https://github.com/lloeki/pak

Stats

Basic pak repo stats
2
0
10.0
over 8 years ago

lloeki/pak is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of pak is Ruby.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com