Skip to content

Releases: pnp/pnpcore

1.4.0

06 Oct 07:52
Compare
Choose a tag to compare

Added

  • Added IWeb.GetFileByServerRelativeUrlOrDefault methods that can return null for non existing files + dropped the IFile.Exists property as it never really worked [jansenbe - Bert Jansen]
  • Added support for reading, configuring and saving of collapsible sections on pages #539 [jansenbe - Bert Jansen]
  • Preview of Admin library providing Microsoft 365 admin functionality to PnP Core SDK users [jansenbe - Bert Jansen]
  • Support for running unit tests using Application permissions (compared to default Delegated) [jansenbe - Bert Jansen]
  • PnP Transformation Framework to support transforming external content to SharePoint Online modern pages [paolopia - Paolo Pialorsi]

Changed

  • Improved parsing of JSON ListItem content, preventing unwanted string into DateTime parsing #519 [jansenbe - Bert Jansen]
  • Ensure list item fields are not marked as changed after the initial load of the list item #508 [jansenbe - Bert Jansen]
  • Don't replace _ with x005f and space with x0020 when working with list item fields, the StaticName is to be used for instead [jansenbe - Bert Jansen]
  • Fix for "Requested value 'systemEventMessage' was not found." for Chat Messages #536 [jansenbe - Bert Jansen]
  • Default retry mechanism now uses retry-after header for REST, CSOM and Graph requests, aligned with the settings in PnP Framework [jansenbe - Bert Jansen]
  • Switched to using V1 Taxonomy API now that it's out of beta [jansenbe - Bert Jansen]
  • Implemented generic handling for non-English timezone strings, initial fix for #543 [jansenbe - Bert Jansen]
  • PnP Core SDK internals are not exposed anymore to libraries outside of the PnP Core SDK solution [jansenbe - Bert Jansen]
  • PnP Core SDK assemblies are now strong named #542 [jansenbe - Bert Jansen]
  • PERF: ImplementsInterface -> massive performance improvement! Running all offline PnP.Core tests is twice as fast... [jansenbe - Bert Jansen]
  • PERF: AsExpando removed LINQ dependencies to speed up and lower memory requirments [jansenbe - Bert Jansen]
  • PERF: Improved parsing of REST batch response for .NET 5: 50% less memory allocations + 50% to 90% performance gain (depending on the size) [jansenbe - Bert Jansen]
  • PERF: Reuse JsonSerializerOptions: overall offline test run is 10% faster [jansenbe - Bert Jansen]
  • PERF: Standardized on JsonSerializer.Deserialize, replaced JsonDocument.Parse where needed [jansenbe - Bert Jansen]
  • PERF: Get the response string, using HttpCompletionOption.ResponseHeadersRead and ReadAsStreamAsync to lower the memory pressure when processing larger responses + performance is better [jansenbe - Bert Jansen]
  • PERF: Cache LINQ based field lookups in ListDataAsStreamHandler, 35% faster when loading 2500 list items with all fields [jansenbe - Bert Jansen]
  • Added All property that gets translated to a * in the $select when PnP Framework resorts to using a SharePoint REST query [jansenbe - Bert Jansen]
  • Added _CommentCount to BuiltInFields #554 [avuorine]
  • For raw API requests the url encoding was not always done correct [jansenbe - Bert Jansen]

1.3.0

26 Jul 08:40
Compare
Choose a tag to compare

Added

  • Support for working with IListItem attachments [jansenbe - Bert Jansen]
  • Page scheduling support: enable a pages library for page publish scheduling and schedule the publishing of a page [jansenbe - Bert Jansen]
  • IsSubSite methods on IWeb [jansenbe - Bert Jansen]
  • Support for converting the site's datetime to UTC and vice versa [jansenbe - Bert Jansen]
  • Using @mentioning in page/listitem comments and replies [jansenbe - Bert Jansen]
  • Support for downloading versions of a file #483 [DaleyKD - Kyle Daley]
  • Support for ListItem versions #481 [DaleyKD - Kyle Daley]
  • Support for liking/unliking pages + adding/deleting comments and comment replies + like/unlike these comments on pages [jansenbe - Bert Jansen]
  • Support for adding/deleting comments and comment replies + like/unlike these comments on list items [jansenbe - Bert Jansen]

