release scripts

Frans Englich frans.englich at telia.com
Sun Feb 1 17:28:42 GMT 2004


On Sunday 01 February 2004 17:50, Benjamin Meyer wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> I have noticed me and many others (on and off the list) doing tasks that
> could be done by scripts.  

Fully agreed. I think it will save us a lot of trouble. We need a 
regression/automating framework, and a place where such scripts are run 
periodically.
There must be some unified way of adding/"registering" regtests("regression 
tests"). In case the script can't fix the problem itself(it's an obvious 
s/regexp/regexp/ ie.) the regtest will have to send it's output somewhere. A 
script which runs over all kde modules(checking licenses for example) can't 
just send it to one person(or what do you say, Coolo? :). Perhaps each 
directory relevant for the regtest should contain a file where there's 
contact information for that dir(and if it is recursive, etc.). Perhaps it 
could be extracted from the apidocs. Whom to contact would could also depend 
on the tpe of output(critical vs coding style ie.). When contact persons 
can't be reached it must fallback to another contact(mailinglist, 
maintainer).

I have absolutely no experience in this field, does there already exist such 
software? Are there any plans for this already?

> It might be a good idea in kdesdk to create a 
> directory where scripts can reside that check over cvs for problems.  Some
> scripts that I can think of off the top of my head are:
>
> - -Check to make sure that icons that say they are size YxY really are that
> size.
> - -Check that for every icon foo there is all the required sizes
> (16,32,48...) - -Check every desktop file for duplicate entries and entries
> that are depreciated
> - -Check every desktop file to make sure that the icon that is specified
> exists - -Create a list of classes in kdelibs that aren't documented
> - -Create screenshots of widgets for apidocs (using the ui viewer etc) and
> create list of widgets that don't have screenshots
> - -Check the apidocs for spelling errors (hehe oh the evil!)
> - -Check every file that contains code also contains a license and
> copyright - -XML validator for the KConfigXT files
>
> I am sure that everyone could come up with one or two scripts that would
> validate or create a list of bugs to fix.  What do you all think?  If
> anything it would certainly create an excellent list of simple problems for
> a janitors and would help to reduce the amount of time spent on these
> simple, but repetitive problems.   
> What other scripts could you think of? 

I have a mail on Regression/Automating framework, here's some scripts ideas, 
excluding those you've mentioned:

* Validation of desktop files.
* Checking header files for #ifdef FILE_H
* Checking for AM_CPPFLAGS/INCLUDES
* Checking for kapp.h/kapplication.h (there's some script in kdesdk which does 
something like this)
* Checking API changes.
* Validating XML files, in general.

It would be cool if there were some pattern in how scripts were written. A lot 
of code has an "tests" dir - perhaps it all could be unified and automated.
Despite what people say about regression testing for GUI software there is 
absolutely things that can be tested. If we get a habit of writing tests they 
will quickly add up and make a notable difference(which they do regardless of 
how many they are). 
I'm sure there is people who knows a lot about regression frameworks but I 
think it is important to keep in mind that even small and "obvious" tests are 
important(and that is much the point - verifying the "obvious").

Cheers,

		Frans





More information about the kde-core-devel mailing list