Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: New version of the -parmest- package on SSC


From   [email protected] (William Gould, Stata)
To   [email protected]
Subject   Re: st: New version of the -parmest- package on SSC
Date   Mon, 20 Jan 2003 13:04:17 -0600

Fred Wolfe <[email protected]> writes, 

> Roger's new parmest mad me notice that if I issue the command -ado des
> parmest- (stata 8) the description that follows is of each description for
> each download. In total, that makes 6. Does anyone know how to make Stata
> forget or erase the previous descriptions?

Answer:

-ado uninstall- the earlier versions.  Be sure to -uninstall- the earlier 
versions, not the last one.

Lee Sieswerda <[email protected]> noted, 

> My strategy for dealing with the long list problem has been to forego -ssc
> install, replace- and rather first -ssc uninstall- and then -ssc install-.
> I'm not sure if I'm missing out on something by doing this, but I haven't
> run into any problems yet, and it renders the list pleasantly parsimonious.

What Lee is doing is *RECOMMENDED*.  That said, 

    1.  You do not *NEED TO* -uninstall-.

    2.  It makes no difference whether you do as Lee suggests (-ssc uninstall-
        before -ssc install-) or uninstall later (-ssc install- followed by
        -ado uninstall- later).


Lengthy explanation
-------------------

First, understand that 

    1.  -ssc install- is a variation on -net install-, and 

    2.  -ssc uninstall- is a variation on -ado uninstall-.

So I am going to talk about -net install- and -ado uninstall-.

When we designed -net install-/-ado uninstall-, we realized that there was not
we could could prevent two different users from naming two different packages
with the same name and, moreover, you might want both of them.  Perhaps 

        Jane          writes package      regression
and
        Jacob         writes package      regression 

and one package has nothing to do with the other.  -net install- is up to
dealing with that.  You can install one and then you can install the other.

On the other hand, perhaps 

        Jane          writes package      regression

and later, 

        Jane          updates package     regression

-net install- can deal with that, too.

Moreover, the problems that arise can go well beyond the names.  Perhaps the
names of the packages are different but, even so, they both provides files
that are themselves named the same.  For instance, perhaps 

         Robert        writes package     RA1
                       and included among the materials is usefulsub.ado

         Robert        writes package     RA2
                       and included among the materials is the same 
                       usefulsub.ado

         Marie         writes package     MG
                       and included among the materials is usefulsub.ado, 
                       the same one Robert is using (it was Marie who wrote
                       it in the first place)

Somehow, -net install-/-ado uninstall- has to deal, or try to deal, with all
of these problems.

That the names of two packages is the same is never a problem.  If the files
provided by the two different packages are different, they are in fact
different packages that happen to share the same name.  And even if package
names are different, if filenames are the same, there is a problem.

What -net install-/-ado uninstall- focus on are the names of the components.
Let's pretend we have a two packages named P1 and P2.  The packages contain

        P1:  A.ado  and  B.ado

        P2:  B.ado  and  C.ado

Let's pretend P1 is already installed and now we are aksed to install P2.  The
first thing -net install- notices is that there file B.ado is in common
between the two, and -net install- refuses.  Assume the user specifies -,
replace-.  Then -net install- installs files A.ado and B.ado, and it keeps the
following notes:

        A.ado     --  belongs to package P1
        B.ado     --  belongs to package P1 and belongs to package P2
        C.ado     --  belongs to package P2

If, after installing P2, you -ado uninstall p1-, -ado uninstall- knows to
delete A.ado and it knows *NOT* to delete B.ado, because B.ado will still
belong to package P2 even after P1 is deleted.  -ado uninstall- deletes A.ado
and changes its notes to read:

        B.ado     --  belongs to package P2
        C.ado     --  belongs to package P2

What -, replace- really means is that it is okay to replace components.  It 
does not mean that the entire package is being replaced.  

For instance, let's consider what would happen if you installed P1, resulting 
in the notes

        A.ado     --  belongs to package P1
        B.ado     --  belongs to package P1

and then, later, installed P1 again, perhaps after it was updated.  The new 
A.ado and B.ado would be copied down, and the notes changed to read

        A.ado     --  belongs to package P1 and belongs to package P2
        B.ado     --  belongs to package P1 and belongs to package P2

If you then used -ado uninstall- to eliminate P1, no files would be deleted, 
but the notes would be changed to read

        A.ado     --  belongs to package P2
        B.ado     --  belongs to package P2

This scheme works pretty well.

-- Bill
[email protected]
*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index