Accepting request 1010434 from devel:languages:haskell
version update OBS-URL: https://build.opensuse.org/request/show/1010434 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ghc-brick?expand=0&rev=21
This commit is contained in:
commit
f3f428f41a
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:741c8d0717f0ab5addd5d3acc88cb36d645a0c73907bde509b2fd9d9bc02039c
|
||||
size 704762
|
3
brick-1.3.tar.gz
Normal file
3
brick-1.3.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4b4320ff8e6161dfe7034c7deb911f4187551c389c1d6b14501b285f9031ed52
|
||||
size 715154
|
@ -1,3 +1,117 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 30 02:57:19 UTC 2022 - Peter Simons <psimons@suse.com>
|
||||
|
||||
- Update brick to version 1.3.
|
||||
1.3
|
||||
---
|
||||
|
||||
Package changes:
|
||||
* Removed dependency on `dlist`.
|
||||
|
||||
Performance improvements:
|
||||
* Improved the performance of `vBox` and `hBox` (thanks Fraser Tweedale)
|
||||
|
||||
1.2
|
||||
---
|
||||
|
||||
Package changes:
|
||||
* Supports base 4.17 (GHC 9.4).
|
||||
|
||||
Bug fixes:
|
||||
* `newFileBrowser` now normalizes its initial path (#387).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 19 02:05:32 UTC 2022 - Peter Simons <psimons@suse.com>
|
||||
|
||||
- Update brick to version 1.1.
|
||||
Upstream has edited the change log file since the last release in
|
||||
a non-trivial way, i.e. they did more than just add a new entry
|
||||
at the top. You can review the file at:
|
||||
http://hackage.haskell.org/package/brick-1.1/src/CHANGELOG.md
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 22:37:09 UTC 2022 - Peter Simons <psimons@suse.com>
|
||||
|
||||
- Update brick to version 1.0.
|
||||
1.0
|
||||
---
|
||||
|
||||
Version 1.0 of `brick` comes with some improvements that will require
|
||||
you to update your programs. This section details the list of API
|
||||
changes in 1.0 that are likely to introduce breakage and how to deal
|
||||
with each one. You can also consult the demonstration
|
||||
programs to see orking examples of the new API. For those
|
||||
interested in a bit of discussion on the changes, see [this
|
||||
ticket](https://github.com/jtdaugherty/brick/issues/379).
|
||||
|
||||
* The event-handling monad `EventM` was improved and changed in some
|
||||
substantial ways, all aimed at making `EventM` code cleaner, more
|
||||
composable, and more amenable to lens updates to the application
|
||||
state.
|
||||
* The type has changed from `EventM n a` to `EventM n s a` and is now
|
||||
an `mtl`-compatible state monad over `s`. Some consequences and
|
||||
related changes are:
|
||||
* Event handlers no longer take and return an explicit state value;
|
||||
an event handler that formerly had the type `handler :: s ->
|
||||
BrickEvent n e -> EventM n (Next s)` now has type `handler ::
|
||||
BrickEvent n e -> EventM n s ()`. This also affected all of
|
||||
Brick's built-in event handler functions for `List`, `Editor`,
|
||||
etc.
|
||||
* The `appHandleEvent` and `appStartEvent` fields of `App` changed
|
||||
types to reflect the new structure of `EventM`. `appStartEvent`
|
||||
will just be `return ()` rather than `return` for most
|
||||
applications.
|
||||
* `EventM` can be used with the `MonadState` API from `mtl` as well
|
||||
as with the very nice lens combinators in `microlens-mtl`.
|
||||
* The `Next` type was removed.
|
||||
* State-specific event handlers like `handleListEvent` and
|
||||
`handleEditorEvent` are now statically typed to be scoped to
|
||||
just the states they manage, so `zoom` from `microlens-mtl` must
|
||||
be used to invoke them. `Brick.Types` re-exports `zoom` for
|
||||
convenience. `handleEventLensed` was removed from the API in lieu
|
||||
of the new `zoom` behavior. Code that previously handled events
|
||||
with `handleEventLensed s someLens someHandler e` is now just
|
||||
written `zoom someLens $ someHandler e`.
|
||||
* If an `EventM` block needs to operate on some state `s` that is
|
||||
not accessible via a lens into the application state, the `EventM`
|
||||
block can be set up with `Brick.Types.nestEventM`.
|
||||
* Since `Next` was removed, control flow is now as follows:
|
||||
* Without any explicit specification, an `EventM` block always
|
||||
continues execution of the `brick` event loop when it finishes.
|
||||
`continue` was removed from the API. What was previously `continue
|
||||
$ s & someLens .~ value` will become `someLens .= value`.
|
||||
* `halt` is still used to indicate that the event loop should halt
|
||||
after the calling handler is finished, but `halt` no longer takes
|
||||
an explicit state value argument.
|
||||
* `suspendAndResume` is now immediate; previously,
|
||||
`suspendAndResume` indicated that the specified action should run
|
||||
once the event handler finished. Now, the event handler is paused
|
||||
while the specified action is run. This allows `EventM` code to
|
||||
continue to run after `suspendAndResume` is called and before
|
||||
control is returned to `brick`.
|
||||
* Brick now depends on `mtl` rather than `transformers`.
|
||||
* The `IsString` instance for `AttrName` was removed.
|
||||
* This change is motivated by the API wart that resulted from the
|
||||
overloading of both `<>` and string literals (via
|
||||
`OverloadedStrings`) that resulted in code such as `someAttrName
|
||||
= "blah" <> "things"`. While that worked to create an `AttrName`
|
||||
with two segments, it was far too easy to read as two strings
|
||||
concatenated. The overloading hid what is really going on with the
|
||||
segments of the attribute name. The way to write the above example
|
||||
after this change is `someAttrName = attrName "blah" <> attrName
|
||||
"things"`.
|
||||
|
||||
Other changes in this release:
|
||||
|
||||
* Brick now provides an optional API for user-defined keybindings
|
||||
for applications! See the User Guide section "Customizable
|
||||
Keybindings", the Haddock for `Brick.Keybindings.KeyDispatcher`,
|
||||
and the new demo program `programs/CustomKeybindingDemo.hs` to get
|
||||
started.
|
||||
* `Brick.Widgets.List` got `listSelectedElementL`, a traversal for
|
||||
accessing the currently selected element of a list. (Thanks Fraser
|
||||
Tweedale)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 9 16:24:17 UTC 2022 - Peter Simons <psimons@suse.com>
|
||||
|
||||
|
@ -19,13 +19,14 @@
|
||||
%global pkg_name brick
|
||||
%bcond_with tests
|
||||
Name: ghc-%{pkg_name}
|
||||
Version: 0.73
|
||||
Version: 1.3
|
||||
Release: 0
|
||||
Summary: A declarative terminal user interface library
|
||||
License: BSD-3-Clause
|
||||
URL: https://hackage.haskell.org/package/%{pkg_name}
|
||||
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
|
||||
BuildRequires: ghc-Cabal-devel
|
||||
BuildRequires: ghc-bimap-devel
|
||||
BuildRequires: ghc-bytestring-devel
|
||||
BuildRequires: ghc-config-ini-devel
|
||||
BuildRequires: ghc-containers-devel
|
||||
@ -33,18 +34,17 @@ BuildRequires: ghc-contravariant-devel
|
||||
BuildRequires: ghc-data-clist-devel
|
||||
BuildRequires: ghc-deepseq-devel
|
||||
BuildRequires: ghc-directory-devel
|
||||
BuildRequires: ghc-dlist-devel
|
||||
BuildRequires: ghc-exceptions-devel
|
||||
BuildRequires: ghc-filepath-devel
|
||||
BuildRequires: ghc-microlens-devel
|
||||
BuildRequires: ghc-microlens-mtl-devel
|
||||
BuildRequires: ghc-microlens-th-devel
|
||||
BuildRequires: ghc-mtl-devel
|
||||
BuildRequires: ghc-rpm-macros
|
||||
BuildRequires: ghc-stm-devel
|
||||
BuildRequires: ghc-template-haskell-devel
|
||||
BuildRequires: ghc-text-devel
|
||||
BuildRequires: ghc-text-zipper-devel
|
||||
BuildRequires: ghc-transformers-devel
|
||||
BuildRequires: ghc-unix-devel
|
||||
BuildRequires: ghc-vector-devel
|
||||
BuildRequires: ghc-vty-devel
|
||||
|
Loading…
x
Reference in New Issue
Block a user