Changed

  • Reliabilty update when parsing taxonomy field json [jansenbe - Bert Jansen]
  • Throw exception when using a REST based list item add/update while only the user id is specified [jansenbe - Bert Jansen]
  • "Special" field value types (User, Lookup, Url, Taxonomy) were wrongly marked as changed on data load causing blanking out data with item updates [jansenbe - Bert Jansen]
  • Fixed the SharePoint Syntex ClassifyAndExtract functionality to skip folders and work well with large lists [jansenbe - Bert Jansen]
  • Fixed issue when using AddValidateUpdateItemUsingPath (used for IlistItem adds) is returning a field level add error - now an exception is thrown [jansenbe - Bert Jansen]
  • Fixed memory leaks for use cases that resulted in repeated creation of the Azure AppInsights TelemetryClient [jansenbe - Bert Jansen]
  • Fixed bug that resulted in an unneeded query due to paging #486 [PaoloPia - Paolo Pialorsi]

1.2.0

07 Jun 13:46
Compare
Choose a tag to compare

Added

  • Support for getting changes on IWeb, ISite, IList, IListItem and IFolder [DaleyKD - Kyle Daley]
  • Added support batching custom SPO REST / Microsoft Graph calls [jansenbe - Bert Jansen]
  • Added support to request additional Site/Web properties to be loaded as part of the PnPContext initialization [DaleyKD - Kyle Daley] and [jansenbe - Bert Jansen]
  • Added support for adding custom HTTP headers when executing a custom apirequest via ExecuteRequest #459 [czullu - Christian Zuellig]
  • Added support to load an IFile directly off of an IListItem #463 [DaleyKD - Kyle Daley]
  • Added missing properties to IListItem and GetDisplayName methods #452 [DaleyKD - Kyle Daley]
  • Added missing properties to IFile #445 [DaleyKD - Kyle Daley]
  • Support for making custom SPO REST / Microsoft Graph calls [jansenbe - Bert Jansen]
  • IsFile() method on IListItem [jansenbe - Bert Jansen]

