Skip to content

Latest commit

 

History

History
442 lines (341 loc) · 15.7 KB

ChangeLog.md

File metadata and controls

442 lines (341 loc) · 15.7 KB

Revision history for reflex-platform

This project's release branch is master. This log is written from the perspective of the release branch: when changes hit master, they are considered released.

v1.2.0.0

  • Add support for aarch64-darwin (apple silicon macs) and aarch64-linux. See docs/platform-support.md for more information about what's supported and what isn't on each platform.
  • nixpkgs updated to 22.11
  • Breaking change: Disable webkit2gtk backend for reflex-dom by default. To enable it, use the useWebkit2Gtk flag in default.nix.
  • Breaking change: Remove deprecated cabal2nixResult
  • Haskell Libraries Updates
    • reflex-dom 0.6.3.1
  • ios: Update ios-deploy to v1.12.2

v1.1.2.0 - 2023-09-07

v1.1.1.0 - 2023-08-01

  • Haskell Library Updated
    • reflex 0.9.2.0
    • reflex-vty 0.5.1.0
    • reflex-process 0.3.2.1
    • reflex-ghci 0.2.0.1
  • Update android targetSdk to 31

v1.1.0.0

  • Breaking change: GHC 8.10.7 is now selected by default. Set __useNewerCompiler in default.nix to false if you'd like to keep using GHC 8.6.5.
  • Haskell Library Updates
    • all-cabal-hashes "Update from Hackage at 2023-05-25T12:06:44Z" (f297f1f3)
    • reflex 0.9.1.0
    • reflex-dom-core 0.8.0.0
    • reflex-ghci 0.2.0.0
    • reflex-vty 0.4.1.1
    • reflex-fsnotify 0.3.0.0
    • reflex-process 0.3.2.0
    • beam-core 0.10.0.0
    • beam-migrate 0.5.2.0
    • beam-postgres 0.5.3.0
    • beam-automigrate 0.1.3.0
    • some 1.0.4
    • dependent-sum-template 0.1.2.0

v1.0.1.0

  • iOS: Bump SDK version from 15.0 -> 16.1
  • Haskell Library Updates
    • reflex-dom-core to 0.7.0.3
    • aeson to 2.1.1.0

