Skip to content

Conversation

@rydrman
Copy link
Collaborator

@rydrman rydrman commented Nov 23, 2022

Previously, embedded packages were assumed to be the enum spec type, which created an undesirable loop in the type system. Now, packages declare their embedded stub type and it can be a separate one from the package itself. This also extends to component specs, which also now are generic over the type of embedded package that they allow.

@rydrman rydrman added the Rust API Pertaining to the public rust API of the library label Nov 23, 2022
@rydrman rydrman added this to the V1 Spec milestone Nov 23, 2022
@rydrman rydrman requested review from dcookspi and jrray November 23, 2022 23:55
@rydrman rydrman self-assigned this Nov 23, 2022
@codecov
Copy link

codecov bot commented Nov 24, 2022

Codecov Report

Merging #564 (466625e) into 296-embedded-stub-trait (4173e28) will decrease coverage by 0.12%.
The diff coverage is 54.47%.

@@                     Coverage Diff                     @@
##           296-embedded-stub-trait     #564      +/-   ##
===========================================================
- Coverage                    57.82%   57.70%   -0.12%     
===========================================================
  Files                          216      216              
  Lines                        16033    16091      +58     
===========================================================
+ Hits                          9271     9286      +15     
- Misses                        6762     6805      +43     
Impacted Files Coverage Δ
crates/spk-schema/src/component_spec.rs 91.30% <ø> (-4.16%) ⬇️
crates/spk-schema/src/install_spec.rs 66.66% <ø> (ø)
crates/spk-solve/src/lib.rs 100.00% <ø> (ø)
crates/spk-solve/src/macros.rs 100.00% <ø> (ø)
crates/spk-storage/src/storage/mem.rs 73.26% <ø> (ø)
crates/spk-schema/src/v0/embedded_package.rs 27.45% <27.45%> (ø)
crates/spk-schema/src/package.rs 18.46% <42.85%> (+1.31%) ⬆️
...ates/spk-solve/crates/validation/src/validation.rs 69.25% <43.47%> (-2.06%) ⬇️
crates/spk-schema/src/component_spec_list.rs 75.00% <77.77%> (-0.39%) ⬇️
crates/spk-schema/src/spec.rs 78.63% <80.00%> (-1.71%) ⬇️
... and 11 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@rydrman rydrman mentioned this pull request Dec 23, 2022
11 tasks
@rydrman rydrman force-pushed the 296-embedded-stub-trait branch from 658caf7 to e59695f Compare February 1, 2023 00:47
@rydrman rydrman force-pushed the 296-embedded-stub-trait2 branch from c9ac9ce to 5403e14 Compare February 1, 2023 00:58
@rydrman rydrman requested a review from jrray February 1, 2023 00:59
This changes the current inheritance mechanism from being calculated
based on the specific v0::Opt::inheritance field, instead expecting the
package itself to identify downstream requests that need to be present.
In short, this means that users need to add explicit requests to
satisfy the upstream packages. As much as this is more work for users,
it ensures that the final nature of each one remains up to the package
definition so that they can be based on when conditions and/or attached
only to specific components which is not possible now.

Signed-off-by: Ryan Bottriell <rbottriell@ilm.com>
@rydrman rydrman force-pushed the 296-embedded-stub-trait branch from e59695f to 4173e28 Compare February 23, 2023 04:19
Previously, embedded packages were assumed to be the enum spec type,
which created an undesirable loop in the type hierearchy. Now, packages
define their embedded stub type and it can be separate. This also
extends to component specs, which also now are generic over the type of
embedded package that they allow.

Signed-off-by: Ryan Bottriell <ryan@bottriell.ca>
@rydrman rydrman force-pushed the 296-embedded-stub-trait2 branch from 5403e14 to 466625e Compare February 23, 2023 04:38
@rydrman rydrman force-pushed the 296-embedded-stub-trait branch 3 times, most recently from 07942f4 to 541c7bd Compare June 14, 2023 16:00
@rydrman rydrman force-pushed the 296-embedded-stub-trait branch 3 times, most recently from 7c08bd3 to d07e319 Compare June 29, 2023 02:43
Base automatically changed from 296-embedded-stub-trait to main June 29, 2023 03:32
@rydrman rydrman added the unresolved Closed but not completed label Feb 14, 2024
@rydrman rydrman closed this Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Rust API Pertaining to the public rust API of the library unresolved Closed but not completed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants