
Research
PyPI Package Disguised as Instagram Growth Tool Harvests User Credentials
A deceptive PyPI package posing as an Instagram growth tool collects user credentials and sends them to third-party bot services.
grunt-purescript
Advanced tools
Runs the PureScript compiler to produce JavaScript files.
This plugin requires Grunt ~0.4.2
and PureScript >=0.6.0
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-purescript --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-purescript');
In your project's Gruntfile, add a section named psc
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
psc: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
});
Type: Boolean
or String
Default value: false
Toggles the --main
compiler flag. Can be set to true
or the name of a module in which a main
function resides. When enabled, a call to main
will be added after all other generated JavaScript. When set to true
, the module name will be assumed to be Main
.
Type: String
or Array
Default value: none
Enables dead code elimination, ensuring that the named module (or list of modules) are included in the generated JavaScript, along with all their dependencies.
Type: String
or Array
Default value: none
Specifies which module(s) to include in the generated Javascript and externs files.
Type: String
Default value: none
Invokes the --externs
compiler flag with the specified argument. Generates a .externs
file for foreign imports.
Type: String
Default value: PS
Invokes the --browser-namespace
compiler flag with the specified argument. Specifies the namespace that PureScript modules will be exported to when running in the browser.
Type: Boolean
Default value: false
Toggles the --no-prelude
compiler flag. Omits the Prelude from the generated JavaScript when enabled.
Type: Boolean
Default value: false
Toggles the --no-opts
compiler flag. Skips the optimization phase for the generated JavaScript when enabled.
Type: Boolean
Default value: false
Toggles the --no-magic-do
compiler flag. Disables overloading of the do
keyword to inline calls to >>=
for the Eff
monad to generate more efficient code.
Type: Boolean
Default value: false
Toggles the --no-tco
compiler flag. Disables tail-call elimination on the generated JavaScript.
Type: Boolean
Default value: false
Toggles the --verbose-errors
compiler flag. Generates verbose error messages.
This task runs the psc-make
executable, which will compile modules to their own .js
and .externs
files. If no dest
is specified the files will be generated in the output/
folder. This mode is useful when developing large libraries, since it avoids recompiling unchanged modules.
In your project's Gruntfile, add a section named pscMake
to the data object passed into grunt.initConfig()
.
Basic usage, generating the files in output/
:
grunt.initConfig({
pscMake: ["path/to/source/**/*.purs"]
});
With options:
grunt.initConfig({
pscMake: {
options: {
// Task-specific options go here.
},
src: ["path/to/source/**/*.purs"]
},
});
Or to specify an output folder a named target must be used (lib
in this case):
grunt.initConfig({
pscMake: {
lib: {
src: ["path/to/source/**/*.purs"],
dest: "build"
}
},
});
These options have the same effect as described for the psc
task above.
This task generates or updates a .psci
file in the current directory, adding :m
commands for any files matching a list of source patterns.
grunt.initConfig({
dotPsci: {
src: ["path/to/source/**/*.purs"]
}
});
There are no options for dotPsci
.
This task generates a markdown file containing the generated documentation for any modules found in files in the source path.
grunt.initConfig({
pscDocs: {
readme: {
src: "src/**/*.purs",
dest: "README.md"
}
}
});
There are no options for pscDocs
.
FAQs
Compile PureScript files.
We found that grunt-purescript demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
A deceptive PyPI package posing as an Instagram growth tool collects user credentials and sends them to third-party bot services.
Product
Socket now supports pylock.toml, enabling secure, reproducible Python builds with advanced scanning and full alignment with PEP 751's new standard.
Security News
Research
Socket uncovered two npm packages that register hidden HTTP endpoints to delete all files on command.