update to 0.10.0

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/steptalk/trunk@21703 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Stefan Urbanek 2005-09-05 20:31:08 +00:00
parent 6d2a2ba9c0
commit 3cecc2c163
3 changed files with 36 additions and 125 deletions

View file

@ -1,3 +1,7 @@
2005 Sep 5 Stefan Urbanek
* Version 0.10.0
2005 Sep 5 Stefan Urbanek
* Frameworks/StepTalk: compiler warnings removed

32
NEWS
View file

@ -1,3 +1,35 @@
0.10.0
* introduced new language management (STLanguageManager)
* introduced remote scripting (STRemoteConversation)
* new tool for semi-persistent environments: stenvironment
* added reading from stdin to stexec
* added remote scripting to stshell and stexec
* new conversation methods
* removed tools: stalk, stupdate_languages
* removed depreciated methods from STEnvironment, removed class STLanguage
Notes:
- you can delete */Library/StepTalk/Configuration directories
0.9.1
* Actor class - STActor. For more information see attached example or
Examples/Smalltalk/stactor.st
* fixes after GNUstep-base fixes of NSUnknownKey
0.9.0
* Changed "full scripting" behaviour. When enabled, all classes are
available for scripting, not only those published by frameworks.
* There was done design fix in the Smalltalk language bundle. Instance
variables of script objects were accessed by index, now they are
referenced by names. This allows further creation of STActor
(STScriptObject successor) object that is composed of script methods and
ivars. Also it would be possible to create script methods for any objc
receiver. Ivar access is done through KVC. For more information do not
hesitate to ask.
0.8.2
* Fixed and changed license to LGPL

View file

@ -1,125 +0,0 @@
/**
stupdate_languages.m
Copyright (c) 2002 Free Software Foundation
Written by: Stefan Urbanek <urbanek@host.sk>
Date: 2002
This file is part of the StepTalk project.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#import "STExecutor.h"
#import <StepTalk/StepTalk.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSDebug.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSFileManager.h>
#import <Foundation/NSException.h>
#import <Foundation/NSEnumerator.h>
#import <Foundation/NSProcessInfo.h>
#import <Foundation/NSString.h>
#include <stdio.h>
NSFileManager *fm;
BOOL create_directory(NSString *path)
{
NSString *par = [path stringByDeletingLastPathComponent];
if( [fm fileExistsAtPath:path] )
{
return YES;
}
else if( ![fm fileExistsAtPath:par] )
{
if(!create_directory(par))
{
return NO;
}
}
return [fm createDirectoryAtPath:path attributes:nil];
}
void update_languages(void)
{
NSArray *langNames = [STLanguage allLanguageNames];
NSString *path = STUserConfigPath();
STLanguage *lang;
NSString *langName;
NSEnumerator *enumerator;
NSArray *types;
NSEnumerator *typeenum;
NSString *type;
NSMutableDictionary *typeDict;
NSDictionary *dict;
typeDict = (id)[NSMutableDictionary dictionary];
enumerator = [langNames objectEnumerator];
NSLog(@"Updating languages...");
while( (langName = [enumerator nextObject]) )
{
lang = [STLanguage languageWithName:langName];
types = [[lang infoDictionary] objectForKey:@"STFileTypes"];
typeenum = [types objectEnumerator];
while( (type = [typeenum nextObject]) )
{
[typeDict setObject:langName forKey:type];
}
}
dict = [NSDictionary dictionaryWithObject:typeDict
forKey:@"STFileTypes"];
if(!create_directory(path))
{
NSLog(@"Unable to create directory '%@'", path);
return;
}
path = [path stringByAppendingPathComponent:STLanguagesConfigFile];
[dict writeToFile:path atomically:YES];
if([dict count] == 0)
{
NSLog(@"No StepTalk language bundles found.");
}
}
int main(int argc, const char **argv)
{
NSAutoreleasePool *pool;
pool = [NSAutoreleasePool new];
fm = [NSFileManager defaultManager];
update_languages();
RELEASE(pool);
return 0;
}