devel/ocaml-opam: Source-based package manager for OCaml
OPAM is a source-based package manager for OCaml. It supports multiple
simultaneous compiler installations, flexible package constraints, and
a Git-friendly development workflow.
WWW: http://opam.ocamlpro.com/index.html
PR: ports/179462
Submitted by: Joris Giovannangeli <joris.gio@gmail.com>
devel/matreshka: Ada framework for information systems development
Matreshka is an Ada framework to develop information systems. It consists
of five major components: League, XML processor, Web framework, SQL access,
and the Modeling framework.
League:
High level abstraction of localization and internationalization. Also
provides calendrical calculations, regular expressions, and JSON.
XML processor:
Sax reader and writer, supports XML 1.0 and 1.1 as well as namespaces.
It also has an XML catalogs resolver.
Web framework:
Supports FastCGI, SOAP 1.2 and has a WSDL to Ada translator.
SQL access:
Database abstraction of MySQL, Oracle, PostgreSQL, SQLite and Firebird.
Modeling framework:
provides implementation of Meta Object Facility (MOF) written entirely
in Ada. Extension modules assist in the analysis of UML modules and
extensions (MOF, OCL, and UML testing profile) and diagram definition.
WWW: http://forge.ada-ru.org/matreshka
PR: ports/180097
Submitted by: John Marino <draco@marino.st>
This is an implementation of Daniel Berger's proposal of structured warnings
for Ruby. They provide dynamic suppression and activation, as well as,
an inheritance hierarchy to model their relations. This library preserves
the old warn signature, but additionally allows a raise-like use.
WWW: https://github.com/schmidt/structured_warnings
PR: ports/179251
Submitted by: Mikhail T. <m.tsatsenko@gmail.com>
devel/concurrencykit: [NEW PORT] Lock-free data structures for high performance
concurrent systems
Concurrency Kit provides a plethora of concurrency primitives, safe memory
reclamation mechanisms and non-blocking data structures designed to aid in
the design and implementation of high performance concurrent systems.
WWW: http://concurrencykit.org
Reviewed by: Samy Bahra
Pygit2 is a set of Python bindings to the libgit2 shared library, libgit2
implements the core of Git. Pygit2 works with Python 2.6, 2.7, 3.1, 3.2 and 3.3.
WWW: http://www.pygit2.org
- Add p5-experimental 0.005
This pragma provides an easy and convenient way to enable or disable
experimental features.
WWW: http://search.cpan.org/dist/experimental/
The Hashery is a tight collection of Hash-like classes. Included among its many
offerings are the auto-sorting Dictionary class, the efficient LRUHash, the
flexible OpenHash and the convenient KeyHash. Nearly every class is a subclass
of the CRUDHash which defines a CRUD model on top of Ruby's standard Hash
making it a snap to subclass and augment to fit any specific use case.
WWW: http://rubyworks.github.com/hashery
Add fmake from head, as of r250982.
This is almost the same as the one from stable/9, except with a few comment
changes, so it is a good drop-in replacement.
Reviewed by: bapt, brooks, obrien (all briefly)
devel/py-d2to1: Distutils2-like setup.cfg files for setuptools [NEW PORT]
d2to1 (the 'd' is for 'distutils') allows using distutils2-like
setup.cfg files for a package's metadata with a distribute/setuptools
setup.py script.
It works by providing a distutils2-formatted setup.cfg file containing
all of a package's metadata, and a very minimal setup.py which will
slurp its arguments from the setup.cfg.
WWW: https://github.com/iguananaut/d2to1
New port: devel/kyua-atf-compat:
Kyua (pronounced Q.A.) is a testing framework for both developers and
users. Kyua is different from most other testing frameworks in that it
puts the end user experience before anything else. There are multiple
reasons for users to run the tests themselves, and Kyua ensures that
they can do so in the most convenient way.
This module, kyua-atf-compat, provides tools to ease the transition from
ATF to Kyua. In particular, this includes is a tool to convert Atffile
files to Kyuafile files in an automated manner, and drop-in replacement
wrappers for atf-run and atf-report.
WWW: https://code.google.com/p/kyua/
PR: ports/177640
Submitted by: asomers
Reviewed by: Garrett Cooper <yaneurabeya@gmail.com>
New port: devel/kyua:
Kyua (pronounced Q.A.) is a testing framework for both developers and
users. Kyua is different from most other testing frameworks in that it
puts the end user experience before anything else. There are multiple
reasons for users to run the tests themselves, and Kyua ensures that
they can do so in the most convenient way.
At the moment, Kyua is focused on implementing a solid foundation and a
powerful command-line tool to run tests implemented with the Automated
Testing Framework (ATF). Later on, Kyua will also provide a set of
language bindings (C, C++ and shell, at the least) to ease the
implementation of test cases in a variety of programming languages.
In effect, Kyua is intended to be a replacement for ATF.
WWW: https://code.google.com/p/kyua/
PR: ports/177641
Submitted by: asomers
Reviewed by: Garrett Cooper <yaneurabeya@gmail.com>
New port: devel/kyua-testers:
Kyua (pronounced Q.A.) is a testing framework for both developers and
users. Kyua is different from most other testing frameworks in that it
puts the end user experience before anything else. There are multiple
reasons for users to run the tests themselves, and Kyua ensures that
they can do so in the most convenient way.
This module, kyua-testers, provides scriptable interfaces to interact
with test programs of various kinds. The interface of such testers
allows the caller to execute a single test case of a single test program
in a controlled and homogeneous manner.
WWW: https://code.google.com/p/kyua/
PR: ports/177637
Submitted by: asomers
Reviewed by: Garrett Cooper <yaneurabeya@gmail.com>
Add ports of clang and LLVM 3.3.rc3. Unlike previous ports these
install primarily in ${PREFIX}/llvm33 with wrapper scripts in
${PREFIX}/bin named clang33, llc33, etc.
In an additional change, the clang static analyzer's python wrapper and
web bits are not installed.
tradcpp is a traditional (K&R-style) preprocessor.
It has the particular property that it doesn't (for the most part)
trash whitespace, so it can be used on makefiles.
This is only release 0.1; it is missing some features and doubtless
has quite a few bugs, but it's capable of building at least some
packages when used with imake.
librest is a library that was designed to make it easier to access RESTful
web services.
It comprises of two parts: the first aims to make it easier to make requests
by providing a wrapper around libsoup, the second aids with XML parsing by
wrapping libxml2.
WWW: https://live.gnome.org/Librest
PR: ports/178013
Submitted by: Christoph Moench-Tegeder <cmt@burggraben.net>
Approved by: culot (mentor)
The complete solution for Ruby command-line executables.
Commander bridges the gap between other terminal related libraries you know and
love (OptionParser, HighLine), while providing many new features, and an
elegant API.
WWW: http://visionmedia.github.io/commander/
tvrage is a python based object oriented client interface for tvrage.com's
XML based api feeds.
The tvrage package consists of three modules:
- feeds module provides a wrapper function for each of tvrage's XML-feeds
- api module provides an clean and object oriented interface on top of those
services
- quickinfo module is a simple pythonic wrapper for tvrage's quickinfo api.
Values are returned as python dictionaries rather than dedicated objects
for tv shows and episodes
WWW: https://github.com/ckreutzer/python-tvrage
Approved by: culot (mentor)
jsonschema is an implementation of JSON Schema for Python
- Full support for Draft 3 and Draft 4 of the schema.
- Lazy validation that can iteratively report all validation errors.
- Small and extensible
- Programmatic querying of which properties or items failed validation.
WWW: http://github.com/Julian/jsonschema
Approved by: culot (mentor)
Grab is site scraping framework. Grab could be used for:
- website data mining
- work with network API
- automation of actions performed on websites
WWW: http://grablib.org/
Capybara is an integration testing tool for rack based web applications. It
simulates how a user would interact with a website.
WWW: http://github.com/jnicklas/capybara
- Finish removal of support for Linux 2.4 in bsd.linux-apps.mk and
bsd.linux-rpm.mk. The default linux version is now Fedora 10.
- Remove now obsolete checks for Linux 2.4 in emulators/linux_base-c6,
emulators/linux_base-f10, and emulators/linux_dist-gentoo-stage3.
While there, remove superfluous -p argument from ${MKDIR}.
- Remove now obsolete check for Linux 2.4 or FreeBSD 6 and lower from
astro/google-earth.
- Remove expired Fedora Core 4 ports which were only used on FreeBSD 7
and below.
- Update LEGAL and MOVED
PR: ports/176877
Submitted by: myself
Approved by: portmgr (bapt)
Exp-run by: bapt
It is specialized versions of methods for working with binary data.
It were written cause:
- MRI's #pack and #unpack seems to be slow
- result of #pack is often appended to a string at the very next step.
- usually we need to drop unpacked string head
WWW: https://github.com/funny-falcon/bin_utils
PR: ports/178619
Submitted by: Gvozdikov Veniamin <g.veniamin@googlemail.com>
Pyfilesystem is a Python module that provides a simplified common interface to
many types of filesystem. Filesystems exposed via Pyfilesystem can also be
served over the network, or 'mounted' on the native filesystem.
Pyfilesystem simplifies working directories and paths, even if you only intend
to work with local files. Differences in path formats between platforms are
abstracted away, and you can write code that sand-boxes any changes to a given
directory.
WWW: http://code.google.com/p/pyfilesystem/
PR: ports/179027
Submitted by: Douglas Thrift <douglas@douglasthrift.net>
This small low-level module only has one purpose: pass a file
descriptor to another process, using a (streaming) unix domain socket
(on POSIX systems) or any (streaming) socket (on WIN32 systems). The
ability to pass file descriptors on windows is currently the unique
selling point of this module. Have I mentioned that it is really
small, too?
WWW: http://search.cpan.org/dist/IO-FDPass/
- Add p5-Type-Tiny 0.004
Type::Tiny is a tiny class for creating Moose-like type constraint objects which
are compatible with Moo, Moose and Mouse.
Maybe now we won't need to have separate MooseX, MouseX and MooX versions of
everything? We can but hope...
This documents the internals of Type::Tiny. Type::Tiny::Manual is a better
starting place if you're new.
WWW: http://search.cpan.org/dist/Type-Tiny/
- Add p5-Sub-Exporter-Lexical 0.092291
Sub::Exporter::Lexical provides an alternate installer for Sub::Exporter.
Installers are documented in Sub::Exporter's documentation; all you need to know
is that by using Sub::Exporter::Lexical's installer, you can import routines
into a lexical scope that will be cleaned up when that scope ends.
WWW: http://search.cpan.org/dist/Sub-Exporter-Lexical/
PHP Judy implements sparse dynamic arrays (aka Judy Arrays). This extension
is based on the Judy C library. A Judy array consumes memory only when it is
populated, yet can grow to take advantage of all available memory if desired.
Judy's key benefits are scalability, high performance, and memory efficiency.
WWW: http://pecl.php.net/package/Judy
PR: ports/177535
Submitted by: Gasol Wu <gasol.wu@gmail.com>
From the Phing homepage:
PHing Is Not GNU make; it's a PHP project build system or build tool based on
Apache Ant. You can do anything with it that you could do with a traditiona
build system like GNU make, and its use of simple XML build files and
extensible PHP "task" classes make it an easy-to-use and highly flexible build
framework.
Features include running PHPUnit and SimpleTest unit tests (including test
result and coverage reports), file transformations (e.g. token replacement,
XSLT transformation, Smarty template transformations), file system operations,
interactive build support, SQL execution, CVS/SVN/GIT operations, tools for
creating PEAR packages, documentation generation (DocBlox, PhpDocumentor) and
much, much more.
WWW: http://www.phing.info
Lutok is a lightweight C++ API library for Lua.
Lutok provides thin C++ wrappers around the Lua C API to ease the
interaction between C++ and Lua. These wrappers make intensive use of
RAII to prevent resource leakage, expose C++-friendly data types, report
errors by means of exceptions and ensure that the Lua stack is always
left untouched in the face of errors. The library also provides a small
subset of miscellaneous utility functions built on top of the wrappers.
Lutok focuses on providing a clean and safe C++ interface; the drawback
is that it is not suitable for performance-critical environments. In
order to implement error-safe C++ wrappers on top of a Lua C binary
library, Lutok adds several layers or abstraction and error checking
that go against the original spirit of the Lua C API and thus degrade
performance.
WWW: https://code.google.com/p/lutok/
PR: ports/177639
Submitted by: Alan Somers <asomers@FreeBSD.org>
devel/py-blinker: Simple object-to-object and broadcast signaling [NEW PORT]
Blinker provides a fast dispatching system that allows any number of interested
parties to subscribe to events, or "signals".
Features:
- A global registry of named signals
- Anonymous signals
- Custom name registries
- Permanently or temporarily connected receivers
- Automatically disconnected receivers via weak referencing
- Sending arbitrary data payloads
- Collecting return values from signal receivers
WWW: http://discorporate.us/projects/Blinker/
Approved by: eadler, rm (mentors, implicit)
Remove devel/py-celementtree becuase it's a part of Python standard library
since version 2.5 (included as xml.etree.cElementTree). Upstream development
going on python.org, there is no ports depending on this one.
PR: 155524
Submitted by: rm (myself)
Approved by: nivit (maintainer, by mail)
BusyBee provides a messaging abstraction on top of TCP sockets.
BusyBee is a refined version of the HyperDex event loop. It exposes a
"messaging" abstraction on top of TCP and automatically packs/unpacks messages
on the wire. At the core of BusyBee is a thread-safe event loop that enables
multiple threads to send and receive messages concurrently.
WWW: https://github.com/rescrv/busybee
PR: 178655
Submitted by: Veniamin Gvozdikov <g.veniamin@googlemail.com>
- Add new port: devel/R-cran-caTools
Contains several basic utility functions including: moving (rolling,
running) window statistic functions, read/write for GIF and ENVI
binary files, fast calculation of AUC, LogitBoost classifier, base64
encoder/decoder, round-off error free sum and cumsum, etc.
WWW: http://cran.r-project.org/web/packages/caTools/
Add devel/libe.
It is a collection of high-performance data structures and utilities in C++.
PR: ports/178626
Submitted by: Veniamin Gvozdikov <g.veniamin@googlemail.com>
Makes ANSI escape character sequences, for producing colored terminal text and
cursor positioning, work under MS Windows.
ANSI escape character sequences have long been used to produce colored terminal
text and cursor positioning on Unix and Macs. Colorama makes this work on
Windows, too. It also provides some shortcuts to help generate ANSI sequences,
and works fine in conjunction with any other ANSI sequence generation library,
such as Termcolor.
WWW: http://pypi.python.org/pypi/colorama
PR: 178352
Submitted by: Alexey V. Degtyarev <alexey@renatasystems.org>
JMESPath (pronounced "jaymz path") allows you to declaratively specify how to
extract elements from a JSON document.
WWW: https://github.com/boto/jmespath
PR: 178351
Submitted by: Alexey V. Degtyarev <alexey@renatasystems.org>
- Add new port: devel/R-cran-Rcpp
The Rcpp package provides C++ classes that greatly facilitate
interfacing C or C++ code in R packages using the .Call() interface
provided by R.
Rcpp provides matching C++ classes for a large number of basic R
data types. Hence, a package author can keep his data in normal R
data structures without having to worry about translation or
transfering to C++. At the same time, the data structures can be
accessed as easily at the C++ level, and used in the normal manner.
The mapping of data types works in both directions. It is as
straightforward to pass data from R to C++, as it is it return data
from C++ to R.
WWW: http://cran.r-project.org/web/packages/Rcpp/
TeXLive mega commit. The following ports have been added:
* Meta port
- print/texlive-full: meta port to install all of the TeXLive components
* Libraries
- devel/tex-kpathsea: kpathsea library
- devel/tex-web2c: WEB2C toolchain and TeX engines
- print/tex-ptexenc: character code conversion library for pTeX
* Base part of the TeXLive
- print/texlive-base: binary programs in TeXLive
- print/texlive-texmf: macro and font data in TeXLive
- print/texlive-infra: tlmgr dependency (Perl modules)
* TeX Formats
- print/tex-formats: TeX, LaTeX, PDFTeX, AMSTeX, ConTeXT, CSLaTeX,
EplainTeX, METAFONT, MLTeX, PDFTeX, TeXsis
- print/tex-aleph: Aleph/Lambda
- print/tex-xetex: XeTeX
- print/tex-luatex: LuaTeX
- print/tex-jadetex: JadeTeX
- print/tex-xmltex: XMLTeX
- japanese/tex-ptex: pTeX
* DVI ware
- print/tex-xdvik: XDvi
Mk/bsd.tex.mk is added for common part and USE_TEX knob [1].
Approved by: portmgr (old version) [1]
PR: ports/171571
PR: ports/176399 [1]
Add Date::Piece
This module allows you to do nominal math on dates. That is, rather
than worrying about time zones and DST while adding increments of
24*60**2 seconds to a date&time object, you simply discard the time
component and do math directly on the date. If you need a time-of-day
on the calculated date, the at() method returns a Time::Piece object,
thus allowing you to be specific about the endpoints of a nominal interval.
devel/ruby-term-ansicolor: Update and move origin
term-ansicolor is now a rubygem, and is at version 1.1.4.
PR: ports/177856
Approved by: maintainer timeout (clsung, 16 days)