Skip to content

Commit 632c55c

Browse files
authored
Merge branch 'develop' into develop
2 parents 822a3c3 + 4b04fc4 commit 632c55c

File tree

17 files changed

+88
-100
lines changed

17 files changed

+88
-100
lines changed

ChangeLog.md

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
# Revision history for reflex
22

3-
## Unreleased
3+
## 0.6.3
44

5-
* Data.WeakBag.traverse and Data.FastWeakBag.traverse have been
6-
renamed to Data.WeakBag.traverse_ and Data.FastWeakBag.traverse_
7-
respectively.
5+
* `Data.WeakBag.traverse` and `Data.FastWeakBag.traverse` have been deprecated.
6+
They are replaced with `Data.WeakBag.traverse_` and `Data.FastWeakBag.traverse_`, respectively.
7+
8+
* Fixes a bug in `Reflex.Patch.MapWithMove.patchThatSortsMapWith` that was producing invalid `PatchMapWithMove`.
9+
10+
* Add missing `NotReady` instances:
11+
- `instance NotReady (SpiderTimeline x) (SpiderHost x)`
12+
- `instance HasSpiderTimeline x => NotReady (SpiderTimeline x) (PerformEventT (SpiderTimeline x) (SpiderHost x))`
813

914
## 0.6.2.4
1015

@@ -17,7 +22,9 @@
1722
## 0.6.2.2
1823

1924
* Support these >= 1. Add `split-these` flag to control whether to use new these/semialign combination or not.
25+
2026
* Update version bounds to fix some CI failures
27+
2128
* Add travis CI configuration
2229

2330
## 0.6.2.1
@@ -32,32 +39,42 @@
3239
* Add incrementalCoercion/coerceIncremental to go with dynamicCoercion/coerceDynamic
3340

3441
* Generalize merging functions:
35-
`merge` to `mergeG`,
36-
`mergeIncremental` to `mergeIncrementalG`,
37-
`mergeIncrementalWithMove` to `mergeIncrementalWithMoveG`.
42+
`merge` to `mergeG`,
43+
`mergeIncremental` to `mergeIncrementalG`,
44+
`mergeIncrementalWithMove` to `mergeIncrementalWithMoveG`.
3845

3946
* Generalize distribute function:
4047
`distributeDMapOverDynPure` to `distributeDMapOverDynPureG`,
4148

4249
## 0.6.2.0
4350

44-
* Fix `holdDyn` so that it is lazy in its event argument
51+
* Fix `holdDyn` so that it is lazy in its event argument
4552
These produce `DMap`s whose values needn't be `Identity`.
53+
4654
* Stop using the now-deprecated `*Tag` classes (e.g., `ShowTag`).
55+
4756
* Fix `holdDyn` so that it is lazy in its event argument.
4857

4958
## 0.6.1.0
5059

5160
* Re-export all of `Data.Map.Monoidal`
61+
5262
* Fix `QueryT` and `RequesterT` tests
5363

5464
## 0.6.0.0 -- 2019-03-20
5565

5666
* Deprecate `FunctorMaybe` in favor of `Data.Witherable.Filterable`. We still export `fmapMaybe`, `ffilter`, etc., but they all rely on `Filterable` now.
67+
5768
* Rename `MonadDynamicWriter` to `DynamicWriter` and add a deprecation for the old name.
69+
5870
* Remove many deprecated functions.
71+
5972
* Add a `Num` instance for `Dynamic`.
73+
6074
* Add `matchRequestsWithResponses` to make it easier to use `Requester` with protocols that don't do this matching for you.
75+
6176
* Add `withRequesterT` to map functions over the request and response of a `RequesterT`.
77+
6278
* Suppress nil patches in `QueryT` as an optimization. The `Query` type must now have an `Eq` instance.
79+
6380
* Add `throttleBatchWithLag` to `Reflex.Time`. See that module for details.

Quickref.md

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -198,15 +198,15 @@ For Events, the returned Event fires whenever the latest Event supplied by the w
198198
The functions mentioned above are used to create a static FRP network.
199199
There are additional typeclasses that can be used to modify the FRP network, to have it interact with IO action, or to introspect the building of the network.
200200

