devel/pybind11_abseil: Add pybind11_abseil 202402.0
pybind11_abseil provides the pybind11 bindings for the Abseil C++ common
libraries. These adapters make Abseil types work with Pybind11 bindings.
devel/p5-Test2-Suite: Remove obsoleted port
Use devel/p5-Test-Simple instead.
Test2-Suite has been merged into Test-Simple since 1.302200.
Reference: https://metacpan.org/dist/Test-Simple/changes
devel/tracy: New port: Frame and sampling profiler for games and other
applications
A real time, nanosecond resolution, remote telemetry, hybrid frame and
sampling profiler for games and other applications.
Tracy supports profiling CPU (Direct support is provided for C, C++, and
Lua integration. At the same time, third-party bindings to many other
languages exist on the internet, such as Rust, Zig, C#, OCaml, Odin,
etc.), GPU (All major graphic APIs: OpenGL, Vulkan, Direct3D 11/12,
OpenCL.), memory allocations, locks, context switches, automatically
attribute screenshots to captured frames, and much more.
https://github.com/wolfpld/tracy
Interactive demo: https://tracy.nereid.pl
PR: 278126
devel/R-cran-urlchecker: new port
Provide the URL checking tools available in R 4.1+ as a package for earlier
versions of R. Also uses concurrent requests so can be much faster than the
serial versions.
Required by new version of devel/R-cran-devtools.
devel/R-cran-profvis: new port: visualizing code profiling data
Profvis is a tool for visualizing code profiling data from R. It creates a web
page which provides a graphical interface for exploring the data.
Required to update devel/R-cran-devtools.
x11/iaito: New port: Official QT frontend of radare2
iaito is the official graphical interface for radare2, a libre reverse
engineering framework.
* Requires radare2 and Qt-5/6.
* Iaito was the original name of this GUI before being forked as Cutter.
* Use r2 plugins (f.ex: no need for r2ghidra-iaito plugin if r2ghidra is
installed).
* Focus on simplicity, parity with commands, keybindings and r2-style
workflows.
* Aims to cover other radare2 features, not just a disassembler:
forensics, networking, bindiffing, solvers, ...
https://github.com/radareorg/iaito
PR: 278339
devel/Makefile: add port devel/pycdc
PR: 280659
Reported by: antoine (via email)
Fixes: 3b5336de74e5 (New port: Python bytecode disassembler and decompiler)
misc/py-ollama: New port: Official Python client for Ollama
This reverts commit 5f8c92831aae9f9783923dcb6c29ba6287d2f576.
Requested by: nivit@FreeBSD.org (maintainer of devel/py-ollama; via e-mail)
devel/py-ollama: Add new port
Ollama Python library provides the easiest way to integrate Python 3.8+
projects with Ollama.
https://github.com/ollama/ollama-python
devel/p5-ExtUtils-Builder-Compiler: New port: Interface around different
compilers
- This new port is needed as an indirect dependency for
a new major release of existing port security/p5-Crypt-Argon2
- Interface around different compilers. It's usually not used directly
but by a portability layer like: ExtUtils:Builder::Autodetect::C
https://metacpan.org/dist/ExtUtils-Builder-Compiler
PR: 280630
devel/p5-ExtUtils-Builder: New port: Overview of foundations of
ExtUtils::Builder Plan framework
- This new port is needed as an indirect dependency for
a new major release of existing port security/p5-Crypt-Argon2
- An overview of the foundations of the ExtUtils::Builder Plan framework.
Actions are the cornerstone of this framework. They provide an
interface between build tools (e.g. ExtUtils::MakeMaker, Module::Build,
...) and building extensions. This allows producing and consuming sides
to be completely independent from each other. It is a flexible
abstraction around pieces of work, this work can be a piece of
perl code, an external command, a mix of those or possibly other things.
https://metacpan.org/dist/ExtUtils-Builder
PR: 280628
devel/p5-ExtUtils-HasCompiler: New port: Check for the presence of a compiler
Check for the presence of a compiler.
This module tries to check if the current system is capable of
compiling, linking and loading an XS module.
https://metacpan.org/dist/ExtUtils-HasCompiler
PR: 280625
devel/rubygem-yard-sorbet: Add rubygem-yard-sorbet 0.9.0
yard-sorbet is a YARD plugin that parses Sorbet type annotations.
Features:
- Attaches existing documentation to methods and attributes that follow sig
declarations. (This information is otherwise discarded.)
- Translates sig type signatures into corresponding YARD tags
- Generates method definitions from T::Struct fields
- Generates constant definitions from T::Enum enums
- Modules marked abstract! or interface! are tagged @abstract
- Modules using mixes_in_class_methods will attach class methods
- Merges sigs in rbi files with source code documentation (rbi files must come
after source code in yard configuration)
devel/rubygem-packwerk: Add rubygem-packwerk 3.2.1
Packwerk is a Ruby gem used to enforce boundaries and modularize Rails
applications.
Packwerk can be used to:
- Combine groups of files into packages
- Define package-level constant visibility (i.e. have publicly accessible
constants)
- Help existing codebases to become more modular without obstructing development
devel/rubygem-packwerk-extensions: Add rubygem-packwerk-extensions 0.3.0
packwerk-extensions is a home for checker extensions for packwerk 3.
Currently, it ships the following checkers to help improve the boundaries
between packages. These checkers are:
- A privacy checker that ensures other packages are using your package's public
API
- A visibility checker that allows packages to be private except to an explicit
group of other packages.
- A folder_privacy checker that allows packages to their sibling packs and
parent pack (to be used in an application that uses folder packs)
- A layer (formerly architecture) checker that allows packages to specify their
"layer" and requires that each layer only communicate with layers below it.
devel/rubygem-better_html: Add rubygem-better_html 2.1.1
This gem replaces the normal ERB parsing with an HTML-aware ERB parsing. This
makes your templates smarter by adding runtime checks around the data
interpolated from Ruby into HTML.
devel/rubygem-constant_resolver: Add rubygem-constant_resolver 0.2.0
ConstantResolver resolves partially qualified constant reference to the fully
qualified name and the path of the file defining it. It does not load the files
to do that, its inference engine purely works on file paths and constant names.
ConstantResolver uses the same assumptions as Rails' code loader, Zeitwerk to
infer constant locations. Please see Zeitwerk's documentation on file structure
and inflection for more information.
devel/py-xasm: Add py-xasm 1.2.0
The Python xasm module has routines for assembly, and has a command to assemble
bytecode for several different versions of Python.
Here are some potential uses:
- Make small changes to existing Python bytecode when you don't have source
- Craft custom and efficient bytecode
- Write an instruction-level optimizing compiler
- Experiment with and learn about Python bytecode
- Foil decompilers like uncompyle6 so that they can't disassemble bytecode (at
least for now)
This support the same kinds of bytecode that xdis supports. This is pretty much
all released bytecode, although we tend to lag behind the latest Python
releases.
devel/py-spark-parser: Add py-spark-parser 1.8.9
This package uses Jay Earley's algorithm for parsing context free grammars, and
comes with some generic Abstract Syntax Tree routines. There is also a prototype
scanner which does its job by combining Python regular expressions.
(SPARK stands for Scanning, Parsing, and Rewriting Kit. It is a poor name since
it conflicts with a more popular package of the same name. In the future we will
rename this.)
The original version of this was written by John Aycock for his Ph.D thesis and
was described in his 1998 paper: "Compiling Little Languages in Python" at the
7th International Python Conference. The current incarnation of this code is
maintained (or not) by Rocky Bernstein.
Note: Earley algorithm parsers are almost linear when given an LR grammar. These
are grammars which are left-recursive.
devel/decompyle3: Add decompyle3 3.9.2
decompyle3 is a native Python cross-version decompiler and fragment decompiler.
It is a reworking of uncompyle6.
decompyle3 translates Python bytecode back into equivalent Python source code.
It accepts bytecodes from Python version 3.7 on.
devel/libada: new port, WHATWG-compliant and fast URL parser
Ada is a fast and spec-compliant URL parser written in C++.
Specification for URL parser can be found from the WHATWG website.
Connect to the build.
devel/freebsd-gcc14: External FreeBSD toolchain based on GCC 14.
This port provides external GCC toolchains for GCC 14.1.0 for the
aarch64, amd64, armv7, i386, powerpc, powerpc64, and riscv64
platforms.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D46000
devel/py-pytest-alembic: Add py-pytest-alembic 0.11.1
pytest-alembic is a pytest plugin to test alembic migrations (with default
tests) and which enables you to write tests specific to your migrations.
devel/rubygem-opentelemetry-instrumentation-trilogy: Add
rubygem-opentelemetry-instrumentation-trilogy 0.59.3
The OpenTelemetry Trilogy Ruby gem provides instrumentation for Trilogy and was
COPY+PASTE+MODIFIED from the OpenTelemetry MySQL gem.
Some key differences in this instrumentation are:
- Trilogy does not expose MySql#query_options, therefore there is limited
support for database semantic conventions.
- SQL Obfuscation is enabled by default to mitigate restricted data leaks.
devel/rubygem-opentelemetry-instrumentation-sinatra: Add
rubygem-opentelemetry-instrumentation-sinatra 0.24.1
The Sinatra instrumentation is a community-maintained instrumentation for the
Sinatra Web Framework.
devel/rubygem-opentelemetry-instrumentation-resque: Add
rubygem-opentelemetry-instrumentation-resque 0.5.2
The Resque instrumentation is a community-maintained instrumentation for the
Resque Ruby jobs system.
devel/rubygem-opentelemetry-instrumentation-restclient: Add
rubygem-opentelemetry-instrumentation-restclient 0.22.7
The OpenTelemetry RestClient gem is a community maintained instrumentation for
the RestClient library.
devel/rubygem-opentelemetry-instrumentation-que: Add
rubygem-opentelemetry-instrumentation-que 0.8.3
The Que instrumentation is a community-maintained instrumentation for the Que.
devel/rubygem-opentelemetry-instrumentation-mysql2: Add
rubygem-opentelemetry-instrumentation-mysql2 0.27.2
The OpenTelemetry MySQL2 Ruby gem is a community maintained instrumentation for
MySQL2.
devel/rubygem-opentelemetry-instrumentation-delayed_job: Add
rubygem-opentelemetry-instrumentation-delayed_job 0.22.4
The OpenTelemetry Delayed Job Ruby gem is a community maintained instrumentation
for the Delayed Job Ruby jobs system.
devel/rubygem-opentelemetry-instrumentation-dalli: Add
rubygem-opentelemetry-instrumentation-dalli 0.25.4
The OpenTelemetry Dalli gem is a community maintained instrumentation for the
Dalli Memcache client.
devel/rubygem-opentelemetry-instrumentation-active_model_serializers: Add
rubygem-opentelemetry-instrumentation-active_model_serializers 0.20.2
The OpenTelemetry Active Model Serializers gem is a community maintained
instrumentation for Active Model Serializers.
devel/rubygem-opentelemetry-helpers-mysql: Add
rubygem-opentelemetry-helpers-mysql 0.1.1
This Ruby gem contains logic shared among MySQL adapter libraries, such as
mysql2 and trilogy. It's intended for use by by gem authors instrumenting MySQL
adapter libraries.
devel/py-fsspec-xrootd: Add py-fsspec-xrootd 0.3.0
To allow fsspec to use XRootD accessible storage systems, install fsspec-xrootd
alongside fsspec and have easy access to files stored on XRootD servers. Once
installed, fsspec will be able to work with urls with the 'root' protocol.
devel/py-uproot: Add py-uproot 5.3.10
Uproot is a library for reading and writing ROOT files in pure Python and NumPy.
Unlike the standard C++ ROOT implementation, Uproot is only an I/O library,
primarily intended to stream data into machine learning libraries in Python.
Unlike PyROOT and root_numpy, Uproot does not depend on C++ ROOT. Instead, it
uses Numpy to cast blocks of data from the ROOT file as Numpy arrays.
devel/py-pdm-build-locked: Add py-pdm-build-locked 0.3.0
pdm-build-locked is a pdm plugin to add locked packages as additional optional
dependency groups to the distribution metadata.
devel/nodeeditor: Add new port: Qt Node Editor, Dataflow programming framework
QtNodes is conceived as a general-purpose Qt-based library aimed at
developing Node Editors for various applications. The library could be
used for simple graph visualization and editing or extended further for
using the Dataflow paradigm.
https://github.com/paceholder/nodeeditor
PR: 279756
devel/electron31: add port: Build cross-platform desktop apps with JavaScript,
HTML, and CSS
Build cross platform desktop apps with JavaScript, HTML, and CSS.
It's easier than you think.
If you can build a website, you can build a desktop app. Electron is a
framework for creating native applications with web technologies like
JavaScript, HTML, and CSS. It takes care of the hard parts so you can
focus on the core of your application.
WWW: https://electronjs.org/
devel/p5-Convert-Age: New port:
This is a rather simple Perl module for dealing with time intervals.
Convert 189988007 seconds to compact form 6y7d10h26m47s.
Convert compact 5h37m5s to seconds 20225.
net-mgmt/netbox: Create Django 5.0 consumers
* Django 4.2 is currently the "default" version in the ports tree due
its long term support until April 2026. Thus ports that are assigned
to that version will exist until then.
The following ports are required to make the upgrade of
net-mgmt/netbox to the 4.0 release possible because it requires
Django 5.0.
All of the ports listed below were created on the basis of their
respective original ports:
- devel/py-dj50-django-rq
- devel/py-dj50-strawberry-graphql
- www/py-dj50-django-auth-ldap
- www/py-dj50-django-choices-field
- www/py-dj50-django-cors-headers
- www/py-dj50-django-debug-toolbar
- www/py-dj50-django-filter
- www/py-dj50-django-htmx
- www/py-dj50-django-graphiql-debug-toolbar
- www/py-dj50-django-js-asset
- www/py-dj50-django-mptt
- www/py-dj50-django-prometheus
- www/py-dj50-django-redis
- www/py-dj50-django-rich
- www/py-dj50-django-tables2
- www/py-dj50-django-taggit
- www/py-dj50-django-timezone-field
- www/py-dj50-djangorestframework
- www/py-dj50-drf-spectacular
- www/py-dj50-drf-spectacular-sidecar
- www/py-dj50-strawberry-graphql-django
Happy to pass the following ports to its maintainer who already
maintain the Django 4.2 variants of them:
- devel/py-dj50-django-rq
- www/py-dj50-django-debug-toolbar
- www/py-dj50-django-redis
devel/py-unidep: Add py-unidep 0.59.0
UniDep streamlines Python project dependency management by unifying Conda and
Pip packages in a single system.
Handling dependencies in Python projects can be challenging, especially when
juggling Python and non-Python packages. This often leads to confusion and
inefficiency, as developers juggle between multiple dependency files.
devel/py-multimethod: Add py-multimethod 1.12
Multimethod provides a decorator for adding multiple argument dispatching to
functions. The decorator creates a multimethod object as needed, and registers
the function with its annotations.
There are several multiple dispatch libraries on PyPI. This one aims for
simplicity and speed. With caching of argument types, it should be the fastest
pure Python implementation possible.
devel/py-mutf8: Add py-mutf8 1.0.6
mutf-8 contains simple pure-python as well as C encoders and decoders for the
MUTF-8 character encoding. In most cases, you can also parse the even-rarer
CESU-8.
These days, you'll most likely encounter MUTF-8 when working on files or
protocols related to the JVM. Strings in a Java .class file are encoded using
MUTF-8, strings passed by the JNI, as well as strings exported by the object
serializer.
devel/py-dukpy: Add py-dukpy 0.4.0
DukPy is a simple javascript interpreter for Python built on top of duktape
engine without any external dependency. It comes with a bunch of common
transpilers built-in for convenience:
- CoffeeScript
- BabelJS
- TypeScript
- JSX
- LESS
devel/py-crick: Add py-crick 0.0.6
Crick is a fast library of approximate and streaming algorithms. It is still a
work in progress, use at your own risk.
devel/commitizen: new port had been added (+)
Commitizen is release management tool designed for teams.
It assumes your team uses a standard way of committing
rules and from that foundation it can bump your project's
version, create the changelog, and update files.
WWW: https://commitizen-tools.github.io/commitizen/
devel/py-decli: new port had been added (+)
Decli is minimal wrapper around argparse. It is useful when writing
big applications that have many arguments and subcommands, this way
it will be more clear. It is a minimal library to rapidly create an
interface separated from your program.
WWW: https://pypi.org/project/decli/