-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Giant list of missing/changed functions #24
Comments
See the `CHANGES` file (or the `base-4.9.0.0` section of #24) for all of the changes made.
What are your thoughts about the GHC modules? I'm missing for |
I would happily accept patches that added functionality from the
|
@bergmark if you want to deal with call stack in a backward compatible way, you may want to look at https://github.com/sol/call-stack. |
checks off the `base-4.13.0.0` box in #24.
checks off the `base-4.13.0.0` box in #24.
checks off the `base-4.13.0.0` box in #24.
checks off the `base-4.13.0.0` box in #24.
checks off the `base-4.13.0.0` box in #24.
checks off the `base-4.13.0.0` box in #24.
Checks off the `base-4.14.0.0` box in #24.
Checks off the `base-4.14.0.0` box in #24.
Checks off the `base-4.14.0.0` box in #24.
Checks off the `base-4.15.0.0` boxes in #24.
Checks off the `base-4.15.0.0` boxes in #24.
Checks off the `base-4.16.0.0` boxes in #24.
Checks off the `base-4.16.0.0` boxes in #24.
….Compat Addresses one check box in #24.
Also bump the major version number to 0.14.0, per the version policy in the `base-compat` `README`. Addresses one check box in #24.
…y.Compat Addresses one check box in #24.
…y.Compat Addresses one check box in #24.
Also bump the major version number to 0.14.0, per the version policy in the `base-compat` `README`. Addresses one check box in #24.
…y.Compat Addresses one check box in #24.
Also bump the major version number to 0.14.0, per the version policy in the `base-compat` `README`. Addresses one check box in #24.
…y.Compat Addresses one check box in #24.
Now that |
After scanning through the GHC and
base
changelogs, I made a list of functions that were introduced or changed in later versions ofbase
that would be good candidates forbase-compat
. I intentionally skipped theGHC.
-prefixed modules for now, since they tend to be rather volatile.(Edit: these are no longer needed due to dropping support forbase-4.3.0.0
:base-4.2.0.0
and earlier)mfilter
added toControl.Monad
partitionEithers
(inData.Either
) was made lazierswap
added toData.Tuple
castCUCharToChar
,castCharToCUChar
,castCSCharToChar
, andcastCharToCSChar
added toForeign.C.String
unsafeLocalState
added toForeign.Marshal
hGetBufSome
added toSystem.IO
base-4.4.0.0
:gcd 0 0
now returns0
forkIOWithUnmask
,forkOn
, andforkOnWithUnmask
, added toControl.Concurrent
allowInterrupt
added toControl.Exception
Control.Monad.ST.Unsafe
andControl.Monad.ST.Lazy.Unsafe
modules addedinits
,tails
,intersperse
, andintersectBy
(inData.List
) are lazierForeign.ForeignPtr.Unsafe
andForeign.Marshal.Unsafe
modules addedData.String
reexportsString
,lines
,unlines
, andunwords
maybeNew
(inForeign.Marshal.Utils
) had its type generalized from(a -> IO (Ptr a)) -> Maybe a -> IO (Ptr a)
to(a -> IO (Ptr b)) -> Maybe a -> IO (Ptr b)
. (Make sure to check this withtypediff
.)catchIOError
andtryIOError
added toSystem.IO.Error
unsafeDupablePerformIO
added toSystem.IO.Unsafe
peekFilePath
,puts
, andc_safe_open
added toSystem.Posix.Internals
peekFilePathLen
added toSystem.Posix.Internals
base-4.5.0.0
:fixIO
(inSystem.IO
) is now thread-safeunsafeFixIO
added toSystem.IO.Unsafe
base-4.5.1.0
:writeChan
(inControl.Concurrent.Chan
) fixed to avoid potential race conditionhGetBufSome
(inSystem.IO
) fixed to avoid blocking on Windowsbase-4.6.0.0
:forkFinally
added toControl.Concurrent
mkWeakMVar
,modifyMVarMasked
, andmodifyMVarMasked_
added toControl.Concurrent.MVar
bitDefault
,testBitDefault
, andpopCountDefault
added toData.Bits
modifyIORef'
andatomicModifyIORef'
added toData.IORef
modifySTRef'
added toData.STRef
getExecutablePath
added toSystem.Environment
(requirespeekFilePath
, so this will needSystem.Posix.Internals.Compat
to work)base-4.7.0.0
:byteSwap16
,byteSwap32
, andbyteSwap64
added toData.Word
. Their implementations require functions inghc-prim
not available to earlier versions of GHC, but it should be possible to define equivalent implementations without usingghc-prim
.(Edit: This is isn't possible to backport without involving aeNOTSUP
added toForeign.C.Error
configure
script, which isn't desirable.)showFFloatAlt
andshowGFloatAlt
added toNumeric
base-4.7.0.2
:inits
(inData.List
) had a performance bug fixedtrace
(inDebug.Trace
) fixed to handle null bytes properlybase-4.8.0.0
:toIntegralSized
added toData.Bits
(due to its use ofbitSizeMaybe
in its implementation, however, this can only be backported back tobase-4.7.0.0
)nub
andnubBy
's implementations (inData.List
) were changed such that the arguments to==
andeq
, respectively, are swappedfillBytes
added toForeign.Marshal.Utils
base-4.9.0.0
Data.Ratio.{denominator,numerator}
have noIntegral
constraint anymoreDebug.Trace.{traceM, traceShowM}
fromMonad
toApplicative
forever
fromMonad
toApplicative
filterM
,mapAndUnzipM
,zipWithM
,zipWithM_
,replicateM
, andreplicateM_
fromMonad
toApplicative
Data.Functor.Const
module addederrorWithoutStackTrace
function added toPrelude
(it's just the old behavior oferror
, I believe)forkOSWithUnmask
function added toControl.Concurrent
base-4.10.0.0
fromLeft
andfromRight
added toData.Either
gcoerceWith
added toData.Type.Coercion
plusForeignPtr
added toForeign.ForeignPtr
asProxyTypeOf
's type has been generalized inData.Proxy
minimumBy
/maximumBy
are now implemented withfoldl
instead offoldr
base-4.11.0.0
Semigroup((<>))
added to thePrelude
(<&>)
added toData.Functor
iterate'
added toData.List
showHFloat
toNumeric
Type.Reflection.withTypeable
is now polymorphic in theRuntimeRep
of its resultbase-4.12.0.0
Data.Functor.Contravariant
is now inbase
$!
andthrow
are levity polymorphicbase-4.13.0.0
MonadFail(..)
added to thePrelude
andControl.Monad
(andMonad.fail
removed)base-4.14.0.0
isResourceVanishedError
,resourceVanishedErrorType
, andisResourceVanishedErrorType
added toSystem.IO.Error
base-4.15.0.0
hGetContents'
,getContents'
, andreadFile'
added toSystem.IO
singleton
added toData.List
andData.List.NonEmpty
base-4.16.0.0
readBin
andshowBin
added toNumeric
oneBits
added toData.Bits
base-4.17.0.0
pattern TypeRep
added toType.Reflection
(.^.)
,(.>>.)
,(.<<.)
,(!>>.)
, and(!<<.)
added toData.Bits
base-4.18.0.0
liftA2
added toPrelude
traceWith
,traceShowWith
, andtraceEventWith
added toDebug.Trace
inits1
andtails1
added toData.List.NonEmpty
minusNaturalMaybe
added toNumeric.Natural
applyWhen
added toData.Function
mapAccumM
andforAccumM
added toData.Traversable
heqT
added toData.Type.Equality
base-4.19.0.0
unzip
added toData.Functor
(!?)
added toData.List
unsnoc
added toData.List
getSolo
exported fromData.Tuple
decTypeRep
,decT
, andhdecT
added toData.Typeable
/Type.Reflection
base-4.20.0.0
foldl'
added toPrelude
permutations
andpermutations1
added toData.List.NonEmpty
sortOn
added toData.List.NonEmpty
List
added toData.List
base-4.21.0.0
(moved to #97)compareLength
added toData.List
andData.List.NonEmpty
inits1
andtails1
added toData.List
firstA
andsecondA
added toData.Bitraversable
The text was updated successfully, but these errors were encountered: