Compare commits

...

12 Commits
0.8 ... master

Author SHA1 Message Date
Daniel Wagner
51dfd77f3c note a few more changes 2017-07-31 21:59:08 -07:00
Daniel Wagner
2e3e61a2b4 Merge remote-tracking branch 'ScottSedgwick/StackCompatibility'
Conflicts:
	encoding.cabal
2017-07-30 18:00:41 -07:00
Daniel Wagner
52aabc47cd mark upper and lower bounds on library dependencies 2017-07-30 17:40:22 -07:00
Daniel Wagner
8925f398af -fno-warn-tabs 2017-07-30 17:39:58 -07:00
Daniel Wagner
7adcda8547 record what's new 2017-07-30 12:31:30 -07:00
Daniel Wagner
59b81ad775 avoid using revisions
Hackage revisions are great, but since we've removed an outdated flag we
can't use them. We'll have to use an actual point release.
2017-07-30 12:28:46 -07:00
Scott Sedgwick
8727ac25a5 Made package stack compatible
Created and added stack.yaml and .gitignore files.
Relaxed the version dependency on 'binary' package in cabal file.  Is that OK?
Also brought the minimum cabal version to >=1.8, so I could add a test target that pulls in the library.
Changed all tabs to spaces - I don't know when the Haskell compiler started giving warnings about that.
2017-07-28 14:17:42 +10:00
Daniel Wagner
6284c1a677 fix up repository metadata 2017-07-15 16:11:47 -07:00
Daniel Wagner
f1a2889bfe fix a typo in the cabal file 2017-07-15 16:11:32 -07:00
Daniel Wagner
7c07f48a45 fix dependencies so it builds
Ignore-this: 1dcaab9390e2cd47b7c429620e697003

darcs-hash:20170715230208-7469c-dcf2ca84d39bd0ca519b47e744f353c05daed1f7
2017-07-15 16:02:08 -07:00
Daniel Wagner
4be65c2f13 bump version to 0.8.1
Ignore-this: 3a50200de9ccce5f0a648ef68615a0cf

darcs-hash:20160731183857-7469c-54bc23ccb38615550b3d4ead6fed2cdcf8e5d5b8
2016-07-31 11:38:57 -07:00
endhrk
63e17e9a22 Implemented CP932 and ShiftJIS encodings
Ignore-this: 67153b679dabd226a7b1fab3ff501453

darcs-hash:20160725070504-fb088-842c21423d713a81a8ada591dffdfbb9cd08b68c
2016-07-25 00:05:04 -07:00
7 changed files with 15183 additions and 17 deletions

22
.gitignore vendored Normal file
View File

@ -0,0 +1,22 @@
### Haskell ###
dist
dist-*
cabal-dev
*.o
*.hi
*.chi
*.chs.h
*.dyn_o
*.dyn_hi
.hpc
.hsenv
.cabal-sandbox/
cabal.sandbox.config
*.prof
*.aux
*.hp
*.eventlog
.stack-work/
cabal.project.local
.HTF/

View File

@ -1,3 +1,16 @@
Changes from 0.8 to 0.8.2
-------------------------
* Deprecated support for very old GHCs
* Updated cabal file to differentiate between build dependencies and setup dependencies
* Add upper and lower bounds to build dependencies
* Stack compatibility
Changes from 0.8 to 0.8.1
-------------------------
* Added the ShiftJIS and CP932 encodings
Changes from 0.7.0.2 to 0.8 Changes from 0.7.0.2 to 0.8
--------------------------- ---------------------------

View File

