Skip to content
Snippets Groups Projects
  1. Jun 26, 2021
  2. Jun 21, 2021
  3. Jun 15, 2021
  4. Jun 10, 2021
  5. May 27, 2021
  6. Apr 27, 2021
  7. Apr 14, 2021
  8. Jan 13, 2021
  9. Jan 10, 2021
  10. Dec 11, 2020
  11. Nov 14, 2020
  12. Nov 05, 2020
  13. Oct 06, 2020
  14. Sep 02, 2020
  15. Sep 01, 2020
  16. Aug 29, 2020
  17. Aug 28, 2020
    • Andreas Ziegler's avatar
      53a6720a
    • Matthias Schiffer's avatar
      features: fix handling of logical expressions · 13b743d5
      Matthias Schiffer authored
      The rewrite of the feature handling introduced multiple major bugs. One
      of them was caused by the way Lua's logical operators work:
      
      An expression of the form
      
          _'autoupdater' and _'web-advanced'
      
      would return 'web-advanced' rather than the boolean true when _ returned
      both strings unchanged (because the features are enabled).
      
      As entries with more than a single feature name in their expressions did
      not set no_default, Gluon would then attempt to add gluon-web-advanced to
      the package selection, as web-advanced is a "pure" feature.
      
      To fix this, and get rid of the annoying nodefault, separate handling of
      "pure" feature and handling of logical expressions into two separate
      functions, called feature() and when(). To simplify the feature
      definitions, the package list is now passed directly to these functions
      rather than in a table with a single field 'packages'.
      
      Fixes: ee5ec5af ("build: rewrite features.sh in Lua")
      13b743d5
  18. Aug 15, 2020
  19. Aug 13, 2020
  20. Aug 08, 2020
  21. Jul 19, 2020
  22. Jul 07, 2020
  23. Jul 06, 2020
  24. Jul 05, 2020
  25. Jul 04, 2020
  26. Jul 01, 2020
    • Matthias Schiffer's avatar
      build: rewrite features.sh in Lua · ee5ec5af
      Matthias Schiffer authored
      The `features` file is converted to a Lua-based DSL.
      
      A helper function `_` is used in the DSL; this will return the original
      string for enabled features, and nil for disabled features. This allows
      to use boolean operations on features without making the code too
      verbose.
      
      Besides having more readable and robust code, this also fixes the bug
      that all files `packages/*/features` were evaluated instead of only
      using the feature definitions of currently active feeds.
      ee5ec5af
Loading