changes towards 0.38

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@208 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
orbiter 20 years ago
parent c8b24569e3
commit 594c591223

@ -3,9 +3,9 @@ javacSource=1.4
javacTarget=1.4 javacTarget=1.4
# Release Configuration # Release Configuration
releaseVersion=0.377 releaseVersion=0.38
releaseFile=yacy_dev_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz releaseFile=yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz
releaseDir=yacy_dev_v${releaseVersion}_${DSTAMP}_${releaseNr} releaseDir=yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}
releaseNr=$Revision$ releaseNr=$Revision$
# defining some file/directory access rights # defining some file/directory access rights

@ -306,6 +306,7 @@
<!-- make clean --> <!-- make clean -->
<target name="clean" description="make clean"> <target name="clean" description="make clean">
<delete> <delete>
<fileset dir="${src}" includes="**/*.class" />
<fileset dir="${build}" includes="**/*.class" /> <fileset dir="${build}" includes="**/*.class" />
<fileset dir="${htroot}" includes="**/*.class" /> <fileset dir="${htroot}" includes="**/*.class" />
</delete> </delete>

@ -35,17 +35,19 @@ You can <a href="http://java.sun.com/j2se/1.4.2/download.html">download the Java
</p> </p>
<p><b>Latest Release:</b> <p><b>Latest Release:</b>
The latest YaCy-release is 0.37.<br> The latest YaCy release is 0.38.<br>
Download <a href="/yacy/release/yacy_v0.37_20050502.tar.gz">generic (all platforms with J2SE 1.4: Linux, Mac OS X, Windows, Solaris) YaCy 0.37</a> here.<br> Download <a href="http://www.yacy.net/yacy/release/yacy_v0.38_20050503.tar.gz">generic (all platforms with J2SE 1.4: Linux, Mac OS X, Windows, Solaris) YaCy 0.38</a> here.<br>
If you want to install YaCy on Windows, you can use the convenient <a href="/yacy/release/yacy_v0.37_20050502.exe">Windows-Installer-Version of YaCy 0.37</a>. If you want to install YaCy on Windows, you can use the convenient <a href="http://www.yacy.net/yacy/release/yacy_v0.38_20050503.exe">Windows-Installer-Version of YaCy 0.37</a>.
</p> </p>
<p>YaCy is also hosted on <a href="http://developer.berlios.de/projects/yacy/">yacy@BerliOS</a> and <a href="http://freshmeat.net/projects/yacyproxy/">yacy@freshmeat.net</a>.
</p>
<!--
<p><table bgcolor="#EEEEEE" width="100%"><tr><td> <p><table bgcolor="#EEEEEE" width="100%"><tr><td>
<fieldset><legend><b>All current and historic releases:</b></legend> <fieldset><legend><b>All current and historic releases:</b></legend>
<font size="1">Please use one of the latest release for production.</font><br> <font size="1">Please use one of the latest release for production.</font><br>
<object classid="f" data="/cgi-bin/sitexplorer.cgi?/yacy/release/" type="text/html" width="100%" height="160" border="2"> <object classid="f" data="/cgi-bin/sitexplorer.cgi?/yacy/release/" type="text/html" width="100%" height="160" border="2">
</object></fieldset></td></tr></table></p><br> </object></fieldset></td></tr></table></p><br>
-->
<h3>4th Step: Proceed With Installation</h3> <h3>4th Step: Proceed With Installation</h3>
<p>Please go to the <a href="Installation.html">installation page</a>. <p>Please go to the <a href="Installation.html">installation page</a>.

@ -28,6 +28,13 @@ globalheader();
<br><p> <br><p>
<ul> <ul>
<li></li> <li></li>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<li></li> <li></li>
<li></li> <li></li>
<li></li> <li></li>
@ -36,6 +43,22 @@ globalheader();
</ul> </ul>
--> -->
<br><p>v0.38_build20050603
<ul>
<li>Enhanced Crawling:
<ul>
<li>There are now 3 different crawl threads: local crawling, global crawl trigger and remote-triggered crawl jobs.</li>
<li>The thread pools can now be configured through the Performance-Menu and a customized number of crawling threads is possible.</li>
<li>Crawling can be paused and resumed.</li>
<li>Changed method of index caching; this speeds up crawling and provides a more economic data structure.</li>
</ul>
</li>
<li>Enhanced Proxy: added transparent proxy support. It is now possible to route http traffic through yacy without setting a proxy configuration in browsers. Example: set your iptables configuration with <br><tt>iptables -t nat -A PREROUTING -p tcp -s 192.168.0.0/16 --dport 80 -j DNAT --to 192.168.0.1:8080</tt></li>
<li>Extended seed-upload methods for principal peers: more configuration options, better extensibility. Added support for scp.</li>
<li>More external parsers. YaCy now supports tar, zip, gzip, bzip, rss, rtf, pdf, doc. To use these parsers, an additional libx-library must be installed which comes separately to the YaCy core distribution.</li>
<li>Enhanced Shutdown procedure: many unnesessary threads had been removed, a shutdown hook had been added. Missing file closings hat been added. The new index caching method flushes the cache faster.</li>
<li>Added support for localization: it is now possible to extend YaCy with localization data; added languages can be accessed with the new Language-Menu</li>
</ul>
<br><p>v0.37_build20050502 <br><p>v0.37_build20050502
<ul> <ul>