@ -76,6 +76,7 @@ import Data.Encoding.MacOSRoman
import Data.Encoding.JISX0201 import Data.Encoding.JISX0201
import Data.Encoding.JISX0208 import Data.Encoding.JISX0208
import Data.Encoding.ISO2022JP import Data.Encoding.ISO2022JP
import Data.Encoding.ShiftJIS
import Data.Encoding.CP437 import Data.Encoding.CP437
import Data.Encoding.CP737 import Data.Encoding.CP737
import Data.Encoding.CP775 import Data.Encoding.CP775
@ -92,6 +93,7 @@ import Data.Encoding.CP865
import Data.Encoding.CP866 import Data.Encoding.CP866
import Data.Encoding.CP869 import Data.Encoding.CP869
import Data.Encoding.CP874 import Data.Encoding.CP874
import Data.Encoding.CP932
import Data.Char import Data.Char
import Text.Regex import Text.Regex
@ -327,6 +329,9 @@ encodingFromStringExplicit codeName = case (normalizeEncoding codeName) of
"jis_x_0208" -> Just $ DynEncoding JISX0208 "jis_x_0208" -> Just $ DynEncoding JISX0208
-- ISO 2022-JP -- ISO 2022-JP
"iso_2022_jp" -> Just $ DynEncoding ISO2022JP "iso_2022_jp" -> Just $ DynEncoding ISO2022JP
-- Shift JIS
"shift_jis" -> Just $ DynEncoding ShiftJIS
"sjis" -> Just $ DynEncoding ShiftJIS
-- MSDOS codepages -- MSDOS codepages
"cp437" -> Just $ DynEncoding CP437 "cp437" -> Just $ DynEncoding CP437
"cp737" -> Just $ DynEncoding CP737 "cp737" -> Just $ DynEncoding CP737
@ -344,6 +349,7 @@ encodingFromStringExplicit codeName = case (normalizeEncoding codeName) of
"cp866" -> Just $ DynEncoding CP866 "cp866" -> Just $ DynEncoding CP866
"cp869" -> Just $ DynEncoding CP869 "cp869" -> Just $ DynEncoding CP869
"cp874" -> Just $ DynEncoding CP874 "cp874" -> Just $ DynEncoding CP874
"cp932" -> Just $ DynEncoding CP932
-- defaults to nothing -- defaults to nothing
_ -> Nothing _ -> Nothing
where where

7941
Data/Encoding/CP932.xml Normal file

File diff suppressed because it is too large Load Diff

7093
Data/Encoding/ShiftJIS.xml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +1,15 @@
Name: encoding Name: encoding
Version: 0.8 Version: 0.8.2
Author: Henning Günther Author: Henning Günther
Maintainer: daniel@wagner-home.com Maintainer: daniel@wagner-home.com
License: BSD3 License: BSD3
License-File: LICENSE License-File: LICENSE
Synopsis: A library for various character encodings Synopsis: A library for various character encodings
Description: Description:
Haskell has excellect handling of unicode, the Char type covers all unicode chars. Unfortunatly, there's no possibility to read or write something to the outer world in an encoding other than ascii due to the lack of support for encodings. This library should help with that. Haskell has excellect handling of unicode, the Char type covers all unicode chars. Unfortunately, there's no possibility to read or write something to the outer world in an encoding other than ascii due to the lack of support for encodings. This library should help with that.
Category: Codec Category: Codec
Homepage: http://code.haskell.org/encoding/ Homepage: http://code.haskell.org/encoding/
Cabal-Version: >=1.6 Cabal-Version: >=1.8
Build-Type: Custom Build-Type: Custom
Extra-Source-Files: Extra-Source-Files:
CHANGELOG CHANGELOG
@ -22,28 +22,36 @@ Extra-Source-Files:
system_encoding.h system_encoding.h
system_encoding.c system_encoding.c
Flag splitBase
description: Choose the new smaller, split-up base package.
Flag systemEncoding Flag systemEncoding
description: Provide the getSystemEncoding action to query the locale. description: Provide the getSystemEncoding action to query the locale.
Source-Repository head Source-Repository head
Type: darcs Type: git
Location: http://code.haskell.org/encoding Location: http://github.com/dmwit/encoding
Source-Repository this Source-Repository this
Type: darcs Type: git
Location: http://code.haskell.org/encoding Location: http://github.com/dmwit/encoding
Tag: 0.8 Tag: 0.8.2
Custom-Setup
Setup-Depends: base >=3 && <5,
Cabal >=1.24 && <1.25,
containers,
filepath,
ghc-prim,
HaXml >=1.22 && <1.26
Library Library
Build-Depends: binary < 0.8, extensible-exceptions, HaXml >= 1.22 && < 1.26 Build-Depends: array >=0.4 && <0.6,
if flag(splitBase) base >=4 && <5,
Build-Depends: bytestring, base >= 3 && < 5, mtl, containers, array, regex-compat binary >=0.7 && <0.10,
if impl(ghc >= 6.10) bytestring >=0.9 && <0.11,
Build-Depends: ghc-prim containers >=0.4 && <0.6,
else extensible-exceptions >=0.1 && <0.2,
Build-Depends: base < 3 ghc-prim >=0.3 && <0.6,
mtl >=2.0 && <2.3,
regex-compat >=0.71 && <0.95
Extensions: CPP Extensions: CPP
@ -91,6 +99,7 @@ Library
Data.Encoding.JISX0212 Data.Encoding.JISX0212
Data.Encoding.ISO2022 Data.Encoding.ISO2022
Data.Encoding.ISO2022JP Data.Encoding.ISO2022JP
Data.Encoding.ShiftJIS
Data.Encoding.CP437 Data.Encoding.CP437
Data.Encoding.CP737 Data.Encoding.CP737
Data.Encoding.CP775 Data.Encoding.CP775
@ -107,6 +116,7 @@ Library
Data.Encoding.CP866 Data.Encoding.CP866
Data.Encoding.CP869 Data.Encoding.CP869
Data.Encoding.CP874 Data.Encoding.CP874
Data.Encoding.CP932
System.IO.Encoding System.IO.Encoding
Other-Modules: Other-Modules:
Data.Encoding.Base Data.Encoding.Base
@ -114,6 +124,8 @@ Library
Data.Map.Static Data.Map.Static
Data.Static Data.Static
Data.CharMap Data.CharMap
if impl(ghc >= 7.10)
GHC-Options: -fno-warn-tabs
if flag(systemEncoding) if flag(systemEncoding)
Includes: Includes:
system_encoding.h system_encoding.h
@ -122,3 +134,16 @@ Library
C-Sources: C-Sources:
system_encoding.c system_encoding.c
CPP-Options: -DSYSTEM_ENCODING CPP-Options: -DSYSTEM_ENCODING
test-suite encoding-test
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Main.hs
other-modules: Test.Tester
, Test.Tests
build-depends: base
, bytestring
, encoding
, HUnit
, QuickCheck
ghc-options: -threaded -rtsopts -with-rtsopts=-N

