update 1.4 with master (including 1.3.7)#437
update 1.4 with master (including 1.3.7)#437dpatti wants to merge 16 commits intofosskers:aura-1.4from
Conversation
This should essentially fix issue fosskers#441: fosskers#411
The old link returned a 404 error.
friendlier to nullable json object
Fix broken link in the docs
Escape urls for the AUR
Updated Localisation Guide Link
- Also, have the user pass in the `Manager`. This lets them define one for their entire application. Creating one per request is actually quite wasteful in terms of performance.
- `http-client` with `http-client-tls` should be enough, testing to follow.
There have been some major diversions on both ends, so this brings all the recent 1.3 work into the 1.4 branch. To summarize: * The `aur` package was updated to 6.0. * The `nightly-2016-10-01` is used as the stack resolver. Note that `megaparsec` and `basic-prelude` had some major changes in the interim, so they have been locked to their old `lts-5.13` versions for the time being. * `wreq` has been replaced with `http-client`, and the functions that take `Manager` objects have been updated. * `microlens` is no longer a dependency. The most tedious part of the merge was dealing with all the import conflicts. I tried for the most part to stay true to the style of the current master in terms of ordering and spacing, but there are likely still some differences.
|
Thank you for your effort, I'm sure this PR wasn't without pain. I'm going to mull-over our options. The potentially confusing spacing issues surrounding import statements is a reflection of Emacs's import qualified Foo as F
import Bar (bar)I use this style now with all my Haskell libraries, but a few of Aura's older modules might not have had this done to them. |
|
I've seen and used the As far as a rewrite goes, I would definitely be willing to help, but I suppose you have most of the big picture floating around in your head. However, the reason I've been trying to contribute (in addition to having some time on my hands) is that the current version of Aura doesn't handle some packages correctly, including some of the packages that I have installed on my machine. I would really love to have a version of Aura that deals with |
There have been some major diversions on both ends, so this brings all
the recent 1.3 work into the 1.4 branch. To summarize:
aurpackage was updated to 6.0.nightly-2016-10-01is used as the stack resolver. Note thatmegaparsecandbasic-preludehad some major changes in theinterim, so they have been locked to their old
lts-5.13versions forthe time being.
wreqhas been replaced withhttp-client, and the functions thattake
Managerobjects have been updated.microlensis no longer a dependency.The most tedious part of the merge was dealing with all the import
conflicts. I tried for the most part to stay true to the style of the
current master in terms of ordering and spacing, but there are likely
still some differences.
I thought I would do this to get an understanding of how the codebase has changed in both directions since 1.4 was started. It was quite a rocky journey, but I think I have a better understanding of where things are now. I suppose there are a few options going forward:
aura-1.4branch, dealing with merge conflicts like this. The biggest downside is that there could be a huge barrier to working on 1.4 in the future if things diverge again.aura-1.4intomasterand optionally keep a1.3.xbranch for further patch releases if necessary. This has the added benefit of putting most new code intomasterand only important changes can be applied to the1.3.xbranch, released, and merged back into master immediately.aura-1.4branch, but use it as a guide, and split it into smaller prs (i.e., using the top-level checklist items) that get merged intomasteras they are done. This has the added benefit of creating a less confusing history, and as long as each branch builds and is tested, there is the option of not even having a 1.3 branch.To me, the outsider, the third option sounds the most attractive, mostly because even this merge commit looks horrifying, when I actually (hopefully) did not refactor or add any new behavior. It's something to think about, I suppose.