@ -20,24 +20,21 @@ globalheader();
<h2>Volunteers</h2> <h2>Volunteers</h2>
<p>YACY's architecture with the PLASMA search engine and <p>YaCy's core architecture with the PLASMA search engine, the http server/proxy, the KELONDRO Database and
the P2P-based distributed index was developed and implemented by Michael Peter Christen. the P2P-based index distribution was designed and implemented by <b>Michael Peter Christen</b>.
<p>However, this project is just at the beginning and needs contributions from other developers, since there are many ideas how this project can move on to a broad range of users. <p>At this time, many contributions have been made:
<p>There are also some long-term targets. If the index-sharing someday works fine, maybe the browser producer like Opera or Konqueror would like to use the p2p-se to index the browser's cache and therefore provide each user with an open-source, free search engine.
<p>At this time, some contributions already have been made. These are:
<ul> <ul>
<li><b>Alexander Schier</b> did much alpha-testing, gave valuable feed-back on my ideas and suggested his own. He suggested and implemented large parts of the popular blacklist feature. He supplied the 'Log'-menu function, the skin-feature, many minor changes, bug fixes and the Windows-Installer - version of yacy. Alex also provides and maintaines the <a href="http://www.suma-lab.de/yacy/">german documentation</a> for yacy.</li> <li><b>Alexander Schier</b> did much alpha-testing, gave valuable feed-back on my ideas and suggested his own. He suggested and implemented large parts of the popular blacklist feature. He supplied the 'Log'-menu function, the skin-feature, many minor changes, bug fixes and the Windows-Installer - version of YaCy. Alex also provides and maintaines the <a href="http://www.suma-lab.de/yacy/">german documentation</a> for yacy.</li>
<li><b>Natali Christen</b> contributed the YACY logo and the design of the Kaskelix mascot.</li> <li><b>Martin Thelian</b> made system-wide performance enhancement by introducing thread pools. He provided a plug-in system for external text parser and integrated many parser libraries such as pdf and word format parsers. Martin also extended and enhanced the http and proxy protocol towards a rfc-clean implementation.</li>
<li><b>Roland Ramthun</b> owns and administrates the <a href="http://www.yacy-forum.de/">German YaCy-Forum</a>. He also cares for correct English spelling and a German translation of the YaCy interface. Roland and other forum participants extended the PHPForum code to make it possible to track develoment feature requests and bug reports with status codes and editor flags.</li>
<li><b>Natali Christen</b> designed the YaCy logo.</li>
<li><b>Thomas</b> designed the Kaskelix mascot.</li>
<li><b>Wolfgang Sander-Beuermann</b>, executive board member of the German search-engine association <a href="http://www.suma-ev.de/">SuMa-eV</a> <li><b>Wolfgang Sander-Beuermann</b>, executive board member of the German search-engine association <a href="http://www.suma-ev.de/">SuMa-eV</a>
and manager of the meta-search-engine <a href="http://www.metager.de">metaGer</a> provided <a href="http://www.suma-lab.de/yacy/">web-space for the german documentation</a> and computing resources for a <a href="http://www.suma-lab.de:8080">demo peer</a>. He also pushed the project by arranging promotional events.</li> and manager of the meta-search-engine <a href="http://www.metager.de">metaGer</a> provided <a href="http://www.suma-lab.de/yacy/">web-space for the german documentation</a> and computing resources for a <a href="http://www.suma-lab.de:8080">demo peer</a>. He also pushed the project by arranging promotional events.</li>
<li><b>Timo Leise</b> suggested and implemented an extension to the blacklist feature: part-of-domain matching.</li> <li><b>Timo Leise</b> suggested and implemented an extension to the blacklist feature: part-of-domain matching.</li>
<li><b>Martin Schwarze</b> wrote a <a href="http://suma-ev.de/downloads/yacy-haz.pdf">artikel/press release "Jedermanns Suchmaschine" about the YACY Projekt</a>; published in the <a href="http://www.haz.de">Hannoversche Allgemeine Zeitung</a>.</li> <li><b>Martin Schwarze</b> wrote a <a href="http://suma-ev.de/downloads/yacy-haz.pdf">artikel/press release "Jedermanns Suchmaschine" about the YACY Projekt</a>; published in the <a href="http://www.haz.de">Hannoversche Allgemeine Zeitung</a>.</li>
<li><b>Matthias Kempka</b> provided a linux-init start/stop - script</li> <li><b>Matthias Kempka</b> provided a linux-init start/stop - script</li>
<li><b>Martin Thelian</b> made system-wide performance enhancement by introducing thread pools. He also provided a plug-in system for external text parser and integrated a pdf and word document parser library.</li>
<li><b>Roland Ramthun</b> owns and administrates the <a href="http://www.yacy-forum.de/">German YaCy-Forum</a>. He also cares for correct spelling in the YaCy interface.</li>
</ul> </ul>
<p>Further volunteers are very welcome. <p>Further volunteers are very welcome.

