Skip to content

Commit deaa720

Browse files
Spin into own repository
0 parents  commit deaa720

File tree

11 files changed

+3227
-0
lines changed

11 files changed

+3227
-0
lines changed

.cargo-husky/hooks/pre-commit

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
cargo install --git https://github.com/facet-rs/facet-dev
2+
facet-dev generate

.github/workflows/test.yml

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# GENERATED: this file is generated by https://github.com/facet-rs/facet-dev
2+
3+
name: Tests
4+
5+
on:
6+
push:
7+
branches: [main]
8+
pull_request:
9+
branches: [main]
10+
merge_group:
11+
12+
jobs:
13+
test:
14+
runs-on: depot-ubuntu-24.04-32
15+
16+
container:
17+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
18+
steps:
19+
- uses: actions/checkout@v4
20+
21+
- uses: Swatinem/rust-cache@v2
22+
23+
- name: ✨ Run tests
24+
shell: bash
25+
run: |
26+
set -euo pipefail
27+
28+
echo "::group::All tests except doc-tests"
29+
cargo nextest run --all-features
30+
echo "::endgroup::"
31+
32+
echo "::group::Doc tests"
33+
output=$(cargo test --doc --all-features 2>&1) || exit_code=$?
34+
if [ "${exit_code:-0}" -ne 0 ]; then
35+
if [ $exit_code -eq 101 ] && echo "$output" | grep -q "no library targets found in package"; then
36+
echo "No library targets found, skipping doc tests"
37+
else
38+
echo "$output"
39+
exit $exit_code
40+
fi
41+
fi
42+
echo "::endgroup::"
43+
44+
msrv:
45+
runs-on: depot-ubuntu-24.04-32
46+
47+
container:
48+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
49+
steps:
50+
- uses: actions/checkout@v4
51+
52+
- uses: Swatinem/rust-cache@v2
53+
54+
- uses: taiki-e/install-action@cargo-hack
55+
56+
- name: ✨ Check MSRV
57+
shell: bash
58+
run: |
59+
set -euo pipefail
60+
61+
cargo hack check --each-feature --locked \
62+
--rust-version --workspace \
63+
--keep-going --exclude-no-default-features
64+
65+
minimal-versions:
66+
runs-on: depot-ubuntu-24.04-32
67+
68+
container:
69+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
70+
steps:
71+
- uses: actions/checkout@v4
72+
73+
- uses: Swatinem/rust-cache@v2
74+
75+
- name: ✨ Check minimal versions
76+
shell: bash
77+
run: |
78+
set -euo pipefail
79+
80+
# Install nightly for minimal-versions feature
81+
rustup toolchain install nightly
82+
83+
# Generate lockfile with minimal versions
84+
cargo +nightly generate-lockfile -Z minimal-versions
85+
86+
# Check with stable using minimal versions
87+
cargo check --workspace --all-features --locked --keep-going
88+
89+
docs:
90+
runs-on: depot-ubuntu-24.04-32
91+
92+
container:
93+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
94+
steps:
95+
- uses: actions/checkout@v4
96+
97+
- uses: Swatinem/rust-cache@v2
98+
99+
- name: ✨ Check documentation
100+
shell: bash
101+
env:
102+
RUSTDOCFLAGS: -D warnings
103+
run: |
104+
set -euo pipefail
105+
106+
cargo doc --workspace --all-features --no-deps --document-private-items --keep-going
107+
108+
lockfile:
109+
runs-on: depot-ubuntu-24.04-4
110+
111+
container:
112+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
113+
steps:
114+
- uses: actions/checkout@v4
115+
116+
- uses: Swatinem/rust-cache@v2
117+
118+
- name: ✨ Check lockfile is updated
119+
shell: bash
120+
run: |
121+
cargo update --workspace --locked
122+
123+
clippy:
124+
runs-on: depot-ubuntu-24.04-16
125+
126+
container:
127+
image: ghcr.io/facet-rs/facet-ci:latest-amd64
128+
permissions:
129+
security-events: write # to upload sarif results
130+
steps:
131+
- uses: actions/checkout@v4
132+
133+
- uses: Swatinem/rust-cache@v2
134+
135+
- name: Install SARIF tools
136+
shell: bash
137+
run: |
138+
cargo install clippy-sarif --locked
139+
cargo install sarif-fmt --locked
140+
141+
- name: ✨ Run clippy with SARIF output
142+
shell: bash
143+
run: |
144+
cargo clippy --workspace --all-features --all-targets --message-format=json | clippy-sarif | tee clippy-results.sarif | sarif-fmt
145+
continue-on-error: true
146+
147+
- name: Upload SARIF results
148+
uses: github/codeql-action/upload-sarif@v3
149+
with:
150+
sarif_file: clippy-results.sarif
151+
wait-for-processing: true
152+
153+
- name: Report status
154+
shell: bash
155+
run: |
156+
cargo clippy --workspace --all-features --all-targets --keep-going -- -D warnings --allow deprecated

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/target

