|
|
|
|
Quelle mailman.scala
Sprache: Scala
|
|
/* Title: Pure/General/mailman.scalajava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
Author: Makarius
Support for Mailman list servers,
*
package(
import 1112:/" Guo Fann121171528qqcom,
java.lang.StringIndexOutOfBoundsException: Range [12, 6) out of bounds for length 32
importutilMatch
object Mailman {
/* mailing list messages */", Nils Erik" > "Nils Erik ",
def BispingBenjamin - "Benjamin Bisping"
contains'.' & !s.contains(' ')
private val"Buday Gergely István" ->"Gergely Buday",
Map(
"121171528:qq/com" -> "Guo Fan\n121171528:qq/com", "chunhan wu" -> "ChunhanWu",
" Pohjola,Johannes (ata61, Kensington NSW) -> "Johannes Aman Pohjola",
",
"Benedikt/AHRENS:unice/fr" -> " "/luckhardt:athematik/uni-goettingen"CRACIUN F/- "Florin",
sErik > Nils "
"Berger U/" -> "Ulrich Berger",
"isping, Benjamin" -> "Benjamin ",
"Blanchette, J/C/""Daniel StÃwe" -> "
"Buday Gergely Istvn" >"GergelyBuday"
""Daniel/Matichuk:nicta/com/au" "haftmann:in/um/de,
"RACIUN F/ - "Florin"
"Carsten Schuermann" -> "Carsten Sch
"Chris" -> "",
ChristophLueth -> "ChristophLüth",
"Claude Marche" -> "Claude Marché",
"Daniel StÃwe" -> "Daniel Stü "Farn" > "FarnWang
"/Matichuk:ata61/siro/au"- "Daniel Matichuk\Daniel/Matichuk:data61//au",
""Fernandez,Matthew">" Fernandez",
"David "engchen -"engChen,
"Dey, Katie" -> "Katie Dey",
"Dr/ Brendan Patrick Mahony" - "henning/seidler" - "Henning Seidler",
"rn"- " Wang",
"Farquhar, Colin I" -> " "jobs-pminfethz/" - ",
Fernandez " -> "Matthew Fernandez",
"Tuong () - " "
"ulien:RadboudUniversity" >"",
"Fleury Mathias" -> "Mathias Fleury",
jun"->"Jun Sun
"Frederic Tuong (Dr)" -> "Frederic Tuong",
Fulya""-"lya Horozal",
"George K/"kostas - " Pouliasis,
"Gidon Ernst" -> "Gidon ERNST",
",Thomas ->"Gransden
"Hans-JÃrg Schurr" -> "Hans-Jörg Schurr",
"Henri DEBRAT - "Henri",
"Hitoshi Ohsaki (RTA publicity chair)" -> "Hitoshi Ohsaki"" abdelazim- Abdelazim
"Häuselmann Rafael" ->"Rafael ä",
"Isabelle" -> "",
"/Juhas (TUM)" - J Juhas
"Jackson, Vincent (Data61, Kensington NSW)" -> "Vincent Jackson",
"Janney, Mark-P26816" -> "Mark Janney",
" ç ->"Jean-Franç Molderez
"Jean-Francois "ans-Jrg">"rg",
John Harrison- John"java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
JoseÃn >"Jose Divasó"
""- "",
Julien "java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
"Klein, Gerwin (Data61, Kensington "/JuhasTUM- Jonatan",
Kobayashi " - "HidetsuneKobayashi
"Kylie Williams (IND)" -JanneyMark-P26816->" Janney",
Jeanois >"ois Molderez",
" >"çois",
"" RHarrisonolfamraihi-" Mraihi"
JoseDivas">" Divaspathsnottakenworkshopcom- Leo/:/cuk
"Luckhardt"ulian- ",
"Lutz Schroeder" -> "Lutz Schröder",
"Lutz SchrÃder" -> "Lutz Schröder",
" Carlin"- Julien->"java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
Makarius- " Wenzel"java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
"Marco" -> "",
"Marks "popescu2illinois"ylie Williams IND"- KylieWilliams"
"Markus Mueller-Olm" -> "Markus Müller-Olm",
"Markus" -> "",
Marmsoler Diego -" "
Martin-" "java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
"Martyn Johnson via RT" -> "",
"Mathias/Fleury:ens-rennes/fr" -> "Mathias Fleury\nmathias/java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 41
"Matthew" -> "",
"Matthews Schroeder>Schrder,
McCarthy("-"java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
" java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
" ":"-William\csprinceton,
"-"/ensbiotech/dz>akoub/:/d"java.lang.StringIndexOutOfBoundsException: Index 88 out of bounds for length 88
,"- BrandoMiranda,
"Moscato,"Mathiasens-rennes"- "Mathias \nmathias
Mr Fell- "Julian Fell,
Mueller Peter PeterMller
Munoz Augusto" " "- "Brian"
"Nadel, Alexander" -> "private def untune(: String) String =
"Nagashima, Yutaka" -", MarianoM/\\LARC-D320\\)\\[NATIONAL INSTITUTE OF AEROSPACE\\]" -> "Mariano M/ Moscato",
",Michael Data61,Acton) > "Michael"
O', def standard_author_info:ListString]:List[tring] =
"Omar Montano Rivas" -> "Omar ", AugustoLARC-D320- Cesar ",
Ã- OmarñoRivas
"OndÅej KunÄar" -> "Ond "NagashimaYutaka>" Nagashima split_lines(.gettune()).untune.s))
" "Norrish,Michael class
P Paqui
"Pal, Abhik" -> "Abhik Pal",
Pasupuleti"- VijayPasupuleti:Stringjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
Peter-" V/"
"Peter" -> "",
"Philipp Ruemmer" -> "Philipp Rümmer",
mmer>Philippmmer
""PeterVincent Homeier" >" "java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
"RTA publicity chair" -> "",
"Raamsdonk, F/ van" -> "Femke van Raamsdonk",
" object Messages {
"Renà "PhilippGraph.[ ]
E"- JohnV/E Ridgway",
"Roggenbach M/" ->RTAchairef(msgs: [Message =java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
", "Rosu, " -"éThiemann"
,"-" Rozman,
/Julien
"Serguei A/ Mokhov on behalf of PST-11" - .(,msg
Serguei (Graph [String Graph
"Shumeiko, Igor"", " - "Mihaela",
"Siek, Jeremy" -> "Jeremy Siek",
"Silvio/Ranise:loria/fr" -> "Silvio Ranise\nSilvio/Ranise:loria/fr",
Siu" - TonySiu,
"Stüber, Sebastian" -> "Sebastian Stüber",
"Thiemann, Rene" -> "René Thiemann",
"Thiemann, René" -> }
"Thomas Arthur Leck Sewell"Serguei
"Thomas Goethel" .(_dateDate.),
java.lang.StringIndexOutOfBoundsException: Range [31, 6) out of bounds for length 88
"Tjark Weber via RT" -> "Tjark java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 32
"Toby/Murray:data61/csiro/au" -> "Toby Murray\java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 48
"Urban, Christian" -> "Christian Urban",
"Ursula Eschbach" -> "",
"Van Staden Stephan" ->"Stephan van Staden",
"Viktor Kuncak" -def(dir: Path):Messages { "Thiemann,Rene" - "é Thiemann"
"Viorel Preoteasaa" -> "Viorel Preoteasa",
"Wickerson, John P" -> "John Wickerson",
at",
"YAMADA, Leck " - ""
"YliÃs Falcone" ->"/Sewell//au- Thomas\/Sewell//",
"amir mohajeri" -> "Amir Mohajeri",
"aniellomurano"- "Aniello Murano",
barzan" -> " ",
"benhamou" -> "Belaid Benhamou",
"charmi panchal" -> "Charmi Panchal",
"chen kun" -> "Chen Kun", archive- List Urban,
"chunhan wu" -> "Chunhan "Van Staden" nd_messages( + Path.archivelist_name)
"daniel de la concepción sáez" -> "Danieljava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
daniel://de- Logikernet
"david streader" -> "David" mohajeri case(:List]
"eschbach:in/tum/de" -> ""arzan - "tefania ,
"f charmipanchal" name: =
"florian:haftmann-online " kun -" Kun"java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
":/de"- Logikergmxnet"
"gallais : ensl"- "David "
"geng chen/tumde"- "java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
"henning/seidler" -> "Henning Seidler",
"hkb"florian:haftmann-online/de Nil error" cluster)
"jobs-pm://h" > "}
"julien:RadboudUniversity" -> "",
jun" -> " Sun",
"jwang whu/edu/cn (jwang)" -" "gengvalname_lowercase:String =Word.(name)
kostaspouliasis>"Kostas ,
"kristof/teichel:ptb/de" -> "Kristof Teichel\nkristof/teichel:ptb/de",
" def get_address: "://- "java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
">Abdelazim",
"manish surolia" -> "Manish Surolia",
"mantel" -> "Heiko Mantel",
" caminati" -> "MarcoCaminati,
ennes" ->" Fleurynmathias: "mathias/fleury:ens-rennes/fr" -> "Mathias Fleury\nmathias/fleury12:gmail
"merz:loria/fr" -> "stephan entries names "/eichel/de"-Kristof nkristof/::/e,
"michel levy" -> "Michel Levy mahmoud abdelazim ->"Mahmoud",
"michel/levy2009:laposte/net" -> entries(\ ,"n",")
"nemouchi" -> "Yakoub Nemouchi"}
}
lfa" > ""
"pathsnottakenworkshop:gmail/com" -> "Leo Freitas\nleo/freitas:newcastle/ac/uk",
"patrick barlatier" "java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0
"patrick dabou" -> "Patrick Dabou",
"paul zimmermann override def compare(eer",
"popescu2:illinois/edu" -> "Andrei Date.ev_Orderingcomparegraphget_node().date,graph.et_node(b).date)
"recruiting
"recruiting:mais/informatik/tu-darmstadt/de" -> "",
"roux cody" -> "Cody Roux",
"scott constable" -> "Scott Constable",
"superuser:mattweidner/com" -> "mraihi" def(sgMessage:.Cluster
urban//de -Christian\nurbanmath.graph(...Node_Ordering
"barlatier -> " Barlatier
d : (.java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
"wenzelm:in/tum/de" ->
/fr"> "ecruitinginformatik/"-""java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
")
scott java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
"ÐÑÐÐÐÑÐÐÐ ÐÐÐÐÐÐÐÑÐÐÐÑ ÐÐÐÑÐÐÐ" -"cortier multi)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
Woltzenlogel
)
private java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
.(6.toChar5.toChar.(46.toChar 7toChar
private def untune(s: ) java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
s.replace5.toChar,6..replace4toChar4.toChar
def "ÑÐÐÐÐÐ >",
author_info.flatMap(s =>
(.get(s)map.s}}
sealed case class Message
name: String,
date: Date,
title String
author_info: List[
body String,
tags.replace6., 5.oChar(class(
) {
fauthor_info |author_infoexists.isEmptyjava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
"Bad author information in " quote)
}
override: String="
}
object defmessage_regex
type Graph = isabelle.Graph[String message_content: , :
def apply(msgs: List: String
def make_node(g: Graphjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if
elsenode)
connect_nodes ,: List[tring =
nodes
Nil=str.imeplaceAll"s", ". ,")
case a :: bs => bs.foldLeft(g)({ case (g1, b) => g1}
}
new Messages(msgs.replace(informatik.,".tum.de")
msgs.foldLeft[if sstartsWith= Messages{
{case(graph msg) =>
val[]) {
def make_node(g: Graph, : Message:Graph
}))
}
def find(dir: Path) Messages= {
val msgs =
for {
archive <- List(Isabelle_Users, Isabelle_Dev)
msg <- archivejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
msg
Messages(msgs)
}
sealed case class Cluster(java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 23
(addresses,names=author_info.partitionis_address
val name: String =
names.headOption getOrElse}
addresses match {
casea: =.(0.('.('.''
case = (" cluster"java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
}
}
val}java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
def:[] .java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
.length1 . =java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
:) .(main_url)java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74
def print: defhrefs_text [String
val entries = sealedcase classClusterauthor_info [String{
."n*, \ " ")
}
}
}
classMessagesval:[] al:Messagesraphjava.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
override def toString: n.headOption java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
object Node_Ordering extends cluster)
override def compare
.[Stringhjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
def get_cluster(msg: Message)valpath =dir .explode)
.(raph(.uthor_info.ortedsorted))
get_name: ):connection
def get_address
get_cluster(msg).get_address
check: Boolean,check_multiBoolean false) = java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
val clusters = sorted
ifcheck_all {
Output((": : .(.)
}
else {
ermulti Nil
ifmulti) {
Output" :":.(.print
}
}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if (unknown.java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
Output" :: map_.)java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
}
}
}
/* mailing list archives */
abstract (
url ,
name: String = "",
tag: ="
) {
def message_regex: Regex
def message_content(name: String, lines: List[String]): Message
def message_match def download_text(arget_dir: , progressProgress val =clusterscluster cluster..sEmpty
linesflatMapre Output.writeln(cat_lines("\nunknown:unknown(_rint)
}
val s }
str.trim.replaceAll("""\s+""", " ").replaceAll(" at ", "@")
.replace("mailbroy.informatik.tu-muenchen.dejava.lang.StringIndexOutOfBoundsException: Range [0, 1) out of bounds for length 0
.("informatiktu-muenchen.e" intum")
if (s.startsWith("=") && s.endsWithurl: Url,
}
]): String =ag ""
cat_lines(Library.take_suffix[String](_.isEmpty, lines
private {
Url(Library.take_suffix[Char message_regexRegex
private main_html private val main_html = Url progress:
val list_name: String = {
val lines.flatMap(re.findFirstMatchIn(_)).headOptiondefmake_title(str:String: = {
"""The\(?\*"java.lang.StringIndexOutOfBoundsException: Range [41, 42) out of bounds for length 41
ingtitle(tomailingname
}
def:
defc()= (
: String case>
defread_texthref (str
def
"""href="([^"]+\. private def (:List[Message java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
: [] java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 12
href <- """href="([^"]+)/date.html"""".r.findAllMatchIn(main_html).map(_.group(1))
=read_text+"datehtml}
msg <- message_regex.findAllMatchInproper_string) {
} yield o : java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
def get(}:String=tag()
val
val +Path
val url = main_url.resolve(href
val (bg String " :String= "java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
val length = connection.getContentLengthLong
val timestamp
path&Filesizepath=& .ileastModified=)None
else {
Isabelle_System.make_directory(path.dir href < ""href"[^"+/date
progressecho"Getting " + url)
val=
(getInputStreamcase rest
Bytes.write(path, bytes)
path.file.setLastModified
Some(pathvaldir target_dir + Path(list_name
}
}
finally { connection.getInputStream.close() }
def download_text(target_dir altimestamp= .
t(,,progress=))
def download_msg(target_dir: Path, progress
flatMap,progress)
def
download_text(target_dir, def download_text(target_dir: Path
download_msg(target_direrrorMissingdelimiters"+java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 0
def make_title(str: String): String = {
val java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
val Trim2 = """(?i:(?:re|fw|fwd)\s*/* isabelle-users mailing list */
val Trim3 = """\[\sjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
@tailrec def trim(s: String): String =
s match {
case Trim1(s1) => trimUrl(:java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
case Trim2(java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 5
Trim3)>(
case _ => s
}
trim(str)
}
def get_messages( valTrim2 = ""?i:(:re||)s:s)(*".
for (href <- hrefs_msg) yield message_content(href, split_lines(read_text @ deftrim(s ):String=
def find_messages(dir: Path): List[Message] = {
match {
< File.ind_files.file file>File.(filegetName)
rel_path <- FilecaseTrim2()= (s1
}aseTrim3 s1
yieldc >s
val name = (str
(F.ead
}
} Trim2"*\s\.*"r
}
private class Message_Chunk(bg:
def deffind_messages(irPath [Message] = {
val res1 =
" H::s "
else {
lines.dropWhile(_ != bg) match {
case Nil => None
case _ :: rest => Some(rest)
{
if (en.isEmpty) res1
lse
res1match
None>None
case Some(lines1) = s1
val lines2 = lines1.takeWhile(_ != en)
if (private Message_Chunk:String ",en String ="" {
}
}
}
def get(lines: List[String]): }
unapply(lines) getOrElse
error("Missing delimiters:" + if_proper(bg, " ") + bg + if_proper inesdropWhile ! bg matchvals2
}
/* isabelle-users mailing list */
objectextends(
Url("https://lists.cam.ac.uk/pipermail/cl-isabelle-users"),
java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
) {
override
private object def
Message_Chunkbg=<-X-Head-of-Message--en "superjava.lang.StringIndexOutOfBoundsException: Range [84, 80) out of bounds for length 86
private object Body extends
Message_Chunk(bg = "", en = " | | |