Changed

  • Upgrade to version 4.30.1 of Microsoft.Identity.Web [jansenbe - Bert Jansen]
  • Upgrade to version 6.11.1 of System.IdentityModel.Tokens.Jwt [jansenbe - Bert Jansen]
  • Optimized initial load to speed up detection of "Templates" folder [jansenbe - Bert Jansen]
  • Detect existing templates folder if it's not named "Templates" [jansenbe - Bert Jansen]
  • Handle SPO REST's replacement of _ with x005f and space with x0020 when deserializing data [jansenbe - Bert Jansen]
  • Added ChangeTokenOptions class to allow creation of an IChangeToken #471 [DaleyKD - Kyle Daley]
  • Fixed an issue where adding items to the root site collection resulted in a 404 #470 [DaleyKD - Kyle Daley]
  • Split batches containing Graph Beta and Graph V1 requests into individual batches [jansenbe - Bert Jansen]
  • Prevent unneeded extra requests in a batch when the a previous batch was reused [jansenbe - Bert Jansen]
  • Fixed loading of extra properties on retrieved content types [jansenbe - Bert Jansen]
  • Renamed GetFolder methods on IListItem to GetParentFolder [jansenbe - Bert Jansen]
  • Improved reliability for ChunkedFileUpload #465 [thechriskent - Chris Kent]
  • Fixed nested QueryProperties() use on non-collection expandable properties (e.g. List.RootFolder) [jansenbe - Bert Jansen]
  • List item documentation update #461 [cesarhoeflich - Cesar Hoeflich]
  • Fix for supporting teams apps as web parts on pages [jansenbe - Bert Jansen]
  • RenderListDataAsStream populates the IListItem's IContentType [jansenbe - Bert Jansen]
  • Fixed NullReferenceException in Values_CollectionChange (issue #447) #445 [DaleyKD - Kyle Daley]
  • Ensure the Context.Group model has it's groupid set if that was available [jansenbe - Bert Jansen]
  • Use ConcurrentDictionary to track batches in the BatchClient class [jansenbe - Bert Jansen]
  • Fix BannerImageUrl to use sphost only since siteid, webid are given as parameter #439 [czullu - Christian Zuellig]
  • Alignment of PageHeaderTitleAlignment enum with what's used in PnP Framework [jansenbe - Bert Jansen]
  • Hubsite joining/unjoining documention update #416 [plamber - Patrick Lamber]
  • Fixed url encoding issue when the .NET Standard 2.0 build was used in a .NET Framework application [jansenbe - Bert Jansen]
  • Correctly handle list item data for fields starting with an _ (replace OData__ with _ when parsing the response) [jansenbe - Bert Jansen]
  • Improved handling of errors when message is not in the expected format [jansenbe - Bert Jansen]
  • Correctly handle site url's containing special characters when building a SP REST batch request [jansenbe - Bert Jansen]
  • Removed List.Url property as it does not exist on the SP.List object [wonderplayer - Rolands Strakis]
  • Get hub site information by hub site id [pkbullock - Paul Bullock]
  • Refreshed list of OOB web parts, now includes Spaces (mixed reality) web parts [jansenbe - Bert Jansen]
  • Update sites documentation #397 [wonderplayer - Rolands Strakis]
  • Added support for reading/saving Viva Topic pages [jansenbe - Bert Jansen]
  • Implement paging in loadPagesAsync [jansenbe - Bert Jansen]
  • Make loadPagesAsync work when querying for a specific page in a big list #383 [YannickRe - Yannick Reekmans]
  • Implement the EnsurePageListItemAsync method via GetFileByServerRelativeUrlAsync instead of using a CAML query to load the item to prevent 5000 item limit issues [jansenbe - Bert Jansen]

1.1.0

01 Apr 07:49
Compare
Choose a tag to compare

Added

  • Parameterless constructor for InteractiveAuthenticationProvider [jansenbe - Bert Jansen]
  • Taxonomy support [jansenbe - Bert Jansen]
  • Added HubSite methods [pkbullock - Paul Bullock]
  • Added AddRoleDefinition and RemoveRoleDefinition methods on ListItem [jansenbe - Bert Jansen]
  • Additional batch method for BreakRoleInheritance and ResetRoleInheritance [jansenbe - Bert Jansen]
  • Added ClassifyAndExtract methods for a IList [jansenbe - Bert Jansen]
  • Added AsBatchAsync overloads to allow specifying the batch to use [PaoloPia - Paolo Pialorsi]
  • Added output for ClassifyAndExtractBatch methods [jansenbe - Bert Jansen]
  • Added Batch methods for SyntexModel.GetModelPublications, SyntexModel.SyntexModel.PublishModel and SyntexModel.UnPublishModel [jansenbe - Bert Jansen]
  • Support for processing result(s) when using one of the RawRequestBatch methods (see SyntexModel.GetModelPublicationsBatchAsync and SyntexModel.PublishModelBatchAsync as examples) [jansenbe - Bert Jansen]
  • Support to request for classifying and extracting of a file via the connected Syntex models [jansenbe - Bert Jansen]
  • Exposed additional Get/Load synchronous and asynchronous extension methods #354 [PaoloPia - Paolo Pialorsi]

Changed

  • List documentation updates #375 [dgtheninja - David Gent]
  • Make Page Publish respect Version Settings and Checkout Status on publish #361 [czullu - Christian Zuellig]
  • Improved handling of ListItem operations when list item was fetch via Folder or File (ListItemAllFields property) [jansenbe - Bert Jansen]
  • CSOM batches are now split on size (when needed) [jansenbe - Bert Jansen]
  • Added CSOM batching support to ensure a multiple CSOM requests are grouped into a single server call + integrated CSOM response handling [jansenbe - Bert Jansen]
  • Added output for RecycleBatch methods on List, ListItem and File [jansenbe - Bert Jansen]
  • Fix bug in EnsureFolder: running this method when the folder structure existed tried to create the folder again [jansenbe - Bert Jansen]
  • Improved page name normalization (only # are not allowed in modern page names) #353 [Sarah4x - Sarah Wilson]
  • Uplifted samples to GA v1.0.0 #350 [pkbullock - Paul Bullock]
  • Bug fix for issue #351 - Teams Chat Messages not working [pkbullock - Paul Bullock]
  • Improved handling of special characters ('#& ) for files and folders [jansenbe - Bert Jansen]
  • Fix for single quote in client side page name #348 [Sarah4x - Sarah Wilson]
  • Improved CSOM support for content type creation and taxonomy field creation #349 [mgwojciech - Marcin Wojciechowski]
  • Fix for older SharePoint UI created image web parts where links is set to null #347 [Sarah4x - Sarah Wilson]

1.0.0

10 Mar 10:12
Compare
Choose a tag to compare
Doc updates for GA release