66
stack.yaml Normal file
View File

@ -0,0 +1,66 @@
# This file was automatically generated by 'stack init'
#
# Some commonly used options have been documented as comments in this file.
# For advanced use and comprehensive documentation of the format, please see:
# http://docs.haskellstack.org/en/stable/yaml_configuration/
# Resolver to choose a 'specific' stackage snapshot or a compiler version.
# A snapshot resolver dictates the compiler version and the set of packages
# to be used for project dependencies. For example:
#
# resolver: lts-3.5
# resolver: nightly-2015-09-21
# resolver: ghc-7.10.2
# resolver: ghcjs-0.1.0_ghc-7.10.2
# resolver:
# name: custom-snapshot
# location: "./custom-snapshot.yaml"
resolver: lts-8.22
# User packages to be built.
# Various formats can be used as shown in the example below.
#
# packages:
# - some-directory
# - https://example.com/foo/bar/baz-0.0.2.tar.gz
# - location:
# git: https://github.com/commercialhaskell/stack.git
# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a
# - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a
# extra-dep: true
# subdirs:
# - auto-update
# - wai
#
# A package marked 'extra-dep: true' will only be built if demanded by a
# non-dependency (i.e. a user package), and its test suites and benchmarks
# will not be run. This is useful for tweaking upstream packages.
packages:
- '.'
# Dependency packages to be pulled from upstream that are not in the resolver
# (e.g., acme-missiles-0.3)
extra-deps: []
# Override default flag values for local packages and extra-deps
flags: {}
# Extra package databases containing global packages
extra-package-dbs: []
# Control whether we use the GHC we find on the path
# system-ghc: true
#
# Require a specific version of stack, using version ranges
# require-stack-version: -any # Default
# require-stack-version: ">=1.4"
#
# Override the architecture used by stack, especially useful on Windows
# arch: i386
# arch: x86_64
#
# Extra directories used by stack for building
# extra-include-dirs: [/path/to/dir]
# extra-lib-dirs: [/path/to/dir]
#
# Allow a newer minor version of GHC than the snapshot specifies
# compiler-check: newer-minor