1.05
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 46
Peng 1.05
Peng project consists of an AOL Linux dialer. more>>
Peng project consists of an AOL Linux dialer.
Peng is a free program for Linux that sets up a PPP, cable, or DSL connection for AOL or other providers by using a reverse engineered version of the AOL protocol.
It can be used from the command line and is known to work in several countries.
<<lessPeng is a free program for Linux that sets up a PPP, cable, or DSL connection for AOL or other providers by using a reverse engineered version of the AOL protocol.
It can be used from the command line and is known to work in several countries.
Download (0.32MB)
Added: 2007-03-21 License: GPL (GNU General Public License) Price:
949 downloads
KKopy 1.05
KKopy - copy, cut and paste tool for Word that selects sections of text in one click more>>
KKopy is an award winning copy, cut and paste utility for Microsoft Word that selects sections of text or in one click. It avoids the need to highlight the text you want to copy and works out for itself what needs to be copied purely from where you place your cursor on your document. A valuable time saving tool which complements the standard Word Copy and Cut tools. It is extremely easy to use. One quick read of the included help file and you will be using it immediately.
<<less Download (2.30MB)
Added: 2009-04-27 License: Freeware Price:
184 downloads
TxSig 1.05
TxSig is a small signature rotator. more>>
TxSig project is a small signature rotator.
It can randomly pick from a directory of files containing fortunes or quotes. It offers a variety of features such as compatibility with files from fortune. Users can generate their own quote files.
Main features:
- Quotes chosen based on length
- Quotes chosen based on rating
- Multiple configuration files
- Multiple quote/fortune files
- 100% Compatability with standard fortune files
- Drop-in compatability with pine V 4.44
- Optional apending of .signature (or any other file)
- Uses only standard perl modules
- Tastes Good
- Possibly Sexy
Enhancements:
- fixed a problem with creating and updating the data.cnt file
<<lessIt can randomly pick from a directory of files containing fortunes or quotes. It offers a variety of features such as compatibility with files from fortune. Users can generate their own quote files.
Main features:
- Quotes chosen based on length
- Quotes chosen based on rating
- Multiple configuration files
- Multiple quote/fortune files
- 100% Compatability with standard fortune files
- Drop-in compatability with pine V 4.44
- Optional apending of .signature (or any other file)
- Uses only standard perl modules
- Tastes Good
- Possibly Sexy
Enhancements:
- fixed a problem with creating and updating the data.cnt file
Download (0.028MB)
Added: 2006-12-13 License: GPL (GNU General Public License) Price:
1046 downloads
djbdns 1.05
djbdns is a Domain Name System tools. more>>
djbdns is a collection of Domain Name System tools. Security is one of the primary motivations for the development of djbdns.
Every step of the design and implementation has been carefully evaluated from a security perspective. The djbdns package has been structured to minimize the complexity of security-critical code.
dnscache is immune to cache poisoning. It is advisable to use the package as a secure alternative to BIND.
Installation
Like any other piece of software (and information generally), djbdns comes with NO WARRANTY. Exception: See the djbdns security guarantee.
djbdns works only under UNIX. One UNIX flavor, SCO UnixWare, is not supported at this time.
Before installing djbdns, install daemontools 0.70 or above, and install ucspi-tcp.
As you go through the installation and configuration process, please keep notes of exactly what you did and exactly what the computer did. Put the notes on your web pages, and include the URL with any questions that you send to the dns mailing list.
1. If you would like a local copy of these web pages, download the djbdns documentation package and unpack it under under /doc:
gunzip < doc.tar.gz | (cd /; tar -xf -)
Then run slashdoc-merge to create indices such as /doc/commands.html.
2. Download the djbdns package. The latest published djbdns package is djbdns-1.05.tar.gz.
3. Unpack the djbdns package:
gunzip djbdns-1.05.tar
tar -xf djbdns-1.05.tar
cd djbdns-1.05
4. Compile the djbdns programs:
echo gcc -O2 -include /usr/include/errno.h > conf-cc
make
The first line, modifying conf-cc, is necessary for some Linux systems, to work around a Linux bug. It can be skipped under BSD, Solaris, and other systems that comply with IEEE Std 1003.1-1990.
5. As root, install the djbdns programs under /usr/local:
make setup check
6. Report success:
( echo First M. Last; cat `cat SYSDEPS` )
| mail djb-sysdeps@cr.yp.to
Replace First M. Last with your name.
<<lessEvery step of the design and implementation has been carefully evaluated from a security perspective. The djbdns package has been structured to minimize the complexity of security-critical code.
dnscache is immune to cache poisoning. It is advisable to use the package as a secure alternative to BIND.
Installation
Like any other piece of software (and information generally), djbdns comes with NO WARRANTY. Exception: See the djbdns security guarantee.
djbdns works only under UNIX. One UNIX flavor, SCO UnixWare, is not supported at this time.
Before installing djbdns, install daemontools 0.70 or above, and install ucspi-tcp.
As you go through the installation and configuration process, please keep notes of exactly what you did and exactly what the computer did. Put the notes on your web pages, and include the URL with any questions that you send to the dns mailing list.
1. If you would like a local copy of these web pages, download the djbdns documentation package and unpack it under under /doc:
gunzip < doc.tar.gz | (cd /; tar -xf -)
Then run slashdoc-merge to create indices such as /doc/commands.html.
2. Download the djbdns package. The latest published djbdns package is djbdns-1.05.tar.gz.
3. Unpack the djbdns package:
gunzip djbdns-1.05.tar
tar -xf djbdns-1.05.tar
cd djbdns-1.05
4. Compile the djbdns programs:
echo gcc -O2 -include /usr/include/errno.h > conf-cc
make
The first line, modifying conf-cc, is necessary for some Linux systems, to work around a Linux bug. It can be skipped under BSD, Solaris, and other systems that comply with IEEE Std 1003.1-1990.
5. As root, install the djbdns programs under /usr/local:
make setup check
6. Report success:
( echo First M. Last; cat `cat SYSDEPS` )
| mail djb-sysdeps@cr.yp.to
Replace First M. Last with your name.
Download (0.083MB)
Added: 2005-04-26 License: Freeware Price:
1644 downloads
Plosxom 1.05
Plosxom is a blogsoftware written in PHP by Pali Dhar. more>>
Plosxom is a blogsoftware written in PHP by Pali Dhar. The project is a rewrite of phposxom. Blogposts are stored in textfiles, categories are simple directories. Plosxom has a comprehensive plugin api, which allows to add almost any functionality or to replace existing functionality.
Phposxom were itself a php rewrite of blosxom, but the developer has abandoned the project. I am using it, because I cannot run perl where my site is hosted and because it is small. However, the sourcecode of phposxom were nearly unmaintanable, inefficient and bad styled (sorry Robert). Since I use it on an every day basis, I decided to completely rewrite it. Plosxom was born.
Many of the blosxom forks out there have been abandoned too, especially the php ports (there are lots of it). None of them seemed to be a usefull base for me. Most of them justify their decision that if it were developed further it would become too far to existing projects like wordpress and they didnt want to re-invent the wheel.
While I share this view in general, I also see a lot of disadvantages with wordpress: its storage backend cant be replaced. It depends on MySQL, which is the worst database system on the planet. With plosxom you could write a sqlite backend or whatever you like, even a mysql backend. Wordpress is also a "large biest", it contains a lot of source code and thus a lot of problems, especially from the security point of view.
Speaking of security - plosxom were developed with strong security in mind. Since there is almost no cgi input being used in the software, this goal were not difficult to achive. Everything which gets into the script will be filtered for bogus characters. Future attacks are hopefully prevented using this technique.
There is no administration backend delivered with plosxom, because you write textfiles (or upload them) - thats all. Without admin backend, the blog cant be hijacked like most other blogs could be.
The plosxom core engine is very small. In fact, I wrote it in just two days. This sounds like a hell of a crap, but it isnt. Much functionality is provided by plugins, even core functions, such as text file management, is coded as a plugin. Since we are using smarty as our template engine there are endless possibilities to enhance plosxom. You can write a simple plugin along with a simple smarty function and thats it.
For now, plosxom doesnt provide built-in comment support due to security reasons. Instead comments can be outsourced to Haloscan. However, perhaps someone will write a comment plugin some day, who knows.
Enhancements:
- This release comes with two new templates (blog.txt and crystalx) and a couple of some new plugins.
- Several bugs were fixed.
- Templates and plugins can be downloaded separately too.
<<lessPhposxom were itself a php rewrite of blosxom, but the developer has abandoned the project. I am using it, because I cannot run perl where my site is hosted and because it is small. However, the sourcecode of phposxom were nearly unmaintanable, inefficient and bad styled (sorry Robert). Since I use it on an every day basis, I decided to completely rewrite it. Plosxom was born.
Many of the blosxom forks out there have been abandoned too, especially the php ports (there are lots of it). None of them seemed to be a usefull base for me. Most of them justify their decision that if it were developed further it would become too far to existing projects like wordpress and they didnt want to re-invent the wheel.
While I share this view in general, I also see a lot of disadvantages with wordpress: its storage backend cant be replaced. It depends on MySQL, which is the worst database system on the planet. With plosxom you could write a sqlite backend or whatever you like, even a mysql backend. Wordpress is also a "large biest", it contains a lot of source code and thus a lot of problems, especially from the security point of view.
Speaking of security - plosxom were developed with strong security in mind. Since there is almost no cgi input being used in the software, this goal were not difficult to achive. Everything which gets into the script will be filtered for bogus characters. Future attacks are hopefully prevented using this technique.
There is no administration backend delivered with plosxom, because you write textfiles (or upload them) - thats all. Without admin backend, the blog cant be hijacked like most other blogs could be.
The plosxom core engine is very small. In fact, I wrote it in just two days. This sounds like a hell of a crap, but it isnt. Much functionality is provided by plugins, even core functions, such as text file management, is coded as a plugin. Since we are using smarty as our template engine there are endless possibilities to enhance plosxom. You can write a simple plugin along with a simple smarty function and thats it.
For now, plosxom doesnt provide built-in comment support due to security reasons. Instead comments can be outsourced to Haloscan. However, perhaps someone will write a comment plugin some day, who knows.
Enhancements:
- This release comes with two new templates (blog.txt and crystalx) and a couple of some new plugins.
- Several bugs were fixed.
- Templates and plugins can be downloaded separately too.
Download (0.082MB)
Added: 2007-06-24 License: Artistic License Price:
854 downloads
FreeMIS 1.05
FreeMIS project is developing a free and better alternative to the commercial MIS products. more>>
FreeMIS project is developing a free and better alternative to the commercial MIS products. All the FreeMIS files and data are stored on a web server, and the FreeMIS system is accessed via the Internet. Users simply need an Internet connection and a modern web browser (preferrably Firefox, but Internet Explorer 6 and Safari work fine).
Each user has a unique username and password, which grant them access to the system. At present, only teachers can access the system, but the design of FreeMIS is ready for access by any of the stakeholders in the school system - students, parents, governors etc.
At present, FreeMIS is used to write reports to parents on pupil progress. Using FreeMIS, teachers can write reports at a time and place of their own choosing. Some choose to write reports in school, but many now write their reports from home.
Main features:
- Password protected access, to ensure security of data.
- Web-based, so it can be accessed on any computer connected to the Internet, without the need for special software.
- Storage of pupil and staff data
- Storage of class enrollment and course data
- Production of reports to parents/guardians on pupil progress
- Monitoring of pupil progress through a tracking and target setting system, which includes the automatic generation of letters to parents/guardians
- Noting of unexplained absences, which automatically generates a warning email to the school office
The FreeMIS project aims to provide schools with a high quality alternative to the proprietary Management Information Systems that abound in schools in the UK and beyond.
We at the FreeMIS project believe that the best way to create a high quality MIS is to develop it as an Open Source project. This means that the system and the code from which it is built will always be freely available.
At present, FreeMIS only offers a subset of the functionality of a comprehensive MIS. Development is ongoing, however, and FreeMIS has stood the test of being used in a Scottish High School.
Becta has recently published a report highlighting the financial savings possible if schools move towards Open Source alternatives. FreeMIS aims to be part of the package that schools will adopt.
Enhancements:
- Added user/admin_edit screen to simplify administration
- Cleaned up xhtml
- Fixed bug #1497176
- Refactored code to make it more DRY
- Removed historic tables from old PHP version
- Improved admin screen to edit pupil sets
- Increased coverage of unit/functional tests
- Cleared up css for reports, and switched full reports to print on blank page, rather than having fancy hiding of navigation stuff for printing.
- Fixed bug that made reports vanish if pupil was dropped from a pupil set
- Put together all academic_year related details on one form for ease of administration
- Gave Heads of Faculties write access to all faculty reports
<<lessEach user has a unique username and password, which grant them access to the system. At present, only teachers can access the system, but the design of FreeMIS is ready for access by any of the stakeholders in the school system - students, parents, governors etc.
At present, FreeMIS is used to write reports to parents on pupil progress. Using FreeMIS, teachers can write reports at a time and place of their own choosing. Some choose to write reports in school, but many now write their reports from home.
Main features:
- Password protected access, to ensure security of data.
- Web-based, so it can be accessed on any computer connected to the Internet, without the need for special software.
- Storage of pupil and staff data
- Storage of class enrollment and course data
- Production of reports to parents/guardians on pupil progress
- Monitoring of pupil progress through a tracking and target setting system, which includes the automatic generation of letters to parents/guardians
- Noting of unexplained absences, which automatically generates a warning email to the school office
The FreeMIS project aims to provide schools with a high quality alternative to the proprietary Management Information Systems that abound in schools in the UK and beyond.
We at the FreeMIS project believe that the best way to create a high quality MIS is to develop it as an Open Source project. This means that the system and the code from which it is built will always be freely available.
At present, FreeMIS only offers a subset of the functionality of a comprehensive MIS. Development is ongoing, however, and FreeMIS has stood the test of being used in a Scottish High School.
Becta has recently published a report highlighting the financial savings possible if schools move towards Open Source alternatives. FreeMIS aims to be part of the package that schools will adopt.
Enhancements:
- Added user/admin_edit screen to simplify administration
- Cleaned up xhtml
- Fixed bug #1497176
- Refactored code to make it more DRY
- Removed historic tables from old PHP version
- Improved admin screen to edit pupil sets
- Increased coverage of unit/functional tests
- Cleared up css for reports, and switched full reports to print on blank page, rather than having fancy hiding of navigation stuff for printing.
- Fixed bug that made reports vanish if pupil was dropped from a pupil set
- Put together all academic_year related details on one form for ease of administration
- Gave Heads of Faculties write access to all faculty reports
Download (2.2MB)
Added: 2006-06-13 License: GPL (GNU General Public License) Price:
1228 downloads
Pod::TOC 1.05
Pod::TOC is a Perl module to extract a table of contents from a Pod file. more>>
Pod::TOC is a Perl module to extract a table of contents from a Pod file.
SYNOPSIS
This is a Pod::Simple subclass, so it can do the same things.
use Pod::TOC;
my $parser = Pod::TOC->new;
my $toc;
open my($output_fh), ">", $toc;
$parser->output_fh( $output_fh );
$parser->parse_file( $input_file );
This is a Pod::Simple subclass to extract a table of contents from a pod file. It has the same interface as Pod::Simple, and only changes the internal bits.
<<lessSYNOPSIS
This is a Pod::Simple subclass, so it can do the same things.
use Pod::TOC;
my $parser = Pod::TOC->new;
my $toc;
open my($output_fh), ">", $toc;
$parser->output_fh( $output_fh );
$parser->parse_file( $input_file );
This is a Pod::Simple subclass to extract a table of contents from a pod file. It has the same interface as Pod::Simple, and only changes the internal bits.
Download (0.004MB)
Added: 2006-11-29 License: Perl Artistic License Price:
1059 downloads
Sanefile 1.05
Sanefile is a tool to easily and quickly clean and change a large number of filenames. more>>
Sanefile is a tool to easily and quickly clean and change a large number of filenames. The idea started when I started “ripping” my own CD’s and the filenames were all different and full of errors. When I started getting TV downloads from other sources, the issue became a problem.
I had to find an efficient way of changing a large number of filenames. Sanefile was the result. Simple, single-purpose and very efficient at it with total exploitation of Tcl’s rich Regular Expression capabilities.
What this tool is NOT: spy-ware, spam-ware, virus or any other crappy stuff.
With Sanefile, you can use the full power of regular expressions. For instance, imagine that you want to filter off all files starting with a A. To use the just A would remove from the list all the files with A in it. Not the solution. If you use ^A (Carat and A) it means that it has to match A only at the beginning of the text.
More examples:
^text matches "text" in the beginning of the name
text$ matches "text" in the END of the filename
. matches ANY character
[ ] range indicator as in:
[a-z] matches ONE letter "a" to "z"
[a-zA-Z] matches ONE letter "a" to "z" and "A" to "Z"
[0-9] matches ONE digit
[^range] (caret) matches if NOT in the range as in:
[^0-9] matches if it is NOT a digit
* operator for repetition
.* matches everything
[0-9]* multiple digits
[^a-zA-Z0-9]* a bunch of everything BUT a letter or digit
escape operator
t tab
( when you want to match (
. when you want to match .
when you want to match (RARELY DONE! Think why.)
() used to group expressions
ab* a followed with multiple bs
(ab)* multiple ab (different from above!)
^Doors.*([A-Z][0-9]*).*.mp3$ Matches all files starting with Doors, have somewhere in the middle a letter followed by digits and end in ".mp3"
<<lessI had to find an efficient way of changing a large number of filenames. Sanefile was the result. Simple, single-purpose and very efficient at it with total exploitation of Tcl’s rich Regular Expression capabilities.
What this tool is NOT: spy-ware, spam-ware, virus or any other crappy stuff.
With Sanefile, you can use the full power of regular expressions. For instance, imagine that you want to filter off all files starting with a A. To use the just A would remove from the list all the files with A in it. Not the solution. If you use ^A (Carat and A) it means that it has to match A only at the beginning of the text.
More examples:
^text matches "text" in the beginning of the name
text$ matches "text" in the END of the filename
. matches ANY character
[ ] range indicator as in:
[a-z] matches ONE letter "a" to "z"
[a-zA-Z] matches ONE letter "a" to "z" and "A" to "Z"
[0-9] matches ONE digit
[^range] (caret) matches if NOT in the range as in:
[^0-9] matches if it is NOT a digit
* operator for repetition
.* matches everything
[0-9]* multiple digits
[^a-zA-Z0-9]* a bunch of everything BUT a letter or digit
escape operator
t tab
( when you want to match (
. when you want to match .
when you want to match (RARELY DONE! Think why.)
() used to group expressions
ab* a followed with multiple bs
(ab)* multiple ab (different from above!)
^Doors.*([A-Z][0-9]*).*.mp3$ Matches all files starting with Doors, have somewhere in the middle a letter followed by digits and end in ".mp3"
Download (0.007MB)
Added: 2006-12-11 License: Artistic License Price:
1047 downloads
Test::Cmd 1.05
Test::Cmd is a Perl module for portable testing of commands and scripts. more>>
Test::Cmd is a Perl module for portable testing of commands and scripts.
SYNOPSIS
use Test::Cmd;
$test = Test::Cmd->new(prog => program_or_script_to_test,
interpreter => script_interpreter,
string => identifier_string,
workdir => ,
subdir => dir,
match_sub => $code_ref,
verbose => 1);
$test->verbose(1);
$test->prog(program_or_script_to_test);
$test->basename(@suffixlist);
$test->interpreter(script_interpreter);
$test->string(identifier string);
$test->workdir(prefix);
$test->workpath(subdir, file);
$test->subdir(subdir, ...);
$test->subdir([sub, dir], ...);
$test->write(file, read($contents, [subdir, file]);
$test->read(@lines, [subdir, file]);
$test->writable(dir);
$test->writable(dir, $rwflag);
$test->writable(dir, $rwflag, %errors);
$test->preserve(condition, ...);
$test->cleanup(condition);
$test->run(prog => program_or_script_to_test,
interpreter => script_interpreter,
chdir => dir, args => arguments, stdin => pass(condition, &func);
$test->fail(condition);
$test->fail(condition, &func);
$test->fail(condition, &func, $caller);
$test->no_result(condition);
$test->no_result(condition, &func);
$test->no_result(condition, &func, $caller);
$test->stdout;
$test->stdout($run_number);
$test->stderr;
$test->stderr($run_number);
$test->match(@lines, @matches);
$test->match($lines, $matches);
$test->match_exact(@lines, @matches);
$test->match_exact($lines, $matches);
$test->match_regex(@lines, @regexes);
$test->match_regex($lines, $regexes);
$test->diff_exact(@lines, @matches, @output);
$test->diff_exact($lines, $matches, @output);
$test->diff_regex(@lines, @regexes, @output);
$test->diff_regex($lines, $regexes, @output);
sub func {
my ($self, $lines, $matches) = @_;
# code to match $lines and $matches
}
$test->match_sub(&func);
$test->match_sub(sub { code to match $_[1] and $_[2] });
$test->here;
The Test::Cmd module provides a low-level framework for portable automated testing of executable commands and scripts (in any language, not just Perl), especially commands and scripts that interact with the file system.
The Test::Cmd module makes no assumptions about what constitutes a successful or failed test. Attempting to read a file that doesnt exist, for example, may or may not be an error, depending on the software being tested.
Consequently, no Test::Cmd methods (including the new() method) exit, die or throw any other sorts of exceptions (but they all do return useful error indications). Exceptions or other error status should be handled by a higher layer: a subclass of Test::Cmd, or another testing framework such as the Test or Test::Simple Perl modules, or by the test itself.
(That said, see the Test::Cmd::Common module if you want a similar module that provides exception handling, either to use directly in your own tests, or as an example of how to use Test::Cmd.)
In addition to running tests and evaluating conditions, the Test::Cmd module manages and cleans up one or more temporary workspace directories, and provides methods for creating files and directories in those workspace directories from in-line data (that is, here-documents), allowing tests to be completely self-contained. When used in conjunction with another testing framework, the Test::Cmd module can function as a fixture (common startup code for multiple tests) for simple management of command execution and temporary workspaces.
The Test::Cmd module inherits File::Spec methods (file_name_is_absolute(), catfile(), etc.) to support writing tests portably across a variety of operating and file systems.
A Test::Cmd environment object is created via the usual invocation:
$test = Test::Cmd->new();
Arguments to the Test::Cmd::new method are keyword-value pairs that may be used to initialize the object, typically by invoking the same-named method as the keyword.
<<lessSYNOPSIS
use Test::Cmd;
$test = Test::Cmd->new(prog => program_or_script_to_test,
interpreter => script_interpreter,
string => identifier_string,
workdir => ,
subdir => dir,
match_sub => $code_ref,
verbose => 1);
$test->verbose(1);
$test->prog(program_or_script_to_test);
$test->basename(@suffixlist);
$test->interpreter(script_interpreter);
$test->string(identifier string);
$test->workdir(prefix);
$test->workpath(subdir, file);
$test->subdir(subdir, ...);
$test->subdir([sub, dir], ...);
$test->write(file, read($contents, [subdir, file]);
$test->read(@lines, [subdir, file]);
$test->writable(dir);
$test->writable(dir, $rwflag);
$test->writable(dir, $rwflag, %errors);
$test->preserve(condition, ...);
$test->cleanup(condition);
$test->run(prog => program_or_script_to_test,
interpreter => script_interpreter,
chdir => dir, args => arguments, stdin => pass(condition, &func);
$test->fail(condition);
$test->fail(condition, &func);
$test->fail(condition, &func, $caller);
$test->no_result(condition);
$test->no_result(condition, &func);
$test->no_result(condition, &func, $caller);
$test->stdout;
$test->stdout($run_number);
$test->stderr;
$test->stderr($run_number);
$test->match(@lines, @matches);
$test->match($lines, $matches);
$test->match_exact(@lines, @matches);
$test->match_exact($lines, $matches);
$test->match_regex(@lines, @regexes);
$test->match_regex($lines, $regexes);
$test->diff_exact(@lines, @matches, @output);
$test->diff_exact($lines, $matches, @output);
$test->diff_regex(@lines, @regexes, @output);
$test->diff_regex($lines, $regexes, @output);
sub func {
my ($self, $lines, $matches) = @_;
# code to match $lines and $matches
}
$test->match_sub(&func);
$test->match_sub(sub { code to match $_[1] and $_[2] });
$test->here;
The Test::Cmd module provides a low-level framework for portable automated testing of executable commands and scripts (in any language, not just Perl), especially commands and scripts that interact with the file system.
The Test::Cmd module makes no assumptions about what constitutes a successful or failed test. Attempting to read a file that doesnt exist, for example, may or may not be an error, depending on the software being tested.
Consequently, no Test::Cmd methods (including the new() method) exit, die or throw any other sorts of exceptions (but they all do return useful error indications). Exceptions or other error status should be handled by a higher layer: a subclass of Test::Cmd, or another testing framework such as the Test or Test::Simple Perl modules, or by the test itself.
(That said, see the Test::Cmd::Common module if you want a similar module that provides exception handling, either to use directly in your own tests, or as an example of how to use Test::Cmd.)
In addition to running tests and evaluating conditions, the Test::Cmd module manages and cleans up one or more temporary workspace directories, and provides methods for creating files and directories in those workspace directories from in-line data (that is, here-documents), allowing tests to be completely self-contained. When used in conjunction with another testing framework, the Test::Cmd module can function as a fixture (common startup code for multiple tests) for simple management of command execution and temporary workspaces.
The Test::Cmd module inherits File::Spec methods (file_name_is_absolute(), catfile(), etc.) to support writing tests portably across a variety of operating and file systems.
A Test::Cmd environment object is created via the usual invocation:
$test = Test::Cmd->new();
Arguments to the Test::Cmd::new method are keyword-value pairs that may be used to initialize the object, typically by invoking the same-named method as the keyword.
Download (0.030MB)
Added: 2007-02-23 License: Perl Artistic License Price:
978 downloads
cpdetector 1.05
cpdetector project is a small yet clever framework for codepage detection. more>>
cpdetector project is a small yet clever framework for codepage detection.
cpdetector is a small yet clever framework for codepage detection that integrates different strategies. It may be used as a library for third party software that accesses textual data over network.
It also includes a best-practice implementation in form of a command line tool that allows sorting and transforming large collections of documents based on their codepage.
Available strategies include: jchardet (exclusion, frequency analysis, and guessing), detection of the HTML charset property, and detection of the XML encoding declaration.
What is a code page?
At first, a textual document is nothing more than sequences of bits. A computer has to decide, how he can display this data in form of characters (which are identified by the computer as numbers).
A code page - which is also known as charset encoding - maps the raw data of a textual document to characters. The original ASCII code page for example only uses 7 bits of an octet (byte) for deciding the character that is represented thus allowing only to map 128 different characters. In the past memory was expensive and computers most often only had registers and busses for 8 bit.
When a mainframe was conceived it had to be decided, which characters it should support. Physicians and mathematicians for example needed special characters for equations. As a result, a computer often shipped with a special codepage.
<<lesscpdetector is a small yet clever framework for codepage detection that integrates different strategies. It may be used as a library for third party software that accesses textual data over network.
It also includes a best-practice implementation in form of a command line tool that allows sorting and transforming large collections of documents based on their codepage.
Available strategies include: jchardet (exclusion, frequency analysis, and guessing), detection of the HTML charset property, and detection of the XML encoding declaration.
What is a code page?
At first, a textual document is nothing more than sequences of bits. A computer has to decide, how he can display this data in form of characters (which are identified by the computer as numbers).
A code page - which is also known as charset encoding - maps the raw data of a textual document to characters. The original ASCII code page for example only uses 7 bits of an octet (byte) for deciding the character that is represented thus allowing only to map 128 different characters. In the past memory was expensive and computers most often only had registers and busses for 8 bit.
When a mainframe was conceived it had to be decided, which characters it should support. Physicians and mathematicians for example needed special characters for equations. As a result, a computer often shipped with a special codepage.
Download (0.70MB)
Added: 2007-04-21 License: MPL (Mozilla Public License) Price:
918 downloads
Five Chess 1.05
Five Chess is a connect-five board game. more>>
Five Chess is a connect-five board game. Five Chess is released under the terms of GNU General Public License version 2.
It was initially developed from a qt Tic-Tac-Toe example.
Main features:
- 4 ways to play -- Human vs Human, AI vs Human, Human vs AI, AI vs AI
- 6 board sizes available -- 9X9 to 19X19
- Save Played games
- View played games
- Not so smart AI
<<lessIt was initially developed from a qt Tic-Tac-Toe example.
Main features:
- 4 ways to play -- Human vs Human, AI vs Human, Human vs AI, AI vs AI
- 6 board sizes available -- 9X9 to 19X19
- Save Played games
- View played games
- Not so smart AI
Download (0.033MB)
Added: 2007-02-23 License: Freeware Price:
1064 downloads
Hash::Type 1.05
Hash::Type module contains pseudo-hashes as arrays tied to a type (list of fields). more>>
Hash::Type module contains pseudo-hashes as arrays tied to a "type" (list of fields).
SYNOPSIS
use Hash::Type;
# create a Hash::Type
my $personType = new Hash::Type(qw(firstname lastname city));
# create and populate some hashes tied to $personType
tie %wolfgang, $personType, "wolfgang amadeus", "mozart", "salzburg";
$ludwig = new $personType ("ludwig", "van beethoven", "vienna");
$jsb = new $personType;
$jsb->{city} = "leipzig";
@{$jsb}{qw(firstname lastname)} = ("johann sebastian", "bach");
# add fields dynamically
$personType->add("birth", "death") or die "fields not added";
$wolfgang{birth} = 1750;
# More complete example : read a flat file with headers on first line
my ($headerline, @datalines) = map {chomp; $_} ;
my $ht = new Hash::Type(split /t/, $headerline);
foreach my $line (@datalines) {
my $data = new $ht(split /t/, $line);
work_with($data->{someField}, $data->{someOtherField});
}
# an alternative to Time::gmtime and Time::localtime
my $timeType = new Hash::Type qw(sec min hour mday mon year wday yday);
my $localtime = new $timeType (localtime);
my $gmtime = new $timeType (gmtime);
print $localtime->{hour} - $gmtime->{hour}, " hours difference to GMT";
# comparison functions
my $byAge = $personType->cmp("birth : -num, lastname, firstname");
my $byNameLength = $personType->cmp(lastname => {length($b) length($a)},
lastname => alpha,
firstname => alpha);
showPerson($_) foreach (sort $byAge @people);
showPerson($_) foreach (sort $byNameLength @people);
# special comparisons : dates
my $US_DateCmp = $myHashType->cmp("someDateField : m/d/y");
my $FR_InverseDateCmp = $myHashType->cmp("someDateField : -d.m.y");
<<lessSYNOPSIS
use Hash::Type;
# create a Hash::Type
my $personType = new Hash::Type(qw(firstname lastname city));
# create and populate some hashes tied to $personType
tie %wolfgang, $personType, "wolfgang amadeus", "mozart", "salzburg";
$ludwig = new $personType ("ludwig", "van beethoven", "vienna");
$jsb = new $personType;
$jsb->{city} = "leipzig";
@{$jsb}{qw(firstname lastname)} = ("johann sebastian", "bach");
# add fields dynamically
$personType->add("birth", "death") or die "fields not added";
$wolfgang{birth} = 1750;
# More complete example : read a flat file with headers on first line
my ($headerline, @datalines) = map {chomp; $_} ;
my $ht = new Hash::Type(split /t/, $headerline);
foreach my $line (@datalines) {
my $data = new $ht(split /t/, $line);
work_with($data->{someField}, $data->{someOtherField});
}
# an alternative to Time::gmtime and Time::localtime
my $timeType = new Hash::Type qw(sec min hour mday mon year wday yday);
my $localtime = new $timeType (localtime);
my $gmtime = new $timeType (gmtime);
print $localtime->{hour} - $gmtime->{hour}, " hours difference to GMT";
# comparison functions
my $byAge = $personType->cmp("birth : -num, lastname, firstname");
my $byNameLength = $personType->cmp(lastname => {length($b) length($a)},
lastname => alpha,
firstname => alpha);
showPerson($_) foreach (sort $byAge @people);
showPerson($_) foreach (sort $byNameLength @people);
# special comparisons : dates
my $US_DateCmp = $myHashType->cmp("someDateField : m/d/y");
my $FR_InverseDateCmp = $myHashType->cmp("someDateField : -d.m.y");
Download (0.008MB)
Added: 2007-08-06 License: Perl Artistic License Price:
813 downloads
NetCARD Config 1.05
NetCARD Config project helps linux users to configure network cards for two ip one for DSL network one for Local Network. more>>
NetCARD Config project helps linux users to configure network cards for two ip one for DSL network one for Local Network.
<<less Download (0.030MB)
Added: 2006-03-27 License: GPL (GNU General Public License) Price:
1315 downloads
Data::Walker 1.05
Data::Walker is a tool for navigating through Perl data structures. more>>
Data::Walker is a tool for navigating through Perl data structures.
SYNOPSIS
Without any explicit objects:
use Data::Walker;
Data::Walker->cli( $data_structure );
Object-style invocation:
use Data::Walker;
my $w = new Data::Walker;
$w->walk( $data_structure );
$w->ls("-al");
$w->pwd;
$w->cli;
Importing methods into the current package:
use Data::Walker qw(:direct);
walk $data_structure;
ls "-al";
pwd;
cli;
This module allows you to "walk" an arbitrary Perl data structure in the same way that you can walk a directory tree from a UNIX command line. It reuses familiar unix commands (such as "ls", "cd", "pwd") and applies these to data structures.
It has a command-line interface which behaves like a UNIX shell. You can also use object-style sytax to invoke the CLI commands from outside the CLI. Data::Walker objects are encapsulated, so that you can hop into and out of a CLI without losing state, and you can have several Data::Walker objects pointing at different structures.
The main functions can also be imported and used directly from within the Perl debuggers CLI.
<<lessSYNOPSIS
Without any explicit objects:
use Data::Walker;
Data::Walker->cli( $data_structure );
Object-style invocation:
use Data::Walker;
my $w = new Data::Walker;
$w->walk( $data_structure );
$w->ls("-al");
$w->pwd;
$w->cli;
Importing methods into the current package:
use Data::Walker qw(:direct);
walk $data_structure;
ls "-al";
pwd;
cli;
This module allows you to "walk" an arbitrary Perl data structure in the same way that you can walk a directory tree from a UNIX command line. It reuses familiar unix commands (such as "ls", "cd", "pwd") and applies these to data structures.
It has a command-line interface which behaves like a UNIX shell. You can also use object-style sytax to invoke the CLI commands from outside the CLI. Data::Walker objects are encapsulated, so that you can hop into and out of a CLI without losing state, and you can have several Data::Walker objects pointing at different structures.
The main functions can also be imported and used directly from within the Perl debuggers CLI.
Download (0.020MB)
Added: 2007-06-30 License: Perl Artistic License Price:
846 downloads
Cache::Cache 1.05
Cache::Cache Perl module contains the Cache interface. more>>
Cache::Cache Perl module contains the Cache interface.
The Cache modules are designed to assist a developer in persisting data for a specified period of time. Often these modules are used in web applications to store data locally to save repeated and redundant expensive calls to remote machines or databases. People have also been known to use Cache::Cache for its straightforward interface in sharing data between runs of an application or invocations of a CGI-style script or simply as an easy to use abstraction of the filesystem or shared memory.
The Cache::Cache interface is implemented by classes that support the get, set, remove, size, purge, and clear instance methods and their corresponding static methods for persisting data across method calls.
USAGE
First, choose the best type of cache implementation for your needs. The simplest cache is the MemoryCache, which is suitable for applications that are serving multiple sequential requests, and wish to avoid making redundant expensive queries, such as an Apache/mod_perl application talking to a database. If you wish to share that data between processes, then perhaps the SharedMemoryCache is appropriate, although its behavior is tightly bound to the underlying IPC mechanism, which varies from system to system, and is unsuitable for large objects or large numbers of objects.
When the SharedMemoryCache is not acceptable, then FileCache offers all of the same functionality with similar performance metrics, and it is not limited in terms of the number of objects or their size. If you wish to maintain a strict limit on the size of a file system based cache, then the SizeAwareFileCache is the way to go. Similarly, the SizeAwareMemoryCache and the SizeAwareSharedMemoryCache add size management functionality to the MemoryCache and SharedMemoryCache classes respectively.
Using a cache is simple. Here is some sample code for instantiating and using a file system based cache.
use Cache::FileCache;
my $cache = new Cache::FileCache( );
my $customer = $cache->get( $name );
if ( not defined $customer )
{
$customer = get_customer_from_db( $name );
$cache->set( $name, $customer, "10 minutes" );
}
return $customer;
<<lessThe Cache modules are designed to assist a developer in persisting data for a specified period of time. Often these modules are used in web applications to store data locally to save repeated and redundant expensive calls to remote machines or databases. People have also been known to use Cache::Cache for its straightforward interface in sharing data between runs of an application or invocations of a CGI-style script or simply as an easy to use abstraction of the filesystem or shared memory.
The Cache::Cache interface is implemented by classes that support the get, set, remove, size, purge, and clear instance methods and their corresponding static methods for persisting data across method calls.
USAGE
First, choose the best type of cache implementation for your needs. The simplest cache is the MemoryCache, which is suitable for applications that are serving multiple sequential requests, and wish to avoid making redundant expensive queries, such as an Apache/mod_perl application talking to a database. If you wish to share that data between processes, then perhaps the SharedMemoryCache is appropriate, although its behavior is tightly bound to the underlying IPC mechanism, which varies from system to system, and is unsuitable for large objects or large numbers of objects.
When the SharedMemoryCache is not acceptable, then FileCache offers all of the same functionality with similar performance metrics, and it is not limited in terms of the number of objects or their size. If you wish to maintain a strict limit on the size of a file system based cache, then the SizeAwareFileCache is the way to go. Similarly, the SizeAwareMemoryCache and the SizeAwareSharedMemoryCache add size management functionality to the MemoryCache and SharedMemoryCache classes respectively.
Using a cache is simple. Here is some sample code for instantiating and using a file system based cache.
use Cache::FileCache;
my $cache = new Cache::FileCache( );
my $customer = $cache->get( $name );
if ( not defined $customer )
{
$customer = get_customer_from_db( $name );
$cache->set( $name, $customer, "10 minutes" );
}
return $customer;
Download (0.034MB)
Added: 2007-05-28 License: Perl Artistic License Price:
879 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above 1.05 search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed