Lodash debounce: what does "the system time has gone backwards" mean? - lodash

Recently I am reading the source code of lodash debounce function. I can't figure out why timeSinceLastCall could be less than 0 in the shouldInvoke method. The comment says that the system time has gone backwards. What does it mean? The source code of lodash debounce is here: https://github.com/lodash/lodash/blob/4.8.0-npm/debounce.js

Related

'TypeError: express_jwt__WEBPACK_IMPORTED_MODULE_2___default(...) is not a function' when trying to leverage express.jwt to auth required sign-in

Hope the holidays are treating everyone well. I'm a beginning coder working on a full stack application. Currently I'm trying to build a back end skeleton leveraging MongoDB, Express, and Node.js. Everything seems to be going well but for using an express json web token to authenticate a required sign-in method. What's odd to me is the error references '. . . Webpack imported module 2 . . .' . I am using Webpack and Babel as compilers etc. but don't have the experience to connect the relationship between Webpack and express-JWT. My guess is that one of the modules I'm working with is out of date and thus not compatible with the others but am not sure which one. Of course, there could be an error in my code but I've tried to debug based on the error message to no avail. Would greatly appreciate your insights and help - thank you!
As mentioned, I'm a beginning coder but have tried the following: a) the two stack overflow threads below seemed to point me to documentation or updated syntax and I've tried variations of both but to no avail.
express-jwt got TypeError: express_jwt__WEBPACK_IMPORTED_MODULE_2___default(...) is not a function
and
TypeError: Webpack imported module is not a function.
Given the suggestions to review documentation I reviewed Webpack, Express, and even React (plan to use react on the front end) documentation but again, I didn't see, what in my mind, could be related subject matter. I think someone with more experience would prob know exactly where to look in the documentation but I don't seem to be able to put the pieces together given the little coding experience I have. Guidance on where to look in the documentation would be great as I'm eager to get more comfortable reviewing primary reference material. Regardless, appreciate the help and plan to pay it forward one day soon - thanks again!
Screenshots below: respective code truncated for relevance, package.json file
[respective code truncated for relevance] (https://i.stack.imgur.com/iOwVK.png)
package.json file

Ironpython - Issues attaching to an instance of an already running program

Ok folks this is a long one, so please bear with me. I'll preface this by stating that I am -for all intents and purposes- a noob.
I'm trying to link to a running instance of a program (ETABS) using IronPython. The program has an API and decent documentation on how one can go about hooking into the running instance (EXAMPLE). However, their examples are for Python, C#, VB.net but not IronPython.
No biggie I thought, the Marshal module can be used to hook into it. So I tried this:
from System.Runtime.InteropServices import Marshal
csiApp = Marshal.GetActiveObject("CSI.ETABS.API.ETABSObject")
SapModel=csiApp.SapModel
Unfortunately I get errors on that last line - "ETABSObject has no attribute SapModel".
And yes, I've tried running it with csiApp.SapModel() as well with the same results.
So I delved deeper into it and apparently the object needs to be cast into another type - at least that's the way its been done for the C# example (LINK). Since - to my knowledge - we can't really cast objects around in Python (and yes, I've already tried clr.Convert) I came to the conclusion that the object being returned to Ironpython is a few abstractions removed from the object that I really need. Apparently comtypes can handle this automatically in the background (seeing as the python example works flawlessly). The code block below shows the object types returned to Ironpython and to pure python respectively:
Ipy : <System.MarshalByRefObject object at 0x000000000000002B [CSI.ETABS.API.ETABSObject]>
Python with comtypes : <POINTER(cOAPI) ptr=0x2e68d17f7c8 at 2e690b36a48>
I'm working on Ironpython 2.7.3 and can't really update it (for several reasons not relevant to this post). Would love to have advice on how to fix this or on how to install comtypes on Ipy.
So I think I've found the reason why this is happening - Ironpython cannot directly use MarshalByRefObjects (source) since Reflection doesn't work on these. It seems I'll need to create a C# class which can cast this object into the one I want, compile it into a dll and load that into my Ipy code.
I'll leave this here in case someone with more knowledge has a better answer.

Geo.Lua function GEOMETRYFILTER and Redis

I'm trying to figure out how to actually do a call to GEOMETRYFILTER function in geo.lua since documentation is not very clear to me:
https://github.com/RedisLabs/geo.lua#GEOMETRYFILTER
What exactly do these parameters means and how do I call this function from Redis-cli? I was not able to find any example on google.
geo.lua's author here - IIRC it involves first creating a polyhash to describe the filter and then providing it along with the geoset to the library. Performance is quite horrible as everything is done in Lua.
FYI - that library is no longer maintained.

Change REPL module/namespace in Julia

I'm looking for a way to "enter" a module in the REPL, so that I can access all symbols without qualification (not just the exported ones), and any function (re)defined at the REPL gets in the specified module. (Basically this is the functionality of Common Lisp's in-package macro.)
This would be useful in a REPL-oriented workflow, as I would be able to write the same code in the REPL as in the module I am developing.
The manual recommends a workflow where I qualify everything, but that seems annoying.
I started a package called REPLMods.jl for this a while back. It should probably be polished up, but I haven't had the time.
I spoke to core Julia members and there was interest in getting it merged into base once things were clean, but again, no time!
I know this isn't quite what you're asking, but just in case the 'obvious' had not occured to you (or future visitors to the question), assuming you loaded a module with an annoyingly cumbersome name, e.g.
import LaTeXStrings
and you don't want to have to type LaTeXStrings all the time just to explore its accessibles, i.e.
LaTeXStrings.[TAB]
you can just assign the imported module as a whole to another variable, i.e.
const l = LaTeXStrings
I'm sure in the absence of a more appropriate built-in solution, at least typing l.[TAB] as opposed to LaTeXStrings.[TAB]is a lot more tolerable :)
(I find it odd, in fact, that julia doesn't seem to support the import LaTeXStrings as l syntax ...)
It's 2020, I'm using Julia 1.4, and was unable to get REPLMods.jl to work. I think the following seem good enough for the time being:
ExportAll.jl - see Exporting all symbols in Julia for a discussion (just that one shouldn't ExportAll to replace normal export)
and Revise.jl

What's the right way to make pickadate play well with browserify?

I've been struggling and very frustrated because I can't find a way to make pickadate play well with browserify. I'm migrating a Backbone app from AMD but pickadate seems impossible to work with it. I must say that I began to use browserify recently so I'm not an expert but I could migrate the rest of my code without any major incident. Of course I'm open to receive some tips and references to master browserify :)
I have jquery and pickadate installed via npm and when trying to use pickadate I'm getting the classic error:
undefined is not a function
I used this way of requiring (note the use without assigning the require to a variable):
require("jquery");
require("pickadate");
I saw this on an answer here at stackoverflow (Requiring pickadate.js with Browserify) but it doesn't work in my case.
Any help or reference about where to find help will be pretty much appreciated.
The current version of pickadate as a module only exposes the instance of PickerConstructor but it doesn't expose DatePicker neither TimePicker so every time we try to instantiate a date picker or time picker we got the error undefined is not a function because neither of them have been loaded and so no jquery.extend invocation have been made to append them to the jQuery object.
What is needed is some kind of facade / wrapper to expose all the pickadate functionality out of the box.
For this I made some small changes directly to the pickadate code base. I added an index.js that works as the facade / wrapper for picker.js, pick.date and pick.time, allowing them to be used out of the box with Browserify by issuing the typical require('pickadate'). It doesn't need to be assigned to a variable since pickadate attaches itself directly to the jQuery object. You can check this gist with the index.js code I used
This change is a copy of the way the CryptoJS library by #evanvosberg exposes its different algorithms through the same pattern implemented in its index.js file.
The only additional change would be to modify the property main in pickadate package.json to point to index.js.
I've just send a message to #amsul, the pickadate author asking for the possibility of integrate this changes directly into the pickadate github repo.
I hope people trying to use pickadate with browserify can find this solution and stop getting frustrated trying to make them play well together!
Greetings to everybody!