All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.10.0 - 2019-02-??
- New
site
API method:group().create()
#47 (DavidPratten) - New
site
API method:group().delete()
#47 (DavidPratten) - New
site
API method:group().addUser()
#47 (DavidPratten) - New
site
API method:group().removeUser()
#47 (DavidPratten)
- Updated library to use content-type
nometadata
instead of always usingverbose
, saving 25-50% of payload size of the JSON results (gitbrent) - Updated JSON result parsing to handle more cases/styles (nometadata, verbose, MS Graph) (gitbrent)
- Updated construction of REST
headers
to make it more robust (gitbrent) - Updated Promise reject error message: Returned string now includes SharePoint
error.code
and no longer shows the "URL used:" string; Updated parsing code to be more robust; Now includes support for parsing Microsoft Graph REST API call errors. (gitbrent) - Fix:
APP_OPTS.baseUrl
now uses_spPageContextInfo.siteServerRelativeUrl
#46 (DavidPratten)
1.9.0 - 2018-12-12
- New
file
API method:checkin()
(gitbrent) - New
file
API method:checkout()
(gitbrent) - New
file
API method:delete()
(gitbrent) - New
file
API method:recycle()
(gitbrent) - New
folder
API method:add()
(gitbrent) - New
folder
API method:delete()
(gitbrent) - New
folder
API method:recycle()
(gitbrent) - New
folder
API method:upload()
#18 (ra6hi9) - New
options()
method: replacesbaseUrl()
andnodeConfig()
methods (gitbrent)
- Typescript: Modified declaration file #37 (kelvinbell)
- Allow single UserProfile property to be queried #38 (YakQin)
- The
rest()
method now includes the page's__REQUESTDIGEST
value for POST types with custom headers that did not already include a value forX-RequestDigest
DEPRECATED baseUrl()
and nodeConfig()
methods - use the new options()
method instead.
v1.8.0 (2018-08-29)
Implemented Enhancements:
- New File Methods:
get()
,info()
,perms()
#20 (ra6hi9)(YakQin)(gitbrent) - New Folder Methods:
files()
,folders()
,info()
,perms()
#20 (ra6hi9)(YakQin)(gitbrent) - Added Typescript Definitions #24 (Wireliner)
- Added two new properties to
list().cols()
method:choiceValues
andallowFillInChoices
- Added "browser" field to
package.json
to improve library integration
Fixed Bugs:
- The list()
baseUrl
option is ignored by the underlying versions query. #27 (gitbrent) - sprLib.user(options).profile() using "post"? #30 (YakQin)
- The
baseUrl
option no longer works inuser()
methods #31 (YakQin) - Typescript fix: listCols should be optional #33 (csoren)
v1.7.0 (2018-05-14)
Implemented Enhancements:
- Renamed
getItems()
list method toitems()
. - Modify user() method option names to be case insensitive #17 (gitbrent)
- Get members of a specific group given its name #19 (ra6hi9)
Fixed Bugs:
- Added
catch()
to core REST method call to properly handle failed queries - Updated Node detection to be more accurate and work with Angular, etc. (aka:"ERROR in ./node_modules/sprestlib/dist/sprestlib.js") #23 (azmatzuberi)
v1.6.0 (2018-03-05)
Implemented Enhancements:
- Add support for SP User Profile API #14 (ra6hi9)
- Removed jQuery methods from sprestlib.js - there are now ZERO library dependencies!
- Add async/await example #16 (wmertens)
- Removed all ES6 code from
sprestlib-demo.html
(it is IE11 compatible now!), plus moved deps to CDN from local files. - Improved error messages/feedback
Fixed Bugs:
- Fixed two issues with CRUD operations via Node.js
- Fixed a few minor issues with parsing no results in certain scenarios, etc.
v1.5.0 (2018-02-16)
Implemented Enhancements:
- Form binding/population spun off into separate
sprestlib-ui.js
library - Created a separate demo page for
sprestlib-ui.js
library - Added new dist file (minified library):
sprestlib.min.js
Fixed Bugs:
- Selecting the same field name twice results in undefined #15 (gitbrent)
- Fixed a null-check defect in REST result parsing
v1.4.0 (2018-01-08)
Implemented Enhancements:
- Add paging/skip/next ability to getItems() #4 (Wireliner)
- Error in list(listname).create(data) #5 (Wireliner)
- Add new option for auth DigestToken #6 (Wireliner)
- Add new 'guid' option to list() #7 (YakQin)
- Add new 'baseUrl' option to user() #8 (YakQin)
- Add new 'nodeEnabled' option for Angular/etc #9 (ra6hi9)
v1.3.0 (2017-11-27)
Implemented Enhancements:
- BREAKING CHANGE:
list().baseUrl()
removed! (new:baseUrl
param tolist()
) - BREAKING CHANGE:
version()
method removed! (new:sprLib.version
property) .list()
now accepts an object in addition to listname (string)- Added new
metadata
option tolist().getItems()
andrest()
methods - Added new Site methods:
site()
- returns info, perms, users, groups, subsites, etc.
v1.2.1 (2017-10-12)
Fixed Bugs:
- Url param passing .rest() with 'http'/'https' is not being parsed correctly #2 (gitbrent)
- Query options passed to .rest() are only parsed when 'queryCols' exists #3 (gitbrent)
v1.2.0 (2017-10-05)
Implemented Enhancements:
- Added Electron compatibility
- Moved Qunit and SpRestLib script loading to dynamic for demo and qunit pages.
Fixed Bugs:
v1.1.0 (2017-09-07)
Fixed Bugs:
- Fixed bug in error messages introduced in last release
- Fixed error handling in Node.js
- Fixed return of empty array for null Person/lookup fields
v1.0.0 (2017-08-08)
Implemented Enhancements:
- Added ability to lookup users by
login
- Node connectivity to SharePoint (Office 365) works now
- Last bit of cleanup work to arrive at v1.0.0
v0.12.0 (2017-07-05)
Fixed Bugs:
- Lots of code cleanup and bug fixes
v0.11.0 (2017-06-25)
Fixed Bugs:
- Misc bug fixes
Implemented Enhancements:
- Added
baseUrl
method to List API to dynamically set baseUrl on a per-call basis - Added
cache
,contentType
andtype
='POST' options torest()
API - Added ability to get user info by
title
oremail
- Added new
.recycle()
List method - Added sprestlib.bundle.js file (using gulp)
- Added bower support
v0.10.0 (2017-05-11)
Code Cleanup New Features
v0.9.0 (2017-01-31)
Initial Release