I'm currently exploring different integrations that can be done between Google App Script and Git. This is part of a bigger attempt to integrate Git data into my project management system. I'll post more on that later. GitHub supports a number of very nice sub-systems. One of them is the GitHub Issues ticket tracking system. It's fairly robust and comes with GitHub - which means it's highly integrated out-of-the-box. Integration with Google's App Script is done via the fetchURL command and JSON object manipulation. After a good bit of experimentation, I've settled on querying GitHub Issues with an "on open spreadsheet event" to avoid issues with Google's quota system. Essentially, Google prevents you from calling the fetchURL command more than X times (see the quota limits ) per day. That's not great if you have people actively working and changing data in a spreadsheet. Some of my other App Script routines are running thousands of times per d
If you've been following along on my Excel VBA App Script journey ( Part 1 , Part 2 ), I'm converting my old Excel VBA scripts to Google App Scripts. I'm specifically focused on Excel to Sheets at the moment but the general process applies to other App Script development. As I mentioned last time, once I figured out that you cannot use the integrated debugger without a wrapper routine, the next logical exercise was adding unit tests. The test wrapper is essentially ready to go as a unit test, it's just a question of how to formalize it a bit. At it's most basic, we could convert the test wrapper to return a pass/fail result and be done with it, ala: function test_myFx () { Logger . log ( "Test" ) return myF x ( "U01" , SpreadsheetApp . getActiveSheet (). getRange ( 2 , 2 ). getValues ()) } function myFx (findStr, findRange) { //Do some work } converts to: function test_myFx () { Logger . log ( "Test" ) if (myF x ( &q