|
Rorso Wizard
Joined: 14 Oct 2000 Posts: 1368
|
Posted: Tue Dec 12, 2006 7:48 am
[1.22] Package library |
Some questions:
1. When I click "Get Latest from Library" only the sample scripts from Zugg are shown(1 item) why? Because I deleted the pkgcache.db. Doesn't cMUD do a full update each time?
2. How do you delete your scripts from the server?
Also I believe that the way you let people remove packages from their *local* library is very bad, because you get a non synchonized copy of the contents of the server. This only cause huge confusions. In my opinion the local package library should always stay as synchronized as possible with the remote copy.
As it is now people probably delete junk scripts they upload, believing they are gone. A possible scenario is an admin uploading a trigger that happens to contain their password and wants it removed. As it is now they would get fooled they have successfully deleted it. As the old script doesnt show up when you press "get latest" you believe that it all went well.
Why would anyone want to delete someones scripts in their *local* library anyway? There are filters to find the scripts you might want to download, and even a search button. It is almost like you let people remove downloads from the website they don't want to see and also not let them revert back(show the old contents) after they have deleted their "local" view. |
|
|
|
Fang Xianfu GURU
Joined: 26 Jan 2004 Posts: 5155 Location: United Kingdom
|
Posted: Tue Dec 12, 2006 8:05 am |
I didn't know that you could delete packages from your local listing. How do you do it?
To delete your own package, just highlight and press delete, I'm told. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Dec 12, 2006 5:56 pm |
CMUD keeps track of the last date you updated the library with an entry in your CMUD.INI file (in the [Server] section, it's called Since=...). So if you remove this item in your INI file or delete the INI file, then it will do a full update. I'll try to add a menu option to perform a Full update for this situation.
You are not supposed to delete the pkgcache.db file. Why did you do that?
I think people are confused about deleting items from the library. First, keep in mind that you can add your own packages to your own local library file without uploading them to the server. So the package library can store two different kinds of packages: local and server.
If you try to delete a server-based package from your library, it will get deleted, but it will reappear the next time you do a Get Updates if that package is updated in the future (or if you do a full update). So you can't really get rid of server-based packages. The reason for the Delete option is to let you remove local packages that you might have added to your local database yourself.
I cannot keep your local library perfectly synchronized with the server. That would require automatted updated, and I don't have the bandwidth on this server to handle sending updates to *everything* whenever they run CMUD. So I can only support the "on demand" method where you have to click the Get Updates button yourself. And I don't want people doing a full update all the time when they don't need to, because that also uses a lot of bandwidth. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Dec 12, 2006 6:22 pm |
OK, my bad. The Delete option doesn't currently remove the package from the server. So yes, this is all very confusing.
So here is what I'm doing for 1.23:
1) In the Edit screen for your package (which you can only view if you are the correct author of the package), there is a new Delete Package From Server button that you can use to remove your package from the server. The server will also check to see if you are the correct author.
2) I have removed the normal Edit/Delete option from the menu since this was just confusing. As Rorso said, there really isn't much reason to delete a package from the list.
3) If you are editing a local package, the Delete Package From Server button in the Edit screen is replaced with Delete Local Package which does the same thing the previous Edit/Delete option did. |
|
|
|
Rorso Wizard
Joined: 14 Oct 2000 Posts: 1368
|
Posted: Tue Dec 12, 2006 7:11 pm |
Zugg wrote: |
CMUD keeps track of the last date you updated the library with an entry in your CMUD.INI file (in the [Server] section, it's called Since=...). So if you remove this item in your INI file or delete the INI file, then it will do a full update. I'll try to add a menu option to perform a Full update for this situation.
You are not supposed to delete the pkgcache.db file. Why did you do that?
|
Quote: |
I think people are confused about deleting items from the library. First, keep in mind that you can add your own packages to your own local library file without uploading them to the server. So the package library can store two different kinds of packages: local and server.
|
How do you store a local package in there, and do they differ in some way from the server packages? So that you know what kind each is. I didn't manage to find this.
Quote: |
And I don't want people doing a full update all the time when they don't need to, because that also uses a lot of bandwidth. |
I am not sure how you send the scripts to the users. Just want to remind you that text is easy to compress and could let you save even more bandwidth. I don't suggest full update here, just reminding how to save even more bandwidth.
Quote: |
2) I have removed the normal Edit/Delete option from the menu since this was just confusing. As Rorso said, there really isn't much reason to delete a package from the list.
3) If you are editing a local package, the Delete Package From Server button in the Edit screen is replaced with Delete Local Package which does the same thing the previous Edit/Delete option did.
|
As Fang Xianfu said in his post you can also remove local copies from the library using the delete button on the keyboard. This is also confusing because the popup messages are quite different(though the functionality appears to be the same):
Menu delete: "Are you sure you wish to remove *package* from your library? [Yes/No]"
Delete button on keyboard: "Delete record? [OK/Cancel]" |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Dec 12, 2006 8:02 pm |
Quote: |
How do you store a local package in there |
When you are in the normal CMUD Package Editor and select Package Properties and then click Add Package to Library, you have just added your package to your local library database. It doesn't get added to the server until you use the Upload Package button.
Quote: |
I am not sure how you send the scripts to the users |
When the user does an Update, then the latest changes are updated in their local copy of the library. Then they click the Install button for the package to download and install it. Or, if they already have it installed and the version of the package has been changed, the Install link changes to an Update link to download the latest version. But this is all driven by the end-user deciding to update their package library list.
Quote: |
Delete button on keyboard: "Delete record? [OK/Cancel]" |
Thanks for mentioning that! That is a function that is built into the database Grid component that I'm using to display the database records, and I was supposed to disable this function. That's why it had a generic message...it's not a message that I coded. I've disabled the Delete keyboard button in 1.23.
The Get All option has been added to the File menu for 1.23. I'm also trying to improve things so that you can tell the library to synchronize itself with the *.pkg files already installed to set the install/uninstall status after doing a full update. |
|
|
|
Rorso Wizard
Joined: 14 Oct 2000 Posts: 1368
|
Posted: Tue Dec 12, 2006 10:06 pm |
Nice. Looking forward to test it once 1.23 is released!
|
|
|
|
|
|