#+TITLE:Progress Log (defunct, see commit history instead)
* -1/-1
** Created this repository
** Initial blog entry on parameterized packages and progress.org, todo.org and wishlist.org
** Applied Ludo's patch to a recent version of the code
The patch was failing so I had to manually apply it.
** Added draft parameter parsers to DRAFTS
* 6/4
** GUIX repository got deleted while trying to commit, re-applied the patch and made a backup
** s/enabled/on/g s/disabled/off/g
** Created p/os-parameters and p/os-parameters-overriding!
** Added a parameters section to OS record, needs some more work
** Added required-off for packages with hard parameter disagreements
Example: an x86 package that absolutely cannot run on ARM
This feature will mostly be used for signaling errors
* 6/5
** Made a side-effect free version of p/os-parameters-overriding!
** Started work on a blog entry for the Guix site
Things to cover:
- About Me
- The Problem Statement
- How Parameters Can Benefit Guix
- Current Discussion Around Parameters
** Started looking into [[https://www.gnu.org/software/guile/manual/html_node/SRFI_002d9-Records.html][Record Types]] for parameters
Advice from Ludo: wherever possible, use *concrete data structures* instead of S-Expressions
I need to build record types for holding information about parameters and their configuration.
* 6/16
** Record types and parser functions are mostly complete
** Debugging/testing is needed before work on transforms
** The x! problem
- if a parameter x exists, x! is its opposite
- if x! isn't defined, take x! as (x . #f)
- if x! is defined and x isn't, take x as (x! . #f)
- very confusing to parse
- need to update validation and processing functions to accommodate them
** Scope for improvement: rewrite and modify-inputs
- both see extensive use in package variant definition
- could receive same treatment as transformations in the current parameter definition
* 6/19
** Everything works now
** package-with-parameters can be used to define a package with transforms required while defining
** build-system/transform and build-system/transform-match exist now
