Office 365 Developer Patterns and Practices June 2015 release is out with new contributions from community for the others in the community. This post contains all the details related on what was included with the release and what else has been happening in the PnP world during the past month.
What is Office 365 Developer Patterns and Practices (PnP)?
PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications.
This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.
Notice that since this is open source community program, there’s no SLAs for the support what we provide from program. There is however highly active PnP Yammer group, where you can get fast support on any questions around the existing materials. If you are interested on getting more closely involved, please check the following guidance from our GitHub wiki.
Some statistics around PnP program
- GitHub repository forks - 624
- Yammer group members - 2615
- Unique visitors during past 2 weeks - 4127
- Merged pull requests - 666
- Closed issues - 145
- PnP Core component NuGet package downloads - 6588
Main resources around PnP program
- PnP under dev.office.com – https://aka.ms/OfficeDevPnP
- One location for all the resources
- PnP GitHub - https://aka.ms/OfficeDevPnPGitHub
- PnP MSDN pages - https://aka.ms/OfficeDevPnPMSDN
- PnP Yammer group - https://aka.ms/OfficeDevPnPYammer
- PnP Videos at Channel 9 - https://aka.ms/OfficeDevPnPVideos
- PnP training package (videos coming soon) - https://aka.ms/OfficeDevPnPTraining
- PnP Guidance Repository – https://aka.ms/OfficeDevPnPGuidance
Monthly PnP community call – June 2015
We will have monthly community calls on every second Tuesday of each month. These calls are 50% of status discussions and 50% of demos. You can find call information for the 9th of June community call from here (.ics File in PnP Yammer group).
Agenda for 9th of June
- Summary on the June release and upcoming changes in program - Vesa Juvonen ~30 min
- New provisioning solution using PnP engine - Frank Marasco ~10 min
- Latest in PnP PowerShell - Erwin van Hunen ~10 min
- Possible 3rd demo – work in progress
Notice that we will not have master merge or community call during July, but these will continue normally from August and development continues in the Dev branch during this time period as well. You can find calendar invite for the calls happening starting from August from our Yammer group as well.
PnP usage survey 2015 June
We are also collecting input for the planning of resource usage in the future at the PnP program. We would highly appreciate if you’d take the time and answer to following survey. Thanks for your response advance. We use these results to make decisions around resourcing and concentration areas for next months.
PnP 2015 June release notes
You can find June and previous month release information also from the PnP GitHub project wiki at https://github.com/OfficeDev/PnP/wiki/Monthly-Update-2015-June. This is cross post with the readme from the GitHub repository.
This release was another great release with numerous highly valuable contributions from the external and internal community.
The first version of the PnP remote provisioning engine was released with the April release. For the June release we have continued to add new supported capabilities and made improvements from stability perspective for both Office 365 and on-premises. This list contains the main updates that have been added in the June release:
- Bug fixes related on the on-premises support
- Support for enabling drafts in lists
- Set welcome page for site
- Better lookup field support
- Better root template detection for all oob site definitions
- JSON formatter for template configuration
- Testing and additional support for on-premises usage
- PnP Core: Lots of re-factoring done to improve code quality and completeness:
- Massive amount of provisioning engine updates (see above)
- Support for controlling Ratings and Likes settings in list
- Ability to retrieve all available variation labels from site
- Add multiple custom actions at once to site
- Support for indexed property bag values added
- Check for illegal characters for file, folder and site creation
- Both PnP Core Nuget packages (cloud and on-premises) have been also updated accordingly.
- New solution Provisioning.UX.App which shows more comprehensive solution build around the PnP provisioning engine.
- New sample Core.JSOM.BinaryUpload demonstrates how to upload binary files from SharePoint Hosted App to the host web.
- New sample Core.ManageUserCustomActions shows how to manage UserCustomActions Objects using a Form interface where is possible to include/edit/delete UserCustomActions.
- New sample AzureAD.GroupAuthorization shows how to use windows Azure Active directory and the groups to authorize actions in your asp.net MVC app or Office 365 Add-In
- Updated sample Branding.JSLink to include also sample which transforms an announcements list into an accordion
- Updated scenario Provisioning.Framework.Console to support both Office 365 and on-premises as target SharePoint site
- Updated PowerShell.Commands with new CommandLets and with few fixes
- Add-SPOListItem for adding new items to lists
- Add-SPOHtmlPublishingPageLayout added with destination folder parameter
- Remove-UserFromGroup supports email and account name approaches
- Add-SPOFile updated to create destination folder if does not exist
- Add-SPOPublishingPageLayout updated to support destination folder hierarchy
- New-SPOTenantSite works with on-premises as well (if CSOM enabled)
- Documentation and help updates
- Updated May community call presentation with latest version
PnP Guidance articles
The PnP Guidance repository has been setup for working on articles. Part of these articles are already available on MSDN and more will follow. Everyone can contribute or update these articles via updating them in GitHub and the changes will flow back to MSDN once the synchronization setup has been completed.
Right now we are working on specific App Model Recipes (>30 articles overall) in this area together with Todd Baginski where Todd is collecting the key guidance from the Core team and community for collecting the learning's and recommendations with specific topics. You are more than welcome to also contribute on this work by providing input and feedback.
In the this release the following new articles have been added:
- Branding and site provisioning solutions for SharePoint 2013 and SharePoint Online
- App model recipe - MMS manipulation
- App model recipe - Elevated privileges
- App model recipe - OneDrive for Business customization
- App model recipe - User controls and Web controls
PnP Guidance videos
Guidance videos are available from the PnP Channel 9 section. These are the new videos released last month, but be sure to check the older ones as well, if you’re interested on seeing PnP material live.
- Introduction to PnP PowerShell Cmdlets
- Getting Started with PnP Provisioning Engine
- Deep dive to PnP provisioning engine schema
Key contributors for the June 2015 release
Here’s the list of most activate contributors (in alphabetical order) during the month June. We are looking forward to continue working with such a talent and hope to get more additional people involved on this joint effort to help the community with the Office 365 and SharePoint add-in model/app model techniques.
Thank you for your assistance and contributions from the behalf of the community. You are making a difference!
- Akhilesh Nirapure (Rapid Circle) - @AkhileshN
- André Lage (Processlynx AG)
- Arnold Boersma (Deloitte) - @arnoldboersma
- Chirag Bhatia - @chirag64
- Erwin van Hunen (Knowit AB) - @erwinvanhunen
- Ivan Vagunin (Knowit AB) - @ivagunin
- Joshua Petryk (Black Lance Technologies LLC)
- Luis Valencia - @levalencia
- Marco Wiedemeyer (Otto Group) - @mwiede
- Paolo Pialorsi (PiaSys.com) - @PaoloPia
- Patrik Björklund (Alloc IT) - @pbjorklund
- Radi Atanassov (OneBit Software) - @RadiAtanassov
- Robrecht Van Caenegem (U2U)
- Scot Hillier - @ScotHillier
- Stefan Bauer (n8d) - @StfBauer
- Tobias Zimmergren (Tozit AB) - @zimmergren
- Torsten Schuster
- Vladimir (OneBit Software) – @vlad0net
- ZeBobo5 - GitHub alias
Here’s the list of Microsoft people who have been closely involved on the PnP work during last month.
- Antons Mislevics (Microsoft)
- Bert Jansen (Microsoft) - @O365Bert
- Brian Michely (Microsoft) - @brianmichely
- Dan Budimir (Microsoft)
- Frank Marasco (Microsoft) - @frank_marasco
- Jeremy Thake (Microsoft) - @jthake
- Kiki Shuxteau (Microsoft)
- Laura Graham (Microsoft)
- Reeza Ali (Microsoft)
- Ron Tielke (Microsoft)
- Sami Nieminen (Microsoft)
- Steven Follis (Microsoft) - @steven_follis
- Steve Walker (Microsoft) - @sharepointing
- Vesa Juvonen (Microsoft) - @vesajuvonen
Here's some statistics from the PnP repository. It's great to see the growing contribution numbers and for example how our punch card looks like, since it proofs that this is truly a global effort with contributions 24/7.
See About Repository Graphs for more details on above statistics.
We will have a one month break with the monthly releases (master merge) during July, but the development continues in the Dev branch. Next master merge will happen 3rd of August. We are also looking into splitting the PnP repository to logical smaller repositories based on the use case and start creating more content related for example Office add-in and Office 365 APIs.
More details on the upcoming changes and plans from the June Community Call on 9th of June (8 AM PST).
“Sharing is caring”