Commit Graph

263 Commits

Author SHA1 Message Date
Anton-Latukha
bdeeede9ae
Core: Internal: Base: (-> Nix)Base32
To name it honestly. It is not a standard Base32 encoding.

NixBase32 needs specific treatment over the stack (now & in the future), so it
is better to distinquish it from default encoding.
2021-06-10 13:18:40 +03:00
Anton-Latukha
2ae2b49a0b
Core: Internal: Base32: decode: Left: name honestly 2021-06-10 13:18:40 +03:00
Anton-Latukha
0343740efb
Core: Internal: Base32: m refactor 2021-06-10 13:18:40 +03:00
Anton-Latukha
79b461962f
Core: Internal: form Base
It is tiny, but it is a start of separation of the Base encodings from hashing subsystem.
2021-06-10 13:18:40 +03:00
Anton-Latukha
145e7de63f
Core: Internal.Hash: qualify GHC.TypeList as Kind
A preparation for further work.
2021-06-10 13:18:40 +03:00
Anton-Latukha
35da3c9ae1 overlay.nix: stop loading Core from master for Remote 2021-06-10 13:16:54 +03:00
Anton-Latukha
d390fcda7d shell.nix: layouting 2021-06-10 13:16:54 +03:00
Anton Latukha
0eb0e023c9
{Core, Remote}: proclaim 0.4.3.1 (#155) 2021-05-30 21:06:23 +03:00
Anton Latukha
b8c378ee77
Remote: Tasty removed Hspec reexports (#154) 2021-05-30 20:57:29 +03:00
Anton Latukha
b4377c753a
Release 0.4.3 (#153)
* Core: ChangeLog: add 0.4.3.0 section

* Remote: ChangeLog: add 0.4.3.0 section

* {Core, Remote}: cabal: proclaim 0.4.3.0
2021-05-30 18:55:50 +03:00
Anton Latukha
c3c5160af1
Merge #152: A bunch of fixes to sync with deps
* `saltine`
* `tasty-hspec`
* `attoparsec`
* Splitting Core & Remote Cabal GitHub CI workflows
2021-05-30 18:35:33 +03:00
Anton-Latukha
bd00d387e7
Core: System.Nix.Internal.Signature: support saltine 0.2.0 2021-05-30 18:27:50 +03:00
Anton-Latukha
722b431657
Core: tests: add dep hspec, {StorePath,Derivation}: fx import
>    No changes, but 1.1.7 should have been a major version bump due to dropping the Test.Hspec re-export.
https://hackage.haskell.org/package/tasty-hspec-1.2/changelog

M  hnix-store-core/tests/Hash.hs
M  hnix-store-core/tests/NarFormat.hs
2021-05-30 18:27:45 +03:00
Anton-Latukha
285bf4256f
Core: tests: {StorePath,Derivation}: fx Text function type 2021-05-30 18:24:52 +03:00
Anton-Latukha
0081cf88cc
CI: GitHub: Cabal: split Core & Remote into separate workflows
Before: I fixed Core, but CI was falling due to Hackage Core failing in Remote
build.

This change reassambles of how they link togather versionally.

M  .github/workflows/Core-Cabal-Linux.yml
2021-05-30 16:53:56 +03:00
Guillaume Maudoux
db71ecea31 computeStorePathForPath: force SHA256 as it's the only valid choice 2021-03-24 09:19:23 +01:00
Guillaume Maudoux
b85f7c875f add a readonly computeStorePathForPath 2021-03-24 09:19:23 +01:00
Richard Marko
f2ee216e9c
Merge pull request #145 from layus/fix-makeTextPath-order
Reorder references in makeTextPath
2021-03-24 09:12:15 +01:00
Guillaume Maudoux
5fddf3c66b Reorder references in makeTextPath 2021-03-24 02:26:50 +01:00
Anton Latukha
5978255e2e
Merge #143 fx for GHC 9.0; Cabal layout & moving -rtsopts 2021-03-16 11:13:20 +02:00
Anton-Latukha
b36c5857ef
Remote: cabal: move -rtsoptos into testsuite flag 2021-03-16 10:59:04 +02:00
Anton-Latukha
f323ba9289
Remote: cabal: layout 2021-03-16 10:59:04 +02:00
Anton-Latukha
9dd468cbe2
Core: cabal: layout 2021-03-16 10:59:04 +02:00
Anton-Latukha
c677ecdb3b
Core: cabal: make -rtsopts a part of the bounded-memory flag 2021-03-16 10:59:04 +02:00
Anton-Latukha
b4203b2e4d
treewide: "@ '" -> "@'"
Should fix builds for GHC 9.0.
2021-03-15 22:06:58 +02:00
Anton Latukha
c582d0a015
Core, Remote: m fx to ChangeLogs (#139) 2021-03-12 20:17:11 +02:00
Anton Latukha
d66ed76f0e
CI: Cabal: add macOS (#114)
The Core is works, the Remote code awaits the according to project to compile on macOS.
2021-03-12 20:14:14 +02:00
Anton Latukha
3068acd592
Core, Remote: version 0.4.2.0 (Cabal ver & ChangeLogs)
* Core: ChangeLog: add recent changes

* Remote: ChangeLog: add recent changes

* Core, Remote: version `0.4.2.0`
2021-03-12 19:38:54 +02:00
Richard Marko
2a897ab581 core: fix nar test failing when there's no /proc
Closes #109.
2021-02-25 12:49:23 +02:00
Richard Marko
cf04083aba drop haskell865Packages from default.nix 2021-02-25 12:49:23 +02:00
Anton-Latukha
a5b7a614c0 Core: rm Setup.hs as it becomes deprecated and puzles HLS
The HLS had problem that it was detecting the cabal.project in root of our
monorepo, but also was founding the Setup.hs that promised that it is a simple
project structure. And was trying to run the Core with `runhaskell`.

So HLS was throwing several errors. The explicit definition of cradles allowed
HLS to understand that it is a monorepo. And the removement of Setup.hs is
because it is not recommended anymore, and upstream work plans to deprecate it
completely in favour of arriving proper solution.
2021-02-09 00:12:02 +02:00
Anton-Latukha
b5ad38573d help HLSes determine the root of the project and the cradles 2021-02-09 00:12:02 +02:00
Anton Latukha
57a2a65757
Merge #135: Clean-up: (return, (++), map) -> (pure, (<>), fmap) 2021-02-03 14:19:43 +02:00
Anton-Latukha
e2378e0eea
Core, Remote: map -> fmap
Allow not only lists.
This for example should allow NonEmpty lists at least.

Also do not think I do this things on a whim.
I did some research on: is there a reason to use map over fmap, and are the
performance reasons?
In short - there is 0 infornamation on why some people use `map` over `fmap`, there
are no reports of performance reasons.

Well, I know that there is a possibility of a minor type class interface
compilation & runtime use cost. But I think GHC is good enough to infer zero
cost for the concrete list type for which `map` gets used.

And overall we not did thorough profiling/perfommans walkthrough so far. I am
sure that use of standard fmap for code flexibility is not a bottleneck in the
design, I've seen some performance problems design has.

And we not even did the profiling to do inlining and specialize work yet. It is
more effective to keep using `fmap`, and supply specialization, which allows to
keep the code polymorhic, portable to write for and effective in performance.
2021-02-03 13:47:00 +02:00
Anton-Latukha
f86235758a
Core, Remote: (++) -> (<>)
*afaik* (++) does not even work with OverloadedStrings with Text or ByteString.

Lets allow ourselves to switch from [] & Strings in Haskell in any part of the code.
2021-02-03 13:02:03 +02:00
Anton-Latukha
c49eb9b6d7
Core, Remote: return -> pure
I wonder why type system needs to infer Monad constraint where Applicative would
suffice.
2021-02-03 12:52:48 +02:00
Anton Latukha
792c76b0af
Core, Remote: handcrafted code clean-up (#134)
`brittany` was used.

Then all changes passed through manual supervision.

Then handcrafted code cleanup was done.

All changes are pure lambda code refactoring,
there should be no changes to the functionality.
2021-02-03 12:44:58 +02:00
Anton Latukha
ff200aa3e3
Merge #133: Clean-up 2021-02-02 13:24:34 +02:00
Anton-Latukha
3a169c762b
Core: Internal.Nar.Streamer: m cosmetics 2021-02-01 20:21:27 +02:00
Anton-Latukha
ab2d35b47e
Core: Internal.Nar.Parser: m cosmetics 2021-02-01 20:12:26 +02:00
Anton-Latukha
8bf6f26f6b
Core: Internal.Nar.Effects: m cosmetics 2021-02-01 19:25:19 +02:00
Anton-Latukha
3cdfdd1512
Core: Internal.StorePath: m cosmetics 2021-02-01 19:25:15 +02:00
Anton-Latukha
6897edd546
Core: Internal.Signature: m cosmetics 2021-02-01 19:25:11 +02:00
Anton-Latukha
cc7844a9bb
Core: Internal.Base32: m cosmetics 2021-02-01 19:25:06 +02:00
Anton-Latukha
3891df627a
Core: Internal.Base32: m cosmetics 2021-02-01 19:25:00 +02:00
Anton-Latukha
85bb89c6a0
Core: Internal.StorePath: m cosmetics 2021-02-01 19:24:50 +02:00
Anton-Latukha
81706d7e22
Core: Nar: m cosmetic 2021-02-01 00:56:39 +02:00
Anton-Latukha
af36469a75
Core: Hash: m cosmetic 2021-02-01 00:56:39 +02:00
Anton-Latukha
f0f68e8199
Core: Derivation: improve readability 2021-02-01 00:56:39 +02:00
Anton-Latukha
6a50a53097
Core: Build: m cosmetic 2021-02-01 00:56:39 +02:00