Code Monkey home page Code Monkey logo

mongo-perl-driver's Introduction

END OF LIFE NOTICE

Version v2.2.0 was the final feature release of the MongoDB Perl driver and version v2.2.2 is the final patch release.

As of August 13, 2020, the MongoDB Perl driver and related libraries have reached end of life and are no longer supported by MongoDB. See the August 2019 deprecation notice for rationale.

If members of the community wish to continue development, they are welcome to fork the code under the terms of the Apache 2 license and release it under a new namespace. Specifications and test files for MongoDB drivers and libraries are published in an open repository: mongodb/specifications.

Introduction

mongo-perl-driver is the official client-side driver for talking to MongoDB with Perl. It is free software released under the Apache 2.0 license and available on CPAN under the distribution name MongoDB.

This file describes requirements and procedures for developing and testing the MongoDB Perl driver from its code repository. For instructions installing from CPAN or tarball, see the INSTALL.md file instead.

While this distribution is shipped using Dist::Zilla, you do not need to install it or use it for development and testing.

Working with the source

Compiler tool requirements

This module requires make and a compiler.

For example, Debian and Ubuntu users should issue the following command:

$ sudo apt-get install build-essential

Users of Red Hat based distributions (RHEL, CentOS, Amazon Linux, Oracle Linux, Fedora, etc.) should issue the following command:

$ sudo yum install make gcc

On Windows, StrawberryPerl ships with a GCC compiler.

On Mac, install XCode or just the XCode command line tools.

Installing Perl dependencies as a non-privileged user

If you do not have write permissions to your Perl's site library directory (perl -V:sitelib), then you will need to use your CPAN client or run make install as root or with sudo.

Alternatively, you can configure a local library. See local::lib on CPAN for more details. If you configure a local library, don't forget to modify your .bashrc or equivalent files.

Configuration and dependencies

You will need to install Config::AutoConf and Path::Tiny to be able to run the Makefile.PL.

$ cpan Config::AutoConf Path::Tiny

To configure:

$ perl Makefile.PL

The output will highlight any missing dependencies. Install those with the cpan client.

$ cpan [list of dependencies]

You may also use cpan to install the current stable MongoDB driver with cpan MongoDB, which should pick up most of the dependencies you will need automatically.

Building and testing

Most tests will skip unless a MongoDB database is available either on the default localhost and port or on an alternate host:port specified by the MONGOD environment variable:

$ export MONGOD=localhosts:31017

You can download a free, community edition of MongoDB from MongoDB Downloads.

To build and test (after configuration):

$ make
$ make test

mongo-perl-driver's People

Contributors

abh avatar dstorch avatar eserte avatar friedo avatar gbarr avatar guimard avatar hanumantmk avatar harnish avatar ilmari avatar jjuran avatar jorol avatar kchodorow avatar kenahoo avatar mapbuh avatar nfg avatar nunorc avatar orlandov avatar piratefinn avatar rabcyr avatar rafl avatar rojasc avatar roman-yerin avatar rychipman avatar stevie-o avatar swuecho avatar tianon avatar toffaletti avatar wjackson avatar wreis avatar xdg avatar

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.