@ -1,7 +1,7 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html> <html>
<head> <head>
<title>YACY: a freeware caching HTTP Proxy in Java with integrated search engine</title> <title>YaCy: P2P Web Search Engine</title>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1"> <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<!-- <meta name="Content-Language" content="German, Deutsch, de, at, ch"> --> <!-- <meta name="Content-Language" content="German, Deutsch, de, at, ch"> -->
<meta name="Content-Language" content="English, Englisch"> <meta name="Content-Language" content="English, Englisch">
@ -21,13 +21,13 @@ globalheader();
<H1>YACY<br><br> <H1>YACY<br><br>
&nbsp;<FONT SIZE="4">p2p-based distributed Web Search Engine</FONT></H1><br> &nbsp;<FONT SIZE="4">p2p-based distributed Web Search Engine</FONT></H1><br>
<p><i>F&uuml;r eine deutsche Dokumentation sehen sie bitte <a href="http://www.suma-lab.de/yacy/">hier</a> und <a href="http://www.lmtm.de:33333/www/">dort</a></i></p> <p><i>F&uuml;r eine deutsche Dokumentation sehen sie bitte <a href="http://www.suma-lab.de/yacy/">hier</a></p>
<br> <br>
<table border="0" cellspacing="1" cellpadding="3" width="100%"> <table border="0" cellspacing="1" cellpadding="3" width="100%">
<tr><td valign="top" width="40">&nbsp;</td><td> <tr><td valign="top" width="40">&nbsp;</td><td>
The YACY project is a new approach to build a p2p-based Web indexing network.<br><br> The YACY project is a new approach to build a P2P-based Web indexing network.<br><br>
<ul> <ul>
<li>Crawl your own pages or start distributed crawling</li> <li>Crawl your own pages or start distributed crawling</li>
<li>Search your own or the global index</li> <li>Search your own or the global index</li>

@ -54,7 +54,7 @@ Auto pop-up of the Status page is now <b>enabled</b><br>
You are now permanently <b>online</b>. After a short while you should see the effect on the <a href="Status.html">status</a> page.<br> You are now permanently <b>online</b>. After a short while you should see the effect on the <a href="Status.html">status</a> page.<br>
:: ::
<b>The Peer Name is: <font color="#556699">#[peerName]#</font><br> <b>The Peer Name is: <font color="#556699">#[peerName]#</font><br>
Your Peer Language is: <font color="#556699">#[peerLang]#</font><br> <!--Your Peer Language is: <font color="#556699">#[peerLang]#</font><br>-->
:: ::
<b>Seed Settings changed.#(success)#::You are now a principal peer.#(/success)#<br> <b>Seed Settings changed.#(success)#::You are now a principal peer.#(/success)#<br>
:: ::