201-
Th typeclasses and their associated annotations include:
201+
The typeclasses and their associated annotations include:
202202

203203
- `PostBuild`
204204
Fire an Event when an FRP network has been set up.
205205
```haskell
206206
[B] -- Function runs in any monad supporting PostBuild
207207
```
208208

209-
- `Adjustable`
209+
- `Adjustable`
210210
Use Events to add or remove pieces of an FRP network.
211211
```haskell
212212
[A] -- Function runs in any monad supporting Adjustable
@@ -271,7 +271,7 @@ Th typeclasses and their associated annotations include:
271271
```haskell
272272
-- Run side-effecting actions in Event when it occurs; returned Event contains
273273
-- results. Side effects run in the (Performable m) monad which is associated with
274-
-- the (PerformEvent t m) typeclass constraint.
274+
-- the (PerformEvent t m) typeclass constraint.
275275
-- This allows for working with IO when a ((MonadIO (Performable m)) constraint is available.
276276
[P] performEvent :: Event (Performable m a ) -> m (Event a)
277277

@@ -295,17 +295,20 @@ Th typeclasses and their associated annotations include:
295295
## Networks
296296

297297
```haskell
298-
-- Functions from Reflex.Network used to deal with Dynamics/Events carrying (m a)
298+
-- Functions from Reflex.Adjustable / Reflex.Network used to deal with Dynamics/Events carrying (m a)
299299

300-
-- Given a Dynamic of network-creating actions, create a network that is recreated whenever the Dynamic updates.
301-
-- The returned Event of network results occurs when the Dynamic does. Note: Often, the type a is an Event,
300+
[A] runWithReplace :: m a -> Event t (m b) -> m (a, Event t b)
301+
302+
-- Given a Dynamic of network-creating actions, create a network that is recreated whenever the Dynamic updates.
303+
-- The returned Event of network results occurs when the Dynamic does. Note: Often, the type a is an Event,
302304
-- in which case the return value is an Event-of-Events that would typically be flattened (via switchHold).
303-
[P,A] networkView :: Dynamic (m a) -> m (Event a)
305+
[P,A] networkView :: Dynamic (m a) -> m (Event a)
304306

305-
-- Given an initial network and an Event of network-creating actions, create a network that is recreated whenever the
306-
-- Event fires. The returned Dynamic of network results occurs when the Event does. Note: Often, the type a is an
307+
-- Given an initial network and an Event of network-creating actions, create a network that is recreated whenever the
308+
-- Event fires. The returned Dynamic of network results occurs when the Event does. Note: Often, the type a is an
307309
-- Event, in which case the return value is a Dynamic-of-Events that would typically be flattened.
308-
[H,A] networkHold :: m a -> Event (m a) -> m (Dynamic a)
310+
[H,A] networkHold :: m a -> Event (m a) -> m (Dynamic a)
309311

310312
-- Render a placeholder network to be shown while another network is not yet done building
311-
[P,A] untilReady :: m a -> m b -> m (a, Event b)
313+
[P,A] untilReady :: m a -> m b -> m (a, Event b)
314+
```

default.nix

Lines changed: 0 additions & 49 deletions
This file was deleted.

dep/reflex-platform/github.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"owner": "reflex-frp",
33
"repo": "reflex-platform",
4-
"branch": "jailbreakTheselens",
5-
"rev": "4284ed527c96c373538dc7e31776d9a50ca6aa91",
6-
"sha256": "1m1nkxq7ng9wnqbd77xn8d81f2iz8g61y5m0r3gp0gi0q59jm8ay"
4+
"branch": "develop",
5+
"rev": "e7b76dd552a10916c7d8702c11292dac4f4299ea",
6+
"sha256": "0s1183arrwldcs50qhzgnv94v24n9bgq6dfq64wp0a3q2nzyvgwh"
77
}

reflex.cabal

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Name: reflex
2-
Version: 0.6.2.4
2+
Version: 0.6.3
33
Synopsis: Higher-order Functional Reactive Programming
44
Description: Reflex is a high-performance, deterministic, higher-order Functional Reactive Programming system
55
License: BSD3
@@ -58,13 +58,12 @@ library
5858
data-default >= 0.5 && < 0.8,
5959
dependent-map >= 0.3 && < 0.4,
6060
exception-transformers == 0.4.*,
61-
profunctors >= 5.3 && < 5.5,
6261
lens >= 4.7 && < 5,
6362
monad-control >= 1.0.1 && < 1.1,
6463
mtl >= 2.1 && < 2.3,
6564
prim-uniq >= 0.1.0.1 && < 0.2,
6665
primitive >= 0.5 && < 0.8,
67-
profunctors,
66+
profunctors >= 5.3 && < 5.5,
6867
random == 1.1.*,
6968
ref-tf == 0.4.*,
7069
reflection == 2.1.*,

release.nix

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,36 @@ let
1717
] ++ lib.optionals (reflex-platform.iosSupport) [
1818
"ghcIosAarch64"
1919
];
20-
hsPkgs = lib.genAttrs compilers (ghc: let
21-
ghc' = reflex-platform.${ghc}.override {
22-
overrides = self: super: {
23-
reflex-dontUseTemplateHaskell = self.callPackage ./. { useTemplateHaskell = false; };
24-
reflex = self.callPackage ./. { useTemplateHaskell = true; };
20+
variations = map (v: "reflex" + v) [
21+
"-dontUseTemplateHaskell"
22+
""
23+
];
24+
compilerPkgs = lib.genAttrs compilers (ghc: let
25+
variationPkgs = lib.genAttrs variations (variation: let
26+
reflex-platform = reflex-platform-fun {
27+
inherit system;
28+
__useTemplateHaskell = variation == "reflex"; # TODO hack
29+
haskellOverlays = [
30+
# Use this package's source for reflex
31+
(self: super: {
32+
_dep = super._dep // {
33+
reflex = builtins.filterSource (path: type: !(builtins.elem (baseNameOf path) [
34+
"release.nix"
35+
".git"
36+
"dist"
37+
])) ./.;
38+
};
39+
})
40+
];
2541
};
26-
};
27-
in {
28-
inherit (ghc') reflex reflex-dontUseTemplateHaskell;
42+
in reflex-platform.${ghc}.reflex);
43+
in variationPkgs // {
44+
cache = reflex-platform.pinBuildInputs "reflex-${system}-${ghc}"
45+
(builtins.attrValues variationPkgs);
2946
});
30-
in hsPkgs // {
47+
in compilerPkgs // {
3148
cache = reflex-platform.pinBuildInputs "reflex-${system}"
32-
(lib.concatLists (map builtins.attrValues (builtins.attrValues hsPkgs)));
49+
(map (a: a.cache) (builtins.attrValues compilerPkgs));
3350
});
3451

3552
metaCache = native-reflex-platform.pinBuildInputs "reflex-everywhere"

src/Control/Monad/ReaderIO.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ instance Applicative (ReaderIO e) where
3737
#if MIN_VERSION_base(4,10,0)
3838
liftA2 = liftM2
3939
{-# INLINE liftA2 #-}
40-
#endif
40+
#endif
4141
(*>) = (>>)
4242
{-# INLINE (*>) #-}
4343

src/Data/AppendMap.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ module Data.AppendMap
2020
, module Data.Map.Monoidal
2121
) where
2222

23-
import Prelude hiding (map, null)
23+
import Prelude hiding (null)
2424

2525
import Data.Coerce
2626
import Data.Default

src/Reflex/Collection.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ listWithKeyShallowDiff initialVals valsChanged mkChild = do
130130
Nothing -> Just Nothing
131131

132132
-- We don't want to let spurious re-creations of items through
133-
Just _ -> Nothing
133+
Just _ -> Nothing
134134
listHoldWithKey
135135
initialVals
136136
(attachWith (flip (Map.differenceWith relevantPatch))

src/Reflex/DynamicWriter/Class.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,3 @@ class (Monad m, Monoid w) => DynamicWriter t w m | m -> t w where
2626

2727
instance DynamicWriter t w m => DynamicWriter t w (ReaderT r m) where
2828
tellDyn = lift . tellDyn
29-

0 commit comments

Comments
 (0)