Re: Release Script (KF5)

2012-07-27 Thread Andreas K. Huettel
Am Freitag, 27. Juli 2012, 22:03:48 schrieb Alexander Neundorf:

> I think I mostly agree. It sounds like the correct thing to do.
> I'm aware that this may somewhat contradict my posts to the versioning
> discussions on kde-frameworks...
> 
> But basically, if a library has not changed, I agree that it's version
> number should also not change.
> Still all can be released again, so you can get everything at once if you
> need.
> 

Then let's please get back to the important point: you will need to specify 
exactly "what fits together". Before the versioning starts to disagree.

-- 
Dr. Andreas K. Huettel
Institute for Experimental and Applied Physics
University of Regensburg
D-93040 Regensburg
Germany

tel. +49 151 241 67748 (mobile)
e-mail m...@akhuettel.de
http://www.akhuettel.de/research/
http://www.physik.uni-r.de/forschung/huettel/
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-27 Thread Alexander Neundorf
On Thursday 12 July 2012, Michael Jansen wrote:
> On Thursday, July 12, 2012 07:21:40 PM Albert Astals Cid wrote:
> > El Dijous, 12 de juliol de 2012, a les 13:26:12, David Faure va escriure:
> > > On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> > > > On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > > > > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > > > > If we really want to decouple our releases and be more flexible
> > > > > > > with
> > > > > > > doing
> > > > > > > them i consider this change a requirement for any decision in
> > > > > > > that regard.
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > Each and every module has to have its own version number build
> > > > > > > in. I
> > > > > > > guess
> > > > > > > with the frameworks branch much of kdelibs already got that
> > > > > > > change (no
> > > > > > > idea
> > > > > > > really, anyone with input?). But we have to do the same with
> > > > > > > the rest
> > > > > > > of
> > > > > > > our modules.
> > > > > > 
> > > > > > No idea about frameworks. David? Kevin?
> > > > > 
> > > > > This is partly still under discussion.
> > > > > 
> > > > > However the currently implemented solution is that each framework
> > > > > has a
> > > > > versions number, but that version number can be upgraded in all
> > > > > frameworks
> > > > > at the same time, using a script.
> > > > > 
> > > > > A future framework on top of all others, could provide the version
> > > > > number
> > > > > for all apps, much like the current kdeversion.h. Basically it
> > > > > would be
> > > > > the
> > > > > "SC" number, and not the version number of the libs themselves, as
> > > > > is currently the case.
> > > > 
> > > > But that SC number would be a lie. Because you only assume all
> > > > modules are
> > > > installed in the versions that were release as SC X.Y . You have no
> > > > idea if
> > > > the user or distro uses older or newer versions for some libraries,
> > > > modules
> > > > or apps. So that number has no information value. Perhaps some
> > > > marketing value. But in bug reports it is useless.
> > > > 
> > > > Do we release kdelibs as ONE package. Or do we plan to release many
> > > > small
> > > > packages?
> > > 
> > > Many small packages, but all at the same time. So "based on KDE
> > > Frameworks 5.0.1" will have some value in bug reports.
> > > 
> > > However you're right, apps themselves should have their own version
> > > number,
> > > maybe we can solve the same way as we do for the frameworks: by running
> > > a script that updates the toplevel CMakeLists.txt in all modules
> > > before releasing.
> > > 
> > > > If each library gets released standalone. What if whe make the kde sc
> > > > release 4.10.7. I assume only 70% of all libraries got commits since
> > > > 4.10.6
> > > > because stuff is pretty stable by now (7th update). Do we still
> > > > release ALL
> > > > libs or only those that got changed?
> > > 
> > > All libs, obviously. Who would take the time to run a diff and make
> > > really sure that nothing changed? This is additional work for nothing
> > > and makes everything more complex. Just like right now, we release
> > > kdeadmin or kdetoys with every KDE SC release, even if nothing
> > > changed.
> > > 
> > > > The same naturally goes for stuff like kdeedu now that it split. What
> > > > if some application got no commits since the last minor release.
> > > > Make a release anyway or skip it? For major releases i guess making
> > > > a package anyway makes sense. Or not?
> > > 
> > > I can't decide there, that's for the release team to decide, but IMHO
> > > if it's all scripted and done all at once (KDE SC release), then it's
> > > simpler to just re-release everything.
> > 
> > I agree with David here, just release everything, it's easier for
> > everyone.
> 
> No it is not. It is a waste of bandwidth, resources and time for all
> involved.
> 
> Do you really think forcing an update of unchanged modules for our
> convenience will help those of us trying to use plasma for mobile devices?
> 
> Do you really think splitting up kdelibs and then releasing it more or less
> as one big blog is really helpful? Will it help people consider kde a more
> lightweight dependency?
> 
> I will implement the ability to skip release for unchanged modules (fully
> automated) and would ask everyone here to really think twice before asking
> the release team to keep the current practice of releasing everything.

I think I mostly agree. It sounds like the correct thing to do.
I'm aware that this may somewhat contradict my posts to the versioning 
discussions on kde-frameworks...

But basically, if a library has not changed, I agree that it's version number 
should also not change.
Still all can be released again, so you can get everything at once if you 
need.

Alex
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/rel

Re: Release Script (KF5)

2012-07-18 Thread Sebastian Kügler
Hi,

On Wednesday, July 18, 2012 13:25:55 i...@michael-jansen.biz wrote:
> >> This will hurt the plasma mobile effort.
> > 
> > FWIW, that assumption is wrong: Having version numbers be in line 
> > with each
> > other makes our work easier, because we can just check if all
> > packages are at
> > least at version X.Y.Z and don't need special knowledge about which 
> > packages
> > did indeed have commits in a certain period.
> > 
> > That's no different from normal distribution.
> 
> So you consider it less work to repackage 60 modules instead of 12?
> 
> You consider it less strain on your servers and users bandwidth to send 
> them 60 repackaged modules instead of 12?
> 
> Really?

Yes. Especially, if the chance is really low that a package did not change at 
all. I've explained our *current* version numbering so many times that an even 
more complex one is just quadrupling the trouble, making it much more likely 
to have outdated packages and not notice them.

A common version number provides great value.

Cheers,
-- 
sebas

http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Re: Release Script (KF5)

2012-07-18 Thread info

Am 2012-07-18 12:01, schrieb Sebastian Kügler:

On Thursday, July 12, 2012 20:00:27 Michael Jansen wrote:
> > Do you really think forcing an update of unchanged modules for 
our
> > convenience will help those of us trying to use plasma for 
mobile

> > devices?
>
> That's the work of the distributor for those mobile devices.


Exactly as i said. For our convenience we put the work on their 
shoulders.

This will hurt the plasma mobile effort.


FWIW, that assumption is wrong: Having version numbers be in line 
with each

other makes our work easier, because we can just check if all
packages are at
least at version X.Y.Z and don't need special knowledge about which 
packages

did indeed have commits in a certain period.

That's no different from normal distribution.


So you consider it less work to repackage 60 modules instead of 12?

You consider it less strain on your servers and users bandwidth to send 
them 60 repackaged modules instead of 12?


Really?

Mike
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Re: Release Script (KF5)

2012-07-18 Thread Sebastian Kügler
On Thursday, July 12, 2012 20:00:27 Michael Jansen wrote:
> > > Do you really think forcing an update of unchanged modules for our
> > > convenience will help those of us trying to use plasma for mobile
> > > devices?
> > 
> > That's the work of the distributor for those mobile devices.
> 
>  
> Exactly as i said. For our convenience we put the work on their shoulders.
> This will hurt the plasma mobile effort. 

FWIW, that assumption is wrong: Having version numbers be in line with each 
other makes our work easier, because we can just check if all packages are at 
least at version X.Y.Z and don't need special knowledge about which packages 
did indeed have commits in a certain period.

That's no different from normal distribution.
-- 
sebas

http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-13 Thread Sune Vuorela
On 2012-07-12, Martin Gräßlin  wrote:
> My understanding is that there won't be a kde-runtime once there is=20
> frameworks.

Correct. Runtime bits go to the libs that has them as a implementation
detail.

/Sune

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Scott Kitterman
On Thursday, July 12, 2012 09:30:51 PM Michael Jansen wrote:
> > The one real world experience we have with this is kdepim.  From my
> > perspective as a packager the entire transition has been a disaster and
> > created huge work for us (shortly before our KDE 4.7 based release I was
> > doing almost commit by commit updates of our packages in the hopes of
> > getting users something better).  Additionally, there was confusion about
> > what versions of kdepim/-runtime/pimlibs could be combined in the interim.
> > There were third digit updates that only worked with certain KDE SC
> > versions.  It was a mess.
> > 
> > In theory it may not be more work, but so far in practice it's been hugely
> > so.
> 
> So to reiterate what i think i said somewhere else. This is not going to
> happen with 4.9, This is possibly going to happen with 4.10 or 5.0.
> 
> This will happen after it is ready and we take the input here serious.
> 
> And ready is defined by consensus on this list.

Great.

I think that the discussion would go better if people wouldn't assume the knew 
what the impact of something on everyone else was or that if you aren't 
packaging KDE for a distribution you understand how easy/hard that is and how 
changes affect it.

I look forward to the discussion.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Michael Jansen

> The one real world experience we have with this is kdepim.  From my
> perspective as a packager the entire transition has been a disaster and
> created huge work for us (shortly before our KDE 4.7 based release I was
> doing almost commit by commit updates of our packages in the hopes of
> getting users something better).  Additionally, there was confusion about
> what versions of kdepim/-runtime/pimlibs could be combined in the interim. 
> There were third digit updates that only worked with certain KDE SC
> versions.  It was a mess.
> 
> In theory it may not be more work, but so far in practice it's been hugely
> so.

So to reiterate what i think i said somewhere else. This is not going to 
happen with 4.9, This is possibly going to happen with 4.10 or 5.0.

This will happen after it is ready and we take the input here serious.

And ready is defined by consensus on this list.

Mike
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Re: Release Script (KF5)

2012-07-12 Thread Martin Gräßlin
On Thursday 12 July 2012 13:36:18 Rex Dieter wrote:
> On 07/12/2012 01:25 PM, Martin Gräßlin wrote:
> > But apart from that: could we start dreaming? Dreaming of a KDE where
> > every
> > application clearly defines what dependencies it has and exactly in a way
> > that packagers can set up the dependencies in an automatic and correct
> > way? Can we consider going forward with leaving all hacks behind us and
> > not stop the fixing with the hacks being the reasons?
>
> Yes, please.   My dream includes:
>
> start the work to define this wonderfully well-specified set of
> dependencies *first*, *then* consider dropping all the old assumptions
> and hacks (not before).
I think we are currently in the process of doing just that. Currently no hacks
are dropped yet and we plan for the future. What I got from this thread is
that we as KDE developers have to define more clearly our dependencies.

So in this process of evaluating what we need for the future, the current
hacks have to be irrelevant as that will just mean we will never have a bright
future in that regard.

Of course we have to keep the hacks as a plan B in case plan A (getting it
right) does not work out :-)

Cheers
Martin

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Scott Kitterman
On Thursday, July 12, 2012 07:48:53 PM Martin Gräßlin wrote:
> On Thursday 12 July 2012 19:43:54 Martin Gräßlin wrote:
> > So you will have a one-time task to set up the distribution build system
> > to
> > create these packages. What I do not understand is why having particular
> > frameworks skip a release would make your work easier.
> 
> logic error: s/easier/more difficult/g

The one real world experience we have with this is kdepim.  From my 
perspective as a packager the entire transition has been a disaster and 
created huge work for us (shortly before our KDE 4.7 based release I was doing 
almost commit by commit updates of our packages in the hopes of getting users 
something better).  Additionally, there was confusion about what versions of 
kdepim/-runtime/pimlibs could be combined in the interim.  There were third 
digit updates that only worked with certain KDE SC versions.  It was a mess.

In theory it may not be more work, but so far in practice it's been hugely so.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Scott Kitterman
On Thursday, July 12, 2012 10:50:01 AM Albert Astals Cid wrote:
> > Do you really think forcing an update of unchanged modules for our
> > convenience will help those of us trying to use plasma for mobile devices?
> 
> That's the work of the distributor for those mobile devices.

I think you're missing his point (at least as I understood it).  The primary 
issue isn't if it's more are less work for the distributor, but the number of 
upgrades users have to deal with if you update everything to chase a version 
number.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Michael Jansen

> 
> You declare your dependencies ( A >= 4.3, B >= 4.5, C>=1.7 )
> B   declares  ( C >= 1.6,!1.7) (Because of some 1.7 bug)

G..

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Michael Jansen
On Thursday, July 12, 2012 08:25:03 PM Martin Gräßlin wrote:
> On Thursday 12 July 2012 13:01:47 Rex Dieter wrote:
> > On 07/12/2012 12:43 PM, Martin Gräßlin wrote:
> > >> Now, I'd have a much lesser concern if modules that are part of the
> > >> 'kde
> > >> development platform' at least are never skipped.
> > > 
> > > Could you explain why?
> > 
> > So, right now I can do a very simple runtime dependency for kde apps:
> > 
> > KDE_DEV_VERSION=$(kde4-config --kde-version | cut -d' ' -f1)
> > 
> > Requires: kde-runtime >= $KDE_DEV_VERSION
> 
> My understanding is that there won't be a kde-runtime once there is
> frameworks.
> 
> But apart from that: could we start dreaming? Dreaming of a KDE where every
> application clearly defines what dependencies it has and exactly in a way
> that packagers can set up the dependencies in an automatic and correct way?
> Can we consider going forward with leaving all hacks behind us and not stop
> the fixing with the hacks being the reasons?
> 
> For me as a developer it would be much nicer if I could say that my app
> requires only version 5.x of framework bar and 5.y of framework foobar. And
> not having a generic dependency set by the packager to 5.z.
> 
> Would that change your point of view? Would it still be more difficult or in
> fact easier?

We both know i am totally with you. But let me play devils advocate here.

Maven is most sophisticated framework so far that tries to deal with 
dependencies. But instead of solving the problem they just changed their 
problems. The problem i call the maven dependency hell.

You declare your dependencies ( A >= 4.3, B >= 4.5 )
B   declares  ( C >= 1.6,!1.7) (Because of some 1.7 bug)

And 1.7 is the latest version the problems begin. Splitting has its short-
comings. 

And in case of maven you will often have more than 3 version of some 
dependencies dependency involved in your build. It mostly happends while they 
build and download dependencies for the current project, skip to the next 
project only to notice this one needs a newer version of the dependeny.

So we have to make sure we don't get there. We have to get much better in 
declaring the dependies and KEEEPING binary and source compatibility.

And we still have to think of all our little packages as a part from the big 
package kde. Which means we should setup a global list of dependencies and the 
current version we depend on. And everyone has to adhere to the list. I mean 
mainly what currently is kdelibs, kdebase. Even if we split there we still 
have to consider it as one unit that is released independently.

Changes to the list should have a formalized process. Ask for change, 
discussion, decision here.

Apps can do what they want. 

I am willing to work on that stuff. Gimme some time.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Rex Dieter

On 07/12/2012 01:25 PM, Martin Gräßlin wrote:

But apart from that: could we start dreaming? Dreaming of a KDE where every
application clearly defines what dependencies it has and exactly in a way that
packagers can set up the dependencies in an automatic and correct way? Can we
consider going forward with leaving all hacks behind us and not stop the
fixing with the hacks being the reasons?


Yes, please.   My dream includes:

start the work to define this wonderfully well-specified set of 
dependencies *first*, *then* consider dropping all the old assumptions 
and hacks (not before).


-- rex

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Re: Release Script (KF5)

2012-07-12 Thread Martin Gräßlin
On Thursday 12 July 2012 13:01:47 Rex Dieter wrote:
> On 07/12/2012 12:43 PM, Martin Gräßlin wrote:
> >> Now, I'd have a much lesser concern if modules that are part of the 'kde
> >> development platform' at least are never skipped.
> >
> > Could you explain why?
>
> So, right now I can do a very simple runtime dependency for kde apps:
>
> KDE_DEV_VERSION=$(kde4-config --kde-version | cut -d' ' -f1)
>
> Requires: kde-runtime >= $KDE_DEV_VERSION
My understanding is that there won't be a kde-runtime once there is
frameworks.

But apart from that: could we start dreaming? Dreaming of a KDE where every
application clearly defines what dependencies it has and exactly in a way that
packagers can set up the dependencies in an automatic and correct way? Can we
consider going forward with leaving all hacks behind us and not stop the
fixing with the hacks being the reasons?

For me as a developer it would be much nicer if I could say that my app
requires only version 5.x of framework bar and 5.y of framework foobar. And
not having a generic dependency set by the packager to 5.z.

Would that change your point of view? Would it still be more difficult or in
fact easier?

Kind Regards
Martin Gräßlin

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Michael Jansen

> > > I agree with David here, just release everything, it's easier for
> > > everyone.
> > 
> > No it is not. It is a waste of bandwidth, resources and time for all
> > involved.
> 
> Why do you ask for opinions of you are in possession of the truth?

I do not understand why you are saying that.

> 
> > Do you really think forcing an update of unchanged modules for our
> > convenience will help those of us trying to use plasma for mobile devices?
> 
> That's the work of the distributor for those mobile devices.

Exactly as i said. For our convenience we put the work on their shoulders. 
This will hurt the plasma mobile effort.

> > I will implement the ability to skip release for unchanged modules (fully
> > automated) and would ask everyone here to really think twice before asking
> > the release team to keep the current practice of releasing everything.
> > Because there is no reason.

Implementing the ability does not mean it has to be done like that. That is 
not my decision. It will be configurable. The decision is for this list.

> Please, next time there is no reason for something, just do it, don't ask
> people involved, complain they don't answer, and when they answer ignore
> them anyway.
> 
> Cheers,
>   Albert
> 
> P.S: Is that blunt enough for you?

No. But you understood me wrong. The word ability does not mean it has to be 
used. So i can't see what gave you the impression i decided for all of us.

Still i have no problem with your email.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Rex Dieter

On 07/12/2012 12:43 PM, Martin Gräßlin wrote:


Now, I'd have a much lesser concern if modules that are part of the 'kde
development platform' at least are never skipped.



Could you explain why?


So, right now I can do a very simple runtime dependency for kde apps:

KDE_DEV_VERSION=$(kde4-config --kde-version | cut -d' ' -f1)

Requires: kde-runtime >= $KDE_DEV_VERSION

to ensure that this application pulls in (at least) the version of kde 
"stuff" used to build it.  (and kde-runtime in turn has versioned 
dependencies on stuff lower than itself in the stack, like kdelibs, 
kdepimlibs, oxygen-icons, nepomuk-core).


An analogue for libraries where the above is simplified to just
Requires: kdelibs >= $KDE_DEV_VERSION

Which happens to work quite nicely now in practice.(1)

Now, this will get much more complicated to track if the 'kde 
development platform' is no longer released as a whole and versions 
don't match up.  This, at least from my own POV, is where requests from 
packagers are coming that module inter-dependencies (esp versioning!) be 
clearly documented somewhere.