@ -67,6 +67,7 @@ public class SettingsAck_p {
private static boolean nothingChanged; private static boolean nothingChanged;
/*
public static HashMap langMap(serverSwitch env) { public static HashMap langMap(serverSwitch env) {
String[] ms = env.getConfig("htLocaleLang", "").split(","); String[] ms = env.getConfig("htLocaleLang", "").split(",");
HashMap map = new HashMap(); HashMap map = new HashMap();
@ -77,7 +78,8 @@ public class SettingsAck_p {
} }
return map; return map;
} }
*/
public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) {
// return variable that accumulates replacements // return variable that accumulates replacements
serverObjects prop = new serverObjects(); serverObjects prop = new serverObjects();
@ -224,14 +226,16 @@ public class SettingsAck_p {
} }
if (post.containsKey("generalsettings")) { if (post.containsKey("generalsettings")) {
// set peer language /*
// set peer language
String peerLang = (String) post.get("peerlang"); String peerLang = (String) post.get("peerlang");
if ((peerLang == null) || (peerLang.equals("en"))) peerLang = "default"; if ((peerLang == null) || (peerLang.equals("en"))) peerLang = "default";
HashMap lm = langMap(env); HashMap lm = langMap(env);
if (!(lm.containsKey(peerLang))) peerLang = "default"; if (!(lm.containsKey(peerLang))) peerLang = "default";
env.setConfig("htLocaleSelection", peerLang); env.setConfig("htLocaleSelection", peerLang);
prop.put("info_peerLang", (String) lm.get(peerLang)); prop.put("info_peerLang", (String) lm.get(peerLang));
*/
// check if peer name already exists // check if peer name already exists
String peerName = (String) post.get("peername"); String peerName = (String) post.get("peername");
yacySeed oldSeed = yacyCore.seedDB.lookupByName(peerName); yacySeed oldSeed = yacyCore.seedDB.lookupByName(peerName);

@ -45,11 +45,13 @@ delete the file 'DATA/SETTINGS/httpProxy.conf' in the YaCy application root fold
Using your 'Home Page' and 'File Share' - zones you also have a platform to provide content to your new domain.</b><br> Using your 'Home Page' and 'File Share' - zones you also have a platform to provide content to your new domain.</b><br>
<i>(hint: Choose a name that appears on a web page that tells something about you, visit the page, get the 'senior' status, and you can be found...)</i></td> <i>(hint: Choose a name that appears on a web page that tells something about you, visit the page, get the 'senior' status, and you can be found...)</i></td>
</tr> </tr>
<!--
<tr valign="top"> <tr valign="top">
<td>Peer Language:</td> <td>Peer Language:</td>
<td><input name="peerlang" type="text" size="2" maxlength="2" value="#[peerLang]#"></td> <td><input name="peerlang" type="text" size="2" maxlength="2" value="#[peerLang]#"></td>
<td>Enter 'de' for Deutsch, 'en' for English</td> <!-- make a selection box here --> <td>Enter 'de' for Deutsch, 'en' for English</td>
</tr> </tr>
-->
<tr> <tr>
<td><input type="submit" name="generalsettings" value="submit"></td> <td><input type="submit" name="generalsettings" value="submit"></td>
<td></td> <td></td>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 30 KiB

@ -12,7 +12,7 @@
<tr><td height="4"></td></tr> <tr><td height="4"></td></tr>
<tr><td valign="top"> <tr><td valign="top">
<div align="center" class="Headline"> <div align="center" class="Headline">
YACY&nbsp;-&nbsp;Distributed&nbsp;Web&nbsp;Indexing&nbsp;-&nbsp;Administration YaCy&nbsp;-&nbsp;Distributed&nbsp;Web&nbsp;Indexing&nbsp;-&nbsp;Administration
</div> </div>
</center> </center>
</td></tr> </td></tr>

@ -104,12 +104,14 @@ from 'late' peers to enricht this search result.
<p><b> <p><b>
#[description]# #[description]#
</b><br> </b><br>
#(snipplet)# #(snippet)#
:: ::
<!--
<i> <i>
#[text]# #[text]#
</i><br> </i><br>
#(/snipplet)# -->
#(/snippet)#
<a href="#[url]#">#[urlname]#</a><br> <a href="#[url]#">#[urlname]#</a><br>
#[date]#<br></p> #[date]#<br></p>
<!-- link end --> <!-- link end -->

@ -3,15 +3,15 @@
#----------------------------------------------------------- #-----------------------------------------------------------
#index.html #index.html
P2P\ WEB\ SEARCH=P2P Suche P2P\ WEB\ SEARCH=P2P Web-Suche
#only the Button #only the Button
"Search"="Suchen" "Search"="Suchen"
Enter\ search\ word\ list,\ separated\ by\ space\:=Geben Sie hier die Suchworte getrennt durch Leerzeichen ein: Enter\ search\ word\ list,\ separated\ by\ space\:=Geben Sie hier die Suchworte getrennt durch Leerzeichen ein:
Max.\ number\ of\ results\:=Max. Anzahl Ergebnisse: Max.\ number\ of\ results\:=Max. Anzahl Ergebnisse:
order\ by\:=sortiert nach: order\ by\:=sortiert nach:
# ">" to avoid replacing value= # ">" to avoid replacing value=
>Quality-Date=>Qualität-Datum >Quality-Date=>Qualit&auml;t-Datum
>Date-Quality=>Datum-Qualität >Date-Quality=>Datum-Qualit&auml;t
Resource\:=Quelle: Resource\:=Quelle:
Max.\ search\ time=Max. Suchzeit Max.\ search\ time=Max. Suchzeit
seconds=Sekunden seconds=Sekunden

@ -1,311 +0,0 @@
#!/bin/sh
#
# THIS IS THE YACY MAKE-RELEASE SCRIPT
# YOU CAN USE IT TO COMPILE YOUR OWN RELEASE
# THE TARGET OF THE COMPILATION CAN BE FOUND
# IN THE 'RELEASE' DIRECTORY AFTERWARDS
# -----------------------------------------
# This Software is Copyrighted
# (C) by Michael Peter Christen; mc@anomic.de
# first published on http://www.anomic.de
# Frankfurt, Germany, 2005
# last major change: 08.05.2005
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Using this software in any meaning (reading, learning, copying, compiling,
# running) means that you agree that the Author(s) is (are) not responsible
# for cost, loss of data or any harm that may be caused directly or indirectly
# by usage of this softare or this documentation. The usage of this software
# is on your own risk. The installation and usage (starting/running) of this
# software may allow other people or application to access your computer and
# any attached devices and is highly dependent on the configuration of the
# software which must be done by the user of the software; the author(s) is
# (are) also not responsible for proper configuration and usage of the
# software, even if provoked by documentation provided together with
# the software.
#
# Any changes to this file according to the GPL as documented in the file
# gpl.txt aside this file in the shipment you received can be done to the
# lines that follows this copyright notice here, but changes must not be
# done inside the copyright notive above. A re-distribution must contain
# the intact and unchanged copyright notice.
# Contributions and changes to the program code must be marked as such.
# define variables
version='0.375'
datestr=`date +%Y%m%d`
#release='yacy_v'$version'_'$datestr
release='yacy_dev_v'$version'_'$datestr
extralibs='yacy_libx'
target='RELEASE'
classes='classes'
lib='lib'
libx='libx'
source='source'
doc='doc'
data='DATA'
mainclass='yacy.java'
echo "[`date +%Y/%m/%d\ %H:%M:%S`] Building yacy version $version - $datestr ..."
classpath="$classes"
for N in `ls -1 lib/*.jar`; do classpath="$classpath:$N"; done
for N in `ls -1 libx/*.jar`; do classpath="$classpath:$N"; done
echo "[`date +%Y/%m/%d\ %H:%M:%S`] Using classpath: $classpath"
#classpath='$classes:lib/commons-collections.jar:lib/commons-pool-1.2.jar:libx/PDFBox-0.7.1.jar:libx/log4j-1.2.9.jar:libx/tm-extractors-0.4.jar'
mkdir -p $release
mkdir -p $extralibs
# clean up
echo "[`date +%Y/%m/%d\ %H:%M:%S`] Clean up ..."
rm -Rf $target &> /dev/null
rm -Rf $classes &> /dev/null
rm $doc/release.txt &> /dev/null
rm $source/*.class &> /dev/null
rm $source/de/anomic/kelondro/*.class &> /dev/null
rm $source/de/anomic/tools/*.class &> /dev/null
rm $source/de/anomic/data/*.class &> /dev/null
rm $source/de/anomic/htmlFilter/*.class &> /dev/null
rm $source/de/anomic/http/*.class &> /dev/null
rm $source/de/anomic/net/*.class &> /dev/null
rm $source/de/anomic/plasma/*.class &> /dev/null
rm $source/de/anomic/server/*.class &> /dev/null
rm $source/de/anomic/yacy/*.class &> /dev/null
rm $source/*~ &> /dev/null
rm $source/de/anomic/kelondro/*~ &> /dev/null
rm $source/de/anomic/tools/*~ &> /dev/null
rm $source/de/anomic/data/*~ &> /dev/null
rm $source/de/anomic/htmlFilter/*~ &> /dev/null
rm $source/de/anomic/http/*~ &> /dev/null
rm $source/de/anomic/net/*~ &> /dev/null
rm $source/de/anomic/plasma/*~ &> /dev/null
rm $source/de/anomic/server/*~ &> /dev/null
rm $source/de/anomic/yacy/*~ &> /dev/null
rm doc/*~ &> /dev/null
rm addon/*~ &> /dev/null
rm htroot/*~ &> /dev/null
rm htroot/yacy/*~ &> /dev/null
rm htroot/htdocsdefault/*~ &> /dev/null
rm htroot/env/*~ &> /dev/null
rm htroot/env/grafics/*~ &> /dev/null
rm htroot/env/templates/*~ &> /dev/null
# make classes directory
echo "[`date +%Y/%m/%d\ %H:%M:%S`] make classes directory ..."
mkdir -p $classes
# make release directory
echo "[`date +%Y/%m/%d\ %H:%M:%S`] make release directory ..."
mkdir -p $target
# compile core
echo "[`date +%Y/%m/%d\ %H:%M:%S`] compile core ..."
mv -f $source/$mainclass $source/$mainclass.orig
sed `echo 's/@REPL_DATE@/'$datestr'/'` $source/$mainclass.orig > $source/$mainclass.sed1
sed `echo 's/@REPL_VERSION@/'$version'/'` $source/$mainclass.sed1 > $source/$mainclass
rm $source/$mainclass.sed1
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/tools/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/net/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/htmlFilter/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/server/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/http/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/kelondro/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/data/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/plasma/parser/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/plasma/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/de/anomic/yacy/*.java
javac -classpath $classpath -sourcepath $source -d $classes -g $source/$mainclass
mv -f $source/$mainclass.orig $source/$mainclass
# compile server pages
echo "[`date +%Y/%m/%d\ %H:%M:%S`] compile server pages ..."
javac -classpath $classpath -sourcepath htroot -d htroot -g htroot/*.java
javac -classpath $classpath -sourcepath htroot/yacy -d htroot/yacy -g htroot/yacy/*.java
javac -classpath $classpath -sourcepath htroot/htdocsdefault -d htroot/htdocsdefault -g htroot/htdocsdefault/*.java
# copy classes
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy classes ..."
mkdir -p $release/$classes
cp -R $classes/* $release/$classes/
# copy libs
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy libs ..."
mkdir -p $release/$lib
cp -R $lib/* $release/$lib/
rm -fR `find $release/$lib/ | grep svn`
mkdir -p $extralibs/$libx
cp -R $libx/* $extralibs/$libx/
rm -fR `find $extralibs/$libx/ | grep svn`
# copy configuration files
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy configuration files ..."
cp yacy.init $release
cp yacy.yellow $release
#cp yacy.black $release
cp yacy.blue $release
cp yacy.stopwords $release
cp httpd.mime $release
cp superseed.txt $release
# copy wrappers
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy wrappers ..."
cp startYACY.command $release
cp startYACY.bat $release
cp startYACY_noconsole.bat $release
cp startYACY.sh $release
cp stopYACY.command $release
cp stopYACY.bat $release
cp stopYACY.sh $release
cp killYACY.sh $release
cp makerelease.sh $release
# copy documentation
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy documentation ..."
cp readme.txt $release
cp gpl.txt $release
mkdir -p $release/$doc
mkdir -p $release/$doc/grafics
cp $doc/*.css $release/$doc/
cp $doc/*.js $release/$doc/
cp $doc/*.html $release/$doc/
cp $doc/*.txt $release/$doc/
cp $doc/grafics/*.gif $release/$doc/grafics/
#cp $doc/grafics/*.ico $release/$doc/grafics/
#cp $doc/grafics/*.jpg $release/$doc/grafics/
rm -fR `find $release/$doc/ | grep svn`
# copy source code
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy source code ..."
mkdir -p $release/$source
cp -R $source/* $release/$source/
rm -fR `find $release/$source/ | grep svn`
# copy server pages
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy server pages ..."
mkdir -p $release/htroot
mkdir -p $release/htroot/yacy
mkdir -p $release/htroot/htdocsdefault
mkdir -p $release/htroot/env
mkdir -p $release/htroot/env/grafics
mkdir -p $release/htroot/env/templates
mkdir -p $release/htroot/proxymsg
cp htroot/*.rss $release/htroot/
cp htroot/*.xml $release/htroot/
cp htroot/*.html $release/htroot/
cp htroot/*.java $release/htroot/
cp htroot/*.class $release/htroot/
cp htroot/*.ico $release/htroot/
cp htroot/yacy/*.html $release/htroot/yacy/
cp htroot/yacy/*.java $release/htroot/yacy/
cp htroot/yacy/*.class $release/htroot/yacy/
cp htroot/htdocsdefault/*.html $release/htroot/htdocsdefault/
cp htroot/htdocsdefault/*.java $release/htroot/htdocsdefault/
cp htroot/htdocsdefault/*.class $release/htroot/htdocsdefault/
cp htroot/env/*.css $release/htroot/env/
cp htroot/env/grafics/* $release/htroot/env/grafics/
cp htroot/env/templates/*.template $release/htroot/env/templates/
cp htroot/proxymsg/*.html $release/htroot/proxymsg/
rm -fR `find $release/htroot/ | grep svn`
# copy add-on's
echo "[`date +%Y/%m/%d\ %H:%M:%S`] copy add-on's ..."
mkdir -p $release/addon
cp addon/* $release/addon/
# set access rights
echo "[`date +%Y/%m/%d\ %H:%M:%S`] set access rights ..."
chmod 644 $release/*
chmod 755 $release/htroot
chmod 644 $release/htroot/*
chmod 755 $release/htroot/env
chmod 644 $release/htroot/env/*
chmod 755 $release/htroot/env/grafics
chmod 644 $release/htroot/env/grafics/*
chmod 755 $release/htroot/env/templates
chmod 644 $release/htroot/env/templates/*
chmod 755 $release/htroot/yacy
chmod 644 $release/htroot/yacy/*
chmod 755 $release/htroot/htdocsdefault
chmod 644 $release/htroot/htdocsdefault/*
chmod 755 $release/htroot/proxymsg
chmod 644 $release/htroot/proxymsg/*
chmod 755 $release/$source
chmod 644 $release/$source/*.java
chmod 755 $release/$source/de
chmod 755 $release/$source/de/anomic
chmod 755 $release/$source/de/anomic/*
chmod 755 $release/$source/de/anomic/plasma/parser
chmod 644 $release/$source/de/anomic/kelondro/*.java
chmod 644 $release/$source/de/anomic/tools/*.java
chmod 644 $release/$source/de/anomic/data/*.java
chmod 644 $release/$source/de/anomic/htmlFilter/*.java
chmod 644 $release/$source/de/anomic/http/*.java
chmod 644 $release/$source/de/anomic/net/*.java
chmod 644 $release/$source/de/anomic/plasma/*.java
chmod 644 $release/$source/de/anomic/plasma/parser/*.java
chmod 644 $release/$source/de/anomic/server/*.java
chmod 644 $release/$source/de/anomic/yacy/*.java
chmod 755 $release/$classes
chmod 644 $release/$classes/*
chmod 755 $release/$classes/de
chmod 755 $release/$classes/de/anomic
chmod 755 $release/$classes/de/anomic/*
chmod 644 $release/$classes/de/anomic/kelondro/*.class
chmod 644 $release/$classes/de/anomic/tools/*.class
chmod 644 $release/$classes/de/anomic/data/*.class
chmod 644 $release/$classes/de/anomic/htmlFilter/*.class
chmod 644 $release/$classes/de/anomic/http/*.class
chmod 644 $release/$classes/de/anomic/net/*.class
chmod 644 $release/$classes/de/anomic/plasma/*.class
chmod 644 $release/$classes/de/anomic/server/*.class
chmod 644 $release/$classes/de/anomic/yacy/*.class
chmod 755 $release/$lib
chmod 644 $release/$lib/*
chmod 755 $release/$doc
chmod 644 $release/$doc/*
chmod 755 $release/$doc/grafics
chmod 644 $release/$doc/grafics/*
chmod 755 $release/*.command
chmod 755 $release/*.sh
chmod 755 $release/addon
chmod 755 $extralibs/$libx
chmod 644 $extralibs/$libx/*
# compress files
echo "[`date +%Y/%m/%d\ %H:%M:%S`] compress files ..."
tar -cf $release.tar $release
rm -Rf $release
gzip -9 $release.tar
mv $release.tar.gz $target
tar -cf $extralibs.tar $extralibs
rm -Rf $extralibs
gzip -9 $extralibs.tar
mv $extralibs.tar.gz $target
# make release test file:
# this file must be copied later on to
# www.yacy.net/yacy/
echo "[`date +%Y/%m/%d\ %H:%M:%S`] make release file ..."
echo $version > $doc/release.txt
# finished
echo "[`date +%Y/%m/%d\ %H:%M:%S`] finished."
echo "[`date +%Y/%m/%d\ %H:%M:%S`] created $target/$release.tar.gz"
echo "[`date +%Y/%m/%d\ %H:%M:%S`] created $target/$extralibs.tar.gz"

@ -6,13 +6,15 @@ This is free software, and you are welcome to redistribute it
under certain conditions; see file gpl.txt for details. under certain conditions; see file gpl.txt for details.
--------------------------------------------------------------------------- ---------------------------------------------------------------------------
This is a caching http proxy with integrated search engine This is a P2P-based Web Search Engine
in a p2p environment. and also a http/https proxy.
The complete documentation can be found inside the 'doc' subdirectory The complete documentation can be found inside the 'doc' subdirectory
in this release. Start browsing the manual by opening the index.html in this release. Start browsing the manual by opening the index.html
file with your web browser. file with your web browser.
YOU NEED JAVA 1.4.2 OR LATER TO RUN THIS APPLICATION! PLEASE DOWNLOAD FROM http://java.sun.com YOU NEED JAVA 1.4.2 OR LATER TO RUN THIS APPLICATION!
PLEASE DOWNLOAD JAVA FROM http://java.sun.com
Startup of YaCy: Startup of YaCy:
@ -21,15 +23,15 @@ Startup of YaCy:
- on Mac OS X : double-click startYACY.command (alias possible!) - on Mac OS X : double-click startYACY.command (alias possible!)
- on any other OS : set your classpath to the 'classes' folder - on any other OS : set your classpath to the 'classes' folder
and execute yacy.class, while your current system and execute yacy.class, while your current system
path must target the release directory to access the path must target the release directory to access the
configuration files. configuration files.
Then start to administrate YaCy by using the applications on-line Then start using YaCy with the applications on-line interface:
interface: browse to http://localhost:8080, you see your personal browse to http://localhost:8080 where you can see your personal
proxy configuration and administration interface. search, configuration and administration interface.
Configure your internet connection to use YaCy at port 8080. If you want to use the proxy, simply configure your internet connection
You can also change the default proxy port. to use YaCy at port 8080. You can also change the default proxy port.
If you like to use YaCy not as proxy but only as distributed If you like to use YaCy not as proxy but only as distributed
crawling/search engine, you can do so. crawling/search engine, you can do so.
@ -45,5 +47,5 @@ feel free to ask the author for a business proposal to customize YaCy
according to your needs. We also provide integration solutions if the according to your needs. We also provide integration solutions if the
software is about to be integrated into your enterprise application. software is about to be integrated into your enterprise application.
Germany, Frankfurt a.M., 07.04.2005 Germany, Frankfurt a.M., 03.05.2005
Michael Peter Christen Michael Peter Christen

@ -543,11 +543,11 @@ public class plasmaCrawlLURL extends plasmaURL {
"}"; "}";
} }
public String toString(String snipplet) { public String toString(String snippet) {
// add information needed for remote transport // add information needed for remote transport
String core = corePropList(); String core = corePropList();
if (core == null) return null; if (core == null) return null;
return "{" + core + ",snipplet=" + crypt.simpleEncode(snipplet) + "}"; return "{" + core + ",snippet=" + crypt.simpleEncode(snippet) + "}";
} }
public String toString() { public String toString() {

@ -1218,20 +1218,20 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
*/ */
//addScoreForked(ref, gs, descr.split(" ")); //addScoreForked(ref, gs, descr.split(" "));
//addScoreForked(ref, gs, urlstring.split("/")); //addScoreForked(ref, gs, urlstring.split("/"));
String snipplet; String snippet;
if (urlstring.matches(urlmask)) { //.* is default if (urlstring.matches(urlmask)) { //.* is default
prop.put("results_" + i + "_description", descr); prop.put("results_" + i + "_description", descr);
prop.put("results_" + i + "_url", urlstring); prop.put("results_" + i + "_url", urlstring);
prop.put("results_" + i + "_urlname", urlname); prop.put("results_" + i + "_urlname", urlname);
prop.put("results_" + i + "_date", dateString(urlentry.moddate())); prop.put("results_" + i + "_date", dateString(urlentry.moddate()));
prop.put("results_" + i + "_size", Long.toString(urlentry.size())); prop.put("results_" + i + "_size", Long.toString(urlentry.size()));
snipplet = getSnipplet(url, false, querywords, false); snippet = getSnippet(url, false, querywords, false);
if ((snipplet == null) || (snipplet.length() < 10)) { if ((snippet == null) || (snippet.length() < 10)) {
prop.put("results_" + i + "_snipplet", 0); prop.put("results_" + i + "_snippet", 0);
prop.put("results_" + i + "_snipplet_text", ""); prop.put("results_" + i + "_snippet_text", "");
} else { } else {
prop.put("results_" + i + "_snipplet", 1); prop.put("results_" + i + "_snippet", 1);
prop.put("results_" + i + "_snipplet_text", snipplet); prop.put("results_" + i + "_snippet_text", snippet);
} }
i++; i++;
} }
@ -1299,14 +1299,14 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
String resource = ""; String resource = "";
//plasmaIndexEntry pie; //plasmaIndexEntry pie;
plasmaCrawlLURL.entry urlentry; plasmaCrawlLURL.entry urlentry;
String snipplet; String snippet;
while ((acc.hasMoreElements()) && (i < count)) { while ((acc.hasMoreElements()) && (i < count)) {
urlentry = acc.nextElement(); urlentry = acc.nextElement();
snipplet = getSnipplet(urlentry.url(), false, hashes, true); snippet = getSnippet(urlentry.url(), false, hashes, true);
if ((snipplet == null) || (snipplet.length() < 10)) { if ((snippet == null) || (snippet.length() < 10)) {
resource = urlentry.toString(); resource = urlentry.toString();
} else { } else {
resource = urlentry.toString(snipplet); resource = urlentry.toString(snippet);
} }
if (resource != null) { if (resource != null) {
links.append("resource").append(i).append("=").append(resource).append(serverCore.crlfString); links.append("resource").append(i).append("=").append(resource).append(serverCore.crlfString);
@ -1463,7 +1463,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
} }
} }
private String getSnipplet(URL url, boolean fetchOnline, Set query, boolean queryAreHashes) { private String getSnippet(URL url, boolean fetchOnline, Set query, boolean queryAreHashes) {
if (query.size() == 0) return null; if (query.size() == 0) return null;
plasmaParserDocument document = getDocument(url, fetchOnline); plasmaParserDocument document = getDocument(url, fetchOnline);
if (document == null) return null; if (document == null) return null;
@ -1489,9 +1489,9 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
} }
Integer maxLine = (Integer) hitTable.getMaxObject(); Integer maxLine = (Integer) hitTable.getMaxObject();
if (maxLine == null) return null; if (maxLine == null) return null;
String snipplet = sentences[maxLine.intValue()]; String snippet = sentences[maxLine.intValue()];
if (snipplet.length() > 140) return null; if (snippet.length() > 140) return null;
return snipplet; return snippet;
} }
private TreeMap hashMatrix(String[] sentences) { private TreeMap hashMatrix(String[] sentences) {

@ -81,6 +81,11 @@ public class plasmaURL {
public static final int urlHostLength = 8; // the host as struncated name public static final int urlHostLength = 8; // the host as struncated name
public static final int urlHandleLength = 4; // a handle public static final int urlHandleLength = 4; // a handle
/* nw data fields to become valid after migration
* age of page at time of load
*/
public static String dummyHash; public static String dummyHash;
static { static {
dummyHash = ""; dummyHash = "";

@ -42,7 +42,7 @@
/* /*
an indexContainer is a bag of indexEntries for a single word an indexContainer is a bag of indexEntries for a single word
such an container represents a RWI snipplet: such an container represents a RWI snippet:
it collects a new RWI until it is so big that it should be flushed to either it collects a new RWI until it is so big that it should be flushed to either
- an indexAssortment: collection of indexContainers of same size or - an indexAssortment: collection of indexContainers of same size or
- the backend storage - the backend storage

Loading…
Cancel
Save