Tim Visher <tim.vis...@gmail.com> writes:
>> So, I have used MELPA before, but I found living on the bleeding edge
>> for all of my packages is bit painful; the overall stability of my Emacs
>> setup dropped considerably. I fear this will remain while many package
>> developers use a "dirty head" versioning system (myself included).
>
> That has completely been my experience. Continuous Deployment
> _requires_ Continuous Integration and pretty much all of the emacs
> package developers out there don't have the time to do CI correctly so
> Continuous Deployment simply equals lots of pain on the users end as
> things get broken accidentally.

I am not sure that I would say this. Pulling stuff out of people's repos
without an understanding of how they use the repo is, I think, the
problem. 

>
>> I don't mind doing this for one or two packages where I want bleeding
>> edge, but I haven't worked out how to get package.el to pick packages
>> from different repos.
>
> You might consider playing with something that I've had in my
> incubator file for awhile:
> https://github.com/timvisher/.emacs.d/blob/c8fa14315825f722f9995e8dd1e888c6b81321e9/timvisher/timvisher_incubator.el#L16-L28
>

Yeah, that's interesting, although I would be worried about getting
duplicates of dependencies.

>> I agree with you about problems with marmalade. What we need is a way
>> for devs to specify the latest stable version (by commit, branch or tag)
>> in their Emacs packages. That would mean that, like marmalade, the
>> developer would control which version is considered stable, but could do
>> so purely with their VC. Wordpress plugins use something similar.
>
> I assume you mean something over and above the `Version` ELPA header?
> Obviously, that depends on package maintainers following things like
> SNAPSHOT versioning (which ELPA doesn't accept) or Semantic Versioning
> to tip people off as to what is considered stable.

So, the way wordpress use their subversion is that head is dirty, and
that tags are stable (not a bad way to do things!).

At the same time, though, you put a stable tag into your file. Now, with
"Version" it means "the current version", so when you have a dirty head
this will point either to a snap version or the next version. With the
wordpress approach you know where the head is (because it's, er, the
head) and you know what the last stable version was (because you look at
the head, and it tells you).


> I think the general attitude I'm seeing amongst some of the package
> maintainers out there is that the idea of versioning is a farse
> because they always intend to maintain stable HEADs so HEAD is as
> stable as your ever going to get. That's a shame, but I get the
> sentiment.

For me, I maintain the sentiment that my version control system is,
well, mine. I use it to support my development. I am happy to use it as
a distribution system so long as that does not interfere.

Github generates releases from tag information. This isn't a bad
technique, but works on a repo basis while I maintain all of my emacs in
one repo.

Phil

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to