Unallocated names
Ian Lynagh
ian at well-typed.com
Wed Sep 5 16:41:14 CEST 2012
On Wed, Sep 05, 2012 at 10:57:42AM +0100, Ross Paterson wrote:
> On Tue, Sep 04, 2012 at 07:22:04PM +0100, Ian Lynagh wrote:
> > Hackage2 will currently complain about anything that doesn't start with
> > one of:
> > Algebra, Codec, Control, Data, Database, Debug, Distribution,
> > DotNet, Foreign, Graphics, Language, Network, Numeric, Prelude,
> > Sound, System, Test, Text
Oh, I think actually the test is currently just broken. "Database" is on
the list, but I get
Exposed modules use unallocated top-level names:
Database/PostgreSQL/Simple Database/PostgreSQL/Simple/BuiltinTypes
[...]
when uploading postgresql-simple 0.2.4.0 as a caniddate package.
> > Does anyone think that this check is currently useful, or should I just
> > turn it off?
>
> That test is copied from Hackage1. We don't have any means of allocating
> the module namespace apart from squatter's rights and negotiation,
> but arbitrary expansion of the top level of the hierarchy is unhelpful,
> and having a warning for that seems to me the least we should do.
Well, I'm not sure how much effect the warning has, but if we're going
to keep it then are there any other top-level names we should add?
I've attached a list of how many packages use each top-level name (based
on the latest version of packages in June 2012), and here's those that
are used by at least 10 packages (starred names are already in the
list).
926 Data *****
339 Control *****
316 Text *****
247 System *****
228 Network *****
166 Graphics *****
153 Language *****
94 Database *****
69 Codec *****
67 Numeric *****
64 Sound *****
63 Test *****
41 Bindings
38 Web
33 Math
33 Foreign *****
29 Yesod
25 Happstack
22 Generics
20 Snap
18 Distribution *****
17 Hack
17 Debug *****
16 Prelude *****
16 Manatee
15 NLP
15 Bio
13 Crypto
12 FRP
11 Biobase
10 GHC
10 AI
8 Algebra *****
0 DotNet *****
Thanks
Ian
-------------- next part --------------
926 "Data"
339 "Control"
316 "Text"
247 "System"
228 "Network"
166 "Graphics"
153 "Language"
94 "Database"
69 "Codec"
67 "Numeric"
64 "Sound"
63 "Test"
41 "Bindings"
38 "Web"
33 "Math"
33 "Foreign"
29 "Yesod"
25 "Happstack"
22 "Generics"
20 "Snap"
18 "Distribution"
17 "Hack"
17 "Debug"
16 "Prelude"
16 "Manatee"
15 "NLP"
15 "Bio"
13 "Crypto"
12 "FRP"
11 "Biobase"
10 "GHC"
10 "AI"
9 "Type"
9 "Acme"
8 "Algebra"
7 "XMonad"
7 "Synthesizer"
7 "Hack2"
7 "HAppS"
6 "Statistics"
6 "Music"
6 "DBus"
6 "Copilot"
5 "Wumpus"
5 "Utils"
5 "Util"
5 "UI"
5 "TypeLevel"
5 "Parser"
5 "Haskore"
5 "HGamer3D"
5 "Diagrams"
5 "Development"
5 "DB"
5 "Curry"
5 "CSPM"
5 "Blaze"
5 "Bamboo"
4 "Yhc"
4 "Temporal"
4 "Satchmo"
4 "Safe"
4 "Reactive"
4 "Physics"
4 "Main"
4 "Lava"
4 "LLVM"
4 "Interface"
4 "Holumbus"
4 "HSP"
4 "GraphRewriting"
4 "DDC"
4 "BrownPLT"
4 "BioInf"
4 "Application"
4 "App"
4 "Algorithms"
3 "Unsafe"
3 "UU"
3 "Render"
3 "Random"
3 "RSAGL"
3 "Options"
3 "OpenSSL"
3 "Number"
3 "Nettle"
3 "Media"
3 "LIO"
3 "IDE"
3 "Hledger"
3 "Hardware"
3 "HSX"
3 "Game"
3 "Filesystem"
3 "Factis"
3 "DirectX9"
3 "Darcs"
3 "Config"
3 "Atmosphere"
3 "Anansi"
2 "Yices"
2 "Yi"
2 "XMMS2"
2 "Workaround"
2 "URL"
2 "Trace"
2 "Thrift"
2 "Table"
2 "Static"
2 "SoccerFun"
2 "Shelly"
2 "Shady"
2 "Scripting"
2 "Scope"
2 "Scion"
2 "SHA1"
2 "Remote"
2 "Reactor"
2 "Ratified"
2 "Progress"
2 "Profiling"
2 "Printer"
2 "Parsek"
2 "MonadLib"
2 "MathObj"
2 "Logic"
2 "Lighttpd"
2 "Lcs"
2 "Layout"
2 "Lambdabot"
2 "IsoDate"
2 "Intel"
2 "Hbro"
2 "Hascat"
2 "Hakyll"
2 "HSH"
2 "Google"
2 "GA"
2 "Frame"
2 "Fractal"
2 "Finance"
2 "Feldspar"
2 "Facebook"
2 "Exec"
2 "Eval"
2 "Env"
2 "English"
2 "Dingo"
2 "Debian"
2 "DateMatcher"
2 "DCLabel"
2 "Crypt"
2 "CommandLine"
2 "ByteStringUtils"
2 "Base"
2 "Air"
1 "Zoom"
1 "ZipperM"
1 "ZMidi"
1 "ZFS"
1 "Yuuko"
1 "Yavie"
1 "Xyz"
1 "Xml"
1 "Xine"
1 "Word"
1 "Wired"
1 "WinDll"
1 "Wiki4e"
1 "Whim"
1 "WebWire"
1 "WebCont"
1 "WeatherApi"
1 "WXFruit"
1 "WURFLTypes"
1 "WURFLParser"
1 "WURFL"
1 "WASH"
1 "Vis"
1 "Version"
1 "Validate"
1 "VCSWrapper"
1 "VCSGui"
1 "Useful"
1 "Unify"
1 "Undo"
1 "Unbound"
1 "UnambCustom"
1 "UTLC"
1 "UTF8Prelude"
1 "URLT"
1 "UDrawGraph"
1 "Types"
1 "TypeUnary"
1 "TypeInfo"
1 "Twisty"
1 "TupleTH"
1 "Tuple"
1 "Trhsx"
1 "TrfToCFG"
1 "TrfInjectRefl"
1 "TrfInjectAbc"
1 "Transform"
1 "Trajectory"
1 "ToolShed"
1 "Toktok"
1 "Todos"
1 "TinyLaunchbury"
1 "Time"
1 "TheoremQuest"
1 "Theora"
1 "TextPlot"
1 "TextDisplay"
1 "Testing"
1 "Testbed"
1 "TestData"
1 "TerraHS"
1 "Term"
1 "Tensor"
1 "Tea"
1 "TPDB"
1 "TLBWriter"
1 "TIProg"
1 "TIMonad"
1 "TIMain"
1 "SymbolTables"
1 "SymbolTable"
1 "SymView"
1 "SymInfo"
1 "Swish"
1 "Swf"
1 "Subversion"
1 "Subst"
1 "StringTable"
1 "Stream"
1 "Storage"
1 "Storable"
1 "StaticThih"
1 "StaticTest"
1 "StaticPrelude"
1 "StaticMonad"
1 "StaticMaybe"
1 "StaticList"
1 "StablePtr"
1 "SrcLoc"
1 "Spread"
1 "SpatialMath"
1 "SparseCheck"
1 "SourceThih"
1 "SourceTest"
1 "SourcePrelude"
1 "SourceMonad"
1 "SourceMaybe"
1 "SourceList"
1 "SoOSiM"
1 "SmartGroup"
1 "Skeleton"
1 "Singletons"
1 "Sindre"
1 "Simulation"
1 "SimpleTree"
1 "SimpleReflect"
1 "SimpleCss"
1 "Sifflet"
1 "ShowQ"
1 "ShowFun"
1 "Shellish"
1 "Shell"
1 "ShePrelude"
1 "Shared"
1 "Shaker"
1 "SetGames"
1 "Sentry"
1 "SecLib"
1 "Scrobble"
1 "Script"
1 "Scheme"
1 "SableCC"
1 "SVM"
1 "STMControl"
1 "STLC"
1 "SSH"
1 "SNTP"
1 "SMTLib2"
1 "SMTLib1"
1 "SME"
1 "SECDH"
1 "Rotating_backdrop_logic"
1 "Roots"
1 "Robotics"
1 "RnMonad"
1 "Rhythm"
1 "ReviewBoard"
1 "Rename"
1 "ReifyHs"
1 "Regex"
1 "RegExpr"
1 "RegExDot"
1 "RegExChar"
1 "Recipe"
1 "Reader"
1 "ReadArgs"
1 "Rdioh"
1 "RdioResult"
1 "Ratio"
1 "Rallod"
1 "RRegex"
1 "RESTng"
1 "QuickAnnotate"
1 "Query"
1 "Quat"
1 "QuantumVector"
1 "QuantumArrow"
1 "QuantLib"
1 "QIO"
1 "Python"
1 "PureFP"
1 "Pugs"
1 "Ptr"
1 "Proxy303"
1 "Propane"
1 "PropLogicTest"
1 "PropLogicCore"
1 "PropLogic"
1 "PropLang"
1 "Progression"
1 "ProgressBar"
1 "ProgInfo"
1 "Processes"
1 "PrioritySync"
1 "PrintText"
1 "PrettyUtil"
1 "PrettyTree"
1 "PrettyGraph"
1 "PrettyCode"
1 "Pred"
1 "Precis"
1 "PreProc"
1 "PpIDLSyn"
1 "PpCore"
1 "PpAbstractH"
1 "PowerMate"
1 "Posixutil"
1 "Porte"
1 "Population"
1 "Polynomial"
1 "Plugin"
1 "Pitch"
1 "Pec"
1 "Pattern"
1 "Pat"
1 "Parsimony"
1 "ParseUtil"
1 "ParseLib"
1 "Panda"
1 "PPrint"
1 "PP"
1 "PGames"
1 "PGF"
1 "PDBtools"
1 "OscType"
1 "Orthogonals"
1 "Orc"
1 "Opts"
1 "Optimize"
1 "Operation"
1 "OpenAFP"
1 "OmgParser"
1 "Olist"
1 "Offset"
1 "OBDD"
1 "NumericPrelude"
1 "NotCPP"
1 "NormaliseType"
1 "NickEq"
1 "Newt"
1 "NewBinary"
1 "NekoPort"
1 "Neko"
1 "NaturalSort"
1 "NativeInfo"
1 "NatGames"
1 "NameSupply"
1 "NIB"
1 "NET"
1 "MyMissing"
1 "MultiSetRewrite"
1 "Mueval"
1 "Monocle"
1 "Mongrel2"
1 "MonadLab"
1 "Monad"
1 "MkImport"
1 "MissingPy"
1 "Mine"
1 "Midi"
1 "Microbench"
1 "Metrics"
1 "Metaplug"
1 "Message"
1 "Medium"
1 "MediaWiki"
1 "Maybe"
1 "Matrix"
1 "MarshallUtils"
1 "MarshallUnion"
1 "MarshallType"
1 "MarshallStruct"
1 "MarshallServ"
1 "MarshallMonad"
1 "MarshallMethod"
1 "MarshallJServ"
1 "MarshallJNI"
1 "MarshallFun"
1 "MarshallEnum"
1 "MarshallDep"
1 "MarshallCore"
1 "MarshallAuto"
1 "MarshallAbstract"
1 "MarshalUtils"
1 "MarshalError"
1 "MarshalArray"
1 "MarshalAlloc"
1 "MarXup"
1 "Manual"
1 "Makedo"
1 "MagicHaskeller"
1 "Magic"
1 "MTP"
1 "MPSUTF8"
1 "MPS"
1 "MPD"
1 "MO"
1 "MFlow"
1 "Luhn"
1 "Lseed"
1 "Locale"
1 "Literal"
1 "Lit"
1 "ListZipper"
1 "ListLive"
1 "List"
1 "LinearAlgorithms"
1 "Libs"
1 "LibUtils"
1 "Lib"
1 "LexM"
1 "Lex"
1 "LevMar"
1 "LambdaCat"
1 "Lambda"
1 "LSystem"
1 "LMain"
1 "LDAP"
1 "LBState"
1 "Kind"
1 "Kibro"
1 "KeyStroke"
1 "Keter"
1 "Jvm"
1 "JudgeParser"
1 "Join"
1 "JavaProxy"
1 "Java"
1 "JVM"
1 "JSON"
1 "Ix"
1 "Ivor"
1 "IsoHunt"
1 "Iso"
1 "Iptables"
1 "Interlude"
1 "Integer"
1 "Int"
1 "Instrument"
1 "InstrSize"
1 "InstrLocFilter"
1 "InstrBaseLib"
1 "Instr"
1 "Initialization"
1 "Infer"
1 "Includes"
1 "ImportLib"
1 "Imm"
1 "Id"
1 "IRCBase"
1 "IPPrint"
1 "IO"
1 "IDLUtils"
1 "IDLToken"
1 "IDLSyn"
1 "ID3"
1 "Hyena"
1 "HyLo"
1 "HugsCodeGen"
1 "Hugs"
1 "Huffman"
1 "Hsed"
1 "HsShellScript"
1 "HsConfigure"
1 "Hoogle"
1 "Hexdump"
1 "HeteroMap"
1 "Helper"
1 "Hellnet"
1 "Heist"
1 "Hdis86"
1 "Hawk"
1 "HaskellThih"
1 "HaskellTest"
1 "HaskellPrims"
1 "HaskellPrelude"
1 "HaskellMonad"
1 "HaskellMaybe"
1 "HaskellList"
1 "HasGP"
1 "Harpy"
1 "Harp"
1 "HarmTrace"
1 "Hans"
1 "Halipeto"
1 "Halfs"
1 "Hails"
1 "Haddock"
1 "HackedMicrobench"
1 "HackMail"
1 "Hach"
1 "HXMPP"
1 "HTk"
1 "HSPR"
1 "HSNTP"
1 "HSFFIG"
1 "HROOT"
1 "HPath"
1 "HNM"
1 "HLogger"
1 "HLCM"
1 "HJScript"
1 "HJS"
1 "HFusion"
1 "HFlags"
1 "HFiaR"
1 "HFANN"
1 "Gutenberg"
1 "Guess"
1 "Grm"
1 "Graphs"
1 "GraphRewrite"
1 "GoogleSB"
1 "Gnome"
1 "Globals"
1 "Github"
1 "Git"
1 "GetOpt"
1 "GenProg"
1 "GenInstrLib"
1 "Games"
1 "GTA"
1 "GSL"
1 "GOA"
1 "GEP"
1 "GDBMI"
1 "FuzzyTime"
1 "Funsat"
1 "FunctorCombo"
1 "Function"
1 "FriendFeed"
1 "Freenect"
1 "Freedesktop"
1 "Fraction"
1 "ForeignPtr"
1 "ForSyDe"
1 "Flite"
1 "Flickr"
1 "FiniteMap"
1 "Financial"
1 "FilterGames"
1 "FileLocation"
1 "FileFormat"
1 "File"
1 "Fez"
1 "FastPropLogic"
1 "Facts"
1 "Factory"
1 "FST"
1 "FOV"
1 "FMP"
1 "ExtractAbc"
1 "Extra"
1 "Extension"
1 "Export"
1 "Examples"
1 "Example"
1 "ExCF"
1 "Events"
1 "ErrorLocation"
1 "Error"
1 "Epic"
1 "Entropy"
1 "Engine"
1 "Encode"
1 "EigensystemNum"
1 "Eigensystem"
1 "Editor"
1 "EEConfig"
1 "Dynamic"
1 "Dvda"
1 "DsMonad"
1 "Drum"
1 "Dropbox"
1 "DrawString"
1 "DrawDiagrams"
1 "DrIFT"
1 "Documentation"
1 "DisTract"
1 "Directory"
1 "Diplomacy"
1 "Digraph"
1 "Dewdrop"
1 "Desugar"
1 "DerivationTrees"
1 "DefaultPropLogic"
1 "Default"
1 "DefGen"
1 "Dedukti"
1 "Datadirt"
1 "DataTreeView"
1 "DVD"
1 "DSP"
1 "DPM"
1 "DNS"
1 "DCPU16"
1 "CustomAttributes"
1 "CsoundExpr"
1 "Criterion"
1 "Costack"
1 "CoreUtils"
1 "CoreIDL"
1 "CoreFoundation"
1 "Controls"
1 "Controller"
1 "Conjure"
1 "Conf"
1 "Condorcet"
1 "Complex"
1 "Compiler"
1 "Company"
1 "CombinatorialOptimisation"
1 "Colada"
1 "CodeGen"
1 "Coadjute"
1 "Clocked"
1 "Clang"
1 "Chromosome"
1 "Chords"
1 "Char"
1 "CgMonad"
1 "Cake"
1 "CabalMeta"
1 "CV"
1 "CTypes"
1 "CStubGen"
1 "CString"
1 "CPython"
1 "CPUTime"
1 "CPSScheme"
1 "CPSPrint"
1 "CLasH"
1 "CForeign"
1 "CFLP"
1 "CFGraph"
1 "CFG"
1 "CError"
1 "ByteCode"
1 "BuildBox"
1 "Bound"
1 "BotLib"
1 "BoolExp"
1 "Bool"
1 "BlockingTransactions"
1 "Bits"
1 "Bird"
1 "Bind"
1 "Berp"
1 "Bayes"
1 "BasicTypes"
1 "BasicGames"
1 "Barrie"
1 "Barracuda"
1 "Bamse"
1 "Bag"
1 "BadGames"
1 "BEncode"
1 "Aws"
1 "Autoproc"
1 "Audio"
1 "Attribute"
1 "Atomo"
1 "Assump"
1 "Array"
1 "Arm"
1 "ApplePush"
1 "Annotations"
1 "Anatomy"
1 "Analysis"
1 "Agda"
1 "Actor"
1 "ActiveHs"
1 "AbstractH"
1 "AbsHUtils"
1 "AbsCF"
1 "ATerm"
1 "ADP"
1 "ADNS"
More information about the cabal-devel
mailing list