* Start with tests against fake FTP
* Dummy test file
* Switch to our FTPClient, make tests break
* Implement FTPClient
* Rely on end caller to set path delimiters
* User port 8021 for tests (not protected in azure pipelines)
* Let mocks use Windows filesystem
* Gentle refactor
Co-authored-by: dotasek <david.otasek@smilecdr.com>
## Validator Changes
* Add support for fhir_comments in R2/R2B
* Add validator checking around versions in extension URLs
* Fix bug generating cross-version extensions
## Other code changes
* Fix minor NPEs running IG publisher
* Add new PE module (PEDefinition/PEInstance)
* Add support for liquid filters (resolve FHIRPath conflict)
* Fix up round-tripping of XPath constraints R4/R5
* Refactor R5 ProfileUtilities (and move rendering to rendering package)
* Fix appending text when generating snapshots
***NO_CI***
If the base text was null, appending a text in the derived element (using "...") would show a "null" before the text. This commit adds the method Utilities.appendDerivedTextToBase() to implement to correct behavior.
## Validator Changes
* Remove use of .fhir/package-client cache (only use the main .fhir/package now)
## Other code changes
* Hack work around for broken template input for R5 OperationOutcome
* Fix up problems with test case consistency in R5 test cases
* Add R5-snapshot3 version enum to R4 version list
***NO_CI***
## Validator Changes
* Change Java minimum version from 8 to 11
* Fix Error message missing parameter (very minor fix)
## Other code changes
* Refactoring package-list.json handling
* Upgrade code to latest R5 release (Snapshot 3)
* Fix bug with version patching loading package for the first time + fix bug determining spec reference
* Add Ids to profile spreadsheets
***NO_CI***
## Validator Changes
* Change rules around Document and Link Message validation (see [Jira](https://jira.hl7.org/browse/FHIR-39502) and [Zulip](https://chat.fhir.org/#narrow/stream/179252-IG-creation/topic/Entry.20isn't.20reachable.20by.20traversing.20from.20first.20Bundle.20entry) for details)
* Allow https://example in questionnaire example links
## Other code changes
* Rendering Improvements for deprecated codes Including deprecation reason
* Add Accept header fetching JSON
* Fix version comparison bug
* Fixes for producing profile summary in IGs
* Add contents to .index.json and bump to v2
* Fix stated package & version in alternate versions packages
* Refactor ProfileUtilities.generateSnapshot
* Fix bug in XHTML generation around empty tags
* Fix NPE appending slashes
* Fix rendering timing to not use a specific verb
* Fix R2 - RX ValueSet convertor for Code Systems
***NO_CI***
## Validator Changes
* Perform canonical resolution using package dependencies even for version specific references (workaround for VSAC bad behaviour)
## Other code changes
* Fix conversion between R3 andR4/R5 for Immunization.notGiven
* Fix parameter handling for tx server responses
* Add cast support for more types in FML implementation
* Fixes to GQL Schema generation
***NO_CI***