CHANGELOG.md

Lines changed: 210 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,210 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
## [0.28.0](https://github.com/facet-rs/facet-serialize/compare/facet-deserialize-v0.24.22...facet-deserialize-v0.28.0) - 2025-07-24
11+
12+
### Other
13+
14+
- Initial import
15+
16+
## [0.24.22](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.21...facet-deserialize-v0.24.22) - 2025-07-03
17+
18+
### Other
19+
20+
- Rename SmartPointer to Pointer
21+
- Remove args-specific stuff from deserialize
22+
23+
## [0.24.21](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.20...facet-deserialize-v0.24.21) - 2025-06-26
24+
25+
### Other
26+
27+
- Add support for `Arc<[U]>` in facet-core and facet-reflect
28+
- impl Facet for Arc<str>, Rc<str>, and Box<str>
29+
- Remove ScalarDef
30+
- Remove PartialEq implementations
31+
- Apply modern clippy fixes (mostly format strings)
32+
33+
## [0.24.20](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.19...facet-deserialize-v0.24.20) - 2025-06-17
34+
35+
### Other
36+
37+
- updated the following local packages: facet-core, facet-reflect
38+
39+
## [0.24.19](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.18...facet-deserialize-v0.24.19) - 2025-06-15
40+
41+
### Added
42+
43+
- support 128-bit integers in facet-deserialize
44+
45+
## [0.24.18](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.17...facet-deserialize-v0.24.18) - 2025-06-04
46+
47+
### Other
48+
49+
- updated the following local packages: facet-core, facet-reflect
50+
51+
## [0.24.17](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.16...facet-deserialize-v0.24.17) - 2025-06-04
52+
53+
### Other
54+
55+
- updated the following local packages: facet-core, facet-reflect
56+
57+
## [0.24.16](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.15...facet-deserialize-v0.24.16) - 2025-06-03
58+
59+
### Other
60+
61+
- Add discord logo + link
62+
63+
## [0.24.15](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.14...facet-deserialize-v0.24.15) - 2025-06-02
64+
65+
### Other
66+
67+
- Migrate push_ methods to begin_ convention in facet-reflect
68+
- Allow transparent key types
69+
- remove unnecessary clone
70+
71+
## [0.24.14](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.13...facet-deserialize-v0.24.14) - 2025-05-31
72+
73+
### Fixed
74+
75+
- fix benchmark
76+
77+
### Other
78+
79+
- Simplify code for set_numeric_value
80+
- facet-json is not _currently_ nostd, actually, because of std::io::Write
81+
- Fix facet-args tests
82+
- More facet-yaml test fixes
83+
- facet-json tests pass
84+
- Fix tests
85+
- Tuple handling
86+
- Fix Bytes deserialization through implicit conversion
87+
- More facet-json tests
88+
- Some json fixes
89+
- wow everything typechecks
90+
- facet-deserialize fixes
91+
- Start porting old reflect tests
92+
- begin/end is more intuitive than push/pop
93+
- Rename some methods
94+
- Remove SequenceType::Tuple - tuples are now structs
95+
- Deinitialization is wrong (again)
96+
97+
## [0.24.13](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.12...facet-deserialize-v0.24.13) - 2025-05-27
98+
99+
### Other
100+
101+
- updated the following local packages: facet-core, facet-reflect
102+
103+
## [0.24.12](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.11...facet-deserialize-v0.24.12) - 2025-05-26
104+
105+
### Other
106+
107+
- Don't crash when errors straddle EOF
108+
109+
## [0.24.11](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.10...facet-deserialize-v0.24.11) - 2025-05-24
110+
111+
### Added
112+
113+
- *(args)* fill Substack via `Outcome::Resegment`
114+
115+
### Other
116+
117+
- Update deserialization to deserialize wrapper types as their inner shape
118+
119+
## [0.24.10](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.9...facet-deserialize-v0.24.10) - 2025-05-21
120+
121+
### Added
122+
123+
- *(deserialize)* give `Span<Raw>` byte-level precision via a `Substack` of `Span<Subspan>`
124+
125+
### Other
126+
127+
- Support deserializing to `Arc<T>`
128+
129+
## [0.24.9](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.8...facet-deserialize-v0.24.9) - 2025-05-20
130+
131+
### Added
132+
133+
- *(args)* arg-wise spans for reflection errors; ToCooked trait
134+
135+
### Other
136+
137+
- Show warning on truncation
138+
- Truncate when showing errors in one long JSON line
139+
140+
## [0.24.8](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.7...facet-deserialize-v0.24.8) - 2025-05-18
141+
142+
### Other
143+
144+
- Introduce `'shape` lifetime, allowing non-'static shapes.
145+
146+
## [0.24.7](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.6...facet-deserialize-v0.24.7) - 2025-05-16
147+
148+
### Added
149+
150+
- facet-args `Cli` trait impl; deserialize `&str` field
151+
- *(deserialize)* support multiple input types via generic `Format`
152+
153+
## [0.24.6](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.5...facet-deserialize-v0.24.6) - 2025-05-13
154+
155+
### Other
156+
157+
- Fix enum tests with a single tuple field
158+
- Well it says the field is not initialized, so.
159+
160+
## [0.24.5](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.4...facet-deserialize-v0.24.5) - 2025-05-12
161+
162+
### Other
163+
164+
- updated the following local packages: facet-core, facet-reflect
165+
166+
## [0.24.4](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.3...facet-deserialize-v0.24.4) - 2025-05-12
167+
168+
### Added
169+
170+
- *(facet-args)* rely on facet-deserialize StackRunner
171+
172+
## [0.24.3](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.2...facet-deserialize-v0.24.3) - 2025-05-10
173+
174+
### Other
175+
176+
- updated the following local packages: facet-core, facet-reflect
177+
178+
## [0.24.2](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.1...facet-deserialize-v0.24.2) - 2025-05-10
179+
180+
### Other
181+
182+
- Add support for partially initializing arrays, closes #504
183+
184+
## [0.24.1](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.24.0...facet-deserialize-v0.24.1) - 2025-05-10
185+
186+
### Other
187+
188+
- updated the following local packages: facet-core, facet-reflect
189+
190+
## [0.24.0](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.23.0...facet-deserialize-v0.24.0) - 2025-05-10
191+
192+
### Other
193+
194+
- Release facet-reflect
195+
- Release facet-derive-parser
196+
- Upgrade facet-core
197+
- Determine enum variant after default_from_fn
198+
- Uncomment deserialize
199+
200+
## [0.23.0](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.22.0...facet-deserialize-v0.23.0) - 2025-05-08
201+
202+
### Other
203+
204+
- *(deserialize)* [**breaking**] make deserialize format stateful
205+
206+
## [0.22.0](https://github.com/facet-rs/facet/compare/facet-deserialize-v0.21.0...facet-deserialize-v0.22.0) - 2025-05-06
207+
208+
### Other
209+
210+
- Get started on an event-based approach to facet-deserialize ([#500](https://github.com/facet-rs/facet/pull/500))

0 commit comments

Comments
 (0)