maid 2009.12.20 → 2010.4.24
raw patch · 3 files changed
+21/−671 lines, 3 filesdep +containersdep +hack-handler-hyenadep −hack-handler-happstackdep ~hack-contribdep ~mps
Dependencies added: containers, hack-handler-hyena
Dependencies removed: hack-handler-happstack
Dependency ranges changed: hack-contrib, mps
Files
- maid.cabal +13/−5
- readme.md +2/−0
- src/maid.hs +6/−666
maid.cabal view
@@ -1,5 +1,5 @@ Name: maid-Version: 2009.12.20+Version: 2010.4.24 Build-type: Simple Synopsis: A simple static web server Description:@@ -8,16 +8,24 @@ License: BSD3 License-file: LICENSE-Author: Wang, Jinjing-Maintainer: Wang, Jinjing <nfjinjing@gmail.com>+Author: Jinjing Wang+Maintainer: Jinjing Wang <nfjinjing@gmail.com> Build-Depends: base Cabal-version: >= 1.2 category: Web-homepage: http://github.com/nfjinjing/maid/tree/master+homepage: http://github.com/nfjinjing/maid data-files: readme.md, changelog.md, known-issues.md, Nemesis Executable maid ghc-options: -Wall -threaded- build-depends: base >= 4 && < 5, mps >= 2009.11.7, loli >= 2009.8.18, haskell98, hack-contrib >= 2009.12.20, data-default, hack-handler-happstack >= 2009.12.20, hack+ build-depends: base >= 4 && < 5+ , mps >= 2010.1.26+ , loli >= 2009.8.18+ , haskell98+ , hack-contrib >= 2010.1.26+ , data-default+ , hack-handler-hyena >= 2009.12.20+ , hack+ , containers hs-source-dirs: src/ main-is: maid.hs
readme.md view
@@ -24,3 +24,5 @@ ---- use the git version++
src/maid.hs view
@@ -2,14 +2,14 @@ {-# LANGUAGE NamedFieldPuns #-} import Network.Loli (loli, public, mime)-import Hack.Handler.Happstack+import Hack.Handler.Hyena import System (getArgs)-import MPS.TH (here)-import MPS ((>), splash, tuple2, reject, strip, (/), (-))+import MPS (splash, (/), (-)) import Data.Default (def)-import Hack.Contrib.Middleware.SimpleAccessLogger+import Hack.Contrib.Mime import Hack import Prelude hiding ((/), (-), (>))+import Data.Map (toAscList) main :: IO () main = do@@ -21,9 +21,9 @@ } let { app =- simple_access_logger Nothing - try_index - loli - do+ try_index - loli - do public (Just ".") [""]- mapM_ (splash mime) mimes+ mapM_ (splash mime) (toAscList mime_types) } putStrLn ""@@ -48,664 +48,4 @@ return r' else return r- -mimes :: [(String, String)]-mimes = - lines - > map strip- > reject null- > map (words > tuple2)- - mime_data--mime_data :: String-mime_data = [$here|--3dm x-world/x-3dmf-3dmf x-world/x-3dmf-a application/octet-stream-aab application/x-authorware-bin-aam application/x-authorware-map-aas application/x-authorware-seg-abc text/vnd.abc-acgi text/html-afl video/animaflex-ai application/postscript-aif audio/aiff-aif audio/x-aiff-aifc audio/aiff-aifc audio/x-aiff-aiff audio/aiff-aiff audio/x-aiff-aim application/x-aim-aip text/x-audiosoft-intra-ani application/x-navi-animation-aos application/x-nokia-9000-communicator-add-on-software-aps application/mime-arc application/octet-stream-arj application/arj-arj application/octet-stream-art image/x-jg-asf video/x-ms-asf-asm text/x-asm-asp text/asp-asx application/x-mplayer2-asx video/x-ms-asf-asx video/x-ms-asf-plugin-au audio/basic-au audio/x-au-avi application/x-troff-msvideo-avi video/avi-avi video/msvideo-avi video/x-msvideo-avs video/avs-video-bcpio application/x-bcpio-bin application/mac-binary-bin application/macbinary-bin application/octet-stream-bin application/x-binary-bin application/x-macbinary-bm image/bmp-bmp image/bmp-bmp image/x-windows-bmp-boo application/book-book application/book-boz application/x-bzip2-bsh application/x-bsh-bz application/x-bzip-bz2 application/x-bzip2-c text/plain-c text/x-c-c++ text/plain-cat application/vnd.ms-pki.seccat-cc text/plain-cc text/x-c-ccad application/clariscad-cco application/x-cocoa-cdf application/cdf-cdf application/x-cdf-cdf application/x-netcdf-cer application/pkix-cert-cer application/x-x509-ca-cert-cha application/x-chat-chat application/x-chat-class application/java-class application/java-byte-code-class application/x-java-class-com application/octet-stream-com text/plain-conf text/plain-cpio application/x-cpio-cpp text/x-c-cpt application/mac-compactpro-cpt application/x-compactpro-cpt application/x-cpt-crl application/pkcs-crl-crl application/pkix-crl-crt application/pkix-cert-crt application/x-x509-ca-cert-crt application/x-x509-user-cert-csh application/x-csh-csh text/x-script.csh-css text/css-css application/x-pointplus-cxx text/plain-dcr application/x-director-deepv application/x-deepv-def text/plain-der application/x-x509-ca-cert-dif video/x-dv-dir application/x-director-dl video/dl-dl video/x-dl-doc application/msword-dot application/msword-dp application/commonground-drw application/drafting-dump application/octet-stream-dv video/x-dv-dvi application/x-dvi-dwf drawing/x-dwf (old)-dwf model/vnd.dwf-dwg application/acad-dwg image/vnd.dwg-dwg image/x-dwg-dxf application/dxf-dxf image/vnd.dwg-dxf image/x-dwg-dxr application/x-director-el text/x-script.elisp-elc application/x-bytecode.elisp (compiled elisp)-elc application/x-elc-env application/x-envoy-eps application/postscript-es application/x-esrehber-etx text/x-setext-evy application/envoy-evy application/x-envoy-exe application/octet-stream-f text/plain-f text/x-fortran-f77 text/x-fortran-f90 text/plain-f90 text/x-fortran-fdf application/vnd.fdf-fif application/fractals-fif image/fif-fli video/fli-fli video/x-fli-flo image/florian-flx text/vnd.fmi.flexstor-fmf video/x-atomic3d-feature-for text/plain-for text/x-fortran-fpx image/vnd.fpx-fpx image/vnd.net-fpx-frl application/freeloader-funk audio/make-g text/plain-g3 image/g3fax-gif image/gif-gl video/gl-gl video/x-gl-gsd audio/x-gsm-gsm audio/x-gsm-gsp application/x-gsp-gss application/x-gss-gtar application/x-gtar-gz application/x-compressed-gz application/x-gzip-gzip application/x-gzip-gzip multipart/x-gzip-h text/plain-h text/x-h-hdf application/x-hdf-help application/x-helpfile-hgl application/vnd.hp-hpgl-hh text/plain-hh text/x-h-hlb text/x-script-hlp application/hlp-hlp application/x-helpfile-hlp application/x-winhelp-hpg application/vnd.hp-hpgl-hpgl application/vnd.hp-hpgl-hqx application/binhex-hqx application/binhex4-hqx application/mac-binhex-hqx application/mac-binhex40-hqx application/x-binhex40-hqx application/x-mac-binhex40-hta application/hta-htc text/x-component-htm text/html-html text/html-htmls text/html-htt text/webviewhtml-htx text/html-ice x-conference/x-cooltalk-ico image/x-icon-idc text/plain-ief image/ief-iefs image/ief-iges application/iges-iges model/iges-igs application/iges-igs model/iges-ima application/x-ima-imap application/x-httpd-imap-inf application/inf-ins application/x-internett-signup-ip application/x-ip2-isu video/x-isvideo-it audio/it-iv application/x-inventor-ivr i-world/i-vrml-ivy application/x-livescreen-jam audio/x-jam-jav text/plain-jav text/x-java-source-java text/plain-java text/x-java-source-jcm application/x-java-commerce-jfif image/jpeg-jfif image/pjpeg-jfif-tbnl image/jpeg-jpe image/jpeg-jpe image/pjpeg-jpeg image/jpeg-jpeg image/pjpeg-jpg image/jpeg-jpg image/pjpeg-jps image/x-jps-js application/x-javascript-js application/javascript-js application/ecmascript-js text/javascript-js text/ecmascript-jut image/jutvision-kar audio/midi-kar music/x-karaoke-ksh application/x-ksh-ksh text/x-script.ksh-la audio/nspaudio-la audio/x-nspaudio-lam audio/x-liveaudio-latex application/x-latex-lha application/lha-lha application/octet-stream-lha application/x-lha-lhx application/octet-stream-list text/plain-lma audio/nspaudio-lma audio/x-nspaudio-log text/plain-lsp application/x-lisp-lsp text/x-script.lisp-lst text/plain-lsx text/x-la-asf-ltx application/x-latex-lzh application/octet-stream-lzh application/x-lzh-lzx application/lzx-lzx application/octet-stream-lzx application/x-lzx-m text/plain-m text/x-m-m1v video/mpeg-m2a audio/mpeg-m2v video/mpeg-m3u audio/x-mpequrl-man application/x-troff-man-map application/x-navimap-mar text/plain-mbd application/mbedlet-mc$ application/x-magic-cap-package-1.0-mcd application/mcad-mcd application/x-mathcad-mcf image/vasa-mcf text/mcf-mcp application/netmc-me application/x-troff-me-mht message/rfc822-mhtml message/rfc822-mid application/x-midi-mid audio/midi-mid audio/x-mid-mid audio/x-midi-mid music/crescendo-mid x-music/x-midi-midi application/x-midi-midi audio/midi-midi audio/x-mid-midi audio/x-midi-midi music/crescendo-midi x-music/x-midi-mif application/x-frame-mif application/x-mif-mime message/rfc822-mime www/mime-mjf audio/x-vnd.audioexplosion.mjuicemediafile-mjpg video/x-motion-jpeg-mm application/base64-mm application/x-meme-mme application/base64-mod audio/mod-mod audio/x-mod-moov video/quicktime-mov video/quicktime-movie video/x-sgi-movie-mp2 audio/mpeg-mp2 audio/x-mpeg-mp2 video/mpeg-mp2 video/x-mpeg-mp2 video/x-mpeq2a-mp3 audio/mpeg3-mp3 audio/x-mpeg-3-mp3 video/mpeg-mp3 video/x-mpeg-mpa audio/mpeg-mpa video/mpeg-mpc application/x-project-mpe video/mpeg-mpeg video/mpeg-mpg audio/mpeg-mpg video/mpeg-mpga audio/mpeg-mpp application/vnd.ms-project-mpt application/x-project-mpv application/x-project-mpx application/x-project-mrc application/marc-ms application/x-troff-ms-mv video/x-sgi-movie-my audio/make-mzz application/x-vnd.audioexplosion.mzz-nap image/naplps-naplps image/naplps-nc application/x-netcdf-ncm application/vnd.nokia.configuration-message-nif image/x-niff-niff image/x-niff-nix application/x-mix-transfer-nsc application/x-conference-nvd application/x-navidoc-o application/octet-stream-oda application/oda-omc application/x-omc-omcd application/x-omcdatamaker-omcr application/x-omcregerator-p text/x-pascal-p10 application/pkcs10-p10 application/x-pkcs10-p12 application/pkcs-12-p12 application/x-pkcs12-p7a application/x-pkcs7-signature-p7c application/pkcs7-mime-p7c application/x-pkcs7-mime-p7m application/pkcs7-mime-p7m application/x-pkcs7-mime-p7r application/x-pkcs7-certreqresp-p7s application/pkcs7-signature-part application/pro_eng-pas text/pascal-pbm image/x-portable-bitmap-pcl application/vnd.hp-pcl-pcl application/x-pcl-pct image/x-pict-pcx image/x-pcx-pdb chemical/x-pdb-pdf application/pdf-pfunk audio/make-pfunk audio/make.my.funk-pgm image/x-portable-graymap-pgm image/x-portable-greymap-pic image/pict-pict image/pict-pkg application/x-newton-compatible-pkg-pko application/vnd.ms-pki.pko-pl text/plain-pl text/x-script.perl-plx application/x-pixclscript-pm image/x-xpixmap-pm text/x-script.perl-module-pm4 application/x-pagemaker-pm5 application/x-pagemaker-png image/png-pnm application/x-portable-anymap-pnm image/x-portable-anymap-pot application/mspowerpoint-pot application/vnd.ms-powerpoint-pov model/x-pov-ppa application/vnd.ms-powerpoint-ppm image/x-portable-pixmap-pps application/mspowerpoint-pps application/vnd.ms-powerpoint-ppt application/mspowerpoint-ppt application/powerpoint-ppt application/vnd.ms-powerpoint-ppt application/x-mspowerpoint-ppz application/mspowerpoint-pre application/x-freelance-prt application/pro_eng-ps application/postscript-psd application/octet-stream-pvu paleovu/x-pv-pwz application/vnd.ms-powerpoint-py text/x-script.phyton-pyc applicaiton/x-bytecode.python-qcp audio/vnd.qcelp-qd3 x-world/x-3dmf-qd3d x-world/x-3dmf-qif image/x-quicktime-qt video/quicktime-qtc video/x-qtc-qti image/x-quicktime-qtif image/x-quicktime-ra audio/x-pn-realaudio-ra audio/x-pn-realaudio-plugin-ra audio/x-realaudio-ram audio/x-pn-realaudio-ras application/x-cmu-raster-ras image/cmu-raster-ras image/x-cmu-raster-rast image/cmu-raster-rexx text/x-script.rexx-rf image/vnd.rn-realflash-rgb image/x-rgb-rm application/vnd.rn-realmedia-rm audio/x-pn-realaudio-rmi audio/mid-rmm audio/x-pn-realaudio-rmp audio/x-pn-realaudio-rmp audio/x-pn-realaudio-plugin-rng application/ringing-tones-rng application/vnd.nokia.ringing-tone-rnx application/vnd.rn-realplayer-roff application/x-troff-rp image/vnd.rn-realpix-rpm audio/x-pn-realaudio-plugin-rt text/richtext-rt text/vnd.rn-realtext-rtf application/rtf-rtf application/x-rtf-rtf text/richtext-rtx application/rtf-rtx text/richtext-rv video/vnd.rn-realvideo-s text/x-asm-s3m audio/s3m-saveme application/octet-stream-sbk application/x-tbook-scm application/x-lotusscreencam-scm text/x-script.guile-scm text/x-script.scheme-scm video/x-scm-sdml text/plain-sdp application/sdp-sdp application/x-sdp-sdr application/sounder-sea application/sea-sea application/x-sea-set application/set-sgm text/sgml-sgm text/x-sgml-sgml text/sgml-sgml text/x-sgml-sh application/x-bsh-sh application/x-sh-sh application/x-shar-sh text/x-script.sh-shar application/x-bsh-shar application/x-shar-shtml text/html-shtml text/x-server-parsed-html-sid audio/x-psid-sit application/x-sit-sit application/x-stuffit-skd application/x-koan-skm application/x-koan-skp application/x-koan-skt application/x-koan-sl application/x-seelogo-smi application/smil-smil application/smil-snd audio/basic-snd audio/x-adpcm-sol application/solids-spc application/x-pkcs7-certificates-spc text/x-speech-spl application/futuresplash-spr application/x-sprite-sprite application/x-sprite-src application/x-wais-source-ssi text/x-server-parsed-html-ssm application/streamingmedia-sst application/vnd.ms-pki.certstore-step application/step-stl application/sla-stl application/vnd.ms-pki.stl-stl application/x-navistyle-stp application/step-sv4cpio application/x-sv4cpio-sv4crc application/x-sv4crc-svf image/vnd.dwg-svf image/x-dwg-svr application/x-world-svr x-world/x-svr-swf application/x-shockwave-flash-t application/x-troff-talk text/x-speech-tar application/x-tar-tbk application/toolbook-tbk application/x-tbook-tcl application/x-tcl-tcl text/x-script.tcl-tcsh text/x-script.tcsh-tex application/x-tex-texi application/x-texinfo-texinfo application/x-texinfo-text application/plain-text text/plain-tgz application/gnutar-tgz application/x-compressed-tif image/tiff-tif image/x-tiff-tiff image/tiff-tiff image/x-tiff-tr application/x-troff-tsi audio/tsp-audio-tsp application/dsptype-tsp audio/tsplayer-tsv text/tab-separated-values-turbot image/florian-txt text/plain-uil text/x-uil-uni text/uri-list-unis text/uri-list-unv application/i-deas-uri text/uri-list-uris text/uri-list-ustar application/x-ustar-ustar multipart/x-ustar-uu application/octet-stream-uu text/x-uuencode-uue text/x-uuencode-vcd application/x-cdlink-vcs text/x-vcalendar-vda application/vda-vdo video/vdo-vew application/groupwise-viv video/vivo-viv video/vnd.vivo-vivo video/vivo-vivo video/vnd.vivo-vmd application/vocaltec-media-desc-vmf application/vocaltec-media-file-voc audio/voc-voc audio/x-voc-vos video/vosaic-vox audio/voxware-vqe audio/x-twinvq-plugin-vqf audio/x-twinvq-vql audio/x-twinvq-plugin-vrml application/x-vrml-vrml model/vrml-vrml x-world/x-vrml-vrt x-world/x-vrt-vsd application/x-visio-vst application/x-visio-vsw application/x-visio-w60 application/wordperfect6.0-w61 application/wordperfect6.1-w6w application/msword-wav audio/wav-wav audio/x-wav-wb1 application/x-qpro-wbmp image/vnd.wap.wbmp-web application/vnd.xara-wiz application/msword-wk1 application/x-123-wmf windows/metafile-wml text/vnd.wap.wml-wmlc application/vnd.wap.wmlc-wmls text/vnd.wap.wmlscript-wmlsc application/vnd.wap.wmlscriptc-word application/msword-wp application/wordperfect-wp5 application/wordperfect-wp5 application/wordperfect6.0-wp6 application/wordperfect-wpd application/wordperfect-wpd application/x-wpwin-wq1 application/x-lotus-wri application/mswrite-wri application/x-wri-wrl application/x-world-wrl model/vrml-wrl x-world/x-vrml-wrz model/vrml-wrz x-world/x-vrml-wsc text/scriplet-wsrc application/x-wais-source-wtk application/x-wintalk-xbm image/x-xbitmap-xbm image/x-xbm-xbm image/xbm-xdr video/x-amt-demorun-xgz xgl/drawing-xif image/vnd.xiff-xl application/excel-xla application/excel-xla application/x-excel-xla application/x-msexcel-xlb application/excel-xlb application/vnd.ms-excel-xlb application/x-excel-xlc application/excel-xlc application/vnd.ms-excel-xlc application/x-excel-xld application/excel-xld application/x-excel-xlk application/excel-xlk application/x-excel-xll application/excel-xll application/vnd.ms-excel-xll application/x-excel-xlm application/excel-xlm application/vnd.ms-excel-xlm application/x-excel-xls application/excel-xls application/vnd.ms-excel-xls application/x-excel-xls application/x-msexcel-xlt application/excel-xlt application/x-excel-xlv application/excel-xlv application/x-excel-xlw application/excel-xlw application/vnd.ms-excel-xlw application/x-excel-xlw application/x-msexcel-xm audio/xm-xml text/xml-xml application/xml-xmz xgl/movie-xpix application/x-vnd.ls-xpix-xpm image/x-xpixmap-xpm image/xpm-x-png image/png-xsr video/x-amt-showrun-xwd image/x-xwd-xwd image/x-xwindowdump-xyz chemical/x-pdb-z application/x-compress-z application/x-compressed-zip application/x-compressed-zip application/x-zip-compressed-zip application/zip-zip multipart/x-zip-zoo application/octet-stream-zsh text/x-script.zsh--|]