#406 √ invalid
Scott M. Likens

Merging the Sake tasks for Datamapper and Merb.

Reported by Scott M. Likens | July 21st, 2008 @ 01:30 PM | in 0.9.5

Can we have 1 sakefile for Datamapper and Merb?

It's just cleaner imo.

Here's my hacked up version it's far from perfect.

Comments and changes to this ticket

  • Ben Alpert (spicyj)

    Ben Alpert (spicyj) July 21st, 2008 @ 10:42 PM

    They're separate libraries, though. Merb isn't opinionated software - many use Merb without DataMapper, so this makes no sense.

  • Scott M. Likens

    Scott M. Likens July 22nd, 2008 @ 01:20 AM

    • → Tag changed from “sake” to “sake trivial”

    Yes many use Merb without Datamapper, and Many use Merb with Datamapper or Merb with Sequel or with Activerecord.

    The problem that I have been seeing currently is people who use edgy.4ninjas.org

    aka

    sake -i 'http://edgy.4ninjas.org/edgy.sake'

    then they try to install dm and merb and it doesn't work, and I want to help people. However I don't want to point them to another 'sake file' I would rather point them to a semi-quasi-official spot where they can get a sake file to do the same thing that actually works.

    Because unfortunately when people read the 'edgy' Merb Beginner guide, if they cannot get it installed they will then focus that attention on Merb failing, not the guide they use failing. But I guess that's just my opinion, it's a very trivial thing to do, and in the end the result is good.

    If you want to add Sequel to the sake receipe that's fine with me, then you can have choices. But when you sake -T you can grab dm or merb, or sequel for example easily is a benefit to everyone.

    Thanks.

  • Michael Klishin (antares)

    Michael Klishin (antares) July 22nd, 2008 @ 05:43 AM

    • → Milestone changed from “” to “0.9.4”
    • → State changed from “new” to “open”
    • → Assigned user changed from “” to “Michael Klishin (antares)”
  • Michael Klishin (antares)

    Michael Klishin (antares) August 2nd, 2008 @ 09:35 PM

    • → Milestone changed from “0.9.4” to “0.9.5”

    I am not sure yet where to put it.

  • Dan Kubb

    Dan Kubb August 3rd, 2008 @ 09:58 AM

    I'm the author of the DataMapper sake tasks, and I wanted to chime in a bit.

    I don't think its a good idea to necessarily combine DataMapper and Merb's sake tasks officially into a single set of sake tasks. I think its still important to keep them decoupled so that people who use DataMapper and people who use Merb are still given the choice of ORM and Web Framework respectively.

    However, I would be willing to work to keep the DM sake tasks in parity with Merb's sake tasks so that worse case people would only need to know one set of commands, with the only difference being that they'd prepend the command with "dm" or "merb" depending on which library they wanted to install or update.

    Scott, are you familiar with Merb and DataMapper's official sake tasks? For the most part I copied Merb's command syntax when creating DM's sake tasks, so they should be fairly close. I haven't used the "edgy" commands you refer to, but it probably would be better for them to either point people to the two "official" sake tasks for DM and Merb, OR wrap those sake tasks. The DM (and most likely Merb) tasks are well maintained and will always work with edge, whereas the "edgy" tasks are maintained by a third party and may not always be in sync with edge requirements.

  • Scott M. Likens

    Scott M. Likens August 3rd, 2008 @ 02:05 PM

    Hi Dan,

    Actually I am capable of doing it myself, and have been for quite some

    time. The only problem I have is that when people use the

    "edgy" (merb.4ninjas.org) version of sakefile that causes me pain. I

    understand the desire to have a merb and a dm sakefile, but as we all

    know sake doesn't exactly make it easy for you to have 2 or 3 or 4

    sakefiles. At least in a sane way; and since the easiest and most

    common way for someone to get merb and dm "edge" running is via git;

    the sake tasks are commonly suggested to novices to use and abuse.

    So truthfully the idea was just 1 sakefile for the whole thing, I am

    not against tossing in Sequel also if that was desired. My goal is

    not to be pointing to DM and Merb only, but my goal is to make it

    easier for novices and experts to update their merb and dm with ease.

    like,

    cd github

    sake merb:update

    sake dm:update

    sake merb:gems:update

    sake dm:gems:update

    Simple, easy, painless.

    Until there are daily gems of edge ... it would be preferable to make

    it as painless as possible.

    It's fairly easy to combine the 2 sake tasks without a problem, cat

    merb-sake + dm-sake > .sake

    which is all i'm asking for,

    simple, painless, like this.

    sake dm:clone # Clone a copy of the DataMapper

    repository and dependencies

    sake dm:gems:refresh # Pull fresh copies of DataMapper

    and refresh all the gems

    sake dm:gems:wipe # Uninstall all RubyGems related to

    DataMapper

    sake dm:install # Install extlib, do, dm-core, dm-

    dev and dm-more

    sake dm:install:core # Install dm-core

    sake dm:install:dev # Install dm-dev

    sake dm:install:do # Install do drivers

    sake dm:install:do:data_objects # Install data_objects

    sake dm:install:do:mysql # Install do_mysql

    sake dm:install:do:postgres # Install do_postgres

    sake dm:install:do:sqlite3 # Install do_sqlite3

    sake dm:install:extlib # Install extlib

    sake dm:install:more # Install dm-more

    sake dm:update # Update your local DataMapper.

    Run from inside the top-level dm directory.

    sake dm:update:version # Update the version number

    sake merb:clone # Clone/Update all Merb repos. Will

    put them in the "merb" dir.

    sake merb:gems:refresh # Pull fresh copies of Merb,

    uninstall existing gems, and re-install all the gems

    sake merb:gems:wipe # Uninstall all RubyGems related to

    Merb

    sake merb:install:all # Install merb-core, merb-more, and

    merb-plugins

    sake merb:install:core # Install merb-core and merb-extlib

    sake merb:install:more # Install merb-more

    sake merb:install:plugins # Install merb-plugins

    sake merb:sake:uninstall # Remove all merb:* sake tasks.

    Including this one.

    sake merb:update # Update clones of local Merb

    repos. Run from OUTSIDE "merb" parent dir.

    sake strip # Strip trailing whitespace from

    source files

    (pardon the formatting)

    I hope that made sense, it's 4am here.

    Scott

    On Aug 2, 2008, at 11:58 PM, Lighthouse wrote:

  • Michael Klishin (antares)

    Michael Klishin (antares) August 7th, 2008 @ 08:04 AM

    • → State changed from “open” to “invalid”

    After some discussion it's been decided to not making any "official" merged Sake tasks.

Please Login or create a free account to add a new comment.

You can update this ticket by sending an email to from your email client. (help)

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile »

Attachments

Tags