-
Notifications
You must be signed in to change notification settings - Fork 38
Merge v1.0-dev into Master #78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ere are 68 linting problems left, but amusse will fix most in itoolkit when he refactors, while others need a little more in depth work. This will serve as the base for a v1.0 branch.
…rted Signed-off-by: Mark Irish <[email protected]>
* Working on refactoring class names * save more changes
- Moved classes and functions into seperate modules - Added exports to still allow access through itoolkit.js - iConn class moved to iconn.js - iPgm class moved to ipgm.js - iSql class moved to isql.js - iCmd function moved to icmd.js - iSh function moved to ish.js - ProgramCaller moved to programCaller.js - xmlToJson moved to utils.js
- Note: 2 lines have igonered lint rules: 146 and 148
Modularize itoolkit.js see issue #20
…ons usins ProgramCaller instead of xt.iPgm. Fixed eslint-disable sections, but there are a few that are still needed (bitwise operations)
…required naming convention
Removing sync, continued linting, renaming classes
…functions that do the same type of work are together
…conn like the old classes. Keeping old classes but redirecting to toolkit and adding deprecation messages (todo)
…ood, now building back up a little. icmd, iqsh, and ish are all mostly the same thing, and I made them live in the CommandGenerator class. Others, like iconn and isql, are definitely their own classes and rightly split off. I also put the deprecated classes into the file of the class that is replacing them to simplify the file structure.
…f the last object tested were not successful, and tracked success with a variable). Renamed the sql class to SqlCall. General cleanup
…ew classes and use them. Can be easily removed later. Also removed CommandGenerator class and just have 3 const functions exported now
Merging in to not block future merges. Should be stable at this juncture.
Merged in changes from master - Added unit and functional tests - small patches fixed while testing - contribution guidelines and related files Patched v1.0-files to get tests to pass on v1.0-dev - Updated how the underlying properties was accessed in iConnUnit.js Touched up the require() path to find the modules for - iDataQueueFunctional - iNetworkFunctional - iObjFunctional - iProdFunctional - iUserSpaceFunctional - iWorkFunctional Toolkit.js - un-commented Release_level property in getProductInfo() - fixed require() statement for ProgramCall Connection.js - fix variable name change iXml_SERVICE_LIB -> I_XML_SERVICE_LIB Deprecated.js - add missing addToLibraryList() function - add missing getJobInfo() function - fixed typo retSrvPgmIfno -> retSrvPgmInfo - fixed typo retUserIfno -> retrUserInfo - fixed typo getSysStatysEx -> getSysStatusExt Update ixml.js - ran into error when options was undefined in iXmlNodeDataOpen - added guard to iterate over keys only when options is an object Update utils.js - use Connection instead of iConn for transports
This reverts commit 8ecfd0c. PR was squashed when it should have been merged undo
- merged in functional and unit tests - merged in small patches found while unit testing - merged contribution guidlines and related files
Updated how the underlying properties was accessed in iConnUnit.js Touched up the require() path to find the modules for - iDataQueueFunctional - iNetworkFunctional - iObjFunctional - iProdFunctional - iUserSpaceFunctional - iWorkFunctional Toolkit.js - uncommented Release_level property in getProductInfo() - fixed require() statement for ProgramCall Connection.js - fix variable name change iXml_SERVICE_LIB -> I_XML_SERVICE_LIB Deprecated.js - add missing addToLibraryList() function - add missing getJobInfo() function - fixed typo retSrvPgmIfno -> retSrvPgmInfo - fixed typo retUserIfno -> retrUserInfo - fixed typo getSysStatysEx -> getSysStatusExt Update ixml.js - ran into error when options was undefined in iXmlNodeDataOpen - added guard to iterate over keys only when options is an object
- use Connection instead of iConn for transports
- itoolkit.js - ixml.js
SqlCall.rowCount() - added check to allow optional options object SqlCall.count() - called iXmlNodeSqlRowCount instead of iXmlNodeSqlCount Should have been patched during merge but was ommited
- purpose is to ensure LF line endings are used - ran into cases where CRLF was used in some files and LF in others - this way we can maintain consistency - https://help.github.com/en/articles/dealing-with-line-endings
Allow Connection.js Constuctor to accept a single object see #25 Allow Connection.run() function to return error as first param of callback see #2 Establish one code path in Connection Constructor - when pre v1.0 signature is used create an options object - add properties to this options object - this mimics the current v1.0 way of passing a signle object - that way constructor follows on code path Options object contain sub object transportOptions - This contains properties such as databse, username, etc - This sub object is passed to the transport Rename variables away from I_* prefix Rename getConnection() -> getTransportOptions() Rename cmd -> commandList Moved verbose to be a property of Connection - verbose is added to transportOptions during run() - this is because verbose can be adjusted with debug() - add print of xmlOutput also when in verbose mode
- We no longer support sync mode which had an option to set timeout
Update transports interface to accept config, xmlInput, done idb transport Use iPLUGR512k variant instead of iPLUG512k to iterate over a result set Ensure conn and stmt are always cleaned up properly - even during error states the stmt and conn objects are now cleaned - add function clean() to avoid duplication - this commit should help resolve issue #17 rest transport Validate required: database, username, password Enforce output buffer to be set to the max - before default was only set now output buffer is always set to the max Small fixes add mising semicolons, remove some comments, etc
- moved irest.js - moved istoredp.js
- Now all toolkit methods will have error first callbacks
- file names have changed since v1.0-dev branched from master
The node-odbc updated the API and connections are no longer obtained through the Connection constructor. Instead a call to the connect function will return a connected Connection object.
* use POST method for rest transports * enable skipped test cases for `getInstalledProducts()` Signed-off-by: Xu Meng <[email protected]>
These test cases will help prevent regressions when refactoring ixml.js
Found cases where calling SqlCall functions lead to type errors. Solved these issues by ensuring options object parameter was indeed an object.
Added more unit tests using the different signatures of the test cases. Tested cases where options object was passed and others where it was not.
- updated sinon, eslint, eslint-plugin-import, had vulnerabilities high lodash - use odbc 2.1.3 version latest beta version removed export of connect method - updated other deps
kadler
approved these changes
Sep 23, 2019
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We already have tagged and created a branch for version
0.1.6
(current npm latest tag release).Since we are working towards stable v1.0.0 release and current have an alpha release, I propose we merge the current work on v1.0.0-dev into the master branch.
This will be done eventually anyway, and we wont have back merge current PRs that are targeting the master branch.