Port details |
- py-heapdict Heap with decrease-key and increase-key operations
- 1.0.1_1 devel
=2 1.0.1_1Version of this port present on the latest quarterly branch. - Maintainer: sunpoet@FreeBSD.org
 - Port Added: 2020-02-02 10:57:23
- Last Update: 2024-04-08 20:17:00
- Commit Hash: 2e2a676
- People watching this port, also watch:: jdictionary, py311-Automat, py311-python-gdsii, py311-PyOpenGL, p5-Sane
- Also Listed In: python
- License: BSD3CLAUSE
- WWW:
- https://github.com/DanielStutzbach/heapdict
- Description:
- heapdict implements the MutableMapping ABC, meaning it works pretty much like a
regular Python dict. It's designed to be used as a priority queue, where items
are added and consumed as follows:
hd = heapdict()
hd[obj1] = priority1
hd[obj2] = priority2
# ...
(obj, priority) = hd.popitem()
Compared to an ordinary dict, a heapdict has the following differences:
- popitem():
Remove and return the (key, priority) pair with the lowest priority, instead
of a random object.
- peekitem():
Return the (key, priority) pair with the lowest priority, without removing it.
Unlike the Python standard library's heapq module, the heapdict supports
efficiently changing the priority of an existing object (often called "decrease-
key" in textbooks). Altering the priority is important for many algorithms such
as Dijkstra's Algorithm and A*.
¦ ¦ ¦ ¦ 
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - There is no configure plist information for this port.
- Dependency lines:
-
- ${PYTHON_PKGNAMEPREFIX}heapdict>0:devel/py-heapdict@${PY_FLAVOR}
- To install the port:
- cd /usr/ports/devel/py-heapdict/ && make install clean
- To add the package, run one of these commands:
- pkg install devel/py-heapdict
- pkg install py39-heapdict
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py39-heapdict listed in the above command, you can pick from the names under the Packages section.- PKGNAME: py39-heapdict
- Package flavors (<flavor>: <package>)
- distinfo:
- TIMESTAMP = 1580562237
SHA256 (HeapDict-1.0.1.tar.gz) = 8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6
SIZE (HeapDict-1.0.1.tar.gz) = 4274
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- py39-setuptools>=0 : devel/py-setuptools@py39
- py39-wheel>=0 : devel/py-wheel@py39
- python3.9 : lang/python39
- py39-build>=0 : devel/py-build@py39
- py39-installer>=0 : devel/py-installer@py39
- Test dependencies:
-
- python3.9 : lang/python39
- Runtime dependencies:
-
- python3.9 : lang/python39
- This port is required by:
- for Run
-
- devel/py-cachey
Configuration Options:
- No options to configure
- Options name:
- devel_py-heapdict
- USES:
- python
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
Commit | Credits | Log message |
1.0.1_1 08 Apr 2024 20:17:00
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-heapdict: Convert to USE_PYTHON=pep517
- Bump PORTREVISION for package change |
1.0.1 27 Jun 2023 19:34:34
    |
Rene Ladan (rene)  |
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568> |
1.0.1 11 Jan 2023 15:58:34
    |
Dmitry Marakasov (amdmi3)  |
*/*: rename CHEESESHOP to PYPI in MASTER_SITES
PR: 267994
Differential revision: D37518
Approved by: bapt |
07 Sep 2022 21:58:51
    |
Stefan Eßer (se)  |
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner) |
1.0.1 07 Sep 2022 21:10:59
    |
Stefan Eßer (se)  |
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above ) |
1.0.1 20 Jul 2022 14:21:35
    |
Tobias C. Berner (tcberner)  |
devel: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* "Waitman Gobble" <uzimac@da3m0n8t3r.com>
* <jkoshy@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron H. K. Diep <ahkdiep@gmail.com>
* Aaron Hurt <ahurt@anbcs.com>
* Abel Chow <abel_chow@yahoo.com>
* Adam McLaurin
* Adam Saponara <as@php.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org> (Only the first 15 lines of the commit message are shown above ) |
1.0.1 09 Jun 2022 23:16:04
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-heapdict: Convert to USE_PYTHON=unittest |
1.0.1 06 Apr 2021 14:31:07
    |
Mathieu Arnold (mat)  |
Remove # $FreeBSD$ from Makefiles. |
1.0.1 28 Dec 2020 23:02:15
  |
antoine  |
Drop python 2.7 support from a few ports
With hat: portmgr |
1.0.1 02 Feb 2020 10:54:39
  |
sunpoet  |
Add py-heapdict 1.0.1
heapdict implements the MutableMapping ABC, meaning it works pretty much like a
regular Python dict. It's designed to be used as a priority queue, where items
are added and consumed as follows:
hd = heapdict()
hd[obj1] = priority1
hd[obj2] = priority2
# ...
(obj, priority) = hd.popitem()
Compared to an ordinary dict, a heapdict has the following differences:
- popitem():
Remove and return the (key, priority) pair with the lowest priority, instead
of a random object.
- peekitem():
Return the (key, priority) pair with the lowest priority, without removing it.
Unlike the Python standard library's heapq module, the heapdict supports
efficiently changing the priority of an existing object (often called "decrease-
key" in textbooks). Altering the priority is important for many algorithms such
as Dijkstra's Algorithm and A*.
WWW: https://github.com/DanielStutzbach/heapdict |