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

Modify csharp project so package supports both x64 and arm64 under macOS #2

Open
wants to merge 57 commits into
base: dotnet-support
Choose a base branch
from

Conversation

bbatchelder
Copy link

Also had to modify main Makefile to build both arch if host OS is macOS.

Not sure if this is the best approach.

bbatchelder and others added 30 commits April 26, 2022 11:20
…cOS (Darwin).

Also had to modify main Makefile to build both arch if host OS is macOS.

Not sure if this is the best approach.
* Publish release job now marks release as latest.

* Use tag to find release.

* Latest

Co-authored-by: Stephen Olsen <[email protected]>
* Deprecate @python_class decorator

Deprecate `@python_class` and update affected unit tests to consume a
new `register_classes` fixture which performs the same work to register
classes for tests.

Update Github action Python version to 3.7 except in the case of 
`.github/workflows/test.yml` where we will continue testing against 
Python 3.6 as the minimum supported version.
* BAH isa fix?

* pure-rws

* less infinite loops

* never_is_subspecializer

* pr changes

* rm combine_partials

* test unchanged

* one more level of dots in the test

* restore comment

* revert vm.rs to main

* changelog

* Hanging test.

* fix

* fix field type lookup in python host lib

* changelog

* clean up some tests

Co-authored-by: David Hatch <[email protected]>
* depsort relations

* no duplicates
* no tests yet but good start

* progress

* lots passing, some failing

* fix tests

* cleanup

* exportable typeorm adapter (osohq#1485)

* typeorm adapter

* prettier

* linty

* Couple nits

* Remove commented-out code

* Nit

* Remove unnecessary ESLint comments

* pr changes

* simplify handleCall

* {Q,R} -> {Query,Resource}

* Missed an expansion

* Missed another expansion

* Doesn't seem to need to be exported

* rw adapter

* move adapter to new file

* lint

* do not export

* actually do export it

* add some comments on the types

* nevermind it is private

* Update languages/js/src/Oso.ts

Co-authored-by: Gabe Jackson <[email protected]>

* new handleRelation type

* rm Serialized types

* reorder type params

Co-authored-by: saolsen <[email protected]>
Co-authored-by: gw <[email protected]>
Co-authored-by: Gabe Jackson <[email protected]>
* Constrain Go instance type equality to exact matches

Previously we relied on Go's reflect.ConvertibleTo to determine whether
two instances were of equivalent types, however this results in runtime
type confusion between structs of identical schemas.

* Update languages/go/tests/parity_test.go

* Add breaking change entry for updated Go type checking

* Add `NewTypes` word allowlist; sort list for legibility

* wordlist update pt 2

* Update docs/content/any/project/changelogs/NEXT.md

Co-authored-by: Sam Scott <[email protected]>

* Update go breaking change entry w/ example code & rule

* Update docs/content/any/project/changelogs/NEXT.md

Co-authored-by: Sam Scott <[email protected]>

* Update docs/content/any/project/changelogs/NEXT.md

* redo wordlist sorting without case sensitivity ; add Newtype(s)

* Remove unused Go inheritance parity tests & related code

Remove (instead of just comment out) Go parity tests relating to inheritance
which are no longer relevent due to changes to instance type checking.

* Clarified comment RE go instance type matching behavior

Co-authored-by: Sam Scott <[email protected]>
Co-authored-by: Gabe Jackson <[email protected]>
Co-authored-by: Gabe Jackson <[email protected]>
* hierarchies to folder.

* Move hierarchies & add cloud.
* rm most of it

* rm the rest from python

* py docs update

* sequel adapter

* rm node df test

* rm node add-to-your-app

* no node

* rm references to removed doc

* rm another node example

* restore node app

Co-authored-by: Stephen Olsen <[email protected]>
* look up relations on bound queries

* unregisterd type is not an error

Co-authored-by: Stephen Olsen <[email protected]>
Co-authored-by: Gabe Jackson <[email protected]>
gj and others added 27 commits May 15, 2022 22:24
* go mod tidy

* go mod tidy 🤨

* Run some tests

* Re-run 'go mod tidy'

* Revert "Run some tests"

This reverts commit 43a69a8.

* This seems better

* cd tests && go get -u -t ./... && go mod download && go mod tidy

* Don't need this on 1.16?

* Update release tests

* Run CI

* Forgot about M1

* 'go mod tidy' in docs/examples/rbac/go

* Revert "Run CI"

This reverts commit 38d2050.
…es; use for in-VM IsA checks (osohq#1472)

Create `Constants` type which wraps two HashMaps describing Symbol ->
Term and ID -> Symbol relationships. This second ID -> Symbol index is
populated by reading the optional `class_id` information in
`ExternalInstance` and will be used to implement in-core IsA checks
where present.

Extend `vm#isa` to attempt an in-core check when the `ExternalInstance` value
we're processing has the necessary `class_id` information declared. At time of
commit Python is the only language which is capabale of passing this information
to the core.

* {JS,Python,Ruby} Format ExternalInstance values with user-provided class names if present  (osohq#1488)

Co-authored-by: Gabe Jackson <[email protected]>
…pter (osohq#1547)

* Add a few links to Oso Cloud docs and microservices Authz Academy

* Fix spell check

* Attempt to fix new python3.6 incompatibility in werkzeug

* Clippy fixes
* (Java): Bump jnr-ffi to 2.2.11

Bumps jnr-ffi to a newer version with Apple Silicon support

* (Java): Update release workflow to use a fat .dylib for jar build

Co-authored-by: Stephen Olsen <[email protected]>
* refactor: prefer yield from over looping

* style: move yield from to a single line
* Make polar-language-server out dir customizable

* fix

* error if OUT_DIR is not defined

Co-authored-by: Gabe Jackson <[email protected]>
…#1568)

* [Django] Use name of variable instead of Python variable repr.

* Run `go mod tidy` before testing

* Drop tests for Python 3.6 on Windows

No longer supported by action actions/setup-python#355 (comment)

* Update submodules.
* Update partial.py

Two bugs:

1. `left_path` can be an empty tuple. And it will throw
```
assert left_path[0] == Variable("_this")
IndexError: tuple index out of range
```
2. In the case that `left` is an ORM object, then you also want to check `isinstance(left, constraint_type)`.

I'm probably missing subtleties, but I can confirm, that on my project, I needed the extra `or` condition, or valid resources returned by `oso.authorized_resources` were dropped.

* handle python `bool`

`and_filter` crashed due to `<python_bool> & <sqlalchemy_expression>` failing due to type-error.

* Add changelog entry RE sqlalchemy-oso bug fixes

* add username to allowed_words.txt for docs linting

Co-authored-by: Jack Reilly <[email protected]>
* Remove use of deprecated __ident_func__ from Werkzeug

* Fix lint

* Fix mypy

* Try to fix docs test

* Go mod tidy is needed everywhere now randomly

Co-authored-by: Sam Scott <[email protected]>
* bump and changelog

* cl
@iinuwa
Copy link
Owner

iinuwa commented Jun 6, 2022

For the original commit in this PR, I'm not sure that's the right approach. At least, it doesn't fit with how the other languages are set up.

I'm not familiar with development on OSX these days; is it required to cross-compile both x64 and arm64 to build the package locally?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.