-
Notifications
You must be signed in to change notification settings - Fork 74
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
chore: migrate v4 to master #349
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- library is thread-safe - Services (static functions) called via a property of a Client object - Non-static functions called via an instance of an object - Files re-organized for better readability - All unit tests reworked to account for new structure, all based on base UnitTest (using XUnit rather than MSTest) - New annotations for CRUD operations - All CRUD operations labeled with annotations - All CRUD test operations labeled with annotations - CRUD operations grouped into regions - Fix security scanning tool installation, pin to 5.6.3 - Remove unused functions (@nwithan8, refer to this) - All update functions use `Merge` internally to update object in-place rather than returning a new object - Dependencies in .nuspec pinned - README updated - Lock beta features behind Client.Beta property (see note in Client.cs) - Beta client is more just a way to restrict user access to beta features, but does not control what API endpoint each service function hits. - Every single API call can have its API version overridden (defaults to GA if not) - Beta functions are explicitly overridden to beta endpoint.
- All properties are now TitleCased rather than snake_cased - Some properties had to be renamed to avoid conflicts (look for "// X is the enclosing class name" comments) - Removed Verify/VerifyStrict parameters from Address (naming conflict, parameters aren't actually part of the Address object, they're API call params) - All properties are nullable (most if not all will NOT be null, but since they could be, to avoid compile complaints) - Re-record all unit tests - Remove old nullability warning suppressions from main namespace (add to EasyPost.Tests) - Update CHANGELOG.md with info about nullable properties - Stricter enforcement of naming style - Fix some IDE suggestions, suppress others
end shipper id option v4
- Use fixtures now that unit tests are updated
- New exception classes with multi-level inheritance - Don't initialize HTTP/API error instances directly, use ".FromResponse" method - Helper methods to centralize the logic to determine which type of HTTP/API error to throw - Utilities available to devs and end-users to see which exception will be triggered by which status code - Unit tests to test HTTP exception generation (for both planned and unplanned status codes) - Fix some unit tests (what exceptions to expect) - Improvements to custom switch case and enum mechanics (all enums in this library will use the custom enum class for consistency) - Make static strings for error messages
* - Update README.md to account for re-architecture * - Add link to release notes in nuspec file
- Port webhook validation - Move EndShipper to GA - EndShipper all returns collection rather than list - Improve client handoff (pass client to all objects and sub-objects that can have a client) - Improve client equality (two clients are equal if their configurations are equal -> two configurations are equal if their API keys, API bases and custom HTTP clients (if present) are equal) - New unit test to verify that client is being passed properly - Port Duty Payment option - Use cache for NuGet packages in GitHub Actions CI - Port end shipper ID parameter for shipment buy - Port improvements to test report script - Add missing docstring - Move beta features out of unnecessary beta namespaces/folders - Stop using an obselete property for REST client
- Fix enum ToString - Introduce client cloning capabilities
- Use dotnet-format rather than broken dotnet format
- Add v4 information to upgrade guide
- Add LaserShipV2 datetime parameters
… making instances directly (#340) - Update unit tests for F# and VB to account for redesign
- Improvements to Batch scripts for new and existing Windows VMs (dependency installation via Google Drive) - Add nuget.config file to standardize/control our NuGet settings across machines
v4.0.0 rc1
fix assembly version
- Change EasyPost logo for NuGet
4 tasks
nwithan8
approved these changes
Oct 3, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's happening!
ronpaul.gif
jchen293
approved these changes
Oct 3, 2022
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR takes all of the following changes from v4 and puts them on the master branch.
Testing
Pray CI passes...
Pull Request Type
Please select the option(s) that are relevant to this PR.