- remove Microsoft.Bcl.AsyncInterfaces dependency from LlamaParseAspire project (not needed)
- remove Azure.Monitor.OpenTelemetry.Exporte from LlamaParse.csproj (not needed and also referencing an old version of Microsoft.Bcl.AsyncInterfaces)
- add explicit dependency to Microsoft.Bcl.AsyncInterfaces to LlamaParse to be able to use IAsyncEnumerable
- Updated LlamaParseClient constructor to deserialize the Configuration object
- Added Language and ItemsToExtract properties to the Configuration class
- Modified CreateJobAsync method in LlamaParseApiClient to accept language parameter
- Modified LoadDataRawAsync methods in LlamaParseClient to accept language parameter
- Modified LoadDataAsync methods in LlamaParseClientExtensions to accept language and itemsToExtract parameters
This commit updates the configuration handling in the `LlamaParseClient` class. The `LlamaParseClient` now accepts a `Configuration` object instead of individual parameters for API key, endpoint, and other settings. This change allows for more flexibility and easier management of client configurations.
The following significant changes were made:
- Updated the constructor of `LlamaParseClient` to accept a `Configuration` object.
- Modified the usage of `Configuration` in various test classes to pass it as an argument to the `LlamaParseClient` constructor.
- Updated the implementation of the `AddLlamaParseClient` extension method to accept a `Configuration` object instead of individual parameters.
These changes improve code readability and maintainability by encapsulating related configuration settings within a single object.
The commit updates the buildVersion variable to "0.0.0-beta" followed by the run number from GitHub actions. It also removes the sha7, buildChangeSet, and export commands as they are no longer needed.
Tests: N/A
Update build version and remove unnecessary variables in dotnet.yml workflow
The commit updates the buildVersion variable to "0.0.0-beta" followed by the run number from GitHub actions. It also removes the sha7, buildChangeSet, and export commands as they are no longer needed.
Tests: N/A
- Update the script in `.github/workflows/dotnet.yml` to output build information
- Instead of using `::set-output`, append the build information to `$GITHUB_OUTPUT`
- The build information includes `buildVersion`, `buildMode`, `bumpBranch`, `sha7`, and `buildChangeSet`
- The changes ensure that the workflow outputs the correct build details for further processing
- Refactored the `itemsToInclude` property to `itemsToExtract` in the `Configuration` class.
- Updated references to the `itemsToInclude` property to use the new `itemsToExtract` property in multiple test classes and extensions.
This commit improves code readability by using more descriptive property names, making it easier to understand which items are being extracted during processing.
- Updated the Configuration class to include a summary and parameter descriptions for the constructor.
- Added XML documentation comments to the Configuration class properties.
- Updated the InMemoryFile class to include a summary and parameter descriptions for the constructor.
- Added XML documentation comments to the InMemoryFile class properties.
- Add XML documentation for LoadDataRawAsync method in LlamaParseClient
- Add XML documentation for LoadImagesAsync and LoadTablesAsync methods in LlamaParseClient
- Add XML documentation for LoadDataAsync methods in LlamaParseClientExtensions
- Add new method LoadDataAsync that accepts a FileInfo parameter
- Add new method LoadDataAsync that accepts an InMemoryFile parameter
- Both methods load data asynchronously from a file
- Optional parameters include splitByPage, metadata, and cancellationToken
- Added `LoadDataRawAsync` method that loads data from a file or collection of files asynchronously and returns the raw results.
- Added `LoadImagesAsync` method that loads images from a document asynchronously.
- Added `LoadTablesAsync` method that loads tables from a raw result asynchronously.
- Refactored the signature of the LoadTablesAsync method in the LlamaParseClient class to include a CancellationToken parameter with [EnumeratorCancellation] attribute.
- This change allows for better cancellation handling during asynchronous table loading operations.
- Update the return statement in the RetrieveNodesWithScoresAsync function to return an empty array [] instead of using Array.Empty<NodeWithScore>().
- This change improves readability and simplifies the code.
The previous workflow file for releasing Nuget packages has been deleted, and a new file has been added with the necessary changes. The new workflow file is named "publish_to_nuget.yml" and includes the configuration for building and publishing Nuget packages. This change improves the organization of workflows related to Nuget package releases in the project.
Previously, the build version was generated using the `date` command. This commit changes it to directly use the `github.run_number` variable, resulting in a simplified and more consistent build version format.
Impact:
- Updated the `buildVersion` export statement in dotnet.yml to use `0.0.0-beta${{ github.run_number }}`
Tests:
- No tests were impacted by this change
This commit adds support for extracting the "real_width" and "real_height" properties from the image element in the LlamaParseClient class. If these properties exist, they are now included in the page metadata dictionary. This change enhances the functionality of the Job.cs file by providing additional information about image dimensions when processing jobs.
- Added a step to set build variables in the workflow
- The build variables include `buildVersion`, `buildMode`, `bumpBranch`, and `sha7`
- The values of these variables are determined based on the branch name and current date/time
- If the branch name is "release", the `buildVersion` will not have an alpha suffix and the `buildMode` will be set to "Release"
- The output of this step is used in subsequent steps for building and testing
- Updated the "Pack nugets" step in dotnet.yml to include the build version from the dateStep output.
- Removed the VersionPrefix property from LlamaIndex.Core.csproj and LlamaParse.csproj.
- Added the IsPackable property to both LlamaIndex.Core.csproj and LlamaParse.csproj.
- Set the build version dynamically using the GitHub run number
- Update the sed command to replace the version in PROJECT_FILE with the GitHub run number
- Modify the pack step to include VersionPrefix and ReleaseNotes parameters from GitHub event release tag name and body respectively
Update LlamaIndex.Core.csproj and LlamaParse.csproj files
- Change the Version property to use $(VersionPrefix) variable instead of hardcoding it as 0.0.0
This commit adds a step to set the build version dynamically in the .github/workflows/dotnet.yml file. The new step uses the GitHub run number to update the version in the specified project file. This ensures that each build has a unique version based on the run number.