What's New - Release Notes

his section provides a comprehensive list of the improvements, updates, fixes, and changes in the Ed-Fi ODS / API for Suite 3 v7.0 release, with links to the relevant issue in the Ed-Fi Tracker.

Ed-Fi ODS / API v7.0 - Release Notes

Important Epics

  • [ODS-5616] - Dynamic Profiles
  • [ODS-5658] - GitHub Actions Follow-ups
  • [ODS-5713] - Deployment Mode and Routing Flexibility and Simplification
  • [ODS-5714] - Flexible Data Standard Version Support
  • [ODS-5716] - Align ODS /API to v5.0a Data Standard

General Improvements & Enhancements

  • [ODS-5727] - Simplifications to API client experience using Profiles
  • [ODS-5752] - Authorization strategy for reference data
  • [ODS-5329] - Need way to be able to track the details of failed API calls
  • [ODS-5648] - Add support for read replicas to the API
  • [ODS-4229] - Improve Error Message for Sub Class Key Collision
  • [ODS-5725] - Enforcement of Required/Optional Embedded Objects in Resources
  • [ODS-5728] - Verify API behavior with minmax conditions in released API versions
  • [ODS-5729] - Consider updating API error messages to be more meaningful to the API client
  • [ODS-5744] - Update DB Deploy for folder structure changes
  • [ODS-5747] - WebAPI package metadata update
  • [ODS-5749] - Consistency on cache expiration initialization and default values
  • [ODS-5751] - Update API code to follow default database collation
  • [ODS-5755] - API validation for string min/max
  • [ODS-5770] - Update versionmap.json when new standard is released
  • [ODS-5783] - Move all range validation to entity classes
  • [ODS-5787] - Initdev switches need validation
  • [ODS-5802] - Consistency in configuration initialization and default values
  • [ODS-5812] - Update System.Data.SqlClient references to Microsoft.Data.SqlClient
  • [ODS-5832] - Improve descriptor delete execution
  • [ODS-5853] - Reduce string allocations for query executions related to POST requests and paged API GET requests
  • [ODS-5859] - Bring in MetaEd sql script changes for performance improvements
  • [ODS-5865] - Required properties whose default value has domain meaning should be explicitly supplied
  • [ODS-5872] - Swagger Add year and tenant dropdowns to swagger UI
  • [ODS-5880] - Optimize API resource usage during security and authorization processing
  • [ODS-5881] - Remove unused tables from Admin database
  • ODS-5943] - Create indexes on Education Organization ids for improving performance of authorization on paged GET requests

Bug Fixes

  • [ODS-1175] - Allowing primary key updates bypasses data validation on the updated key values
  • [ODS-2706] - Required Collection validation not performed on top-level aggregate extension collections or embedded objects
  • [ODS-3031] - API Is Ignoring Natural Key Values When Using PUT With No Primary Key Update Support
  • [ODS-4956] - Sandbox 5.2 latest is encrypting the Secret after first use
  • [ODS-5318] - Server error when posting new EducationContent with no contentIdentifier
  • [ODS-5621] - Use correct PostgreSQL table name in API error message returned for foreign key constraint violation
  • [ODS-5660] - Remove dependency on WebAdministration module in IIS installers
  • [ODS-5664] - Relationship-based authorization of PUT/POST/DELETE requests returns 500 status for API client with no ed orgs
  • [ODS-5674] - Postgres migration script in wrong directory
  • [ODS-5686] - Minimal template should include only include descriptors with ed-fi namespace
  • [ODS-5704] - Rebuild Database Templates workflow -failing for manual run
  • [ODS-5730] - suppressStaffCache Apisetting Path is wrong
  • [ODS-5758] - ODS/API not requiring ContentStandard on LearningStandard
  • [ODS-5797] - API json request with improper time format give a Internal Server Error
  • [ODS-5805] - _lastModifiedDate is missing from swagger
  • [ODS-5811] - Fix broken builds due to SQLServer Module update
  • [ODS-5817] - Codegen error on a specific extension scenario
  • [ODS-5818] - Remove unnecessary null check from Change Queries endpoints relationship-based authorization filter
  • [ODS-5831] - PUT on API resources not performing required field validations
  • [ODS-5877] - Database deploy script using incorrect name for Ods database
  • [ODS-5888] - External cache with encryption
  • [ODS-5903] - Granting ReadChanges action to ClaimSet also grants Read and Update actions
  • [ODS-5907] - Updating key values on a resource that does not support the key updates doesn’t produce an error response

Ed-Fi ODS / API v7.0 - Breaking Changes 

Apart from the breaking changes introduced by the data standard, there are some breaking changes in the API behavior introduced at the API tech stack

Area

Issue

Tracker Ticket*

change query snapshots 

Endpoint ChangeQueries/v1/snapshots

The snapshots Endpoint was removed. API now allows single snapshot configuration and clients can indicate the intent to use the snapshot with the HTTP header 'Use-Snapshot' instead of previously used 'Snapshot-Identifier' HTTP Header. See Using the Changed Record Queries for details 

ODS-5804 - Getting issue details... STATUS

Validation - Throughout the API surface 

Required fields whose default values have domain meaning should be now be explicitly supplied. Earlier versions of the API assigned default values to non nullable required fields when not supplied by the API client. 

ODS-5865 - Getting issue details... STATUS

Validation - Throughout the API surface 

API now applies min/max validations when specified in the model.

ODS-5755 - Getting issue details... STATUS

ODS-5626 - Getting issue details... STATUS

ODS-5574 - Getting issue details... STATUS

Routes - Throughout the API surface 

ODS / API 7.0 allows simplified uniform routes. Depending on the configuration of the deployed ODS, SchoolYear segment may not be present or in case when additional segments are present, they appear at the beginning of all routes allowing easy configuration for API clients. See API Routes for details. 

ODS-5713 - Getting issue details... STATUS

Validation - Throughout the API surface 

ODS / API 7.0 Fixed enforcement of required embedded objects in resources 

ODS-5725 - Getting issue details... STATUS

Validation - Throughout the API surface 

ODS / API 7.0 now results in error response (instead of ignoring) when primary key value changes are submitted for resource that doesn't allow key updates 

ODS-5831 - Getting issue details... STATUS


Ed-Fi ODS / API v7.0 - Known Issues

The table below identifies key areas of functionality that are known to have issues in this release.

Area

Issue

Tracker Ticket*

Endpoint /ed-fi/sections 

The locationSchoolReference field is unusable.

  • If both locationReference and locationSchoolReference are submitted, the locationReference school will be saved.
  • If only locationSchoolReference is submitted (without a locationReference), then it will not be saved.
  • If only locationSchool is submitted, the locationSchoolReference will appear populated on a GET.

ODS-3082 - Getting issue details... STATUS

You can also view release information in Ed-Fi Tracker here.

Contents

Find out more about what's new in the latest version of the Ed-Fi ODS / API: