Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add config file support for @kipper/cli #519

Merged

Conversation

Luna-Klatzer
Copy link
Member

@Luna-Klatzer Luna-Klatzer commented Jun 20, 2024

What type of change does this PR perform?

  • Maintenance (Non-breaking change that updates dependencies)
  • Info or documentation change (Non-breaking change that updates repo info files (e.g. README.md, CONTRIBUTING.md, etc.) or online documentation)
  • Website feature update or docs development changes (Change that changes the design or functionality of the websites or docs)
  • Development or internal changes (These changes do not add new features or fix bugs, but update the code in other ways)
  • Bug fix (Non-breaking change which fixes an issue)
  • New feature (Non-breaking change which adds functionality)
  • Breaking change (Major bug fix or feature that would cause existing functionality not to work as expected.)
  • Requires a documentation update, as it changes language or compiler behaviour

Summary

Implemented support for Kipper config files which allow the automatic configuration of Kipper projects. Alongside this there is also additional functionality for the @kipper/cli, which automatically loads config files and uses them to run or compile a project.

Closes #508

List of Changes

  • Implemented Kipper config scheme and parser.
  • Added project setup wizard.
  • Added @kipper/cli automatic config loading.

Does this PR create new warnings?

None.

Detailed Changelog

Added

  • Support for config files with a new monorepo package called @kipper/config, which implements config file loading
    and parsing. This package is used by the Kipper CLI to automatically load and parse config files.
    (#502).
  • Added setup wizard to the @kipper/cli to automatically create a Kipper project with a config file.
    (#502).
  • New class:
    • PromptModule in @kipper/cli, which contains all prompt-related functions and classes.
  • New functions:
    • loadConfig() in @kipper/cli, which loads a config file from the specified path.
    • loadAutoConfig() in @kipper/cli, which loads a config file from the current working directory.
    • copyConfigResources() in @kipper/cli, which copies the resources from the config file to the output directory.

Linked issues or PRs

@Luna-Klatzer Luna-Klatzer added the feature New feature or enhancement label Jun 20, 2024
@Luna-Klatzer Luna-Klatzer self-assigned this Jun 20, 2024
Copy link
Contributor

github-actions bot commented Jun 20, 2024

size-limit report 📦

Path Size Loading time (3g) Running time (snapdragon) Total time
./kipper/web/kipper-standalone.min.js 136.06 KB (+0.21% 🔺) 2.8 s (+0.21% 🔺) 327 ms (+34.94% 🔺) 3.1 s
./kipper/web/kipper-standalone.js 136.1 KB (+0.21% 🔺) 2.8 s (+0.21% 🔺) 322 ms (+27.15% 🔺) 3.1 s

Copy link

codecov bot commented Jun 20, 2024

Codecov Report

Attention: Patch coverage is 65.22911% with 129 lines in your changes missing coverage. Please review.

Project coverage is 82.49%. Comparing base (df4b943) to head (3c86d92).
Report is 1 commits behind head on dev-next.

Files Patch % Lines
kipper/cli/src/commands/new.ts 23.33% 46 Missing ⚠️
kipper/cli/src/prompt-module.ts 20.00% 12 Missing ⚠️
kipper/cli/src/decorators.ts 28.57% 10 Missing ⚠️
kipper/config/src/kipper-config-interpreter.ts 87.50% 2 Missing and 8 partials ⚠️
kipper/config/src/tools.ts 42.85% 4 Missing and 4 partials ⚠️
kipper/cli/src/config-loader.ts 58.82% 6 Missing and 1 partial ⚠️
kipper/cli/src/copy-resources.ts 45.45% 6 Missing ⚠️
kipper/config/src/abstract/config-interpreter.ts 83.33% 3 Missing and 3 partials ⚠️
kipper/cli/src/commands/compile.ts 79.16% 0 Missing and 5 partials ⚠️
kipper/cli/src/input/file-stream.ts 44.44% 5 Missing ⚠️
... and 6 more
Additional details and impacted files
@@             Coverage Diff              @@
##           dev-next     #519      +/-   ##
============================================
- Coverage     83.85%   82.49%   -1.37%     
============================================
  Files           191      205      +14     
  Lines          3271     3598     +327     
  Branches        341      406      +65     
============================================
+ Hits           2743     2968     +225     
- Misses          383      462      +79     
- Partials        145      168      +23     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Luna-Klatzer Luna-Klatzer added the breaking change This is a breaking change label Jun 24, 2024
@Luna-Klatzer Luna-Klatzer added this to the v0.11.0 milestone Jun 24, 2024
@Luna-Klatzer Luna-Klatzer linked an issue Jun 24, 2024 that may be closed by this pull request
8 tasks
@Luna-Klatzer Luna-Klatzer merged commit db428e5 into dev-next Jun 25, 2024
13 of 15 checks passed
@Luna-Klatzer Luna-Klatzer deleted the 508-feature-add-config-file-support-for-kippercli branch June 25, 2024 06:09
@Luna-Klatzer Luna-Klatzer mentioned this pull request Jul 10, 2024
41 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change This is a breaking change feature New feature or enhancement
Projects
Development

Successfully merging this pull request may close these issues.

[Feature] Add config file support for @kipper/cli
1 participant