v1.0.0.0

  • Nix

    • Update pinned nixpkgs to nixpkgs-21.05
  • Android: Use gradle v7 and build-tools 30.0.2 by default

  • Android: Automatically set build tool version in gradle.properties based on the configured buildToolsVersions

  • Android: Drop aarch32/armv7/armeabi support for 8.10.7 due to upstream ghc bugs (!17973)

    • We will continue to support GHC 8.6.5 Android 32-bit
    • This means 32-bit android devices are no longer supported on 8.10.7 and up
  • iOS: Make it possible to specify the path to the app's icons and splash images. See iconPath in ios/default.nix

  • iOS: Make it possible to build a TestFlight/App Store ready ipa. See isRelease in ios/default.nix

  • iOS: Include Assets Archive if present at iconPath

  • Fix SIGBUS crashes on armv7a due unaligned writes (!774)

  • Always use GHC 8.10.7, not GHC 8.10.4, for GHC 8.10. Previously we were using mixed GHC 8.10 versions to avoid issues.

  • GHC 8.10 support is complete, with the remaining profiling builds that worked for 8.6 (everything but GHCJS's) now also working for 8.10.

  • Breaking Change: The javaSources argument of android/default.nix is now a function that takes the default sources as arguments instead of a list that is always appended to the default sources. It is now possible to override the default java sources. See the documentation here.

  • Always use GHC 8.10.7, not GHC 8.10.4, for GHC 8.10. Previously we were using mixed GHC 8.10 versions to avoid issues.

  • GHC 8.10 support is complete, with the remaining profiling builds that worked for 8.6 (everything but GHCJS's) now also working for 8.10.

  • GHCJS 8.6 no longer uses older versions of some libraries with "text JS-string"

    • dlist
    • ghcjs-base
    • ghcjs-base
    • primitive
    • vector
    • hashable Instead it uses the same versions as everything else.
  • Haskell Library Updates

    • Intentional bumps:
      • all-cabal-hashes "Update from Hackage at 2022-06-29T01:24:32Z"
      • dependent-monoidal-map to 0.1.1.3
      • dependent-sum-aeson-orphans to 0.3.1.1
      • dependent-sum-template to 0.1.1.0
      • monoidal-containers to 0.6.2.0
      • patch to 0.0.8.0
      • reflex to 0.8.2.2
      • reflex-dom-core to 0.7.0.2
      • reflex-ghci to 0.1.5.4
      • reflex-process to 0.3.1.2
      • reflex-vty to 0.3.0.0
      • some to 1.0.2
      • vessel to 0.3.0.0
      • witherable to 0.4.2
    • Prerequisite bumps:
      • OneTuple 0.3.1
      • QuickCheck 2.14.1
      • aeson 1.5.4.1
      • base-orphans 0.8.6
      • bifunctors 5.5.11
      • commutative-semigroups (newly added at 0.1.0.0)
      • comonad 5.0.8
      • generic-deriving 1.14.1
      • hashable 1.3.5.0
      • index-traversable 0.1.2
      • invariant 0.5.5
      • lens 4.19.2
      • microlens-th 0.4.3.10
      • quickcheck-instances 0.3.27
      • splitmix 0.1.0.4
      • strict 0.4.0.1
      • tagged 0.8.6.1
      • th-abstraction 0.4.3.0
      • th-lift 0.8.2
      • time-compat 1.9.4

v0.9.2.0

v0.9.1.0

  • Add a partial preview of GHC 8.10 support, not on by default.

    • native: linux and macOS
    • iOS, unprofiled only
    • android, unprofiled only
    • Add GHCJS 8.10.7
  • Bump

  • New pins

    • ghcjs-promise 0.1.0.3

v0.9.0.0

  • Bump
    • Nixpkgs to 20.09

v0.8.0.3

  • Fix pure Nix evaluation.

v0.8.0.2

  • Bug fix relating to preBuild hook when TH splicing.

v0.8.0.1

  • Just fixing a change log entry.

v0.8.0.0

  • Bump
    • Nixpkgs to 20.03
  • Add more hooks to android Native APIs

v0.7.2.0

  • Bump
    • Nixpkgs to newer 19.09
    • patch to 0.0.4.0
  • (#731) Choose iOS simulator runtime based on supported devices

v0.7.1.0

  • Bump
    • reflex to 0.8.1.0
    • reflex-dom-core to 0.6.2.0
    • jsaddle to 0.9.7.1
    • jsaddle-dom to 0.9.4.1
  • New pins
    • hnix 0.12.0.1 and dependencies
    • dependent-monoidal-map 0.1.1.2

v0.7.0.0

  • Bump
    • all-cabal-hashes ("Update from Hackage at 2020-12-01T14:56:13Z")
    • beam-core to 0.9.0.0
    • beam-migrate to 0.5.0.0
    • beam-postgres to 0.5.0.0
  • New pins
  • Android
    • Add allowBackup/fullBackupContent to manifest
    • Bump gradle to v3.4.0 and upgrade related maven dependencies
    • Allow maven dependencies to be overridden
    • Copy google-services.json to the location expected by google integrations
    • Disable multi-dex on android builds (see note)
    • Update to android sdk version 29
  • iOS
    • Copy default splash screen images and app icon into sample application
    • Make ios-deploy tool overridable
    • Update iosSdkVersion to 13.2
    • Make xcode version customizable
    • Remove ResourceRules.plist as it is no longer necessary
    • Set CFBundleIconName as required by App Store
    • Add portable-deploy script for iOS for creating a pre-signed tarball which can be tested without Nix.
    • Add iOS Simulator target

v0.6.1.0

  • Bump
    • all-cabal-hashes ("Update from Hackage at 2020-11-06T16:55:57Z")
    • which to 0.2.0.0
    • gargoyle to 0.1.1.0
    • gargoyle-postgresql to 0.2.0.1
    • gargoyle-postgresql-nix to 0.3.0.0
    • aeson-gadt-th to 0.2.4
    • reflex-ghci to 0.1.5.1
    • constraints-extras to 0.3.0.2
    • some to 1.0.1
    • prim-uniq to 0.2
    • aeson-gadt-th to 0.2.4
    • dependent-map to 0.4
    • dependent-sum to 0.7.1.0
    • dependent-sum-template to 0.1.0.3
    • dependent-sum-aeson-orphans to 0.3.0.0
    • reflex to 0.7.2.0
    • reflex-vty to 0.1.4.1
    • patch to 0.0.3.2
    • reflex-dom to 0.6.1.0
    • reflex-fsnotify to 0.2.1.2
    • reflex-process to 0.3.1.0
  • New Pins
    • gargoyle-postgresql-connect 0.1.0.0

v0.6.0.0

  • (#658) Include infrastructure for experimental WebGHC support.
  • (#664) Update GHCJS to include a critical bugfix to the -dedupe flag. (See obsidiansystems/ghcjs#3 for more information.)
  • Bump
    • all-cabal-hashes to more recent snapshot of Hackage.
    • reflex to 0.7.1.0.
    • reflex-dom/reflex-dom-core to 0.6.0.0.
    • reflex-fsnotify to 0.2.1.1.
    • reflex-ghci to 0.1.4.1.
    • reflex-process to 0.3.0.0.
    • reflex-vty to 0.1.4.0.
    • android-activity. It now detects the number of cores on Android devices to utilize them better.
    • pandoc to 2.11.0.2 (bumping various dependencies as well)
  • Remove support for haskell-ide-engine

v0.5.3.0

  • (#578) Bump patch to 0.0.3.1.
  • (#649, #655) Update hackGet to support thunks with thunk.nix when packed.

v0.5.2.0

  • Fix issues with iOS deploy script caused by the openssl command sometimes resolving to OpenSSL and other times to LibreSSL, which output parsed X.509 certificates in slightly different formats. Now it always uses LibreSSL as provided by Nixpkgs.

  • Throw an error in hackGet when files other than the git/github.json and default.nix are there. This is a common problem when git/github.json exist in an unpacked thunk.

  • Add missing dependencies for Android release builds, fixing the problem with full Android release being broken.

  • Allow passing signing parameters to the Android deploy script, instead of Nix build scripts, to match iOS deployments. This can help to avoid leaking secrets into the Nix store, important when the Nix store is publicly readable.

  • Fix builds of servant in GHCJS.

  • Bump reflex to 0.6.4.1.

  • Bump reflex-process to 0.2.1.0 and reflex-ghci to 0.1.4.0.

v0.5.1.0 - 2020-01-22

  • Bump reflex to 0.6.4.

v0.5.0.0 - 2020-01-21

  • Add haskell overlay for reflex-ghci and include it in the general dev tools set that is available in development shells (e.g., when running work-on)

  • Make script iOS deploy more flexible. Splaces on either side of the = printed out by Apple's security find-certificate command for the team ID are now accepted.

  • Bump reflex-process to 0.2.0.0, a breaking change though small.

  • Bump patch to 0.0.2.0.

v0.4.2.0 - 2020-01-15

  • Add haskell overlays for reflex-process, reflex-fsnotify, and reflex-vty

  • Bump jsaddle* to 0.9.7.0.

  • Test profiling in release.nix. Jobs names were shuffled in the process, which is acceptible as this file is not intended to be comsumed by anything but CI and QA. Add a note explaining that instability.

  • Bump reflex-todomvc

  • Support both Apple Development and iPhone Developer profiles on iOS deploy. If you have many certificates it will take the first one it finds, for that reason it is recommended to put certificates in a user login keychain instead of the system one in multi-user machines.

v0.4.1.0 - 2020-01-02

  • Make Nixpkgs treat GHCJS builds as cross. This will fix things like setup-depends and build-tool-depends being properly built with GHC rather than GHCJS. That, in turn, will allow markdown-unlit READMEs and other things that we had trouble with.

  • Bump cabal-macosx to correctly use the host platform rather than build platform to decide whether its appropriate to make a desktop app bundle.

v0.4.0.0 - 2019-12-31

  • Bump nixpkgs to 19.09. This will bump the versions of numerous packages, including much of Hackage.

v0.3.0.0 - 2019-12-30

  • Bump ghcjs-dom packages:

    • ghcjs-dom to 0.9.4.0
    • ghcjs-dom-jsaddle to 0.9.4.0
    • ghcjs-dom-jsffi to 0.9.4.0
    • jsaddle-dom to 0.9.4.0
  • Bump aeson, and other packages to work with it:

    • aeson to 1.4.5.0
    • time-compat to 1.9.2.2
    • hpack to 0.32.0
    • webdriver to 0.9.0.1
  • Bump ghc to include more 8.6 backports

v0.2.0.0 - 2019-12-30

  • Upgrade reflex packages:

    • reflex to 0.6.3
    • reflex-dom to 0.5.3
    • reflex-dom-core to 0.5.3
  • Document how to accept android sdk license agreement and pass acceptance through to android infrastructure.

  • Update to GHC(JS) 8.6.5

    • Apply workaround patch for ghc#16893, avoiding segmentation fault when using base.
  • Update to the nixos-19.03 nixpkgs channel

  • Update to gradle build tools 3.1.0, androidsdk 9, and default to android platform version 28

  • Bump reflex-dom 0.5.2

  • Fixes an inconsistency between nix-shell and nix-build where certain Haskell build tools were not being overriden (#548

  • Removing long-since-broken nixpkgs.haskell.compiler.ghcSplices attribute, leaving behind nixpkgs.haskell.compiler.ghcSplices-8_6, which is its intended replacement.

  • Add optional runtimeSharedLibs parameter to buildApp. See that function's documentation for how to use it.

  • zlib for mobile doesn't provide any *.so/.dylib, that way you are guaranteed to link the .a and not one of the others by mistake.

  • Fix work-on-multi to respect the do-check of the haskell-config derivations

  • The following attributes have been deprecated in default.nix, and are now defined in nix-utils/hackage.nix:

    • attrsToList
    • mapSet
    • mkSdist
    • sdists
    • mkHackageDocs
    • hackageDocs
    • mkReleaseCandidate
    • releaseCandidates

    These are only useful to the maintainers of packages in reflex platform, and just clutter the top level for everyone else.

  • Deprecate:

    • generalDevTools
    • generalDevToolsAttrs
    • nativeHaskellPackages

    And make generalDevTools' as a replacement for just generalDevToolsAttrs with a more structured argument.

    The are exposed for now for backwards compat, but will be removed at a later point. They are mainly used in the implementation of the work-on* scripts.

  • The following attributes have been deprecated in default.nix, and are now defined in nix-utils/work-on-multi.nix:

    • workOnMulti
    • workOnMulti'

    If you just used script/work-on-multi, nothing has changed. But if you do use the nix attributes directly, see how the deprecated exports are written to migrate your code to not use them.

v0.1.0.0 - 2019-04-03

  • Move git "thunks" to dep/ dirs within each overlay, rather than one big dep/ directory at the top level. This does make checking out thunks a bit more involved, but has the benefit of untangling reflex-platform a bit and making it more modular.

  • Many of the overlays have a _dep attribute with all the source derivations introduced by the overlay. This is just so release.nix can build all the sources, ensuring that these build-time dependencies also make it to the cache. This attribute is not intended to be overridden by consumers of reflex-platform. In particular it's possible the way we now push to the cache doesn't need this, and it will be removed entirely.

  • Remove support for GHCs older than 8.4.