Past releases: ~~~~~~~~~~~~~~ -- release 0.5.0 (around 2005.05.10) -- RELEASED at 2005.05.11 -- prepare for 0.6.0 + add hash and keyword packages + make static packages + write at least one non-example app to test gpmi in real (done: rlterm) + finish ghli, add ghli-pas module + creating .deb + working windows-support -- release 0.6.0 (mid summer of 2005) -- RELEASED at 2005.08.31 -- prepare for 0.7.0 + assemble the actual script filename (in gpmi_scripts package) using a callback pointer. If the pointer is NULL, we use the default (which implies the same sprintf line we use now) We pass the info structure so it can use the getextension proc. + move va_* to gpmi level in global event handling + configure.log + finish static stuff (modules) + finish openttd-ai-road support + having a working version of at least these extensions: + console + network base + script modules of the following flavors: (+)TCL, (+)PHP, (+)Perl, (+)Python, (+)Pascal + .h->.list + call wrapgen and listgen trough gpmi-config instead of having symlinks -- release 0.7.0 (December of 2005) -- RELEASED at 2005-12-16 -- release 0.8.0 (march of 2006) + .h->.list patching (-> not needed anymore, listgen takes care of that (nowrap)) + update all documentation inside GPMI (INSTALL, Readme, etc) + remove all references for gpmi_debug (from the core) + remove gpmi_debug interface -> move it to a package (there's a pointer and a fallback fprintf(stderr); a package can hook the pointer) + optimize global event handling (don't malloc/free, save malloced buffers) -> gpmi_malloc_cache + cleanup: remove gpmi_event()() macro + provide a vararg function alternative for gpmi_event(), if possible + config: ar and ranlib should be detected + HOST_CC for cross-compile + .dep: add flag ":s" that marks a dependency subtree static (recommended only for applications) + do not use negative keyword type (internal in gpmi_keywords) Plans changed: (- clean up windows paths handling (see doc dll_paths) ==> we will remove the dll interface) (- remove -static.o support in favor of .a ==> .a can't be the default because we can't guarantee to link a .o unless we make a dummy call from the main app which is not too nice.) (- DLL_PREFIX should be derived from the same place as the pathname for packages on UNIX ==> we will remove the dll interface) (- .dep cleanup: remove DLL_DEP and static deps ==> we will remove the dll interface) -- release 0.9.0 (february of 2007) -- RELEASED at 2007-02-12 + some modules depend on gpmi_extensions; ghli depends on gpmi. The index repository solves this problem. (was: Make config to handle these dependencies.) + become thread safe + configure should be able to set the #ifdefed features + finish the cli module (made it sync; now it works on windows as well) Plans changed: (- be able to force any module in a separate thread - we concluded that the application must create and keep track of threads, GPMI should only be thread-safe) (- write a remote-module (not xml-rpc; because dependencies, moved to gpmi_extensions) -- release 0.9.1 (march of 2007) -- RELEASED at 2007-04-04 + FHS + is ~/.gpmi/gpmi_pkg on -I? + added guile module (k-zed) -- release 0.9.2 -- RELEASED at 2008-01-16 + rewrite make mrproper + be able to select the path from the search paths when loading a lib and/or be able to ask gpmi to try loading a library again, continuing the search from the next path + finish SunOS porting: + totally remove sendfile support as it is not suitable from Linux 2.6.9 + ligpmi.so.0 with -Wl seems to be linux-only + example apps have linking flag problems as well + OSF/Digital UNIX/Tru64 port + configure touches flex/bison output files so they won't get regenerated in a fresh checkout + have a system dependent, configure generated .h file instead of a long list of -DHAVE_* gcc options -- release 0.9.3 -- RELEASED at 2009-05-15 + move the project to repo.hu + minor bugfixes and increased portability Next release: ~~~~~~~~~~~~~ -- prepare for 0.9.4: - add module for libmawk - extend gpmi_scripts to have a diret run_data interface - extend gpmi_scripts so that it allows passing run_data strings instead of pointers Plans for the future: ~~~~~~~~~~~~~~~~~~~~~ -- prepare for 0.9.5: - configure & compile on NetBSD - don't hardwire /bin/bash but use CONFIG_SHELL - don't hardwire awk but use a variable (this is unfortunately earlier than detecting awk) - -ldl should be tested instead of just setting it - basic compatibility with autotools on command line argument level - CFLAGS injection: ./configure --prefix something CFLAGS="-mieee -mcpu=21164a" should work -- prepare for 0.9.6 - INST_PATH sanitising in pkg Makefile.am (there may be legal pathnames that do not translate well into C identifiers) - check whether it's possible to allow events without parameters - revise porting issues for all OS supported by sf compile farm - rename config.h to gpmi_config.h in config/data - rewrite the snprintf/vsnprintf support: - provide gpmi_snprintf in os_dep - on unsafe hosts, use _snprintf or substract one char from the buffer length - the HAVE_* flags should have a separate section in menuconfig - rename HAVE_* flags to GPMI_HAVE_* so we can avoid name collision when an user app includes GPMI detected config .h; gpmi.h should include that file. - rename all tmp* variables in configure -- prepare for 0.9.7 - revise const correctness everywhere -- prepare for 1.0.0 - clean up the remaining memleaks -- prepare for 1.1.0 - API CHANGES! - split all packages into two: the lowlevel package and a wrapper packge which depends on the lowlevel package; script should load the wrapper package - clean up the namespace (no more CantReadThis, everything should be prefixed with gpmi_) ================================= - We need someone for these: - OS dependent packages: - package for OSX - .rpm - gentoo package