All notable changes to this project will be documented in this file.
- [breaking] Add localpart to CSV import and use localpart as Zitadel user ID and localpart metadata
- [breaking] Stop relying on a local cache to track changes
- [breaking] Use external ID encoding supporting lexicographical order
- Add migration script
- Pre-empt accidentally leaking PII in logs
- [breaking] Rework handling of binary fields from LDAP
- Move uuid method to user struct impl
- Split apart sample configurations
- Update README
- Split apart multi-source oriented test setup
- Update Zitadel version for test env
- Support single-source sync
- SSO Linking
- Remove bincode dependency
- Deal with new clippy lint
- Add more error context
- Update rust-cache action
- Add CronJob manifest for ldap-sync
- Add PlainLocalpart feature
- Read status attribute with TRUE or FALSE string value
- Fix certificate being not trusted on MacOS
- Add codecov configuration
- Rename to famedly-sync
- Update rust workflow
- Delete unused itertools dependency
- Add CSV source
- Remove inline
clippy::expect_used
allowances in tests - Remove outdated lint
#[allow]
s - Reduce scope of clippy lint
- Add release workflow with SBOM and attestation
- Add UKT Source support
- Add CSV Source support
- [breaking] Adjust config struct for multi-source trait
- The configuration format has changed to accommodate multiple sources. Please consult the sample configuration file.
- Retry creating, updating User with an invalid phone number
- Enable the native-tls feature for tonic/reqwest
- Use Source Trait
- Fix typos
- Fix zitadel-tools build by bumping go version
- Actually make feature flags use snake_case
- Make zitadel auth error messages richer
- Reissue of test certificates
- Add code coverage to the test workflow
- Publish containers to the OSS registry
- Fix mistakes in the sample config
- Add documentation on behavior during deactivate only mode
- Add dry-run flag
- Add curl to the container for debug purposes
- Add deactivate only mode
- Add support for configuration through env var
- Lock test tool versions
- Set required ldap attributes
- Don't exit when a single user fails to sync
- Don't sync disabled users
- Make the main function log issues in the config file
- Implement
PartialEq
to do deep byte comparison - Correctly handle ldap_poller errors
- Print error context when errors make it to the main function
- Don't set passwordless registration for users
- [breaking] Correct env-var related path issues in the docker image
- Update docker workflow
- Fix missing entry to
PATH
- Don't run everything in a container so we can use docker
- Print docker logs on failure
- Remove coverage-related actions
- Add basic doc comments across the project
- Document edge cases
- Add documentation for testing
- Document LDAPS testing architecture
- Document usage for end users
- Creation
- Implement Zitadel user creation
- Implement LDAP sync cache
- Add preferred username to user metadata
- Add user grants
- Add UUID to synced users
- Delete disabled users
- Implement propagating LDAP user deletion
- Implement user change sync
- Log successful outcomes better
- [breaking] Make LDAPS connections work correctly
- Make phone numbers optional
- Properly handle binary attributes
- Make tls config optional
- [breaking] Make using attribute filters optional
- [breaking] Implement bitflag for status attribute with multiple disable values
- [breaking] Make SSO setup mandatory and assert SSO works properly
- Fix yaml editorconfig
- Update Dockerfile
- Update to new zitadel-rust-client Zitadel::new()
- Switch famedly dependency URLs from ssh to https
- Remove no longer relevant TODO comment
- Stop using the ldap cache for now
- Clean up user conversion to more easily persist metadata
- Properly represent user fields that aren't static values
- Implement display for our user struct
- Factor the user struct out into its own module
- Remove unnecessary imports in the config module
- Give methods proper names
- Implement infrastructure for e2e testing
- Switch to openldap for testing
- Clean up Zitadel org before running the tests
- Assert that the Zitadel user is actually created
- Clean up tests a bit by making a struct for ldap
- Implement further e2e test cases
- Improve test setup logging
- Assert that email changes are handled correctly
- Move test template config to allow splitting docs and tests
- Allow
change_user
to take binary values - Fix missing
.success()
calls on ldap functions - Add test for syncing binary values