A lot of this could go away of qt/kde actually used symbol versioning 
too, but I digress... :(


-- rex

(1) A lot of this could go away if qt/kde actually used symbol 
versioning too, but I digress... :(

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Albert Astals Cid
El Dijous, 12 de juliol de 2012, a les 19:29:46, Michael Jansen va escriure:
> On Thursday, July 12, 2012 07:21:40 PM Albert Astals Cid wrote:
> > El Dijous, 12 de juliol de 2012, a les 13:26:12, David Faure va escriure:
> > > On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> > > > On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > > > > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > > > > If we really want to decouple our releases and be more flexible
> > > > > > > with
> > > > > > > doing
> > > > > > > them i consider this change a requirement for any decision in
> > > > > > > that
> > > > > > > regard.
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > Each and every module has to have its own version number build
> > > > > > > in.
> > > > > > > I
> > > > > > > guess
> > > > > > > with the frameworks branch much of kdelibs already got that
> > > > > > > change
> > > > > > > (no
> > > > > > > idea
> > > > > > > really, anyone with input?). But we have to do the same with the
> > > > > > > rest
> > > > > > > of
> > > > > > > our modules.
> > > > > > 
> > > > > > No idea about frameworks. David? Kevin?
> > > > > 
> > > > > This is partly still under discussion.
> > > > > 
> > > > > However the currently implemented solution is that each framework
> > > > > has
> > > > > a
> > > > > versions number, but that version number can be upgraded in all
> > > > > frameworks
> > > > > at the same time, using a script.
> > > > > 
> > > > > A future framework on top of all others, could provide the version
> > > > > number
> > > > > for all apps, much like the current kdeversion.h. Basically it would
> > > > > be
> > > > > the
> > > > > "SC" number, and not the version number of the libs themselves, as
> > > > > is
> > > > > currently the case.
> > > > 
> > > > But that SC number would be a lie. Because you only assume all modules
> > > > are
> > > > installed in the versions that were release as SC X.Y . You have no
> > > > idea
> > > > if
> > > > the user or distro uses older or newer versions for some libraries,
> > > > modules
> > > > or apps. So that number has no information value. Perhaps some
> > > > marketing
> > > > value. But in bug reports it is useless.
> > > > 
> > > > Do we release kdelibs as ONE package. Or do we plan to release many
> > > > small
> > > > packages?
> > > 
> > > Many small packages, but all at the same time. So "based on KDE
> > > Frameworks
> > > 5.0.1" will have some value in bug reports.
> > > 
> > > However you're right, apps themselves should have their own version
> > > number,
> > > maybe we can solve the same way as we do for the frameworks: by running
> > > a
> > > script that updates the toplevel CMakeLists.txt in all modules before
> > > releasing.
> > > 
> > > > If each library gets released standalone. What if whe make the kde sc
> > > > release 4.10.7. I assume only 70% of all libraries got commits since
> > > > 4.10.6
> > > > because stuff is pretty stable by now (7th update). Do we still
> > > > release
> > > > ALL
> > > > libs or only those that got changed?
> > > 
> > > All libs, obviously. Who would take the time to run a diff and make
> > > really
> > > sure that nothing changed? This is additional work for nothing and makes
> > > everything more complex. Just like right now, we release kdeadmin or
> > > kdetoys with every KDE SC release, even if nothing changed.
> > > 
> > > > The same naturally goes for stuff like kdeedu now that it split. What
> > > > if
> > > > some application got no commits since the last minor release. Make a
> > > > release anyway or skip it? For major releases i guess making a package
> > > > anyway makes sense. Or not?
> > > 
> > > I can't decide there, that's for the release team to decide, but IMHO if
> > > it's all scripted and done all at once (KDE SC release), then it's
> > > simpler
> > > to just re-release everything.
> > 
> > I agree with David here, just release everything, it's easier for
> > everyone.
> 
> No it is not. It is a waste of bandwidth, resources and time for all
> involved.

Why do you ask for opinions of you are in possession of the truth?

> Do you really think forcing an update of unchanged modules for our
> convenience will help those of us trying to use plasma for mobile devices?

That's the work of the distributor for those mobile devices.

> Do you really think splitting up kdelibs and then releasing it more or less
> as one big blog is really helpful? 

David thinks it is. I agree with him.

> Will it help people consider kde a more lightweight dependency?

Can't read people's minds.

> I will implement the ability to skip release for unchanged modules (fully
> automated) and would ask everyone here to really think twice before asking
> the release team to keep the current practice of releasing everything.
> Because there is no reason.

Please, next time there is no reason for something, just do it, don't ask 
people involved, complain they don't answer, and when the

Re: Re: Re: Release Script (KF5)

2012-07-12 Thread Martin Gräßlin
On Thursday 12 July 2012 19:43:54 Martin Gräßlin wrote:
> So you will have a one-time task to set up the distribution build system to
> create these packages. What I do not understand is why having particular
> frameworks skip a release would make your work easier.
logic error: s/easier/more difficult/g


signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Re: Release Script (KF5)

2012-07-12 Thread Martin Gräßlin
On Thursday 12 July 2012 12:36:05 Rex Dieter wrote:
> On 07/12/2012 12:29 PM, Michael Jansen wrote:
> > I will implement the ability to skip release for unchanged modules
> > (fully automated) and would ask everyone here to really think twice
> > before asking the release team to keep the current practice of releasing
> > everything. Because there is no reason.
>
> Not exactly no reason.  There's the case that it can be used to simplify
> versioning on pkg interdependencies.
>
> Now, I'd have a much lesser concern if modules that are part of the 'kde
> development platform' at least are never skipped.
Could you explain why?

As far as I understand moving to frameworks 5 will mean for packagers that
what used to be one package (kdelibs) will be turned into something like 20
individual packages (I hope no distribution will continue to bundle all
frameworks in one package as that would kind of destroy the idea of
frameworks).

So you will have a one-time task to set up the distribution build system to
create these packages. What I do not understand is why having particular
frameworks skip a release would make your work easier. I would imagine that
you have some script magic going on to automate the package building once a
release is done and that script should easily be able to detect that there has
not been a new release for a given framework. Yes, No?

Kind Regards
Martin Gräßlin
Who will probably have to maintain a small framework which will perhaps be
updated once a years.

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Rex Dieter

On 07/12/2012 12:29 PM, Michael Jansen wrote:

I will implement the ability to skip release for unchanged modules
(fully automated) and would ask everyone here to really think twice
before asking the release team to keep the current practice of releasing
everything. Because there is no reason.


Not exactly no reason.  There's the case that it can be used to simplify 
versioning on pkg interdependencies.


Now, I'd have a much lesser concern if modules that are part of the 'kde 
development platform' at least are never skipped.


-- rex

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Michael Jansen
On Thursday, July 12, 2012 07:21:40 PM Albert Astals Cid wrote:
> El Dijous, 12 de juliol de 2012, a les 13:26:12, David Faure va escriure:
> > On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> > > On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > > > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > > > If we really want to decouple our releases and be more flexible
> > > > > > with
> > > > > > doing
> > > > > > them i consider this change a requirement for any decision in that
> > > > > > regard.
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Each and every module has to have its own version number build in.
> > > > > > I
> > > > > > guess
> > > > > > with the frameworks branch much of kdelibs already got that change
> > > > > > (no
> > > > > > idea
> > > > > > really, anyone with input?). But we have to do the same with the
> > > > > > rest
> > > > > > of
> > > > > > our modules.
> > > > > 
> > > > > No idea about frameworks. David? Kevin?
> > > > 
> > > > This is partly still under discussion.
> > > > 
> > > > However the currently implemented solution is that each framework has
> > > > a
> > > > versions number, but that version number can be upgraded in all
> > > > frameworks
> > > > at the same time, using a script.
> > > > 
> > > > A future framework on top of all others, could provide the version
> > > > number
> > > > for all apps, much like the current kdeversion.h. Basically it would
> > > > be
> > > > the
> > > > "SC" number, and not the version number of the libs themselves, as is
> > > > currently the case.
> > > 
> > > But that SC number would be a lie. Because you only assume all modules
> > > are
> > > installed in the versions that were release as SC X.Y . You have no idea
> > > if
> > > the user or distro uses older or newer versions for some libraries,
> > > modules
> > > or apps. So that number has no information value. Perhaps some marketing
> > > value. But in bug reports it is useless.
> > > 
> > > Do we release kdelibs as ONE package. Or do we plan to release many
> > > small
> > > packages?
> > 
> > Many small packages, but all at the same time. So "based on KDE Frameworks
> > 5.0.1" will have some value in bug reports.
> > 
> > However you're right, apps themselves should have their own version
> > number,
> > maybe we can solve the same way as we do for the frameworks: by running a
> > script that updates the toplevel CMakeLists.txt in all modules before
> > releasing.
> > 
> > > If each library gets released standalone. What if whe make the kde sc
> > > release 4.10.7. I assume only 70% of all libraries got commits since
> > > 4.10.6
> > > because stuff is pretty stable by now (7th update). Do we still release
> > > ALL
> > > libs or only those that got changed?
> > 
> > All libs, obviously. Who would take the time to run a diff and make really
> > sure that nothing changed? This is additional work for nothing and makes
> > everything more complex. Just like right now, we release kdeadmin or
> > kdetoys with every KDE SC release, even if nothing changed.
> > 
> > > The same naturally goes for stuff like kdeedu now that it split. What if
> > > some application got no commits since the last minor release. Make a
> > > release anyway or skip it? For major releases i guess making a package
> > > anyway makes sense. Or not?
> > 
> > I can't decide there, that's for the release team to decide, but IMHO if
> > it's all scripted and done all at once (KDE SC release), then it's simpler
> > to just re-release everything.
> 
> I agree with David here, just release everything, it's easier for everyone.

No it is not. It is a waste of bandwidth, resources and time for all involved.

Do you really think forcing an update of unchanged modules for our convenience 
will help those of us trying to use plasma for mobile devices?

Do you really think splitting up kdelibs and then releasing it more or less as 
one big blog is really helpful? Will it help people consider kde a more 
lightweight dependency?

I will implement the ability to skip release for unchanged modules (fully 
automated) and would ask everyone here to really think twice before asking the 
release team to keep the current practice of releasing everything. Because 
there is no reason.

Mike

> 
> Cheers,
>   Albert
> 
> ___
> Kde-buildsystem mailing list
> kde-buildsys...@kde.org
> https://mail.kde.org/mailman/listinfo/kde-buildsystem
-- 
Michael Jansen
http://michael-jansen.biz___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread Albert Astals Cid
El Dijous, 12 de juliol de 2012, a les 13:26:12, David Faure va escriure:
> On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> > On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > > If we really want to decouple our releases and be more flexible with
> > > > > doing
> > > > > them i consider this change a requirement for any decision in that
> > > > > regard.
> > > > > 
> > > > > 
> > > > > 
> > > > > Each and every module has to have its own version number build in. I
> > > > > guess
> > > > > with the frameworks branch much of kdelibs already got that change
> > > > > (no
> > > > > idea
> > > > > really, anyone with input?). But we have to do the same with the
> > > > > rest
> > > > > of
> > > > > our modules.
> > > > 
> > > > No idea about frameworks. David? Kevin?
> > > 
> > > This is partly still under discussion.
> > > 
> > > However the currently implemented solution is that each framework has a
> > > versions number, but that version number can be upgraded in all
> > > frameworks
> > > at the same time, using a script.
> > > 
> > > A future framework on top of all others, could provide the version
> > > number
> > > for all apps, much like the current kdeversion.h. Basically it would be
> > > the
> > > "SC" number, and not the version number of the libs themselves, as is
> > > currently the case.
> > 
> > But that SC number would be a lie. Because you only assume all modules are
> > installed in the versions that were release as SC X.Y . You have no idea
> > if
> > the user or distro uses older or newer versions for some libraries,
> > modules
> > or apps. So that number has no information value. Perhaps some marketing
> > value. But in bug reports it is useless.
> > 
> > Do we release kdelibs as ONE package. Or do we plan to release many small
> > packages?
> 
> Many small packages, but all at the same time. So "based on KDE Frameworks
> 5.0.1" will have some value in bug reports.
> 
> However you're right, apps themselves should have their own version number,
> maybe we can solve the same way as we do for the frameworks: by running a
> script that updates the toplevel CMakeLists.txt in all modules before
> releasing.
> 
> > If each library gets released standalone. What if whe make the kde sc
> > release 4.10.7. I assume only 70% of all libraries got commits since
> > 4.10.6
> > because stuff is pretty stable by now (7th update). Do we still release
> > ALL
> > libs or only those that got changed?
> 
> All libs, obviously. Who would take the time to run a diff and make really
> sure that nothing changed? This is additional work for nothing and makes
> everything more complex. Just like right now, we release kdeadmin or
> kdetoys with every KDE SC release, even if nothing changed.
> 
> > The same naturally goes for stuff like kdeedu now that it split. What if
> > some application got no commits since the last minor release. Make a
> > release anyway or skip it? For major releases i guess making a package
> > anyway makes sense. Or not?
> 
> I can't decide there, that's for the release team to decide, but IMHO if
> it's all scripted and done all at once (KDE SC release), then it's simpler
> to just re-release everything.

I agree with David here, just release everything, it's easier for everyone.

Cheers,
  Albert

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script (KF5)

2012-07-12 Thread David Faure
On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > If we really want to decouple our releases and be more flexible with
> > > > doing
> > > > them i consider this change a requirement for any decision in that
> > > > regard.
> > > > 
> > > > 
> > > > 
> > > > Each and every module has to have its own version number build in. I
> > > > guess
> > > > with the frameworks branch much of kdelibs already got that change (no
> > > > idea
> > > > really, anyone with input?). But we have to do the same with the rest
> > > > of
> > > > our modules.
> > > 
> > > No idea about frameworks. David? Kevin?
> > 
> > This is partly still under discussion.
> > 
> > However the currently implemented solution is that each framework has a
> > versions number, but that version number can be upgraded in all frameworks
> > at the same time, using a script.
> > 
> > A future framework on top of all others, could provide the version number
> > for all apps, much like the current kdeversion.h. Basically it would be
> > the
> > "SC" number, and not the version number of the libs themselves, as is
> > currently the case.
> 
> But that SC number would be a lie. Because you only assume all modules are
> installed in the versions that were release as SC X.Y . You have no idea if
> the user or distro uses older or newer versions for some libraries, modules
> or apps. So that number has no information value. Perhaps some marketing
> value. But in bug reports it is useless.
> 
> Do we release kdelibs as ONE package. Or do we plan to release many small
> packages?

Many small packages, but all at the same time. So "based on KDE Frameworks 
5.0.1" will have some value in bug reports.

However you're right, apps themselves should have their own version number, 
maybe we can solve the same way as we do for the frameworks: by running a 
script that updates the toplevel CMakeLists.txt in all modules before 
releasing.

> If each library gets released standalone. What if whe make the kde sc
> release 4.10.7. I assume only 70% of all libraries got commits since 4.10.6
> because stuff is pretty stable by now (7th update). Do we still release ALL
> libs or only those that got changed?

All libs, obviously. Who would take the time to run a diff and make really sure 
that nothing changed? This is additional work for nothing and makes everything 
more complex. Just like right now, we release kdeadmin or kdetoys with every 
KDE SC release, even if nothing changed.

> The same naturally goes for stuff like kdeedu now that it split. What if
> some application got no commits since the last minor release. Make a
> release anyway or skip it? For major releases i guess making a package
> anyway makes sense. Or not?

I can't decide there, that's for the release team to decide, but IMHO if it's 
all scripted and done all at once (KDE SC release), then it's simpler to just 
re-release everything.

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Sponsored by Nokia to work on KDE, incl. KDE Frameworks 5

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-08 Thread Jorge Manuel B. S. Vicetto
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 08-07-2012 01:56, Michael Pyne wrote:
>> On Sunday, July 08, 2012 02:30:13 Michael Jansen wrote:
>>> Gentoo already supports betas, RCs, etc. in Portage though they
>>> have a different nomenclature (e.g. I think 4.7.0~beta1 would
>>> be 4.7.0_beta1 in Portage). But in order to support generic KDE
>>> snapshots that nomenclature shouldn't change too much across
>>> future releases. As long as it's mostly
> set
>>> one time it shouldn't be hard to generically rewrite KDE
>>> versions into
> what
>>> is used by Gentoo (or rather, rewrite the Gentoo version to the
>>> KDE
> version
>>> to find the tarball!).
>>> 
>>> All the rest is administrivia in my opinion for a packager
>>> (they can rely
> on
>>> a good-enough GNU tar since they can enforce its presence). I
>>> would just make sure that the only versioning info in
>>> *released* snapshot tarballs
> and
>>> directories is the version itself (i.e. no dates, no revision
>>> tags or commit ids).
>> 
>> What is the version of a snapshot? Give an example. For me it is
>> the date.
> What do you expect it to be? Just snapshot? Keep the misuse of
> stable version numbers?
> 
> For a beta or RC, just use that version tag with no date (e.g. 
> kdelibs-4.9.0~rc1). There would be no symlink to this as it's a
> real "release", not a snapshot. For the extracted directory name I
> would include the version name as that seems to be the standard
> style (I do that with my own software releases at least).

I like the current use of >= X.7.50 to denote versions leading to a
proper release (X.Y+1.0). But if you want to change that, in Gentoo we
support alpha, beta, pre (pre-release), rc (release candidate) and p
(patch) versions.

> For a routine nightly snapshot, use the date as the version, with a
> symlink to that module on the FTP server. The symlink name should
> mention that it's a snapshot of some sort (e.g. kdelibs-git.tar.bz2
> -> kdelibs- git-20120706.tar.bz2). If it is very important to know
> which git commit was tagged, that can be added to the source just
> before it is tarred up, similar to how README.svn-nightly was added
> to our svn snapshots.

One thing that is very important to us for any version that has a
tarball and doesn't pull directly from a repository is that it has a
stable / unique checksum. So having a 4.10.50_snapshot release that
changes every week is a no go to us. If you want to provide a symlink
in the FTP server with that name, that doesn't affect us, as we will
have to fetch the exact tarball and not that generic symlink.
The use of dates on the version number is something we can work with.
As you're talking about automated releases, it would make our live
easier if you did the release at a specific weekday (assuming weekly
releases), but if you can use the same date for all components that
are released, we can work with that.
As you can see on [1][2] we keep a checksum of the tarballs in a
Manifest file so that users can be sure the file they got is the same
we used - that help us with broken mirrors and preventing cases where
files are tampered. For the latter case having a file with checksums
for all your tarballs[3] on your FTP site would be a great help.

 [1] -
http://git.overlays.gentoo.org/gitweb/?p=proj/kde.git;a=blob_plain;f=kde-base/kate/Manifest;hb=refs/heads/master
 [2] -
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/kde-base/kate/Manifest?revision=1.309&view=markup
 [3] - ftp://ftp.kde.org/pub/kde/stable/4.8.4/src/

> For the purposes of scripting, if it's OK to assume GNU tar then
> the extracted directory name can include the date since we can use
> --strip-components. But that option is non-POSIX. Plus there could
> easily be non-shell tarball handlers (e.g. Ruby or Python) where
> you might want to know what the extracted directory name should be.
> So unless there's a compelling reason otherwise I would recommend
> leaving any version information out of the extracted directory name
> (e.g. kdelibs-git-20120706.tar.bz2 would decompress to just
> kdelibs)

To us it would be easier if the directory name matches the package
name (kdelibs-4.8.10-beta-20120726.tar.bz2 ->
kdelibs-4.8.10-beta-20120726), but if you define it will always be the
basename (kdelibs) it also works for us.

Given all the discussion about versions in this thread and to make
sure the rules work well for all the distributions affected, perhaps
it's time someone presents a table of versions and how they compare.

In the case of Gentoo, our simplified rules[4][5] are the following:

5.2.1 > 5.2.0 > 5.1 > 5.0.9 > 5.0.0 > 4.9.50

we allow the use of suffixes with the following meaning:

_alpha  Alpha release (earliest)
_beta   Beta release
_prePre release
_rc Release candidate
(no suffix) Normal release
_p  Patch level

which compare as:

5.2.1_p1 > 5.2.1 > 5.2.0_p20120320 > 5.2.0_p20120318 > 5.2.0 >
5.2.0_rc20 > 5.2.0_rc10 > 5.2.0_pre2 > 5.2.0_beta6 > 5.2.0_beta5 >
5.2.0_alpha15


Re: Release Script

2012-07-07 Thread Michael Pyne
> On Sunday, July 08, 2012 02:30:13 Michael Jansen wrote:
> > Gentoo already supports betas, RCs, etc. in Portage though they have a
> > different nomenclature (e.g. I think 4.7.0~beta1 would be 4.7.0_beta1 in
> > Portage). But in order to support generic KDE snapshots that nomenclature
> > shouldn't change too much across future releases. As long as it's mostly 
set
> > one time it shouldn't be hard to generically rewrite KDE versions into 
what
> > is used by Gentoo (or rather, rewrite the Gentoo version to the KDE 
version
> > to find the tarball!).
> > 
> > All the rest is administrivia in my opinion for a packager (they can rely 
on
> > a good-enough GNU tar since they can enforce its presence). I would just
> > make sure that the only versioning info in *released* snapshot tarballs 
and
> > directories is the version itself (i.e. no dates, no revision tags or
> > commit ids).
> 
> What is the version of a snapshot? Give an example. For me it is the date. 
What do you expect it to be? Just snapshot? Keep the misuse of stable version 
numbers?

For a beta or RC, just use that version tag with no date (e.g. 
kdelibs-4.9.0~rc1). There would be no symlink to this as it's a real 
"release", not a snapshot. For the extracted directory name I would include 
the version name as that seems to be the standard style (I do that with my own 
software releases at least).

For a routine nightly snapshot, use the date as the version, with a symlink to 
that module on the FTP server. The symlink name should mention that it's a 
snapshot of some sort (e.g. kdelibs-git.tar.bz2 -> kdelibs-
git-20120706.tar.bz2). If it is very important to know which git commit was 
tagged, that can be added to the source just before it is tarred up, similar 
to how README.svn-nightly was added to our svn snapshots.

For the purposes of scripting, if it's OK to assume GNU tar then the extracted 
directory name can include the date since we can use --strip-components. But 
that option is non-POSIX. Plus there could easily be non-shell tarball 
handlers (e.g. Ruby or Python) where you might want to know what the extracted 
directory name should be. So unless there's a compelling reason otherwise I 
would recommend leaving any version information out of the extracted directory 
name (e.g. kdelibs-git-20120706.tar.bz2 would decompress to just kdelibs)

Regards,
 - Michael Pyne

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Jansen

> Gentoo already supports betas, RCs, etc. in Portage though they have a
> different nomenclature (e.g. I think 4.7.0~beta1 would be 4.7.0_beta1 in
> Portage). But in order to support generic KDE snapshots that nomenclature
> shouldn't change too much across future releases. As long as it's mostly set
> one time it shouldn't be hard to generically rewrite KDE versions into what
> is used by Gentoo (or rather, rewrite the Gentoo version to the KDE version
> to find the tarball!).
> 
> All the rest is administrivia in my opinion for a packager (they can rely on
> a good-enough GNU tar since they can enforce its presence). I would just
> make sure that the only versioning info in *released* snapshot tarballs and
> directories is the version itself (i.e. no dates, no revision tags or
> commit ids).

Sorry either because i am a non native speaker or because i am missing 
something i can't follow you here. Please give a specific example of good and 
bad.

What is the version of a snapshot? Give an example. For me it is the date. 
What do you expect it to be? Just snapshot? Keep the misuse of stable version 
numbers?

Let me give some examples.

UNSTABLE RELEASES

kdelibs-4.8.5~snapshot.tgz  (symlink to the tgz or real name)
kdelibs-4.8.5~20121005.tgz
(or whoever you think they should be named)

kdelibs-4.8.5~alpha1.tgz
kdelibs-4.8.5~beta1.tgz   
kdelibs-4.8.5~rc1.tgz 

What should the directory in the package be in that case? Examples for the 
alpha.

kdelibs-4.5.8
kdelibs-4.5.8~alpha1/
(or ???)

Anything else.

STABLE RELEASE
(It is clear here then. No change to current procedures)
kdelibs-4.8.5.tgz  -> kdelibs-4.8.5

> A final note: It sounds like we're going towards only releasing changed
> packages between updates. I think this is a wonderful idea (as I hate
> rebuilding a hojillion KDE packages on Gentoo just for a minor point
> release) but it will be very labor-intensive for packagers if we don't
> essentially do the work for them by listing out what libraries and
> applications *individual* versions are present in a given KDE SC, for each
> release. So there would need to be some kind of automated version
> extraction (perhaps individual module maintainers could provide this until
> that's available?)

We will only start doing that when we are able to do it. That means when all 
the discussion led to a result.

And i laid out my plan how to do it in a other mail. For me the only step that 
is still a bit dark is the versioning numbers. Because doing it with a script 
gives many problems you do not have when doing it manually. Especially when 
skipping unchanged modules.

I already started a class trying to implement it and hope to present it in the 
next days.  I am trying to make sure the code can handle all cases. Which 
means doing many unit test for it. The rest is just implementing.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Pyne
On Saturday, July 07, 2012 22:22:38 Michael Jansen wrote:
> On Saturday, July 07, 2012 04:04:42 PM Michael Pyne wrote:
> > On Saturday, July 07, 2012 18:27:42 Jorge Manuel B. S. Vicetto wrote:
> > > >>> I think we did it for a time. At least i remember some " a new
> > > >>> snow storm, a new snapshot" commits by dirk. But no idea how
> > > >>> they got released/packaged.
> > > >> 
> > > >> Yes, you did that in the past and we really disliked it.
> > > > 
> > > > Could you find out how they were named back then for me? Just for
> > > > information.
> > > > 
> > > > Mike
> > > 
> > > I can't recall the names used back then, but I'm pretty sure they
> > > included the svn id in the names and dir inside the tarball.
> > > I tried asking in #gentoo-kde but no one got back to me so I can't
> > > help with that.
> > 
> > You can look at ftp://ftp.kde.org/pub/kde/snapshots/ for an example of 
what
> > they used to look like (packagename-svn-$revno.tar.bz2).
> > 
> > This was made easier by later having symlinks available (packagename-
> > svn.tar.bz2) (added by myself :P, see svn revision 458465 of kde-
> > common/release/dosnapshot) but I can confirm it was a pain in the ass from 
a
> > scripting perspective.
> > 
> > Of course for packagers they wouldn't be using Subversion snapshots but
> > plain tarball snapshots, although those suffer the same issues. In fact it
> > was worse because the directory name that was extracted to was
> > unpredictable (e.g. kdeadmin.tar.bz2 extracts to kdeadmin-1233410/).
> 
> (Sorry for the other empty mail. Wrong button)
> 
> So there is the problem i couldn't see. The directory name it extracts to is 
considered to be the same as the name of the archive. Just extracted our 
kdelibs 4.8.3 package and the dir is kdelibs-4.8.3. Build-tool already solves 
that problem by always using "tar --strip-components=1 --directory=". That's why i failed to see the problem.
> 
> Is that naming a must?

I think the issue is less about having the version component in the name and 
more that if there is a version component, that it is easy to piece toward the 
tagged version.

Gentoo already supports betas, RCs, etc. in Portage though they have a 
different nomenclature (e.g. I think 4.7.0~beta1 would be 4.7.0_beta1 in 
Portage). But in order to support generic KDE snapshots that nomenclature 
shouldn't change too much across future releases. As long as it's mostly set 
one time it shouldn't be hard to generically rewrite KDE versions into what is 
used by Gentoo (or rather, rewrite the Gentoo version to the KDE version to 
find the tarball!).

All the rest is administrivia in my opinion for a packager (they can rely on a 
good-enough GNU tar since they can enforce its presence). I would just make 
sure that the only versioning info in *released* snapshot tarballs and 
directories is the version itself (i.e. no dates, no revision tags or commit 
ids).

For actual Git snapshots Gentoo uses a separate scheme anyways that even uses 
git directly, so that shouldn't pose much drama. But I don't think that's 
what's being discussed here. :)

A final note: It sounds like we're going towards only releasing changed 
packages between updates. I think this is a wonderful idea (as I hate 
rebuilding a hojillion KDE packages on Gentoo just for a minor point release) 
but it will be very labor-intensive for packagers if we don't essentially do 
the work for them by listing out what libraries and applications *individual* 
versions are present in a given KDE SC, for each release. So there would need 
to be some kind of automated version extraction (perhaps individual module 
maintainers could provide this until that's available?)

Regards,
 - Michael Pyne

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Jansen
On Saturday, July 07, 2012 04:04:42 PM Michael Pyne wrote:
> On Saturday, July 07, 2012 18:27:42 Jorge Manuel B. S. Vicetto wrote:
> > >>> I think we did it for a time. At least i remember some " a new
> > >>> snow storm, a new snapshot" commits by dirk. But no idea how
> > >>> they got released/packaged.
> > >> 
> > >> Yes, you did that in the past and we really disliked it.
> > > 
> > > Could you find out how they were named back then for me? Just for
> > > information.
> > > 
> > > Mike
> > 
> > I can't recall the names used back then, but I'm pretty sure they
> > included the svn id in the names and dir inside the tarball.
> > I tried asking in #gentoo-kde but no one got back to me so I can't
> > help with that.
> 
> You can look at ftp://ftp.kde.org/pub/kde/snapshots/ for an example of what
> they used to look like (packagename-svn-$revno.tar.bz2).
> 
> This was made easier by later having symlinks available (packagename-
> svn.tar.bz2) (added by myself :P, see svn revision 458465 of kde-
> common/release/dosnapshot) but I can confirm it was a pain in the ass from a
> scripting perspective.
> 
> Of course for packagers they wouldn't be using Subversion snapshots but
> plain tarball snapshots, although those suffer the same issues. In fact it
> was worse because the directory name that was extracted to was
> unpredictable (e.g. kdeadmin.tar.bz2 extracts to kdeadmin-1233410/).

(Sorry for the other empty mail. Wrong button)

So there is the problem i couldn't see. The directory name it extracts to is 
considered to be the same as the name of the archive. Just extracted our 
kdelibs 4.8.3 package and the dir is kdelibs-4.8.3. Build-tool already solves 
that problem by always using "tar --strip-components=1 --directory=". That's why i failed to see the problem.

Is that naming a must?

I thought about naming the directory in the snapshot packages always like

-/
kdelibs-5.8.5-SNAPSHOT/

or do people want just 

/
kdelibs/

in there?

-- 
Michael Jansen
http://michael-jansen.biz___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Jansen
On Saturday, July 07, 2012 04:04:42 PM Michael Pyne wrote:
> On Saturday, July 07, 2012 18:27:42 Jorge Manuel B. S. Vicetto wrote:
> > >>> I think we did it for a time. At least i remember some " a new
> > >>> snow storm, a new snapshot" commits by dirk. But no idea how
> > >>> they got released/packaged.
> > >> 
> > >> Yes, you did that in the past and we really disliked it.
> > > 
> > > Could you find out how they were named back then for me? Just for
> > > information.
> > > 
> > > Mike
> > 
> > I can't recall the names used back then, but I'm pretty sure they
> > included the svn id in the names and dir inside the tarball.
> > I tried asking in #gentoo-kde but no one got back to me so I can't
> > help with that.
> 
> You can look at ftp://ftp.kde.org/pub/kde/snapshots/ for an example of what
> they used to look like (packagename-svn-$revno.tar.bz2).
> 
> This was made easier by later having symlinks available (packagename-
> svn.tar.bz2) (added by myself :P, see svn revision 458465 of kde-
> common/release/dosnapshot) but I can confirm it was a pain in the ass from a
> scripting perspective.
> 
> Of course for packagers they wouldn't be using Subversion snapshots but
> plain tarball snapshots, although those suffer the same issues. In fact it
> was worse because the directory name that was extracted to was
> unpredictable (e.g. kdeadmin.tar.bz2 extracts to kdeadmin-1233410/).
> 
> Regards,
>  - Michael Pyne
-- 
Michael Jansen
http://michael-jansen.biz___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Pyne
On Saturday, July 07, 2012 18:27:42 Jorge Manuel B. S. Vicetto wrote:
> >>> I think we did it for a time. At least i remember some " a new
> >>> snow storm, a new snapshot" commits by dirk. But no idea how
> >>> they got released/packaged.
> >> 
> >> Yes, you did that in the past and we really disliked it.
> > 
> > Could you find out how they were named back then for me? Just for
> > information.
> > 
> > Mike
> 
> I can't recall the names used back then, but I'm pretty sure they
> included the svn id in the names and dir inside the tarball.
> I tried asking in #gentoo-kde but no one got back to me so I can't
> help with that.

You can look at ftp://ftp.kde.org/pub/kde/snapshots/ for an example of what 
they used to look like (packagename-svn-$revno.tar.bz2).

This was made easier by later having symlinks available (packagename-
svn.tar.bz2) (added by myself :P, see svn revision 458465 of kde-
common/release/dosnapshot) but I can confirm it was a pain in the ass from a 
scripting perspective.

Of course for packagers they wouldn't be using Subversion snapshots but plain 
tarball snapshots, although those suffer the same issues. In fact it was worse 
because the directory name that was extracted to was unpredictable (e.g. 
kdeadmin.tar.bz2 extracts to kdeadmin-1233410/).

Regards,
 - Michael Pyne

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-07 Thread Michael Jansen

> > So you guys have some artificial version 4.x.49. which
> > downloads sources from a branch and builds them? Artificial in not
> > released by kde?
> 
> What you call an "artificial version" is a mean for us to provide the
> users who want to do it a package they can install and update whenever
> they want to track a specific branch or the head of your git
> repositories. But you're right, users will be using something that
> wasn't released by KDE. As Andreas already mentioned, these packages
> are only available on our KDE overlay and require extra work from
> users before they can use them.

Sorry that was not meant judging in any way. I wanted to make sure i 
understand if your recipes? only build hardcoded versions tested by you 
packagers and then put into the recipe regulary or if using them means living 
on the edge.

I am just trying to have a complete understanding how you release our 
software.

> We can do almost anything that can be done with bash to track your
> packages, but it will be much simpler and quicker to add support for
> packages that have reasonable and *predictable* names / versions.

> I expect that you release kate snapshot tarballs with the same name
> than the releases / pre-releases (kate).

I am a bit unsure about that sentence. Could you elaborate? When scripted the 
tarball names will be stable. 
 
  -

I despise releasing a snapshot or alpha/beta release as something like

4.8.80 (alpha)
or 5.80.50 (snapshot perhaps)

So i am trying to end this misuse of a normal / stable version number (x.y.z) 
for unstable releases (snapshot, alpha, beta).

A version could be

 4.8.1(Stable: 1st update to 4.8.0)
 4.8.1.1  (Stable: Repackaged 4.8.1 - under discusssion)
 4.9.0~20120704- (Unstable SNAPSHOT release from the master
  branch while developing for 4.9.0)
 4.9.0~SNAPSHOT  (shortcut to the latest SNAPSHOT for your convenience.)
 4.9.0~alpha1 (UNSTABLE alpha1 release)
 4.9.0~alpha2 (UNSTABLE alpha2 release)
 4.9.0~betal  (UNSTABLE beta1 release)
 4.9.0~beta2  (UNSTABLE beta2 release)
 4.9.0(STABLE 4.9.0 release)

But that is not necessary. If this discussion shows it is to much hassle for 
you (or anyone else that speaks up) i won't do it.

> > So something like this (taking scotts email into account)
> > 
> > kdebase-4.8.5-20120624-
> > kdebase-4.8.5-20120701-
> > kdebase-4.8.5-SNAPSHOT -> kdebase-4.8.5-20120701- > VERSION>
> > 
> > would solve your problem?

You noticed me putting a symbolic link kdebase-4.8.5-SNAPSHOT there that i 
plan to update on each and every new snapshot release? So you can just 
download the snapshot over the symbolic link and be sure you got the newest 
version.

Perhaps that wasn't clear? My fault. If you still have a problem with that i 
must say i don't understand it. The filename does not get more predictable 
than that.

That semver link i gave really shows how i think versioning should be done.

Btw. That symlink means you couldn't provide your users with the possibility 
to build an older snapshot but i guess that use case is mood anyway?

> No. As I've explained in the previous email and above, using git or
> version tags force us to manually update packages and to go check each
> and every package to determine what commit id was used on the package
> name. As I've argued on the previous email, add that to a file inside
> the tarball or make that available through the package UI, but don't
> add that to the tarball name.
> 
> > Can i interpret that that you guys would get problems too if we
> > would not release all our packages with 4.9.2 . Remember we are
> > talking about leaving unchanged packages out of the release on
> > minor releases!
> 
> This will cause issues for us now. But we're willing and ready to
> update our tools if that's what will lay ahead. What we would like to
> ask is that you please think it over so that we don't have the trouble
> of updating our tools and in 1 month you rethink and reverse such a
> change.
> As Andreas already presented on his email, before you start doing
> this, we really need you to document all your dependencies for each
> package.
> The best (easiest?) way to do that would be through the cmake files or
> if you're willing to do that, to have a text file inside the tarballs
> with that info.

I am currently thinking about maintaining a special git repo that contains 
some release meta data. It will be branched in sync with kde sc releases so we 
will have KDE/4.8 and KDE/4.9 and master branches in there. It should contain 
one xml file that contains the latest released version for each package. If a 
package is added to KDE SC it will be added there and removed if it leaves KDE 
SC.

This xml file will be the main configuration for the overall release process 
too. It will containt the repos where the package is found (git or svn), the 
branch name from which the package is released and perhaps something else.

So if you want to know what makes up KDE 4.

Re: Release Script

2012-07-07 Thread Jorge Manuel B. S. Vicetto
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04-07-2012 17:44, Michael Jansen wrote:
> 
>>> 
>>> If you have a problem with us setting up weekly snapshots in
>>> that format, then you may have a point because i am thinking
>>> about that use case. Afaik some distros provide weekly
>>> snapshots straight from our branches. If our release system is
>>> fully scripted we could make weekly snapshot releases and ask
>>> them to use those. They might look like that. Or perhaps have
>>> the git or subversion number somewhere in the name.
>> 
>> Then please *really* forget it.
> 
> I have no idea why to tell me something like that: "Stop doing
> thinking about stuff, stop trying to improve stuff, just go away.
> That is what comes around here", instead of telling me just how you
> guys work currently and together we figure out how everyone can be
> happy?

I'm not telling you to stop improving stuff, I'm asking you to forget
a naming scheme that as I tried to show you will cause a lot of work
for us (Gentoo and I assume other source distributions) with IMHO
little gain. I even presented alternatives to make sure the tarballs
convey a precise release without adding "unpredictable" strings to
their version.

> Glass half full please.
> 
> If i would answer you in the same way i would just say:
> 
> You guys currently get no snapshot releases from us so please
> explain to me why us releasing some you can't use makes things
> worse for you? Just ignore those snapshot releases, those that can
> use them will be happy. But thats not my intention.
> 
> I want to make clean i really appreciate that you are taking part
> in the discussion here. So don't take offense. I just wanted to
> point out that your emails look MUCH better without your first
> sentence. And much more constructive.

My first sentence was meant to convey how much your proposal (naming
scheme) affects us and worries me. The reminder of the email was meant
to show that I'm not just "flipping out" or making noise just for
making noise.

>> In the case of Gentoo, we start our work of doing a new KDE
>> release by bumping the ebuild (Gentoo package format) version -
>> for example we bump kdelibs-4.8.3 to kdelibs-4.8.4 or kate-
>> to kate-4.8.95. As the name of the tarball that we try to
>> download is based on the package version, if you have a
> 
> So you guys have some artificial version 4.x.49. which
> downloads sources from a branch and builds them? Artificial in not
> released by kde?

What you call an "artificial version" is a mean for us to provide the
users who want to do it a package they can install and update whenever
they want to track a specific branch or the head of your git
repositories. But you're right, users will be using something that
wasn't released by KDE. As Andreas already mentioned, these packages
are only available on our KDE overlay and require extra work from
users before they can use them.

> So everyone out there having this version does not really know
> which version he has? Because it depends on when he built?

The same way as any KDE developer that uses packages from the git
repositories.

> You guys currently have no support to build snapshot versions (and
> i realize we currently don't bprovide any). And it would be hard to
> do unless we release all snapshot versions under the same PACKAGE
> NAME EVERY TIME. What version is in the package is irrelevant.
> Right?

As you mention, we can't provide support for something you don't
provide. We did provide for a while support for snapshots when you
briefly released them sometime ago.
We can do almost anything that can be done with bash to track your
packages, but it will be much simpler and quicker to add support for
packages that have reasonable and *predictable* names / versions.
I expect that you release kate snapshot tarballs with the same name
than the releases / pre-releases (kate). I haven't seen any suggestion
to do otherwise. In the past there were some changes of package  /
tarball names or moves of a package from a tarball to another. That
creates extra work for us, but as long as it isn't done without
thinking or worse you do it a few times in a row, we can live with it.
The package / tarball version is the crux of this discussion. We can
support several naming schemes, so we're open to talk about that. What
we really need is *consistency* and *predictability*. Whenever you
name a package / tarball with an unpredictable name, you force us to
have to check each package and to manually update our naming scheme.
If you use a consistent and predictable naming scheme, all we need to
do is copy a file and use the new package name (without having to go
and check what tag was used for each of the packages that we're touching).

> So something like this (taking scotts email into account)
> 
> kdebase-4.8.5-20120624- 
> kdebase-4.8.5-20120701- 
> kdebase-4.8.5-SNAPSHOT -> kdebase-4.8.5-20120701- VERSION>
> 
> would solve your problem?

No. As I've explained in

Re: Release Script

2012-07-06 Thread info
The same naturally goes for stuff like kdeedu now that it split. 
What if

some application got no commits since the last minor release. Make a
release anyway or skip it? For major releases i guess making a 
package

anyway makes sense. Or not?


Releasing all parts of the SC with the same version numbers at the 
same time
delivers a very clear implied message: "All of these parts are meant 
to work

well together" and "This is the configuration we support".

Different version numbers if all of the SC is still released together 
at the

same time would still work here, although the "This belongs together"
message
is already a bit weaker.


We will always release a KDE SC Framework Version. But the parts can 
have different
versions. It is about decreasing the workload of everyone involved by 
not forcing

releases of unchanged packages. At least thats what i am talking about.

And a kdelibs hotfix (because of a security problem) does not require a 
full KDE

SC Framework release with all packages.

I will make sure we have always a up to date database about the parts 
that are supposed

to work together.

If you decide to split up the SC into separate smaller releases, you 
lose or
weaken (depending on how you split) that implied message and you need 
to
provide this information in another way, which  means more work for 
the

developers to document dependencies and more work for  packagers to
make sure
that everything indeed is as it is supposed to be.


That is nothing i work on or plan to do. My work will make that 
possible but i currently
work on the assumption we will keep our current release practices. I am 
just trying to
script it and make necessary changes to make life easier for all 
involved.


Anything else is beyond my scope.

Mike
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-06 Thread Heinz Wiesinger
On Wednesday 27 June 2012 17:21:28 Michael Jansen wrote:
> On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > If we really want to decouple our releases and be more flexible with
> > > > doing
> > > > them i consider this change a requirement for any decision in that
> > > > regard.
> > > > 
> > > > 
> > > > 
> > > > Each and every module has to have its own version number build in. I
> > > > guess
> > > > with the frameworks branch much of kdelibs already got that change (no
> > > > idea
> > > > really, anyone with input?). But we have to do the same with the rest
> > > > of
> > > > our modules.
> > > 
> > > No idea about frameworks. David? Kevin?
> > 
> > This is partly still under discussion.
> > 
> > However the currently implemented solution is that each framework has a
> > versions number, but that version number can be upgraded in all frameworks
> > at the same time, using a script.
> > 
> > A future framework on top of all others, could provide the version number
> > for all apps, much like the current kdeversion.h. Basically it would be
> > the
> > "SC" number, and not the version number of the libs themselves, as is
> > currently the case.
> 
> But that SC number would be a lie. Because you only assume all modules are
> installed in the versions that were release as SC X.Y . You have no idea if
> the user or distro uses older or newer versions for some libraries, modules
> or apps. So that number has no information value. Perhaps some marketing
> value. But in bug reports it is useless.
> 
> Do we release kdelibs as ONE package. Or do we plan to release many small
> packages?
> 
> If each library gets released standalone. What if whe make the kde sc
> release 4.10.7. I assume only 70% of all libraries got commits since 4.10.6
> because stuff is pretty stable by now (7th update). Do we still release ALL
> libs or only those that got changed? Does this make a difference for our
> packagers? Does it make it more difficult or more easy? So is that a
> feature we want or not?
> 
> The same naturally goes for stuff like kdeedu now that it split. What if
> some application got no commits since the last minor release. Make a
> release anyway or skip it? For major releases i guess making a package
> anyway makes sense. Or not?

Releasing all parts of the SC with the same version numbers at the same time 
delivers a very clear implied message: "All of these parts are meant to work 
well together" and "This is the configuration we support".

Different version numbers if all of the SC is still released together at the 
same time would still work here, although the "This belongs together" message 
is already a bit weaker.

If you decide to split up the SC into separate smaller releases, you lose or 
weaken (depending on how you split) that implied message and you need to 
provide this information in another way, which  means more work for the 
developers to document dependencies and more work for  packagers to make sure 
that everything indeed is as it is supposed to be.

There is also a difference if you split into frameworks, workspace and apps, or 
if you release every single tarball on its own schedule. The first is still 
well managable for both developers and packagers with regards to dependency 
documentation. The latter will just result in a big mess. Gnome and X are 
prime examples that this does not work.

Grs,
Heinz

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-06 Thread Heinz Wiesinger
On Tuesday 03 July 2012 19:25:13 Michael Jansen wrote:
> > I do not disagree here, BUT have in mind that since we have private
> > packages (used/tested by distro packagers before the release actually
> > happens) so YOU is a broad term including the packagers.
> > 
> > > For KDE would say someone else should decide. We could make a release
> > > 4.8.80.1 if we have to repackage stuff. But the packagers distros should
> > > give input here. I think they should say what is the easiest for them to
> > > handle.
> > 
> > I'm sure having a micro release is going to break their scripts that just
> > expect 3 numbers.
> 
> I really would like to have some input of real packagers here. I am inclined
> to say if noone speaks up now they have to live with whatever we come up
> afterwards. I am not caring for people who only complain after stuff is
> done when they kept silent while it was discussed and designed.
> 
> INPUT guys. NOW.

The format of the version numbering scheme does not affect slackware packaging.
A slightly bigger impact would be to have different version numbers of the 
individual components.

Grs,
Heinz

signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Scott Kitterman
On Friday, July 06, 2012 12:21:56 AM Albert Astals Cid wrote:
> I think i was quite clear this list is were we decide how releases are done
> on  my e-mails to the kde-packager mailing list.

Definitely.  That's exactly why I subscribed.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Albert Astals Cid
El Dijous, 5 de juliol de 2012, a les 21:26:40, Andreas K. Huettel va 
escriure:
> Am Dienstag 03 Juli 2012, 19:25:13 schrieb Michael Jansen:
> > I really would like to have some input of real packagers here. I am
> > inclined to say if noone speaks up now they have to live with whatever we
> > come up afterwards. I am not caring for people who only complain after
> > stuff is done when they kept silent while it was discussed and designed.
> > 
> > INPUT guys. NOW.
> 
> It probably helps if you cc the packager mailing list.

I think i was quite clear this list is were we decide how releases are done on 
my e-mails to the kde-packager mailing list.

Cheers,
  Albert
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel

> > In the case of Gentoo, we start our work of doing a new KDE release by
> > bumping the ebuild (Gentoo package format) version - for example we
> > bump kdelibs-4.8.3 to kdelibs-4.8.4 or kate- to kate-4.8.95.
> > As the name of the tarball that we try to download is based on the
> > package version, if you have a
> 
> So you guys have some artificial version 4.x.49. which downloads
> sources from a branch and builds them? Artificial in not released by kde?
> 
> So everyone out there having this version does not really know which
> version he has? Because it depends on when he built?

These versions are hardmasked and usually not visible to users.

The build log contains timestamp and git commit hash of every repository 
involved, and is a hard requirement so we even look at a bug report.

BTW, this actually makes Gentoo a great distribution for KDE development, you 
can very easily run newest master and it's fully integrated with the 
distribution package management.

> 
> Can i interpret that that you guys would get problems too if we would not
> release all our packages with 4.9.2 . Remember we are talking about leaving
> unchanged packages out of the release on minor releases!
> 
See separate mail, yes right now we're relying on same version number for all 
of KDE.


-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Dienstag 03 Juli 2012, 19:25:13 schrieb Michael Jansen:
> 
> I really would like to have some input of real packagers here. I am
> inclined to say if noone speaks up now they have to live with whatever we
> come up afterwards. I am not caring for people who only complain after
> stuff is done when they kept silent while it was discussed and designed.
> 
> INPUT guys. NOW.
> 

It probably helps if you cc the packager mailing list.

-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Samstag 30 Juni 2012, 15:29:37 schrieb Albert Astals Cid:
> 
> > For KDE would say someone else should decide. We could make a release
> > 4.8.80.1 if we have to repackage stuff. But the packagers distros should
> > give input here. I think they should say what is the easiest for them to
> > handle.
> 
> I'm sure having a micro release is going to break their scripts that just
> expect 3 numbers.

Breaking the scripts once, with a well-thought-out change, is perfectly 
fine...


-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Mittwoch 27 Juni 2012, 17:39:03 schrieb Michael Jansen:
> On Monday, June 25, 2012 01:16:05 AM Albert Astals Cid wrote:
> > That works fine for me, though unfortunately we usually have to
> > re-package some tarballs due to fixes that are needed into the release.
> > How do you fit this particularity into this way of working?
> 
> With my config manager head on i say "NEVER rerelease a version". Which in
> our case includes everything that has been downloaded/used by anone not
> you (You=Packager).

Very strong agreement.

If you want to re-release something, add an extra .x to the version number.

> > > I see one problem. As you can see the changed version information is
> > > only committed AFTER build and test in this setup. That can take quite
> > > some time. In a project as big as ours that opens the possibility that
> > > during that time some else commits a change. Which makes it impossible
> > > for the script to commits its change.
> > > 
> > > 1. Solution: Branch. The Script could create a branch for the release.
> > 
> > Creating a branch for release would also probably "fix" the problem i
> > spoke in the previous paragraph

* Create a branch. 
* Build and test that branch. 
* Tag the release on that branch. 
* Merge the branch back into master / whatever it comes from.

> 
> I am btw. wondering that noone objected yet to this. I seem to remember
> someone was unhappy about dirk branching some 4.8.x release. I don't
> remember where and why.

Dunno. It was just funny, because, functionality-wise, master became 4.8 and 
4.8 became 4.8.X. 

> 
> > > 2. Solution: Lock the repo (A no go in my opinion)
> > 
> > Yeah, locking kills babies

Ack.

Not that it affects me, but the KDE developers will probably object to 
locking, with good reason.


-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Dienstag 03 Juli 2012, 19:30:23 schrieb Michael Jansen:
> I am just wondering about the distros again. Say i release KDE SC 4.9.2 and
> of all our packages only 10% got really changes. I wonder how that affects
> the workload if we force a release of the 90% unchanged ones. Or do they
> need them to be released?

Gentoo case: Assuming nothing else is broken, the workload for the packagers 
of bumping every package from 4.9.1 to 4.9.2 is near zero. (Running a script 
over a git tree.) The main disadvantage is that all users will have to re-
download all sources. 

But then, we're as a source based distro maybe a special case. 

-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Mittwoch 27 Juni 2012, 17:21:28 schrieb Michael Jansen:
> > This is partly still under discussion.
> > 
> > However the currently implemented solution is that each framework has a
> > versions number, but that version number can be upgraded in all
> > frameworks at the same time, using a script.
> > 
> > A future framework on top of all others, could provide the version number
> > for all apps, much like the current kdeversion.h. Basically it would be
> > the "SC" number, and not the version number of the libs themselves, as
> > is currently the case.
> 
> But that SC number would be a lie. Because you only assume all modules are
> installed in the versions that were release as SC X.Y . You have no idea if
> the user or distro uses older or newer versions for some libraries, modules
> or apps. So that number has no information value. Perhaps some marketing
> value. But in bug reports it is useless.

Right now, in Gentoo we're basically relying on the fact that all kde sc 
packages that are installed have the same exact version (modulo local Gentoo 
revbumps with patches). However, this is not a "must". 

If you want, you can give each and every small component of (what used to be) 
KDE a separate version number. But... *before* you do this, you'll need to 
define exactly what dependencies you will require across the *entire* software 
set, taking into account version numbers!

Right now, if someone installs (on Gentoo) gwenview-4.8.4, this pulls in as a 
dependency libkonq-4.8.4. Now, this is likely overspecified, and we might be 
fine with libkonq-4.8.*. So, a general rule for the moment may be gwenview-
X.Y.Z requires libkonq-X.Y.*. 

Now, please give me the specifications for the new version numbering first, 
before you start using them!

In particular also... what are major, minor, bugfix releases, what do you want 
to enforce in a dependency freeze, ...

Cheers...

-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-05 Thread Andreas K. Huettel
Am Mittwoch 20 Juni 2012, 21:30:23 schrieb Michael Jansen:
> 
> 1. Add the version information into all of our modules in a way that a
> outside script can get it. Some kind of file for example that is included
> by the toplevel CMakeLists.txt and only contains the version information.

Sounds good.

> 2. Make the necessary build-system changes to use this version information
> for the .SO names.

Makes no sense, because soversions are already different. Better completely 
decouple from package version.

> 3. Make it a rule that there is no other place allowed to contain version
> information. If you need it somewhere else use cmakes configure_file().
> Btw. the version information should contain a human readable part
> 4.8.3-beta2 too. (For the kdepims out there).

Sounds good.

> 5. Add a file into our modules that describe what to pack/ignore for our
> source distributions. This contains the "removestuff" script parts from
> kde- common/release. Use a file-format that is extensible (JSON, xml,
> ...). And add possibly more (time will tell)

Sounds very good.


-- 

Andreas K. Huettel
Gentoo Linux developer 
dilfri...@gentoo.org
http://www.akhuettel.de/



signature.asc
Description: This is a digitally signed message part.
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-04 Thread Michael Jansen

> > 
> > If you have a problem with us setting up weekly snapshots in that
> > format, then you may have a point because i am thinking about that
> > use case. Afaik some distros provide weekly snapshots straight from
> > our branches. If our release system is fully scripted we could make
> > weekly snapshot releases and ask them to use those. They might look
> > like that. Or perhaps have the git or subversion number somewhere
> > in the name.
> 
> Then please *really* forget it.

I have no idea why to tell me something like that: "Stop doing thinking about 
stuff, stop trying to improve stuff, just go away. That is what comes around 
here", instead of telling me just how you guys work currently and together we 
figure out how everyone can be happy?

Glass half full please.

If i would answer you in the same way i would just say:

You guys currently get no snapshot releases from us so please explain to me 
why us releasing some you can't use makes things worse for you? Just ignore 
those snapshot releases, those that can use them will be happy. But thats not 
my intention.

I want to make clean i really appreciate that you are taking part in the 
discussion here. So don't take offense. I just wanted to point out that your 
emails look MUCH better without your first sentence. And much more 
constructive.

> In the case of Gentoo, we start our work of doing a new KDE release by
> bumping the ebuild (Gentoo package format) version - for example we
> bump kdelibs-4.8.3 to kdelibs-4.8.4 or kate- to kate-4.8.95.
> As the name of the tarball that we try to download is based on the
> package version, if you have a

So you guys have some artificial version 4.x.49. which downloads sources 
from a branch and builds them? Artificial in not released by kde?

So everyone out there having this version does not really know which version 
he has? Because it depends on when he built?

You guys currently have no support to build snapshot versions (and i realize 
we currently don't bprovide any). And it would be hard to do unless we release 
all snapshot versions under the same PACKAGE NAME EVERY TIME. What version is 
in the package is irrelevant. Right?

So something like this (taking scotts email into account)

kdebase-4.8.5-20120624-
kdebase-4.8.5-20120701-
kdebase-4.8.5-SNAPSHOT -> kdebase-4.8.5-20120701-

would solve your problem?

Can i interpret that that you guys would get problems too if we would not 
release all our packages with 4.9.2 . Remember we are talking about leaving 
unchanged packages out of the release on minor releases!

4.9.0 gets releases of
kalgebra-4.9.0.tar.xz
ktuberling-4.9.0.tar.xz
okular-4.9.0.tar.xz

4.9.1 gets releases of
okular-4.9.1.tar.xz
ktuberling unchanged
kalgebra unchanged

4.9.2 gets releases of
kalgebra-4.9.1.tar.xz
ktuberling-4.9.1.tar.xz
okular-4.9.2.tar.xz

The kubuntu guys seem to prefer this? or is it 4.9.2 for all packages in the 
4.9.2 SC Release? Scott?)

> > I think we did it for a time. At least i remember some " a new snow
> > storm, a new snapshot" commits by dirk. But no idea how they got
> > released/packaged.
> 
> Yes, you did that in the past and we really disliked it.

Could you find out how they were named back then for me? Just for information.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Scott Kitterman
On Tuesday, July 03, 2012 07:14:40 PM Michael Jansen wrote:
> > > The last step is done in maven because the support something called
> > > snapshot release which means their version looks like
> > > 4.7.1-20120621_151400. I think it could make sense to support that
> > > too. Stuff build from master or branch would be easily
> > > distuinguishable from really released stuff.
> > 
> > If you're suggesting to use -.tar.xz tarballs,
> > then please forget that. That may not affect binary distributions, but
> > it affects source distributions.
> > Source distributions really appreciate consistent and *predictable*
> > names and URLs.
> 
> I can not see where you got the impression that i would like to do that for
> major, minor or patch release. Standard KDE releases will always have real
> version numbers like today,
> 
> If you have a problem with us setting up weekly snapshots in that format,
> then you may have a point because i am thinking about that use case. Afaik
> some distros provide weekly snapshots straight from our branches. If our
> release system is fully scripted we could make weekly snapshot releases and
> ask them to use those. They might look like that. Or perhaps have the git
> or subversion number somewhere in the name.
> 
> IF we really do that.
> 
> I think we did it for a time. At least i remember some " a new snow storm, a
> new snapshot" commits by dirk. But no idea how they got released/packaged.

For Kubuntu (and any system based on Debian packaging), we need the version 
numbers to be monotonically increasing.  Subversion revision number have this 
property, but Git tags to do not.  Date tags (e.g. -MM-DD) work very 
nicely and since you're not planning on more than once per day releases, they 
take care of the sorting issue.  It also removes the need to deal with svn and 
git hosted packages differently.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Scott Kitterman
On Tuesday, July 03, 2012 07:25:13 PM Michael Jansen wrote:
> > I do not disagree here, BUT have in mind that since we have private
> > packages (used/tested by distro packagers before the release actually
> > happens) so YOU is a broad term including the packagers.
> >
> > 
> >
> > > For KDE would say someone else should decide. We could make a release
> > > 4.8.80.1 if we have to repackage stuff. But the packagers distros should
> > > give input here. I think they should say what is the easiest for them to
> > > handle.
> >
> > 
> >
> > I'm sure having a micro release is going to break their scripts that just
> > expect 3 numbers.
> 
> I really would like to have some input of real packagers here. I am
> inclined  to say if noone speaks up now they have to live with whatever we
> come up afterwards. I am not caring for people who only complain after
> stuff is done when they kept silent while it was discussed and designed.
> 
> INPUT guys. NOW.

For Kubuntu the key thing is that version numbers monotonically increase and 
that the version number changes each time the contents change.  If we have a 
script that gets confused by a fourth digit I think it's buggy and we should 
fix it.

Currently, when packages are in the private testing phase we internally 
increment the versions with additional letters when a tarball gets respun 
(i.e. change 4.8.80 to 4.8.80a when the private tarball is changed).  I'm not 
sure the full context of the discussion, but if what's on the table might 
include a fourth digit for these private respins, that would make things 
easier for Kubuntu.

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Scott Kitterman
On Tuesday, July 03, 2012 07:30:23 PM Michael Jansen wrote:
...
> I am just wondering about the distros again. Say i release KDE SC 4.9.2 and
> of  all our packages only 10% got really changes. I wonder how that affects
> the workload if we force a release of the 90% unchanged ones. Or do they
> need them to be released?
...
For Kubuntu we look through and only release the packages that have changes, 
so not releasing unchanged packages in point releases would make our life 
easier (in case there's doubt, I'm not sure from the above, KDE does release 
the unchanged ones now).

Scott K
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Michael Jansen
> Speaking in the apps side (not frameworks)
> 
> I think it makes sense to release anyway since we are using the version
> numbers of SC for the tarballs (which might not be a good idea), but i would
> feel confused if this happens
> 
> 4.9.0 gets releases of
> kalgebra-4.9.0.tar.xz
> ktuberling-4.9.0.tar.xz
> okular-4.9.0.tar.xz
> 
> 4.9.1 gets releases of
> okular-4.9.1.tar.xz
> 
> 4.9.2 gets releases of
> kalgebra-4.9.2.tar.xz
> ktuberling-4.9.2.tar.xz
> okular-4.9.1.tar.xz
> 
> As a user i'd think, what happened to kalgebra-4.9.1.tar.xz and
> ktuberling-4.9.1.tar.xz ?


One solution would be to release 4.9.1 of ktuberling and kalgebra with KDE SC 
4.9.2 . Since the first number is the app version and the second number is the 
KDE SC Version. Which only look related in this example but on a config 
management scale are unrelated.

I am just wondering about the distros again. Say i release KDE SC 4.9.2 and of 
all our packages only 10% got really changes. I wonder how that affects the 
workload if we force a release of the 90% unchanged ones. Or do they need them 
to be released?

Yes this is a unlikely number but remember with kde frameworks we split up 
kdelibs in a thousand packages. Let them mature a bit and we will get there.

For now i will ignore that. The script should be able to handle both cases and 
configurably so.

I think we have talked about everything i wanted to talk about. I will start 
with the release building script.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Michael Jansen
> I do not disagree here, BUT have in mind that since we have private packages
> (used/tested by distro packagers before the release actually happens) so
> YOU is a broad term including the packagers.
> 
> > For KDE would say someone else should decide. We could make a release
> > 4.8.80.1 if we have to repackage stuff. But the packagers distros should
> > give input here. I think they should say what is the easiest for them to
> > handle.
> 
> I'm sure having a micro release is going to break their scripts that just
> expect 3 numbers.

I really would like to have some input of real packagers here. I am inclined 
to say if noone speaks up now they have to live with whatever we come up 
afterwards. I am not caring for people who only complain after stuff is done 
when they kept silent while it was discussed and designed.

INPUT guys. NOW.

> > I am btw. wondering that noone objected yet to this. I seem to remember
> > someone was unhappy about dirk branching some 4.8.x release. I don't
> > remember where and why.
> 
> No, Dirk didn't branch any release, he created a 4.8.x branch, which doesn't
> make sense since KDE/4.8 branch is exactly that.

OK.

> 
> What i'm saying is create a 4.8.80 branch where we can cherry-pick the
> needed fixes for re-packaging 4.8.80 because right now this can happen
> 
> Imagine the 4.10 Beta 1 release in a few months, current behaviour would be
>  * Package 4.9.80 from master branch
>  * People keep adding fixes and whatnot to master
>  * You realize there's some compile problem in platform X
>  * You need to repackage 4.9.80 to include the fix, but since you have no
> 4.9.80 branch you have two options:
>- Update wholesale to the mater branch including not only the fix but all
> the other commits too
>- Manually include the fix in the tarball, making git tagging impossible
> since there's no hash commit anymore with the contents you are releasing
> 
> If we create a 4.9.80 branch this issue is fixed, since you cherry-pick
> there and re-create the tarball.

Exactly what i had in mind. The only thing left to decide is the name of the 
recreated tarball.

> > > > 2. Solution: Lock the repo (A no go in my opinion)
> > > 
> > > Yeah, locking kills babies
> > > 
> > > > And a little problem. The feasability of beeing able to build our
> > > > software
> > > > before packaging. I already have a solution to build the packages with
> > > > build- tool as a test. But no idea yet how to combine build-tool with
> > > > this
> > > > script unless i add this into build-tool. And the admins would like to
> > > > have
> > > > python. Not ruby. And build-tool would not mash with the idea to use
> > > > jenkins to trigger the releases.
> > > 
> > > "this script" == maven?
> > 
> > I will not use maven. I just steal some workflow there. This script is the
> > script which we currently try to hammer out how it should work.
> 
> Not sure I see the problem then, can't you just invoke build-tool from the
> script that you/us are creating?

I hope so. There will be some need for twisting and matching. Because build-
tool has a different use case. But since i have quite some experience now with 
doing that kind of scripts i can probably come up with a poor mans build-tool 
in python that has the minimum features required.

- Build everything in the right order
- Build just one module
- Keep logfiles in a central place
 - Maintain the environment so the actual build-machine does not matter.
 - Work over problems and record a overall state at the end.

> > But that probably breaks
> > 
> > ~/ws/src/KDE/kdelibs : git describe
> > v4.8.90-26-g1dd5c9d
> > 
> > Which i personally do not care about. I won't stop doing the right thing
> > because it is inconvenient.
> 
> I'm not a git knowledgeable person, what would exactly break and why?


AFAIK that reports how far away you are from the last tag. I have no idea if 
this jumps over branches following merges or if the tag HAS TO BE in the 
straight history of your current version.

The example given means i am on a version that is a successor of v4.8.90. I 
have exactly 26 commits on top of that. The 'g' is for git and the rest the 
commit id.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-07-03 Thread Michael Jansen

> > The last step is done in maven because the support something called
> > snapshot release which means their version looks like
> > 4.7.1-20120621_151400. I think it could make sense to support that
> > too. Stuff build from master or branch would be easily
> > distuinguishable from really released stuff.
> 
> If you're suggesting to use -.tar.xz tarballs,
> then please forget that. That may not affect binary distributions, but
> it affects source distributions.
> Source distributions really appreciate consistent and *predictable*
> names and URLs.
> 

I can not see where you got the impression that i would like to do that for 
major, minor or patch release. Standard KDE releases will always have real 
version numbers like today,

If you have a problem with us setting up weekly snapshots in that format, then 
you may have a point because i am thinking about that use case. Afaik some 
distros provide weekly snapshots straight from our branches. If our release 
system is fully scripted we could make weekly snapshot releases and ask them 
to use those. They might look like that. Or perhaps have the git or subversion 
number somewhere in the name.

IF we really do that.

I think we did it for a time. At least i remember some " a new snow storm, a 
new snapshot" commits by dirk. But no idea how they got released/packaged.

Mike

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-30 Thread Albert Astals Cid
El Dimecres, 27 de juny de 2012, a les 17:39:03, vau escriure:
> On Monday, June 25, 2012 01:16:05 AM Albert Astals Cid wrote:
> > That works fine for me, though unfortunately we usually have to re-package
> > some tarballs due to fixes that are needed into the release. How do you
> > fit
> > this particularity into this way of working?
> 
> With my config manager head on i say "NEVER rerelease a version". Which in
> our case includes everything that has been downloaded/used by anone not you
> (You=Packager).

I do not disagree here, BUT have in mind that since we have private packages 
(used/tested by distro packagers before the release actually happens) so YOU 
is a broad term including the packagers.

> For KDE would say someone else should decide. We could make a release
> 4.8.80.1 if we have to repackage stuff. But the packagers distros should
> give input here. I think they should say what is the easiest for them to
> handle.

I'm sure having a micro release is going to break their scripts that just 
expect 3 numbers.

> > > I see one problem. As you can see the changed version information is
> > > only
> > > committed AFTER build and test in this setup. That can take quite some
> > > time. In a project as big as ours that opens the possibility that during
> > > that time some else commits a change. Which makes it impossible for the
> > > script to commits its change.
> > > 
> > > 1. Solution: Branch. The Script could create a branch for the release.
> > 
> > Creating a branch for release would also probably "fix" the problem i
> > spoke
> > in the previous paragraph
> 
> You mean the repackaging?

Yes.

> I am btw. wondering that noone objected yet to this. I seem to remember
> someone was unhappy about dirk branching some 4.8.x release. I don't
> remember where and why.

No, Dirk didn't branch any release, he created a 4.8.x branch, which doesn't 
make sense since KDE/4.8 branch is exactly that.

What i'm saying is create a 4.8.80 branch where we can cherry-pick the needed 
fixes for re-packaging 4.8.80 because right now this can happen

Imagine the 4.10 Beta 1 release in a few months, current behaviour would be
 * Package 4.9.80 from master branch
 * People keep adding fixes and whatnot to master
 * You realize there's some compile problem in platform X
 * You need to repackage 4.9.80 to include the fix, but since you have no 
4.9.80 branch you have two options:
   - Update wholesale to the mater branch including not only the fix but all 
the other commits too
   - Manually include the fix in the tarball, making git tagging impossible 
since there's no hash commit anymore with the contents you are releasing

If we create a 4.9.80 branch this issue is fixed, since you cherry-pick there 
and re-create the tarball.

> > > 2. Solution: Lock the repo (A no go in my opinion)
> > 
> > Yeah, locking kills babies
> > 
> > > And a little problem. The feasability of beeing able to build our
> > > software
> > > before packaging. I already have a solution to build the packages with
> > > build- tool as a test. But no idea yet how to combine build-tool with
> > > this
> > > script unless i add this into build-tool. And the admins would like to
> > > have
> > > python. Not ruby. And build-tool would not mash with the idea to use
> > > jenkins to trigger the releases.
> > 
> > "this script" == maven?
> 
> I will not use maven. I just steal some workflow there. This script is the
> script which we currently try to hammer out how it should work.

Not sure I see the problem then, can't you just invoke build-tool from the 
script that you/us are creating?

> 
> > > 4. Allow the script to maintain the version increase. We have to decide
> > > how
> > > to solve the race condition inherent in this.
> > 
> > Don't understand what you mean by this.
> 
> The race condition here is the part where i talked about the script checking
> out some sources. Working for two hours (compiling, testing, packaging) and
> then wanting to commit its changes. When someone else committed something
> in that time it cannot do that on our KDE/4.x branch. The solution i prefer
> would be to create a KDE/4.x.3 branch and commit there.

That works for me.

> But that probably breaks
> 
> ~/ws/src/KDE/kdelibs : git describe
> v4.8.90-26-g1dd5c9d
> 
> Which i personally do not care about. I won't stop doing the right thing
> because it is inconvenient.

I'm not a git knowledgeable person, what would exactly break and why?

> 
> > In general it seems a very well though out proposal, i don't see any
> > obvious problem in what you are describing.
> > 
> > One thing that is problematic with the current build scripts is the need
> > of
> > having up to date meinproc+kdoctools to build the packages that come after
> > kdelibs, do you think that'd be an issue?
> 
> Not really. Because this script will not care. It only releases for now. 

Sure, it only does releases, but our releases include running meinproc right 
now to create the index cache files

Re: Release Script

2012-06-30 Thread Albert Astals Cid
(Sorry sent too early)

El Dissabte, 30 de juny de 2012, a les 15:12:06, Albert Astals Cid va 
escriure:
> El Dimecres, 27 de juny de 2012, a les 17:21:28, Michael Jansen va escriure:
> > On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > > If we really want to decouple our releases and be more flexible with
> > > > > doing
> > > > > them i consider this change a requirement for any decision in that
> > > > > regard.
> > > > > 
> > > > > 
> > > > > 
> > > > > Each and every module has to have its own version number build in. I
> > > > > guess
> > > > > with the frameworks branch much of kdelibs already got that change
> > > > > (no
> > > > > idea
> > > > > really, anyone with input?). But we have to do the same with the
> > > > > rest
> > > > > of
> > > > > our modules.
> > > > 
> > > > No idea about frameworks. David? Kevin?
> > > 
> > > This is partly still under discussion.
> > > 
> > > However the currently implemented solution is that each framework has a
> > > versions number, but that version number can be upgraded in all
> > > frameworks
> > > at the same time, using a script.
> > > 
> > > A future framework on top of all others, could provide the version
> > > number
> > > for all apps, much like the current kdeversion.h. Basically it would be
> > > the
> > > "SC" number, and not the version number of the libs themselves, as is
> > > currently the case.
> > 
> > But that SC number would be a lie. Because you only assume all modules are
> > installed in the versions that were release as SC X.Y . You have no idea
> > if
> > the user or distro uses older or newer versions for some libraries,
> > modules
> > or apps. So that number has no information value. Perhaps some marketing
> > value. But in bug reports it is useless.
> > 
> > Do we release kdelibs as ONE package. Or do we plan to release many small
> > packages?
> > 
> > If each library gets released standalone. What if whe make the kde sc
> > release 4.10.7. I assume only 70% of all libraries got commits since
> > 4.10.6
> > because stuff is pretty stable by now (7th update). Do we still release
> > ALL
> > libs or only those that got changed? Does this make a difference for our
> > packagers? Does it make it more difficult or more easy? So is that a
> > feature we want or not?
> > 
> > The same naturally goes for stuff like kdeedu now that it split. What if
> > some application got no commits since the last minor release. Make a
> > release anyway or skip it? For major releases i guess making a package
> > anyway makes sense. Or not?

Speaking in the apps side (not frameworks)

I think it makes sense to release anyway since we are using the version
numbers of SC for the tarballs (which might not be a good idea), but i would
feel confused if this happens

4.9.0 gets releases of
kalgebra-4.9.0.tar.xz
ktuberling-4.9.0.tar.xz
okular-4.9.0.tar.xz

4.9.1 gets releases of
okular-4.9.1.tar.xz

4.9.2 gets releases of
kalgebra-4.9.2.tar.xz
ktuberling-4.9.2.tar.xz
okular-4.9.1.tar.xz

As a user i'd think, what happened to kalgebra-4.9.1.tar.xz and 
ktuberling-4.9.1.tar.xz ?

On the other hand we might want to use the *real* version of the application 
and not of the SC, then it might make sense to skip if no changes happen.

Cheers,
  Albert
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-30 Thread Albert Astals Cid
El Dimecres, 27 de juny de 2012, a les 17:21:28, Michael Jansen va escriure:
> On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> > On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > > If we really want to decouple our releases and be more flexible with
> > > > doing
> > > > them i consider this change a requirement for any decision in that
> > > > regard.
> > > > 
> > > > 
> > > > 
> > > > Each and every module has to have its own version number build in. I
> > > > guess
> > > > with the frameworks branch much of kdelibs already got that change (no
> > > > idea
> > > > really, anyone with input?). But we have to do the same with the rest
> > > > of
> > > > our modules.
> > > 
> > > No idea about frameworks. David? Kevin?
> > 
> > This is partly still under discussion.
> > 
> > However the currently implemented solution is that each framework has a
> > versions number, but that version number can be upgraded in all frameworks
> > at the same time, using a script.
> > 
> > A future framework on top of all others, could provide the version number
> > for all apps, much like the current kdeversion.h. Basically it would be
> > the
> > "SC" number, and not the version number of the libs themselves, as is
> > currently the case.
> 
> But that SC number would be a lie. Because you only assume all modules are
> installed in the versions that were release as SC X.Y . You have no idea if
> the user or distro uses older or newer versions for some libraries, modules
> or apps. So that number has no information value. Perhaps some marketing
> value. But in bug reports it is useless.
> 
> Do we release kdelibs as ONE package. Or do we plan to release many small
> packages?
> 
> If each library gets released standalone. What if whe make the kde sc
> release 4.10.7. I assume only 70% of all libraries got commits since 4.10.6
> because stuff is pretty stable by now (7th update). Do we still release ALL
> libs or only those that got changed? Does this make a difference for our
> packagers? Does it make it more difficult or more easy? So is that a
> feature we want or not?
> 
> The same naturally goes for stuff like kdeedu now that it split. What if
> some application got no commits since the last minor release. Make a
> release anyway or skip it? For major releases i guess making a package
> anyway makes sense. Or not?

I think it makes sense to release anyway since we are using the version 
numbers of SC for the tarballs (which might not be a good idea), but i would 
feel confused if this happens

4.9.0 gets releases of
kalgebra-4.9.0.tar.xz
ktuberling-4.9.0.tar.xz
okular-4.9.0.tar.xz

4.9.1 gets releases of
okular-4.9.1.tar.xz



___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-30 Thread Jorge Manuel B. S. Vicetto
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 20-06-2012 19:30, Michael Jansen wrote:
> Hi
> 
> I started to work on some script to help with our release creation
> and studied both dirks and allens scripts for input. But the recent
> discussion and my personal experience in doing releases (working as
> a software configuration manager) made me realize i (or better we)
> should take a step back and think about that process first before
> scripting it.
> 
> This is the chance and perfect time to solve the release problem
> once and for all. There are quite some people aware there is room
> for improvements and there currently is a lot of discussion and
> action going on.



> The last step is done in maven because the support something called
> snapshot release which means their version looks like
> 4.7.1-20120621_151400. I think it could make sense to support that
> too. Stuff build from master or branch would be easily
> distuinguishable from really released stuff.

If you're suggesting to use -.tar.xz tarballs,
then please forget that. That may not affect binary distributions, but
it affects source distributions.
Source distributions really appreciate consistent and *predictable*
names and URLs.



> Mike
> 
> ___ release-team
> mailing list release-team@kde.org 
> https://mail.kde.org/mailman/listinfo/release-team
> 

- -- 
Regards,

Jorge Vicetto (jmbsvicetto) - jmbsvicetto at gentoo dot org
Gentoo- forums / Userrel / Devrel / KDE / Elections / RelEng


-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.19 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBAgAGBQJP7vM1AAoJEC8ZTXQF1qEPmAEQAJFfCdJm9WjaflmoNVR3bhm4
0da4QPTL7PO6+/8aqRTW7PkycWRK9l+NSW3K46XmO3q/hVkiMktp+1CSfOc/bSqG
ppBi8LmLpxNhXxCfqAQezwzHUouS+ZIi2/7l84MJurOy7BTJASb7UTtKtJHSSkS1
/rsQVM+QcMiB2aS34ZyaAgG7czJg3dKvQGf7299gJwITlAILSH/fTCNm3fUW4lQZ
eKri+CnEXYESRKKXGcAsZD1qeLE5OepxHBwA5jpteYthvls9BJ0R3QVR0C+yB9zL
UvedpPp/odnmbubgG/meaAIMY+AhTTj5x3L/jGqRuA67UEUG/ZfnXU77gbsz9e5m
BRxfrIS/0m8jbHWv2LkmIXbfSpG7vBuMgtMOWMQ3kf/0tU+9NZaaSET96Ywt2SDQ
Rdym3ZXb1v9WnQpjHVzJSZky8DK9i5O0ahzrekgjWmyREjY039FY19fQ0ReOYuil
pE40MIv37DHDmKW7YjJw0CijqsoyFdT7KWrWTvZYLhntHSeZ2XGrRM93rGOFYqFC
hrCEsVgVfG/2I2mhnBR6DTSFMmW7Ag2J4SS8wuQ/s90esk7QuYN5J/W1b+zLKCPz
lRq83cgtjf5u7kkZ9j0yFp5Kq1PkuqS8Lkld+y/Ef5KqBCST+AtyG3DITNtbTeaz
phaH34+4Mpq39x/hHbqj
=yls0
-END PGP SIGNATURE-
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-27 Thread Michael Jansen
On Monday, June 25, 2012 01:05:49 PM David Faure wrote:
> On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > > If we really want to decouple our releases and be more flexible with
> > > doing
> > > them i consider this change a requirement for any decision in that
> > > regard.
> > > 
> > > 
> > > 
> > > Each and every module has to have its own version number build in. I
> > > guess
> > > with the frameworks branch much of kdelibs already got that change (no
> > > idea
> > > really, anyone with input?). But we have to do the same with the rest of
> > > our modules.
> > 
> > No idea about frameworks. David? Kevin?
> 
> This is partly still under discussion.
> 
> However the currently implemented solution is that each framework has a
> versions number, but that version number can be upgraded in all frameworks
> at the same time, using a script.
> 
> A future framework on top of all others, could provide the version number
> for all apps, much like the current kdeversion.h. Basically it would be the
> "SC" number, and not the version number of the libs themselves, as is
> currently the case.

But that SC number would be a lie. Because you only assume all modules are 
installed in the versions that were release as SC X.Y . You have no idea if 
the user or distro uses older or newer versions for some libraries, modules or 
apps. So that number has no information value. Perhaps some marketing value. 
But in bug reports it is useless.

Do we release kdelibs as ONE package. Or do we plan to release many small 
packages?

If each library gets released standalone. What if whe make the kde sc release 
4.10.7. I assume only 70% of all libraries got commits since 4.10.6 because 
stuff is pretty stable by now (7th update). Do we still release ALL libs or 
only those that got changed? Does this make a difference for our packagers? 
Does it make it more difficult or more easy? So is that a feature we want or 
not?

The same naturally goes for stuff like kdeedu now that it split. What if some 
application got no commits since the last minor release. Make a release anyway 
or skip it? For major releases i guess making a package anyway makes sense. Or 
not?

-- 
Michael Jansen
http://michael-jansen.biz___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-27 Thread Michael Jansen
On Monday, June 25, 2012 01:16:05 AM Albert Astals Cid wrote:
> That works fine for me, though unfortunately we usually have to re-package
> some tarballs due to fixes that are needed into the release. How do you fit
> this particularity into this way of working?

With my config manager head on i say "NEVER rerelease a version". Which in our 
case includes everything that has been downloaded/used by anone not you 
(You=Packager). 

For KDE would say someone else should decide. We could make a release 4.8.80.1 
if we have to repackage stuff. But the packagers distros should give input 
here. I think they should say what is the easiest for them to handle.

> > I see one problem. As you can see the changed version information is only
> > committed AFTER build and test in this setup. That can take quite some
> > time. In a project as big as ours that opens the possibility that during
> > that time some else commits a change. Which makes it impossible for the
> > script to commits its change.
> > 
> > 1. Solution: Branch. The Script could create a branch for the release.
> 
> Creating a branch for release would also probably "fix" the problem i spoke
> in the previous paragraph

You mean the repackaging?

I am btw. wondering that noone objected yet to this. I seem to remember 
someone was unhappy about dirk branching some 4.8.x release. I don't remember 
where and why.

> > 2. Solution: Lock the repo (A no go in my opinion)
> 
> Yeah, locking kills babies
> 
> > And a little problem. The feasability of beeing able to build our software
> > before packaging. I already have a solution to build the packages with
> > build- tool as a test. But no idea yet how to combine build-tool with this
> > script unless i add this into build-tool. And the admins would like to
> > have
> > python. Not ruby. And build-tool would not mash with the idea to use
> > jenkins to trigger the releases.
> 
> "this script" == maven?

I will not use maven. I just steal some workflow there. This script is the 
script which we currently try to hammer out how it should work.

> > 4. Allow the script to maintain the version increase. We have to decide
> > how
> > to solve the race condition inherent in this.
> 
> Don't understand what you mean by this.

The race condition here is the part where i talked about the script checking 
out some sources. Working for two hours (compiling, testing, packaging) and 
then wanting to commit its changes. When someone else committed something in 
that time it cannot do that on our KDE/4.x branch. The solution i prefer would 
be to create a KDE/4.x.3 branch and commit there.

But that probably breaks

~/ws/src/KDE/kdelibs : git describe
v4.8.90-26-g1dd5c9d

Which i personally do not care about. I won't stop doing the right thing 
because it is inconvenient.


> In general it seems a very well though out proposal, i don't see any obvious
> problem in what you are describing.
> 
> One thing that is problematic with the current build scripts is the need of
> having up to date meinproc+kdoctools to build the packages that come after
> kdelibs, do you think that'd be an issue?

Not really. Because this script will not care. It only releases for now. The 
build-tool recipe i develop for example would take care of that. It could 
download and install the required version before going to work on the release 
packages. Like it can do with soprano, sip, pyqt4, sdo ... .

Btw. the script will only tag if you ask it too. I still remember your work-
flow of packaging stuff a week before the release date and then on release 
date only repackage stuff that got changes during that time. That has to be 
supported by the script.

Mike___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-25 Thread David Faure
On Monday 25 June 2012 01:16:05 Albert Astals Cid wrote:
> > If we really want to decouple our releases and be more flexible with doing
> > them i consider this change a requirement for any decision in that regard.
> >
> > 
> >
> > Each and every module has to have its own version number build in. I guess
> > with the frameworks branch much of kdelibs already got that change (no
> > idea
> > really, anyone with input?). But we have to do the same with the rest of
> > our modules.
> 
> No idea about frameworks. David? Kevin?

This is partly still under discussion.

However the currently implemented solution is that each framework has a 
versions number, but that version number can be upgraded in all frameworks at 
the same time, using a script.

A future framework on top of all others, could provide the version number for 
all apps, much like the current kdeversion.h. Basically it would be the "SC" 
number, and not the version number of the libs themselves, as is currently the 
case.

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Sponsored by Nokia to work on KDE, incl. KDE Frameworks 5

___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-24 Thread Albert Astals Cid
El Dimecres, 20 de juny de 2012, a les 21:30:23, Michael Jansen va escriure:
> Hi

Hi

> 
> I started to work on some script to help with our release creation and
> studied both dirks and allens scripts for input. But the recent discussion
> and my personal experience in doing releases (working as a software
> configuration manager) made me realize i (or better we) should take a step
> back and think about that process first before scripting it.
> 
> This is the chance and perfect time to solve the release problem once and
> for all. There are quite some people aware there is room for improvements
> and there currently is a lot of discussion and action going on.
> 
> The biggest tool out there used by thousands of hobby programmes and big
> corporations to build, release, package, test and deploy stuff is maven.
> While it is not a perfect tool in any sence (Don't ever get me started on
> that) it has some nice little features we should strive to copy. When
> needed i will talk about that.
> 
> WHICH VERSION TO BUILD?
> 
> This is the biggest concern I have with out current release setup. A lot of
> our packages contain no version information apart from the name of the build
> package (kdebase-4.8.3.tgz). I consider that an absolute no go. But the
> thing that strikes me even more wrong is that building kdepim 4.2 against
> kdelibs 4.9 leads to libraries named libakregatorprivate.so.4.9.0 .

Yes, that's very bad

> If we really want to decouple our releases and be more flexible with doing
> them i consider this change a requirement for any decision in that regard.
> 
> Each and every module has to have its own version number build in. I guess
> with the frameworks branch much of kdelibs already got that change (no idea
> really, anyone with input?). But we have to do the same with the rest of our
> modules.

No idea about frameworks. David? Kevin?

> 
> The version has to live in one agreed upon place in all modules we have. The
> release script will know where to look for it, how to parse it, increase
> it. That way it is possible to say build the next minor release and the
> script will do the rest.

If we are going to make releases of different stuff at different times as it 
was suggested i guess this is mandatory.

> 
> Maven works like that:
> 
> Current Version: 4.7.1-SNAPSHOT (in pom.xml) | Task: Build a minor release
> 
> 1. Checkout sources and change 4.7.1-SNAPSHOT in pom.xml to 4.7.1
> 2. Build, run test and other needed stuff.
> 3. If successfully commit the changed version of pom.xml
> 4. Make the tag MY_PROJECT-4.7.1 (or whatever)
> 5. change 4.7.1 in pom.xml to 4.7.2-SNAPSHOT
> 
> The last step is done in maven because the support something called snapshot
> release which means their version looks like 4.7.1-20120621_151400. I think
> it could make sense to support that too. Stuff build from master or branch
> would be easily distuinguishable from really released stuff.

That works fine for me, though unfortunately we usually have to re-package 
some tarballs due to fixes that are needed into the release. How do you fit 
this particularity into this way of working?

> 
> The other thing to notice is that there was exactly one version having the
> released version number. No possibility for any kind of confusion there.
> 
> I see one problem. As you can see the changed version information is only
> committed AFTER build and test in this setup. That can take quite some time.
> In a project as big as ours that opens the possibility that during that
> time some else commits a change. Which makes it impossible for the script
> to commits its change.
> 
> 1. Solution: Branch. The Script could create a branch for the release.

Creating a branch for release would also probably "fix" the problem i spoke in 
the previous paragraph

> 
> 2. Solution: Lock the repo (A no go in my opinion)

Yeah, locking kills babies

> And a little problem. The feasability of beeing able to build our software
> before packaging. I already have a solution to build the packages with
> build- tool as a test. But no idea yet how to combine build-tool with this
> script unless i add this into build-tool. And the admins would like to have
> python. Not ruby. And build-tool would not mash with the idea to use
> jenkins to trigger the releases.

"this script" == maven?

> But i will make sure it is possible to do the release without building (for
> emergencies) by calling just one script.
> 
> WHERE IS THE RELEASE CONFIG?
> 
> We currently have our release configuration outside of our source code.
> Neatly packed away into (currently) the kde-commons subversion module.
> 
> Maven uses a xml file located inside the sources to find out how it is
> supposed to build the package. With configuration i mean
> - the current version number
> - the versioning number scheme,
> - possible hooks into the release process (additional non standard stuff
> to execute during the release process)
> - what to pack
> - what to

Re: Release Script

2012-06-22 Thread Michael Jansen
On Thursday, June 21, 2012 08:44:09 PM Andreas Pakulat wrote:
> Hi,
> 
> On Thu, Jun 21, 2012 at 7:58 PM, Michael Jansen wrote:
> > **
> > 
> > On Wednesday, June 20, 2012 11:56:51 PM Andreas Pakulat wrote:
> > > Hi,
> > > 
> > > 
> > > 
> > > On Wed, Jun 20, 2012 at 9:30 PM, Michael Jansen  > >
> > >wrote:
> > > > 2. Make the necessary build-system changes to use this version
> > 
> > information
> > 
> > > > for the .SO names.
> > > 
> > > IMHO this is wrong, the numbers tagged to the end of a shared-object
> > 
> > thats
> > 
> > > used as a shared library really have nothing to do with the release
> > 
> > version
> > 
> > > number. The number is only used to distinguish compatibility of
> > > different
> > > 
> > > release of the same library.
> > 
> > I do not disagree. But this is how it is currently done unless i am
> > mistaken. Which is certainly possible.
> > 
> > 
> > 
> > So unless someone comes up with a better solution or explains why and how
> > i am wrong i will keep that because i am pretty sure requiring people to
> > manually update the soname for each release is a recipe to disaster and a
> > way to annoy our packagers.
> > 
> > 
> > 
> > But if you have a solution or idea for that? Keep it coming. We could
> > define the soversion too in that configuration file. But how and when to
> > increase? On each major and minor release increase it automatically too?
> > 
> > 
> > 
> > Btw. kdelibs/cmake/modules/KDE4Defaults.cmake:22 ++
> > 
> > > And you cannot really go back to 4.2.0 now that 4.9.0 is going to be
> > > 
> > > released. The only option would be to move forward to 5.2.0. So still no
> > > 
> > > exact match between release-version and soname.
> > 
> > I don't want to go back. kdepim4.x will always use the kdelibs versions
> > for its soname and not its own version. Unless we rerelease it i can't and
> > don't want to change that.
> > 
> > 
> > 
> > So the sonames we are talking of are 4.1x or 5.0 depending on the versions
> > we put the changes live.
> 
> Hmm, I may have to retract here, it seems my mail was led by false
> assumptions based on the shared libs I have here.
> 
> So, I now think that generating the second and third digit of the version
> from a file automatically, so it matches the minor and bugfix version of
> the project that the shared library belongs to is just fine. As far as I
> can see from
> http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html the
> soversion and the first digit of the three-digit version number need to
> match. Since you don't want to update the soversion automatically as it has
> far-reaching consequences to do that, that part should not be
> auto-generated for the VERSION property. So read out minor and bugfix
> version and append that to the SOVERSION property to create a value for
> VERSION in cmake.

And i am a bit confused too. As svuorela pointed out:

objdump -x /kde4/kde/lib64/libkdepim-copy.so.4.8.0 | grep SONAME
  SONAME   libkdepim-copy.so.4

lrwxrwxrwx 1 mjansen users 19 May 23 19:31 
/kde4/kde/lib64/libkdepim-copy.so -> libkdepim-copy.so.4
lrwxrwxrwx 1 mjansen users 23 May 23 19:31
/kde4/kde/lib64/libkdepim-copy.so.4 -> libkdepim-copy.so.4.8.0
-rwxr-xr-x 1 mjansen users 883382 Jun 16 22:32 
/kde4/kde/lib64/libkdepim-copy.so.4.8.0

So i am not so sure about that stuff anymore. Or better i wasn't to start 
with.

Anyway i don't want to change anything there. I just wanted to point out that 
reusing the number from kde4defaults.cmake should not be done for our 
packages.

Each package should have each needed version information itself. Because only 
that makes it possible to skip releases and release independently.

Mike
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-22 Thread Michael Jansen
On Wednesday, June 20, 2012 11:56:51 PM Andreas Pakulat wrote:
> Hi,
> 
> On Wed, Jun 20, 2012 at 9:30 PM, Michael Jansen wrote:
> > 2. Make the necessary build-system changes to use this version information
> > for the .SO names.
> 
> IMHO this is wrong, the numbers tagged to the end of a shared-object thats
> used as a shared library really have nothing to do with the release version
> number. The number is only used to distinguish compatibility of different
> release of the same library.

I do not disagree. But this is how it is currently done unless i am mistaken. 
Which is certainly possible.

So unless someone comes up with a better solution or explains why and how i am 
wrong i will keep that because i am pretty sure requiring people to manually 
update the soname for each release is a recipe to disaster and a way to annoy 
our packagers.

But if you have a solution or idea for that? Keep it coming. We could define 
the soversion too in that configuration file. But how and when to increase? On 
each major and minor release increase it automatically too?

Btw. kdelibs/cmake/modules/KDE4Defaults.cmake:22 ++

> And you cannot really go back to 4.2.0 now that 4.9.0 is going to be
> released. The only option would be to move forward to 5.2.0. So still no
> exact match between release-version and soname.

I don't want to go back. kdepim4.x will always use the kdelibs versions for 
its soname and not its own version. Unless we rerelease it i can't and don't 
want to change that.

So the sonames we are talking of are 4.1x or 5.0 depending on the versions we 
put the changes live.


-- 
Michael Jansen
http://michael-jansen.biz___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-21 Thread Andreas Pakulat
Hi,

On Thu, Jun 21, 2012 at 8:57 PM, Michael Jansen wrote:

> **
>
> On Thursday, June 21, 2012 08:44:09 PM Andreas Pakulat wrote:
>
> > Hi,
>
> >
>
> > On Thu, Jun 21, 2012 at 7:58 PM, Michael Jansen  >wrote:
>
> > > **
>
> > >
>
> > > On Wednesday, June 20, 2012 11:56:51 PM Andreas Pakulat wrote:
>
> > > > Hi,
>
> > > >
>
> > > >
>
> > > >
>
> > > > On Wed, Jun 20, 2012 at 9:30 PM, Michael Jansen <
> i...@michael-jansen.biz
>
> > > >
>
> > > >wrote:
>
> > > > > 2. Make the necessary build-system changes to use this version
>
> > >
>
> > > information
>
> > >
>
> > > > > for the .SO names.
>
> > > >
>
> > > > IMHO this is wrong, the numbers tagged to the end of a shared-object
>
> > >
>
> > > thats
>
> > >
>
> > > > used as a shared library really have nothing to do with the release
>
> > >
>
> > > version
>
> > >
>
> > > > number. The number is only used to distinguish compatibility of
>
> > > > different
>
> > > >
>
> > > > release of the same library.
>
> > >
>
> > > I do not disagree. But this is how it is currently done unless i am
>
> > > mistaken. Which is certainly possible.
>
> > >
>
> > >
>
> > >
>
> > > So unless someone comes up with a better solution or explains why and
> how
>
> > > i am wrong i will keep that because i am pretty sure requiring people
> to
>
> > > manually update the soname for each release is a recipe to disaster
> and a
>
> > > way to annoy our packagers.
>
> > >
>
> > >
>
> > >
>
> > > But if you have a solution or idea for that? Keep it coming. We could
>
> > > define the soversion too in that configuration file. But how and when
> to
>
> > > increase? On each major and minor release increase it automatically
> too?
>
> > >
>
> > >
>
> > >
>
> > > Btw. kdelibs/cmake/modules/KDE4Defaults.cmake:22 ++
>
> > >
>
> > > > And you cannot really go back to 4.2.0 now that 4.9.0 is going to be
>
> > > >
>
> > > > released. The only option would be to move forward to 5.2.0. So
> still no
>
> > > >
>
> > > > exact match between release-version and soname.
>
> > >
>
> > > I don't want to go back. kdepim4.x will always use the kdelibs versions
>
> > > for its soname and not its own version. Unless we rerelease it i can't
> and
>
> > > don't want to change that.
>
> > >
>
> > >
>
> > >
>
> > > So the sonames we are talking of are 4.1x or 5.0 depending on the
> versions
>
> > > we put the changes live.
>
> >
>
> > Hmm, I may have to retract here, it seems my mail was led by false
>
> > assumptions based on the shared libs I have here.
>
> >
>
> > So, I now think that generating the second and third digit of the version
>
> > from a file automatically, so it matches the minor and bugfix version of
>
> > the project that the shared library belongs to is just fine. As far as I
>
> > can see from
>
> > http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html the
>
> > soversion and the first digit of the three-digit version number need to
>
> > match. Since you don't want to update the soversion automatically as it
> has
>
> > far-reaching consequences to do that, that part should not be
>
> > auto-generated for the VERSION property. So read out minor and bugfix
>
> > version and append that to the SOVERSION property to create a value for
>
> > VERSION in cmake.
>
>
>
> And i am a bit confused too. As svuorela pointed out:
>
>
>
> objdump -x /kde4/kde/lib64/libkdepim-copy.so.4.8.0 | grep SONAME
>
> SONAME libkdepim-copy.so.4
>

The tldp link I included has a rather easy to understand explanation close
to the top about this.


> lrwxrwxrwx 1 mjansen users 19 May 23 19:31
>
> /kde4/kde/lib64/libkdepim-copy.so -> libkdepim-copy.so.4
>
> lrwxrwxrwx 1 mjansen users 23 May 23 19:31
>
> /kde4/kde/lib64/libkdepim-copy.so.4 -> libkdepim-copy.so.4.8.0
>
> -rwxr-xr-x 1 mjansen users 883382 Jun 16 22:32
>
> /kde4/kde/lib64/libkdepim-copy.so.4.8.0
>
>
>
> So i am not so sure about that stuff anymore. Or better i wasn't to start
> with.
>

As I said, right now most libs are at BC-version 4 (some kdelibs libs like
kdecore are already at BC version 5) and so far the minor version and a .0
was simply added to get the 'realname' (as tldp puts it).


> Anyway i don't want to change anything there. I just wanted to point out
> that reusing the number from kde4defaults.cmake should not be done for our
> packages.
>
>
>
> Each package should have each needed version information itself. Because
> only that makes it possible to skip releases and release independently.
>

Yes, if releasing projects indepentenly from one another is the goal, then
each needs to maintain its own SOVERSION and VERSION. FWIW some projects
already do this, kdevplatform for example is at SOVERSION 6 now in master
and kdegames also had two BC breakages since 2.0 I believe so it should
also be at 6 (didn't actually check and am not 100% sure).

Andreas
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-21 Thread Andreas Pakulat
Hi,

On Thu, Jun 21, 2012 at 7:58 PM, Michael Jansen wrote:

> **
>
> On Wednesday, June 20, 2012 11:56:51 PM Andreas Pakulat wrote:
>
> > Hi,
>
> >
>
> > On Wed, Jun 20, 2012 at 9:30 PM, Michael Jansen  >wrote:
>
> > > 2. Make the necessary build-system changes to use this version
> information
>
> > > for the .SO names.
>
> >
>
> > IMHO this is wrong, the numbers tagged to the end of a shared-object
> thats
>
> > used as a shared library really have nothing to do with the release
> version
>
> > number. The number is only used to distinguish compatibility of different
>
> > release of the same library.
>
>
>
> I do not disagree. But this is how it is currently done unless i am
> mistaken. Which is certainly possible.
>
>
>
> So unless someone comes up with a better solution or explains why and how
> i am wrong i will keep that because i am pretty sure requiring people to
> manually update the soname for each release is a recipe to disaster and a
> way to annoy our packagers.
>
>
>
> But if you have a solution or idea for that? Keep it coming. We could
> define the soversion too in that configuration file. But how and when to
> increase? On each major and minor release increase it automatically too?
>
>
>
> Btw. kdelibs/cmake/modules/KDE4Defaults.cmake:22 ++
>
>
>
> > And you cannot really go back to 4.2.0 now that 4.9.0 is going to be
>
> > released. The only option would be to move forward to 5.2.0. So still no
>
> > exact match between release-version and soname.
>
>
>
> I don't want to go back. kdepim4.x will always use the kdelibs versions
> for its soname and not its own version. Unless we rerelease it i can't and
> don't want to change that.
>
>
>
> So the sonames we are talking of are 4.1x or 5.0 depending on the versions
> we put the changes live.
>

Hmm, I may have to retract here, it seems my mail was led by false
assumptions based on the shared libs I have here.

So, I now think that generating the second and third digit of the version
from a file automatically, so it matches the minor and bugfix version of
the project that the shared library belongs to is just fine. As far as I
can see from
http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html the
soversion and the first digit of the three-digit version number need to
match. Since you don't want to update the soversion automatically as it has
far-reaching consequences to do that, that part should not be
auto-generated for the VERSION property. So read out minor and bugfix
version and append that to the SOVERSION property to create a value for
VERSION in cmake.

Andreas
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team


Re: Release Script

2012-06-20 Thread Andreas Pakulat
Hi,

On Wed, Jun 20, 2012 at 9:30 PM, Michael Jansen wrote:

>
> 2. Make the necessary build-system changes to use this version information
> for the .SO names.
>

IMHO this is wrong, the numbers tagged to the end of a shared-object thats
used as a shared library really have nothing to do with the release version
number. The number is only used to distinguish compatibility of different
release of the same library.

And you cannot really go back to 4.2.0 now that 4.9.0 is going to be
released. The only option would be to move forward to 5.2.0. So still no
exact match between release-version and soname.

Andreas
___
release-team mailing list
release-team@kde.org
https://mail.kde.org/mailman/listinfo/release-team