Code Monkey home page Code Monkey logo

plv8u's Introduction

PLV8 - A Procedural Language in Javascript powered by V8

PLV8 is a shared library that provides a PostgreSQL procedural language powered by V8 Javascript Engine. With this program you can write in Javascript your function that is callable from SQL.

Support

There is a Discord available for general questions and support. Please ask there before opening an issue.

Build Requirements

Note that as PLV8 3.2, build requirements have again changed.

Linux

The following packages must be installed to build on Ubuntu or Debian:

  • libtinfo5
  • build-essential
  • pkg-config
  • libstdc++-12-dev (depending on version, may be 10 instead of 12)
  • cmake
  • git

The following packages must be installed to build on EL9 or EL8:

  • 'development tools' - via groupinstall
  • cmake
  • git

MacOS

The following packages must be install to build on MacOS:

  • XCode - and the command line tools
  • cmake

Building

Building plv8 needs to have all build requirements fulfilled before building. You must make sure that pg_config is in your path. It should share the same installation directory as psql and postgres.

make

Installing

This should install plv8 as an available extension into Postgres.

make install

Run Tests

Postgres features a test runner, and plv8 includes a number of tests that can be run.

make installcheck

Running

=# CREATE EXTENSION plv8;

This will install PLV8 into your database if it exists as an available extension.

Testing

To test, you can execute:

=# DO $$ plv8.elog(NOTICE, "hello there!"); $$ LANGUAGE plv8;

For full documentation, see https://plv8.github.io/.

Docker

For Docker support, see ./platforms/Docker/README.md

plv8u's People

Contributors

adunstan avatar audreyt avatar bendiy avatar bnoordhuis avatar car3ca avatar clkao avatar coconitro avatar eugwne avatar haradh1 avatar itgacky avatar jerrysievert avatar johnzzw avatar juniorrojas avatar kokizzu avatar schwebke avatar umitanuki avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

plv8u's Issues

Timeline for network access if any?

This is potentially one of the greatest projects for myself I've seen in a long time. This would bring my code base to nearly 80% Javascript (rather than perl, python, SQL, etc...) and I believe a very large amount of other full stack developers and server side developers.

I haven't codded much in C in over 15 years so I would offer if I had. Although, if there is anything I can do to expedite this, please let me know.

My primary reason for wanting this is to replace out such libraries as multicorn and web request libraries I currently use in PostgresSQL. I have so much Javascript in use that does the same functionality and as these libraries which could replace these out with simply having the request library available and run it in PLV8u.

I did look through your added code for file access and you ended off after file_stat? Any estimate on what it would take to bring in the request library or simple be able to make GET requests?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.